/* itsmart: собственные правки поверх темы. Не входит в merged-сборку, переживает обновление темы. */

/* Ссылки внутри текстовых блоков должны отличаться не только цветом (Lighthouse: link-in-text-block).
   Касается описаний категорий и товаров, статей и текстовых модулей на главной. */
.html-module p a,
.product-description p a,
.category-description p a,
.uni-news-story p a,
.content-bottom p a,
.content-top p a {
	text-decoration: underline;
	text-underline-offset: 2px;
}
.html-module p a:hover,
.product-description p a:hover,
.category-description p a:hover,
.uni-news-story p a:hover,
.content-bottom p a:hover,
.content-top p a:hover {
	text-decoration: none;
}

/* Таблицы в статьях и описаниях не должны ломать вёрстку на телефоне */
.uni-news-story table,
.product-description table,
.category-description table {
	display: block;
	overflow-x: auto;
	max-width: 100%;
}
/* Контраст текста логотипа: #777 на белом даёт 4,48:1 при пороге 4,5:1 (Lighthouse: color-contrast).
   #666 = 5,7:1 — визуально почти то же, но требование выполняется. */
#logo span {
	color: #666;
}

/* Область нажатия телефона в шапке на мобильных была 156×20 px при рекомендуемых 24 px по высоте
   (Lighthouse: target-size). Вертикальные отступы поднимают её до ~34 px, не трогая раскладку. */
@media (max-width: 767px) {
	.header-phones__main {
		padding: 7px 0;
	}
	.header-phones a {
		min-height: 24px;
	}
}
/* Остальные элементы, не дотягивавшие до порога 4,5:1 (Lighthouse: color-contrast).
   Цвета подобраны с сохранением оттенка, пересчитаны по формуле WCAG. */
