/* Accordion (shared) */
.uc-accordion-block{max-height:0;overflow:hidden;transition:max-height 0.0001s ease;position:relative;z-index:0;}
.uc-accordion{cursor:pointer;position:relative;z-index:1;}
.fade-content,
.accordion-icon {
  transition: opacity 0.3s ease, transform 0.3s ease;
  opacity:0.4;
}
.uc-accordion.active .fade-content,
.uc-accordion.active .accordion-icon,
.uc-accordion-block.active .fade-content,
.uc-accordion-block.active .accordion-icon {
  opacity:1;
}
.uc-accordion.active .accordion-icon{transform:rotate(45deg);}

/* VORON product card (was in per-page HTML; required for size clicks / active state) */
.v-gal .t-slds__thumbsbullet-wrapper{display:none!important;}
[name="v-activeVariant"] .tn-atom,
[name="v-activeVariant"] .tn-atom:before,
[name="v-activeVariant"] .tn-atom:after{
  background-color:#FFFFFF00!important;
  border-color:#FFFFFF00!important;
}
[name="v-activeVariant"] .tn-atom__button-text{color:#404040!important;}
[name="v-activeVariant"]{pointer-events:none;}
[class*=" ver"],
.v-order,
.fav{
  cursor:pointer;
  pointer-events:auto;
}
[class*="v-img"] .tn-atom{background-size:cover;}
.vdisable{
  opacity:.5;
  pointer-events:none;
}
form:has([name="vquant"]) .tn-form__submit{display:none!important;}
.t-slds__item_dummy{display:none!important;}

/*
 * Zero Gallery injects BOTH arrow SVGs (type 1 chevron + type 2 line) stacked,
 * then JS hides all and re-shows the selected type. That flashes “two kinds of
 * arrows” on left/right. Product galleries use arrowtype=2.
 */
.t-null__slds-arrow_1 {
  display: none !important;
}

/*
 * Arrow markup is injected before JS adds the tn-elem__gallery_arrows-*
 * class that decides placement (or hides them for arrows=none), so arrows
 * paint for a frame. Keep the container hidden until that class lands.
 */
.tn-elem[data-elem-type="gallery"]:not([class*="tn-elem__gallery_arrows-"]) .t-slds__arrow_container {
  visibility: hidden !important;
}

.tn-elem__gallery_arrows-none .t-slds__arrow_container {
  display: none !important;
}

/* Desktop gallery (arrows on) must not paint on narrow screens before blocks CSS */
@media screen and (max-width: 640px) {
  .t-screenmin-640px {
    display: none !important;
  }
  .t-screenmin-640px .t-slds__arrow_container {
    display: none !important;
  }
}

/* Telegram WebApp — pads only when JS sets real inset values (> 0) */
html.nozhov-tg-webapp {
  --nozhov-tg-pad-top: 0px;
  --nozhov-tg-pad-bottom: 0px;
}

html.nozhov-tg-webapp.nozhov-tg-has-top-pad #allrecords,
html.nozhov-tg-webapp.nozhov-tg-has-top-pad body {
  padding-top: var(--nozhov-tg-pad-top) !important;
  box-sizing: border-box;
}

html.nozhov-tg-webapp.nozhov-tg-has-bottom-pad #allrecords,
html.nozhov-tg-webapp.nozhov-tg-has-bottom-pad body {
  padding-bottom: var(--nozhov-tg-pad-bottom) !important;
  box-sizing: border-box;
}

/* Only nudge fixed headers when Telegram reports a real top inset */
html.nozhov-tg-webapp.nozhov-tg-has-top-pad .t396__artboard[data-artboard-fixed="true"],
html.nozhov-tg-webapp.nozhov-tg-has-top-pad .t396__artboard_fixed,
html.nozhov-tg-webapp.nozhov-tg-has-top-pad .t450,
html.nozhov-tg-webapp.nozhov-tg-has-top-pad .t282,
html.nozhov-tg-webapp.nozhov-tg-has-top-pad .t178,
html.nozhov-tg-webapp.nozhov-tg-has-top-pad .t-menuburger,
html.nozhov-tg-webapp.nozhov-tg-has-top-pad .t-menuburger__container,
html.nozhov-tg-webapp.nozhov-tg-has-top-pad #tildamenu,
html.nozhov-tg-webapp.nozhov-tg-has-top-pad .t-menu,
html.nozhov-tg-webapp.nozhov-tg-has-top-pad .tmenu-mobile,
html.nozhov-tg-webapp.nozhov-tg-has-top-pad .t-rec_menu {
  top: var(--nozhov-tg-pad-top) !important;
}

html.nozhov-tg-webapp.nozhov-tg-has-bottom-pad .t706__carticon {
  bottom: calc(16px + var(--nozhov-tg-pad-bottom)) !important;
}
