/* Нежная интеграция под стиль сайта:
   - наследуем шрифты/цвет ссылок
   - светлые блоки, тонкая граница
   - малиновый акцент для левой полоски и ссылок (можете поменять на ваш брендовый) */

:root {
  --ptw-accent: #cc0066;       /* акцент (малиновый) — при желании замените на брендовый */
  --ptw-bg: #f7f7f8;           /* светлый фон блока результата */
  --ptw-border: #e7e7ea;       /* светлая граница */
  --ptw-text: inherit;         /* используем текущий шрифт/цвет вашего сайта */
}

.ptw-links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 8px;
}

.ptw-link {
  color: inherit;               /* пусть берёт цвет ссылок с сайта */
  text-decoration: underline;
  cursor: pointer;
  display: inline-block;
  line-height: 1.35;
}
.ptw-link:hover,
.ptw-link:focus {
  text-decoration-thickness: 2px;
  text-underline-offset: 2px;
}

.ptw-result {
  margin: 8px 0 16px 0;
  padding: 12px 14px;
  /*background: var(--ptw-bg);*/
  border: 1px solid var(--ptw-border);
  border-left: 4px solid var(--ptw-accent);
  border-radius: 6px;
  font: inherit;
  color: var(--ptw-text);
}

.ptw-pre {
  margin: 0;
  white-space: pre-wrap;
  word-break: break-word;
}

.ptw-error {
  padding: 10px 12px;
  background: #fff3f5;
  border: 1px solid #ffd4dd;
  color: #9a0035;
  border-radius: 6px;
}

