/* Сонник - ночная студия разбора, не фиолетовый SaaS-шаблон */
:root {
  --dr-ink: #1a1430;
  --dr-muted: #6b6280;
  --dr-line: rgba(90, 70, 140, 0.16);
  --dr-violet: #6c52e8;
  --dr-deep: #2a1b5c;
  --dr-mint: #e7f7f2;
  --dr-cream: #f7f4ff;
  --dr-hd: #6c52e8;
  --dr-natal: #c45b8c;
  --dr-matrix: #c9a227;
  --dr-num: #1a8a5e;
}

body.dr-landing,
body.mv-dreams-page {
  background:
    radial-gradient(80% 50% at 0% 0%, rgba(108, 82, 232, 0.14), transparent 55%),
    radial-gradient(70% 40% at 100% 8%, rgba(26, 138, 94, 0.08), transparent 50%),
    #f4f1fb;
}

.dr-landing .mv-hero-desc,
.dr-landing .mv-mini-steps,
.dr-landing .mv-service-hook,
.dr-landing .mv-simple,
.dr-landing #mv-simple-use,
.dr-landing .mv-demo-foot,
.dr-landing .mv-demo-head,
.dr-landing .dr-preview,
.dr-app-page .mv-simple,
.dr-app-page #mv-simple-use,
.dr-app-page .mv-newbie-guide,
.mv-dreams-page .mv-simple,
.mv-dreams-page #mv-simple-use,
.mv-dreams-page .mv-newbie-guide {
  display: none !important;
}

.dr-art--hero,
.dr-art--essay {
  background: #f7f4ff;
  color: #1a1430;
  border: 1px solid rgba(26, 20, 48, 0.08);
  box-shadow: 0 18px 40px rgba(40, 24, 80, 0.08);
}

.dr-hero__funnel {
  list-style: none;
  margin: 0 0 16px;
  padding: 0;
  display: grid;
  gap: 8px;
}

@media (min-width: 720px) {
  .dr-hero__funnel {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px;
  }
}

.dr-hero__funnel li {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 10px;
  padding: 12px 12px 11px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid rgba(26, 20, 48, 0.08);
  color: #1a1430;
}

.dr-hero__funnel li.is-current {
  border-color: #6c52e8;
  box-shadow: 0 0 0 3px rgba(108, 82, 232, 0.16);
}

.dr-hero__funnel li.is-done {
  background: #eef6f1;
  border-color: #cde8d9;
}

.dr-hero__funnel li > span {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-size: 0.78rem;
  font-weight: 800;
  background: #efe8ff;
  color: #2a1b5c;
}

