/* Текстовые страницы (экран 9) — вид по макету mockups/text-coxo.html; наполнение страниц как на сайте.
   body.tsg-text (+ -page / -doc / -contacts / -<ярлык>), inc/text.php: крошки .tsg-crumbs, у документа — h1 .tsg-text-h1 и сетка .tsg-text-layout
   (оглавление .tsg-text-aside, текст .tsg-text-body). Страницы WPBakery: заголовок страницы — элемент «Заголовок» WoodMart (h1) внутри содержимого. */

html:has(body.tsg-text){scroll-padding-top:125px}   /* раздел по ссылке оглавления и элемент в фокусе — под шапкой */
html body.tsg-text .main-page-wrapper>.wd-content-layout{max-width:var(--container);padding-top:24px;padding-bottom:var(--section-y);padding-left:var(--gutter);padding-right:var(--gutter)}
html body.tsg-text:not(.tsg-text-catalog) .wd-page-title{display:none}   /* у документа — синяя плашка WoodMart; заголовок и крошки — свои (inc/text.php) */
html body.tsg-text article.entry-content{margin:0;padding:0}

/* ---------- Крошки ---------- */
html body.tsg-text .tsg-crumbs{margin:0!important}   /* у WoodMart поле 20 px снизу: с полем h1 то схлопывалось, то складывалось */
.tsg-crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;margin:0;padding:0;list-style:none;font-family:var(--font);font-size:13px;line-height:1.4;color:var(--fg-muted)}
.tsg-crumbs li{display:inline-flex;align-items:center;gap:6px;margin:0}
.tsg-crumbs li+li::before{content:"";flex:none;width:16px;height:16px;background:currentColor;-webkit-mask:var(--ti-chevron-sm) center/contain no-repeat;mask:var(--ti-chevron-sm) center/contain no-repeat}
.tsg-crumbs a{color:var(--fg-muted);text-decoration:none}
@media (hover:hover){.tsg-crumbs a:hover{color:var(--accent)}}
.tsg-crumbs [aria-current]{color:var(--fg-2)}

/* ---------- Заголовок страницы: h1 документа и «Заголовок» WoodMart (h1) на страницах WPBakery ---------- */
html body.tsg-text .wd-content-area :is(.tsg-text-h1,h1.woodmart-title-container){margin:20px 0 0;font-family:var(--font);font-size:36px!important;font-weight:600!important;line-height:1.15!important;letter-spacing:-.015em;color:var(--fg)!important;text-transform:none;text-wrap:balance;text-align:left}
html body.tsg-text .wd-content-area .title-wrapper:has(h1){margin:0!important;text-align:left}
html body.tsg-text .wd-content-area .title-wrapper:has(h1) .liner-continer{display:block}

/* ---------- Текст: строка ~68 знаков, 16 / 1,6, абзацы через 20 px (решение Air 2026-10-20) ---------- */
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column){max-width:60ch;font-family:var(--font);font-size:16px;line-height:1.6;color:var(--fg-2)}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column)>:first-child{margin-top:0}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) p{margin:0 0 20px;font-size:inherit;line-height:inherit;color:inherit}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) :is(strong,b){color:var(--fg);font-weight:600}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) :is(h2,h3,h4){font-family:var(--font);font-weight:600;color:var(--fg);text-transform:none;letter-spacing:-.01em;text-wrap:balance}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) h2{margin:40px 0 14px!important;font-size:24px;line-height:1.3}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) h3{margin:32px 0 12px!important;font-size:20px;line-height:1.3}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) h4{margin:32px 0 10px;font-size:18px;line-height:1.35}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) :is(ul,ol){display:grid;gap:8px;margin:0 0 16px;padding:0;list-style:none}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) li{position:relative;margin:0;padding-left:28px}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) ul>li::before{content:"";position:absolute;left:8px;top:.68em;width:6px;height:6px;border-radius:50%;background:var(--accent)}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) ol{counter-reset:tsgli}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) ol>li{counter-increment:tsgli}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) ol>li::before{content:counter(tsgli) ".";position:absolute;left:0;top:0;min-width:22px;font-weight:600;color:var(--accent);font-variant-numeric:tabular-nums}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) li>:is(ul,ol){margin:8px 0 0}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) li:empty{display:none}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) li>p{margin:0}   /* абзац внутри пункта — без нижнего поля абзаца */   /* пустой пункт наполнения — без одинокой точки */
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) table{width:100%;margin:0 0 16px;border-collapse:collapse;font-size:15px}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) :is(th,td){padding:10px 12px;border:0;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) th{color:var(--fg);font-weight:600;background:var(--bg-raised)}
html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) img{max-width:100%;height:auto;border-radius:var(--r-md)}
/* заголовки разделов на страницах WPBakery — элемент «Заголовок» WoodMart (не h1): как h2 текста */
html body.tsg-text .wd-content-area .wpb-content-wrapper .title-wrapper:not(:has(h1)){margin:0 0 14px!important;text-align:left}
html body.tsg-text .wd-content-area .wpb-content-wrapper .title-wrapper:not(:has(h1)) .woodmart-title-container{margin:0;font-family:var(--font);font-size:24px!important;font-weight:600!important;line-height:1.3!important;letter-spacing:-.01em;color:var(--fg)!important;text-transform:none;text-wrap:balance}
html body.tsg-text .wd-content-area .wpb-content-wrapper .title-wrapper .title-subtitle{margin:0 0 6px;font-size:13px;color:var(--fg-muted);text-transform:none}

/* ---------- Строки WPBakery: поля и зазоры из токенов, clearfix — не элемент ряда ---------- */
html body.tsg-text .wd-content-area .wpb-content-wrapper{margin-top:0}
html body.tsg-text .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row){margin-top:0!important}   /* у WoodMart на ≤1024 −20 px */
html body.tsg-text .wd-content-area .wpb-content-wrapper>.vc_row{margin-bottom:56px!important}
html body.tsg-text .wd-content-area .wpb-content-wrapper>.vc_row:last-of-type{margin-bottom:0!important}
html body.tsg-text .wd-content-area .wpb-content-wrapper .wd-text-block{margin-bottom:20px!important}
html body.tsg-text .wd-content-area .wpb-content-wrapper :is(.wd-image,.wd-el-video,.wd-images-gallery) img{border-radius:var(--r-lg)}
/* заголовок страницы WPBakery — первым элементом первой строки: под крошками, как в макете */
html body.tsg-text .wd-content-area .wpb-content-wrapper>.vc_row:first-of-type .wpb_wrapper>.title-wrapper:has(h1):first-child{margin-top:0!important;margin-bottom:32px!important}

