:root {
    --bm-bg: #08090b;
    --bm-panel: #111318;
    --bm-panel-2: #171a20;
    --bm-line: rgba(255,255,255,.09);
    --bm-text: #f4f1e9;
    --bm-muted: #9fa4af;
    --bm-red: #d14355;
    --bm-red-bright: #ff596f;
    --bm-gold: #d9b35f;
    --bm-green: #5ecb8b;
    --bm-blue: #6fa8ff;
    --bm-shadow: 0 24px 70px rgba(0,0,0,.42);
}

* { box-sizing: border-box; }

body {
    background:
        radial-gradient(circle at 10% 0%, rgba(209,67,85,.13), transparent 28rem),
        radial-gradient(circle at 90% 15%, rgba(217,179,95,.08), transparent 30rem),
        #090a0d;
}

.bm-page {
    width: min(1500px, calc(100% - 36px));
    margin: 0 auto;
    padding: 14px 0 60px;
    color: var(--bm-text);
}

.bm-eyebrow {
    color: var(--bm-red-bright);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.bm-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
    gap: 16px;
    overflow: hidden;
    padding: 16px 20px;
    border: 1px solid var(--bm-line);
    border-radius: 16px;
    background:
        linear-gradient(120deg, rgba(12,13,17,.96), rgba(22,17,20,.92)),
        repeating-linear-gradient(135deg, transparent 0 18px, rgba(255,255,255,.012) 18px 19px);
    box-shadow: var(--bm-shadow);
}

.bm-hero::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: linear-gradient(var(--bm-red-bright), var(--bm-gold));
    box-shadow: 0 0 14px rgba(209,67,85,.4);
}

.bm-hero::after {
    content: "BLACK MARKET";
    position: absolute;
    right: -14px;
    bottom: -14px;
    color: rgba(255,255,255,.025);
    font-size: clamp(2.6rem, 6vw, 5.5rem);
    font-weight: 900;
    letter-spacing: -.06em;
    pointer-events: none;
}

.bm-hero__copy { position: relative; z-index: 1; }
.bm-hero h1 {
    margin: 5px 0 6px;
    font-size: clamp(1.5rem, 2.8vw, 2.3rem);
    line-height: 1.05;
    letter-spacing: -.02em;
}
.bm-hero__copy > p {
    max-width: 780px;
    margin: 0;
    color: #c8cbd2;
    font-size: .82rem;
    line-height: 1.45;
}
.bm-hero__actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 13px; }

