.kvant-feedback__website {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	clip: rect(0 0 0 0) !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.form__group--error input:not([type="checkbox"]),
.form__group--error textarea,
.form__group--error select {
	border-color: #f04438;
}

.form__error {
	font-size: 13px;
	font-weight: 400;
	line-height: 1.4;
	color: #d92d20;
}

.form__error[hidden] {
	display: none;
}

.form__error--common {
	margin-top: -8px;
}

.checkbox.form__group--error input {
	border-color: #f04438;
}

.js-kvant-feedback.is-loading .contacts-feedback__submit,
.js-kvant-feedback.is-loading .form__submit {
	pointer-events: none;
	opacity: .65;
}

.content-gallery + .object-offer {
	margin-top: 64px;
}

.js-kvant-feedback.is-loading .objects-offer__submit,
.js-kvant-feedback.is-loading .object-offer__submit {
	pointer-events: none;
	opacity: .65;
}

@media (max-width: 777px) {
	.page-object .content-gallery + .object-offer {
		margin-top: 40px;
	}
}

/* 16.10.9.1: search results use the same catalog cards, on a clean white page. */
.page-search .breadcrumbs,
.page-search .category {
    background: #ffffff;
}

.page-search .category {
    padding-top: 24px;
}

.page-search .catalog-results__list .product-card--list {
    border: 1px solid #e5e7eb;
}

.page-search .catalog-results__list .product-card__title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    overflow-wrap: anywhere;
    font-weight: 600;
    color: #111927;
}

.page-search .catalog-results__list .product-card__title:hover {
    color: #1570ef;
}

.page-search .catalog-results.is-grid .product-card--list {
    min-height: 370px;
}


@media (max-width: 575px) {
    .page-search .category {
        padding-top: 16px;
    }

    .page-search .catalog-results.is-grid .product-card--list {
        min-height: 0;
    }
}

/* 16.10.16: product buy email request, per Figma node 17209:33691. */
.page-product .product-buy__specification {
    align-items: flex-start;
    gap: 4px;
    min-height: 52px;
}

.page-product .product-buy__specification-heading {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #6c737f;
}

.page-product .product-buy__specification-heading::before {
    content: "";
    display: block;
    flex: 0 0 20.4px;
    width: 20.4px;
    height: 20.4px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='21' fill='none' viewBox='0 0 21 21'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.7' d='m1.7 5.95 6.94 4.859c.561.393.842.59 1.148.666a1.7 1.7 0 0 0 .822 0c.306-.076.587-.273 1.149-.666l6.94-4.859M5.78 17h8.84c1.428 0 2.142 0 2.688-.277a2.55 2.55 0 0 0 1.114-1.115c.278-.545.278-1.26.278-2.688V7.48c0-1.428 0-2.142-.278-2.687a2.55 2.55 0 0 0-1.114-1.115c-.546-.278-1.26-.278-2.688-.278H5.78c-1.428 0-2.142 0-2.687.278a2.55 2.55 0 0 0-1.115 1.115C1.7 5.338 1.7 6.053 1.7 7.48v5.44c0 1.428 0 2.143.278 2.688.245.48.635.87 1.115 1.114C3.638 17 4.353 17 5.78 17'/%3E%3C/svg%3E") center / contain no-repeat;
}

.page-product .product-buy__specification-email {
    position: relative;
    display: flex;
    align-items: center;
    gap: 4px;
    min-height: 24px;
    padding-left: 26px;
}

.page-product .product-buy__specification-email a {
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    color: #175cd3;
    overflow-wrap: anywhere;
}

.page-product .product-buy__specification-email a:hover {
    color: #1570ef;
}

.page-product .product-buy__specification-copy {
    display: flex;
    flex: 0 0 16px;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.page-product .product-buy__specification-copy::before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath stroke='%23d2d6db' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M10.667 10.666v1.867c0 .747 0 1.12-.145 1.405a1.34 1.34 0 0 1-.583.583c-.285.145-.658.145-1.405.145H3.467c-.746 0-1.12 0-1.405-.145a1.33 1.33 0 0 1-.583-.583c-.145-.285-.145-.658-.145-1.405V7.466c0-.746 0-1.12.145-1.405a1.34 1.34 0 0 1 .583-.583c.285-.145.659-.145 1.405-.145h1.867m2.133 5.333h5.067c.747 0 1.12 0 1.405-.145.251-.128.455-.332.583-.583.145-.285.145-.658.145-1.405V3.466c0-.746 0-1.12-.145-1.405a1.33 1.33 0 0 0-.583-.583c-.285-.145-.658-.145-1.405-.145H7.467c-.746 0-1.12 0-1.405.145a1.34 1.34 0 0 0-.583.583c-.145.285-.145.659-.145 1.405v5.067c0 .747 0 1.12.145 1.405.128.251.332.455.583.583.285.145.659.145 1.405.145'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h16v16H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E") center / contain no-repeat;
}

