@charset "UTF-8";
/* 01. Meyer Reset CSS v2.0 | 20110126
  License: none (public domain)
*/
@import url("reset.css");
/* line 5, reset.scss */
.cookie-text p, .js-cookies-button {
  font-family: var(--hte-small-text-16-font-family) !important; }

/* line 8, reset.scss */
.button.button_size-l.js-cookies-button {
  border-radius: 100px !important;
  font-size: 16px !important;
  color: black !important;
  background: white !important;
  padding: 0 30px !important;
  margin: 5px; }

/* line 16, reset.scss */
.button.button_size-l {
  height: 40px !important; }

/* line 20, reset.scss */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
/* line 41, reset.scss */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

/* line 45, reset.scss */
body {
  line-height: 1; }

/* line 48, reset.scss */
ol, ul {
  list-style: none; }

/* line 51, reset.scss */
blockquote, q {
  quotes: none; }

/* line 54, reset.scss */
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

/* line 59, reset.scss */
table {
  border-collapse: collapse;
  border-spacing: 0; }

/* 02. CSS Variables */
/* line 2, variables.scss */
:root {
  /* Border Radius Variables */
  --border-radius-sm: 10px;
  /* Для небольших кнопок и элементов */
  --border-radius-md: 20px;
  /* Для карточек и основных блоков */
  --border-radius-xl: 30px;
  /* Для кнопок, интерактивных элементов и переключателей */
  --border-radius-xxl: 100px;
  /* Для кнопок и круглых элементов */
  /* Border Width Variables */
  --border-width-thin: 1px;
  /* Тонкая граница для разделителей и легких элементов */
  --border-width-normal: 1.5px;
  /* Обычная граница для кнопок и интерактивных элементов */
  /* Opacity Variables */
  --opacity-low: 0.3;
  /* Для второстепенных элементов (ссылки в футере, юридическая информация) */
  --opacity-medium: 0.5;
  /* Для описательного текста, для ховеров */
  --opacity-high: 0.6;
  /* Для важного, но не основного текста */
  /* Layout Variables */
  --max-width-content: 1280px;
  /* Контентные секции (features, additional-products) */
  --max-width-panel: 800px;
  /* Панели настроек и форм */
  --max-width-product: 1280px;
  /* Основная секция продукта */
  --max-width-section: 1360px;
  /* Секции с расширенной шириной (product-section, features, additional-products) */
  --width-details: 800px;
  /* Детали продукта */
  --max-width-settings: 420px;
  /* Панель настроек */
  --min-width-feature: 390px;
  /* Минимальная ширина feature-content */
  /* Breakpoint Variables */
  --breakpoint-tablet: 1279px;
  /* Планшеты (header, product-section, additional-products) */
  --breakpoint-mobile: 720px;
  /* Мобильные (features-section, additional-products, product-section) */
  --breakpoint-mobile-alt: 719px;
  /* Мобильные (header) */
  /* Spacing Variables */
  --spacing-4: 4px;
  /* Минимальные отступы */
  --spacing-5: 5px;
  /* Маленькие отступы */
  --spacing-8: 8px;
  /* Базовые отступы */
  --spacing-10: 10px;
  /* Стандартные отступы */
  --spacing-12: 12px;
  /* Отступы для карточек */
  --spacing-15: 15px;
  /* Средние отступы */
  --spacing-20: 20px;
  /* Большие отступы */
  --spacing-24: 24px;
  /* Отступы для карточек */
  --spacing-25: 25px;
  /* Отступы для секций */
  --spacing-28: 28px;
  /* Отступы для текста */
  --spacing-30: 30px;
  /* Отступы для заголовков */
  --spacing-32: 32px;
  /* Отступы для планов и списков */
  --spacing-35: 35px;
  /* Отступы для карточек */
  --spacing-40: 40px;
  /* Отступы для контейнеров */
  --spacing-60: 60px;
  /* Отступы для продуктовых секций */
  --spacing-80: 80px;
  /* Основные отступы страницы */
  --spacing-120: 120px;
  /* Большие отступы страницы */
  /* Color Variables */
  --hte-white: #ffffff;
  --hte-black: #1a1a1a;
  --hte-bg-fill: #f9f9f4;
  --hte-border: #cacaca;
  --hte-grey-text: #9d9d9d;
  --hte-dark-accent: #ebebe3;
  --hte-super-dark-accent: #d4d4cd;
  /* Typography Variables */
  --hte-font-family: "Futura PT", Helvetica, Arial, sans-serif;
  /* HTE - micro text 14 */
  --hte-micro-text-14-font-family: var(--hte-font-family);
  --hte-micro-text-14-font-size: 14px;
  --hte-micro-text-14-font-style: normal;
  --hte-micro-text-14-font-weight: 400;
  --hte-micro-text-14-line-height: 100%;
  /* HTE - small text 16 */
  --hte-small-text-16-font-family: var(--hte-font-family);
  --hte-small-text-16-font-size: 16px;
  --hte-small-text-16-font-style: normal;
  --hte-small-text-16-font-weight: 400;
  --hte-small-text-16-line-height: 100%;
  --hte-small-text-16-letter-spacing: -0.16px;
  /* HTE - body 18 */
  --hte-body-18-font-family: var(--hte-font-family);
  --hte-body-18-font-size: 18px;
  --hte-body-18-font-style: normal;
  --hte-body-18-font-weight: 400;
  --hte-body-18-line-height: 120%;
  --hte-body-18-letter-spacing: -0.18px;
  /* HTE - H4 */
  --hte-h4-font-family: var(--hte-font-family);
  --hte-h4-font-size: 18px;
  --hte-h4-font-style: normal;
  --hte-h4-font-weight: 400;
  --hte-h4-line-height: 110%;
  --hte-h4-text-transform: uppercase;
  /* HTE - H2 */
  --hte-h2-font-family: var(--hte-font-family);
  --hte-h2-font-size: 30px;
  --hte-h2-font-style: normal;
  --hte-h2-font-weight: 400;
  --hte-h2-line-height: 100%;
  --hte-h2-letter-spacing: -0.6px;
  --hte-h2-text-transform: uppercase;
  /* HTE - H1 */
  --hte-h1-font-family: var(--hte-font-family);
  --hte-h1-font-size: 35px;
  --hte-h1-font-style: normal;
  --hte-h1-font-weight: 400;
  --hte-h1-line-height: 100%;
  --hte-h1-letter-spacing: -0.7px;
  --hte-h1-text-transform: uppercase; }

/* 03. Global Styles */
@font-face {
  font-family: 'Futura PT';
  src: url("./futura-pt-book.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap; }
/* line 12, global.scss */
* {
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box; }

/* line 17, global.scss */
body {
  padding-top: 120px; }

/* Global Button Styles */
/* line 22, global.scss */
.add-to-cart-btn {
  all: unset;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  padding: 0 var(--spacing-20);
  background-color: var(--hte-black);
  border: var(--border-width-normal) solid var(--hte-black);
  border-radius: var(--border-radius-xxl);
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  color: var(--hte-white);
  letter-spacing: var(--hte-body-18-letter-spacing);
  line-height: var(--hte-body-18-line-height);
  white-space: nowrap;
  cursor: pointer;
  transition: all 0.3s ease; }

/* line 43, global.scss */
.add-to-cart-btn:hover {
  background-color: transparent;
  border: var(--border-width-normal) solid var(--hte-black);
  color: var(--hte-black); }

/* Page Layout Styles */
/* line 50, global.scss */
.product-page-desktop {
  background-color: var(--hte-white);
  font-family: var(--hte-font-family);
  color: var(--hte-black);
  line-height: 1.5; }

/* White Button Styles */
/* line 59, global.scss */
.white-btn {
  all: unset;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  padding: 0 var(--spacing-20);
  background-color: var(--hte-white);
  border: var(--border-width-normal) solid var(--hte-white);
  border-radius: var(--border-radius-xxl);
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  color: var(--hte-black);
  letter-spacing: var(--hte-body-18-letter-spacing);
  line-height: var(--hte-body-18-line-height);
  white-space: nowrap;
  cursor: pointer;
  transition: all 0.3s ease; }

/* line 80, global.scss */
.white-btn:hover {
  background-color: transparent;
  border: var(--border-width-normal) solid var(--hte-white);
  color: var(--hte-white); }

/* line 86, global.scss */
.container {
  max-width: 100vw;
  margin: 0 auto;
  position: relative;
  overflow: hidden; }

/* Main Content */
/* line 94, global.scss */
.main-content {
  padding-top: var(--spacing-120);
  margin: 0 auto; }

/* line 103, global.scss */
.widget-type_hte-cover-image {
  padding-top: 0; }

/* line 107, global.scss */
#hte-product-form {
  display: none; }

/* 02. Product Section Styles */
/* Product Section */
/* line 5, 02-product-section.css */
.product-section {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--spacing-40);
  margin-bottom: var(--spacing-80);
  padding-left: var(--spacing-40);
  padding-right: var(--spacing-40);
  max-width: var(--max-width-section);
  margin-left: auto;
  margin-right: auto; }

