/* Party slot auctions, in the same Wonderland look as booking: navy night, white ink-outlined cards, orange. */
.au-intro { display: flex; flex-direction: column; gap: 6px; margin: 8px 0 20px; }
.au-kicker { display: inline-flex; align-items: center; gap: 8px; align-self: flex-start; padding: 3px 12px 3px 9px; border-radius: 999px; background: #111; color: #fff; font-size: var(--t-xs); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.au-dot { width: 8px; height: 8px; border-radius: 50%; background: #ff1a1a; animation: au-red 1s infinite; }
@keyframes au-red { 0% { box-shadow: 0 0 0 0 rgba(255, 26, 26, .9); opacity: 1; } 50% { opacity: .35; } 70% { box-shadow: 0 0 0 7px rgba(255, 26, 26, 0); } 100% { box-shadow: 0 0 0 0 rgba(255, 26, 26, 0); opacity: 1; } }
.au-intro h1 { margin: 4px 0 0; font-family: var(--display); font-size: var(--t-2xl); line-height: 1.1; color: #fff; }
.au-intro p { margin: 0; max-width: 60ch; color: var(--on-navy-muted); }
.au-cols { display: flex; flex-direction: column; gap: 20px; }
.au-list, .au-side { display: flex; flex-direction: column; gap: 20px; min-width: 0; }

/* one auction */
.au-card { background: var(--paper); color: var(--ink); border: 3px solid var(--ink); border-radius: 20px; padding: 18px; box-shadow: 0 0 0 1px rgba(254, 126, 37, .3), 0 0 26px rgba(254, 126, 37, .35); scroll-margin-top: 16px; }
.au-card a { color: var(--orange-deep); }
.au-top { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; flex-wrap: wrap; }
.au-when { font-family: var(--display); font-size: var(--t-xl); font-weight: 700; line-height: 1.15; }
.au-slot { color: var(--ink-muted); font-weight: 600; font-size: var(--t-sm); margin-top: 2px; }
.au-desc { margin: 8px 0 0; }
.au-clock { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px 6px 10px; border-radius: 14px; background: var(--navy); color: #fff; }
.au-clock > .i { width: 26px; height: 26px; color: #ffd166; }
.au-clock .lbl { display: block; font-size: 16px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--on-navy-muted); }
.au-timer { display: block; font-family: var(--mono); font-weight: 700; font-size: var(--t-lg); font-variant-numeric: tabular-nums; line-height: 1.1; }
.au-timer.soon { color: var(--orange-2); }
.au-price { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 10px; margin: 16px 0 12px; }
.au-price > div { padding: 10px 12px; border-radius: 14px; background: var(--paper-2); }
.au-price > div:first-child { background: var(--orange-soft); outline: 2px solid var(--orange); outline-offset: -2px; }
.au-price .lbl { display: block; font-size: var(--t-xs); font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: var(--ink-muted); }
.au-price .amt { display: block; font-family: var(--display); font-size: var(--t-2xl); font-weight: 700; line-height: 1.15; font-variant-numeric: tabular-nums; }
.au-price .amt.strike { font-size: var(--t-xl); color: var(--ink-muted); text-decoration: line-through; text-decoration-thickness: 2px; }
.au-price .sub { display: block; font-size: var(--t-xs); color: var(--ink-muted); }
.au-price .sub.save { color: var(--ok); font-weight: 700; font-size: var(--t-sm); }
.au-lead { display: flex; align-items: center; gap: 8px; margin: 8px 0; padding: 10px 14px; border-radius: 14px; border: 2px solid var(--ok); background: var(--ok-bg); color: var(--ok); font-weight: 600; }
.au-lead .i { width: 22px; height: 22px; }
.au-note { margin: 8px 0; padding: 8px 14px; border-radius: 14px; background: var(--warn-bg); color: var(--warn); font-size: var(--t-sm); }

/* bidding */
.au-form { display: flex; flex-direction: column; gap: 12px; margin-top: 4px; }
.au-bidrow { display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-end; }
.au-amt { flex: 1 1 100%; }
.au-money { position: relative; }
.au-money span { position: absolute; left: 16px; top: 50%; transform: translateY(-50%); font-weight: 700; color: var(--ink-muted); }
.au-money input { padding-left: 32px; font-family: var(--display); font-size: var(--t-xl); font-weight: 700; }
.au-bidrow .b { flex: 1 1 140px; }
.au-details { display: flex; flex-direction: column; gap: 12px; }
.au-details[hidden] { display: none; }
.au-grid { display: grid; gap: 12px; grid-template-columns: 1fr; }
@media (min-width: 560px) { .au-grid { grid-template-columns: 1fr 1fr; } }
.au-terms { display: flex; gap: 10px; align-items: flex-start; font-size: var(--t-sm); }
.au-terms input { width: 22px; height: 22px; margin: 1px 0 0; flex: none; accent-color: var(--orange); }
.au-who { margin: 0; color: var(--ink-muted); font-size: var(--t-sm); }
.linkish { background: none; border: 0; padding: 0; font: inherit; color: var(--orange-deep); text-decoration: underline; cursor: pointer; }
.au-err { margin: 0; color: var(--bad); font-weight: 600; }
.au-err:empty { display: none; }
.au-history { margin-top: 12px; font-size: var(--t-sm); color: var(--ink-muted); }
.au-history summary { cursor: pointer; font-weight: 700; min-height: 44px; display: flex; align-items: center; }
.au-history ol { margin: 0; padding-left: 20px; }

/* nothing on, sold, alerts, how it works */
.au-empty { padding: 28px 20px; border-radius: 20px; border: 3px dashed var(--navy-line); color: var(--on-navy-muted); text-align: center; }
.au-empty .big { margin: 0 0 4px; font-family: var(--display); font-size: var(--t-xl); color: #fff; }
.au-empty p { margin: 0; }
.au-empty a { color: var(--orange-2); }
.au-sold, .au-how { padding: 16px 20px; border-radius: 20px; border: 2px solid var(--navy-line); background: rgba(255, 255, 255, .03); }
.au-sold h2, .au-how h2 { margin: 0 0 8px; font-family: var(--display); font-size: var(--t-lg); color: #fff; }
.au-sold ul, .au-how ol { margin: 0; padding-left: 20px; font-size: var(--t-sm); }
.au-sold li, .au-how li { margin: 4px 0; }
.au-sold .muted { color: var(--on-navy-muted); }
.au-how .small { margin: 10px 0 0; font-size: var(--t-xs); color: var(--on-navy-muted); }
.au-how a { color: var(--orange-2); }
.au-alerts h2 { display: flex; align-items: center; gap: 8px; }
.au-alerts h2 .i { color: var(--orange-deep); }
.au-alerts > p { margin: 6px 0 12px; color: var(--ink-muted); font-size: var(--t-sm); }
.au-alert-form { display: flex; flex-direction: column; gap: 12px; }
.au-alert-form .b { align-self: flex-start; }

@media (min-width: 960px) {
  .au-intro h1 { font-size: var(--t-3xl); }
  .au-cols { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 32px; align-items: start; }
  .au-side { position: sticky; top: 20px; }
}
@media (prefers-reduced-motion: reduce) { .au-dot { animation: none; } }
