/* ===== VidNeno ===== */
.vn{container:cat/inline-size}
main:has(.vn:not([hidden])){max-width:1240px}
.vn.mob{max-width:430px;margin-left:auto;margin-right:auto}
.vn.lt{background:#06080c;filter:invert(1) hue-rotate(180deg);border-radius:18px;padding:0 14px 14px}
.vn.lt .vscr{filter:invert(1) hue-rotate(180deg)}
.vn .ic{display:inline-flex;line-height:0}.vn .ic svg,.vn .btn svg{width:18px;height:18px}
.vbar{position:static;gap:10px 14px}.vbar .cbrand{gap:12px;flex:1 1 320px}.vbar .utt b{font-size:1.3rem;letter-spacing:.04em;background:linear-gradient(90deg,#fff,#c7d2fe,#00f2fe);-webkit-background-clip:text;background-clip:text;color:transparent}
.vbar .cact{margin-left:auto;flex-wrap:wrap;justify-content:flex-end}
.vpre,.vfix{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:12px;font-weight:600;cursor:pointer;color:var(--text);white-space:nowrap}
.vpre{border:1px solid #2a3366;background:#ffffff0d}.vpre .dn svg{width:14px;height:14px;color:var(--mute)}.vpre .ic svg{color:#00f2fe}
.vfix{border:0;background:linear-gradient(90deg,#4f46e5,#6366f1);color:#fff;box-shadow:0 6px 20px #4f46e55a}.vfix .ic svg{color:#00f2fe}
.cic:disabled{opacity:.4;cursor:default}
.vmenu{min-width:260px;max-width:86vw}.vmenu small{display:block;padding:8px 12px 4px;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#a5b4fc}
.vtool{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;padding:12px;margin:0 0 10px;border-radius:14px;background:#0e131b;border:1px solid var(--line)}
.vtool .btn{gap:8px;min-height:44px;padding:0 14px;border-color:#2a3366;color:var(--text)}.vtool .btn svg{color:#00f2fe}
.vq{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-left:auto;font-size:.82rem;color:var(--mute)}
.mk{min-height:40px;padding:0 10px;border-radius:9px;background:#080c22;font:.8rem ui-monospace,Consolas,monospace;cursor:pointer}
.m1{color:#fcd34d;border:1px solid #f59e0b55}.m2{color:#d8b4fe;border:1px solid #a855f755}.m3{color:#67e8f9;border:1px solid #22d3ee55}
.vrules{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;padding:10px 14px;margin:0 0 14px;border-radius:14px;background:#0a0f16;border:1px solid var(--line)}
.chk{display:flex;align-items:center;gap:10px;font-weight:600;min-height:40px;cursor:pointer}.chk input{width:20px;height:20px;margin:0;accent-color:#6366f1;flex:none}
.vsrc{display:flex;align-items:center;gap:8px;margin-left:auto;color:var(--mute);font-size:.85rem}.vsrc input{width:170px;margin:0;padding:8px 10px;min-height:40px;font:.85rem ui-monospace,Consolas,monospace;color:#67e8f9;background:#080c22;border-color:#2a3366}
.vgrid{display:grid;gap:14px;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"list prev" "list aud";align-items:start}
.vlistw{grid-area:list;min-width:0}.vprev{grid-area:prev;min-width:0}.vaud{grid-area:aud;min-width:0}
.vlh{display:flex;align-items:center;gap:10px;margin:0 0 8px}.vlh b{font-size:1rem}
.vlist{display:flex;flex-direction:column;gap:10px;max-height:calc(100vh - 150px);min-height:240px;overflow-y:auto;padding-right:4px;scroll-behavior:smooth}
.vempty{padding:30px 10px;text-align:center;border:2px dashed #2a3366;border-radius:16px}
.vc{background:#0e1333;border:1px solid #1c2347;border-radius:14px;padding:10px;transition:border-color .15s,box-shadow .15s}
.vc.act{border-color:#6366f1;background:#6366f114;box-shadow:0 0 22px #4f46e540}.vc.now{border-color:#00f2fe}.vc.vio:not(.act){border-color:#ef444466}
.vc header{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;margin:0 0 8px;padding:0 0 8px;border-bottom:1px solid #1c2347;font-size:.8rem}
.vn1{min-height:34px;padding:0 10px;border-radius:8px;border:1px solid #1c2347;background:#080c22;color:#00f2fe;font:700 .85rem ui-monospace,Consolas,monospace;cursor:pointer}
.vc .tmr{display:inline-flex;align-items:center;gap:6px}.vc .tmr i{font-style:normal;color:var(--mute)}
.vc .ti{width:9.6em;margin:0;padding:4px 6px;min-height:34px;text-align:center;font:.85rem ui-monospace,Consolas,monospace;border-radius:8px;border:1px solid #2a3366;background:#080c22;color:#e2e8f0}
.vd{margin-left:auto;font:.8rem ui-monospace,Consolas,monospace;color:var(--mute)}.vd.over{color:#fb7185;font-weight:700}
.vcps{font:.75rem ui-monospace,Consolas,monospace;color:var(--mute)}.vcps.fast{color:#fbbf24}
.vc textarea{margin:0;min-height:0;padding:9px 11px;font-size:.95rem;line-height:1.5;border-radius:12px;resize:none;overflow:hidden;background:#05070f;border:1px solid #1c2347;color:var(--text)}
.vc.vio textarea{border-color:#ef444499}
@media(pointer:coarse){.vc textarea,.vc .ti{font-size:max(16px,.95rem)}}
.vb{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0}.vb .bd{font-size:.72rem;padding:1px 9px;border-radius:99px;background:#1d2547;color:#94a3b8;border-color:#273056}
.vb .bd.bad{background:#ef444422;color:#fb7185;border-color:#ef444466}.vb .bd.warn{background:#f59e0b22;color:#fcd34d;border-color:#f59e0b66}
.vact{display:none;margin-top:10px}.vc.act .vact{display:flex}
.vact button svg{width:16px;height:16px;flex:none}.vact .dl{color:#fb7185}
.vprev,.vaud{background:#0a0f1c;border:1px solid #1c2347;border-radius:16px;padding:12px}
.vph{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:.88rem}.vph .ic svg{color:#818cf8}
.vtime{margin-left:auto;padding:2px 10px;border-radius:8px;background:#080c22;border:1px solid #1c2347;color:#00f2fe;font:.8rem ui-monospace,Consolas,monospace}
.vscr{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:12px;background:linear-gradient(135deg,#0f172a,#090d16 55%,#312e8166);border:1px solid #1c2347;container:vs/inline-size;display:grid;place-items:center}
.vscr video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000;opacity:0}.vscr.hasv video{opacity:1}
.vfilm{display:grid;justify-items:center;gap:6px;color:#6366f1}.vfilm svg{width:46px;height:46px}.vfilm small{color:#64748b;font:.75rem ui-monospace,Consolas,monospace}.vscr.hasv .vfilm{display:none}
.vov{position:absolute;left:6%;right:6%;bottom:8%;margin:auto;width:max-content;max-width:88%;padding:.3em .8em;border-radius:.5em;background:#000c;color:#fff;text-align:center;white-space:pre-line;font-weight:500;line-height:1.35;font-size:clamp(.8rem,3.6cqi,1.5rem);text-shadow:-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000,1px 1px 0 #000,0 2px 4px #000e;pointer-events:none;overflow-wrap:anywhere}
.vctl{display:flex;align-items:center;gap:8px;margin:10px 0 6px}.vctl .uplay{width:46px;height:46px;flex:none}.vctl .cic{flex:none;width:40px;height:40px}
.vctl input[type=range]{flex:1;min-width:0;margin:0;padding:0;height:24px;background:none;border:0;accent-color:#6366f1}
.vtl{position:relative;height:26px;margin:2px 0 0;border-radius:8px;background:#05070f;border:1px solid #1c2347;overflow:hidden;cursor:pointer}
.tb{position:absolute;top:4px;bottom:4px;border-radius:4px;background:#4f46e5aa;border:1px solid #818cf8}.tb.bad{background:#ef444488;border-color:#fb7185}.tb.act{outline:2px solid #00f2fe;outline-offset:-1px}
.vhead{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:#00f2fe;pointer-events:none}
.vah{display:flex;align-items:center;gap:10px;margin:0 0 10px;padding:0 0 10px;border-bottom:1px solid #1c2347}.vsh{display:flex;align-items:center;gap:8px}.vsh svg{color:#34d399;width:22px;height:22px}
.vscore{margin-left:auto;padding:3px 12px;border-radius:99px;font-weight:700;font-size:.8rem;border:1px solid}.vscore.ok{background:#10b98122;color:#34d399;border-color:#10b98166}.vscore.bad{background:#ef444422;color:#fb7185;border-color:#ef444466}
.vrg{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.vr{display:flex;flex-direction:column;gap:4px;text-align:left;padding:10px;border-radius:12px;background:#0e1333;border:1px solid #1c2347;color:var(--text);cursor:default;min-width:0}
.vr .vrt{display:flex;justify-content:space-between;align-items:flex-start;gap:6px;font-size:.8rem}.vr b{font-weight:600;color:#cbd5e1;line-height:1.3}.vr svg{width:18px;height:18px;color:#34d399;flex:none}
.vr small{color:#64748b;font-size:.72rem;line-height:1.35}
.vr.bad{background:#ef44440f;border-color:#ef444466;cursor:pointer}.vr.bad svg{color:#fb7185}.vr.bad small{color:#fda4af}
.vrec{margin-top:10px;padding:10px 12px;border-radius:12px;background:#05070f;border:1px solid #1c2347}.vrh{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:.82rem}.vrh b{display:flex;align-items:center;gap:6px;color:#00f2fe}.vrh svg{width:15px;height:15px}
.vrec p{margin:6px 0 0;font-size:.78rem;line-height:1.55;color:#94a3b8}
.vfn{display:block;margin:10px 0}.vfn span{display:block;margin:0 0 4px;font-size:.8rem;color:var(--mute)}.vfn input{margin:0;color:#67e8f9;font:.85rem ui-monospace,Consolas,monospace;background:#05070f}
#vOut{font:.78rem/1.5 ui-monospace,Consolas,monospace;color:#cbd5e1;background:#05070f;border-color:#1c2347;resize:none}
@container cat (max-width:900px){.vgrid{grid-template-columns:1fr;grid-template-areas:"prev" "list" "aud"}.vlist{max-height:none;overflow:visible}.vq,.vsrc{margin-left:0}}
.vn.mob .vgrid{grid-template-columns:1fr;grid-template-areas:"prev" "list" "aud"}.vn.mob .vlist{max-height:none;overflow:visible}.vn.mob .vq,.vn.mob .vsrc{margin-left:0}
@container cat (max-width:560px){.vbar .cact{flex:1 1 100%;justify-content:flex-start}.vfix,.cexp{flex:1 1 auto;justify-content:center}.vtool .btn{flex:1 1 auto;justify-content:center}.vsrc{flex:1 1 100%}.vsrc input{flex:1;width:auto}.vrg{grid-template-columns:1fr}.vc .ti{width:8.6em}.vact button .lbl,.vact button span{font-size:.85em}}
.vn.mob .vrg{grid-template-columns:1fr}
.vact button{white-space:nowrap}
@container cat (max-width:560px){.vbar .cact{gap:8px}.vbar .cact>.expw{flex:1 1 auto}.vpre{width:100%;justify-content:center}.vbar .cic{width:42px;height:42px}.vfix,.cexp{flex:1 1 calc(50% - 4px);padding:0 10px;min-width:0}.vfix span,.cexp span{overflow:hidden;text-overflow:ellipsis}.vtool{padding:10px;gap:8px}.vtool .btn{flex:1 1 calc(50% - 8px);padding:0 10px;font-size:.9rem;min-width:0}.vtool .btn span{line-height:1.2;text-align:center}.vq{flex:1 1 100%}.vrules{gap:2px 16px}}
/* ===== v15: compact sizes ===== */
.vn{--vz:1;font-size:.86rem}
.vn .back{margin-top:10px;font-size:.88rem}
.vbar{padding:7px 12px;margin:8px 0;border-radius:12px}.vbar .cbrand{gap:9px}.vbar .alogo svg{width:34px;height:34px}.vbar .utt b{font-size:1.05rem}.vbar .utt small{font-size:.72rem}.vbar .cv{font-size:.62rem;padding:1px 7px}
.vbar .cact{gap:6px}.vn .cic{width:34px;height:34px;border-radius:9px}.vn .cic svg{width:17px;height:17px}
.vpre,.vfix,.vn .cexp{min-height:34px;padding:0 11px;border-radius:9px;font-size:.8rem;gap:6px}.vn .ic svg,.vn .btn svg{width:15px;height:15px}
.vtool{padding:8px 10px;margin:0 0 8px;border-radius:11px;gap:6px 8px}.vtool .btn{min-height:34px;padding:0 11px;font-size:.8rem;gap:6px;border-width:1px}
.mk{min-height:30px;padding:0 8px;font-size:.72rem}.vq{font-size:.74rem}
.vrules{padding:6px 12px;margin:0 0 10px;border-radius:11px;gap:4px 16px}.chk{min-height:30px;font-size:.8rem;gap:8px}.chk input{width:16px;height:16px}.vsrc{font-size:.76rem}.vsrc input{min-height:30px;padding:3px 8px;font-size:.76rem;width:140px}
.vai{padding:8px 12px;margin:0 0 8px;border-radius:11px;background:#0a0f1c;border:1px solid #1c2347}.vaih{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 6px;font-size:.84rem}.vaih .ic svg{color:#00f2fe}.vaih .note{font-size:.74rem;margin:0}
.vaic{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.vaic .lp{flex:1 1 200px;max-width:280px}.vaic .lp span,.vsel span{display:block;font-size:.7rem;color:var(--mute);margin-bottom:2px}
.vaic input,.vaic select{margin:0;min-height:32px;padding:3px 9px;font-size:.8rem;border-radius:9px;background:#080c22;border-color:#2a3366;color:var(--text)}
.vsel{flex:1 1 150px;max-width:220px;margin:0}.vaic .vfix{flex:0 0 auto}
.vn .udet{margin:6px 0 0;padding:4px 10px;font-size:.78rem;border-radius:9px}
.vprog{display:flex;align-items:center;gap:10px;margin-top:6px;font-size:.76rem;color:var(--mute)}.vprog i{display:block;flex:0 0 120px;height:6px;border-radius:9px;background:#273047;overflow:hidden}.vprog b{display:block;height:100%;width:0;background:linear-gradient(90deg,#4f46e5,#00f2fe);transition:width .3s}
.vgrid{gap:10px}.vlh{margin:0 0 5px;gap:8px}.vlh b{font-size:.88rem}.vzm{margin-left:auto;gap:4px}.vzm button{min-width:30px;min-height:30px;padding:0;font-size:.78rem;border-radius:8px}.vzm span{min-width:40px;font-size:.74rem}
.vlist{gap:6px;max-height:calc(100vh - 120px)}
.vc{padding:7px 9px;border-radius:11px}.vc header{gap:6px 8px;margin:0 0 6px;padding:0 0 6px;font-size:.74rem}
.vn1{min-height:26px;padding:0 8px;font-size:.76rem}.vc .ti{width:8.2em;min-height:26px;padding:2px 5px;font-size:.76rem}
.vc textarea{padding:6px 9px;font-size:calc(.84rem*var(--vz));line-height:1.4;border-radius:9px}.vc .vd,.vcps{font-size:.72rem}
.vb{margin:5px 0 0;gap:4px}.vb .bd{font-size:.66rem;padding:0 7px}
.vact{margin-top:7px;gap:4px}.vact button{min-height:28px;padding:0 8px;font-size:.74rem;border-radius:7px;gap:4px}.vact button svg{width:13px;height:13px}
.vprev,.vaud{padding:9px;border-radius:12px}.vph{font-size:.8rem;margin:0 0 7px}.vtime{font-size:.72rem;padding:1px 8px}
.vctl{margin:7px 0 4px;gap:6px}.vctl .uplay{width:36px;height:36px}.vctl .uplay svg{width:16px;height:16px}.vctl .cic{width:32px;height:32px}
.vah{margin:0 0 7px;padding:0 0 7px;font-size:.84rem}.vscore{font-size:.72rem;padding:2px 10px}
.vrg{gap:6px}.vr{padding:7px 9px;border-radius:9px}.vr .vrt{font-size:.74rem}.vr svg{width:15px;height:15px}.vr small{font-size:.66rem}
.vrec{margin-top:7px;padding:7px 10px}.vrh{font-size:.76rem}.vrec p{font-size:.72rem;margin-top:4px}
.vov{font-size:clamp(.7rem,3cqi,1.15rem)}
#vDelV{margin-left:6px;width:28px;height:28px;color:#fb7185}
.vn .lp ul{background:#10173f}
@media(pointer:coarse){.vc textarea,.vc .ti,.vaic input,.vaic select{font-size:max(16px,.84rem)}.vn .cic{width:40px;height:40px}.vpre,.vfix,.vn .cexp,.vtool .btn{min-height:40px}.vact button{min-height:34px}}
@container cat (max-width:560px){.vaic .lp,.vsel{flex:1 1 100%;max-width:none}.vaic .vfix{flex:1 1 100%;justify-content:center}.vprog i{flex:0 0 70px}}
.vn.nop .vprev{display:none}.vn.nop .vgrid{grid-template-areas:"list aud"}
@container cat (max-width:900px){.vn.nop .vgrid{grid-template-areas:"list" "aud"}}
.vn.mob.nop .vgrid{grid-template-areas:"list" "aud"}
#vHideP{margin-left:6px;width:28px;height:28px}#vHideP svg{width:15px;height:15px}
.vsnack{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:85;display:flex;align-items:center;gap:14px;padding:8px 8px 8px 16px;border-radius:99px;background:#10173f;border:1px solid #4f46e5;color:#e8ecf2;box-shadow:0 10px 30px #000a;font-size:.86rem;max-width:92vw}
.vsnack button{min-height:34px;padding:0 16px;border-radius:99px;border:0;background:linear-gradient(90deg,#4f46e5,#6366f1);color:#fff;font-weight:700;cursor:pointer}