/* line 18, 02-product-section.css */
.product-details {
  display: flex;
  flex-direction: column;
  width: var(--width-details);
  gap: var(--spacing-40); }

/* line 25, 02-product-section.css */
.product-header {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10);
  width: 100%; }

/* line 32, 02-product-section.css */
.product-title {
  font-family: var(--hte-h1-font-family);
  font-size: var(--hte-h1-font-size);
  font-weight: var(--hte-h1-font-weight);
  color: var(--hte-black);
  letter-spacing: var(--hte-h1-letter-spacing);
  line-height: var(--hte-h1-line-height);
  text-transform: var(--hte-h1-text-transform);
  margin: 0; }

/* line 43, 02-product-section.css */
.menu-selector {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: var(--spacing-25);
  width: 100%; }

/* line 52, 02-product-section.css */
.menu-info {
  display: flex;
  align-items: center;
  gap: var(--spacing-10); }

/* line 58, 02-product-section.css */
.menu-description {
  font-family: var(--hte-small-text-16-font-family);
  font-size: var(--hte-small-text-16-font-size);
  font-weight: var(--hte-small-text-16-font-weight);
  color: var(--hte-black);
  opacity: var(--opacity-medium);
  margin: 0; }

/* line 67, 02-product-section.css */
.day-navigation {
  display: flex;
  align-items: center;
  gap: var(--spacing-10); }

/* line 75, 02-product-section.css */
.days-container {
  display: flex;
  align-items: center;
  width: auto;
  min-height: 20px; }

/* line 82, 02-product-section.css */
.day-item {
  font-family: var(--hte-small-text-16-font-family);
  font-size: var(--hte-small-text-16-font-size);
  font-weight: var(--hte-small-text-16-font-weight);
  color: var(--hte-black);
  text-decoration: underline;
  white-space: nowrap;
  display: none; }

/* line 92, 02-product-section.css */
.current-day {
  display: block; }

/* line 96, 02-product-section.css */
.current-day {
  font-family: var(--hte-small-text-16-font-family);
  font-size: var(--hte-small-text-16-font-size);
  font-weight: var(--hte-small-text-16-font-weight);
  color: var(--hte-black);
  text-decoration: underline;
  white-space: nowrap;
  cursor: pointer;
  transition: color 0.3s ease; }

/* line 107, 02-product-section.css */
.current-day:hover {
  color: var(--hte-grey-text); }

/* line 111, 02-product-section.css */
.nutrition-info {
  display: flex;
  align-items: center;
  gap: 0; }

/* line 117, 02-product-section.css */
.nutrition-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 27px;
  padding: 0 var(--spacing-10);
  border: var(--border-width-normal) solid var(--hte-dark-accent);
  border-radius: var(--border-radius-xxl);
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-black);
  white-space: nowrap; }

/* line 132, 02-product-section.css */
.dishes-gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  overflow: hidden;
  width: var(--width-details);
  justify-items: start;
  align-items: start; }

/* line 142, 02-product-section.css */
.dish-item {
  aspect-ratio: 1;
  position: relative;
  min-width: 0;
  width: 100%;
  height: 0;
  padding-bottom: 100%;
  /* Создает квадрат */ }

/* line 151, 02-product-section.css */
.dish-item img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; }

/* line 160, 02-product-section.css */
.dish-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease; }

/* line 174, 02-product-section.css */
.dish-overlay span {
  font-family: var(--hte-small-text-16-font-family);
  font-size: var(--hte-small-text-16-font-size);
  font-weight: var(--hte-small-text-16-font-weight);
  color: var(--hte-black);
  text-align: center;
  padding: 0 var(--spacing-20);
  line-height: 18px; }

/* line 184, 02-product-section.css */
.dish-item:hover .dish-overlay {
  opacity: 1; }

/* line 188, 02-product-section.css */
.dish-item:hover img {
  filter: blur(8px); }

/* line 192, 02-product-section.css */
.dish-item {
  cursor: default; }

/* line 196, 02-product-section.css */
.product-description {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-15); }

/* line 202, 02-product-section.css */
.description-title {
  font-family: var(--hte-h2-font-family);
  font-size: var(--hte-h2-font-size);
  font-weight: var(--hte-h2-font-weight);
  color: var(--hte-black);
  letter-spacing: var(--hte-h2-letter-spacing);
  line-height: var(--hte-h2-line-height);
  text-transform: var(--hte-h2-text-transform);
  margin: 0; }

/* line 213, 02-product-section.css */
.description-text {
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  color: var(--hte-black);
  letter-spacing: var(--hte-body-18-letter-spacing);
  line-height: var(--hte-body-18-line-height);
  opacity: var(--opacity-high);
  margin: 0; }

/* Settings Panel */
/* line 225, 02-product-section.css */
.settings-panel {
  display: flex !important;
  flex-direction: column;
  width: 100%;
  max-width: var(--max-width-settings);
  gap: var(--spacing-25);
  padding: var(--spacing-20);
  background-color: var(--hte-bg-fill);
  border-radius: var(--border-radius-xl);
  border: var(--border-width-thin) solid var(--hte-dark-accent); }

/* line 237, 02-product-section.css */
.setting-group {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10); }

/* line 243, 02-product-section.css */
.setting-header {
  display: flex;
  align-items: center;
  gap: 6px; }

/* line 249, 02-product-section.css */
.info-icon {
  display: flex;
  width: 16px;
  height: 16px;
  justify-content: center;
  align-items: center;
  border: 1px solid var(--hte-super-dark-accent);
  border-radius: 50%;
  background-color: transparent; }

/* line 260, 02-product-section.css */
.info-icon svg {
  width: 1.5px;
  height: 9px;
  flex-shrink: 0; }

/* line 266, 02-product-section.css */
.setting-header span {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-grey-text); }

/* line 273, 02-product-section.css */
.calorie-options {
  display: flex;
  align-items: center;
  background-color: var(--hte-white);
  border-radius: var(--border-radius-xxl);
  overflow: visible;
  width: fit-content;
  position: relative; }

/* line 283, 02-product-section.css */
.calorie-option {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--spacing-5);
  padding: 0 var(--spacing-15);
  height: 42px;
  border: none;
  background: none;
  cursor: pointer;
  border-radius: var(--border-radius-xl);
  position: relative;
  z-index: 1; }

/* line 298, 02-product-section.css */
.calorie-options::after {
  content: '';
  position: absolute;
  top: -1.5px;
  left: var(--active-left, 0);
  width: var(--active-width, 80px);
  height: 100%;
  border: var(--border-width-normal) solid var(--hte-black);
  border-radius: var(--border-radius-xl);
  transition: all 0.3s ease;
  pointer-events: none;
  z-index: 0; }

/* line 312, 02-product-section.css */
.calorie-value {
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  color: var(--hte-black);
  letter-spacing: var(--hte-body-18-letter-spacing);
  line-height: var(--hte-body-18-line-height);
  white-space: nowrap; }

/* line 322, 02-product-section.css */
.calorie-unit {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-black);
  opacity: var(--opacity-high); }

/* line 330, 02-product-section.css */
.diet-options {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-8); }