/* ---------- «Сервис и гарантии»: текст | колонка «фото + форма» (закреплена, если помещается); «Условия гарантии» — под текстом ---------- */
html body.tsg-text-services .wd-content-area .wpb-content-wrapper{display:grid;grid-template-columns:minmax(0,1fr) clamp(320px,28vw,380px);column-gap:clamp(40px,4.5vw,64px);align-items:start}
html body.tsg-text-services .wd-content-area .wpb-content-wrapper>*{grid-column:1;min-width:0}
html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row){display:contents}
html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row>.wpb_column{width:auto;float:none;padding:0;margin:0}
html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row>.wpb_column>.vc_column-inner{padding:0}
html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column:first-child{grid-column:1;grid-row:1}
html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column:last-child{grid-column:2;grid-row:1/span 3;position:sticky;top:var(--sticky-top);align-self:start;margin-top:calc(20px + 36px*1.15 + 32px)!important}   /* h1 + его поле: фото на уровне первого абзаца */
html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column:last-child.is-tall{position:static}
html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row){grid-column:1;grid-row:2;margin:24px 0 0!important}
html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row::before,html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row::after,html body.tsg-text-services .wd-content-area .wpb-content-wrapper .wpb_wrapper::before,html body.tsg-text-services .wd-content-area .wpb-content-wrapper .wpb_wrapper::after{display:none!important}
html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column:first-child .wpb_wrapper{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;max-width:60ch;font-size:16px}
html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column:first-child .wpb_wrapper>*{grid-column:1/-1}
html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column:first-child .wpb_wrapper>.info-box-wrapper{grid-column:auto;margin:12px 0 0}
html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column:last-child .wpb_wrapper{display:grid;gap:20px}
/* блоки «Гарантия 12 месяцев», «Сервисная поддержка» (Info box WPBakery): значок Tabler вместо картинки 64 × 64, рамка */
html body.tsg-text .wd-content-area .wd-info-box{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;height:100%;margin:0!important;padding:20px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg)}
html body.tsg-text .wd-content-area .wd-info-box .box-icon-wrapper{width:28px!important;min-width:28px;max-width:none!important;margin:0}
html body.tsg-text .wd-content-area .wd-info-box .info-box-icon{display:block;width:28px!important;max-width:none!important;height:28px;margin:0;background:var(--accent);-webkit-mask:var(--ti-shield-check-28) center/contain no-repeat;mask:var(--ti-shield-check-28) center/contain no-repeat}
html body.tsg-text .wd-content-area .info-box-wrapper+.info-box-wrapper .wd-info-box .info-box-icon{-webkit-mask-image:var(--ti-headset-28);mask-image:var(--ti-headset-28)}
html body.tsg-text .wd-content-area .wd-info-box .info-box-icon img{display:none}
html body.tsg-text .wd-content-area .wd-info-box .info-box-title{margin:2px 0 6px;font-family:var(--font);font-size:17px!important;font-weight:600;line-height:1.35;color:var(--fg);text-transform:none;letter-spacing:0}
html body.tsg-text .wd-content-area .wd-info-box .info-box-inner{font-family:var(--font);font-size:15px;line-height:1.5;color:var(--fg-2)}
html body.tsg-text .wd-content-area .wd-info-box .info-box-inner p{margin:0}
/* фото страницы */
html body.tsg-text-services .wd-content-area .wd-images-gallery{margin:0!important}
html body.tsg-text-services .wd-content-area .wd-images-gallery .wd-grid-g{display:block;margin:0}
html body.tsg-text-services .wd-content-area .wd-images-gallery .wd-gallery-item{width:100%;max-width:none;padding:0;margin:0}
html body.tsg-text-services .wd-content-area .wd-images-gallery img{display:block;width:100%;aspect-ratio:4/3;max-height:70vh;object-fit:cover;border-radius:var(--r-lg);background:var(--bg-raised)}
/* форма обращения (CF7 сайта) — карточкой: заголовок и подпись (inc/text.php), поля 52 px, кнопка — основная */
html body.tsg-text .wd-content-area .wd-cf7{display:grid;gap:12px;margin:0!important;padding:24px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg);font-family:var(--font)}
html body.tsg-text .wd-content-area .tsg-form-head h2{margin:0;font-family:var(--font);font-size:20px;font-weight:600;line-height:1.25;letter-spacing:-.01em;color:var(--fg);text-transform:none}
html body.tsg-text .wd-content-area .tsg-form-head p{margin:4px 0 0;font-size:14px;line-height:1.5;color:var(--fg-2)}
html body.tsg-text .wd-content-area .wd-cf7 form p{margin:0 0 12px}
html body.tsg-text .wd-content-area .wd-cf7 form p:last-of-type{margin:0}
html body.tsg-text .wd-content-area .wd-cf7 form label>br{display:none}
html body.tsg-text .wd-content-area .wd-cf7 .wpcf7-form-control-wrap{display:block}
html body.tsg-text .wd-content-area .wd-cf7 :is(input.wpcf7-text,input.wpcf7-email,textarea){width:100%;height:52px;min-height:0;margin:0;padding:0 16px;border:1px solid var(--border-field);border-radius:var(--r-md);background:var(--bg);box-shadow:none;font-family:var(--font);font-size:15px;line-height:1.4;color:var(--fg)}
html body.tsg-text .wd-content-area .wd-cf7 textarea.wpcf7-textarea{height:120px;padding:12px 16px;line-height:1.5;resize:vertical}
html body.tsg-text .wd-content-area .wd-cf7 :is(input,textarea)::placeholder{color:var(--fg-muted);opacity:1}
html body.tsg-text .wd-content-area .wd-cf7 :is(input.wpcf7-text,input.wpcf7-email,textarea):focus{outline:2px solid var(--accent)!important;outline-offset:-1px!important;border-color:var(--accent)}
html body.tsg-text .wd-content-area .wd-cf7 :is(input,textarea)[aria-invalid="true"]{border-color:var(--error);background:var(--error-soft)}
html body.tsg-text .wd-content-area .wd-cf7 .wpcf7-not-valid-tip{margin:6px 0 0;font-size:13px;line-height:1.4;color:var(--error)}
html body.tsg-text .wd-content-area .wd-cf7 .wpcf7-not-valid-tip::before{content:"";display:inline-block;width:14px;height:14px;margin-right:6px;vertical-align:-2px;background:currentColor;-webkit-mask:var(--ti-alert) center/contain no-repeat;mask:var(--ti-alert) center/contain no-repeat}
html body.tsg-text .wd-content-area .wd-cf7 :is(input,textarea)[aria-invalid="true"]:focus{outline-color:var(--error)!important;border-color:var(--error)}
html body.tsg-text .wd-content-area .wd-cf7 input.wpcf7-submit{width:100%;height:52px;min-height:0;margin:0;padding:0 22px;border:0;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-fg);box-shadow:none;font-family:var(--font);font-size:15px;font-weight:500;text-transform:none;letter-spacing:0;cursor:pointer;transition:background var(--t)}
@media (hover:hover){html body.tsg-text .wd-content-area .wd-cf7 input.wpcf7-submit:hover{background:var(--accent-hover)}}
html body.tsg-text .wd-content-area .wd-cf7 .wpcf7-spinner{display:none}
html body.tsg-text .wd-content-area .wd-cf7 .wpcf7-response-output{margin:12px 0 0!important;padding:10px 14px!important;border:0!important;border-radius:var(--r-md);background:var(--bg-raised);font-size:14px;color:var(--fg-2)}
html body.tsg-text .wd-content-area .wd-cf7 .wpcf7-response-output:empty{display:none}
html body.tsg-text .wd-content-area .wd-cf7 form.invalid .wpcf7-response-output{background:var(--error-soft);color:var(--error)}

/* ---------- «Контакты», вариант А (решение Air 2026-10-20): офисы | форма «Перезвоните мне»; мессенджеры; карта страницы; фото про склады.
   Сетка — на статье: строки и колонки WPBakery растворены (display:contents), элементы — по областям; разметка страницы не меняется ---------- */
