/**
 * ISCO · дизайн-токены (сгенерированы из Figma, файл 1d65x68Wj9ij5fPK3F6OBu).
 * Светлая тема — значения по умолчанию, тёмная — data-theme="dark" на <html>.
 * Инвертирующие плагины не используем: цвета переключаются только этими переменными.
 */

:root {
	/* Примитивы: бренд */
	--isco-green-900: #0c3a26;
	--isco-green-800: #105a39;
	--isco-green-700: #147a45;
	--isco-green-600: #1e9a58;
	--isco-green-500: #2db86b;
	--isco-green-300: #6fd79c;
	--isco-green-200: #bde8cf;
	--isco-green-100: #ddf3e5;
	--isco-green-50:  #f1faf4;

	/* Примитивы: солнечный CTA */
	--isco-sun-700: #db8a00;
	--isco-sun-600: #f5a800;
	--isco-sun-500: #ffc21a;
	--isco-sun-100: #fff3cc;

	/* Примитивы: акценты */
	--isco-sky-500:    #2e9bea;
	--isco-sky-100:    #e2f2fd;
	--isco-coral-500:  #f2605a;
	--isco-coral-100:  #fde7e5;
	--isco-violet-500: #7a5af8;
	--isco-violet-100: #eeeafe;
	--isco-orange-500: #ff7a45;
	--isco-orange-100: #ffe9de;
	--isco-red-600:    #d93025;
	--isco-red-100:    #fce8e6;

	/* WhatsApp — фирменный цвет мессенджера, не меняется между темами */
	--isco-whatsapp-500: #25d366;
	--isco-whatsapp-600: #1ebe5a;

	/* Нейтральные */
	--isco-neutral-0:   #ffffff;
	--isco-neutral-50:  #f7f9f6;
	--isco-neutral-100: #eef3ef;
	--isco-neutral-200: #dce6df;
	--isco-neutral-400: #9aaaa0;
	--isco-neutral-600: #56695e;
	--isco-neutral-800: #2a3b31;
	--isco-neutral-900: #10221a;

	/* Семантические токены — светлая тема */
	--isco-text-primary:   var(--isco-neutral-900);
	--isco-text-secondary: var(--isco-neutral-600);
	--isco-text-inverse:   var(--isco-neutral-0);
	--isco-text-brand:     var(--isco-green-700);
	--isco-text-error:     var(--isco-red-600);
	--isco-text-on-cta:    var(--isco-green-900);

	--isco-bg-page:       var(--isco-neutral-50);
	--isco-bg-surface:    var(--isco-neutral-0);
	--isco-bg-subtle:     var(--isco-neutral-100);
	--isco-bg-brand-soft: var(--isco-green-50);
	--isco-bg-brand:      var(--isco-green-600);
	--isco-bg-brand-deep: var(--isco-green-900);

	--isco-action-primary:         var(--isco-sun-500);
	--isco-action-primary-hover:   var(--isco-sun-600);
	--isco-action-primary-pressed: var(--isco-sun-700);
	--isco-action-secondary:         var(--isco-green-600);
	--isco-action-secondary-hover:   var(--isco-green-700);
	--isco-action-secondary-pressed: var(--isco-green-800);
	--isco-action-whatsapp:       var(--isco-whatsapp-500);
	--isco-action-whatsapp-hover: var(--isco-whatsapp-600);
	--isco-action-disabled:       var(--isco-neutral-200);

	--isco-border-default: var(--isco-neutral-200);
	--isco-border-strong:  var(--isco-neutral-400);
	--isco-border-focus:   var(--isco-green-600);
	--isco-border-error:   var(--isco-red-600);

	--isco-icon-primary:   var(--isco-neutral-900);
	--isco-icon-secondary: var(--isco-neutral-600);
	--isco-icon-brand:     var(--isco-green-700);
	--isco-icon-on-color:  var(--isco-neutral-0);
	--isco-icon-disabled:  var(--isco-neutral-400);

	--isco-accent-green:  #147a45;
	--isco-accent-sky:    #1769b0;
	--isco-accent-violet: #5b3fd6;
	--isco-accent-coral:  #c23b33;
	--isco-accent-orange: #c2410c;

	/* Шапка, строка поиска и подвал (ISCO_Layout, docs/60). Цвет бренда меняется здесь, когда Шломо выберет палитру. */
	--isco-header-bg:       var(--isco-green-900);
	--isco-header-ink:      var(--isco-green-50);
	--isco-header-line:     rgba(241, 250, 244, 0.55);
	--isco-header-pill:     var(--isco-green-100);
	--isco-header-pill-ink: var(--isco-green-900);
	--isco-searchbar-bg:    var(--isco-green-100);
	--isco-field-bg:        var(--isco-neutral-0);
	--isco-field-border:    var(--isco-neutral-600);
	--isco-footer-bg:       var(--isco-green-900);
	--isco-footer-ink:      var(--isco-green-50);

	/* Радиусы и отступы из Figma */
	--isco-radius-sm: 8px;
	--isco-radius-md: 12px;
	--isco-radius-lg: 16px;
	--isco-radius-xl: 20px;
	--isco-radius-pill: 999px;

	/* Тени */
	--isco-shadow-card:   0 2px 8px rgba(16, 34, 26, 0.06), 0 8px 24px rgba(16, 34, 26, 0.06);
	--isco-shadow-float:  0 8px 32px rgba(16, 34, 26, 0.16);
	--isco-shadow-search: 0 12px 40px rgba(16, 34, 26, 0.12);

	/* Минимальная тач-зона из ТЗ */
	--isco-touch-min: 48px;
}

