.ajs {
  --ajs-ink: #122033;
  --ajs-muted: #5b6b7c;
  --ajs-line: #d9e1ea;
  --ajs-bg: #f3f6f9;
  --ajs-card: #fff;
  --ajs-accent: #c1121f;
  --ajs-good: #0f7b4c;
  --ajs-radius: 16px;
  color: var(--ajs-ink);
  font-family: inherit;
}
.ajs * { box-sizing: border-box; }
.ajs-kicker {
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: .75rem;
  color: var(--ajs-muted);
  margin: 0 0 8px;
}
.ajs-home, .ajs-catalog, .ajs-compare-page, .ajs-detail { display: block; }
.ajs-home__hero, .ajs-catalog__head {
  background: var(--ajs-card);
  border: 1px solid var(--ajs-line);
  border-radius: var(--ajs-radius);
  padding: 24px;
  margin-bottom: 20px;
}
.ajs-home__hero h2, .ajs-catalog__head h1, .ajs-detail h1 { margin: 0 0 8px; }
.ajs-home__search, .ajs-filters {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr auto;
  gap: 8px;
  margin-top: 16px;
}
.ajs-filters { grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); margin-bottom: 16px; }
.ajs input, .ajs select {
  border: 1px solid var(--ajs-line);
  border-radius: 10px;
  padding: 10px 12px;
  width: 100%;
  background: #fff;
  color: inherit;
}
.ajs-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  padding: 10px 14px;
  border: 1px solid transparent;
  text-decoration: none;
  font-weight: 650;
  cursor: pointer;
  background: #122033;
  color: #fff;
}
.ajs-btn:hover { color: #fff; filter: brightness(1.08); }
.ajs-btn--accent { background: var(--ajs-accent); }
.ajs-btn--ghost { background: #fff; color: var(--ajs-ink); border-color: var(--ajs-line); }
.ajs-btn--ghost:hover { color: var(--ajs-ink); background: #f8fafc; }
.ajs-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.ajs-chips a {
  background: #eef3f8;
  color: var(--ajs-ink);
  text-decoration: none;
  border-radius: 999px;
  padding: 6px 12px;
  font-size: .88rem;
}
.ajs-home__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 14px;
}
.ajs-photo {
  margin: 0 0 12px;
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  background: linear-gradient(160deg, #e8eef4, #d5dee8);
}
.ajs-photo img {
  display: block;
  width: 100%;
  height: 150px;
  object-fit: cover;
  object-position: center;
}
.ajs-photo--detail img { height: 280px; }
.ajs-photo--compare img { height: 96px; }
.ajs-photo figcaption {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  padding: 4px 8px;
  font-size: 10px;
  letter-spacing: .02em;
  color: #fff;
  background: linear-gradient(transparent, rgba(12,20,30,.72));
}
.ajs-photo__fallback {
  display: none;
  height: 150px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  color: #314155;
  text-align: center;
  padding: 12px;
}
.ajs-photo.is-fallback .ajs-photo__fallback,
.ajs-photo:not(:has(img)) .ajs-photo__fallback { display: flex; }
.ajs-photo.is-fallback figcaption,
.ajs-photo:not(:has(img)) figcaption {
  position: static;
  background: none;
  color: var(--ajs-muted);
}
.ajs-photo--detail .ajs-photo__fallback { height: 280px; }
.ajs-photo--compare .ajs-photo__fallback { height: 96px; }
.ajs-card, .ajs-alt {
  background: var(--ajs-card);
  border: 1px solid var(--ajs-line);
  border-radius: var(--ajs-radius);
  padding: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.ajs-card h3, .ajs-alt h3 { margin: 0; font-size: 1.05rem; }
.ajs-card h3 a, .ajs-alt h3 a { color: inherit; text-decoration: none; }
.ajs-card__variant, .ajs-muted { color: var(--ajs-muted); font-size: .9rem; margin: 0; }
.ajs-card__price { font-size: 1.2rem; font-weight: 800; color: var(--ajs-accent); }
.ajs-pill {
  display: inline-block;
  background: #122033;
  color: #fff;
  border-radius: 999px;
  font-size: .72rem;
  padding: 3px 8px;
  margin-right: 4px;
}
.ajs-pill--muted { background: #e8eef4; color: #334; }
.ajs-mini { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; padding: 0; margin: 8px 0; color: var(--ajs-muted); font-size: .82rem; }
.ajs-mini li { background: #f1f5f9; border-radius: 999px; padding: 3px 8px; }
.ajs-card__actions { display: flex; gap: 8px; margin-top: auto; }
.ajs-card__actions .ajs-btn { flex: 1; }
.ajs-home__more { text-align: center; margin: 22px 0 8px; }
.ajs-note { color: var(--ajs-muted); font-size: .85rem; }
.ajs-count { color: var(--ajs-muted); }
.ajs-empty { background: #fff; padding: 20px; border-radius: var(--ajs-radius); }
.ajs-detail__head { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; align-items: flex-start; }
.ajs-lead { font-size: 1.05rem; }
.ajs-specs, .ajs-compare { width: 100%; border-collapse: collapse; background: #fff; }
.ajs-specs th, .ajs-specs td, .ajs-compare th, .ajs-compare td {
  border-bottom: 1px solid var(--ajs-line);
  padding: 10px 12px;
  text-align: left;
  vertical-align: top;
}
.ajs-specs__group th { background: #eef3f8; font-size: .78rem; text-transform: uppercase; letter-spacing: .06em; }
.ajs-compare .is-best { background: #e7f7ee; color: var(--ajs-good); font-weight: 700; }
.ajs-table-wrap { overflow-x: auto; border: 1px solid var(--ajs-line); border-radius: var(--ajs-radius); }
.ajs-summary { background: #fff; border-radius: var(--ajs-radius); padding: 16px 16px 16px 32px; border: 1px solid var(--ajs-line); }
.ajs-alts__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; }
.ajs-breadcrumb a { color: inherit; }

.ajs-bar {
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 9999;
  background: #122033;
  color: #fff;
  border-radius: 14px;
  padding: 12px 14px;
  display: none;
  align-items: center;
  gap: 12px;
  box-shadow: 0 12px 30px rgba(0,0,0,.25);
}
.ajs-bar.is-open { display: flex; flex-wrap: wrap; }
.ajs-bar__items { display: flex; gap: 8px; flex-wrap: wrap; flex: 1; }
.ajs-bar__item {
  background: rgba(255,255,255,.12);
  border-radius: 999px;
  padding: 6px 10px;
  font-size: .88rem;
}
.ajs-bar__item button {
  border: 0;
  background: transparent;
  color: #fff;
  cursor: pointer;
  margin-left: 6px;
}
@media (max-width: 800px) {
  .ajs-home__search { grid-template-columns: 1fr; }
  .ajs-card__actions { flex-direction: column; }
}
