/* Квиз-виджет связки — общий файл для index.html, brand/*.html и kviz.html.
   Собран движком, руками не править: tools/build_kviz.py */
.rasq-qz{
  --rasq-bg:#F4F6F8; --rasq-bg2:#E9EDF1; --rasq-card:#FFFFFF; --rasq-tile:#F8FAFB;
  --rasq-ink:#14181D; --rasq-ink-soft:#3A424C; --rasq-muted:#5C646E;
  --rasq-line:#DDE3E9; --rasq-line2:#C4CDD6;
  --rasq-acc:#0E7C86; --rasq-acc-deep:#0B6771; --rasq-acc-deep2:#08535B; --rasq-acc-text:#0B6771;
  --rasq-acc-tint:rgba(14,124,134,.11); --rasq-ok:#2E8B57; --rasq-white:#fff;
  --rasq-in-bg:#FFFFFF; --rasq-topbg:rgba(244,246,248,.94);
  --rasq-r:14px; --rasq-r-sm:10px; --rasq-r-xs:7px;
  --rasq-sh1:0 1px 2px rgba(20,24,29,.05),0 10px 24px -18px rgba(20,24,29,.35);
  --rasq-sh2:0 18px 46px -26px rgba(20,24,29,.4);
  --rasq-sh3:0 26px 60px -30px rgba(20,24,29,.45);
  --rasq-sans:"Manrope","Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif;
  --rasq-display:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  background:var(--rasq-bg);color:var(--rasq-ink);
  font:400 16px/1.6 var(--rasq-sans);
  border-top:1px solid var(--rasq-line);border-bottom:1px solid var(--rasq-line);
  padding:clamp(30px,5vw,58px) 0;scroll-margin-top:74px;display:block}
.rasq-qz *,.rasq-qz *::before,.rasq-qz *::after{box-sizing:border-box}
.rasq-qz img{max-width:100%;display:block}
.rasq-qz p{margin:0}
.rasq-qz ul{margin:0;padding:0;list-style:none}
.rasq-qz a{color:inherit}
.rasq-qz button{font-family:inherit;color:inherit}
.rasq-qz :focus-visible{outline:2.5px solid var(--rasq-acc);outline-offset:3px;border-radius:6px}

.rasq-qz-wrap{max-width:1180px;margin:0 auto;padding:0 clamp(14px,3.4vw,32px)}
.rasq-qz-h{margin:0;font-family:var(--rasq-display);font-weight:700;
  font-size:clamp(23px,3.3vw,34px);line-height:1.16;letter-spacing:-.018em;max-width:23ch;color:var(--rasq-ink)}
.rasq-qz-sub{margin-top:12px;font-size:15.5px;line-height:1.55;color:var(--rasq-ink-soft);max-width:62ch}
.rasq-qz-head{margin-bottom:clamp(18px,2.6vw,28px)}

/* ---- карточка ---- */
.rasq-card{background:var(--rasq-card);border:1px solid var(--rasq-line);border-radius:var(--rasq-r);
  box-shadow:var(--rasq-sh2);padding:clamp(18px,3vw,34px);min-width:0}

.rasq-prog{margin-bottom:clamp(16px,2.2vw,24px)}
.rasq-prog-bar{display:flex;gap:5px}
.rasq-prog-seg{flex:1;height:6px;border-radius:99px;background:var(--rasq-line);overflow:hidden}
.rasq-prog-seg i{display:block;height:100%;width:100%;border-radius:99px;background:var(--rasq-acc);
  transform:scaleX(0);transform-origin:left center;transition:transform .4s ease-out}
.rasq-prog-seg.is-done i,.rasq-prog-seg.is-now i{transform:none}
.rasq-prog-meta{display:flex;justify-content:space-between;align-items:baseline;gap:12px;
  margin-top:9px;font-size:12.5px;font-weight:700;color:var(--rasq-muted);letter-spacing:.02em}
.rasq-prog-meta b{color:var(--rasq-acc-text)}

.rasq-step{display:none}
.rasq-step.is-now{display:block;animation:rasq-in .3s ease-out both}
@keyframes rasq-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.rasq-q{margin:0;font-weight:800;font-size:clamp(20px,2.9vw,28px);line-height:1.18;letter-spacing:-.022em;color:var(--rasq-ink)}
.rasq-qsub{margin-top:9px;font-size:15px;line-height:1.5;color:var(--rasq-muted);max-width:56ch}