.dr-hero__funnel li.is-current > span { background: #6c52e8; color: #fff; }
.dr-hero__funnel li.is-done > span { background: #17915c; color: #fff; }
.dr-hero__funnel b { display: block; font-size: 0.92rem; }
.dr-hero__funnel p {
  margin: 2px 0 0;
  font-size: 0.8rem;
  line-height: 1.4;
  color: #6b6280;
}

.dr-hero__kicker {
  margin: 0 0 4px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6c52e8;
}

.dr-hero__lead {
  margin: 0 0 14px;
  font-size: 0.95rem;
  line-height: 1.45;
  color: #1a1430;
}

.dr-hero__cta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin: 0 0 10px;
}

.dr-hero__note {
  margin: 0 0 14px;
  font-size: 0.82rem;
  line-height: 1.45;
  color: #6b6280;
}

.dr-hero__board {
  margin: 0 0 16px;
  padding: 16px;
  border-radius: 20px;
  background:
    radial-gradient(80% 60% at 100% 0%, rgba(108, 82, 232, 0.22), transparent 55%),
    linear-gradient(180deg, #1a1740 0%, #2d2868 100%);
  border: 1px solid rgba(167, 139, 250, 0.28);
  color: #f4efff;
}

.dr-hero__board-kicker {
  margin: 0 0 10px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #c4b5fd;
}

.dr-hero__quote {
  margin: 0 0 12px;
  font-size: 1.02rem;
  line-height: 1.5;
  font-weight: 600;
}

.dr-hero__verdict {
  margin: 0 0 12px;
  font-size: 0.95rem;
  line-height: 1.45;
  color: #e9e4ff;
}

.dr-hero__layers {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.dr-hero__layer {
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.08);
  border-top: 3px solid #a78bfa;
}

.dr-hero__layer--hd { border-top-color: #a78bfa; }
.dr-hero__layer--natal { border-top-color: #f0a3c4; }
.dr-hero__layer--matrix { border-top-color: #e4c35a; }
.dr-hero__layer--num { border-top-color: #5dcc9a; }

.dr-hero__layer small {
  display: block;
  font-size: 0.64rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #c4b5fd;
  margin-bottom: 3px;
}

.dr-hero__layer b {
  display: block;
  margin-bottom: 4px;
  font-size: 0.88rem;
}

.dr-hero__layer p {
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.4;
  color: #d8d0f0;
}

.dr-essay__kicker {
  margin: 0 0 8px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #6c52e8;
}

.dr-essay__intro {
  margin: 0 0 18px;
  font-size: 1.02rem;
  line-height: 1.55;
}

.dr-essay__sec {
  margin: 0 0 18px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(26, 20, 48, 0.08);
}

.dr-essay__sec:last-of-type { border-bottom: 0; margin-bottom: 8px; }

.dr-essay__sec h3 {
  margin: 0 0 8px;
  font-size: 1.12rem;
  line-height: 1.35;
}

.dr-essay__sec p {
  margin: 0 0 10px;
  font-size: 0.95rem;
  line-height: 1.6;
  color: #3a3650;
}

.dr-essay__plain {
  margin: 0 0 16px;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 10px;
}

.dr-essay__plain li {
  padding: 12px 14px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(26, 20, 48, 0.08);
}

.dr-essay__plain b { display: block; margin-bottom: 4px; }
.dr-essay__plain p { margin: 0; font-size: 0.9rem; color: #6b6280; }

.dr-essay__pay {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  margin-top: 8px;
  padding-top: 14px;
  border-top: 1px solid rgba(26, 20, 48, 0.08);
}

.dr-essay__pay p { margin: 0; font-size: 0.9rem; line-height: 1.45; color: #6b6280; }

@keyframes mv-cta-soft-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(108, 82, 232, 0.38); transform: scale(1); }
  50% { box-shadow: 0 0 0 12px rgba(108, 82, 232, 0); transform: scale(1.03); }
}

.dr-landing .mv-cta-soft-pulse,
.dr-art .mv-cta-soft-pulse {
  animation: mv-cta-soft-pulse 1.8s ease-in-out infinite;
  will-change: transform, box-shadow;
}

@media (prefers-reduced-motion: reduce) {
  .dr-landing .mv-cta-soft-pulse,
  .dr-art .mv-cta-soft-pulse { animation: none; }
}

.dr-landing .mv-hero--mini.mv-hero--dream,
.mv-dreams-page .mv-hero--app {
  background:
    radial-gradient(120% 80% at 0% 0%, rgba(167, 139, 250, 0.4), transparent 55%),
    radial-gradient(90% 70% at 100% 10%, rgba(45, 40, 104, 0.55), transparent 50%),
    linear-gradient(145deg, #1a1740 0%, #2d2868 48%, #1f2a3a 100%);
  border-radius: 28px;
  overflow: hidden;
}

.dr-art,
.dr-preview {
  margin: 0 0 18px;
  padding: 22px;
  border-radius: 24px;
  background:
    radial-gradient(80% 60% at 100% 0%, rgba(108, 82, 232, 0.12), transparent 55%),
    linear-gradient(180deg, #fffcff 0%, #f4f1fb 100%);
  border: 1px solid var(--dr-line);
  box-shadow: 0 22px 48px rgba(40, 24, 80, 0.08);
  color: var(--dr-ink);
}

.dr-art__kicker,
.dr-art__block-title,
.dr-preview__kicker {
  margin: 0 0 10px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--dr-violet);
}

.dr-art__quote,
.dr-preview__quote {
  margin: 0 0 12px;
  padding: 16px 18px;
  border-radius: 18px;
  background: linear-gradient(135deg, #1a1740, #2d2868);
  color: #f4efff;
  font-size: 1.02rem;
  line-height: 1.55;
  font-weight: 600;
}

.dr-art__badge {
  display: inline-flex;
  margin: 0 0 10px;
  padding: 4px 10px;
  border-radius: 999px;
  background: #efe8ff;
  color: var(--dr-deep);
  font-size: 0.78rem;
  font-weight: 800;
}

.dr-art__short,
.dr-preview__short {
  margin: 0 0 16px;
  font-size: 0.98rem;
  line-height: 1.55;
}

.dr-art__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.dr-art__chip {
  display: grid;
  gap: 2px;
  max-width: 240px;
  padding: 8px 12px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid var(--dr-line);
  box-shadow: 0 8px 16px rgba(40, 24, 80, 0.04);
}

.dr-art__chip b { font-size: 0.88rem; }
.dr-art__chip em {
  font-style: normal;
  font-size: 0.75rem;
  color: var(--dr-muted);
  line-height: 1.35;
}

.dr-art__night {
  margin: 14px 0;
  padding: 12px 14px;
  border-radius: 16px;
  background: #1a1740;
  color: #e9e4ff;
  display: grid;
  gap: 2px;
}

.dr-art__night span {
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #c4b5fd;
}

.dr-art__night p {
  margin: 6px 0 0;
  font-size: 0.82rem;
  opacity: 0.85;
  line-height: 1.4;
}

.dr-art__layers,
.dr-preview__layers {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 14px 0;
}

.dr-art__layer,
.dr-preview__layer {
  padding: 14px;
  border-radius: 18px;
  background: #fff;
  border: 1px solid var(--dr-line);
  border-top: 4px solid var(--dr-violet);
}

.dr-art__layer--hd, .dr-preview__layer--hd { border-top-color: var(--dr-hd); }
.dr-art__layer--natal, .dr-preview__layer--natal { border-top-color: var(--dr-natal); }
.dr-art__layer--matrix, .dr-preview__layer--matrix { border-top-color: var(--dr-matrix); }
.dr-art__layer--num, .dr-preview__layer--num { border-top-color: var(--dr-num); }

.dr-art__layer small,
.dr-preview__layer small {
  display: block;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--dr-muted);
  margin-bottom: 4px;
}

.dr-art__layer b,
.dr-preview__layer b { display: block; margin-bottom: 6px; }

.dr-art__layer p,
.dr-preview__layer p {
  margin: 0;
  font-size: 0.86rem;
  color: var(--dr-muted);
  line-height: 1.45;
}

.dr-art__morning ol {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
}

.dr-art__morning li {
  padding: 10px 12px;
  border-radius: 14px;
  background: var(--dr-mint);
  border: 1px solid rgba(26, 138, 94, 0.16);
  font-size: 0.9rem;
  line-height: 1.45;
}

.dr-art__examples,
.dr-art__steps {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px dashed var(--dr-line);
}

.dr-art__ex-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.dr-art__ex {
  appearance: none;
  text-align: left;
  cursor: pointer;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid var(--dr-line);
  background: #fff;
  display: grid;
  gap: 4px;
  color: inherit;
  font: inherit;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.dr-art__ex:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(40, 24, 80, 0.1);
}

.dr-art__ex.is-on {
  border-color: var(--dr-violet);
  box-shadow: 0 0 0 3px rgba(108, 82, 232, 0.22);
}

.dr-art__ex em {
  font-style: normal;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--dr-violet);
}

.dr-art__ex span {
  font-size: 0.8rem;
  color: var(--dr-muted);
  line-height: 1.4;
}

.dr-art__ex-note,
.dr-preview__note {
  margin: 10px 0 0;
  font-size: 0.82rem;
  color: var(--dr-muted);
  line-height: 1.45;
}

.dr-preview__link {
  display: inline-flex;
  margin-top: 12px;
  font-weight: 800;
  color: var(--dr-violet);
  text-decoration: none;
}

.dr-art__steps ol {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

.dr-art__steps li {
  display: flex;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid var(--dr-line);
}

.dr-art__steps li > span {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-weight: 800;
  color: #fff;
  background: linear-gradient(145deg, #7c3aed, #2d2868);
}

.dr-art__steps p {
  margin: 0;
  font-size: 0.88rem;
  color: var(--dr-muted);
  line-height: 1.45;
}

@media (max-width: 820px) {
  .dr-art__layers,
  .dr-preview__layers,
  .dr-hero__layers,
  .dr-art__ex-grid {
    grid-template-columns: 1fr;
  }
  .dr-art, .dr-preview { padding: 16px; }
}

.dr-station-cta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 14px 0 0;
}

#mv-tiers { scroll-margin-top: 88px; }
#mv-demo { scroll-margin-top: 88px; }
#dr-essay { scroll-margin-top: 88px; }
