/**
 * Auto Thai Auctions — Front-End Stylesheet
 *
 * Design philosophy:
 *   - NEVER set text color — always inherit from the theme
 *   - NEVER set background on containers — always transparent
 *   - Only set colors on: buttons, badges, bid amounts, form fields,
 *     borders, and status indicators
 *
 * @package AutoThaiAuctions
 */

/* =========================================================================
   Custom properties
   ========================================================================= */
:root {
	--at-primary:  #4a9eff;
	--at-success:  #2ecc71;
	--at-danger:   #e74c3c;
	--at-warning:  #f39c12;
	--at-accent:   #f0b800;
	--at-border:   rgba(255,255,255,0.12);
	--at-radius:   6px;
	--at-shadow:   0 2px 12px rgba(0,0,0,0.3);
	--at-field-bg: rgba(255,255,255,0.07);
}

/* =========================================================================
   Reset — only on our elements
   ========================================================================= */
.at-auction-single *,
.at-auction-list-wrap *,
.at-submit-wrap *,
.at-dashboard-wrap *,
.at-watchlist-wrap * {
	box-sizing: border-box;
}

/* =========================================================================
   Buttons
   ========================================================================= */
.at-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 10px 20px;
	border: 2px solid transparent;
	border-radius: var(--at-radius);
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	cursor: pointer;
	text-decoration: none;
	transition: opacity .15s;
	white-space: nowrap;
	font-family: inherit;
}
.at-btn:disabled { opacity: .45; cursor: not-allowed; }