/* line 336, 02-product-section.css */
.diet-option {
  display: inline-flex;
  align-items: center;
  height: 42px;
  padding: 0 var(--spacing-20);
  border: var(--border-width-normal) solid var(--hte-border);
  border-radius: var(--border-radius-xl);
  background-color: var(--hte-white);
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  line-height: var(--hte-body-18-line-height);
  color: var(--hte-black);
  cursor: pointer;
  transition: all 0.3s ease; }

/* line 353, 02-product-section.css */
.diet-option.active {
  border: var(--border-width-normal) solid var(--hte-black); }

/* Убрано: CSS правила для .hidden классов больше не нужны
   Секции создаются динамически только когда есть соответствующие данные */
/* Анимации для появления элементов в settings-panel */
@keyframes slideInFadeIn {
  from {
    opacity: 0;
    transform: translateY(-8px); }
  to {
    opacity: 1;
    transform: translateY(0); } }
/* Класс для анимации появления новых элементов */
/* line 373, 02-product-section.css */
.settings-panel-animate {
  animation: slideInFadeIn 0.25s ease-out; }

/* Плавные переходы для изменения содержимого */
/* line 378, 02-product-section.css */
.setting-group {
  transition: all 0.2s ease-out; }

/* line 382, 02-product-section.css */
.meal-options {
  transition: all 0.2s ease-out; }

/* line 386, 02-product-section.css */
.separator-line {
  transition: opacity 0.2s ease-out; }

/* Анимация для обновления delivery-info */
/* line 391, 02-product-section.css */
.delivery-info {
  transition: transform 0.3s ease-out; }

/* line 395, 02-product-section.css */
.delivery-info.updating {
  transform: translateY(-2px); }

/* line 399, 02-product-section.css */
.separator-line {
  width: 100%;
  height: var(--border-width-thin);
  border: none;
  background-color: var(--hte-dark-accent);
  margin: 0; }

/* line 407, 02-product-section.css */
.meal-options {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10); }

/* line 413, 02-product-section.css */
.meal-option {
  display: flex;
  align-items: center;
  gap: var(--spacing-15); }

/* line 419, 02-product-section.css */
.toggle-switch {
  display: flex;
  width: 45px;
  height: 27px;
  align-items: center;
  padding: 6px;
  background-color: var(--hte-white);
  border: var(--border-width-normal) solid var(--hte-border);
  border-radius: var(--border-radius-xl);
  cursor: pointer;
  transition: border-color 0.3s ease, justify-content 0.3s ease; }

/* line 432, 02-product-section.css */
.toggle-switch.active {
  border: var(--border-width-normal) solid var(--hte-black);
  justify-content: flex-end; }

/* line 437, 02-product-section.css */
.toggle-circle {
  width: 15px;
  height: 15px;
  background-color: var(--hte-border);
  border-radius: var(--border-radius-xxl);
  transition: background-color 0.3s ease;
  flex-shrink: 0; }

/* line 446, 02-product-section.css */
.toggle-switch.active .toggle-circle {
  background-color: var(--hte-black); }

/* line 450, 02-product-section.css */
.meal-option span {
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  color: var(--hte-black);
  letter-spacing: var(--hte-body-18-letter-spacing);
  line-height: var(--hte-body-18-line-height); }

/* line 459, 02-product-section.css */
.allergen-section {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-15);
  position: relative; }

/* line 466, 02-product-section.css */
.allergen-header h3 {
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  line-height: var(--hte-body-18-line-height);
  color: var(--hte-black);
  text-decoration: underline;
  margin: 0 0 var(--spacing-10) 0; }

/* line 476, 02-product-section.css */
.allergen-trigger {
  cursor: pointer;
  transition: color 0.3s ease; }

/* line 481, 02-product-section.css */
.allergen-trigger:hover {
  color: var(--hte-grey-text); }

/* line 485, 02-product-section.css */
.allergen-info {
  margin: 0; }

/* line 489, 02-product-section.css */
.info-text {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-grey-text); }

/* line 496, 02-product-section.css */
.price {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-black); }

/* line 503, 02-product-section.css */
.allergen-tags {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-8); }

/* line 509, 02-product-section.css */
.allergen-tag {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  height: 30px;
  padding: 0 var(--spacing-5) 2px var(--spacing-10);
  background-color: var(--hte-white);
  border: var(--border-width-normal) solid var(--hte-border);
  border-radius: var(--border-radius-xxl);
  font-family: var(--hte-small-text-16-font-family);
  font-size: var(--hte-small-text-16-font-size);
  font-weight: var(--hte-small-text-16-font-weight);
  color: var(--hte-black);
  transition: border-color 0.3s ease; }

/* line 525, 02-product-section.css */
.allergen-tag:hover {
  border-color: var(--hte-super-dark-accent); }

/* line 529, 02-product-section.css */
.remove-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border: none;
  background: none;
  cursor: pointer;
  font-size: 12px;
  color: var(--hte-grey-text);
  transition: color 0.3s ease;
  border-radius: 50%; }

/* line 544, 02-product-section.css */
.remove-btn:hover {
  color: var(--hte-black);
  background-color: var(--hte-dark-accent); }

/* line 549, 02-product-section.css */
.allergen-note {
  display: none;
  align-items: center;
  gap: 6px; }

/* line 557, 02-product-section.css */
.allergen-note span {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-grey-text); }

/* Allergen Dropdown */
/* line 565, 02-product-section.css */
.allergen-dropdown {
  display: none;
  position: absolute;
  top: 0px;
  left: -90%;
  background-color: var(--hte-white);
  border: var(--border-width-thin) solid var(--hte-border);
  border-radius: var(--border-radius-xl);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  width: 280px;
  overflow: hidden; }

/* line 579, 02-product-section.css */
.allergen-dropdown.active {
  display: block; }

/* line 583, 02-product-section.css */
.allergen-dropdown .dropdown-header {
  padding: var(--spacing-15) var(--spacing-15) 0 var(--spacing-15);
  width: 100%; }

/* line 588, 02-product-section.css */
.allergen-dropdown .dropdown-header span {
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  color: var(--hte-black); }

/* line 595, 02-product-section.css */
.search-container {
  position: relative;
  padding: var(--spacing-15);
  border-bottom: var(--border-width-thin) solid var(--hte-dark-accent); }

/* line 601, 02-product-section.css */
.search-icon {
  position: absolute;
  left: var(--spacing-25);
  top: 39px;
  transform: translateY(-50%);
  z-index: 1; }

/* line 609, 02-product-section.css */
.allergen-search {
  width: 100%;
  height: 40px;
  padding: 0 var(--spacing-15) 0 40px;
  border: var(--border-width-normal) solid var(--hte-border);
  border-radius: var(--border-radius-xl);
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  color: var(--hte-black);
  background-color: var(--hte-white); }

/* line 621, 02-product-section.css */
.allergen-search::placeholder {
  color: var(--hte-grey-text); }

/* line 625, 02-product-section.css */
.allergen-list {
  max-height: 200px;
  overflow-y: auto; }

/* line 630, 02-product-section.css */
.allergen-item {
  display: flex;
  align-items: center;
  gap: var(--spacing-10);
  padding: var(--spacing-10);
  cursor: pointer;
  transition: background-color 0.3s ease; }

/* line 639, 02-product-section.css */
.allergen-item:hover {
  background-color: var(--hte-dark-accent); }

/* line 643, 02-product-section.css */
.allergen-item.selected {
  background-color: var(--hte-super-dark-accent); }

/* line 647, 02-product-section.css */
.checkbox {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border: var(--border-width-normal) solid var(--hte-border);
  border-radius: var(--border-radius-xxl);
  transition: all 0.3s ease;
  flex-shrink: 0; }

/* line 659, 02-product-section.css */
.checkbox.active {
  border-color: var(--hte-black);
  background-color: var(--hte-black); }

/* line 664, 02-product-section.css */
.checkbox-inner {
  width: 8px;
  height: 8px;
  background-color: var(--hte-white);
  border-radius: 50%;
  opacity: 0;
  transition: opacity 0.3s ease; }

/* line 673, 02-product-section.css */
.checkbox.active .checkbox-inner {
  opacity: 1; }

