/* ==========================================================================
   ALGOMIX NOVA — слой совместимости с WordPress
   Контент страниц собран в Gutenberg под светлый дизайн: 100 упоминаний
   #098bcc, 66 блоков has-white-background-color, 36 has-black-color.
   Перекрашивать блоки нельзя — их правит заказчик в админке.
   Поэтому контент кладём на светлый «лист», а тёмной остаётся оболочка.
   ========================================================================== */

/* ---- Панель администратора не должна перекрывать шапку ------------------- */
.admin-bar .header { top: 32px; }
@media screen and (max-width: 782px) {
  .admin-bar .header { top: 46px; }
}

/* ---- Подзаголовок на страницах, где H1 уже есть в контенте --------------- */
.page-head__kicker {
  font-family: var(--font-mono);
  font-size: var(--t-micro);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--txt-mute);
  margin: 0;
}

/* Стилями блоков Gutenberg занимается assets/css/content.css — там контент
   переведён на язык темы. Здесь остаются только формы и плагины. */

/* ==========================================================================
   Contact Form 7
   Работает в двух окружениях: на светлом листе и в тёмном стеклянном блоке.
   ========================================================================== */

.wpcf7 { --f-bg: var(--field-bg); --f-line: var(--glass-brd); --f-text: var(--txt); --f-label: var(--txt-mute); }

.wpcf7-form p { margin: 0 0 1rem; }
.wpcf7-form label { display: block; font-size: var(--t-small); color: var(--f-label); margin-bottom: 0.5rem; }

.wpcf7-form :where(input[type="text"], input[type="tel"], input[type="email"], input[type="url"], input[type="number"], textarea, select) {
  width: 100%;
  padding: 0.875rem 1rem;
  border-radius: var(--r-md);
  border: 1px solid var(--f-line);
  background: var(--f-bg);
  color: var(--f-text);
  font-family: var(--font-body);
  font-size: 1rem;
  line-height: 1.5;
  transition: border-color var(--d-fast), background var(--d-fast);
}
.wpcf7-form textarea { min-height: 120px; resize: vertical; }
.wpcf7-form :where(input, textarea, select):hover { border-color: var(--glass-brd-hi); }
.wpcf7-form :where(input, textarea, select):focus {
  outline: none;
  border-color: var(--cyan);
  box-shadow: 0 0 0 3px rgba(0, 168, 216, 0.16);
}
.wpcf7-form ::placeholder { color: var(--f-label); opacity: 0.8; }

.wpcf7-form input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 2rem;
  border: 0;
  border-radius: var(--r-pill);
  background: var(--grad-primary);
  color: var(--btn-fg);
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 1rem;
  cursor: pointer;
  transition: transform var(--d-normal) var(--ease-spring), box-shadow var(--d-normal) var(--ease-out);
}
.wpcf7-form input[type="submit"]:hover { transform: translateY(-2px); box-shadow: var(--glow-cyan); }

