/*
 * Live Auction: bid box (ad page), auction cards, post-form settings and My bids.
 * Built on the modern.css tokens, so light and dark themes both work.
 */

/* ---------- Bid box ---------- */
.lnb-bidbox { margin: 1rem 0 .4rem; display: flex; flex-direction: column; gap: .8rem; }
.lnb-bidbox__top { display: flex; align-items: center; justify-content: space-between; gap: .5rem; }
.lnb-bidbox__phase { display: inline-flex; align-items: center; gap: .4rem; font-size: .78rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase;
  padding: .3rem .7rem; border-radius: 99px; background: var(--lnb-subtle); color: var(--lnb-muted); }
.lnb-bidbox__phase i { font-size: .5rem; }
.lnb-bidbox[data-phase="live"] .lnb-bidbox__phase { background: var(--lnb-danger-bg); color: var(--lnb-danger); }
.lnb-bidbox[data-phase="live"] .lnb-bidbox__phase i { animation: lnb-pulse 1.4s infinite; }
.lnb-bidbox[data-phase="upcoming"] .lnb-bidbox__phase { background: var(--lnb-warn-bg); color: var(--lnb-warn-text); }
.lnb-bidbox[data-phase="sold"] .lnb-bidbox__phase { background: var(--lnb-success-bg); color: var(--lnb-success); }
.lnb-bidbox__lot { font-size: .8rem; color: var(--lnb-muted); font-weight: 600; }
@keyframes lnb-pulse { 0%, 100% { opacity: 1; } 50% { opacity: .25; } }

