/* NOVA·YA — общая тема для всех тестов (сайт и приложение).
   Подключается последней и перекрашивает старые тесты в новый стиль:
   природное фото фоном, матовое стекло, графит, лесной акцент, скругления и мягкое движение. */

:root{
  --t-ink:#161514; --t-ink2:#22201E; --t-soft:#55524B; --t-accent:#44603F; --t-accent2:#5C7A55; --t-gold:#B59D72; --t-gold2:#D8C7A2;
  --t-glass:rgba(255,255,255,.62); --t-glass2:rgba(255,255,255,.4); --t-line:rgba(22,21,20,.12); --t-bg:#C7D1BD;

  /* семья 1: infantil, izmena, love-lang, samotsennost, schastye, zertva */
  --bg:transparent!important; --white:var(--t-glass)!important; --off:transparent!important; --sand:var(--t-glass2)!important; --light:var(--t-gold2)!important;
  --choc:var(--t-ink)!important; --navy:var(--t-ink)!important; --forest:var(--t-ink)!important; --dark:var(--t-ink)!important; --black:var(--t-ink)!important;
  --terra:var(--t-accent)!important; --burg:var(--t-accent)!important; --indigo:var(--t-accent)!important; --green:var(--t-accent)!important; --blue:var(--t-ink2)!important;
  --terra2:var(--t-accent2)!important; --burg2:var(--t-accent2)!important; --indigo2:var(--t-accent2)!important; --mid:var(--t-accent2)!important; --sage2:var(--t-accent2)!important;
  --ochre:var(--t-gold)!important; --peach:var(--t-gold)!important; --peach2:var(--t-gold2)!important; --champ:var(--t-gold)!important; --champ2:var(--t-gold2)!important; --cream2:var(--t-gold2)!important;
  --gray:var(--t-soft)!important; --line:var(--t-line)!important; --line2:rgba(68,96,63,.22)!important;
  /* семья 2: narcissism, trevoga, uroven */
  --paper:var(--t-glass)!important; --paper-warm:var(--t-glass2)!important; --ink-soft:var(--t-soft)!important;
  --plum:var(--t-accent)!important; --plum-deep:var(--t-ink)!important; --sage:var(--t-accent)!important; --sage-deep:var(--t-ink)!important; --amber:var(--t-gold)!important; --radius:20px!important;
  /* семья 3: relationship, book, sohranit-brak */
  --cream:transparent!important; --rust:var(--t-accent)!important; --gold:var(--t-gold)!important; --blush:var(--t-gold2)!important;
  /* семья 4: akcentuacii */
  --card:var(--t-glass)!important; --muted:var(--t-soft)!important; --sage-d:var(--t-ink)!important; --accent:var(--t-accent)!important;
  --ink:var(--t-ink)!important;
}
html{background:var(--t-bg)!important}
body{background:transparent!important;color:var(--t-ink);-webkit-font-smoothing:antialiased}
/* фон: фото теста, приглушённое и приближенное, плюс зелёный тон */
body::before{content:"";position:fixed;inset:-8%;z-index:-2;pointer-events:none;background:var(--timg,none) center/cover;opacity:.5;filter:blur(3px) saturate(.75);animation:tbgz 24s ease-in-out infinite}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 90% 60% at 50% 40%,rgba(199,209,189,.35),rgba(199,209,189,.7))}
@keyframes tbgz{0%,100%{transform:scale(1.05)}50%{transform:scale(1.14)}}

/* матовое стекло для карточек, блоков и вариантов ответа */
.card,.opt,.chip,.scale-card,.aspect-block,.overall-block,.advice-box,.opt-btn,.disclaimer,.disclaimer-final,.advice-block,.cta-block,
.email-gate,.q-scale-btn,.q-choice-btn,.q-textarea,.risk-box,.dimension-card,.recommendation-box,.book-card,.also-book,.block,.name-block,
.transition-box,.result-overview,.sw-card,.lang-chip,.reason-chip,.aspect-chip,.ab-opt,.risk-item,.eg-input,.scale-option label,.question-block,.res-section,.q-card,.quiz-card{
  -webkit-backdrop-filter:blur(16px) saturate(1.15)!important;backdrop-filter:blur(16px) saturate(1.15)!important;
  border-radius:20px!important;border-color:rgba(255,255,255,.7)!important;box-shadow:0 18px 40px -30px rgba(22,21,20,.45),inset 0 0 0 1px rgba(255,255,255,.55)!important;
  transition:transform .35s cubic-bezier(.2,.8,.2,1),background-color .3s,box-shadow .3s!important}
.opt:hover,.opt-btn:hover,.q-choice-btn:hover,.q-scale-btn:hover,.ab-opt:hover{transform:translateY(-2px)}
.opt.selected,.opt-btn.selected,.q-choice-btn.selected,.q-scale-btn.selected,.ab-opt.selected{background:rgba(255,255,255,.88)!important;box-shadow:0 0 0 2px var(--t-accent),0 18px 40px -26px rgba(22,21,20,.45)!important;animation:tpick .45s cubic-bezier(.2,.9,.25,1.2)}
@keyframes tpick{0%{transform:scale(.97)}60%{transform:scale(1.02)}100%{transform:scale(1)}}

