/* ==========================================================================
   LONDON ART EXCHANGE — BidJS Luxe Theme (v1.0)
   Purpose: High-end auction UI (Artsy/Phillips aesthetic) + mobile fixes
   Scope:   Safely scoped to #lax-auctions and core BidJS containers
   Load:    MUST be included AFTER BidJS base/theme CSS
   ========================================================================== */


/* -- Scope root ----------------------------------------------------------- */
#lax-auctions, 
#lax-auctions * { box-sizing: border-box;  }

/* Also catch when the wrapper is not present but BidJS root is */
.bidjs, .bidjs * { box-sizing: border-box; }

/* Design tokens */
#lax-auctions, .bidjs {
  --lax-bg: #ffffff;
  --lax-surface: #f7f7f8;
  --lax-surface-2: #fcfcfd;
  --lax-text: #101112;
  --lax-muted: #6b6f76;
  --lax-border: #e7e7ea;
  --lax-primary: #0b0b0b;
  --lax-primary-contrast: #ffffff;
  --lax-accent: #e3b341;      /* subtle gold (sparingly) */
  --lax-radius: 14px;
  --lax-radius-sm: 10px;
  --lax-shadow: 0 8px 28px rgba(0,0,0,.06);
  --lax-shadow-soft: 0 4px 16px rgba(0,0,0,.05);
  --lax-focus: 0 0 0 3px rgba(0,0,0,.12);
}

/* Page frame + container width */
#lax-auctions .auction-container,
.bidjs .auction-container,
#lax-auctions .container,
.bidjs .container {
  max-width: 1200px;
  margin: 0 auto;
  padding-inline: 12px;
}

/* Typography + links */
#lax-auctions, .bidjs { color: var(--lax-text); background: var(--lax-bg); }
#lax-auctions a, .bidjs a { color: var(--lax-text); text-decoration: none; }
#lax-auctions a:hover, .bidjs a:hover { opacity: .9; }

/* Header/toolbar cleanup */
#lax-auctions .toolbar, .bidjs .toolbar,
#lax-auctions .auction-header, .bidjs .auction-header {
  background: var(--lax-bg);
  border-bottom: 1px solid var(--lax-border);
  box-shadow: none;
  padding: 12px 0;
}

/* Filters (left rail) */
#lax-auctions .bidjs-filters, .bidjs .bidjs-filters,
#lax-auctions .filters-panel, .bidjs .filters-panel {
  background: transparent;
  border: none;
  padding-right: 18px;
}

#lax-auctions .filters-panel .section-title,
.bidjs .filters-panel .section-title {
  font-weight: 700;
  letter-spacing: .01em;
  margin: 10px 0 8px;
}

#lax-auctions .filters-panel label,
.bidjs .filters-panel label,
#lax-auctions .filters-panel .form-check-label,
.bidjs .filters-panel .form-check-label {
  color: var(--lax-muted);
  font-weight: 500;
}

/* Lot grid (list) */
#lax-auctions .lot-grid, .bidjs .lot-grid,
#lax-auctions .lots-grid, .bidjs .lots-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}

@media (max-width: 1024px) {
  #lax-auctions .lot-grid, .bidjs .lot-grid,
  #lax-auctions .lots-grid, .bidjs .lots-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  #lax-auctions .lot-grid, .bidjs .lot-grid,
  #lax-auctions .lots-grid, .bidjs .lots-grid { grid-template-columns: 1fr; }
}

/* Lot card */
#lax-auctions .bidjs-card, .bidjs .bidjs-card,
#lax-auctions .panel.lot, .bidjs .panel.lot {
  background: var(--lax-surface);
  border: 1px solid var(--lax-border);
  border-radius: var(--lax-radius);
  box-shadow: var(--lax-shadow);
  overflow: hidden;
  transition: transform .16s ease, box-shadow .16s ease;
}
#lax-auctions .bidjs-card:hover, .bidjs .bidjs-card:hover,
#lax-auctions .panel.lot:hover, .bidjs .panel.lot:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 32px rgba(0,0,0,.08);
}

/* Lot images */
#lax-auctions .bidjs-card img, .bidjs .bidjs-card img,
#lax-auctions .panel.lot img, .bidjs .panel.lot img {
  width: 100%; height: auto; display: block;
  aspect-ratio: 4/3; object-fit: cover;
}

