html body.market-interface { --ticker-height: 38px; }
html .market-interface .activity-bar { display: flex; height: 38px; overflow: hidden; }
html[data-site="business"] .market-interface .activity-bar { color-scheme: dark; background: #111114; border-bottom: 2px ridge #55555d; }
html[data-site="business"] .challenge-ticker-item b { background-image: linear-gradient(90deg,#ff8f99,#ffc080,#fff09a,#91e9b0,#96c7ff,#d5acff); }
.challenge-ticker-item { position: relative; display: inline-flex; align-items: center; gap: 3px; height: 32px; padding: 0; background: none !important; color: inherit !important; }
.challenge-ticker-item b { font-weight: bold; background: linear-gradient(90deg,#ba1825,#b95c00,#8b7300,#08753c,#065cb0,#7720a2); background-clip: text; -webkit-background-clip: text; color: transparent; }
.ticker-mark { position: relative; display: block; flex: 0 0 24px; width: 24px; height: 24px; top: -1px; }
.ticker-mark svg, .placement-halo svg { display: block; width: 100%; height: 100%; overflow: visible; }
.ticker-mark.defended, .ticker-mark.takeover { position: absolute; left: -22px; top: 3px; transform: rotate(18deg); }
.ticker-mark.defended { left: -14px; top: 1px; width: 24px; height: 12px; transform: rotate(-16deg); }
.ticker-mark.takeover { width: 19px; height: 24px; }
.challenge-notice { overflow: auto; text-align: left; }
html .challenge-notice.challenge-pending > .title-bar,
html .challenge-notice.challenge-lost > .title-bar { background: #9c1825; animation: challenge-alert 1.6s ease-in-out infinite; }
@keyframes challenge-alert { 0%,100% { background-color: #851622; } 50% { background-color: #d92b3e; } }
.challenge-clock { display: flex; gap: 8px; justify-content: flex-start; margin: 18px 0; }
.challenge-clock[hidden], .challenge-pay[hidden], .challenge-prices[hidden] { display: none; }
.challenge-clock strong { min-width: 54px; font-size: 28px; }
.challenge-clock small { font-size: 11px; }
.challenge-prices { margin: 16px 0 0; }
.challenge-prices > div { display: flex; justify-content: space-between; gap: 16px; margin: 9px 0; }
.challenge-prices dd { margin: 0; font-variant-numeric: tabular-nums; }
.challenge-difference { padding-top: 10px; border-top: 1px solid #888; font-weight: bold; }
.challenge-error { color: #8b1320; }
html[data-site="business"] .challenge-error { color: #ffc4b7; }
.challenge-error:empty { display: none; }
.purchase-contact { margin: 14px 0; }
.purchase-contact[hidden] { display: none; }
.purchase-contact label { display: block; margin: 8px 0; }
.purchase-contact input { display: block; width: 100%; box-sizing: border-box; }
.purchase-contact a { font-size: 12px; }
.challenge-reopen { position: fixed; bottom: 8px; right: 8px; z-index: 130; }
.challenge-burst { position: fixed; width: 400px; height: 400px; max-width: none; pointer-events: none; z-index: 10000; image-rendering: pixelated; }
.placement-halo { position: fixed; z-index: 80; width: 72px; height: 36px; transform: rotate(-16deg); filter: drop-shadow(0 1px 1px #69441688); pointer-events: none; }
.market-interface #airspace { z-index: 200; }
.market-interface #sparks { z-index: 210; }
.leader-frame { position: fixed; pointer-events: none; z-index: 70; border: 9px solid; border-color: #ffe28a #a76419 #714014 #d6a43a; box-shadow: 0 0 0 2px #51301b,0 0 0 4px #d49b38,3px 5px 0 4px #25170fc0,inset 0 0 0 2px #663d17,inset 0 0 0 4px #ffe9a2; }
.leader-frame::before { content: ''; position: absolute; inset: -6px; border: 2px solid; border-color: #fff2b3 #b87a22 #905317 #f4cb65; }
.leader-frame i { position: absolute; width: 26px; height: 26px; margin: -13px; background: #fff3a5; filter: drop-shadow(0 0 3px #ffca4b); clip-path: polygon(50% 0,60% 35%,100% 50%,60% 65%,50% 100%,40% 65%,0 50%,40% 35%); animation: frame-sparkle 3.2s ease-in-out infinite; animation-delay: var(--delay); }
@keyframes frame-sparkle { 0%,65%,100% { opacity: 0; transform: scale(.15) rotate(-20deg); } 22% { opacity: 1; transform: scale(1.2); } 42% { opacity: .9; transform: scale(.7) rotate(15deg); } }
@media(prefers-reduced-motion:reduce) { .leader-frame i { animation: none; opacity: .7; transform: scale(.65); } html .challenge-notice.challenge-pending > .title-bar, html .challenge-notice.challenge-lost > .title-bar { animation: none; } }
