/* Presentation-only overrides. Original styles and application logic are preserved. */
:root {
  --blue-text: #f4f8ff;
  --blue-muted: #c6d7ef;
  --blue-accent: #a4dcff;
  --blue-line: rgba(166, 205, 255, .24);
  --blue-panel: rgba(4, 19, 54, .86);
  --blue-shadow: 0 16px 44px rgba(0, 5, 28, .24);
}

html { background: #030d29; }
body { background: transparent; color: var(--blue-text); isolation: isolate; }
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(rgba(1, 9, 35, .2), rgba(1, 9, 35, .2)),
    url('/img/blue-texture.jpg') center / 100% 100% no-repeat;
}

::selection { background: #acdfff; color: #06112e; }
.platform, .faq, .subject, .tarif { background: transparent; }
.platform::before, .benefits::before, .tarif::before,
.faq::before, .contact::before { background: transparent; }

.header {
  background: rgba(3, 12, 37, .88);
  border-bottom: 1px solid var(--blue-line);
  -webkit-backdrop-filter: blur(20px);
  backdrop-filter: blur(20px);
}
.header__logo img, .footer__logo img { filter: brightness(0) invert(1); }
.header__nav-link, .by-dauletten { color: var(--blue-text); }
.header__nav-link:hover, .header__nav-link.active { color: var(--blue-accent); }
.by-dauletten svg path[fill="#7130F0"] { fill: #2869f1; }
.burger__dot, .burger__dot--line::before { background-color: #acdfff; }
.burger__dot--line { background-color: transparent; }
.burger._opened .burger__dot--aside { background-color: transparent; }

.header__login, .modal__form-btn, .subject-modal__link,
.tarif__item-btn.purple {
  background: linear-gradient(120deg, #195ee3, #3557df);
  border: 1px solid rgba(173, 212, 255, .3);
  color: #fff;
  box-shadow: 0 5px 22px rgba(16, 83, 238, .28);
}
.header__login:hover, .modal__form-btn:hover,
.subject-modal__link:hover, .tarif__item-btn.purple:hover {
  background: linear-gradient(120deg, #276ff5, #4769f2);
  border-color: #a4dcff;
}

.title, .platform__title, .subject__item-name, .tarif__item-title,
.teacher__slide-name, .subject-modal__title, .contact__item-title,
.faq__main-title, .tarif__item-price span:nth-child(1) { color: var(--blue-text); }
.title span, .platform__title span, .platform__item-title,
.subject__item-price span, .teacher__slide-pos,
.teacher__slide:hover .teacher__slide-name { color: var(--blue-accent); }
.platform__subtitle, .platform__item-text, .subject__item-price,
.teacher__slide-desc, .faq__main-body, .subject-modal__desc,
.subject-modal__item, .tarif__item-list li, .contact__item a,
.contact__item span, .modal__form-remember { color: var(--blue-muted); }
.platform__item-text { opacity: 1; font-size: 14px; line-height: 1.45; }
.platform__item-title { line-height: 1.4; }
.platform__title-cursor { background: var(--blue-accent); }
.platform__subtitle { text-shadow: 0 2px 14px rgba(0, 9, 35, .5); }

.hero__swiper {
  border: 1px solid var(--blue-line);
  border-radius: 24px;
  box-shadow: 0 24px 65px rgba(0, 7, 32, .35);
}
.hero__slide::before {
  background: linear-gradient(180deg, rgba(7, 24, 62, .08) 10%, rgba(3, 14, 44, .88) 100%);
}
.hero__slide-title { text-shadow: 0 3px 24px rgba(0, 5, 25, .45); }
.hero__slide-subtitle { color: #e2edff; }
.hero__arrow circle { fill: #acdfff; opacity: .2; }
.hero__arrow:hover circle { opacity: .4; }
.hero__pagination.swiper-pagination-bullets .swiper-pagination-bullet { background: #b9dfff; }

.platform__item, .subject__item, .teacher__slide, .faq__main-accordeon,
.tarif__item, .subject-modal__block, .modal__form, .alert--content {
  color: var(--blue-text);
  background: var(--blue-panel);
  border: 1px solid var(--blue-line);
  box-shadow: var(--blue-shadow);
}
.subject__item:hover, .tarif__item:hover, .teacher__slide:hover {
  background: rgba(10, 34, 80, .94);
  border-color: rgba(164, 220, 255, .75);
  box-shadow: 0 14px 38px rgba(0, 8, 40, .35);
}
.subject__tag, .subject__item-img, .subject-modal__img,
.tarif__item-icon, .tarif__item-tag {
  background: rgba(115, 175, 255, .12);
  border: 1px solid var(--blue-line);
  color: var(--blue-accent);
}
.subject__item-img img, .subject-modal__img img,
.subject-modal__item img, .tarif__item-icon img, .tarif__item-list li img {
  filter: brightness(0) saturate(100%) invert(87%) sepia(18%) saturate(1234%) hue-rotate(175deg);
}
.subject__tag img { filter: hue-rotate(310deg); }
.subject__item-price svg circle { fill: #acdfff; opacity: .16; }
.subject__item-price svg path { stroke: #c0e5ff; }
.tarif__item-btn.white, .hero__quiz-link {
  background: rgba(132, 187, 255, .1);
  border-color: var(--blue-line);
  color: var(--blue-accent);
}
.tarif__item-price { border-color: var(--blue-line); }
.tarif__item-price span:nth-child(2) { color: var(--blue-muted); opacity: .7; }
.subject-modal__link.is-disabled, .subject-modal__link.is-disabled:hover {
  background: #35445f;
  color: #b5c5dd;
  border-color: var(--blue-line);
  box-shadow: none;
}

.benefits__item, .work__image, .video-interview__block, .contact__map {
  border: 1px solid var(--blue-line);
  box-shadow: var(--blue-shadow);
}
.benefits__item::before {
  background: linear-gradient(180deg, rgba(4, 20, 53, .08), rgba(3, 14, 44, .85));
}
.work, .footer {
  background: rgba(2, 12, 37, .62);
  border-top: 1px solid var(--blue-line);
  border-bottom: 1px solid var(--blue-line);
}
.work__list-num { color: var(--blue-accent); }
.work__list-text { color: #d5e5fb; line-height: 1.5; }
.work__list::before, .work__list-item::before { background: #a4dcff; }
.teacher__slide-desc { line-height: 1.5; }
.teacher__arrow circle { fill: #acdfff; opacity: .2; }
.teacher__arrow path { stroke: #e4f3ff; }
.faq__main-title svg circle { fill: #87caff; opacity: .16; }
.faq__main-title svg path { stroke: #c7eaff; }
.faq__main-title.active svg circle { fill: #276ce9; }
.faq__main-body { font-size: 16px; line-height: 1.6; }
.footer__bot { border-color: var(--blue-line); }
.footer__nav ul li a:hover, .footer__bot a:hover,
.contact__item a:hover { color: var(--blue-accent); }

.modal, .subject-modal { background: rgba(1, 7, 23, .78); }
body:has(> .modal.active):not(:has(header)) > .modal { background: transparent; }
.modal__form, .subject-modal__block { background: rgba(4, 18, 49, .97); }
.modal__form-input {
  background: rgba(114, 169, 255, .09);
  color: var(--blue-text);
  border-color: var(--blue-line);
  font-size: 16px;
}
.modal__form-input::placeholder { color: #aec3e0; }
.modal__form-input:focus {
  border-color: #a4dcff;
  box-shadow: 0 0 0 3px rgba(93, 170, 255, .15);
}
.modal__form-remember input { accent-color: #3980ff; }
.modal__form-link { color: var(--blue-accent); line-height: 1.5; }
.modal__form-close svg path, .subject-modal__close svg path { stroke: #d9eeff; }
.modal__form-close svg rect, .subject-modal__close svg rect { fill: #d9eeff; }
.form-alert--error { background: #481d36; color: #ffcad4; }
.form-alert--success { background: #113d3c; color: #a5efde; }
.form-error { color: #ffc1cf; }
.privacy-section .content {
  padding: clamp(22px, 5vw, 48px);
  line-height: 1.7;
  color: var(--blue-muted);
  background: var(--blue-panel);
  border: 1px solid var(--blue-line);
  border-radius: 20px;
  box-shadow: var(--blue-shadow);
}
.privacy-section .content a { color: var(--blue-accent); }
.privacy-section .content h2, .privacy-section .content h3 { color: var(--blue-text); }
a:focus-visible, button:focus-visible, input:focus-visible {
  outline: 2px solid #b6e5ff;
  outline-offset: 4px;
}

@media (max-width: 1280px) {
  .header__nav {
    background: #071731;
    border: 1px solid var(--blue-line);
    box-shadow: var(--blue-shadow);
  }
}
@media (max-width: 767px) {
  .hero__swiper { border-radius: 20px; }
  .platform__item { padding: 18px 14px; }
  .subject-modal__item { font-size: 14px; line-height: 1.45; }
  .subject-modal__desc { line-height: 1.5; }
  .modal__form { padding: 50px 24px 28px; }
}