/* line 677, 02-product-section.css */
.allergen-name {
  flex: 1;
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  line-height: var(--hte-body-18-line-height);
  color: var(--hte-black); }

/* line 686, 02-product-section.css */
.allergen-price {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-grey-text); }

/* Delivery Time Dropdown */
/* line 694, 02-product-section.css */
.delivery-time-dropdown {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: var(--hte-white);
  border: var(--border-width-thin) solid var(--hte-border);
  border-radius: var(--border-radius-md);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  width: 100%;
  margin-top: var(--spacing-5);
  overflow: hidden; }

/* line 709, 02-product-section.css */
.delivery-time-dropdown.active {
  display: block; }

/* line 713, 02-product-section.css */
.time-list {
  max-height: 200px;
  overflow-y: auto; }

/* line 718, 02-product-section.css */
.time-item {
  display: flex;
  align-items: center;
  padding: var(--spacing-10) var(--spacing-15);
  cursor: pointer;
  transition: background-color 0.3s ease;
  border-bottom: var(--border-width-thin) solid var(--hte-dark-accent); }

/* line 727, 02-product-section.css */
.time-item:last-child {
  border-bottom: none; }

/* line 731, 02-product-section.css */
.time-item:hover {
  background-color: var(--hte-dark-accent); }

/* line 735, 02-product-section.css */
.time-item.selected {
  background-color: var(--hte-super-dark-accent); }

/* line 739, 02-product-section.css */
.time-slot {
  font-family: var(--hte-small-text-16-font-family);
  font-size: var(--hte-small-text-16-font-size);
  font-weight: var(--hte-small-text-16-font-weight);
  color: var(--hte-black); }

/* line 746, 02-product-section.css */
.order-summary {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-15);
  padding-top: var(--spacing-25);
  border-top: var(--border-width-thin) solid var(--hte-dark-accent); }

/* Убираем верхний бордер и отступ если нет опций у продукта */
/* line 755, 02-product-section.css */
.order-summary.no-options {
  border-top: none;
  padding-top: 0; }

/* line 760, 02-product-section.css */
.price-info {
  display: flex;
  align-items: center;
  justify-content: space-between; }

/* line 766, 02-product-section.css */
.price-label {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-black); }

/* Price Display Components */
/* line 774, 02-product-section.css */
.price-display {
  display: flex;
  align-items: center;
  gap: 4px; }

/* line 780, 02-product-section.css */
.total-price {
  font-family: var(--hte-h2-font-family);
  font-size: var(--hte-h2-font-size);
  font-weight: var(--hte-h2-font-weight);
  color: var(--hte-black);
  letter-spacing: var(--hte-h2-letter-spacing);
  line-height: var(--hte-h2-line-height); }

/* line 789, 02-product-section.css */
.price-period {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-black);
  opacity: var(--opacity-high); }

/* line 797, 02-product-section.css */
.order-actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--spacing-15); }

/* line 806, 02-product-section.css */
.delivery-info {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-grey-text);
  margin: 0;
  text-align: center; }

/* Quantity Popup */
/* line 816, 02-product-section.css */
.quantity-popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  display: none; }

/* line 826, 02-product-section.css */
.quantity-popup.active {
  display: flex;
  align-items: center;
  justify-content: center; }

/* line 832, 02-product-section.css */
.popup-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px); }

/* line 843, 02-product-section.css */
.popup-content {
  position: relative;
  background-color: var(--hte-white);
  border-radius: var(--border-radius-md);
  padding: var(--spacing-8);
  max-width: 900px;
  width: 90%;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  display: flex;
  gap: var(--spacing-40); }

/* line 855, 02-product-section.css */
.popup-left-section {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: var(--spacing-15) 0 var(--spacing-15) var(--spacing-15); }

/* line 863, 02-product-section.css */
.popup-form {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-30); }

/* line 869, 02-product-section.css */
.popup-header {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-12); }

/* line 875, 02-product-section.css */
.popup-title {
  font-family: var(--hte-h1-font-family);
  font-size: var(--hte-h1-font-size);
  font-weight: var(--hte-h1-font-weight);
  color: var(--hte-black);
  margin: 0;
  text-transform: uppercase;
  line-height: 35px; }

/* line 885, 02-product-section.css */
.popup-description {
  font-family: var(--hte-small-text-16-font-family);
  font-size: var(--hte-small-text-16-font-size);
  font-weight: var(--hte-small-text-16-font-weight);
  color: var(--hte-black);
  margin: 0;
  opacity: var(--opacity-medium);
  line-height: 16px; }

/* line 895, 02-product-section.css */
.popup-close {
  position: absolute;
  top: var(--spacing-15);
  right: var(--spacing-15);
  width: 26px;
  height: 26px;
  background: var(--hte-white);
  border: none;
  cursor: pointer;
  padding: 0;
  border-radius: var(--border-radius-sm);
  transition: background-color 0.3s ease;
  z-index: 100;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  justify-content: center; }

/* line 914, 02-product-section.css */
.popup-close:hover {
  background-color: var(--hte-dark-accent); }

/* line 918, 02-product-section.css */
.popup-inputs {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-12); }

/* line 924, 02-product-section.css */
.input-row {
  display: flex;
  gap: var(--spacing-12); }

/* line 929, 02-product-section.css */
.input-field {
  flex: 1;
  position: relative; }

/* line 934, 02-product-section.css */
.input-field input {
  width: 100%;
  height: 44px;
  padding: var(--spacing-15) var(--spacing-15);
  background-color: var(--hte-white);
  border: var(--border-width-thin) solid var(--hte-dark-accent);
  border-radius: var(--border-radius-xxl);
  font-family: var(--hte-small-text-16-font-family);
  font-size: var(--hte-small-text-16-font-size);
  font-weight: var(--hte-small-text-16-font-weight);
  color: var(--hte-black);
  outline: none; }

/* line 948, 02-product-section.css */
.input-field input::placeholder {
  color: var(--hte-grey-text); }

/* line 952, 02-product-section.css */
.input-field.with-icon {
  display: flex;
  align-items: center; }

/* line 957, 02-product-section.css */
.input-field.with-icon input {
  padding-right: var(--spacing-40); }

/* line 961, 02-product-section.css */
.input-field.with-icon svg {
  position: absolute;
  right: var(--spacing-15);
  opacity: var(--opacity-medium);
  transition: transform 0.3s ease; }

/* line 968, 02-product-section.css */
.input-field.with-icon.active svg {
  transform: rotate(180deg); }

/* Calendar Dropdown */
/* line 973, 02-product-section.css */
.calendar-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  width: 241px;
  height: auto;
  background: var(--hte-white);
  border-radius: var(--border-radius-md);
  box-shadow: 0px 4px 24px rgba(0, 0, 0, 0.15);
  padding: var(--spacing-20);
  margin-top: var(--spacing-5);
  z-index: 1000;
  display: none;
  flex-direction: column;
  gap: var(--spacing-20); }

/* line 992, 02-product-section.css */
.calendar-dropdown.active {
  display: flex; }

/* line 996, 02-product-section.css */
.calendar-header {
  display: flex;
  justify-content: space-between;
  align-items: center; }

/* line 1002, 02-product-section.css */
.calendar-nav-btn {
  width: 27px;
  height: 27px;
  border: var(--border-width-normal) solid var(--hte-dark-accent);
  border-radius: var(--border-radius-sm);
  background: var(--hte-white);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease; }

/* line 1015, 02-product-section.css */
.calendar-nav-btn:hover {
  background: var(--hte-dark-accent); }

/* line 1019, 02-product-section.css */
.calendar-nav-btn.disabled {
  opacity: var(--opacity-low);
  cursor: not-allowed;
  pointer-events: none; }

/* line 1025, 02-product-section.css */
.calendar-nav-btn.disabled:hover {
  background: var(--hte-white); }

/* line 1029, 02-product-section.css */
.calendar-title {
  display: flex;
  gap: 5px;
  align-items: center; }

/* line 1035, 02-product-section.css */
.calendar-month {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-black);
  line-height: 14px; }

/* line 1043, 02-product-section.css */
.calendar-year {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-super-dark-accent);
  line-height: 14px; }