/* Тёмная тема: значения по ТЗ — #121212 фон, #1E1E1E поверхности, #E0E0E0 текст */
:root[data-theme="dark"] {
	--isco-text-primary:   #e0e0e0;
	--isco-text-secondary: #a6a6a6;
	--isco-text-brand:     #5ed394;
	--isco-text-error:     #ff8a7e;

	--isco-bg-page:       #121212;
	--isco-bg-surface:    #1e1e1e;
	--isco-bg-subtle:     #2a2a2a;
	--isco-bg-brand-soft: #17251d;
	--isco-bg-brand-deep: #101010;

	--isco-action-secondary-pressed: #9be3bc;
	--isco-action-disabled: #333333;

	--isco-border-default: #333333;
	--isco-border-strong:  #5c5c5c;
	--isco-border-focus:   var(--isco-green-500);
	--isco-border-error:   #ff8a7e;

	--isco-icon-primary:   #e0e0e0;
	--isco-icon-secondary: #a6a6a6;
	--isco-icon-brand:     #5ed394;
	--isco-icon-disabled:  #5c5c5c;

	/* Мягкие подложки тегов в тёмной теме */
	--isco-green-100:  #1b3a29;
	--isco-green-200:  #26553b;
	--isco-green-50:   #13261b;
	--isco-sun-100:    #3a3014;
	--isco-sky-100:    #15293a;
	--isco-coral-100:  #3b1d1c;
	--isco-violet-100: #251f44;
	--isco-orange-100: #3a2517;
	--isco-red-100:    #3a1b19;
	--isco-neutral-100: #2a2a2a;
	--isco-neutral-200: #333333;

	--isco-accent-green:  #6fd79c;
	--isco-accent-sky:    #7cc4f5;
	--isco-accent-violet: #b3a1ff;
	--isco-accent-coral:  #ff9a92;
	--isco-accent-orange: #ffa46f;

	--isco-header-bg:       #101010;
	--isco-header-ink:      #e0e0e0;
	--isco-header-line:     rgba(224, 224, 224, 0.5);
	--isco-header-pill:     #1b3a29;
	--isco-header-pill-ink: #e0e0e0;
	--isco-searchbar-bg:    #17251d;
	--isco-field-bg:        #1e1e1e;
	--isco-field-border:    #7a7a7a;
	--isco-footer-bg:       #101010;
	--isco-footer-ink:      #e0e0e0;

	--isco-shadow-card:   0 2px 8px rgba(0, 0, 0, 0.4);
	--isco-shadow-float:  0 8px 32px rgba(0, 0, 0, 0.55);
	--isco-shadow-search: 0 12px 40px rgba(0, 0, 0, 0.5);
}

/* Пока пользователь не выбрал тему сам — идём за системной настройкой */
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) {
		color-scheme: dark;
	}
}

html,
body {
	background-color: var(--isco-bg-page);
	color: var(--isco-text-primary);
}

/* Тач-зоны: минимум 48×48 на сенсорных экранах */
@media (pointer: coarse) {
	.isco-touch,
	.elementor-button,
	.isco-chip,
	.isco-tab,
	button,
	[role="button"] {
		min-block-size: var(--isco-touch-min);
		min-inline-size: var(--isco-touch-min);
	}
}

/* Фокус для клавиатурной навигации (требование доступности) */
:where(a, button, input, select, textarea, [tabindex]):focus-visible {
	outline: 3px solid var(--isco-border-focus);
	outline-offset: 2px;
	border-radius: var(--isco-radius-sm);
}

/* Кнопки бренда */
.isco-btn-primary {
	background-color: var(--isco-action-primary);
	color: var(--isco-text-on-cta);
}

.isco-btn-primary:hover {
	background-color: var(--isco-action-primary-hover);
}

.isco-btn-secondary {
	background-color: var(--isco-action-secondary);
	color: var(--isco-text-inverse);
}

.isco-btn-whatsapp {
	background-color: var(--isco-action-whatsapp);
	color: var(--isco-text-inverse);
}

/* Завершённая смена — Grey State карточки */
.isco-card--expired .isco-card__media {
	filter: grayscale(0.85);
	opacity: 0.55;
}

.isco-card--expired .isco-card__price {
	text-decoration: line-through;
	color: var(--isco-text-secondary);
}
