/* НАРОЧИТО ПРОСТО · Корзина: плашка «Ваш заказ», окно корзины Тильды в цветах сайта, окно «Данные для сертификата». 28.10.2026
   Тильда → Настройки сайта → Вставка кода → «Пользовательские CSS-стили». Разметка и скрипты — в HEAD сайта (в конце поля). */
  /* стандартная иконка корзины Тильды не нужна — вместо неё плашка */
  .t706__carticon { display: none !important; }

  .np-cart {
    --np-wine: #622339;
    --np-light: #DEDBDA;
    box-sizing: border-box;
    position: fixed; right: 24px; bottom: 24px; z-index: 9990;
    width: 300px; max-width: calc(100vw - 32px);
    padding: 18px 20px 20px;
    border-radius: 14px;
    background: var(--np-wine); color: var(--np-light);
    font-family: 'Montserrat',Arial,sans-serif; -webkit-font-smoothing: antialiased;
    box-shadow: 0 10px 30px rgba(40, 10, 22, .25);
    transform: translateY(16px); opacity: 0; visibility: hidden;
    transition: transform .25s ease, opacity .25s ease, visibility 0s linear .25s;
  }
  .np-cart *, .np-cart *::before, .np-cart *::after { box-sizing: border-box; }
  .np-cart.is-visible { transform: none; opacity: 1; visibility: visible; transition: transform .25s ease, opacity .25s ease; }
  /* пока открыто окно корзины, плашку прячем */
  body.t706__body_cartwinshowed .np-cart { opacity: 0; visibility: hidden; }

  .np-cart__head { display: flex; align-items: center; gap: 10px; font-size: 15px; line-height: 1.2; font-weight: 700; }
  .np-cart__count {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 22px; height: 22px; padding: 0 6px; border-radius: 999px;
    background: var(--np-light); color: var(--np-wine); font-size: 12px; font-weight: 700;
  }
  .np-cart__list { margin: 12px 0 0; padding: 0; list-style: none; }
  /* позиция: название и количество в первой строке, дата и время ниже мелко */
  .np-cart__item { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 8px; margin-top: 10px; font-size: 13px; line-height: 1.35; font-weight: 400; }
  .np-cart__item:first-child { margin-top: 0; }
  .np-cart__name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .np-cart__qty { opacity: .75; }
  .np-cart__when { grid-column: 1 / -1; margin-top: 2px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; opacity: .75; }
  .np-cart__more { margin-top: 6px; font-size: 12px; opacity: .75; }
  .np-cart__btn {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    width: 100%; height: 42px; margin-top: 16px; padding: 0 20px;
    border: 0; border-radius: 999px; background: var(--np-light); color: var(--np-wine);
    font-family: inherit; font-size: 14px; line-height: 1; font-weight: 400; cursor: pointer;
    transition: background-color .2s ease;
  }
  .np-cart__btn b { font-weight: 700; }

  /* пустая корзина: текст и крестик вместо списка и кнопки */
  .np-cart__empty, .np-cart__close { display: none; }
  .np-cart.is-empty .np-cart__count, .np-cart.is-empty .np-cart__list, .np-cart.is-empty .np-cart__more, .np-cart.is-empty .np-cart__btn { display: none !important; }
  .np-cart.is-empty .np-cart__empty { display: block; margin-top: 8px; padding-right: 24px; font-size: 13px; line-height: 1.45; opacity: .85; }
  .np-cart__empty a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }   /* ссылка на афишу (06.10.2026) */
  .np-cart.is-empty .np-cart__close { display: flex; }
  .np-cart__close {
    position: absolute; top: 10px; right: 10px; align-items: center; justify-content: center;
    width: 32px; height: 32px; padding: 0; border: 0; border-radius: 999px; background: transparent; color: inherit; cursor: pointer;
  }
  .np-cart__close svg { width: 14px; height: 14px; }
  @media (hover: hover) { .np-cart__close:hover { background: rgba(222,219,218,.15); } }
  .np-cart__close:focus-visible { outline: 1px solid var(--np-light); outline-offset: 2px; }
  @media (hover: hover) { .np-cart__btn:hover { background: #D2CBC9; } }
  .np-cart__btn:focus-visible { outline: 1px solid var(--np-light); outline-offset: 3px; }

  /* телефон: одна строка внизу на всю ширину, без списка */
  @media (max-width: 640px) {
    .np-cart { left: 16px; right: 16px; bottom: 16px; width: auto; max-width: none; padding: 10px 10px 10px 16px;
      display: flex; align-items: center; gap: 12px; border-radius: 999px; }
    .np-cart__head { flex: 1 1 auto; min-width: 0; font-size: 14px; }
    .np-cart__list, .np-cart__more { display: none; }
    .np-cart__btn { flex: none; width: auto; height: 40px; margin: 0; padding: 0 18px; font-size: 14px; }
    .np-cart.is-empty { padding: 12px 52px 12px 20px; border-radius: 14px; display: block; }
    .np-cart.is-empty .np-cart__empty { margin-top: 4px; padding-right: 0; }
    .np-cart__close { top: 50%; transform: translateY(-50%); }
  }
  @media (prefers-reduced-motion: reduce) { .np-cart, .np-cart.is-visible { transition: none; } }

  /* ---------- окно корзины Тильды в цветах сайта ---------- */
  .t706__cartwin-content {
    border-radius: 14px; background: #DEDBDA !important; color: #622339;
    font-family: 'Montserrat',Arial,sans-serif; -webkit-font-smoothing: antialiased;
  }
  .t706__cartwin-content :is(.t706__cartwin-heading, .t706__product-title, .t706__product-title a, .t706__product-plusminus,
    .t706__product-quantity, .t706__product-amount, .t706__cartwin-prodamount-wrap, .t706__cartwin-totalamount-wrap,
    .t706__cartwin-totalamount-label, .t706__cartwin-totalamount, .t-input-title, .t-input-subtitle, .t-text, .t-descr,
    .t-name, .t-checkbox__control, .t-radio__control) {
    font-family: 'Montserrat',Arial,sans-serif !important; color: #622339 !important;
  }
  .t706__cartwin-heading { font-size: 22px !important; font-weight: 700 !important; }
  .t706__cartwin-top, .t706__cartwin-products, .t706__product { border-color: rgba(98,35,57,.2) !important; }
  /* строка товара: у Тильды это таблица в одну строку, и названию остаётся узкая колонка — оно вытягивается в столбик.
     Делаем сетку: слева фото, справа на всю ширину дата/время и название, под ними количество и сумма, крестик справа. */
  .t706__product {
    display: grid !important;
    grid-template-columns: 64px minmax(0, 1fr) auto 24px;
    grid-template-areas: "thumb title title del" "thumb qty amount del";
    column-gap: 16px; row-gap: 10px; align-items: center;
    width: 100%; height: auto !important; padding: 18px 0; border-bottom: 1px solid rgba(98,35,57,.2);   /* у Тильды высота строки 50 px */
  }
  .t706__cartwin-products { display: block !important; width: 100% !important; }   /* у Тильды — таблица */
  .t706__product > * { display: block !important; width: auto !important; padding: 0 !important; border: 0 !important; }
  .t706__product-thumb { grid-area: thumb; align-self: start; width: 64px !important; height: 64px; border-radius: 8px; overflow: hidden; }
  .t706__product-imgdiv { width: 64px !important; height: 64px !important; background-size: cover !important; background-position: center !important; }
  .t706__product-title { grid-area: title; }
  .t706__product-plusminus { grid-area: qty; justify-self: start; white-space: nowrap; }
  .t706__product-amount { grid-area: amount; justify-self: end; white-space: nowrap; }
  .t706__product-amount > * { display: inline !important; }
  .t706__product-del-wrapper { grid-area: del; align-self: start; justify-self: end; }
  .t706__product-title, .t706__product-title a { font-size: 15px !important; line-height: 1.35 !important; font-weight: 600 !important; text-decoration: none; }
  .t706__product-title .np-t-when { display: block; margin-bottom: 4px; font-size: 13px; line-height: 1.35; font-weight: 500; }
  .t706__product-title .np-t-name { display: block; }
  .t706__product-title .np-t-sep { display: none; }
  .t706__product-plusminus, .t706__product-amount { font-size: 15px !important; font-weight: 400 !important; }
  .t706__product-amount { font-weight: 700 !important; }
  .t706__cartwin-prodamount-wrap, .t706__cartwin-totalamount-wrap { font-size: 16px !important; font-weight: 700 !important; }
  .t706__product-plus, .t706__product-minus, .t706__product-del { opacity: .8; }
  .t706__product-plus svg *, .t706__product-minus svg *, .t706__product-del svg * { stroke: #622339 !important; }
  .t706__cartwin-content .t-input-title { font-size: 13px !important; font-weight: 400 !important; padding-bottom: 6px; }
  .t706__cartwin-content .t-input {
    height: 48px !important; padding: 0 20px !important;
    border: 1px solid #622339 !important; border-radius: 999px !important;
    background: transparent !important; color: #622339 !important;
    font-family: 'Montserrat',Arial,sans-serif !important; font-size: 16px !important;   /* 16 px — чтобы iPhone не увеличивал страницу */
  }
  .t706__cartwin-content textarea.t-input { height: auto !important; min-height: 96px; padding: 14px 20px !important; border-radius: 20px !important; }
  .t706__cartwin-content .t-input::placeholder { color: rgba(98,35,57,.5) !important; }
  /* телефон: Тильда кладёт поле .t-input внутрь обёртки .t-input — рамка и поля только у обёртки, у вложенного поля их нет */
  .t706__cartwin-content .t-input-phonemask__wrap { display: flex; align-items: center; padding: 0 !important; border-radius: 999px; }
  .t706__cartwin-content .t-input .t-input {
    flex: 1 1 auto; height: 46px !important; padding: 0 20px 0 8px !important;
    border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important;
  }
  .t706__cartwin-content .t-input-phonemask__select { padding-left: 16px !important; color: #622339 !important; }
  .t706__cartwin-content .t-submit {
    height: 48px !important; border-radius: 999px !important;
    background: #622339 !important; color: #DEDBDA !important;
    font-family: 'Montserrat',Arial,sans-serif !important; font-size: 15px !important; font-weight: 400 !important;
  }
  /* промокод (поле Тильды «Промокод»): поле-пилюля, через 12 px кнопка как «Оплатить» с надписью «Применить» (у Тильды «Activate» — текст скрыт, надпись в ::after).
     Кнопку Тильда показывает, только когда в поле что-то введено (display ставит сама — его не трогаем) */
  .t706__cartwin-content .t-inputpromocode__wrapper { display: flex !important; align-items: center; gap: 12px; width: 100% !important; }
  .t706__cartwin-content .t-inputpromocode { flex: 1 1 auto; min-width: 0; width: auto !important; }
  .t706__cartwin-content .t-inputpromocode__btn {
    flex: 0 0 auto; width: auto !important; height: 48px !important; padding: 0 28px !important;
    border: 0 !important; border-radius: 999px !important; background: #622339 !important; color: #DEDBDA !important;
    font-size: 0 !important; line-height: 48px !important; text-align: center; white-space: nowrap; cursor: pointer;
  }
  .t706__cartwin-content .t-inputpromocode__btn::after {
    content: 'Применить';
    font-family: 'Montserrat',Arial,sans-serif; font-size: 15px; line-height: 48px; font-weight: 400; color: #DEDBDA;
  }
  .t706__cartwin-content .t-inputpromocode__message, .t706__cartwin-content .t-inputpromocode__wrapper .t-text { color: #622339 !important; }
  /* строки «Сумма», «Скидка» и итог под товарами — бордовые (у Тильды чёрные) */
  .t706__cartwin-content :is(.t706__cartwin-totalamount-wrap, .t706__cartwin-totalamount-info, .t706__cartwin-prodamount-wrap) * {
    color: #622339 !important; font-family: 'Montserrat',Arial,sans-serif !important;
  }
  .t706__cartwin-content .t706__cartwin-totalamount-info, .t706__cartwin-content .t706__cartwin-totalamount-row { border-color: rgba(98,35,57,.2) !important; }
  .t706__cartwin-content .t-checkbox__indicator, .t706__cartwin-content .t-radio__indicator { border-color: #622339 !important; }
  /* после «Оплатить» Тильда на долю секунды показывает зелёное «Спасибо! Данные успешно отправлены», пока открывается оплата.
     Вместо него — «Переходим к оплате…» в цветах сайта (текст Тильды скрыт) */
  .t706__cartwin-content .t-form__successbox {
    background: transparent !important; border: 0 !important; color: #622339 !important;
    font-size: 0 !important; padding: 24px 0 !important; text-align: center !important;
  }
  .t706__cartwin-content .t-form__successbox * { display: none !important; }
  .t706__cartwin-content .t-form__successbox::after {
    content: 'Переходим к\00a0оплате…';
    font-family: 'Montserrat',Arial,sans-serif; font-size: 16px; line-height: 1.4; font-weight: 400; color: #622339;
  }

  .np-cf {
    position: fixed; inset: 0; z-index: 2147483000;
    display: flex; padding: 40px 16px; overflow-y: auto; -webkit-overflow-scrolling: touch;
    background: rgba(40,14,23,.55);
    font-family: 'Montserrat',Arial,sans-serif; -webkit-font-smoothing: antialiased;
  }
  .np-cf[hidden] { display: none; }
  .np-cf *, .np-cf *::before, .np-cf *::after { box-sizing: border-box; }
  .np-cf__box {
    position: relative; width: 100%; max-width: 480px; margin: auto;
    padding: 40px 36px 36px; border-radius: 14px;
    background: #DEDBDA; color: #622339;
  }
  .np-cf__close {
    position: absolute; top: 14px; right: 14px; width: 36px; height: 36px; padding: 10px;
    border: 0; background: none; color: #622339; cursor: pointer;
  }
  .np-cf__close svg { display: block; width: 16px; height: 16px; }
  .np-cf__title { margin: 0 32px 0 0; font-size: 22px; line-height: 1.25; font-weight: 700; }
  .np-cf__sub { margin: 8px 0 0; font-size: 15px; line-height: 1.45; font-weight: 400; }
  .np-cf__form { display: grid; gap: 16px; margin-top: 24px; }
  .np-cf__label { display: grid; gap: 6px; font-size: 13px; line-height: 1.3; font-weight: 400; }
  .np-cf__input {
    width: 100%; height: 48px; margin: 0; padding: 0 20px;
    border: 1px solid #622339; border-radius: 999px; outline: 0;
    background: transparent; color: #622339;
    font-family: inherit; font-size: 16px; font-weight: 400;   /* 16 px — чтобы iPhone не увеличивал страницу */
    -webkit-appearance: none; appearance: none;
  }
  textarea.np-cf__input { height: auto; min-height: 96px; padding: 14px 20px; border-radius: 20px; resize: vertical; line-height: 1.45; }
  .np-cf__input::placeholder { color: rgba(98,35,57,.5); opacity: 1; }
  .np-cf__input:focus { box-shadow: 0 0 0 1px #622339; }
  .np-cf__input.is-error { border-color: #B3263E; box-shadow: 0 0 0 1px #B3263E; }
  .np-cf__group { display: grid; gap: 10px; margin: 0; padding: 0; border: 0; min-width: 0; }
  .np-cf__group legend { margin: 0 0 4px; padding: 0; font-size: 13px; line-height: 1.3; }
  .np-cf__note { margin: 4px 0 0; padding: 14px 18px; border-radius: 14px; background: rgba(98,35,57,.08); font-size: 13px; line-height: 1.5; font-weight: 400; }
  .np-cf__hint { margin: -6px 0 0; font-size: 13px; line-height: 1.45; font-weight: 300; }
  .np-cf__group .np-cf__hint { margin-top: -2px; }
  .np-cf__err { margin: 0; font-size: 13px; line-height: 1.45; color: #B3263E; }
  .np-cf__err:empty { display: none; }
  .np-cf__btn {
    width: 100%; height: 48px; margin-top: 4px; padding: 0 20px;
    border: 0; border-radius: 999px; cursor: pointer;
    background: #622339; color: #DEDBDA;
    font-family: inherit; font-size: 15px; font-weight: 400;
    transition: opacity .2s ease;
  }
  @media (hover: hover) { .np-cf__btn:hover { opacity: .85; } }
  @media (max-width: 640px) {
    .np-cf { padding: 16px 12px; }
    .np-cf__box { padding: 32px 20px 24px; }
    .np-cf__title { font-size: 20px; }
  }

  /* в окне корзины под сертификатом: для кого он и кнопка «изменить» / «Заполнить данные сертификата» */
  .t706__product .np-certnote { grid-column: 2 / 4; display: grid !important; gap: 6px; font-size: 13px; line-height: 1.4; font-weight: 400; color: #622339; }
  .np-certnote__row { display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: baseline; }
  .np-certnote__btn {
    padding: 0; border: 0; background: none; cursor: pointer;
    color: inherit; font: inherit; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px;
  }
  .np-certnote__fill {
    justify-self: start; height: 32px; padding: 0 14px;
    border: 1px solid #622339; border-radius: 999px; background: transparent; cursor: pointer;
    color: #622339; font-family: 'Montserrat',Arial,sans-serif; font-size: 13px; font-weight: 400;
  }
