/* Rodovid quiz */
body.quiz-on .bar .search,body.quiz-on .bar .chips{display:none}
.qz{max-width:620px;margin:18px auto 10px;display:flex;flex-direction:column;gap:18px}
.qz-hero h2{font:400 clamp(54px,14vw,96px)/.9 var(--f-display);margin:6px 0 10px;text-transform:uppercase;letter-spacing:.5px}
.qz-hero h2 em{font-style:normal;background:linear-gradient(90deg,var(--hot),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block;padding-bottom:.06em}
.qz-hero p{margin:0;color:var(--muted);font:600 14px var(--f-cond);letter-spacing:1.4px;text-transform:uppercase}
.qz-levels{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.qz-lv{border:1.5px solid var(--line);background:var(--surface);border-radius:16px;padding:14px 12px 12px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:4px;min-width:0}
.qz-lv b{font:400 clamp(18px,5.6vw,26px)/1 var(--f-display);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:clip}
.qz-lv span{font:600 13px var(--f-cond);color:var(--muted);letter-spacing:.6px}
.qz-lv em{font:700 11px var(--f-mono);font-style:normal;color:var(--accent);margin-top:2px}
.qz-lv.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}
.qz-bars{display:flex;gap:3px;margin-top:6px}.qz-bars u{flex:1;height:14px;border-radius:3px;background:var(--accent);opacity:.85;max-width:16px}
.qz-go{border:none;border-radius:999px;padding:18px 22px;cursor:pointer;font:400 30px/1 var(--f-display);text-transform:uppercase;letter-spacing:1px;color:#fff;background:linear-gradient(90deg,var(--hot),var(--accent2));box-shadow:0 14px 36px -14px var(--accent)}
.qz-go span{display:inline-block;transition:transform .2s}.qz-go:active span{transform:translateX(6px)}
.qz-note{margin:0;color:var(--muted);font-size:13px;text-align:center}
.qz-load{display:flex;flex-direction:column;align-items:center;gap:14px;padding:70px 0;color:var(--muted);font:600 14px var(--f-cond);letter-spacing:1.2px;text-transform:uppercase}
.qz-spin{width:42px;height:42px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:qzsp 0.8s linear infinite}
@keyframes qzsp{to{transform:rotate(360deg)}}
.qz-top{display:flex;align-items:center;gap:12px;font:700 13px var(--f-cond);letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
.qz-top b{font:400 28px/1 var(--f-display);color:var(--ink);min-width:28px;text-align:right}
.qz-prog{flex:1;height:6px;border-radius:3px;background:var(--surface2);overflow:hidden}.qz-prog i{display:block;height:100%;background:linear-gradient(90deg,var(--hot),var(--accent2));transition:width .3s}
.qz-play{position:relative;width:min(240px,62vw);aspect-ratio:1;margin:4px auto 0;border:none;background:none;cursor:pointer;border-radius:50%;display:grid;place-items:center;-webkit-tap-highlight-color:transparent}
.qz-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.qz-ring circle{fill:none;stroke:var(--surface2);stroke-width:5}
.qz-ring circle.p{stroke:var(--accent);stroke-linecap:round;stroke-dasharray:301.6;stroke-dashoffset:301.6}
.qz-disc{width:78%;aspect-ratio:1;border-radius:50%;background:repeating-radial-gradient(circle,#26282e 0 1.5px,#141519 1.5px 4px);box-shadow:0 18px 40px -12px rgba(0,0,0,.55),inset 0 0 0 1px rgba(255,255,255,.06);display:grid;place-items:center;transition:transform .3s}
.qz-disc i{width:34%;aspect-ratio:1;border-radius:50%;background:linear-gradient(135deg,var(--hot),var(--accent2));position:relative}
.qz-play:after{content:"";position:absolute;left:51.5%;top:50%;transform:translate(-50%,-50%);border-left:18px solid #fff;border-top:11px solid transparent;border-bottom:11px solid transparent;pointer-events:none}
.qz-play.on .qz-disc{animation:qzspin 1.8s linear infinite}
.qz-play.on:after{left:50%;border:none;width:16px;height:18px;background:linear-gradient(90deg,#fff 0 35%,transparent 35% 65%,#fff 65%)}
@keyframes qzspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion: reduce){.qz-play.on .qz-disc{animation:none}}
.qz-pl{position:absolute;bottom:-26px;left:0;right:0;text-align:center;font:600 13px var(--f-cond);letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
.qz-meta{text-align:center;margin-top:14px;font:700 12px var(--f-mono);color:var(--muted)}
.qz-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.qz-opt{border:1.5px solid var(--line);background:var(--surface);border-radius:14px;padding:16px 12px;cursor:pointer;font:400 22px/1.05 var(--f-display);text-transform:uppercase;text-align:left;display:flex;align-items:center;gap:10px;min-height:68px;color:var(--ink);transition:transform .12s,border-color .2s,background .2s,opacity .2s}
.qz-opt i{width:10px;height:10px;border-radius:50%;flex:none}
.qz-opt:active{transform:scale(.97)}
.qz-opt.ok{border-color:#22b866;background:color-mix(in srgb,#22b866 18%,var(--surface))}
.qz-opt.bad{border-color:var(--hot);background:color-mix(in srgb,var(--hot) 16%,var(--surface));animation:qzsh .35s}
.qz-opt.dim{opacity:.35}
@keyframes qzsh{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.qz-rev{border-radius:16px;padding:16px;background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--fc);display:flex;flex-direction:column;gap:10px;animation:in .22s ease}
.qz-verdict{font:400 28px/1 var(--f-display);text-transform:uppercase}
.qz-rev.ok .qz-verdict{color:#22b866}.qz-rev.bad .qz-verdict{color:var(--hot)}.qz-verdict b{color:var(--ink);font-weight:inherit}
.qz-facts{display:flex;flex-wrap:wrap;gap:6px}.qz-facts span{background:var(--surface2);border-radius:8px;padding:4px 9px;font:600 13px var(--f-cond);letter-spacing:.3px}
.qz-rev ul{margin:0;padding-left:18px;color:var(--muted);font-size:15px;line-height:1.45}
.qz-btns{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.qz-btns .btn{padding:11px 18px}
.qz-res{text-align:center;padding:10px 0 0}
.qz-big{font:400 120px/1 var(--f-display);background:linear-gradient(90deg,var(--hot),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}
.qz-big small{font-size:48px}
.qz-res h3{margin:4px 0 6px;font:400 32px/1 var(--f-display);text-transform:uppercase}
.qz-res p{margin:0;color:var(--muted);font:600 14px var(--f-cond);letter-spacing:1px;text-transform:uppercase}
.qz-h4{font:700 13px var(--f-cond);letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin:8px 0 -8px}
.qz-review{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.qz-ri{display:flex;align-items:center;gap:12px;padding:11px 14px;border:none;border-top:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;color:var(--ink)}
.qz-ri:first-child{border-top:none}
.qz-ri span{font:700 12px var(--f-mono);color:var(--muted);width:18px}
.qz-ri b{flex:1;font:400 20px/1 var(--f-display);text-transform:uppercase;font-weight:400}
.qz-ri em{font-style:normal;font:600 13px var(--f-cond)}.qz-ri.ok em{color:#22b866}.qz-ri.bad em{color:var(--hot)}
@media (max-width:420px){.qz-lv{padding:12px 9px 10px}.qz-lv b{font-size:clamp(15px,4.9vw,21px)}.qz-opt{font-size:19px;padding:14px 10px}}
/* v3: modes, family-tree questions, share, course link, card player */
.qz-modes{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.qz-mode{border:1.5px solid var(--line);background:var(--surface);border-radius:16px;padding:14px;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;gap:10px;font:400 24px/1 var(--f-display);text-transform:uppercase;color:var(--ink);flex-wrap:wrap}
.qz-mode i{font-style:normal;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--surface2);font-size:17px}
.qz-mode em{width:100%;font:700 11px var(--f-mono);font-style:normal;color:var(--accent)}
.qz-mode.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.qz-mode.on i{background:var(--accent);color:#fff}
.qz-treehint{display:flex;flex-direction:column;gap:8px}
.qz-treehint span{border:1px dashed var(--line);border-radius:12px;padding:11px 14px;color:var(--muted);font-size:15px}.qz-treehint b{color:var(--ink)}
.qz-qtext{font:400 clamp(30px,8vw,44px)/1.05 var(--f-display);text-transform:uppercase;margin:6px 0 4px;text-wrap:balance}
.qz-qtext b{font-weight:inherit;background:linear-gradient(90deg,var(--hot),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}
.qz-opts.txt .qz-opt{font:600 17px/1.2 var(--f-body);text-transform:none}
.qz-expl{margin:0;font-size:16px;line-height:1.5;color:var(--ink)}
.qz-ri b.sm{font:500 15px/1.3 var(--f-body)!important;text-transform:none}
.qz-share{align-self:center;display:inline-flex;align-items:center;gap:10px;border:none;border-radius:999px;padding:14px 26px;cursor:pointer;font:400 24px/1 var(--f-display);text-transform:uppercase;letter-spacing:1px;color:#fff;background:linear-gradient(90deg,var(--hot),var(--accent2));box-shadow:0 12px 30px -12px var(--accent)}
.qz-share i{font-style:normal}.qz-share:disabled{opacity:.6}
.qz-learn{display:flex;flex-direction:column;gap:4px;text-decoration:none;border-radius:16px;padding:16px 18px;background:var(--ink);color:var(--bg)}
.qz-learn span{font:600 14px var(--f-cond);letter-spacing:1.2px;text-transform:uppercase;opacity:.75}.qz-learn b{font:400 28px/1 var(--f-display);text-transform:uppercase;font-weight:400}
.qz-cprow{display:flex;align-items:center;gap:14px}
.qz-cpb{flex:none;width:58px;height:58px;border-radius:50%;border:none;cursor:pointer;background:linear-gradient(135deg,var(--hot),var(--accent2));position:relative;box-shadow:0 10px 24px -10px var(--accent)}
.qz-cpb span{position:absolute;left:53%;top:50%;transform:translate(-50%,-50%);border-left:17px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent}
.qz-cpb.on span{left:50%;border:none;width:16px;height:18px;background:linear-gradient(90deg,#fff 0 35%,transparent 35% 65%,#fff 65%)}
.qz-cpw{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}
.qz-cpbar{height:6px;border-radius:3px;background:var(--surface2);overflow:hidden}.qz-cpbar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--hot),var(--accent2))}
.qz-cpsel{display:flex;gap:6px}.qz-cpsel button{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:4px 11px;cursor:pointer;font:700 12px var(--f-cond);letter-spacing:1px;text-transform:uppercase;color:var(--muted)}
.qz-cpsel button.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
