:root {
  --sf-bg: #090a0b;
  --sf-surface: #111315;
  --sf-surface-raised: #171a1d;
  --sf-line: #292d31;
  --sf-line-strong: #4d545a;
  --sf-text: #f5f7f8;
  --sf-muted: #a6adb5;
  --sf-subtle: #737a83;
  --sf-accent: #e6f437;
  --sf-accent-ink: #121400;
  --sf-success: #5fdb9a;
  --sf-danger: #ff8e8e;
  --sf-radius: 10px;
  --sf-radius-lg: 16px;
  --sf-space-1: 4px;
  --sf-space-2: 8px;
  --sf-space-3: 12px;
  --sf-space-4: 16px;
  --sf-space-5: 24px;
  --sf-space-6: 32px;
  --sf-space-8: 48px;
  --sf-shadow: 0 18px 44px rgba(0, 0, 0, .22);
}

body { background: var(--sf-bg) !important; color: var(--sf-text); font-family: Inter, "Open Sans", system-ui, sans-serif; }
body::before { display: none; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; top: 12px; left: 12px; z-index: 20000; padding: 10px 14px; background: var(--sf-accent); color: var(--sf-accent-ink); border-radius: 6px; transform: translateY(-160%); font-weight: 700; text-decoration: none; }
.skip-link:focus { transform: translateY(0); }
:where(a, button, input, select, textarea):focus-visible { outline: 3px solid var(--sf-accent) !important; outline-offset: 3px; }

.header { position: sticky; background: rgba(9,10,11,.96) !important; border-bottom: 1px solid var(--sf-line) !important; box-shadow: none !important; backdrop-filter: none !important; }
.header-line { min-height: 64px; }
.header-logo img { max-width: 116px; filter: none; }
.nav { gap: 4px; }
.nav-item, .nav-item:hover, .nav-item[aria-current="page"] { padding: 8px 10px; color: var(--sf-muted); background: transparent; border-radius: 6px; font-size: 14px; font-weight: 600; transform: none; box-shadow: none; }
.nav-item:hover, .nav-item[aria-current="page"] { color: var(--sf-text); background: var(--sf-surface-raised); text-decoration: none; }
.nav-item[aria-current="page"] { box-shadow: inset 0 -2px var(--sf-accent); }
.nav-item::after { display: none; }
.nav-toggle { display: none; min-height: 42px; padding: 0 12px; border: 1px solid var(--sf-line-strong); border-radius: 6px; background: var(--sf-surface); color: var(--sf-text); font: inherit; font-weight: 700; cursor: pointer; }