.bm-button {
    min-height: 34px;
    padding: 0 13px;
    border: 1px solid transparent;
    border-radius: 9px;
    font: inherit;
    font-size: .8rem;
    font-weight: 800;
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, background .16s ease, color .16s ease, opacity .16s ease;
}
.bm-button:hover:not(:disabled) { transform: translateY(-1px); }
.bm-button:disabled { cursor: not-allowed; opacity: .45; }
.bm-button--primary { background: linear-gradient(135deg, var(--bm-red-bright), #b82d42); color: white; box-shadow: 0 10px 26px rgba(209,67,85,.22); }
.bm-button--secondary { background: linear-gradient(135deg, #e3c06e, #b78c38); color: #17120a; }
.bm-button--ghost { border-color: var(--bm-line); background: rgba(255,255,255,.035); color: var(--bm-text); }
.bm-button--danger { background: rgba(209,67,85,.14); border-color: rgba(255,89,111,.35); color: #ff8b9a; }
.bm-button--full { width: 100%; min-height: 50px; }

.bm-wallet {
    position: relative;
    z-index: 1;
    align-self: stretch;
    padding: 14px;
    border: 1px solid rgba(217,179,95,.28);
    border-radius: 13px;
    background: radial-gradient(circle at 100% 0%, rgba(217,179,95,.1), transparent 55%), rgba(6,7,9,.68);
    backdrop-filter: blur(12px);
}
.bm-wallet > span { color: var(--bm-muted); font-size: .68rem; text-transform: uppercase; letter-spacing: .1em; }
.bm-wallet > strong { display: block; margin: 4px 0 10px; color: var(--bm-gold); font-size: 1.4rem; text-shadow: 0 0 16px rgba(217,179,95,.3); }
.bm-wallet > div { display: flex; justify-content: space-between; gap: 14px; padding: 7px 0; border-top: 1px solid var(--bm-line); color: var(--bm-muted); font-size: .82rem; }
.bm-wallet b { color: var(--bm-text); }
.bm-wallet small { display: block; margin-top: 10px; color: #777d88; font-size: .74rem; line-height: 1.4; }

.bm-market-pulse {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 8px;
    margin: 10px 0;
}
.bm-market-pulse article {
    padding: 11px 13px;
    border: 1px solid var(--bm-line);
    border-radius: 12px;
    background: linear-gradient(145deg, rgba(19,21,27,.96), rgba(12,13,17,.96));
}
.bm-market-pulse span, .bm-market-pulse small { display: block; color: var(--bm-muted); }
.bm-market-pulse span { font-size: .64rem; text-transform: uppercase; letter-spacing: .08em; }
.bm-market-pulse strong { display: block; margin: 4px 0 1px; font-size: 1.05rem; }
.bm-market-pulse small { font-size: .68rem; }

.bm-tabs {
    position: sticky;
    top: 10px;
    z-index: 15;
    display: flex;
    gap: 5px;
    padding: 5px;
    margin-bottom: 11px;
    overflow-x: auto;
    border: 1px solid var(--bm-line);
    border-radius: 12px;
    background: rgba(9,10,13,.92);
    backdrop-filter: blur(16px);
    box-shadow: 0 12px 32px rgba(0,0,0,.28);
}
.bm-tabs button {
    flex: 0 0 auto;
    min-height: 34px;
    padding: 0 12px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--bm-muted);
    font: inherit;
    font-size: .82rem;
    font-weight: 750;
    cursor: pointer;
}
.bm-tabs button span { margin-right: 5px; color: var(--bm-gold); }
.bm-tabs button:hover { color: white; background: rgba(255,255,255,.045); }
.bm-tabs button.active { color: white; background: linear-gradient(135deg, rgba(209,67,85,.26), rgba(209,67,85,.09)); box-shadow: inset 0 0 0 1px rgba(255,89,111,.25); }

.bm-panel {
    display: none;
    padding: 15px;
    border: 1px solid var(--bm-line);
    border-radius: 15px;
    background: rgba(14,16,20,.94);
    box-shadow: var(--bm-shadow);
}
.bm-panel.active { display: block; }
.bm-section-heading, .bm-subheading { display: flex; justify-content: space-between; gap: 16px; align-items: end; }
.bm-section-heading { margin-bottom: 13px; }
.bm-section-heading h2, .bm-subheading h3 { margin: 3px 0 0; }
.bm-section-heading h2 { font-size: clamp(1.1rem, 2vw, 1.45rem); }
.bm-section-heading > p, .bm-subheading p { max-width: 600px; margin: 0; color: var(--bm-muted); font-size: .82rem; line-height: 1.4; }
.bm-subheading { align-items: center; margin-bottom: 10px; }
.bm-subheading h3 { font-size: .92rem; }
.bm-subheading p { margin-top: 3px; font-size: .74rem; }

.bm-filters {
    display: grid;
    grid-template-columns: minmax(240px, 1.8fr) repeat(6, minmax(120px, 1fr));
    gap: 8px;
    padding: 11px;
    margin-bottom: 12px;
    border: 1px solid var(--bm-line);
    border-radius: 12px;
    background: rgba(255,255,255,.025);
}
.bm-filters label, .bm-form-grid label { display: grid; gap: 5px; }
.bm-filters label > span, .bm-form-grid label > span { color: var(--bm-muted); font-size: .64rem; font-weight: 750; text-transform: uppercase; letter-spacing: .07em; }
.bm-filters input, .bm-filters select, .bm-form-grid input, .bm-form-grid textarea, .bm-inline-select select, .bm-subheading input {
    width: 100%;
    min-height: 34px;
    padding: 0 10px;
    border: 1px solid var(--bm-line);
    border-radius: 8px;
    outline: none;
    background: #0b0d10;
    color: var(--bm-text);
    font: inherit;
    font-size: .82rem;
}
.bm-form-grid textarea { min-height: 80px; padding-top: 9px; resize: vertical; }
.bm-filters input:focus, .bm-filters select:focus, .bm-form-grid input:focus, .bm-form-grid textarea:focus, .bm-subheading input:focus { border-color: rgba(255,89,111,.55); box-shadow: 0 0 0 3px rgba(209,67,85,.1); }
.bm-filter-actions { display: flex; align-items: end; gap: 7px; grid-column: span 2; }
.bm-filter-actions .bm-button { flex: 1; }

.bm-listing-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 14px;
}
.bm-listing-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 390px;
    overflow: hidden;
    border: 1px solid var(--bm-line);
    border-radius: 16px;
    background: linear-gradient(155deg, #191c22, #101216);
    transition: transform .17s ease, border-color .17s ease, box-shadow .17s ease;
}
.bm-listing-card:hover { transform: translateY(-3px); border-color: rgba(217,179,95,.34); box-shadow: 0 18px 36px rgba(0,0,0,.28); }
.bm-listing-card::before { content: ""; position: absolute; inset: 0 0 auto; height: 3px; background: var(--quality-colour, #777); }
.bm-listing-card[data-quality="fine"] { --quality-colour: #77c58a; }
.bm-listing-card[data-quality="exceptional"] { --quality-colour: #6fa8ff; }
.bm-listing-card[data-quality="underworld"] { --quality-colour: #b777ff; }
.bm-listing-card[data-quality="legendary"] { --quality-colour: #ffb84f; }
.bm-listing-card__head { display: flex; justify-content: space-between; gap: 10px; padding: 14px 15px 0; color: var(--bm-muted); font-size: .72rem; text-transform: uppercase; letter-spacing: .07em; }
.bm-listing-card__head b { color: var(--quality-colour, var(--bm-gold)); }
.bm-listing-card__icon { position: relative; display: grid; place-items: center; min-height: 104px; font-size: 3.4rem; background: radial-gradient(circle, rgba(255,255,255,.07), transparent 65%); }
.bm-listing-card__icon i { position: absolute; right: 18px; bottom: 10px; padding: 3px 7px; border-radius: 999px; background: rgba(0,0,0,.72); color: white; font-size: .72rem; font-style: normal; }
.bm-listing-card__body { display: flex; flex-direction: column; flex: 1; padding: 0 16px 16px; }
.bm-listing-card__body small { color: var(--bm-muted); }
.bm-listing-card h3 { margin: 5px 0 7px; font-size: 1.08rem; }
.bm-listing-card__effect { min-height: 50px; margin: 0; color: #b9bec8; font-size: .82rem; line-height: 1.5; }
.bm-listing-card__stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; margin: 14px 0; }
.bm-listing-card__stats div { padding: 8px; border: 1px solid var(--bm-line); border-radius: 8px; background: rgba(0,0,0,.18); }
.bm-listing-card__stats span, .bm-listing-card__stats strong { display: block; }
.bm-listing-card__stats span { color: var(--bm-muted); font-size: .64rem; text-transform: uppercase; }
.bm-listing-card__stats strong { margin-top: 3px; font-size: .83rem; }
.bm-condition { height: 5px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.07); }
.bm-condition i { display: block; height: 100%; background: linear-gradient(90deg, var(--bm-red), var(--bm-gold), var(--bm-green)); }
.bm-listing-card__seller { display: flex; align-items: center; gap: 8px; margin-top: 12px; color: var(--bm-muted); font-size: .8rem; }
.bm-listing-card__seller img { width: 25px; height: 25px; border-radius: 50%; object-fit: cover; }
.bm-listing-card__seller a { color: var(--bm-text); text-decoration: none; font-weight: 750; }
.bm-listing-card__foot { display: flex; align-items: end; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 14px; }
.bm-listing-card__price span, .bm-listing-card__price small { display: block; color: var(--bm-muted); font-size: .68rem; }
.bm-listing-card__price strong { color: var(--bm-gold); font-size: 1.18rem; }
.bm-listing-card__actions { display: flex; gap: 6px; }
.bm-icon-button { width: 32px; height: 32px; border: 1px solid var(--bm-line); border-radius: 8px; background: rgba(255,255,255,.035); color: white; cursor: pointer; }
.bm-icon-button.active { border-color: rgba(217,179,95,.45); color: var(--bm-gold); background: rgba(217,179,95,.1); }

.bm-pagination { display: flex; justify-content: center; gap: 6px; margin-top: 14px; }
.bm-pagination button { min-width: 32px; height: 32px; border: 1px solid var(--bm-line); border-radius: 7px; background: rgba(255,255,255,.03); color: white; cursor: pointer; }
.bm-pagination button.active { background: var(--bm-red); border-color: var(--bm-red); }

.bm-sell-layout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr); gap: 12px; }
.bm-inventory-picker, .bm-listing-form { padding: 13px; border: 1px solid var(--bm-line); border-radius: 13px; background: rgba(255,255,255,.022); }
.bm-subheading input { max-width: 220px; }
.bm-sell-inventory { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 7px; max-height: 560px; overflow-y: auto; padding-right: 5px; }
.bm-inventory-item { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; gap: 9px; align-items: center; padding: 9px; border: 1px solid var(--bm-line); border-radius: 10px; background: #101217; color: white; text-align: left; font-size: .82rem; cursor: pointer; }
.bm-inventory-item:hover, .bm-inventory-item.active { border-color: rgba(255,89,111,.45); background: rgba(209,67,85,.075); }
.bm-inventory-item__icon { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 9px; background: rgba(255,255,255,.045); font-size: 1.4rem; }
.bm-inventory-item strong, .bm-inventory-item small { display: block; }
.bm-inventory-item small { margin-top: 2px; color: var(--bm-muted); font-size: .74rem; }
.bm-inventory-item b { color: var(--bm-gold); }
.bm-selected-empty { padding: 20px 14px; margin-bottom: 10px; border: 1px dashed rgba(255,255,255,.14); border-radius: 11px; color: var(--bm-muted); text-align: center; }
.bm-selected-item { display: grid; grid-template-columns: 56px 1fr; gap: 11px; padding: 11px; margin-bottom: 11px; border: 1px solid rgba(217,179,95,.24); border-radius: 11px; background: radial-gradient(circle at 100% 0%, rgba(217,179,95,.08), transparent 55%), rgba(217,179,95,.045); }
.bm-selected-item__icon { display: grid; place-items: center; height: 56px; border-radius: 11px; background: rgba(0,0,0,.25); font-size: 1.9rem; }
.bm-selected-item h4 { margin: 2px 0 4px; font-size: .92rem; }
.bm-selected-item p { margin: 0; color: var(--bm-muted); font-size: .74rem; line-height: 1.4; }
.bm-selected-item__stats { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 7px; }
.bm-selected-item__stats span { padding: 4px 6px; border-radius: 6px; background: rgba(255,255,255,.05); color: #c9cdd5; font-size: .64rem; }
.bm-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.bm-form-wide { grid-column: 1 / -1; }
.bm-fee-ledger { margin: 11px 0; border-top: 1px solid var(--bm-line); }
.bm-fee-ledger > div { display: flex; justify-content: space-between; gap: 12px; padding: 7px 0; border-bottom: 1px solid var(--bm-line); color: var(--bm-muted); font-size: .84rem; }
.bm-fee-ledger strong { color: var(--bm-text); }
.bm-fee-ledger__net strong { color: var(--bm-green); }

.bm-inline-select { display: flex; align-items: center; gap: 7px; color: var(--bm-muted); font-size: .84rem; }
.bm-inline-select select { width: auto; min-width: 140px; }
.bm-ledger-list, .bm-history { display: grid; gap: 7px; }
.bm-ledger-row, .bm-history-row { display: grid; align-items: center; gap: 10px; padding: 9px 12px; border: 1px solid var(--bm-line); border-radius: 10px; background: rgba(255,255,255,.022); }
.bm-ledger-row { grid-template-columns: 42px minmax(160px,1.5fr) repeat(4,minmax(90px,.75fr)) auto; }
.bm-history-row { grid-template-columns: 36px minmax(140px,1.4fr) repeat(4,minmax(90px,.8fr)); }
.bm-ledger-row__icon, .bm-history-row__icon { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 9px; background: rgba(255,255,255,.05); font-size: 1.2rem; }
.bm-ledger-row span, .bm-history-row span { display: block; color: var(--bm-muted); font-size: .62rem; text-transform: uppercase; letter-spacing: .04em; }
.bm-ledger-row strong, .bm-history-row strong { display: block; margin-top: 2px; font-size: .84rem; }
.bm-status { display: inline-flex !important; width: fit-content; padding: 3px 7px; border-radius: 999px; font-size: .62rem !important; font-weight: 800; }
.bm-status--active { background: rgba(94,203,139,.12); color: var(--bm-green) !important; }
.bm-status--sold { background: rgba(111,168,255,.12); color: var(--bm-blue) !important; }
.bm-status--cancelled, .bm-status--expired { background: rgba(255,255,255,.07); color: #b8bdc6 !important; }

.bm-rules { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; margin-top: 12px; }
.bm-rules article { position: relative; padding: 13px; overflow: hidden; border: 1px solid var(--bm-line); border-radius: 12px; background: rgba(14,16,20,.9); }
.bm-rules article > span { position: absolute; right: 10px; top: -6px; color: rgba(255,255,255,.04); font-size: 2.8rem; font-weight: 900; }
.bm-rules h3 { margin: 0 0 5px; font-size: .95rem; }
.bm-rules p { margin: 0; color: var(--bm-muted); font-size: .82rem; line-height: 1.4; }

.bm-modal { position: fixed; inset: 0; z-index: 220000; display: grid; place-items: center; padding: 20px; }
.bm-modal[hidden] { display: none; }
.bm-modal__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.78); backdrop-filter: blur(7px); }
.bm-modal__card { position: relative; width: min(760px, 100%); max-height: min(760px, calc(100vh - 40px)); overflow-y: auto; padding: 18px; border: 1px solid rgba(255,255,255,.12); border-radius: 15px; background: #111318; box-shadow: 0 35px 90px rgba(0,0,0,.65); color: var(--bm-text); }
.bm-modal__card--confirm { width: min(480px, 100%); }
.bm-modal__close { position: absolute; top: 10px; right: 10px; width: 30px; height: 30px; border: 1px solid var(--bm-line); border-radius: 8px; background: rgba(255,255,255,.04); color: white; font-size: 1.1rem; cursor: pointer; }
.bm-modal-hero { display: grid; grid-template-columns: 88px minmax(0,1fr) auto; gap: 14px; align-items: center; padding-right: 26px; }
.bm-modal-hero__icon { display: grid; place-items: center; height: 88px; border-radius: 14px; background: radial-gradient(circle, rgba(255,255,255,.1), rgba(255,255,255,.025)); font-size: 2.8rem; }
.bm-modal-hero h2 { margin: 3px 0 5px; font-size: 1.3rem; }
.bm-modal-hero p { margin: 0; color: var(--bm-muted); font-size: .84rem; line-height: 1.4; }
.bm-modal-price { color: var(--bm-gold); font-size: 1.2rem; white-space: nowrap; }
.bm-detail-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 6px; margin: 13px 0; }
.bm-detail-grid div { padding: 9px; border: 1px solid var(--bm-line); border-radius: 9px; background: rgba(255,255,255,.025); }
.bm-detail-grid span, .bm-detail-grid strong { display: block; }
.bm-detail-grid span { color: var(--bm-muted); font-size: .6rem; text-transform: uppercase; }
.bm-detail-grid strong { margin-top: 3px; font-size: .86rem; }
.bm-effect-panel { padding: 12px; border: 1px solid rgba(217,179,95,.2); border-radius: 11px; background: rgba(217,179,95,.04); }
.bm-effect-panel h3 { margin: 0 0 5px; font-size: .95rem; }
.bm-effect-panel p { margin: 0; color: #c6c9d0; font-size: .84rem; line-height: 1.45; }
.bm-effect-panel ul { margin: 9px 0 0; padding-left: 18px; color: var(--bm-muted); font-size: .84rem; }
.bm-effect-meta { display: grid; grid-template-columns: repeat(4,1fr); gap: 6px; margin-top: 9px; }
.bm-effect-meta div { padding: 7px; border-radius: 8px; background: rgba(0,0,0,.2); }
.bm-effect-meta span, .bm-effect-meta strong { display: block; }
.bm-effect-meta span { color: var(--bm-muted); font-size: .58rem; text-transform: uppercase; }
.bm-listing-pitch { margin: 11px 0; padding: 10px 12px; border-left: 3px solid var(--bm-red); background: rgba(209,67,85,.05); color: #ccd0d7; font-size: .84rem; font-style: italic; }
.bm-market-comparison { display: grid; grid-template-columns: repeat(4,1fr); gap: 6px; margin: 10px 0; }
.bm-market-comparison div { padding: 8px; border-radius: 8px; background: rgba(255,255,255,.025); }
.bm-market-comparison span, .bm-market-comparison strong { display: block; }
.bm-market-comparison span { color: var(--bm-muted); font-size: .58rem; text-transform: uppercase; }
.bm-modal-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; margin-top: 13px; }
.bm-confirm-summary { margin: 10px 0; padding: 10px; border: 1px solid var(--bm-line); border-radius: 9px; background: rgba(255,255,255,.025); }
.bm-confirm-actions { display: flex; justify-content: flex-end; gap: 7px; }
body.bm-modal-open { overflow: hidden; }

.bm-toast { position: fixed; right: 24px; bottom: 24px; z-index: 230000; max-width: 420px; padding: 13px 17px; border: 1px solid var(--bm-line); border-radius: 11px; background: #171a20; color: white; box-shadow: 0 18px 50px rgba(0,0,0,.45); opacity: 0; transform: translateY(12px); pointer-events: none; transition: .2s ease; }
.bm-toast.show { opacity: 1; transform: translateY(0); }
.bm-toast[data-tone="success"] { border-color: rgba(94,203,139,.45); }
.bm-toast[data-tone="error"] { border-color: rgba(255,89,111,.5); }
.bm-toast[data-tone="warning"] { border-color: rgba(217,179,95,.5); }

.bm-loading, .bm-empty, .bm-error { grid-column: 1 / -1; padding: 45px 20px; border: 1px dashed rgba(255,255,255,.12); border-radius: 13px; color: var(--bm-muted); text-align: center; }
.bm-error { color: #ff8b9a; }

@media (max-width: 1280px) {
    .bm-listing-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .bm-filters { grid-template-columns: repeat(4,minmax(0,1fr)); }
    .bm-filter-search { grid-column: span 2; }
    .bm-filter-actions { grid-column: span 2; }
    .bm-ledger-row { grid-template-columns: 48px minmax(170px,1.4fr) repeat(3,minmax(90px,.7fr)) auto; }
    .bm-ledger-row > div:nth-child(5) { display: none; }
}

@media (max-width: 950px) {
    .bm-page { width: min(100% - 20px, 1500px); padding-top: 20px; }
    .bm-hero { grid-template-columns: 1fr; padding: 30px 25px; }
    .bm-market-pulse { grid-template-columns: repeat(2,1fr); }
    .bm-listing-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .bm-sell-layout { grid-template-columns: 1fr; }
    .bm-sell-inventory { max-height: 420px; }
    .bm-rules { grid-template-columns: 1fr; }
    .bm-detail-grid, .bm-effect-meta, .bm-market-comparison { grid-template-columns: repeat(2,1fr); }
    .bm-modal-hero { grid-template-columns: 95px 1fr; }
    .bm-modal-hero__icon { height: 95px; }
    .bm-modal-price { grid-column: 2; }
    .bm-ledger-row, .bm-history-row { grid-template-columns: 46px 1fr 1fr; }
    .bm-ledger-row > div:nth-child(n+5), .bm-history-row > div:nth-child(n+5) { display: none; }
}

@media (max-width: 640px) {
    .bm-hero h1 { font-size: 3rem; }
    .bm-panel { padding: 18px 14px; border-radius: 15px; }
    .bm-market-pulse { grid-template-columns: 1fr 1fr; }
    .bm-tabs { top: 4px; }
    .bm-filters { grid-template-columns: 1fr 1fr; }
    .bm-filter-search, .bm-filter-actions { grid-column: 1 / -1; }
    .bm-listing-grid { grid-template-columns: 1fr; }
    .bm-sell-inventory { grid-template-columns: 1fr; }
    .bm-form-grid { grid-template-columns: 1fr; }
    .bm-form-wide { grid-column: auto; }
    .bm-section-heading, .bm-subheading { align-items: flex-start; flex-direction: column; }
    .bm-subheading input { max-width: none; }
    .bm-modal { padding: 8px; }
    .bm-modal__card { padding: 21px 15px; border-radius: 14px; }
    .bm-modal-hero { grid-template-columns: 70px 1fr; gap: 12px; }
    .bm-modal-hero__icon { height: 70px; font-size: 2.5rem; }
    .bm-detail-grid, .bm-effect-meta, .bm-market-comparison { grid-template-columns: 1fr 1fr; }
    .bm-toast { left: 12px; right: 12px; bottom: 12px; max-width: none; }
}

.bm-district-access{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 13px;border:1px solid rgba(79,166,202,.32);border-radius:12px;background:rgba(27,70,88,.34)}.bm-district-access[hidden]{display:none}.bm-district-access>span{font-size:1.15rem}.bm-district-access div{display:grid;gap:2px}.bm-district-access p{margin:0;color:var(--bm-muted,#a5afbc);font-size:.72rem}.bm-district-access a{padding:7px 10px;border-radius:9px;background:rgba(90,181,218,.12);color:#a7dcf0;font-size:.7rem;font-weight:900}@media(max-width:650px){.bm-district-access{grid-template-columns:auto 1fr}.bm-district-access a{grid-column:1/-1;text-align:center}}

/* Crimora City item cards — player-listing information hierarchy. */
.bm-listing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.bm-listing-card{position:relative;overflow:hidden;min-height:410px;border-radius:14px;background:radial-gradient(circle at 100% 0%,rgba(217,179,95,.06),transparent 55%),linear-gradient(150deg,#1a1e24 0%,#111419 60%,#0d0f13 100%);box-shadow:0 12px 28px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.02)}
.bm-listing-card:hover{transform:translateY(-3px);border-color:rgba(217,179,95,.32);box-shadow:0 18px 38px rgba(0,0,0,.36),inset 0 1px rgba(255,255,255,.03)}
.bm-listing-card__head{align-items:center;min-height:32px;padding:9px 12px 3px;font-size:.6rem}
.bm-listing-card__head>b{display:inline-flex;padding:3px 7px;border:1px solid color-mix(in srgb,var(--quality-colour, #777) 38%,transparent);border-radius:999px;background:color-mix(in srgb,var(--quality-colour, #777) 8%,transparent);font-size:.54rem;line-height:1}
.bm-listing-card__head>span{display:grid;justify-items:end;gap:1px;color:#c7cdd5;font-size:.64rem;font-weight:800;letter-spacing:0;text-transform:none}
.bm-listing-card__head>span small{color:var(--bm-muted);font-size:.5rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.bm-listing-card__body{padding:6px 12px 12px}
.bm-listing-card__identity{display:grid;grid-template-columns:56px minmax(0,1fr);gap:10px;align-items:center;min-width:0}
.bm-listing-card__identity:has(.bm-listing-card__icon--equipment){grid-template-columns:88px minmax(0,1fr)}
.bm-listing-card__icon{width:56px;height:56px;min-height:56px;border:1px solid var(--bm-line);border-radius:12px;background:radial-gradient(circle,rgba(255,255,255,.08),rgba(255,255,255,.02));box-shadow:inset 0 1px rgba(255,255,255,.05);font-size:1.8rem;overflow:hidden}
.bm-listing-card__identity .bm-listing-card__icon--equipment{width:88px}
.bm-listing-card__identity>div:last-child{min-width:0}
.bm-listing-card__identity small{font-size:.58rem;text-transform:uppercase;letter-spacing:.06em}
.bm-listing-card h3{margin:3px 0 4px;font-size:.92rem;line-height:1.15;overflow-wrap:anywhere}
.bm-listing-card__identity p{display:-webkit-box;margin:0;overflow:hidden;color:#929aa5;font-size:.66rem;line-height:1.4;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.bm-listing-card__purpose{display:grid;gap:3px;margin-top:10px;padding:8px 9px;border:1px solid rgba(217,179,95,.2);border-radius:9px;background:linear-gradient(120deg,rgba(217,179,95,.075),rgba(217,179,95,.02))}
.bm-listing-card__purpose span,.bm-listing-card__section-label{color:#b29150;font-size:.51rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.bm-listing-card__purpose strong{color:#e3e5e9;font-size:.66rem;line-height:1.4;font-weight:700}
.bm-listing-card__detail-block{margin-top:10px}
.bm-listing-card__section-label{display:block;margin:0 1px 5px;color:#78828e}
.bm-listing-card__stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:0}
.bm-listing-card__stats div{min-width:0;padding:6px 8px;border-radius:8px;box-shadow:inset 0 1px rgba(255,255,255,.02)}
.bm-listing-card__stats div:last-child:nth-child(odd){grid-column:1/-1}
.bm-listing-card__stats span{font-size:.52rem;letter-spacing:.03em}
.bm-listing-card__stats strong{font-size:.66rem;line-height:1.3;overflow-wrap:anywhere}
.bm-listing-card__condition{display:grid;grid-template-columns:1fr auto;gap:3px;margin-top:8px;color:var(--bm-muted);font-size:.55rem;text-transform:uppercase;letter-spacing:.05em}
.bm-listing-card__condition strong{color:#dde2e7;font-size:.63rem}
.bm-listing-card__condition .bm-condition{grid-column:1/-1;margin-top:2px}
.bm-listing-card__seller{margin-top:9px;padding:7px 9px;border:1px solid var(--bm-line);border-radius:8px;background:rgba(0,0,0,.15)}
.bm-listing-card__seller>span{display:block;min-width:0}
.bm-listing-card__seller>span small{display:block;margin-bottom:2px;font-size:.5rem;text-transform:uppercase;letter-spacing:.06em}
.bm-listing-card__foot{align-items:center;margin-top:auto;padding-top:10px;border-top:1px solid var(--bm-line)}
.bm-listing-card__price{min-width:0}
.bm-listing-card__price strong{font-size:.95rem;line-height:1.25;overflow-wrap:anywhere;color:var(--bm-gold);text-shadow:0 0 10px rgba(217,179,95,.25)}
.bm-listing-card__actions{align-items:center}
.bm-inspect-button{min-width:60px;height:32px;padding:0 9px;border:1px solid rgba(217,179,95,.3);border-radius:8px;background:rgba(217,179,95,.08);color:#e8d49f;font:inherit;font-size:.64rem;font-weight:900;cursor:pointer}
.bm-inspect-button:hover{border-color:var(--bm-gold);background:rgba(217,179,95,.13)}
@media(max-width:1120px){.bm-listing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.bm-listing-grid{grid-template-columns:1fr}.bm-listing-card{min-height:0}.bm-listing-card__identity{align-items:start}.bm-listing-card__stats{grid-template-columns:1fr}.bm-listing-card__stats div:last-child:nth-child(odd){grid-column:auto}.bm-listing-card__foot{align-items:stretch;flex-direction:column}.bm-listing-card__actions{justify-content:space-between}.bm-inspect-button{flex:1}}