html body.tsg-text-contacts .wd-content-area article.entry-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);column-gap:48px;grid-template-areas:"crumbs crumbs" "title title" "offices form" "social form" "map map" "photo photo";grid-template-rows:auto auto auto 1fr auto auto;align-items:start}
html body.tsg-text-contacts .wd-content-area article.entry-content>.tsg-crumbs{grid-area:crumbs}
html body.tsg-text-contacts .wd-content-area article.entry-content>.tsg-ct-tiles{display:none}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper,html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row),html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column,html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column>.vc_column-inner,html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column>.vc_column-inner>.wpb_wrapper,html body.tsg-text-contacts .wd-content-area article.entry-content>.tsg-lead-sec{display:contents}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>:not(.vc_row){display:none}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row::before,html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row::after{display:none!important}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row) .title-wrapper:has(h1){grid-area:title;margin:0 0 32px!important}
html body.tsg-text-contacts .wd-content-area article.entry-content .wpb_raw_code{grid-area:map;margin:48px 0 0!important}
html body.tsg-text-contacts .wd-content-area article.entry-content .wpb_raw_code iframe{display:block;width:100%;height:440px;border:0;border-radius:var(--r-xl);background:var(--bg-raised)}
/* офисы — две колонки с разделителем; карточки WPBakery без своей рамки и подложки */
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row){grid-area:offices;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:0!important;padding:0!important}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row)>.wpb_column{width:auto;float:none;margin:0!important;padding:0!important}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row)>.wpb_column+.wpb_column{padding-left:32px!important;border-left:1px solid var(--border)}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) :is(.vc_column-inner,.vc_row.vc_inner,.wpb_wrapper){margin:0!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .vc_row.vc_inner::before,html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .vc_row.vc_inner::after{display:none!important}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .vc_row.vc_inner>.wpb_column{width:auto;float:none}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .wpb_wrapper .wpb_wrapper{display:grid;gap:12px;align-content:start}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .title-wrapper{margin:0!important}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .title-wrapper .woodmart-title-container.wd-fontsize-l{font-size:28px!important;line-height:1.2!important;letter-spacing:-.015em}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .title-after_title{display:flex;align-items:flex-start;gap:10px;margin:12px 0 0;font-family:var(--font);font-size:16px;line-height:1.5;color:var(--fg-2)}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .title-after_title::before{content:"";flex:none;width:20px;height:20px;margin-top:2px;background:var(--fg-muted);-webkit-mask:var(--ti-map-pin) center/contain no-repeat;mask:var(--ti-map-pin) center/contain no-repeat}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .wd-list{display:grid;gap:0;margin:4px 0 0!important;padding:0;list-style:none}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .wd-list li{display:block;margin:0;padding:0}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .wd-list li::before{display:none}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .wd-list .list-icon{display:none}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .wd-list a{display:inline-block;padding:6px 0;font-family:var(--font);font-size:30px;font-weight:700;line-height:1.2;letter-spacing:-.01em;color:var(--fg);text-decoration:none;font-variant-numeric:tabular-nums}   /* телефоны — крупно, цель касания ≥ 44 px */
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .wd-list a[href^="mailto:"]{display:inline-flex;align-items:center;gap:10px;margin-top:8px;font-size:16px;font-weight:400;letter-spacing:0;color:var(--fg)}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .wd-list a[href^="mailto:"]::before{content:"";flex:none;width:20px;height:20px;background:var(--fg-muted);-webkit-mask:var(--ti-mail) center/contain no-repeat;mask:var(--ti-mail) center/contain no-repeat}
@media (hover:hover){html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .wd-list a:hover{color:var(--accent)}}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .title-wrapper .woodmart-title-container.wd-fontsize-m{display:inline-flex;align-items:center;gap:10px;margin-top:4px;font-size:16px!important;font-weight:400!important;line-height:1.5!important;letter-spacing:0;color:var(--fg-2)!important}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .title-wrapper .woodmart-title-container.wd-fontsize-m::before{content:"";flex:none;width:20px;height:20px;background:var(--fg-muted);-webkit-mask:var(--ti-clock) center/contain no-repeat;mask:var(--ti-clock) center/contain no-repeat}
html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .wd-text-block{max-width:none;margin:-8px 0 0 30px!important;white-space:nowrap;font-size:16px;color:var(--fg)}
/* мессенджеры — кнопки-«пилюли» (ссылки подвала) */
html body.tsg-text-contacts .wd-content-area article.entry-content>.tsg-ct-social{grid-area:social;margin-top:28px;padding-top:24px;border-top:1px solid var(--border)}
html body.tsg-text-contacts .wd-content-area article.entry-content>.tsg-ct-social .tsg-f-social{display:flex;flex-wrap:wrap;gap:8px;margin:0}
html body.tsg-text-contacts .wd-content-area article.entry-content>.tsg-ct-social a{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 18px;border:1px solid var(--border-strong);border-radius:var(--r-pill);background:var(--bg);font-family:var(--font);font-size:15px;font-weight:500;color:var(--fg);text-decoration:none}
html body.tsg-text-contacts .wd-content-area article.entry-content>.tsg-ct-social a svg{width:18px;height:18px}
@media (hover:hover){html body.tsg-text-contacts .wd-content-area article.entry-content>.tsg-ct-social a:hover{border-color:var(--accent);color:var(--accent)}}
/* форма «Перезвоните мне» и фото про склады — блок с главной, разнесённый по областям */
html body.tsg-text-contacts .wd-content-area article.entry-content .tsg-lead-card{grid-area:form;margin:0;padding:32px;border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:none}
html body.tsg-text-contacts .wd-content-area article.entry-content .tsg-lead-media{grid-area:photo;min-height:320px;margin:32px 0 0;border-radius:var(--r-xl);overflow:hidden}
/* на «Контактах» карточка контактов в подвале скрыта — она здесь, на странице (решение Air 2026-10-20) */
html body.tsg-text-contacts .tsg-f-contacts{display:none}

/* ---------- «Акции»: своя вёрстка страницы (.coxo-promotions — «Текстовый блок»): заголовок — как у шаблона, карточки — в системе (рамка, фото 16:9) ---------- */
html body.tsg-text .wd-content-area .wpb_text_column:has(.coxo-promotions){max-width:none}
html body.tsg-text .wd-content-area .coxo-promotions{padding-top:0!important}
html body.tsg-text .wd-content-area .coxo-promotions>h1{margin:20px 0 16px;font-family:var(--font);font-size:36px;font-weight:600;line-height:1.15;letter-spacing:-.015em;color:var(--fg);text-transform:none;text-wrap:balance}
html body.tsg-text .wd-content-area .coxo-promotions>p{max-width:60ch}
html body.tsg-text .wd-content-area .coxo-promotions>h2{max-width:60ch}
html body.tsg-text .wd-content-area .coxo-promotions .coxo-offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:32px 0 48px;padding:0}
html body.tsg-text .wd-content-area .coxo-promotions .coxo-offer-card{display:flex;flex-direction:column;min-width:0;margin:0;padding:0;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg);overflow:hidden}
html body.tsg-text .wd-content-area .coxo-promotions .coxo-offer-card>p:empty{display:none}
html body.tsg-text .wd-content-area .coxo-promotions .coxo-offer-img{display:block;margin:0;aspect-ratio:16/9;background:var(--bg-raised);overflow:hidden}
html body.tsg-text .wd-content-area .coxo-promotions .coxo-offer-img img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0;transition:transform var(--t)}
@media (hover:hover){html body.tsg-text .wd-content-area .coxo-promotions .coxo-offer-card:hover .coxo-offer-img img{transform:scale(1.03)}}
html body.tsg-text .wd-content-area .coxo-promotions .coxo-offer-copy{display:flex;flex-direction:column;flex:1;gap:8px;padding:20px}
html body.tsg-text .wd-content-area .coxo-promotions .coxo-offer-copy h2{margin:0!important;font-size:18px;line-height:1.35;letter-spacing:-.01em}
html body.tsg-text .wd-content-area .coxo-promotions .coxo-offer-copy p{margin:0;font-size:15px;line-height:1.5}
html body.tsg-text .wd-content-area .coxo-promotions .coxo-offer-copy p:last-child{margin-top:auto;padding-top:8px}
html body.tsg-text .wd-content-area .coxo-promotions a.coxo-offer-link{font-weight:500}

/* ---------- Документ: текст | оглавление 320–380 px, закреплено, если помещается (text.js) ---------- */
html body.tsg-text .wd-content-area .tsg-text-layout{display:grid;grid-template-columns:minmax(0,1fr) clamp(320px,28vw,380px);gap:clamp(40px,4.5vw,64px);align-items:start;margin-top:32px}
.tsg-text-layout.is-doc>.tsg-text-aside{grid-column:2;grid-row:1}
.tsg-text-layout.is-doc>.tsg-text-body{grid-column:1;grid-row:1;min-width:0}
.tsg-text-aside{position:sticky;top:var(--sticky-top);display:grid;gap:20px}
.tsg-text-aside.is-tall{position:static}
.tsg-toc{padding:20px 20px 12px;border:1px solid var(--border);border-radius:var(--r-lg);max-height:calc(100vh - var(--sticky-top) - 24px);overflow:auto;font-family:var(--font)}
.tsg-toc summary{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:var(--fg);list-style:none;cursor:default;border-radius:var(--r-sm)}
.tsg-toc summary::-webkit-details-marker{display:none}
.tsg-toc summary::after{content:"";display:none;width:16px;height:16px;margin-left:auto;background:var(--fg-muted);-webkit-mask:var(--ti-chevron-down-16) center/contain no-repeat;mask:var(--ti-chevron-down-16) center/contain no-repeat;transition:transform var(--t)}
.tsg-toc-ic{flex:none;width:20px;height:20px;background:var(--fg-muted);-webkit-mask:var(--ti-list) center/contain no-repeat;mask:var(--ti-list) center/contain no-repeat}
.tsg-toc ol{margin:12px 0 0;padding:0;list-style:none;counter-reset:toc}
.tsg-toc li{margin:0;padding:0;counter-increment:toc}
.tsg-toc li::before{display:none}
.tsg-toc a{display:grid;grid-template-columns:28px minmax(0,1fr);padding:7px 10px 7px 0;border-radius:var(--r-sm);font-size:14px;line-height:1.4;color:var(--fg-2);text-decoration:none}
.tsg-toc a::before{content:counter(toc) ".";color:var(--fg-muted);font-variant-numeric:tabular-nums}
@media (hover:hover){.tsg-toc a:hover{color:var(--accent)}}
.tsg-toc a[aria-current="true"]{color:var(--accent);font-weight:600}
.tsg-toc a[aria-current="true"]::before{color:var(--accent)}
.tsg-toc li.is-extra{counter-increment:none}
.tsg-toc li.is-extra a::before{content:""}