.btn-main, .panel-btn, .checkout-submit, .success-action-primary,
body.product-page .btn-primary, body.product-page .cart-add-btn { border: 0; border-radius: 6px; background: var(--sf-accent) !important; color: var(--sf-accent-ink) !important; box-shadow: none !important; font-weight: 800; }
.btn-main:hover, .panel-btn:hover, .checkout-submit:hover, .success-action-primary:hover,
body.product-page .btn-primary:hover, body.product-page .cart-add-btn:hover { background: #f2ff61 !important; transform: none; }
.btn-ghost, .hero-link, .checkout-back, .success-action-secondary { border: 1px solid var(--sf-line-strong) !important; border-radius: 6px !important; background: transparent !important; color: var(--sf-text) !important; box-shadow: none !important; }

body.home .hero-banner { background: linear-gradient(135deg, #0d1010, #090a0b) !important; border-bottom: 1px solid var(--sf-line); }
body.home .hero-title, body.shop-page .shop-header-section h1, .about-page .hero-card h1, .contacts-title { color: var(--sf-text); font-family: "Open Sans", system-ui, sans-serif; font-weight: 800; letter-spacing: -.04em; text-shadow: none; }
body.home .hero-panel, body.home .trust-item, .feature, .review-card, .contact-cta-inner,
body.shop-page .shop-header-section, body.shop-page .sidebar, body.shop-page .card,
body.product-page .product-detail, body.product-page .product-tabs, body.product-page .gallery-main,
body.product-page .related-card, .checkout-panel, .success-panel { background: var(--sf-surface) !important; border: 1px solid var(--sf-line) !important; border-radius: var(--sf-radius-lg) !important; box-shadow: none !important; }
body.home .hero-panel::after, body.shop-page .shop-header-section::after { display: none; }
body.home .hero-badge, body.home .trust-item { background: var(--sf-surface) !important; border-color: var(--sf-line) !important; color: var(--sf-muted); }
body.home .product-card, body.home .category-banner-copy { border-radius: var(--sf-radius-lg); border-color: var(--sf-line); box-shadow: none; }
body.home .product-card:hover, body.shop-page .card:hover, body.product-page .related-card:hover { transform: translateY(-3px); border-color: var(--sf-line-strong); box-shadow: var(--sf-shadow); }

/* Catalog: vehicle-first discovery */
body.shop-page .shop-container { max-width: 1360px; grid-template-columns: 292px minmax(0, 1fr); gap: 24px; padding: 32px 20px 80px; }
body.shop-page .shop-header-section { padding: 32px; margin-bottom: 0; }
body.shop-page .shop-header-section h1 { font-size: clamp(34px, 4vw, 54px); }
body.shop-page .shop-hero-main { grid-template-columns: 1fr; }
body.shop-page .hero-info { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
body.shop-page .info-card { min-height: 86px; padding: 14px; background: var(--sf-surface-raised); border: 1px solid var(--sf-line); border-radius: var(--sf-radius); }
body.shop-page .info-card span { color: var(--sf-subtle); background: none; border: 0; padding: 0; letter-spacing: .06em; }
body.shop-page .info-card strong { color: var(--sf-text); font-size: 14px; }
.catalog-toolbar { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 8px; align-items: end; margin-top: 24px; }
.catalog-field { display: grid; gap: 6px; color: var(--sf-muted); font-size: 12px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
body.shop-page .search-bar { display: flex; gap: 8px; margin: 0; }
body.shop-page .search-bar input, body.shop-page .sort-select, body.shop-page .filter-group input[type="text"] { min-height: 46px; background: #0b0c0d; border: 1px solid var(--sf-line); border-radius: 6px; color: var(--sf-text); box-shadow: none; }
body.shop-page .search-bar input { min-width: 0; padding: 0 14px; }
.search-clear, .catalog-filter-trigger, .catalog-pagination button { min-height: 46px; padding: 0 14px; background: var(--sf-surface-raised); border: 1px solid var(--sf-line-strong); border-radius: 6px; color: var(--sf-text); font: inherit; font-weight: 700; cursor: pointer; }
.catalog-filter-trigger { display: none; }
.catalog-result-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 20px 0 14px; color: var(--sf-muted); font-size: 14px; }
body.shop-page .sidebar { top: 88px; padding: 20px; border-radius: var(--sf-radius-lg); }
.filter-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
body.shop-page .sidebar h3 { margin: 0; padding: 0; border: 0; color: var(--sf-text); }
.filter-close { display: none; border: 0; background: transparent; color: var(--sf-text); font-size: 24px; cursor: pointer; }
body.shop-page .filter-group { padding: 16px 0; margin: 0; border-top: 1px solid var(--sf-line); }
body.shop-page .filter-group label, .filter-legend { color: var(--sf-text); font-size: 13px; font-weight: 800; }
.category-list { max-height: 264px; overflow: auto; margin-top: 10px; }
.category-list label { display: flex !important; align-items: center; gap: 8px; min-height: 34px; color: var(--sf-muted) !important; cursor: pointer; }
.price-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 10px; }
body.shop-page .filter-group input[type="text"] { width: 100%; margin: 0; padding: 0 10px; }
body.shop-page .reset-filters { width: 100%; min-height: 44px; margin-top: 16px; border-radius: 6px; background: transparent !important; border: 1px solid var(--sf-line-strong); color: var(--sf-text); }
body.shop-page .grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
body.shop-page .card { overflow: hidden; border-radius: var(--sf-radius); }
body.shop-page .imgbox { aspect-ratio: 1 / .88; padding: 12px; background: #0b0c0d; }
body.shop-page .imgbox img { height: 100%; object-fit: contain; filter: none; }
body.shop-page .body { background: transparent; }
body.shop-page .content-wrapper { padding: 16px; }
body.shop-page .product-title { min-height: 60px; font-size: 15px; line-height: 1.35; }
body.shop-page .product-title a { color: var(--sf-text); }
body.shop-page .price, body.product-page .product-price, body.product-page .related-card .price { color: var(--sf-accent); font-weight: 800; }
body.shop-page .product-stock { color: var(--sf-success); border: 0; padding: 0; background: transparent; }
body.shop-page .product-card-link { color: var(--sf-text); }
.catalog-empty { grid-column: 1 / -1; padding: 48px 24px; background: var(--sf-surface); border: 1px dashed var(--sf-line-strong); border-radius: var(--sf-radius-lg); color: var(--sf-muted); text-align: center; }
.catalog-pagination { display: flex; justify-content: center; gap: 8px; margin-top: 28px; }
.catalog-pagination button[aria-current="page"] { background: var(--sf-accent); color: var(--sf-accent-ink); border-color: var(--sf-accent); }

/* Product: one decision path */
body.product-page .wrap { max-width: 1280px; margin-top: 24px; }
body.product-page .breadcrumb { color: var(--sf-muted); }
body.product-page .breadcrumb a { color: var(--sf-muted); }
body.product-page .product-wrapper { grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr); gap: 24px; }
body.product-page .gallery-main { background: #0b0c0d !important; padding: 16px; }
body.product-page .gallery-main img { min-height: 0; padding: 0; aspect-ratio: 4 / 3; object-fit: contain; background: transparent; }
body.product-page .gallery-thumbnail { border-radius: 6px; border-color: var(--sf-line); background: var(--sf-surface); }
body.product-page .gallery-thumbnail.active, body.product-page .gallery-thumbnail:hover { border-color: var(--sf-accent); }
body.product-page .product-detail { padding: 28px; }
body.product-page .product-kicker { color: var(--sf-subtle); }
body.product-page .product-title { color: var(--sf-text); font-size: clamp(25px, 3vw, 38px); letter-spacing: -.03em; }
body.product-page .product-lead, body.product-page .action-note { color: var(--sf-muted); }
body.product-page .product-stock { background: transparent; border: 0; padding: 0; color: var(--sf-success); }
body.product-page .compatibility-check { border: 1px solid var(--sf-line); border-radius: var(--sf-radius); background: var(--sf-surface-raised); }
body.product-page .side-choice span { border-color: var(--sf-line-strong); border-radius: 6px; color: var(--sf-text); }
body.product-page .side-choice input:checked + span { border-color: var(--sf-accent); background: var(--sf-accent); color: var(--sf-accent-ink); }
body.product-page .product-actions { gap: 10px; }
body.product-page .cart-add-btn { order: 2; }
body.product-page .marketplace-link { border-color: var(--sf-line-strong); border-radius: 6px; color: var(--sf-text); }
body.product-page .iconbox, body.product-page .product-assistant { border-color: var(--sf-line); border-radius: var(--sf-radius); background: var(--sf-surface-raised); }
body.product-page .product-tabs { padding: 28px; }
body.product-page .tab-btn { color: var(--sf-muted); }
body.product-page .tab-btn.active { color: var(--sf-text); border-color: var(--sf-accent); }

@media (max-width: 992px) {
  body.shop-page .shop-container { grid-template-columns: 1fr; }
  body.shop-page .sidebar { position: static; }
  body.product-page .product-wrapper { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .header-line { min-height: 60px; flex-wrap: wrap; }
  .nav-toggle { display: inline-flex; align-items: center; }
  .nav { display: none; width: 100%; padding: 8px 0 12px; border-top: 1px solid var(--sf-line); }
  .nav.is-open { display: grid; grid-template-columns: repeat(2, 1fr); }
  .nav-item, .nav-item:hover, .nav-item[aria-current="page"] { text-align: center; }
  body.home .hero-banner { padding-top: 48px; }
  body.shop-page .shop-container { padding: 18px 14px 64px; }
  body.shop-page .shop-header-section { padding: 22px 18px; }
  body.shop-page .hero-info { grid-template-columns: 1fr; }
  .catalog-toolbar { grid-template-columns: 1fr auto; }
  .catalog-toolbar .catalog-field { grid-column: 1 / -1; }
  .catalog-filter-trigger { display: inline-flex; align-items: center; }
  body.shop-page .sidebar { position: fixed; inset: 0 auto 0 0; width: min(360px, calc(100vw - 24px)); z-index: 10010; display: none; overflow: auto; border-radius: 0; }
  body.shop-page .sidebar.is-open { display: block; }
  .filter-close { display: block; }
  body.shop-page .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  body.shop-page .content-wrapper { padding: 12px; }
  body.shop-page .product-title { min-height: 0; font-size: 14px; }
  body.shop-page .product-card-link { margin-top: 12px; font-size: 12px; }
  body.product-page .wrap { padding: 0 14px; }
  body.product-page .product-detail, body.product-page .product-tabs { padding: 20px; }
  .sf-cart { bottom: 88px; }
  .sf-chat { bottom: 16px !important; }
}
@media (max-width: 440px) {
  body.shop-page .grid { grid-template-columns: 1fr; }
  .search-clear { padding: 0 10px; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }
