/* Viralix Field Network 5.0 — additive improvements, retaining 4.0 styles */
.vf5-plan-anchor{scroll-margin-top:90px}
.vf5-plan-intro{text-align:center;margin:35px auto 24px;max-width:730px}
.vf5-plan-intro h3{font-family:inherit;font-size:clamp(24px,3vw,37px);font-weight:800;color:#fff;line-height:1.15;margin:10px auto}
.vf5-plan-intro p,.vf5-muted{color:#a4a4ab;font-size:14px;line-height:1.65}
.vf5-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:24px 0}
.vf5-plan{display:flex;flex-direction:column;gap:13px;padding:22px;border:1px solid #393137;border-radius:17px;background:linear-gradient(155deg,#1b171b,#111214);min-width:0}
.vf5-plan.featured{border-color:#b92531;box-shadow:0 0 30px #ac142019}
.vf5-plan-name{font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#f9f5f5;font-size:12px}
.vf5-price{font-size:clamp(26px,3vw,37px);color:#fff;font-weight:800;line-height:1.15}
.vf5-price-note{font-size:12px;line-height:1.55;color:#bdb4b7;min-height:38px}
.vf5-plan .vf5-cta{margin-top:auto}
.vf5-cta{border:1px solid #b9222d;border-radius:10px;background:#cd1025;padding:12px 14px;font-weight:700;color:#fff;text-align:center;font-size:13px;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;gap:7px;text-decoration:none;min-height:44px}
.vf5-cta:hover{background:#ed1b35;color:#fff}
.vf5-cta.secondary{background:#211c1e;border-color:#4c4043}
.vf5-cta.secondary:hover{background:#312529}
.vf5-promo-locked{border:1px dashed #525056;background:linear-gradient(110deg,#171718,#222024);border-radius:14px;padding:20px;display:flex;align-items:center;gap:16px;justify-content:space-between;flex-wrap:wrap;margin:24px 0}
.vf5-promo-locked h4{color:#d6d3d4;font-size:15px;font-weight:700;margin:5px 0}
.vf5-promo-locked p{font-size:12px;color:#a7a4a6;line-height:1.6}
.vf5-locked-btn{background:#353538!important;color:#b5b3b6!important;border:1px solid #515056!important;box-shadow:none!important;text-shadow:none!important;filter:grayscale(1);cursor:not-allowed!important;opacity:.75!important;pointer-events:none!important;animation:none!important}
.vf5-locked-btn::before,.vf5-locked-btn::after{display:none!important}
.vf5-locked-btn:focus-visible{outline:2px solid #b1aaae}
.vf5-section-note{color:#a8a4a7;font-size:12px;line-height:1.65;text-align:center;max-width:700px;margin:14px auto}
.vf5-support{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;margin-top:16px}
.vf5-support a{font-size:12px}
.vf5-modal-overlay{position:fixed;inset:0;z-index:250;background:rgba(5,4,7,.85);backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;padding:18px;overflow:auto}
.vf5-modal-overlay.open{display:flex}
.vf5-modal{color:#fff;border:1px solid #513139;background:linear-gradient(160deg,#1b1418,#121214);border-radius:18px;max-width:680px;width:100%;max-height:min(92vh,950px);overflow:auto;box-shadow:0 28px 75px #000b;padding:24px;position:relative}
.vf5-modal h2{font-size:clamp(20px,3vw,27px);font-weight:800;margin:4px 38px 12px 0}
.vf5-modal p{color:#bcb7bc;font-size:13px;line-height:1.6}
.vf5-close{position:absolute;right:16px;top:16px;background:#2b282a;border:1px solid #514349;color:#fff;cursor:pointer;width:36px;height:36px;border-radius:9px;font-size:24px;line-height:1}
.vf5-close:focus-visible{outline:2px solid #fff}
.vf5-label{font-size:12px;color:#aaa1a5;display:block;margin:15px 0 6px}
.vf5-select,.vf5-input,.vf5-textarea{border:1px solid #51444a;border-radius:10px;width:100%;background:#211e22;color:#fff;padding:12px;font-size:14px;min-height:44px}
.vf5-select option{background:#211e22;color:#fff}
.vf5-summary{border:1px solid #57343a;border-radius:12px;background:#270f14;padding:14px;margin:17px 0;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.vf5-summary strong{font-size:23px;color:#fff}
.vf5-steps{display:flex;gap:8px;margin:18px 0;flex-wrap:wrap}
.vf5-step{font-size:11px;color:#a5a1a3;padding:6px 10px;border-radius:99px;border:1px solid #393439}
.vf5-step.active{color:#fff;border-color:#b92d38;background:#3e1620}
.vf5-pay-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:15px 0}
.vf5-pay-methods button{background:#282326;color:#fff;border:1px solid #4f4147;min-height:58px;padding:10px 6px;border-radius:9px;cursor:pointer;font-size:13px;font-weight:600}
.vf5-pay-methods button.active{border-color:#e5263a;background:#491d26}
.vf5-pay-methods button:focus-visible{outline:2px solid #fff}
.vf5-qr{width:min(100%,270px);max-height:370px;object-fit:contain;display:block;margin:15px auto;border-radius:12px;background:#fff}
.vf5-notice{font-size:12px;color:#d7c9c9;background:#312126;border:1px solid #543942;border-radius:10px;padding:12px;line-height:1.65;margin:12px 0}
.vf5-actions{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}
.vf5-actions > *{flex:1;min-width:145px}
.vf5-actions a{word-break:normal}
.vf5-instruction-list{font-size:12px;line-height:1.9;color:#bdb9bc;margin:12px 0 12px 22px;list-style:decimal}
.vf5-mini{font-size:11px!important;color:#9f959b!important;line-height:1.6!important}
.vf5-onboarding{max-width:680px;margin:24px auto;padding:22px;border:1px solid #494044;border-radius:14px;background:#1b171a}
.vf5-onboarding label{color:#b9b3b7;font-size:12px;display:block;margin:14px 0 6px}
.vf5-onboarding textarea{min-height:100px}
@media (max-width:750px){.vf5-plans{grid-template-columns:1fr}.vf5-plan{padding:19px}.vf5-price-note{min-height:0}.vf5-modal{padding:18px}.vf5-pay-methods{grid-template-columns:1fr 1fr 1fr}.vf5-qr{width:min(100%,245px)}}
@media (prefers-reduced-motion:reduce){.vf5-cta,.vf5-locked-btn{animation:none!important;transition:none!important}}