/* ---- варианты ---- */
.rasq-opts{display:grid;gap:12px;margin-top:clamp(16px,2.2vw,22px);grid-template-columns:1fr}
@media(min-width:700px){.rasq-opts{grid-template-columns:1fr 1fr;gap:14px}}

.rasq-opt{position:relative;display:flex;flex-direction:column;text-align:left;cursor:pointer;
  background:var(--rasq-tile);border:1.5px solid var(--rasq-line);border-radius:var(--rasq-r-sm);
  padding:0;overflow:hidden;min-height:52px;
  transition:border-color .18s ease-out,box-shadow .22s ease-out,transform .22s ease-out,background-color .18s ease-out}
.rasq-opt:hover{border-color:var(--rasq-line2);box-shadow:var(--rasq-sh1);transform:translateY(-2px)}
.rasq-opt.is-picked{border-color:var(--rasq-acc);background:var(--rasq-card);box-shadow:var(--rasq-sh3)}
.rasq-opt::after{content:"";position:absolute;top:11px;right:11px;width:26px;height:26px;border-radius:50%;
  border:1.5px solid var(--rasq-line2);background:var(--rasq-card);
  transition:background-color .18s ease-out,border-color .18s ease-out;z-index:2}
.rasq-opt.is-picked::after{background:var(--rasq-acc);border-color:var(--rasq-acc)}
/* галочка — на псевдоэлементе: 17 инлайновых SVG на страницу того не стоят */
.rasq-opt::before{content:"";position:absolute;top:17px;right:20px;width:7px;height:12px;z-index:3;
  border:solid #fff;border-width:0 2.6px 2.6px 0;opacity:0;
  transform:rotate(45deg) scale(.6);transform-origin:center;
  transition:opacity .18s ease-out,transform .18s ease-out}
.rasq-opt.is-picked::before{opacity:1;transform:rotate(45deg)}

.rasq-opt-pic{aspect-ratio:16/10;width:100%;height:auto;object-fit:cover;object-position:50% 55%;
  background:var(--rasq-bg2);border-bottom:1px solid var(--rasq-line)}
.rasq-opt-body{display:block;padding:13px 15px 15px}
.rasq-opt-t{display:block;font-size:17px;font-weight:800;letter-spacing:-.015em;line-height:1.22}
.rasq-opt-s{display:block;margin-top:5px;font-size:13.4px;line-height:1.42;color:var(--rasq-muted)}

.rasq-opt--num .rasq-opt-body{padding:16px 17px 17px}
.rasq-num{font-family:var(--rasq-display);font-size:clamp(23px,3.2vw,29px);line-height:1.08;
  letter-spacing:-.015em;font-weight:700;display:block;font-variant-numeric:tabular-nums}
.rasq-num small{font-family:var(--rasq-sans);font-size:15px;font-weight:800;letter-spacing:-.01em}
.rasq-opt-tag{display:inline-flex;align-items:center;gap:6px;margin-top:10px;
  background:var(--rasq-acc-tint);color:var(--rasq-acc-text);border-radius:99px;
  padding:5px 11px;font-size:12.5px;font-weight:800}

.rasq-opt--ico{flex-direction:row;align-items:flex-start;gap:13px;padding:16px 44px 16px 16px}
.rasq-ico{width:42px;height:42px;flex:0 0 auto;border-radius:var(--rasq-r-xs);display:grid;place-items:center;
  background:var(--rasq-acc-tint);color:var(--rasq-acc-text)}
.rasq-ico svg{width:21px;height:21px}
.rasq-opt--ico .rasq-opt-body{padding:0;flex:1 1 auto;min-width:0}

.rasq-alt{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px}
.rasq-chip{position:relative;cursor:pointer;text-align:left;background:transparent;
  border:1.5px dashed var(--rasq-line2);border-radius:99px;padding:11px 17px;
  font-size:14px;font-weight:700;color:var(--rasq-ink-soft);min-height:44px;
  transition:border-color .18s ease-out,background-color .18s ease-out,color .18s ease-out}
.rasq-chip:hover{border-color:var(--rasq-acc);color:var(--rasq-ink)}
.rasq-chip.is-picked{border-style:solid;border-color:var(--rasq-acc);background:var(--rasq-acc-tint);color:var(--rasq-acc-text)}
.rasq-note{margin-top:13px;font-size:12.8px;line-height:1.45;color:var(--rasq-muted)}

.rasq-reveal{display:none;margin-top:14px;background:var(--rasq-bg2);border:1px solid var(--rasq-line2);
  border-radius:var(--rasq-r-sm);padding:15px}
