/*
 * Информационные страницы на десктопе (pages/layout.php, body.pg-desktop):
 * общие шапка/подвал — restar-desktop.css / restar-footer.css, здесь — фон,
 * крошки и заголовок, ширина контента и сетка блоков. Базовые стили тел
 * страниц — css/pages/pages.css (общие с мобильной), тут только поверх.
 * Акцент — цвет компании (--theme-color, config/init.php).
 */
.pg-desktop {
  --pgd-accent: rgb(var(--theme-color, 251, 122, 9));
  --pgd-accent-soft: rgba(var(--theme-color, 251, 122, 9), .08);
  --pgd-ink: #242832;
  --pgd-text: #3d4250;
  --pgd-muted: #7b818e;
  --pgd-line: #ece8e3;
  /* style.css (мобильная тема) зажимает body в колонку 600px со своей
     прокруткой — на десктопе страница во всю ширину и обычная прокрутка */
  max-width: none;
  height: auto;
  margin: 0;
  overflow-y: visible;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  background: #f6f6f7;
  color: var(--pgd-ink);
  font-family: "Poppins", sans-serif;
}
.pg-desktop > .restar-footer { margin-top: auto; }

/* Ширина контейнера — как у главной десктопа (desktop/css/style.css) */
@media (min-width: 1540px) {
  .pg-desktop .container { padding: 0 20px; max-width: 1500px; }
}