.header-phones a,
.header-phones__main {
	color: #666;                 /* было #777 — 4,48:1, стало 5,74:1 */
}
.header-search__input,
.header-search__input::placeholder {
	color: #6b6b6b;              /* было #888 на #f7f7f7 — 3,31:1, стало 4,97:1.
	                                Правило нужно и самому input: аудит меряет цвет вводимого текста,
	                                а не только плейсхолдера. */
}
.header-search__input::placeholder {
	opacity: 1;
}
.qty-indicator,
.qty-indicator__text,
.product-thumb .qty-indicator div {
	color: #457d27;              /* было #6ab344 — 2,58:1, стало 4,98:1, оттенок тот же */
}
/* Дата и категория в карточках новостей: #888 на белом — 3,54:1 (Lighthouse: color-contrast) */
.news-thumb__date,
.news-thumb__category-date,
.news-thumb__category {
	color: #6b6b6b;              /* 5,15:1 */
}
/* AIO 2026-09-06: блок прямого ответа в начале статьи */
.tldr{background:#f4f7fb;border-left:4px solid #1c6bd6;padding:14px 18px;margin:0 0 22px;font-size:1.02em;line-height:1.55}
.tldr strong{color:#1c6bd6}
/* === Конфигуратор серверов (2026-09-06) === */
#itsmart-configurator{max-width:960px;margin:0 auto 32px;font-size:15px;line-height:1.45}
#itsmart-configurator .cfg-loading{padding:24px;text-align:center;color:#666}
#itsmart-configurator .cfg-steps{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px;padding:0}
#itsmart-configurator .cfg-step{flex:1 1 auto;padding:8px 12px;border-radius:6px;background:#f1f3f6;color:#777;font-size:13px;white-space:nowrap;text-align:center}
#itsmart-configurator .cfg-step.is-active{background:#7356b1;color:#fff;font-weight:600}
#itsmart-configurator .cfg-step.is-done{background:#e6e0f5;color:#3e2b6e}
#itsmart-configurator .cfg-h{font-size:22px;margin:0 0 14px;font-weight:700}
#itsmart-configurator .cfg-h3{font-size:16px;margin:20px 0 8px;font-weight:700;border-bottom:1px solid #e5e7eb;padding-bottom:4px}
#itsmart-configurator .cfg-scen,#itsmart-configurator .cfg-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 14px}
#itsmart-configurator .cfg-chip{border:1px solid #cbd5e1;background:#fff;border-radius:20px;padding:7px 14px;cursor:pointer;font-size:14px;color:#222;transition:.15s}
#itsmart-configurator .cfg-chip:hover{border-color:#7356b1}
#itsmart-configurator .cfg-chip.is-on{background:#7356b1;border-color:#7356b1;color:#fff}
#itsmart-configurator .cfg-row{margin:0 0 12px}
#itsmart-configurator .cfg-row label{display:block;font-weight:500}
#itsmart-configurator .cfg-row input[type=range]{width:100%;max-width:520px;margin-top:6px}
#itsmart-configurator .cfg-row input[type=checkbox]{margin-right:6px}
#itsmart-configurator .cfg-req{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:14px 18px;margin:16px 0}
#itsmart-configurator .cfg-req-t{font-weight:700;margin-bottom:6px}
#itsmart-configurator .cfg-req ul{margin:0;padding-left:18px}
#itsmart-configurator .cfg-req li{margin:2px 0}
#itsmart-configurator .cfg-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:22px 0 0}
#itsmart-configurator .cfg-btn{background:#7356b1;color:#fff;border:0;border-radius:6px;padding:11px 22px;font-size:15px;font-weight:600;cursor:pointer}
#itsmart-configurator .cfg-btn:hover{background:#5e44a0}
#itsmart-configurator .cfg-btn:disabled{opacity:.6;cursor:default}
#itsmart-configurator .cfg-btn-l{background:#fff;color:#7356b1;border:1px solid #7356b1}
#itsmart-configurator .cfg-btn-l:hover{background:#f3f0fa}
#itsmart-configurator .cfg-note{color:#555;margin:0 0 12px}
#itsmart-configurator .cfg-muted{color:#888;font-size:13px}
#itsmart-configurator .cfg-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
#itsmart-configurator .cfg-card{display:flex;gap:12px;border:1px solid #e2e8f0;border-radius:8px;padding:12px;background:#fff;position:relative}
#itsmart-configurator .cfg-card.is-sel{border-color:#7356b1;box-shadow:0 0 0 2px #d3c8ee}
#itsmart-configurator .cfg-card-img{flex:0 0 72px;width:72px;height:72px;display:flex;align-items:center;justify-content:center;background:#f8fafc;border-radius:6px;overflow:hidden}
#itsmart-configurator .cfg-card-img img{max-width:100%;max-height:100%}
#itsmart-configurator .cfg-card-b{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:4px}
#itsmart-configurator .cfg-card-n{font-weight:600;font-size:14px;line-height:1.3}
#itsmart-configurator .cfg-card-n a{color:#111;text-decoration:none}
#itsmart-configurator .cfg-card-n a:hover{color:#7356b1}
#itsmart-configurator .cfg-card-m{font-size:13px;color:#666}
#itsmart-configurator .cfg-card-p{font-weight:700;font-size:15px;margin-top:auto}
#itsmart-configurator .cfg-fit{display:inline-block;font-size:12px;padding:2px 8px;border-radius:10px;margin-bottom:2px}
#itsmart-configurator .cfg-fit-fits{background:#dcfce7;color:#166534}
#itsmart-configurator .cfg-fit-near{background:#fef9c3;color:#854d0e}
#itsmart-configurator .cfg-fit-platform{background:#ece7f7;color:#4a3690}
#itsmart-configurator .cfg-fit-weak{background:#fee2e2;color:#991b1b}
#itsmart-configurator .cfg-sel{align-self:flex-start;margin-top:6px;padding:6px 14px;font-size:13px}
#itsmart-configurator .cfg-part{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:8px 10px;border-bottom:1px solid #f1f5f9}
#itsmart-configurator .cfg-part.is-sel{background:#f3f0fa}
#itsmart-configurator .cfg-part-n{flex:1 1 320px;font-size:14px}
#itsmart-configurator .cfg-part-n a{color:#111;text-decoration:none}
#itsmart-configurator .cfg-part-n a:hover{color:#7356b1}
#itsmart-configurator .cfg-part-p{flex:0 0 auto;font-weight:600;white-space:nowrap}
#itsmart-configurator .cfg-qty{display:inline-flex;align-items:center;gap:0;border:1px solid #cbd5e1;border-radius:6px;overflow:hidden}
#itsmart-configurator .cfg-qty button{border:0;background:#f1f5f9;width:30px;height:30px;cursor:pointer;font-size:16px;line-height:1}
#itsmart-configurator .cfg-qty span{min-width:28px;text-align:center;font-weight:600}
#itsmart-configurator .cfg-part .cfg-btn{padding:6px 12px;font-size:13px}
#itsmart-configurator .cfg-other{margin-top:16px}
#itsmart-configurator .cfg-other summary{cursor:pointer;color:#7356b1;font-weight:500}
#itsmart-configurator .cfg-total{display:flex;justify-content:space-between;align-items:center;margin:18px 0 0;padding:14px 18px;background:#f8fafc;border-radius:8px;font-size:16px}
#itsmart-configurator .cfg-total b{font-size:20px}
#itsmart-configurator .cfg-pre{white-space:pre-wrap;word-break:break-word;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:14px 18px;font:13px/1.5 ui-monospace,Menlo,Consolas,monospace;margin:0 0 14px}
#itsmart-configurator .cfg-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px 16px;margin-top:14px}
#itsmart-configurator .cfg-form label{display:block;font-size:14px;font-weight:500}
#itsmart-configurator .cfg-form input,#itsmart-configurator .cfg-form textarea{display:block;width:100%;box-sizing:border-box;margin-top:4px;border:1px solid #cbd5e1;border-radius:6px;padding:9px 11px;font-size:15px;font-family:inherit}
#itsmart-configurator .cfg-form textarea{min-height:80px;resize:vertical}
#itsmart-configurator .cfg-form label:has(textarea),#itsmart-configurator .cfg-form .cfg-nav,#itsmart-configurator .cfg-form .cfg-err,#itsmart-configurator .cfg-form .cfg-p{grid-column:1/-1}
#itsmart-configurator .cfg-form .cfg-p{font-size:13px;color:#666;margin:0}
#itsmart-configurator .cfg-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
#itsmart-configurator .cfg-err{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:8px 12px}
#itsmart-configurator .cfg-ok{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:20px 24px}
#itsmart-configurator .cfg-ok .cfg-h{color:#166534}
@media (max-width:600px){#itsmart-configurator .cfg-step{flex:1 1 45%;font-size:12px;padding:6px 8px}#itsmart-configurator .cfg-h{font-size:19px}#itsmart-configurator .cfg-nav{flex-wrap:wrap}#itsmart-configurator .cfg-nav .cfg-btn{flex:1 1 auto}}
.cfg-cta{background:#f3f0fa;border-left:4px solid #7356b1;padding:10px 14px;margin:12px 0 18px;border-radius:0 6px 6px 0}
.cfg-cta a{font-weight:600;color:#7356b1}
#itsmart-configurator .cfg-card-p b{white-space:nowrap}@media (max-width:600px){#itsmart-configurator .cfg-card{flex-wrap:wrap}#itsmart-configurator .cfg-card-b{flex:1 1 60%}#itsmart-configurator .cfg-sel{flex:1 1 100%;margin-top:10px;align-self:auto}}
#itsmart-configurator input[type=range]{accent-color:#7356b1}

/* price-request-form 2026-09-06: форма «Запрос цены» на карточке без цены */
.ask-price{background:#f3f0fa;border-left:4px solid #7356b1;border-radius:0 8px 8px 0;padding:18px 22px;margin:0 0 24px}
.ask-price__h{font-size:19px;font-weight:600;margin:0 0 12px}
.ask-price__row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ask-price label{display:block;font-size:13px;color:#444;margin:0 0 10px;font-weight:normal}
.ask-price input[type=text],.ask-price input[type=email],.ask-price textarea{display:block;width:100%;margin-top:4px;padding:8px 10px;border:1px solid #cfc8e0;border-radius:6px;font-size:14px;background:#fff}
.ask-price textarea{min-height:72px;resize:vertical}
.ask-price__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.ask-price__err{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:8px 12px;margin:0 0 10px}
.ask-price__nav{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.ask-price__p{font-size:13px;color:#666}
.ask-price__ok{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:16px 20px;color:#166534;font-weight:600}
@media (max-width:700px){.ask-price__row{grid-template-columns:1fr}.ask-price{padding:14px 16px}}
.ask-price .btn{background:#7356b1;color:#fff;border-color:#7356b1}.ask-price .btn:hover,.ask-price .btn:focus{background:#5f45a0;color:#fff}.ask-price .btn[disabled]{opacity:.6}

/* refurb-badge 2026-09-07 */
.product-page__refurb{display:inline-flex;align-items:center;gap:6px;margin:6px 0 10px;padding:5px 10px;border:1px solid #d8cdb0;background:#fdf7e6;color:#6b5720;border-radius:4px;font-size:13px;line-height:1.3}
.product-page__refurb i{color:#8a7434}
.product-thumb__refurb{display:block;margin-top:4px;color:#8a7434;font-size:12px}


/* mobile-tap 2026-09-07: читаемость и цели нажатия на телефоне (Яндекс: NOT_MOBILE_FRIENDLY).
   Подписи нижнего меню были 9,1 px при контейнере 65 px — 11 px влезает без переноса. */
@media (max-width:767px){
	.fly-menu__caption{font-size:11px;line-height:1.2}
	.fly-menu__total,.uni-badge,.header-cart__total-items,.top-menu__wishlist-total,.top-menu__compare-total{font-size:11px}
	.top-menu__btn-text{font-size:12px}
	.top-menu__btn{min-height:32px}
	.fly-menu__link{min-height:44px}
}

/* a11y-tables 2026-09-07 */
/* Текст только для скринридеров: в теме нет .sr-only, а домик в «хлебных крошках» — иконка без подписи. */
.itsmart-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Логотип: #777 на белом = 4,48:1, на мобильном кегле не проходит порог 4,5:1 */
#logo a{color:#666}
/* Таблицы, которые мы вставляем в описания и на инфо-страницы, обёрнуты в контейнер с overflow-x.
   Теме они неизвестны — задаём разметку сами. */
.article_description div[style*="overflow"] table,
.category-description div[style*="overflow"] table,
.product-description div[style*="overflow"] table,
.uni-news-story div[style*="overflow"] table{display:table;width:100%;min-width:620px;border-collapse:collapse;font-size:14px;margin:0 0 18px}
.article_description div[style*="overflow"] th,.category-description div[style*="overflow"] th,
.product-description div[style*="overflow"] th,.uni-news-story div[style*="overflow"] th{background:#f4f7fb;text-align:left;font-weight:600;padding:9px 12px;border-bottom:2px solid #d7e0ec;white-space:nowrap}
.article_description div[style*="overflow"] td,.category-description div[style*="overflow"] td,
.product-description div[style*="overflow"] td,.uni-news-story div[style*="overflow"] td{padding:9px 12px;border-bottom:1px solid #e6ebf2;vertical-align:top}
.article_description div[style*="overflow"] tr:hover td,.category-description div[style*="overflow"] tr:hover td{background:#fafbfd}

/* a11y-product 2026-09-07: подписи характеристик были #888 на белом (3,54:1 при пороге 4,5) */
.product-data__item-div{color:#666}


/* mobile-tap-2 2026-09-11: добор по читаемости и целям нажатия на телефоне.
   fly-menu__caption был 11 px — поисковики считают читаемым текст от 12 px.
   .owl-dot имел область нажатия 20x2 px; увеличиваем зону, не меняя вид точки. */
@media (max-width:767px){
	.fly-menu__caption{font-size:12px;line-height:1.15}
	.owl-dots .owl-dot{padding:11px 6px;margin:0;display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;vertical-align:middle}
	.category-wall__more,.uni-five-in-one__link,.module-header__link{display:inline-block;padding:3px 0}
}
/* menu2-layout 2026-09-13: в правой строке меню один пункт растягивался на всю ширину и вставал по центру.
   Прижимаем к левому краю, ширину отдаём содержимому — пункт читается как пункт меню. */
.menu2 .menu__collapse{justify-content:flex-start}
.menu2 .menu__level-1-li{width:auto;flex:0 0 auto}
.menu2 .menu__level-1-a{justify-content:flex-start}
@media (max-width:991px){.menu2 .menu__level-1-li{width:100%}}

/* img-credit 2026-09-13: подписи к фотографиям были 11 px — ниже порога читаемости 12 px, из-за чего
   страницы попадали в мобильные замечания. Размер стоит инлайном в описаниях, перебиваем его здесь. */
.img-credit{font-size:12px!important;line-height:1.4}

/* mobile-tap 2026-09-14: порог читаемости 12 px и цель нажатия 24 px на мобильном.
   Значения ниже давали рекомендацию NOT_MOBILE_FRIENDLY в Яндекс.Вебмастере. */
@media (max-width:767px){
  .uni-badge,
  .header-wishlist__total-items,.header-compare__total-items,.header-cart__total-items,
  .fly-menu__total,
  .uni-slideshow_v2__btn,
  .heading__link,
  .subscribe__agree a,.subscribe__agree b{font-size:12px!important}
  .hub-crosslink>li>a,
  .category-wall__ul>li>a,
  .content-bottom .html-module p a,
  .footer__contacts-li>a.footer__column-a,
  .heading__link,
  .subscribe__agree a.agree,
  .content-bottom ul.nav-tabs>li>a{display:inline-block;min-height:24px;line-height:24px}
}

/* mobile-tap 2026-09-14b: ссылки в текстах категорий и статей, в таблицах и крошках были 17–18 px высотой,
   надстрочные знаки — 10,5 px. Порог: цель 24 px, текст 12 px. */
@media (max-width:767px){
  .category-info__description a,
  .news-page__description a,
  .news-page__description table a,
  .category-info__description table a,
  .breadcrumb>li>a,
  .header-logo>a{display:inline-block;min-height:24px;line-height:24px}
  .news-page__description sup,
  .category-info__description sup{font-size:12px}
}

/* d2specs-2026-09-15: таблица характеристик в карточке */
.product-specs{width:100%;border-collapse:collapse;margin:0 0 18px}
.product-specs th,.product-specs td{padding:7px 10px;border-bottom:1px solid #e6e8eb;vertical-align:top;font-size:14px;line-height:1.45}
.product-specs th{width:42%;text-align:left;font-weight:400;color:#6b7280}
.product-specs td{color:#111827}
.product-specs tr:last-child th,.product-specs tr:last-child td{border-bottom:0}
@media (max-width:480px){.product-specs th{width:50%}.product-specs th,.product-specs td{padding:6px;font-size:13px}}

/* e3cta-2026-09-15: ссылка на форму КП под кнопкой покупки */
.product-page__quote{margin:10px 0 0}
.product-page__quote a{display:inline-block;font-size:14px;line-height:1.4;border-bottom:1px dashed currentColor;text-decoration:none}
.product-page__quote a:hover{border-bottom-style:solid}
.ask-price__row label{display:block}

/* calc-2026-09-15: калькуляторы ИБП / PoE / RAID на инфо-страницах */
.calc{border:1px solid #e0e3e7;border-radius:8px;padding:16px 18px;margin:18px 0;background:#fafbfc}
.calc__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px 18px;margin:0 0 14px}
.calc__f{display:flex;flex-direction:column;gap:4px;font-size:14px}
.calc__f>span{color:#6b7280;line-height:1.3}
.calc__f input[type=number],.calc__f select{height:38px;padding:0 10px;border:1px solid #cbd2d9;border-radius:6px;font-size:15px;background:#fff;width:100%;box-sizing:border-box}
.calc__f input[type=number]:focus,.calc__f select:focus{outline:0;border-color:#7356b1}
.calc__f--check{flex-direction:row;align-items:center;gap:8px}
.calc__f--check input{width:18px;height:18px;margin:0}
.calc__out{border-top:1px solid #e0e3e7;padding-top:12px}
.calc__out:empty{display:none;border-top:0;padding-top:0}
.calc__row{display:flex;justify-content:space-between;gap:14px;padding:6px 0;font-size:15px;line-height:1.4;border-bottom:1px dashed #e8eaed}
.calc__row:last-child{border-bottom:0}
.calc__k{color:#6b7280}
.calc__v{text-align:right;color:#111827}
.calc__row--main{font-size:17px;padding:10px 0}
.calc__row--main .calc__v{color:#111827}
.calc__row--warn{border-bottom:0}
.calc__row--warn .calc__v{color:#b45309;text-align:left;max-width:78%}
.calc__note{margin:12px 0 0;font-size:13px;color:#6b7280;line-height:1.5}
@media (max-width:560px){
  .calc{padding:14px}
  .calc__row{flex-direction:column;gap:2px}
  .calc__v{text-align:left}
  .calc__row--warn .calc__v{max-width:100%}
}