/* 16.10.16.1: copy feedback on the product page. */
.page-product .product-buy__specification-copy {
    position: relative;
    overflow: visible;
}

.page-product .product-buy__specification-copy::before {
    transition: transform .2s ease;
}

.page-product .product-buy__specification-copy:hover::before,
.page-product .product-buy__specification-copy:focus-visible::before {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' viewBox='0 0 16 16'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath stroke='%231570ef' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M10.667 10.666v1.867c0 .747 0 1.12-.145 1.405a1.34 1.34 0 0 1-.583.583c-.285.145-.658.145-1.405.145H3.467c-.746 0-1.12 0-1.405-.145a1.33 1.33 0 0 1-.583-.583c-.145-.285-.145-.658-.145-1.405V7.466c0-.746 0-1.12.145-1.405a1.34 1.34 0 0 1 .583-.583c.285-.145.659-.145 1.405-.145h1.867m2.133 5.333h5.067c.747 0 1.12 0 1.405-.145.251-.128.455-.332.583-.583.145-.285.145-.658.145-1.405V3.466c0-.746 0-1.12-.145-1.405a1.33 1.33 0 0 0-.583-.583c-.285-.145-.658-.145-1.405-.145H7.467c-.746 0-1.12 0-1.405.145a1.34 1.34 0 0 0-.583.583c-.145.285-.145.659-.145 1.405v5.067c0 .747 0 1.12.145 1.405.128.251.332.455.583.583.285.145.659.145 1.405.145'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h16v16H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E") center / contain no-repeat;
    transform: scale(1.1);
}

.page-product .product-buy__specification-copy.is-copied::before {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M2.8 8.3 6.4 11.7 13.2 4.5' stroke='%231570ef' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
    animation: kvant-product-copy-check .36s cubic-bezier(.2,.8,.3,1.2) both;
}

