.market-page { min-height: 100vh; padding-top: 67px; overflow: hidden; background: radial-gradient(circle at 83% 6%, rgba(90, 205, 215, .12), transparent 28%), radial-gradient(circle at 17% 70%, rgba(139, 91, 215, .15), transparent 35%), #090713; }
.market-hero { position: relative; overflow: hidden; min-height: 330px; display: grid; align-items: end; border-bottom: 1px solid rgba(104, 171, 204, .38); background-color: #080714; background-image: linear-gradient(90deg, rgba(6, 7, 17, .92) 0%, rgba(8, 9, 24, .73) 39%, rgba(10, 8, 27, .35) 78%, rgba(8, 6, 18, .68) 100%), url('../images/Market.webp'); background-position: center 49%; background-size: cover; }
.market-hero::before { content: ''; position: absolute; inset: -45% -10%; opacity: .31; background: repeating-radial-gradient(ellipse at 78% 55%, transparent 0 27px, rgba(105, 222, 230, .12) 28px 29px, transparent 30px 58px); transform: rotate(-10deg); animation: market-orbit 24s linear infinite; }
.market-hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(6, 5, 16, .16), rgba(6, 5, 16, .62)); pointer-events: none; }
.market-hero-grid { position: absolute; inset: 0; opacity: .11; background-image: linear-gradient(rgba(101, 219, 230, .18) 1px, transparent 1px), linear-gradient(90deg, rgba(101, 219, 230, .18) 1px, transparent 1px); background-size: 38px 38px; mask-image: linear-gradient(90deg, transparent, black 38%, black 82%, transparent); }
.market-hero-content { position: relative; z-index: 1; padding-top: 112px; padding-bottom: 54px; text-shadow: 0 2px 18px rgba(0, 0, 0, .7); }
.market-hero .eyebrow, .market-section-head .eyebrow { display: block; margin-bottom: 8px; color: #77dbe2; font-size: .62rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.market-hero h1 { margin: 0; font-size: clamp(2rem, 4vw, 3.2rem); }
.market-hero p { max-width: 615px; margin: 10px 0 0; color: #b8cbd8; font-size: .95rem; line-height: 1.6; }
.market-main { padding: 34px 0 76px; }
.market-layout { display: grid; grid-template-columns: minmax(208px, 254px) minmax(0, 1fr); gap: 28px; align-items: start; }.market-sidebar { position: sticky; top: 88px; display: grid; gap: 14px; }.market-content-main { min-width: 0; }
.market-missions-link, .market-active-card { position: relative; display: block; overflow: hidden; border: 1px solid rgba(104, 191, 208, .34); background: linear-gradient(145deg, rgba(13, 33, 52, .94), rgba(25, 14, 53, .92)); box-shadow: inset 0 1px rgba(187, 238, 241, .06), 0 14px 28px rgba(0, 0, 0, .13); }.market-missions-link { padding: 18px 17px 16px; color: inherit; text-decoration: none; transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease; }.market-missions-link::before { content: ''; position: absolute; inset: 0 auto 0 0; width: 3px; background: #70dce3; box-shadow: 0 0 14px rgba(112, 220, 227, .7); }.market-missions-link:hover, .market-missions-link:focus-visible { border-color: rgba(128, 228, 235, .74); outline: none; transform: translateY(-2px); box-shadow: inset 0 1px rgba(187, 238, 241, .1), 0 18px 32px rgba(0, 0, 0, .23); }.market-missions-link .eyebrow, .market-active-card .eyebrow { display: block; margin-bottom: 8px; color: #7bdde4; font-size: .57rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }.market-missions-link strong { display: block; color: #edf7f8; font: 600 1rem/1.25 'Cinzel', serif; }.market-missions-link strong span { color: #d0a4ec; margin-right: 5px; }.market-missions-link p { margin: 8px 0 13px; color: #9bb6c7; font-size: .7rem; line-height: 1.5; }.market-link-action { display: flex; justify-content: space-between; color: #8fe2e6; font-size: .59rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }.market-link-action b { color: #d6adf0; font-size: .8rem; transition: transform .2s ease; }.market-missions-link:hover .market-link-action b, .market-missions-link:focus-visible .market-link-action b { transform: translate(2px, -2px); }
.market-active-card { padding: 16px 14px 14px; }.market-active-card-head { padding: 0 3px 11px; border-bottom: 1px solid rgba(104, 174, 197, .2); }.market-active-card h2 { margin: 0; color: #e8eef4; font: 600 .88rem/1.25 'Cinzel', serif; }.market-active-list ul { display: grid; gap: 1px; margin: 9px 0 0; padding: 0; list-style: none; }.market-active-list li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 8px; align-items: center; padding: 9px 3px; border-bottom: 1px solid rgba(103, 157, 182, .14); }.market-active-list li:last-child { border-bottom: 0; }.market-active-mission-mark { width: 15px; height: 15px; display: grid; place-items: center; border: 1px solid rgba(115, 223, 227, .45); border-radius: 50%; color: #80e0e4; font-size: .66rem; line-height: 1; box-shadow: 0 0 8px rgba(115, 223, 227, .15); }.market-active-list li.is-ready .market-active-mission-mark { border-color: rgba(229, 195, 114, .55); color: #f2d57e; }.market-active-list strong { display: block; overflow: hidden; color: #dce8ef; font-size: .72rem; text-overflow: ellipsis; white-space: nowrap; }.market-active-list small { display: block; margin-top: 2px; overflow: hidden; color: #7894a8; font-size: .57rem; letter-spacing: .04em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }.market-active-list em { color: #9de0e3; font-size: .6rem; font-style: normal; white-space: nowrap; }.market-active-list em.is-ready, .market-active-list .is-ready em { color: #efce78; }.market-active-more { display: block; margin: 11px 3px 1px; color: #9edfe4; font-size: .59rem; font-weight: 700; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }.market-no-missions { padding: 21px 5px 8px; text-align: center; }.market-no-missions > span { display: grid; width: 30px; height: 30px; place-items: center; margin: 0 auto 8px; border: 1px solid rgba(154, 176, 196, .28); border-radius: 50%; color: #9db6c8; font-size: 1rem; }.market-no-missions strong { display: block; color: #dce8ef; font-size: .76rem; }.market-no-missions p, .market-active-loading { margin: 6px 0 0; color: #829dad; font-size: .65rem; line-height: 1.45; text-align: center; }.market-active-loading { padding: 17px 3px 8px; }
.market-gate { max-width: 580px; margin: 30px auto; padding: 34px; border: 1px solid rgba(103, 194, 211, .38); background: linear-gradient(145deg, rgba(17, 43, 59, .78), rgba(23, 13, 48, .87)); text-align: center; }
.market-gate .eyebrow { color: #79d9df; font-size: .64rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }.market-gate h2 { margin: 8px 0; }.market-gate p { margin: 0 0 18px; color: #aec3cf; }
.market-command { display: flex; align-items: stretch; justify-content: space-between; gap: 24px; padding: 21px 24px; border: 1px solid rgba(91, 159, 189, .4); background: linear-gradient(120deg, rgba(19, 47, 63, .78), rgba(23, 14, 48, .85)); box-shadow: inset 0 1px rgba(145, 232, 238, .07); }
.market-command .eyebrow { color: #7bdde4; font-size: .62rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }.market-command h2 { margin: 5px 0 4px; font-size: 1.55rem; }.market-command p { margin: 0; color: #9eb6c7; font-size: .82rem; }
.market-wallet { min-width: 180px; padding-left: 24px; border-left: 1px solid rgba(110, 192, 205, .28); text-align: right; }.market-wallet span, .market-wallet small { display: block; color: #829cad; font-size: .6rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }.market-wallet strong { display: block; margin: 5px 0; color: #ecd58d; font: 700 1.55rem/1 'Cinzel', serif; text-shadow: 0 0 20px rgba(235, 208, 128, .18); }.market-wallet small { color: #668196; font-size: .55rem; font-weight: 500; letter-spacing: .06em; }
.market-status { min-height: 20px; margin: 11px 2px 0; color: #9edba8; font-size: .75rem; }.market-status.is-error { color: #e5a18e; }
.market-section { margin-top: 42px; }.market-section-head { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 17px; }.market-section-head h2 { margin: 0; font-size: 1.55rem; }.market-section-head p { max-width: 650px; margin: 8px 0 0; color: #99afbe; font-size: .82rem; line-height: 1.5; }
.market-rotation-clock { position: relative; min-width: 176px; padding: 11px 14px; border: 1px solid rgba(101, 212, 223, .4); background: rgba(10, 25, 41, .6); overflow: hidden; text-align: right; }.market-rotation-clock::before { content: ''; position: absolute; top: 0; left: -50%; width: 45%; height: 1px; background: #79e3e8; box-shadow: 0 0 10px #79e3e8; animation: market-scan 4s linear infinite; }.market-rotation-clock.is-character { border-color: rgba(180, 141, 231, .44); }.market-rotation-clock.is-character::before { background: #c99fee; box-shadow: 0 0 10px #c99fee; animation-delay: -1.5s; }.market-rotation-clock span, .market-rotation-clock small { display: block; color: #8ca8b9; font-size: .56rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }.market-rotation-clock strong { display: block; margin: 3px 0; color: #d8f4f4; font: 600 1.03rem/1.1 'Cinzel', serif; }.market-rotation-clock.is-character strong { color: #e0c8f3; }.market-rotation-clock small { color: #668196; font-weight: 500; letter-spacing: .04em; text-transform: none; }
.market-offer-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(225px, 1fr)); gap: 14px; }.market-character-grid { grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)); }
.market-offer { --market-accent: 117, 210, 221; position: relative; min-width: 0; min-height: 284px; display: flex; flex-direction: column; padding: 18px; overflow: hidden; border: 1px solid rgba(var(--market-accent), .37); background: linear-gradient(145deg, rgba(16, 42, 60, .8), rgba(21, 13, 45, .94)); box-shadow: inset 0 1px rgba(171, 241, 244, .06), 0 14px 30px rgba(0, 0, 0, .1); }.market-offer::before { content: ''; position: absolute; top: 0; left: 0; width: 3px; height: 100%; background: rgb(var(--market-accent)); box-shadow: 0 0 17px rgba(var(--market-accent), .65); }.market-offer::after { content: ''; position: absolute; inset: 0; opacity: 0; pointer-events: none; background: linear-gradient(112deg, transparent 28%, rgba(var(--market-accent), .12) 45%, transparent 60%); transform: translateX(-80%); transition: opacity .25s ease, transform .6s ease; }.market-offer:hover::after { opacity: 1; transform: translateX(80%); }
.market-offer.is-common { --market-accent: 156, 180, 197; }.market-offer.is-uncommon { --market-accent: 134, 220, 171; }.market-offer.is-rare { --market-accent: 130, 201, 237; }.market-offer.is-legendary { --market-accent: 235, 207, 128; }.market-offer.is-character { --market-accent: 190, 149, 235; min-height: 258px; }
.market-offer-top { position: relative; z-index: 1; display: flex; gap: 12px; align-items: flex-start; }.market-offer-art { width: 48px; height: 48px; flex: 0 0 48px; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(var(--market-accent), .52); background: rgba(var(--market-accent), .1); color: rgb(var(--market-accent)); }.market-offer-art img { width: 100%; height: 100%; object-fit: cover; }.market-offer-art svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.7; }.market-offer-kicker { display: block; margin-bottom: 4px; color: rgb(var(--market-accent)); font-size: .56rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }.market-offer h3 { margin: 0; color: #e8eef2; font: 600 1rem/1.25 'Cinzel', serif; }.market-offer-sub { margin: 4px 0 0; color: #8fa8b8; font-size: .68rem; }
.market-offer-desc { position: relative; z-index: 1; margin: 15px 0; color: #aabfcd; font-size: .77rem; line-height: 1.55; }.market-offer-stats { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 5px; margin-top: auto; }.market-offer-stats span { padding: 4px 6px; border: 1px solid rgba(var(--market-accent), .23); background: rgba(5, 14, 28, .38); color: #a8c4cf; font-size: .57rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }.market-offer-stats b { color: rgb(var(--market-accent)); }
.market-offer-buy { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 14px; padding-top: 11px; border-top: 1px solid rgba(105, 164, 188, .2); }.market-offer-price { color: #efd98f; font: 600 .88rem/1 'Cinzel', serif; white-space: nowrap; }.market-offer-price small { display: block; margin-top: 3px; color: #7894a8; font: 500 .55rem/1.2 'Jost', sans-serif; letter-spacing: .07em; text-transform: uppercase; }.market-offer-buy .btn { min-width: 79px; padding: 7px 10px; font-size: .66rem; }.market-offer-buy .btn:disabled { cursor: not-allowed; opacity: .55; }.market-offer.is-sold-out { opacity: .72; filter: saturate(.7); }.market-offer.is-sold-out .market-offer-price { color: #d29988; }
.market-empty { grid-column: 1 / -1; margin: 0; padding: 21px; border: 1px dashed rgba(116, 164, 192, .38); color: #8da8b9; font-size: .82rem; text-align: center; }.market-reputation-note { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px; align-items: center; margin-top: 38px; padding: 16px 18px; border: 1px solid rgba(155, 125, 218, .38); background: linear-gradient(100deg, rgba(50, 28, 84, .56), rgba(13, 34, 50, .56)); }.market-reputation-glyph { color: #d0a7f1; font-size: 1.45rem; filter: drop-shadow(0 0 8px rgba(203, 148, 239, .55)); }.market-reputation-note strong { color: #eadff4; font-size: .82rem; }.market-reputation-note p { margin: 3px 0 0; color: #a89ebb; font-size: .72rem; }.market-reputation-note a { color: #9ce2e6; font-size: .69rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
@keyframes market-orbit { to { transform: rotate(-10deg) translateX(70px); } } @keyframes market-scan { to { left: 115%; } }
@media (prefers-reduced-motion: reduce) { .market-hero::before, .market-rotation-clock::before { animation: none; }.market-offer::after { transition: none; } }
@media (max-width: 960px) { .market-layout { grid-template-columns: 1fr; }.market-sidebar { position: static; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); align-items: stretch; }.market-missions-link, .market-active-card { height: 100%; }.market-active-list ul { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 14px; }.market-active-list li:nth-last-child(2) { border-bottom: 0; } }
@media (max-width: 720px) { .market-hero { min-height: 250px; background-position: 56% center; }.market-hero-content { padding-top: 78px; padding-bottom: 38px; }.market-main { padding-top: 24px; }.market-sidebar { grid-template-columns: 1fr; }.market-active-list ul { grid-template-columns: 1fr; }.market-active-list li:nth-last-child(2) { border-bottom: 1px solid rgba(103, 157, 182, .14); }.market-command, .market-section-head { align-items: stretch; flex-direction: column; }.market-wallet { min-width: 0; padding: 13px 0 0; border-top: 1px solid rgba(110, 192, 205, .28); border-left: 0; text-align: left; }.market-rotation-clock { text-align: left; }.market-reputation-note { grid-template-columns: auto minmax(0, 1fr); }.market-reputation-note a { grid-column: 2; } }

/* Market intelligence ---------------------------------------------------- */
.market-activity-card { position: relative; overflow: hidden; border: 1px solid rgba(188, 143, 231, .36); background: linear-gradient(145deg, rgba(32, 16, 57, .94), rgba(13, 33, 52, .92)); box-shadow: inset 0 1px rgba(239, 216, 255, .06), 0 14px 28px rgba(0, 0, 0, .13); padding: 16px 14px 14px; }
.market-activity-card::after { content: ''; position: absolute; right: -22px; top: -26px; width: 80px; height: 80px; border: 1px solid rgba(208, 171, 240, .18); border-radius: 50%; box-shadow: 0 0 22px rgba(181, 122, 239, .08); pointer-events: none; }.market-activity-card-head { position: relative; z-index: 1; padding: 0 3px 11px; border-bottom: 1px solid rgba(173, 139, 212, .2); }.market-activity-card .eyebrow { display: block; margin-bottom: 8px; color: #d2a8ef; font-size: .57rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }.market-activity-card h2 { margin: 0; color: #eee6f5; font: 600 .88rem/1.25 'Cinzel', serif; }.market-activity-list ul { display: grid; gap: 1px; margin: 9px 0 0; padding: 0; list-style: none; }.market-activity-list li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 8px; align-items: center; padding: 9px 3px; border-bottom: 1px solid rgba(154, 115, 188, .16); }.market-activity-list li:last-child { border-bottom: 0; }.market-activity-mark { width: 15px; height: 15px; display: grid; place-items: center; border: 1px solid rgba(205, 161, 239, .46); color: #d7aeef; font-size: .6rem; }.market-activity-list strong { display: block; overflow: hidden; color: #e3d9ea; font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }.market-activity-list small { display: block; overflow: hidden; margin-top: 2px; color: #9d8fac; font-size: .55rem; letter-spacing: .025em; text-overflow: ellipsis; white-space: nowrap; }.market-activity-list time { color: #c59ae2; font-size: .56rem; white-space: nowrap; }.market-activity-empty, .market-activity-loading { margin: 0; padding: 18px 4px 8px; color: #9f91ad; font-size: .65rem; line-height: 1.45; text-align: center; }

.market-featured { --market-featured: 130, 201, 237; position: relative; margin-top: 19px; overflow: hidden; border: 1px solid rgba(var(--market-featured), .52); background: linear-gradient(108deg, rgba(15, 48, 72, .94), rgba(31, 18, 66, .96)); box-shadow: inset 0 1px rgba(196, 246, 255, .1), 0 18px 36px rgba(0, 0, 0, .17); }.market-featured:has(.is-legendary) { --market-featured: 235, 207, 128; }.market-featured:has(.is-uncommon) { --market-featured: 134, 220, 171; }.market-featured:has(.is-common) { --market-featured: 156, 180, 197; }.market-featured-card { position: relative; min-height: 184px; display: grid; grid-template-columns: 120px minmax(0, 1fr) 156px; gap: 20px; align-items: center; padding: 22px 25px; overflow: hidden; }.market-featured-card::before { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(110deg, rgba(var(--market-featured), .11), transparent 37%, rgba(var(--market-featured), .08)); }.market-featured-iris { position: absolute; top: 50%; right: -42px; width: 204px; height: 204px; transform: translateY(-50%); border: 1px solid rgba(var(--market-featured), .25); border-radius: 50%; animation: market-feature-orbit 12s linear infinite; pointer-events: none; }.market-featured-iris::before, .market-featured-iris::after { content: ''; position: absolute; inset: 19px; border: 1px dashed rgba(var(--market-featured), .25); border-radius: inherit; }.market-featured-iris::after { inset: 48px; border-style: solid; box-shadow: 0 0 30px rgba(var(--market-featured), .15); }.market-featured-iris i { position: absolute; top: 50%; left: -11px; width: 22px; height: 2px; background: rgb(var(--market-featured)); box-shadow: 0 0 16px rgb(var(--market-featured)); transform-origin: 113px 0; }.market-featured-iris i:nth-child(2) { transform: rotate(120deg); }.market-featured-iris i:nth-child(3) { transform: rotate(240deg); }.market-featured-art, .market-featured-copy, .market-featured-action { position: relative; z-index: 1; }.market-featured-art { width: 105px; height: 105px; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(var(--market-featured), .65); background: rgba(var(--market-featured), .11); color: rgb(var(--market-featured)); box-shadow: inset 0 0 27px rgba(var(--market-featured), .12), 0 0 25px rgba(var(--market-featured), .13); }.market-featured-art img { width: 100%; height: 100%; object-fit: cover; }.market-featured-art svg { width: 47px; height: 47px; fill: none; stroke: currentColor; stroke-width: 1.45; }.market-featured-copy .eyebrow { display: block; margin-bottom: 5px; color: rgb(var(--market-featured)); font-size: .58rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }.market-featured-rarity { display: inline-block; padding: 3px 6px; border: 1px solid rgba(var(--market-featured), .33); color: rgb(var(--market-featured)); font-size: .53rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; animation: market-rarity-pulse 2.8s ease-in-out infinite; }.market-featured-copy h2 { margin: 7px 0 5px; color: #edf5f5; font-size: clamp(1.35rem, 2.4vw, 2rem); }.market-featured-copy p { max-width: 650px; margin: 0; color: #b4c8d1; font-size: .76rem; line-height: 1.5; }.market-featured-stats { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 12px; }.market-featured-stats span { padding: 4px 6px; border: 1px solid rgba(var(--market-featured), .24); background: rgba(4, 12, 27, .33); color: #b4c8d1; font-size: .55rem; font-weight: 700; letter-spacing: .04em; }.market-featured-stats b { color: rgb(var(--market-featured)); }.market-featured-action { display: grid; justify-items: end; gap: 7px; text-align: right; }.market-featured-action > strong { color: #f1dd95; font: 600 1.25rem/1 'Cinzel', serif; }.market-featured-action > strong small { color: #a8bac4; font: 500 .55rem/1 'Jost', sans-serif; letter-spacing: .1em; text-transform: uppercase; }.market-featured-action > span:not(.market-scarcity) { color: #8fa9b8; font-size: .59rem; letter-spacing: .06em; text-transform: uppercase; }.market-featured-action .btn { min-width: 110px; padding: 8px 11px; font-size: .67rem; }

.market-opportunity-strip { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 14px; margin-top: 15px; }.market-loadout-advice, .market-unlock-radar { position: relative; min-width: 0; overflow: hidden; padding: 16px 18px; border: 1px solid rgba(111, 198, 209, .3); background: linear-gradient(115deg, rgba(11, 35, 53, .8), rgba(21, 13, 49, .78)); }.market-loadout-advice::after, .market-unlock-radar::after { content: ''; position: absolute; inset: auto -16px -42px auto; width: 104px; height: 104px; border: 1px solid rgba(115, 220, 228, .16); border-radius: 50%; box-shadow: 0 0 32px rgba(115, 220, 228, .08); pointer-events: none; }.market-unlock-radar { border-color: rgba(191, 152, 235, .34); background: linear-gradient(115deg, rgba(43, 22, 75, .72), rgba(14, 35, 54, .78)); }.market-unlock-radar::after { border-color: rgba(203, 159, 239, .18); box-shadow: 0 0 32px rgba(203, 159, 239, .1); }.market-opportunity-strip .eyebrow { position: relative; z-index: 1; display: block; margin-bottom: 6px; color: #83dee4; font-size: .56rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }.market-unlock-radar .eyebrow { color: #d2a8ef; }.market-opportunity-strip h2 { position: relative; z-index: 1; margin: 0; color: #e7f0f2; font: 600 .93rem/1.2 'Cinzel', serif; }.market-opportunity-strip p { position: relative; z-index: 1; margin: 7px 0 10px; color: #9eb8c7; font-size: .68rem; line-height: 1.45; }.market-opportunity-strip a { position: relative; z-index: 1; color: #9de2e7; font-size: .58rem; font-weight: 700; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }.market-unlock-radar a { color: #d5afef; }.market-opportunity-strip a b { margin-left: 4px; font-size: .74rem; }.market-unlock-categories { position: relative; z-index: 1; display: grid; gap: 5px; margin: 9px 0 11px; }.market-unlock-categories span { display: grid; gap: 2px; padding: 6px 8px; border-left: 2px solid #86dfe5; background: rgba(6, 13, 30, .28); }.market-unlock-categories span.is-character { border-left-color: #d4a6ee; }.market-unlock-categories b { color: #dcebf0; font-size: .62rem; }.market-unlock-categories small, .market-unlock-quiet { color: #9a8aad; font-size: .58rem; line-height: 1.35; }

.market-rotation-clock { --market-progress: 0; min-width: 190px; display: grid; grid-template-columns: 50px minmax(0, 1fr); gap: 0 10px; align-items: center; padding: 10px 12px; text-align: left; }.market-rotation-clock > span { grid-column: 2; align-self: end; }.market-rotation-clock > small { grid-column: 2; align-self: start; }.market-rotation-progress { grid-column: 1; grid-row: 1 / 3; width: 47px; height: 47px; display: grid; place-items: center; border-radius: 50%; background: conic-gradient(#7be3e8 calc(var(--market-progress) * 1turn), rgba(101, 212, 223, .16) 0); box-shadow: 0 0 16px rgba(109, 225, 231, .18); }.market-rotation-progress::before { content: ''; width: 39px; height: 39px; border-radius: inherit; background: #0d1c2b; box-shadow: inset 0 0 12px rgba(0, 0, 0, .45); }.market-rotation-progress strong { position: absolute; color: #d8f4f4; font: 600 .56rem/1 'Jost', sans-serif; letter-spacing: -.02em; }.market-rotation-clock.is-character .market-rotation-progress { background: conic-gradient(#cea1ee calc(var(--market-progress) * 1turn), rgba(180, 141, 231, .16) 0); box-shadow: 0 0 16px rgba(202, 150, 238, .17); }.market-rotation-clock.is-character .market-rotation-progress::before { background: #171126; }.market-rotation-clock.is-character .market-rotation-progress strong { color: #e4cff3; }

.market-scarcity { display: inline-flex; width: fit-content; align-items: center; gap: 5px; padding: 4px 6px; border: 1px solid rgba(238, 202, 114, .46); background: rgba(117, 77, 20, .16); color: #f0d47c; font-size: .53rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }.market-scarcity::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: currentColor; box-shadow: 0 0 8px currentColor; }.market-scarcity.is-demand { border-color: rgba(135, 215, 224, .43); background: rgba(31, 101, 116, .16); color: #90e1e5; }.market-scarcity.is-sold-out { border-color: rgba(217, 139, 118, .45); background: rgba(108, 38, 31, .18); color: #e6a191; }.market-offer > .market-scarcity { position: relative; z-index: 2; margin-top: -3px; }.market-featured-action .market-scarcity { justify-self: end; }

.market-offer { transform-style: preserve-3d; transition: border-color .25s ease, box-shadow .25s ease, transform .32s cubic-bezier(.2, .65, .3, 1); }.market-offer:hover, .market-offer:focus-within, .market-offer.is-comparing { border-color: rgba(var(--market-accent), .76); box-shadow: inset 0 1px rgba(171, 241, 244, .11), 0 20px 36px rgba(0, 0, 0, .22), 0 0 18px rgba(var(--market-accent), .09); transform: perspective(900px) rotateX(1.8deg) rotateY(-1.2deg) translateY(-3px); }.market-offer-hologram { position: absolute; z-index: 0; top: 54px; right: -8px; width: 162px; min-height: 114px; padding: 13px 12px; overflow: hidden; opacity: 0; border: 1px solid rgba(var(--market-accent), .31); background: linear-gradient(135deg, rgba(var(--market-accent), .1), rgba(8, 19, 36, .52)); color: rgb(var(--market-accent)); transform: perspective(600px) rotateY(-48deg) translateX(42px); transform-origin: right center; transition: opacity .26s ease, transform .36s ease; pointer-events: none; }.market-offer:hover .market-offer-hologram, .market-offer:focus-within .market-offer-hologram, .market-offer.is-comparing .market-offer-hologram { opacity: 1; transform: perspective(600px) rotateY(-12deg) translateX(0); }.market-offer-hologram small { display: block; margin-bottom: 7px; color: rgba(var(--market-accent), .76); font-size: .48rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }.market-offer-hologram strong { display: block; overflow: hidden; margin-bottom: 10px; color: #dcecf0; font-size: .68rem; text-overflow: ellipsis; white-space: nowrap; }.market-offer-hologram > div { display: flex; flex-wrap: wrap; gap: 4px; }.market-offer-hologram > div span { padding: 3px 4px; border: 1px solid rgba(var(--market-accent), .2); color: #a8cbd3; font-size: .49rem; }.market-hologram-scan { position: absolute; left: 0; right: 0; top: -20%; height: 28%; background: linear-gradient(180deg, transparent, rgba(var(--market-accent), .16), transparent); animation: market-holo-scan 3.4s linear infinite; }.market-offer-top, .market-offer-desc, .market-offer-stats, .market-offer-buy, .market-offer > .market-scarcity, .market-compare { transform: translateZ(16px); }.market-compare { position: relative; z-index: 2; margin-top: 10px; }.market-compare-toggle { padding: 0; border: 0; background: transparent; color: rgb(var(--market-accent)); font: 700 .55rem/1 'Jost', sans-serif; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }.market-compare-toggle::after { content: ' +'; margin-left: 3px; }.market-offer.is-comparing .market-compare-toggle::after { content: ' -'; }.market-compare-panel { display: grid; gap: 4px; max-height: 0; overflow: hidden; opacity: 0; margin-top: 0; padding: 0 8px; border-left: 2px solid rgba(var(--market-accent), .56); background: rgba(5, 15, 30, .34); transition: max-height .28s ease, opacity .2s ease, margin .28s ease, padding .28s ease; }.market-offer.is-comparing .market-compare-panel { max-height: 130px; opacity: 1; margin-top: 7px; padding: 8px; }.market-compare-kicker { color: rgb(var(--market-accent)); font-size: .49rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }.market-compare-panel strong { color: #dcebf0; font-size: .66rem; }.market-compare-panel p { margin: 0; color: #91adbd; font-size: .58rem; line-height: 1.35; }.market-compare-deltas { display: flex; flex-wrap: wrap; gap: 4px; }.market-compare-deltas span { padding: 3px 4px; border: 1px solid rgba(117, 183, 197, .19); color: #a1b7c2; font-size: .49rem; }.market-compare-deltas .is-better { color: #91e0af; }.market-compare-deltas .is-worse { color: #e9a198; }

@keyframes market-feature-orbit { to { transform: translateY(-50%) rotate(360deg); } } @keyframes market-rarity-pulse { 50% { border-color: rgba(var(--market-featured), .82); box-shadow: 0 0 16px rgba(var(--market-featured), .2); } } @keyframes market-holo-scan { to { top: 120%; } }
@media (prefers-reduced-motion: reduce) { .market-featured-iris, .market-featured-rarity, .market-hologram-scan { animation: none; }.market-offer, .market-offer-hologram, .market-compare-panel { transition: none; }.market-offer:hover, .market-offer:focus-within, .market-offer.is-comparing { transform: none; } }
@media (max-width: 960px) { .market-sidebar { grid-template-columns: repeat(3, minmax(0, 1fr)); }.market-activity-list li { grid-template-columns: auto minmax(0, 1fr); }.market-activity-list time { grid-column: 2; }.market-featured-card { grid-template-columns: 98px minmax(0, 1fr) 132px; gap: 16px; padding: 19px; }.market-featured-art { width: 88px; height: 88px; }.market-featured-iris { right: -65px; }.market-offer-hologram { display: none; } }
@media (max-width: 720px) { .market-sidebar { grid-template-columns: 1fr; }.market-featured-card { grid-template-columns: 72px minmax(0, 1fr); gap: 13px; padding: 17px; }.market-featured-art { width: 68px; height: 68px; }.market-featured-art svg { width: 31px; height: 31px; }.market-featured-action { grid-column: 1 / -1; grid-template-columns: auto auto 1fr; justify-items: start; align-items: center; text-align: left; }.market-featured-action .market-scarcity { justify-self: start; }.market-featured-action .btn { justify-self: end; }.market-opportunity-strip { grid-template-columns: 1fr; }.market-rotation-clock { min-width: 0; }.market-offer:hover, .market-offer:focus-within, .market-offer.is-comparing { transform: none; }.market-offer-hologram { display: none; } }

/* The old appraisal was an absolute 3D layer, which let its text and border
   cross the offer title on compact cards. Keep the signal effect, but reveal
   it as a real final row in the card instead of floating it over the copy. */
.market-offer-hologram { position: relative; z-index: 1; order: 10; top: auto; right: auto; width: 100%; min-height: 0; max-height: 0; margin: 0; padding: 0; overflow: hidden; opacity: 0; border-color: transparent; transform: translateY(-6px); transform-origin: center; transition: max-height .28s ease, margin .28s ease, padding .28s ease, opacity .2s ease, transform .28s ease, border-color .2s ease; }
.market-offer:hover .market-offer-hologram, .market-offer:focus-within .market-offer-hologram, .market-offer.is-comparing .market-offer-hologram { max-height: 92px; margin-top: 10px; padding: 10px 11px; opacity: 1; border-color: rgba(var(--market-accent), .31); transform: translateY(0); }