/* line 1051, 02-product-section.css */
.calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 0;
  width: 189px; }

/* line 1058, 02-product-section.css */
.calendar-day-header {
  width: 27px;
  height: 27px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--hte-micro-text-14-font-family);
  font-size: 12px;
  font-weight: 450;
  color: var(--hte-grey-text);
  line-height: 12px; }

/* line 1071, 02-product-section.css */
.calendar-day {
  width: 27px;
  height: 27px;
  background: var(--hte-white);
  border: var(--border-width-normal) solid var(--hte-white);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-family: var(--hte-micro-text-14-font-family);
  font-size: 12px;
  font-weight: 450;
  line-height: 12px;
  transition: all 0.3s ease; }

/* line 1087, 02-product-section.css */
.calendar-day.inactive {
  color: var(--hte-super-dark-accent);
  pointer-events: none;
  /* Отключаем клики по недоступным дням */
  cursor: not-allowed; }

/* line 1093, 02-product-section.css */
.calendar-day.past {
  color: var(--hte-grey-text);
  opacity: var(--opacity-low);
  cursor: not-allowed;
  pointer-events: none; }

/* Специальные стили для недоступных дней в calendar-dropdown */
/* line 1101, 02-product-section.css */
.calendar-day.unavailable {
  color: var(--hte-grey-text);
  opacity: var(--opacity-low);
  cursor: not-allowed;
  pointer-events: none;
  background: var(--hte-super-dark-accent);
  border: var(--border-width-normal) solid var(--hte-white);
  position: relative; }

/* line 1111, 02-product-section.css */
.calendar-day.unavailable::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1px;
  height: 12px;
  background: var(--hte-grey-text);
  transform: translate(-50%, -50%) rotate(45deg); }

/* line 1122, 02-product-section.css */
.calendar-day.unavailable::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1px;
  height: 12px;
  background: var(--hte-grey-text);
  transform: translate(-50%, -50%) rotate(-45deg); }

/* line 1133, 02-product-section.css */
.calendar-day.active {
  color: var(--hte-black); }

/* line 1137, 02-product-section.css */
.calendar-day.outlined {
  border: var(--border-width-normal) solid var(--hte-dark-accent); }

/* line 1141, 02-product-section.css */
.calendar-day.selected {
  background: var(--hte-black);
  color: var(--hte-white);
  border: var(--border-width-normal) solid var(--hte-black);
  border-radius: 40px; }

/* line 1148, 02-product-section.css */
.calendar-day.range-start,
.calendar-day.range-end {
  background: var(--hte-white);
  color: var(--hte-black);
  border: var(--border-width-normal) solid var(--hte-black);
  border-radius: 40px; }

/* line 1156, 02-product-section.css */
.calendar-day.range-middle {
  background: var(--hte-black);
  color: var(--hte-white);
  border-radius: 40px; }

/* line 1162, 02-product-section.css */
.calendar-day.range-preview {
  background: var(--hte-dark-accent);
  color: var(--hte-black);
  opacity: var(--opacity-medium); }

/* line 1168, 02-product-section.css */
.calendar-day.excluded {
  background: var(--hte-grey-text);
  color: var(--hte-white);
  border: var(--border-width-normal) solid var(--hte-grey-text);
  border-radius: 40px;
  opacity: var(--opacity-medium);
  pointer-events: none;
  cursor: not-allowed; }

/* Стили для выбора дат */
/* line 1179, 02-product-section.css */
.calendar-day.selectable:hover {
  background: var(--hte-dark-accent);
  transition: all 0.2s ease; }

/* line 1184, 02-product-section.css */
.calendar-day.selectable {
  cursor: pointer;
  transition: all 0.2s ease;
  transition-delay: 0.1s; }

/* line 1190, 02-product-section.css */
.popup-total {
  display: flex;
  align-items: flex-end;
  gap: var(--spacing-8); }

/* line 1196, 02-product-section.css */
.total-label {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-grey-text);
  line-height: 14px; }

/* line 1204, 02-product-section.css */
.total-value {
  font-family: var(--hte-small-text-16-font-family);
  font-size: var(--hte-small-text-16-font-size);
  font-weight: var(--hte-small-text-16-font-weight);
  color: var(--hte-black);
  line-height: 16px; }

/* line 1212, 02-product-section.css */
.popup-right-section {
  width: 420px;
  height: 480px;
  border-radius: var(--border-radius-sm);
  overflow: hidden;
  position: relative; }

/* line 1220, 02-product-section.css */
.popup-image {
  width: 100%;
  height: 100%;
  background-image: url("https://static.insales-cdn.com/files/1/1321/95077673/original/add-to-cart-bg.jpg");
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: var(--spacing-25) var(--spacing-15); }

/* line 1232, 02-product-section.css */
.image-overlay {
  text-align: center; }

/* line 1236, 02-product-section.css */
.image-title {
  font-family: var(--hte-h1-font-family);
  font-size: var(--hte-h1-font-size);
  font-weight: var(--hte-h1-font-weight);
  color: var(--hte-white);
  text-transform: uppercase;
  line-height: 35px;
  margin: 0; }

/* line 1248, 02-product-section.css */
.popup-footer {
  text-align: center; }

/* line 1252, 02-product-section.css */
.add-to-cart-popup-btn {
  width: 100%;
  height: 44px;
  padding: 0 var(--spacing-20);
  background-color: var(--hte-black);
  border: var(--border-width-normal) solid var(--hte-black);
  border-radius: var(--border-radius-xxl);
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  color: var(--hte-white);
  letter-spacing: var(--hte-body-18-letter-spacing);
  line-height: var(--hte-body-18-line-height);
  white-space: nowrap;
  cursor: pointer;
  transition: all 0.3s ease; }

/* line 1270, 02-product-section.css */
.add-to-cart-popup-btn:hover {
  background-color: transparent;
  border: var(--border-width-normal) solid var(--hte-black);
  color: var(--hte-black); }

/* Mobile Responsive for Popup */
@media (max-width: 720px) {
  /* line 1278, 02-product-section.css */
  .allergen-dropdown {
    left: 0; }

  /* line 1281, 02-product-section.css */
  .popup-content {
    flex-direction: column;
    padding: var(--spacing-15);
    max-width: 95%;
    gap: var(--spacing-20); }

  /* line 1288, 02-product-section.css */
  .popup-left-section {
    padding: 0; }

  /* line 1292, 02-product-section.css */
  .popup-right-section {
    width: 100%;
    height: 200px; }

  /* line 1297, 02-product-section.css */
  .popup-title {
    font-size: 26px;
    line-height: 26px;
    max-width: 280px; }

  /* line 1303, 02-product-section.css */
  .input-row {
    flex-direction: column; }

  /* line 1307, 02-product-section.css */
  .popup-form {
    margin-bottom: var(--spacing-20); } }
/* Mobile Responsive Styles */
@media (max-width: 1279px) {
  /* line 1317, 02-product-section.css */
  .allergen-dropdown {
    left: 0; }

  /* line 1320, 02-product-section.css */
  .product-section {
    flex-direction: column;
    gap: var(--spacing-40);
    margin-bottom: var(--spacing-60);
    padding-left: var(--spacing-20);
    padding-right: var(--spacing-20); }

  /* line 1328, 02-product-section.css */
  .product-details {
    width: 100%;
    gap: var(--spacing-30); }

  /* line 1333, 02-product-section.css */
  .settings-panel {
    width: 100%;
    max-width: 100%;
    gap: var(--spacing-20);
    padding: var(--spacing-15); }

  /* line 1340, 02-product-section.css */
  .dishes-gallery {
    grid-template-columns: repeat(4, 1fr);
    width: 100%;
    max-width: 100%; }

  /* line 1346, 02-product-section.css */
  .nutrition-info {
    flex-wrap: wrap;
    justify-content: center; }

  /* line 1351, 02-product-section.css */
  .calorie-options {
    justify-content: center; }

  /* line 1355, 02-product-section.css */
  .diet-options {
    justify-content: flex-start; }

  /* Отключаем эффекты наведения для dish-item на мобильных устройствах */
  /* line 1360, 02-product-section.css */
  .dish-item:hover .dish-overlay {
    opacity: 0; }

  /* line 1364, 02-product-section.css */
  .dish-item:hover img {
    filter: none; } }