/* Lot text */
#lax-auctions .bidjs-card .lot-title, .bidjs .bidjs-card .lot-title,
#lax-auctions .panel.lot .lot-title, .bidjs .panel.lot .lot-title {
  color: var(--lax-text);
  font-weight: 700;
  font-size: 15.5px;
  line-height: 1.35;
  margin: 12px 12px 6px;
}
#lax-auctions .text-muted, .bidjs .text-muted { color: var(--lax-muted) !important; }

/* Lot detail layout */
#lax-auctions .lot-detail, .bidjs .lot-detail { gap: 24px; }

/* Main image + thumbs */
#lax-auctions .lot-detail .main-image img, .bidjs .lot-detail .main-image img {
  border-radius: var(--lax-radius);
  box-shadow: var(--lax-shadow-soft);
}
#lax-auctions .lot-detail .thumbnails img, .bidjs .lot-detail .thumbnails img {
  border-radius: var(--lax-radius-sm);
  border: 1px solid var(--lax-border);
}

/* Right column / bid panel unified card */
#lax-auctions .lot-detail .bid-summary, .bidjs .lot-detail .bid-summary,
#lax-auctions .lot-detail .bidding-panel, .bidjs .lot-detail .bidding-panel,
#lax-auctions .lot-detail .details-panel, .bidjs .lot-detail .details-panel,
#lax-auctions .lot-detail .lot-info, .bidjs .lot-detail .lot-info {
  background: var(--lax-surface-2) !important;
  border: 1px solid var(--lax-border) !important;
  border-radius: var(--lax-radius);
  padding: 18px;
}

/* Lot headings + price emphasis */
#lax-auctions .lot-detail .lot-title, .bidjs .lot-detail .lot-title,
#lax-auctions .lot-detail h1, .bidjs .lot-detail h1 {
  margin: 0 0 10px;
  font-weight: 800;
  letter-spacing: .01em;
}
#lax-auctions .lot-detail .current-bid,
.bidjs .lot-detail .current-bid,
#lax-auctions .lot-detail .currentBid,
.bidjs .lot-detail .currentBid {
  font-size: 48px; line-height: 1.04; font-weight: 800;
}

/* Buttons: unify to LAX black */
#lax-auctions .btn, .bidjs .btn,
#lax-auctions .bid-button, .bidjs .bid-button,
#lax-auctions .place-bid, .bidjs .place-bid,
#lax-auctions .register-btn, .bidjs .register-btn {
  border-radius: 10px;
  padding: 12px 16px;
  font-weight: 700;
  letter-spacing: .01em;
  transition: filter .12s ease, transform .06s ease;
}

#lax-auctions .btn-primary, .bidjs .btn-primary,
#lax-auctions .btn-info, .bidjs .btn-info,
#lax-auctions .btn-default, .bidjs .btn-default,
#lax-auctions .bid-button, .bidjs .bid-button,
#lax-auctions .place-bid, .bidjs .place-bid,
#lax-auctions .register-btn, .bidjs .register-btn {
  background: var(--lax-primary) !important;
  color: var(--lax-primary-contrast) !important;
  border: 1px solid var(--lax-primary) !important;
}
#lax-auctions .btn-primary:hover, .bidjs .btn-primary:hover,
#lax-auctions .bid-button:hover, .bidjs .bid-button:hover,
#lax-auctions .place-bid:hover, .bidjs .place-bid:hover,
#lax-auctions .register-btn:hover, .bidjs .register-btn:hover {
  filter: brightness(1.07);
}
#lax-auctions .btn:active, .bidjs .btn:active { transform: translateY(1px); }

/* Ghost buttons */
#lax-auctions .btn-outline, .bidjs .btn-outline,
#lax-auctions .btn-outline-dark, .bidjs .btn-outline-dark,
#lax-auctions .btn-secondary, .bidjs .btn-secondary {
  background: transparent !important;
  color: var(--lax-primary) !important;
  border: 1px solid var(--lax-primary) !important;
}

/* Register panel full width CTA */
#lax-auctions .registration-panel .btn,
.bidjs .registration-panel .btn,
#lax-auctions .register-panel .btn,
.bidjs .register-panel .btn { width: 100%; }

