/* =========================================================
   ПАРУС ДИАЛОГ — базовые стили темы
   Токены, ресет, типографика, контейнеры, секции, кнопки,
   шапка и подвал. Стили конкретных секций добавляются
   отдельными файлами на этапе сборки блоков.
   ========================================================= */

:root {
  /* Палитра (брендбук R02) */
  --c-bg: #F2EADF;            /* Диалог / Бумага */
  --c-surface: #FFFFFF;
  --c-surface-alt: #EDE5D9;
  --c-text: #181818;          /* Диалог / Чернила */
  --c-text-secondary: #4A4540;
  --c-text-muted: #8A837A;
  --c-border: #D9CFBF;
  --c-border-light: #E6DDD0;
  --c-accent: #2A3F5F;        /* Глубокая вода */
  --c-accent-light: #E8ECF2;
  --c-accent-mid: #2A3F5F;
  --c-teal: #8BA98E;          /* Шалфей */
  --c-teal-light: #EFF5F0;
  --c-coral: #D4A574;         /* Тёплый песок */
  --c-coral-light: #F7EDDF;
  --c-amber: #D4A574;
  --c-amber-light: #F7EDDF;
  --c-red: #8B3A3A;
  --c-red-light: #F5E8E8;
  --c-green: #5A7A4A;
  --c-green-light: #EFF5ED;
  --c-blue: #2A3F5F;
  --c-blue-light: #E8ECF2;

  /* Типографика */
  --font-main: 'Geologica', sans-serif;
  --font-mono: 'JetBrains Mono', monospace;

  /* Радиусы / раскладка */
  --radius: 12px;
  --radius-sm: 8px;
  --radius-lg: 16px;
  --max-w: 960px;
  --max-w-narrow: 820px;
  --section-py: 80px;
}

/* ---- Ресет ---- */
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }

body {
  font-family: var(--font-main);
  font-size: 16px;
  line-height: 1.65;
  color: var(--c-text);
  background: var(--c-bg);
  -webkit-font-smoothing: antialiased;
}

a { color: var(--c-accent); }

/* ---- Контейнеры ---- */
.container {
  max-width: var(--max-w);
  margin: 0 auto;
  padding: 0 24px;
}
.container--narrow { max-width: var(--max-w-narrow); }