/* Mobile styles */
@media (max-width: 720px) {
  /* line 1371, 02-product-section.css */
  .product-section {
    padding-left: var(--spacing-20);
    padding-right: var(--spacing-20); }

  /* line 1376, 02-product-section.css */
  .dishes-gallery {
    grid-template-columns: repeat(3, 1fr);
    width: 100%;
    max-width: 100%; }

  /* line 1382, 02-product-section.css */
  .menu-selector {
    width: 100%;
    flex-direction: column;
    align-items: stretch; }

  /* line 1388, 02-product-section.css */
  .menu-info {
    width: 100%;
    flex-direction: column;
    align-items: stretch; }

  /* line 1394, 02-product-section.css */
  .day-navigation {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center; } }
/* line 1404, 02-product-section.css */
.nav-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 27px;
  height: 27px;
  border: var(--border-width-normal) solid var(--hte-dark-accent);
  border-radius: var(--border-radius-sm);
  background: none;
  cursor: pointer;
  transition: all 0.3s ease; }

/* line 1417, 02-product-section.css */
.nav-btn:hover {
  border-color: var(--hte-black); }

/* line 1421, 02-product-section.css */
.nav-btn img {
  width: 11px;
  height: 7.36px; }

/* Programs Section Styles */
/* line 3, 07-programs-section.css */
.programs-section {
  padding: var(--spacing-80) 0 0 0; }

/* line 7, 07-programs-section.css */
.programs-container {
  max-width: 1320px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-30); }

/* Tabs Section */
/* line 17, 07-programs-section.css */
.programs-tabs {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-20);
  width: 100%; }

/* line 25, 07-programs-section.css */
.programs-title {
  font-family: var(--hte-h1-font-family);
  font-size: var(--hte-h1-font-size);
  font-weight: var(--hte-h1-font-weight);
  color: var(--hte-black);
  text-align: center;
  margin: 0; }

/* line 34, 07-programs-section.css */
.tabs-container {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: center; }

/* line 42, 07-programs-section.css */
.tab-button {
  display: inline-flex;
  height: 42px;
  align-items: center;
  justify-content: center;
  padding: 0 var(--spacing-30);
  background-color: transparent;
  border: var(--border-width-normal) solid var(--hte-dark-accent);
  border-radius: var(--border-radius-xxl);
  cursor: pointer;
  transition: all 0.3s ease;
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  line-height: var(--hte-body-18-line-height);
  color: var(--hte-black); }

/* line 60, 07-programs-section.css */
.tab-button.active,
.tab-button:hover {
  background-color: var(--hte-dark-accent); }

/* line 65, 07-programs-section.css */
.tab-button span {
  white-space: nowrap; }

/* Cards Section */
/* line 70, 07-programs-section.css */
.programs-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, 400px);
  gap: var(--spacing-10);
  width: 100%;
  padding: 0 var(--spacing-10);
  justify-content: center; }

/* Desktop styles for new containers */
/* line 80, 07-programs-section.css */
.regular-cards-scroll {
  display: contents; }

/* line 84, 07-programs-section.css */
.individual-card {
  display: contents; }

/* line 88, 07-programs-section.css */
.program-card {
  display: flex;
  flex-direction: column;
  width: 400px;
  height: 480px;
  align-items: flex-start;
  justify-content: space-between;
  padding: var(--spacing-20) var(--spacing-20) var(--spacing-25) var(--spacing-35);
  background-color: var(--hte-bg-fill);
  border-radius: var(--border-radius-md);
  overflow: hidden;
  position: relative; }

/* Link styles for sport card */
/* line 103, 07-programs-section.css */
a.program-card {
  text-decoration: none;
  color: inherit; }

/* line 108, 07-programs-section.css */
.program-card-large {
  width: 1220px;
  height: 260px;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  padding: 0 var(--spacing-35);
  gap: var(--spacing-25); }

/* Base background images for cards */
/* line 119, 07-programs-section.css */
.program-card[data-category="premium"] {
  position: relative; }

/* line 123, 07-programs-section.css */
.program-card[data-category="premium"]::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url("./program.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 2; }

/* line 137, 07-programs-section.css */
.program-card[data-category="premium"]::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(50% 50% at 46% 51%, #e7c281 0%, #df7f17 100%);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
  z-index: 1; }

/* line 155, 07-programs-section.css */
.program-card[data-category="base"] {
  position: relative; }

/* line 159, 07-programs-section.css */
.program-card[data-category="base"]::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url("./program-5.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 2; }

/* line 173, 07-programs-section.css */
.program-card[data-category="base"]::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(50% 50% at 57% 59%, #f8a27b 0%, #c73e1f 100%);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
  z-index: 1; }

/* line 191, 07-programs-section.css */
.program-card[data-category="start"] {
  position: relative; }

/* line 195, 07-programs-section.css */
.program-card[data-category="start"]::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url("./program-1.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 2; }

/* line 209, 07-programs-section.css */
.program-card[data-category="start"]::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(50% 50% at 57% 59%, #cabc65 36%, #cdc789 100%);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
  z-index: 1; }

/* line 227, 07-programs-section.css */
.program-card[data-category="sport"] {
  position: relative; }

/* line 231, 07-programs-section.css */
.program-card[data-category="sport"]::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url("./program-3.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 2; }

/* line 245, 07-programs-section.css */
.program-card[data-category="sport"]::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(50% 50% at 57% 53%, #427d28 0%, #79975a 100%);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
  z-index: 1; }

/* line 263, 07-programs-section.css */
.program-card[data-category="detox"] {
  position: relative; }

/* line 267, 07-programs-section.css */
.program-card[data-category="detox"]::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url("./program-2.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 2; }

/* line 281, 07-programs-section.css */
.program-card[data-category="detox"]::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(50% 50% at 57% 59%, #afb578 0%, #949f64 100%);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
  z-index: 1; }

/* line 299, 07-programs-section.css */
.program-card[data-category="reload"] {
  position: relative; }

/* line 303, 07-programs-section.css */
.program-card[data-category="reload"]::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: url("./program-4.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 2; }

/* line 317, 07-programs-section.css */
.program-card[data-category="reload"]::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(50% 50% at 57% 59%, #c4a67e 0%, #b3895a 100%);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
  z-index: 1; }

/* line 335, 07-programs-section.css */
.program-card[data-category="individual"] {
  position: relative; }

/* line 339, 07-programs-section.css */
.program-card[data-category="individual"]::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 50%;
  background-image: url("./program-6.jpg");
  background-size: contain;
  background-position: right bottom;
  background-repeat: no-repeat;
  z-index: 2; }

/* Hover gradients for different cards */
/* line 356, 07-programs-section.css */
.program-card[data-category="premium"]:hover::after {
  opacity: 1; }

/* line 360, 07-programs-section.css */
.program-card[data-category="base"]:hover::after {
  opacity: 1; }

/* line 364, 07-programs-section.css */
.program-card[data-category="start"]:hover::after {
  opacity: 1; }

/* line 368, 07-programs-section.css */
.program-card[data-category="sport"]:hover::after {
  opacity: 1; }

/* line 372, 07-programs-section.css */
.program-card[data-category="detox"]:hover::after {
  opacity: 1; }

/* line 376, 07-programs-section.css */
.program-card[data-category="reload"]:hover::after {
  opacity: 1; }

/* Tags */
/* line 383, 07-programs-section.css */
.program-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 6px;
  position: relative;
  z-index: 3;
  margin-bottom: auto;
  align-self: flex-end; }

/* line 395, 07-programs-section.css */
.program-card-large .program-tags {
  margin-top: 0;
  position: static; }

/* line 400, 07-programs-section.css */
.program-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-10);
  padding: var(--spacing-10) var(--spacing-15);
  position: relative;
  background-color: var(--hte-dark-accent);
  border-radius: 80px;
  font-family: var(--hte-small-text-16-font-family);
  font-size: var(--hte-small-text-16-font-size);
  font-weight: var(--hte-small-text-16-font-weight);
  color: var(--hte-black);
  white-space: nowrap;
  font-style: var(--hte-small-text-16-font-style);
  letter-spacing: var(--hte-small-text-16-letter-spacing);
  line-height: var(--hte-small-text-16-line-height);
  transition: background-color 0.2s ease, color 0.2s ease; }

/* line 420, 07-programs-section.css */
.program-card:hover .program-title h3 {
  color: var(--hte-white); }

/* line 424, 07-programs-section.css */
.program-card:hover .program-title {
  transform: translateY(-25px); }

/* line 428, 07-programs-section.css */
.program-card:hover .program-subtitle {
  transform: translateY(0); }

/* line 432, 07-programs-section.css */
.program-card:hover .program-tag {
  background-color: var(--hte-white); }

/* Program Titles */
/* line 437, 07-programs-section.css */
.program-title {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 5px;
  position: relative;
  z-index: 3;
  margin-top: auto;
  transition: transform 0.3s ease; }

/* line 449, 07-programs-section.css */
.program-card-large .program-title {
  margin-top: 0;
  position: static; }

/* line 454, 07-programs-section.css */
.program-title h3 {
  font-family: var(--hte-h2-font-family);
  font-size: var(--hte-h2-font-size);
  font-weight: var(--hte-h2-font-weight);
  color: var(--hte-black);
  margin: 0;
  white-space: nowrap;
  text-transform: uppercase; }

/* line 464, 07-programs-section.css */
.program-subtitle {
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  color: var(--hte-white);
  white-space: nowrap;
  font-style: var(--hte-body-18-font-style);
  letter-spacing: var(--hte-body-18-letter-spacing);
  line-height: var(--hte-body-18-line-height);
  position: absolute;
  top: calc(100% + 0px);
  left: 0;
  width: fit-content;
  transform: translateY(25px);
  transition: transform 0.3s ease; }

/* Large Card Content */
/* line 482, 07-programs-section.css */
.program-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-15);
  position: relative;
  z-index: 3; }