.lnb-bidbox__clock { display: flex; flex-direction: column; gap: .1rem; padding: .8rem 1rem; border-radius: var(--lnb-radius);
  background: var(--lnb-grad-navy); color: #fff; }
.lnb-bidbox__clock small { font-size: .74rem; text-transform: uppercase; letter-spacing: .06em; opacity: .8; font-weight: 700; }
.lnb-bidbox__clock strong { font-size: 1.6rem; font-weight: 800; letter-spacing: -.01em; font-variant-numeric: tabular-nums; white-space: nowrap; line-height: 1.2; }
.lnb-bidbox__clock span { font-size: .8rem; opacity: .85; }
.lnb-bidbox.is-ending .lnb-bidbox__clock { background: linear-gradient(135deg, #e5484d 0%, #b4232a 100%); }
.lnb-bidbox.is-ending .lnb-bidbox__clock strong { animation: lnb-pulse 1s infinite; }

.lnb-bidbox__price { display: flex; align-items: flex-end; justify-content: space-between; gap: .8rem; flex-wrap: wrap; }
.lnb-bidbox__price small { display: block; font-size: .78rem; color: var(--lnb-muted); font-weight: 700; text-transform: uppercase; letter-spacing: .05em; }
.lnb-bidbox__price strong { display: inline-block; font-size: 2.1rem; font-weight: 800; letter-spacing: -.02em; line-height: 1.1; color: var(--lnb-primary); font-variant-numeric: tabular-nums; }
.lnb-bidbox__price strong.is-bump { animation: lnb-bump .9s var(--lnb-ease); }
@keyframes lnb-bump { 0% { transform: scale(1); } 30% { transform: scale(1.12); color: var(--lnb-success); } 100% { transform: scale(1); } }
.lnb-bidbox__stats { display: flex; gap: .9rem; font-size: .85rem; color: var(--lnb-muted); }
.lnb-bidbox__stats b { color: var(--lnb-text); }
.lnb-bidbox__reserve { margin: -.4rem 0 0; font-size: .84rem; font-weight: 600; display: flex; gap: .4rem; align-items: center; }
.lnb-bidbox__reserve.is-met { color: var(--lnb-success); }
.lnb-bidbox__reserve.is-not-met { color: var(--lnb-warn-text); }

.lnb-bidbox__you { padding: .7rem .9rem; border-radius: var(--lnb-radius-sm); font-size: .9rem; line-height: 1.35; border: 1px solid transparent; }
.lnb-bidbox__you i { margin-right: .3rem; }
.lnb-bidbox__you.is-lead, .lnb-bidbox__you.is-win { background: var(--lnb-success-bg); color: var(--lnb-success-text); border-color: var(--lnb-success-border); }
.lnb-bidbox__you.is-out { background: var(--lnb-danger-bg); color: var(--lnb-danger-text); border-color: var(--lnb-danger-border); }
.lnb-bidbox__you.is-info { background: var(--lnb-subtle); color: var(--lnb-text); border-color: var(--lnb-border); }

.lnb-bidbox__form { display: flex; flex-direction: column; gap: .5rem; }
.lnb-bidbox__max-label { font-size: .84rem; font-weight: 600; color: var(--lnb-text); margin-top: .2rem; }
.lnb-bidbox__max { display: flex; flex-direction: column; gap: .5rem; }
.lnb-bidbox__max .lnb-input-addon { width: 100%; }
.lnb-bidbox__max .lnb-btn { width: 100%; }
.lnb-bidbox.is-busy .lnb-bidbox__form { opacity: .6; pointer-events: none; }
.lnb-bidbox [data-a="watch"].is-on { color: var(--lnb-primary); border-color: var(--lnb-primary); }

.lnb-bidbox__history, .lnb-bidbox__how { border: 1px solid var(--lnb-border); border-radius: var(--lnb-radius-sm); padding: .2rem .9rem; }
.lnb-bidbox__history summary, .lnb-bidbox__how summary { cursor: pointer; padding: .55rem 0; font-weight: 700; font-size: .9rem; color: var(--lnb-text); }
.lnb-bidbox__history ol { list-style: none; margin: 0 0 .6rem; padding: 0 .5rem 0 0; max-height: 260px; overflow-y: auto; }
.lnb-bidbox__history li { display: grid; grid-template-columns: 1fr auto auto; gap: .7rem; align-items: baseline; padding: .45rem 0; border-top: 1px solid var(--lnb-border); font-size: .86rem; }
.lnb-bidbox__history li span { color: var(--lnb-text); }
.lnb-bidbox__history li em { font-style: normal; font-size: .68rem; text-transform: uppercase; letter-spacing: .04em; color: var(--lnb-muted); border: 1px solid var(--lnb-border); border-radius: 99px; padding: 0 .4rem; margin-left: .25rem; }
.lnb-bidbox__history li b { font-variant-numeric: tabular-nums; }
.lnb-bidbox__history li time { color: var(--lnb-muted); font-size: .78rem; min-width: 52px; text-align: right; }
.lnb-bidbox__history li.is-top b { color: var(--lnb-success); }
.lnb-bidbox__history li.is-you span { font-weight: 700; color: var(--lnb-primary); }
.lnb-bidbox__history li.is-empty { display: block; color: var(--lnb-muted); }
.lnb-bidbox__how ul { margin: 0 0 .7rem; padding-left: 1.1rem; font-size: .84rem; color: var(--lnb-muted); display: grid; gap: .35rem; }
.lnb-bidbox__how b { color: var(--lnb-text); }

/* Phones: sticky bid bar while the bid box is off screen. */
.lnb-bidbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1030; display: flex; align-items: center; gap: .8rem; padding: .65rem 1rem calc(.65rem + env(safe-area-inset-bottom));
  background: var(--lnb-surface); border-top: 1px solid var(--lnb-border); box-shadow: 0 -8px 24px rgba(15, 23, 42, .12); }
.lnb-bidbar[hidden] { display: none; }
.lnb-bidbar > div { display: flex; flex-direction: column; line-height: 1.15; min-width: 0; }
.lnb-bidbar small { font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--lnb-muted); }
.lnb-bidbar strong { font-size: 1.15rem; font-weight: 800; color: var(--lnb-primary); font-variant-numeric: tabular-nums; }
.lnb-bidbar span { flex: 1; font-size: .82rem; font-weight: 700; color: var(--lnb-text); font-variant-numeric: tabular-nums; text-align: right; white-space: nowrap; }
.lnb-bidbox.is-ending .lnb-bidbar span { color: var(--lnb-danger); }
@media (min-width: 992px) { .lnb-bidbar { display: none !important; } }

/* ---------- Auction cards ---------- */
.lnb-lotcard__phase { position: absolute; top: 8px; left: 8px; font-size: 11px; font-weight: 800; padding: 3px 9px; border-radius: 99px; text-transform: uppercase; letter-spacing: .04em;
  background: rgba(15, 23, 42, .78); color: #fff; }
.lnb-lotcard__phase.is-live { background: #e5484d; }
.lnb-lotcard__phase.is-upcoming { background: var(--lnb-grad-accent); color: #3a2a00; }
.lnb-lotcard__phase.is-sold { background: #16a34a; }
.lnb-lotcard__bid { display: flex; flex-direction: column; line-height: 1.15; }
.lnb-lotcard__bid small { font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--lnb-muted); }
.lnb-lotcard__bids { font-size: .78rem; color: var(--lnb-muted); white-space: nowrap; }
.lnb-lotcard__time { display: flex; align-items: center; gap: .35rem; margin-top: .45rem; padding-top: .45rem; border-top: 1px dashed var(--lnb-border);
  font-size: .8rem; font-weight: 700; color: var(--lnb-text); font-variant-numeric: tabular-nums; }
.lnb-lotcard.is-ending .lnb-lotcard__time { color: var(--lnb-danger); }

/* ---------- Post form ---------- */
.lnb-auction-fields { border: 1px solid var(--lnb-border); border-radius: var(--lnb-radius); padding: 1rem; background: var(--lnb-subtle); }
.lnb-auction-fields fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
.lnb-auction-fields__head { display: flex; gap: .75rem; align-items: flex-start; margin-bottom: .9rem; }
.lnb-auction-fields__head > i { width: 38px; height: 38px; flex: none; border-radius: 12px; display: grid; place-items: center; background: var(--lnb-grad); color: #fff; }
.lnb-auction-fields__head strong { display: block; color: var(--lnb-text); }
.lnb-auction-fields__head span { display: block; font-size: .84rem; color: var(--lnb-muted); }
.lnb-auction-fields__locked { font-size: .86rem; color: var(--lnb-warn-text); background: var(--lnb-warn-bg); border-radius: var(--lnb-radius-sm); padding: .5rem .75rem; }
.lnb-auction-len { display: flex; flex-wrap: wrap; gap: .35rem; margin-top: .5rem; }
.lnb-auction-len button { border: 1px solid var(--lnb-border); background: var(--lnb-surface); color: var(--lnb-text); border-radius: 99px; padding: .25rem .7rem; font-size: .8rem; font-weight: 600; }
.lnb-auction-len button:hover, .lnb-auction-len button.is-on { border-color: var(--lnb-primary); color: var(--lnb-primary); }

/* ---------- My bids ---------- */
.lnb-mybids__tabs { display: flex; gap: .4rem; flex-wrap: wrap; margin: 1rem 0; }
.lnb-mybids__tabs a { padding: .45rem .95rem; border-radius: 99px; border: 1px solid var(--lnb-border); color: var(--lnb-text); text-decoration: none; font-weight: 600; font-size: .9rem; background: var(--lnb-surface); }
.lnb-mybids__tabs a.is-active { background: var(--lnb-grad); color: #fff; border-color: transparent; }
.lnb-mybids__tabs a span { opacity: .75; margin-left: .25rem; }
.lnb-mybids__list { display: grid; gap: .7rem; }
.lnb-mybid { display: grid; grid-template-columns: 88px 1fr auto; gap: .9rem; align-items: center; padding: .7rem; border: 1px solid var(--lnb-border); border-radius: var(--lnb-radius); background: var(--lnb-surface); }
.lnb-mybid img { width: 88px; height: 66px; object-fit: cover; border-radius: 10px; background: var(--lnb-img-placeholder); }
.lnb-mybid h3 { font-size: .98rem; margin: 0 0 .2rem; font-weight: 700; }
.lnb-mybid h3 a { color: var(--lnb-text); text-decoration: none; }
.lnb-mybid p { margin: 0; font-size: .84rem; color: var(--lnb-muted); }
.lnb-mybid__state { font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; padding: .25rem .6rem; border-radius: 99px; white-space: nowrap; }
.lnb-mybid__state.is-lead, .lnb-mybid__state.is-won { background: var(--lnb-success-bg); color: var(--lnb-success); }
.lnb-mybid__state.is-out, .lnb-mybid__state.is-lost { background: var(--lnb-danger-bg); color: var(--lnb-danger); }
.lnb-mybid__state.is-watch { background: var(--lnb-subtle); color: var(--lnb-muted); }
@media (max-width: 575.98px) {
  .lnb-mybid { grid-template-columns: 64px 1fr; }
  .lnb-mybid img { width: 64px; height: 52px; }
  .lnb-mybid__side { grid-column: 1 / -1; display: flex; gap: .5rem; align-items: center; justify-content: space-between; }
  .lnb-bidbox__clock strong { font-size: 1.35rem; }
  .lnb-bidbox__price strong { font-size: 1.8rem; }
}
