/* РЕЖИМ · Catalog refinement. Presentation only: existing filters and actions remain. */
html:root[data-theme] body[data-page="catalog"] .categoryGrid {
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
}
html:root[data-theme] body[data-page="catalog"] .categoryCard {
  display:grid!important;
  grid-template-columns:156px minmax(0,1fr)!important;
  grid-template-rows:auto!important;
  min-height:192px!important;
  height:auto!important;
  border-radius:8px!important;
  box-shadow:0 3px 9px rgba(0,0,0,.06)!important;
}
html:root[data-theme] body[data-page="catalog"] .categoryCardMedia {
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:100%!important;
  min-height:192px!important;
  border-right:1px solid var(--border)!important;
}
html:root[data-theme] body[data-page="catalog"] .categoryCardMedia img {
  position:static!important;
  width:100%!important;
  height:164px!important;
  max-width:100%!important;
  max-height:164px!important;
  padding:18px!important;
  object-fit:contain!important;
}
html:root[data-theme] body[data-page="catalog"] .categoryCardBody {
  align-self:center!important;
  min-height:0!important;
  padding:22px!important;
}
html:root[data-theme] body[data-page="catalog"] .categoryCard h3 {
  margin:0 0 10px!important;
  font-size:22px!important;
  line-height:1.25!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  -webkit-line-clamp:unset!important;
}
html:root[data-theme] body[data-page="catalog"] .categoryCard p {
  display:block!important;
  overflow:visible!important;
  white-space:normal!important;
  text-overflow:clip!important;
  -webkit-line-clamp:unset!important;
  font-size:14px!important;
  line-height:1.55!important;
}
html:root[data-theme] body[data-page="catalog"] .categoryCard:hover {
  border-color:var(--accent)!important;
  box-shadow:0 5px 16px rgba(0,0,0,.1)!important;
}
/* The original crème grid belongs to the media frame, never the photograph. */
html:root[data-theme] body[data-page="catalog"] .categoryCardMedia,
html:root[data-theme] body[data-page="category"] .equipmentCard .equipmentPhoto {
  background-color:var(--equipment-creme,#d2c6b1)!important;
  background-image:
    linear-gradient(rgba(67,52,34,.095) 1px,transparent 1px),
    linear-gradient(90deg,rgba(67,52,34,.095) 1px,transparent 1px),
    radial-gradient(circle at 50% 37%,var(--equipment-creme-light,#eee4d1) 0,#d7cbb6 47%,var(--equipment-creme-dark,#aa9b82) 100%)!important;
  background-position:center!important;
  background-size:28px 28px,28px 28px,100% 100%!important;
}
html:root[data-theme] body[data-page="category"] main>.section:has(.catalogLayout) {
  padding-top:24px!important;
}
html:root[data-theme] body[data-page="category"] .catalogLayout {
  display:grid!important;
  grid-template-columns:216px minmax(0,1fr)!important;
  gap:12px 20px!important;
  align-items:start!important;
}
html:root[data-theme] body[data-page="category"] .catalogContent {
  display:contents!important;
}
html:root[data-theme] body[data-page="category"] .catalogToolbar {
  grid-column:1/-1!important;
  grid-row:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  width:100%!important;
  min-height:40px!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
}
html:root[data-theme] body[data-page="category"] .catalogToolbar #resultCount {
  margin-right:auto!important;
  gap:12px!important;
}
html:root[data-theme] body[data-page="category"] #resultCount :is(small,strong) {
  font-size:14px!important;
  line-height:1.5!important;
}
html:root[data-theme] body[data-page="category"] .catalogToolbar .iconTextButton {
  min-height:40px!important;
  padding:8px 14px!important;
  font-size:14px!important;
  line-height:1.4!important;
}
html:root[data-theme] body[data-page="category"] .filters {
  grid-column:1!important;
  grid-row:2!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:6px!important;
  position:sticky!important;
  top:calc(var(--rezim-header-height,80px) + 16px)!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  padding:10px!important;
  margin:0!important;
  border-radius:8px!important;
}
html:root[data-theme] body[data-page="category"] .filters :is(.searchBox,.filterBlock) {
  display:grid!important;
  gap:2px!important;
  margin:0!important;
}
html:root[data-theme] body[data-page="category"] .filters :is(.searchBox span,.filterBlock>span) {
  font-size:14px!important;
  line-height:18px!important;
  font-weight:600!important;
  text-transform:none!important;
  letter-spacing:0!important;
  color:var(--text-secondary)!important;
}
html:root[data-theme] body[data-page="category"] .filters :is(input,select) {
  min-height:40px!important;
  height:40px!important;
  padding:8px 10px!important;
  font-size:14px!important;
  line-height:22px!important;
}
html:root[data-theme] body[data-page="category"] .filterBack {
  min-height:32px!important;
  width:100%!important;
  margin:0!important;
  padding:6px 4px!important;
  font-size:13px!important;
  line-height:1.4!important;
}
html:root[data-theme] body[data-page="category"] .equipmentGrid {
  grid-column:2!important;
  grid-row:2!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  min-width:0!important;
  padding:0!important;
}
html:root[data-theme] body[data-page="category"] .equipmentCard {
  grid-template-rows:216px 1fr auto!important;
  min-height:0!important;
  height:auto!important;
  border-radius:8px!important;
  contain-intrinsic-size:auto 510px!important;
}
html:root[data-theme] body[data-page="category"] .equipmentCard .equipmentPhoto {
  height:216px!important;
  min-height:0!important;
  padding:22px!important;
  border-radius:0!important;
}
html:root[data-theme] body[data-page="category"] .equipmentCardBody {
  min-height:0!important;
  padding:18px 16px 16px!important;
}
html:root[data-theme] body[data-page="category"] .equipmentCard .cardTop {
  min-height:0!important;
  margin:0 0 10px!important;
  gap:6px!important;
}
html:root[data-theme] body[data-page="category"] .equipmentCard h3 {
  display:block!important;
  min-height:0!important;
  margin:0!important;
  font-size:20px!important;
  line-height:1.3!important;
  overflow:visible!important;
  -webkit-line-clamp:unset!important;
}
html:root[data-theme] body[data-page="category"] .equipmentCard p {
  display:-webkit-box!important;
  min-height:0!important;
  margin:10px 0 0!important;
  font-size:14px!important;
  line-height:1.5!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:3!important;
}
html:root[data-theme] body[data-page="category"] .equipmentCard .cardMeta {
  margin:12px 0 0!important;
  gap:6px!important;
}
html:root[data-theme] body[data-page="category"] .equipmentCard :is(.badge,.typeBadge) {
  min-height:0!important;
  padding:4px 6px!important;
  font-size:13px!important;
  line-height:1.4!important;
}
html:root[data-theme] body[data-page="category"] .equipmentCard .cardActions {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  min-height:0!important;
  padding:0 16px 16px!important;
}
html:root[data-theme] body[data-page="category"] .equipmentCard .cardActions .smallButton {
  min-height:40px!important;
  padding:8px!important;
  font-size:13px!important;
  line-height:1.4!important;
}
html:root[data-theme] body[data-page="category"] .equipmentCard .cardActions .smallButton:last-child {
  grid-column:1/-1!important;
}
@media(max-width:1100px) {
  html:root[data-theme] body[data-page="category"] .catalogLayout { grid-template-columns:208px minmax(0,1fr)!important;gap:12px 16px!important; }
  html:root[data-theme] body[data-page="category"] .equipmentGrid { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  html:root[data-theme] body[data-page="catalog"] .categoryCard { grid-template-columns:128px minmax(0,1fr)!important; }
  html:root[data-theme] body[data-page="catalog"] .categoryCardBody { padding:18px!important; }
  html:root[data-theme] body[data-page="catalog"] .categoryCard h3 { font-size:21px!important; }
}
@media(max-width:760px) {
  html:root[data-theme] body[data-page="category"] .catalogLayout { display:block!important; }
  html:root[data-theme] body[data-page="category"] .catalogContent { display:block!important; }
  html:root[data-theme] body[data-page="category"] .catalogMobileControls { display:grid!important;gap:10px!important;margin:0 0 12px!important;padding:0!important;background:transparent!important;border:0!important; }
  html:root[data-theme] body[data-page="category"] .catalogMobileControlRow { grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important; }
  html:root[data-theme] body[data-page="category"] :is(.catalogMobileSearch input,.catalogFilterToggle) { min-height:44px!important;height:44px!important;border:1px solid var(--border-strong)!important;background:var(--surface)!important;color:var(--text-primary)!important;font-size:14px!important;padding:8px 12px!important; }
  html:root[data-theme] body[data-page="category"] .catalogFilterToggle { min-width:100px!important; }
  html:root[data-theme] body[data-page="category"] .catalogQuickFilters { width:100%!important;gap:8px!important; }
  html:root[data-theme] body[data-page="category"] .catalogQuickFilters button { min-height:40px!important;max-width:100%!important;font-size:13px!important;padding:8px 12px!important;border-color:var(--border)!important;background:var(--surface)!important;color:var(--text-secondary)!important; }
  html:root[data-theme] body[data-page="category"] .catalogQuickFilters button.isActive { border-color:var(--accent)!important;background:var(--accent)!important;color:#fff!important; }
  html:root[data-theme] body[data-page="category"] .filters { display:none!important;position:static!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;margin:0 0 16px!important;padding:14px!important;gap:12px!important; }
  html:root[data-theme] body[data-page="category"] .filters.isOpen { display:grid!important; }
  html:root[data-theme] body[data-page="category"] .filters .searchBox { display:none!important; }
  html:root[data-theme] body[data-page="category"] .filters .filterBack { grid-column:auto!important;align-self:end!important;min-height:40px!important; }
  html:root[data-theme] body[data-page="category"] .catalogToolbar { margin:0 0 12px!important; }
  html:root[data-theme] body[data-page="category"] .equipmentGrid { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
  html:root[data-theme] body[data-page="category"] .equipmentCard { grid-template-rows:200px 1fr auto!important; }
  html:root[data-theme] body[data-page="category"] .equipmentCard .equipmentPhoto { height:200px!important;padding:20px!important; }
  html:root[data-theme] body[data-page="catalog"] .categoryGrid { grid-template-columns:1fr!important;gap:14px!important; }
  html:root[data-theme] body[data-page="catalog"] .categoryCard { grid-template-columns:128px minmax(0,1fr)!important;min-height:170px!important; }
  html:root[data-theme] body[data-page="catalog"] .categoryCardMedia { min-height:170px!important; }
}
@media(max-width:520px) {
  html:root[data-theme] body[data-page="category"] .equipmentGrid { grid-template-columns:1fr!important; }
  html:root[data-theme] body[data-page="category"] .equipmentCard { grid-template-rows:220px 1fr auto!important; }
  html:root[data-theme] body[data-page="category"] .equipmentCard .equipmentPhoto { height:220px!important;padding:24px!important; }
  html:root[data-theme] body[data-page="catalog"] .categoryCard { grid-template-columns:104px minmax(0,1fr)!important; }
  html:root[data-theme] body[data-page="catalog"] .categoryCardBody { padding:16px!important; }
  html:root[data-theme] body[data-page="catalog"] .categoryCardMedia img { padding:12px!important; }
  html:root[data-theme] body[data-page="catalog"] .categoryCard h3 { font-size:20px!important; }
  html:root[data-theme] body[data-page="category"] .filters :is(input,select) { min-height:44px!important;height:44px!important;font-size:16px!important; }
}