/* ---- Шапка (брендинг + меню) ---- */
.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(242, 234, 223, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--c-border-light);
}
.site-header__inner {
  max-width: var(--max-w);
  margin: 0 auto;
  padding: 0 24px;
  min-height: 56px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.site-header a { text-decoration: none; }
.site-header .site-logo img,
.site-header img { height: 24px; width: auto; display: block; }
.site-header .site-branding__name a,
.site-header .site-name a {
  font-weight: 600;
  font-size: 15px;
  letter-spacing: 0.02em;
  color: var(--c-accent);
}
/* главное меню в строку */
.site-header .menu {
  list-style: none;
  display: flex;
  gap: 24px;
  align-items: center;
  margin: 0;
  padding: 0;
}
.site-header .menu a {
  font-size: 13px;
  font-weight: 500;
  color: var(--c-text-secondary);
  transition: color 0.2s;
}
.site-header .menu a:hover { color: var(--c-text); }

/* ---- Секции ---- */
.section { padding: var(--section-py) 0; }
.section + .section { border-top: 1px solid var(--c-border-light); }
.section--alt { background: var(--c-surface); }
.section--accent { background: var(--c-accent); color: #fff; }
.section--accent .tag { color: rgba(255, 255, 255, 0.6); }
.section--accent .section-desc { color: rgba(255, 255, 255, 0.75); }

.tag {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: 12px;
  color: var(--c-accent-mid);
}
.section-title {
  font-size: 32px;
  font-weight: 600;
  line-height: 1.2;
  margin-bottom: 16px;
  letter-spacing: -0.01em;
  max-width: 640px;
}
.section-desc {
  font-size: 17px;
  line-height: 1.65;
  color: var(--c-text-secondary);
  max-width: 580px;
  margin-bottom: 24px;
}

/* ---- Кнопки ---- */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 12px 24px;
  border-radius: var(--radius-sm);
  font-size: 14px;
  font-weight: 500;
  font-family: var(--font-main);
  cursor: pointer;
  border: none;
  text-decoration: none;
  transition: transform 0.15s, background 0.2s, box-shadow 0.2s;
}
.btn:active { transform: scale(0.97); }
.btn-primary { background: var(--c-accent); color: #fff; }
.btn-primary:hover { background: #1E3350; }
.btn-outline { background: transparent; border: 1px solid var(--c-border); color: var(--c-text); }
.btn-outline:hover { background: var(--c-surface-alt); }
.btn-white { background: #fff; color: var(--c-accent); }
.btn-white:hover { background: #F5F5F5; }
.btn-group { display: flex; gap: 10px; flex-wrap: wrap; }

/* ---- Подвал ---- */
.site-footer {
  background: var(--c-accent);
  color: rgba(255, 255, 255, 0.85);
  padding: 56px 0 32px;
}
.site-footer a { color: #fff; }

/* ---- Служебное содержимое (admin / системные страницы) ---- */
.region-content { padding: 40px 0; }

/* ---- Адаптив: брейкпоинт бренда 720px ---- */
@media (max-width: 720px) {
  :root { --section-py: 56px; }
  .section-title { font-size: 26px; }
  .site-header__inner { gap: 14px; }
  .site-header .menu { gap: 14px; }
}

/* ===================== СЕКЦИЯ: HERO ===================== */
.hero { padding: 64px 0 72px; }
.hero-grid { display: grid; grid-template-columns: 1.2fr 1fr; gap: 48px; align-items: center; }
.hero-byline { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; color: var(--c-text-muted); margin-bottom: 20px; padding: 6px 12px; background: var(--c-surface-alt); border-radius: 20px; }
.hero-byline::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--c-coral); display: inline-block; }
.hero-title { font-size: 38px; font-weight: 600; line-height: 1.15; margin-bottom: 16px; letter-spacing: -0.015em; }
.hero-desc { font-size: 17px; line-height: 1.65; color: var(--c-text-secondary); margin-bottom: 28px; }
.hero-img { aspect-ratio: 4 / 5; min-height: 380px; }
.hero-stats { display: flex; flex-wrap: wrap; gap: 32px; margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--c-border-light); }
.hero-stat-num { font-family: var(--font-mono); font-size: 28px; font-weight: 600; color: var(--c-accent); line-height: 1; }
.hero-stat-label { font-family: var(--font-mono); font-size: 11px; color: var(--c-text-muted); margin-top: 4px; }
.img-slot { background: var(--c-surface-alt); border-radius: var(--radius); border: 1px dashed var(--c-border); display: flex; flex-direction: column; align-items: center; justify-content: center; color: var(--c-text-muted); font-size: 12px; text-align: center; padding: 20px; overflow: hidden; }
.img-slot img { width: 100%; height: 100%; object-fit: cover; border-radius: var(--radius); }
.img-slot-label { font-family: var(--font-mono); font-weight: 500; font-size: 11px; color: var(--c-text-secondary); margin-bottom: 2px; letter-spacing: 0.02em; }
.img-slot-desc { font-size: 11px; color: var(--c-text-muted); line-height: 1.4; max-width: 240px; }
@media (max-width: 720px) { .hero { padding: 40px 0 48px; } .hero-grid { grid-template-columns: 1fr; gap: 28px; } .hero-title { font-size: 28px; } .hero-stats { gap: 20px; } .hero-img { min-height: 260px; } }

/* ===================== СЕКЦИЯ: ПРОБЛЕМА ===================== */
.tag--danger { color: var(--c-red); }
.problem-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start; margin-bottom: 48px; }
.problem-img { aspect-ratio: 4 / 3; min-height: 260px; }
.problem-note { font-weight: 500; color: var(--c-text); font-size: 16px; }
.errors-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 24px; }
.error-card { padding: 16px 18px; border-radius: var(--radius); background: var(--c-surface); border: 1px solid var(--c-border-light); transition: border-color .2s; }
.error-card:hover { border-color: var(--c-border); }
.error-num { font-family: var(--font-mono); font-size: 11px; font-weight: 600; color: var(--c-red); text-transform: uppercase; letter-spacing: .06em; margin-bottom: 4px; }
.error-title { font-size: 14px; font-weight: 500; margin-bottom: 4px; }
.error-desc { font-size: 13px; color: var(--c-text-secondary); line-height: 1.5; }
@media (max-width: 720px) { .problem-grid { grid-template-columns: 1fr; gap: 28px; margin-bottom: 32px; } .errors-grid { grid-template-columns: 1fr; } .problem-img { min-height: 220px; } }

/* ===================== СЕКЦИЯ: МЕТОД ===================== */
.steps-list { margin-top: 24px; }
.step-item { display: flex; gap: 20px; align-items: flex-start; padding: 20px 0; border-bottom: 1px solid var(--c-border-light); }
.step-item:last-child { border-bottom: none; }
.step-letter { width: 48px; height: 48px; border-radius: var(--radius); display: flex; align-items: center; justify-content: center; font-family: var(--font-mono); font-weight: 600; font-size: 20px; flex-shrink: 0; }
.step-letter--1 { background: var(--c-accent-light); color: var(--c-accent); }
.step-letter--2 { background: var(--c-blue-light); color: var(--c-blue); }
.step-letter--3 { background: var(--c-teal-light); color: var(--c-teal); }
.step-letter--4 { background: var(--c-amber-light); color: var(--c-amber); }
.step-letter--5 { background: var(--c-coral-light); color: var(--c-coral); }
.step-content { flex: 1; }
.step-name { font-size: 16px; font-weight: 600; margin-bottom: 4px; }
.step-desc { font-size: 14px; color: var(--c-text-secondary); line-height: 1.55; }

/* ===================== СЕКЦИИ: ОСТАЛЬНЫЕ ===================== */
.tag--muted { color: var(--c-text-muted); }
.tag--teal { color: var(--c-teal); }

/* КЕЙС */
.case-situation { padding: 20px 24px; border-radius: var(--radius); background: var(--c-surface-alt); margin-bottom: 20px; font-size: 15px; line-height: 1.65; }
.case-label { font-family: var(--font-mono); font-size: 10px; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; margin-bottom: 8px; }
.case-situation .case-label { color: var(--c-text-muted); }
.case-bad { padding: 20px 24px; border-radius: var(--radius); background: var(--c-red-light); margin-bottom: 16px; }
.case-bad .case-label { color: var(--c-red); }
.case-bad blockquote { font-family: var(--font-main); font-style: italic; font-size: 15px; color: #4A2020; line-height: 1.6; margin: 0; }
.case-bad-why { font-size: 13px; color: var(--c-red); margin-top: 10px; }
.case-good { padding: 20px 24px; border-radius: var(--radius); background: var(--c-green-light); }
.case-good .case-label { color: var(--c-green); }
.parus-line { display: flex; gap: 10px; margin-bottom: 8px; font-size: 14px; line-height: 1.55; }
.parus-line:last-child { margin-bottom: 0; }
.parus-letter { font-family: var(--font-mono); font-weight: 600; color: var(--c-green); flex-shrink: 0; width: 16px; }

/* ОБ АВТОРЕ */
.author-grid { display: grid; grid-template-columns: 320px 1fr; gap: 48px; align-items: start; margin-top: 24px; }
.author-photo { aspect-ratio: 3 / 4; min-height: 380px; }
.author-name { font-size: 26px; font-weight: 600; margin-bottom: 6px; letter-spacing: -0.01em; }
.author-role { font-size: 14px; color: var(--c-text-muted); margin-bottom: 20px; }
.author-bio { font-size: 16px; color: var(--c-text-secondary); line-height: 1.7; margin-bottom: 20px; }
.author-quote { padding: 18px 22px; border-left: 3px solid var(--c-coral); background: var(--c-surface-alt); border-radius: 0 var(--radius-sm) var(--radius-sm) 0; font-style: italic; font-weight: 300; font-size: 16px; line-height: 1.6; color: var(--c-text); margin-bottom: 24px; }
.author-facts { display: grid; gap: 12px; padding-top: 20px; border-top: 1px solid var(--c-border-light); }
.author-fact { display: flex; gap: 14px; align-items: baseline; font-size: 14px; }
.author-fact-label { font-family: var(--font-mono); color: var(--c-text-muted); min-width: 150px; flex-shrink: 0; font-size: 11px; letter-spacing: 0.02em; }
.author-fact-value { color: var(--c-text); }

/* ВИДЕОКУРС */
.lesson-tabs { display: flex; gap: 4px; margin-bottom: 24px; background: var(--c-surface-alt); border-radius: var(--radius-sm); padding: 4px; }
.lesson-tab { flex: 1; padding: 10px 0; text-align: center; font-size: 13px; font-weight: 500; color: var(--c-text-secondary); cursor: pointer; border-radius: 6px; transition: all 0.2s; border: none; background: none; font-family: var(--font-main); }
.lesson-tab:hover { color: var(--c-text); }
.lesson-tab.active { background: var(--c-surface); color: var(--c-accent); box-shadow: 0 1px 3px rgba(0,0,0,0.06); }
.lesson-panel { display: none; }
.lesson-panel.active { display: block; }
.video-frame { width: 100%; aspect-ratio: 16 / 9; background: var(--c-surface-alt); border-radius: var(--radius); border: 1px solid var(--c-border-light); display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; margin-bottom: 16px; }
.video-frame::before { content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(42,63,95,0.04), rgba(42,63,95,0.01)); }
.video-frame iframe { width: 100%; height: 100%; border: 0; position: relative; z-index: 1; }
.play-btn { width: 56px; height: 56px; border-radius: 50%; background: var(--c-accent); display: flex; align-items: center; justify-content: center; position: relative; z-index: 1; transition: transform 0.2s; cursor: pointer; }
.play-btn:hover { transform: scale(1.08); }
.play-btn svg { width: 20px; height: 20px; margin-left: 2px; }
.video-badge { position: absolute; top: 12px; left: 12px; background: rgba(0,0,0,0.6); color: #fff; font-family: var(--font-mono); font-size: 10px; font-weight: 500; padding: 3px 10px; border-radius: 4px; letter-spacing: 0.03em; z-index: 1; }
.video-dur { position: absolute; bottom: 12px; right: 12px; background: rgba(0,0,0,0.6); color: #fff; font-family: var(--font-mono); font-size: 11px; font-weight: 500; padding: 3px 8px; border-radius: 4px; z-index: 1; }
.lesson-title { font-size: 18px; font-weight: 600; margin-bottom: 8px; }
.lesson-desc { font-size: 15px; color: var(--c-text-secondary); line-height: 1.6; }
.nurse-teaser { margin-top: 16px; padding: 14px 18px; background: var(--c-accent-light); border-radius: var(--radius-sm); border-left: 3px solid var(--c-accent-mid); }
.nurse-teaser-title { font-family: var(--font-mono); font-size: 11px; font-weight: 500; color: var(--c-accent); margin-bottom: 4px; letter-spacing: 0.04em; text-transform: uppercase; }
.nurse-teaser-text { font-size: 13px; color: var(--c-accent-mid); line-height: 1.5; }
.clips-teaser { margin-top: 32px; padding: 28px 32px; background: var(--c-accent-light); border-radius: var(--radius-lg); display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: center; }
.clips-teaser-content { display: flex; gap: 20px; align-items: center; }
.clips-teaser-stack { display: flex; flex-shrink: 0; margin-right: 10px; }
.clips-teaser-stack .clip-mini { width: 48px; height: 64px; background: var(--c-surface); border: 2px solid var(--c-accent-light); border-radius: 6px; margin-left: -14px; display: flex; align-items: center; justify-content: center; }
.clips-teaser-stack .clip-mini:first-child { margin-left: 0; }
.clips-teaser-stack .clip-mini svg { width: 14px; height: 14px; color: var(--c-accent-mid); opacity: 0.6; }
.clips-teaser-text { flex: 1; }
.clips-teaser-title { font-size: 18px; font-weight: 600; color: var(--c-accent); margin-bottom: 4px; }
.clips-teaser-desc { font-size: 14px; color: var(--c-accent-mid); line-height: 1.5; }

/* ЛК-ПРЕВЬЮ */
.cabinet-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 24px; }
.cabinet-card { padding: 24px; background: var(--c-surface); border-radius: var(--radius-lg); border: 1px solid var(--c-border-light); position: relative; }
.cabinet-card-icon { width: 44px; height: 44px; border-radius: var(--radius-sm); display: flex; align-items: center; justify-content: center; margin-bottom: 14px; }
.cabinet-card-icon svg { width: 22px; height: 22px; }
.cabinet-card-icon--1 { background: var(--c-accent-light); color: var(--c-accent); }
.cabinet-card-icon--2 { background: var(--c-teal-light); color: var(--c-teal); }
.cabinet-card-title { font-size: 18px; font-weight: 600; margin-bottom: 6px; }
.cabinet-card-desc { font-size: 14px; color: var(--c-text-secondary); line-height: 1.55; margin-bottom: 12px; }
.cabinet-card-features { font-size: 12px; color: var(--c-text-muted); line-height: 1.6; }
.cabinet-card-features div { padding-left: 14px; position: relative; }
.cabinet-card-features div::before { content: ''; position: absolute; left: 0; top: 7px; width: 5px; height: 5px; border-radius: 50%; background: var(--c-accent-mid); }
.cabinet-visual { margin-top: 32px; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.cabinet-visual-slot { aspect-ratio: 16 / 10; min-height: 220px; }

/* N.U.R.S.E. */
.nurse-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 24px; }
.nurse-card { padding: 24px; border-radius: var(--radius); border: 1px solid var(--c-border-light); background: var(--c-surface); }
.nurse-card-tag { font-family: var(--font-mono); font-size: 10px; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; margin-bottom: 8px; }
.nurse-card-title { font-size: 17px; font-weight: 600; margin-bottom: 8px; }
.nurse-card-desc { font-size: 14px; color: var(--c-text-secondary); line-height: 1.55; }
.nurse-card--parus .nurse-card-tag { color: var(--c-amber); }
.nurse-card--nurse .nurse-card-tag { color: var(--c-accent-mid); }
.nurse-card--nurse { border-color: var(--c-accent-mid); border-width: 2px; }

/* ПОДВАЛ / ПРОДУКТЫ */
.footer-products { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 24px; }
.footer-prod { padding: 18px 20px; border-radius: var(--radius); background: var(--c-surface); border: 1px solid var(--c-border-light); transition: border-color 0.2s; }
.footer-prod:hover { border-color: var(--c-border); }
.footer-prod-title { font-size: 14px; font-weight: 600; margin-bottom: 4px; }
.footer-prod-desc { font-size: 12px; color: var(--c-text-secondary); line-height: 1.45; }
.footer-bottom { margin-top: 40px; padding-top: 20px; border-top: 1px solid var(--c-border-light); display: flex; justify-content: space-between; align-items: center; font-family: var(--font-mono); font-size: 11px; color: var(--c-text-muted); letter-spacing: 0.02em; }

/* Адаптив остальных секций */
@media (max-width: 720px) {
  .author-grid { grid-template-columns: 1fr; gap: 28px; }
  .author-photo { aspect-ratio: 16 / 10; min-height: 260px; }
  .author-fact-label { min-width: auto; }
  .author-fact { flex-direction: column; gap: 2px; align-items: flex-start; }
  .cabinet-grid { grid-template-columns: 1fr; }
  .cabinet-visual { grid-template-columns: 1fr; }
  .nurse-grid { grid-template-columns: 1fr; }
  .footer-products { grid-template-columns: 1fr 1fr; }
  .footer-bottom { flex-direction: column; gap: 6px; align-items: flex-start; }
  .clips-teaser { grid-template-columns: 1fr; padding: 20px; }
  .clips-teaser-content { flex-direction: column; align-items: flex-start; }
}

/* ===================== ИЗОБРАЖЕНИЯ В СЛОТАХ ===================== */
.section img { display: block; max-width: 100%; height: auto; }
.hero-img img, .problem-img img, .author-photo img, .cabinet-visual-slot img { width: 100%; border-radius: var(--radius); }

/* === PARUS FORM SECTION (layout) === */
.form-section-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
.form-visual { aspect-ratio: 4/5; min-height: 420px; }
.form-card { background: var(--c-surface); border-radius: var(--radius-lg); border: 1px solid var(--c-border-light); padding: 32px; }
.form-card-title { font-size: 20px; font-weight: 600; margin-bottom: 8px; }
.form-card-subtitle { font-size: 14px; color: var(--c-text-secondary); margin-bottom: 24px; }
.form-note { font-family: var(--font-mono); font-size: 11px; color: var(--c-text-muted); margin-top: 12px; text-align: center; line-height: 1.5; }
.form-benefits { margin-bottom: 20px; padding: 14px 16px; background: var(--c-surface-alt); border-radius: var(--radius-sm); }
.form-benefit { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--c-text-secondary); padding: 4px 0; }
.form-benefit svg { width: 16px; height: 16px; color: var(--c-teal); flex-shrink: 0; }
@media (max-width: 720px) {
  .form-section-grid { grid-template-columns: 1fr; gap: 28px; }
  .form-visual { aspect-ratio: 16/10; min-height: 240px; order: -1; }
  .form-card { padding: 20px; }
}

/* === PARUS FORM WEBFORM (поля под стиль макета) === */
.parus-form-wrap .form-item { margin-bottom: 14px; }
.parus-form-wrap label { display: block; font-size: 13px; font-weight: 500; color: var(--c-text-secondary); margin-bottom: 6px; }
.parus-form-wrap .form-required::after { color: var(--c-red); }
.parus-form-wrap input[type="text"],
.parus-form-wrap input[type="tel"],
.parus-form-wrap input[type="email"] {
  width: 100%; padding: 12px 14px; border: 1px solid var(--c-border); border-radius: var(--radius-sm);
  font-size: 15px; font-family: var(--font-main); color: var(--c-text); background: var(--c-bg);
  transition: border-color 0.2s;
}
.parus-form-wrap input[type="text"]:focus,
.parus-form-wrap input[type="tel"]:focus,
.parus-form-wrap input[type="email"]:focus { outline: none; border-color: var(--c-accent-mid); }
.parus-form-wrap input::placeholder { color: var(--c-text-muted); }
.parus-form-wrap .form-actions { margin: 6px 0 0; }
.parus-form-wrap .button,
.parus-form-wrap input[type="submit"] {
  display: inline-flex; align-items: center; justify-content: center; width: 100%;
  padding: 14px 24px; font-size: 15px; font-weight: 600; font-family: var(--font-main);
  border: none; border-radius: var(--radius-sm); background: var(--c-accent); color: #fff;
  cursor: pointer; transition: transform 0.15s, background 0.2s;
}
.parus-form-wrap .button:hover,
.parus-form-wrap input[type="submit"]:hover { background: #1E3350; }
.parus-form-wrap .button:active,
.parus-form-wrap input[type="submit"]:active { transform: scale(0.97); }
.parus-form-wrap .webform-confirmation,
.parus-form-wrap .messages--status {
  padding: 14px 16px; border-radius: var(--radius-sm); background: var(--c-teal-light);
  color: var(--c-text); font-size: 14px;
}

/* === PARUS CABINET RAZBOR === */
.lk-razbor { max-width: 760px; margin: 0 auto; padding: 32px 24px; }
.lk-back { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--c-text-secondary); text-decoration: none; margin-bottom: 20px; }
.lk-back:hover { color: var(--c-accent); }
.lk-badge { display: inline-block; font-family: var(--font-mono); font-size: 10px; font-weight: 500; letter-spacing: 0.04em; text-transform: uppercase; padding: 3px 8px; border-radius: 4px; background: var(--c-accent-light); color: var(--c-accent); }
.lk-section-label { font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.04em; color: var(--c-text-muted); margin-bottom: 16px; }
.lk-quote-block { background: var(--c-red-light); border-left: 3px solid var(--c-red); border-radius: 0 var(--radius-sm) var(--radius-sm) 0; padding: 16px 20px; font-size: 15px; line-height: 1.6; margin-bottom: 28px; }
.lk-quote-meta { font-family: var(--font-mono); font-size: 11px; color: var(--c-text-muted); margin-top: 10px; }
.lk-answer { background: var(--c-teal-light); border: 1px solid var(--c-border-light); border-radius: var(--radius); padding: 20px 24px; font-size: 15px; line-height: 1.65; margin: 12px 0 28px; }
.lk-video-wrap { max-width: 520px; }
.lk-video-wrap iframe, .lk-video-wrap video { width: 100%; aspect-ratio: 16/9; border: 0; border-radius: var(--radius-sm); display: block; }
@media (max-width: 720px) { .lk-razbor { padding: 24px 16px; } .lk-video-wrap { max-width: 100%; } }

/* === PARUS CABINET SHELL === */
.lk-app { display: none; min-height: 100vh; grid-template-columns: 248px 1fr; }
.lk-app.active { display: grid; }
.lk-sidebar { background: var(--c-accent); color: #fff; display: flex; flex-direction: column; padding: 24px 16px; position: sticky; top: 0; height: 100vh; }
.lk-sidebar-logo { display: flex; align-items: center; gap: 8px; color: #fff; font-weight: 600; font-size: 16px; padding: 0 8px 28px; }
.lk-nav { display: flex; flex-direction: column; gap: 4px; flex: 1; }
.lk-nav-item { display: flex; align-items: center; gap: 12px; padding: 11px 12px; border-radius: var(--radius-sm); color: rgba(255,255,255,0.72); font-size: 14px; font-weight: 500; text-decoration: none; transition: background 0.15s, color 0.15s; }
.lk-nav-item svg { width: 18px; height: 18px; flex-shrink: 0; }
.lk-nav-item:hover { background: rgba(255,255,255,0.08); color: #fff; }
.lk-nav-item.active { background: rgba(255,255,255,0.15); color: #fff; }
.lk-user { display: flex; align-items: center; gap: 10px; padding: 14px 8px 0; border-top: 1px solid rgba(255,255,255,0.15); margin-top: 12px; }
.lk-user-av { width: 34px; height: 34px; border-radius: 50%; background: var(--c-teal); display: flex; align-items: center; justify-content: center; font-weight: 600; font-size: 14px; flex-shrink: 0; color: #fff; }
.lk-user-name { font-size: 13px; font-weight: 500; line-height: 1.3; }
.lk-user-sub { font-size: 11px; color: rgba(255,255,255,0.6); text-decoration: none; }
.lk-user-sub:hover { color: #fff; }
.lk-main { min-width: 0; }
.lk-topbar { background: var(--c-surface); border-bottom: 1px solid var(--c-border-light); padding: 16px 32px; display: flex; align-items: center; justify-content: space-between; gap: 16px; position: sticky; top: 0; z-index: 5; }
.lk-topbar-title { font-size: 18px; font-weight: 600; }
.lk-content { padding: 32px; max-width: 1120px; }
.lk-greeting { font-size: 24px; font-weight: 600; margin-bottom: 6px; }
.lk-greeting-sub { color: var(--c-text-secondary); margin-bottom: 24px; }
.lk-tools { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.lk-tool { background: var(--c-surface); border: 1px solid var(--c-border-light); border-radius: var(--radius-lg); padding: 24px; text-decoration: none; color: inherit; transition: transform 0.15s, box-shadow 0.2s; display: flex; flex-direction: column; }
.lk-tool:hover { transform: translateY(-2px); box-shadow: 0 10px 28px rgba(24,24,24,0.07); }
.lk-tool-icon { width: 48px; height: 48px; border-radius: var(--radius); display: flex; align-items: center; justify-content: center; margin-bottom: 16px; }
.lk-tool-icon svg { width: 24px; height: 24px; }
.lk-tool-title { font-size: 17px; font-weight: 600; margin-bottom: 6px; }
.lk-tool-desc { font-size: 13px; color: var(--c-text-secondary); line-height: 1.55; flex: 1; margin-bottom: 16px; }
.lk-tool-cta { font-size: 13px; font-weight: 500; color: var(--c-accent); }
.lk-note { display: flex; gap: 10px; align-items: flex-start; background: var(--c-accent-light); border-radius: var(--radius); padding: 14px 18px; font-size: 13px; color: var(--c-text-secondary); margin-bottom: 24px; line-height: 1.55; max-width: 760px; }
.lk-note svg { color: var(--c-accent); flex-shrink: 0; margin-top: 1px; }
@media (max-width: 860px) {
  .lk-app, .lk-app.active { grid-template-columns: 1fr !important; }
  .lk-sidebar { position: static; height: auto; flex-direction: row; align-items: center; flex-wrap: wrap; padding: 12px 16px; gap: 8px 12px; }
  .lk-sidebar-logo { padding: 0; }
  .lk-nav { flex-direction: row; flex-wrap: wrap; flex: 1 1 100%; order: 2; gap: 6px; }
  .lk-nav-item { padding: 8px 12px; font-size: 13px; }
  .lk-user { border-top: none; margin: 0 0 0 auto; padding: 0; }
  .lk-tools { grid-template-columns: 1fr; }
  .lk-content { padding: 20px; }
  .lk-topbar { padding: 14px 20px; flex-wrap: wrap; }
}

/* === PARUS CABINET hide page title (раздел уже в топбаре) === */
.lk-content .block-page-title-block,
.lk-content .page-title,
.lk-content > h1:first-child { display: none; }

/* ===================== PARUS CABINET SHELL V2 ===================== */
/* Всё скоупится под .parus-cab → переменные и стили не текут на лендинг. */
.parus-cab{
  --c-bg:#F2EADF;--c-surface:#FFFFFF;--c-surface-alt:#EDE5D9;
  --c-text:#181818;--c-text-secondary:#4A4540;--c-text-muted:#8A837A;
  --c-border:#D9CFBF;--c-border-light:#E6DDD0;
  --c-accent:#1a3a5c;--c-accent-hover:#15304B;--c-accent-light:#E8ECF2;
  --c-coral:#D4A574;--c-coral-light:#F7EDDF;
  --c-step-p:#1a5276;--c-step-a:#1a7a5c;--c-step-r:#b7710e;--c-step-u:#8e44ad;--c-step-s:#c0392b;
  --c-step-p-light:#E5F0F5;--c-step-a-light:#E5F2EC;--c-step-r-light:#F7EDDD;--c-step-u-light:#F0E8F5;--c-step-s-light:#F8E5E0;
  --c-red:#c0392b;--c-green:#1a7a5c;--c-green-light:#E5F2EC;
  --radius:12px;--radius-sm:8px;--radius-lg:16px;
  background:var(--c-bg);min-height:100vh;color:var(--c-text);
}
.parus-cab .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:12px 24px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;font-family:var(--font-main);cursor:pointer;border:none;text-decoration:none;transition:transform .15s,background .2s;}
.parus-cab .btn:active{transform:scale(.97);}
.parus-cab .btn-primary{background:var(--c-accent);color:#fff;}
.parus-cab .btn-primary:hover{background:var(--c-accent-hover);}
.parus-cab .btn-outline{background:transparent;border:1px solid var(--c-border);color:var(--c-text);}
.parus-cab .btn-outline:hover{background:var(--c-surface-alt);}
.parus-cab .btn-full{width:100%;}

.parus-cab .cab-nav{position:sticky;top:0;z-index:100;background:rgba(242,234,223,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--c-border-light);}
.parus-cab .cab-nav-inner{max-width:1180px;margin:0 auto;padding:0 24px;height:56px;display:flex;align-items:center;justify-content:space-between;}
.parus-cab .cab-nav-logo{display:flex;align-items:center;gap:10px;font-weight:400;font-size:15px;color:var(--c-accent);text-decoration:none;}
.parus-cab .cab-nav-user{display:flex;align-items:center;gap:14px;}
.parus-cab .cab-nav-name{font-size:13px;color:var(--c-text-secondary);}
.parus-cab .cab-nav-avatar{width:32px;height:32px;border-radius:50%;background:var(--c-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:500;font-size:13px;}
.parus-cab .cab-nav-logout{font-family:var(--font-mono);font-size:11px;color:var(--c-text-muted);text-decoration:none;letter-spacing:.04em;}
.parus-cab .cab-nav-logout:hover{color:var(--c-red);}

.parus-cab .cab-body{max-width:1180px;margin:0 auto;padding:24px;display:grid;grid-template-columns:240px 1fr;gap:32px;min-height:calc(100vh - 56px);}
.parus-cab .cab-sidebar{position:sticky;top:80px;align-self:start;}
.parus-cab .cab-menu{list-style:none;display:flex;flex-direction:column;gap:2px;}
.parus-cab .cab-menu-item{padding:10px 14px;border-radius:var(--radius-sm);font-size:14px;color:var(--c-text-secondary);cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:10px;text-decoration:none;}
.parus-cab .cab-menu-item:hover{background:var(--c-surface);color:var(--c-text);}
.parus-cab .cab-menu-item.active{background:var(--c-surface);color:var(--c-accent);font-weight:500;box-shadow:0 1px 3px rgba(0,0,0,.04);}
.parus-cab .cab-menu-item svg{width:18px;height:18px;flex-shrink:0;opacity:.5;}
.parus-cab .cab-menu-item.active svg{opacity:1;}
.parus-cab .cab-menu-badge{font-family:var(--font-mono);font-size:10px;background:var(--c-coral);color:#fff;padding:1px 6px;border-radius:10px;margin-left:auto;letter-spacing:.04em;}
.parus-cab .cab-menu-divider{height:1px;background:var(--c-border-light);margin:12px 14px;}

.parus-cab .cab-panel{display:block;}
.parus-cab .cab-panel-header{margin-bottom:28px;}
.parus-cab .cab-tag{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--c-accent);margin-bottom:8px;}
.parus-cab .cab-panel-title{font-size:26px;font-weight:600;margin-bottom:8px;letter-spacing:-.01em;}
.parus-cab .cab-panel-desc{font-size:15px;color:var(--c-text-secondary);max-width:620px;line-height:1.55;}

.parus-cab .welcome-greeting{font-size:28px;font-weight:600;margin-bottom:6px;letter-spacing:-.01em;}
.parus-cab .welcome-sub{font-size:15px;color:var(--c-text-secondary);margin-bottom:32px;}

.parus-cab .progress-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin-bottom:32px;}
.parus-cab .progress-card{background:var(--c-surface);border:1px solid var(--c-border-light);border-radius:var(--radius);padding:18px 20px;}
.parus-cab .progress-label{font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-muted);margin-bottom:8px;}
.parus-cab .progress-value{display:flex;align-items:baseline;gap:6px;margin-bottom:4px;}
.parus-cab .progress-num{font-family:var(--font-mono);font-size:26px;font-weight:500;color:var(--c-accent);line-height:1;}
.parus-cab .progress-total{font-family:var(--font-mono);font-size:14px;color:var(--c-text-muted);}
.parus-cab .progress-bar{height:4px;background:var(--c-surface-alt);border-radius:2px;overflow:hidden;margin-top:10px;}
.parus-cab .progress-bar-fill{height:100%;background:var(--c-accent);border-radius:2px;}

.parus-cab .next-step{background:var(--c-accent);color:#fff;border-radius:var(--radius-lg);padding:28px 32px;margin-bottom:16px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;}
.parus-cab .next-step-tag{font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:8px;}
.parus-cab .next-step-title{font-size:20px;font-weight:600;margin-bottom:8px;line-height:1.3;}
.parus-cab .next-step-desc{font-size:14px;color:rgba(255,255,255,.85);line-height:1.55;max-width:540px;}
.parus-cab .next-step-action .btn{background:#fff;color:var(--c-accent);}
.parus-cab .next-step-action .btn:hover{background:#F5F5F5;}

.parus-cab .offer-block{background:var(--c-surface);border:1px solid var(--c-border-light);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:24px;}
.parus-cab .offer-header{padding:18px 24px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;user-select:none;transition:background .15s;list-style:none;}
.parus-cab .offer-header::-webkit-details-marker{display:none;}
.parus-cab .offer-header::marker{content:'';}
.parus-cab .offer-header:hover{background:var(--c-surface-alt);}
.parus-cab .offer-header-left{display:flex;align-items:center;gap:14px;}
.parus-cab .offer-icon{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--c-coral-light);color:var(--c-coral);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.parus-cab .offer-icon svg{width:18px;height:18px;}
.parus-cab .offer-header-text{display:flex;flex-direction:column;gap:2px;}
.parus-cab .offer-header-tag{font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--c-coral);}
.parus-cab .offer-header-title{font-size:15px;font-weight:500;color:var(--c-text);}
.parus-cab .offer-toggle{width:28px;height:28px;border-radius:50%;background:var(--c-surface-alt);display:flex;align-items:center;justify-content:center;}
.parus-cab .offer-toggle svg{width:14px;height:14px;color:var(--c-text-secondary);transition:transform .2s;}
.parus-cab details.offer-block[open] .offer-toggle svg{transform:rotate(180deg);}
.parus-cab .offer-body{display:none;padding:0 24px 24px;border-top:1px solid var(--c-border-light);}
.parus-cab details.offer-block[open] .offer-body{display:block;}
.parus-cab .offer-content{padding-top:20px;}
.parus-cab .offer-content p{font-size:14px;color:var(--c-text-secondary);line-height:1.6;margin-bottom:12px;}
.parus-cab .offer-price-row{display:flex;align-items:baseline;gap:12px;margin:16px 0;padding:16px 20px;background:var(--c-coral-light);border-radius:var(--radius-sm);}
.parus-cab .offer-price-old{font-family:var(--font-mono);font-size:14px;color:var(--c-text-muted);text-decoration:line-through;}
.parus-cab .offer-price-new{font-family:var(--font-mono);font-size:22px;font-weight:600;color:var(--c-coral);}
.parus-cab .offer-price-note{font-family:var(--font-mono);font-size:11px;color:var(--c-coral);margin-left:auto;letter-spacing:.04em;}
.parus-cab .offer-features{list-style:none;margin:12px 0;}
.parus-cab .offer-features li{font-size:14px;color:var(--c-text-secondary);padding:6px 0 6px 24px;position:relative;}
.parus-cab .offer-features li::before{content:'';position:absolute;left:4px;top:14px;width:6px;height:6px;border-radius:50%;background:var(--c-coral);}
.parus-cab .offer-cta{display:flex;gap:10px;margin-top:16px;}

.parus-cab .quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.parus-cab .quick-card{background:var(--c-surface);border:1px solid var(--c-border-light);border-radius:var(--radius);padding:22px 24px;cursor:pointer;transition:border-color .2s,box-shadow .2s;text-decoration:none;color:inherit;display:block;}
.parus-cab .quick-card:hover{border-color:var(--c-border);box-shadow:0 2px 8px rgba(0,0,0,.04);}
.parus-cab .quick-card-icon{width:40px;height:40px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.parus-cab .quick-card-icon svg{width:20px;height:20px;}
.parus-cab .quick-card-title{font-size:16px;font-weight:600;margin-bottom:4px;}
.parus-cab .quick-card-desc{font-size:13px;color:var(--c-text-secondary);line-height:1.5;}

.parus-cab .cab-soon{margin-top:8px;padding:28px 24px;background:var(--c-surface);border:1px dashed var(--c-border);border-radius:var(--radius);color:var(--c-text-muted);font-size:14px;}

/* прячем дублирующий заголовок страницы / вкладки внутри кабинета */
.parus-cab .block-page-title-block,.parus-cab h1.page-title,.parus-cab .page-title{display:none;}
.parus-cab nav.tabs,.parus-cab .block-local-tasks-block{display:none;}

@media (max-width:820px){
  .parus-cab .cab-body{grid-template-columns:1fr;gap:16px;}
  .parus-cab .cab-sidebar{position:static;}
  .parus-cab .cab-menu{flex-direction:row;overflow-x:auto;gap:4px;padding-bottom:4px;}
  .parus-cab .cab-menu-item{white-space:nowrap;padding:8px 14px;font-size:13px;}
  .parus-cab .cab-menu-divider{display:none;}
  .parus-cab .progress-row{grid-template-columns:1fr;}
  .parus-cab .next-step{grid-template-columns:1fr;}
  .parus-cab .quick-grid{grid-template-columns:1fr;}
}
/* =================== /PARUS CABINET SHELL V2 ==================== */

/* ===================== PARUS CABINET REQUESTS ===================== */
.parus-cab .request-card{background:var(--c-surface);border:1px solid var(--c-border-light);border-radius:var(--radius-lg);padding:32px;max-width:540px;}
/* стилизуем реальную разметку webform под макет .request-field */
.parus-cab .request-card .js-form-item,
.parus-cab .request-card .form-item{margin-bottom:16px;}
.parus-cab .request-card label{display:block;font-size:13px;font-weight:500;color:var(--c-text-secondary);margin-bottom:6px;}
.parus-cab .request-card .form-required{color:var(--c-red);}
.parus-cab .request-card .form-required::after{color:var(--c-red);}
.parus-cab .request-card input[type=text],
.parus-cab .request-card input[type=email],
.parus-cab .request-card input[type=tel],
.parus-cab .request-card input.form-text,
.parus-cab .request-card input.form-email,
.parus-cab .request-card input.form-tel,
.parus-cab .request-card select{width:100%;padding:11px 14px;border:1px solid var(--c-border);border-radius:var(--radius-sm);font-size:14px;font-family:var(--font-main);color:var(--c-text);background:var(--c-bg);}
.parus-cab .request-card input:focus,
.parus-cab .request-card select:focus{outline:none;border-color:var(--c-accent);}
.parus-cab .request-card input::placeholder{color:var(--c-text-muted);}
.parus-cab .request-card .form-actions{margin-top:8px;margin-bottom:0;}
.parus-cab .request-card .webform-button--submit,
.parus-cab .request-card .form-actions input[type=submit],
.parus-cab .request-card .form-actions button{width:100%;padding:14px;font-size:15px;font-weight:500;font-family:var(--font-main);background:var(--c-accent);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;}
.parus-cab .request-card .webform-button--submit:hover,
.parus-cab .request-card .form-actions input[type=submit]:hover,
.parus-cab .request-card .form-actions button:hover{background:var(--c-accent-hover);}
.parus-cab .request-note{font-family:var(--font-mono);font-size:11px;color:var(--c-text-muted);margin-top:14px;text-align:center;line-height:1.5;letter-spacing:.02em;}

.parus-cab .request-status{margin-top:36px;max-width:540px;}
.parus-cab .request-status-title{font-size:17px;font-weight:600;margin-bottom:14px;}
.parus-cab .request-status-item{padding:16px 20px;background:var(--c-surface);border:1px solid var(--c-border-light);border-radius:var(--radius-sm);margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;}
.parus-cab .request-status-name{font-size:14px;font-weight:500;}
.parus-cab .request-status-date{font-family:var(--font-mono);font-size:11px;color:var(--c-text-muted);margin-top:2px;letter-spacing:.02em;}
.parus-cab .status-badge{font-family:var(--font-mono);font-size:10px;font-weight:500;padding:4px 10px;border-radius:10px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;}
.parus-cab .status-new{background:var(--c-coral-light);color:var(--c-coral);}
.parus-cab .status-progress{background:var(--c-accent-light);color:var(--c-accent);}
.parus-cab .status-done{background:var(--c-green-light);color:var(--c-green);}
/* =================== /PARUS CABINET REQUESTS ==================== */

/* ===================== PARUS CABINET REQUESTS FIX ===================== */
/* подпись обязательного поля — тёмная, красная только звёздочка */
.parus-cab .request-card label.form-required{color:var(--c-text-secondary);}
.parus-cab .request-card label.form-required::after{content:" *";color:var(--c-red);}
/* =================== /PARUS CABINET REQUESTS FIX ==================== */

/* ===================== PARUS CABINET MESSAGES ===================== */
.parus-cab [data-drupal-messages]{margin-bottom:8px;}
.parus-cab .messages{
  padding:14px 18px;
  border-radius:var(--radius-sm);
  border-left:3px solid currentColor;
  font-size:14px;
  line-height:1.5;
  margin:0 0 20px;
}
.parus-cab .messages--status{background:var(--c-green-light);color:var(--c-green);}
.parus-cab .messages--warning{background:var(--c-coral-light);color:var(--c-coral);}
.parus-cab .messages--error{background:#F5E8E8;color:#8B3A3A;}
.parus-cab .messages ul{margin:0;padding-left:18px;}
.parus-cab .messages a{color:inherit;text-decoration:underline;}
.parus-cab .messages__close,.parus-cab .messages button.close{display:none;}
/* =================== /PARUS CABINET MESSAGES ==================== */

/* ===================== PARUS CABINET CONFIRM ===================== */
.parus-cab .webform-confirmation{
  background:var(--c-green-light);
  border-left:3px solid var(--c-green);
  border-radius:var(--radius);
  padding:24px 28px;
  max-width:540px;
}
.parus-cab .webform-confirmation__message{
  color:var(--c-green);
  font-size:15px;
  line-height:1.55;
  font-weight:500;
}
.parus-cab .webform-confirmation__back{margin-top:16px;}
.parus-cab .webform-confirmation__back-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:14px;
  font-weight:500;
  color:var(--c-accent);
  text-decoration:none;
}
.parus-cab .webform-confirmation__back-link:hover{text-decoration:underline;}
/* =================== /PARUS CABINET CONFIRM ==================== */

/* ===================== PARUS CABINET LIBRARY ===================== */
.parus-cab .library-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.parus-cab .library-card{display:block;text-decoration:none;color:inherit;background:var(--c-surface);border:1px solid var(--c-border-light);border-radius:var(--radius);overflow:hidden;transition:border-color .2s,box-shadow .2s;}
.parus-cab .library-card:hover{border-color:var(--c-border);box-shadow:0 2px 8px rgba(0,0,0,.04);}
.parus-cab .library-card-num{font-family:var(--font-mono);font-size:10px;font-weight:500;color:var(--c-text-muted);padding:14px 18px 0;letter-spacing:.08em;}
.parus-cab .library-card-title{font-size:15px;font-weight:600;padding:4px 18px 8px;}
.parus-cab .library-card-review{font-size:13px;color:var(--c-text-secondary);padding:0 18px 12px;line-height:1.5;font-style:italic;}
.parus-cab .library-card-steps{padding:12px 18px;display:flex;gap:6px;border-top:1px solid var(--c-border-light);}
.parus-cab .library-step{font-family:var(--font-mono);font-size:11px;font-weight:500;width:26px;height:26px;border-radius:6px;display:flex;align-items:center;justify-content:center;}
.parus-cab .step-p{background:var(--c-step-p-light);color:var(--c-step-p);}
.parus-cab .step-a{background:var(--c-step-a-light);color:var(--c-step-a);}
.parus-cab .step-r{background:var(--c-step-r-light);color:var(--c-step-r);}
.parus-cab .step-u{background:var(--c-step-u-light);color:var(--c-step-u);}
.parus-cab .step-s{background:var(--c-step-s-light);color:var(--c-step-s);}
.parus-cab .lib-back{display:inline-block;margin-bottom:18px;font-size:13px;color:var(--c-accent);text-decoration:none;}
.parus-cab .lib-back:hover{text-decoration:underline;}
@media (max-width:820px){.parus-cab .library-grid{grid-template-columns:1fr;}}
/* =================== /PARUS CABINET LIBRARY ==================== */

/* ===== PARUS CABINET OFFER EDIT ===== */
.parus-cab .offer-block { position: relative; }
.parus-cab .offer-edit {
  position: absolute; top: 1.4rem; right: 3.5rem; z-index: 3;
  display: inline-flex; align-items: center; justify-content: center;
  width: 32px; height: 32px; border-radius: var(--radius-sm);
  color: var(--c-text-muted); background: var(--c-surface);
  border: 1px solid var(--c-border); text-decoration: none;
  transition: color .15s, border-color .15s;
}
.parus-cab .offer-edit:hover { color: var(--c-accent); border-color: var(--c-accent); }
.parus-cab .offer-edit svg { width: 17px; height: 17px; }
.parus-cab .offer-hidden-edit {
  display: flex; align-items: center; gap: .5rem;
  padding: .85rem 1.1rem;
  border: 1px dashed var(--c-border); border-radius: var(--radius);
  color: var(--c-text-muted); background: var(--c-surface-alt);
  font-size: .92rem; text-decoration: none;
}
.parus-cab .offer-hidden-edit:hover { color: var(--c-accent); border-color: var(--c-accent); }
.parus-cab .offer-hidden-edit svg { width: 16px; height: 16px; flex: none; }

/* ===== PARUS CABINET VIDEOS ===== */
.parus-cab .cab-panel-header { position: relative; }
.parus-cab .cab-head-edit {
  position: absolute; top: 0; right: 0; z-index: 3;
  display: inline-flex; align-items: center; justify-content: center;
  width: 32px; height: 32px; border-radius: var(--radius-sm);
  color: var(--c-text-muted); background: var(--c-surface);
  border: 1px solid var(--c-border); text-decoration: none;
  transition: color .15s, border-color .15s;
}
.parus-cab .cab-head-edit:hover { color: var(--c-accent); border-color: var(--c-accent); }
.parus-cab .cab-head-edit svg { width: 17px; height: 17px; }
.parus-cab .cab-lessons { margin-top: 1.5rem; }
.parus-cab .cab-lesson-tabs { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1.5rem; }
.parus-cab .cab-lesson-tab {
  padding: .55rem 1.1rem; border-radius: var(--radius-sm);
  border: 1px solid var(--c-border); background: var(--c-surface);
  color: var(--c-text-secondary); font: inherit; font-size: .92rem;
  cursor: pointer; transition: color .15s, border-color .15s, background .15s;
}
.parus-cab .cab-lesson-tab:hover { border-color: var(--c-accent); color: var(--c-accent); }
.parus-cab .cab-lesson-tab.active { background: var(--c-accent); border-color: var(--c-accent); color: #fff; }
.parus-cab .cab-lesson-panel { display: none; }
.parus-cab .cab-lesson-panel.active { display: block; }
.parus-cab .cab-lesson-video {
  position: relative; width: 100%; aspect-ratio: 16 / 9;
  border-radius: var(--radius); overflow: hidden; background: #000; margin-bottom: 1.1rem;
}
.parus-cab .cab-lesson-video iframe,
.parus-cab .cab-lesson-video video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.parus-cab .cab-lesson-title { font-weight: 600; font-size: 1.15rem; margin: .25rem 0 .5rem; color: var(--c-text); }
.parus-cab .cab-lesson-desc { color: var(--c-text-secondary); line-height: 1.6; }
.parus-cab .cab-lesson-desc p { margin: 0 0 .6rem; }

/* ===== PARUS CABINET VIDEOS EMPTY ===== */
.parus-cab .cab-lesson-panel .cab-lesson-video { margin-top: 1rem; }
.parus-cab .cab-lesson-video--empty {
  display: flex; align-items: center; justify-content: center;
  background: var(--c-surface-alt); color: var(--c-text-muted);
}
.parus-cab .cab-lesson-ph { display: flex; flex-direction: column; align-items: center; gap: .5rem; }
.parus-cab .cab-lesson-ph svg { width: 44px; height: 44px; opacity: .7; }
.parus-cab .cab-lesson-ph span { font-size: .92rem; }

/* PARUS HEADER AUTH */
.site-auth { margin-left: auto; display: flex; align-items: center; gap: .75rem; }
.site-auth-link { display: inline-flex; align-items: center; padding: .5rem 1.1rem; border-radius: 8px; background: #1a3a5c; color: #fff; text-decoration: none; font-weight: 600; font-size: .95rem; line-height: 1; transition: opacity .15s ease; }
.site-auth-link:hover { opacity: .88; }
.site-auth-link--ghost { background: transparent; color: #1a3a5c; border: 1px solid rgba(26,58,92,.3); }
.site-auth-link--ghost:hover { background: rgba(26,58,92,.06); opacity: 1; }