/* ---------- Адаптив ---------- */
@media (max-width:1023px){html:has(body.tsg-text){scroll-padding-top:89px;scroll-padding-bottom:88px}}   /* и над нижней панелью */
@media (max-width:899px){
  html body.tsg-text .wd-content-area .tsg-text-layout{grid-template-columns:minmax(0,1fr);gap:32px}
  .tsg-text-layout.is-doc>:is(.tsg-text-aside,.tsg-text-body){grid-column:auto;grid-row:auto}   /* оглавление над текстом, свёрнуто (text.js) */
  .tsg-text-aside{position:static}
  .tsg-toc{max-height:none;padding:14px 16px}
  .tsg-toc summary{min-height:24px;cursor:pointer}
  .tsg-toc summary::after{display:block}
  html body.tsg-text-services .wd-content-area .wpb-content-wrapper{grid-template-columns:minmax(0,1fr)}
  html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column:last-child{grid-column:1;grid-row:3;position:static;margin-top:32px!important}
  html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column:last-child .wpb_wrapper{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
  html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row){grid-row:2}
  html body.tsg-text-services .wd-content-area .wd-images-gallery img{aspect-ratio:16/9}
  .tsg-toc details[open] summary::after{transform:rotate(180deg)}
}
@media (max-width:767px){
  html body.tsg-text .main-page-wrapper>.wd-content-layout{padding-top:16px;padding-left:16px;padding-right:16px}
  html body.tsg-text .wd-content-area :is(.tsg-text-h1,h1.woodmart-title-container){margin-top:16px;font-size:26px!important}
  html body.tsg-text .wd-content-area .tsg-text-layout{margin-top:20px}
  html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) h2{margin-top:32px!important;font-size:21px}
  html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) :is(h3,h4){font-size:18px}
  html body.tsg-text .wd-content-area .wpb-content-wrapper .title-wrapper:not(:has(h1)) .woodmart-title-container{font-size:21px!important}
  html body.tsg-text .wd-content-area :is(.tsg-text-body,.wd-text-block,.wpb_text_column) table{display:block;overflow-x:auto}   /* широкая таблица прокручивается сама */
  html body.tsg-text .wd-content-area .wpb-content-wrapper>.vc_row{margin-bottom:40px!important}
  html body.tsg-text .wd-content-area .wpb-content-wrapper>.vc_row:first-of-type .wpb_wrapper>.title-wrapper:has(h1):first-child{margin-top:0!important;margin-bottom:20px!important}
  html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column:first-child .wpb_wrapper{grid-template-columns:minmax(0,1fr)}
  html body.tsg-text-services .wd-content-area .info-box-wrapper+.info-box-wrapper{margin-top:8px!important}
  html body.tsg-text-services .wd-content-area .wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row)>.wpb_column:last-child .wpb_wrapper{grid-template-columns:minmax(0,1fr)}
  html body.tsg-text .wd-content-area .wd-info-box,html body.tsg-text .wd-content-area .wd-cf7{padding:16px}
  html body.tsg-text .wd-content-area .wd-cf7 :is(input.wpcf7-text,input.wpcf7-email,textarea){font-size:16px}
}

@media (max-width:1100px){
  html body.tsg-text-contacts .wd-content-area article.entry-content{grid-template-columns:minmax(0,1fr) minmax(0,400px);column-gap:32px}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row){grid-template-columns:minmax(0,1fr)}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row)>.wpb_column+.wpb_column{padding:24px 0 0!important;border-left:0;border-top:1px solid var(--border)}
}
@media (max-width:899px){
  html body.tsg-text-contacts .wd-content-area article.entry-content{grid-template-columns:minmax(0,1fr);grid-template-areas:"crumbs" "title" "offices" "social" "form" "map" "photo"}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row){grid-template-columns:repeat(2,minmax(0,1fr))}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row)>.wpb_column+.wpb_column{padding:0 0 0 24px!important;border-top:0;border-left:1px solid var(--border)}
  html body.tsg-text-contacts .wd-content-area article.entry-content .tsg-lead-card{margin-top:32px}
}
@media (max-width:767px){
  html body.tsg-text-contacts .wd-content-area article.entry-content{grid-template-areas:"crumbs" "title" "tiles" "offices" "social" "form" "map" "photo"}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(1 of .vc_row) .title-wrapper:has(h1){margin-bottom:20px!important}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.tsg-ct-tiles{grid-area:tiles;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 24px;padding:0;list-style:none}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.tsg-ct-tiles>li{margin:0;padding:0}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.tsg-ct-tiles>li::before{display:none}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.tsg-ct-tiles>li:nth-child(-n+2){grid-column:1/-1}
  .tsg-ct-tile{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:14px;align-items:center;height:100%;padding:14px 16px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--bg);color:var(--fg);text-decoration:none;font-family:var(--font)}
  .tsg-ct-tiles>li:nth-child(n+3) .tsg-ct-tile{grid-template-columns:minmax(0,1fr)}
  .tsg-ct-ic{grid-row:span 2;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--accent-soft);color:var(--accent)}
  .tsg-ct-tiles>li:nth-child(n+3) .tsg-ct-ic{grid-row:auto;margin-bottom:8px}
  .tsg-ct-ic svg{width:20px;height:20px}
  .tsg-ct-tile small{font-size:13px;color:var(--fg-muted)}
  .tsg-ct-tile b{font-size:16px;font-weight:600;overflow-wrap:anywhere}
  @media (hover:hover){.tsg-ct-tile:hover{border-color:var(--accent);box-shadow:var(--shadow)}.tsg-ct-tile:hover .tsg-ct-ic{background:var(--accent);color:var(--accent-fg)}}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row){grid-template-columns:minmax(0,1fr);gap:20px}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row)>.wpb_column+.wpb_column{padding:20px 0 0!important;border-left:0;border-top:1px solid var(--border)}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .title-wrapper .woodmart-title-container.wd-fontsize-l{font-size:22px!important}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .wd-list a{padding:8px 0;font-size:24px}
  html body.tsg-text-contacts .wd-content-area article.entry-content>.wpb-content-wrapper>.vc_row:nth-child(2 of .vc_row) .wd-list a[href^="mailto:"]{display:none}   /* почта и мессенджеры на телефоне — в плитках сверху */
  html body.tsg-text-contacts .wd-content-area article.entry-content>.tsg-ct-social{display:none}
  html body.tsg-text-contacts .wd-content-area article.entry-content .tsg-lead-card{padding:20px;border-radius:var(--r-lg)}
  html body.tsg-text-contacts .wd-content-area article.entry-content .tsg-lead-card .lm-title{font-size:22px}
  html body.tsg-text-contacts .wd-content-area article.entry-content .wpb_raw_code{margin-top:32px!important}
  html body.tsg-text-contacts .wd-content-area article.entry-content .wpb_raw_code iframe{height:360px;border-radius:var(--r-lg)}
  html body.tsg-text-contacts .wd-content-area article.entry-content .tsg-lead-media{min-height:260px;border-radius:var(--r-lg)}
}
@media (max-width:1023px){html body.tsg-text .wd-content-area .coxo-promotions .coxo-offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){html body.tsg-text .wd-content-area .coxo-promotions .coxo-offer-grid{grid-template-columns:minmax(0,1fr);gap:16px;margin:24px 0 40px}}
@media (max-width:767px){html body.tsg-text .wd-content-area .coxo-promotions>h1{margin-top:16px;font-size:26px}html body.tsg-text .wd-content-area .coxo-promotions .coxo-offer-copy{padding:16px}}
html body.tsg-text .wd-content-area .coxo-promotions>:not(.coxo-offer-grid){margin-left:0!important;margin-right:0!important;text-align:left}   /* «Другие предложения» — по краю текста, как всё на странице */

/* В5: кольцо фокуса внутри — у видео и фото акций (обрезка overflow) */
html body.tsg-text .wd-content-area .coxo-offer-img:focus-visible{outline-offset:-3px!important}
html body.tsg-text .wd-content-area .wd-el-video :is(a,button):focus-visible{outline:0!important}   /* на тёмном кадре кольца не видно — кольцо снаружи, на обёртке */
html body.tsg-text .wd-content-area .wd-el-video:has(:is(a,button):focus-visible){outline:2px solid var(--accent);outline-offset:2px}
/* М9: цитата — в шкале кеглей; кадр видео со скруглением целиком (затемнение кнопки — внутри) */
html body.tsg-text .wd-content-area :is(.wd-text-block,.wpb_text_column) blockquote{margin:0 0 20px;padding:0 0 0 20px;border-left:2px solid var(--accent);font-size:18px;line-height:1.5;color:var(--fg);font-style:normal}
html body.tsg-text .wd-content-area :is(.wd-text-block,.wpb_text_column) blockquote p{font-size:inherit;margin:0}
html body.tsg-text .wd-content-area .wd-el-video{border-radius:var(--r-lg);overflow:hidden}
/* М8: «Другие предложения» на «Акциях» — текст шаблона */
html body.tsg-text .wd-content-area .coxo-promotions .coxo-editorial p{font-size:16px;line-height:1.6;color:var(--fg-2)}
/* М11: фото «Оплаты и доставки» — не выше окна ноутбука */
html body.tsg-text-payment-and-delivery .wd-content-area .wd-image img{width:100%;max-height:60vh;object-fit:cover}
/* М10: на ≤899 страницы WPBakery — в одну колонку (строка текста не уже ~60 знаков) */
@media (max-width:899px){html body.tsg-text-page:not(.tsg-text-services) .wd-content-area .wpb-content-wrapper .vc_row>.wpb_column{width:100%}}
html body.tsg-text .wd-content-area .tsg-text-body>:is(h2,h3):first-child,html body.tsg-text .wd-content-area .tsg-text-body>:first-child>:is(h2,h3):first-child{margin-top:0!important}   /* документ с раздела — без поля над ним */
html body.tsg-text-contacts .wd-content-area .wpb_raw_code:focus-within{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-xl)}   /* фокус в карте (iframe) — кольцо вокруг неё */