/* line 492, 07-programs-section.css */
.program-large-title {
  font-family: var(--hte-h1-font-family);
  font-size: var(--hte-h1-font-size);
  font-weight: var(--hte-h1-font-weight);
  color: var(--hte-black);
  margin: 0;
  line-height: 1.2;
  text-transform: uppercase; }

/* line 502, 07-programs-section.css */
.program-description {
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  line-height: var(--hte-body-18-line-height);
  color: var(--hte-black);
  margin: 0;
  opacity: var(--opacity-high);
  white-space: nowrap; }

/* Responsive Design */
@media (max-width: 1279px) {
  /* line 517, 07-programs-section.css */
  .programs-cards {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-40);
    padding: 0; }

  /* line 524, 07-programs-section.css */
  .regular-cards-scroll {
    display: flex;
    gap: var(--spacing-10);
    overflow-x: auto;
    scrollbar-width: none;
    /* Firefox */
    -ms-overflow-style: none;
    /* IE and Edge */
    padding: 0 var(--spacing-20) var(--spacing-10) var(--spacing-20); }

  /* line 533, 07-programs-section.css */
  .regular-cards-scroll::-webkit-scrollbar {
    display: none;
    /* Chrome, Safari, Opera */ }

  /* line 537, 07-programs-section.css */
  .individual-card {
    width: 100%; } }
@media (max-width: 1279px) and (min-width: 721px) {
  /* line 543, 07-programs-section.css */
  .regular-cards-scroll .program-card {
    flex: 0 0 400px;
    height: 480px; }

  /* line 548, 07-programs-section.css */
  .program-card-large {
    width: calc(100vw - 40px);
    height: 240px;
    margin: 0 auto; } }
@media (max-width: 719px) {
  /* line 556, 07-programs-section.css */
  .programs-section {
    padding: var(--spacing-40) 0; }

  /* line 560, 07-programs-section.css */
  .regular-cards-scroll .program-card {
    flex: 0 0 340px;
    height: 405px;
    padding: var(--spacing-15) var(--spacing-15) var(--spacing-20) var(--spacing-15); }

  /* line 566, 07-programs-section.css */
  .program-card-large {
    width: calc(100vw - 40px);
    height: 405px;
    flex-direction: column;
    align-items: flex-start;
    padding: var(--spacing-20);
    gap: var(--spacing-15);
    margin: 0 auto; }

  /* line 576, 07-programs-section.css */
  .program-card-large .program-content {
    width: 100%;
    z-index: 3; }

  /* line 581, 07-programs-section.css */
  .program-card[data-category="individual"]::before {
    left: 0; }

  /* line 585, 07-programs-section.css */
  .tabs-container {
    flex-direction: row;
    flex-wrap: nowrap;
    width: 100%;
    overflow-x: auto;
    scrollbar-width: none;
    /* Firefox */
    -ms-overflow-style: none;
    /* IE and Edge */
    padding: 0 var(--spacing-20);
    justify-content: flex-start; }

  /* line 596, 07-programs-section.css */
  .tabs-container::-webkit-scrollbar {
    display: none;
    /* Chrome, Safari, Opera */ }

  /* line 600, 07-programs-section.css */
  .tab-button {
    flex: 0 0 auto;
    white-space: nowrap;
    justify-content: center;
    padding: 0 var(--spacing-20); }

  /* line 607, 07-programs-section.css */
  .programs-title {
    font-size: var(--hte-h2-font-size); }

  /* line 611, 07-programs-section.css */
  .program-large-title {
    font-size: var(--hte-h2-font-size); }

  /* line 615, 07-programs-section.css */
  .program-description {
    white-space: normal; } }
/* 404 Page Styles */
/* line 2, 404.css */
.main-content {
  min-height: calc(100vh - 200px);
  /* Учитываем высоту хедера и футера */
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--hte-white);
  padding: var(--spacing-40); }

/* line 11, 404.css */
.error-container {
  max-width: var(--max-width-panel);
  width: 100%;
  text-align: center; }

/* line 17, 404.css */
.error-content {
  padding: var(--spacing-40); }

/* line 21, 404.css */
.error-title {
  font-family: var(--hte-h1-font-family);
  font-size: var(--hte-h1-font-size);
  font-weight: var(--hte-h1-font-weight);
  line-height: var(--hte-h1-line-height);
  letter-spacing: var(--hte-h1-letter-spacing);
  text-transform: var(--hte-h1-text-transform);
  color: var(--hte-black);
  margin: 0 0 var(--spacing-30) 0; }

/* line 32, 404.css */
.error-subtitle {
  font-family: var(--hte-h2-font-family);
  font-size: var(--hte-h2-font-size);
  font-weight: var(--hte-h2-font-weight);
  line-height: var(--hte-h2-line-height);
  letter-spacing: var(--hte-h2-letter-spacing);
  text-transform: var(--hte-h2-text-transform);
  color: var(--hte-black);
  margin: 0 0 var(--spacing-20) 0; }

/* line 43, 404.css */
.error-description {
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  line-height: var(--hte-body-18-line-height);
  letter-spacing: var(--hte-body-18-letter-spacing);
  color: var(--hte-grey-text);
  margin: 0 0 var(--spacing-40) 0;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto; }

/* line 56, 404.css */
.error-actions {
  display: flex;
  gap: var(--spacing-20);
  justify-content: center;
  flex-wrap: wrap; }

/* line 63, 404.css */
.btn {
  all: unset;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  padding: 0 var(--spacing-20);
  background-color: var(--hte-black);
  border: var(--border-width-normal) solid var(--hte-black);
  border-radius: var(--border-radius-xxl);
  font-family: var(--hte-body-18-font-family);
  font-size: var(--hte-body-18-font-size);
  font-weight: var(--hte-body-18-font-weight);
  color: var(--hte-white);
  letter-spacing: var(--hte-body-18-letter-spacing);
  line-height: var(--hte-body-18-line-height);
  white-space: nowrap;
  cursor: pointer;
  transition: all 0.3s ease; }

/* line 84, 404.css */
.btn:hover {
  background-color: transparent;
  border: var(--border-width-normal) solid var(--hte-black);
  color: var(--hte-black); }

