/* ==========================================================================
   ARTΞMIDA · «Ваш VPN» V205 — новая страница: живая сцена продажи,
   путь ключа, калькулятор дохода, сеть, роли, площадки, шаги, вопросы.
   ========================================================================== */
html:not(#ui) body main.ovx{display:flex!important;flex-direction:column!important;gap:clamp(64px,8vw,112px)!important;padding-top:clamp(28px,4vw,56px)!important;padding-bottom:24px!important;--ovx-ease:cubic-bezier(.22,1,.36,1)}
html:not(#ui) body main.ovx > *{margin:0!important}
html:not(#ui) body main.ovx .ovx-i{display:inline-block;flex:0 0 auto;width:18px;height:18px;background:currentColor;-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}

/* ---------- кнопки ---------- */
html:not(#ui) body main.ovx .ovx-actions{display:flex;flex-wrap:wrap;gap:10px}
html:not(#ui) body main.ovx .ovx-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:50px;padding:0 22px;border-radius:16px;white-space:nowrap;text-decoration:none;
  font-size:15px;font-weight:750;color:var(--ui-text);background:linear-gradient(135deg,rgb(255 255 255/.10),rgb(255 255 255/.03));box-shadow:var(--lg-shadow-sm);
  -webkit-backdrop-filter:blur(10px) saturate(1.5);backdrop-filter:blur(10px) saturate(1.5);transition:background .25s ease,box-shadow .3s ease,transform .15s ease}
html:not(#ui) body main.ovx .ovx-btn:hover{background:linear-gradient(135deg,rgb(255 255 255/.16),rgb(255 255 255/.05))}
html:not(#ui) body main.ovx .ovx-btn:active{transform:scale(.97)}
html:not(#ui) body main.ovx .ovx-btn.is-primary{color:var(--ui-on-accent);background:linear-gradient(135deg,var(--ui-btn-a),var(--ui-btn-b));
  box-shadow:inset 0 0 0 1px rgb(255 255 255/.35),inset 1.5px 1.5px 0 rgb(255 255 255/.7),0 14px 34px -12px rgb(var(--ui-accent-2)/.8)}
html:not(#ui) body main.ovx .ovx-btn.is-primary:hover{box-shadow:inset 0 0 0 1px rgb(255 255 255/.45),inset 1.5px 1.5px 0 rgb(255 255 255/.8),0 18px 42px -12px rgb(var(--ui-accent-2)/.95)}
html:not(#ui) body main.ovx .ovx-btn.is-ghost{background:none;box-shadow:inset 0 0 0 1px var(--ui-stroke-2);-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--ui-text-2)}
html:not(#ui) body main.ovx .ovx-btn.is-ghost:hover{color:var(--ui-text);background:rgb(255 255 255/.05)}
html[data-theme="pearl"]:not(#ui) body main.ovx .ovx-btn:not(.is-primary):not(.is-ghost){background:rgb(255 255 255/.7)}

/* ---------- заголовки секций ---------- */
html:not(#ui) body main.ovx .ovx-head{display:flex;flex-direction:column;gap:12px;max-width:720px;margin:0 0 clamp(22px,3vw,34px)}
html:not(#ui) body main.ovx .ovx-kicker{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:rgb(var(--ui-accent))}
html:not(#ui) body main.ovx .ovx-head h2,html:not(#ui) body main.ovx .ovx-cta h2{margin:0!important;font-size:clamp(1.55rem,1.05rem + 1.7vw,2.5rem)!important;line-height:1.1!important}
html:not(#ui) body main.ovx .ovx-head p{margin:0;font-size:clamp(15px,.9rem + .2vw,17px);line-height:1.6;color:var(--ui-text-2)}

/* ---------- первый экран ---------- */
html:not(#ui) body main.ovx .ovx-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(28px,5vw,72px);min-height:min(640px,calc(100vh - 140px))}
html:not(#ui) body main.ovx .ovx-hero-copy{display:flex;flex-direction:column;align-items:flex-start;gap:22px}
html:not(#ui) body main.ovx .ovx-badge{display:inline-flex;align-items:center;gap:9px;padding:8px 14px;border-radius:99px;font-size:12.5px;font-weight:750;color:var(--ui-text-2);
  background:linear-gradient(135deg,rgb(255 255 255/.09),rgb(255 255 255/.02));box-shadow:var(--lg-shadow-sm)}
html:not(#ui) body main.ovx .ovx-badge i{width:7px;height:7px;border-radius:50%;background:rgb(var(--ui-accent));animation:ui-live 2.2s ease-out infinite}
html:not(#ui) body main.ovx .ovx-hero h1{margin:0!important;font-size:clamp(2.3rem,.9rem + 3.1vw,3.75rem)!important;line-height:1.02!important;letter-spacing:-.02em!important}
html:not(#ui) body main.ovx .ovx-lead{margin:0;max-width:34em;font-size:clamp(16px,.95rem + .35vw,19px);line-height:1.6;color:var(--ui-text-2)}
html:not(#ui) body main.ovx .ovx-stats{display:grid;grid-template-columns:repeat(3,auto);gap:clamp(16px,3vw,40px);margin:10px 0 0;padding:18px 0 0;border-top:1px solid var(--ui-stroke)}
html:not(#ui) body main.ovx .ovx-stats div{display:flex;flex-direction:column;gap:4px}
html:not(#ui) body main.ovx .ovx-stats dt{font-size:12.5px;font-weight:600;color:var(--ui-text-3)}
html:not(#ui) body main.ovx .ovx-stats dd{margin:0;font-size:15px;font-weight:600;color:var(--ui-text-2)}
html:not(#ui) body main.ovx .ovx-stats dd b{font-family:var(--ui-font-display);font-size:clamp(19px,1rem + .6vw,24px);font-weight:700;color:var(--ui-text)}

/* сцена: телефон с ботом */
html:not(#ui) body main.ovx .ovx-demo{position:relative;height:clamp(460px,44vw,560px);display:grid;place-items:center;--mx:0;--my:0}
html:not(#ui) body main.ovx .ovx-orbit{position:absolute;inset:4% 6%;pointer-events:none}
html:not(#ui) body main.ovx .ovx-orbit i{position:absolute;inset:0;border-radius:50%;border:1px solid rgb(var(--ui-accent)/.16);
  -webkit-mask:conic-gradient(#000 0 30%,transparent 42% 64%,#000 78%);mask:conic-gradient(#000 0 30%,transparent 42% 64%,#000 78%);animation:ui-spin 28s linear infinite}
html:not(#ui) body main.ovx .ovx-orbit i:last-child{inset:14%;animation-duration:19s;animation-direction:reverse;border-color:rgb(var(--ui-accent-2)/.2)}
html:not(#ui) body main.ovx .ovx-orbit::before{content:"";position:absolute;inset:22%;border-radius:50%;background:radial-gradient(circle,rgb(var(--ui-accent)/.28),transparent 65%);filter:blur(30px)}
html:not(#ui) body main.ovx .ovx-phone{position:relative;z-index:1;width:min(300px,76%);height:clamp(400px,38vw,470px);border-radius:40px!important;padding:14px;display:flex;flex-direction:column;gap:10px;
  --lg-tint:rgb(14 12 18/.55);transform:perspective(1200px) rotateY(-9deg) rotateX(4deg);box-shadow:var(--lg-shadow),0 40px 80px -30px rgb(0 0 0/.8)!important}
html:not(#ui) body main.ovx .ovx-phone::before{content:"";position:absolute;top:10px;left:50%;width:84px;height:22px;margin-left:-42px;border-radius:99px;background:rgb(0 0 0/.55)}
html:not(#ui) body main.ovx .ovx-phone-top{display:flex;align-items:center;gap:10px;margin-top:28px;padding:0 4px 10px;border-bottom:1px solid var(--ui-stroke)}
html:not(#ui) body main.ovx .ovx-phone-top > span:last-child{display:flex;flex-direction:column;line-height:1.2}
html:not(#ui) body main.ovx .ovx-phone-top b{font-size:14px}
html:not(#ui) body main.ovx .ovx-phone-top small{font-size:11.5px;color:#4ade80}
html:not(#ui) body main.ovx .ovx-bot-ava{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;font-weight:900;font-size:15px;color:#fff;background:linear-gradient(135deg,#7b8cff,#4954d6)}
html:not(#ui) body main.ovx .ovx-chat{display:flex;flex-direction:column;gap:8px;padding:6px 2px;flex:1;justify-content:flex-start;min-height:0}
html:not(#ui) body main.ovx .ovx-slot{display:grid}
html:not(#ui) body main.ovx .ovx-slot > *{grid-area:1/1}
html:not(#ui) body main.ovx .ovx-msg{max-width:86%;padding:9px 12px;border-radius:16px;font-size:12.5px;line-height:1.4;display:flex;flex-direction:column;gap:6px}
html:not(#ui) body main.ovx .ovx-msg.me{align-self:flex-end;flex-direction:row;align-items:center;border-bottom-right-radius:5px;color:var(--ui-on-accent);font-weight:650;background:linear-gradient(135deg,var(--ui-btn-a),var(--ui-btn-b))}
html:not(#ui) body main.ovx .ovx-msg.me .ovx-i{width:14px;height:14px}
html:not(#ui) body main.ovx .ovx-msg.bot{align-self:flex-start;border-bottom-left-radius:5px;background:rgb(255 255 255/.08);box-shadow:inset 0 0 0 1px rgb(255 255 255/.06)}
html:not(#ui) body main.ovx .ovx-inv{display:grid;grid-template-columns:1fr auto;align-items:end;gap:2px 14px}
html:not(#ui) body main.ovx .ovx-inv small{grid-column:1/-1;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ui-text-3)}
html:not(#ui) body main.ovx .ovx-inv b{font-size:13px}
html:not(#ui) body main.ovx .ovx-inv em{font-style:normal;font-weight:800;font-size:14px;color:rgb(var(--ui-accent))}
html:not(#ui) body main.ovx .ovx-pay{display:grid;place-items:center;height:30px;border-radius:10px;font-weight:800;font-size:12px;background:rgb(255 255 255/.1)}
html:not(#ui) body main.ovx .ovx-key{display:flex;align-items:center;gap:7px;padding:7px 9px;border-radius:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:rgb(var(--ui-accent));background:rgb(var(--ui-accent)/.1);box-shadow:inset 0 0 0 1px rgb(var(--ui-accent)/.22)}
html:not(#ui) body main.ovx .ovx-key .ovx-i{width:13px;height:13px}
html:not(#ui) body main.ovx .ovx-typing{align-self:flex-start;display:flex;gap:4px;padding:10px 12px;border-radius:14px;background:rgb(255 255 255/.07)}
html:not(#ui) body main.ovx .ovx-typing i{width:6px;height:6px;border-radius:50%;background:var(--ui-text-2);animation:sc-dot 1s ease-in-out infinite}
html:not(#ui) body main.ovx .ovx-typing i:nth-child(2){animation-delay:.15s}
html:not(#ui) body main.ovx .ovx-typing i:nth-child(3){animation-delay:.3s}
/* цикл 10 с: вопрос → счёт → оплата → печатает → ключ */
html:not(#ui) body main.ovx .ovx-demo :is(.m1,.m2,.m3,.m4,.m5){opacity:0;transform:translate3d(0,10px,0) scale(.96)}
html:not(#ui) body main.ovx .ovx-demo.play :is(.m1,.m2,.m3,.m4,.m5){animation:ovx-m 10s var(--ovx-ease) infinite}
html:not(#ui) body main.ovx .ovx-demo.play .m2{animation-name:ovx-m2}
html:not(#ui) body main.ovx .ovx-demo.play .m3{animation-name:ovx-m3}
html:not(#ui) body main.ovx .ovx-demo.play .m4{animation-name:ovx-m4}
html:not(#ui) body main.ovx .ovx-demo.play .m5{animation-name:ovx-m5}
@keyframes ovx-m{0%,3%{opacity:0;transform:translate3d(0,10px,0) scale(.96)}8%,90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
@keyframes ovx-m2{0%,14%{opacity:0;transform:translate3d(0,10px,0) scale(.96)}20%,90%{opacity:1;transform:none}96%,100%{opacity:0}}
@keyframes ovx-m3{0%,32%{opacity:0;transform:translate3d(0,10px,0) scale(.96)}37%,90%{opacity:1;transform:none}96%,100%{opacity:0}}
@keyframes ovx-m4{0%,40%{opacity:0;transform:translate3d(0,6px,0)}44%,52%{opacity:1;transform:none}56%,100%{opacity:0;transform:none}}
@keyframes ovx-m5{0%,55%{opacity:0;transform:translate3d(0,10px,0) scale(.96)}61%,90%{opacity:1;transform:none}96%,100%{opacity:0}}
/* «Оплатить» нажимается */
html:not(#ui) body main.ovx .ovx-demo.play .ovx-pay{animation:ovx-pay 10s ease infinite}
@keyframes ovx-pay{0%,27%{background:rgb(255 255 255/.1);transform:none}29%{transform:scale(.94);background:rgb(var(--ui-accent)/.45)}32%,100%{transform:none;background:rgb(74 222 128/.22);color:#4ade80}}
/* плавающие карточки вокруг телефона */
html:not(#ui) body main.ovx .ovx-float{position:absolute;z-index:2;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:18px!important;font-size:12.5px;
  transform:translate3d(calc(var(--mx) * var(--d,14px)),calc(var(--my) * var(--d,14px)),0);transition:transform .7s var(--ovx-ease)}
html:not(#ui) body main.ovx .ovx-api{top:3%;left:-1%;--d:-18px}
html:not(#ui) body main.ovx .ovx-api code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:700;color:var(--ui-text)}
html:not(#ui) body main.ovx .ovx-dot{width:8px;height:8px;border-radius:50%;background:rgb(var(--ui-accent))}
html:not(#ui) body main.ovx .ovx-ok{padding:3px 8px;border-radius:8px;font-weight:800;font-size:11.5px;color:#4ade80;background:rgb(74 222 128/.12);opacity:.35}
html:not(#ui) body main.ovx .ovx-demo.play .ovx-ok{animation:ovx-ok 10s ease infinite}
html:not(#ui) body main.ovx .ovx-demo.play .ovx-api .ovx-dot{animation:ovx-dot 10s ease infinite}
@keyframes ovx-ok{0%,44%{opacity:.35}48%,90%{opacity:1;box-shadow:0 0 0 0 rgb(74 222 128/.0)}96%,100%{opacity:.35}}
@keyframes ovx-dot{0%,40%{background:rgb(var(--ui-accent));box-shadow:none}42%{box-shadow:0 0 0 7px rgb(var(--ui-accent)/.2)}46%,92%{background:#4ade80;box-shadow:none}100%{background:rgb(var(--ui-accent))}}
html:not(#ui) body main.ovx .ovx-profit{right:0;bottom:16%;flex-direction:column;align-items:flex-start;gap:5px;min-width:180px;--d:16px}
html:not(#ui) body main.ovx .ovx-profit small{font-size:11.5px;color:var(--ui-text-3)}
html:not(#ui) body main.ovx .ovx-profit b{font-family:var(--ui-font-display);font-size:24px;color:#4ade80}
html:not(#ui) body main.ovx .ovx-bar{display:block;width:100%;height:6px;border-radius:6px;background:rgb(255 255 255/.08);overflow:hidden}
html:not(#ui) body main.ovx .ovx-bar i{display:block;height:100%;width:40%;border-radius:inherit;background:linear-gradient(90deg,#4ade80,#a7f3d0)}
html:not(#ui) body main.ovx .ovx-demo.play .ovx-bar i{animation:ovx-bar 10s var(--ovx-ease) infinite}
html:not(#ui) body main.ovx .ovx-demo.play .ovx-profit b{animation:ovx-pop 10s var(--ovx-ease) infinite}
@keyframes ovx-bar{0%,58%{width:0}70%,92%{width:40%}100%{width:0}}
@keyframes ovx-pop{0%,60%{transform:none}64%{transform:scale(1.12)}68%,100%{transform:none}}
html:not(#ui) body main.ovx .ovx-geo{left:4%;bottom:5%;--d:10px}
html:not(#ui) body main.ovx .ovx-geo b{font-family:var(--ui-font-display);font-size:16px}
html:not(#ui) body main.ovx .ovx-flags{display:flex;align-items:center;gap:5px}
html:not(#ui) body main.ovx .ovx-flags img{display:block;width:24px;height:18px;object-fit:cover;border-radius:4px;margin:0;box-shadow:0 1px 3px rgb(0 0 0/.35)}

/* ---------- путь ключа ---------- */
html:not(#ui) body main.ovx .ovx-flow{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:clamp(22px,3vw,34px) clamp(14px,2vw,26px);border-radius:28px!important}
html:not(#ui) body main.ovx .ovx-flow-line{position:absolute;left:12.5%;right:12.5%;top:calc(clamp(22px,3vw,34px) + 30px);height:2px;border-radius:2px;background:linear-gradient(90deg,rgb(var(--ui-accent)/.12),rgb(var(--ui-accent)/.32),rgb(var(--ui-accent)/.12))}
html:not(#ui) body main.ovx .ovx-flow-line i{position:absolute;top:50%;left:0;width:56px;height:6px;margin:-3px 0 0 -28px;border-radius:6px;opacity:0;
  background:radial-gradient(closest-side,#fff,rgb(var(--ui-accent)) 60%,transparent);filter:drop-shadow(0 0 8px rgb(var(--ui-accent)))}
html:not(#ui) body main.ovx .ovx-flow.play .ovx-flow-line i{animation:ovx-packet 4.8s cubic-bezier(.6,0,.3,1) infinite}
@keyframes ovx-packet{0%{left:0;opacity:0}6%{opacity:1}88%{left:100%;opacity:1}100%{left:100%;opacity:0}}
html:not(#ui) body main.ovx .ovx-node{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:0 6px}
html:not(#ui) body main.ovx .ovx-node-ico{display:grid;place-items:center;width:60px;height:60px;border-radius:20px;color:var(--ui-text-2);
  background:linear-gradient(135deg,rgb(40 34 46/.95),rgb(22 19 26/.95));box-shadow:inset 0 0 0 1px rgb(255 255 255/.1),inset 1px 1px 0 rgb(255 255 255/.25),0 10px 24px -10px rgb(0 0 0/.7);transition:color .3s ease}
html:not(#ui) body main.ovx .ovx-node-ico .ovx-i{width:24px;height:24px}
html:not(#ui) body main.ovx .ovx-flow.play .ovx-node-ico{animation:ovx-node 4.8s ease infinite;animation-delay:calc(var(--k) * 1.38s + .1s)}
@keyframes ovx-node{0%{color:var(--ui-text-2)}6%{color:rgb(var(--ui-accent));box-shadow:inset 0 0 0 1px rgb(var(--ui-accent)/.6),inset 1px 1px 0 rgb(255 255 255/.3),0 0 0 6px rgb(var(--ui-accent)/.12),0 10px 30px -6px rgb(var(--ui-accent)/.6)}30%,100%{color:var(--ui-text-2)}}
html:not(#ui) body main.ovx .ovx-node.is-you .ovx-node-ico{color:rgb(var(--ui-accent));box-shadow:inset 0 0 0 1px rgb(var(--ui-accent)/.45),inset 1px 1px 0 rgb(255 255 255/.3),0 10px 24px -10px rgb(var(--ui-accent)/.6)}
html:not(#ui) body main.ovx .ovx-node b{font-size:15.5px;font-weight:800;margin-top:6px}
html:not(#ui) body main.ovx .ovx-node small{font-size:13.5px;line-height:1.5;color:var(--ui-text-2);max-width:22ch}
html:not(#ui) body main.ovx .ovx-tag{position:absolute;top:-10px;left:50%;transform:translateX(-50%);padding:2px 9px;border-radius:99px;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ui-on-accent);background:rgb(var(--ui-accent));white-space:nowrap}

/* ---------- калькулятор ---------- */
html:not(#ui) body main.ovx .ovx-calc{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:14px}
html:not(#ui) body main.ovx .ovx-calc-in,html:not(#ui) body main.ovx .ovx-calc-out{display:flex;flex-direction:column;gap:22px;padding:clamp(20px,2.6vw,30px);border-radius:28px!important}
html:not(#ui) body main.ovx .ovx-field{display:flex;flex-direction:column;gap:12px}
html:not(#ui) body main.ovx .ovx-label{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:14px;font-weight:700;color:var(--ui-text-2)}
html:not(#ui) body main.ovx .ovx-label output{font-family:var(--ui-font-display);font-size:18px;font-weight:700;color:var(--ui-text)}
html:not(#ui) body main.ovx .ovx-seg{position:relative;display:grid;grid-template-columns:repeat(4,1fr);padding:4px;border-radius:16px;background:rgb(0 0 0/.22);box-shadow:inset 0 0 0 1px var(--ui-stroke)}
html:not(#ui) body main.ovx .ovx-seg::before{content:"";position:absolute;top:4px;bottom:4px;left:0;width:var(--sw,0);transform:translateX(var(--sx,0));border-radius:12px;
  background:linear-gradient(135deg,rgb(255 255 255/.16),rgb(255 255 255/.05));box-shadow:inset 0 0 0 1px rgb(255 255 255/.14),inset 1px 1px 0 rgb(255 255 255/.4),0 6px 14px -6px rgb(0 0 0/.6);transition:transform .45s cubic-bezier(.3,1.25,.5,1),width .3s ease}
html:not(#ui) body main.ovx .ovx-seg button{position:relative;z-index:1;height:42px;border:0;background:none;border-radius:12px;cursor:pointer;font:inherit;font-size:14px;font-weight:750;color:var(--ui-text-3);transition:color .25s ease}
html:not(#ui) body main.ovx .ovx-seg button.on{color:var(--ui-text)}
html:not(#ui) body main.ovx .ovx-seg button:hover{color:var(--ui-text)}
html[data-theme="pearl"]:not(#ui) body main.ovx .ovx-seg{background:rgb(22 19 26/.05)}
html[data-theme="pearl"]:not(#ui) body main.ovx .ovx-seg::before{background:#fff}
/* ползунки */
html:not(#ui) body main.ovx input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:28px;margin:0;background:none;cursor:pointer;--p:50%}
html:not(#ui) body main.ovx input[type=range]::-webkit-slider-runnable-track{height:8px;border-radius:8px;background:linear-gradient(90deg,rgb(var(--ui-accent)) var(--p),rgb(255 255 255/.1) var(--p))}
html:not(#ui) body main.ovx input[type=range]::-moz-range-track{height:8px;border-radius:8px;background:linear-gradient(90deg,rgb(var(--ui-accent)) var(--p),rgb(255 255 255/.1) var(--p))}
html:not(#ui) body main.ovx input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;margin-top:-8px;border-radius:50%;background:#fff;box-shadow:0 0 0 5px rgb(var(--ui-accent)/.25),0 4px 12px rgb(0 0 0/.4);transition:box-shadow .2s ease}
html:not(#ui) body main.ovx input[type=range]::-moz-range-thumb{width:24px;height:24px;border:0;border-radius:50%;background:#fff;box-shadow:0 0 0 5px rgb(var(--ui-accent)/.25),0 4px 12px rgb(0 0 0/.4)}
html:not(#ui) body main.ovx input[type=range]:active::-webkit-slider-thumb{box-shadow:0 0 0 9px rgb(var(--ui-accent)/.25),0 4px 12px rgb(0 0 0/.4)}
html:not(#ui) body main.ovx input[type=range]:focus-visible{outline:2px solid rgb(var(--ui-accent)/.6);outline-offset:4px;border-radius:8px}
html:not(#ui) body main.ovx .ovx-calc-out{justify-content:center;--lg-tint:rgb(74 222 128/.04);gap:16px}
html:not(#ui) body main.ovx .ovx-big{font-family:var(--ui-font-display);font-size:clamp(2.2rem,1.4rem + 2.4vw,3.4rem);font-weight:700;line-height:1;letter-spacing:-.02em;color:#4ade80;font-variant-numeric:tabular-nums;text-shadow:0 0 40px rgb(74 222 128/.25)}
html:not(#ui) body main.ovx.ovx-loss .ovx-big{color:#f87171;text-shadow:none}
html:not(#ui) body main.ovx .ovx-split-bar{display:flex;height:12px;border-radius:12px;overflow:hidden;background:rgb(255 255 255/.06)}
html:not(#ui) body main.ovx .ovx-split-bar i{display:block;height:100%;transition:width .5s var(--ovx-ease)}
html:not(#ui) body main.ovx .ovx-split-bar .cost,html:not(#ui) body main.ovx .ovx-legend i.cost{background:rgb(var(--ui-accent)/.55)}
html:not(#ui) body main.ovx .ovx-split-bar .gain,html:not(#ui) body main.ovx .ovx-legend i.gain{background:linear-gradient(90deg,#4ade80,#86efac)}
html:not(#ui) body main.ovx .ovx-legend{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}
html:not(#ui) body main.ovx .ovx-legend li{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ui-text-2)}
html:not(#ui) body main.ovx .ovx-legend li b{margin-left:auto;color:var(--ui-text);font-variant-numeric:tabular-nums}
html:not(#ui) body main.ovx .ovx-legend i{width:10px;height:10px;border-radius:3px}
html:not(#ui) body main.ovx .ovx-note{margin:0;font-size:13px;line-height:1.5;color:var(--ui-text-3)}
/* оптовые цены */
html:not(#ui) body main.ovx .ovx-prices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:14px;padding:8px;border-radius:24px!important}
html:not(#ui) body main.ovx .ovx-price{position:relative;display:flex;flex-direction:column;gap:4px;padding:16px 16px 14px;border-radius:18px;cursor:pointer;transition:background .25s ease,box-shadow .3s ease}
html:not(#ui) body main.ovx .ovx-price:hover{background:rgb(255 255 255/.05)}
html:not(#ui) body main.ovx .ovx-price.is-trial{cursor:default}
html:not(#ui) body main.ovx .ovx-price small{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ui-text-3)}
html:not(#ui) body main.ovx .ovx-price b{font-family:var(--ui-font-display);font-size:clamp(22px,1.1rem + .8vw,30px);font-weight:700;color:var(--ui-text)}
html:not(#ui) body main.ovx .ovx-price span{font-size:13px;color:var(--ui-text-2)}
html:not(#ui) body main.ovx .ovx-price em{position:absolute;top:12px;right:12px;font-style:normal;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:99px;color:var(--ui-on-accent);background:rgb(var(--ui-accent))}
html:not(#ui) body main.ovx .ovx-price.is-picked{background:linear-gradient(135deg,rgb(var(--ui-accent)/.16),rgb(var(--ui-accent)/.04));box-shadow:inset 0 0 0 1px rgb(var(--ui-accent)/.35)}
html:not(#ui) body main.ovx .ovx-price:focus-visible{outline:2px solid rgb(var(--ui-accent)/.7);outline-offset:-2px}
html:not(#ui) body main.ovx .ovx-pay-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
html:not(#ui) body main.ovx :is(.ovx-topup,.ovx-volume){display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px 16px;padding:22px;border-radius:24px!important}
html:not(#ui) body main.ovx :is(.ovx-topup,.ovx-volume) b{font-size:16px;font-weight:800}
html:not(#ui) body main.ovx :is(.ovx-topup,.ovx-volume) p{margin:4px 0 0;font-size:14px;line-height:1.55;color:var(--ui-text-2)}
html:not(#ui) body main.ovx :is(.ovx-topup,.ovx-volume) .ovx-btn{grid-column:1/-1;justify-self:start}
html:not(#ui) body main.ovx .ovx-topup .ovx-btn{grid-column:2;justify-self:end}
html:not(#ui) body main.ovx .ovx-methods{grid-column:2;grid-row:2;display:flex;gap:6px;align-self:center}
html:not(#ui) body main.ovx .ovx-methods img{width:36px;height:36px;padding:6px;border-radius:11px;background:rgb(255 255 255/.06);box-shadow:inset 0 0 0 1px var(--ui-stroke)}
html:not(#ui) body main.ovx .ovx-topup{grid-template-columns:auto minmax(0,1fr) auto}
html:not(#ui) body main.ovx .ovx-topup > div{grid-column:2/4}
html:not(#ui) body main.ovx .ovx-topup .ovx-btn{grid-column:3;grid-row:2}
html:not(#ui) body main.ovx .ovx-volume .ovx-btn{grid-column:2}
html:not(#ui) body main.ovx .ovx-tile{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;color:var(--ui-text);
  background:linear-gradient(135deg,rgb(255 255 255/.12),rgb(255 255 255/.03));box-shadow:inset 0 0 0 1px rgb(255 255 255/.1),inset 1px 1px 0 rgb(255 255 255/.3)}
html:not(#ui) body main.ovx .ovx-tile .ovx-i{width:22px;height:22px}
html:not(#ui) body main.ovx .ovx-tile.is-accent{color:rgb(var(--ui-accent));background:linear-gradient(135deg,rgb(var(--ui-accent)/.22),rgb(var(--ui-accent)/.06))}

/* ---------- сеть ---------- */
html:not(#ui) body main.ovx .ovx-net{padding:clamp(18px,2.4vw,28px);border-radius:28px!important;display:flex;flex-direction:column;gap:18px}
html:not(#ui) body main.ovx .ovx-net-head{display:flex;align-items:center;gap:16px}
html:not(#ui) body main.ovx .ovx-net-head > div:last-child{display:flex;flex-direction:column;gap:3px}
html:not(#ui) body main.ovx #ownVpnPreviewCount{font-family:var(--ui-font-display);font-size:clamp(18px,1rem + .6vw,24px);font-weight:700;color:var(--ui-text)}
html:not(#ui) body main.ovx #ownVpnNetworkStatus{font-size:13px;color:var(--ui-text-3)}
html:not(#ui) body main.ovx .ovx-net-radar{position:relative;flex:0 0 56px;height:56px;border-radius:50%;background:radial-gradient(circle,rgb(74 222 128/.18),transparent 70%);box-shadow:inset 0 0 0 1px rgb(74 222 128/.25)}
html:not(#ui) body main.ovx .ovx-net-radar i{position:absolute;inset:0;border-radius:50%;border:1px solid rgb(74 222 128/.5);opacity:0}
html:not(#ui) body main.ovx .ovx-net-radar.play i{animation:ovx-ring 3s ease-out infinite}
html:not(#ui) body main.ovx .ovx-net-radar i:nth-child(2){animation-delay:1s}
html:not(#ui) body main.ovx .ovx-net-radar i:nth-child(3){animation-delay:2s}
html:not(#ui) body main.ovx .ovx-net-radar span{position:absolute;left:50%;top:50%;width:12px;height:12px;margin:-6px;border-radius:50%;background:#4ade80;box-shadow:0 0 14px #4ade80}
@keyframes ovx-ring{from{transform:scale(.4);opacity:.9}to{transform:scale(1.5);opacity:0}}
html:not(#ui) body.own-vpn-catalog-stale main.ovx .ovx-net-radar span{background:#fbbf24;box-shadow:0 0 14px #fbbf24}
html:not(#ui) body main.ovx .ovx-net-grid.vpn-server-stack{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;max-height:none!important;height:auto!important;overflow:visible!important;padding:0!important;margin:0!important;-webkit-mask:none!important;mask:none!important}
html:not(#ui) body main.ovx .ovx-net-grid .ui-loc-scan{display:none!important}
html:not(#ui) body main.ovx .ovx-net-grid .vpn-server-card{display:flex!important;align-items:center!important;gap:12px!important;min-height:64px!important;height:auto!important;padding:12px 14px!important;margin:0!important;border-radius:18px!important;
  background:linear-gradient(135deg,rgb(255 255 255/.065),rgb(255 255 255/.02))!important;box-shadow:inset 0 0 0 1px rgb(255 255 255/.07),inset 1px 1px 0 rgb(255 255 255/.12)!important;border:0!important;transition:background .25s ease,transform .25s ease}
html:not(#ui) body main.ovx .ovx-net-grid .vpn-server-card:hover{background:linear-gradient(135deg,rgb(255 255 255/.11),rgb(255 255 255/.03))!important}
html:not(#ui) body main.ovx .ovx-net-grid .own-vpn-country-flag img{width:30px!important;height:22px!important;object-fit:cover;border-radius:6px!important;box-shadow:0 2px 6px rgb(0 0 0/.35)}
html:not(#ui) body main.ovx .ovx-net-grid .own-vpn-country-flag,html:not(#ui) body main.ovx .ovx-net-grid .own-vpn-group-icon{flex:0 0 auto!important;width:36px!important;height:36px!important;display:grid!important;place-items:center!important;border-radius:12px!important;background:rgb(255 255 255/.05)!important;margin:0!important}
html:not(#ui) body main.ovx .ovx-net-grid .own-vpn-server-copy{flex:1 1 auto;min-width:0;display:flex!important;flex-direction:column!important;gap:1px!important}
html:not(#ui) body main.ovx .ovx-net-grid .own-vpn-server-copy b{font-size:14.5px!important;font-weight:750!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--ui-text)!important}
html:not(#ui) body main.ovx .ovx-net-grid .own-vpn-server-copy small{font-size:12.5px!important;color:var(--ui-text-3)!important}
html:not(#ui) body main.ovx .ovx-net-grid .vpn-server-card[data-server-kind="bypass"] .own-vpn-server-copy small,html:not(#ui) body main.ovx .ovx-net-grid .vpn-server-card[data-server-kind="auto-bypass"] .own-vpn-server-copy small{color:rgb(var(--ui-accent))!important}
html:not(#ui) body main.ovx .ovx-net-grid .own-vpn-skeleton{grid-column:1/-1;padding:28px;text-align:center;color:var(--ui-text-3)}

/* ---------- роли ---------- */
html:not(#ui) body main.ovx .ovx-roles{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 0 minmax(0,1fr);gap:14px}
html:not(#ui) body main.ovx .ovx-role{padding:clamp(20px,2.6vw,30px);border-radius:28px!important}
html:not(#ui) body main.ovx .ovx-role.is-you{--lg-tint:rgb(var(--ui-accent)/.05)}
html:not(#ui) body main.ovx .ovx-role h3{display:flex;align-items:center;gap:14px;margin:0 0 18px;font-size:18px;font-weight:800}
html:not(#ui) body main.ovx .ovx-role ul{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}
html:not(#ui) body main.ovx .ovx-role li{position:relative;padding-left:30px;font-size:15px;line-height:1.5;color:var(--ui-text-2)}
html:not(#ui) body main.ovx .ovx-role li::before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:7px;background:rgb(74 222 128/.14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234ade80' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/12px no-repeat}
html:not(#ui) body main.ovx .ovx-role.is-you li::before{background-color:rgb(var(--ui-accent)/.16);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff9fbc' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E")}
html:not(#ui) body main.ovx .ovx-roles-link{position:relative;align-self:center;z-index:2}
html:not(#ui) body main.ovx .ovx-roles-link b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:56px;height:56px;border-radius:50%;font-size:12px;font-weight:900;letter-spacing:.08em;
  color:var(--ui-on-accent);background:linear-gradient(135deg,var(--ui-btn-a),var(--ui-btn-b));box-shadow:0 0 0 6px rgb(12 10 16/.85),0 10px 30px -6px rgb(var(--ui-accent-2)/.7)}
html[data-theme="pearl"]:not(#ui) body main.ovx .ovx-roles-link b{box-shadow:0 0 0 6px rgb(255 255 255/.9),0 10px 30px -6px rgb(var(--ui-accent-2)/.5)}

/* ---------- площадки ---------- */
html:not(#ui) body main.ovx .ovx-channels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
html:not(#ui) body main.ovx .ovx-channel{display:flex;flex-direction:column;gap:10px;padding:22px;border-radius:24px!important;transition:transform .35s var(--ovx-ease)}
html:not(#ui) body main.ovx .ovx-channel b{margin-top:6px;font-size:16px;font-weight:800}
html:not(#ui) body main.ovx .ovx-channel p{margin:0;font-size:14px;line-height:1.55;color:var(--ui-text-2)}
html:not(#ui) body main.ovx .ovx-channel .ovx-tile{transition:color .3s ease,background .3s ease}
html:not(#ui) body main.ovx .ovx-channel:hover .ovx-tile{color:rgb(var(--ui-accent));background:linear-gradient(135deg,rgb(var(--ui-accent)/.22),rgb(var(--ui-accent)/.06))}

/* ---------- шаги ---------- */
html:not(#ui) body main.ovx .ovx-steps{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
html:not(#ui) body main.ovx .ovx-steps::before{content:"";position:absolute;left:30px;right:30px;top:29px;height:2px;background:linear-gradient(90deg,rgb(var(--ui-accent)/.5),rgb(var(--ui-accent)/.08));transform-origin:left;transform:scaleX(0);transition:transform 1.2s var(--ovx-ease) .2s}
html:not(#ui) body main.ovx .ovx-steps.play::before{transform:none}
html:not(#ui) body main.ovx .ovx-steps li{position:relative;display:flex;flex-direction:column;gap:16px}
html:not(#ui) body main.ovx .ovx-step-n{position:relative;z-index:1;display:grid;place-items:center;width:60px;height:60px;border-radius:20px;font-family:var(--ui-font-display);font-size:22px;font-weight:700;
  color:var(--ui-on-accent);background:linear-gradient(135deg,var(--ui-btn-a),var(--ui-btn-b));box-shadow:inset 1.5px 1.5px 0 rgb(255 255 255/.6),0 12px 28px -10px rgb(var(--ui-accent-2)/.7);
  transform:scale(.6);opacity:0;transition:transform .6s cubic-bezier(.3,1.4,.5,1),opacity .4s ease;transition-delay:calc(var(--k) * .25s + .2s)}
html:not(#ui) body main.ovx .ovx-steps.play .ovx-step-n{transform:none;opacity:1}
html:not(#ui) body main.ovx .ovx-steps b{font-size:17px;font-weight:800}
html:not(#ui) body main.ovx .ovx-steps p{margin:6px 0 0;font-size:14.5px;line-height:1.55;color:var(--ui-text-2);max-width:32ch}

/* ---------- вопросы ---------- */
html:not(#ui) body main.ovx .ovx-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
html:not(#ui) body main.ovx .ovx-faq details{border-radius:20px!important;overflow:hidden}
html:not(#ui) body main.ovx .ovx-faq summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px;cursor:pointer;list-style:none;font-size:15.5px;font-weight:750;color:var(--ui-text)}
html:not(#ui) body main.ovx .ovx-faq summary::-webkit-details-marker{display:none}
html:not(#ui) body main.ovx .ovx-faq summary i{position:relative;flex:0 0 28px;height:28px;border-radius:10px;background:rgb(255 255 255/.06);transition:background .3s ease,transform .45s cubic-bezier(.3,1.3,.5,1)}
html:not(#ui) body main.ovx .ovx-faq summary i::before,html:not(#ui) body main.ovx .ovx-faq summary i::after{content:"";position:absolute;left:50%;top:50%;width:11px;height:2px;margin:-1px 0 0 -5.5px;border-radius:2px;background:currentColor;transition:transform .45s cubic-bezier(.3,1.3,.5,1)}
html:not(#ui) body main.ovx .ovx-faq summary i::after{transform:rotate(90deg)}
html:not(#ui) body main.ovx .ovx-faq details[open] summary i{background:rgb(var(--ui-accent)/.18);color:rgb(var(--ui-accent));transform:rotate(180deg)}
html:not(#ui) body main.ovx .ovx-faq details[open] summary i::after{transform:rotate(180deg)}
html:not(#ui) body main.ovx .ovx-faq details > div{overflow:hidden}
html:not(#ui) body main.ovx .ovx-faq details p{margin:0;padding:0 20px 18px;font-size:14.5px;line-height:1.6;color:var(--ui-text-2)}

/* ---------- финал ---------- */
html:not(#ui) body main.ovx .ovx-cta{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:clamp(26px,4vw,48px);border-radius:32px!important}
html:not(#ui) body main.ovx .ovx-cta > div:not(.ovx-cta-glow){position:relative;z-index:1;display:flex;flex-direction:column;gap:10px;max-width:560px}
html:not(#ui) body main.ovx .ovx-cta p{margin:0;font-size:16px;line-height:1.55;color:var(--ui-text-2)}
html:not(#ui) body main.ovx .ovx-cta .ovx-actions{position:relative;z-index:1}
html:not(#ui) body main.ovx .ovx-cta-glow{position:absolute;right:-10%;top:-60%;width:60%;height:220%;background:radial-gradient(closest-side,rgb(var(--ui-accent)/.25),transparent);filter:blur(20px);animation:ui-breathe 7s ease-in-out infinite;pointer-events:none}

/* ---------- адаптив ---------- */
@media (max-width:1100px){
  html:not(#ui) body main.ovx .ovx-channels{grid-template-columns:repeat(2,minmax(0,1fr))}
  html:not(#ui) body main.ovx .ovx-net-grid.vpn-server-stack{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html:not(#ui) body main.ovx .ovx-prices{grid-template-columns:repeat(5,minmax(120px,1fr));overflow-x:auto;scrollbar-width:none}
  html:not(#ui) body main.ovx .ovx-pay-row{grid-template-columns:1fr}
}
@media (max-width:900px){
  html:not(#ui) body main.ovx .ovx-hero{grid-template-columns:1fr;min-height:0}
  html:not(#ui) body main.ovx .ovx-demo{height:500px;max-width:520px;width:100%;justify-self:center}
  html:not(#ui) body main.ovx .ovx-calc{grid-template-columns:1fr}
  html:not(#ui) body main.ovx .ovx-roles{grid-template-columns:1fr;gap:34px}
  html:not(#ui) body main.ovx .ovx-roles-link{order:0;height:0}
  html:not(#ui) body main.ovx .ovx-roles > .ovx-role:first-child{order:-1}
  html:not(#ui) body main.ovx .ovx-faq{grid-template-columns:1fr}
  html:not(#ui) body main.ovx .ovx-flow{grid-template-columns:1fr;gap:22px;padding:24px 20px}
  html:not(#ui) body main.ovx .ovx-flow-line{left:50px;right:auto;top:52px;bottom:52px;width:2px;height:auto}
  html:not(#ui) body main.ovx .ovx-flow-line i{left:50%!important;width:6px;height:56px;margin:-28px 0 0 -3px;top:0}
  html:not(#ui) body main.ovx .ovx-flow.play .ovx-flow-line i{animation-name:ovx-packet-v}
  @keyframes ovx-packet-v{0%{top:0;opacity:0}6%{opacity:1}88%{top:100%;opacity:1}100%{top:100%;opacity:0}}
  html:not(#ui) body main.ovx .ovx-node{display:grid;grid-template-columns:60px minmax(0,1fr);grid-template-rows:auto auto;column-gap:16px;row-gap:2px;align-items:center;text-align:left;padding:0}
  html:not(#ui) body main.ovx .ovx-node-ico{grid-row:1/3;margin-left:20px}
  html:not(#ui) body main.ovx .ovx-node b{margin:0;align-self:end}
  html:not(#ui) body main.ovx .ovx-node small{max-width:none;align-self:start}
  html:not(#ui) body main.ovx .ovx-tag{position:static;transform:none;grid-column:2;grid-row:auto;justify-self:start;order:-1}
  html:not(#ui) body main.ovx .ovx-node.is-you{grid-template-rows:auto auto auto}
  html:not(#ui) body main.ovx .ovx-node.is-you .ovx-node-ico{grid-row:1/4}
  html:not(#ui) body main.ovx .ovx-steps{grid-template-columns:1fr;gap:22px}
  html:not(#ui) body main.ovx .ovx-steps::before{left:29px;right:auto;top:30px;bottom:30px;width:2px;height:auto;transform:scaleY(0);transform-origin:top;background:linear-gradient(180deg,rgb(var(--ui-accent)/.5),rgb(var(--ui-accent)/.08))}
  html:not(#ui) body main.ovx .ovx-steps li{flex-direction:row;align-items:flex-start}
}
@media (max-width:640px){
  html:not(#ui) body main.ovx{gap:64px!important}
  html:not(#ui) body main.ovx .ovx-hero h1{font-size:clamp(2.2rem,10.5vw,3rem)!important}
  html:not(#ui) body main.ovx .ovx-actions{width:100%}
  html:not(#ui) body main.ovx .ovx-hero .ovx-actions .ovx-btn{flex:1 1 auto}
  html:not(#ui) body main.ovx .ovx-hero .ovx-actions .ovx-btn.is-primary{flex-basis:100%}
  html:not(#ui) body main.ovx .ovx-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%}
  html:not(#ui) body main.ovx .ovx-stats dt{font-size:11.5px}
  html:not(#ui) body main.ovx .ovx-stats dd{font-size:13px}
  html:not(#ui) body main.ovx .ovx-demo{height:510px;align-items:start;padding-top:44px}
  html:not(#ui) body main.ovx .ovx-phone{width:250px;height:390px;transform:none}
  html:not(#ui) body main.ovx .ovx-api{top:4%;left:0}
  html:not(#ui) body main.ovx .ovx-profit{right:0;bottom:0;min-width:150px}
  html:not(#ui) body main.ovx .ovx-geo{display:none}
  html:not(#ui) body main.ovx .ovx-channels{grid-template-columns:1fr}
  html:not(#ui) body main.ovx .ovx-channel{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:14px;row-gap:4px;padding:18px}
  html:not(#ui) body main.ovx .ovx-channel .ovx-tile{grid-row:1/3}
  html:not(#ui) body main.ovx .ovx-channel b{margin:0;align-self:end}
  html:not(#ui) body main.ovx .ovx-net-grid.vpn-server-stack{grid-template-columns:1fr!important}
  html:not(#ui) body main.ovx .ovx-seg button{font-size:13px;height:40px}
  html:not(#ui) body main.ovx :is(.ovx-topup,.ovx-volume){grid-template-columns:auto minmax(0,1fr)!important;padding:18px}
  html:not(#ui) body main.ovx :is(.ovx-topup,.ovx-volume) > div{grid-column:2!important}
  html:not(#ui) body main.ovx .ovx-methods{grid-column:1/-1!important;grid-row:auto!important}
  html:not(#ui) body main.ovx :is(.ovx-topup,.ovx-volume) .ovx-btn{grid-column:1/-1!important;grid-row:auto!important;justify-self:stretch!important}
  html:not(#ui) body main.ovx .ovx-cta .ovx-actions .ovx-btn{flex:1 1 auto}
}
html:not(#ui) body main.ovx .ovx-more{display:none}
@media (max-width:640px){
  html:not(#ui) body main.ovx .ovx-net-grid.is-clipped .vpn-server-card:nth-child(n+10){display:none!important}
  html:not(#ui) body main.ovx .ovx-more:not([hidden]){display:flex;align-items:center;justify-content:center;width:100%;height:48px;border:0;border-radius:16px;cursor:pointer;font:inherit;font-size:14.5px;font-weight:750;color:var(--ui-text);background:linear-gradient(135deg,rgb(255 255 255/.09),rgb(255 255 255/.03));box-shadow:var(--lg-shadow-sm)}
  html:not(#ui) body main.ovx .ovx-prices{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
  html:not(#ui) body main.ovx .ovx-price.is-trial{grid-column:1/-1;flex-direction:row;align-items:baseline;gap:12px}
  html:not(#ui) body main.ovx .ovx-price em{top:10px;right:10px}
}
@media (prefers-reduced-motion:reduce){
  html:not(#ui) body main.ovx .ovx-demo :is(.m1,.m2,.m3,.m5){opacity:1;transform:none}
  html:not(#ui) body main.ovx .ovx-demo .m4{display:none}
  html:not(#ui) body main.ovx .ovx-step-n{opacity:1;transform:none}
  html:not(#ui) body main.ovx .ovx-steps::before{transform:none}
}

/* ---------- V205.1: лестница цен по числу клиентов ---------- */
html:not(#ui) body main.ovx .ovx-tiers{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:20px;background:rgb(0 0 0/.18);box-shadow:inset 0 0 0 1px var(--ui-stroke)}
html[data-theme="pearl"]:not(#ui) body main.ovx .ovx-tiers{background:rgb(22 19 26/.04)}
html:not(#ui) body main.ovx .ovx-tiers-head{display:flex;flex-direction:column;gap:2px}
html:not(#ui) body main.ovx .ovx-tiers-head b{font-size:14.5px;font-weight:750;color:var(--ui-text)}
html:not(#ui) body main.ovx .ovx-tiers-head small{font-size:12.5px;color:var(--ui-text-3)}
html:not(#ui) body main.ovx .ovx-ladder{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none}
html:not(#ui) body main.ovx .ovx-ladder li{position:relative;display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:14px;background:rgb(255 255 255/.04);box-shadow:inset 0 0 0 1px rgb(255 255 255/.05);transition:background .35s ease,box-shadow .35s ease,transform .35s cubic-bezier(.3,1.4,.5,1)}
html:not(#ui) body main.ovx .ovx-ladder small{font-size:11.5px;font-weight:650;color:var(--ui-text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html:not(#ui) body main.ovx .ovx-ladder b{font-family:var(--ui-font-display);font-size:17px;font-weight:700;color:var(--ui-text-2);font-variant-numeric:tabular-nums}
html:not(#ui) body main.ovx .ovx-ladder li.on{background:linear-gradient(135deg,rgb(74 222 128/.18),rgb(74 222 128/.05));box-shadow:inset 0 0 0 1px rgb(74 222 128/.45),0 8px 20px -10px rgb(74 222 128/.5)}
html:not(#ui) body main.ovx .ovx-ladder li.on b{color:#4ade80}
html:not(#ui) body main.ovx .ovx-ladder li.on::after{content:"";position:absolute;top:8px;right:8px;width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 0 rgb(74 222 128/.6);animation:ui-live 2s ease-out infinite}
html:not(#ui) body main.ovx .ovx-ladder li.is-more b{font-family:var(--ui-font);font-size:14px;color:rgb(var(--ui-accent))}
html:not(#ui) body main.ovx .ovx-next{display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--ui-text-2)}
html:not(#ui) body main.ovx .ovx-next b{color:var(--ui-text)}
html:not(#ui) body main.ovx .ovx-next a{color:rgb(var(--ui-accent));font-weight:700}
html:not(#ui) body main.ovx .ovx-next-bar{display:block;height:6px;border-radius:6px;background:rgb(255 255 255/.07);overflow:hidden}
html:not(#ui) body main.ovx .ovx-next-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4ade80,#a7f3d0);transform-origin:left;transform:scaleX(.1);transition:transform .45s cubic-bezier(.22,1,.36,1)}
html:not(#ui) body main.ovx .ovx-hold{display:none!important}
html:not(#ui) body main.ovx .ovx-price{flex-wrap:wrap}
html:not(#ui) body main.ovx .ovx-old{font-size:13px;color:var(--ui-text-3);text-decoration:line-through;margin-top:-2px}
html:not(#ui) body main.ovx .ovx-old[hidden]{display:none}
html:not(#ui) body main.ovx .ovx-pv{transition:color .3s ease}
@media (max-width:640px){
  html:not(#ui) body main.ovx .ovx-ladder{grid-template-columns:repeat(2,minmax(0,1fr))}
  html:not(#ui) body main.ovx .ovx-price em{position:static!important;order:-1;align-self:flex-start;margin-bottom:4px}
}

/* ---------- V205.1: путь ключа — подсветка точно в такт с импульсом ---------- */
/* импульс идёт равномерно: узел k загорается ровно когда до него доходит свет */
html:not(#ui) body main.ovx .ovx-flow.play .ovx-flow-line i{animation:ovx-packet2 4.8s linear infinite!important}
@keyframes ovx-packet2{0%{left:0;opacity:0}4%{left:0;opacity:1}84%{left:100%;opacity:1}92%,100%{left:100%;opacity:0}}
html:not(#ui) body main.ovx .ovx-flow.play .ovx-node-ico{animation:ovx-node2 4.8s ease-out infinite!important;animation-delay:calc(var(--k) * 1.28s + .19s - .1s)!important}
@keyframes ovx-node2{0%{color:var(--ui-text-2)}3%,14%{color:rgb(var(--ui-accent));box-shadow:inset 0 0 0 1px rgb(var(--ui-accent)/.6),inset 1px 1px 0 rgb(255 255 255/.3),0 0 0 6px rgb(var(--ui-accent)/.12),0 10px 30px -6px rgb(var(--ui-accent)/.6);transform:scale(1.06)}32%,100%{color:var(--ui-text-2);transform:none}}
/* первый узел светится сразу при появлении */
html:not(#ui) body main.ovx .ovx-flow.play .ovx-node[style*="--k:0"] .ovx-node-ico{animation-delay:0s!important}
html:not(#ui) body main.ovx .ovx-node.is-you .ovx-node-ico{color:rgb(var(--ui-accent))}

/* ---------- V205.1: путь ключа на телефоне ---------- */
@media (max-width:900px){
  html:not(#ui) body main.ovx .ovx-flow{grid-template-columns:1fr!important;gap:0!important;padding:18px 18px!important}
  html:not(#ui) body main.ovx .ovx-flow-line{left:48px!important;right:auto!important;top:60px!important;bottom:60px!important;width:2px!important;height:auto!important}
  html:not(#ui) body main.ovx .ovx-flow-line i{left:50%!important;top:0;width:6px!important;height:48px!important;margin:-24px 0 0 -3px!important}
  html:not(#ui) body main.ovx .ovx-flow.play .ovx-flow-line i{animation-name:ovx-packet2v!important}
  @keyframes ovx-packet2v{0%{top:0;opacity:0}4%{top:0;opacity:1}84%{top:100%;opacity:1}92%,100%{top:100%;opacity:0}}
  html:not(#ui) body main.ovx .ovx-node{display:grid!important;grid-template-columns:60px minmax(0,1fr)!important;grid-template-rows:auto!important;column-gap:16px!important;align-items:center!important;text-align:left!important;padding:12px 0!important;min-height:84px}
  html:not(#ui) body main.ovx .ovx-node-ico{grid-row:1/span 3!important;grid-column:1!important;margin:0!important;align-self:center}
  html:not(#ui) body main.ovx .ovx-node > :not(.ovx-node-ico){grid-column:2!important}
  html:not(#ui) body main.ovx .ovx-node b{margin:0!important;font-size:15px}
  html:not(#ui) body main.ovx .ovx-node small{max-width:none!important;font-size:13.5px}
  html:not(#ui) body main.ovx .ovx-tag{position:static!important;transform:none!important;justify-self:start;margin-bottom:2px}
}
html:not(#ui) body main.ovx .ovx-trial{margin:0;padding:10px 12px;border-radius:12px;font-size:13px;color:var(--ui-text-2);background:rgb(255 255 255/.04);box-shadow:inset 0 0 0 1px var(--ui-stroke)}
html:not(#ui) body main.ovx .ovx-trial b{color:var(--ui-text)}
html:not(#ui) body main.ovx .ovx-pay-row{margin-top:14px}
/* публичная документация API */
html:not(#ui) body main.apidoc-main .apidoc-hero{grid-template-columns:1fr;min-height:0;padding-top:clamp(10px,3vw,40px)}
html:not(#ui) body main.apidoc-main .apidoc-hero h1{max-width:16ch}
html:not(#ui) body main.apidoc-main .apidoc-steps code{font-size:.92em;padding:1px 5px;border-radius:6px;background:rgb(255 255 255/.07)}
html:not(#ui) body main.apidoc-main .apidoc-docs{display:flex;flex-direction:column;gap:10px}