/* ---------- «Все категории» (/catalog/, шаблон плагина сайта coxo-catalog-page): заголовок и крошки WoodMart — в виде шаблона, сетка разделов — в системе ---------- */
html body.tsg-text-catalog .wd-page-title{margin:0;padding:24px 0 0;background:none!important;min-height:0}
html body.tsg-text-catalog .wd-page-title-bg{display:none}
html body.tsg-text-catalog .wd-page-title>.container{display:flex;flex-direction:column;align-items:flex-start;max-width:var(--container);margin:0 auto;padding:0 var(--gutter);text-align:left}
html body.tsg-text-catalog .wd-page-title .wd-breadcrumbs{order:-1;display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;margin:0;font-family:var(--font);font-size:13px;line-height:1.4;color:var(--fg-muted)}
html body.tsg-text-catalog .wd-page-title .wd-breadcrumbs a{color:var(--fg-muted);text-decoration:none}
@media (hover:hover){html body.tsg-text-catalog .wd-page-title .wd-breadcrumbs a:hover{color:var(--accent)}}
html body.tsg-text-catalog .wd-page-title .wd-breadcrumbs .wd-delimiter{display:inline-block;width:16px;height:16px;margin:0;background:var(--fg-muted);-webkit-mask:var(--ti-chevron-sm) center/contain no-repeat;mask:var(--ti-chevron-sm) center/contain no-repeat;font-size:0}
html body.tsg-text-catalog .wd-page-title .wd-breadcrumbs .wd-delimiter::before,html body.tsg-text-catalog .wd-page-title .wd-breadcrumbs .wd-delimiter::after{display:none}
html body.tsg-text-catalog .wd-page-title .wd-breadcrumbs .wd-last{color:var(--fg-2);font-weight:400}
html body.tsg-text-catalog .wd-page-title h1.entry-title{margin:20px 0 0;font-family:var(--font);font-size:36px;font-weight:600;line-height:1.15;letter-spacing:-.015em;color:var(--fg);text-transform:none;text-align:left}
html body.tsg-text-catalog .main-page-wrapper>.wd-content-layout{padding-top:32px}
html body.tsg-text-catalog .coxo-catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 32px;margin:0}
html body.tsg-text-catalog .coxo-catalog__item{display:grid;gap:10px;align-content:start;min-width:0;margin:0;padding:0}
html body.tsg-text-catalog .coxo-catalog__title{font-family:var(--font);font-size:18px;font-weight:600;line-height:1.3;letter-spacing:-.01em;color:var(--fg);text-decoration:none}
html body.tsg-text-catalog .coxo-catalog__subs{display:grid;gap:4px;margin:0;padding:0;list-style:none}
html body.tsg-text-catalog .coxo-catalog__sub{margin:0;padding:0}
html body.tsg-text-catalog .coxo-catalog__sub::before{display:none}
html body.tsg-text-catalog .coxo-catalog__sub a{display:inline-block;padding:4px 0;font-family:var(--font);font-size:15px;line-height:1.4;color:var(--fg-2);text-decoration:none}
@media (hover:hover){html body.tsg-text-catalog :is(.coxo-catalog__title,.coxo-catalog__sub a):hover{color:var(--accent)}}
html body.tsg-text-catalog .coxo-catalog__more{justify-self:start;margin:0;padding:4px 0;border:0;background:none;font-family:var(--font);font-size:14px;font-weight:500;color:var(--accent);text-transform:none;cursor:pointer}
@media (max-width:1100px){html body.tsg-text-catalog .coxo-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:899px){html body.tsg-text-catalog .coxo-catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px}}
@media (max-width:767px){
  html body.tsg-text-catalog .wd-page-title{padding-top:16px}
  html body.tsg-text-catalog .wd-page-title>.container{padding:0 16px}
  html body.tsg-text-catalog .wd-page-title h1.entry-title{margin-top:16px;font-size:26px}
  html body.tsg-text-catalog .main-page-wrapper>.wd-content-layout{padding-top:24px}
}
@media (max-width:559px){html body.tsg-text-catalog .coxo-catalog{grid-template-columns:minmax(0,1fr);gap:24px}}

/* ---------- Вход, регистрация, сброс пароля («Мой аккаунт» для гостя; согласовано Air 2026-10-29) — разметка WooCommerce / WoodMart как есть, вид — по системе:
   две карточки «Вход | Регистрация» (переключение — WoodMart), поля и кнопки — как в форме оформления ---------- */