/* Responsive Design */
@media (max-width: 1320px) {
  /* line 92, 404.css */
  .error-title {
    font-size: 32px; }

  /* line 96, 404.css */
  .error-subtitle {
    font-size: 26px; } }
@media (max-width: 720px) {
  /* line 102, 404.css */
  .main-content {
    padding: var(--spacing-20); }

  /* line 106, 404.css */
  .error-content {
    padding: var(--spacing-20); }

  /* line 110, 404.css */
  .error-title {
    font-size: 28px;
    margin-bottom: var(--spacing-20); }

  /* line 115, 404.css */
  .error-subtitle {
    font-size: 22px;
    margin-bottom: var(--spacing-15); }

  /* line 120, 404.css */
  .error-description {
    font-size: 16px;
    margin-bottom: var(--spacing-30); }

  /* line 125, 404.css */
  .error-actions {
    flex-direction: column;
    gap: var(--spacing-15); }

  /* line 130, 404.css */
  .btn {
    padding: var(--spacing-20) var(--spacing-30); } }
/* Date Picker Calendar Styles - Идентичные стили существующего календаря */
/* line 4, date-picker-calendar.css */
.date-picker-calendar {
  position: fixed;
  width: 241px;
  height: auto;
  background: var(--hte-white);
  border-radius: var(--border-radius-md);
  box-shadow: 0px 4px 24px rgba(0, 0, 0, 0.15);
  padding: var(--spacing-20);
  z-index: 10000;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: all 0.3s ease;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-20); }

/* line 22, date-picker-calendar.css */
.date-picker-calendar.active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0); }

/* line 28, date-picker-calendar.css */
.date-picker-header {
  display: flex;
  justify-content: space-between;
  align-items: center; }

/* line 34, date-picker-calendar.css */
.date-picker-nav-btn {
  width: 27px;
  height: 27px;
  border: var(--border-width-normal) solid var(--hte-dark-accent);
  border-radius: var(--border-radius-sm);
  background: var(--hte-white);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease; }

/* line 47, date-picker-calendar.css */
.date-picker-nav-btn:hover:not(.disabled) {
  background: var(--hte-dark-accent); }

/* line 51, date-picker-calendar.css */
.date-picker-nav-btn.disabled {
  opacity: var(--opacity-low);
  cursor: not-allowed;
  pointer-events: none; }

/* line 57, date-picker-calendar.css */
.date-picker-nav-btn.disabled:hover {
  background: var(--hte-white); }

/* line 61, date-picker-calendar.css */
.date-picker-title {
  display: flex;
  gap: 5px;
  align-items: center; }

/* line 67, date-picker-calendar.css */
.date-picker-month {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-black);
  line-height: 14px; }

/* line 75, date-picker-calendar.css */
.date-picker-year {
  font-family: var(--hte-micro-text-14-font-family);
  font-size: var(--hte-micro-text-14-font-size);
  font-weight: var(--hte-micro-text-14-font-weight);
  color: var(--hte-super-dark-accent);
  line-height: 14px; }

/* line 83, date-picker-calendar.css */
.date-picker-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 0;
  width: 189px; }

/* line 90, date-picker-calendar.css */
.date-picker-day-header {
  width: 27px;
  height: 27px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--hte-micro-text-14-font-family);
  font-size: 12px;
  font-weight: 450;
  color: var(--hte-grey-text);
  line-height: 12px; }

/* line 103, date-picker-calendar.css */
.date-picker-day {
  width: 27px;
  height: 27px;
  background: var(--hte-white);
  border: var(--border-width-normal) solid var(--hte-white);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-family: var(--hte-micro-text-14-font-family);
  font-size: 12px;
  font-weight: 450;
  line-height: 12px;
  transition: all 0.3s ease; }

/* line 119, date-picker-calendar.css */
.date-picker-day.inactive {
  color: var(--hte-super-dark-accent); }

/* line 123, date-picker-calendar.css */
.date-picker-day.past {
  color: var(--hte-grey-text);
  opacity: var(--opacity-low);
  cursor: not-allowed; }

/* Специальные стили для недоступных дней в date-picker календаре */
/* line 130, date-picker-calendar.css */
.date-picker-day.unavailable {
  color: var(--hte-grey-text);
  opacity: var(--opacity-low);
  cursor: not-allowed;
  background: var(--hte-super-dark-accent);
  border: var(--border-width-normal) solid var(--hte-white);
  position: relative; }

/* line 139, date-picker-calendar.css */
.date-picker-day.unavailable::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1px;
  height: 12px;
  background: var(--hte-grey-text);
  transform: translate(-50%, -50%) rotate(45deg); }

/* line 150, date-picker-calendar.css */
.date-picker-day.unavailable::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1px;
  height: 12px;
  background: var(--hte-grey-text);
  transform: translate(-50%, -50%) rotate(-45deg); }

/* line 161, date-picker-calendar.css */
.date-picker-day.active {
  color: var(--hte-black); }

/* line 165, date-picker-calendar.css */
.date-picker-day.outlined {
  border: var(--border-width-normal) solid var(--hte-dark-accent); }

/* line 169, date-picker-calendar.css */
.date-picker-day.selected {
  background: var(--hte-black);
  color: var(--hte-white);
  border: var(--border-width-normal) solid var(--hte-black);
  border-radius: 40px; }

/* line 176, date-picker-calendar.css */
.date-picker-day.range-start,
.date-picker-day.range-end {
  background: var(--hte-white);
  color: var(--hte-black);
  border: var(--border-width-normal) solid var(--hte-black);
  border-radius: 40px; }

/* line 184, date-picker-calendar.css */
.date-picker-day.range-middle {
  background: var(--hte-black);
  color: var(--hte-white);
  border-radius: 40px; }

/* line 190, date-picker-calendar.css */
.date-picker-day.range-preview {
  background: var(--hte-dark-accent);
  color: var(--hte-black);
  opacity: var(--opacity-medium); }

/* line 196, date-picker-calendar.css */
.date-picker-day.excluded {
  background: var(--hte-grey-text);
  color: var(--hte-white);
  border: var(--border-width-normal) solid var(--hte-grey-text);
  border-radius: 40px;
  opacity: var(--opacity-medium); }

/* Стили для выбора дат */
/* line 205, date-picker-calendar.css */
.date-picker-day.selectable:hover {
  background: var(--hte-dark-accent);
  transition: all 0.2s ease; }

/* line 210, date-picker-calendar.css */
.date-picker-day.selectable {
  cursor: pointer;
  transition: all 0.2s ease;
  transition-delay: 0.1s; }

/* Отключаем hover для выбранного дня в date-picker календаре */
/* line 217, date-picker-calendar.css */
.date-picker-day.selected:hover {
  background: var(--hte-black);
  color: var(--hte-white);
  border: var(--border-width-normal) solid var(--hte-black);
  border-radius: 40px; }

/* Responsive styles - идентичные существующему календарю */
@media (max-width: 1320px) {
  /* line 226, date-picker-calendar.css */
  .date-picker-calendar {
    width: 241px;
    padding: var(--spacing-20); }

  /* line 231, date-picker-calendar.css */
  .date-picker-grid {
    width: 189px; }

  /* line 235, date-picker-calendar.css */
  .date-picker-day,
  .date-picker-day-header {
    width: 27px;
    height: 27px; } }
@media (max-width: 720px) {
  /* line 243, date-picker-calendar.css */
  .date-picker-calendar {
    width: 241px;
    padding: var(--spacing-20); }

  /* line 248, date-picker-calendar.css */
  .date-picker-calendar.active {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }

  /* line 255, date-picker-calendar.css */
  .date-picker-grid {
    width: 189px; }

  /* line 259, date-picker-calendar.css */
  .date-picker-day,
  .date-picker-day-header {
    width: 27px;
    height: 27px;
    font-size: 12px; }

  /* line 266, date-picker-calendar.css */
  .date-picker-month {
    font-size: var(--hte-micro-text-14-font-size); }

  /* line 270, date-picker-calendar.css */
  .date-picker-year {
    font-size: var(--hte-micro-text-14-font-size); } }
