#parts-panel { max-width: 1180px; }
.parts-shop-heading { display: flex; justify-content: space-between; gap: 25px; }
.parts-shop-heading h1 { margin: 5px 0 9px; font-size: clamp(27px, 3.2vw, 42px); }
.parts-shop-heading p { max-width: 760px; color: var(--muted); }
.parts-shop-account { display: flex; flex: 0 0 auto; flex-direction: column; gap: 7px; align-items: flex-end; text-align: right; }
.parts-shop-account span, .parts-shop-account small { color: var(--muted); font: 11px/1.45 var(--font-mono); }
.parts-shop-controls { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, 320px); gap: 16px; align-items: end; margin: 24px 0; border-top: 1px solid var(--line); padding: 18px; background: rgba(39, 42, 40, .68); }
.parts-shop-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.parts-shop-filters button { border: 0; border-right: 2px solid var(--muted); border-left: 2px solid var(--muted); padding: 9px 12px; background: transparent; color: var(--muted); cursor: pointer; font: 11px var(--font-mono); }
.parts-shop-filters button[aria-pressed="true"] { border-color: var(--primary); background: rgba(129, 210, 138, .08); color: var(--primary); }
.parts-shop-filters button small { margin-left: 6px; color: var(--highlight); }
.parts-shop-controls label span { display: block; margin-bottom: 6px; color: var(--muted); font: 10px var(--font-mono); text-transform: uppercase; }
.parts-shop-controls input { width: 100%; }
.parts-shop-group + .parts-shop-group { margin-top: 28px; }
.parts-shop-group-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 10px; border-bottom: 1px solid var(--line); }
.parts-shop-group-heading h2 { margin: 0 0 9px; color: var(--highlight); font-size: 20px; }
.parts-shop-group-heading span { color: var(--muted); font: 10px var(--font-mono); }
.parts-shop-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(255px, 1fr)); gap: 12px; }
.parts-shop-offer { display: flex; min-width: 0; flex-direction: column; border-left: 2px solid var(--primary); padding: 17px; background: rgba(18, 23, 19, .72); }
.parts-shop-offer[hidden], .parts-shop-group[hidden] { display: none; }
.parts-shop-offer-meta { display: flex; justify-content: space-between; gap: 10px; color: var(--muted); font: 10px var(--font-mono); text-transform: uppercase; }
.parts-shop-offer-meta b { color: var(--highlight); }
.parts-shop-offer h3 { margin: 8px 0; font-size: 19px; }
.parts-shop-offer > p { flex: 1; color: var(--muted); font-size: 13px; line-height: 1.5; }
.parts-shop-offer dl { margin: 8px 0 0; }
.parts-shop-offer dl div + div { margin-top: 8px; }
.parts-shop-offer dt { color: var(--muted); font: 9px var(--font-mono); text-transform: uppercase; }
.parts-shop-offer dd { margin: 3px 0 0; color: var(--text); font: 11px/1.45 var(--font-mono); }
.parts-shop-buy-block { display: flex; min-width: 0; flex-direction: column; margin-top: 16px; }
.parts-shop-buy { width: 100%; }
.parts-shop-buy span, .parts-shop-buy em { display: block; }
.parts-shop-buy em { margin-top: 5px; color: var(--highlight); font: normal 10px var(--font-mono); text-transform: none; }
.parts-shop-inline-result { margin: 7px 0 0; border-left: 2px solid var(--primary); padding: 7px 10px; background: rgba(129, 210, 138, .08); color: var(--primary); font: 11px/1.4 var(--font-mono); }
.parts-shop-inline-result.is-error { border-left-color: var(--danger); background: rgba(210, 129, 129, .08); color: var(--danger); }
.parts-shop-empty, .parts-shop-filter-empty { color: var(--muted); }
@media (max-width: 760px) { .parts-shop-heading { align-items: stretch; flex-direction: column; } .parts-shop-account { align-items: flex-start; text-align: left; } .parts-shop-controls { grid-template-columns: 1fr; } .parts-shop-grid { grid-template-columns: 1fr; } }