html body.tsg-text-account .wd-content-area .woocommerce{margin-top:32px}
html body.tsg-text-account .wd-content-area .wd-registration-page{max-width:960px;margin:0;padding:0}
html body.tsg-text-account .wd-content-area .wd-registration-page .wd-grid-f-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0;align-items:stretch}
html body.tsg-text-account .wd-content-area .wd-registration-page .wd-col{display:flex;flex-direction:column;gap:16px;width:auto;max-width:none;margin:0;padding:28px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg);text-align:left}
html body.tsg-text-account .wd-content-area .wd-registration-page .wd-col[style*="display: none"],html body.tsg-text-account .wd-content-area .wd-registration-page .wd-col:empty{display:none!important}
html body.tsg-text-account .wd-content-area .wd-register-tabs:not(.active-register) .col-register,html body.tsg-text-account .wd-content-area .wd-register-tabs.active-register .col-login{display:none!important}   /* переключение «Вход ↔ Регистрация» — класс WoodMart active-register */
/* в режиме регистрации — одна карточка с формой и под ней «Вход» (заголовок и текст про регистрацию справа повторяли бы форму) */
html body.tsg-text-account .wd-content-area .wd-register-tabs.active-register .wd-grid-f-col{grid-template-columns:minmax(0,468px)}
html body.tsg-text-account .wd-content-area .wd-register-tabs.active-register .col-register-text{padding:0;border:0;background:none}
html body.tsg-text-account .wd-content-area .wd-register-tabs.active-register .col-register-text :is(.wd-login-title,.registration-info){display:none}
html body.tsg-text-account .wd-content-area .wd-login-title{margin:0;font-family:var(--font);font-size:22px;font-weight:600;line-height:1.25;letter-spacing:-.015em;color:var(--fg);text-transform:none;text-align:left}
html body.tsg-text-account .wd-content-area .wd-login-divider{display:none}
html body.tsg-text-account .wd-content-area .registration-info{font-family:var(--font);font-size:15px;line-height:1.55;color:var(--fg-2);text-align:left}
html body.tsg-text-account .wd-content-area .wd-registration-page form{display:grid;gap:16px;margin:0;padding:0;border:0}
html body.tsg-text-account .wd-content-area .wd-registration-page form>p{margin:0;font-family:var(--font);font-size:14px;line-height:1.5;color:var(--fg-2)}
html body.tsg-text-account .wd-content-area :is(.wd-registration-page,.lost_reset_password) .form-row{display:grid;gap:6px;width:auto;float:none;margin:0;padding:0}
html body.tsg-text-account .wd-content-area :is(.wd-registration-page,.lost_reset_password) .form-row>label{margin:0;font-family:var(--font);font-size:13px;font-weight:500;line-height:1.5;color:var(--fg-2);text-transform:none}
html body.tsg-text-account .wd-content-area :is(.wd-registration-page,.lost_reset_password) .required{font-size:inherit;color:var(--error);text-decoration:none;border:0}
html body.tsg-text-account .wd-content-area :is(.wd-registration-page,.lost_reset_password) .password-input{position:relative;display:block}
html body.tsg-text-account .wd-content-area :is(.wd-registration-page,.lost_reset_password) input.input-text{width:100%;height:52px;min-height:0;margin:0;padding:0 16px;border:1px solid var(--border-field);border-radius:var(--r-md);background:var(--bg);box-shadow:none;font-family:var(--font);font-size:15px;color:var(--fg)}
html body.tsg-text-account .wd-content-area :is(.wd-registration-page,.lost_reset_password) input.input-text#password{padding-right:52px!important}   /* у WoodMart 42 px с !important — текст под «глазом» */
html body.tsg-text-account .wd-content-area :is(.wd-registration-page,.lost_reset_password) input.input-text:focus{outline:2px solid var(--accent)!important;outline-offset:-1px!important;border-color:var(--accent)}
html body.tsg-text-account .wd-content-area .show-password-input{position:absolute;top:4px;right:4px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:50%;background:none;color:var(--fg-muted);font-size:0;cursor:pointer}
html body.tsg-text-account .wd-content-area .show-password-input::before,html body.tsg-text-account .wd-content-area .show-password-input::after{content:"";display:none}
html body.tsg-text-account .wd-content-area .show-password-input::before{display:block;width:18px;height:18px;background:currentColor;-webkit-mask:var(--ti-eye) center/contain no-repeat;mask:var(--ti-eye) center/contain no-repeat}
html body.tsg-text-account .wd-content-area .show-password-input.display-password{color:var(--accent)}
html body.tsg-text-account .wd-content-area .show-password-input:focus-visible{outline-offset:-4px!important}
html body.tsg-text-account .wd-content-area .wd-registration-page :is(button.button,.woocommerce-form-login__submit,.woocommerce-form-register__submit),html body.tsg-text-account .wd-content-area .lost_reset_password button.button{display:flex;align-items:center;justify-content:center;width:100%;height:48px;min-height:0;margin:0;padding:0 22px;border:0;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-fg);box-shadow:none;font-family:var(--font);font-size:15px;font-weight:500;line-height:1;text-transform:none;letter-spacing:0;cursor:pointer;transition:background var(--t)}
@media (hover:hover){html body.tsg-text-account .wd-content-area :is(.wd-registration-page,.lost_reset_password) button.button:hover{background:var(--accent-hover)}}
/* «Регистрация» — второстепенная: контурная, по содержимому, в низу карточки */
html body.tsg-text-account .wd-content-area a.wd-switch-to-register{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;height:48px;margin-top:auto;padding:0 22px;border:1px solid var(--accent);border-radius:var(--r-pill);background:transparent;color:var(--accent);box-shadow:none;font-family:var(--font);font-size:15px;font-weight:500;text-transform:none;letter-spacing:0;text-decoration:none}
@media (hover:hover){html body.tsg-text-account .wd-content-area a.wd-switch-to-register:hover{background:var(--accent-soft);color:var(--accent)}}
html body.tsg-text-account .wd-content-area .login-form-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin:0}
html body.tsg-text-account .wd-content-area .login-form-footer .woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:10px;margin:0;font-family:var(--font);font-size:15px;font-weight:400;color:var(--fg);cursor:pointer}
html body.tsg-text-account .wd-content-area .wd-registration-page input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--accent)}
html body.tsg-text-account .wd-content-area .lost_password,html body.tsg-text-account .wd-content-area .woocommerce-LostPassword{font-family:var(--font);font-size:14px;color:var(--accent);text-decoration:underline;text-underline-offset:2px}
html body.tsg-text-account .wd-content-area .woocommerce-privacy-policy-text:empty{display:none}
/* сброс пароля — одна карточка */
html body.tsg-text-account .wd-content-area form.lost_reset_password{display:grid;gap:16px;max-width:468px;margin:0;padding:28px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg)}
html body.tsg-text-account .wd-content-area form.lost_reset_password>p:first-child{margin:0;font-size:15px;line-height:1.55;color:var(--fg-2)}
html body.tsg-text-account .wd-content-area form.lost_reset_password .clear{display:none}
/* уведомления («Неверный пароль», «Ссылка отправлена») — плашка, как на корзине */
html body.tsg-text-account .wd-content-area .woocommerce-notices-wrapper:empty{display:none}
html body.tsg-text-account .wd-content-area :is(.woocommerce-error,.woocommerce-message,.woocommerce-info){margin:0 0 20px;padding:12px 16px!important;border:0;border-radius:var(--r-md);background:var(--bg-raised);font-family:var(--font);font-size:14px;line-height:1.5;color:var(--fg-2);list-style:none;max-width:960px}
html body.tsg-text-account .wd-content-area :is(.woocommerce-message,.woocommerce-info)::before{display:none}
html body.tsg-text-account .wd-content-area .woocommerce-error{display:flex;align-items:flex-start;gap:10px;background:var(--error-soft);color:var(--error)}
html body.tsg-text-account .wd-content-area .woocommerce-error::before{content:""!important;display:block!important;position:static;flex:none;width:20px;height:20px;margin:0;background:currentColor;-webkit-mask:var(--ti-alert-20) center/contain no-repeat;mask:var(--ti-alert-20) center/contain no-repeat}
html body.tsg-text-account .wd-content-area .woocommerce-error li{margin:0;padding:0;list-style:none}
html body.tsg-text-account .wd-content-area :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) a{color:inherit;font-weight:500;text-decoration:underline;text-underline-offset:2px}   /* «Забыли пароль?» в ошибке — видно, что ссылка */
html body.tsg-text-account .wd-content-area .woocommerce:has(.active-register) .woocommerce-notices-wrapper>*{max-width:468px}
html body.tsg-text-account .wd-content-area .woocommerce:has(.lost_reset_password) .woocommerce-notices-wrapper>*{max-width:468px}
html body.tsg-text-account .wd-content-area :is(.woocommerce-error,.woocommerce-message,.woocommerce-info):focus{outline:0!important}
@media (max-width:767px){
  html body.tsg-text-account .wd-content-area .woocommerce{margin-top:20px}
  html body.tsg-text-account .wd-content-area .wd-registration-page .wd-grid-f-col,html body.tsg-text-account .wd-content-area .wd-register-tabs.active-register .wd-grid-f-col{grid-template-columns:minmax(0,1fr);gap:16px}
  html body.tsg-text-account .wd-content-area .woocommerce .woocommerce-notices-wrapper>*,html body.tsg-text-account .wd-content-area form.lost_reset_password{max-width:none!important}   /* на телефоне плашка — во всю ширину, как карточки */   /* и в режиме регистрации — во всю ширину, как вход */
  html body.tsg-text-account .wd-content-area .wd-registration-page .wd-col,html body.tsg-text-account .wd-content-area form.lost_reset_password{padding:20px;border-radius:var(--r-md)}
  html body.tsg-text-account .wd-content-area :is(.wd-registration-page,.lost_reset_password) input.input-text{font-size:16px}   /* iOS не увеличивает страницу при вводе */
}

