:root {
  --bg: #ffffff;
  --bg-soft: #f6f7f9;
  --bg-soft-2: #eef2f7;
  --surface: #ffffff;
  --surface-2: #fbfcfe;
  --text: #111111;
  --text-2: #334155;
  --muted: #64748b;
  --primary: #3b82f6;
  --border: #e5e7eb;
  --border-2: rgba(15, 23, 42, 0.14);
  --card-bg: #ffffff;
  --shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.06);
  --shadow-md: 0 6px 18px rgba(15, 23, 42, 0.10);
  --shadow-lg: 0 18px 50px rgba(15, 23, 42, 0.12);
  --link: #2563eb;
  --link-hover: #1d4ed8;
}

[data-theme="dark"] {
  color-scheme: dark;
  --bg: #0b1220;
  --bg-soft: #111827;
  --bg-soft-2: #1f2937;
  --surface: #111827;
  --surface-2: #0f172a;
  --text: #e5e7eb;
  --text-2: #cbd5e1;
  --muted: #94a3b8;
  --primary: #60a5fa;
  --border: rgba(148, 163, 184, 0.30);
  --border-2: rgba(148, 163, 184, 0.40);
  --card-bg: #111827;
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
  --shadow-md: 0 10px 26px rgba(0, 0, 0, 0.42);
  --shadow-lg: 0 24px 52px rgba(0, 0, 0, 0.52);
  --link: #93c5fd;
  --link-hover: #bfdbfe;
}

[data-theme="dark"] body.default,
[data-theme="dark"] body.mainpage {
  background-color: var(--bg);
  color: var(--text);
}

[data-theme="dark"] header.default,
[data-theme="dark"] header.mainpage {
  background: rgba(11, 18, 32, 0.88);
  border-bottom: 1px solid var(--border);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .logotype img {
  filter: brightness(0) invert(1);
}

[data-theme="dark"] .nav-menu a {
  color: rgba(226, 232, 240, 0.84);
}

[data-theme="dark"] .nav-menu a:hover,
[data-theme="dark"] .nav-menu a:focus {
  color: #f8fafc;
}

[data-theme="dark"] .nav-menu .sub-menu {
  background: var(--card-bg);
}

[data-theme="dark"] section.visual,
[data-theme="dark"] section.default,
[data-theme="dark"] section.process,
[data-theme="dark"] #achievement,
[data-theme="dark"] #dv,
[data-theme="dark"] #iv,
[data-theme="dark"] #chat,
[data-theme="dark"] #review,
[data-theme="dark"] #service-hero,
[data-theme="dark"] #service-about,
[data-theme="dark"] #service-features,
[data-theme="dark"] #service-pricing,
[data-theme="dark"] #service-cta {
  background:
    radial-gradient(900px 340px at 20% 10%, rgba(96, 165, 250, 0.18) 0%, rgba(96, 165, 250, 0) 60%),
    radial-gradient(800px 320px at 85% 30%, rgba(74, 222, 128, 0.11) 0%, rgba(74, 222, 128, 0) 55%),
    linear-gradient(180deg, #0b1220 0%, #111827 100%);
  border-top: 1px solid rgba(148, 163, 184, 0.20);
}

[data-theme="dark"] .visual-area {
  background-color: rgba(11, 18, 32, 0.56);
}

[data-theme="dark"] .service-content,
[data-theme="dark"] .blog-content,
[data-theme="dark"] .review-item,
[data-theme="dark"] .package-item,
[data-theme="dark"] .service-feature,
[data-theme="dark"] .popup,
[data-theme="dark"] .window.auth,
[data-theme="dark"] .ft-links a {
  background: linear-gradient(180deg, #111827 0%, #0f172a 100%);
  border-color: var(--border);
}

[data-theme="dark"] .article-text blockquote {
  background: #0f172a;
  color: var(--text-2);
  border-left-color: rgba(96, 165, 250, 0.75);
}

[data-theme="dark"] .article-text th {
  background: #111827;
}

[data-theme="dark"] .article-text td,
[data-theme="dark"] .article-text th,
[data-theme="dark"] .package-line,
[data-theme="dark"] .package-line:nth-child(even) {
  border-color: var(--border);
}

[data-theme="dark"] .package-line {
  background-color: #0f172a;
}

[data-theme="dark"] .package-line:nth-child(even) {
  background-color: #111827;
}

[data-theme="dark"] footer.default,
[data-theme="dark"] footer.mainpage {
  background: #0b1220;
  border-top: 1px solid var(--border);
}

[data-theme="dark"] .ft-copy,
[data-theme="dark"] .mainpage .ft-copy {
  background: #0a0f1b;
  color: var(--muted);
  border-top: 1px solid var(--border);
}

[data-theme="dark"] #callback input,
[data-theme="dark"] #checkme input,
[data-theme="dark"] .window input,
[data-theme="dark"] .window textarea,
[data-theme="dark"] .window.auth input,
[data-theme="dark"] .popup .form-control {
  background: var(--surface-2);
  border-color: var(--border-2);
}

[data-theme="dark"] section.visual h1 span,
[data-theme="dark"] section.visual h2,
[data-theme="dark"] section.default p,
[data-theme="dark"] .article-text p,
[data-theme="dark"] .article-text li,
[data-theme="dark"] .service-text,
[data-theme="dark"] .why-text p,
[data-theme="dark"] .review-item p,
[data-theme="dark"] .service-feature p,
[data-theme="dark"] .service-hero__subtitle,
[data-theme="dark"] .service-hero__text,
[data-theme="dark"] .service-about__text p,
[data-theme="dark"] .section-label,
[data-theme="dark"] .ft-menu h5,
[data-theme="dark"] .ft-menu ul a,
[data-theme="dark"] .ft-cline,
[data-theme="dark"] .ft-cline a,
[data-theme="dark"] .window.linker a,
[data-theme="dark"] .package-line div.var,
[data-theme="dark"] .package-line div.val span,
[data-theme="dark"] #dv ul.options li,
[data-theme="dark"] .options-flex li,
[data-theme="dark"] .ach-item--title {
  color: var(--text-2);
}

[data-theme="dark"] .ft-menu ul li:before,
[data-theme="dark"] .ft-cline:before,
[data-theme="dark"] .map-link a {
  color: var(--muted);
  border-color: rgba(148, 163, 184, 0.45);
}
