/* Базовые стили собственной обёртки страниц (common/ivanko_header, этап 9б-1). Подключается первым.
   Заменяет то, что наши страницы неявно получали от темы so-monota: нормализацию и сброс bootstrap, глобальные правила blue.css
   (шрифт и цвет страницы, ссылки, заголовки, списки, картинки) и стили баннера cookie из custom.css.
   Правила намеренно повторяют тему — вид страниц не должен меняться. */

html { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); width: 100%; direction: ltr; }
*, *::before, *::after { box-sizing: border-box; }
[hidden] { display: none !important; }

body { margin: 0; background: #fff; color: #878787; font: 400 14px/26px 'Golos Text', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif; }

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary { display: block; }
b, strong { font-weight: 700; }
small { font-size: 85%; }
sub, sup { position: relative; font-size: 75%; line-height: 0; vertical-align: baseline; }
sup { top: -.5em; }
sub { bottom: -.25em; }
hr { box-sizing: content-box; height: 0; margin: 20px 0; border: 0; border-top: 1px solid #eee; }

a { color: #878787; background-color: transparent; text-decoration: none; cursor: pointer; }
a:hover { color: #15598c; text-decoration: none; }

img { max-width: 100%; vertical-align: middle; border: 0; }
svg { vertical-align: middle; }
svg:not(:root) { overflow: hidden; }

h1, h2, h3, h4, h5, h6 { margin: 0 0 15px 0; color: #000; font-family: inherit; font-weight: 500; line-height: 1.1; }
h1 { font-size: 36px; }
h2 { font-size: 30px; }
h3 { font-size: 24px; }
h4 { font-size: 18px; }
h5 { font-size: 14px; }
h6 { font-size: 12px; }
p { margin: 0 0 10px; }

ul, ol { margin-top: 0; margin-bottom: 10px; }
ul { list-style: none; margin: 0; padding: 0; }
ol { padding: 0 0 0 15px; }

dl { margin-top: 0; margin-bottom: 20px; }
dt, dd { line-height: 1.42857143; }
dt { font-weight: 700; }
dd { margin-left: 0; }
address { margin-bottom: 20px; font-style: normal; line-height: 1.42857143; }
pre, code, kbd, samp { font-family: Menlo, Monaco, Consolas, 'Courier New', monospace; font-size: 1em; }

table { border-spacing: 0; border-collapse: collapse; background-color: transparent; }
th, td { padding: 0; }
fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
label { display: inline-block; max-width: 100%; margin-bottom: 5px; font-weight: 700; }
button, input, optgroup, select, textarea { margin: 0; font: inherit; color: inherit; }
button { overflow: visible; text-transform: none; -webkit-appearance: button; cursor: pointer; }
button::-moz-focus-inner, input::-moz-focus-inner { padding: 0; border: 0; }
button[disabled], input[disabled] { cursor: default; }
input[type="text"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; }
textarea { overflow: auto; }
select { text-transform: none; }

/* Обводку фокуса не показываем (как у темы: blue.css `* { outline: none !important }`, решение пользователя 20.10.2026) */
*, *::before, *::after { outline: none !important; }

/* Баннер согласия на использование файлов cookie (макет Product Card v2; перенесено из theme/css/custom.css).
   Тёмная плашка: на десктопе слева снизу, на мобильном — полоса внизу экрана. Высота видимого баннера пишется в --cookie-h
   на <html> (ivanko-layout.js), чтобы липкие бары вставали НАД баннером. */
.cookie-consent {
	position: fixed;
	left: 24px;
	bottom: 24px;
	z-index: 1030;
	max-width: 460px;
	background: #15181C;
	color: #fff;
	border-radius: 12px;
	font-family: 'Golos Text', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
	transform: translateY(calc(100% + 24px));
	transition: transform 0.4s ease;
}

.cookie-consent.cookie-consent--visible {
	transform: translateY(0);
}

.cookie-consent__inner {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 12px 12px 12px 18px;
}

.cookie-consent__text {
	flex: 1 1 auto;
	margin: 0;
	color: #fff;
	font-size: 14px;
	line-height: 1.4;
}

.cookie-consent__text a,
.cookie-consent__text a:hover,
.cookie-consent__text a:focus {
	color: #9CCBF2;
	text-decoration: underline;
}

.cookie-consent__accept {
	flex: 0 0 auto;
	height: 36px;
	padding: 0 16px;
	border: 0;
	border-radius: 8px;
	background: #fff;
	color: #15181C;
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	line-height: 36px;
	white-space: nowrap;
	cursor: pointer;
	transition: background-color 0.2s;
}

.cookie-consent__accept:hover,
.cookie-consent__accept:focus {
	background: #E2E5E9;
	color: #15181C;
}

@media (max-width: 767px) {
	.cookie-consent {
		left: 0;
		right: 0;
		bottom: 0;
		max-width: none;
		border-radius: 0;
		transform: translateY(100%);
	}

	.cookie-consent__inner {
		gap: 12px;
		padding: 8px 8px 8px 16px;
	}

	.cookie-consent__text {
		font-size: 13px;
	}

	.cookie-consent__accept {
		padding: 0 14px;
		font-size: 13px;
	}
}

/* Полоса прокрутки — как в теме (blue.css) */
::-webkit-scrollbar { width: 7px; height: 7px; }
::-webkit-scrollbar-thumb { background: #777; }
::-webkit-scrollbar-track { background: #d6d6d6; }