.rasq-reveal.is-open{display:block;animation:rasq-in .28s ease-out both}
.rasq-reveal label{display:block;font-size:13.5px;font-weight:700;margin-bottom:8px;color:var(--rasq-ink-soft)}

/* ---- навигация ---- */
.rasq-nav{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:clamp(16px,2.2vw,22px)}
.rasq-btn{appearance:none;border:0;border-radius:var(--rasq-r-sm);padding:15px 26px;font-size:16px;font-weight:800;
  letter-spacing:-.005em;cursor:pointer;min-height:52px;line-height:1.2;white-space:normal;
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  transition:background-color .18s ease-out,transform .18s ease-out,box-shadow .22s ease-out}
.rasq-btn svg{width:17px;height:17px;flex:0 0 auto}
.rasq-btn--go{background:var(--rasq-acc-deep);color:#fff;box-shadow:var(--rasq-sh1)}
.rasq-btn--go:hover{background:var(--rasq-acc-deep2);transform:translateY(-1px);box-shadow:var(--rasq-sh2)}
.rasq-btn--wide{width:100%}
.rasq-btn--back{background:transparent;color:var(--rasq-muted);padding:15px 6px;font-weight:700;font-size:15px}
.rasq-btn--back:hover{color:var(--rasq-ink)}
@media(max-width:420px){.rasq-btn{font-size:15px;padding-left:17px;padding-right:17px}}

/* ---- финал ---- */
.rasq-sum{margin-top:18px;background:var(--rasq-bg2);border:1px solid var(--rasq-line2);
  border-radius:var(--rasq-r-sm);padding:15px 16px}
.rasq-sum-t{font-size:12px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;
  color:var(--rasq-muted);margin-bottom:10px}
.rasq-sum ul{display:grid;gap:8px}
.rasq-sum li{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:14px;line-height:1.4;
  justify-content:space-between;border-bottom:1px dashed var(--rasq-line2);padding-bottom:8px}
.rasq-sum li:last-child{border-bottom:0;padding-bottom:0}
.rasq-sum li span{color:var(--rasq-muted)}
.rasq-sum li b{font-weight:800;text-align:right}

.rasq-form{margin-top:18px;display:grid;gap:13px}
.rasq-field label{display:block;font-size:13.5px;font-weight:700;margin-bottom:7px;color:var(--rasq-ink-soft)}
.rasq-in{width:100%;border:1.5px solid var(--rasq-line2);border-radius:var(--rasq-r-sm);padding:14px 15px;
  font-size:16px;font-family:inherit;background:var(--rasq-in-bg);color:var(--rasq-ink);min-height:52px;
  transition:border-color .18s ease-out,box-shadow .18s ease-out}
.rasq-in:focus{outline:0;border-color:var(--rasq-acc);box-shadow:0 0 0 3.5px var(--rasq-acc-tint)}
.rasq-in::placeholder{color:var(--rasq-muted)}
.rasq-consent{display:flex;gap:10px;align-items:flex-start;font-size:12.8px;line-height:1.5;color:var(--rasq-muted);min-height:44px}
.rasq-consent input{width:19px;height:19px;margin:1px 0 0;flex:0 0 auto;accent-color:var(--rasq-acc-deep)}
.rasq-reassure{display:flex;gap:9px;align-items:flex-start;font-size:13.2px;line-height:1.5;color:var(--rasq-muted)}
.rasq-reassure svg{width:16px;height:16px;margin-top:2px;flex:0 0 auto;color:var(--rasq-ok)}
.rasq-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---- ссылка на квиз в первом экране и в подвале страниц связки ---- */
.rasq-jump{margin-top:14px;font-size:14.5px;line-height:1.5}
.rasq-jump a{display:inline-flex;align-items:center;min-height:44px;font-weight:800;padding:4px 0;
  border-bottom:2px solid currentColor;text-decoration:none}
.rasq-footlink{margin:0 0 10px;font-size:13.5px;font-weight:700}
.rasq-footlink a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;border-bottom:1px solid currentColor}

@media (prefers-reduced-motion: reduce){
  .rasq-qz *,.rasq-qz *::before,.rasq-qz *::after{animation-duration:.001ms!important;
    animation-iteration-count:1!important;transition-duration:.001ms!important}
  .rasq-opt:hover,.rasq-btn--go:hover{transform:none}
  .rasq-step.is-now,.rasq-reveal.is-open{animation:none}
}
