/* SITE-COLOR. Общий завершающий слой. Описание: DESIGN.md.
   После blanc.css и остальных CSS. Не меняет поведение и содержимое. */
:root {
  --brand-primary: #1468E8;
  --brand-primary-hover: #1056C3;
  --brand-blue-soft: #EDF5FF;
  --brand-lilac: #F3EDFF;
  --brand-neutral: #F5F5F7;
  --brand-line: #DDE5EF;
  --brand-lilac-line: #E5DCF4;
  --brand-metric: #008FBF;
  --blanc-canvas: #FFFFFF;
  --blanc-line: var(--brand-line);
  --blanc-control-line: #BBCADB;
  --blanc-radius-button: 10px;
  --blanc-radius-card: 16px;
  --blanc-card-shadow: 0 8px 24px -22px rgba(37,63,103,.26);
}
body { background: #FFFFFF; }
body :focus-visible { outline-color: var(--brand-primary); }
::selection { background: #D8E9FF; color: #0A0A0A; }
.sidebar .brand-mark { color: var(--brand-primary); }
.sidebar .brand-mark:hover { border-color: var(--brand-primary); }
.sidebar .site-nav a { padding: 10px 14px; border-radius: 10px; }
.sidebar .site-nav a:hover { background: var(--brand-blue-soft); color: var(--brand-primary); }
.sidebar .site-nav a[aria-current="page"] {
  color: var(--brand-primary); background: var(--brand-blue-soft);
  text-decoration: none; box-shadow: inset 3px 0 0 var(--brand-primary);
}
body .page-content :where(a) { text-decoration-color: #A4C6F7; }
body .page-content p a,
body .home-page .home-text-link,
body .home-page .home-card-next,
body .about-page .about-text-link,
body .about-page .about-copy,
body .setup-article .section-link,
body .services-catalog .help-link,
body .services-catalog .link-button,
body .mechanics-page .mechanics-outro a { color: var(--brand-primary); }
body .home-page .home-button,
body .about-page .about-button:not(:disabled),
body .setup-article .wireframe-button:not(:disabled),
body .case-article .case-service-choice__link,
body .services-catalog .site-link,
body .error-actions a:first-child {
  background: var(--brand-primary); border-color: var(--brand-primary);
  color: #FFFFFF; border-radius: 10px;
  box-shadow: 0 4px 12px -6px rgba(20,104,232,.5);
}
body .home-page .home-button:hover,
body .about-page .about-button:hover:not(:disabled),
body .setup-article .wireframe-button:hover:not(:disabled),
body .case-article .case-service-choice__link:hover,
body .services-catalog .site-link:hover,
body .error-actions a:first-child:hover {
  background: var(--brand-primary-hover); border-color: var(--brand-primary-hover); color: #FFFFFF;
}
body .home-page .home-button-outline,
body .setup-article .wireframe-button-secondary:not(:disabled),
body .error-actions a:not(:first-child) {
  color: var(--blanc-ink); background: #FFFFFF; border-color: var(--brand-line); box-shadow: none;
}
body .home-page .home-button-outline:hover,
body .setup-article .wireframe-button-secondary:hover:not(:disabled) {
  color: var(--blanc-ink); background: var(--brand-blue-soft); border-color: var(--brand-primary);
}
body .services-catalog { --line: var(--brand-line); --soft: var(--brand-neutral); }
body .services-catalog .card { border-color: var(--brand-line); border-radius: 16px; }
body .services-catalog .tag,
body .services-catalog .empty-reset { border-radius: 10px; }
body .services-catalog .tag:hover { border-color: var(--brand-primary); background: var(--brand-blue-soft); }
body .services-catalog .tag[aria-pressed="true"],
body .services-catalog .tabs [aria-selected="true"],
body .about-page button[aria-pressed="true"] {
  background: var(--brand-primary); border-color: var(--brand-primary); color: #FFFFFF;
}
body .page-content table { border-color: var(--brand-line); }
body .page-content table thead th { background: var(--brand-blue-soft); color: var(--blanc-ink); }
body .case-meta__icon {
  box-sizing: content-box; padding: 8px; border-radius: 10px;
  background: var(--brand-blue-soft); color: var(--brand-primary);
}
body .loss-quiz .loss-quiz__button--primary:not(:disabled),
body .service-quiz .service-quiz__primary:not(:disabled) {
  background: var(--brand-primary); border-color: var(--brand-primary); color: #FFFFFF;
}
body .loss-quiz .loss-quiz__button--primary:hover:not(:disabled),
body .service-quiz .service-quiz__primary:hover:not(:disabled) { background: var(--brand-primary-hover); }
body .loss-quiz .loss-quiz__range { accent-color: var(--brand-primary); }
body .service-quiz .service-quiz__stars-fill { color: var(--brand-primary); }
body .loss-quiz #loss-quiz-question:focus,
body .service-quiz #service-question:focus { outline: none; }
body .case-article .case-toc a,
body .case-article .case-toc a:hover,
body .case-article .case-toc a[aria-current="location"] {
  color: var(--blanc-ink); text-decoration-color: currentColor;
}
body .case-article .case-toc a::before,
body .case-article .case-toc__chevron { color: var(--blanc-muted); }
body .browser-notice-actions button { border-radius: 10px; }
body .browser-notice-actions button[data-notice-choice="granted"] { background: var(--brand-primary); border-color: var(--brand-primary); }
