/* Product-only presentation layer; deliberately independent of the shared shell CSS. */
body#main :is(.catalog_item,.list_item,.sbv-shop) .image_wrapper_block,
body#main :is(.catalog_item,.list_item,.sbv-shop) :is(a.thumb,a.thumb.shine),
body#main .sbv-quick-body > img,
body#main :is(.sbv-atix-v1-product__image,.sbv-dahua-v1-product__image,.sbv-ctv-v3-product__image),
body#main .item_slider :is(.flex-viewport,.slides,.slides > li,.flex-control-nav,.flex-control-nav li,.flex-control-nav a,a.popup_link,li) {
  border-color: transparent !important;
  background: #fff !important;
  box-shadow: none !important;
}
body#main :is(.catalog_item,.list_item,.sbv-shop) :is(a.thumb,a.thumb.shine) img,
body#main .sbv-quick-body > img,
body#main :is(.sbv-atix-v1-product__image,.sbv-dahua-v1-product__image,.sbv-ctv-v3-product__image) img,
body#main .item_slider img {
  border-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
  object-fit: contain;
}
body#main .item_slider .flex-viewport {
  position: relative !important;
  max-width: 100% !important;
  overflow: hidden !important;
}
body#main .item_slider {
  max-width: 100% !important;
  aspect-ratio: 1 / 1;
  overflow: hidden !important;
}
body#main .item_slider .flex-viewport > ul.slides {
  width: 100% !important;
  max-width: 100% !important;
}
body#main :is(.catalog_item,.list_item,.sbv-shop) :is(a.thumb,a.thumb.shine):focus-visible,
body#main .item_slider .flex-control-nav a:focus-visible {
  border-color: #30363a !important;
  outline: 2px solid #30363a !important;
  outline-offset: 3px !important;
}
body#main .item_slider .flex-control-nav a.flex-active {
  border-color: transparent !important;
  background: #fff !important;
}
body#main :is(.sbv-atix-v1-actions,.sbv-dahua-v1-actions,.sbv-ctv-v3-actions) :is(.sbv-atix-v1-button,.sbv-dahua-v1-button,.sbv-ctv-v3-button),
body#main :is(.sbv-shop,.sbv-quick-dialog) :is(.sbv-tile-buy,.sbv-quick-buy),
body#main :is(.catalog_item,.list_item,.middle_info) :is(.to-cart,.toorder,.to-order),
body#main .sbv-native-actions {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 160px !important;
  max-width: 100% !important;
  min-height: 44px !important;
  padding: 11px 24px !important;
  border: 1px solid #30363a !important;
  border-radius: 0 !important;
  background: #30363a !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  text-align: center !important;
  text-indent: 0 !important;
  white-space: normal !important;
}
body#main :is(.sbv-atix-v1-actions,.sbv-dahua-v1-actions,.sbv-ctv-v3-actions) :is(.sbv-atix-v1-button,.sbv-dahua-v1-button,.sbv-ctv-v3-button):is(:hover,:focus-visible,:active),
body#main :is(.sbv-shop,.sbv-quick-dialog) :is(.sbv-tile-buy,.sbv-quick-buy):is(:hover,:focus-visible,:active),
body#main :is(.catalog_item,.list_item,.middle_info) :is(.to-cart,.toorder,.to-order):is(:hover,:focus-visible,:active),
body#main .sbv-native-actions:is(:hover,:focus-visible,:active) {
  border-color: #202124 !important;
  background: #202124 !important;
  color: #fff !important;
}
body#main :is(.catalog_item,.list_item,.middle_info) :is(.to-cart,.toorder,.to-order) :is(span,i,.text,.value),
body#main .sbv-native-actions :is(span,i,.text,.value) {
  color: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
  text-indent: 0 !important;
}
body#main .sbv-partner-proof__line {
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}
body#main :is(.catalog_item,.list_item) .footer_button {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
}
body#main :is(.catalog_item,.list_item) .footer_button :is(.counter_wrapp,.button_block,.to-order) {
  visibility: visible !important;
}
body#main :is(.catalog_item,.list_item) .footer_button .more_text {
  display: none !important;
}
body#main :is(.catalog_item,.list_item,.sbv-shop) :is(a.thumb,a.thumb.shine) {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 190px !important;
  min-height: 190px !important;
  overflow: hidden !important;
}
body#main :is(.catalog_item,.list_item,.sbv-shop) :is(a.thumb,a.thumb.shine) img {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
}
@media (max-width: 959px) {
  body#main .fast_view_frame.jqmWindow {
    left: 12px !important;
    right: auto !important;
    top: 16px !important;
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100vh - 32px) !important;
    margin-left: 0 !important;
    overflow-y: auto !important;
  }
}
body#main #sbv-shop-reference > p {
  max-width: 720px;
  color: #555b60;
  line-height: 1.55;
}
@media (max-width: 767px) {
  body#main :is(.sbv-atix-v1-actions,.sbv-dahua-v1-actions,.sbv-ctv-v3-actions) :is(.sbv-atix-v1-button,.sbv-dahua-v1-button,.sbv-ctv-v3-button),
  body#main :is(.sbv-shop,.sbv-quick-dialog) :is(.sbv-tile-buy,.sbv-quick-buy),
  body#main :is(.catalog_item,.list_item,.middle_info) :is(.to-cart,.toorder,.to-order),
  body#main .sbv-native-actions {
    width: 100% !important;
    min-width: 0 !important;
  }
  body#main :is(.catalog_item,.list_item) .fast_view_block {
    position: relative !important;
    inset: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 44px !important;
    margin: 8px 0 0 !important;
    padding: 10px 12px !important;
    border: 1px solid #30363a !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #30363a !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
    text-align: center !important;
    cursor: pointer;
  }
}
