/* Слой темы WordPress поверх дизайн-системы: варианты шапки статьи для обычных материалов, окно АПСАУНД ЧЕК,
   панель администратора, навигация по страницам. Цвета и шрифты — только токенами дизайн-системы. */

/* ---------- шапка статьи с обложкой (у большинства материалов нет вырезки) ---------- */
.a-stage--cover .a-stage__type { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); column-gap: var(--cg); align-items: end; }
.a-stage--cover .a-title__l2 { text-align: left; padding-right: 0; }
.a-title--l { font-size: clamp(40px, 6vw, 100px); }
.a-title--m { font-size: clamp(32px, 4.1vw, 66px); letter-spacing: -.045em; line-height: 1.04; }
.a-title--s { font-size: clamp(28px, 3.1vw, 48px); letter-spacing: -.04em; line-height: 1.08; }
.a-title--m .a-title__l4, .a-title--s .a-title__l4 { font-size: .52em; }
.a-cover { margin: 0; position: relative; z-index: 1; }
.a-cover img { display: block; width: 100%; height: auto; background: var(--wall-2); }
@media (max-width: 960px) {
  .a-stage--cover .a-stage__type { grid-template-columns: 1fr; row-gap: var(--s-6); }
  .a-title--l { font-size: clamp(34px, 9vw, 56px); }
  .a-title--m { font-size: clamp(28px, 7vw, 44px); }
  .a-title--s { font-size: clamp(25px, 6vw, 36px); }
}
.person__k { display: block; margin-bottom: 6px; }
/* кредиты без строки «Фото»: на всю ширину только «Текст», «Выпуск» и «Чтение» — парой */
.credits--3 div:nth-child(2) { grid-column: auto; }

/* ---------- окно АПСАУНД ЧЕК (было копией внутри статей) ---------- */
.uspop[hidden] { display: none; }
.uspop { position: fixed; inset: 0; z-index: 400; display: grid; place-items: center; padding: var(--gut); }
.uspop__veil { position: absolute; inset: 0; background: rgba(11, 10, 9, .82); }
.uspop__box { position: relative; width: min(560px, 100%); display: grid; gap: var(--s-4); justify-items: start; padding: clamp(28px, 4vw, 48px); background: var(--wall-2); border: 1px solid var(--rule-2); box-shadow: 0 40px 80px rgba(0, 0, 0, .5); animation: uspop-in .6s var(--slow) both; }
.uspop__t { font: var(--t-title-l); letter-spacing: -.04em; }
.uspop__d { color: var(--ivory-2); font-size: 16px; line-height: 1.55; }
.uspop__x { position: absolute; right: 12px; top: 8px; width: 40px; height: 40px; font: 300 28px/1 var(--f-text); color: var(--ivory-2); background: none; border: 0; cursor: pointer; }
.uspop__x:hover { color: var(--ivory); }
@keyframes uspop-in { from { opacity: 0; transform: translateY(16px); } }
@media (prefers-reduced-motion: reduce) { .uspop__box { animation: none; } }
body.uspop-open { overflow: hidden; }

/* ---------- WordPress ---------- */
body.admin-bar .hd { top: var(--wp-admin--admin-bar--height, 32px); }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.pagination .nav-links, .nav-links { display: flex; flex-wrap: wrap; gap: var(--s-3); margin-top: var(--s-7); font: var(--t-label); letter-spacing: .1em; }
.nav-links .page-numbers { min-width: 40px; height: 40px; display: inline-grid; place-items: center; border: 1px solid var(--rule); color: var(--ivory-2); }
.nav-links .page-numbers.current { border-color: var(--ivory); color: var(--ivory); }

/* Окно плагина Exit Popup (уход курсора к вкладкам): текст и картинка — из настроек плагина, вид — как у окна темы .uspop.
   Плагин пишет свои стили с !important и процентными координатами — перекрываем их более точными селекторами. */