.at-btn--primary { background: var(--at-primary); color: #fff !important; border-color: var(--at-primary); }
.at-btn--primary:hover:not(:disabled) { opacity: .88; color: #fff !important; text-decoration: none; }

.at-btn--secondary { background: rgba(74,158,255,0.15); color: var(--at-primary) !important; border-color: var(--at-primary); }
.at-btn--secondary:hover:not(:disabled) { opacity: .8; }

.at-btn--ghost { background: transparent; color: inherit !important; border-color: var(--at-border); }
.at-btn--ghost:hover:not(:disabled) { border-color: var(--at-primary); }

.at-btn--sm  { padding: 6px 12px; font-size: 12px; }
.at-btn--lg  { padding: 14px 28px; font-size: 16px; }
.at-btn--full { width: 100%; }
.at-btn--watch[data-watching="1"] { border-color: var(--at-accent); color: var(--at-accent) !important; }

/* =========================================================================
   Badges
   ========================================================================= */
.at-type-badge, .at-status-badge, .at-dealer-badge, .at-visibility-badge--public, .at-visibility-badge--both, .at-featured-badge, .at-card__featured-label {
	display: inline-block;
	padding: 3px 10px;
	border-radius: 20px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .04em;
	white-space: nowrap;
}
.at-type-badge--english  { background: #2563eb; color: #fff !important; }
.at-type-badge--reserve  { background: #7c3aed; color: #fff !important; }
.at-type-badge--sealed   { background: #0891b2; color: #fff !important; }
.at-status-badge--live   { background: #16a34a; color: #fff !important; }
.at-status-badge--scheduled { background: #2563eb; color: #fff !important; }
.at-status-badge--sold   { background: #7c3aed; color: #fff !important; }
.at-status-badge--unsold,
.at-status-badge--expired { background: #64748b; color: #fff !important; }
.at-status-badge--pending_payment { background: #d97706; color: #fff !important; }
.at-dealer-badge { background: var(--at-accent); color: #1a1a1a !important; }
.at-visibility-badge--public { background: var(--at-success); color: #1a1a1a !important; }
.at-visibility-badge--both { background: var(--at-primary); color: #fff !important; }

/* =========================================================================
   Form fields — semi-transparent so they work on any background
   ========================================================================= */
.at-form-field { display: flex; flex-direction: column; gap: 5px; }
.at-form-field label { font-size: 13px; font-weight: 600; }

.at-form-field input,
.at-form-field select,
.at-form-field textarea,
.at-bid-form__input,
.at-filter-select {
	background: var(--at-field-bg) !important;
	color: inherit !important;
	border: 1px solid var(--at-border) !important;
	border-radius: var(--at-radius) !important;
	padding: 10px 13px !important;
	font-size: 14px !important;
	font-family: inherit !important;
	width: 100%;
	box-sizing: border-box;
	/* Remove ALL browser/theme arrow decorations on selects */
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	appearance: none !important;
}

/* Re-add ONE clean arrow for selects only */
.at-form-field select,
.at-filter-select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 12px center !important;
	background-size: 12px !important;
	padding-right: 36px !important;
	cursor: pointer !important;
}

.at-form-field input:focus,
.at-form-field select:focus,
.at-form-field textarea:focus,
.at-bid-form__input:focus,
.at-filter-select:focus {
	outline: none !important;
	border-color: var(--at-primary) !important;
	box-shadow: 0 0 0 3px rgba(74,158,255,0.2) !important;
}

.at-form-field input::placeholder,
.at-bid-form__input::placeholder { opacity: .45; }

.at-form-field__hint { font-size: 11px; opacity: .55; }

/* =========================================================================
   Auction List
   ========================================================================= */
.at-auction-list-wrap { max-width: 1200px; margin: 0 auto; margin-top: 0 !important; padding-top: 0 !important; }
.at-auction-list-wrap > p:first-child { display: none; }
p:empty + .at-auction-list-wrap,
p + .at-auction-list-wrap { margin-top: 0 !important; }

.at-filter-bar { margin-bottom: 24px; }
.at-filter-bar__inner {
	display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end;
	border: 1px solid var(--at-border); border-radius: var(--at-radius); padding: 16px 20px;
	background: transparent;
}
.at-filter-group { display: flex; flex-direction: column; gap: 4px; }
.at-filter-label { font-size: 12px; font-weight: 600; opacity: .7; text-transform: uppercase; letter-spacing: .04em; }
.at-filter-select { min-width: 140px; }
.at-result-count { font-size: 13px; opacity: .6; margin: 0 0 12px; }

/* Grid */
.at-auction-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px,1fr)); gap: 24px; }

.at-auction-card {
	border: 1px solid var(--at-border); border-radius: var(--at-radius);
	overflow: hidden; transition: box-shadow .2s, transform .2s, border-color .2s;
	background: transparent;
}
.at-auction-card:hover { box-shadow: var(--at-shadow); transform: translateY(-2px); border-color: var(--at-primary); }

.at-card__img-wrap { display: block; position: relative; overflow: hidden; aspect-ratio: 3/2; }
.at-card__img-wrap .at-type-badge { position: absolute; top: 10px; left: 10px; z-index: 1; }
.at-card__img-wrap .at-dealer-badge { position: absolute; top: 10px; right: 10px; z-index: 1; }
.at-card__img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s; }
.at-auction-card:hover .at-card__img { transform: scale(1.04); }

.at-card__body { padding: 16px; background: transparent; }
.at-card__title { font-size: 15px; font-weight: 700; margin: 0 0 6px; line-height: 1.3; }
.at-card__title a { color: inherit; text-decoration: none; }
.at-card__title a:hover { color: var(--at-primary); }
.at-card__meta { display: flex; gap: 10px; font-size: 12px; opacity: .6; margin-bottom: 12px; flex-wrap: wrap; }
.at-card__bid { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 12px; }
.at-card__bid-label { font-size: 11px; opacity: .6; display: block; text-transform: uppercase; letter-spacing: .04em; }
.at-card__bid-value { font-size: 22px; font-weight: 800; color: var(--at-primary); }
.at-card__bid-count { font-size: 12px; opacity: .55; }
.at-card__footer { display: flex; align-items: center; justify-content: space-between; padding-top: 12px; border-top: 1px solid var(--at-border); }
.at-card__countdown { font-size: 13px; font-weight: 600; }
.at-card__countdown--urgent { color: var(--at-danger); }

/* Pagination */
.at-pagination { display: flex; gap: 6px; flex-wrap: wrap; margin: 32px 0; }
.at-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 36px; height: 36px; padding: 0 8px; border: 1px solid var(--at-border); border-radius: 4px; font-size: 13px; text-decoration: none; color: inherit; background: transparent; }
.at-pagination .page-numbers.current { background: var(--at-primary); border-color: var(--at-primary); color: #fff !important; font-weight: 700; }
.at-pagination .page-numbers:hover:not(.current) { border-color: var(--at-primary); }

/* Empty state */
.at-empty-state { text-align: center; padding: 32px 16px; opacity: .55; }

/* =========================================================================
   Auction Table  [at_auction_table]
   ========================================================================= */
.at-auction-table-wrap { overflow-x: auto; border-radius: var(--at-radius); }

.at-auction-table {
	width: 100%; border-collapse: collapse; font-size: 14px; background: transparent;
}

/* Dark header with light text */
.at-auction-table thead tr { background: #2a2a2a; }
.at-auction-table thead th {
	padding: 12px 14px;
	text-align: left;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: #c8d0e0;
	border-bottom: 2px solid var(--at-primary);
	white-space: nowrap;
}

/* Body rows */
.at-auction-table tbody tr { border-bottom: 1px solid var(--at-border); transition: background .15s; }
.at-auction-table tbody tr:last-child { border-bottom: none; }
.at-auction-table tbody tr:hover { background: rgba(74,158,255,.06); }
.at-auction-table td { padding: 12px 14px; vertical-align: middle; background: transparent; color: inherit; }

/* Column widths */
.at-col-title   { min-width: 160px; }
.at-col-year    { width: 60px;  white-space: nowrap; }
.at-col-make    { width: 90px; }
.at-col-model   { width: 90px; }
.at-col-mileage { width: 110px; white-space: nowrap; }
.at-col-price   { width: 130px; }
.at-col-status  { width: 120px; }
.at-col-action  { width: 80px;  text-align: right; white-space: nowrap; }

/* Title cell */
.at-row-title {
	display: block; font-weight: 700; font-size: 14px;
	color: inherit; text-decoration: none; line-height: 1.3; margin-bottom: 4px;
}
.at-row-title:hover { color: var(--at-primary); }

/* Type & dealer pills */
.at-type-pill {
	display: inline-block; font-size: 10px; font-weight: 700; text-transform: uppercase;
	letter-spacing: .04em; padding: 2px 7px; border-radius: 3px; margin-right: 4px;
	border: 1px solid currentColor; opacity: .75;
}
.at-type-pill--english { color: var(--at-primary); }
.at-type-pill--reserve { color: var(--at-warning); }
.at-type-pill--sealed  { color: var(--at-accent);  }
.at-dealer-pill {
	display: inline-block; font-size: 10px; font-weight: 700; text-transform: uppercase;
	letter-spacing: .04em; padding: 2px 7px; border-radius: 3px;
	background: rgba(240,184,0,.15); color: var(--at-accent); border: 1px solid var(--at-accent);
}

/* Price cell */
.at-price-value { display: block; font-size: 15px; font-weight: 800; color: var(--at-primary); }
.at-price-sub   { display: block; font-size: 11px; opacity: .5; margin-top: 2px; }

/* Status pill */
.at-status-pill {
	display: inline-block; font-size: 11px; font-weight: 700; text-transform: uppercase;
	letter-spacing: .04em; padding: 3px 8px; border-radius: 3px;
}
.at-status-pill--live      { background: rgba(46,204,113,.18);  color: var(--at-success); }
.at-status-pill--scheduled { background: rgba(74,158,255,.18);  color: var(--at-primary); }
.at-status-pill--sold      { background: rgba(231,76,60,.18);   color: var(--at-danger);  }
.at-status-pill--unsold,
.at-status-pill--expired   { background: rgba(255,255,255,.08); color: inherit; opacity: .6; }

/* Countdown */
.at-countdown { display: block; font-size: 11px; margin-top: 4px; opacity: .7; font-weight: 600; }
.at-countdown--urgent { color: var(--at-danger); opacity: 1; }

/* -------------------------------------------------------------------------
   Mobile ≤ 680px — stacked card rows
   Title spans full width; remaining fields pair two-per-row beneath.
   ------------------------------------------------------------------------- */
@media (max-width: 680px) {

	.at-auction-table thead { display: none; }

	.at-auction-table,
	.at-auction-table tbody,
	.at-auction-table tr,
	.at-auction-table td { display: block; width: 100%; }

	.at-auction-table tbody tr {
		border: 1px solid var(--at-border);
		border-radius: var(--at-radius);
		margin-bottom: 10px;
		overflow: hidden;
	}
	.at-auction-table tbody tr:last-child { border-bottom: 1px solid var(--at-border); }

	/* Title — full-width header strip */
	.at-col-title {
		background: rgba(26,26,46,.6);
		padding: 12px 14px 10px;
		border-bottom: 1px solid var(--at-border);
	}
	.at-col-title::before { display: none; }

	/* Other cells — two per row via inline-block */
	.at-col-year,
	.at-col-make,
	.at-col-model,
	.at-col-mileage,
	.at-col-price,
	.at-col-status {
		display: inline-block;
		width: 50%;
		padding: 8px 14px;
		vertical-align: top;
		box-sizing: border-box;
	}

	/* Right border as column divider on odd cells */
	.at-col-year,
	.at-col-model,
	.at-col-price { border-right: 1px solid var(--at-border); }

	/* Label prefix from data-label */
	.at-auction-table td[data-label]::before {
		content: attr(data-label);
		display: block;
		font-size: 10px;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: .05em;
		opacity: .5;
		margin-bottom: 3px;
	}
	.at-col-title[data-label]::before { display: none; }

	/* View button — full-width strip at bottom */
	.at-col-action {
		display: block;
		width: 100%;
		padding: 10px 14px;
		text-align: right;
		border-top: 1px solid var(--at-border);
		background: rgba(74,158,255,.04);
	}
}

/* =========================================================================
   Single Auction — layout
   ========================================================================= */
.at-auction-single { max-width: 1140px; margin: 0 auto; color: #fff; }
.at-single__header { margin-bottom: 20px; }
.at-single__title { font-size: 26px; font-weight: 800; margin: 0 0 10px; line-height: 1.2; }
.at-single__badges { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin-bottom: 16px; }

.at-single__body { display: grid; grid-template-columns: 1fr 320px; gap: 32px; align-items: start; }

/* Gallery */
.at-gallery {
	border-radius: var(--at-radius);
	overflow: hidden;
	background: transparent;
	width: 100%;
	position: relative;
}

/* Critical: Swiper needs explicit dimensions to work */
.at-gallery.swiper {
	width: 100% !important;
	height: auto !important;
}

.at-gallery .swiper-wrapper {
	display: flex !important;
	flex-wrap: nowrap !important;
	height: auto !important;
}

.at-gallery .swiper-slide {
	flex-shrink: 0 !important;
	width: 100% !important;
	height: auto !important;
}

.at-gallery .swiper-slide img,
.at-gallery__img {
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 4/3;
	object-fit: cover;
	display: block !important;
	border-radius: 0;
	max-height: 520px;
}

.at-gallery--empty img {
	width: 100%;
	aspect-ratio: 4/3;
	object-fit: contain;
	opacity: .3;
}

/* Swiper nav buttons */
.at-gallery .swiper-button-prev,
.at-gallery .swiper-button-next {
	color: #fff;
	background: rgba(0,0,0,0.4);
	width: 40px !important;
	height: 40px !important;
	border-radius: 50%;
}
.at-gallery .swiper-button-prev::after,
.at-gallery .swiper-button-next::after { font-size: 16px !important; }

/* Vanilla fallback gallery arrows — must be visible over the image */
.at-gallery-prev,
.at-gallery-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: none;
	background: rgba(0,0,0,0.5);
	color: #fff;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	opacity: 0.85;
	transition: opacity .2s;
}
.at-gallery-prev:hover,
.at-gallery-next:hover { opacity: 1; background: rgba(0,0,0,0.75); }
.at-gallery-prev { left: 10px; }
.at-gallery-next { right: 10px; }

/* Thumbnail strip */
.at-gallery-thumbs {
	margin-top: 10px;
	width: 100%;
}

.at-gallery-thumbs.swiper {
	width: 100% !important;
	height: 60px !important;
}

.at-gallery-thumbs .swiper-wrapper {
	display: flex !important;
	flex-wrap: nowrap !important;
}

.at-gallery-thumbs .swiper-slide {
	width: 80px !important;
	height: 54px !important;
	flex-shrink: 0 !important;
	cursor: pointer;
	opacity: .5;
	transition: opacity .2s;
	border-radius: 4px;
	overflow: hidden;
}

.at-gallery-thumbs .swiper-slide-thumb-active {
	opacity: 1;
	outline: 2px solid var(--at-primary);
}

.at-gallery-thumbs__img {
	width: 80px !important;
	height: 54px !important;
	object-fit: cover;
	display: block !important;
}

/* Specs — two-column paired layout */
.at-section-title { font-size: 15px; font-weight: 700; margin: 24px 0 10px; border-bottom: 1px solid var(--at-border); padding-bottom: 6px; color: inherit; }
.at-specs__table { width: 100%; border-collapse: collapse; font-size: 14px; margin: 0 -22px; width: calc(100% + 44px); border: none; background: transparent; }
.at-specs__table th { padding: 11px 22px; font-weight: 700; text-align: left; border: none; border-bottom: 1px solid var(--at-border); background: transparent; color: inherit; opacity: .75; white-space: nowrap; vertical-align: middle; }
.at-specs__table td { padding: 11px 22px; border: none; border-bottom: 1px solid var(--at-border); background: transparent; color: inherit; font-weight: 600; vertical-align: middle; }
.at-specs__table tr { border: none; background: transparent; }
.at-specs__table tr:last-child th,
.at-specs__table tr:last-child td { border-bottom: none; }

/* Description */
.at-description { border: 1px solid var(--at-border); border-radius: var(--at-radius); padding: 22px; margin-top: 20px; }
.at-description .at-section-title { margin-top: 0; }
.at-description__body { font-size: 15px; line-height: 1.7; }
.at-description__alt { margin-top: 12px; }
.at-description__alt summary { cursor: pointer; color: var(--at-primary); font-size: 13px; }

/* =========================================================================
   Bid panel
   ========================================================================= */
.at-bid-panel {
	border: 1px solid var(--at-border); border-radius: var(--at-radius);
	padding: 22px; position: sticky; top: 24px; background: transparent;
	color: inherit;
}
.at-bid-panel__price { margin-bottom: 12px; }
.at-bid-panel__label { font-size: 11px; opacity: .6; text-transform: uppercase; letter-spacing: .05em; display: block; margin-bottom: 4px; }
.at-bid-panel__amount { font-size: 30px; font-weight: 800; color: var(--at-primary); display: block; line-height: 1; }
.at-bid-panel__sealed-note { font-size: 12px; opacity: .6; display: block; margin-top: 4px; }
.at-bid-panel__meta { font-size: 12px; opacity: .6; margin-bottom: 14px; display: flex; flex-direction: column; gap: 2px; }

.at-bid-panel__countdown-wrap { background: rgba(255,255,255,0.05); border: 1px solid var(--at-border); border-radius: 4px; padding: 10px 14px; margin-bottom: 14px; }
.at-bid-panel__countdown-label { font-size: 11px; opacity: .6; display: block; text-transform: uppercase; color: inherit; }
.at-bid-panel__countdown { font-size: 22px; font-weight: 800; color: inherit; }

.at-bid-panel__user-status { font-size: 13px; font-weight: 600; color: var(--at-success); min-height: 18px; margin-bottom: 10px; }
.at-bid-panel__won { color: var(--at-success); font-weight: 700; }
.at-bid-panel__seller-note { font-size: 13px; opacity: .7; padding: 8px 0; color: inherit; }
.at-bid-panel__login-prompt { margin: 12px 0; }
.at-bid-panel__closed { padding: 10px 0; font-size: 14px; opacity: .7; color: inherit; }
.at-bid-panel__timing { width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--at-border); }
.at-bid-panel__timing th { opacity: .55; font-weight: 600; color: inherit; white-space: nowrap; padding: 2px 10px 2px 0; text-align: left; width: 44px; vertical-align: middle; }
.at-bid-panel__timing td { color: inherit; padding: 2px 0; font-variant-numeric: tabular-nums; vertical-align: middle; }

/* Bid forms */
.at-bid-form { margin-top: 14px; }
.at-bid-form__row { margin-bottom: 10px; }
.at-bid-form__label { font-size: 12px; font-weight: 600; display: block; margin-bottom: 4px; opacity: .7; }
.at-bid-form__input-wrap { position: relative; display: flex; align-items: center; }
.at-bid-form__currency { position: absolute; left: 12px; font-weight: 700; opacity: .5; pointer-events: none; font-size: 15px; }
.at-bid-form__input { padding-left: 28px !important; font-size: 17px !important; font-weight: 700 !important; }
.at-bid-form__note { font-size: 12px; opacity: .6; margin: 0 0 10px; }

.at-proxy-toggle { margin-top: 16px; border: 1px solid var(--at-border); border-radius: var(--at-radius); background: transparent; }
.at-proxy-toggle__label { padding: 10px 14px; font-size: 13px; cursor: pointer; font-weight: 600; color: var(--at-primary); list-style: none; }
.at-proxy-form { padding: 14px; border-top: 1px solid var(--at-border); }

.at-countdown--urgent { color: var(--at-danger) !important; animation: at-pulse 1s ease-in-out infinite; }
@keyframes at-pulse { 0%,100%{opacity:1} 50%{opacity:.5} }

/* Form messages */
.at-form-message { display: none; margin-top: 8px; padding: 10px 14px; border-radius: 4px; font-size: 13px; font-weight: 600; }
.at-form-message--success { background: rgba(46,204,113,.15); color: var(--at-success); border: 1px solid rgba(46,204,113,.3); }
.at-form-message--error   { background: rgba(231,76,60,.15);  color: var(--at-danger);  border: 1px solid rgba(231,76,60,.3); }

/* Bid history */
.at-bid-history { margin-top: 20px; border: 1px solid var(--at-border); border-radius: var(--at-radius); padding: 22px; }
.at-bid-history .at-section-title { margin-top: 0; }
.at-bid-history__sealed-notice, .at-bid-history__empty { opacity: .6; font-size: 14px; }
.at-bid-history__table-wrap { overflow-x: auto; margin-top: 12px; }
.at-bid-history__table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: 13px; background: transparent; border: 1px solid var(--at-border); border-radius: 4px; }
.at-bid-history__table th { padding: 10px 14px; text-align: left; border-bottom: 1px solid var(--at-border); font-weight: 600; opacity: .7; background: transparent; color: inherit; }
.at-bid-history__table td { padding: 10px 14px; border-bottom: 1px solid var(--at-border); background: transparent; color: inherit; }
.at-bid-history__table tr:last-child td { border-bottom: none; }
.at-bid-history__row--winning td { background: rgba(46,204,113,.08) !important; }
.at-bid-history__winner-label { font-size: 11px; font-weight: 700; color: var(--at-success); margin-left: 4px; }
.at-bid-tag { display: inline-block; padding: 1px 6px; border-radius: 3px; font-size: 11px; font-weight: 600; background: rgba(255,255,255,.08); }
.at-bid-tag--auto { background: rgba(74,158,255,.15); color: var(--at-primary); }

/* =========================================================================
   Submit form
   ========================================================================= */
.at-submit-wrap { max-width: 860px; margin: 0 auto; }
.at-plan-bar { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; border: 1px solid var(--at-border); border-radius: var(--at-radius); padding: 12px 18px; margin-bottom: 20px; font-size: 13px; background: transparent; }
.at-plan-bar--free { border-left: 4px solid var(--at-warning); }
.at-plan-bar--paid { border-left: 4px solid var(--at-success); }
.at-plan-bar__note { opacity: .7; }
.at-plan-bar__warning { color: var(--at-danger); font-weight: 600; }

.at-submit-section { border: 1px solid var(--at-border); border-radius: var(--at-radius); padding: 20px 24px; margin-bottom: 20px; background: transparent; }
.at-submit-section__title { font-size: 13px; font-weight: 700; margin: 0 0 16px; padding-bottom: 10px; border-bottom: 1px solid var(--at-border); text-transform: uppercase; letter-spacing: .05em; opacity: .8; }
.at-submit-section__sub { font-size: 11px; font-weight: 400; opacity: .5; margin-left: 8px; text-transform: none; letter-spacing: 0; }
.at-submit-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.at-submit-grid .at-form-field--full { grid-column: 1 / -1; }
.at-submit-actions { margin-top: 8px; }
.at-notice { padding: 12px 16px; border-radius: 4px; font-size: 14px; margin-bottom: 16px; }
.at-notice--error { background: rgba(231,76,60,.15); color: var(--at-danger); border: 1px solid rgba(231,76,60,.3); }
.at-photo-preview { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 10px; min-height: 10px; }

/* Modal */
.at-modal { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; }
.at-modal__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.7); }
.at-modal__box { position: relative; border: 1px solid var(--at-border); border-radius: var(--at-radius); padding: 28px 32px; max-width: 460px; width: 90%; z-index: 1; box-shadow: 0 20px 60px rgba(0,0,0,.5); background: #1a1f2e; color: #e2e8f0; }
.at-modal__box h2 { margin: 0 0 14px; font-size: 20px; color: #e2e8f0; }
.at-modal__box p { color: #e2e8f0; }
.at-modal__actions { display: flex; gap: 12px; margin-top: 20px; }

/* =========================================================================
   Dashboard
   ========================================================================= */
.at-dashboard-wrap { max-width: 900px; margin: 0 auto; }
.at-dashboard-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 24px; flex-wrap: wrap; }
.at-dashboard-title { font-size: 22px; font-weight: 800; margin: 0; }
.at-plan-card { border: 1px solid var(--at-border); border-radius: var(--at-radius); padding: 14px 18px; display: flex; flex-direction: column; gap: 5px; min-width: 200px; background: transparent; }
.at-plan-card__label { font-size: 11px; opacity: .6; text-transform: uppercase; letter-spacing: .04em; }
.at-plan-card__name  { font-size: 16px; font-weight: 700; color: var(--at-primary); }
.at-quota-bar { height: 5px; background: rgba(255,255,255,.1); border-radius: 3px; margin-top: 4px; overflow: hidden; }
.at-quota-fill { height: 100%; border-radius: 3px; background: var(--at-primary); }
.at-quota-fill--warn { background: var(--at-warning); }
.at-quota-fill--full { background: var(--at-danger); }
.at-dashboard-section { margin-bottom: 32px; }
.at-dashboard-section__title { font-size: 15px; font-weight: 700; margin: 0 0 14px; display: flex; align-items: center; }
.at-dashboard-table-wrap { overflow-x: auto; }
.at-dashboard-table { width: 100%; border-collapse: collapse; font-size: 13px; border: 1px solid var(--at-border); border-radius: var(--at-radius); overflow: hidden; background: transparent; }
.at-dashboard-table th { padding: 10px 14px; text-align: left; border-bottom: 1px solid var(--at-border); font-weight: 600; opacity: .7; font-size: 11px; text-transform: uppercase; background: rgba(255,255,255,.03); }
.at-dashboard-table td { padding: 10px 14px; border-bottom: 1px solid var(--at-border); vertical-align: middle; background: transparent; }
.at-dashboard-table tr:last-child td { border-bottom: none; }
.at-dashboard-winning { color: var(--at-success); font-weight: 700; }
.at-dashboard-outbid  { color: var(--at-danger);  font-weight: 600; }
.at-empty { opacity: .55; font-size: 14px; }

/* =========================================================================
   Watchlist
   ========================================================================= */
.at-watchlist-wrap { max-width: 1100px; margin: 0 auto; }
.at-watchlist-title { font-size: 22px; font-weight: 800; margin: 0 0 6px; }
.at-watchlist-count { font-size: 13px; opacity: .55; margin-bottom: 20px; }
.at-watchlist-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px,1fr)); gap: 20px; }
.at-watchlist-card { border: 1px solid var(--at-border); border-radius: var(--at-radius); overflow: hidden; transition: box-shadow .2s, border-color .2s; background: transparent; }
.at-watchlist-card:hover { box-shadow: var(--at-shadow); border-color: var(--at-primary); }
.at-wl-card__img-wrap { display: block; overflow: hidden; }
.at-wl-card__img { width: 100%; aspect-ratio: 3/2; object-fit: cover; display: block; transition: transform .3s; }
.at-watchlist-card:hover .at-wl-card__img { transform: scale(1.04); }
.at-wl-card__body { padding: 14px; background: transparent; }
.at-wl-card__status { font-size: 11px; font-weight: 600; opacity: .6; margin-bottom: 4px; text-transform: uppercase; }
.at-wl-card__title { font-size: 14px; font-weight: 700; margin: 0 0 8px; }
.at-wl-card__title a { color: inherit; text-decoration: none; }
.at-wl-card__title a:hover { color: var(--at-primary); }
.at-wl-card__bid { margin-bottom: 8px; font-size: 13px; }
.at-wl-card__bid strong { color: var(--at-primary); font-size: 16px; }
.at-wl-card__bid-label, .at-wl-card__bid-count { font-size: 11px; opacity: .55; display: block; }
.at-wl-card__countdown { font-size: 12px; font-weight: 600; margin-bottom: 8px; opacity: .8; }
.at-wl-card__countdown--urgent { color: var(--at-danger); opacity: 1; }
.at-wl-card__actions { display: flex; gap: 8px; margin-top: 10px; }

/* =========================================================================
   Responsive
   ========================================================================= */
@media (max-width: 900px) {
	.at-single__body { grid-template-columns: 1fr; }
	.at-bid-panel { position: static; }
	.at-submit-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
	.at-auction-grid, .at-watchlist-grid { grid-template-columns: 1fr; }
	.at-filter-bar__inner { flex-direction: column; align-items: stretch; }
	.at-single__title { font-size: 20px; }
	.at-bid-panel__amount { font-size: 24px; }
	.at-dashboard-header { flex-direction: column; }
}

/* =========================================================================
   Theme inheritance — explicitly reset browser defaults that block cascade.
   The theme sets white text on body. These rules ensure it flows into
   elements that browsers reset to black by default (table cells, etc.)
   We do NOT set any explicit color — we only clear browser overrides.
   ========================================================================= */

/* Single auction page: no color set — inherits entirely from the theme */
/* Badges and functional colors only */


/* Form fields — needs explicit background so text is visible against it */
.at-form-field input,
.at-form-field select,
.at-form-field textarea,
.at-bid-form__input,
.at-filter-select {
	background: rgba(255,255,255,0.07) !important;
	color: inherit !important;
	border: 1px solid rgba(255,255,255,0.15) !important;
}


/* ---- Region multi-select checkboxes ---- */
.at-region-checkboxes {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
/* Pill toggle — hides the native checkbox, styles the <span> as a pill */
.at-region-pill {
	display: inline-flex !important;
	align-items: center !important;
	cursor: pointer;
	margin: 0 !important;
	padding: 0 !important;
	font-weight: 400 !important;
	line-height: 1 !important;
}
.at-region-pill input[type="checkbox"] {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
	margin: 0;
	padding: 0;
}
.at-region-pill span {
	display: inline-block;
	padding: 6px 14px;
	border-radius: 20px;
	border: 1px solid rgba(255,255,255,0.2);
	background: rgba(255,255,255,0.05);
	font-size: 13px;
	color: inherit;
	transition: background 0.15s, border-color 0.15s, color 0.15s;
	white-space: nowrap;
	user-select: none;
}
.at-region-pill input[type="checkbox"]:checked + span {
	background: var(--at-primary, #3b82f6);
	border-color: var(--at-primary, #3b82f6);
	color: #fff;
}
.at-region-pill:hover span {
	border-color: var(--at-primary, #3b82f6);
}

/* =========================================================================
   Auction Number & Featured — v1.25
   ========================================================================= */

/* Auction number line below the title — muted blue-grey so it reads as metadata */
.at-single__auction-number {
	margin: -8px 0 12px;
	font-size: 13px;
	color: var(--at-muted, #6b7280);
	letter-spacing: 0.02em;
}
.at-single__auction-number strong {
	color: #3b82f6;
	font-weight: 700;
}

/* Featured badge — same yellow as Dealer Only badge */
.at-featured-badge {
	background: var(--at-accent);
	color: #1a1a1a !important;
	gap: 4px;
	display: inline-flex;
	align-items: center;
}

/* Featured label inside card body — same pill style, margin to separate from title */
.at-card__featured-label {
	background: var(--at-accent);
	color: #1a1a1a !important;
	gap: 4px;
	display: inline-flex;
	align-items: center;
	margin: 0 0 6px;
}
