/* meanwell.by — тема «A · Каталог инженера» (2026-09-24). Поверх Bootstrap 5. */
:root {
    --a-ink: #16181B; --a-muted: #5B6168; --a-line: #E3E5E8; --a-line-2: #C9CDD2; --a-soft: #F5F6F7;
    --a-red: #D7141A; --a-red-dark: #B3100F; --a-green: #1E7A3C; --a-amber: #8A5A00;
    --bs-body-font-family: 'IBM Plex Sans', system-ui, sans-serif; --bs-body-color: #16181B;
    --bs-link-color: #16181B; --bs-link-hover-color: #B3100F; --bs-link-color-rgb: 22,24,27; --bs-link-hover-color-rgb: 179,16,15;
}
body { font-family: 'IBM Plex Sans', system-ui, sans-serif; color: var(--a-ink); background: #fff; }
a { color: var(--a-ink); text-decoration: none; } a:hover { color: var(--a-red-dark); }
.a-mono { font-family: 'IBM Plex Mono', ui-monospace, monospace; }
.a-muted { color: var(--a-muted) !important; }
.a-wrap { max-width: 1440px; margin: 0 auto; padding-left: 48px; padding-right: 48px; }
@media (max-width: 767px) { .a-wrap { padding-left: 16px; padding-right: 16px; } }

.a-topbar { background: var(--a-ink); color: #D9DCE0; font-size: 13px; }
.a-topbar a { color: #D9DCE0; } .a-topbar a:hover { color: #fff; }
.a-header { border-bottom: 1px solid var(--a-line); }
.a-search { flex: 1 1 100%; } @media (min-width: 992px) { .a-search { flex: 1 1 auto; } }
.a-search { display: flex; border: 2px solid var(--a-ink); border-radius: 10px; overflow: hidden; flex-grow: 1; min-width: 0; background: #fff; }
.a-search input { flex-grow: 1; min-width: 0; border: 0; padding: 12px 16px; font: inherit; font-size: 16px; outline: none; }
.a-search button { border: 0; background: var(--a-red); color: #fff; font-weight: 600; padding: 0 26px; }
.a-search button:hover { background: var(--a-red-dark); }
.a-hicon { display: flex; flex-direction: column; align-items: center; gap: 2px; font-size: 13px; position: relative; min-width: 56px; }
.a-hicon .a-count { position: absolute; top: -6px; right: 6px; background: var(--a-red); color: #fff; border-radius: 999px; font-size: 11px; line-height: 1; padding: 3px 6px; }
.a-nav { border-bottom: 1px solid var(--a-line); font-size: 14px; font-weight: 500; }
.a-nav .a-nav-link { display: inline-block; padding: 13px 0; border-bottom: 2px solid transparent; }
.a-nav .a-nav-link.active, .a-nav .a-nav-link:hover { border-bottom-color: var(--a-red); color: var(--a-ink); }
.a-nav .dropdown-menu { border-radius: 10px; border-color: var(--a-line); }

.a-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; border-radius: 8px; font-weight: 600; padding: 9px 14px; border: 1px solid var(--a-ink); background: #fff; color: var(--a-ink); }
.a-btn:hover { background: var(--a-soft); color: var(--a-ink); }
.a-btn-red { background: var(--a-red); border-color: var(--a-red); color: #fff !important; }
.a-btn-red:hover { background: var(--a-red-dark); border-color: var(--a-red-dark); }
.btn-primary, .btn-danger { --bs-btn-bg: #D7141A; --bs-btn-border-color: #D7141A; --bs-btn-hover-bg: #B3100F; --bs-btn-hover-border-color: #B3100F; --bs-btn-active-bg: #B3100F; color: #fff !important; }
.btn-outline-primary { --bs-btn-color: #16181B; --bs-btn-border-color: #16181B; --bs-btn-hover-bg: #16181B; --bs-btn-hover-border-color: #16181B; }
.page-item.active .page-link { background: var(--a-ink); border-color: var(--a-ink); }
.page-link { color: var(--a-ink); }
.form-check-input:checked { background-color: var(--a-red); border-color: var(--a-red); }

.a-chip { border: 1px solid var(--a-line-2); border-radius: 999px; padding: 6px 14px; font-size: 14px; background: #fff; display: inline-block; }
.a-chip-on { background: var(--a-ink); border-color: var(--a-ink); color: #fff !important; }
.a-card { border: 1px solid var(--a-line); border-radius: 12px; background: #fff; }
a.a-card:hover { border-color: var(--a-line-2); box-shadow: 0 2px 10px rgba(22,24,27,.06); color: var(--a-ink); }
.a-soft { background: var(--a-soft); }
.a-av-minsk { color: var(--a-green); } .a-av-soon { color: var(--a-amber); } .a-av-order { color: var(--a-muted); }
.a-price { font-weight: 700; }

/* Таблица товаров категории/поиска */
.a-table-head, .a-row { display: grid; grid-template-columns: 90px minmax(0,1fr) 90px 120px 80px 60px 170px 150px; gap: 12px; align-items: center; }
.a-table-head { padding: 10px 0; font-size: 12px; color: var(--a-muted); text-transform: uppercase; letter-spacing: .4px; border-bottom: 1px solid var(--a-line); }
.a-row { padding: 14px 0; border-bottom: 1px solid var(--a-line); font-size: 14px; }
.a-row img { width: 90px; height: 64px; object-fit: contain; }
@media (max-width: 991px) {
    .a-table-head { display: none; }
    .a-row { grid-template-columns: 72px minmax(0,1fr); }
    .a-row img { width: 72px; height: 56px; }
    .a-row .a-col-p { display: none; }
    .a-row .a-col-av, .a-row .a-col-buy { grid-column: 2; }
    .a-row .a-col-buy { align-items: flex-start !important; }
}

/* Фильтры */
.a-filters legend { font-size: 14px; font-weight: 600; margin-bottom: 8px; float: none; }
.a-filters fieldset { margin-bottom: 20px; }
.a-filter-scroll { max-height: 220px; overflow-y: auto; }

/* Карточка товара */
.a-specs { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1px; background: var(--a-line); border: 1px solid var(--a-line); border-radius: 10px; overflow: hidden; }
.a-specs > div { background: #fff; padding: 12px; }
.a-specs .a-k { font-size: 12px; color: var(--a-muted); } .a-specs .a-v { font-weight: 600; }
.a-buy { border: 2px solid var(--a-ink); border-radius: 14px; padding: 20px; }
.a-opt { display: flex; gap: 10px; align-items: flex-start; border: 1px solid var(--a-line-2); border-radius: 10px; padding: 11px 13px; cursor: pointer; margin: 0; }
.a-opt:has(input:checked) { border: 2px solid var(--a-red); padding: 10px 12px; }
.a-opt input { margin-top: 4px; accent-color: var(--a-red); }
.a-qty { display: flex; border: 1px solid var(--a-line-2); border-radius: 10px; overflow: hidden; }
.a-qty button { border: 0; background: var(--a-soft); width: 40px; font-size: 18px; }
.a-qty input { width: 56px; border: 0; text-align: center; font-weight: 600; }
.a-tabs { border-bottom: 1px solid var(--a-line); font-weight: 600; gap: 28px; }
.a-tabs a { padding: 12px 0; border-bottom: 2px solid transparent; color: var(--a-muted); }
.a-tabs a.active, .a-tabs a:hover { border-bottom-color: var(--a-red); color: var(--a-ink); }
.a-spec-list { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); column-gap: 48px; font-size: 15px; }
.a-spec-list > div { display: flex; justify-content: space-between; gap: 16px; padding: 10px 0; border-bottom: 1px solid #EEF0F2; }
@media (max-width: 767px) { .a-spec-list { grid-template-columns: 1fr; } .a-specs { grid-template-columns: repeat(2, minmax(0,1fr)); } }

.a-footer { background: var(--a-ink); color: #C3C7CC; font-size: 14px; line-height: 1.7; }
.a-footer a { color: #C3C7CC; } .a-footer a:hover { color: #fff; }
.a-footer .a-fh { color: #fff; font-weight: 600; margin-bottom: 6px; }

/* Описание товара из админки (RichEditor) */
.product-description { line-height: 1.6; } .product-description img { max-width: 100%; height: auto; }
.product-description table { width: 100%; margin-bottom: 1rem; } .product-description td, .product-description th { border: 1px solid var(--a-line); padding: .35rem .5rem; }