/* ── Крошки и заголовок ── */
.pgd-head { width: 100%; max-width: 860px; padding-top: 32px; padding-bottom: 20px; }
.pgd-crumbs { display: flex; align-items: center; gap: 4px; font-size: 13px; color: var(--pgd-muted); }
.pgd-crumbs a { color: var(--pgd-muted); text-decoration: none; transition: color .16s ease; }
.pgd-crumbs a:hover { color: var(--pgd-accent); }
.pgd-crumbs i { font-size: 16px; color: #c3c6cd; }
.pgd-crumbs span { color: var(--pgd-ink); }
.pgd-title { margin: 10px 0 0; font-size: 34px; font-weight: 600; line-height: 1.2; color: var(--pgd-ink); }
.pgd-subtitle { margin-top: 6px; font-size: 15px; color: var(--pgd-muted); }

/* ── Контент: узкая колонка для текста, широкая — для страниц из блоков ── */
.pg-desktop .pgd-wrap { width: 100%; max-width: 860px; padding: 0 12px 64px; }
.pg-desktop .pgd-wrap--wide,
.pg-desktop .pgd-head:has(+ .pgd-wrap--wide),
.pg-desktop .pgd-head:has(+ .pgd-wrap + .pgd-wrap--wide) { max-width: 1120px; }
/* Плашка «снята с публикации» — отдельный .pgd-wrap над контентом */
.pg-desktop .pgd-wrap:has(> .pg-notice) { padding-bottom: 16px; }
.pg-desktop .pg-notice { font-size: 14px; padding: 12px 16px; }

/* Карточки — с рамкой, как в профиле */
.pg-desktop .pg-article,
.pg-desktop .pg-section,
.pg-desktop .pg-facts,
.pg-desktop .pg-empty,
.pg-desktop .pg-stub { border: 1px solid var(--pgd-line); border-radius: 20px; }

/* ── Текстовая страница ── */
.pg-desktop .pg-article { padding: 40px 48px; font-size: 16px; line-height: 1.7; color: var(--pgd-text); }
/* Глобальные p/li мобильной темы (style.css) — 9px серым; в документе текст
   и списки должны читаться как основной текст */
.pg-desktop .pg-article p,
.pg-desktop .pg-article li { font-size: 16px; line-height: 1.7; color: var(--pgd-text); }
.pg-desktop .pg-article p { margin: 0 0 14px; }
.pg-desktop .pg-article li { margin-bottom: 8px; }
.pg-desktop .pg-article h2 { font-size: 22px; margin: 32px 0 12px; }
.pg-desktop .pg-article h3 { font-size: 18px; margin: 24px 0 10px; }
.pg-desktop .pg-article h2:first-child,
.pg-desktop .pg-article h3:first-child { margin-top: 0; }
.pg-desktop .pg-article a { color: var(--pgd-accent); }
.pg-desktop .pg-article blockquote { border-left-color: var(--pgd-accent); }

/* ── Секции страниц из блоков ── */
.pg-desktop .pg-section { padding: 26px 30px; margin-bottom: 16px; }
.pg-desktop .pg-section-title { margin-bottom: 16px; font-size: 19px; }
.pg-desktop .pg-section-title i { font-size: 22px; color: var(--pgd-accent); }
.pg-desktop .pg-text,
.pg-desktop .pg-list { font-size: 15px; line-height: 1.7; color: var(--pgd-text); }
.pg-desktop .pg-list li { font-size: 15px; color: var(--pgd-text); }
.pg-desktop .pg-note { font-size: 13.5px; }

/* Факты — одна карточка с крупными значениями */
.pg-desktop .pg-facts { padding: 30px 10px; margin-bottom: 16px; }
.pg-desktop .pg-fact-ico { width: 56px; height: 56px; margin-bottom: 14px; }
.pg-desktop .pg-fact-ico i { font-size: 26px; }
.pg-desktop .pg-fact-value { font-size: 24px; font-weight: 600; }
.pg-desktop .pg-fact-label { margin-top: 4px; font-size: 14px; }

/* Широкие страницы — сетка в две колонки; по умолчанию блок на всю ширину,
   рядом встают только парные блоки (правила по страницам ниже) */
.pg-desktop .pgd-wrap--wide { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: start; }
.pg-desktop .pgd-wrap--wide > * { grid-column: 1 / -1; margin-bottom: 0; }
.pg-desktop .pgd-wrap--wide > script { display: none; }

/* /bonus: «Как копить» и «Как тратить» — рядом */
.pg-desktop .pgd-wrap--bonus > .pg-section:has(.pg-list) { grid-column: auto; align-self: stretch; }

/* /delivery: «Способы оплаты» и «График работы» — рядом, если есть оба */
.pg-desktop .pgd-wrap--delivery > .pg-section:has(.pg-pay):has(+ .pg-section .pg-hours),
.pg-desktop .pgd-wrap--delivery > .pg-section:has(.pg-pay) + .pg-section:has(.pg-hours) { grid-column: auto; align-self: stretch; }

/* /contacts: адреса на всю ширину, «Связаться» и «Реквизиты» — рядом;
   если второго блока нет, оставшийся снова на всю ширину */
.pg-desktop .pgd-wrap--contacts > .pg-section:not(:has(.pg-branches)) { grid-column: auto; align-self: stretch; }
.pg-desktop .pgd-wrap--contacts > .pg-section:not(:has(.pg-branches)):last-child:nth-child(even) { grid-column: 1 / -1; }

/* Уровни кэшбэка — карточки в ряд вместо списка строк */
.pg-desktop .pg-levels { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; }
.pg-desktop .pg-level {
  display: grid; grid-template-columns: auto 1fr; grid-template-areas: "dot name" "pct pct" "min min";
  align-items: center; gap: 4px 8px; padding: 18px 20px;
  border: 1px solid var(--pgd-line); border-radius: 16px; background: #fff;
}
.pg-desktop .pg-level:last-child { border-bottom: 1px solid var(--pgd-line); }
.pg-desktop .pg-level-dot { grid-area: dot; width: 12px; height: 12px; }
.pg-desktop .pg-level-name { grid-area: name; font-size: 15px; letter-spacing: .02em; }
.pg-desktop .pg-level-pct { grid-area: pct; min-width: 0; margin-top: 8px; text-align: left; font-size: 30px; font-weight: 600; line-height: 1.1; color: var(--pgd-accent); }
.pg-desktop .pg-level-min { grid-area: min; margin: 0; text-align: left; font-size: 13px; }

/* Карта зон доставки — выше */
.pg-desktop .pg-map { height: 440px; border-radius: 16px; }
.pg-desktop .pg-zone { font-size: 15px; padding: 12px 0; }

/* Способы оплаты, график, филиалы */
.pg-desktop .pg-pay-item { font-size: 15px; padding: 12px 16px; }
.pg-desktop .pg-pay-ico i { color: var(--pgd-accent); }
.pg-desktop .pg-hours-row { font-size: 15px; padding: 10px 0; }
.pg-desktop .pg-branches { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }
.pg-desktop .pg-branch { padding: 18px; border-radius: 16px; }
.pg-desktop .pg-branch-name { font-size: 16px; }
.pg-desktop .pg-branch-line { font-size: 14px; }
.pg-desktop .pg-branch-map { color: var(--pgd-accent); font-size: 14px; }

/* Пустая страница / заглушка / 404 */
.pg-desktop .pg-empty,
.pg-desktop .pg-stub { padding: 72px 32px; font-size: 15px; }
.pg-desktop .pg-stub-icon { width: 88px; height: 88px; }
.pg-desktop .pg-stub-icon i { font-size: 40px; color: var(--pgd-accent); }
.pg-desktop .pg-stub-title { font-size: 20px; }
.pg-desktop .pg-stub-text { font-size: 15px; }
.pg-desktop .pg-tag { font-size: 14px; padding: 7px 16px; }
