.hero-exchange { min-height: 260px; }
.hero-exchange .hero-bg { background: linear-gradient(160deg, #0a1509 0%, #0d1e0d 42%, #1a2115 72%, #0d1510 100%); }
.exchange-toolbar { display: flex; gap: .55rem; flex-wrap: wrap; padding: 1.25rem 2rem 0; align-items: center; }
.exchange-search { flex: 1 1 240px; border: 1px solid rgba(181,139,74,.2); background: rgba(255,255,255,.04); padding: .75rem 1rem; font-family: var(--font-display); font-size: .55rem; letter-spacing: .16em; color: var(--ivory-dark); opacity: .65; }
.filter-pill { border: 1px solid rgba(181,139,74,.22); background: transparent; color: var(--ivory-dark); font-family: var(--font-display); font-size: .5rem; letter-spacing: .16em; padding: .75rem .85rem; cursor: pointer; }
.filter-pill.active, .filter-pill:hover { border-color: var(--brass); color: var(--brass-light); }
.link-pill { display: inline-flex; align-items: center; }
.exchange-board { padding: 1.25rem 2rem 0; }
.exchange-section-head { display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin-bottom: 1rem; border-bottom: 1px solid rgba(181,139,74,.12); padding-bottom: .75rem; }
.exchange-kicker { font-family: var(--font-display); font-size: .48rem; letter-spacing: .24em; color: var(--brass-light); margin-bottom: .25rem; }
.exchange-section-head h2 { font-family: var(--font-display); font-size: .95rem; letter-spacing: .18em; color: var(--cream); }
.exchange-section-head > p { font-family: var(--font-ink); font-style: italic; color: var(--ivory-dark); opacity: .6; max-width: 420px; text-align: right; }
.listing-grid { display: flex; flex-direction: column; gap: .75rem; }
.listing-card { display: grid; grid-template-columns: 64px 1fr auto; gap: 1rem; align-items: center; position: relative; background: linear-gradient(148deg, #ede4ce, #ddd0b0); border: 1px solid rgba(181,139,74,.22); padding: 1rem; }
.listing-card.staff-listing { border-left: 4px solid var(--brass); }
.listing-card.player-listing { border-left: 4px solid var(--moss); }
.rare-listing { box-shadow: inset 0 0 0 1px rgba(181,139,74,.25); }
.featured-listing { border-color: rgba(181,139,74,.55); }
.listing-badge { position: absolute; top: .65rem; right: .65rem; font-family: var(--font-display); font-size: .42rem; letter-spacing: .18em; color: var(--brass); }
.listing-icon { width: 56px; height: 56px; background: rgba(61,51,38,.06); border: 1px dashed rgba(61,51,38,.2); display: flex; align-items: center; justify-content: center; font-size: 1.8rem; }
.listing-rarity { font-family: var(--font-display); font-size: .44rem; letter-spacing: .22em; color: var(--ink-light); opacity: .55; }
.listing-info h3 { font-family: var(--font-display); font-size: .8rem; letter-spacing: .1em; color: var(--ink); margin: .15rem 0; }
.listing-latin { font-family: var(--font-ink); font-style: italic; color: var(--ink-light); font-size: .85rem; }
.listing-seller { font-family: var(--font-display); font-size: .5rem; letter-spacing: .1em; color: var(--ink-light); opacity: .72; margin-top: .35rem; }
.listing-buy { min-width: 160px; display: flex; flex-direction: column; align-items: flex-end; gap: .35rem; }
.listing-price { font-family: var(--font-display); font-size: .75rem; font-weight: 700; letter-spacing: .08em; color: var(--ink); }
.listing-stock { font-family: var(--font-display); font-size: .46rem; letter-spacing: .14em; color: var(--ink-light); opacity: .6; }
.requests-board { padding-bottom: 2rem; }
.request-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .85rem; }
.request-card { background: linear-gradient(148deg, var(--greenhouse-2), var(--greenhouse-3)); border: 1px solid rgba(95,118,84,.18); padding: 1rem; }
.request-label { font-family: var(--font-display); font-size: .46rem; letter-spacing: .2em; color: var(--brass-light); margin-bottom: .35rem; }
.request-card h3 { font-family: var(--font-display); font-size: .85rem; letter-spacing: .12em; color: var(--cream); }
.request-price { font-family: var(--font-body); color: var(--ivory-dark); margin: .35rem 0 .75rem; }
.request-progress { height: 8px; background: rgba(255,255,255,.08); overflow: hidden; margin-bottom: .35rem; }
.request-progress span { display: block; height: 100%; background: linear-gradient(90deg, var(--moss), var(--moss-light)); }
.request-count { font-family: var(--font-display); font-size: .5rem; letter-spacing: .16em; color: var(--ivory-dark); opacity: .6; margin-bottom: .75rem; }
@media (max-width: 800px) { .exchange-section-head { display: block; } .exchange-section-head > p { text-align: left; margin-top: .5rem; } .listing-card { grid-template-columns: 52px 1fr; } .listing-buy { grid-column: 1 / -1; align-items: stretch; } .request-grid { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .exchange-toolbar, .exchange-board { padding-left: 1rem; padding-right: 1rem; } }