/* ---------- Кабинет покупателя (вне ТЗ, согласовано 2026-10-29): меню разделов карточкой слева, содержимое справа; разметка WooCommerce / WoodMart
   и плагина сайта coxo-bonus-program как есть, вид — по системе ---------- */
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-wrapper{display:grid!important;grid-template-columns:260px minmax(0,1fr)!important;gap:40px;align-items:start;margin:32px 0 0;--wd-col-lg:auto}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-wrapper>*{grid-column:auto!important;width:auto!important;max-width:none!important;flex:none!important;min-width:0;margin:0!important;padding:0!important}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-sidebar{display:block!important;position:sticky;top:var(--sticky-top);border:0!important}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-sidebar>:not(.woocommerce-MyAccount-navigation){display:none}   /* «Мой аккаунт» над меню — уже в заголовке страницы */
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation,html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content{width:auto!important;max-width:none!important;flex:none!important;margin:0!important;padding:0!important;float:none}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation{position:static;width:auto!important;padding:8px!important;border:1px solid var(--border)!important;border-radius:var(--r-lg);background:var(--bg)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation::before{display:none!important}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation ul{display:grid;gap:2px;margin:0;padding:0;list-style:none}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation li{margin:0;padding:0;border:0}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation li::before{display:none}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation a{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 12px;border-radius:var(--r-md);font-family:var(--font);font-size:15px;font-weight:500;line-height:1.3;color:var(--fg-2);text-decoration:none;text-transform:none;letter-spacing:0;background:none}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation a::before{content:"";flex:none;width:20px;height:20px;background:currentColor;-webkit-mask:var(--ti-acc-dash) center/contain no-repeat;mask:var(--ti-acc-dash) center/contain no-repeat}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation-link--orders a::before{-webkit-mask-image:var(--ti-acc-orders);mask-image:var(--ti-acc-orders)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation-link--edit-address a::before{-webkit-mask-image:var(--ti-acc-addr);mask-image:var(--ti-acc-addr)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation-link--edit-account a::before{-webkit-mask-image:var(--ti-acc-user);mask-image:var(--ti-acc-user)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation-link--bonus-program a::before{-webkit-mask-image:var(--ti-acc-bonus);mask-image:var(--ti-acc-bonus)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation-link--customer-logout a::before{-webkit-mask-image:var(--ti-acc-logout);mask-image:var(--ti-acc-logout)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation-link--customer-logout{margin-top:6px!important;padding-top:6px!important;border-top:1px solid var(--border)!important}
@media (hover:hover){html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation a:hover{background:var(--bg-raised);color:var(--fg)}}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation li.is-active a{background:var(--accent-soft);color:var(--accent)}
/* содержимое: текст, плитки панели, таблицы, формы */
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content{display:grid;gap:20px;font-family:var(--font);font-size:16px;line-height:1.6;color:var(--fg-2)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content>p{max-width:60ch;margin:0}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content :is(strong,b){color:var(--fg);font-weight:600}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content a:not(.button):not([class*="wd-"]):not(.edit):not(.wd-my-account-links a){color:var(--accent);text-decoration:underline;text-underline-offset:2px}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content :is(h2,h3){margin:0;font-family:var(--font);font-size:20px;font-weight:600;line-height:1.3;letter-spacing:-.01em;color:var(--fg);text-transform:none}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-links{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin:8px 0 0!important;padding:0;list-style:none}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-links li{margin:0;padding:0;width:auto!important;max-width:none!important}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-links li::before{display:none}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-links li:is(.wd-my-acc-dashboard,.wd-my-acc-customer-logout){display:none}   /* «Выйти» — уже в меню и в приветствии */
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-links li{display:flex}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-links li>a{flex:1}   /* плитка «Консоль» на самой консоли — ссылка на себя */
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-links a{text-decoration:none!important;display:flex!important;flex-direction:row!important;align-items:center;gap:12px;min-height:64px;padding:16px!important;border:1px solid var(--border)!important;border-radius:var(--r-lg);background:var(--bg)!important;box-shadow:none!important;font-family:var(--font);font-size:15px;font-weight:500;color:var(--fg)!important;text-decoration:none;text-transform:none;text-align:left;transition:border-color var(--t),box-shadow var(--t)}
@media (hover:hover){html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-links a:hover{border-color:var(--accent)!important;box-shadow:var(--shadow)!important}}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-links .wd-nav-icon{display:flex;align-items:center;justify-content:center;flex:none;width:40px;height:40px;margin:0!important;border-radius:50%;background:var(--accent-soft);font-size:0}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-links .wd-nav-icon::before{content:""!important;display:block;width:20px;height:20px;margin:0;background:var(--accent);-webkit-mask:var(--ti-acc-dash) center/contain no-repeat;mask:var(--ti-acc-dash) center/contain no-repeat;font-family:inherit}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-acc-orders .wd-nav-icon::before{-webkit-mask-image:var(--ti-acc-orders)!important;mask-image:var(--ti-acc-orders)!important}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-acc-edit-address .wd-nav-icon::before{-webkit-mask-image:var(--ti-acc-addr)!important;mask-image:var(--ti-acc-addr)!important}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-acc-edit-account .wd-nav-icon::before{-webkit-mask-image:var(--ti-acc-user)!important;mask-image:var(--ti-acc-user)!important}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-acc-bonus-program .wd-nav-icon::before{-webkit-mask-image:var(--ti-acc-bonus)!important;mask-image:var(--ti-acc-bonus)!important}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-acc-customer-logout .wd-nav-icon::before{-webkit-mask-image:var(--ti-acc-logout)!important;mask-image:var(--ti-acc-logout)!important}
html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-links .nav-link-text{font:inherit;color:inherit}
/* уведомления («Заказов ещё нет» и др.) — плашка, ссылка-кнопка */
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content :is(.woocommerce-info,.woocommerce-message,.woocommerce-error,.woocommerce-notice),html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-empty{max-width:none;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;margin:0;padding:14px 16px!important;border:0;border-radius:var(--r-md);background:var(--bg-raised)!important;font-size:15px;line-height:1.5;color:var(--fg-2)!important}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content :is(.woocommerce-info,.woocommerce-message,.woocommerce-notice)::before{display:none}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .woocommerce-error{background:var(--error-soft)!important;color:var(--error)!important}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content :is(.woocommerce-info,.woocommerce-message) .button{order:2;height:48px;margin:0;padding:0 22px;border:1px solid var(--accent);border-radius:var(--r-pill);background:transparent;color:var(--accent);font-size:15px;font-weight:500;text-transform:none;letter-spacing:0;box-shadow:none;text-decoration:none;display:inline-flex;align-items:center}
/* таблица заказов и таблицы плагина */
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content table{width:100%;margin:0;border:0;border-collapse:collapse;font-size:15px}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content :is(th,td){padding:12px 12px 12px 0;border:0;border-bottom:1px solid var(--border);background:none;text-align:left;vertical-align:middle;font-family:var(--font);font-size:15px;font-weight:400;color:var(--fg);text-transform:none;letter-spacing:0}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content thead th{font-size:13px;font-weight:500;color:var(--fg-muted)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content td .amount{color:inherit}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content table .button{height:40px;margin:0 4px 0 0;padding:0 16px;border:1px solid var(--accent);border-radius:var(--r-pill);background:transparent;color:var(--accent);font-size:14px;font-weight:500;text-transform:none;letter-spacing:0;box-shadow:none;display:inline-flex;align-items:center}
/* адреса — две карточки */
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-Addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-Addresses::before,html body.tsg-text-account.logged-in .wd-content-area .woocommerce-Addresses::after{display:none}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-Address{width:auto!important;float:none!important;display:grid;gap:12px;align-content:start;margin:0!important;padding:20px!important;border:1px solid var(--border);border-radius:var(--r-lg)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-Address-title{display:grid;gap:6px;margin:0}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-Address-title::before,html body.tsg-text-account.logged-in .wd-content-area .woocommerce-Address-title::after{display:none}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-Address-title a.edit{justify-self:start;float:none;font-size:14px;font-weight:500;color:var(--accent);text-decoration:underline;text-underline-offset:2px}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-Address-title a.edit::before{display:none}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-Address address{margin:0;font-style:normal;font-size:15px;line-height:1.6;color:var(--fg-2)}
/* формы: анкета, адрес — поля как в оформлении */
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;max-width:720px;margin:0}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content form>*,html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content form .woocommerce-address-fields__field-wrapper>*{grid-column:1/-1}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content form>:is(.form-row-first,.form-row-last){grid-column:auto}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content form .clear{display:none}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .woocommerce-address-fields{display:grid;gap:20px;grid-template-columns:minmax(0,1fr)}   /* поля, под ними «Сохранить адрес» */
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper{display:grid;gap:16px 20px;grid-template-columns:repeat(2,minmax(0,1fr))}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper>:is(.form-row-first,.form-row-last){grid-column:auto}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .form-row{display:grid;gap:6px;width:auto!important;float:none!important;margin:0!important;padding:0}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .form-row>label{margin:0;font-size:13px;font-weight:500;line-height:1.5;color:var(--fg-2);text-transform:none}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .form-row .required{font-size:inherit;color:var(--error);text-decoration:none;border:0}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .form-row .optional{font-size:inherit!important;font-weight:400;color:var(--fg-muted);vertical-align:baseline!important;position:static}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .form-row :is(input.input-text,select,textarea){width:100%;height:52px;min-height:0;margin:0;padding:0 16px;border:1px solid var(--border-field);border-radius:var(--r-md);background:var(--bg);box-shadow:none;font-family:var(--font);font-size:15px;color:var(--fg)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .form-row input.input-text[type=password]{padding-right:52px!important}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .form-row :is(input.input-text,select,textarea):focus{outline:2px solid var(--accent)!important;outline-offset:-1px!important;border-color:var(--accent)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .form-row>span:not(.woocommerce-input-wrapper):not(.password-input),html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .form-row em{font-size:13px;font-style:normal;line-height:1.4;color:var(--fg-muted)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .password-input{position:relative;display:block}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .show-password-input{position:absolute;top:4px;right:4px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:50%;background:none;color:var(--fg-muted);font-size:0;cursor:pointer}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .show-password-input::before,html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .show-password-input::after{content:"";display:none}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .show-password-input::before{display:block;width:18px;height:18px;background:currentColor;-webkit-mask:var(--ti-eye) center/contain no-repeat;mask:var(--ti-eye) center/contain no-repeat}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .show-password-input:focus-visible{outline-offset:-4px!important}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content fieldset{display:grid;gap:16px;margin:8px 0 0;padding:20px;border:1px solid var(--border);border-radius:var(--r-lg)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content legend{margin:0;padding:0 8px;font-size:17px;font-weight:600;color:var(--fg)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content form :is(button.button,input.button){justify-self:start;height:48px;min-height:0;margin:4px 0 0;padding:0 24px;border:0;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-fg);box-shadow:none;font-family:var(--font);font-size:15px;font-weight:500;text-transform:none;letter-spacing:0;cursor:pointer}
@media (hover:hover){html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content form :is(button.button,input.button):hover{background:var(--accent-hover)}}
/* бонусная программа (плагин сайта coxo-bonus-program) */
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-program{display:grid;gap:20px}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-program *{opacity:1!important}   /* у плагина подписи полупрозрачные — контраст ниже 4,5:1 */
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-card{display:grid;gap:4px;align-content:start;margin:0;padding:20px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg)!important;color:var(--fg)!important}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-card--accent{border-color:var(--accent)!important;background:var(--accent-soft)!important;color:var(--fg)!important}   /* цвет уровня из настроек плагина (inline) — акцентом сайта */
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-card__label{font-size:13px;font-weight:500;color:var(--fg-muted)!important;text-transform:none;letter-spacing:0}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-card__value{font-size:28px;font-weight:700;line-height:1.2;letter-spacing:-.01em;color:var(--fg)!important}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-card__sub{font-size:14px;color:var(--fg-2)!important}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-progress{display:grid;gap:8px;margin:0}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-progress__head{display:flex;justify-content:space-between;font-size:13px;color:var(--fg-2)}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-progress__bar{height:8px;border-radius:var(--r-pill);background:var(--bg-raised);box-shadow:inset 0 0 0 1px var(--border-field);overflow:hidden}   /* дорожка видна и при 0 % */
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-progress__fill{height:100%;border-radius:var(--r-pill);background:var(--accent)!important}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-progress__hint{margin:0;font-size:14px;color:var(--fg-2)}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-actions{display:flex;flex-wrap:wrap;gap:8px;margin:0}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-actions .button{display:inline-flex;align-items:center;height:48px;margin:0;padding:0 22px;border:1px solid var(--accent);border-radius:var(--r-pill);background:var(--accent);color:var(--accent-fg);box-shadow:none;font-family:var(--font);font-size:15px;font-weight:500;text-transform:none;letter-spacing:0;text-decoration:none}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-actions .coxo-bonus-button--ghost{background:transparent;color:var(--accent)}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-heading{margin:12px 0 0!important}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-levels tr.is-current td{font-weight:600;background:var(--bg-raised)!important}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-dot{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:var(--border-field)!important;vertical-align:middle}   /* цвета уровней плагина — вне палитры: нейтральные, текущий — акцент */
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-levels tr.is-current .coxo-bonus-dot{background:var(--accent)!important}
html body.tsg-text-account.logged-in .wd-content-area p.coxo-bonus-empty{margin:0}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-levels td:first-child{padding-left:12px}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-levels thead th:first-child{padding-left:12px}
@media (max-width:899px){
  html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-wrapper{grid-template-columns:minmax(0,1fr)!important;gap:24px}
  html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-sidebar{position:static}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation{padding:4px!important}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:nowrap;gap:4px;overflow-x:auto;scrollbar-width:none;padding:4px;scroll-padding-inline:44px}   /* padding — кольцо фокуса не срезается */   /* разделы — строкой с прокруткой */
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation li{flex:none}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation a{white-space:nowrap}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-navigation-link--customer-logout{margin:0 0 0 6px!important;padding:0 0 0 6px!important;border-top:0!important;border-left:1px solid var(--border)!important}
}
@media (max-width:767px){
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-Addresses,html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-cards,html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content form,html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper{grid-template-columns:minmax(0,1fr)}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content form>:is(.form-row-first,.form-row-last),html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .woocommerce-address-fields__field-wrapper>:is(.form-row-first,.form-row-last){grid-column:1/-1}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .form-row :is(input.input-text,select,textarea){font-size:16px}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content table{display:block;overflow-x:auto}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content table:focus-visible{outline:2px solid var(--accent)!important;outline-offset:2px!important}
  html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-levels :is(td,th){white-space:nowrap}   /* «● Уровень 1» в одну строку; таблица прокручивается вбок */
  html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-links{grid-template-columns:repeat(2,minmax(0,1fr))}
  html body.tsg-text-account.logged-in .wd-content-area .wd-my-account-links a{min-height:56px;padding:12px!important}
}
/* лента меню и таблица с прокруткой вбок: затухание у края, за которым есть ещё (классы ставит text.js) */
html body.tsg-text-account.logged-in .wd-content-area .tsg-fade-r{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent)}
html body.tsg-text-account.logged-in .wd-content-area .tsg-fade-l{-webkit-mask-image:linear-gradient(90deg,transparent,#000 40px);mask-image:linear-gradient(90deg,transparent,#000 40px)}
html body.tsg-text-account.logged-in .wd-content-area .tsg-fade-l.tsg-fade-r{-webkit-mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent)}
html body.tsg-text-account.logged-in .wd-content-area :is(.tsg-fade-l,.tsg-fade-r):focus-visible{-webkit-mask-image:none;mask-image:none}   /* маска срезает своё кольцо фокуса (таблица в обходе Tab) */
/* заказы и просмотр заказа */
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content mark{padding:0;background:none;font-weight:600;color:var(--fg)}   /* «Заказ № 9610 был оформлен …» — без подложек WooCommerce */
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content address{margin:0;font-style:normal;font-size:15px;line-height:1.6;color:var(--fg-2)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content address p{margin:0}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-order-details,html body.tsg-text-account.logged-in .wd-content-area .woocommerce-customer-details{display:grid;gap:12px;margin:0}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-customer-details{padding:20px;border:1px solid var(--border);border-radius:var(--r-lg);max-width:480px}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-customer-details :is(h2,.woocommerce-column__title){font-size:17px}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-MyAccount-content .responsive-table{margin:0}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-table--order-details{table-layout:auto}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-table--order-details :is(th,td).product-name{width:100%;max-width:none!important}   /* название (WoodMart ограничивает 50 %) — на всю ширину, сумма — по содержимому */
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-table--order-details .product-name a{font-weight:500}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-table--order-details .product-quantity{font-weight:400;color:var(--fg-muted);white-space:nowrap}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-table--order-details :is(td,th):last-child{text-align:right;padding-right:0;white-space:nowrap}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-table--order-details tfoot th{font-weight:400;color:var(--fg-2)}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-table--order-details tfoot tr:nth-last-child(2) :is(th,td){font-weight:600;color:var(--fg)}   /* «Итого» */
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table__cell-order-number a{white-space:nowrap}
html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table__cell-order-actions{text-align:right}
@media (max-width:767px){
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table{display:block;overflow:visible}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table thead{display:none}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table tbody{display:grid;gap:12px}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table tbody tr{display:block;padding:4px 16px;border:1px solid var(--border);border-radius:var(--r-lg)}   /* заказ — карточкой */
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table tbody td{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;text-align:right}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table tbody td::before{font-weight:400;color:var(--fg-muted);text-align:left}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table tbody tr>:last-child{border-bottom:0}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table tbody th.woocommerce-orders-table__cell-order-number{display:block!important;padding:12px 0 8px;border-bottom:1px solid var(--border);text-align:left;font-size:17px;font-weight:600}   /* номер заказа — заголовком карточки */
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table tbody th.woocommerce-orders-table__cell-order-number::before{display:none}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table__cell-order-number a{color:var(--fg)!important}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table tbody td.woocommerce-orders-table__cell-order-actions::before{display:none}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-orders-table__cell-order-actions .button{flex:1;justify-content:center;margin:0!important}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-table--order-details :is(td,th){font-size:15px}
  html body.tsg-text-account.logged-in .wd-content-area .woocommerce-customer-details{max-width:none}
}
/* «Заказать снова», гарантийный талон (плагин coxo-warranty), заявка на выплату бонусов */
html body.tsg-text-account.logged-in .wd-content-area .order-again{margin:0}
html body.tsg-text-account.logged-in .wd-content-area .order-again .button{display:inline-flex;align-items:center;height:48px;margin:0;padding:0 24px;border:0;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-fg);box-shadow:none;font-family:var(--font);font-size:15px;font-weight:500;text-transform:none;letter-spacing:0;text-decoration:none}
@media (hover:hover){html body.tsg-text-account.logged-in .wd-content-area .order-again .button:hover{background:var(--accent-hover)}}
html body.tsg-text-account.logged-in .wd-content-area .coxo-warranty-box{display:grid;gap:8px;justify-items:start;margin:0;padding:20px;border:1px solid var(--border);border-radius:var(--r-lg)}
html body.tsg-text-account.logged-in .wd-content-area .coxo-warranty-box__title{margin:0!important;font-size:17px!important}
html body.tsg-text-account.logged-in .wd-content-area .coxo-warranty-box__note{margin:0;font-size:14px;line-height:1.5;color:var(--fg-2)}
html body.tsg-text-account.logged-in .wd-content-area a.coxo-warranty{display:inline-flex;align-items:center;gap:8px;height:48px;margin:4px 0 0;padding:0 22px;border:1px solid var(--accent);border-radius:var(--r-pill);background:transparent;color:var(--accent)!important;font-size:15px;font-weight:500;text-decoration:none!important}
html body.tsg-text-account.logged-in .wd-content-area a.coxo-warranty .coxo-warranty__icon{width:18px;height:18px}
@media (hover:hover){html body.tsg-text-account.logged-in .wd-content-area a.coxo-warranty:hover{background:var(--accent-soft)}}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-back{margin:0}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-back a{font-size:14px;font-weight:500}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-payout-history>.coxo-bonus-heading:first-of-type{display:none}   /* повторяет заголовок страницы */
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-rate{display:grid;gap:4px;margin:0;padding:20px;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg)}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-rate__value{font-size:20px;font-weight:600;color:var(--fg)}
html body.tsg-text-account.logged-in .wd-content-area .coxo-bonus-rate__note{font-size:14px;line-height:1.5;color:var(--fg-2)}
html body.tsg-text-account.logged-in .wd-content-area :is(.coxo-bonus-payout__min,.coxo-bonus-payout__info){margin:0;padding:0;border:0;background:none;font-size:15px;line-height:1.55;color:var(--fg-2)}
/* бонусы: баланс 0 — «Заказать выплату» неактивна (inc/text.php, ответ заказчика 2026-11-05) */
html body.tsg-bonus-zero a.coxo-bonus-button[aria-disabled="true"]{background:var(--bg-sunken)!important;border-color:var(--bg-sunken)!important;color:var(--fg-muted)!important;pointer-events:none;cursor:default}
