/* Оптисалт — токены и shell */

:root {
  --ox-bg: #F6F6F6;
  --ox-side: #FFFFFF;
  --ox-card: #FFFFFF;
  --ox-soft: #F6F6F6;
  --ox-line: #E8E8E8;
  --ox-text: #121212;
  --ox-muted: #6B6B6B;
  --ox-accent: #121212;
  --ox-accent-soft: #FDEBF3;
  --ox-pink: #EB599B;
  --ox-green: #36493B;
  --ox-green-soft: #E8EDE9;
  --ox-shadow: 0 20px 50px rgba(18,18,18,.12);
  --ox-hover: 0 6px 18px rgba(18,18,18,.07), 0 1px 3px rgba(18,18,18,.04);
  --ox-hover-lg: 0 18px 40px rgba(18,18,18,.09), 0 2px 8px rgba(18,18,18,.04);
  --ox-side-w: 264px;
  --ox-edge: 20px;
  --ox-gap: 20px;
  --ox-anchor: 32px;
  --ox-after-banner: 20px;
  --ox-announce-h: 0px;
  --ox-radius: 18px;
  --ox-radius-sm: 14px;
  --ox-radius-xs: 10px;
  --ox-font: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, Helvetica, sans-serif;
  --ox-fs-h1: 34px;
  --ox-fs-h1-m: 26px;
  --ox-fs-h2: 18px;
  --ox-fs-body: 15px;
  --ox-fs-sm: 13px;
  --ox-fs-xs: 12px;
  --ox-lh-tight: 1.15;
  --ox-lh-body: 1.65;
  --ox-fw-reg: 400;
  --ox-fw-med: 500;
  --ox-fw-semi: 600;
  --ox-fw-bold: 700;
  --ox-link-hover-opacity: .65;
  --ox-fast: 160ms;
  --ox-normal: 240ms;
  --ox-ease: cubic-bezier(.22, .8, .3, 1);
}

@media (max-width: 960px) {
  :root {
    --ox-after-banner: 12px;
    --ox-anchor: 80px;
  }
}

html { scroll-padding-top: var(--ox-anchor); }
body,
.t-body,
#allrecords {
  background: var(--ox-bg) !important;
  color: var(--ox-text);
  font-family: var(--ox-font) !important;
  -webkit-font-smoothing: antialiased;
}

.t-text, .t-name, .t-title, .t-descr, .t-heading,
.t-btn, .t-submit, .t-input, .t-select,
.t-store__card__title, .t-form__input,
.ox, .ox *,
.t1291, .t1291 * {
  font-family: var(--ox-font) !important;
}

.t-body { overflow: overlay !important; }
*::-webkit-scrollbar { width: 0; height: 0; background: transparent; }
* { scrollbar-width: none; -ms-overflow-style: none; }

* { -webkit-tap-highlight-color: transparent !important; }
:focus, :focus-visible { outline: none !important; }
button::-moz-focus-inner { border: 0; padding: 0; }

@media (min-width: 961px) {
  #allrecords {
    padding-left: calc(var(--ox-edge) + var(--ox-side-w) + var(--ox-gap)) !important;
    padding-right: var(--ox-edge) !important;
    padding-top: 0 !important;
    padding-bottom: 40px !important;
  }
}
@media (max-width: 960px) {
  #allrecords {
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-top: 56px !important;
    padding-bottom: calc(40px + env(safe-area-inset-bottom)) !important;
  }
}

/*
  T123: в редакторе — 0 отступы блока + 12 колонок.
  Горизонт/фон/паддинги контейнера Тильды гасим — разметка только наша (.ox).
*/
#allrecords .t-rec[data-record-type="131"],
#allrecords .t-rec[data-record-type="131"].r,
#allrecords .t123 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}
#allrecords .t123 .t-container,
#allrecords .t123 .t-container_100,
#allrecords .t123 .t-col,
#allrecords .t123 .t-col_12,
#allrecords .t123 .t-width,
#allrecords .t123 .t-width_100,
#allrecords .t-rec[data-record-type="1291"] .t-container,
#allrecords .t-rec[data-record-type="1291"] .t-col {
  max-width: none !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  float: none !important;
  box-sizing: border-box !important;
}
#allrecords .t123 .t-container:before,
#allrecords .t123 .t-container:after,
#allrecords .t123 .t-col:before,
#allrecords .t123 .t-col:after {
  display: none !important;
  content: none !important;
}
/* ST каталог: без тильдовских pt/pb, фон прозрачный */
#allrecords .t-rec[data-record-type="1291"],
#allrecords .t-rec[data-record-type="1291"].r {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
}