/* Сообщения формы */
.wpcf7 form .wpcf7-response-output {
  margin: 1.25rem 0 0;
  padding: 0.875rem 1.25rem;
  border-radius: var(--r-md);
  border: 1px solid var(--f-line);
  font-size: 0.95rem;
  color: var(--f-text);
}
.wpcf7 form.sent .wpcf7-response-output { border-color: var(--lime); }
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output { border-color: #ff5470; }
.wpcf7-not-valid-tip { color: #ff5470; font-size: var(--t-small); margin-top: 0.375rem; }
.wpcf7-spinner { filter: hue-rotate(160deg); }

/* ---- Капча плагина algomix-security -------------------------------------- */

.algomix-captcha-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  margin: 0 0 1rem;
}
.algomix-captcha-wrap > label { width: 100%; margin-bottom: 0.25rem; }
.algomix-captcha-wrap :where(img, svg) {
  height: 52px;
  width: auto;
  border-radius: var(--r-sm);
  border: 1px solid var(--f-line);
  background: #fff;
  padding: 0 0.5rem;
}
.algomix-captcha-wrap input[type="text"],
.algomix-captcha-wrap input[type="number"] { flex: 1 1 180px; width: auto; }
.algomix-captcha-wrap :where(a, button) {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.5rem 0.875rem;
  border-radius: var(--r-pill);
  border: 1px solid var(--f-line);
  background: transparent;
  color: var(--f-label);
  font-size: var(--t-small);
  text-decoration: none;
  cursor: pointer;
  transition: color var(--d-fast), border-color var(--d-fast);
}
.algomix-captcha-wrap :where(a, button):hover { color: var(--cyan); border-color: var(--cyan); }

/* Honeypot обязан остаться невидимым для человека */
.algomix-hp-wrap,
input[name="algomix_hp_field"] {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

@media (max-width: 520px) {
  .algomix-captcha-wrap input[type="text"],
  .algomix-captcha-wrap input[type="number"] { flex: 1 1 100%; }
}

/* ---- Форма в тёмном CTA-блоке ------------------------------------------- */

.cta-block__form { min-width: 0; }
.cta-block .wpcf7-form p:last-of-type { margin-bottom: 0; }

/* ==========================================================================
   Плагины
   ========================================================================== */

/* ---- Баннер cookie (Simple GDPR Cookie Compliance) ----------------------
   Плагин красит себя переменными --sgcc-*, объявленными на :root с цветами
   прежней темы. Перебиваем не правила, а сами переменные: селектор html:root
   специфичнее :root, поэтому порядок подключения стилей роли не играет.   */

html:root {
  --sgcc-text-color: var(--txt);
  --sgcc-link-color: var(--cyan);
  --sgcc-link-hover-color: var(--cyan);
  --sgcc-notice-background-color: var(--panel-bg);
  --sgcc-cookie-icon-color: var(--cyan);
  --sgcc-close-button-background-color: transparent;
  --sgcc-close-button-hover-background-color: var(--glass-hi);
  --sgcc-close-button-color: var(--txt-dim);
  --sgcc-close-button-hover-color: var(--cyan);
  --sgcc-accept-button-background-color: var(--cyan);
  --sgcc-accept-button-hover-background-color: var(--violet-soft);
  --sgcc-accept-button-color: var(--btn-fg);
  --sgcc-accept-button-hover-color: var(--btn-fg);
  --sgcc-accept-button-border-color: transparent;
  --sgcc-accept-button-hover-border-color: transparent;
}

/* Фон плагин вешает на сам .sgcc-main-wrapper — стекло даём туда же */
.sgcc-main-wrapper {
  border-radius: var(--r-lg) !important;
  border: 1px solid var(--glass-brd);
  backdrop-filter: blur(22px) saturate(150%);
  -webkit-backdrop-filter: blur(22px) saturate(150%);
  box-shadow: var(--shadow-card) !important;
  color: var(--txt);
}
.sgcc-main-wrapper :where(p) { color: var(--txt-dim); font-size: var(--t-small); margin: 0; }
.sgcc-main-wrapper :where(a) { color: var(--cyan); text-underline-offset: 3px; }

/* Кнопку плагин красит по id — перебиваем таким же весом */
.sgcc-main-wrapper .cookie-compliance-button-block #sgcc-accept-button {
  border-radius: var(--r-pill);
  border-color: transparent;
  font-family: var(--font-body);
  font-weight: 600;
  padding: 0.7rem 1.6rem;
  box-shadow: none;
  transition: transform var(--d-normal) var(--ease-spring), box-shadow var(--d-normal) var(--ease-out);
}
.sgcc-main-wrapper .cookie-compliance-button-block #sgcc-accept-button:hover {
  transform: translateY(-1px);
  box-shadow: var(--glow-cyan);
}
.sgcc-main-wrapper #close-sgcc-button { border: 1px solid var(--glass-brd); }

/* Прежний баннер другого плагина — на случай, если его вернут */
#gdpr-cookie-message,
.gdpr-cookie-notice {
  border-radius: var(--r-lg) !important;
  border: 1px solid var(--glass-brd) !important;
  background: var(--panel-bg) !important;
  backdrop-filter: blur(20px);
  color: var(--txt) !important;
  box-shadow: var(--shadow-card);
}
#gdpr-cookie-message :where(a) { color: var(--cyan) !important; }
#gdpr-cookie-message :where(button, .gdpr-cookie-accept) {
  border-radius: var(--r-pill) !important;
  background: var(--grad-primary) !important;
  color: var(--btn-fg) !important;
  border: 0 !important;
}

/* Боковой ярлык slick-popup остался от прежнего дизайна: у новой темы
   свои призывы к действию, а ярлык перекрывает контент. Прячем. */
.splite_sideEnquiry,
#slickpopuptrigger,
.slickpopuplaunchsidebar,
[id^="slickpopup"][class*="sidebar"],
.slick-popup-sidebar-trigger { display: none !important; }

/* Сам попап, если его всё же откроют, — на светлом листе */
.slickpopupwrapper, .spu-box { color: #22242c; }

/* ==========================================================================
   Печать
   ========================================================================== */

@media print {
  #scene, .grain, .ambient, .loader, .header, .cursor-dot, .cursor-ring,
  .footer, #brief { display: none !important; }
  .entry-content :where(.wp-block-group, .wp-block-column, .wp-block-cover) {
    box-shadow: none !important; border-color: #ddd !important; background: none !important;
  }
  body { background: #fff; color: #000; }
}