/* тёмные панели — графит с лёгкой прозрачностью */
.quiz-side,.res-hero,.res-cta,.cta-box,.topbar{background:rgba(22,21,20,.86)!important;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.quiz-side::after,.res-hero::before,.res-cta::before{opacity:.35}
.res-hero::after{background:transparent!important}

/* кнопки — округлые «таблетки» */
button,[class*="btn"],.primary,.ghost,.yes,.no{border-radius:999px!important}
.btn-start,.btn-next,.btn-submit,.btn-enter,.btn-cta,.start-btn,.submit-btn,.cta-btn,.primary,.yes{background:var(--t-ink)!important;color:#F2F1EC!important;border-color:var(--t-ink)!important;transition:transform .2s,background .3s!important}
.btn-start:active,.btn-next:active,.btn-submit:active,.btn-cta:active,.start-btn:active,.primary:active,.yes:active{transform:scale(.97)}
.btn-start::before,.btn-next::before,.btn-submit::before{display:none!important}

/* полосы прогресса */
[class*="prog-bar"],.progress-bar,.progress-track,.sp-bar,.bar,.meter,.dim-track,.sc-bar{background:rgba(22,21,20,.1)!important;border-radius:99px!important;overflow:hidden}
[class*="prog-fill"],.progress-fill,.sp-fill,.bar>i,.meter-fill,.dim-score-fill{background:var(--t-ink)!important;border-radius:99px!important;transition:width .6s cubic-bezier(.2,.8,.2,1)!important}

/* типографика */
h1,h2,h3,.intro-h,.q-text,.res-title{letter-spacing:-.01em;text-wrap:balance}
em,i{color:inherit}

/* падающие листья */
.t-leaves{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.t-leaves span{position:absolute;top:-50px;width:26px;height:26px;opacity:.55;animation:tfall linear infinite}
.t-leaves svg{width:100%;height:100%;display:block;fill:#F3F6EC}
.t-leaves span:nth-child(3n) svg{fill:#9DB08A}
@keyframes tfall{0%{transform:translate(0,0) rotate(0)}50%{transform:translate(30px,55vh) rotate(170deg)}100%{transform:translate(-10px,112vh) rotate(340deg)}}

/* появление экранов и результатов */
.t-rise{animation:trise .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--ti,0) * 70ms)}
@keyframes trise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* всплывашка */
.t-pop{position:fixed;left:50%;top:calc(env(safe-area-inset-top,0px) + 14px);z-index:9999;transform:translate(-50%,-150%);opacity:0;padding:12px 20px;border-radius:999px;
  background:rgba(250,250,247,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--t-ink);font:400 14px/1.3 "Onest",sans-serif;
  box-shadow:0 18px 40px -16px rgba(0,0,0,.4);display:flex;gap:10px;align-items:center;transition:transform .6s cubic-bezier(.2,.8,.2,1),opacity .4s;pointer-events:none;max-width:calc(100% - 32px)}
.t-pop i{font:italic 300 18px/1 "Noto Serif Display",Georgia,serif;color:var(--t-accent)}
.t-pop.show{transform:translate(-50%,0);opacity:1}

@media (prefers-reduced-motion: reduce){body::before,.t-leaves span,.t-rise{animation:none!important}.t-leaves{display:none}}

/* отступы и аккуратные заголовки внутри стеклянных блоков */
.t-pad{padding:18px 18px 16px!important}
.t-pad>*:first-child{margin-top:0}
.block-label,.sec-label,.q-meta,.q-category,.step-tag{border:0!important;background:transparent!important}
.question-block .q-line,.block-label::after{display:none!important}
.q-text,.question,.intro-h,h2,h3{overflow-wrap:anywhere}
.scale-ends,.scale-endpoints,.sc-ends,.scale-labels{font-family:"Onest",sans-serif!important;font-style:normal!important;font-weight:500!important;font-size:12.5px!important;color:#3f3c36!important;opacity:1!important}
.scale-dot,.scale-label-text,.sc-dot,.scale-value{color:#161514!important;opacity:1!important}
.scale-option label{border-radius:16px!important}
.question-block .scale{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important;width:100%!important;max-width:100%!important}
.question-block .scale-option{min-width:0!important;width:auto!important}
.question-block .scale-option label{padding:10px 0!important;width:100%!important}
/* надёжные отступы без JS + текст вопроса помещается в карточку */
.q-card,.question-block,.block,.res-section,.quiz-card,.name-block,.transition-box,.result-overview,.overall-block,.aspect-block,.scale-card,.dimension-card,.email-gate,.risk-box,.advice-block,.cta-block,.disclaimer,.disclaimer-final,.book-card,.also-book{padding:20px 18px!important;box-sizing:border-box!important;max-width:100%!important}
.q-meta,.q-head{flex-wrap:wrap;row-gap:6px}
.q-text,.question .q-text,.question-block .q-text{font-size:clamp(20px,5.6vw,28px)!important;line-height:1.28!important;overflow-wrap:break-word!important;hyphens:auto}
.q-sub{font-size:13px!important;margin-bottom:20px!important}
@media (max-width:700px){.quiz-main,.wrap,.quiz-wrap{padding-left:max(10px,env(safe-area-inset-left))!important;padding-right:max(10px,env(safe-area-inset-right))!important}}