/* Лёгкий спиннер (без картинок/шрифтов) */
.ptw-spinner {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.ptw-spinner-dot {
  width: 10px; height: 10px;
  border-radius: 50%;
  border: 2px solid var(--ptw-accent);
  border-top-color: transparent;
  display: inline-block;
  animation: ptw-rot 0.8s linear infinite;
}
.ptw-spinner-text {
  opacity: 0.8;
}
@keyframes ptw-rot { to { transform: rotate(360deg); } }

/* Нейтральные стили под ваш сайт: светлые блоки, тонкая рамка, унаследованные шрифты/цвета */
.ptw-orders { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px;}
.ptw-order { text-decoration: underline; cursor: pointer; display: inline-block; }
.ptw-orders { list-style: none; padding: 0; margin: 0; }
.ptw-result { margin: 8px 0 16px 0; padding: 12px 14px; border: 1px solid #e7e7ea; border-left: 4px solid #cc0066; border-radius: 6px; }/*background: #f7f7f8; */
.ptw-note { margin-bottom: 6px; font-size: 14px; opacity: .8; }

.ptw-table-wrap { overflow-x: auto; }
.ptw-table { width: 100%; border-collapse: collapse; font: inherit; color: inherit; }
.ptw-table th, .ptw-table td { padding: 8px 10px; border-bottom: 1px solid #e7e7ea; text-align: left; }
.ptw-table th { font-weight: 600; }
.ptw-name { max-width: 48ch; }

.ptw-total { display: flex; justify-content: flex-end; gap: 10px; align-items: baseline; font-size: 18px; margin-top: 10px; }
.ptw-empty { padding: 10px 12px; background: #fff; border: 1px dashed #e0e0e0; border-radius: 6px; }

.ptw-error { padding: 10px 12px; background: #fff3f5; border: 1px solid #ffd4dd; color: #9a0035; border-radius: 6px; }

.ptw-spinner { display: inline-flex; align-items: center; gap: 10px; }
.ptw-spinner-dot { width: 10px; height: 10px; border-radius: 50%; border: 2px solid #cc0066; border-top-color: transparent; display: inline-block; animation: ptw-rot .8s linear infinite; }
@keyframes ptw-rot { to { transform: rotate(360deg); } }

/* Мобайл: делаем адаптивные подписи в клетках */
@media (max-width: 560px) {
  .ptw-table thead { display: none; }
  .ptw-table tr { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 14px; padding: 8px 0; }
  .ptw-table td { border: 0; padding: 0; }
  .ptw-table td[data-label]::before { content: attr(data-label) " "; opacity: .65; margin-right: 6px; }
  .ptw-name { grid-column: 1 / -1; }
  .ptw-total { font-size: 16px; }
}

:root { --ptw-accent: #F78D1D; }          /* новый акцент */
.ptw-result      { border-left: 4px solid var(--ptw-accent); }
.ptw-spinner-dot { border: 2px solid var(--ptw-accent); border-top-color: transparent; }

/* базовая таблица/виджет (если не добавляли раньше) */
.ptw-orders { list-style:none; margin:0; padding:0; display:grid; gap:8px; }
.ptw-order  { text-decoration: underline; cursor: pointer; display:inline-block; }

.ptw-result { margin:8px 0 16px; padding:12px 14px; border:1px solid #e7e7ea; border-radius:6px; }/*background:#f7f7f8; */
.ptw-table-wrap{ overflow-x:auto; }
.ptw-table { width:100%; border-collapse:collapse; font:inherit; color:inherit; background:inherit;}
.ptw-table th, .ptw-table td { padding:8px 10px; border-bottom:1px solid orange; text-align:left; }
.ptw-total { display:flex; justify-content:flex-end; gap:10px; align-items:baseline; font-size:18px; margin-top:10px; }
.ptw-error { padding:10px 12px; background:#fff3f5; border:1px solid #ffd4dd; color:#9a0035; border-radius:6px; }
.ptw-spinner { display:inline-flex; align-items:center; gap:10px; }
@keyframes ptw-rot { to { transform: rotate(360deg); } }
.ptw-spinner-dot { width:10px; height:10px; border-radius:50%; display:inline-block; animation: ptw-rot .8s linear infinite; }

@media (max-width: 560px) {
  .ptw-table thead { display:none; }
  .ptw-table tr { display:grid; grid-template-columns:1fr 1fr; gap:6px 14px; padding:8px 0; }
  .ptw-table td { border:0; padding:0; }
  .ptw-table td[data-label]::before { content: attr(data-label) " "; opacity:.65; margin-right:6px; }
  .ptw-name { grid-column:1 / -1; }
}

/* добавили сейчас*/
	
	/* гарантируем позиционирование контейнера шапки */
	.navcontainer { position: relative; }

	/* блок ссылок в правом верхнем углу */
	.auth-links-top{
	  position: absolute;
	  top: 8px;          /* при необходимости подкорректируйте */
	  right: 12px;       /* при необходимости подкорректируйте */
	  display: flex;
	  gap: 8px;
	  align-items: center;
	  z-index: 20;       /* поверх фоновых картинок */
	  white-space: nowrap;
	  font-family: inherit;
	}
	.auth-links-top a{
	  text-decoration: underline;
	}
	.auth-links-top a:hover{
	  text-decoration-thickness: 2px;
	  text-underline-offset: 2px;
	}
	.auth-sep{ opacity: .6; }

	/* на мобильных уберём из угла (там дадим в бургер-меню, см. ниже) */
	@media (max-width: 1024px){
	  .auth-links-top{ display: none; }
	}


.auth-msg{ margin-top:8px; font-size:14px; min-height:1em; }
.auth-msg.is-success{ color:#137333; }
.auth-msg.is-error{ color:#9a0035; }

.field-error{ border-color:#ff4d4f !important; outline:0; }
.field-error-msg{ margin-top:4px; font-size:12px; color:#9a0035; }

	
	
	/* для модальных блоков
	 ---- Общая “коробка” модалки (v2 и v3) ---- */
.auth-modal{
  max-width: 520px;
  width: 100%;
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  /* для v2 важно задать ширину контенту */
}

/* Заголовок с оранжевой полосой */
.auth-title{
  margin: 0;
  padding: 14px 18px;
  font-size: 20px;
  font-weight: 700;
  color: #222;
  border-top: 4px solid #F78D1D;
  background: #fafafa;
}

/* Внутренности формы */
.auth-form{
  padding: 16px 18px 18px;
  display: grid;
  gap: 10px;
  font: inherit;
  color: inherit;
}
.auth-label{ font-size:14px; opacity:.85; }
.auth-input{
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #dcdce0;
  border-radius: 7px;
  background: #fff;
  outline: none;
}
.auth-input:focus{ border-color:#F78D1D; box-shadow: 0 0 0 3px rgba(247,141,29,.15); }

.auth-actions{
  display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 6px;
}
.auth-btn{
  display:inline-block; padding:10px 14px;
  background:#F78D1D; color:#fff; border:0; border-radius:7px;
  cursor:pointer; font-weight:600;
}
.auth-btn:hover{ filter:brightness(.95); }
.auth-link{ text-decoration: underline; }
.auth-link:hover{ text-underline-offset: 2px; text-decoration-thickness: 2px; }

.auth-msg{ margin-top:6px; font-size:14px; min-height:1em; }
.auth-msg.is-success{ color:#137333; }
.auth-msg.is-error{ color:#9a0035; }

.field-error{ border-color:#ff4d4f !important; }
.field-error-msg{ margin-top:4px; font-size:12px; color:#9a0035; }

/* ---- Коррекция “рамки” самой Fancybox ---- */
/* v2 */
.fancybox-skin{ background:#fff; border-radius:10px; }
/* v3 */
.fancybox-slide--html .fancybox-content{
  padding: 0;          /* убираем внутренние отступы контейнера */
  border-radius:10px;  /* скругляем как у коробки */
}

.auth-topline { display:flex; gap:8px; align-items:center; justify-content:flex-end; }
.auth-link { color:#1a1a1a; text-decoration:none; }
.auth-link:hover { text-decoration:underline; }
.auth-sep { color:#999; }
.auth-hello { color:#333; font-weight:600; }
.auth-notice {
  padding:4px 10px; border:1px solid #F78D1D; color:#F78D1D;
  border-radius:6px; font-weight:600; margin-right:8px;
}

.auth-notice-blue {
  padding:4px 10px; border:1px solid #F78D1D; color:#2175D9;
  border-radius:6px; font-weight:600; margin-right:8px;
}

.pw-field{position:relative}
.pw-field .auth-input{padding-right:40px} /* место под кнопку */
.pw-toggle{
  position:absolute; right:10px; top:50%; transform:translateY(-50%);
  border:0; background:transparent; cursor:pointer; padding:4px;
  color:#9aa0a6;
}
.pw-toggle:hover,.pw-toggle.active{color:#F78D1D}
.pw-toggle:focus{outline:0; box-shadow:0 0 0 2px rgba(247,141,29,.25); border-radius:6px}


.auth-links-top{ text-align:right; line-height:1; }
.auth-links-top .auth-sep{ margin:0 6px; color:#999; }

.auth-user-top{ text-align:right; margin-top:4px; }
.auth-username{ font-weight:600; }

/* общий контейнер справа, двумя строками */
.auth-topbox{
  display:flex;
  flex-direction:column;
  align-items:flex-end;   /* выравнивание по правому краю */
  gap:4px;                /* расстояние между строками */
}

/* сами строки — обычные блочные элементы */
.auth-links-top,
.auth-user-top{
  position:static !important;  /* на всякий случай снимаем absolute, если был */
  float:none !important;
  display:block;
  line-height:1.2;
  text-align:right;
}

.auth-sep{ margin:0 6px; color:#999; }
.auth-username{ font-weight:600; }



/* родителю даём контекст для absolute */
.headContainerShares { position: relative; }

/* сам блок — в правом верхнем углу, не влияет на поток */
.auth-topbox{
  position: absolute;
  top: 6px;              /* подстрой по месту */
  right: 8px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  z-index: 2;            /* на всякий случай поверх фона/картинок */
}

.auth-links-top, .auth-user-top{
  line-height: 1.1;
  text-align: right;
}

.auth-sep{ margin:0 6px; color:#999; }
.auth-username{ font-weight:600; }

/* На узких экранах можно вернуть в поток,
   чтобы ничего не перекрывалось */
@media (max-width: 991px){
  .auth-topbox{
    position: static;
    margin-top: 6px;
    align-items: flex-end;
  }
}

.headContainerShares { position: relative; }  /* чтобы absolute работал внутри */
.auth-topbox{
  position:absolute; top:6px; right:8px;
  display:flex; flex-direction:column; align-items:flex-end; gap:4px; z-index:2;
}
.auth-links-top, .auth-user-top{ line-height:1.1; text-align:right; }
.auth-sep{ margin:0 6px; color:#999; }
.auth-username{ font-weight:600; }
@media (max-width:991px){
  .auth-topbox{ position:static; margin-top:6px; }
}

.headContainerShares { position: relative; }
.auth-topbox{
  position:absolute; top:6px; right:8px;
  display:flex; flex-direction:column; align-items:flex-end; gap:4px;
  z-index:1000;           /* важный момент — клики поверх */
  pointer-events:auto;
}

.headContainerShares{position:relative}
.auth-topbox{position:absolute;top:6px;right:8px;z-index:1000}

 /* общий стиль ссылки входа */
.lk-link, .lk-icon, .lk-pill, .lk-fab {
  display:inline-flex; align-items:center; justify-content:center;
  text-decoration:none;
}

/* 1) Иконка + текст */
.lk-link { gap:6px; font-size:15px; color:#1a1a1a; }
.lk-link i { font-size:18px; color:#2175D9; }
.lk-link:hover { text-decoration:underline; }

/* 2) Только иконка (шапка) */
.lk-icon i { font-size:22px; color:#2175D9; }
.lk-icon { width:36px; height:36px; border-radius:8px; }
.lk-icon:active { transform:scale(.96); }

/* 3) “Пилюля” */
.lk-pill { padding:6px 10px; border:1px solid #2175D9; border-radius:999px; gap:6px; color:#1a1a1a; }
.lk-pill i { color:#2175D9; font-size:16px; }
.lk-pill:hover { background:#fff7ef; }

/* 4) Круглая FAB (в правом нижнем углу, если нужно) */
.lk-fab {
  position:fixed; right:14px; bottom:14px; z-index:1000;
  width:52px; height:52px; border-radius:50%;
  background:#2175D9; color:#fff; box-shadow:0 4px 14px rgba(0,0,0,.18);
}
.lk-fab i { font-size:22px; }
.lk-fab:active { transform:translateY(1px); }

/* бейдж «вошёл» — маленькая точка */
.lk-badge { position:relative; }
.lk-badge::after{
  content:""; position:absolute; right:-2px; top:-2px; width:8px; height:8px;
  background:#28a745; border:2px solid #fff; border-radius:50%;
}

/* удобнее нажимать на мобилке */
@media (max-width:767px){
  .lk-link span { font-size:14px; }
  .lk-icon { width:40px; height:40px; }
}

/* Кнопка в шапке — пилюля в бренд-цвете */
.callback-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:8px 14px; border-radius:999px;
  background:#F78D1D; color:#fff !important; font-weight:600; line-height:1;
  box-shadow:0 2px 8px rgba(0,0,0,.12);
  transition:background .2s, transform .05s;
}
.callback-btn:hover{ background:#ff9e3d; text-decoration:none; }
.callback-btn:active{ transform:translateY(1px); }

/* Контент модалки */
.callback-modal{
  display:none; max-width:560px; /* fancybox подстроит ширину */
}
.callback-modal .modalForm{ padding:20px; }
.callback-modal .table1{
  background:#fff; border-radius:14px; padding:20px 20px 16px;
  box-shadow:0 10px 30px rgba(0,0,0,.15);
  border:1px solid #ffe0bf;
}
.callback-modal .modalFormTitle{
  margin:0 0 10px; font-size:22px; font-weight:700; color:#1a1a1a;
}
.callback-modal .modalFormSubTitle{ margin:12px 0 6px; font-size:14px; color:#555; }
.callback-modal .modalFormTitleSpan{ display:none; } /* уберём лишние звёздочки-колонки */

.callback-modal input.text-input,
.callback-modal textarea.modalTextarea{
  width:100%; box-sizing:border-box;
  padding:10px 12px; border:1px solid #ddd; border-radius:10px;
  font-size:16px; outline:0;
  transition:border-color .2s, box-shadow .2s;
}
.callback-modal input.text-input:focus,
.callback-modal textarea.modalTextarea:focus{
  border-color:#F78D1D; box-shadow:0 0 0 3px rgba(247,141,29,.15);
}
.callback-modal textarea.modalTextarea{ min-height:96px; resize:vertical; }

.callback-note{ margin:10px 0 12px; color:#666; font-size:13px; }

/* Кнопка отправки */
.callback-send{
  width:100%; margin-top:10px; padding:12px 16px;
  background:#F78D1D; border:0; border-radius:10px; color:#fff; font-weight:700; cursor:pointer;
  transition:background .2s, transform .05s;
}
.callback-send:hover{ background:#ff9e3d; }
.callback-send:active{ transform:translateY(1px); }

/* reCAPTCHA компактнее и с отступом */
.callback-modal .g-recaptcha{ transform-origin:0 0; margin-top:6px; }

/* Мобила */
@media (max-width: 480px){
  .callback-modal .table1{ padding:16px; border-radius:12px; }
  .callback-modal .modalFormTitle{ font-size:20px; }
  .callback-btn{ padding:8px 12px; }
}

/* Мобилка: делаем окно выше и скроллим контент внутри */
@media (max-width: 768px){
  /* ваш контейнер внутри feedback; подставь нужный селектор,
     у тебя это .table1 в примере */
  #feedback .table1{
    min-height: 70vh;      /* 70% высоты экрана */
    max-height: 95vh;      /* не выше 80% */
    overflow-y: auto;      /* вертикальная прокрутка внутри модалки */
  }

  /* На всякий случай ограничим внутренности Fancybox */
  .fancybox-inner{
    max-height: 95vh !important;
    overflow-y: auto !important;
  }
}


/* Мобильный вывод состава заказа по заданной сетке */
.lk-order-mobile{ display:none; }

@media (max-width: 640px){
  .lk-order-mobile{ display:block; width:100%; }
  .lk-order-mobile .head,
  .lk-order-mobile .row{ width:100%; }

  .lk-order-mobile .col{
    display:inline-block;
    vertical-align:top;
    box-sizing:border-box;   /* чтобы отступы/бордеры не ломали проценты */
    white-space:normal;      /* разрешаем переносы */
  }
  /* ширины колонок ровно как попросил */
  .lk-order-mobile .col-name  { width:71%; }
  .lk-order-mobile .col-qty   { width:6%;  text-align:right; }
  .lk-order-mobile .col-price { width:9%;  text-align:right; }
  .lk-order-mobile .col-sum   { width:9%;  text-align:right; }

  /* чуть воздуха между строками, чтобы не "слипалось" */
  .lk-order-mobile .row{ padding:6px 0; border-top:1px solid #eee; }
  .lk-order-mobile .row:first-child{ border-top:0; }
}

/* Мобильная читабельность блока деталей заказа */
@media (max-width: 640px){
  /* сузить область применения: если у тебя другой контейнер — 
     замени #orders-list на свой */
  #orders-list .order-body{
    font-size: 15px;
    line-height: 1.35;
  }

  /* всем "колонкам", которые уже идут inline-block, добавим отступы
     и корректный box-sizing, чтобы не наезжали друг на друга */
  #orders-list .order-body div[style*="display: inline-block"]{
    box-sizing: border-box;
    padding: 2px 6px;       /* горизонтальные отступы */
    vertical-align: top;
  }

  /* первая (71%) — название: разрешить перенос длинных слов */
  #orders-list .order-body div[style*="width: 71%"]{
    word-break: break-word;
    overflow-wrap: anywhere;
    white-space: normal;
  }

  /* числовые колонки (6% и 9%) — вправо и без переноса единиц измерения */
  #orders-list .order-body div[style*="width: 6%"],
  #orders-list .order-body div[style*="width: 9%"]{
    text-align: right;
    white-space: nowrap;
  }

  /* чуть разделим строки (если строки обёрнуты div-ами) */
  #orders-list .order-body > div + div{
    margin-top: 4px;
  }
}

@media (max-width:560px){
  .ptw-table td { border-bottom: 1px solid #F78D1D; } /* вместо border:0 */
}

/* === Мобильная разметка: 2 строки на позицию + оранжевая линия === */
@media (max-width: 640px){
  /* прячем шапку */
  .ptw-table thead { display: none; }

  /* каждая позиция — грид из 2 строк: 
     1) имя (на всю ширину), 
     2) три числовых столбца в ряд */
  .ptw-table tbody tr{
    display: grid;
    grid-template-columns: 1fr max-content max-content max-content; /* имя + 3 числовых */
    grid-template-rows: auto auto;
    gap: 6px 12px;
    padding: 8px 0;
    border-top: 1px solid #F78D1D;         /* оранжевая линия между товарами */
  }
  .ptw-table tbody tr:first-child{ border-top: 0; }

  /* убираем внутренние границы, чтобы не мешали оранжевой линии */
  .ptw-table td{ border: 0; padding: 0; }

  /* 1-я строка: имя на всю ширину, переносим длинные слова */
  .ptw-name{
    grid-column: 1 / -1;
    grid-row: 1;
    word-break: break-word;
    overflow-wrap: anywhere;
    white-space: normal;
  }

  /* 2-я строка: три числа в один ряд, без переноса */
  .ptw-qty  { grid-column: 2; grid-row: 2; text-align: right; white-space: nowrap; }
  .ptw-price{ grid-column: 3; grid-row: 2; text-align: right; white-space: nowrap; }
  .ptw-sum  { grid-column: 4; grid-row: 2; text-align: right; white-space: nowrap; }

  /* компактные подписи (если используете data-label) */
  .ptw-table td[data-label]::before{
    content: attr(data-label) " ";
    opacity: .6;
    margin-right: 4px;
    font-size: 12px;
  }
}

/* Мобильный режим: таблица 71% / 6% / 9% / 9% + оранжевые линии */
@media (max-width: 640px){
  /* убираем вашу прежнюю "grid"-мобильную адаптацию */
  .ptw-table thead { display: none; }
  .ptw-table tbody tr{
    display: table-row !important;             /* вернуть табличное поведение */
  }

  .ptw-table{
    table-layout: fixed;                        /* фикс. ширины колонок */
    border-collapse: separate;                  /* чтобы работали вертикальные линии */
    border-spacing: 0;
  }

  /* ячейки строки: горизонтальная линия + вертикальные разделители */
  .ptw-table tbody tr td{
    padding: 8px 6px;
    vertical-align: top;
    border-top: 1px solid #F78D1D !important;   /* линия между товарами */
    background: transparent !important;
  }
  .ptw-table tbody tr:first-child td{
    /* при желании можно убрать верхнюю линию у самого первого товара */
    /* border-top: 0 !important; */
  }
  .ptw-table tbody tr td + td{
    border-left: 1px solid #F78D1D !important;  /* вертикальные оранжевые */
  }

  /* ширины колонок по ТЗ */
  .ptw-table .ptw-name  { width:63%; word-break:break-word; overflow-wrap:anywhere; white-space:normal; }
  .ptw-table .ptw-qty   { width:5%;  text-align:right; white-space:nowrap; }
  .ptw-table .ptw-price { width:13%;  text-align:right; white-space:nowrap; }
  .ptw-table .ptw-sum   { width:15%;  text-align:right; white-space:nowrap; }

  /* отключаем подписи из data-label, чтобы не раздували строки */
  .ptw-table td[data-label]::before{ content:none !important; }
}

/* Таблица во всю ширину контейнера ptw-result — без боковых отступов */
@media (max-width: 640px){
  /* у контейнера убираем левый/правый padding */
  .ptw-result{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* обёртка таблицы — без своих отступов/скроллов по X */
  .ptw-table-wrap{
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow-x: visible !important;
  }

  /* сама таблица на всю ширину */
  .ptw-table{
    width: 100% !important;
    table-layout: fixed;           /* фиксируем ширины колонок */
    border-collapse: separate;
    border-spacing: 0;
  }

  /* чуть-чуть внутренних отступов, чтобы текст не лип к линии */
  .ptw-table th,
  .ptw-table td{
    padding-left: 6px !important;
    padding-right: 6px !important;
  }

  /* если справа у «Итого» был сдвиг — обнулим и его */
  .ptw-total{
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* МОБИЛЬНЫЙ ФИКС: вернуть нормальную таблицу + 71/6/9/9 + оранжевые линии */
@media (max-width: 640px){
  /* 1) Вернуть табличную модель: отменить старые grid-правила */
  .ptw-table thead{ display: table-header-group !important; }
  .ptw-table thead tr,
  .ptw-table tbody tr{ display: table-row !important; }
  .ptw-table th,
  .ptw-table td{ display: table-cell !important; }

  /* 2) Таблица во всю ширину и фикс-раскладка колонок */
  .ptw-table{
    width: 100% !important;
    table-layout: fixed !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: transparent !important;
  }

  /* 3) Внутренние отступы и переносы */
  .ptw-table th,
  .ptw-table td{
    padding: 8px 6px !important;
    vertical-align: top;
    background: transparent !important;
    white-space: nowrap;         /* цифры/к-во/цена/сумма не переносятся */
  }
  /* Наименование может переноситься */
  .ptw-table td.ptw-name{ white-space: normal !important; word-break: break-word; overflow-wrap: anywhere; }

  /* 4) Ширины колонок — ЖЁСТКО по порядку столбцов */
  .ptw-table thead th:nth-child(1),
  .ptw-table tbody td:nth-child(1){ width:63% !important; }
  .ptw-table thead th:nth-child(2),
  .ptw-table tbody td:nth-child(2){ width:5%  !important; text-align:right; }
  .ptw-table thead th:nth-child(3),
  .ptw-table tbody td:nth-child(3){ width:13%  !important; text-align:right; }
  .ptw-table thead th:nth-child(4),
  .ptw-table tbody td:nth-child(4){ width:15%  !important; text-align:right; }

  /* 5) Оранжевые разделители: вертикальные + горизонтальные */
  .ptw-table th,
  .ptw-table td{ border-bottom: 1px solid #F78D1D !important; }
  .ptw-table th + th,
  .ptw-table td + td{ border-left: 1px solid #F78D1D !important; }

  /* 6) Отключить мобильные подписи data-label (чтобы не дублировать шапку) */
  .ptw-table td[data-label]::before{ content: none !important; }
}

/* ссылка "Зарегистрироваться" в правом верхнем углу модалки Вход */
.auth-modal{ position: relative; } /* чтобы позиционировать ссылку внутри */
.auth-top-link{
  position:absolute; top:18px; right:12px;
  font-size:16px; color:inherit; text-decoration:underline;
}
.auth-top-link:hover{ text-underline-offset:2px; text-decoration-thickness:2px; }

  /* /lkk/: скрываем футер на мобильных */
  @media (max-width: 991px){
    #lkk-footer-wrap { display: none !important; }
  }

  
/* ЛИПКОЕ МЕНЮ ЛК */
.lkk-nav-wrap{
  position: -webkit-sticky; /* iOS Safari */
  position: sticky;
  top: 8px;                 /* при необходимости подстрой под высоту шапки */
  z-index: 1000;
  background: inherit;      /* чтобы под ним не просвечивало */
}

/* уже было, оставляем; добавлю лёгкую тень при липком положении (необязательно) */
.lkk-nav{
  display:flex; gap:8px; align-items:center; flex-wrap:nowrap;
  border:1px solid #F78D1D; border-radius:10px; padding:6px;
  overflow-x:auto; -webkit-overflow-scrolling:touch; background:transparent;
  margin:8px 0 14px;
}

/* вкладки */
.lkk-nav__item{
  display:inline-flex; align-items:center; gap:6px;
  padding:8px 12px; border-radius:999px; text-decoration:none;
  color:#1a1a1a; white-space:nowrap; border:1px solid transparent;
}
.lkk-nav__item i{ font-size:16px; }
.lkk-nav__item:hover{ background:#fff7ef; border-color:#F78D1D; }
.lkk-nav__item.is-active{ background:#fff7ef; border-color:#F78D1D; font-weight:600; }

/* секции */
.lkk-section{ display:none; }
.lkk-section.is-active{ display:block; }

/* мобила — чуть компактнее */
@media (max-width:640px){
  .lkk-nav{ padding:4px; gap:6px; }
  .lkk-nav__item{ padding:7px 10px; }
  .lkk-nav__item i{ font-size:15px; }
}

.container,
.mainContainer,
.content_art{
  overflow: visible !important;
}
 
 /* Кнопка "избранного" на плитке товара */
.razdel-blok { position: relative; }
.wish-btn{
  position:absolute; top:6px; right:6px;
  width:34px; height:34px; border-radius:50%;
  border:1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.9);
  display:inline-flex; align-items:center; justify-content:center;
  cursor:pointer;
  box-shadow:0 2px 8px rgba(0,0,0,.08);
}
.wish-btn i{ font-size:18px; line-height:1; color:#999; }
.wish-btn:hover{ background:#fff; }
.wish-btn.is-active{
  border-color:#F78D1D; background:#fff7ef;
}
.wish-btn.is-active i{
  color:#F78D1D;               /* брендовый */
}

/* чтобы клик по сердечку не открывал ссылку-картинку */
.wish-btn{ z-index: 2; }

/* чтобы абсолютное позиционирование работало поверх картинки */
.tovarImg { position: relative; }

/* модификатор для карточки товара — чуть крупнее для тач */
.wish-btn--detail{
  top: 8px; right: 8px;         /* положение в правом верхнем углу */
  width: 40px; height: 40px;    /* побольше, чем в гриде */
}
.wish-btn--detail i{ font-size: 20px; }

@media (max-width: 640px){
  .wish-btn--detail{ width: 44px; height: 44px; }
  .wish-btn--detail i{ font-size: 22px; }
}


/* Сетка избранного в ЛК */
.fav-grid{
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(220px,1fr));
  gap:16px;
}

/* Используем уже существующие классы карточки:
   .content-main, .razdel-blok, .image_menu, .image_menuImg, .imageTextMenu, .title_image, .razdel-button
   Поэтому доп. стили минимальны. */
.fav-card .razdel-blok{ position:relative; }
.fav-card .wish-btn{ z-index:2; } /* сердечко поверх картинки */

/* На мобиле можно сделать плитки покрупнее */
@media (max-width:640px){
  .fav-grid{ grid-template-columns: 1fr 1fr; gap:12px; }
}

/* опционально, только для ЛК-«Избранное» */
#fav-grid{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px,1fr));
  gap: 16px;
}
@media (max-width:640px){
  #fav-grid{ grid-template-columns: 1fr 1fr; gap:12px; }
}
 
 /* ЛК → Избранное: не прятать картинки */
#fav-grid .image_menuImg { display:block; width:100%; height:auto; }

/* если на сайте где-то image_menuImgNew изначально скрывает img — перебьём */
#fav-grid .image_menuImgNew {
  opacity: 1 !important;
  visibility: visible !important;
}

/* ЛК → Избранное: карточка-изображение занимает всю «рамку» */
#fav-grid .image_menu {
  position: relative;         /* родитель для абсолютного img */
  padding-top: 70%;           /* как у вас — соотношение сторон */
}

#fav-grid .image_menuImg {
  position: absolute;         /* фиксируем внутри плейсхолдера */
  top: 0; left: 0; right: 0; bottom: 0;
  width: 100%; height: 100%;  /* заполняем */
  object-fit: contain;        /* изображение без обрезки */
  display: block;
  margin-left: 0 !important;  /* убираем сдвиг влево из базовых стилей */
  border: 1px solid #F58A3C;  /* ваша рамка */
}

/* если вдруг где-то стоит .image_menuImgNew — тоже не прятать */
#fav-grid .image_menuImgNew {
  opacity: 1 !important;
  visibility: visible !important;
}


/* ЛК → Избранное: исправляем отображение картинок плиток */
#fav-grid .content-main{
  width: auto;           /* пусть шириной управляет grid */
  margin: 0;             /* убираем свои внешние отступы плитки */
}

#fav-grid .razdel-blok{ position: relative; }

#fav-grid .image_menu{
  position: relative;    /* родитель для абсолютного img */
  padding-top: 70%;      /* как у вас на сайте — соотношение сторон */
}

/*  КЛЮЧЕВОЕ: картинка занимает весь «плейсхолдер» */
#fav-grid .image_menuImg{
  position: absolute;
  inset: 0;              /* top:0; right:0; bottom:0; left:0; */
  width: 100%;
  height: 100%;
  object-fit: contain;   /* без обрезки */
  display: block;
  margin: 0 !important;  /* перебиваем margin-left:10px из базовых стилей */
  opacity: 1 !important;
  visibility: visible !important;
}

/* если где-то на проекте встречается image_menuImgNew, не скрывать и тут */
#fav-grid .image_menuImgNew{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  margin: 0 !important;
}
