/* Website 5.0 qo'shimcha sahifalar: Naima Kids, Naima TV, Nova tur, Yutuqlar, Ota-onalar (demo). Faqat shu sahifalar ochilganda yuklanadi. */
.ext-empty{display:grid;justify-items:center;text-align:center;gap:12px;padding:48px 16px;max-width:520px;margin:0 auto}
.ext-empty-ic{font-size:40px;line-height:1}
.tour-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.tour-tabs button{min-height:44px;padding:0 16px;border-radius:999px;border:2px solid var(--line);background:var(--surface);color:var(--ink);font:600 14px var(--f-body);cursor:pointer}
.tour-tabs button[aria-pressed="true"]{background:var(--purple);border-color:var(--purple);color:var(--on-purple)}

/* ---------- Naima Kids ---------- */
.kids{display:grid;gap:22px}
.kstat{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;background:var(--purple);color:var(--on-purple);border-radius:var(--r-lg);padding:16px}
.kstat-i{display:grid;gap:2px;text-align:center}.kstat-i span,.kstat-m span{font-size:12px;opacity:.85;text-transform:uppercase;letter-spacing:.08em}
.kstat-i b{font:700 clamp(22px,6vw,32px) var(--f-display);color:var(--yellow)}
.kstat-m{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;justify-content:center;border-top:1px solid rgba(255,255,255,.25);padding-top:10px}
.kstat-m b{font-size:26px}.kstat-m small{opacity:.9}
.kage{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.kage button{min-height:44px;padding:0 16px;border-radius:999px;border:2px solid var(--line);background:var(--surface);color:var(--ink);font:600 14px var(--f-body);cursor:pointer}
.kage button[aria-pressed="true"]{background:var(--yellow);border-color:var(--yellow);color:var(--on-yellow)}
.kgroup h2{font-size:clamp(20px,4.5vw,26px);margin-bottom:12px}
.kgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(min-width:720px){.kgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1000px){.kgrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.kcard{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:140px;padding:14px 10px;text-align:center;border-radius:var(--r-lg);border:2px solid var(--line);background:var(--surface);color:var(--ink);font:600 15px var(--f-body);cursor:pointer;text-decoration:none;box-shadow:var(--shadow);transition:transform .15s ease,border-color .15s}
.kcard:hover,.kcard:focus-visible{border-color:var(--purple);transform:translateY(-3px)}
.kcard-ic{font-size:44px;line-height:1}.kcard-st{color:#E0A800;letter-spacing:2px;font-size:16px}.kcard-sub{font-size:12px;color:var(--muted);font-weight:500}
.kfoot{display:grid;gap:12px}
.kplay{max-width:760px;margin-inline:auto;width:100%}
.kbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.kcount{font-weight:700}.kprog{flex:1 1 120px;height:10px;background:var(--chip);border-radius:99px;overflow:hidden}.kprog i{display:block;height:100%;background:var(--purple);transition:width .3s}
.kq{font-size:clamp(20px,5vw,28px)}
.kprompt{display:grid;gap:10px;justify-items:center;text-align:center;background:var(--chip);border-radius:var(--r-lg);padding:20px 14px;min-height:130px;align-content:center}
.kpt{font:700 clamp(22px,6vw,34px) var(--f-display);color:var(--ink);word-break:break-word}
.kv-emoji{font-size:clamp(56px,16vw,88px);line-height:1}
.kv-swatch{display:inline-block;width:clamp(64px,18vw,96px);height:clamp(64px,18vw,96px);border-radius:50%;border:4px solid var(--ink);box-shadow:var(--shadow)}
.kv-shape svg{display:block}.kv-seq{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center}.kv-q{font:700 40px var(--f-display);color:var(--accent)}
.kv-count{display:flex;flex-wrap:wrap;gap:4px;justify-content:center;font-size:28px;align-items:center}.kv-count i{font-style:normal}.kv-count i.gone{opacity:.25;filter:grayscale(1);text-decoration:line-through}.kv-count b{font-size:28px;padding:0 6px}
.kopts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kopts-w{display:flex;flex-wrap:wrap;justify-content:center}
.kopt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:84px;padding:12px;border-radius:var(--r-lg);border:3px solid var(--line);background:var(--surface);color:var(--ink);font:700 clamp(18px,5vw,26px) var(--f-body);cursor:pointer;transition:transform .12s,border-color .12s}
.kopt:hover:not(:disabled),.kopt:focus-visible{border-color:var(--purple);transform:scale(1.03)}
.kopt:disabled{cursor:default}.kopt.used{opacity:.35}
.kopt.right{border-color:var(--ok);background:var(--ok-bg);animation:kpop .35s ease}
.kopt.wrong{border-color:var(--err);background:var(--err-bg)}
.kopt .kv-emoji{font-size:clamp(40px,12vw,60px)}
.kslots{display:flex;flex-wrap:wrap;gap:8px;min-height:64px;align-items:center;justify-content:center;background:var(--chip);border:2px dashed var(--line);border-radius:var(--r-lg);padding:12px;margin-bottom:12px}
.ktok{background:var(--purple);color:var(--on-purple);border-radius:12px;padding:8px 14px;font:700 20px var(--f-body)}
.kbuild{display:grid;gap:12px}
.kfb{min-height:52px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center;border-radius:var(--r-md);padding:10px;font-size:18px}
.kfb.ok{background:var(--ok-bg);color:var(--ok)}.kfb.bad{background:var(--warn-bg);color:var(--warn)}
.kboard{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}
.kflip{position:relative;aspect-ratio:1;border:0;padding:0;background:none;cursor:pointer;perspective:600px;border-radius:var(--r-md)}
.kflip>span{position:absolute;inset:0;display:grid;place-items:center;border-radius:var(--r-md);border:3px solid var(--line);backface-visibility:hidden;transition:transform .35s}
.kf-back{background:var(--purple);color:var(--yellow);font:700 32px var(--f-display)}
.kf-front{background:var(--surface);transform:rotateY(180deg);padding:4px;text-align:center}
.kflip.open .kf-back,.kflip.done .kf-back{transform:rotateY(180deg)}.kflip.open .kf-front,.kflip.done .kf-front{transform:rotateY(360deg)}
.kflip.done .kf-front{border-color:var(--ok);background:var(--ok-bg)}
.kcard-word{font:700 clamp(13px,3.6vw,20px) var(--f-body);word-break:break-word}
.kflip .kv-emoji{font-size:clamp(30px,9vw,52px)}
.kres{text-align:center;justify-items:center}
.kstars{font-size:clamp(48px,14vw,72px);letter-spacing:6px;color:var(--line)}.kstars .on{color:#F5B400;animation:kpop .5s ease both}
.kbig{font:700 clamp(30px,8vw,48px) var(--f-display)}.kbig small{font:500 16px var(--f-body);color:var(--muted)}
.kbadge{background:var(--yellow);color:var(--on-yellow);border-radius:99px;padding:10px 18px;font-weight:700}
@keyframes kpop{0%{transform:scale(.8)}60%{transform:scale(1.08)}100%{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.kopt.right,.kstars .on{animation:none}.kflip>span,.kcard,.kopt{transition:none}}

/* ---------- Naima TV ---------- */
.tv{position:relative;width:min(100%,400px);margin:0 auto;aspect-ratio:9/16;max-height:calc(100svh - 150px);background:#000;border-radius:22px;overflow:hidden;outline-offset:4px}
.tv-feed{height:100%;overflow-y:auto;scroll-snap-type:y mandatory;scrollbar-width:none;overscroll-behavior:contain}
.tv-feed::-webkit-scrollbar{display:none}
.tv-item{position:relative;height:100%;scroll-snap-align:start;scroll-snap-stop:always;background:#000}
.tv-v{width:100%;height:100%;object-fit:cover;background:#1b1127}
.tv-tap{position:absolute;inset:0;background:transparent;border:0;cursor:pointer}
.tv-state{position:absolute;inset:0;display:grid;place-items:center;font-size:64px;color:#fff;opacity:.85;pointer-events:none;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.tv-item.playing .tv-state{display:none}
.tv-err{position:absolute;top:12px;left:12px;right:12px;background:rgba(0,0,0,.7);color:#fff;border-radius:12px;padding:10px;text-align:center}
.tv-info{position:absolute;left:0;right:64px;bottom:0;padding:48px 14px 14px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.78));display:grid;gap:6px;justify-items:start}
.tv-info h2{font:700 18px var(--f-body);color:#fff}.tv-info p{font-size:14px;opacity:.92}
.tv-course{background:var(--yellow);color:var(--on-yellow);border-radius:99px;padding:4px 12px;font-weight:700;font-size:13px;text-decoration:none}
.tv-side{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:grid;gap:10px;justify-items:center}
.ext-sec.tv-sec{padding-block:12px}
.tv-btn{width:46px;height:46px;border-radius:50%;border:0;background:rgba(0,0,0,.55);color:#fff;font-size:20px;cursor:pointer}
.tv-btn:focus-visible,.tv-tap:focus-visible{outline:3px solid var(--yellow)}
.tv-vol{writing-mode:vertical-lr;direction:rtl;height:90px;width:28px;accent-color:var(--yellow)}
.tv-hint{position:absolute;top:10px;left:0;right:0;text-align:center;color:#fff;font-size:12px;opacity:.8;pointer-events:none;text-shadow:0 1px 6px #000}

/* ---------- Nova tur ---------- */
.tour-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media(min-width:760px){.tour-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.tour-th{position:relative;aspect-ratio:4/3;border:0;padding:0;border-radius:var(--r-md);overflow:hidden;cursor:pointer;background:var(--chip)}
.tour-th img,.tour-th video{width:100%;height:100%;object-fit:cover;display:block}
.tour-cap{position:absolute;left:0;right:0;bottom:0;padding:18px 10px 8px;color:#fff;font-size:13px;text-align:left;background:linear-gradient(transparent,rgba(0,0,0,.7))}
.tour-play{position:absolute;inset:0;display:grid;place-items:center;font-size:40px;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.6)}
.tour-lb{border:0;padding:0;background:rgba(10,4,16,.94);color:#fff;width:100vw;height:100vh;max-width:100vw;max-height:100vh}
.tour-lb::backdrop{background:rgba(10,4,16,.94)}
.lb-in{display:grid;grid-template-rows:1fr auto;height:100%;touch-action:pan-y}
.lb-media{display:grid;place-items:center;min-height:0;padding:56px 8px 8px}.lb-media img,.lb-media video{max-width:100%;max-height:100%;object-fit:contain}
.lb-x{position:absolute;top:10px;right:10px;width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.18);color:#fff;font-size:22px;cursor:pointer;z-index:2}
.lb-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom))}
.lb-bar button{width:52px;height:52px;border-radius:50%;border:0;background:rgba(255,255,255,.18);color:#fff;font-size:28px;cursor:pointer}.lb-bar span{text-align:center;font-size:14px}

/* ---------- Yutuqlar ---------- */
.achv-grid{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media(min-width:700px){.achv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1000px){.achv-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.achv-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px;display:grid;gap:6px;align-content:start}
.achv-card img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-md)}.achv-ic{font-size:44px}
.achv-type{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-weight:700}
.achv-card.review blockquote{font-size:17px;font-style:italic}.achv-card figcaption{display:grid;font-weight:600}.achv-card figcaption small{color:var(--muted);font-weight:400}

/* ---------- Ota-onalar (demo) ---------- */
.demo-banner{background:var(--warn-bg);color:var(--warn);border:2px dashed var(--warn);border-radius:var(--r-md);padding:12px 14px;margin-bottom:16px;text-align:center}
.par-login{max-width:420px;margin:0 auto;display:grid;gap:12px}.par-login select,.par-sel select{min-height:44px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:0 10px;font:inherit}
.par-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.par-list{list-style:none;display:grid;gap:10px;padding:0}.par-list li{display:grid;gap:2px;padding:10px 12px;background:var(--chip);border-radius:var(--r-md)}.par-list li.done{opacity:.7}.par-list small{color:var(--muted)}
.par-att{display:flex;flex-wrap:wrap;gap:8px}.par-att span{width:48px;height:56px;border-radius:12px;display:grid;place-items:center;align-content:center;font-weight:700}.par-att .ok{background:var(--ok-bg);color:var(--ok)}.par-att .no{background:var(--err-bg);color:var(--err)}
.par-note{font-size:18px;border-left:4px solid var(--purple);padding-left:12px}
.par-bars{display:flex;gap:14px;align-items:end;height:180px}.par-bars div{flex:1;display:grid;justify-items:center;align-items:end;height:100%;gap:2px}.par-bars i{display:block;width:100%;max-width:56px;background:var(--purple);border-radius:8px 8px 0 0}
.par-body{margin-top:8px}