.page-product .product-buy__specification-copy::after {
    content: attr(data-copy-feedback);
    position: absolute;
    bottom: calc(100% + 9px);
    left: 50%;
    z-index: 3;
    padding: 6px 9px;
    border-radius: 5px;
    background: #111927;
    color: #fff;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.25;
    white-space: nowrap;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transform: translate(-50%, 5px);
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

.page-product .product-buy__specification-copy.is-copied::after,
.page-product .product-buy__specification-copy.is-copy-error::after {
    visibility: visible;
    opacity: 1;
    transform: translate(-50%, 0);
}

.page-product .product-buy__specification-copy.is-copy-error::after {
    background: #b42318;
}

@keyframes kvant-product-copy-check {
    0% { opacity: .4; transform: scale(.65) rotate(-12deg); }
    65% { opacity: 1; transform: scale(1.25) rotate(4deg); }
    100% { opacity: 1; transform: scale(1); }
}

@media (prefers-reduced-motion: reduce) {
    .page-product .product-buy__specification-copy::before,
    .page-product .product-buy__specification-copy::after {
        transition: none;
        animation: none;
    }
}

.page-product .product-buy__specification-copy:focus-visible {
    outline: 2px solid #1570ef;
    outline-offset: 4px;
    border-radius: 2px;
}

.page-product .product-buy__specification-feedback {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
}

/* Product option values: allow wrapping when the row is too narrow. */
.product-options__choices {
    flex-wrap: wrap;
}


/* 16.10.16.3: the selected concrete SKU option remains clearly highlighted. */
.page-product .product-options__choices input:checked + span {
    border-color: #2E90FA;
    background: #F9FAFB;
    color: #384250;
}

.page-product .product-options__choices input:checked + span:hover {
    border-color: #2E90FA;
}

/* Visible feedback while switching to the SKU of a different section/core count. */
.page-product .product-options.is-switching .product-options__choices,
.page-product .product-options.is-switching .product-options__select {
    pointer-events: none;
}

.page-product .product-options__switch-status {
    align-self: flex-start;
    color: #175cd3;
    font-size: 13px;
    line-height: 1.5;
}

/* Product sizes: keep the original Figma "Показать ещё" visible on mobile,
   where main.css otherwise hides it together with the desktop table. */
.page-product .product-sizes__more[data-kvant-sizes-more][hidden] {
    display: none !important;
}
.page-product .product-sizes__more[data-kvant-sizes-more]:disabled {
    opacity: .55;
    cursor: wait;
}
@media (max-width: 575px) {
    .page-product .product-sizes__more[data-kvant-sizes-more] {
        display: flex;
    }
}


/* Rating uses original star icons; cover the yellow proportion accurately,
   including the average rating's fractional star. */
.kvant-review-stars span {
    position: relative;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath fill='%23d2d6db' d='M9.538 1.61a.5.5 0 0 1 .924 0l2.066 4.967a.5.5 0 0 0 .422.307l5.362.43a.5.5 0 0 1 .286.878l-4.086 3.5a.5.5 0 0 0-.161.496l1.248 5.233a.5.5 0 0 1-.747.543l-4.591-2.805a.5.5 0 0 0-.522 0l-4.59 2.804a.5.5 0 0 1-.748-.542l1.248-5.233a.5.5 0 0 0-.16-.496l-4.087-3.5a.5.5 0 0 1 .286-.878l5.363-.43a.5.5 0 0 0 .421-.307z'/%3E%3C/svg%3E");
}
.kvant-review-stars span::after {
    content: '';
    position: absolute;
    inset: 0;
    width: var(--kvant-star-fill, 0%);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath fill='%23fdb022' d='M9.538 1.61a.5.5 0 0 1 .924 0l2.066 4.967a.5.5 0 0 0 .422.307l5.362.43a.5.5 0 0 1 .286.878l-4.086 3.5a.5.5 0 0 0-.161.496l1.248 5.233a.5.5 0 0 1-.747.543l-4.591-2.805a.5.5 0 0 0-.522 0l-4.59 2.804a.5.5 0 0 1-.748-.542l1.248-5.233a.5.5 0 0 0-.16-.496l-4.087-3.5a.5.5 0 0 1 .286-.878l5.363-.43a.5.5 0 0 0 .421-.307z'/%3E%3C/svg%3E");
    background-position: left center;
    background-repeat: no-repeat;
}
.product-page__rating.kvant-review-unrated::before,
.product-card__rating.kvant-review-unrated::before {
    filter: grayscale(1);
    opacity: .45;
}
.kvant-reviews-empty {
    margin: 0;
    color: #6c737f;
    font-size: 16px;
    line-height: 1.5;
}
.product-reviews__more.is-loading { opacity: .6; cursor: wait; }
.review-modal .form__error--common { margin-top: 0; }

/* Search facets: reuse the catalog sidebar but retain the white search page. */
.page-search .category__layout .catalog-filter {
    border: 1px solid #e5e7eb;
}
.page-search .category__layout .catalog-results {
    min-width: 0;
}
.page-search .kvant-search-no-results {
    margin: 20px 0;
    color: #4d5761;
}
/* Search follows the shared catalog grid: four columns on wide screens,
   then the same responsive 3/2/1-column layout as category pages. */

/* Empty cart: white breadcrumbs. Filled cart: match the gray cart background. */
.page-cart .breadcrumbs {
    background: #fff;
}

.page-cart:has([data-kvant-real-cart]) .breadcrumbs {
    background: #f3f4f6;
}

/* Section sizes use the same radio tags as cores/voltage; wrap longer lists. */
.product-options__group--section .product-options__choices {
    flex-wrap: wrap;
}

/* AJAX catalog/search filtering, sorting and pagination: product list only.
   Basket add/quantity AJAX never uses the is-ajax-loading class. */
.page-category .catalog-results .catalog-results__list,
.page-search .catalog-results .catalog-results__list {
    transition: opacity .18s ease;
}

.page-category .catalog-results.is-ajax-loading,
.page-search .catalog-results.is-ajax-loading {
    position: relative;
    pointer-events: none;
    user-select: none;
}

.page-category .catalog-results.is-ajax-loading .catalog-results__list,
.page-search .catalog-results.is-ajax-loading .catalog-results__list {
    opacity: .4;
}

.page-category .catalog-results.is-ajax-loading::after,
.page-search .catalog-results.is-ajax-loading::after {
    /* Hint is temporarily hidden; keep styles for a future re-enable. */
    display: none;
    content: 'Загружаем товары…';
    position: absolute;
    top: 88px;
    left: 50%;
    z-index: 5;
    transform: translateX(-50%);
    padding: 12px 20px;
    border: 1px solid #d2d6db;
    border-radius: 8px;
    background: #fff;
    color: #1570ef;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    white-space: nowrap;
    box-shadow: 0 4px 16px rgba(16, 24, 40, .1);
    pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
    .page-category .catalog-results .catalog-results__list,
    .page-search .catalog-results .catalog-results__list {
        transition: none;
    }
}
