/* Authored layout; existing font/product-art records: asset-register.html.
 * Official YouTube embed provenance and restrictions: demo-auction.js. */
body.auction-page-route { margin: 0; overflow: hidden; background: #f2ebe3; }
.auction-page-route .landing.spot-buddy { min-height: 0; padding: 0; background: #f2ebe3; }
.auction-page-route .site-header, .auction-page-route .presentation-bar,
.auction-page-route .footer-container, .auction-page-route .spot-rail { display: none !important; }
.auction-page-route .spot-buddy main.container { width: 100%; max-width: none; padding: 0; margin: 0; }
.auction-page-shell { box-sizing: border-box; position: fixed; top: var(--page-top, 0px); left: 0; width: 100%; height: var(--page-height, 100dvh); padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left); display: grid; grid-template-rows: auto auto minmax(0, 1fr); background: #fffefb; color: #3e2f31; }
.auction-page-header { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 60px; padding: 6px 24px; border-bottom: 1px solid #e9dfd2; }
.auction-page-back { display: inline-flex; align-items: center; min-height: 44px; color: #70534b; font-size: 13px; font-weight: 650; white-space: nowrap; }
.auction-page-brand .brand { font-size: 24px; }
.auction-page-brand .buddy-mark { width: 36px; height: 36px; }
.auction-page-header nav { display: flex; gap: 8px; }
.auction-page-header button, .auction-page-specs { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 8px 12px; border: 1px solid #e0cfb9; border-radius: 8px; color: #70534b; background: #fff8ed; font: inherit; font-size: 12px; cursor: pointer; white-space: nowrap; text-decoration: none; }
.auction-page-header button[aria-pressed=true] { background: #3e2f31; color: #fff8ed; }
.auction-page-shell [hidden] { display: none !important; }
.auction-page-notice { padding: 7px 16px; background: #fff4da; font-size: 12px; }
.auction-page-notice p { margin: 0; }
.auction-page-notice input { box-sizing: border-box; width: 100%; padding: 6px; margin-top: 4px; font: inherit; }
.auction-page-host { min-height: 0; min-width: 0; overflow: hidden; }
.auction-page-host .auction-stage { border: 0; border-radius: 0; }
.auction-page-host .auction-main { overflow-y: auto; overscroll-behavior: contain; }
.auction-page-empty { display: grid; justify-content: center; align-content: center; height: 100%; gap: 16px; padding: 24px; }
.auction-page-shell :where(a,button):focus-visible { outline: 2px solid #9b4b3a; outline-offset: -2px; }
@media(max-width:600px) {
 .auction-page-header { gap: 8px; min-height: 52px; padding: 2px 8px; }
 .auction-page-back { font-size: 11px; }
 .auction-page-brand .brand { font-size: 19px; gap: 3px; }
 .auction-page-brand .buddy-mark { width: 27px; height: 27px; }
 .auction-page-header nav { gap: 4px; }
 .auction-page-header button, .auction-page-specs { min-height: 40px; padding: 6px; font-size: 10px; }
 .auction-page-host [data-demo-auction] .auction-topbar { min-height: 66px; }
 .auction-page-host [data-demo-auction] .auction-showcase { height: clamp(72px, 14cqh, 108px); }
 .auction-page-host [data-demo-auction] .auction-art { width: 64px; flex-basis: 64px; }
 .auction-page-host [data-demo-auction] .auction-main { gap: 5px; }
 .auction-page-host [data-demo-auction] .wallet-summary dl { grid-template-columns: 1fr 1fr; gap: 3px; }
 .auction-page-host [data-demo-auction] .wallet-summary dd { font-size: 16px; }
 .auction-page-host [data-demo-auction] .auction-event-status { font-size: 9px; }
}
@media(max-height:550px) {
 .auction-page-header { min-height: 44px; padding-block: 0; }
 .auction-page-host [data-demo-auction] .auction-topbar { min-height: 54px; padding-block: 4px; }
 .auction-page-host [data-demo-auction] .auction-showcase { height: 64px; }
 .auction-page-host [data-demo-auction] .auction-art { width: 48px; flex-basis: 48px; }
}
/* Explicit rows keep the stage in the flexible row when the notice is hidden. */
.auction-page-header { grid-row: 1; }
.auction-page-notice { grid-row: 2; }
.auction-page-host { grid-row: 3; }

/* Supplemental information stays available without expanding the workspace. */
.auction-page-host .auction-participation-tools { position: relative; color: #70534b; }
.auction-page-host .auction-participation-tools > summary { display: flex; justify-content: space-between; align-items: center; min-height: 44px; padding: 8px 12px; border: 1px solid #e0cfb9; border-radius: 9px; background: #fff8ed; font-size: 12px; cursor: pointer; list-style: none; }
.auction-page-host .auction-participation-tools > summary::-webkit-details-marker { display: none; }
.auction-page-host .auction-participation-tools[open] > summary > span { transform: rotate(45deg); }
.auction-page-host .auction-participation-panel { display: grid; gap: 12px; padding: 16px; margin-bottom: 8px; border: 1px solid #d4b58b; border-radius: 12px; background: #fffefb; box-shadow: 0 8px 28px #3e2f3118; }
.auction-page-host .auction-participation-panel > h3 { font-size: 15px; }
.auction-page-host .chat-messages:focus-visible { outline: 2px solid #9b4b3a; outline-offset: -2px; }
.auction-page-host [data-demo-auction] { grid-template-rows: auto minmax(0,1fr); }
.auction-page-host .auction-price-heading { display: flex; justify-content: space-between; align-items: center; gap: 8px; color: #70534b; font-size: 11px; font-weight: 650; line-height: 1.4; }
.auction-page-host .auction-price-heading > span { text-align: left; }
.auction-page-host .auction-price-heading .auction-timer { min-width: 0; padding: 0; border: 0; border-radius: 0; background: transparent; text-align: right; }
.auction-page-host .auction-price-heading .auction-timer > span { color: #75615c; font-size: 9px; }
.auction-page-host .auction-price-heading .auction-timer > strong { display: block; margin: 0; color: #3e2f31; font-size: 17px; font-weight: 750; letter-spacing: 0; line-height: 1.2; white-space: nowrap; }
.auction-page-host .auction-participation-panel .demo-auction-selector { grid-column: 1 / -1; }
.auction-page-host .auction-participation-panel .demo-auction-selector a { color: #70534b; border-color: #e0cfb9; background: #fffefb; }
.auction-page-host .auction-participation-panel .demo-auction-selector a[aria-current=page] { color: #3e2f31; border-color: #dfb45e; background: #fff2d5; }
.auction-page-host .auction-room-information { font-size: 12px; line-height: 1.6; }

/* Dedicated workspace: broadcast / bidding with product below / transcript.
 * At narrow widths the workspace scrolls a single column; the document stays
 * fixed. Laptop core content fits without scrolling while tools are closed. */
.auction-page-host .auction-stage,
.auction-page-host [data-demo-auction] {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(300px, 1fr) minmax(280px, .95fr);
  grid-template-rows: auto minmax(0, 1fr);
  grid-template-areas: "heading heading heading" "broadcast content chat";
}
.auction-page-host [data-demo-auction] { grid-template-rows: minmax(0, 1fr); grid-template-areas: "broadcast content chat"; }
.auction-page-host .auction-topbar { grid-area: heading; }
.auction-page-host .auction-broadcast { grid-area: broadcast; display: flex; flex-direction: column; min-width: 0; min-height: 0; background: #201b1d; color: #fff8ed; }
.auction-broadcast-header { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 18px 20px; }
.auction-broadcast-header h2 { color: inherit; font-size: 17px; font-weight: 750; }
.auction-broadcast-header > span { color: #e2cfc4; font-size: 12px; }
.auction-video-frame { display: flex; align-items: center; flex: 1 0 200px; min-height: 200px; background: #121012; }
.auction-video-frame iframe { display: block; width: 100%; height: auto; min-height: 200px; max-height: 100%; aspect-ratio: 16 / 9; border: 0; background: #000; }
.auction-broadcast-footer { padding: 16px 20px 20px; font-size: 12px; line-height: 1.65; }
.auction-broadcast-footer a { display: inline-flex; align-items: center; min-height: 44px; color: #fff8ed; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.auction-broadcast-footer p { color: #d7c7bf; font-size: 11px; }
.auction-page-host .auction-content { grid-area: content; min-width: 0; min-height: 0; overflow-y: auto; overscroll-behavior: contain; border-inline: 1px solid var(--auction-line); background: #fffefb; }
.auction-page-host .auction-main { display: flex; flex-direction: column; gap: 8px; padding: 16px; overflow: visible; }
.auction-page-host .auction-main > * { order: 4; }
.auction-page-host .auction-main > .auction-price-board { position: relative; top: auto; order: 0; }
.auction-page-host .auction-main > [data-demo-summary] { order: 1; }
.auction-page-host .auction-main > .wallet-summary { order: 2; }
.auction-page-host .auction-main > :is([data-demo-bid-form], [data-bid-form]) { order: 3; }
.auction-page-host .auction-main > .auction-participation-tools { order: 5; }
.auction-page-host :is([data-demo-bid-form], [data-bid-form] fieldset) { display: grid; grid-template-columns: minmax(0, 1fr); gap: 7px; }
.auction-page-host [data-bid-form] .wallet-summary { order: -1; }
.auction-page-host :is([data-demo-bid-form], [data-bid-form]) .detail-primary { justify-content: center; min-height: 46px; }
.auction-page-host .bid-quick-actions { display: grid; }
.auction-page-host .auction-price-board > small { display: block; }
.auction-page-host [data-demo-auction] .wallet-summary dl { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.auction-page-host [data-demo-auction] .wallet-summary dd { font-size: 19px; }
.auction-page-host [data-demo-auction][data-room-phase=ended] [data-demo-bid-form] { display: none; }
.auction-page-host .auction-stage .auction-content > .auction-showcase { display: block; height: auto; min-height: 180px; padding: 18px 16px 24px; overflow: visible; border-top: 1px solid var(--auction-line); border-bottom: 0; background: #fff8ed; }
.auction-page-host .auction-item { width: 100%; gap: 14px; align-items: flex-start; }
.auction-page-host .auction-stage .auction-content .auction-art { flex: 0 0 112px; width: 112px; border-radius: 14px; }
.auction-page-host .auction-item-copy { max-width: none; }
.auction-page-host .auction-item-copy h3 { margin-block: 5px; font-size: 18px; line-height: 1.45; word-break: keep-all; }
.auction-page-host .auction-item-copy :where(p, small, span) { font-size: 11px; line-height: 1.6; }
.auction-page-host .auction-item-copy > small { display: block; }
.auction-page-host .auction-chat,
.auction-page-host [data-demo-auction] .auction-chat { grid-area: chat; display: flex; flex-direction: column; gap: 8px; padding: 16px 14px; overflow: hidden; border: 0; }
.auction-page-host .auction-chat > * { flex: 0 0 auto; }
.auction-page-host .chat-header h3 { font-size: 16px; }
.auction-page-host .chat-connection { display: block; max-height: none; overflow: visible; font-size: 11px; line-height: 1.5; }
.auction-page-host .chat-nickname { display: flex; }
.auction-page-host .chat-nickname :is(input, button) { min-height: 40px; }
.auction-page-host .chat-messages,
.auction-page-host [data-demo-auction] .chat-messages { flex: 1 1 0; min-height: 0; overflow-y: scroll; overflow-x: hidden; scrollbar-gutter: stable; scrollbar-width: auto; scrollbar-color: auto; }
.auction-page-host .chat-messages::-webkit-scrollbar { width: 10px; }
.auction-page-host .chat-messages::-webkit-scrollbar-track { background: #f0e5d6; border-radius: 8px; }
.auction-page-host .chat-messages::-webkit-scrollbar-thumb { background: #b99c78; border: 2px solid #f0e5d6; border-radius: 8px; min-height: 28px; }
.auction-page-host .auction-chat .chat-form { grid-template-columns: minmax(0, 1fr) 64px; }
.auction-page-host .chat-form textarea { min-height: 48px; height: 64px; }
.auction-page-host .chat-form button { min-height: 44px; }
.auction-page-host .chat-footer { display: block; font-size: 10px; line-height: 1.5; }
.auction-page-host .chat-new-messages { position: absolute; bottom: 145px; left: 50%; transform: translateX(-50%); z-index: 2; }
.auction-page-host .auction-participation-panel .chat-nickname { display: grid; }
.auction-page-host .auction-participation-panel { position: static; width: 100%; margin: 8px 0 0; padding: 12px; box-shadow: none; }
.auction-page-host .auction-participation-panel .demo-auction-selector { gap: 5px; }
.auction-page-host .auction-participation-panel .chat-nickname { grid-template-columns: minmax(0, 1fr) auto; }
.auction-page-host .auction-participation-panel .chat-nickname label { grid-column: 1 / -1; }

@media (max-width: 1099px), (max-height: 600px) {
  .auction-page-host .auction-stage,
  .auction-page-host [data-demo-auction] { display: flex; flex-direction: column; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
  .auction-page-host .auction-stage > * { flex: 0 0 auto; }
  .auction-page-host .auction-topbar { order: 0; }
  .auction-page-host .auction-broadcast { order: 1; }
  .auction-page-host .auction-content { order: 2; overflow: visible; border-inline: 0; }
  .auction-page-host .auction-chat { order: 3; height: max(400px, 65dvh); min-height: 400px; border-top: 1px solid var(--auction-line); }
  .auction-page-host .auction-video-frame { flex: 0 0 auto; }
  .auction-page-host .auction-video-frame iframe { max-height: 55dvh; }
  .auction-page-host .auction-effects-layer { position: absolute; flex: initial; }
  .auction-page-host .auction-main { padding: 14px; }
  .auction-page-host .auction-broadcast-header { padding: 12px 14px; }
  .auction-page-host .auction-broadcast-footer { padding: 8px 14px 14px; }
  .auction-page-host .auction-item-copy h3 { font-size: 18px; }
  .auction-page-host .chat-nickname { display: flex; }
  .auction-page-host .auction-chat .chat-form > div { flex-direction: column; }
}
@media (max-width: 600px) {
  .auction-page-header { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 0 8px; }
  .auction-page-brand { justify-self: end; }
  .auction-page-header nav { grid-column: 1 / -1; justify-content: flex-end; padding-bottom: 4px; }
  .auction-page-host .auction-stage .auction-content .auction-art { width: 96px; flex-basis: 96px; }
  .auction-page-host .bid-amount input { font-size: 20px; }
  .auction-page-host .auction-chat .chat-form textarea { min-height: 64px; }
}

/* Give the product image more room when the desktop has enough height. */
@media(min-width:1100px) and (min-height:900px){
 .auction-page-host .auction-content{display:flex;flex-direction:column}
 .auction-page-host .auction-main{flex:0 0 auto}
 .auction-page-host .auction-stage .auction-content>.auction-showcase{flex:1 1 0;min-height:0;padding-block:12px}
 .auction-page-host .auction-item{height:100%;flex-direction:column;align-items:center;gap:10px;text-align:center}
 .auction-page-host .auction-item-copy{flex:0 0 auto}
 .auction-page-host .auction-stage .auction-content .auction-art{flex:1 1 0;min-height:0;width:auto;max-width:200px;max-height:200px;aspect-ratio:1}
}

/* Charging stays visible next to the balance, including a live auction. */
.auction-wallet-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.auction-wallet-heading>span{font-size:11px;color:#70534B;line-height:1.6}
.auction-page-host .auction-credit-topup{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 12px;border:1px solid #E2BB64;border-radius:8px;background:#FFF0C6;color:#543E29;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.auction-page-host .auction-credit-topup:disabled{opacity:.55;cursor:not-allowed}
.auction-page-host .auction-stage .wallet-back{display:flex;min-height:44px;font-size:13px;font-weight:650}

/* Role DOM is owned by auction-experience.js. These rules also cover ordinary
 * dedicated auctions, without changing modal previews or the mobile stack. */
.auction-page-route.auction-observer-view .auction-page-host :is([data-demo-bid-form], [data-bid-form]) { display: none; }
.auction-page-host [data-auction-moderation-panel] { grid-area: manage; min-width: 0; min-height: 0; overflow: auto; overscroll-behavior: contain; scrollbar-gutter: stable; border-left: 1px solid var(--auction-line); }

@media (min-width: 1100px) and (min-height: 601px) {
  .auction-page-host .bid-quick-actions button { min-height: 44px; }
  .auction-page-route.auction-observer-view .auction-page-host .auction-item { height: 100%; flex-direction: column; justify-content: center; gap: 12px; text-align: center; }
  .auction-page-route.auction-observer-view .auction-page-host .auction-stage .auction-content .auction-art { flex: 0 1 auto; width: auto; height: clamp(180px, 32cqh, 220px); min-height: 0; max-width: 220px; max-height: 220px; aspect-ratio: 1; }
  .auction-page-route.auction-observer-view .auction-page-host .auction-item-copy { flex: 0 0 auto; }
  .auction-page-route.auction-observer-view .auction-page-host .auction-item-copy h3 { font-size: 20px; line-height: 1.35; }
  .auction-page-host .auction-stage.auction-no-broadcast {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    grid-template-areas: "heading heading" "content chat";
  }
  .auction-page-host [data-demo-auction].auction-no-broadcast { grid-template-areas: "content chat"; }
  .auction-page-host .auction-stage.auction-no-broadcast:has(> [data-auction-moderation-panel]:not([hidden])) {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(280px, .8fr);
    grid-template-areas: "heading heading heading" "content chat manage";
  }
  .auction-page-host [data-demo-auction].auction-no-broadcast:has(> [data-auction-moderation-panel]:not([hidden])) { grid-template-areas: "content chat manage"; }
}

/* 13-inch laptop browser content areas. Put the clock and top-up action beside
 * their values to retain quick increments; no zoom or scale transforms.
 * Taller desktops retain the larger product treatment above. */
@media (min-width: 1100px) and (min-height: 601px) and (max-height: 899px) {
  .auction-page-host .auction-stage:not(.auction-no-broadcast) {
    grid-template-columns: minmax(0, 1.45fr) minmax(340px, 1.1fr) minmax(280px, .95fr);
  }
  .auction-page-header { min-height: 56px; padding-block: 4px; }
  .auction-page-header :is(button, .auction-page-specs) { min-height: 44px; }
  .auction-page-host .auction-topbar { height: 56px; padding-block: 4px; }
  .auction-page-host .auction-content { position: relative; display: flex; flex-direction: column; }
  .auction-page-host .auction-main { flex: 0 0 auto; gap: 5px; padding: 10px 12px; }
  .auction-page-host .auction-stage .auction-price-board { padding: 6px 10px; }
  .auction-page-host [data-demo-auction] .auction-price-board { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "label clock" "amount clock" "leader clock"; column-gap: 8px; text-align: left; }
  .auction-page-host .auction-stage .auction-price-board > strong { --auction-price-size: 32px; margin-top: 0; line-height: 1.1; }
  .auction-page-host [data-demo-auction] .auction-price-board > strong { grid-area: amount; justify-content: flex-start; }
  .auction-page-host .auction-price-heading { display: contents; line-height: 1.3; }
  .auction-page-host .auction-price-heading > span { grid-area: label; }
  .auction-page-host .auction-price-heading .auction-timer { grid-area: clock; align-self: center; gap: 0; }
  .auction-page-host .auction-price-heading .auction-timer > span { font-size: 10px; }
  .auction-page-host .auction-price-heading .auction-timer > strong { font-size: 18px; }
  .auction-page-host .auction-price-board > small { margin-top: 2px; font-size: 11px; }
  .auction-page-host [data-demo-auction] .auction-price-board > small { grid-area: leader; }
  .auction-page-host .auction-stage .wallet-summary { padding: 6px 8px; }
  .auction-page-host [data-demo-auction] .wallet-summary { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 8px; }
  .auction-page-host .auction-wallet-heading { display: contents; }
  .auction-page-host .auction-wallet-heading > span { grid-column: 1; min-width: 0; line-height: 1.4; }
  .auction-page-host .auction-credit-topup { grid-column: 2; grid-row: 1 / span 2; align-self: center; min-height: 44px; padding: 6px 8px; font-size: 12px; }
  .auction-page-host [data-demo-auction] .wallet-summary dl { grid-column: 1; margin-top: 0; }
  .auction-page-host [data-demo-auction] .wallet-summary dd { font-size: 19px; line-height: 1.25; }
  .auction-page-host :is([data-demo-bid-form], [data-bid-form] fieldset) { gap: 5px; }
  .auction-page-host .auction-stage .bid-label { font-size: 12px; }
  .auction-page-host .auction-stage .bid-amount { height: 46px; padding-block: 0; }
  .auction-page-host .auction-stage .bid-amount input { min-height: 44px; font-size: 22px; }
  .auction-page-host .bid-quick-actions { display: grid; gap: 5px; }
  .auction-page-host .bid-quick-actions button { min-height: 44px; }
  .auction-page-host .auction-stage .bid-feedback { display: block; min-height: 0; max-height: none; overflow: visible; font-size: 11px; line-height: 1.4; }
  .auction-page-host .auction-stage .auction-event-status { display: block; padding: 4px 7px; font-size: 11px; line-height: 1.4; }
  .auction-page-host .auction-main:has(> [data-demo-feedback]:not(:empty)) > [data-demo-phase] { display: none; }
  .auction-page-host .auction-stage .auction-content > .auction-showcase { flex: 1 0 auto; min-height: 112px; padding: 8px 12px; }
  .auction-page-host .auction-item { align-items: center; gap: 12px; }
  .auction-page-host .auction-stage .auction-content .auction-art { flex-basis: 84px; width: 84px; border-radius: 10px; }
  .auction-page-host .auction-item-copy h3 { margin-block: 3px; font-size: 17px; line-height: 1.35; }
  .auction-page-host .auction-item-copy :where(p, small, span) { font-size: 11px; line-height: 1.4; }
  .auction-page-host .auction-item-copy > :where(p, small, span) { margin-top: 2px; }
  .auction-page-host .auction-item-copy > small { display: block; }
  .auction-page-host .auction-participation-tools { position: static; }
  .auction-page-host .auction-participation-tools[open] { position: absolute; inset: 8px 12px auto; z-index: 10; }
  .auction-page-host .auction-participation-panel {
    position: static; width: 100%; max-height: min(430px, calc(100cqh - 140px)); margin: 6px 0 0;
    overflow: auto; overscroll-behavior: contain; scrollbar-gutter: stable;
    box-shadow: 0 8px 28px #3e2f3130;
  }
  .auction-page-host .auction-participation-panel :is(input, button, summary, .demo-auction-selector a) { min-height: 44px; }
  .auction-page-host .auction-participation-panel summary { display: flex; align-items: center; }
  .auction-page-host .chat-nickname :is(input, button) { min-height: 44px; }
}

@media (max-width: 1099px), (max-height: 600px) {
  .auction-page-host [data-auction-moderation-panel] { flex: 0 0 auto; order: 4; max-height: 65dvh; border-top: 1px solid var(--auction-line); border-left: 0; }
}

/* Image-first lot card. Keep the button outside the replaceable artwork node. */
.auction-page-route .auction-page-host .auction-stage .auction-content > .auction-showcase[data-auction-showcase] {
  display: flex; align-items: stretch; padding: 6px; background: #fffaf2;
}
.auction-page-route .auction-page-host .auction-stage .auction-content .auction-item[data-auction-item-card] {
  position: relative; display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start;
  width: 100%; min-height: 0; height: auto; gap: 0; text-align: left;
}
.auction-item-media {
  position: relative; isolation: isolate; width: 100%; min-height: 0; aspect-ratio: 400 / 270;
  overflow: hidden; border: 1px solid #e7dacb; border-radius: 12px; background: var(--lot-color, #eee7f3);
}
.auction-page-route .auction-page-host .auction-stage .auction-content .auction-item[data-auction-item-card] .auction-art {
  position: absolute; inset: 0; width: 100%; height: 100%; min-height: 0; max-width: none; max-height: none;
  flex: none; aspect-ratio: auto; border: 0; border-radius: 0; background: transparent;
}
.auction-item-media .auction-art svg { display: block; width: 100%; height: 100%; }
.auction-page-route .auction-page-host .auction-stage .auction-content .auction-item[data-auction-item-card] .auction-item-copy {
  position: absolute; inset: auto 0 0; z-index: 1; width: 100%; max-width: none; pointer-events: none;
  padding: var(--lot-caption-padding, 32px 12px 10px); background: linear-gradient(transparent, #fffaf2ed 45%); border-radius: 0 0 12px 12px;
}
.auction-page-host .auction-item[data-auction-item-card] .auction-item-copy > :is(span, small) { display: none; }
.auction-page-host .auction-item[data-auction-item-card] .auction-item-copy h3 {
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
  margin: 0; color: #3e2f31; font-size: 16px; line-height: 1.35;
}
.auction-page-host .auction-item[data-auction-item-card] .auction-item-copy > p { margin: 3px 0 0; color: #675149; font-size: 12px; line-height: 1.4; }
.auction-page-host .auction-item-details-button {
  position: absolute; top: 50%; left: 50%; z-index: 2; translate: -50% -50%; transform: none;
  display: inline-flex; justify-content: center; align-items: center; width: max-content; max-width: calc(100% - 24px); min-height: 44px;
  margin: 0; padding: 10px 20px; border: 1px solid #d3b997; border-radius: 9px;
  background: #fffefb; color: #543d34; box-shadow: 0 4px 16px #3e2f3126;
  font: inherit; font-size: 14px; font-weight: 700; cursor: pointer;
}
.auction-page-host .auction-item-details-button:disabled { cursor: wait; }
/* Centering must survive the shared auction button press/reduced-motion rules. */
.auction-page-host .auction-item-details-button:active:not(:disabled) { transform: none; }
.auction-page-host .auction-item-details-button:focus-visible { outline: 2px solid #9b4b3a; outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) {
  .auction-page-host .auction-item-details-button { opacity: 0; pointer-events: none; transition: opacity 160ms ease-out; }
  .auction-item-media:hover .auction-item-details-button,
  .auction-item-media:focus-within .auction-item-details-button { opacity: 1; pointer-events: auto; }
}
@media (hover: none), (pointer: coarse) {
  .auction-page-host .auction-item-details-button { top: 10px; right: 10px; left: auto; translate: none; padding-inline: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .auction-page-host .auction-item-details-button { transition: none; }
}
@media (min-width:1100px) and (min-height:601px) {
  .auction-page-route .auction-page-host .auction-stage .auction-content > .auction-showcase[data-auction-showcase] {
    flex: 1 1 0; min-height: 112px; overflow: visible;
  }
  .auction-page-route .auction-page-host .auction-stage .auction-content .auction-item[data-auction-item-card] { height: 100%; }
  .auction-item-media { flex: 1 1 0; height: 100%; aspect-ratio: auto; }
}
@media (min-width:1100px) and (min-height:601px) and (max-height:899px) {
  .auction-item-media { --lot-caption-padding: 18px 10px 6px; }
  .auction-page-host .auction-item[data-auction-item-card] .auction-item-copy h3 { -webkit-line-clamp: 1; }
}

/* The shared native dialog supplies Escape, focus handling and backdrop dismissal. */
.detail-dialog:has(.auction-item-detail) { width: min(1040px, calc(100vw - 28px)); max-height: calc(100dvh - 28px); }
.auction-item-detail { padding: clamp(18px, 3vw, 32px); color: #3e2f31; }
.auction-detail-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: 28px; padding-bottom: 28px; }
.auction-detail-image { overflow: hidden; border: 1px solid #e7dacb; border-radius: 14px; }
.auction-detail-image svg { display: block; width: 100%; height: auto; }
.auction-detail-kicker { color: #986044; font-size: 12px; font-weight: 650; }
.auction-item-detail h2 { margin: 10px 0; font-size: clamp(24px, 2.2vw, 30px); line-height: 1.4; letter-spacing: -.8px; word-break: keep-all; }
.auction-item-detail p { margin: 10px 0 0; font-size: 15px; line-height: 1.85; color: #675149; word-break: keep-all; overflow-wrap: anywhere; }
.auction-item-detail .auction-detail-creator { font-size: 14px; font-weight: 700; color: #8a513b; }
.auction-detail-hero small { display: block; margin-top: 16px; color: #887267; font-size: 12px; line-height: 1.7; }
.auction-detail-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 20px 0 0; padding: 14px 0; border-block: 1px solid #eadfd2; }
.auction-detail-facts dt { color: #947b6a; font-size: 11px; }
.auction-detail-facts dd { margin: 6px 0 0; font-size: 13px; font-weight: 650; line-height: 1.6; }
.auction-item-detail section { padding: 22px 0; border-top: 1px solid #eadfd2; }
.auction-item-detail h3 { font-size: 18px; font-weight: 750; }
.auction-detail-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.auction-detail-bid-note p { font-size: 13px; }
.auction-detail-return { display: flex; width: 100%; min-height: 48px; justify-content: center; align-items: center; margin-top: 14px; }
@media (max-width:600px) {
  .auction-detail-hero { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .auction-detail-columns { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .auction-item-detail p { font-size: 14px; }
}
