/* UI в стиле shadcn / 21st.dev (20.09.2026): тонкие рамки, мягкие тени, кольцо фокуса, плавные hover, pill-бейджи. Тёмная тема Vulcanico. */
body.ot-dark{--ring:color-mix(in srgb,var(--acc) 45%,transparent);--shadow:0 1px 2px rgba(0,0,0,.5),0 8px 24px -12px rgba(0,0,0,.7);--r:14px;--rs:10px;font-family:Inter,-apple-system,Segoe UI,Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased}
/* поверхности */
body.ot-dark .ot-home2 .box,body.ot-dark .gp,body.ot-dark .reel,body.ot-dark .tabs2,body.ot-dark .b2bcard,body.ot-dark .panel,body.ot-dark .fcard,body.ot-dark .ot-section,body.ot-dark .ot-trust,body.ot-dark ul.products li.product{
  background:color-mix(in srgb,var(--surf) 88%,#fff 0%);border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow);transition:border-color .2s,transform .2s,box-shadow .2s}
body.ot-dark .gp:hover,body.ot-dark .reel:hover,body.ot-dark ul.products li.product:hover,body.ot-dark .fcard:hover{border-color:rgba(255,255,255,.18);transform:translateY(-2px);box-shadow:0 12px 32px -12px rgba(0,0,0,.8)}
/* кнопки */
body.ot-dark .s-btn,body.ot-dark .button,body.ot-dark button[type=submit],body.ot-dark .btn,body.ot-dark .single_add_to_cart_button,body.ot-dark .ot-buy-now,body.ot-dark ul.products li.product .button,body.ot-dark .srch button,body.ot-dark .mhdr button{
  background:var(--acc)!important;color:var(--acc-txt)!important;border:1px solid color-mix(in srgb,var(--acc) 70%,#000)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.4);font-weight:600;transition:filter .15s,transform .15s}
body.ot-dark .s-btn:hover,body.ot-dark .button:hover,body.ot-dark .single_add_to_cart_button:hover,body.ot-dark .srch button:hover{filter:brightness(1.08);transform:translateY(-1px);opacity:1}
body.ot-dark .s-btn:active,body.ot-dark .button:active{transform:translateY(0)}
body.ot-dark .s-btn.ghost,body.ot-dark .btn-o{background:transparent!important;color:var(--txt)!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:none}
/* поля */
body.ot-dark input[type=text],body.ot-dark input[type=search],body.ot-dark input[type=email],body.ot-dark input[type=password],body.ot-dark input[type=number],body.ot-dark select,body.ot-dark textarea,body.ot-dark .qty{
  background:var(--surf2);color:var(--txt);border:1px solid rgba(255,255,255,.12);transition:border-color .15s,box-shadow .15s}
body.ot-dark input:focus,body.ot-dark select:focus,body.ot-dark textarea:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 3px var(--ring)}
body.ot-dark .srch form{border:1px solid rgba(255,255,255,.12);background:var(--surf2);box-shadow:var(--shadow)}
body.ot-dark .srch form:focus-within{border-color:var(--acc);box-shadow:0 0 0 3px var(--ring)}
body.ot-dark .srch input[type=search]:focus{box-shadow:none;border:none}
body.ot-dark .srch select{border:none;border-right:1px solid rgba(255,255,255,.12)}
/* шапка — стекло */
body.ot-dark .cn2{background:color-mix(in srgb,var(--surf) 80%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
body.ot-dark .tb2{border-bottom:1px solid rgba(255,255,255,.06)}
/* бейджи и плашки — pill */
body.ot-dark .reel-tag,body.ot-dark .gp-vid,body.ot-dark .g-off,body.ot-dark .b2b-ind span,body.ot-dark .lcol .chips a,body.ot-dark .tag,body.ot-dark .ot-chip,body.ot-dark .ot-chips a,body.ot-dark .ot-has-video,body.ot-dark .tb2 .n{border-radius:999px!important}
body.ot-dark .b2b-ind span,body.ot-dark .lcol .chips a,body.ot-dark .ot-chip,body.ot-dark .ot-chips a{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);transition:background .15s,border-color .15s}
body.ot-dark .b2b-ind span:hover,body.ot-dark .lcol .chips a:hover,body.ot-dark .ot-chip:hover,body.ot-dark .ot-chips a:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2);color:var(--txt)}
body.ot-dark .ot-chip.is-active,body.ot-dark .ot-chips a.on{background:var(--acc);color:var(--acc-txt);border-color:var(--acc)}
/* вкладки — сегментный контрол */
body.ot-dark .tabs2{padding:6px;gap:4px}
body.ot-dark .tabs2 a{border:none;border-radius:var(--rs);padding:8px 6px;transition:background .15s,color .15s}
body.ot-dark .tabs2 a.on,body.ot-dark .tabs2 a:hover{background:rgba(255,255,255,.08);border-bottom-color:transparent;color:var(--acc)}
/* заголовки секций */
body.ot-dark .ot-home2 .box-h{letter-spacing:-.2px}
body.ot-dark .ot-home2 .box-h em{color:var(--muted)}
body.ot-dark .b2b-h b{background:linear-gradient(90deg,var(--acc),#ffb38a);-webkit-background-clip:text;background-clip:text;color:transparent}
/* сайдбар */
body.ot-dark .lcol .li{border-bottom:1px solid rgba(255,255,255,.06);border-radius:8px;padding:8px 8px;margin:0 -8px}
body.ot-dark .lcol .li:hover{background:rgba(255,255,255,.06);color:var(--txt)}
body.ot-dark .lcol .li span{color:var(--muted)}
/* правые плитки */
body.ot-dark .bs a,body.ot-dark .acc-g a{border-radius:var(--rs);border:1px solid rgba(255,255,255,.06);transition:background .15s,border-color .15s}
body.ot-dark .bs a:hover,body.ot-dark .acc-g a:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:var(--txt)}
body.ot-dark .bs a:hover svg{color:var(--acc)}
body.ot-dark .ava{border-radius:50%;border:1px solid rgba(255,255,255,.1)}
body.ot-dark .rv a{border-radius:var(--rs);border:1px solid rgba(255,255,255,.08)}
/* рилсы */
body.ot-dark .reel-play{background:rgba(0,0,0,.55);color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:50%;backdrop-filter:blur(6px)}
body.ot-dark .reel-dur{border-radius:6px}
/* карточки товаров */
body.ot-dark .gp-heart{background:rgba(0,0,0,.5);color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:50%;backdrop-filter:blur(6px)}
body.ot-dark .gp-nm{font-weight:500}
body.ot-dark .g-price{font-weight:700;letter-spacing:-.2px}
/* каталог Woo и карточка товара */
body.ot-dark ul.products li.product .woocommerce-loop-product__title,body.ot-dark ul.products li.product .price,body.ot-dark div.product .product_title,body.ot-dark div.product p.price,body.ot-dark h1,body.ot-dark h2,body.ot-dark h3{color:var(--txt)}
body.ot-dark .ot-opts .ot-opt{background:var(--surf2);color:var(--txt);border:1px solid rgba(255,255,255,.14);border-radius:var(--rs);transition:border-color .15s,background .15s}
body.ot-dark .ot-opts .ot-opt:hover{border-color:rgba(255,255,255,.3)}
body.ot-dark .ot-opts .ot-opt.on,body.ot-dark .ot-opts .ot-opt.selected{background:var(--acc);color:var(--acc-txt);border-color:var(--acc)}
body.ot-dark .ot-specs ul,body.ot-dark .ot-specs ul li{border-color:rgba(255,255,255,.08)}
body.ot-dark .ot-specs ul li:nth-child(odd){background:rgba(255,255,255,.04)}
body.ot-dark .ot-sticky{background:var(--surf);border-top:1px solid rgba(255,255,255,.1)}
body.ot-dark .flex-control-thumbs img{border:1px solid rgba(255,255,255,.1)}
body.ot-dark .flex-control-thumbs img.flex-active{border-color:var(--acc)}
/* фабрики (ot-core) */
body.ot-dark .ot-card,body.ot-dark .ot-catalog,body.ot-dark .ot-panel,body.ot-dark .ot-box{background:var(--surf);border:1px solid rgba(255,255,255,.08);color:var(--txt);box-shadow:var(--shadow)}
body.ot-dark .ot-card-meta,body.ot-dark .fmeta,body.ot-dark .fdesc,body.ot-dark .clist a,body.ot-dark .side,body.ot-dark .tbar{color:var(--muted)}
body.ot-dark .hero{background:linear-gradient(135deg,var(--surf),var(--surf2));color:var(--txt)}
body.ot-dark .hero p,body.ot-dark .rfq p,body.ot-dark .rfq small{color:var(--muted)}
body.ot-dark .rfq{background:var(--surf);border:1px solid rgba(255,255,255,.08)}
body.ot-dark .feat{background:rgba(255,255,255,.06);color:var(--txt);border-radius:999px}
body.ot-dark .tiles .tile{background:var(--surf);border:1px solid rgba(255,255,255,.08);color:var(--txt)}
body.ot-dark .tiles .tile:hover{border-color:rgba(255,255,255,.18)}
body.ot-dark .fname .fnl{color:var(--txt)}
body.ot-dark .clist a.on{color:var(--acc)}
body.ot-dark .fphoto{background:var(--surf2)}
body.ot-dark a{color:inherit}
/* общее */
body.ot-dark .foot{background:var(--surf);border-top:1px solid rgba(255,255,255,.06)}
body.ot-dark ::selection{background:var(--acc);color:var(--acc-txt)}
body.ot-dark *{scrollbar-color:rgba(255,255,255,.2) transparent}
/* дожим Woo-стилей (они грузятся позже темы) */
body.ot-dark ul.products li.product{background:var(--surf)!important;border:1px solid rgba(255,255,255,.08)!important;color:var(--txt)}
body.ot-dark ul.products li.product .woocommerce-loop-product__title,body.ot-dark ul.products li.product .price,body.ot-dark ul.products li.product .price .amount,
body.ot-dark div.product .product_title,body.ot-dark div.product p.price,body.ot-dark div.product p.price .amount,body.ot-dark div.product .price ins,
body.ot-dark .woocommerce-product-details__short-description,body.ot-dark .product_meta,body.ot-dark .ot-trust b,body.ot-dark .ot-badges>div,body.ot-dark .ot-section,body.ot-dark .ot-section p,body.ot-dark .ot-section li,body.ot-dark .ot-specs h3,
body.ot-dark .woocommerce-loop-category__title,body.ot-dark .page-title,body.ot-dark .woocommerce-result-count,body.ot-dark .variations label,body.ot-dark .woocommerce-variation-price .amount,body.ot-dark .ot-product-video .lbl{color:var(--txt)!important}
body.ot-dark .ot-trust,body.ot-dark .tbar,body.ot-dark .woocommerce-ordering select,body.ot-dark .ot-found,body.ot-dark .found{background:var(--surf)!important;border-color:rgba(255,255,255,.08)!important;color:var(--txt)!important}
body.ot-dark .ot-trust span,body.ot-dark .ot-trust small,body.ot-dark .product_meta a{color:var(--muted)!important}
body.ot-dark .ot-trust svg{color:var(--acc)}
body.ot-dark div.product div.images img{background:var(--surf2)}
body.ot-dark div.product form.cart .button{opacity:1}
body.ot-dark div.product form.cart .button.disabled,body.ot-dark div.product form.cart .button:disabled{opacity:.45;filter:none}
body.ot-dark .quantity .qty{background:var(--surf2)!important;color:var(--txt)!important}
body.ot-dark .woocommerce-ordering select option{background:var(--surf)}
body.ot-dark .ot-catalog-strip,body.ot-dark .ot-found-bar{background:var(--surf)!important}