/* Pills/badges */
#lax-auctions .badge, .bidjs .badge,
#lax-auctions .status-badge, .bidjs .status-badge {
  border-radius: 999px;
  padding: 5px 10px;
  font-weight: 700;
}
#lax-auctions .badge-live, .bidjs .badge-live { background: #eaf7ec; color: #1b7d2d; }
#lax-auctions .badge-ended, .bidjs .badge-ended { background: #f1f1f1; color: #777; }

/* Share icon rings */
#lax-auctions .share .icon, .bidjs .share .icon,
#lax-auctions .share-row .icon, .bidjs .share-row .icon {
  width: 36px; height: 36px; display: inline-flex;
  align-items: center; justify-content: center;
  border: 1px solid var(--lax-border); border-radius: 999px;
}

/* Pagination */
#lax-auctions .pagination .page-link, .bidjs .pagination .page-link {
  border: 1px solid var(--lax-border);
  border-radius: 10px;
}
#lax-auctions .pagination .active .page-link, .bidjs .pagination .active .page-link {
  background: var(--lax-primary); color: var(--lax-primary-contrast);
  border-color: var(--lax-primary);
}

/* Forms — unify inputs, checkboxes, dropdowns */
#lax-auctions input[type="text"],
#lax-auctions input[type="email"],
#lax-auctions input[type="password"],
#lax-auctions input[type="number"],
#lax-auctions select,
#lax-auctions textarea,
.bidjs input[type="text"],
.bidjs input[type="email"],
.bidjs input[type="password"],
.bidjs input[type="number"],
.bidjs select,
.bidjs textarea {
  width: 100%;
  background: #fff;
  border: 1px solid var(--lax-border);
  border-radius: 10px;
  padding: 12px 12px;
  line-height: 1.3;
  color: var(--lax-text);
  transition: box-shadow .12s ease, border-color .12s ease;
}

#lax-auctions input:focus, .bidjs input:focus,
#lax-auctions select:focus, .bidjs select:focus,
#lax-auctions textarea:focus, .bidjs textarea:focus {
  outline: none;
  border-color: #cfcfd4;
  box-shadow: var(--lax-focus);
}

/* Checkbox/consent rows spacing */
#lax-auctions .form-check, .bidjs .form-check { margin: 8px 0; }
#lax-auctions .form-check-label, .bidjs .form-check-label { color: var(--lax-muted); }

/* --- MOBILE FIXES (key pain points) ------------------------------------ */

/* Ensure the fees/payment block and registration sections fill full width on mobile */
@media (max-width: 640px) {
  #lax-auctions .fees, .bidjs .fees,
  #lax-auctions .payment, .bidjs .payment,
  #lax-auctions .account-create, .bidjs .account-create,
  #lax-auctions .register-form, .bidjs .register-form,
  #lax-auctions .category-dropdowns, .bidjs .category-dropdowns,
  #lax-auctions .terms, .bidjs .terms {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    display: block !important;
    float: none !important;
    clear: both !important;
  }

  /* Prevent grid/list from clipping within iframes or parents */
  #lax-auctions .lot-grid, .bidjs .lot-grid,
  #lax-auctions .lots-grid, .bidjs .lots-grid {
    margin: 0; padding: 0;
  }

  /* Make CTAs comfortably tappable */
  #lax-auctions .btn, .bidjs .btn { padding: 14px 18px; }
}

/* Prevent images from overflowing tiny screens */
@media (max-width: 640px) {
  #lax-auctions img, .bidjs img { max-width: 100%; height: auto; }
}

/* Accessibility: focus style for keyboard users */
#lax-auctions .btn:focus, .bidjs .btn:focus,
#lax-auctions a:focus, .bidjs a:focus,
#lax-auctions input:focus, .bidjs input:focus,
#lax-auctions select:focus, .bidjs select:focus {
  outline: none;
  box-shadow: var(--lax-focus);
}

/* Keep “powered by” visible but subtle */
#lax-auctions .powered-by, .bidjs .powered-by { opacity: .6; }

/* Small polish */
#lax-auctions .link-muted, .bidjs .link-muted { color: var(--lax-muted) !important; }
