/* Общий переключатель темы — присутствует во всех верхних панелях сайта. */
.site-theme-toggle {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 42px;
  padding: 0 13px;
  border: 1px solid #eadba8;
  border-radius: 999px;
  color: #403856;
  background: #fff7d7;
  box-shadow: 0 5px 14px rgba(42, 40, 66, .07);
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
  cursor: pointer;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.site-theme-toggle:hover { transform: translateY(-1px); box-shadow: 0 8px 18px rgba(42, 40, 66, .12); }
.site-theme-toggle:focus-visible { outline: 3px solid #9a83ae; outline-offset: 3px; }
.site-theme-icon { font-size: 16px; line-height: 1; }

@media (max-width: 980px) {
  .header-inner { gap: 12px; }
  .site-theme-toggle { min-height: 39px; padding-inline: 11px; font-size: 11px; }
}
@media (max-width: 760px) {
  .site-theme-toggle { min-height: 37px; gap: 5px; padding-inline: 9px; font-size: 10px; }
  .site-theme-icon { font-size: 15px; }
}

/* Явные цветовые переменные применяются ко всем страницам одним выбором. */
html[data-theme="night"] { color-scheme: dark; }
html[data-theme="night"] body {
  --cream: #11182d;
  --paper: #1b2440;
  --ink: #f3efff;
  --muted: #c2bfd2;
  --plum: #c2a8dc;
  --plum-deep: #a88bc9;
  --lavender: #2a2e4b;
  --pink: #382d43;
  --blush: #493345;
  --gold: #e6c989;
  --line: rgba(226, 219, 244, .16);
  background: #11182d;
  color: #f3efff;
}
html[data-theme="night"] body .site-header {
  border-color: rgba(224, 218, 246, .12);
  background: rgba(17, 26, 52, .94);
}
html[data-theme="night"] body .main-nav a,
html[data-theme="night"] body .mobile-nav a { color: #e1def0; }
html[data-theme="night"] body .main-nav a:hover,
html[data-theme="night"] body .mobile-nav a:hover { color: #f3d994; }
html[data-theme="night"] body .menu-toggle {
  border-color: rgba(231, 225, 248, .22);
  background: #202b4b;
}
html[data-theme="night"] body .menu-toggle span { background: #f3efff; }
html[data-theme="night"] body .mobile-nav {
  border-color: rgba(231, 225, 248, .13);
  background: #17213d;
}
html[data-theme="night"] body .mobile-nav-link { border-color: rgba(231, 225, 248, .1); color: #eeebf8; }
html[data-theme="night"] body .site-theme-toggle {
  border-color: #515b7b;
  color: #fff0bb;
  background: #283353;
}
html[data-theme="night"] body .site-theme-toggle:hover { background: #344061; }
html[data-theme="night"] body :is(h1, h2, h3, h4) { color: #f4efff; }
html[data-theme="night"] body :is(p, li, label, .hero-description, .trust-note, .hero-trust, .section-heading > p, .reviews-note, .faq-item > p) { color: #d0cada; }
html[data-theme="night"] body :is(h1 em, h2 em) { color: #e1c8f1; }
html[data-theme="night"] body .eyebrow { color: #edcf8f; }
html[data-theme="night"] body a:not(.button):not(.brand):not(.site-theme-toggle):not(.main-nav a):not(.mobile-nav-link) { color: #d4c5f0; }
html[data-theme="night"] body a:not(.button):not(.brand):not(.site-theme-toggle):hover { color: #fff0bb; }

/* Тёплые ночные поверхности для блоков главной, макетов и библиотеки. */
html[data-theme="night"] body main > section:not(.hero) {
  border-color: rgba(226, 219, 244, .14);
  background-color: #151d36;
  color: #f3efff;
}
html[data-theme="night"] body .listen { background: #20203c; }
html[data-theme="night"] body .quote-section { background: #393049; }
html[data-theme="night"] body .library-next-step { background: linear-gradient(110deg, #121a38, #262044); }
html[data-theme="night"] body .site-footer,
html[data-theme="night"] body .legal-footer { border-color: rgba(226, 219, 244, .13); background: #10162a; }
html[data-theme="night"] body :is(.audio-card, .floating-card, .review-card, .price-card, .pricing-card, .faq-item, .library-filters, .library-card, .library-empty, .library-category-context, .library-note, .legal-document, .legal-notice) {
  border-color: rgba(226, 219, 244, .16);
  background-color: #1b2440;
  color: #f3efff;
  box-shadow: 0 16px 38px rgba(0, 0, 0, .18);
}
html[data-theme="night"] body :is(.review-card > p, .review-top > div:nth-child(2) > span, .price-perk, .pricing-copy > p, .faq-item > p, .library-card-age, .library-card-teaser, .library-card details p, .library-results-bar, .library-results-bar p, .library-section-heading p, .library-note p, .library-disclaimer) { color: #d0cada; }
html[data-theme="night"] body :is(.benefit-card h3, .step-card h3, .review-top h3, .library-card h3, .library-card-skill strong, .library-empty h3) { color: #f5f0ff; }
html[data-theme="night"] body :is(.library-card details, .benefit-row, .benefit-card + .benefit-card, .steps-line, .step-card + .step-card, .faq-item) { border-color: rgba(226, 219, 244, .16); }
html[data-theme="night"] body .library-card-skill { color: #d0cada; background: #2a3452; }
html[data-theme="night"] body .library-card-skill strong { color: #f5f0ff; }
html[data-theme="night"] body .library-card-category { color: #ddc3ff; }
html[data-theme="night"] body .library-card-button { color: #fff; background: linear-gradient(105deg, #554b85, #745997); }
html[data-theme="night"] body .library-reset { color: #e6e0f2; background: #303958; }
html[data-theme="night"] body .library-filter { color: #e1def0; }
html[data-theme="night"] body input:not([type="checkbox"]),
html[data-theme="night"] body select,
html[data-theme="night"] body textarea {
  border-color: #465171;
  color: #f4f0ff;
  background-color: #202a47;
}
html[data-theme="night"] body input::placeholder,
html[data-theme="night"] body textarea::placeholder { color: #a9aac0; opacity: 1; }
html[data-theme="night"] body .legal-hero h1 { color: #f3efff; }
html[data-theme="night"] body .legal-hero p,
html[data-theme="night"] body .legal-document p,
html[data-theme="night"] body .legal-document li,
html[data-theme="night"] body .legal-document address { color: #d5d0e0; }
html[data-theme="night"] body .legal-document h2 { color: #f2edff; }
html[data-theme="night"] body .legal-notice { border-color: #726344; background: #343247; color: #e5decf; }
html[data-theme="night"] body .legal-notice strong { color: #ffedb2; }
html[data-theme="night"] body .legal-meta { color: #c2bfd2 !important; }
html[data-theme="night"] body .legal-document address { background: #252e4b; }
html[data-theme="night"] body .legal-footer-inner > span,
html[data-theme="night"] body .legal-footer-links a,
html[data-theme="night"] body .account-footer-inner p { color: #d1ccdc; }
html[data-theme="night"] body .legal-footer .brand,
html[data-theme="night"] body .footer-brand { color: #eee8ff; }
html[data-theme="night"] body .legal-footer .brand > span > span,
html[data-theme="night"] body .footer-brand > span:last-child > span { color: #e1caff; }
html[data-theme="night"] body :is(.share-story-text, .share-story-meta) { color: #e7e2f2; }

/* У концепции «Звёздная библиотека» по умолчанию ночной арт-дирекшн;
   выбор «День» переключает её в тёплую книжную палитру. */
html[data-theme="day"] body.concept-night {
  --cream: #faf6ef;
  --paper: #fffdf8;
  --ink: #382f41;
  --muted: #817785;
  --plum: #7b668c;
  --plum-deep: #604d72;
  --lavender: #eee8f4;
  --pink: #f5e5e7;
  --blush: #f3dfe0;
  --gold: #c49b56;
  --line: #eae3e6;
  background: #faf6ef;
  color: #382f41;
}
html[data-theme="day"] body.concept-night .site-header { border-color: rgba(123, 102, 140, .1); background: rgba(250, 246, 239, .92); }
html[data-theme="day"] body.concept-night .brand { color: #584861; }
html[data-theme="day"] body.concept-night .brand > span:last-child > span { color: #7b668c; }
html[data-theme="day"] body.concept-night .brand-mark { color: #71607d; background: #f0e9ee; }
html[data-theme="day"] body.concept-night .main-nav a { color: #736b77; }
html[data-theme="day"] body.concept-night .button-small { color: #604d72; background: #eee8f0; }
html[data-theme="day"] body.concept-night .menu-toggle { border-color: #ddd3e3; }
html[data-theme="day"] body.concept-night .menu-toggle span { background: #604d72; }
html[data-theme="day"] body.concept-night .mobile-nav { background: #fffdf8; }
html[data-theme="day"] body.concept-night .mobile-nav a { color: #604d72; }
html[data-theme="day"] body.concept-night .hero { background: linear-gradient(130deg, #faf6ef, #f2eaf4 57%, #f6e8e4); }
html[data-theme="day"] body.concept-night .hero h1 { color: #45384c; }
html[data-theme="day"] body.concept-night .hero h1 em { color: #90789b; }
html[data-theme="day"] body.concept-night .hero-description { color: #766f78; }
html[data-theme="day"] body.concept-night :is(.hero-trust, .trust-note, .text-link) { color: #756b7a; }
html[data-theme="day"] body.concept-night :is(.why, .how, .faq, .reviews) { background: #fffdf9; color: #382f41; }
html[data-theme="day"] body.concept-night .listen { background: #f1eaf2; color: #382f41; }
html[data-theme="day"] body.concept-night .quote-section { background: #8b7896; }
html[data-theme="day"] body.concept-night .pricing { background: #f4edf3; }
html[data-theme="day"] body.concept-night .builder { background: #fffdf8; color: #382f41; }
html[data-theme="day"] body.concept-night .site-footer { background: #2b2534; }
html[data-theme="day"] body.concept-night :is(.section-heading h2, .heading-split h2, .listen-copy h2, .pricing-copy h2, .faq-title h2, .benefit-card h3, .step-card h3, .review-top h3) { color: #45384c; }
html[data-theme="day"] body.concept-night :is(.section-heading > p, .benefit-card p, .heading-split > p, .step-card p, .listen-copy p, .faq-title > p, .faq-item > p, .review-card > p, .pricing-copy > p) { color: #766f78; }
html[data-theme="day"] body.concept-night .review-card { border-color: #e8dfe8; background: #fffdf8; }
html[data-theme="day"] body.concept-night .button-primary { color: #fff; background: #7b668c; }
html[data-theme="day"] body.concept-night .button-primary:hover { background: #604d72; }

/* Одна и та же шапка остаётся доступной на телефонах и небольших ноутбуках. */
@media (max-width: 1040px) {
  .site-header .header-inner { gap: 10px; }
  .site-header .main-nav,
  .site-header .header-cta { display: none !important; }
  .site-header .site-theme-toggle { margin-left: auto; }
  .site-header .menu-toggle {
    display: flex;
    flex: 0 0 40px;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid #d9cee1;
    border-radius: 50%;
    background: #fff7ef;
  }
  .site-header .menu-toggle span { background: #604d72; }
  .site-header .mobile-nav:not([hidden]) {
    position: absolute;
    inset: calc(100% - 1px) 0 auto;
    z-index: 100;
    display: flex;
    max-height: calc(100vh - 76px);
    flex-direction: column;
    gap: 0;
    overflow-y: auto;
    padding: 8px 18px 16px;
    border-top: 1px solid rgba(255, 255, 255, .12);
    background: #0c1838;
    box-shadow: 0 18px 30px rgba(6, 14, 36, .24);
  }
  .site-header .mobile-nav[hidden] { display: none !important; }
  .site-header .mobile-nav a {
    display: block;
    padding: 12px 4px;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
    color: #e6eafa;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
  }
  html[data-theme="night"] .site-header .mobile-nav a { border-color: rgba(231, 225, 248, .1); color: #eeebf8; }
  html[data-theme="day"] body.concept-night .site-header .mobile-nav a { border-color: #e9e1eb; color: #604d72; }
}

html[data-theme="night"] body.concept-workshop .hero {
  background: linear-gradient(135deg, #11182d 0%, #25203d 60%, #1a2a43 100%);
}
html[data-theme="night"] body.concept-workshop :is(.why, .how, .faq, .reviews, .pricing, .builder) {
  background: #151d36;
  color: #f3efff;
}
html[data-theme="night"] body.concept-workshop .site-footer { background: #10162a; }

body.concept-night .concept-profile-grid,
body.concept-workshop .concept-profile-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 760px) {
  body.concept-night .concept-profile-grid,
  body.concept-workshop .concept-profile-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .site-theme-toggle { transition: none; }
}


/* ЦВЕТОВОЙ КОНТРАКТ ДЛЯ ВСЕГО САЙТА
   День — светлые поверхности и тёмный текст. Ночь — тёмные поверхности и светлый текст. */
html[data-theme="day"] { color-scheme: light; }
html[data-theme="day"] body {
  --cream: #fbf8f2;
  --paper: #fffdf9;
  --ink: #403856;
  --muted: #756d7c;
  --plum: #806895;
  --plum-deep: #654f78;
  --lavender: #f0ebf5;
  --pink: #f8edf0;
  --blush: #f5e7ea;
  --gold: #bd9146;
  --line: #e9e2e9;
  color: #403856 !important;
  background: #fbf8f2 !important;
}
html[data-theme="night"] { color-scheme: dark; }
html[data-theme="night"] body {
  --cream: #11182d;
  --paper: #1b2440;
  --ink: #f3efff;
  --muted: #c2bfd2;
  --plum: #c2a8dc;
  --plum-deep: #a88bc9;
  --lavender: #2a2e4b;
  --pink: #382d43;
  --blush: #493345;
  --gold: #e6c989;
  --line: rgba(226, 219, 244, .16);
  color: #f3efff !important;
  background: #11182d !important;
}

html[data-theme="day"] body .site-header {
  border-color: #e9e2e9 !important;
  background: rgba(255, 253, 249, .96) !important;
  box-shadow: 0 8px 24px rgba(58, 44, 71, .06);
}
html[data-theme="day"] body .main-nav a,
html[data-theme="day"] body .mobile-nav a { color: #554d63 !important; }
html[data-theme="day"] body .main-nav a:hover,
html[data-theme="day"] body .mobile-nav a:hover { color: #8a6a9a !important; }
html[data-theme="day"] body .menu-toggle { border-color: #ded5e3 !important; background: #fffdf9 !important; }
html[data-theme="day"] body .menu-toggle span { background: #604d72 !important; }
html[data-theme="day"] body .mobile-nav { border-color: #ebe4ec !important; background: #fffdf9 !important; }
html[data-theme="day"] body .mobile-nav-link { border-color: #eee8ef !important; color: #554d63 !important; }
html[data-theme="day"] body .concept-banner {
  border-color: #e8e0e8 !important;
  color: #66596d !important;
  background: #f4eef1 !important;
}
html[data-theme="day"] body .concept-banner a { color: #705c7b !important; }
html[data-theme="day"] body .site-footer,
html[data-theme="day"] body .legal-footer,
html[data-theme="day"] body .account-footer {
  border-color: #e6dfe5 !important;
  color: #51475b !important;
  background: #f3eef0 !important;
}
html[data-theme="day"] body .footer-brand,
html[data-theme="day"] body .legal-footer .brand { color: #51445f !important; }
html[data-theme="day"] body .legal-footer-inner > span,
html[data-theme="day"] body .legal-footer-links a,
html[data-theme="day"] body .account-footer-inner p { color: #6f6675 !important; }

/* Все секции остаются в одном светлом / тёмном диапазоне, включая исходно контрастные макеты. */
html[data-theme="day"] body main > section:not(.hero) {
  border-color: #e9e2e9 !important;
  color: #403856 !important;
  background: #fbf8f2 !important;
}
html[data-theme="day"] body main > section:is(.listen, .pricing, .quote-section, .library-next-step) {
  color: #403856 !important;
  background: #f0ebf5 !important;
}
html[data-theme="night"] body main > section:not(.hero) {
  border-color: rgba(226, 219, 244, .14) !important;
  color: #f3efff !important;
  background: #151d36 !important;
}
html[data-theme="night"] body main > section:is(.listen, .pricing, .quote-section, .library-next-step) {
  color: #f3efff !important;
  background: #20203c !important;
}
html[data-theme="day"] body:not(.concept-night):not(.concept-workshop):not(.story-library-page):not(.account-page) .hero {
  color: #403856 !important;
  background: linear-gradient(120deg, #fbf7ef 0%, #f2edf6 56%, #fff8ed 100%) !important;
}
html[data-theme="night"] body:not(.story-library-page):not(.account-page) .hero {
  color: #f3efff !important;
  background: linear-gradient(125deg, #11182d 0%, #20203c 58%, #18243e 100%) !important;
}
html[data-theme="day"] body.story-library-page { --library-ink: #403856; --library-muted: #756d7c; --library-paper: #fbf8f2; --library-line: #e9e2e9; background: #fbf8f2 !important; }
html[data-theme="day"] body.story-library-page .library-hero {
  color: #403856 !important;
  background: linear-gradient(125deg, #f8f3ea 0%, #f0ebf5 58%, #fbf2ed 100%) !important;
}
html[data-theme="day"] body.story-library-page .library-hero :is(h1, p, .library-back-link, .library-hero-points, .library-hero-art-label) { color: #51475f !important; }
html[data-theme="day"] body.story-library-page .library-hero .eyebrow,
html[data-theme="day"] body.story-library-page .library-hero h1 em,
html[data-theme="day"] body.story-library-page .library-hero-art-label em { color: #876c96 !important; }
html[data-theme="day"] body.story-library-page .library-hero-art::before { border-color: rgba(135, 108, 150, .24); box-shadow: 0 0 0 28px rgba(135, 108, 150, .035), 0 0 0 58px rgba(135, 108, 150, .025); }
html[data-theme="day"] body.story-library-page .library-next-step { color: #403856 !important; background: #f0ebf5 !important; }
html[data-theme="day"] body.story-library-page .library-next-inner :is(h2, p) { color: #51475f !important; }
html[data-theme="day"] body.story-library-page .library-next-inner .eyebrow { color: #806895 !important; }
html[data-theme="day"] body.account-page .account-hero {
  color: #403856 !important;
  background: linear-gradient(120deg, #f8f2eb 0%, #f0ebf5 60%, #f8edf0 100%) !important;
}
html[data-theme="day"] body.account-page .account-hero :is(h1, p) { color: #51475f !important; }
html[data-theme="day"] body.account-page .account-hero h1 em { color: #806895 !important; }
html[data-theme="day"] body.account-page .account-content { color: #403856 !important; background: #fbf8f2 !important; }
html[data-theme="night"] body.account-page .account-hero { color: #f3efff !important; background: linear-gradient(120deg, #121a32 0%, #25203d 62%, #1a2a43 100%) !important; }
html[data-theme="night"] body.account-page .account-hero :is(h1, p) { color: #f3efff !important; }
html[data-theme="night"] body.account-page .account-content { color: #f3efff !important; background: #11182d !important; }
html[data-theme="day"] body .legal-hero { color: #403856 !important; background: linear-gradient(120deg, #f8f2eb, #f0ebf5) !important; }
html[data-theme="day"] body .legal-hero :is(h1, p) { color: #51475f !important; }
html[data-theme="night"] body .legal-hero { color: #f3efff !important; background: linear-gradient(120deg, #121a32, #25203d) !important; }
html[data-theme="night"] body .legal-hero :is(h1, p) { color: #e1dceb !important; }

/* Одинаковая светлая бумага / тёмное ночное стекло для карточек и форм. */
html[data-theme="day"] body :is(.audio-card, .floating-card, .review-card, .price-card, .pricing-card, .faq-item, .library-filters, .library-card, .library-empty, .library-category-context, .library-note, .legal-document, .legal-notice, .login-panel, .library-panel, .share-story-panel, .login-note, .retention-notice, .builder-form-panel, .builder-showcase, .player-scene) {
  border-color: #e8e1e9 !important;
  color: #403856 !important;
  background-color: #fffdf9 !important;
  box-shadow: 0 12px 30px rgba(58, 44, 71, .055);
}
html[data-theme="night"] body :is(.audio-card, .floating-card, .review-card, .price-card, .pricing-card, .faq-item, .library-filters, .library-card, .library-empty, .library-category-context, .library-note, .legal-document, .legal-notice, .login-panel, .library-panel, .share-story-panel, .login-note, .retention-notice, .builder-form-panel, .builder-showcase, .player-scene) {
  border-color: rgba(226, 219, 244, .16) !important;
  color: #f3efff !important;
  background: #1b2440 !important;
  box-shadow: 0 16px 38px rgba(0, 0, 0, .2);
}
html[data-theme="day"] body :is(.review-cream, .review-lilac, .review-pink) { background: #fffdf9 !important; }
html[data-theme="night"] body :is(.review-cream, .review-lilac, .review-pink) { background: #1b2440 !important; }
html[data-theme="day"] body .builder-showcase :is(.showcase-topline, .showcase-guidance, .showcase-guidance-label, p, small) { color: #62566c !important; }
html[data-theme="night"] body .builder-showcase :is(.showcase-topline, .showcase-guidance, .showcase-guidance-label, p, small) { color: #d0cada !important; }
html[data-theme="day"] body :is(h1, h2, h3, h4) { color: #403856 !important; }
html[data-theme="day"] body :is(p, li, label, .hero-description, .trust-note, .hero-trust, .section-heading > p, .section-heading p, .reviews-note, .faq-item > p, .legal-document address, .login-note, .library-disclaimer) { color: #6d6474 !important; }
html[data-theme="day"] body :is(h1 em, h2 em) { color: #806895 !important; }
html[data-theme="day"] body .eyebrow { color: #806895 !important; }
html[data-theme="day"] body a:not(.button):not(.brand):not(.site-theme-toggle):not(.main-nav a):not(.mobile-nav-link) { color: #725b85; }
html[data-theme="day"] body a:not(.button):not(.brand):not(.site-theme-toggle):hover { color: #523d66; }
html[data-theme="night"] body :is(h1, h2, h3, h4) { color: #f3efff !important; }
html[data-theme="night"] body :is(p, li, label, .hero-description, .trust-note, .hero-trust, .section-heading > p, .section-heading p, .reviews-note, .faq-item > p, .legal-document address, .login-note, .library-disclaimer) { color: #d0cada !important; }
html[data-theme="night"] body :is(h1 em, h2 em) { color: #e1c8f1 !important; }
html[data-theme="night"] body .eyebrow { color: #edcf8f !important; }
html[data-theme="night"] body a:not(.button):not(.brand):not(.site-theme-toggle):not(.main-nav a):not(.mobile-nav-link) { color: #d4c5f0; }
html[data-theme="night"] body a:not(.button):not(.brand):not(.site-theme-toggle):hover { color: #fff0bb; }
html[data-theme="night"] body :is(input:not([type="checkbox"]), select, textarea) { border-color: #465171 !important; color: #f4f0ff !important; background: #202a47 !important; }
html[data-theme="day"] body :is(input:not([type="checkbox"]), select, textarea) { border-color: #ded5e3; color: #403856; background: #fffdf9; }
html[data-theme="night"] body .concept-banner { border-color: rgba(226, 219, 244, .12) !important; color: #e1def0 !important; background: #151d36 !important; }
html[data-theme="night"] body .concept-banner a { color: #d4c5f0 !important; }
html[data-theme="day"] body .site-brand-logo { border-radius: 10px; }

/* На главной в обоих режимах остаётся тёмная иллюстрация: в дневном режиме её текст тоже светлый. */
html[data-theme="day"] body #top.hero .hero-copy h1 { color: #f6f2ff !important; }
html[data-theme="day"] body #top.hero .hero-copy h1 em { color: #f0d6ff !important; }
html[data-theme="day"] body #top.hero .hero-copy > .eyebrow { color: #f2d999 !important; }
html[data-theme="day"] body #top.hero .hero-copy .hero-description { color: #e3e0ef !important; }
html[data-theme="day"] body #top.hero .hero-copy .hero-trust,
html[data-theme="day"] body #top.hero .hero-copy .hero-trust .trust-note { color: #e3e0ef !important; }
html[data-theme="day"] body #top.hero .hero-copy .hero-actions .text-link { color: #fff0bd !important; }
html[data-theme="day"] body #top.hero .hero-copy .hero-actions .text-link:hover { color: #fff8dd !important; }

/* В тёмной карточке старые тёмно-синие цифры и фиолетовая метка сливались с фоном. */
html[data-theme="night"] body .price-card-top { color: #e6c989 !important; }
html[data-theme="night"] body .price-amount { color: #f3efff !important; }
html[data-theme="night"] body .price-amount > span { color: #e6c989 !important; }
html[data-theme="night"] body.concept-workshop .brand,
html[data-theme="night"] body.concept-workshop .brand > span:last-child { color: #f3efff !important; }
html[data-theme="night"] body.concept-workshop .brand > span:last-child > span { color: #e1c8f1 !important; }
html[data-theme="night"] body.concept-workshop .brand .brand-mark { color: #f3efff !important; background: #39324f !important; }

@media (prefers-reduced-motion: reduce) {
  html[data-theme] body *, html[data-theme] body *::before, html[data-theme] body *::after { scroll-behavior: auto; }
}


/* Дополнительная проверенная коррекция контраста: текст сохраняет читаемость на реальной поверхности каждого блока. */

/* Локальный светлый режим концепций не должен наследовать светлый текст главной тёмной иллюстрации. */
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy h1 { color: #403856 !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy h1 em { color: #725b85 !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy > .eyebrow { color: #6b551f !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy :is(.hero-description, .hero-trust, .hero-trust .trust-note, .text-link) { color: #51475f !important; }

/* Светлая дневная поверхность атласа: заголовок, счётчик и маршрут получают тёмные чернила. */
html[data-theme="day"] body .templates-section .templates-heading-copy h2 { color: #403856 !important; }
html[data-theme="day"] body .templates-section .templates-heading-copy :is(h2 em, .eyebrow) { color: #725b85 !important; }
html[data-theme="day"] body .templates-section :is(.templates-heading-copy > p, .templates-count, .templates-count span, .journey-caption, .journey-stop, .journey-copy strong, .journey-copy small, .journey-star, .template-note) { color: #51475f !important; }
html[data-theme="day"] body .templates-section .templates-count strong { color: #70551c !important; }
html[data-theme="day"] body .templates-section .journey-stop { border-bottom-color: #e4dce8 !important; }
html[data-theme="day"] body .templates-section .journey-stop.is-active { color: #403856 !important; background: #f0ebf5 !important; }
html[data-theme="day"] body .templates-section .journey-stop.is-active .journey-copy small { color: #51475f !important; }
html[data-theme="day"] body .templates-section .journey-stop.is-active .journey-num { color: #3f3150 !important; background: #e7cf93 !important; border-color: #806895 !important; }

/* Дневный футер теперь использует тёмные подписи на светлой поверхности, включая span и звёздочки. */
html[data-theme="day"] body .site-footer :is(.footer-brand-block > p, .footer-links a, .footer-note, .footer-note span, .footer-bottom, .footer-bottom span, .footer-bottom a) { color: #51475b !important; }
html[data-theme="day"] body :is(.legal-footer, .account-footer) :is(.legal-footer-inner > span, .legal-footer-links a, .account-footer-inner p, .account-footer-inner > a) { color: #51475b !important; }
html[data-theme="day"] body .footer-brand > span:last-child > span { color: #725b85 !important; }
html[data-theme="day"] body .footer-note .footer-stars { color: #73570c !important; }

/* Статусная плашка на светлой шапке кабинета / страницы передачи. */
html[data-theme="day"] body.account-page .demo-pill { color: #493b22 !important; background: #fff1c9 !important; border-color: #d4b967 !important; }
html[data-theme="day"] body.account-page .demo-pill :is(span, strong) { color: #493b22 !important; }
html[data-theme="night"] body.account-page .demo-pill { color: #fff0bc !important; background: rgba(230, 201, 137, .14) !important; border-color: rgba(230, 201, 137, .42) !important; }

/* Ночная тема: карточки шагов, FAQ и детали аудиоплеера используют светлую типографику. */
html[data-theme="night"] body .step-card { color: #f3efff !important; background: #1b2440 !important; border-color: rgba(226, 219, 244, .18) !important; }
html[data-theme="night"] body .step-card h3 { color: #f3efff !important; }
html[data-theme="night"] body .step-card p { color: #d0cada !important; }
html[data-theme="night"] body .step-number { color: #e1c8f1 !important; }
html[data-theme="night"] body .step-number > span { color: #fff !important; }
html[data-theme="night"] body .step-script { color: #d9c4fa !important; }
html[data-theme="night"] body .faq-item summary { color: #f3efff !important; }
html[data-theme="night"] body .faq-plus { color: #e1c8f1 !important; }
html[data-theme="night"] body .listen-caption,
html[data-theme="night"] body .player-kicker,
html[data-theme="night"] body .player-meta p,
html[data-theme="night"] body .player-hint,
html[data-theme="night"] body .player-footnote,
html[data-theme="night"] body .audio-time { color: #d9d4e5 !important; }
html[data-theme="night"] body .sample-transcript { color: #d9d4e5 !important; background: #17213a !important; border-color: #465171 !important; }
html[data-theme="night"] body .sample-transcript :is(summary, p, span) { color: #d9d4e5 !important; }

/* Ночная тема: заголовки, подписи и поля формы на тёмных панелях. */
html[data-theme="night"] body .builder-progress-meta,
html[data-theme="night"] body .builder-progress-meta span:last-child,
html[data-theme="night"] body .form-step legend,
html[data-theme="night"] body .field-group,
html[data-theme="night"] body .field-group > span,
html[data-theme="night"] body .field-group label,
html[data-theme="night"] body .field-group small,
html[data-theme="night"] body .required-note,
html[data-theme="night"] body .privacy-hint,
html[data-theme="night"] body .step-intro,
html[data-theme="night"] body .result-subtitle,
html[data-theme="night"] body .result-note,
html[data-theme="night"] body .price-label,
html[data-theme="night"] body .price-features,
html[data-theme="night"] body .price-small,
html[data-theme="night"] body .order-status { color: #d9d4e5 !important; }
html[data-theme="night"] body .form-step legend { color: #f3efff !important; }
html[data-theme="night"] body .field-group i,
html[data-theme="night"] body .required-note i { color: #ffadc6 !important; }
html[data-theme="night"] body .field-group input::placeholder,
html[data-theme="night"] body .field-group textarea::placeholder,
html[data-theme="night"] body .library-filter input::placeholder { color: #bcc4d8 !important; opacity: 1; }
html[data-theme="night"] body :is(.story-result, .story-excerpt) { color: #d9d4e5 !important; background: #17213a !important; border-color: #465171 !important; }
html[data-theme="night"] body .story-result :is(h3, p, .result-subtitle, .result-note) { color: #d9d4e5 !important; }
html[data-theme="night"] body .story-result h3 { color: #f3efff !important; }
html[data-theme="night"] body .story-result .eyebrow { color: #edcf8f !important; }
html[data-theme="night"] body .builder .story-result .edit-story {
  min-height: 44px !important;
  padding: 10px 15px !important;
  border: 1px solid rgba(225, 200, 241, .44) !important;
  border-radius: 999px !important;
  color: #f3efff !important;
  background: #35304d !important;
  font: 700 14px/1.25 var(--body, inherit) !important;
  text-decoration: none !important;
}
html[data-theme="night"] body .builder .story-result .edit-story:hover {
  border-color: rgba(225, 200, 241, .78) !important;
  color: #ffffff !important;
  background: #44395e !important;
}
html[data-theme="night"] body .result-tag { color: #eee6ff !important; background: #39324f !important; }
html[data-theme="night"] body .order-dialog { color: #f3efff !important; background: #1b2440 !important; border-color: #465171 !important; }
html[data-theme="night"] body .order-dialog :is(h2, p, label, dt, dd) { color: #e5e0ed !important; }
html[data-theme="night"] body .order-dialog h2 { color: #f3efff !important; }

/* Ночная библиотека: ссылки и служебные тексты отделены от тёмной карточки. */
html[data-theme="night"] body.story-library-page .library-create-link { color: #f3efff !important; background: #2a3150 !important; border-color: #596482 !important; }
html[data-theme="night"] body.story-library-page .library-results-bar,
html[data-theme="night"] body.story-library-page .library-results-bar p,
html[data-theme="night"] body.story-library-page .library-filter,
html[data-theme="night"] body.story-library-page .library-card-category,
html[data-theme="night"] body.story-library-page .library-card-age,
html[data-theme="night"] body.story-library-page .library-card-teaser,
html[data-theme="night"] body.story-library-page .library-card details summary,
html[data-theme="night"] body.story-library-page .library-card details p,
html[data-theme="night"] body.story-library-page .library-empty p { color: #d9d4e5 !important; }
html[data-theme="night"] body.story-library-page .library-card h3 { color: #f3efff !important; }
html[data-theme="night"] body.story-library-page .library-empty > span,
html[data-theme="night"] body.story-library-page .library-note-mark { color: #e6c989 !important; }
html[data-theme="night"] body.story-library-page .library-note strong { color: #fff0bc !important; }

/* В ночном режиме концепций все ссылки и пояснения читаются на тёмных секциях. */
html[data-theme="night"] body:is(.concept-night, .concept-workshop) :is(.main-nav a, .mobile-nav a, .mobile-nav-link) { color: #f0ebf6 !important; }
html[data-theme="night"] body.concept-night .builder :is(.builder-heading > p, .step-intro, .field-group, .field-group > span, .field-group label, .field-group small, .required-note, .privacy-hint, .prompt-privacy, .result-note, .player-hint, .player-footnote, .order-status) { color: #d9d4e5 !important; }
html[data-theme="night"] body.concept-workshop :is(.hero-description, .hero-trust, .trust-note, .section-heading > p, .benefit-card p, .heading-split > p, .step-card p, .reviews-note, .review-top > div:nth-child(2) > span, .review-card > p, .faq-title > p, .faq-item > p, .listen-copy p, .listen-caption, .pricing-copy > p, .price-perk, .price-label, .price-features, .price-small, .builder-heading > p, .step-intro, .field-group, .field-group > span, .field-group label, .field-group small, .required-note, .privacy-hint, .footer-brand-block > p, .footer-links a, .footer-note, .footer-bottom, .quote-inner blockquote) { color: #d9d4e5 !important; }
html[data-theme="night"] body.concept-workshop .faq-item summary { color: #f3efff !important; }
html[data-theme="night"] body.concept-workshop .faq-plus { color: #e1c8f1 !important; }
html[data-theme="night"] body.concept-workshop .site-footer :is(.footer-brand-block > p, .footer-links a, .footer-note, .footer-bottom) { color: #eee8f5 !important; }
html[data-theme="night"] body.concept-workshop .price-card-top,
html[data-theme="night"] body.concept-workshop .price-amount { color: #f3efff !important; }

/* Фокус клавиатуры остаётся заметным в обоих вариантах оформления. */
html[data-theme] body .skip-link:focus-visible { color: #fff !important; background: #403052 !important; border: 2px solid #f0d78c !important; }


/* Финальная контрастная калибровка: подписи, маркеры и акцентные метки, выявленные аудитом. */
html[data-theme="day"] body .eyebrow { color: #684d77 !important; }
html[data-theme="day"] body .templates-section .template-note strong { color: #51475f !important; }
html[data-theme="day"] body .review-signature { color: #6b4f73 !important; }
html[data-theme="night"] body .review-signature { color: #c8b7d1 !important; }
html[data-theme="day"] body .builder-progress-meta,
html[data-theme="day"] body .builder-progress-meta span:last-child,
html[data-theme="day"] body #progressLabel,
html[data-theme="day"] body #stepLabel { color: #55445f !important; }

/* Цвет категории остаётся в иконке карточки; сама короткая подпись использует тёмные чернила. */
html[data-theme="day"] body.story-library-page .library-card-category { color: #57445f !important; }
html[data-theme="day"] body.story-library-page .library-next-inner .eyebrow,
html[data-theme="day"] body.story-library-page .library-section-heading .eyebrow { color: #684d77 !important; }

/* Согласуем локальные декоративные подписи обеих концепций со светлыми поверхностями дневного режима. */
html[data-theme="day"] body.concept-night :is(.listen-caption, .faq-item summary, .quote-inner blockquote, .quote-inner blockquote em, .review-top > div:nth-child(2) > span, .review-signature, .floating-card small, .benefit-index, .step-number, .step-script, .price-features li > span, .price-card-top, .price-perk, .price-label, .price-small, .builder-progress-meta, #progressLabel, #stepLabel) { color: #51415f !important; }
html[data-theme="day"] body.concept-workshop :is(.listen-caption, .faq-item summary, .quote-inner blockquote, .quote-inner blockquote em, .review-top > div:nth-child(2) > span, .review-signature, .floating-card small, .benefit-index, .step-number, .step-script, .price-features li > span, .price-card-top, .price-perk, .price-label, .price-small, .builder-progress-meta, #progressLabel, #stepLabel) { color: #485642 !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .quote-inner blockquote em { color: #68501f !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .price-features li > span { color: #69511f !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .review-signature { color: #6b4f73 !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .review-top > div:nth-child(2) > span { color: #51475f !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .builder-progress-meta,
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #progressLabel,
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #stepLabel { color: #55445f !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .faq-plus::before,
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .faq-plus::after { background: #684d77 !important; }

/* Терракотовая CTA остаётся тёплой, но белый текст теперь проходит AA в обеих темах. */
html[data-theme] body.concept-workshop .button-primary { color: #fff !important; background: #9c5858 !important; }
html[data-theme] body.concept-workshop .button-primary:hover { color: #fff !important; background: #87494c !important; }
html[data-theme="night"] body.concept-workshop .floating-card small { color: #e3dfd1 !important; }
html[data-theme="night"] body.concept-workshop .price-card-top { color: #d7e2c9 !important; }


/* Светлые декоративные маркеры кабинета не должны теряться на ночной стеклянной карточке. */
html[data-theme="night"] body.account-page .login-note > span:first-child,
html[data-theme="night"] body.account-page .library-disclaimer > span:first-child { color: #d7c6e1 !important; }


/* В ночной теме общий контейнер формы тоже тёмный: заголовок и пояснение больше не оказываются на светлом градиенте. */
html[data-theme="night"] body .builder-container {
  border-color: rgba(226, 219, 244, .18) !important;
  color: #f3efff !important;
  background: linear-gradient(125deg, #151d36 0%, #20203c 52%, #18243e 100%) !important;
  box-shadow: 0 24px 56px rgba(0, 0, 0, .22);
}


/* Вложенные панели второго шага формы не остаются белыми в ночной теме. */
html[data-theme="night"] body .builder :is(.prompt-composer, .story-duration-picker, .question-group, .survey-details, .api-consent) {
  color: #f3efff !important;
  background: #202a47 !important;
  border-color: rgba(226, 219, 244, .2) !important;
}

html[data-theme="night"] body .builder .survey-details-summary {
  color: #f3efff !important;
  background: #2b3557 !important;
  border-radius: 14px !important;
}

html[data-theme="night"] body .builder :is(.prompt-composer textarea, .question-group input, .question-group textarea, .survey-details input, .survey-details textarea)::placeholder {
  color: #b9c4d8 !important;
  opacity: 1 !important;
}


html[data-theme="night"] body .builder .survey-details-summary .survey-details-hint {
  color: #b9c4d8 !important;
}


/* Вторичные подписи и обязательный маркер остаются различимыми на ночных панелях формы. */
html[data-theme="night"] body .builder .prompt-composer :is(.dictation-status, .prompt-counter) { color: #b9c4d8 !important; }
html[data-theme="night"] body .builder .prompt-composer .prompt-label i { color: #ff9eb2 !important; }
html[data-theme="night"] body .builder .survey-details .field-suggestions-caption,
html[data-theme="night"] body .builder .api-consent small { color: #b9c4d8 !important; }
html[data-theme="night"] body .builder .api-consent strong { color: #f3efff !important; }


/* Служебные статусы, текст раскрываемых consent-пояснений и локальный пример читаемы на тёмной форме. */
html[data-theme="night"] body .builder .survey-details :is(.field-suggestions-caption, .field-suggestions-status) { color: #b9c4d8 !important; }
html[data-theme="night"] body .builder .consent-details > summary { color: #d9d4e5 !important; }
html[data-theme="night"] body .builder .consent-details-copy {
  color: #d0cada !important;
  background: #202a47 !important;
  border-color: rgba(226, 219, 244, .2) !important;
}
html[data-theme="night"] body .builder .consent-details-copy :is(p, li, span, small) { color: #d0cada !important; }
html[data-theme="night"] body .builder .consent-details-copy strong { color: #f3efff !important; }
html[data-theme="night"] body .builder .consent-details-copy a { color: #e1c8f1 !important; text-decoration: underline; }
html[data-theme="night"] body .builder #localPreviewButton {
  color: #e1c8f1 !important;
  background: rgba(225, 200, 241, .1) !important;
  border: 1px solid rgba(225, 200, 241, .28) !important;
}
html[data-theme="night"] body .builder .question-group-heading > span {
  color: #f1eaff !important;
  background: #393450 !important;
}
html[data-theme="night"] body .builder .story-boundaries:not([hidden]) {
  border-color: rgba(180, 155, 226, .42) !important;
  border-left-color: #b49be2 !important;
  color: #e8e1f3 !important;
  background: #252f4f !important;
}


/* Доступный fallback для описания иллюстрации, если файл не загрузится: тёмный фон скрыт под самой картинкой. */
body .builder .dragon-art > img {
  color: #fff;
  background-color: #211841;
}


/* В Night карточка на иллюстрации concept-2 получает плотную подложку: текст больше не зависит от яркости картинки. */
html[data-theme="night"] body.concept-night .art-note {
  color: #f3efff !important;
  background: rgba(16, 24, 46, .96) !important;
  border-color: rgba(226, 219, 244, .32) !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, .3) !important;
}
html[data-theme="night"] body.concept-night .art-note :is(span:not(.art-note-icon), em) { color: #f3efff !important; }
html[data-theme="night"] body.concept-night .art-note-icon {
  color: #ffe4a8 !important;
  background: rgba(255, 228, 168, .12) !important;
}


/* В Night карточка concept-3 использует глубокий лесной тон: белые подписи читаются поверх любой части иллюстрации. */
html[data-theme="night"] body.concept-workshop .art-note {
  color: #f3efff !important;
  background: rgba(28, 43, 36, .96) !important;
  border-color: rgba(219, 233, 205, .36) !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, .28) !important;
}
html[data-theme="night"] body.concept-workshop .art-note :is(span:not(.art-note-icon), em) { color: #f3efff !important; }
html[data-theme="night"] body.concept-workshop .art-note-icon {
  color: #ffe4a8 !important;
  background: rgba(255, 228, 168, .12) !important;
}


/* Общая сказочная полировка: мягкий свет, единые поверхности и спокойные акценты. */
html[data-theme="day"] body {
  background-image:
    radial-gradient(42rem 34rem at 0% 0%, rgba(222, 207, 238, .22), transparent 74%),
    radial-gradient(34rem 30rem at 100% 22%, rgba(244, 216, 226, .17), transparent 76%) !important;
  background-attachment: fixed !important;
}
html[data-theme="night"] body {
  background-image:
    radial-gradient(40rem 32rem at 0% 0%, rgba(132, 102, 164, .12), transparent 74%),
    radial-gradient(34rem 30rem at 100% 24%, rgba(93, 110, 169, .09), transparent 76%) !important;
  background-attachment: fixed !important;
}

/* Световые переходы объединяют секции, не перекрашивая содержимое и его контраст. */
html[data-theme="day"] body main > section:not(.hero) {
  background-image:
    radial-gradient(36rem 24rem at 96% 3%, rgba(228, 213, 239, .24), transparent 72%),
    linear-gradient(125deg, rgba(255, 253, 249, .58), rgba(246, 237, 247, .14)) !important;
}
html[data-theme="night"] body main > section:not(.hero) {
  background-image:
    radial-gradient(36rem 24rem at 96% 3%, rgba(131, 104, 162, .11), transparent 72%),
    linear-gradient(125deg, rgba(255, 255, 255, .018), rgba(157, 128, 184, .035)) !important;
}

/* Уверенная, но мягкая общая шапка и более согласованные управляющие элементы. */
html[data-theme="day"] body .site-header {
  border-color: rgba(142, 113, 159, .19) !important;
  background-image: linear-gradient(115deg, rgba(255, 254, 251, .97), rgba(248, 242, 250, .93)) !important;
  box-shadow: 0 9px 28px rgba(59, 43, 73, .075) !important;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}
html[data-theme="night"] body .site-header {
  background-image: linear-gradient(115deg, rgba(20, 28, 53, .97), rgba(34, 31, 58, .94)) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .2) !important;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}
html[data-theme="day"] body .site-header .header-cta {
  border: 1px solid #e6d7ad !important;
  border-radius: 999px;
  color: #493c2e !important;
  background: linear-gradient(115deg, #f8edce, #f1dfa9) !important;
  box-shadow: 0 6px 18px rgba(137, 106, 55, .13) !important;
}
html[data-theme="night"] body .site-header .header-cta {
  border: 1px solid rgba(213, 192, 234, .27) !important;
  border-radius: 999px;
  color: #f3ecfb !important;
  background: linear-gradient(115deg, #514368, #3f3c61) !important;
  box-shadow: 0 7px 20px rgba(0, 0, 0, .2) !important;
}
html[data-theme="day"] body .site-theme-toggle {
  border-color: #ddd1e5 !important;
  color: #4d4058 !important;
  background: linear-gradient(125deg, #fff9ed, #f0eaf6) !important;
  box-shadow: 0 5px 16px rgba(70, 50, 88, .08) !important;
}
html[data-theme="night"] body .site-theme-toggle {
  border-color: #59617f !important;
  color: #f4e8c5 !important;
  background: linear-gradient(125deg, #2d3554, #292a49) !important;
}
.site-header .main-nav a,
.site-header .mobile-nav a { transition: color .2s ease, opacity .2s ease; }
.site-header .main-nav a:focus-visible,
.site-header .mobile-nav a:focus-visible { outline-offset: 4px; }

/* Карточки получают общий книжный рельеф вместо набора плоских белых прямоугольников. */
html[data-theme="day"] body :is(.audio-card, .review-card, .price-card, .pricing-card, .faq-item, .legal-document, .login-panel, .library-panel, .share-story-panel, .saved-story-card, .builder-form-panel, .step-card) {
  border-color: #e6dfea !important;
  box-shadow: 0 16px 38px rgba(62, 43, 77, .075), 0 2px 6px rgba(62, 43, 77, .035) !important;
}
html[data-theme="day"] body :is(.audio-card, .review-card, .price-card, .pricing-card, .faq-item, .legal-document, .login-panel, .library-panel, .share-story-panel, .saved-story-card, .builder-form-panel, .step-card) {
  background-image: linear-gradient(145deg, rgba(255, 255, 255, .6), rgba(244, 237, 248, .13)) !important;
}
html[data-theme="night"] body :is(.audio-card, .review-card, .price-card, .pricing-card, .faq-item, .legal-document, .login-panel, .library-panel, .share-story-panel, .saved-story-card, .builder-form-panel, .step-card) {
  border-color: rgba(211, 196, 231, .19) !important;
  background-image: linear-gradient(145deg, rgba(166, 137, 193, .10), rgba(102, 106, 162, .025)) !important;
  box-shadow: 0 18px 42px rgba(0, 0, 0, .23) !important;
}

/* Главный арт остаётся ночным и выразительным, но становится чуть ярче и живее. */
html[data-theme] body:not(.concept-night):not(.concept-workshop):not(.story-library-page):not(.account-page) #top.hero .hero-art img {
  filter: brightness(1.055) saturate(1.045);
}
html[data-theme] body:not(.concept-night):not(.concept-workshop):not(.story-library-page):not(.account-page) #top.hero .hero-art::before {
  background:
    linear-gradient(90deg, rgba(7, 16, 42, .93) 0%, rgba(9, 19, 47, .79) 30%, rgba(10, 22, 52, .22) 58%, rgba(10, 22, 52, .02) 100%),
    linear-gradient(0deg, rgba(7, 16, 42, .18), transparent 42%) !important;
}
html[data-theme] body:not(.concept-night):not(.concept-workshop):not(.story-library-page):not(.account-page) #top.hero .hero-copy h1 {
  text-shadow: 0 2px 22px rgba(5, 12, 38, .22);
}

/* Кабинет и экран передачи: единая лавандовая отделка без изменения состояний авторизации. */
html[data-theme="day"] body.account-page .account-hero {
  background-image:
    radial-gradient(24rem 19rem at 88% 12%, rgba(218, 198, 234, .54), transparent 76%),
    linear-gradient(120deg, #fff5e9 0%, #f0eaf6 59%, #f9ebef 100%) !important;
}
html[data-theme="night"] body.account-page .account-hero {
  background-image:
    radial-gradient(24rem 19rem at 88% 12%, rgba(129, 102, 162, .2), transparent 76%),
    linear-gradient(120deg, #171d39 0%, #2a2444 60%, #1b3047 100%) !important;
}
html[data-theme="day"] body.account-page .auth-switch {
  border: 1px solid #e7dfeb !important;
  background: linear-gradient(120deg, #f7f2f8, #f0eaf5) !important;
}
html[data-theme="night"] body.account-page .auth-switch {
  border: 1px solid rgba(214, 200, 235, .16) !important;
  background: linear-gradient(120deg, #222b48, #2a2948) !important;
}
html[data-theme] body.account-page .auth-switch-button.is-active {
  color: #fff !important;
  background: linear-gradient(125deg, #73568e, #58477b) !important;
  box-shadow: 0 5px 14px rgba(67, 48, 96, .2) !important;
}
html[data-theme] body.account-page .login-mark {
  color: #ffe9aa !important;
  background: linear-gradient(145deg, #685287, #353b6b) !important;
  box-shadow: 0 8px 20px rgba(73, 55, 107, .17);
}
html[data-theme="day"] body.account-page .story-empty {
  border-color: #d8c9e2 !important;
  background: radial-gradient(circle at 50% 0%, rgba(231, 218, 241, .52), transparent 68%), #fffdf9 !important;
  box-shadow: 0 12px 28px rgba(62, 43, 77, .055);
}
html[data-theme="night"] body.account-page .story-empty {
  border-color: rgba(211, 196, 231, .23) !important;
  background: radial-gradient(circle at 50% 0%, rgba(128, 100, 158, .18), transparent 68%), #1b2440 !important;
}
html[data-theme="day"] body.account-page .share-page .login-status,
html[data-theme="day"] body.share-page .share-story-panel .login-status {
  border-left-color: #a586ba !important;
  color: #493e56 !important;
  background: linear-gradient(110deg, #f4edf8, #fcf7ec) !important;
}
html[data-theme="night"] body.share-page .share-story-panel .login-status {
  border-left-color: #c5a5dc !important;
  color: #eee8f5 !important;
  background: linear-gradient(110deg, #292745, #26324a) !important;
}
html[data-theme] body.account-page .library-audio { accent-color: #806895; }

/* Юридические страницы остаются спокойными, но выглядят собранно и легче читаются. */
html[data-theme="day"] body .legal-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(27px, 4.2vw, 44px) clamp(18px, 4vw, 36px);
  border: 1px solid #e6dce9;
  border-radius: 28px;
  background:
    radial-gradient(22rem 16rem at 95% 0%, rgba(233, 215, 238, .58), transparent 72%),
    linear-gradient(125deg, #fff7ec, #f2ecf7 68%, #fbf0f0) !important;
  box-shadow: 0 12px 32px rgba(62, 43, 77, .055);
}
html[data-theme="night"] body .legal-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(27px, 4.2vw, 44px) clamp(18px, 4vw, 36px);
  border: 1px solid rgba(211, 196, 231, .16);
  border-radius: 28px;
  background:
    radial-gradient(22rem 16rem at 95% 0%, rgba(133, 105, 163, .17), transparent 72%),
    linear-gradient(125deg, #1a203d, #292342 68%, #1a2d42) !important;
  box-shadow: 0 16px 38px rgba(0, 0, 0, .17);
}
html[data-theme="day"] body .legal-hero::after,
html[data-theme="night"] body .legal-hero::after {
  position: absolute;
  top: 15px;
  right: 21px;
  color: rgba(134, 101, 153, .43);
  content: "✦";
  font-size: 20px;
  pointer-events: none;
}
html[data-theme="night"] body .legal-hero::after { color: rgba(231, 207, 244, .55); }
html[data-theme="day"] body .legal-document .legal-notice {
  border: 0 !important;
  border-left: 4px solid #d1b56c !important;
  border-radius: 0 14px 14px 0 !important;
  background: linear-gradient(110deg, #fff5d9, #fffaf0) !important;
  box-shadow: none !important;
}
html[data-theme="night"] body .legal-document .legal-notice {
  border: 0 !important;
  border-left: 4px solid #c8a96a !important;
  border-radius: 0 14px 14px 0 !important;
  background: linear-gradient(110deg, #343047, #2b2c45) !important;
  box-shadow: none !important;
}

/* Мобильные отступы сохраняют воздух вокруг формы и документов без обрезания содержимого. */
@media (max-width: 760px) {
  html[data-theme] body .legal-main { padding-top: 26px; padding-bottom: 58px; }
  html[data-theme] body .legal-hero { margin-bottom: 20px; border-radius: 22px; }
  html[data-theme] body .legal-document { border-radius: 22px; }
  html[data-theme] body.account-page .login-panel,
  html[data-theme] body.account-page .library-panel { box-shadow: 0 12px 30px rgba(48, 36, 66, .07) !important; }
  html[data-theme="night"] body.account-page .login-panel,
  html[data-theme="night"] body.account-page .library-panel { box-shadow: 0 16px 34px rgba(0, 0, 0, .22) !important; }
  html[data-theme] body.share-page .share-story-panel { padding: 23px 19px; }
}

@media (hover: hover) {
  html[data-theme] body :is(.price-card, .review-card, .saved-story-card) {
    transition: transform .22s ease, box-shadow .22s ease;
  }
  html[data-theme="day"] body :is(.price-card, .review-card, .saved-story-card):hover {
    transform: translateY(-2px);
    box-shadow: 0 20px 42px rgba(62, 43, 77, .11) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html[data-theme] body :is(.price-card, .review-card, .saved-story-card) { transition-duration: .01ms !important; }
}


/* Точечные мобильные детали, обнаруженные при visual review. */
@media (max-width: 760px) {
  html[data-theme] body.share-page #shareActions .button {
    flex: 1 1 140px;
    min-width: 0;
    padding-inline: 9px;
    font-size: 11px;
    white-space: nowrap;
  }
  html[data-theme] body.share-page #shareActions > :last-child { flex-basis: 100%; }
  html[data-theme] body.share-page .shared-audio {
    padding: 6px;
    border-radius: 999px;
    background: linear-gradient(110deg, #f5f0f7, #f8f4ec);
    box-shadow: 0 5px 16px rgba(58, 43, 72, .08);
  }
}
html[data-theme="night"] body.share-page .shared-audio {
  background: linear-gradient(110deg, #242d49, #2b2847);
  box-shadow: 0 5px 16px rgba(0, 0, 0, .18);
}


/* Живой сказочный цветовой ритм: каждый раздел получает свой мягкий оттенок, не меняя содержания. */
html[data-theme="day"] body #magic.why,
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #magic.why {
  background: linear-gradient(118deg, #f2eaff 0%, #edf0ff 50%, #e9f8f1 100%) !important;
}
html[data-theme="day"] body #categories.categories {
  background: linear-gradient(118deg, #fff0dc 0%, #ffeaf2 48%, #f1eaff 100%) !important;
}
html[data-theme="day"] body #examples.templates-section {
  background: linear-gradient(118deg, #e8f6ff 0%, #edf0ff 52%, #f8edff 100%) !important;
}
html[data-theme="day"] body #how.how {
  background: linear-gradient(118deg, #eaf7ed 0%, #f6f6e9 52%, #fff0e8 100%) !important;
}
html[data-theme="day"] body #create.builder {
  background: linear-gradient(118deg, #ffeaf0 0%, #f1eaff 54%, #e8f4ff 100%) !important;
}
html[data-theme="day"] body #listen.listen {
  background: linear-gradient(118deg, #e5f4ff 0%, #e9ecff 50%, #f5eaff 100%) !important;
}
html[data-theme="day"] body #reviews.reviews {
  background: linear-gradient(118deg, #fff0e3 0%, #ffe8ef 52%, #f4eaff 100%) !important;
}
html[data-theme="day"] body #price.pricing {
  background:
    radial-gradient(ellipse at 8% 0%, rgba(255, 190, 204, .62), transparent 38%),
    radial-gradient(ellipse at 94% 12%, rgba(155, 190, 255, .55), transparent 39%),
    linear-gradient(120deg, #f1e9ff 0%, #f8e6f2 52%, #e7f3ff 100%) !important;
}
html[data-theme="day"] body #faq.faq {
  background: linear-gradient(118deg, #fff4d8 0%, #f2eaff 50%, #e8f5ff 100%) !important;
}

html[data-theme="night"] body #magic.why { background: linear-gradient(118deg, #211d3c, #1c2742 52%, #193239) !important; }
html[data-theme="night"] body #categories.categories { background: linear-gradient(118deg, #34223d, #292542 52%, #1b3041) !important; }
html[data-theme="night"] body #examples.templates-section { background: linear-gradient(118deg, #1b2c43, #252341 52%, #30223e) !important; }
html[data-theme="night"] body #how.how { background: linear-gradient(118deg, #1b342f, #252d3d 52%, #392b3a) !important; }
html[data-theme="night"] body #create.builder { background: linear-gradient(118deg, #382338, #29223e 52%, #1c3046) !important; }
html[data-theme="night"] body #listen.listen { background: linear-gradient(118deg, #18334a, #242647 52%, #302342) !important; }
html[data-theme="night"] body #reviews.reviews { background: linear-gradient(118deg, #3a2838, #2b2341 52%, #1d3047) !important; }
html[data-theme="night"] body #price.pricing { background: radial-gradient(ellipse at 8% 0%, rgba(172, 91, 156, .26), transparent 40%), radial-gradient(ellipse at 94% 12%, rgba(79, 132, 203, .24), transparent 40%), linear-gradient(120deg, #211c3d, #30213c 52%, #1a2d45) !important; }
html[data-theme="night"] body #faq.faq { background: linear-gradient(118deg, #352e38, #28233f 52%, #1b3042) !important; }

/* Карточки главной используют небольшие цветовые семьи вместо однотонной белой сетки. */
html[data-theme="day"] body .benefit-card { border-color: rgba(131, 105, 157, .2) !important; }
html[data-theme="day"] body .step-card:nth-child(3n + 1) { border-color: #d9c9ef !important; background: linear-gradient(145deg, #fff, #f3eaff) !important; }
html[data-theme="day"] body .step-card:nth-child(3n + 2) { border-color: #c9ddef !important; background: linear-gradient(145deg, #fff, #eaf5ff) !important; }
html[data-theme="day"] body .step-card:nth-child(3n) { border-color: #d2e8d8 !important; background: linear-gradient(145deg, #fff, #edf8ed) !important; }
html[data-theme="night"] body .step-card:nth-child(3n + 1) { background: linear-gradient(145deg, #29213f, #1d2540) !important; }
html[data-theme="night"] body .step-card:nth-child(3n + 2) { background: linear-gradient(145deg, #1d3047, #202641) !important; }
html[data-theme="night"] body .step-card:nth-child(3n) { background: linear-gradient(145deg, #1d3935, #22283f) !important; }

/* Яркие карточки популярных сюжетов: мягкая цветная подсветка не закрывает иллюстрации. */
.categories .category-card {
  --category-glow: 153, 111, 255;
  border: 1px solid rgba(255, 255, 255, .7);
  background: #7952ce;
  box-shadow: 0 13px 28px rgba(55, 39, 89, .16), inset 0 0 0 1px rgba(255, 255, 255, .12);
}
.categories .category-card:nth-child(6n + 1) { --category-glow: 174, 119, 255; background-color: #8459d7; }
.categories .category-card:nth-child(6n + 2) { --category-glow: 255, 150, 103; background-color: #d27654; }
.categories .category-card:nth-child(6n + 3) { --category-glow: 104, 213, 145; background-color: #4f9b68; }
.categories .category-card:nth-child(6n + 4) { --category-glow: 81, 164, 255; background-color: #416bc4; }
.categories .category-card:nth-child(6n + 5) { --category-glow: 255, 120, 177; background-color: #bf557f; }
.categories .category-card:nth-child(6n) { --category-glow: 255, 199, 92; background-color: #98713d; }
.categories .category-card::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  background: radial-gradient(ellipse at 80% 8%, rgba(var(--category-glow), .67), transparent 54%), linear-gradient(140deg, rgba(var(--category-glow), .2), transparent 62%);
  opacity: .9;
  pointer-events: none;
  transition: opacity .25s ease;
}
.categories .category-card::after {
  inset: 21% 0 0;
  background: linear-gradient(180deg, rgba(8, 13, 36, 0) 0%, rgba(8, 13, 36, .2) 42%, rgba(8, 13, 36, .78) 100%);
}
.categories .category-card img { filter: saturate(1.12) contrast(1.025); }
.categories .category-card:hover { border-color: rgba(255, 255, 255, .95); box-shadow: 0 18px 36px rgba(var(--category-glow), .24), 0 9px 24px rgba(27, 21, 56, .17); }
.categories .category-card:hover::before { opacity: 1; }

/* Многоцветные, но спокойные поверхности библиотечных карточек. */
html[data-theme="day"] body.story-library-page .library-catalog {
  background: radial-gradient(ellipse at 3% 3%, rgba(255, 211, 174, .22), transparent 35%), linear-gradient(125deg, #fff9ed, #f2edff 48%, #eaf5ff) !important;
}
html[data-theme="day"] body.story-library-page .library-next-step { background: linear-gradient(120deg, #e8f7ff, #f1eaff 52%, #ffeef2) !important; }
html[data-theme="day"] body.story-library-page .library-card:nth-child(6n + 1) { border-color: #eddbbd !important; background: linear-gradient(145deg, #fffdf8, #fff3df) !important; }
html[data-theme="day"] body.story-library-page .library-card:nth-child(6n + 2) { border-color: #d8c9ee !important; background: linear-gradient(145deg, #fffdfb, #f3ebff) !important; }
html[data-theme="day"] body.story-library-page .library-card:nth-child(6n + 3) { border-color: #c9e3ea !important; background: linear-gradient(145deg, #fffdfb, #eaf7fc) !important; }
html[data-theme="day"] body.story-library-page .library-card:nth-child(6n + 4) { border-color: #d2e7d1 !important; background: linear-gradient(145deg, #fffdf9, #edf8eb) !important; }
html[data-theme="day"] body.story-library-page .library-card:nth-child(6n + 5) { border-color: #f0d1d9 !important; background: linear-gradient(145deg, #fffdfb, #ffedf2) !important; }
html[data-theme="day"] body.story-library-page .library-card:nth-child(6n) { border-color: #edd9a8 !important; background: linear-gradient(145deg, #fffdf9, #fff6d9) !important; }
html[data-theme="night"] body.story-library-page .library-card:nth-child(6n + 1) { background: linear-gradient(145deg, #302640, #1e263f) !important; }
html[data-theme="night"] body.story-library-page .library-card:nth-child(6n + 2) { background: linear-gradient(145deg, #30253f, #202640) !important; }
html[data-theme="night"] body.story-library-page .library-card:nth-child(6n + 3) { background: linear-gradient(145deg, #1c3445, #20263f) !important; }
html[data-theme="night"] body.story-library-page .library-card:nth-child(6n + 4) { background: linear-gradient(145deg, #1d3737, #20263e) !important; }
html[data-theme="night"] body.story-library-page .library-card:nth-child(6n + 5) { background: linear-gradient(145deg, #38263c, #22243f) !important; }
html[data-theme="night"] body.story-library-page .library-card:nth-child(6n) { background: linear-gradient(145deg, #3a3038, #242540) !important; }
html[data-theme="night"] body.story-library-page .library-catalog { background: linear-gradient(125deg, #1b263b, #24203d 48%, #1a2f40) !important; }
html[data-theme="night"] body.story-library-page .library-next-step { background: linear-gradient(120deg, #1b3041, #292340 52%, #35223e) !important; }

/* Кабинет и передача: лёгкие цветовые потоки, отдельный акцент для карточек историй. */
html[data-theme="day"] body.account-page .account-content { background: linear-gradient(125deg, #fff8e9, #f2edff 50%, #eaf6ff) !important; }
html[data-theme="day"] body.account-page .login-panel,
html[data-theme="day"] body.account-page .library-panel { border-color: #e2d6ec !important; background-image: linear-gradient(145deg, rgba(255, 250, 238, .72), rgba(241, 233, 255, .56), rgba(231, 245, 255, .45)) !important; }
html[data-theme="day"] body.account-page .saved-story-card:nth-child(3n + 1) { border-color: #e8d8ef !important; background: linear-gradient(145deg, #fffdfa, #f6edff) !important; }
html[data-theme="day"] body.account-page .saved-story-card:nth-child(3n + 2) { border-color: #d5e6ef !important; background: linear-gradient(145deg, #fffdfa, #eaf6ff) !important; }
html[data-theme="day"] body.account-page .saved-story-card:nth-child(3n) { border-color: #eadab8 !important; background: linear-gradient(145deg, #fffdfa, #fff5e0) !important; }
html[data-theme="night"] body.account-page .account-content { background: linear-gradient(125deg, #17273a, #24203d 50%, #32223b) !important; }
html[data-theme="night"] body.account-page .login-panel,
html[data-theme="night"] body.account-page .library-panel { background-image: linear-gradient(145deg, rgba(145, 105, 165, .12), rgba(79, 115, 158, .08)) !important; }
html[data-theme="night"] body.account-page .saved-story-card:nth-child(3n + 1) { background: linear-gradient(145deg, #30243f, #20273f) !important; }
html[data-theme="night"] body.account-page .saved-story-card:nth-child(3n + 2) { background: linear-gradient(145deg, #1d3344, #202740) !important; }
html[data-theme="night"] body.account-page .saved-story-card:nth-child(3n) { background: linear-gradient(145deg, #3b303b, #232640) !important; }
html[data-theme="day"] body.share-page .share-story-panel { background: linear-gradient(145deg, #fff9ea, #f1eaff 55%, #eaf6ff) !important; }
html[data-theme="night"] body.share-page .share-story-panel { background: linear-gradient(145deg, #35273e, #222541 55%, #1d3244) !important; }

/* Юридические страницы остаются спокойными для чтения, но не однотонными. */
html[data-theme="day"] body.legal-page { background-image: radial-gradient(36rem 28rem at 0% 12%, rgba(255, 213, 184, .24), transparent 75%), radial-gradient(34rem 27rem at 100% 42%, rgba(207, 190, 246, .22), transparent 76%), linear-gradient(135deg, #fffaf1, #f7f1fa 50%, #eef7fb) !important; }
html[data-theme="night"] body.legal-page { background-image: radial-gradient(36rem 28rem at 0% 12%, rgba(184, 106, 147, .11), transparent 75%), radial-gradient(34rem 27rem at 100% 42%, rgba(105, 115, 181, .13), transparent 76%), linear-gradient(135deg, #151d34, #201d38 52%, #162a3b) !important; }
html[data-theme="day"] body.legal-page .legal-hero { background: radial-gradient(ellipse at 92% 10%, rgba(255, 202, 221, .62), transparent 42%), linear-gradient(120deg, #fff0dc, #f0e8ff 57%, #e8f5ff) !important; }
html[data-theme="night"] body.legal-page .legal-hero { background: radial-gradient(ellipse at 92% 10%, rgba(174, 102, 153, .2), transparent 42%), linear-gradient(120deg, #30233c, #24213f 57%, #1a3043) !important; }
html[data-theme="day"] body.legal-page .legal-document { border-color: #e7dce9 !important; background-image: linear-gradient(160deg, rgba(255, 246, 232, .46), rgba(244, 237, 255, .34), rgba(231, 245, 255, .25)) !important; }
html[data-theme="night"] body.legal-page .legal-document { background-image: linear-gradient(160deg, rgba(155, 110, 161, .08), rgba(78, 107, 160, .07)) !important; }

/* Общий футер связывает страницы мягким многоцветным переходом. */
html[data-theme="day"] body :is(.site-footer, .legal-footer, .account-footer) { background: linear-gradient(115deg, #f0eaff, #fff1e4 50%, #e9f5ff) !important; }
html[data-theme="night"] body :is(.site-footer, .legal-footer, .account-footer) { background: linear-gradient(115deg, #211e39, #302337 50%, #192c40) !important; }

/* Карточная иллюстрация должна оставаться видимой под цветным свечением. */
.categories .category-card img { z-index: 0; }
.categories .category-card::before {
  z-index: 1;
  background: radial-gradient(ellipse at 82% 9%, rgba(var(--category-glow), .62), transparent 56%);
  opacity: .38;
  mix-blend-mode: screen;
}
.categories .category-card::after { z-index: 2; }
.categories .category-card > .category-card-copy { z-index: 3; }


/* Новое общее направление по референсу пользователя: космическая сказка. */
html[data-theme="day"] body {
  --cream: #f5f3fc;
  --paper: #fffaff;
  --ink: #2c2345;
  --muted: #625b78;
  --plum: #6650d9;
  --plum-deep: #4d38b8;
  --lavender: #e8e6ff;
  --pink: #f8e3f3;
  --blush: #ffe8e3;
  --gold: #a96d26;
  --line: rgba(91, 76, 158, .18);
  color: #32294d !important;
  background: radial-gradient(ellipse at 96% 4%, rgba(174, 150, 255, .13), transparent 32rem), #f5f3fc !important;
}
html[data-theme="night"] body {
  --cream: #070a1c;
  --paper: #111832;
  --ink: #f5f1ff;
  --muted: #d0cbe4;
  --plum: #c4a8ff;
  --plum-deep: #9674ff;
  --lavender: #1b2250;
  --pink: #352143;
  --blush: #47243e;
  --gold: #ffd07a;
  --line: rgba(177, 160, 255, .22);
  color: #f5f1ff !important;
  background: radial-gradient(ellipse at 96% 5%, rgba(80, 57, 181, .18), transparent 34rem), #060817 !important;
}

html[data-theme="day"] body .site-header {
  border-color: rgba(102, 80, 217, .18) !important;
  background: rgba(250, 248, 255, .94) !important;
  box-shadow: 0 8px 28px rgba(48, 34, 94, .08);
}
html[data-theme="night"] body .site-header {
  border-color: rgba(133, 115, 255, .26) !important;
  background: rgba(5, 8, 27, .92) !important;
  box-shadow: 0 8px 30px rgba(1, 3, 16, .38);
}
html[data-theme="day"] body :is(.main-nav a, .mobile-nav a) { color: #4b426d !important; }
html[data-theme="night"] body :is(.main-nav a, .mobile-nav a) { color: #e2ddfa !important; }
html[data-theme="day"] body :is(.main-nav a:hover, .mobile-nav a:hover) { color: #674bd8 !important; }
html[data-theme="night"] body :is(.main-nav a:hover, .mobile-nav a:hover) { color: #ffd27e !important; }
html[data-theme="night"] body .mobile-nav { border-color: rgba(154, 132, 255, .26) !important; background: #0b112b !important; }
html[data-theme="night"] body .mobile-nav-link { border-color: rgba(154, 132, 255, .18) !important; color: #f2edff !important; }
html[data-theme="night"] body .menu-toggle { border-color: rgba(176, 155, 255, .38) !important; background: #151d3f !important; }
html[data-theme="night"] body .menu-toggle span { background: #eee7ff !important; }
html[data-theme="day"] body .site-theme-toggle { border-color: #c9baf5 !important; color: #4b378d !important; background: linear-gradient(120deg, #f0eaff, #fff0f7) !important; }
html[data-theme="night"] body .site-theme-toggle { border-color: rgba(179, 156, 255, .46) !important; color: #ffe0a1 !important; background: linear-gradient(120deg, #171e43, #282044) !important; box-shadow: 0 0 18px rgba(112, 84, 255, .15); }
html[data-theme="night"] body .site-theme-toggle:hover { background: linear-gradient(120deg, #222957, #39234f) !important; }
html[data-theme="day"] body .brand { color: #32264d !important; }
html[data-theme="day"] body .brand-mark { color: #fff !important; background: linear-gradient(145deg, #6853df, #aa65d7) !important; }
html[data-theme="night"] body .brand { color: #f5f1ff !important; }
html[data-theme="night"] body .brand-mark { color: #fff2c8 !important; background: linear-gradient(145deg, #6450d6, #a04fc1) !important; box-shadow: 0 0 18px rgba(117, 91, 255, .28); }
html[data-theme="night"] body .brand > span:last-child > span { color: #d7c4ff !important; }

/* Главная: тёмный иллюстрированный hero и чередующиеся поля синего/фиолетового космоса. */
html[data-theme="day"] body #top.hero,
html[data-theme="night"] body #top.hero {
  color: #f7f3ff !important;
  background:
    radial-gradient(ellipse at 82% 20%, rgba(107, 66, 210, .30), transparent 40%),
    radial-gradient(ellipse at 16% 90%, rgba(33, 104, 206, .24), transparent 43%),
    linear-gradient(122deg, #070b22 0%, #0c1230 53%, #171033 100%) !important;
}
html[data-theme="day"] body #top.hero .hero-copy :is(h1, p, .hero-trust, .trust-note, .text-link) { color: #f7f3ff !important; }
html[data-theme="day"] body #top.hero .hero-copy h1 em { color: #d9b7ff !important; }
html[data-theme="day"] body #top.hero .hero-copy > .eyebrow { color: #ffd58a !important; }
#top.hero::before { background: radial-gradient(circle, rgba(110, 80, 213, .30), rgba(31, 73, 169, .14) 47%, transparent 74%) !important; }
#top.hero .hero-ambient { background: radial-gradient(circle, rgba(222, 105, 176, .22), transparent 70%) !important; }
#top.hero .hero-art { box-shadow: 0 28px 90px rgba(27, 17, 76, .34), 0 0 0 1px rgba(183, 159, 255, .26), 0 0 42px rgba(111, 80, 255, .16), inset 0 0 0 8px rgba(255,255,255,.25) !important; }
html[data-theme="day"] body #magic.why { background: linear-gradient(118deg, #f0edff 0%, #edf3ff 54%, #f7eafa 100%) !important; }
html[data-theme="day"] body #categories.categories { background: linear-gradient(118deg, #fff0e7 0%, #fbeaf6 52%, #eeeaff 100%) !important; }
html[data-theme="day"] body #examples.templates-section { background: linear-gradient(118deg, #e9f5ff 0%, #f0edff 52%, #f9eafa 100%) !important; }
html[data-theme="day"] body #how.how { background: linear-gradient(118deg, #eaf4ff 0%, #f1edff 55%, #fff2e7 100%) !important; }
html[data-theme="day"] body #create.builder { background: linear-gradient(118deg, #fbeaf7 0%, #eeeaff 54%, #e9f5ff 100%) !important; }
html[data-theme="day"] body #listen.listen { background: linear-gradient(118deg, #e8f4ff 0%, #eceaff 52%, #f7eaff 100%) !important; }
html[data-theme="day"] body #reviews.reviews { background: linear-gradient(118deg, #fff0e2 0%, #fbe9f2 52%, #f0eaff 100%) !important; }
html[data-theme="day"] body #price.pricing { background: radial-gradient(ellipse at 8% 0%, rgba(255, 185, 205, .68), transparent 40%), radial-gradient(ellipse at 94% 12%, rgba(132, 159, 255, .46), transparent 39%), linear-gradient(120deg, #eee9ff 0%, #f8eaf7 52%, #e9f4ff 100%) !important; }
html[data-theme="day"] body #faq.faq { background: linear-gradient(118deg, #fff2df 0%, #f0eaff 50%, #e8f4ff 100%) !important; }
html[data-theme="night"] body main > section:not(.hero) { border-color: rgba(151, 126, 255, .18) !important; color: #f4f0ff !important; background-color: #080d23 !important; }
html[data-theme="night"] body #magic.why { background: radial-gradient(ellipse at 92% 8%, rgba(56, 91, 204, .17), transparent 42%), linear-gradient(118deg, #080d24, #111435 58%, #17112e) !important; }
html[data-theme="night"] body #categories.categories { background: radial-gradient(ellipse at 12% 0%, rgba(168, 62, 172, .16), transparent 39%), linear-gradient(118deg, #070b20, #11112f 56%, #0b1932) !important; }
html[data-theme="night"] body #examples.templates-section { background: radial-gradient(ellipse at 88% 4%, rgba(87, 74, 208, .20), transparent 38%), linear-gradient(118deg, #08132b, #111332 55%, #1a1236) !important; }
html[data-theme="night"] body #how.how { background: radial-gradient(ellipse at 4% 100%, rgba(31, 117, 185, .18), transparent 43%), linear-gradient(118deg, #071326, #101632 52%, #17122f) !important; }
html[data-theme="night"] body #create.builder { background: radial-gradient(ellipse at 92% 8%, rgba(178, 63, 159, .18), transparent 40%), linear-gradient(118deg, #0a102a, #151131 54%, #0c1932) !important; }
html[data-theme="night"] body #listen.listen { background: radial-gradient(ellipse at 90% 8%, rgba(85, 120, 236, .2), transparent 38%), linear-gradient(118deg, #07182e, #111332 54%, #191132) !important; }
html[data-theme="night"] body #reviews.reviews { background: radial-gradient(ellipse at 0% 0%, rgba(212, 118, 146, .13), transparent 42%), linear-gradient(118deg, #181126, #11132f 55%, #0c1a32) !important; }
html[data-theme="night"] body #price.pricing { background: radial-gradient(ellipse at 8% 0%, rgba(170, 74, 173, .22), transparent 40%), radial-gradient(ellipse at 94% 12%, rgba(68, 112, 223, .22), transparent 40%), linear-gradient(120deg, #110d2d, #0b1531 56%, #17102f) !important; }
html[data-theme="night"] body #faq.faq { background: radial-gradient(ellipse at 94% 0%, rgba(62, 94, 191, .19), transparent 40%), radial-gradient(ellipse at 0% 90%, rgba(161, 76, 145, .12), transparent 42%), linear-gradient(118deg, #081125, #111331 52%, #1a1235) !important; }

/* Сине-фиолетовые CTA и четкая клавиатурная навигация. */
html[data-theme] body .button-primary:not(.price-card .button-primary) {
  border-color: transparent !important;
  color: #fff !important;
  background: linear-gradient(112deg, #5740c8 0%, #7544c7 54%, #9a3f78 100%) !important;
  box-shadow: 0 10px 28px rgba(90, 63, 193, .25) !important;
}
html[data-theme] body .button-primary:not(.price-card .button-primary):hover { filter: brightness(1.08) saturate(1.08); box-shadow: 0 14px 34px rgba(90, 63, 193, .33) !important; }
html[data-theme] body .builder button.button-primary:disabled {
  border: 1px solid #858094 !important;
  color: #f3efff !important;
  background: #514e62 !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
  cursor: not-allowed !important;
}
html[data-theme] body .builder button.button-primary:disabled:hover {
  background: #514e62 !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
}
html[data-theme] body :is(a, button, input, textarea, select, summary):focus-visible { outline: 3px solid #8c72ff !important; outline-offset: 3px; }
html[data-theme="night"] body :is(a, button, input, textarea, select, summary):focus-visible { outline-color: #ffd17d !important; }
#price .price-card--sleepy .button-primary { background: linear-gradient(115deg, #f7b4d3, #e68fbd) !important; color: #33233f !important; }
#price .price-card--road .button-primary { background: linear-gradient(115deg, #a8e3f4, #7fc4e9) !important; color: #33233f !important; }
#price .price-card--adventure .button-primary { background: linear-gradient(115deg, #d5c5ff, #b39aec) !important; color: #33233f !important; }

/* Общие карточки и интерактивные поверхности: тёмное стекло с тонким цветным краем. */
html[data-theme="day"] body :is(.audio-card, .review-card, .step-card, .faq-item, .builder-form-panel, .builder-showcase, .player-scene, .login-panel, .library-panel, .share-story-panel, .legal-document, .legal-notice, .login-note, .retention-notice) { border-color: rgba(105, 83, 190, .2) !important; }
html[data-theme="night"] body :is(.audio-card, .review-card, .step-card, .faq-item, .builder-form-panel, .builder-showcase, .player-scene, .login-panel, .library-panel, .share-story-panel, .legal-document, .legal-notice, .login-note, .retention-notice, .saved-story-card) {
  border-color: rgba(142, 122, 255, .30) !important;
  color: #f1edff !important;
  background: linear-gradient(145deg, rgba(27, 35, 78, .96), rgba(17, 18, 50, .98)) !important;
  box-shadow: 0 16px 40px rgba(1, 3, 18, .35), 0 0 22px rgba(90, 73, 218, .08) !important;
}
html[data-theme="night"] body :is(.audio-card, .review-card, .step-card, .faq-item, .builder-form-panel, .builder-showcase, .player-scene, .login-panel, .library-panel, .share-story-panel, .legal-document, .legal-notice, .login-note, .retention-notice, .saved-story-card) :is(h2, h3, h4, strong, summary) { color: #f8f4ff !important; }
html[data-theme="night"] body :is(.audio-card, .review-card, .step-card, .faq-item, .builder-form-panel, .builder-showcase, .player-scene, .login-panel, .library-panel, .share-story-panel, .legal-document, .legal-notice, .login-note, .retention-notice, .saved-story-card) :is(p, li, label, small, address) { color: #d9d5ec !important; }
html[data-theme="night"] body :is(input:not([type="checkbox"]), select, textarea) { border-color: rgba(153, 137, 235, .44) !important; color: #f8f4ff !important; background: #0d1530 !important; }
html[data-theme="night"] body :is(input, textarea)::placeholder { color: #b8b2d2 !important; opacity: 1; }
html[data-theme="day"] body :is(input:not([type="checkbox"]), select, textarea) { border-color: #c9c0ea !important; color: #32294d !important; background: #fffaff !important; }

/* Витрина библиотеки наследует общую палитру, оставаясь светлой и дружелюбной днём. */
html[data-theme="day"] body.story-library-page { --library-ink: #30264d; --library-muted: #605a76; --library-paper: #f7f5ff; --library-line: #ddd7f1; background: #f7f5ff !important; }
html[data-theme="day"] body.story-library-page .library-catalog { background: radial-gradient(ellipse at 4% 4%, rgba(255, 196, 145, .20), transparent 36%), linear-gradient(125deg, #fff8f4, #f1edff 50%, #eaf4ff) !important; }
html[data-theme="night"] body.story-library-page { --library-ink: #f6f1ff; --library-muted: #d0cbe6; --library-paper: #06091b; --library-line: rgba(150, 130, 255, .24); background: #06091b !important; }
html[data-theme="night"] body.story-library-page .library-hero { color: #f7f2ff !important; background: radial-gradient(ellipse at 85% 14%, rgba(100, 70, 206, .31), transparent 39%), radial-gradient(ellipse at 12% 100%, rgba(39, 107, 194, .22), transparent 42%), linear-gradient(117deg, #06091b, #0b1430 57%, #1a1031) !important; }
html[data-theme="night"] body.story-library-page .library-hero :is(h1, p, .library-back-link, .library-hero-points) { color: #eeeaff !important; }
html[data-theme="night"] body.story-library-page .library-hero :is(.eyebrow, h1 em, .library-hero-points i) { color: #ffd181 !important; }
html[data-theme="night"] body.story-library-page .library-catalog { background: radial-gradient(ellipse at 95% 0%, rgba(97, 68, 196, .16), transparent 37%), linear-gradient(125deg, #080e25, #101331 54%, #17102e) !important; }
html[data-theme="night"] body.story-library-page .library-next-step { background: linear-gradient(120deg, #0d1b35, #1b1536 55%, #25122f) !important; }
html[data-theme="night"] body.story-library-page .library-section-heading :is(h2, p) { color: #eeeaff !important; }
html[data-theme="night"] body.story-library-page .library-section-heading h2 em { color: #c5a4ff !important; }
html[data-theme="night"] body.story-library-page .library-filters { border-color: rgba(142, 122, 255, .3) !important; background: linear-gradient(145deg, #141b3a, #171531) !important; }
html[data-theme="night"] body.story-library-page .library-filter { color: #eeeaff !important; }
html[data-theme="night"] body.story-library-page .library-card { border-color: color-mix(in srgb, var(--card-accent) 44%, #342a66) !important; color: #f4f0ff !important; background: linear-gradient(145deg, color-mix(in srgb, var(--card-accent) 18%, #141a37), #15152f) !important; box-shadow: 0 14px 34px rgba(1, 3, 18, .34) !important; }
html[data-theme="night"] body.story-library-page .library-card :is(h3, summary, .library-card-category) { color: #eee4ff !important; }
html[data-theme="night"] body.story-library-page .library-card :is(p, li, .library-card-age, .library-card-teaser, .library-card-skill) { color: #d4d0e8 !important; }
html[data-theme="night"] body.story-library-page .library-card-symbol { background: color-mix(in srgb, var(--card-accent) 24%, #171932) !important; }
html[data-theme="night"] body.story-library-page .library-create-link { border-color: rgba(168, 146, 255, .40) !important; color: #f1eaff !important; background: #171a3c !important; }

/* Кабинет, передача и юридические страницы: тот же космос без ущерба длинному тексту. */
html[data-theme="night"] body.account-page { background: #06091b !important; color: #f3efff !important; }
html[data-theme="night"] body.account-page .account-hero { background: radial-gradient(ellipse at 86% 8%, rgba(99, 69, 206, .27), transparent 40%), radial-gradient(ellipse at 8% 100%, rgba(37, 102, 188, .19), transparent 43%), linear-gradient(120deg, #070b20, #101532 58%, #1a1031) !important; }
html[data-theme="night"] body.account-page .account-hero :is(h1, p) { color: #f3efff !important; }
html[data-theme="night"] body.account-page .account-content { background: radial-gradient(ellipse at 95% 10%, rgba(93, 70, 192, .15), transparent 37%), linear-gradient(125deg, #080e24, #101330 56%, #17112e) !important; }
html[data-theme="night"] body.account-page .account-hero h1 em { color: #d2b2ff !important; }
html[data-theme="night"] body.account-page .account-eyebrow,
html[data-theme="night"] body.account-page .demo-pill span { color: #ffd17c !important; }
html[data-theme="night"] body.account-page :is(.login-panel, .library-panel) { background: linear-gradient(145deg, #151c3c, #171431) !important; }
html[data-theme="night"] body.account-page :is(.login-panel h2, .library-heading h2) { color: #f4efff !important; }
html[data-theme="night"] body.account-page :is(.login-copy, #demoLoginForm label, .login-note, .library-heading p) { color: #d6d1e9 !important; }
html[data-theme="night"] body.account-page .demo-pill { border-color: rgba(255, 205, 116, .4) !important; color: #fff0ce !important; background: rgba(255, 198, 105, .08) !important; }
html[data-theme="night"] body.account-page .login-status { border-color: #f0b85e !important; color: #fff0d0 !important; background: #352b32 !important; }
html[data-theme="night"] body.legal-page { color: #f1edff !important; background: radial-gradient(ellipse at 0% 8%, rgba(93, 70, 190, .19), transparent 36rem), radial-gradient(ellipse at 100% 45%, rgba(194, 73, 147, .11), transparent 34rem), linear-gradient(135deg, #06091b, #10132e 54%, #17102e) !important; }
html[data-theme="night"] body.legal-page .legal-hero { background: radial-gradient(ellipse at 90% 8%, rgba(255, 186, 109, .13), transparent 42%), linear-gradient(120deg, #0d1531, #1b1436 60%, #17122f) !important; }
html[data-theme="night"] body.legal-page .legal-hero :is(h1, p) { color: #f2edff !important; }
html[data-theme="night"] body.legal-page .legal-hero .eyebrow { color: #ffd17c !important; }
html[data-theme="night"] body.legal-page .legal-document { border-color: rgba(146, 126, 245, .26) !important; color: #eae6f7 !important; background: linear-gradient(160deg, #111a38, #151532) !important; box-shadow: 0 20px 60px rgba(1, 3, 18, .34) !important; }
html[data-theme="night"] body.legal-page .legal-document :is(h2, strong) { color: #f5f0ff !important; }
html[data-theme="night"] body.legal-page .legal-document :is(p, li, address) { color: #d8d4e9 !important; }
html[data-theme="night"] body.legal-page .legal-document a { color: #cbb5ff !important; }
html[data-theme="night"] body.legal-page .legal-notice { border-color: rgba(255, 204, 116, .34) !important; color: #fff0d1 !important; background: linear-gradient(120deg, #33283a, #28223d) !important; }
html[data-theme="night"] body :is(.site-footer, .account-footer, .legal-footer) { border-color: rgba(144, 126, 235, .22) !important; color: #d9d5ec !important; background: linear-gradient(120deg, #06091b, #0d1129 54%, #17102a) !important; }
html[data-theme="night"] body :is(.site-footer, .account-footer, .legal-footer) :is(p, a, span, small) { color: #c9c4df !important; }
html[data-theme="night"] body :is(.site-footer, .account-footer, .legal-footer) .footer-brand { color: #f5f1ff !important; }
html[data-theme="day"] body :is(.site-footer, .account-footer, .legal-footer) { border-color: #ddd7f1 !important; color: #463a65 !important; background: linear-gradient(120deg, #f1edff, #f9eef8 55%, #edf5ff) !important; }
html[data-theme="night"] body .concept-banner { border-color: rgba(157, 135, 255, .26) !important; color: #eeeaff !important; background: linear-gradient(110deg, #111937, #1b1537) !important; }
html[data-theme="day"] body .concept-banner { border-color: #d5c9f2 !important; color: #473a69 !important; background: linear-gradient(110deg, #eeeaff, #fbedf5) !important; }

@media (prefers-reduced-motion: reduce) {
  html[data-theme] body :is(.site-header, .button-primary, .price-card, .library-card, .faq-item) { transition: none !important; }
}


/* Тарифы: три самостоятельные яркие цветовые семьи, без верхних поясняющих ярлыков. */
#price .price-card { position: relative; overflow: hidden; isolation: isolate; }
#price .price-card-top { justify-content: flex-end; }
#price .price-card-top > .tier-icon { border: 1px solid transparent; border-radius: 16px; font-size: 22px; }
#price .price-title { margin-top: 14px; }
html[data-theme="day"] body #price .price-card--sleepy { border-color: #eea7c4 !important; background: linear-gradient(145deg, #fff1f7, #ffe2ec 58%, #f9e9ff) !important; box-shadow: 0 18px 46px rgba(190, 77, 130, .16) !important; }
html[data-theme="day"] body #price .price-card--road { border-color: #8ecbe9 !important; background: linear-gradient(145deg, #e9f8ff, #d8edff 58%, #ebebff) !important; box-shadow: 0 18px 46px rgba(65, 123, 194, .16) !important; }
html[data-theme="day"] body #price .price-card--adventure { border-color: #b6a0ef !important; background: linear-gradient(145deg, #f2eaff, #e7ddff 58%, #fff0dc) !important; box-shadow: 0 18px 46px rgba(109, 77, 190, .17) !important; }
html[data-theme="night"] body #price .price-card--sleepy { border-color: rgba(236, 128, 190, .55) !important; background: radial-gradient(ellipse at 100% 0%, rgba(220, 90, 180, .24), transparent 40%), linear-gradient(145deg, #361c43, #211934 66%, #211d43) !important; box-shadow: 0 18px 48px rgba(125, 40, 124, .2), 0 0 28px rgba(219, 91, 181, .09) !important; }
html[data-theme="night"] body #price .price-card--road { border-color: rgba(104, 190, 244, .54) !important; background: radial-gradient(ellipse at 100% 0%, rgba(65, 157, 236, .24), transparent 40%), linear-gradient(145deg, #112c4b, #151b3d 68%, #20204a) !important; box-shadow: 0 18px 48px rgba(30, 93, 160, .2), 0 0 28px rgba(70, 167, 243, .09) !important; }
html[data-theme="night"] body #price .price-card--adventure { border-color: rgba(175, 142, 255, .58) !important; background: radial-gradient(ellipse at 100% 0%, rgba(139, 89, 236, .28), transparent 42%), linear-gradient(145deg, #2a1d4d, #1d1a3d 64%, #351b43) !important; box-shadow: 0 18px 48px rgba(82, 47, 162, .22), 0 0 28px rgba(134, 93, 240, .1) !important; }
html[data-theme="day"] body #price .price-card--sleepy :is(.price-title, .price-amount) { color: #43233f !important; }
html[data-theme="day"] body #price .price-card--road :is(.price-title, .price-amount) { color: #1d3552 !important; }
html[data-theme="day"] body #price .price-card--adventure :is(.price-title, .price-amount) { color: #392957 !important; }
html[data-theme="night"] body #price .price-card :is(.price-title, .price-amount) { color: #f8f3ff !important; }
html[data-theme="night"] body #price .price-card .price-amount > span { color: #ffcf83 !important; }
html[data-theme="day"] body #price .price-card--sleepy .tier-icon { border-color: #e89abe; color: #8e3269; background: #ffd9e9; }
html[data-theme="day"] body #price .price-card--road .tier-icon { border-color: #8ecbe9; color: #285d91; background: #c9edff; }
html[data-theme="day"] body #price .price-card--adventure .tier-icon { border-color: #b6a0ef; color: #6342a1; background: #e3d5ff; }
html[data-theme="night"] body #price .price-card--sleepy .tier-icon { border-color: rgba(243, 138, 201, .4); color: #ffc3e3; background: rgba(201, 71, 154, .23); }
html[data-theme="night"] body #price .price-card--road .tier-icon { border-color: rgba(117, 201, 255, .42); color: #b9e6ff; background: rgba(61, 146, 226, .23); }
html[data-theme="night"] body #price .price-card--adventure .tier-icon { border-color: rgba(191, 163, 255, .45); color: #e0d0ff; background: rgba(132, 88, 221, .26); }
html[data-theme="day"] body #price .price-card--sleepy .price-features li > span { color: #a63d76; }
html[data-theme="day"] body #price .price-card--road .price-features li > span { color: #2775ac; }
html[data-theme="day"] body #price .price-card--adventure .price-features li > span { color: #6b4abb; }
html[data-theme="night"] body #price .price-card--sleepy .price-features li > span { color: #ffabd7; }
html[data-theme="night"] body #price .price-card--road .price-features li > span { color: #8dd8ff; }
html[data-theme="night"] body #price .price-card--adventure .price-features li > span { color: #d0b5ff; }
#price .price-card--sleepy .button-primary { background: linear-gradient(115deg, #e987b8, #d764a7) !important; color: #341e35 !important; box-shadow: 0 9px 22px rgba(190, 77, 130, .24) !important; }
#price .price-card--road .button-primary { background: linear-gradient(115deg, #78c9ed, #5aa7dc) !important; color: #102b44 !important; box-shadow: 0 9px 22px rgba(65, 123, 194, .24) !important; }
#price .price-card--adventure .button-primary { background: linear-gradient(115deg, #9872e7, #7855ca) !important; color: #fff !important; box-shadow: 0 9px 22px rgba(109, 77, 190, .25) !important; }


/* Не обрезать клавиатурный focus-ring и держать текст тарифов контрастным в ночном режиме. */
#price .price-card { overflow: visible; isolation: auto; }
html[data-theme="night"] body #price .price-card .price-features li { color: #eee9fb !important; }
html[data-theme="night"] body #price .price-card .price-small { color: #d7d1e8 !important; }
#price .price-card--adventure .button-primary { background: linear-gradient(115deg, #704bbf, #5c3da6) !important; color: #fff !important; }


/* Дневной вариант той же космической палитры: лунный голубой, лаванда, розовый и мягкое золото. */
html[data-theme="day"] body.story-library-page {
  --library-ink: #30264d;
  --library-muted: #5d5678;
  --library-paper: #f0f3ff;
  --library-line: #d1c9ef;
  color: #332a50 !important;
  background: radial-gradient(ellipse at 6% 4%, rgba(159, 179, 255, .24), transparent 34rem), radial-gradient(ellipse at 94% 24%, rgba(210, 164, 255, .18), transparent 32rem), linear-gradient(135deg, #eef2ff, #f1edff 54%, #e9f4ff) !important;
}
html[data-theme="day"] body.story-library-page .library-hero {
  color: #332a50 !important;
  border-color: rgba(131, 115, 210, .22) !important;
  background: radial-gradient(ellipse at 88% 8%, rgba(255, 199, 139, .30), transparent 38%), radial-gradient(ellipse at 9% 88%, rgba(124, 153, 255, .20), transparent 40%), linear-gradient(120deg, #e9edff, #f2eaff 55%, #e8f4ff) !important;
}
html[data-theme="day"] body.story-library-page .library-hero :is(h1, p, .library-back-link, .library-hero-points) { color: #3a3059 !important; }
html[data-theme="day"] body.story-library-page .library-hero :is(.eyebrow, h1 em, .library-hero-points i) { color: #6748bf !important; }
html[data-theme="day"] body.story-library-page .library-catalog {
  background: radial-gradient(ellipse at 5% 0%, rgba(128, 155, 255, .18), transparent 36%), radial-gradient(ellipse at 94% 6%, rgba(215, 159, 233, .17), transparent 34%), linear-gradient(125deg, #f0f4ff, #f2edff 52%, #eaf5ff) !important;
}
html[data-theme="day"] body.story-library-page .library-filters { border-color: #d4c9f1 !important; background: linear-gradient(140deg, #fbfaff, #f1f1ff) !important; }
html[data-theme="day"] body.story-library-page .library-card { border-color: color-mix(in srgb, var(--card-accent) 42%, #d8d1f1) !important; box-shadow: 0 14px 32px rgba(75, 69, 145, .10) !important; }
html[data-theme="day"] body.story-library-page .library-next-step { background: linear-gradient(120deg, #e5eaff, #f0e8ff 55%, #e4f3ff) !important; }

/* Кабинет, формы и страницы документов — прохладная лунная основа с тёплыми искрами. */
html[data-theme="day"] body.account-page {
  color: #34294f !important;
  background: radial-gradient(ellipse at 4% 5%, rgba(123, 151, 255, .18), transparent 34rem), radial-gradient(ellipse at 96% 26%, rgba(216, 154, 232, .15), transparent 33rem), linear-gradient(135deg, #eff2ff, #f3edff 56%, #edf6ff) !important;
}
html[data-theme="day"] body.account-page .account-hero {
  border-color: rgba(129, 113, 207, .22) !important;
  background: radial-gradient(ellipse at 90% 4%, rgba(255, 201, 138, .28), transparent 39%), linear-gradient(120deg, #e9edff, #f2eaff 57%, #e8f4ff) !important;
}
html[data-theme="day"] body.account-page .account-hero :is(h1, p, .account-eyebrow) { color: #3b315b !important; }
html[data-theme="day"] body.account-page .account-hero h1 em { color: #7753c9 !important; }
html[data-theme="day"] body.account-page .account-content { background: linear-gradient(125deg, #f0f3ff, #f4efff 54%, #ecf6ff) !important; }
html[data-theme="day"] body.account-page :is(.login-panel, .library-panel, .share-story-panel) {
  border-color: #d6ccef !important;
  color: #392f58 !important;
  background: linear-gradient(145deg, rgba(255,255,255,.97), rgba(245,242,255,.96) 58%, rgba(238,247,255,.96)) !important;
  box-shadow: 0 18px 44px rgba(79, 67, 149, .11) !important;
}
html[data-theme="day"] body.account-page :is(.login-panel h2, .library-heading h2) { color: #382c58 !important; }
html[data-theme="day"] body.account-page :is(.login-copy, #demoLoginForm label, .login-note, .library-heading p, .share-story-panel p) { color: #5b5276 !important; }
html[data-theme="day"] body.account-page .demo-pill { border-color: #e9c36f !important; color: #5e4521 !important; background: linear-gradient(120deg, #fff2ce, #fff7e8) !important; }
html[data-theme="day"] body.legal-page {
  color: #3a3055 !important;
  background: radial-gradient(ellipse at 0% 8%, rgba(122, 151, 255, .17), transparent 36rem), radial-gradient(ellipse at 100% 45%, rgba(207, 145, 231, .16), transparent 34rem), linear-gradient(135deg, #eff2ff, #f4efff 54%, #edf6ff) !important;
}
html[data-theme="day"] body.legal-page .legal-hero {
  border-color: rgba(135, 116, 210, .22) !important;
  background: radial-gradient(ellipse at 91% 8%, rgba(255, 205, 140, .33), transparent 42%), linear-gradient(120deg, #e9edff, #f4eaff 57%, #e8f4ff) !important;
}
html[data-theme="day"] body.legal-page .legal-hero :is(h1, p) { color: #372d54 !important; }
html[data-theme="day"] body.legal-page .legal-hero .eyebrow { color: #6748b8 !important; }
html[data-theme="day"] body.legal-page .legal-document {
  border-color: #d8d0ed !important;
  color: #3d3359 !important;
  background: linear-gradient(160deg, #fff, #f9f7ff 58%, #f2f7ff) !important;
  box-shadow: 0 20px 56px rgba(76, 67, 136, .10) !important;
}
html[data-theme="day"] body.legal-page .legal-document :is(h2, strong) { color: #33284e !important; }
html[data-theme="day"] body.legal-page .legal-document :is(p, li, address) { color: #5d5475 !important; }
html[data-theme="day"] body.legal-page .legal-document a { color: #5540ad !important; }
html[data-theme="day"] body.legal-page .legal-notice { border-color: #e8c77a !important; color: #564321 !important; background: linear-gradient(120deg, #fff4d8, #fff8ea) !important; }

/* Альтернативный hero тоже остаётся читаемым на тёмном космическом фоне. */
html[data-theme] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy :is(h1, p, .hero-trust, .trust-note, .text-link) { color: #f7f3ff !important; }
html[data-theme] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy h1 em { color: #d9b7ff !important; }
html[data-theme] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy > .eyebrow { color: #ffd58a !important; }
html[data-theme] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy .text-link:hover { color: #ffd58a !important; }


/* Day mode follows the latest supplied reference: bright sky, crisp white surfaces and joyful story colors. */
html[data-theme="day"] body {
  color: #17335f !important;
  background-color: #edf7ff !important;
}
html[data-theme="day"] body .site-header {
  background: rgba(255, 255, 255, .97) !important;
  border-bottom: 1px solid rgba(96, 150, 206, .22) !important;
  box-shadow: 0 8px 28px rgba(56, 104, 157, .09) !important;
}
html[data-theme="day"] body .main-nav a { color: #18376c !important; }
html[data-theme="day"] body .main-nav a:is(:hover, [aria-current="page"]) {
  color: #6145c3 !important;
  background: #f0edff !important;
}
html[data-theme="day"] body #top.hero {
  color: #142f64 !important;
  background:
    radial-gradient(ellipse at 79% 12%, rgba(255, 255, 255, .86), transparent 34%),
    radial-gradient(ellipse at 4% 8%, rgba(87, 188, 255, .22), transparent 38%),
    radial-gradient(ellipse at 99% 94%, rgba(171, 143, 255, .16), transparent 39%),
    linear-gradient(115deg, #dff4ff 0%, #eaf7ff 52%, #f2f0ff 100%) !important;
}
html[data-theme="day"] body #top.hero .hero-copy :is(h1, p, .hero-trust, .trust-note, .text-link) { color: #17335f !important; }
html[data-theme="day"] body #top.hero .hero-copy .hero-trust .trust-note { color: #244878 !important; }
html[data-theme="day"] body #top.hero .hero-copy .hero-actions .text-link { color: #30528a !important; }
html[data-theme="day"] body #top.hero .hero-copy h1 em { color: #684bd4 !important; }
html[data-theme="day"] body #top.hero .hero-copy > .eyebrow {
  color: #5c48b7 !important;
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
html[data-theme="day"] body #top.hero .hero-actions .button-primary {
  color: #fff !important;
  background: linear-gradient(105deg, #755bff 0%, #a34edc 59%, #f49a43 100%) !important;
  box-shadow: 0 12px 28px rgba(95, 77, 204, .25) !important;
}
html[data-theme="day"] body #top.hero .hero-actions .text-link { color: #30528a !important; }
html[data-theme="day"] body #top.hero::before {
  background: radial-gradient(circle, rgba(255, 255, 255, .78), rgba(112, 199, 255, .17) 46%, transparent 76%) !important;
}
html[data-theme="day"] body #top.hero .hero-ambient {
  background: radial-gradient(circle, rgba(151, 130, 255, .18), rgba(255, 193, 123, .10) 52%, transparent 72%) !important;
}
html[data-theme="day"] body #top.hero .hero-art {
  background: transparent !important;
  box-shadow: 0 24px 64px rgba(48, 106, 166, .18), 0 0 0 1px rgba(255, 255, 255, .92), 0 0 0 9px rgba(255, 255, 255, .34) !important;
}
html[data-theme="day"] body:not(.concept-night):not(.concept-workshop):not(.story-library-page):not(.account-page) #top.hero .hero-art::before {
  background: linear-gradient(90deg, rgba(223, 244, 255, .98) 0%, rgba(223, 244, 255, .91) 28%, rgba(223, 244, 255, .56) 48%, rgba(223, 244, 255, .06) 72%, transparent 100%) !important;
}
@media (max-width: 760px) {
  html[data-theme="day"] body:not(.concept-night):not(.concept-workshop):not(.story-library-page):not(.account-page) #top.hero .hero-art::before {
    background: linear-gradient(180deg, rgba(223, 244, 255, .88) 0%, rgba(223, 244, 255, .84) 32%, rgba(223, 244, 255, .70) 49%, rgba(223, 244, 255, .91) 62%, #eaf7ff 78%, #eaf7ff 100%) !important;
  }
}
html[data-theme="day"] body #magic.why { background: linear-gradient(118deg, #e9f7ff 0%, #eff4ff 54%, #fff 100%) !important; }
html[data-theme="day"] body #categories.categories { background: linear-gradient(118deg, #e6f5ff 0%, #f4f1ff 54%, #fff4e9 100%) !important; }
html[data-theme="day"] body #how.how { background: linear-gradient(118deg, #f4fbff 0%, #eaf4ff 56%, #fff5e9 100%) !important; }
html[data-theme="day"] body #create.builder { background: linear-gradient(118deg, #f1edff 0%, #eaf5ff 55%, #fff 100%) !important; }
html[data-theme="day"] body #listen.listen { background: linear-gradient(118deg, #e9f6ff 0%, #f2efff 55%, #fff 100%) !important; }
html[data-theme="day"] body #price.pricing { background: linear-gradient(118deg, #e8f6ff 0%, #f2f0ff 52%, #fff4e9 100%) !important; }
html[data-theme="day"] body :is(#faq.faq, .faq) { background: linear-gradient(118deg, #f3faff 0%, #eef3ff 54%, #fff 100%) !important; }
html[data-theme="day"] body .site-footer {
  color: #29436f !important;
  border-top: 1px solid #d6e5f5 !important;
  background: linear-gradient(118deg, #e5f4ff 0%, #f1efff 58%, #fff5eb 100%) !important;
}
html[data-theme="day"] body .site-footer :is(h2, h3, p, a) { color: #29436f !important; }
html[data-theme="day"] body.story-library-page {
  color: #17335f !important;
  background: radial-gradient(ellipse at 8% 6%, rgba(84, 185, 255, .18), transparent 35rem), radial-gradient(ellipse at 94% 24%, rgba(174, 148, 255, .16), transparent 33rem), linear-gradient(135deg, #eaf7ff, #f2f5ff 56%, #fff) !important;
}
html[data-theme="day"] body.account-page {
  color: #17335f !important;
  background: radial-gradient(ellipse at 4% 6%, rgba(84, 185, 255, .16), transparent 34rem), radial-gradient(ellipse at 96% 26%, rgba(174, 148, 255, .14), transparent 33rem), linear-gradient(135deg, #eaf7ff, #f2f5ff 56%, #fff) !important;
}
html[data-theme="day"] body.account-page .account-hero { background: linear-gradient(120deg, #e0f4ff, #edf4ff 58%, #f4efff) !important; }
html[data-theme="day"] body.legal-page {
  color: #17335f !important;
  background: radial-gradient(ellipse at 0% 8%, rgba(84, 185, 255, .16), transparent 36rem), radial-gradient(ellipse at 100% 45%, rgba(174, 148, 255, .14), transparent 34rem), linear-gradient(135deg, #eaf7ff, #f3f5ff 56%, #fff) !important;
}
html[data-theme="day"] body.legal-page .legal-hero { background: linear-gradient(120deg, #e0f4ff, #edf3ff 58%, #f5efff) !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy :is(h1, p, .hero-trust, .trust-note, .text-link) { color: #17335f !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy h1 em { color: #684bd4 !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy > .eyebrow { color: #5c48b7 !important; }


/* Fresh FAQ treatment: centered editorial header and roomy answer cards. */
#faq.faq {
  position: relative;
  overflow: hidden;
  padding-block: clamp(64px, 8vw, 104px) !important;
}

html[data-theme="day"] body #faq.faq {
  color: #17335f !important;
  background:
    radial-gradient(ellipse at 9% 0%, rgba(96, 193, 255, .2), transparent 35rem),
    radial-gradient(ellipse at 94% 28%, rgba(156, 137, 255, .18), transparent 32rem),
    linear-gradient(130deg, #eaf7ff 0%, #f3f2ff 53%, #fff 100%) !important;
}

html[data-theme="night"] body #faq.faq {
  color: #f2efff !important;
  background:
    radial-gradient(ellipse at 8% 0%, rgba(48, 90, 180, .23), transparent 34rem),
    radial-gradient(ellipse at 94% 22%, rgba(105, 62, 175, .2), transparent 30rem),
    linear-gradient(132deg, #080e28 0%, #101632 54%, #17122d 100%) !important;
}

#faq .faq-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(28px, 4vw, 42px);
  align-items: start;
}

#faq .faq-title {
  display: flex;
  width: min(100%, 760px);
  flex-direction: column;
  align-items: center;
  margin: 0 auto;
  text-align: center;
}

#faq .faq-title > .eyebrow {
  margin-bottom: 10px;
  color: #5c48b7;
  font-size: 12px;
  letter-spacing: .16em;
}

html[data-theme="night"] body #faq .faq-title > .eyebrow {
  color: #c9b9ff;
}

#faq .faq-title h2 {
  margin: 0 0 14px;
  color: #17335f;
  font-size: clamp(36px, 4.5vw, 54px);
  line-height: 1.08;
}

html[data-theme="night"] body #faq .faq-title h2 {
  color: #f4f0ff;
}

#faq .faq-title h2 em {
  color: #684bd4;
}

html[data-theme="night"] body #faq .faq-title h2 em {
  color: #c0a4ff;
}

#faq .faq-title > p {
  max-width: 600px;
  margin: 0 auto 14px;
  color: #536985;
  font-size: 16px;
  line-height: 1.65;
}

html[data-theme="night"] body #faq .faq-title > p {
  color: #c5cbe0;
}

#faq .faq-title > .text-link {
  color: #5843bd;
  font-size: 15px;
  font-weight: 800;
}

html[data-theme="night"] body #faq .faq-title > .text-link {
  color: #d3baff;
}

#faq .faq-list {
  display: grid !important;
  width: min(100%, 1080px);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: 14px;
  margin: 0 auto;
}

#faq .faq-item {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  overflow: hidden;
  padding: 22px;
  border: 1px solid rgba(99, 119, 170, .18);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(255,255,255,.97), rgba(247,250,255,.95));
  box-shadow: 0 12px 30px rgba(36, 56, 103, .075);
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

#faq .faq-item:first-child {
  grid-column: 1 / -1;
}

#faq .faq-item:hover {
  border-color: rgba(104, 75, 212, .36);
  box-shadow: 0 16px 34px rgba(36, 56, 103, .11);
  transform: translateY(-1px);
}

html[data-theme="night"] body #faq .faq-item {
  border-color: rgba(160, 149, 221, .22);
  background: linear-gradient(135deg, rgba(20,29,62,.98), rgba(25,25,55,.97));
  box-shadow: 0 16px 36px rgba(0, 0, 0, .22);
}

html[data-theme="night"] body #faq .faq-item:hover {
  border-color: rgba(186, 164, 255, .48);
}

#faq .faq-question {
  margin: 0;
  color: #203b68;
  font-family: var(--display);
  font-size: clamp(16px, 1.35vw, 19px);
  font-weight: 850;
  line-height: 1.4;
}

html[data-theme="night"] body #faq .faq-question {
  color: #f1edff !important;
}

#faq .faq-item > p {
  max-width: 880px;
  margin: 0;
  padding: 0;
  color: #586d89;
  font-size: 15px;
  line-height: 1.7;
}

html[data-theme="night"] body #faq .faq-item > p {
  color: #d9d5ec !important;
}

@media (max-width: 720px) {
  #faq.faq {
    padding-block: 56px !important;
  }

  #faq .faq-layout {
    gap: 25px;
  }

  #faq .faq-title h2 {
    font-size: clamp(33px, 9vw, 42px);
  }

  #faq .faq-title > p {
    max-width: 34rem;
    font-size: 15px;
  }

  #faq .faq-list {
    grid-template-columns: minmax(0, 1fr);
    gap: 11px;
  }

  #faq .faq-item:first-child {
    grid-column: auto;
  }

  #faq .faq-item {
    padding: 19px 17px;
    border-radius: 17px;
  }

  #faq .faq-question {
    font-size: 16px;
  }

  #faq .faq-item > p {
    font-size: 14px;
    line-height: 1.65;
  }
}

@media (prefers-reduced-motion: reduce) {
  #faq .faq-item {
    transition: none;
  }
}


/* Keep the minutes label clean and aligned uniformly across all tariff cards. */
html[data-theme="day"] body #price .price-card .price-duration {
  color: #284a73 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}

html[data-theme="night"] body #price .price-card .price-duration {
  color: #eee9ff !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}


/* Exact bright sky-blue correction from the supplied light mockup (sampled sky ~#69C6FD). */
html[data-theme="day"] body {
  --cream: #f5fbff;
  --paper: #ffffff;
  --ink: #17335f;
  --muted: #4b6682;
  --plum: #1677c8;
  --plum-deep: #105f9f;
  --lavender: #eaf6ff;
  --pink: #e7f5ff;
  --blush: #e1f3ff;
  --gold: #9d6818;
  --line: rgba(22, 119, 200, .2);
  color: #17335f !important;
  background: linear-gradient(135deg, #f3f9ff 0%, #ffffff 58%, #edf7ff 100%) !important;
}
html[data-theme="day"] body .site-header {
  border-color: rgba(22, 119, 200, .2) !important;
  background: rgba(255, 255, 255, .98) !important;
  box-shadow: 0 8px 28px rgba(31, 104, 161, .1) !important;
}
html[data-theme="day"] body :is(.main-nav a, .mobile-nav a) { color: #173b68 !important; }
html[data-theme="day"] body :is(.main-nav a:hover, .main-nav a[aria-current="page"], .mobile-nav a:hover) {
  color: #126db8 !important;
  background: #e4f4ff !important;
}
html[data-theme="day"] body .site-theme-toggle {
  border-color: #9bd7f4 !important;
  color: #155e9a !important;
  background: linear-gradient(120deg, #e7f6ff, #f8fcff) !important;
}
html[data-theme="day"] body .brand { color: #123766 !important; }

/* Keep the day hero on one even sky-blue surface; color belongs in the illustration. */
html[data-theme="day"] body #top.hero {
  color: #17335f !important;
  background: #eaf6ff !important;
  background-image: none !important;
}
html[data-theme="day"] body #top.hero .hero-copy :is(h1, p, .hero-trust, .trust-note, .text-link) { color: #17335f !important; }
html[data-theme="day"] body #top.hero .hero-copy h1 em { color: #1677c8 !important; }
html[data-theme="day"] body #top.hero .hero-copy > .eyebrow { color: #126db8 !important; }
html[data-theme="day"] body #top.hero .hero-copy .hero-trust .trust-note { color: #244b73 !important; }
html[data-theme="day"] body #top.hero .hero-actions .text-link { color: #126db8 !important; }
html[data-theme="day"] body #top.hero::before {
  background: none !important;
  opacity: 0 !important;
}
html[data-theme="day"] body #top.hero .hero-ambient {
  background: none !important;
  opacity: 0 !important;
}
html[data-theme="day"] body #top.hero .hero-art {
  box-shadow: 0 24px 64px rgba(23, 103, 164, .2), 0 0 0 1px rgba(255, 255, 255, .88), 0 0 0 8px rgba(105, 198, 253, .14) !important;
}
/* Alternate sections stay crisp white/light-blue; color lives in the sky and story cards. */
html[data-theme="day"] body #magic.why { background: linear-gradient(118deg, #f1f9ff 0%, #ffffff 60%, #eaf6ff 100%) !important; }
html[data-theme="day"] body #categories.categories { background: linear-gradient(118deg, #eaf6ff 0%, #f6fbff 56%, #ffffff 100%) !important; }
html[data-theme="day"] body #how.how { background: linear-gradient(118deg, #ffffff 0%, #f1f9ff 58%, #eaf6ff 100%) !important; }
html[data-theme="day"] body #create.builder { background: linear-gradient(118deg, #dff2ff 0%, #eff8ff 54%, #ffffff 100%) !important; }
html[data-theme="day"] body #listen.listen { background: linear-gradient(118deg, #eaf6ff 0%, #f7fbff 58%, #ffffff 100%) !important; }
html[data-theme="day"] body #reviews.reviews { background: linear-gradient(118deg, #ffffff 0%, #f4faff 60%, #eaf6ff 100%) !important; }
html[data-theme="day"] body #price.pricing { background: linear-gradient(118deg, #e9f5ff 0%, #f7fbff 55%, #ffffff 100%) !important; }
html[data-theme="day"] body :is(#faq.faq, .faq) { background: linear-gradient(118deg, #e4f4ff 0%, #f2f9ff 56%, #ffffff 100%) !important; }
html[data-theme="day"] body :is(.section-heading h2, .heading-split h2, .listen-copy h2, .pricing-copy h2, .builder-heading h2, .faq-title h2) { color: #17335f !important; }
html[data-theme="day"] body :is(.section-heading h2 em, .heading-split h2 em, .listen-copy h2 em, .pricing-copy h2 em, .builder-heading h2 em, .faq-title h2 em) { color: #1677c8 !important; }
html[data-theme="day"] body :is(.section-heading > p, .heading-split > p, .listen-copy > p, .pricing-copy > p, .builder-heading > p, .faq-title > p) { color: #4b6682 !important; }
html[data-theme="day"] body :is(input:not([type="checkbox"]), select, textarea) {
  border-color: #acd8ef !important;
  color: #17335f !important;
  background: #ffffff !important;
}
html[data-theme="day"] body :is(input:not([type="checkbox"]), select, textarea):focus {
  border-color: #258fd5 !important;
  box-shadow: 0 0 0 3px rgba(105, 198, 253, .2) !important;
}
html[data-theme="day"] body .site-footer {
  color: #294b70 !important;
  border-top-color: #c9e5f6 !important;
  background: linear-gradient(118deg, #e4f3ff 0%, #f5faff 58%, #ffffff 100%) !important;
}
html[data-theme="day"] body .site-footer :is(h2, h3, p, a) { color: #294b70 !important; }

/* Pricing cards keep three distinct families; the road tariff is unmistakably sky-blue. */
html[data-theme="day"] body #price .price-card--sleepy { border-color: #de79a9 !important; background: linear-gradient(145deg, #ffe2ee, #ffc6de 58%, #f4d9ff) !important; box-shadow: 0 18px 46px rgba(190, 77, 130, .18) !important; }
html[data-theme="day"] body #price .price-card--road { border-color: #2f95cb !important; background: linear-gradient(145deg, #b5e5ff, #74cafd 58%, #c7efff) !important; box-shadow: 0 18px 46px rgba(39, 128, 186, .24) !important; }
html[data-theme="day"] body #price .price-card--adventure { border-color: #896bd4 !important; background: linear-gradient(145deg, #d8cdff, #baa4ff 58%, #ffe0a6) !important; box-shadow: 0 18px 46px rgba(109, 77, 190, .18) !important; }
html[data-theme="day"] body #price .price-card :is(.price-title, .price-amount) { color: #17335f !important; }
html[data-theme="day"] body #price .price-card .price-duration { color: #155b94 !important; }
html[data-theme="day"] body #price .price-card--road .tier-icon { border-color: #55afe3 !important; color: #145c91 !important; background: #8ed8fa !important; }
html[data-theme="day"] body #price .price-card--road .price-features li > span { color: #126db8 !important; }
html[data-theme="day"] body #price .price-card--road .button-primary { color: #ffffff !important; background: linear-gradient(110deg, #1677c8, #258fd5) !important; box-shadow: 0 9px 22px rgba(22, 119, 200, .25) !important; }
html[data-theme="day"] body #price .price-card--sleepy .button-primary { color: #ffffff !important; background: linear-gradient(110deg, #dd6b9e, #bd528f) !important; }
html[data-theme="day"] body #price .price-card--adventure .button-primary { color: #ffffff !important; background: linear-gradient(110deg, #7956d8, #5d43b8) !important; }

/* Other routes: blue-white paper, navy text and a visible sky-blue hero. */
html[data-theme="day"] body.account-page {
  color: #17335f !important;
  background: radial-gradient(ellipse at 5% 4%, rgba(105, 198, 253, .2), transparent 34rem), linear-gradient(135deg, #f0f8ff, #ffffff 58%, #eaf6ff) !important;
}
html[data-theme="day"] body.account-page .account-hero {
  border-color: rgba(22, 119, 200, .24) !important;
  background: linear-gradient(118deg, #69c6fd 0%, #bfe9ff 52%, #f2faff 100%) !important;
}
html[data-theme="day"] body.account-page .account-hero :is(h1, p, .account-eyebrow) { color: #17335f !important; }
html[data-theme="day"] body.account-page .account-hero h1 em { color: #126db8 !important; }
html[data-theme="day"] body.account-page .account-content { background: linear-gradient(125deg, #eaf6ff, #f7fbff 56%, #ffffff) !important; }
html[data-theme="day"] body.account-page :is(.login-panel, .library-panel, .share-story-panel) {
  border-color: #c6e4f5 !important;
  color: #17335f !important;
  background: #ffffff !important;
  box-shadow: 0 18px 44px rgba(34, 107, 159, .1) !important;
}
html[data-theme="day"] body.account-page :is(.login-panel h2, .library-heading h2) { color: #17335f !important; }
html[data-theme="day"] body.account-page :is(.login-copy, #demoLoginForm label, .login-note, .library-heading p, .share-story-panel p) { color: #4b6682 !important; }
html[data-theme="day"] body.story-library-page { color: #17335f !important; }
html[data-theme="day"] body.legal-page {
  color: #17335f !important;
  background: radial-gradient(ellipse at 5% 8%, rgba(105, 198, 253, .16), transparent 36rem), linear-gradient(135deg, #f1f9ff, #ffffff 58%, #eaf6ff) !important;
}
html[data-theme="day"] body.legal-page .legal-hero {
  border-color: #b9e1f5 !important;
  background: linear-gradient(118deg, #69c6fd 0%, #c7edff 54%, #f4fbff 100%) !important;
}
html[data-theme="day"] body.legal-page .legal-hero :is(h1, p) { color: #17335f !important; }
html[data-theme="day"] body.legal-page .legal-hero .eyebrow { color: #126db8 !important; }
html[data-theme="day"] body.legal-page .legal-document {
  border-color: #c6e4f5 !important;
  color: #334f6e !important;
  background: #ffffff !important;
  box-shadow: 0 20px 56px rgba(34, 107, 159, .09) !important;
}
html[data-theme="day"] body.legal-page .legal-document :is(h2, strong) { color: #17335f !important; }
html[data-theme="day"] body.legal-page .legal-document :is(p, li, address) { color: #4b6682 !important; }
html[data-theme="day"] body.legal-page .legal-document a { color: #126db8 !important; }
html[data-theme="day"] body.share-page { color: #17335f !important; background: linear-gradient(135deg, #f1f9ff, #ffffff 58%, #eaf6ff) !important; }
html[data-theme="day"] body.share-page .share-story-panel { border-color: #c6e4f5 !important; background: linear-gradient(145deg, #ffffff, #eef8ff) !important; }

/* На странице передачи ночной градиент непрерывен под шапкой и карточкой. */
html[data-theme="night"] body.account-page.share-page {
  background: linear-gradient(135deg, #0c142d 0%, #14152f 58%, #0c1d30 100%) !important;
}
html[data-theme="night"] body.account-page.share-page :is(.account-hero, .account-content) {
  background: transparent !important;
}

/* Ошибка проверки сессии показана отдельно от выключенной формы входа. */
html[data-theme="day"] body.account-page .auth-check-status.is-unavailable {
  border-left-color: #1677c8 !important;
  color: #17335f !important;
  background: linear-gradient(115deg, #eaf6ff, #f7fbff) !important;
}
html[data-theme="night"] body.account-page .auth-check-status.is-unavailable {
  border-left-color: #9fb8ff !important;
  color: #eeeaff !important;
  background: linear-gradient(115deg, #202c49, #24233f) !important;
}

/* The two alternate concepts also follow the selected bright day theme. */
html[data-theme="day"] body:is(.concept-night, .concept-workshop) {
  --cream: #f4faff;
  --paper: #ffffff;
  --ink: #17335f;
  --muted: #4b6682;
  --line: rgba(22, 119, 200, .2);
  color: #17335f !important;
  background: linear-gradient(135deg, #eff8ff, #ffffff 58%, #e8f6ff) !important;
}
html[data-theme="day"] body:is(.concept-night, .concept-workshop) :is(.site-header, .mobile-nav) {
  border-color: #c4e3f4 !important;
  color: #17335f !important;
  background: rgba(255, 255, 255, .98) !important;
}
html[data-theme="day"] body:is(.concept-night, .concept-workshop) :is(.brand, .main-nav a, .mobile-nav a) { color: #173b68 !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .concept-banner { border-color: #b9e1f5 !important; color: #185282 !important; background: linear-gradient(110deg, #e5f5ff, #ffffff) !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #top.hero {
  color: #17335f !important;
  background: linear-gradient(118deg, #69c6fd 0%, #c7edff 54%, #f5fbff 100%) !important;
}
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy :is(h1, p, .hero-trust, .trust-note, .text-link, .hero-trust strong) { color: #17335f !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy h1 em { color: #126db8 !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) #top.hero .hero-copy > .eyebrow { color: #126db8 !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .hero-art::before { background: linear-gradient(90deg, rgba(105, 198, 253, .36) 0%, rgba(105, 198, 253, .26) 28%, rgba(105, 198, 253, .12) 48%, rgba(105, 198, 253, .03) 70%, transparent 88%) !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) :is(.why, .how, .listen, .reviews, .pricing, .builder, .faq, .quote-section) {
  border-color: #c6e4f5 !important;
  color: #17335f !important;
  background: linear-gradient(118deg, #eaf6ff 0%, #f7fbff 56%, #ffffff 100%) !important;
}
html[data-theme="day"] body:is(.concept-night, .concept-workshop) :is(.section-heading h2, .heading-split h2, .listen-copy h2, .pricing-copy h2, .builder-heading h2, .faq-title h2, .quote-inner blockquote) { color: #17335f !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) :is(.section-heading h2 em, .listen-copy h2 em, .pricing-copy h2 em, .builder-heading h2 em, .faq-title h2 em, .quote-inner blockquote em) { color: #1677c8 !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) :is(.section-heading > p, .benefit-card p, .heading-split > p, .step-card p, .listen-copy p, .faq-title > p, .faq-item > p, .pricing-copy > p, .price-perk, .reviews-note) { color: #4b6682 !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) :is(.benefit-card, .step-card, .review-card, .faq-item, .price-card, .player-scene, .floating-card) {
  border-color: #c6e4f5 !important;
  color: #17335f !important;
  background: linear-gradient(145deg, #ffffff, #eff8ff) !important;
  box-shadow: 0 14px 34px rgba(34, 107, 159, .09) !important;
}
html[data-theme="day"] body:is(.concept-night, .concept-workshop) :is(.review-cream, .review-lilac, .review-pink) { background: linear-gradient(145deg, #ffffff, #eaf6ff) !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .price-amount { color: #17335f !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .price-amount > span { color: #126db8 !important; }
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .button-primary {
  border-color: transparent !important;
  color: #ffffff !important;
  background: linear-gradient(105deg, #1677c8, #38a5e8) !important;
  box-shadow: 0 10px 26px rgba(22, 119, 200, .22) !important;
}
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .site-footer {
  border-color: #c6e4f5 !important;
  color: #294b70 !important;
  background: linear-gradient(118deg, #e4f3ff, #f7fbff 60%, #ffffff) !important;
}
html[data-theme="day"] body:is(.concept-night, .concept-workshop) .footer-brand { color: #17335f !important; }

/* FAQ cards stay fully visible and use one uniform edge, never colored left bars. */
#faq .faq-item::before, #faq .faq-item::after { display: none !important; }
html[data-theme="day"] body #faq .faq-item,
html[data-theme="day"] body #faq .faq-item:nth-child(n) {
  border: 1px solid #c6e4f5 !important;
  border-left: 1px solid #c6e4f5 !important;
  background: linear-gradient(135deg, #ffffff, #eef8ff) !important;
  box-shadow: 0 12px 30px rgba(34, 107, 159, .08) !important;
}
html[data-theme="night"] body #faq .faq-item,
html[data-theme="night"] body #faq .faq-item:nth-child(n) {
  border: 1px solid rgba(160, 180, 220, .24) !important;
  border-left: 1px solid rgba(160, 180, 220, .24) !important;
}


/* Blend the hero illustration with the same light-blue tone, without visible shade bands. */
html[data-theme="day"] body:not(.concept-night):not(.concept-workshop):not(.story-library-page):not(.account-page) #top.hero .hero-art::before {
  background: linear-gradient(90deg, #eaf6ff 0%, #eaf6ff 38%, rgba(234, 246, 255, .92) 48%, rgba(234, 246, 255, .58) 60%, rgba(234, 246, 255, 0) 78%) !important;
}
@media (max-width: 760px) {
  html[data-theme="day"] body:not(.concept-night):not(.concept-workshop):not(.story-library-page):not(.account-page) #top.hero .hero-art::before {
    background: linear-gradient(180deg, rgba(234, 246, 255, .98) 0%, rgba(234, 246, 255, .96) 22%, rgba(234, 246, 255, .5) 29%, rgba(234, 246, 255, .06) 35%, rgba(234, 246, 255, .06) 48%, rgba(234, 246, 255, .88) 58%, rgba(234, 246, 255, .96) 66%, rgba(234, 246, 255, .96) 100%) !important;
  }
}

@media (max-width: 760px) {
  html[data-theme="day"] body:is(.concept-night, .concept-workshop) .hero-art::before {
    background: linear-gradient(180deg, rgba(105, 198, 253, .18) 0%, rgba(105, 198, 253, .08) 35%, rgba(105, 198, 253, .02) 65%, transparent 100%) !important;
  }
}


/* Compact the home-page audio sample without changing playback behavior. */
body:not(.concept-night):not(.concept-workshop) #listen.listen.section-padding {
  padding-block: 52px !important;
}
body:not(.concept-night):not(.concept-workshop) #listen .listen-grid {
  gap: 36px !important;
}
body:not(.concept-night):not(.concept-workshop) #listen .listen-copy h2 {
  margin: 7px 0 11px !important;
  font-size: clamp(34px, 3.4vw, 42px);
  line-height: 1.08;
}
body:not(.concept-night):not(.concept-workshop) #listen .listen-copy > p {
  max-width: 420px;
  margin-bottom: 0 !important;
}
body:not(.concept-night):not(.concept-workshop) #listen .player-scene {
  padding: 20px !important;
}
body:not(.concept-night):not(.concept-workshop) #listen .audio-card {
  display: grid;
  grid-template-columns: minmax(112px, 132px) minmax(0, 1fr);
  grid-template-areas: "cover meta" "cover controls" "cover hint";
  align-items: center;
  gap: 0 16px;
  padding: 16px !important;
}
body:not(.concept-night):not(.concept-workshop) #listen .book-cover {
  grid-area: cover;
  height: 148px;
  margin: 0 !important;
}
body:not(.concept-night):not(.concept-workshop) #listen .player-meta { grid-area: meta; }
body:not(.concept-night):not(.concept-workshop) #listen .player-controls {
  grid-area: controls;
  margin: 10px 0 0 !important;
}
body:not(.concept-night):not(.concept-workshop) #listen .player-hint {
  grid-area: hint;
  margin: 4px 0 0 !important;
}
body:not(.concept-night):not(.concept-workshop) #listen .player-footnote {
  margin: 10px 2px 0 !important;
  line-height: 1.35;
}
@media (max-width: 760px) {
  body:not(.concept-night):not(.concept-workshop) #listen.listen.section-padding {
    padding-block: 34px !important;
  }
  body:not(.concept-night):not(.concept-workshop) #listen .listen-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  body:not(.concept-night):not(.concept-workshop) #listen .listen-copy h2 {
    font-size: clamp(30px, 8vw, 36px);
  }
  body:not(.concept-night):not(.concept-workshop) #listen .listen-copy > p {
    font-size: 14px;
    line-height: 1.45;
  }
  body:not(.concept-night):not(.concept-workshop) #listen .player-scene {
    padding: 12px !important;
    border-radius: 18px;
  }
  body:not(.concept-night):not(.concept-workshop) #listen .audio-card {
    grid-template-columns: 1fr;
    grid-template-areas: "cover" "meta" "controls" "hint";
    gap: 8px 0;
    padding: 12px !important;
  }
  body:not(.concept-night):not(.concept-workshop) #listen .book-cover {
    height: 100px;
  }
  body:not(.concept-night):not(.concept-workshop) #listen .player-controls {
    margin-top: 6px !important;
  }
  body:not(.concept-night):not(.concept-workshop) #listen .player-footnote {
    font-size: 11px;
    line-height: 1.4;
  }
}

/* Контрастная палитра действий формы: активные CTA, вторичная навигация и локальный пример. */
html[data-theme] body #create.builder .step-actions .button-back {
  min-height: 48px !important;
  padding: 11px 20px !important;
  border: 1px solid #9e8bf0 !important;
  border-radius: 999px !important;
  color: #ffffff !important;
  background: linear-gradient(115deg, #5543a7, #40326f) !important;
  box-shadow: 0 7px 18px rgba(26, 16, 62, .24) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  transition: transform .18s ease, filter .18s ease, box-shadow .18s ease !important;
}
html[data-theme] body #create.builder .step-actions .button-back:hover {
  color: #ffffff !important;
  background: linear-gradient(115deg, #6753c1, #514084) !important;
  box-shadow: 0 10px 24px rgba(26, 16, 62, .34) !important;
  transform: translateY(-1px);
}
html[data-theme] body #create.builder .step-actions button.button-primary:not(:disabled) {
  min-height: 50px !important;
  padding: 12px 22px !important;
  border: 1px solid rgba(255, 255, 255, .28) !important;
  border-radius: 999px !important;
  color: #ffffff !important;
  background: linear-gradient(112deg, #503bd0 0%, #7340c2 54%, #a33376 100%) !important;
  box-shadow: 0 10px 26px rgba(67, 42, 155, .34) !important;
  font-weight: 850 !important;
  text-shadow: 0 1px 1px rgba(20, 12, 48, .2);
}
html[data-theme] body #create.builder .step-actions button.button-primary:not(:disabled):hover {
  color: #ffffff !important;
  background: linear-gradient(112deg, #614be0 0%, #844bd1 54%, #b53e89 100%) !important;
  box-shadow: 0 13px 30px rgba(67, 42, 155, .43) !important;
  transform: translateY(-1px);
}
html[data-theme] body #create.builder .step-actions button.button-primary:disabled:not(#storyForm[aria-busy="true"] .step-actions button) {
  border: 1px solid #737b99 !important;
  color: #e1e3ef !important;
  background: #303853 !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
  opacity: 1 !important;
  cursor: not-allowed !important;
  text-shadow: none !important;
}
html[data-theme] body #create.builder #storyForm[aria-busy="true"] .step-actions button.button-primary:disabled {
  gap: 11px !important;
  border: 2px solid #ffe08a !important;
  color: #ffffff !important;
  background: linear-gradient(112deg, #4935a5 0%, #6b328e 58%, #8a315f 100%) !important;
  background-image: linear-gradient(112deg, #4935a5 0%, #6b328e 58%, #8a315f 100%) !important;
  box-shadow: 0 0 0 3px rgba(255, 224, 138, .14), 0 9px 25px rgba(38, 24, 92, .38) !important;
  opacity: 1 !important;
  cursor: progress !important;
  text-shadow: 0 1px 1px rgba(20, 12, 48, .2) !important;
}
html[data-theme] body #create.builder #storyForm[aria-busy="true"] .step-actions button.button-primary:disabled::after {
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  border: 2px solid rgba(255, 255, 255, .48);
  border-top-color: #ffe08a;
  border-radius: 50%;
  content: "";
  animation: moi-button-spin .8s linear infinite;
}
html[data-theme] body #create.builder #localPreviewButton {
  min-height: 46px !important;
  padding: 11px 21px !important;
  border: 1px solid #fff0ad !important;
  border-radius: 999px !important;
  color: #2d2144 !important;
  background: linear-gradient(115deg, #ffe98f, #ffd16f) !important;
  box-shadow: 0 7px 18px rgba(29, 22, 55, .2) !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}
html[data-theme] body #create.builder #localPreviewButton:hover {
  color: #23183a !important;
  background: linear-gradient(115deg, #fff1aa, #ffdb84) !important;
  box-shadow: 0 10px 22px rgba(29, 22, 55, .3) !important;
  transform: translateY(-1px);
}
html[data-theme] body #create.builder :is(.step-actions .button, #localPreviewButton):focus-visible {
  outline: 3px solid #fff2ae !important;
  outline-offset: 3px !important;
}
html[data-theme="night"] body #create.builder #storyApiStatus:not(:empty) {
  display: flex !important;
  align-items: flex-start !important;
  gap: 11px !important;
  border: 1px solid #8c7be8 !important;
  border-radius: 15px !important;
  color: #f8f5ff !important;
  background: linear-gradient(120deg, #20284b, #30234b) !important;
  box-shadow: 0 8px 20px rgba(7, 11, 32, .2) !important;
  font-weight: 650 !important;
}
html[data-theme="night"] body #create.builder #storyForm[aria-busy="true"] #storyApiStatus:not(:empty) {
  border-color: #9b8cff !important;
  background: linear-gradient(120deg, #202b55, #34254f) !important;
}
html[data-theme="night"] body #create.builder #storyForm[aria-busy="true"] #storyApiStatus::before {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  margin-top: 2px;
  border: 2px solid rgba(232, 225, 255, .42);
  border-top-color: #ffe08a;
  border-radius: 50%;
  content: "";
  animation: moi-button-spin .8s linear infinite;
}
@keyframes moi-button-spin { to { transform: rotate(360deg); } }
html[data-theme="night"] body #create.builder .story-generation-progress {
  border-color: #9b8cff;
  color: #f7f2ff;
  background: linear-gradient(125deg, #202b55, #34254f);
  box-shadow: 0 8px 20px rgba(7, 11, 32, .24);
}
html[data-theme="night"] body #create.builder .story-generation-progress-phase { color: #fff9e9; }
html[data-theme="night"] body #create.builder .story-generation-progress-percent { color: #ffe08a; }
html[data-theme="night"] body #create.builder .story-generation-progress progress,
html[data-theme="night"] body #create.builder .story-generation-progress progress::-webkit-progress-bar { background: #151c36; }
html[data-theme="night"] body #create.builder .story-generation-progress-words { color: #e2dff0; }
@media (prefers-reduced-motion: reduce) {
  html[data-theme] body #create.builder #storyForm[aria-busy="true"] .step-actions button.button-primary:disabled::after,
  html[data-theme="night"] body #create.builder #storyForm[aria-busy="true"] #storyApiStatus::before { animation: none; }
}