body #exitpopup-modal .underlay { background: rgba(11, 10, 9, .82) !important; }
body #exitpopup-modal .exitpopup-modal-window {
  width: min(880px, calc(100vw - 32px)) !important; aspect-ratio: auto !important; height: auto !important; max-height: calc(100vh - 32px) !important;
  animation: uspop-in .6s var(--slow) both;
}
body #exitpopup-modal .upsound-exit {
  container-type: normal; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); align-items: stretch; height: auto;
  border-radius: 0; background: var(--wall-2); border: 1px solid var(--rule-2); color: var(--ivory); font-family: var(--f-text); overflow: hidden;
}
body #exitpopup-modal .upsound-exit *, body #exitpopup-modal .upsound-exit *::before, body #exitpopup-modal .upsound-exit *::after { transition: none; }
body #exitpopup-modal .upsound-exit .upsound-exit__title,
body #exitpopup-modal .upsound-exit .upsound-exit__text,
body #exitpopup-modal .upsound-exit .upsound-exit__button { position: static !important; width: auto !important; height: auto !important; grid-column: 1; }
body #exitpopup-modal .upsound-exit .upsound-exit__title {
  padding: clamp(32px, 4vw, 52px) clamp(24px, 3.4vw, 48px) 0; color: var(--ivory);
  font: 300 clamp(28px, 3vw, 44px)/1.02 var(--f-display) !important; letter-spacing: -.045em; text-transform: none;
}
body #exitpopup-modal .upsound-exit .upsound-exit__title br { display: none; }
body #exitpopup-modal .upsound-exit .upsound-exit__text {
  padding: 18px clamp(24px, 3.4vw, 48px) 0; max-width: 44ch; color: var(--ivory-2);
  font: 300 16px/1.55 var(--f-text) !important;
}
body #exitpopup-modal .upsound-exit .upsound-exit__button {
  justify-self: start; display: inline-flex !important; gap: 14px; min-height: 52px; margin: 26px clamp(24px, 3.4vw, 48px) clamp(32px, 4vw, 52px); padding: 0 24px;
  border-radius: 0; background: var(--ivory) !important; color: var(--ink) !important;
  font: 500 15px/1.1 var(--f-text) !important; letter-spacing: .01em; transition: background-color .5s var(--ease);
}
body #exitpopup-modal .upsound-exit .upsound-exit__button::after { content: "→"; font-family: var(--f-text); }
body #exitpopup-modal .upsound-exit .upsound-exit__button:hover { background: #fff !important; }
body #exitpopup-modal .upsound-exit .upsound-exit__close { right: 12px; top: 12px; width: 40px; height: 40px; }
body #exitpopup-modal .upsound-exit .upsound-exit__close::before,
body #exitpopup-modal .upsound-exit .upsound-exit__close::after { left: 19px; top: 9px; width: 1.5px; height: 22px; background: var(--ivory-2); }
body #exitpopup-modal .upsound-exit .upsound-exit__close:hover::before,
body #exitpopup-modal .upsound-exit .upsound-exit__close:hover::after { background: var(--ivory); }
body #exitpopup-modal .upsound-exit .upsound-exit__visual {
  position: relative !important; left: auto !important; top: auto !important; width: auto !important; height: auto !important; grid-column: 2; grid-row: 1 / span 3;
  min-height: 340px; border-radius: 0; background: var(--fog); overflow: hidden;
}
body #exitpopup-modal .upsound-exit .upsound-exit__visual::before { display: none; }
body #exitpopup-modal .upsound-exit .upsound-exit__phone {
  position: absolute !important; left: 9% !important; top: 10% !important; width: 84% !important; height: 100% !important;
}
body #exitpopup-modal .upsound-exit .upsound-exit__phone img { filter: drop-shadow(0 30px 40px rgba(11, 10, 9, .3)); }
@media (max-width: 640px) {
  body #exitpopup-modal .upsound-exit { grid-template-columns: minmax(0, 1fr); }
  body #exitpopup-modal .upsound-exit .upsound-exit__visual { grid-column: 1; grid-row: 1; min-height: 210px; }
  body #exitpopup-modal .upsound-exit .upsound-exit__phone { left: 20% !important; top: 12% !important; width: 66% !important; }
  body #exitpopup-modal .upsound-exit .upsound-exit__title { grid-row: 2; padding-top: 24px; font-size: 26px !important; }
  body #exitpopup-modal .upsound-exit .upsound-exit__text { grid-row: 3; font-size: 15px !important; }
  body #exitpopup-modal .upsound-exit .upsound-exit__button { grid-row: 4; margin-bottom: 28px; }
}
/* телефон в окне: медленно покачивается и чуть наклоняется — «живой» предмет, а не картинка */
@media (prefers-reduced-motion: no-preference) {
  body #exitpopup-modal .upsound-exit .upsound-exit__phone { animation: us-phone 6s ease-in-out infinite alternate; transform-origin: 50% 80%; }
}
@keyframes us-phone { from { transform: translateY(-6px) rotate(-1.5deg); } to { transform: translateY(8px) rotate(1.5deg); } }