.ox-crumbs {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
  margin: 0 0 20px !important; padding: 0;
  font: 400 13px/1.4 var(--ox-font);
  color: var(--ox-muted);
}
.ox-crumbs a { color: inherit; text-decoration: none; transition: opacity .2s; }
.ox-crumbs a:hover { opacity: var(--ox-link-hover-opacity); }
.ox-crumbs b { font-weight: 600; color: var(--ox-text); }
@media (max-width: 960px) {
  .ox-crumbs {
    margin: 0 0 12px !important; font-size: 12px;
    flex-wrap: nowrap; overflow-x: auto; white-space: nowrap;
    scrollbar-width: none;
  }
}

html.ox-loader-lock,
body.ox-loader-lock {
  overflow: hidden !important;
  overscroll-behavior: none !important;
}
.ox-loader {
  position: fixed; inset: 0; z-index: 2147483000;
  display: grid; place-items: center;
  background: #fff;
  color: var(--ox-text);
  transition: opacity 200ms var(--ox-ease), visibility 200ms linear;
}
.ox-loader.is-leaving { opacity: 0; visibility: hidden; pointer-events: none; }
.ox-loader__inner {
  width: min(280px, calc(100vw - 48px));
  display: grid; gap: 18px; justify-items: center;
}
.ox-loader__logo {
  width: min(200px, 58vw);
  height: auto;
  display: block;
  object-fit: contain;
  filter: none;
  background: transparent;
  border-radius: 0;
  padding: 0;
  box-sizing: border-box;
}
.ox-loader__meta {
  width: 100%;
  display: flex; justify-content: space-between; align-items: center;
  font-size: 11px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase;
  color: var(--ox-muted);
}
.ox-loader__percent { color: var(--ox-text); font-variant-numeric: tabular-nums; }
.ox-loader__track {
  width: 100%; height: 3px; overflow: hidden;
  background: var(--ox-line);
  border-radius: 99px;
}
.ox-loader__bar {
  display: block; width: 100%; height: 100%;
  background: var(--ox-pink);
  transform: scaleX(0); transform-origin: left center;
  border-radius: 99px;
}
.ox-loader__spin {
  width: 28px; height: 28px; border-radius: 50%;
  border: 2px solid var(--ox-line);
  border-top-color: var(--ox-pink);
  animation: ox-spin .75s linear infinite;
}
@keyframes ox-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .ox-loader { transition-duration: .01ms !important; }
  .ox-loader__spin { animation: none; }
}

.ox-lk-layout {
  display: grid;
  grid-template-columns: minmax(240px, .9fr) minmax(0, 1.1fr);
  gap: 16px;
  align-items: start;
  margin-top: var(--ox-after-banner);
}
.ox-lk-intro {
  padding: 28px 28px 32px;
  border: 1px solid var(--ox-line);
  border-radius: var(--ox-radius);
  background: var(--ox-card);
}
.ox-lk-intro h1 {
  margin: 0 0 10px;
  font-size: clamp(26px, 2.4vw, 32px);
  font-weight: 600;
  letter-spacing: -.02em;
  line-height: 1.15;
}
.ox-lk-intro p {
  margin: 0 0 14px;
  font-size: 14.5px;
  line-height: 1.65;
  color: var(--ox-muted);
}
.ox-lk-intro p:last-child { margin-bottom: 0; }
.ox-lk-intro__badge {
  display: inline-flex; align-items: center; gap: 6px;
  margin-bottom: 14px; padding: 6px 10px;
  border-radius: 999px; background: var(--ox-accent-soft);
  color: var(--ox-pink); font-size: 11px; font-weight: 700;
  letter-spacing: .04em; text-transform: uppercase;
}
.ox-lk-forms { display: grid; gap: 16px; }
@media (max-width: 960px) {
  .ox-lk-layout { grid-template-columns: 1fr; }
  .ox-lk-intro { padding: 20px 18px; }
}


/* ——— Анти-оранж Тильды: только фирменные цвета ——— */
a { color: var(--ox-text, #121212); }
a:hover { opacity: var(--ox-link-hover-opacity, .65); }
/* дефолтный оранж Тильды #fa8669 / #ff8562 */
a[style*="#fa8669"], a[style*="#ff8562"], a[style*="#FA8669"], a[style*="#FF8562"] {
  color: var(--ox-pink, #EB599B) !important;
}
.t-text a, .t-descr a, .t-name a, .t-title a,
.t-checkbox__label a, .t-checkbox__textover a,
.tn-atom a, .t-form a, .js-errorbox-all a {
  color: var(--ox-pink, #EB599B) !important;
  text-decoration: none !important;
}
.t-checkbox__control .t-checkbox__indicator,
.t-checkbox__indicator {
  border-color: var(--ox-line, #E8E8E8) !important;
  border-radius: 6px !important;
}
.t-checkbox__control.t-checkbox__control_checked .t-checkbox__indicator,
.t-checkbox__control_checked .t-checkbox__indicator,
input[type="checkbox"]:checked {
  accent-color: #EB599B;
}
.t-checkbox__control_checked .t-checkbox__indicator,
.t-checkbox__indicator_checked {
  background: #EB599B !important;
  border-color: #EB599B !important;
}
