/* VIX Pro - Login comercial pixel final */
:root{--vix-navy:#071638;--vix-blue:#075bff;--vix-blue2:#1c6bff;--vix-purple:#7c2cff;--vix-pink:#ff007a;--vix-text:#061333;--vix-muted:#667394;--vix-line:#e9edf7;--vix-soft:#f6f8fc;--vix-white:#fff;}
body.vix-login-page{background:#f7f9fd!important;color:var(--vix-text);font-family:"Open Sans",Arial,sans-serif;min-height:100vh;overflow-x:hidden;}
body.vix-login-page #header,body.vix-login-page .master-breadcrumb,body.vix-login-page #footer,body.vix-login-page .sidebar,body.vix-login-page .sidebar-secondary{display:none!important;}
body.vix-login-page #main-body{padding:0!important;margin:0!important;background:radial-gradient(circle at 50% 0, #ffffff 0%, #f8faff 45%, #f4f7fc 100%)!important;min-height:100vh;}
body.vix-login-page #main-body>.container{max-width:none!important;width:100%!important;padding:0!important;}
body.vix-login-page .primary-content{padding:0!important;max-width:none!important;flex:0 0 100%!important;width:100%!important;}
.vix-commercial-login-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:26px 24px 22px;background:linear-gradient(180deg,#fff 0%,#f8faff 62%,#f4f7fb 100%);}
.vix-commercial-logo{height:48px;margin-bottom:22px;display:flex;align-items:center;justify-content:center;}
.vix-commercial-logo a{display:flex;align-items:center;text-decoration:none;color:#070b17;font-weight:800;font-size:28px;line-height:1;letter-spacing:-.04em;}
.vix-commercial-logo img{height:42px;width:auto;display:block;object-fit:contain;}
.vix-commercial-logo span span{font-size:14px;font-weight:700;letter-spacing:-.02em;margin-left:2px;}
.vix-commercial-login-card{width:min(1280px,100%);height:760px;display:grid;grid-template-columns:492px 1fr;background:#fff;border:1px solid rgba(224,230,242,.9);border-radius:18px;box-shadow:0 22px 65px rgba(13,25,57,.08);overflow:hidden;position:relative;}
.vix-commercial-left{position:relative;z-index:1;color:#fff;background:radial-gradient(circle at 18% 6%,rgba(30,88,255,.85) 0,rgba(30,88,255,0) 34%),linear-gradient(158deg,#1022ce 0%,#061844 42%,#061638 72%,#24052e 100%);padding:72px 58px 48px 58px;overflow:hidden;}
.vix-commercial-left:before{content:"";position:absolute;inset:-20% 7% -5% auto;width:320px;background:rgba(255,255,255,.035);transform:skewX(-16deg);}
.vix-commercial-left:after{content:"";position:absolute;top:-3px;right:-138px;width:250px;height:calc(100% + 6px);background:#fff;border-radius:0 0 0 58%;transform:skewX(-4deg);box-shadow:-24px 0 50px rgba(255,255,255,.04);z-index:2;}
.vix-left-copy{position:relative;z-index:3;width:330px;}
.vix-left-copy h1{font-size:30px;line-height:1.28;font-weight:800;letter-spacing:-.035em;margin:0 0 22px;color:#fff;text-wrap:balance;}
.vix-left-copy h1 span{font-size:29px;}
.vix-left-copy p{font-size:16px;line-height:1.62;margin:0;color:rgba(255,255,255,.92);font-weight:500;}
.vix-login-benefits{margin-top:30px;display:grid;gap:22px;}
.vix-benefit{display:grid;grid-template-columns:54px 1fr;gap:16px;align-items:start;}
.vix-benefit-icon{width:54px;height:54px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,rgba(28,107,255,.76),rgba(124,44,255,.52));box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 12px 26px rgba(0,0,0,.16);font-size:21px;color:#fff;}
.vix-benefit strong{display:block;font-size:15px;line-height:1.2;margin:0 0 5px;font-weight:800;color:#fff;}
.vix-benefit small{display:block;font-size:13px;line-height:1.45;color:rgba(255,255,255,.86);font-weight:500;}
.vix-left-dots{position:absolute;z-index:1;width:92px;height:92px;opacity:.55;background-image:radial-gradient(rgba(255,255,255,.55) 1px,transparent 1px);background-size:14px 14px;}
.vix-left-dots-a{right:44px;top:26px}.vix-left-dots-b{right:112px;top:250px;opacity:.38}
.vix-server-art{position:absolute;z-index:3;left:122px;bottom:34px;width:260px;height:190px;}
.vix-server-tower{position:absolute;left:0;bottom:24px;width:132px;height:142px;border-radius:19px;background:linear-gradient(160deg,#25365e,#0f1c38 72%);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 22px 45px rgba(0,0,0,.34);padding:17px 15px;display:grid;gap:10px;}
.vix-slot{height:18px;border-radius:7px;background:linear-gradient(180deg,#354565,#1c2947);display:block;position:relative;box-shadow:inset 0 1px 2px rgba(255,255,255,.08)}
.vix-slot i{position:absolute;left:13px;top:7px;width:36px;height:4px;border-radius:4px;background:rgba(120,142,180,.34)}
.vix-slot b{position:absolute;right:13px;top:6px;width:26px;height:6px;border-radius:5px;background:linear-gradient(90deg,#23a2ff,#803cff);box-shadow:0 0 9px rgba(58,133,255,.75);animation:vixBlink 1.95s ease-in-out infinite;}
.vix-slot:nth-child(2) b{animation-delay:.25s}.vix-slot:nth-child(3) b{animation-delay:.65s}.vix-slot:nth-child(4) b{animation-delay:1s}.vix-slot:nth-child(5) b{animation-delay:1.35s}
@keyframes vixBlink{0%,100%{opacity:.42;filter:saturate(.8)}45%,65%{opacity:1;filter:saturate(1.4);box-shadow:0 0 14px rgba(58,133,255,.95)}}
.vix-orbit{position:absolute;border:2px solid transparent;border-radius:50%;transform:rotate(-12deg);opacity:.9}.vix-orbit-one{left:-54px;bottom:11px;width:310px;height:75px;border-top-color:#035dff;border-left-color:#ff007a}.vix-orbit-two{left:58px;bottom:49px;width:235px;height:63px;border-right-color:#1d6cff;border-bottom-color:#ff007a;opacity:.76}
.vix-shield{position:absolute;left:126px;bottom:43px;width:68px;height:82px;background:linear-gradient(145deg,#1d6cff,#8f49ff);clip-path:polygon(50% 0,90% 15%,82% 73%,50% 100%,18% 73%,10% 15%);display:flex;align-items:center;justify-content:center;color:#fff;font-size:32px;filter:drop-shadow(0 18px 28px rgba(0,0,0,.28));}
.vix-cloud{position:absolute;background:#fff;filter:drop-shadow(0 15px 22px rgba(0,0,0,.14));}.vix-cloud:before,.vix-cloud:after{content:"";position:absolute;background:#fff;border-radius:50%;}.vix-cloud-main{right:4px;bottom:0;width:130px;height:48px;border-radius:32px}.vix-cloud-main:before{width:70px;height:70px;left:18px;bottom:14px}.vix-cloud-main:after{width:56px;height:56px;right:8px;bottom:20px}.vix-cloud-small{left:-38px;bottom:18px;width:92px;height:35px;border-radius:24px;opacity:.96}.vix-cloud-small:before{width:45px;height:45px;left:16px;bottom:12px}.vix-cloud-small:after{width:34px;height:34px;right:10px;bottom:17px}
.vix-commercial-right{position:relative;background:#fff;display:flex;align-items:center;justify-content:center;padding:74px 82px 68px 104px;}
.vix-login-inner{width:100%;max-width:660px;margin-left:8px;}
.vix-login-heading{display:flex;align-items:center;gap:20px;margin:0 0 44px 6px;}
.vix-login-lock{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#eef4ff;color:#075bff;font-size:27px;box-shadow:inset 0 1px 0 rgba(255,255,255,.7);}
.vix-login-heading h2{font-size:34px;line-height:1.05;font-weight:800;letter-spacing:-.04em;margin:0 0 8px;color:#050b19;}
.vix-login-heading p{font-size:16px;line-height:1.25;color:#7180a1;margin:0;font-weight:500;}
.vix-login-grid{display:grid;grid-template-columns:minmax(330px,390px) 1fr;gap:48px;align-items:start;}
.vix-login-form{width:100%;}.vix-field-group{margin-bottom:22px;}.vix-field-group label{display:block;font-size:15px;line-height:1.2;font-weight:800;color:#050b19;margin:0 0 12px;}
.vix-input-wrap{height:52px;display:grid;grid-template-columns:50px 1fr;align-items:center;border:1px solid #dfe7f6;border-radius:10px;background:#fff;overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease;}
.vix-input-wrap:focus-within{border-color:#075bff;box-shadow:0 0 0 3px rgba(7,91,255,.13),0 14px 28px rgba(7,91,255,.08);}
.vix-input-wrap>i{height:100%;display:flex;align-items:center;justify-content:center;background:#f7f9fd;color:#061333;font-size:16px;border-right:1px solid #eef2f8;}
.vix-input-wrap input{height:100%;width:100%;border:0!important;outline:0!important;background:#fff!important;padding:0 16px!important;font-size:15px!important;font-weight:600;color:#101935;box-shadow:none!important;}
.vix-password-wrap{grid-template-columns:50px 1fr 50px}.vix-reveal-pw{height:100%;border:0!important;background:#fff!important;color:#8a95ac!important;display:flex;align-items:center;justify-content:center;font-size:17px;box-shadow:none!important;padding:0!important;}
.vix-reveal-pw:hover{color:#075bff!important;background:#f9fbff!important}.vix-remember{display:flex;align-items:center;gap:10px;margin:2px 0 23px;color:#4d5a78;font-size:15px;font-weight:600;}.vix-remember input{width:17px;height:17px;margin:0;accent-color:#075bff;}
.vix-login-submit{width:100%;height:58px;border:0;border-radius:10px;background:linear-gradient(100deg,#075bff 0%,#155cff 48%,#8d22ef 100%);color:#fff;font-size:16px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:14px;box-shadow:0 18px 34px rgba(7,91,255,.22);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;}
.vix-login-submit:hover{transform:translateY(-1px);filter:saturate(1.04);box-shadow:0 22px 40px rgba(7,91,255,.28);}.vix-login-submit i{font-size:17px;}
.vix-forgot-link{margin-top:16px;width:100%;height:58px;border-radius:10px;border:1px solid #dfe6f2;background:#fff;display:flex;align-items:center;justify-content:center;color:#1e2a44;font-size:15px;font-weight:800;text-decoration:none!important;transition:background .16s ease,border-color .16s ease,color .16s ease;}.vix-forgot-link:hover{background:#f8faff;border-color:#cbd7ea;color:#075bff;}
.vix-captcha-wrap{margin-bottom:20px}.vix-social-panel{min-height:400px;border-left:1px solid #e7edf7;padding-left:46px;display:flex;flex-direction:column;align-items:stretch;}
.vix-social-title{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;margin:25px 0 36px;color:#061333;}.vix-social-title span{height:1px;background:#e2e8f3}.vix-social-title strong{white-space:nowrap;font-size:15px;font-weight:800;}
.vix-linkedaccounts-clean{min-height:52px}.vix-linkedaccounts-clean .providerLinkingFeedback,.vix-linkedaccounts-clean #providerLinkingMessages{display:none!important}.vix-linkedaccounts-clean .social-signin-btns{display:flex!important;justify-content:center!important;align-items:center!important;width:100%;}.vix-linkedaccounts-clean .providerPreLinking{width:100%;}
.vix-linkedaccounts-clean a,.vix-linkedaccounts-clean button,.vix-linkedaccounts-clean .btn,.vix-linkedaccounts-clean .social-signin-btns>*{min-height:52px!important;border:0!important;border-radius:10px!important;background:#f7f9fc!important;box-shadow:none!important;color:#202b45!important;font-weight:700!important;font-size:15px!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;padding:0 20px!important;text-decoration:none!important;transition:background .16s ease,transform .16s ease!important;}
.vix-linkedaccounts-clean a:hover,.vix-linkedaccounts-clean button:hover,.vix-linkedaccounts-clean .btn:hover{background:#eef3fb!important;transform:translateY(-1px)}.vix-linkedaccounts-clean img{width:20px!important;height:20px!important;margin-right:10px!important;}.vix-linkedaccounts-clean i{margin-right:10px!important;}
.vix-protected-box{margin-top:auto;text-align:center;padding:0 12px 16px;}.vix-protected-icon{width:58px;height:58px;margin:0 auto 22px;border-radius:50%;background:#eef4ff;color:#075bff;display:flex;align-items:center;justify-content:center;font-size:24px;}.vix-protected-box h3{margin:0 0 13px;font-size:18px;line-height:1.25;font-weight:800;color:#050b19;}.vix-protected-box p{margin:0 auto;max-width:245px;color:#7180a1;font-size:15px;line-height:1.55;font-weight:500;}
.vix-commercial-footer{width:min(1280px,100%);height:66px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;color:#69789b;font-size:14px;font-weight:600;}.vix-commercial-footer p{margin:0;text-align:center}.vix-commercial-footer div:first-child{justify-self:start}.vix-commercial-footer div:last-child{justify-self:end}.vix-commercial-footer i{color:#6f7fa3;margin-right:8px;font-size:19px;vertical-align:-2px;}
body.vix-login-page .alert{border-radius:12px;border:0;box-shadow:0 12px 28px rgba(20,30,60,.08);font-size:14px;margin:0 0 22px;}
@media (max-width:1180px){.vix-commercial-login-card{height:auto;grid-template-columns:1fr}.vix-commercial-left{display:none}.vix-commercial-right{padding:54px 28px}.vix-login-inner{max-width:720px;margin:0}.vix-commercial-footer{grid-template-columns:1fr;text-align:center;height:auto;padding:18px 0;gap:8px}.vix-commercial-footer div:first-child,.vix-commercial-footer div:last-child{justify-self:center}}
@media (max-width:760px){.vix-commercial-login-shell{padding:18px 14px}.vix-commercial-logo{margin-bottom:14px}.vix-commercial-logo img{height:34px}.vix-commercial-login-card{border-radius:16px}.vix-commercial-right{padding:34px 20px}.vix-login-heading{margin:0 0 28px;gap:14px}.vix-login-lock{width:56px;height:56px;font-size:22px}.vix-login-heading h2{font-size:28px}.vix-login-grid{grid-template-columns:1fr;gap:26px}.vix-social-panel{border-left:0;border-top:1px solid #e7edf7;padding:24px 0 0;min-height:0}.vix-social-title{margin:0 0 20px}.vix-protected-box{display:none}}

/* VIX final clean Google provider: keep WHMCS SDK available, never visible as raw text */
body.vix-login-page .vix-linkedaccounts-source{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
    clip:rect(0 0 0 0)!important;
    clip-path:inset(50%)!important;
    white-space:nowrap!important;
    opacity:0!important;
    pointer-events:none!important;
    font-size:0!important;
    line-height:0!important;
}
body.vix-login-page .vix-google-clean-btn{
    width:100%;
    height:52px;
    border:0!important;
    border-radius:12px;
    background:#f7f9fc!important;
    color:#18233d!important;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    font-size:15px;
    font-weight:700;
    line-height:1;
    box-shadow:none!important;
    outline:0!important;
    cursor:pointer;
    transition:background .16s ease, transform .16s ease;
}
body.vix-login-page .vix-google-clean-btn:hover{background:#eef3fb!important;transform:translateY(-1px)}
body.vix-login-page .vix-google-clean-btn img{display:block;width:20px;height:20px;margin:0!important}
/* make the social column clean even if WHMCS outputs unexpected provider text */
body.vix-login-page .vix-social-panel{overflow:hidden;}
body.vix-login-page .vix-social-panel script{display:none!important;}


/* ==========================================================
   VIX Pro - Login final limpio y coherente
   Sobrescribe versiones anteriores del login sin tocar WHMCS core
   ========================================================== */
body.vix-login-page{background:#f7f9fd!important;color:#07142f;font-family:"Open Sans",Arial,sans-serif;overflow-x:hidden;}
body.vix-login-page #header,body.vix-login-page .master-breadcrumb,body.vix-login-page #footer,body.vix-login-page .sidebar,body.vix-login-page .sidebar-secondary{display:none!important;}
body.vix-login-page #main-body{padding:0!important;margin:0!important;min-height:100vh;background:linear-gradient(180deg,#fff 0%,#f8faff 64%,#f3f6fb 100%)!important;}
body.vix-login-page #main-body>.container{width:100%!important;max-width:none!important;padding:0!important;margin:0!important;}
body.vix-login-page .primary-content{width:100%!important;max-width:none!important;flex:0 0 100%!important;padding:0!important;margin:0!important;}
body.vix-login-page .providerLinkingFeedback{display:none!important;}

.vix-clean-login-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:30px 24px 18px;background:radial-gradient(circle at 50% -12%,#fff 0%,#fff 24%,#f7f9fe 76%,#f3f6fb 100%);}
.vix-clean-logo{height:46px;margin-bottom:24px;display:flex;align-items:center;justify-content:center;}
.vix-clean-logo a{display:inline-flex;align-items:center;text-decoration:none;color:#060914;font-size:28px;font-weight:800;letter-spacing:-.04em;}
.vix-clean-logo img{height:40px;width:auto;display:block;object-fit:contain;}
.vix-clean-logo span span{font-size:13px;font-weight:700;margin-left:2px;letter-spacing:-.02em;}

.vix-clean-login-card{width:min(1280px,100%);height:720px;background:#fff;border:1px solid #e3e9f4;border-radius:18px;box-shadow:0 24px 70px rgba(18,31,64,.08);overflow:hidden;display:grid;grid-template-columns:430px 1fr;position:relative;}
.vix-clean-left{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 14% 0%,rgba(35,93,255,.95) 0,rgba(35,93,255,0) 35%),linear-gradient(155deg,#1020d6 0%,#061942 48%,#07152f 78%,#26062f 100%);padding:64px 56px 42px;}
.vix-clean-left:before{content:"";position:absolute;inset:-10% -8% 0 auto;width:270px;background:rgba(255,255,255,.04);transform:skewX(-14deg);}
.vix-clean-left:after{content:"";position:absolute;top:-3px;right:-92px;width:160px;height:calc(100% + 6px);background:#fff;border-radius:85px;z-index:1;}
.vix-clean-left-content{position:relative;z-index:2;max-width:320px;}
.vix-clean-left h1{margin:0 0 18px;font-size:28px;line-height:1.22;font-weight:800;letter-spacing:-.035em;color:#fff;}
.vix-clean-left p{margin:0 0 30px;color:rgba(255,255,255,.88);font-size:16px;line-height:1.55;font-weight:500;}
.vix-clean-benefits{display:grid;gap:18px;}
.vix-clean-benefit{display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:center;}
.vix-clean-benefit span:first-child{width:48px;height:48px;border-radius:14px;background:linear-gradient(145deg,rgba(28,107,255,.9),rgba(124,44,255,.85));display:flex;align-items:center;justify-content:center;color:#fff;font-size:19px;box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 12px 24px rgba(0,0,0,.16);}
.vix-clean-benefit strong{display:block;font-size:14px;line-height:1.25;font-weight:800;color:#fff;margin-bottom:4px;}
.vix-clean-benefit small{display:block;color:rgba(255,255,255,.78);font-size:12.5px;line-height:1.35;font-weight:500;}
.vix-clean-server{position:absolute;z-index:2;left:124px;bottom:34px;width:245px;height:172px;}
.vix-clean-tower{position:absolute;left:50px;bottom:12px;width:118px;height:135px;border-radius:18px;background:linear-gradient(165deg,#263555,#111b35 78%);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 20px 40px rgba(0,0,0,.34);padding:14px 14px 10px;display:grid;gap:10px;}
.vix-clean-tower span{height:21px;border-radius:8px;background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:space-between;padding:0 10px;}
.vix-clean-tower i{width:34px;height:4px;border-radius:4px;background:rgba(255,255,255,.16);}
.vix-clean-tower b{width:25px;height:5px;border-radius:8px;background:linear-gradient(90deg,#19d6ff,#7c3cff);box-shadow:0 0 10px rgba(38,150,255,.8);animation:vixCleanBlink 1.9s ease-in-out infinite;}
.vix-clean-tower span:nth-child(2) b{animation-delay:.4s}.vix-clean-tower span:nth-child(3) b{animation-delay:.85s}.vix-clean-tower span:nth-child(4) b{animation-delay:1.25s}
@keyframes vixCleanBlink{0%,100%{opacity:.45}50%{opacity:1;box-shadow:0 0 15px rgba(38,150,255,1)}}
.vix-clean-orbit{position:absolute;left:10px;bottom:18px;width:225px;height:58px;border:2px solid transparent;border-left-color:#ff007a;border-top-color:#1267ff;border-radius:50%;transform:rotate(-11deg);opacity:.88;}
.vix-clean-cloud{position:absolute;background:#fff;border-radius:999px;filter:drop-shadow(0 14px 20px rgba(0,0,0,.15));}
.vix-clean-cloud:before,.vix-clean-cloud:after{content:"";position:absolute;background:#fff;border-radius:50%;}
.vix-clean-cloud-a{left:0;bottom:0;width:92px;height:34px}.vix-clean-cloud-a:before{width:44px;height:44px;left:16px;bottom:11px}.vix-clean-cloud-a:after{width:34px;height:34px;right:9px;bottom:15px}
.vix-clean-cloud-b{right:4px;bottom:-1px;width:128px;height:46px}.vix-clean-cloud-b:before{width:66px;height:66px;left:20px;bottom:14px}.vix-clean-cloud-b:after{width:55px;height:55px;right:7px;bottom:19px}

.vix-clean-right{display:flex;align-items:center;justify-content:center;background:#fff;padding:68px 76px 62px 92px;}
.vix-clean-form-box{width:100%;max-width:456px;}
.vix-clean-heading{display:flex;align-items:center;gap:18px;margin-bottom:36px;}
.vix-clean-lock{width:64px;height:64px;border-radius:50%;background:#eef4ff;color:#075bff;display:flex;align-items:center;justify-content:center;font-size:24px;flex:0 0 auto;}
.vix-clean-heading h2{margin:0 0 7px;color:#050b19;font-size:32px;line-height:1.08;font-weight:800;letter-spacing:-.035em;}
.vix-clean-heading p{margin:0;color:#6f7c9b;font-size:15px;line-height:1.25;font-weight:500;}
.vix-clean-field{margin-bottom:20px;}
.vix-clean-field label{display:block;margin:0 0 10px;color:#050b19;font-size:14.5px;font-weight:800;line-height:1.2;}
.vix-clean-input{height:52px;display:grid;grid-template-columns:50px 1fr;align-items:center;background:#fff;border:1px solid #dfe7f3;border-radius:10px;overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease;}
.vix-clean-input:focus-within{border-color:#075bff;box-shadow:0 0 0 3px rgba(7,91,255,.13);}
.vix-clean-input>i{height:100%;display:flex;align-items:center;justify-content:center;background:#f6f8fc;color:#07142f;font-size:15px;border-right:1px solid #edf1f7;}
.vix-clean-input input{width:100%;height:100%;border:0!important;outline:0!important;background:#fff!important;padding:0 15px!important;color:#0e1832!important;font-size:15px!important;font-weight:600!important;box-shadow:none!important;}
.vix-clean-password{grid-template-columns:50px 1fr 50px;}
.vix-clean-eye{height:100%;border:0!important;background:#fff!important;color:#8692aa!important;display:flex;align-items:center;justify-content:center;padding:0!important;font-size:17px;box-shadow:none!important;}
.vix-clean-eye:hover{background:#f8faff!important;color:#075bff!important;}
.vix-clean-remember{display:flex;align-items:center;gap:10px;margin:4px 0 22px;color:#435170;font-size:15px;font-weight:600;}
.vix-clean-remember input{width:17px;height:17px;margin:0;accent-color:#075bff;}
.vix-clean-submit{width:100%;height:56px;border:0;border-radius:10px;background:linear-gradient(100deg,#075bff 0%,#1663ff 52%,#8b22ef 100%);color:#fff;font-size:16px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:13px;box-shadow:0 16px 32px rgba(7,91,255,.2);transition:transform .16s ease,box-shadow .16s ease;}
.vix-clean-submit:hover{transform:translateY(-1px);box-shadow:0 20px 38px rgba(7,91,255,.26);}
.vix-clean-forgot{margin-top:14px;width:100%;height:54px;border:1px solid #dfe7f3;border-radius:10px;background:#fff;color:#1a2845;display:flex;align-items:center;justify-content:center;text-decoration:none!important;font-size:15px;font-weight:800;transition:background .16s ease,color .16s ease,border-color .16s ease;}
.vix-clean-forgot:hover{background:#f8faff;color:#075bff;border-color:#cbd7ea;}
.vix-clean-note{margin-top:22px;padding:14px 16px;border-radius:12px;background:#f7f9fc;color:#5f6c8d;font-size:13.5px;line-height:1.45;font-weight:600;display:flex;align-items:center;gap:10px;}
.vix-clean-note i{color:#075bff;font-size:17px;}
.vix-clean-captcha{margin-bottom:18px;}
.vix-clean-footer{width:min(1280px,100%);height:64px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;color:#637292;font-size:13.5px;font-weight:600;}
.vix-clean-footer span:nth-child(1){justify-self:start}.vix-clean-footer span:nth-child(2){justify-self:center;text-align:center}.vix-clean-footer span:nth-child(3){justify-self:end}.vix-clean-footer i{color:#637ca9;margin-right:8px;font-size:17px;vertical-align:-2px;}
body.vix-login-page .alert{border-radius:12px;border:0;box-shadow:0 12px 28px rgba(20,30,60,.08);font-size:14px;margin:0 0 22px;}
@media(max-width:980px){.vix-clean-login-card{height:auto;grid-template-columns:1fr}.vix-clean-left{display:none}.vix-clean-right{padding:44px 24px}.vix-clean-form-box{max-width:460px}.vix-clean-footer{grid-template-columns:1fr;height:auto;padding:18px 0;text-align:center}.vix-clean-footer span{justify-self:center!important}}
@media(max-width:560px){.vix-clean-login-shell{padding:18px 14px}.vix-clean-logo{margin-bottom:16px}.vix-clean-logo img{height:34px}.vix-clean-login-card{border-radius:16px}.vix-clean-right{padding:32px 18px}.vix-clean-heading{gap:14px;margin-bottom:28px}.vix-clean-lock{width:54px;height:54px;font-size:21px}.vix-clean-heading h2{font-size:27px}.vix-clean-note{align-items:flex-start}}

/* ==========================================================
   VIX Pro - Login final profesional compacto + Google WHMCS
   ========================================================== */
body.vix-login-page{background:#f7f9fd!important;color:#08142d;font-family:"Open Sans",Arial,sans-serif;overflow-x:hidden;}
body.vix-login-page #header,body.vix-login-page .master-breadcrumb,body.vix-login-page #footer,body.vix-login-page .sidebar,body.vix-login-page .sidebar-secondary{display:none!important;}
body.vix-login-page #main-body{padding:0!important;margin:0!important;min-height:100vh;background:linear-gradient(180deg,#ffffff 0%,#f8faff 66%,#f2f6fb 100%)!important;}
body.vix-login-page #main-body>.container{width:100%!important;max-width:none!important;padding:0!important;margin:0!important;}
body.vix-login-page .primary-content{width:100%!important;max-width:none!important;flex:0 0 100%!important;padding:0!important;margin:0!important;}
body.vix-login-page .providerLinkingFeedback,#providerLinkingMessages{display:none!important;}

.vix-final-login-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:26px 24px 18px;background:radial-gradient(circle at 50% -8%,#fff 0%,#fff 28%,#f7f9fe 78%,#f2f6fb 100%);}
.vix-final-logo{height:42px;margin-bottom:22px;display:flex;align-items:center;justify-content:center;}
.vix-final-logo a{display:inline-flex;align-items:center;color:#060914;text-decoration:none;font-size:26px;font-weight:800;letter-spacing:-.04em;}
.vix-final-logo img{height:36px;width:auto;display:block;object-fit:contain;}
.vix-final-logo span span{font-size:12px;margin-left:2px;font-weight:700;letter-spacing:-.02em;}

.vix-final-card{width:min(1240px,100%);height:660px;background:#fff;border:1px solid #e2e8f3;border-radius:18px;box-shadow:0 22px 64px rgba(13,27,61,.075);overflow:hidden;display:grid;grid-template-columns:410px 1fr;position:relative;}
.vix-final-brand{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 16% 1%,rgba(32,93,255,.96) 0,rgba(32,93,255,0) 35%),linear-gradient(154deg,#1422d7 0%,#081a46 50%,#071631 76%,#270633 100%);padding:64px 54px 38px;}
.vix-final-brand:before{content:"";position:absolute;inset:-12% -4% -4% auto;width:245px;background:rgba(255,255,255,.04);transform:skewX(-14deg);}
.vix-final-brand:after{content:"";position:absolute;top:-4px;right:-86px;width:150px;height:calc(100% + 8px);background:#fff;border-radius:82px;z-index:1;}
.vix-final-brand-content{position:relative;z-index:2;max-width:300px;}
.vix-final-brand h1{margin:0 0 16px;color:#fff;font-size:28px;line-height:1.2;font-weight:800;letter-spacing:-.035em;}
.vix-final-brand p{margin:0;color:rgba(255,255,255,.88);font-size:15px;line-height:1.55;font-weight:500;}
.vix-final-benefits{display:grid;gap:17px;margin-top:28px;}
.vix-final-benefit{display:grid;grid-template-columns:44px 1fr;gap:13px;align-items:center;}
.vix-final-benefit span:first-child{width:44px;height:44px;border-radius:13px;background:linear-gradient(145deg,rgba(28,107,255,.9),rgba(124,44,255,.85));display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 10px 22px rgba(0,0,0,.15);}
.vix-final-benefit strong{display:block;margin-bottom:3px;color:#fff;font-size:13.5px;line-height:1.2;font-weight:800;}
.vix-final-benefit small{display:block;color:rgba(255,255,255,.78);font-size:12px;line-height:1.35;font-weight:500;}
.vix-final-dots{position:absolute;z-index:1;width:82px;height:82px;opacity:.48;background-image:radial-gradient(rgba(255,255,255,.58) 1px,transparent 1px);background-size:13px 13px;}.vix-final-dots-a{right:42px;top:34px}.vix-final-dots-b{right:94px;top:250px;opacity:.32}
.vix-final-server{position:absolute;z-index:2;left:112px;bottom:28px;width:226px;height:158px;}.vix-final-orbit{position:absolute;left:2px;bottom:16px;width:214px;height:55px;border:2px solid transparent;border-left-color:#ff007a;border-top-color:#1267ff;border-radius:50%;transform:rotate(-11deg);opacity:.86;}
.vix-final-tower{position:absolute;left:52px;bottom:10px;width:108px;height:124px;border-radius:17px;background:linear-gradient(165deg,#263555,#111b35 78%);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 36px rgba(0,0,0,.32);padding:13px;display:grid;gap:9px;}.vix-final-tower span{height:20px;border-radius:8px;background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:space-between;padding:0 9px;}.vix-final-tower i{width:31px;height:4px;border-radius:4px;background:rgba(255,255,255,.16);}.vix-final-tower b{width:24px;height:5px;border-radius:8px;background:linear-gradient(90deg,#19d6ff,#7c3cff);box-shadow:0 0 10px rgba(38,150,255,.8);animation:vixFinalBlink 1.9s ease-in-out infinite;}.vix-final-tower span:nth-child(2) b{animation-delay:.35s}.vix-final-tower span:nth-child(3) b{animation-delay:.78s}.vix-final-tower span:nth-child(4) b{animation-delay:1.15s}@keyframes vixFinalBlink{0%,100%{opacity:.45}50%{opacity:1;box-shadow:0 0 15px rgba(38,150,255,1)}}
.vix-final-cloud{position:absolute;background:#fff;border-radius:999px;filter:drop-shadow(0 13px 18px rgba(0,0,0,.14));}.vix-final-cloud:before,.vix-final-cloud:after{content:"";position:absolute;background:#fff;border-radius:50%;}.vix-final-cloud-a{left:0;bottom:0;width:86px;height:32px}.vix-final-cloud-a:before{width:42px;height:42px;left:15px;bottom:10px}.vix-final-cloud-a:after{width:32px;height:32px;right:9px;bottom:14px}.vix-final-cloud-b{right:0;bottom:0;width:118px;height:43px}.vix-final-cloud-b:before{width:61px;height:61px;left:18px;bottom:13px}.vix-final-cloud-b:after{width:51px;height:51px;right:7px;bottom:18px}

.vix-final-content{display:flex;align-items:center;justify-content:center;background:#fff;padding:58px 64px 54px 78px;}.vix-final-form-panel{width:100%;max-width:670px;}.vix-final-heading{display:flex;align-items:center;gap:17px;margin:0 0 32px 0;}.vix-final-lock{width:58px;height:58px;border-radius:50%;background:#eef4ff;color:#075bff;display:flex;align-items:center;justify-content:center;font-size:22px;flex:0 0 auto;}.vix-final-heading h2{margin:0 0 5px;color:#050b19;font-size:31px;line-height:1.08;font-weight:800;letter-spacing:-.035em;}.vix-final-heading p{margin:0;color:#6e7b99;font-size:14.5px;line-height:1.25;font-weight:500;}
.vix-final-grid{display:grid;grid-template-columns:minmax(310px,360px) 230px;gap:40px;align-items:start;}.vix-final-grid-single{display:block;max-width:380px;}.vix-final-form{width:100%;}.vix-final-field{margin-bottom:18px;}.vix-final-field label{display:block;margin:0 0 9px;color:#050b19;font-size:14px;font-weight:800;line-height:1.2;}.vix-final-input{height:48px;display:grid;grid-template-columns:48px 1fr;align-items:center;background:#fff;border:1px solid #dfe7f3;border-radius:10px;overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease;}.vix-final-input:focus-within{border-color:#075bff;box-shadow:0 0 0 3px rgba(7,91,255,.13);}.vix-final-input>i{height:100%;display:flex;align-items:center;justify-content:center;background:#f6f8fc;color:#07142f;font-size:14px;border-right:1px solid #edf1f7;}.vix-final-input input{width:100%;height:100%;border:0!important;outline:0!important;background:#fff!important;padding:0 14px!important;color:#0e1832!important;font-size:14.5px!important;font-weight:600!important;box-shadow:none!important;}.vix-final-password{grid-template-columns:48px 1fr 48px;}.vix-final-eye{height:100%;border:0!important;background:#fff!important;color:#8692aa!important;display:flex;align-items:center;justify-content:center;padding:0!important;font-size:16px;box-shadow:none!important;}.vix-final-eye:hover{background:#f8faff!important;color:#075bff!important;}.vix-final-remember{display:flex;align-items:center;gap:9px;margin:2px 0 18px;color:#435170;font-size:14px;font-weight:600;}.vix-final-remember input{width:16px;height:16px;margin:0;accent-color:#075bff;}.vix-final-submit{width:100%;height:52px;border:0;border-radius:10px;background:linear-gradient(100deg,#075bff 0%,#1663ff 52%,#8b22ef 100%);color:#fff;font-size:15px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:12px;box-shadow:0 14px 28px rgba(7,91,255,.18);transition:transform .16s ease,box-shadow .16s ease;}.vix-final-submit:hover{transform:translateY(-1px);box-shadow:0 18px 34px rgba(7,91,255,.24);}.vix-final-forgot{margin-top:13px;width:100%;height:50px;border:1px solid #dfe7f3;border-radius:10px;background:#fff;color:#1a2845;display:flex;align-items:center;justify-content:center;text-decoration:none!important;font-size:14px;font-weight:800;transition:background .16s ease,color .16s ease,border-color .16s ease;}.vix-final-forgot:hover{background:#f8faff;color:#075bff;border-color:#cbd7ea;}.vix-final-captcha{margin-bottom:16px;}

.vix-final-social{border-left:1px solid #e7edf7;padding-left:34px;min-height:310px;display:flex;flex-direction:column;align-items:stretch;}.vix-final-social-title{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;margin:18px 0 28px;color:#101936;}.vix-final-social-title span{height:1px;background:#e2e8f3;}.vix-final-social-title strong{white-space:nowrap;font-size:13.5px;font-weight:800;}.vix-final-google-box{position:relative;width:100%;height:48px;border-radius:10px;overflow:hidden;background:#f8fafc;}.vix-final-google-visible{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;gap:10px;background:#f8fafc;color:#1d293d;font-size:14px;font-weight:700;border-radius:10px;}.vix-final-google-visible img{width:18px;height:18px;display:block;}.vix-final-google-native{position:absolute;inset:0;z-index:2;opacity:.01;overflow:hidden;font-size:0!important;line-height:0!important;color:transparent!important;background:transparent!important;}.vix-final-google-native *{font-size:0!important;line-height:0!important;color:transparent!important;box-shadow:none!important;}.vix-final-google-native iframe,.vix-final-google-native div,.vix-final-google-native span,.vix-final-google-native button,.vix-final-google-native a{max-width:100%!important;width:100%!important;height:48px!important;min-height:48px!important;border:0!important;background:transparent!important;}.vix-final-google-native script{display:none!important;}.vix-final-google-box:hover .vix-final-google-visible{background:#eef3fb;}
.vix-final-security{margin-top:auto;text-align:center;padding:0 8px 4px;color:#6f7b98;}.vix-final-security i{width:48px;height:48px;border-radius:50%;background:#eef4ff;color:#075bff;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;font-size:20px;}.vix-final-security strong{display:block;color:#07142f;font-size:16px;line-height:1.25;font-weight:800;margin-bottom:8px;}.vix-final-security p{margin:0 auto;max-width:200px;font-size:13.5px;line-height:1.45;font-weight:500;}
.vix-final-footer{width:min(1240px,100%);height:58px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;color:#637292;font-size:13px;font-weight:600;}.vix-final-footer span:nth-child(1){justify-self:start}.vix-final-footer span:nth-child(2){justify-self:center;text-align:center}.vix-final-footer span:nth-child(3){justify-self:end}.vix-final-footer i{color:#637ca9;margin-right:8px;font-size:16px;vertical-align:-2px;}body.vix-login-page .alert{border-radius:12px;border:0;box-shadow:0 12px 28px rgba(20,30,60,.08);font-size:14px;margin:0 0 20px;}
@media(max-width:1050px){.vix-final-card{height:auto;grid-template-columns:1fr}.vix-final-brand{display:none}.vix-final-content{padding:44px 24px}.vix-final-form-panel{max-width:640px}.vix-final-grid{grid-template-columns:1fr;gap:24px}.vix-final-social{border-left:0;border-top:1px solid #e7edf7;padding-left:0;padding-top:22px;min-height:auto}.vix-final-security{margin-top:22px}.vix-final-footer{grid-template-columns:1fr;height:auto;padding:18px 0;text-align:center}.vix-final-footer span{justify-self:center!important}}
@media(max-width:560px){.vix-final-login-shell{padding:18px 14px}.vix-final-logo{margin-bottom:16px}.vix-final-logo img{height:32px}.vix-final-card{border-radius:16px}.vix-final-content{padding:30px 18px}.vix-final-heading{gap:13px;margin-bottom:26px}.vix-final-lock{width:52px;height:52px;font-size:20px}.vix-final-heading h2{font-size:26px}.vix-final-social-title{margin-top:8px}.vix-final-footer{font-size:12.5px}}

/* ==========================================================
   VIX Pro - Ajuste final visual completo del login
   ========================================================== */
body.vix-login-page{
    background:#f6f8fc!important;
}
body.vix-login-page #main-body{
    background:linear-gradient(180deg,#ffffff 0%,#f8faff 62%,#f3f6fb 100%)!important;
}
.vix-final-login-shell{
    min-height:100vh;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    padding:26px 24px 14px!important;
}
.vix-final-logo{
    height:48px!important;
    margin-bottom:18px!important;
    display:flex;
    align-items:center;
    justify-content:center;
}
.vix-final-logo img{height:42px!important;width:auto!important;object-fit:contain;display:block;}
.vix-final-card{
    width:min(1220px,100%)!important;
    height:630px!important;
    display:grid!important;
    grid-template-columns:408px 1fr!important;
    background:#fff!important;
    border:1px solid #dfe7f3!important;
    border-radius:16px!important;
    overflow:hidden!important;
    box-shadow:0 20px 58px rgba(19,32,67,.075)!important;
}
.vix-final-brand{
    position:relative!important;
    overflow:hidden!important;
    color:#fff!important;
    padding:64px 50px 34px 54px!important;
    background:
        radial-gradient(circle at 12% 0%,rgba(35,93,255,.92) 0,rgba(35,93,255,0) 35%),
        linear-gradient(155deg,#1424df 0%,#071d52 46%,#071733 77%,#280632 100%)!important;
}
.vix-final-brand:before{
    content:""!important;
    position:absolute!important;
    inset:-10% -8% 0 auto!important;
    width:255px!important;
    background:rgba(255,255,255,.045)!important;
    transform:skewX(-14deg)!important;
    pointer-events:none!important;
}
.vix-final-brand:after{
    content:""!important;
    position:absolute!important;
    top:-5px!important;
    right:-86px!important;
    width:150px!important;
    height:calc(100% + 10px)!important;
    background:#fff!important;
    border-radius:86px!important;
    z-index:1!important;
}
.vix-final-brand-content{position:relative!important;z-index:2!important;max-width:300px!important;}
.vix-final-brand h1{
    margin:0 0 14px!important;
    font-size:26px!important;
    line-height:1.22!important;
    font-weight:800!important;
    letter-spacing:-.035em!important;
    color:#fff!important;
}
.vix-final-brand p{
    margin:0!important;
    color:rgba(255,255,255,.88)!important;
    font-size:14.5px!important;
    line-height:1.55!important;
    font-weight:500!important;
}
.vix-final-benefits{display:grid!important;gap:15px!important;margin-top:26px!important;}
.vix-final-benefit{display:grid!important;grid-template-columns:42px 1fr!important;gap:12px!important;align-items:center!important;}
.vix-final-benefit span:first-child{
    width:42px!important;height:42px!important;border-radius:12px!important;
    background:linear-gradient(145deg,rgba(28,107,255,.94),rgba(124,44,255,.88))!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    color:#fff!important;font-size:17px!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 10px 22px rgba(0,0,0,.14)!important;
}
.vix-final-benefit strong{display:block!important;margin:0 0 3px!important;color:#fff!important;font-size:13px!important;line-height:1.2!important;font-weight:800!important;}
.vix-final-benefit small{display:block!important;color:rgba(255,255,255,.78)!important;font-size:11.8px!important;line-height:1.35!important;font-weight:500!important;}
.vix-final-dots{position:absolute!important;z-index:1!important;width:80px!important;height:80px!important;opacity:.42!important;background-image:radial-gradient(rgba(255,255,255,.58) 1px,transparent 1px)!important;background-size:13px 13px!important;}
.vix-final-dots-a{right:42px!important;top:34px!important;}.vix-final-dots-b{right:84px!important;top:242px!important;opacity:.25!important;}
.vix-final-server{position:absolute!important;z-index:2!important;left:116px!important;bottom:26px!important;width:216px!important;height:150px!important;}
.vix-final-orbit{position:absolute!important;left:0!important;bottom:15px!important;width:202px!important;height:52px!important;border:2px solid transparent!important;border-left-color:#ff007a!important;border-top-color:#1267ff!important;border-radius:50%!important;transform:rotate(-11deg)!important;opacity:.86!important;}
.vix-final-tower{position:absolute!important;left:50px!important;bottom:9px!important;width:104px!important;height:118px!important;border-radius:16px!important;background:linear-gradient(165deg,#263555,#111b35 78%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 34px rgba(0,0,0,.32)!important;padding:12px!important;display:grid!important;gap:8px!important;}
.vix-final-tower span{height:19px!important;border-radius:8px!important;background:rgba(255,255,255,.07)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding:0 9px!important;}
.vix-final-tower i{width:30px!important;height:4px!important;border-radius:4px!important;background:rgba(255,255,255,.16)!important;}
.vix-final-tower b{width:23px!important;height:5px!important;border-radius:8px!important;background:linear-gradient(90deg,#19d6ff,#7c3cff)!important;box-shadow:0 0 10px rgba(38,150,255,.8)!important;animation:vixFinalBlink 1.9s ease-in-out infinite!important;}
.vix-final-cloud{position:absolute!important;background:#fff!important;border-radius:999px!important;filter:drop-shadow(0 12px 17px rgba(0,0,0,.14))!important;}
.vix-final-cloud-a{left:2px!important;bottom:0!important;width:82px!important;height:30px!important}.vix-final-cloud-a:before{width:39px!important;height:39px!important;left:14px!important;bottom:10px!important}.vix-final-cloud-a:after{width:30px!important;height:30px!important;right:8px!important;bottom:13px!important}
.vix-final-cloud-b{right:0!important;bottom:0!important;width:112px!important;height:41px!important}.vix-final-cloud-b:before{width:58px!important;height:58px!important;left:17px!important;bottom:12px!important}.vix-final-cloud-b:after{width:48px!important;height:48px!important;right:7px!important;bottom:17px!important}
.vix-final-content{display:flex!important;align-items:center!important;justify-content:center!important;background:#fff!important;padding:52px 58px 48px 78px!important;}
.vix-final-form-panel{width:100%!important;max-width:660px!important;}
.vix-final-heading{display:flex!important;align-items:center!important;gap:16px!important;margin:0 0 28px!important;}
.vix-final-lock{width:56px!important;height:56px!important;border-radius:50%!important;background:#eef4ff!important;color:#075bff!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:21px!important;flex:0 0 auto!important;}
.vix-final-heading h2{margin:0 0 5px!important;color:#050b19!important;font-size:29px!important;line-height:1.08!important;font-weight:800!important;letter-spacing:-.035em!important;}
.vix-final-heading p{margin:0!important;color:#6e7b99!important;font-size:14px!important;line-height:1.25!important;font-weight:500!important;}
.vix-final-grid{display:grid!important;grid-template-columns:minmax(300px,350px) 220px!important;gap:34px!important;align-items:start!important;}
.vix-final-grid-single{display:block!important;max-width:360px!important;}
.vix-final-field{margin-bottom:16px!important;}
.vix-final-field label{display:block!important;margin:0 0 8px!important;color:#050b19!important;font-size:13.5px!important;font-weight:800!important;line-height:1.2!important;}
.vix-final-input{height:46px!important;display:grid!important;grid-template-columns:46px 1fr!important;align-items:center!important;background:#fff!important;border:1px solid #dfe7f3!important;border-radius:9px!important;overflow:hidden!important;transition:border-color .16s ease,box-shadow .16s ease!important;}
.vix-final-input:focus-within{border-color:#075bff!important;box-shadow:0 0 0 3px rgba(7,91,255,.12)!important;}
.vix-final-input>i{height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#f6f8fc!important;color:#07142f!important;font-size:13.5px!important;border-right:1px solid #edf1f7!important;}
.vix-final-input input{width:100%!important;height:100%!important;border:0!important;outline:0!important;background:#fff!important;padding:0 13px!important;color:#0e1832!important;font-size:14px!important;font-weight:600!important;box-shadow:none!important;}
.vix-final-password{grid-template-columns:46px 1fr 46px!important;}
.vix-final-eye{height:100%!important;border:0!important;background:#fff!important;color:#8692aa!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;font-size:15px!important;box-shadow:none!important;}
.vix-final-remember{display:flex!important;align-items:center!important;gap:9px!important;margin:0 0 17px!important;color:#435170!important;font-size:13.5px!important;font-weight:600!important;}
.vix-final-remember input{width:15px!important;height:15px!important;margin:0!important;accent-color:#075bff!important;}
.vix-final-submit{width:100%!important;height:50px!important;border:0!important;border-radius:9px!important;background:linear-gradient(100deg,#075bff 0%,#1663ff 52%,#8b22ef 100%)!important;color:#fff!important;font-size:14.5px!important;font-weight:800!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:11px!important;box-shadow:0 13px 26px rgba(7,91,255,.18)!important;transition:transform .16s ease,box-shadow .16s ease!important;}
.vix-final-forgot{margin-top:12px!important;width:100%!important;height:48px!important;border:1px solid #dfe7f3!important;border-radius:9px!important;background:#fff!important;color:#1a2845!important;display:flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;font-size:13.5px!important;font-weight:800!important;}
.vix-final-social{border-left:1px solid #e7edf7!important;padding-left:28px!important;min-height:286px!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;overflow:hidden!important;}
.vix-final-social-title{display:grid!important;grid-template-columns:1fr auto 1fr!important;gap:11px!important;align-items:center!important;margin:15px 0 24px!important;color:#101936!important;}
.vix-final-social-title span{height:1px!important;background:#e2e8f3!important;}.vix-final-social-title strong{white-space:nowrap!important;font-size:13px!important;font-weight:800!important;}
.vix-final-google-native-visible{position:relative!important;opacity:1!important;overflow:hidden!important;width:100%!important;min-height:46px!important;border-radius:9px!important;background:#f8fafc!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.vix-final-google-native-visible .providerPreLinking,.vix-final-google-native-visible .social-signin-btns,.vix-final-google-native-visible .vix-whmcs-social-signin-btns{width:100%!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.vix-final-google-native-visible .sub-heading,.vix-final-google-native-visible .sub-heading-borderless,.vix-final-google-native-visible p.small,.vix-final-google-native-visible #providerLinkingMessages,.vix-final-google-native-visible .providerLinkingFeedback{display:none!important;}
.vix-final-google-native-visible iframe{max-width:100%!important;}
.vix-final-google-native-visible .btn,.vix-final-google-native-visible button,.vix-final-google-native-visible a{min-height:46px!important;border:0!important;box-shadow:none!important;background:#f8fafc!important;border-radius:9px!important;color:#1d293d!important;font-size:13.5px!important;font-weight:700!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:100%!important;text-decoration:none!important;}
.vix-final-google-native-visible .btn:hover,.vix-final-google-native-visible button:hover,.vix-final-google-native-visible a:hover{background:#eef3fb!important;}
.vix-final-google-native-visible img{width:18px!important;height:18px!important;margin-right:8px!important;}
.vix-final-google-native-visible script{display:none!important;}
.vix-final-security{margin-top:auto!important;text-align:center!important;padding:0 8px 2px!important;color:#6f7b98!important;}
.vix-final-security i{width:44px!important;height:44px!important;border-radius:50%!important;background:#eef4ff!important;color:#075bff!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0 auto 13px!important;font-size:18px!important;}
.vix-final-security strong{display:block!important;color:#07142f!important;font-size:15px!important;line-height:1.25!important;font-weight:800!important;margin-bottom:7px!important;}
.vix-final-security p{margin:0 auto!important;max-width:185px!important;font-size:12.8px!important;line-height:1.45!important;font-weight:500!important;}
.vix-final-footer{width:min(1220px,100%)!important;height:54px!important;display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;gap:18px!important;color:#637292!important;font-size:12.8px!important;font-weight:600!important;}
.vix-final-footer span:nth-child(1){justify-self:start!important}.vix-final-footer span:nth-child(2){justify-self:center!important;text-align:center!important}.vix-final-footer span:nth-child(3){justify-self:end!important}.vix-final-footer i{color:#637ca9!important;margin-right:8px!important;font-size:15px!important;vertical-align:-2px!important;}
@media(max-width:1050px){.vix-final-card{height:auto!important;grid-template-columns:1fr!important}.vix-final-brand{display:none!important}.vix-final-content{padding:42px 24px!important}.vix-final-form-panel{max-width:620px!important}.vix-final-grid{grid-template-columns:1fr!important;gap:22px!important}.vix-final-social{border-left:0!important;border-top:1px solid #e7edf7!important;padding-left:0!important;padding-top:20px!important;min-height:auto!important}.vix-final-security{margin-top:20px!important}.vix-final-footer{grid-template-columns:1fr!important;height:auto!important;padding:16px 0!important;text-align:center!important}.vix-final-footer span{justify-self:center!important}}
@media(max-width:560px){.vix-final-login-shell{padding:18px 14px!important}.vix-final-logo{margin-bottom:14px!important}.vix-final-logo img{height:34px!important}.vix-final-card{border-radius:15px!important}.vix-final-content{padding:28px 17px!important}.vix-final-heading{gap:13px!important;margin-bottom:24px!important}.vix-final-lock{width:50px!important;height:50px!important;font-size:19px!important}.vix-final-heading h2{font-size:25px!important}.vix-final-footer{font-size:12.5px!important}}


/* =========================================================
   VIX LOGIN — AJUSTE FINAL COHERENTE + GOOGLE CORREGIDO
   Mantiene WHMCS, evita mostrar JS como texto y compacta el diseño.
   ========================================================= */
body:has(.vix-final-login-shell),
.vix-final-login-shell{
    background:#f7f9fd!important;
}
.vix-final-login-shell{
    min-height:100vh!important;
    padding:24px 28px 18px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    box-sizing:border-box!important;
}
.vix-final-logo{margin:0 0 20px!important;text-align:center!important;line-height:1!important;}
.vix-final-logo img{height:46px!important;width:auto!important;display:inline-block!important;}
.vix-final-card{
    width:min(1160px,100%)!important;
    height:560px!important;
    display:grid!important;
    grid-template-columns:390px 1fr!important;
    background:#fff!important;
    border:1px solid #dce6f4!important;
    border-radius:18px!important;
    overflow:hidden!important;
    box-shadow:0 24px 60px rgba(15,34,71,.08)!important;
}
.vix-final-brand{
    position:relative!important;
    overflow:hidden!important;
    padding:0!important;
    background:linear-gradient(145deg,#1361ff 0%,#0a1b55 52%,#07142f 100%)!important;
    color:#fff!important;
}
.vix-final-brand:before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    background:linear-gradient(105deg,rgba(255,255,255,.08) 0 42%,transparent 42% 100%)!important;
    opacity:.75!important;
}
.vix-final-brand:after{
    content:""!important;
    position:absolute!important;
    right:-102px!important;
    top:-8px!important;
    width:170px!important;
    height:590px!important;
    background:#fff!important;
    border-radius:50%!important;
    z-index:3!important;
}
.vix-final-brand-content{
    position:relative!important;
    z-index:4!important;
    padding:64px 54px 0!important;
    max-width:350px!important;
}
.vix-final-brand-content h1{
    margin:0 0 16px!important;
    max-width:310px!important;
    color:#fff!important;
    font-size:27px!important;
    line-height:1.18!important;
    font-weight:800!important;
    letter-spacing:-.025em!important;
}
.vix-final-brand-content>p{
    margin:0!important;
    max-width:300px!important;
    color:rgba(255,255,255,.86)!important;
    font-size:14px!important;
    line-height:1.55!important;
    font-weight:500!important;
}
.vix-final-benefits{margin-top:26px!important;display:flex!important;flex-direction:column!important;gap:17px!important;}
.vix-final-benefit{display:grid!important;grid-template-columns:44px 1fr!important;gap:13px!important;align-items:center!important;}
.vix-final-benefit>span{
    width:44px!important;height:44px!important;border-radius:12px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    background:linear-gradient(145deg,rgba(66,128,255,.95),rgba(123,58,237,.95))!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 10px 22px rgba(4,12,38,.22)!important;
    color:#fff!important;font-size:17px!important;
}
.vix-final-benefit strong{display:block!important;color:#fff!important;font-size:13.2px!important;line-height:1.25!important;font-weight:800!important;margin-bottom:3px!important;}
.vix-final-benefit small{display:block!important;color:rgba(255,255,255,.82)!important;font-size:11.6px!important;line-height:1.35!important;font-weight:500!important;}
.vix-final-dots{opacity:.42!important;z-index:2!important;}
.vix-final-dots-a{right:54px!important;top:40px!important;}
.vix-final-dots-b{right:68px!important;top:252px!important;}
.vix-final-server{z-index:4!important;left:104px!important;right:auto!important;bottom:24px!important;width:238px!important;height:145px!important;transform:none!important;}
.vix-final-tower{left:84px!important;bottom:22px!important;width:104px!important;height:130px!important;border-radius:17px!important;}
.vix-final-tower b{animation:vixFinalBlink 1.55s ease-in-out infinite!important;}
.vix-final-tower span:nth-child(2) b{animation-delay:.32s!important;}
.vix-final-tower span:nth-child(3) b{animation-delay:.64s!important;}
.vix-final-tower span:nth-child(4) b{animation-delay:.96s!important;}
.vix-final-cloud-a{left:28px!important;bottom:0!important;}
.vix-final-cloud-b{right:4px!important;bottom:0!important;}
.vix-final-orbit{left:16px!important;bottom:18px!important;width:210px!important;}
.vix-final-content{padding:0 58px 0 92px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#fff!important;}
.vix-final-form-panel{width:100%!important;max-width:650px!important;}
.vix-final-heading{gap:16px!important;margin:0 0 30px!important;align-items:center!important;}
.vix-final-lock{width:54px!important;height:54px!important;font-size:20px!important;background:#eef4ff!important;color:#075bff!important;}
.vix-final-heading h2{font-size:28px!important;letter-spacing:-.03em!important;margin-bottom:4px!important;}
.vix-final-heading p{font-size:13.5px!important;color:#5f6f92!important;}
.vix-final-grid{grid-template-columns:340px 220px!important;gap:32px!important;align-items:start!important;}
.vix-final-field{margin-bottom:15px!important;}
.vix-final-field label{font-size:13px!important;margin-bottom:8px!important;}
.vix-final-input{height:44px!important;border-radius:8px!important;background:#fff!important;grid-template-columns:44px 1fr!important;}
.vix-final-input>i{background:#f5f7fb!important;border-right:1px solid #e9eef7!important;font-size:13px!important;}
.vix-final-input input{font-size:13.5px!important;font-weight:600!important;background:#fff!important;}
.vix-final-password{grid-template-columns:44px 1fr 44px!important;}
.vix-final-eye{background:#fff!important;}
.vix-final-remember{margin:1px 0 16px!important;font-size:13px!important;}
.vix-final-submit{height:46px!important;border-radius:8px!important;font-size:14px!important;box-shadow:0 12px 24px rgba(7,91,255,.15)!important;}
.vix-final-forgot{height:44px!important;border-radius:8px!important;margin-top:11px!important;font-size:13px!important;}
.vix-final-social{min-height:260px!important;padding-left:28px!important;border-left:1px solid #e7edf7!important;overflow:visible!important;}
.vix-final-social-title{margin:18px 0 20px!important;grid-template-columns:1fr auto 1fr!important;gap:10px!important;}
.vix-final-social-title strong{font-size:12.5px!important;font-weight:800!important;white-space:nowrap!important;}
/* Google WHMCS: usar login_button, no provider.code; limpiar todo sin deformar icono */
.vix-final-google-native,
.vix-final-google-native-visible{
    width:100%!important;min-height:44px!important;height:44px!important;border-radius:9px!important;
    overflow:hidden!important;background:#f7f9fc!important;display:flex!important;align-items:center!important;justify-content:center!important;
    color:#1a2845!important;font-size:13px!important;line-height:1!important;
}
.vix-final-google-native .providerPreLinking,
.vix-final-google-native .social-signin-btns,
.vix-final-google-native .vix-whmcs-social-signin-btns{
    width:100%!important;height:44px!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;
}
.vix-final-google-native .sub-heading,
.vix-final-google-native .sub-heading-borderless,
.vix-final-google-native p.small,
.vix-final-google-native #providerLinkingMessages,
.vix-final-google-native .providerLinkingFeedback,
.vix-final-google-native script{display:none!important;visibility:hidden!important;width:0!important;height:0!important;overflow:hidden!important;}
.vix-final-google-native .btn,
.vix-final-google-native button,
.vix-final-google-native a{
    width:100%!important;height:44px!important;min-height:44px!important;margin:0!important;padding:0 14px!important;
    border:0!important;box-shadow:none!important;border-radius:9px!important;background:#f7f9fc!important;color:#1a2845!important;
    display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;text-decoration:none!important;
    font-size:13px!important;font-weight:700!important;white-space:nowrap!important;line-height:1!important;
}
.vix-final-google-native .btn:hover,
.vix-final-google-native button:hover,
.vix-final-google-native a:hover{background:#eef3fb!important;color:#07142f!important;}
.vix-final-google-native img{
    width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important;margin:0 7px 0 0!important;object-fit:contain!important;display:inline-block!important;vertical-align:middle!important;flex:0 0 18px!important;
}
.vix-final-google-native iframe{max-width:190px!important;height:44px!important;border:0!important;transform:none!important;}
.vix-final-security{margin-top:38px!important;text-align:center!important;color:#687794!important;padding:0 8px!important;}
.vix-final-security i{width:42px!important;height:42px!important;margin-bottom:12px!important;font-size:17px!important;}
.vix-final-security strong{font-size:14.5px!important;margin-bottom:6px!important;}
.vix-final-security p{font-size:12.4px!important;line-height:1.45!important;max-width:170px!important;}
.vix-final-footer{width:min(1160px,100%)!important;height:50px!important;font-size:12.6px!important;color:#526384!important;}
@media(max-width:1000px){.vix-final-card{height:auto!important;grid-template-columns:1fr!important}.vix-final-brand{display:none!important}.vix-final-content{padding:38px 24px!important}.vix-final-grid{grid-template-columns:1fr!important;max-width:360px!important}.vix-final-social{border-left:0!important;border-top:1px solid #e7edf7!important;padding-left:0!important;padding-top:20px!important;min-height:auto!important}.vix-final-security{margin-top:18px!important}.vix-final-footer{grid-template-columns:1fr!important;height:auto!important;padding:14px 0!important;text-align:center!important}.vix-final-footer span{justify-self:center!important}}
@media(max-width:560px){.vix-final-login-shell{padding:18px 14px!important}.vix-final-logo img{height:38px!important}.vix-final-card{border-radius:15px!important}.vix-final-content{padding:28px 17px!important}.vix-final-heading h2{font-size:25px!important}.vix-final-grid{max-width:100%!important}.vix-final-footer{font-size:12px!important}}


/* ==========================================================
   VIX PRO FINAL FIX - Google visible button + balanced left art
   ========================================================== */
body.vix-login-page .vix-final-logo img,
.vix-final-logo img{
    height:52px!important;
    width:auto!important;
}

/* Mover la ilustración del servidor ligeramente a la izquierda */
body.vix-login-page .vix-final-server,
.vix-final-server{
    left:72px!important;
    bottom:22px!important;
}
body.vix-login-page .vix-final-tower,
.vix-final-tower{
    left:76px!important;
}
body.vix-login-page .vix-final-orbit,
.vix-final-orbit{
    left:0!important;
}
body.vix-login-page .vix-final-cloud-a,
.vix-final-cloud-a{
    left:8px!important;
}
body.vix-login-page .vix-final-cloud-b,
.vix-final-cloud-b{
    right:30px!important;
}

/* Google: botón visual propio + capa nativa WHMCS invisible para conservar funcionalidad */
.vix-google-action{
    position:relative!important;
    width:100%!important;
    height:44px!important;
    margin:0 auto!important;
    border-radius:10px!important;
    overflow:hidden!important;
    background:#ffffff!important;
    border:1px solid #e6edf7!important;
    box-shadow:0 8px 22px rgba(15,23,42,.06)!important;
}
.vix-google-display{
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    color:#17233f!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1!important;
    pointer-events:none!important;
    background:#fff!important;
}
.vix-google-display img{
    width:18px!important;
    height:18px!important;
    object-fit:contain!important;
    display:block!important;
    flex:0 0 18px!important;
}
.vix-google-native-click{
    position:absolute!important;
    inset:0!important;
    z-index:2!important;
    opacity:.01!important;
    width:100%!important;
    height:44px!important;
    overflow:hidden!important;
    cursor:pointer!important;
}
.vix-google-native-click .providerPreLinking,
.vix-google-native-click .social-signin-btns,
.vix-google-native-click .vix-whmcs-social-signin-btns{
    width:100%!important;
    height:44px!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
}
.vix-google-native-click a,
.vix-google-native-click button,
.vix-google-native-click iframe,
.vix-google-native-click .btn{
    width:100%!important;
    height:44px!important;
    min-height:44px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    box-shadow:none!important;
    cursor:pointer!important;
}
.vix-google-native-click #providerLinkingMessages,
.vix-google-native-click .providerLinkingFeedback,
.vix-google-native-click .sub-heading,
.vix-google-native-click .sub-heading-borderless,
.vix-google-native-click p.small,
.vix-google-native-click script{
    display:none!important;
}
.vix-google-action:hover .vix-google-display{
    background:#f8fafc!important;
}

/* Proporción más compacta del bloque derecho */
.vix-final-social-title strong{
    font-size:12.5px!important;
    color:#102044!important;
}
.vix-final-security{
    margin-top:30px!important;
}
.vix-final-security p{
    max-width:185px!important;
}


/* ==========================================================
   VIX PRO DEFINITIVE LOGIN PATCH
   - Google nativo visible y funcional
   - Registro visible
   - Sombras sutiles
   - Servidor más a la izquierda
   ========================================================== */
.vix-final-brand-content h1{max-width:330px!important;font-size:26px!important;line-height:1.18!important;}
.vix-final-brand-content>p{max-width:320px!important;font-size:13.5px!important;line-height:1.52!important;}
.vix-final-logo img{height:56px!important;width:auto!important;}
.vix-final-card{box-shadow:0 18px 42px rgba(15,34,71,.055)!important;border-color:#e7edf7!important;}
.vix-final-submit{box-shadow:0 8px 18px rgba(7,91,255,.12)!important;}
.vix-final-benefit>span{box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 6px 14px rgba(4,12,38,.16)!important;}
.vix-final-server{left:50px!important;bottom:22px!important;}
.vix-final-tower{left:68px!important;}
.vix-final-orbit{left:-18px!important;}
.vix-final-cloud-a{left:-4px!important;}
.vix-final-cloud-b{right:44px!important;}
.vix-final-grid{grid-template-columns:340px 230px!important;gap:32px!important;}
.vix-final-social{padding-left:28px!important;}
.vix-final-social-title{margin:16px 0 16px!important;}
.vix-final-social-title strong{font-size:12px!important;color:#33415f!important;font-weight:700!important;}
.vix-google-native-final{width:100%!important;min-height:44px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:visible!important;}
.vix-google-native-final #providerLinkingMessages,
.vix-google-native-final .providerLinkingFeedback,
.vix-google-native-final .sub-heading,
.vix-google-native-final .sub-heading-borderless,
.vix-google-native-final p.small{display:none!important;}
.vix-google-native-final .providerPreLinking,
.vix-google-native-final .social-signin-btns,
.vix-google-native-final .vix-whmcs-social-signin-btns{width:100%!important;min-height:44px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:0!important;overflow:visible!important;}
.vix-google-native-final iframe{max-width:220px!important;min-width:190px!important;height:44px!important;border:0!important;box-shadow:none!important;border-radius:8px!important;}
.vix-google-native-final a,
.vix-google-native-final button,
.vix-google-native-final .btn{min-height:42px!important;border:none!important;border-radius:8px!important;background:#ffffff!important;box-shadow:none!important;color:#1f2a44!important;font-size:13px!important;font-weight:600!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:0 14px!important;text-decoration:none!important;transition:background .2s ease!important;}
.vix-google-native-final a:hover,
.vix-google-native-final button:hover,
.vix-google-native-final .btn:hover{background:#ffffff!important;border:none!important;box-shadow:none!important;}
.vix-google-native-final img{width:18px!important;height:18px!important;object-fit:contain!important;margin-right:7px!important;}
.vix-final-register{margin-top:14px!important;text-align:center!important;font-size:12.5px!important;color:#65738f!important;}
.vix-final-register a{margin-left:5px!important;color:#075bff!important;font-weight:800!important;text-decoration:none!important;}
.vix-final-register a:hover{text-decoration:underline!important;}
.vix-final-security{margin-top:28px!important;}
.vix-final-security strong{font-size:13.5px!important;}
.vix-final-security p{font-size:12px!important;line-height:1.4!important;max-width:180px!important;}
/* Desactivar el overlay fake anterior si existe */
.vix-google-action,.vix-google-display,.vix-google-native-click{display:none!important;}
@media(max-width:1000px){.vix-final-grid{grid-template-columns:1fr!important}.vix-final-social{padding-left:0!important}.vix-google-native-final iframe{max-width:240px!important}}

/* VIX final: remove any internal Google button border/background artifacts */
.vix-google-native-final *,
.vix-google-native-final iframe{box-shadow:none!important;border-color:transparent!important;}
.vix-google-native-final .btn-default,
.vix-google-native-final .btn-secondary{background:#ffffff!important;border:none!important;}

/* ==========================================================
   VIX PRO CLIENTAREA PREMIUM
   Dashboard limpio, compacto y coherente con el login VIX Pro
   ========================================================== */
body:not(.vix-login-page) {
    background: #f5f8fc;
}
.client-home-panels,
.client-home-cards,
.vix-clientarea-home {
    color: #07152f;
}
.vix-clientarea-home {
    max-width: 1180px;
    margin: 0 auto 42px;
}
.vix-ca-hero {
    position: relative;
    overflow: hidden;
    border-radius: 20px;
    padding: 34px 38px;
    min-height: 230px;
    background: linear-gradient(135deg, #075bff 0%, #1745e8 45%, #7c2cff 100%);
    color: #fff;
    box-shadow: 0 18px 42px rgba(7,91,255,.14);
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 22px;
}
.vix-ca-hero:before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 88% 16%, rgba(255,255,255,.22), transparent 23%),
        linear-gradient(120deg, rgba(255,255,255,.12), transparent 34%);
    pointer-events: none;
}
.vix-ca-hero-content { position: relative; z-index: 2; max-width: 570px; }
.vix-ca-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(255,255,255,.13);
    border: 1px solid rgba(255,255,255,.18);
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 12px;
}
.vix-ca-hero h1 {
    margin: 0 0 8px;
    font-size: 32px;
    line-height: 1.12;
    font-weight: 800;
    letter-spacing: -.03em;
}
.vix-ca-hero p {
    margin: 0;
    max-width: 520px;
    font-size: 14px;
    line-height: 1.6;
    color: rgba(255,255,255,.88);
}
.vix-ca-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 20px;
}
.vix-ca-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 42px;
    padding: 0 16px;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none !important;
    transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.vix-ca-btn:hover { transform: translateY(-1px); }
.vix-ca-btn-primary {
    color: #fff !important;
    background: linear-gradient(135deg, #075bff, #8a20f0);
    box-shadow: 0 8px 18px rgba(7,91,255,.16);
}
.vix-ca-btn-light {
    color: #fff !important;
    background: rgba(255,255,255,.13);
    border: 1px solid rgba(255,255,255,.20);
}
.vix-ca-hero-art {
    position: relative;
    z-index: 1;
    width: 250px;
    height: 170px;
    margin-right: 16px;
}
.vix-ca-server {
    position: absolute;
    right: 45px;
    bottom: 22px;
    width: 86px;
    height: 120px;
    border-radius: 18px;
    background: linear-gradient(180deg, #1d315f, #071735);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 18px 32px rgba(2,10,35,.22);
    padding: 17px 13px;
}
.vix-ca-server span {
    display: block;
    height: 13px;
    border-radius: 6px;
    margin-bottom: 12px;
    background: linear-gradient(90deg, rgba(255,255,255,.13), rgba(255,255,255,.06));
    position: relative;
}
.vix-ca-server span:after {
    content: "";
    position: absolute;
    right: 8px;
    top: 4px;
    width: 19px;
    height: 4px;
    border-radius: 8px;
    background: linear-gradient(90deg, #00c7ff, #8a20f0);
    animation: vixServerBlink 2.2s infinite ease-in-out;
}
.vix-ca-server span:nth-child(2):after { animation-delay: .35s; }
.vix-ca-server span:nth-child(3):after { animation-delay: .7s; }
.vix-ca-server span:nth-child(4):after { animation-delay: 1.05s; }
@keyframes vixServerBlink { 0%, 100% { opacity: .42; } 50% { opacity: 1; } }
.vix-ca-cloud {
    position: absolute;
    background: #fff;
    height: 36px;
    border-radius: 999px;
    filter: drop-shadow(0 12px 20px rgba(12,25,64,.16));
}
.vix-ca-cloud:before,
.vix-ca-cloud:after {
    content: "";
    position: absolute;
    background: #fff;
    border-radius: 50%;
}
.vix-ca-cloud-a { width: 92px; right: 92px; bottom: 12px; }
.vix-ca-cloud-a:before { width: 42px; height: 42px; left: 20px; bottom: 10px; }
.vix-ca-cloud-a:after { width: 55px; height: 55px; right: 8px; bottom: 10px; }
.vix-ca-cloud-b { width: 64px; right: 178px; bottom: 6px; opacity: .95; }
.vix-ca-cloud-b:before { width: 30px; height: 30px; left: 13px; bottom: 9px; }
.vix-ca-cloud-b:after { width: 38px; height: 38px; right: 5px; bottom: 9px; }
.vix-ca-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}
.vix-ca-stat-card {
    display: grid;
    grid-template-columns: 48px 1fr;
    grid-template-rows: auto auto;
    column-gap: 12px;
    align-items: center;
    min-height: 96px;
    background: #fff;
    border: 1px solid #e7edf7;
    border-radius: 16px;
    padding: 17px;
    text-decoration: none !important;
    box-shadow: 0 10px 28px rgba(15,34,71,.045);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.vix-ca-stat-card:hover {
    transform: translateY(-2px);
    border-color: #d6e2f6;
    box-shadow: 0 14px 30px rgba(15,34,71,.07);
}
.vix-ca-stat-icon {
    grid-row: 1 / 3;
    width: 48px;
    height: 48px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 18px;
}
.vix-ca-stat-icon.vix-blue { background: linear-gradient(135deg, #075bff, #5268ff); }
.vix-ca-stat-icon.vix-green { background: linear-gradient(135deg, #00b878, #1bc98e); }
.vix-ca-stat-icon.vix-pink { background: linear-gradient(135deg, #ff2f7e, #8a20f0); }
.vix-ca-stat-icon.vix-orange { background: linear-gradient(135deg, #ff9700, #ffb020); }
.vix-ca-stat-card strong {
    display: block;
    color: #07152f;
    font-size: 28px;
    line-height: 1;
    font-weight: 800;
}
.vix-ca-stat-card small {
    display: block;
    color: #65738f;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .03em;
}
.vix-ca-upsell {
    display: grid;
    grid-template-columns: 58px 1fr auto;
    align-items: center;
    gap: 16px;
    background: linear-gradient(135deg, #fff, #f8fbff);
    border: 1px solid #dbe7ff;
    border-radius: 16px;
    padding: 20px;
    box-shadow: 0 10px 28px rgba(15,34,71,.045);
    margin-bottom: 20px;
}
.vix-ca-upsell-icon {
    width: 52px;
    height: 52px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #eef4ff;
    color: #075bff;
    font-size: 20px;
}
.vix-ca-upsell h2 {
    margin: 0 0 4px;
    font-size: 18px;
    font-weight: 800;
    color: #07152f;
}
.vix-ca-upsell p {
    margin: 0 0 10px;
    color: #52617d;
    font-size: 13px;
}
.vix-ca-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.vix-ca-tags span {
    border-radius: 999px;
    padding: 5px 10px;
    background: #eef4ff;
    color: #075bff;
    font-size: 12px;
    font-weight: 700;
}
.vix-ca-panels .card,
.vix-ca-panel {
    border: 1px solid #e7edf7 !important;
    border-radius: 16px !important;
    overflow: hidden;
    box-shadow: 0 10px 28px rgba(15,34,71,.045) !important;
    margin-bottom: 18px;
}
.vix-ca-panels .card-header,
.vix-ca-panel .card-header {
    background: #fff !important;
    border-bottom: 1px solid #edf2fa !important;
    padding: 15px 18px !important;
}
.vix-ca-panels .card-title,
.vix-ca-panel .card-title {
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #07152f !important;
}
.vix-ca-panels .card-title i,
.vix-ca-panel .card-title i { color: #075bff; }
.vix-ca-panels .card-body,
.vix-ca-panel .card-body { padding: 16px 18px !important; }
.vix-ca-panels .list-group-item {
    border-color: #edf2fa !important;
    padding: 13px 18px !important;
    color: #1f2a44 !important;
}
.vix-ca-panels .list-group-item:hover {
    background: #f8fbff !important;
    color: #075bff !important;
}
.vix-ca-panels .btn,
.vix-clientarea-home .btn {
    border-radius: 9px !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}
.vix-clientarea-home .badge,
.vix-ca-panels .badge {
    border-radius: 999px !important;
    padding: 5px 8px !important;
}
/* Ocultar tiles originales cuando se carguen en páginas extendidas; el home usa nuevas cards */
.vix-clientarea-home + .tiles,
.vix-clientarea-home .tiles { display: none !important; }
/* Sidebar / panels generales del cliente */
.sidebar .panel,
.sidebar .card,
.panel-sidebar {
    border: 1px solid #e7edf7 !important;
    border-radius: 14px !important;
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(15,34,71,.04) !important;
}
.panel-sidebar > .panel-heading,
.panel-sidebar .panel-heading,
.sidebar .card-header {
    background: #fff !important;
    border-bottom: 1px solid #edf2fa !important;
    color: #07152f !important;
    font-weight: 800 !important;
}
.panel-sidebar .list-group-item,
.sidebar .list-group-item {
    border-color: #edf2fa !important;
    font-size: 13px !important;
}
.panel-sidebar .list-group-item:hover,
.sidebar .list-group-item:hover {
    background: #f8fbff !important;
    color: #075bff !important;
}
/* Tablas y tarjetas frecuentes */
.table-container,
.dataTables_wrapper,
.card {
    border-radius: 14px;
}
.table thead th {
    border-bottom-color: #e7edf7 !important;
    color: #52617d;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .03em;
}
@media (max-width: 991px) {
    .vix-ca-hero { padding: 28px; min-height: auto; }
    .vix-ca-hero-art { display: none; }
    .vix-ca-stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .vix-ca-upsell { grid-template-columns: 48px 1fr; }
    .vix-ca-upsell .vix-ca-btn { grid-column: 1 / -1; }
}
@media (max-width: 575px) {
    .vix-clientarea-home { margin-bottom: 28px; }
    .vix-ca-hero { border-radius: 16px; padding: 22px; }
    .vix-ca-hero h1 { font-size: 25px; }
    .vix-ca-stats-grid { grid-template-columns: 1fr; }
    .vix-ca-upsell { grid-template-columns: 1fr; }
    .vix-ca-upsell-icon { width: 48px; height: 48px; }
}

/* ==========================================================
   VIX Pro Clientarea Next Level - premium dashboard v2
   ========================================================== */
body:not(.vix-login-page) {
    background:
        radial-gradient(circle at 12% 0%, rgba(7,91,255,.075), transparent 28%),
        radial-gradient(circle at 92% 8%, rgba(255,0,122,.055), transparent 28%),
        #f6f8fc !important;
}
body:not(.vix-login-page) #main-body {
    background: transparent !important;
}
body:not(.vix-login-page) #main-body > .container {
    max-width: 1280px !important;
}
.vix-clientarea-home-pro {
    --vix-ca-navy:#071638;
    --vix-ca-blue:#075bff;
    --vix-ca-purple:#7c2cff;
    --vix-ca-pink:#ff007a;
    --vix-ca-text:#07142f;
    --vix-ca-muted:#687694;
    --vix-ca-line:#e5ecf7;
    --vix-ca-soft:#f8faff;
}
.vix-clientarea-home-pro .vix-ca-hero-pro {
    position: relative;
    min-height: 292px;
    padding: 34px 36px;
    border-radius: 24px;
    overflow: hidden;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 310px;
    align-items: stretch;
    gap: 24px;
    background:
        radial-gradient(circle at 70% 20%, rgba(255,255,255,.22), transparent 23%),
        linear-gradient(135deg, #061738 0%, #075bff 48%, #7c2cff 100%);
    border: 1px solid rgba(255,255,255,.36);
    box-shadow: 0 18px 42px rgba(7,22,56,.11);
}
.vix-clientarea-home-pro .vix-ca-hero-pro:before {
    content:"";
    position:absolute;
    inset:0;
    background-image:
        radial-gradient(rgba(255,255,255,.55) 1px, transparent 1px),
        linear-gradient(115deg, transparent 0 56%, rgba(255,255,255,.1) 56% 57%, transparent 57% 100%);
    background-size: 18px 18px, 100% 100%;
    background-position: right 58px top 42px, center;
    opacity:.18;
    z-index:-1;
}
.vix-clientarea-home-pro .vix-ca-hero-content {
    max-width: 620px;
    position: relative;
    z-index: 2;
}
.vix-clientarea-home-pro .vix-ca-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    margin-bottom: 16px;
    border-radius: 999px;
    background: rgba(255,255,255,.13);
    color: rgba(255,255,255,.94);
    border: 1px solid rgba(255,255,255,.18);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .02em;
}
.vix-clientarea-home-pro .vix-ca-hero h1 {
    margin: 0 0 10px;
    color:#fff;
    font-size: clamp(30px, 3vw, 42px);
    line-height: 1.08;
    letter-spacing: -.045em;
    font-weight: 800;
}
.vix-clientarea-home-pro .vix-ca-hero p {
    max-width: 545px;
    margin: 0;
    color: rgba(255,255,255,.86);
    font-size: 15.5px;
    line-height: 1.58;
    font-weight: 500;
}
.vix-clientarea-home-pro .vix-ca-hero-actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top: 24px;
}
.vix-clientarea-home-pro .vix-ca-btn {
    min-height: 43px;
    padding: 0 17px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none !important;
    transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
}
.vix-clientarea-home-pro .vix-ca-btn-primary {
    color:#fff !important;
    border: 0;
    background: linear-gradient(100deg,#075bff,#7c2cff);
    box-shadow: 0 12px 24px rgba(7,91,255,.2);
}
.vix-clientarea-home-pro .vix-ca-btn-primary:hover { transform: translateY(-1px); box-shadow: 0 16px 30px rgba(7,91,255,.25); }
.vix-clientarea-home-pro .vix-ca-btn-light {
    color:#fff !important;
    background: rgba(255,255,255,.13);
    border: 1px solid rgba(255,255,255,.22);
    box-shadow: none;
}
.vix-ca-hero-side {
    position: relative;
    z-index: 3;
    align-self: stretch;
    display: grid;
    grid-template-rows: 1fr auto;
    gap: 14px;
}
.vix-ca-status-card {
    border-radius: 18px;
    padding: 20px;
    color:#fff;
    background: rgba(255,255,255,.13);
    border: 1px solid rgba(255,255,255,.18);
    backdrop-filter: blur(10px);
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height: 136px;
}
.vix-ca-status-card span {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    display:flex;
    align-items:center;
    justify-content:center;
    background: rgba(255,255,255,.15);
    margin-bottom: 13px;
    font-size: 20px;
}
.vix-ca-status-card strong { font-size: 18px; font-weight: 800; line-height:1.2; }
.vix-ca-status-card small { color: rgba(255,255,255,.78); font-size: 13px; margin-top: 4px; }
.vix-ca-mini-actions {
    display:grid;
    gap:10px;
}
.vix-ca-mini-actions a {
    min-height:42px;
    padding:0 14px;
    border-radius:13px;
    display:flex;
    align-items:center;
    gap:9px;
    color:#fff !important;
    text-decoration:none !important;
    font-size:13px;
    font-weight:800;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.17);
}
.vix-clientarea-home-pro .vix-ca-hero-art {
    position:absolute;
    right: 305px;
    bottom: 0;
    width: 220px;
    height: 205px;
    opacity:.95;
    pointer-events:none;
}
.vix-clientarea-home-pro .vix-ca-server {
    position:absolute;
    left: 72px;
    bottom: 28px;
    width:86px;
    height:118px;
    border-radius:18px;
    background:linear-gradient(160deg,#26385d,#101b34 75%);
    padding:14px 12px;
    display:grid;
    gap:8px;
    box-shadow:0 24px 36px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.13);
}
.vix-clientarea-home-pro .vix-ca-server span {
    height:16px;
    border-radius:7px;
    background:rgba(255,255,255,.08);
    position:relative;
}
.vix-clientarea-home-pro .vix-ca-server span:before {
    content:"";
    position:absolute;
    left:9px; top:6px;
    width:27px; height:4px;
    border-radius:99px;
    background:rgba(255,255,255,.17);
}
.vix-clientarea-home-pro .vix-ca-server span:after {
    content:"";
    position:absolute;
    right:8px; top:5px;
    width:22px; height:5px;
    border-radius:99px;
    background:linear-gradient(90deg,#19d6ff,#7c3cff);
    box-shadow:0 0 10px rgba(31,144,255,.75);
    animation:vixCaBlink 1.9s ease-in-out infinite;
}
.vix-clientarea-home-pro .vix-ca-server span:nth-child(2):after{animation-delay:.25s}.vix-clientarea-home-pro .vix-ca-server span:nth-child(3):after{animation-delay:.65s}.vix-clientarea-home-pro .vix-ca-server span:nth-child(4):after{animation-delay:1s}
@keyframes vixCaBlink{0%,100%{opacity:.42}50%{opacity:1}}
.vix-clientarea-home-pro .vix-ca-cloud { position:absolute; background:#fff; border-radius:999px; filter: drop-shadow(0 13px 17px rgba(0,0,0,.16)); }
.vix-clientarea-home-pro .vix-ca-cloud:before,.vix-clientarea-home-pro .vix-ca-cloud:after {content:"";position:absolute;background:#fff;border-radius:50%;}
.vix-clientarea-home-pro .vix-ca-cloud-a { left:15px; bottom:20px; width:78px; height:30px; }
.vix-clientarea-home-pro .vix-ca-cloud-a:before { width:38px; height:38px; left:14px; bottom:10px; }
.vix-clientarea-home-pro .vix-ca-cloud-a:after { width:30px; height:30px; right:7px; bottom:14px; }
.vix-clientarea-home-pro .vix-ca-cloud-b { right:4px; bottom:15px; width:106px; height:40px; }
.vix-clientarea-home-pro .vix-ca-cloud-b:before { width:55px; height:55px; left:15px; bottom:12px; }
.vix-clientarea-home-pro .vix-ca-cloud-b:after { width:46px; height:46px; right:7px; bottom:16px; }
.vix-ca-orbit { position:absolute; border:2px solid transparent; border-radius:50%; transform:rotate(-12deg); opacity:.8; }
.vix-ca-orbit-one{left:8px;bottom:34px;width:190px;height:48px;border-left-color:#ff007a;border-top-color:#1663ff}.vix-ca-orbit-two{left:62px;bottom:68px;width:140px;height:38px;border-right-color:#1d6cff;border-bottom-color:#ff007a;opacity:.55}
.vix-ca-quickbar {
    margin: 16px 0 18px;
    display:grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}
.vix-ca-quickbar a {
    height: 58px;
    display:flex;
    align-items:center;
    gap:12px;
    padding: 0 16px;
    border-radius: 16px;
    background: rgba(255,255,255,.82);
    border: 1px solid rgba(224,232,246,.9);
    box-shadow: 0 10px 24px rgba(15,34,71,.035);
    color:#10203e !important;
    font-size: 13px;
    font-weight: 800;
    text-decoration:none !important;
    backdrop-filter: blur(8px);
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.vix-ca-quickbar a:hover { transform: translateY(-1px); border-color:#cbd9f0; box-shadow: 0 14px 30px rgba(15,34,71,.06); }
.vix-ca-quickbar i {
    width:34px;
    height:34px;
    border-radius:11px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#075bff;
    background:#eef4ff;
    flex:0 0 auto;
}
.vix-clientarea-home-pro .vix-ca-stats-grid { gap: 16px; margin-bottom: 20px; }
.vix-clientarea-home-pro .vix-ca-stat-card {
    min-height: 108px;
    border-radius: 18px;
    border: 1px solid rgba(224,232,246,.9);
    background: linear-gradient(180deg,#fff 0%,#fbfdff 100%);
    box-shadow: 0 12px 28px rgba(15,34,71,.04);
}
.vix-clientarea-home-pro .vix-ca-stat-card strong { font-size: 31px; letter-spacing:-.04em; }
.vix-clientarea-home-pro .vix-ca-stat-card small { color:#6a7895; }
.vix-clientarea-home-pro .vix-ca-upsell-pro {
    border-radius: 18px;
    padding: 22px;
    border: 1px solid rgba(219,231,255,.95);
    background:
        radial-gradient(circle at 0 0, rgba(7,91,255,.08), transparent 34%),
        linear-gradient(135deg,#fff 0%,#f8fbff 100%);
    box-shadow: 0 12px 28px rgba(15,34,71,.04);
}
.vix-clientarea-home-pro .vix-ca-upsell-pro h2 { font-size: 19px; letter-spacing:-.02em; }
.vix-clientarea-home-pro .vix-ca-panels .card,
.vix-clientarea-home-pro .vix-ca-panel {
    border-radius: 18px !important;
    border:1px solid rgba(224,232,246,.95) !important;
    box-shadow:0 12px 28px rgba(15,34,71,.04) !important;
}
.vix-clientarea-home-pro .vix-ca-panels .card-header,
.vix-clientarea-home-pro .vix-ca-panel .card-header {
    padding: 16px 18px !important;
    background: linear-gradient(180deg,#fff,#fbfdff) !important;
}
.vix-clientarea-home-pro .vix-ca-panels .list-group-item {
    font-size: 13px !important;
    font-weight: 600;
}
.vix-clientarea-home-pro .vix-ca-panels .list-group-item .label,
.vix-clientarea-home-pro .vix-ca-panels .badge { font-weight:800 !important; }
/* Sidebar más premium */
body:not(.vix-login-page) .panel-sidebar,
body:not(.vix-login-page) .sidebar .card,
body:not(.vix-login-page) .sidebar .panel {
    border-radius: 18px !important;
    border: 1px solid rgba(224,232,246,.95) !important;
    box-shadow: 0 12px 28px rgba(15,34,71,.035) !important;
    background: #fff !important;
}
body:not(.vix-login-page) .panel-sidebar > .panel-heading,
body:not(.vix-login-page) .panel-sidebar .panel-heading,
body:not(.vix-login-page) .sidebar .card-header {
    padding: 15px 17px !important;
    background: linear-gradient(180deg,#fff,#fbfdff) !important;
}
body:not(.vix-login-page) .panel-sidebar .list-group-item,
body:not(.vix-login-page) .sidebar .list-group-item {
    padding: 12px 16px !important;
    font-weight: 600;
}
body:not(.vix-login-page) .panel-sidebar .list-group-item i,
body:not(.vix-login-page) .sidebar .list-group-item i { color:#075bff; }
@media (max-width: 991px) {
    .vix-clientarea-home-pro .vix-ca-hero-pro { grid-template-columns: 1fr; }
    .vix-ca-hero-side { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
    .vix-clientarea-home-pro .vix-ca-hero-art { display:none; }
    .vix-ca-quickbar { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 575px) {
    .vix-clientarea-home-pro .vix-ca-hero-pro { padding: 24px; border-radius: 18px; }
    .vix-ca-hero-side { grid-template-columns: 1fr; }
    .vix-ca-quickbar { grid-template-columns: 1fr; }
    .vix-ca-quickbar a { height:54px; }
}

/* =========================================================
   VIX PRO - CLIENTAREA SAAS PREMIUM FINAL REFINEMENT
   Mejora visual avanzada sin tocar lógica WHMCS
   ========================================================= */
.vix-clientarea-home-pro {
    --vix-navy:#07142f;
    --vix-blue:#1164ff;
    --vix-blue-2:#1c6bff;
    --vix-indigo:#4f46e5;
    --vix-pink:#ff007a;
    --vix-card:#ffffff;
    --vix-border:rgba(222,232,248,.92);
    --vix-shadow:0 14px 34px rgba(11, 31, 73, .055);
    --vix-shadow-soft:0 8px 20px rgba(11, 31, 73, .04);
}

.vix-clientarea-home-pro .vix-ca-hero-pro {
    position: relative;
    overflow: hidden;
    min-height: 292px;
    padding: 34px 36px;
    border-radius: 24px;
    display: grid;
    grid-template-columns: minmax(0,1.1fr) 220px 310px;
    gap: 24px;
    align-items: center;
    background:
        radial-gradient(circle at 83% 24%, rgba(255,255,255,.18), transparent 25%),
        radial-gradient(circle at 4% 4%, rgba(255,255,255,.12), transparent 22%),
        linear-gradient(135deg, #07142f 0%, #0c4fdc 54%, #4f46e5 100%) !important;
    border: 1px solid rgba(255,255,255,.16);
    box-shadow: var(--vix-shadow);
}
.vix-clientarea-home-pro .vix-ca-hero-pro:before {
    content:"";
    position:absolute;
    inset:0;
    background-image: radial-gradient(rgba(255,255,255,.24) 1px, transparent 1px);
    background-size: 18px 18px;
    opacity:.22;
    mask-image: linear-gradient(90deg,#000 0%,#000 76%,transparent 100%);
    pointer-events:none;
}
.vix-clientarea-home-pro .vix-ca-hero-pro:after {
    content:"";
    position:absolute;
    right: 29%;
    top: -32%;
    width: 260px;
    height: 165%;
    transform: rotate(13deg);
    background: rgba(255,255,255,.055);
    pointer-events:none;
}
.vix-clientarea-home-pro .vix-ca-hero-content,
.vix-clientarea-home-pro .vix-ca-hero-side {
    position: relative;
    z-index: 3;
}
.vix-clientarea-home-pro .vix-ca-kicker {
    display:inline-flex;
    align-items:center;
    gap:8px;
    height: 34px;
    padding: 0 14px;
    border-radius: 999px;
    color:#fff;
    background: rgba(255,255,255,.105);
    border: 1px solid rgba(255,255,255,.18);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .01em;
    box-shadow: none;
}
.vix-clientarea-home-pro .vix-ca-hero-content h1 {
    margin: 16px 0 8px !important;
    max-width: 560px;
    color:#fff;
    font-size: clamp(30px, 3.3vw, 44px) !important;
    line-height: 1.06 !important;
    letter-spacing: -.045em;
    font-weight: 900 !important;
}
.vix-clientarea-home-pro .vix-ca-hero-content p {
    max-width: 555px;
    color: rgba(255,255,255,.86) !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
    margin: 0 !important;
    font-weight: 500;
}
.vix-clientarea-home-pro .vix-ca-hero-actions {
    margin-top: 22px !important;
    gap: 10px !important;
}
.vix-clientarea-home-pro .vix-ca-btn {
    min-height: 42px !important;
    padding: 0 18px !important;
    border-radius: 13px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}
.vix-clientarea-home-pro .vix-ca-btn-primary {
    background: linear-gradient(100deg,#0967ff,#7c2cff) !important;
    box-shadow: 0 12px 22px rgba(8, 85, 255, .18) !important;
}
.vix-clientarea-home-pro .vix-ca-btn-primary:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 28px rgba(8,85,255,.22) !important;
}
.vix-clientarea-home-pro .vix-ca-btn-light {
    background: rgba(255,255,255,.085) !important;
    border: 1px solid rgba(255,255,255,.2) !important;
    box-shadow: none !important;
}
.vix-clientarea-home-pro .vix-ca-btn-light:hover {
    background: rgba(255,255,255,.14) !important;
}

.vix-clientarea-home-pro .vix-ca-hero-side {
    align-self: center !important;
    display: grid !important;
    grid-template-rows: auto auto !important;
    gap: 12px !important;
}
.vix-clientarea-home-pro .vix-ca-status-card {
    min-height: 130px !important;
    padding: 20px !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.08)) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 18px 42px rgba(0,0,0,.08) !important;
    backdrop-filter: blur(12px);
}
.vix-clientarea-home-pro .vix-ca-status-card span {
    width: 46px !important;
    height: 46px !important;
    border-radius: 15px !important;
    background: rgba(255,255,255,.16) !important;
    margin-bottom: 12px !important;
}
.vix-clientarea-home-pro .vix-ca-status-card strong {
    font-size: 18px !important;
    letter-spacing: -.02em;
}
.vix-clientarea-home-pro .vix-ca-status-card small {
    color: rgba(255,255,255,.76) !important;
}
.vix-clientarea-home-pro .vix-ca-mini-actions {
    gap: 10px !important;
}
.vix-clientarea-home-pro .vix-ca-mini-actions a {
    min-height: 42px !important;
    border-radius: 14px !important;
    background: rgba(255,255,255,.075) !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    box-shadow: none !important;
    transition: background .16s ease, transform .16s ease;
}
.vix-clientarea-home-pro .vix-ca-mini-actions a:hover {
    transform: translateX(2px);
    background: rgba(255,255,255,.13) !important;
}

/* Ilustración integrada y menos invasiva */
.vix-clientarea-home-pro .vix-ca-hero-art {
    right: 302px !important;
    bottom: -6px !important;
    width: 235px !important;
    height: 200px !important;
    opacity: .82 !important;
    transform: translateY(8px);
    z-index: 2;
}
.vix-clientarea-home-pro .vix-ca-server {
    left: 76px !important;
    bottom: 28px !important;
    width: 84px !important;
    height: 114px !important;
    box-shadow: 0 18px 32px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.12) !important;
}
.vix-clientarea-home-pro .vix-ca-cloud {
    filter: drop-shadow(0 10px 14px rgba(0,0,0,.11)) !important;
}

/* Quickbar más editorial, menos ruidoso */
.vix-clientarea-home-pro .vix-ca-quickbar {
    margin: 18px 0 !important;
    gap: 14px !important;
}
.vix-clientarea-home-pro .vix-ca-quickbar a {
    height: 62px !important;
    border-radius: 18px !important;
    background: #fff !important;
    border: 1px solid var(--vix-border) !important;
    box-shadow: var(--vix-shadow-soft) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}
.vix-clientarea-home-pro .vix-ca-quickbar a:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 14px 28px rgba(11,31,73,.065) !important;
    border-color: rgba(180,199,232,.95) !important;
}
.vix-clientarea-home-pro .vix-ca-quickbar i {
    width: 36px !important;
    height: 36px !important;
    border-radius: 13px !important;
    color: var(--vix-blue) !important;
    background: linear-gradient(180deg,#eef5ff,#f8fbff) !important;
}

/* Stats premium más balanceados */
.vix-clientarea-home-pro .vix-ca-stats-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
    margin-bottom: 20px !important;
}
.vix-clientarea-home-pro .vix-ca-stat-card {
    min-height: 112px !important;
    padding: 20px !important;
    border-radius: 20px !important;
    background: #fff !important;
    border: 1px solid var(--vix-border) !important;
    box-shadow: var(--vix-shadow-soft) !important;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.vix-clientarea-home-pro .vix-ca-stat-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 15px 30px rgba(11,31,73,.065) !important;
    border-color: rgba(184,202,234,.9) !important;
}
.vix-clientarea-home-pro .vix-ca-stat-icon {
    width: 48px !important;
    height: 48px !important;
    border-radius: 15px !important;
}
.vix-clientarea-home-pro .vix-ca-stat-card strong {
    font-size: 32px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: -.055em !important;
    color: #07142f !important;
}
.vix-clientarea-home-pro .vix-ca-stat-card small {
    margin-top: 6px !important;
    font-size: 12px !important;
    color:#66748f !important;
    letter-spacing:.035em;
    font-weight:800;
}

/* Upsell y paneles con sombras suaves */
.vix-clientarea-home-pro .vix-ca-upsell-pro,
.vix-clientarea-home-pro .vix-ca-panels .card,
.vix-clientarea-home-pro .vix-ca-panel {
    box-shadow: var(--vix-shadow-soft) !important;
    border-color: var(--vix-border) !important;
}
.vix-clientarea-home-pro .vix-ca-upsell-pro {
    background: linear-gradient(135deg,#fff 0%,#f7faff 100%) !important;
}

@media (max-width: 1199px) {
    .vix-clientarea-home-pro .vix-ca-hero-pro {
        grid-template-columns: 1fr 280px;
    }
    .vix-clientarea-home-pro .vix-ca-hero-art { display: none !important; }
}
@media (max-width: 991px) {
    .vix-clientarea-home-pro .vix-ca-hero-pro {
        grid-template-columns: 1fr !important;
        padding: 28px !important;
    }
    .vix-clientarea-home-pro .vix-ca-hero-side {
        grid-template-columns: 1fr 1fr !important;
        grid-template-rows: auto !important;
    }
    .vix-clientarea-home-pro .vix-ca-stats-grid,
    .vix-clientarea-home-pro .vix-ca-quickbar {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }
}
@media (max-width: 575px) {
    .vix-clientarea-home-pro .vix-ca-hero-content h1 { font-size: 30px !important; }
    .vix-clientarea-home-pro .vix-ca-hero-side,
    .vix-clientarea-home-pro .vix-ca-stats-grid,
    .vix-clientarea-home-pro .vix-ca-quickbar { grid-template-columns: 1fr !important; }
}

/* ==========================================================
   VIX PRO - Clientarea Ultra SaaS Layout
   Ordered to match premium reference: hero + action cards + quickbar + stats + security strip
   ========================================================== */
.vix-clientarea-home-ultra{
    --vix-navy:#071331;
    --vix-blue:#0b6bff;
    --vix-indigo:#5038ff;
    --vix-violet:#8b2cff;
    --vix-green:#11c68a;
    --vix-pink:#e02ecb;
    --vix-orange:#ff9719;
    --vix-text:#081735;
    --vix-muted:#647089;
    --vix-border:#e3ebf7;
    --vix-shadow:0 14px 34px rgba(8,28,68,.075);
    --vix-shadow-soft:0 10px 24px rgba(8,28,68,.055);
    padding-bottom:24px;
}

.vix-clientarea-home-ultra .vix-ca-hero-ultra{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.25fr) 320px 330px!important;
    align-items:center!important;
    gap:22px!important;
    min-height:330px!important;
    margin:0 0 0!important;
    padding:38px 38px!important;
    overflow:hidden!important;
    border-radius:0 0 26px 26px!important;
    background:
        radial-gradient(circle at 100% 90%, rgba(255,255,255,.14) 0 9%, transparent 10% 100%),
        radial-gradient(circle at 72% 28%, rgba(76,112,255,.42), transparent 34%),
        linear-gradient(120deg,#071331 0%,#08317a 47%,#135fff 73%,#8b2cff 100%)!important;
    box-shadow:0 18px 42px rgba(7,19,49,.10)!important;
}
.vix-clientarea-home-ultra .vix-ca-hero-ultra:before{
    content:"";
    position:absolute; inset:0;
    background-image:radial-gradient(rgba(255,255,255,.20) 1px, transparent 1px);
    background-size:18px 18px;
    opacity:.22;
    pointer-events:none;
}
.vix-clientarea-home-ultra .vix-ca-hero-ultra:after{
    content:"";
    position:absolute;
    right:-90px; bottom:-125px;
    width:315px; height:315px;
    border-radius:50%;
    background:rgba(255,255,255,.10);
    pointer-events:none;
}
.vix-clientarea-home-ultra .vix-ca-hero-main,
.vix-clientarea-home-ultra .vix-ca-protected-card,
.vix-clientarea-home-ultra .vix-ca-hero-actions-card{
    position:relative; z-index:3;
}
.vix-clientarea-home-ultra .vix-ca-hero-main h1{
    margin:0 0 12px!important;
    color:#fff!important;
    font-size:clamp(34px,4.1vw,50px)!important;
    line-height:1.03!important;
    letter-spacing:-.055em!important;
    font-weight:900!important;
    text-wrap:balance;
}
.vix-clientarea-home-ultra .vix-wave{ display:inline-block; transform:translateY(-3px); }
.vix-clientarea-home-ultra .vix-ca-hero-main p{
    max-width:470px!important;
    margin:0!important;
    color:rgba(255,255,255,.86)!important;
    font-size:18px!important;
    line-height:1.45!important;
    font-weight:500!important;
}
.vix-clientarea-home-ultra .vix-ca-hero-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:12px!important;
    margin-top:28px!important;
}
.vix-clientarea-home-ultra .vix-ca-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    min-height:52px!important;
    padding:0 22px!important;
    border-radius:16px!important;
    text-decoration:none!important;
    font-size:14px!important;
    font-weight:850!important;
    transition:transform .18s ease, box-shadow .18s ease, background .18s ease!important;
}
.vix-clientarea-home-ultra .vix-ca-btn-primary{
    color:#fff!important;
    background:linear-gradient(100deg,#0871ff,#842cff)!important;
    border:1px solid rgba(255,255,255,.16)!important;
    box-shadow:0 14px 30px rgba(7,61,255,.22)!important;
}
.vix-clientarea-home-ultra .vix-ca-btn-light{
    color:#fff!important;
    background:rgba(255,255,255,.075)!important;
    border:1px solid rgba(255,255,255,.24)!important;
    box-shadow:none!important;
}
.vix-clientarea-home-ultra .vix-ca-btn:hover{ transform:translateY(-2px)!important; }
.vix-clientarea-home-ultra .vix-ca-btn-primary:hover{ box-shadow:0 18px 34px rgba(7,61,255,.28)!important; }
.vix-clientarea-home-ultra .vix-ca-btn-light:hover{ background:rgba(255,255,255,.13)!important; }

/* Protected card */
.vix-clientarea-home-ultra .vix-ca-protected-card{
    min-height:238px!important;
    padding:26px!important;
    border-radius:24px!important;
    color:#fff!important;
    background:linear-gradient(160deg,rgba(255,255,255,.18),rgba(255,255,255,.075))!important;
    border:1px solid rgba(255,255,255,.24)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 22px 55px rgba(0,0,0,.12)!important;
    backdrop-filter:blur(14px);
}
.vix-clientarea-home-ultra .vix-protected-icon{
    position:relative;
    width:86px;height:86px;
    display:flex;align-items:center;justify-content:center;
    border-radius:50%;
    margin-bottom:18px;
    background:rgba(255,255,255,.16);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.2);
}
.vix-clientarea-home-ultra .vix-protected-icon>i{
    font-size:36px;
    color:#fff;
    filter:drop-shadow(0 8px 10px rgba(0,0,0,.15));
}
.vix-clientarea-home-ultra .vix-protected-icon span{
    position:absolute; right:2px; top:2px;
    width:30px;height:30px;border-radius:50%;
    background:#4fdd38;color:#fff;
    display:flex;align-items:center;justify-content:center;
    border:2px solid rgba(255,255,255,.88);
    box-shadow:0 8px 18px rgba(0,0,0,.16);
    font-size:13px;
}
.vix-clientarea-home-ultra .vix-ca-protected-card strong{
    display:block;
    font-size:22px;
    font-weight:900;
    letter-spacing:-.025em;
    margin-bottom:6px;
}
.vix-clientarea-home-ultra .vix-ca-protected-card p{
    margin:0 0 16px!important;
    color:rgba(255,255,255,.86)!important;
    line-height:1.35!important;
    font-size:15px!important;
}
.vix-clientarea-home-ultra .vix-ca-protected-card small{
    display:inline-flex;align-items:center;gap:8px;
    min-height:28px;
    padding:0 12px;
    border-radius:999px;
    color:#fff!important;
    background:rgba(255,255,255,.13);
    border:1px solid rgba(255,255,255,.18);
    font-weight:800;
    font-size:12px;
}
.vix-clientarea-home-ultra .vix-ca-protected-card small i{ color:#36e68a; font-size:9px; }

/* right action tiles */
.vix-clientarea-home-ultra .vix-ca-hero-actions-card{
    display:grid!important;
    gap:18px!important;
}
.vix-clientarea-home-ultra .vix-action-tile{
    min-height:116px!important;
    display:grid!important;
    grid-template-columns:70px 1fr 18px!important;
    align-items:center!important;
    gap:14px!important;
    padding:18px!important;
    color:#fff!important;
    text-decoration:none!important;
    border-radius:24px!important;
    background:linear-gradient(150deg,rgba(255,255,255,.18),rgba(255,255,255,.075))!important;
    border:1px solid rgba(255,255,255,.23)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 18px 45px rgba(0,0,0,.08)!important;
    backdrop-filter:blur(14px);
    transition:transform .18s ease, background .18s ease!important;
}
.vix-clientarea-home-ultra .vix-action-tile:hover{ transform:translateY(-2px)!important; background:linear-gradient(150deg,rgba(255,255,255,.24),rgba(255,255,255,.10))!important; }
.vix-clientarea-home-ultra .vix-action-tile>span{
    width:60px;height:60px;border-radius:18px;
    display:flex;align-items:center;justify-content:center;
    background:#fff;color:#1267ff;
    font-size:25px;
    box-shadow:0 16px 30px rgba(7,19,49,.12);
}
.vix-clientarea-home-ultra .vix-action-tile strong{
    display:block;
    font-size:15px;
    line-height:1.1;
    font-weight:900;
    margin-bottom:8px;
}
.vix-clientarea-home-ultra .vix-action-tile small{
    display:block;
    color:rgba(255,255,255,.82);
    font-size:13px;
    line-height:1.4;
    font-weight:500;
}

/* integrated hero art */
.vix-clientarea-home-ultra .vix-ca-hero-art{
    position:absolute!important;
    right:424px!important;
    bottom:5px!important;
    width:215px!important;
    height:160px!important;
    opacity:.86!important;
    transform:none!important;
    z-index:2!important;
    pointer-events:none;
}
.vix-clientarea-home-ultra .vix-ca-server{
    left:75px!important;
    bottom:10px!important;
    width:82px!important;
    height:108px!important;
}
.vix-clientarea-home-ultra .vix-ca-cloud-a{ left:15px!important; bottom:2px!important; width:78px!important; height:34px!important; }
.vix-clientarea-home-ultra .vix-ca-cloud-b{ right:18px!important; bottom:0!important; width:110px!important; height:52px!important; }

/* Quickbar */
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:20px!important;
    margin:28px 28px 20px!important;
}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra a{
    position:relative;
    display:grid!important;
    grid-template-columns:58px 1fr 16px!important;
    align-items:center!important;
    gap:14px!important;
    min-height:106px!important;
    padding:18px!important;
    border-radius:20px!important;
    color:var(--vix-text)!important;
    background:#fff!important;
    border:1px solid var(--vix-border)!important;
    box-shadow:var(--vix-shadow-soft)!important;
    text-decoration:none!important;
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease!important;
}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra a:hover{
    transform:translateY(-2px)!important;
    border-color:#cfdcf1!important;
    box-shadow:0 18px 38px rgba(8,28,68,.075)!important;
}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra a>i{
    width:54px!important;height:54px!important;
    border-radius:16px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    color:#0f66ff!important;
    background:linear-gradient(135deg,#eef5ff,#f7fbff)!important;
    font-size:22px!important;
}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra a:nth-child(2)>i{color:#0aad82!important;background:linear-gradient(135deg,#e9fff8,#f8fffc)!important;}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra a:nth-child(3)>i{color:#a61ce7!important;background:linear-gradient(135deg,#f7eaff,#fff8ff)!important;}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra a:nth-child(4)>i{color:#ff9019!important;background:linear-gradient(135deg,#fff2df,#fffaf4)!important;}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra strong{
    display:block;
    font-size:14px;
    font-weight:900;
    letter-spacing:-.01em;
    margin-bottom:6px;
}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra small{
    display:block;
    color:#526078;
    font-size:12px;
    line-height:1.35;
    font-weight:500;
}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra em{
    color:#0e3a80;
    font-size:14px;
    font-style:normal;
}

/* Stats */
.vix-clientarea-home-ultra .vix-ca-stats-ultra{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:20px!important;
    margin:0 28px 20px!important;
}
.vix-clientarea-home-ultra .vix-ca-stats-ultra .vix-ca-stat-card{
    position:relative!important;
    display:grid!important;
    grid-template-columns:64px 1fr!important;
    align-items:start!important;
    gap:18px!important;
    min-height:138px!important;
    padding:22px!important;
    overflow:hidden!important;
    border-radius:20px!important;
    background:#fff!important;
    border:1px solid var(--vix-border)!important;
    box-shadow:var(--vix-shadow-soft)!important;
    text-decoration:none!important;
    color:var(--vix-text)!important;
}
.vix-clientarea-home-ultra .vix-ca-stats-ultra .vix-ca-stat-card:hover{
    transform:translateY(-2px)!important;
    box-shadow:0 18px 38px rgba(8,28,68,.075)!important;
    border-color:#cfdcf1!important;
}
.vix-clientarea-home-ultra .vix-ca-stats-ultra .vix-ca-stat-icon{
    width:58px!important;height:58px!important;
    border-radius:18px!important;
    color:#fff!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    font-size:23px!important;
    box-shadow:0 12px 22px rgba(0,0,0,.12)!important;
}
.vix-clientarea-home-ultra .vix-stat-blue .vix-ca-stat-icon{background:linear-gradient(135deg,#1272ff,#4b42ff)!important;}
.vix-clientarea-home-ultra .vix-stat-green .vix-ca-stat-icon{background:linear-gradient(135deg,#13c98b,#11a9d8)!important;}
.vix-clientarea-home-ultra .vix-stat-pink .vix-ca-stat-icon{background:linear-gradient(135deg,#ff2d99,#9d2cff)!important;}
.vix-clientarea-home-ultra .vix-stat-orange .vix-ca-stat-icon{background:linear-gradient(135deg,#ff9b18,#ffbc3a)!important;}
.vix-clientarea-home-ultra .vix-ca-stats-ultra strong{
    display:block!important;
    margin-top:2px!important;
    color:#07142f!important;
    font-size:34px!important;
    line-height:.92!important;
    font-weight:950!important;
    letter-spacing:-.06em!important;
}
.vix-clientarea-home-ultra .vix-ca-stats-ultra small{
    display:block!important;
    margin-top:10px!important;
    color:#42506a!important;
    font-size:13px!important;
    line-height:1.2!important;
    font-weight:650!important;
    letter-spacing:0!important;
    text-transform:none!important;
}
.vix-clientarea-home-ultra .vix-ca-stats-ultra b{
    display:inline-flex!important;
    align-items:center!important;
    gap:6px!important;
    margin-top:18px!important;
    font-size:12px!important;
    font-weight:900!important;
    color:#0f66ff!important;
}
.vix-clientarea-home-ultra .vix-stat-green b{color:#0aad82!important;}
.vix-clientarea-home-ultra .vix-stat-pink b{color:#e02ecb!important;}
.vix-clientarea-home-ultra .vix-stat-orange b{color:#ff8a00!important;}
.vix-clientarea-home-ultra .vix-sparkline{
    position:absolute;
    right:14px;bottom:12px;
    width:72px;height:54px;
    opacity:.7;
    background:linear-gradient(135deg,transparent 45%, currentColor 46% 48%, transparent 49%), linear-gradient(160deg,transparent 52%, currentColor 53% 55%, transparent 56%);
    clip-path:polygon(0 80%,18% 74%,30% 62%,44% 69%,57% 43%,72% 36%,84% 10%,100% 18%,100% 100%,0 100%);
    color:#116fff;
    background-color:rgba(17,111,255,.06);
    border-radius:18px 18px 0 18px;
}
.vix-clientarea-home-ultra .vix-stat-green .vix-sparkline{color:#16c6a4;background-color:rgba(22,198,164,.06);}
.vix-clientarea-home-ultra .vix-stat-pink .vix-sparkline{color:#ec2fb3;background-color:rgba(236,47,179,.06);}
.vix-clientarea-home-ultra .vix-stat-orange .vix-sparkline{color:#ff9b18;background-color:rgba(255,155,24,.07);}

/* Security strip */
.vix-clientarea-home-ultra .vix-ca-security-strip{
    display:grid;
    grid-template-columns:42px 1fr auto;
    align-items:center;
    gap:14px;
    margin:0 28px 26px;
    padding:12px 16px;
    min-height:54px;
    border-radius:16px;
    background:linear-gradient(135deg,#f8fbff,#f2f7ff);
    border:1px solid #cfe0fa;
    box-shadow:0 10px 24px rgba(8,28,68,.045);
}
.vix-clientarea-home-ultra .vix-ca-security-strip span{
    width:34px;height:34px;border-radius:12px;
    display:flex;align-items:center;justify-content:center;
    color:#0f66ff;background:#eaf3ff;
}
.vix-clientarea-home-ultra .vix-ca-security-strip p{
    margin:0!important;
    color:#24416e!important;
    font-size:13px!important;
    line-height:1.35;
    font-weight:600;
}
.vix-clientarea-home-ultra .vix-ca-security-strip a{
    color:#075cff!important;
    font-weight:900;
    font-size:13px;
    text-decoration:none!important;
    white-space:nowrap;
}

@media(max-width:1199px){
    .vix-clientarea-home-ultra .vix-ca-hero-ultra{grid-template-columns:1fr 290px!important;}
    .vix-clientarea-home-ultra .vix-ca-hero-actions-card{grid-column:1 / -1!important;grid-template-columns:1fr 1fr!important;}
    .vix-clientarea-home-ultra .vix-ca-hero-art{display:none!important;}
    .vix-clientarea-home-ultra .vix-ca-quickbar-ultra,.vix-clientarea-home-ultra .vix-ca-stats-ultra{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:767px){
    .vix-clientarea-home-ultra .vix-ca-hero-ultra{grid-template-columns:1fr!important;padding:28px 20px!important;border-radius:0 0 22px 22px!important;}
    .vix-clientarea-home-ultra .vix-ca-hero-main h1{font-size:34px!important;}
    .vix-clientarea-home-ultra .vix-ca-hero-main p{font-size:15px!important;}
    .vix-clientarea-home-ultra .vix-ca-hero-actions-card,.vix-clientarea-home-ultra .vix-ca-quickbar-ultra,.vix-clientarea-home-ultra .vix-ca-stats-ultra{grid-template-columns:1fr!important;margin-left:16px!important;margin-right:16px!important;}
    .vix-clientarea-home-ultra .vix-ca-security-strip{grid-template-columns:34px 1fr!important;margin-left:16px!important;margin-right:16px!important;}
    .vix-clientarea-home-ultra .vix-ca-security-strip a{grid-column:2;}
}

/* ==========================================================
   VIX PRO CLIENTAREA - FINAL CLEAN REBUILD OVERRIDE
   Corrige hero desordenado, jerarquía, tamaños y cards.
   ========================================================== */
.vix-clientarea-home.vix-clientarea-home-ultra{
    max-width:1180px!important;
    margin:0 auto 42px!important;
    padding:0 0 28px!important;
    --vix-text:#07142f;
    --vix-muted:#51617d;
    --vix-border:#e6edf7;
    --vix-shadow:0 10px 26px rgba(10,31,68,.06);
    --vix-shadow-hover:0 16px 34px rgba(10,31,68,.09);
}

.vix-clientarea-home-ultra .vix-ca-hero-ultra{
    display:grid!important;
    grid-template-columns:minmax(300px,1fr) minmax(220px,.76fr) minmax(250px,.9fr)!important;
    gap:20px!important;
    align-items:center!important;
    min-height:292px!important;
    margin:18px 0 24px!important;
    padding:32px!important;
    border-radius:22px!important;
    overflow:hidden!important;
    background:
        radial-gradient(circle at 100% 100%, rgba(255,255,255,.12) 0 13%, transparent 14% 100%),
        radial-gradient(circle at 58% 88%, rgba(29,118,255,.25), transparent 29%),
        linear-gradient(135deg,#071331 0%,#09265c 36%,#126bff 72%,#742cff 100%)!important;
    box-shadow:0 18px 42px rgba(7,27,72,.13)!important;
}
.vix-clientarea-home-ultra .vix-ca-hero-ultra:before{
    background-image:radial-gradient(rgba(255,255,255,.18) 1px,transparent 1px)!important;
    background-size:18px 18px!important;
    opacity:.18!important;
}
.vix-clientarea-home-ultra .vix-ca-hero-ultra:after{
    right:-105px!important;bottom:-150px!important;width:330px!important;height:330px!important;opacity:.5!important;
}
.vix-clientarea-home-ultra .vix-ca-hero-main{
    min-width:0!important;
    align-self:center!important;
}
.vix-clientarea-home-ultra .vix-ca-hero-main h1{
    margin:0 0 12px!important;
    max-width:380px!important;
    color:#fff!important;
    font-size:42px!important;
    line-height:1.04!important;
    letter-spacing:-.04em!important;
    font-weight:900!important;
}
.vix-clientarea-home-ultra .vix-wave{font-size:.86em!important;transform:translateY(-2px)!important;}
.vix-clientarea-home-ultra .vix-ca-hero-main p{
    max-width:405px!important;
    margin:0!important;
    color:rgba(255,255,255,.86)!important;
    font-size:16px!important;
    line-height:1.46!important;
    font-weight:500!important;
}
.vix-clientarea-home-ultra .vix-ca-hero-actions{
    margin-top:24px!important;
    display:flex!important;
    gap:12px!important;
}
.vix-clientarea-home-ultra .vix-ca-btn{
    min-height:46px!important;
    padding:0 18px!important;
    border-radius:13px!important;
    font-size:13px!important;
    font-weight:800!important;
    white-space:nowrap!important;
}
.vix-clientarea-home-ultra .vix-ca-btn-primary{
    box-shadow:0 10px 22px rgba(10,88,255,.20)!important;
}
.vix-clientarea-home-ultra .vix-ca-btn-light{
    background:rgba(255,255,255,.07)!important;
}

.vix-clientarea-home-ultra .vix-ca-protected-card{
    min-height:198px!important;
    padding:22px!important;
    border-radius:20px!important;
    align-self:center!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 14px 32px rgba(0,0,0,.10)!important;
}
.vix-clientarea-home-ultra .vix-protected-icon{
    width:74px!important;height:74px!important;margin-bottom:14px!important;
}
.vix-clientarea-home-ultra .vix-protected-icon>i{font-size:30px!important;}
.vix-clientarea-home-ultra .vix-protected-icon span{width:27px!important;height:27px!important;font-size:12px!important;}
.vix-clientarea-home-ultra .vix-ca-protected-card strong{
    font-size:19px!important;
    margin-bottom:6px!important;
}
.vix-clientarea-home-ultra .vix-ca-protected-card p{
    font-size:14px!important;
    line-height:1.35!important;
    margin-bottom:13px!important;
}
.vix-clientarea-home-ultra .vix-ca-protected-card small{
    min-height:26px!important;
    padding:0 11px!important;
    font-size:11.5px!important;
}

.vix-clientarea-home-ultra .vix-ca-hero-actions-card{
    gap:14px!important;
    align-self:center!important;
}
.vix-clientarea-home-ultra .vix-action-tile{
    min-height:92px!important;
    grid-template-columns:56px 1fr 14px!important;
    gap:13px!important;
    padding:16px!important;
    border-radius:19px!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 12px 26px rgba(0,0,0,.07)!important;
}
.vix-clientarea-home-ultra .vix-action-tile>span{
    width:50px!important;height:50px!important;
    border-radius:15px!important;
    font-size:21px!important;
    box-shadow:0 10px 20px rgba(7,19,49,.10)!important;
}
.vix-clientarea-home-ultra .vix-action-tile strong{
    font-size:13.5px!important;
    margin-bottom:5px!important;
}
.vix-clientarea-home-ultra .vix-action-tile small{
    font-size:12px!important;
    line-height:1.32!important;
}

.vix-clientarea-home-ultra .vix-ca-hero-art{
    right:48%!important;
    bottom:4px!important;
    width:170px!important;
    height:126px!important;
    opacity:.78!important;
    z-index:2!important;
}
.vix-clientarea-home-ultra .vix-ca-server{left:62px!important;bottom:12px!important;width:68px!important;height:88px!important;}
.vix-clientarea-home-ultra .vix-ca-cloud-a{left:12px!important;bottom:2px!important;width:68px!important;height:30px!important;}
.vix-clientarea-home-ultra .vix-ca-cloud-b{right:12px!important;bottom:0!important;width:94px!important;height:44px!important;}

.vix-clientarea-home-ultra .vix-ca-quickbar-ultra{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:18px!important;
    margin:0 14px 18px!important;
}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra a{
    min-height:88px!important;
    grid-template-columns:48px 1fr 12px!important;
    gap:12px!important;
    padding:16px!important;
    border-radius:17px!important;
    box-shadow:var(--vix-shadow)!important;
    overflow:hidden!important;
}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra a:hover{box-shadow:var(--vix-shadow-hover)!important;transform:translateY(-2px)!important;}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra a>i{
    width:44px!important;height:44px!important;
    border-radius:14px!important;
    font-size:18px!important;
}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra strong{
    font-size:13px!important;
    line-height:1.2!important;
    margin:0 0 4px!important;
}
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra small{
    font-size:11.4px!important;
    line-height:1.28!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
}

.vix-clientarea-home-ultra .vix-ca-stats-ultra{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:18px!important;
    margin:0 14px 18px!important;
}
.vix-clientarea-home-ultra .vix-ca-stats-ultra .vix-ca-stat-card{
    min-height:132px!important;
    grid-template-columns:56px 1fr!important;
    gap:15px!important;
    padding:20px!important;
    border-radius:18px!important;
    box-shadow:var(--vix-shadow)!important;
}
.vix-clientarea-home-ultra .vix-ca-stats-ultra .vix-ca-stat-card:hover{box-shadow:var(--vix-shadow-hover)!important;transform:translateY(-2px)!important;}
.vix-clientarea-home-ultra .vix-ca-stats-ultra .vix-ca-stat-icon{
    width:52px!important;height:52px!important;
    border-radius:16px!important;
    font-size:21px!important;
    box-shadow:0 9px 18px rgba(0,0,0,.10)!important;
}
.vix-clientarea-home-ultra .vix-ca-stats-ultra strong{
    font-size:30px!important;
    line-height:1!important;
    letter-spacing:-.045em!important;
}
.vix-clientarea-home-ultra .vix-ca-stats-ultra small{
    margin-top:7px!important;
    font-size:12.4px!important;
    line-height:1.25!important;
}
.vix-clientarea-home-ultra .vix-ca-stats-ultra b{
    margin-top:13px!important;
    font-size:11.5px!important;
}
.vix-clientarea-home-ultra .vix-sparkline{
    right:10px!important;bottom:9px!important;
    width:60px!important;height:44px!important;
    opacity:.52!important;
}
.vix-clientarea-home-ultra .vix-ca-security-strip{
    margin:0 14px 22px!important;
    border-radius:14px!important;
    box-shadow:0 8px 20px rgba(8,28,68,.04)!important;
}
.vix-clientarea-home-ultra .vix-ca-panels{margin:0 14px!important;}

@media(max-width:1080px){
    .vix-clientarea-home-ultra .vix-ca-hero-ultra{
        grid-template-columns:minmax(280px,1fr) minmax(235px,.9fr)!important;
        padding:30px!important;
    }
    .vix-clientarea-home-ultra .vix-ca-hero-main h1{font-size:38px!important;max-width:350px!important;}
    .vix-clientarea-home-ultra .vix-ca-hero-main p{font-size:15px!important;max-width:360px!important;}
    .vix-clientarea-home-ultra .vix-ca-protected-card{display:none!important;}
    .vix-clientarea-home-ultra .vix-ca-hero-art{right:300px!important;opacity:.55!important;}
}
@media(max-width:900px){
    .vix-clientarea-home-ultra .vix-ca-quickbar-ultra,
    .vix-clientarea-home-ultra .vix-ca-stats-ultra{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:720px){
    .vix-clientarea-home-ultra .vix-ca-hero-ultra{grid-template-columns:1fr!important;margin-top:10px!important;padding:26px 20px!important;border-radius:18px!important;}
    .vix-clientarea-home-ultra .vix-ca-hero-actions-card{grid-template-columns:1fr!important;}
    .vix-clientarea-home-ultra .vix-ca-hero-art{display:none!important;}
    .vix-clientarea-home-ultra .vix-ca-hero-main h1{font-size:33px!important;}
    .vix-clientarea-home-ultra .vix-ca-hero-main p{font-size:14px!important;}
    .vix-clientarea-home-ultra .vix-ca-quickbar-ultra,
    .vix-clientarea-home-ultra .vix-ca-stats-ultra{grid-template-columns:1fr!important;margin-left:0!important;margin-right:0!important;}
    .vix-clientarea-home-ultra .vix-ca-security-strip{grid-template-columns:36px 1fr!important;margin-left:0!important;margin-right:0!important;}
    .vix-clientarea-home-ultra .vix-ca-security-strip a{grid-column:2!important;}
}

/* =========================================================
   VIX PRO DESIGN SYSTEM v4 - Clientarea Premium Clean
   Objetivo: UI consistente, sombras sutiles, grid estable y hero ordenado.
   ========================================================= */
:root{
    --vix-primary:#126BFF;
    --vix-primary-2:#2848FF;
    --vix-secondary:#7C3AED;
    --vix-pink:#E72CB7;
    --vix-green:#10B981;
    --vix-orange:#FF8A00;
    --vix-ink:#071739;
    --vix-muted:#60708F;
    --vix-line:#E8EEF8;
    --vix-surface:#FFFFFF;
    --vix-bg:#F5F8FD;
    --vix-radius-sm:12px;
    --vix-radius-md:16px;
    --vix-radius-lg:22px;
    --vix-shadow-xs:0 2px 8px rgba(7,23,57,.035);
    --vix-shadow-sm:0 8px 20px rgba(7,23,57,.055);
    --vix-shadow-md:0 14px 32px rgba(7,23,57,.075);
    --vix-focus:0 0 0 3px rgba(18,107,255,.12);
}
body{background:var(--vix-bg)!important;color:var(--vix-ink)!important;}
.vix-clientarea-home{max-width:1180px!important;margin:0 auto!important;padding:18px 0 28px!important;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;}
.vix-clientarea-home *{box-sizing:border-box!important;}

/* HERO: sistema de 3 columnas, compacto y sin exageraciones */
.vix-clientarea-home .vix-ca-hero,
.vix-clientarea-home-ultra .vix-ca-hero-ultra{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(310px,1.05fr) minmax(235px,.82fr) minmax(280px,.9fr)!important;
    gap:22px!important;
    align-items:center!important;
    min-height:286px!important;
    margin:0 0 22px!important;
    padding:34px 38px!important;
    border-radius:22px!important;
    overflow:hidden!important;
    background:
      radial-gradient(circle at 90% 95%, rgba(255,255,255,.13) 0 14%, transparent 15%),
      radial-gradient(circle at 15% 8%, rgba(255,255,255,.07) 0 13%, transparent 14%),
      linear-gradient(135deg,#081733 0%,#0E49D8 58%,#6337F0 100%)!important;
    border:1px solid rgba(255,255,255,.10)!important;
    box-shadow:var(--vix-shadow-sm)!important;
}
.vix-clientarea-home .vix-ca-hero:before,
.vix-clientarea-home-ultra .vix-ca-hero-ultra:before{
    content:""!important;display:block!important;position:absolute!important;inset:0!important;
    background-image:radial-gradient(rgba(255,255,255,.16) 1px, transparent 1px)!important;
    background-size:18px 18px!important;opacity:.22!important;pointer-events:none!important;
}
.vix-clientarea-home .vix-ca-hero>*{position:relative!important;z-index:2!important;}
.vix-clientarea-home .vix-ca-hero-main{min-width:0!important;}
.vix-clientarea-home .vix-ca-hero-main h1,
.vix-clientarea-home-ultra .vix-ca-hero-main h1{
    margin:0!important;max-width:420px!important;color:#fff!important;
    font-size:38px!important;line-height:1.05!important;font-weight:800!important;letter-spacing:-.035em!important;
}
.vix-clientarea-home .vix-ca-hero-main p,
.vix-clientarea-home-ultra .vix-ca-hero-main p{
    max-width:390px!important;margin:14px 0 0!important;color:rgba(255,255,255,.84)!important;
    font-size:15px!important;line-height:1.48!important;font-weight:500!important;
}
.vix-clientarea-home .vix-wave{display:inline-block!important;font-size:.86em!important;transform:translateY(-2px)!important;}
.vix-clientarea-home .vix-ca-hero-actions,
.vix-clientarea-home-ultra .vix-ca-hero-actions{
    margin-top:22px!important;display:flex!important;flex-wrap:wrap!important;gap:10px!important;
}
.vix-clientarea-home .vix-ca-btn,
.vix-clientarea-home-ultra .vix-ca-btn{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
    min-height:42px!important;padding:0 15px!important;border-radius:12px!important;
    font-size:13px!important;font-weight:750!important;text-decoration:none!important;line-height:1!important;
    transition:transform .18s ease,background .18s ease,border-color .18s ease!important;
}
.vix-clientarea-home .vix-ca-btn-primary{
    color:#fff!important;background:linear-gradient(135deg,var(--vix-primary),var(--vix-secondary))!important;
    border:1px solid rgba(255,255,255,.10)!important;box-shadow:0 8px 18px rgba(31,92,255,.16)!important;
}
.vix-clientarea-home .vix-ca-btn-light{
    color:#fff!important;background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:none!important;
}
.vix-clientarea-home .vix-ca-btn:hover{transform:translateY(-1px)!important;}

/* Card cuenta protegida: glass limpio */
.vix-clientarea-home .vix-ca-protected-card,
.vix-clientarea-home-ultra .vix-ca-protected-card{
    width:100%!important;min-height:184px!important;padding:22px!important;border-radius:18px!important;
    background:rgba(255,255,255,.085)!important;border:1px solid rgba(255,255,255,.18)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;backdrop-filter:blur(12px)!important;
    align-self:center!important;color:#fff!important;
}
.vix-clientarea-home .vix-protected-icon,
.vix-clientarea-home-ultra .vix-protected-icon{
    width:60px!important;height:60px!important;border-radius:18px!important;margin:0 0 16px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    background:rgba(255,255,255,.14)!important;color:#fff!important;box-shadow:none!important;position:relative!important;
}
.vix-clientarea-home .vix-protected-icon>i{font-size:24px!important;}
.vix-clientarea-home .vix-protected-icon span{position:absolute!important;right:-6px!important;top:-6px!important;width:24px!important;height:24px!important;border-radius:50%!important;background:#45D645!important;border:2px solid rgba(255,255,255,.75)!important;font-size:11px!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.vix-clientarea-home .vix-ca-protected-card strong{display:block!important;font-size:18px!important;line-height:1.2!important;margin:0 0 6px!important;color:#fff!important;}
.vix-clientarea-home .vix-ca-protected-card p{font-size:13px!important;line-height:1.42!important;color:rgba(255,255,255,.82)!important;margin:0 0 12px!important;}
.vix-clientarea-home .vix-ca-protected-card small{display:inline-flex!important;align-items:center!important;gap:7px!important;height:26px!important;padding:0 10px!important;border-radius:999px!important;background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.15)!important;color:#fff!important;font-size:11px!important;font-weight:700!important;}
.vix-clientarea-home .vix-ca-protected-card small i{color:#3EE29A!important;font-size:9px!important;}

/* Acciones dentro del hero */
.vix-clientarea-home .vix-ca-hero-actions-card,
.vix-clientarea-home-ultra .vix-ca-hero-actions-card{
    display:grid!important;grid-template-columns:1fr!important;gap:14px!important;align-self:center!important;
}
.vix-clientarea-home .vix-action-tile,
.vix-clientarea-home-ultra .vix-action-tile{
    min-height:96px!important;display:grid!important;grid-template-columns:56px 1fr 14px!important;align-items:center!important;gap:14px!important;
    padding:16px 17px!important;border-radius:18px!important;text-decoration:none!important;color:#fff!important;
    background:rgba(255,255,255,.095)!important;border:1px solid rgba(255,255,255,.18)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;backdrop-filter:blur(12px)!important;
    transition:transform .18s ease,background .18s ease!important;
}
.vix-clientarea-home .vix-action-tile:hover{transform:translateY(-1px)!important;background:rgba(255,255,255,.12)!important;}
.vix-clientarea-home .vix-action-tile>span{width:50px!important;height:50px!important;border-radius:15px!important;background:#fff!important;color:var(--vix-primary)!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:21px!important;box-shadow:none!important;}
.vix-clientarea-home .vix-action-tile strong{display:block!important;color:#fff!important;font-size:13.5px!important;line-height:1.2!important;margin:0 0 5px!important;font-weight:800!important;}
.vix-clientarea-home .vix-action-tile small{display:block!important;color:rgba(255,255,255,.82)!important;font-size:12px!important;line-height:1.34!important;}
.vix-clientarea-home .vix-action-tile>i{font-size:13px!important;color:#fff!important;opacity:.9!important;}

/* Ilustración: sutil, no rompe el layout */
.vix-clientarea-home .vix-ca-hero-art,
.vix-clientarea-home-ultra .vix-ca-hero-art{
    position:absolute!important;left:39%!important;bottom:8px!important;width:142px!important;height:102px!important;opacity:.54!important;z-index:1!important;pointer-events:none!important;
}
.vix-clientarea-home .vix-ca-server{left:54px!important;bottom:8px!important;width:58px!important;height:74px!important;box-shadow:0 10px 22px rgba(0,0,0,.14)!important;}
.vix-clientarea-home .vix-ca-cloud-a{left:4px!important;bottom:0!important;width:60px!important;height:27px!important;}
.vix-clientarea-home .vix-ca-cloud-b{right:4px!important;bottom:0!important;width:82px!important;height:38px!important;}

/* Grid unificado */
.vix-clientarea-home .vix-ca-quickbar,
.vix-clientarea-home .vix-ca-stats-grid{
    display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin:0 0 18px!important;
}
.vix-clientarea-home .vix-ca-quickbar a,
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra a,
.vix-clientarea-home .vix-ca-stat-card,
.vix-clientarea-home-ultra .vix-ca-stats-ultra .vix-ca-stat-card{
    background:var(--vix-surface)!important;border:1px solid var(--vix-line)!important;border-radius:16px!important;
    box-shadow:var(--vix-shadow-xs)!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
    overflow:hidden!important;text-decoration:none!important;color:var(--vix-ink)!important;
}
.vix-clientarea-home .vix-ca-quickbar a:hover,
.vix-clientarea-home .vix-ca-stat-card:hover{transform:translateY(-2px)!important;box-shadow:var(--vix-shadow-sm)!important;border-color:#DCE7F7!important;}

/* Accesos rápidos: compactos, sin textos cortados */
.vix-clientarea-home .vix-ca-quickbar a,
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra a{
    min-height:86px!important;display:grid!important;grid-template-columns:46px 1fr 12px!important;align-items:center!important;gap:12px!important;padding:16px!important;
}
.vix-clientarea-home .vix-ca-quickbar a>i{
    width:44px!important;height:44px!important;border-radius:14px!important;display:flex!important;align-items:center!important;justify-content:center!important;
    font-size:17px!important;background:#EEF5FF!important;color:var(--vix-primary)!important;box-shadow:none!important;
}
.vix-clientarea-home .vix-ca-quickbar a:nth-child(2)>i{background:#EAFBF5!important;color:#08A879!important;}
.vix-clientarea-home .vix-ca-quickbar a:nth-child(3)>i{background:#FBEDFF!important;color:#C026D3!important;}
.vix-clientarea-home .vix-ca-quickbar a:nth-child(4)>i{background:#FFF4E6!important;color:#F97316!important;}
.vix-clientarea-home .vix-ca-quickbar strong{display:block!important;font-size:13px!important;line-height:1.25!important;margin:0 0 3px!important;font-weight:800!important;color:var(--vix-ink)!important;}
.vix-clientarea-home .vix-ca-quickbar small{display:block!important;font-size:11.5px!important;line-height:1.32!important;color:var(--vix-muted)!important;margin:0!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
.vix-clientarea-home .vix-ca-quickbar em{font-size:12px!important;color:#0A3A84!important;opacity:.8!important;}

/* Stats cards: tamaño uniforme */
.vix-clientarea-home .vix-ca-stat-card,
.vix-clientarea-home-ultra .vix-ca-stats-ultra .vix-ca-stat-card{
    min-height:128px!important;display:grid!important;grid-template-columns:54px 1fr!important;align-items:start!important;gap:14px!important;padding:20px!important;position:relative!important;
}
.vix-clientarea-home .vix-ca-stat-icon,
.vix-clientarea-home-ultra .vix-ca-stats-ultra .vix-ca-stat-icon{
    width:52px!important;height:52px!important;border-radius:15px!important;display:flex!important;align-items:center!important;justify-content:center!important;
    font-size:20px!important;color:#fff!important;box-shadow:none!important;
}
.vix-clientarea-home .vix-stat-blue .vix-ca-stat-icon{background:linear-gradient(135deg,#126BFF,#3857FF)!important;}
.vix-clientarea-home .vix-stat-green .vix-ca-stat-icon{background:linear-gradient(135deg,#10B981,#13B8A6)!important;}
.vix-clientarea-home .vix-stat-pink .vix-ca-stat-icon{background:linear-gradient(135deg,#E72CB7,#A855F7)!important;}
.vix-clientarea-home .vix-stat-orange .vix-ca-stat-icon{background:linear-gradient(135deg,#FF8A00,#FFB020)!important;}
.vix-clientarea-home .vix-ca-stat-card strong{display:block!important;font-size:30px!important;line-height:.95!important;letter-spacing:-.045em!important;color:var(--vix-ink)!important;margin:0!important;font-weight:800!important;}
.vix-clientarea-home .vix-ca-stat-card small{display:block!important;margin:8px 0 0!important;font-size:12.3px!important;line-height:1.3!important;color:#243657!important;}
.vix-clientarea-home .vix-ca-stat-card b{display:inline-flex!important;align-items:center!important;gap:5px!important;margin-top:13px!important;font-size:11.5px!important;font-weight:800!important;color:var(--vix-primary)!important;}
.vix-clientarea-home .vix-stat-green b{color:#059669!important;}.vix-clientarea-home .vix-stat-pink b{color:#DB2777!important;}.vix-clientarea-home .vix-stat-orange b{color:#EA580C!important;}
.vix-clientarea-home .vix-sparkline{right:12px!important;bottom:10px!important;width:52px!important;height:34px!important;opacity:.22!important;filter:none!important;}

/* Banda de seguridad */
.vix-clientarea-home .vix-ca-security-strip{
    display:grid!important;grid-template-columns:38px 1fr auto!important;align-items:center!important;gap:12px!important;margin:0 0 22px!important;padding:13px 16px!important;
    border-radius:15px!important;background:#F8FBFF!important;border:1px solid #D9E8FF!important;box-shadow:var(--vix-shadow-xs)!important;
}
.vix-clientarea-home .vix-ca-security-strip span{width:34px!important;height:34px!important;border-radius:12px!important;background:#EEF5FF!important;color:var(--vix-primary)!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.vix-clientarea-home .vix-ca-security-strip p{margin:0!important;color:#284067!important;font-size:12.5px!important;line-height:1.35!important;}
.vix-clientarea-home .vix-ca-security-strip a{font-size:12px!important;font-weight:800!important;color:var(--vix-primary)!important;text-decoration:none!important;white-space:nowrap!important;}

/* Paneles WHMCS inferiores */
.vix-clientarea-home .vix-ca-panels{margin:0!important;}
.vix-clientarea-home .vix-ca-panel{border:1px solid var(--vix-line)!important;border-radius:16px!important;box-shadow:var(--vix-shadow-xs)!important;overflow:hidden!important;}
.vix-clientarea-home .vix-ca-panel .card-header{background:#fff!important;border-bottom:1px solid var(--vix-line)!important;padding:14px 16px!important;}
.vix-clientarea-home .vix-ca-panel .card-title{font-size:15px!important;font-weight:800!important;color:var(--vix-ink)!important;}

@media(max-width:1180px){
    .vix-clientarea-home{padding-left:14px!important;padding-right:14px!important;}
    .vix-clientarea-home .vix-ca-hero{grid-template-columns:1fr 1fr!important;}
    .vix-clientarea-home .vix-ca-protected-card{display:none!important;}
    .vix-clientarea-home .vix-ca-hero-art{left:44%!important;opacity:.34!important;}
}
@media(max-width:920px){
    .vix-clientarea-home .vix-ca-quickbar,.vix-clientarea-home .vix-ca-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    .vix-clientarea-home .vix-ca-hero{grid-template-columns:1fr!important;min-height:auto!important;padding:28px!important;}
    .vix-clientarea-home .vix-ca-hero-art{display:none!important;}
}
@media(max-width:560px){
    .vix-clientarea-home{padding-left:10px!important;padding-right:10px!important;}
    .vix-clientarea-home .vix-ca-hero{border-radius:18px!important;padding:24px 20px!important;}
    .vix-clientarea-home .vix-ca-hero-main h1{font-size:31px!important;}
    .vix-clientarea-home .vix-ca-hero-main p{font-size:14px!important;}
    .vix-clientarea-home .vix-ca-hero-actions{display:grid!important;grid-template-columns:1fr!important;}
    .vix-clientarea-home .vix-ca-quickbar,.vix-clientarea-home .vix-ca-stats-grid{grid-template-columns:1fr!important;gap:12px!important;}
    .vix-clientarea-home .vix-ca-security-strip{grid-template-columns:34px 1fr!important;}
    .vix-clientarea-home .vix-ca-security-strip a{grid-column:2!important;}
}

/* =========================================================
   VIX PRO - CLIENTAREA FINAL DESIGN SYSTEM CLEAN PATCH
   Corrige: sombras exageradas, grid desalineado, garabatos,
   hero desordenado y sidebar/paneles con contenido invisible.
   ========================================================= */
:root{
  --vix-final-text:#06142f;
  --vix-final-muted:#65728c;
  --vix-final-line:#e6edf7;
  --vix-final-bg:#f5f7fb;
  --vix-final-shadow:0 6px 16px rgba(7,22,56,.035);
  --vix-final-shadow-hover:0 10px 22px rgba(7,22,56,.055);
}
body:not(.vix-login-page){background:var(--vix-final-bg)!important;}
body:not(.vix-login-page) #main-body{background:linear-gradient(180deg,#f8faff 0%,#f4f7fb 100%)!important;}
body:not(.vix-login-page) .main-content{min-width:0!important;}

/* Sidebar: mantener información nativa visible y sin alturas raras */
body:not(.vix-login-page) .sidebar .panel,
body:not(.vix-login-page) .sidebar .card,
body:not(.vix-login-page) .panel-sidebar{
  border:1px solid var(--vix-final-line)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:var(--vix-final-shadow)!important;
  overflow:hidden!important;
}
body:not(.vix-login-page) .sidebar .panel-body,
body:not(.vix-login-page) .sidebar .card-body,
body:not(.vix-login-page) .panel-sidebar .panel-body{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  min-height:0!important;
  height:auto!important;
  padding:16px!important;
  color:var(--vix-final-text)!important;
  background:#fff!important;
}
body:not(.vix-login-page) .sidebar .panel-body *,
body:not(.vix-login-page) .sidebar .card-body *,
body:not(.vix-login-page) .panel-sidebar .panel-body *{
  visibility:visible!important;
  color:inherit;
}
body:not(.vix-login-page) .sidebar .btn,
body:not(.vix-login-page) .panel-sidebar .btn{
  border-radius:8px!important;
  box-shadow:none!important;
}

/* Contenedor principal */
.vix-clientarea-home,
.vix-clientarea-home-pro,
.vix-clientarea-home-ultra{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  color:var(--vix-final-text)!important;
}

/* Hero rediseñado: más bajo, limpio y estable */
.vix-clientarea-home .vix-ca-hero,
.vix-clientarea-home-ultra .vix-ca-hero-ultra{
  display:grid!important;
  grid-template-columns:minmax(270px,1.08fr) minmax(220px,.82fr) minmax(260px,.92fr)!important;
  gap:24px!important;
  align-items:center!important;
  min-height:300px!important;
  padding:34px 38px!important;
  margin:0 0 22px!important;
  border-radius:22px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 92% 88%,rgba(124,44,255,.35) 0,rgba(124,44,255,0) 32%),
    radial-gradient(circle at 0 0,rgba(28,107,255,.42) 0,rgba(28,107,255,0) 38%),
    linear-gradient(135deg,#071638 0%,#0a47d8 62%,#6236f2 100%)!important;
  box-shadow:0 8px 22px rgba(7,22,56,.075)!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.vix-clientarea-home .vix-ca-hero:before,
.vix-clientarea-home-ultra .vix-ca-hero-ultra:before{
  opacity:.38!important;
  background-size:18px 18px!important;
}
.vix-clientarea-home .vix-ca-hero-main{position:relative!important;z-index:3!important;min-width:0!important;}
.vix-clientarea-home .vix-ca-hero-main h1,
.vix-clientarea-home-ultra .vix-ca-hero-main h1{
  font-size:38px!important;
  line-height:1.08!important;
  max-width:430px!important;
  margin:0 0 14px!important;
  letter-spacing:-.045em!important;
  color:#fff!important;
  text-wrap:balance!important;
}
.vix-clientarea-home .vix-ca-hero-main p,
.vix-clientarea-home-ultra .vix-ca-hero-main p{
  max-width:430px!important;
  margin:0!important;
  font-size:15px!important;
  line-height:1.52!important;
  color:rgba(255,255,255,.88)!important;
  font-weight:500!important;
}
.vix-clientarea-home .vix-ca-hero-actions{display:flex!important;gap:12px!important;flex-wrap:wrap!important;margin-top:24px!important;}
.vix-clientarea-home .vix-ca-btn,
.vix-clientarea-home-ultra .vix-ca-btn{
  height:42px!important;
  padding:0 18px!important;
  border-radius:12px!important;
  font-size:13px!important;
  font-weight:800!important;
  box-shadow:none!important;
}
.vix-clientarea-home .vix-ca-btn-primary{background:linear-gradient(135deg,#126BFF,#7C2CFF)!important;color:#fff!important;}
.vix-clientarea-home .vix-ca-btn-light{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important;}
.vix-clientarea-home .vix-ca-btn:hover{transform:translateY(-1px)!important;box-shadow:0 6px 14px rgba(0,0,0,.08)!important;}

/* Quitar el garabato/ilustración que estaba ensuciando el hero */
.vix-clientarea-home .vix-ca-hero-art,
.vix-clientarea-home-ultra .vix-ca-hero-art,
.vix-clientarea-home .vix-ca-orbit,
.vix-clientarea-home .vix-ca-cloud,
.vix-clientarea-home .vix-ca-server{
  display:none!important;
}

/* Card central coherente */
.vix-clientarea-home .vix-ca-protected-card,
.vix-clientarea-home-ultra .vix-ca-protected-card{
  position:relative!important;
  z-index:3!important;
  width:100%!important;
  min-height:190px!important;
  padding:24px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:none!important;
  backdrop-filter:blur(12px)!important;
}
.vix-clientarea-home .vix-ca-protected-card strong{font-size:18px!important;margin-top:14px!important;}
.vix-clientarea-home .vix-ca-protected-card p{font-size:13px!important;max-width:210px!important;}

/* Acciones del hero */
.vix-clientarea-home .vix-ca-hero-actions-card,
.vix-clientarea-home-ultra .vix-ca-hero-actions-card{
  position:relative!important;
  z-index:3!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  min-width:0!important;
}
.vix-clientarea-home .vix-action-tile,
.vix-clientarea-home-ultra .vix-action-tile{
  min-height:86px!important;
  display:grid!important;
  grid-template-columns:54px 1fr 18px!important;
  gap:16px!important;
  align-items:center!important;
  padding:16px!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:none!important;
  color:#fff!important;
  text-decoration:none!important;
}
.vix-clientarea-home .vix-action-tile span{width:54px!important;height:54px!important;border-radius:15px!important;background:#fff!important;color:#0d63ff!important;box-shadow:none!important;}
.vix-clientarea-home .vix-action-tile strong{font-size:14px!important;line-height:1.2!important;color:#fff!important;}
.vix-clientarea-home .vix-action-tile small{font-size:12px!important;line-height:1.35!important;color:rgba(255,255,255,.84)!important;}

/* Quickbar y stats: grid estable, sin solapamientos */
.vix-clientarea-home .vix-ca-quickbar,
.vix-clientarea-home .vix-ca-stats-grid,
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra,
.vix-clientarea-home-ultra .vix-ca-stats-ultra{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  margin:0 0 18px!important;
}
.vix-clientarea-home .vix-ca-quickbar a,
.vix-clientarea-home-ultra .vix-ca-quickbar-ultra a,
.vix-clientarea-home .vix-ca-stat-card,
.vix-clientarea-home-ultra .vix-ca-stats-ultra .vix-ca-stat-card{
  min-width:0!important;
  border:1px solid var(--vix-final-line)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:var(--vix-final-shadow)!important;
  overflow:hidden!important;
  text-decoration:none!important;
}
.vix-clientarea-home .vix-ca-quickbar a{height:84px!important;padding:16px!important;display:grid!important;grid-template-columns:42px 1fr 12px!important;align-items:center!important;gap:14px!important;}
.vix-clientarea-home .vix-ca-quickbar a:hover,
.vix-clientarea-home .vix-ca-stat-card:hover{box-shadow:var(--vix-final-shadow-hover)!important;transform:translateY(-1px)!important;}
.vix-clientarea-home .vix-ca-quickbar a>i{width:42px!important;height:42px!important;border-radius:12px!important;box-shadow:none!important;}
.vix-clientarea-home .vix-ca-quickbar strong{font-size:13px!important;line-height:1.25!important;}
.vix-clientarea-home .vix-ca-quickbar small{font-size:11.3px!important;line-height:1.35!important;-webkit-line-clamp:2!important;}
.vix-clientarea-home .vix-ca-stat-card{height:136px!important;padding:20px!important;display:grid!important;grid-template-columns:54px 1fr!important;gap:18px!important;align-items:start!important;position:relative!important;}
.vix-clientarea-home .vix-ca-stat-icon{width:54px!important;height:54px!important;border-radius:15px!important;box-shadow:none!important;}
.vix-clientarea-home .vix-ca-stat-card strong{font-size:28px!important;line-height:1!important;letter-spacing:-.035em!important;}
.vix-clientarea-home .vix-ca-stat-card small{font-size:12px!important;margin-top:7px!important;}
.vix-clientarea-home .vix-ca-stat-card b{font-size:11.5px!important;margin-top:12px!important;}
.vix-clientarea-home .vix-sparkline{display:none!important;}

/* Strip inferior */
.vix-clientarea-home .vix-ca-security-strip{
  display:grid!important;
  grid-template-columns:36px 1fr auto!important;
  gap:14px!important;
  align-items:center!important;
  margin:0 0 22px!important;
  padding:14px 16px!important;
  border-radius:15px!important;
  border:1px solid #d8e7ff!important;
  background:#f7fbff!important;
  box-shadow:none!important;
}

/* Paneles WHMCS nativos debajo */
.vix-clientarea-home .vix-ca-panels .card,
.vix-clientarea-home .vix-ca-panel{
  border:1px solid var(--vix-final-line)!important;
  border-radius:16px!important;
  box-shadow:var(--vix-final-shadow)!important;
}

@media (max-width:1199px){
  .vix-clientarea-home .vix-ca-hero{grid-template-columns:1fr 1fr!important;}
  .vix-clientarea-home .vix-ca-protected-card{display:none!important;}
  .vix-clientarea-home .vix-ca-quickbar,.vix-clientarea-home .vix-ca-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:767px){
  .vix-clientarea-home .vix-ca-hero{grid-template-columns:1fr!important;min-height:auto!important;padding:26px 20px!important;border-radius:18px!important;}
  .vix-clientarea-home .vix-ca-hero-main h1{font-size:30px!important;}
  .vix-clientarea-home .vix-ca-hero-actions-card{display:none!important;}
  .vix-clientarea-home .vix-ca-quickbar,.vix-clientarea-home .vix-ca-stats-grid{grid-template-columns:1fr!important;gap:12px!important;}
  .vix-clientarea-home .vix-ca-security-strip{grid-template-columns:36px 1fr!important;}
  .vix-clientarea-home .vix-ca-security-strip a{grid-column:2!important;}
}

/* =========================================================
   VIX Clientarea Clean Balanced System - final correction
   ========================================================= */
:root{
    --vix-text:#0b1736;
    --vix-muted:#5d6b82;
    --vix-border:#e7edf6;
    --vix-soft:#f7f9fd;
    --vix-blue:#1268ff;
    --vix-indigo:#4f46e5;
    --vix-green:#10b981;
    --vix-pink:#d946ef;
    --vix-orange:#f59e0b;
}

.vix-clientarea-clean-final{max-width:100%;}
.vix-clientarea-clean-final *{box-sizing:border-box;}

/* Hero: symmetric, compact, no visual noise */
.vix-clientarea-clean-final .vix-ca-hero,
.vix-clientarea-clean-final .vix-ca-hero-ultra,
.vix-clientarea-clean-final .vix-ca-hero-balanced{
    position:relative!important;
    display:grid!important;
    grid-template-columns:1.15fr .86fr 1fr!important;
    align-items:center!important;
    gap:22px!important;
    min-height:0!important;
    height:auto!important;
    padding:34px 38px!important;
    border-radius:20px!important;
    overflow:hidden!important;
    background:linear-gradient(135deg,#071a45 0%,#0f55df 57%,#5b2df5 100%)!important;
    box-shadow:0 8px 22px rgba(15,23,42,.075)!important;
    margin:0 0 22px!important;
}
.vix-clientarea-clean-final .vix-ca-hero:before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    pointer-events:none!important;
    opacity:.16!important;
    background-image:radial-gradient(rgba(255,255,255,.55) 1px,transparent 1px)!important;
    background-size:16px 16px!important;
}
.vix-clientarea-clean-final .vix-ca-hero:after{display:none!important;}
.vix-clientarea-clean-final .vix-ca-hero > *{position:relative!important;z-index:1!important;}
.vix-clientarea-clean-final .vix-ca-hero-art,
.vix-clientarea-clean-final .vix-ca-orbit,
.vix-clientarea-clean-final .vix-ca-server,
.vix-clientarea-clean-final .vix-ca-cloud,
.vix-clientarea-clean-final .vix-sparkline{display:none!important;}

.vix-clientarea-clean-final .vix-hero-eyebrow{
    display:inline-flex!important;align-items:center!important;gap:8px!important;
    height:28px!important;padding:0 12px!important;border-radius:999px!important;
    color:#e8efff!important;background:rgba(255,255,255,.10)!important;
    border:1px solid rgba(255,255,255,.18)!important;
    font-size:12px!important;font-weight:650!important;line-height:1!important;
    margin-bottom:14px!important;
}
.vix-clientarea-clean-final .vix-ca-hero-main h1{
    color:#fff!important;
    font-size:32px!important;
    line-height:1.12!important;
    font-weight:720!important;
    letter-spacing:-.045em!important;
    margin:0 0 10px!important;
    text-shadow:none!important;
    max-width:390px!important;
}
.vix-clientarea-clean-final .vix-ca-hero-main h1 .vix-wave{font-size:.9em!important;font-weight:400!important;}
.vix-clientarea-clean-final .vix-ca-hero-main p{
    color:rgba(255,255,255,.86)!important;
    font-size:14px!important;
    line-height:1.55!important;
    font-weight:450!important;
    max-width:390px!important;
    margin:0 0 20px!important;
}
.vix-clientarea-clean-final .vix-ca-hero-actions{display:flex!important;gap:12px!important;align-items:center!important;flex-wrap:wrap!important;}
.vix-clientarea-clean-final .vix-ca-btn{
    height:42px!important;padding:0 16px!important;border-radius:12px!important;
    display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
    font-size:13px!important;font-weight:700!important;line-height:1!important;text-decoration:none!important;
    box-shadow:none!important;white-space:nowrap!important;
}
.vix-clientarea-clean-final .vix-ca-btn-primary{background:linear-gradient(135deg,#1673ff,#7c2df5)!important;color:#fff!important;border:1px solid rgba(255,255,255,.16)!important;}
.vix-clientarea-clean-final .vix-ca-btn-light{background:rgba(255,255,255,.07)!important;color:#fff!important;border:1px solid rgba(255,255,255,.22)!important;}
.vix-clientarea-clean-final .vix-ca-btn:hover{transform:translateY(-1px)!important;box-shadow:0 8px 18px rgba(0,0,0,.08)!important;}

/* Hero center card */
.vix-clientarea-clean-final .vix-ca-protected-card{
    align-self:stretch!important;min-height:180px!important;padding:24px!important;border-radius:18px!important;
    display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important;
    background:rgba(255,255,255,.09)!important;border:1px solid rgba(255,255,255,.18)!important;
    box-shadow:none!important;backdrop-filter:blur(10px)!important;color:#fff!important;
}
.vix-clientarea-clean-final .vix-protected-icon{width:56px!important;height:56px!important;border-radius:16px!important;background:rgba(255,255,255,.13)!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;font-size:21px!important;margin:0 0 16px!important;position:relative!important;box-shadow:none!important;}
.vix-clientarea-clean-final .vix-protected-icon span{position:absolute!important;right:-5px!important;top:-7px!important;width:23px!important;height:23px!important;border-radius:50%!important;background:#35d357!important;color:#fff!important;border:2px solid rgba(255,255,255,.55)!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:11px!important;}
.vix-clientarea-clean-final .vix-ca-protected-card strong{display:block!important;color:#fff!important;font-size:18px!important;font-weight:760!important;line-height:1.25!important;margin:0 0 8px!important;}
.vix-clientarea-clean-final .vix-ca-protected-card p{color:rgba(255,255,255,.82)!important;font-size:13px!important;line-height:1.45!important;margin:0 0 14px!important;font-weight:450!important;}
.vix-clientarea-clean-final .vix-ca-protected-card small{display:inline-flex!important;align-items:center!important;gap:7px!important;height:26px!important;padding:0 11px!important;border-radius:999px!important;background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important;font-size:12px!important;font-weight:650!important;}
.vix-clientarea-clean-final .vix-ca-protected-card small i{color:#33e28a!important;font-size:9px!important;}

/* Hero action tiles */
.vix-clientarea-clean-final .vix-ca-hero-actions-card{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;align-self:stretch!important;}
.vix-clientarea-clean-final .vix-action-tile{
    min-height:83px!important;padding:18px!important;border-radius:18px!important;background:rgba(255,255,255,.10)!important;
    border:1px solid rgba(255,255,255,.18)!important;box-shadow:none!important;display:grid!important;
    grid-template-columns:48px minmax(0,1fr) 16px!important;align-items:center!important;gap:14px!important;color:#fff!important;text-decoration:none!important;
}
.vix-clientarea-clean-final .vix-action-tile:hover{transform:translateY(-1px)!important;background:rgba(255,255,255,.14)!important;}
.vix-clientarea-clean-final .vix-action-tile > span{width:48px!important;height:48px!important;border-radius:14px!important;background:#fff!important;color:#1169ff!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:19px!important;box-shadow:none!important;}
.vix-clientarea-clean-final .vix-action-tile strong{display:block!important;color:#fff!important;font-size:14px!important;line-height:1.2!important;font-weight:740!important;margin:0 0 5px!important;}
.vix-clientarea-clean-final .vix-action-tile small{display:block!important;color:rgba(255,255,255,.82)!important;font-size:12px!important;line-height:1.35!important;font-weight:450!important;}
.vix-clientarea-clean-final .vix-action-tile > i{font-size:13px!important;color:#fff!important;opacity:.86!important;}

/* Quickbar: consistent white cards with dark text */
.vix-clientarea-clean-final .vix-ca-quickbar,
.vix-clientarea-clean-final .vix-ca-quickbar-ultra{
    display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin:0 0 16px!important;
}
.vix-clientarea-clean-final .vix-ca-quickbar a{
    min-height:84px!important;height:84px!important;padding:16px!important;border-radius:16px!important;background:#fff!important;border:1px solid var(--vix-border)!important;
    box-shadow:0 6px 16px rgba(15,23,42,.045)!important;display:grid!important;grid-template-columns:44px minmax(0,1fr) 14px!important;gap:13px!important;align-items:center!important;text-decoration:none!important;color:var(--vix-text)!important;overflow:hidden!important;
}
.vix-clientarea-clean-final .vix-ca-quickbar a:hover{transform:translateY(-1px)!important;box-shadow:0 8px 18px rgba(15,23,42,.06)!important;border-color:#dce5f2!important;}
.vix-clientarea-clean-final .vix-ca-quickbar a > i:first-child{width:44px!important;height:44px!important;border-radius:13px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:17px!important;background:#eff6ff!important;color:#1268ff!important;box-shadow:none!important;}
.vix-clientarea-clean-final .vix-ca-quickbar a:nth-child(2)>i:first-child{background:#ecfdf5!important;color:#10b981!important;}
.vix-clientarea-clean-final .vix-ca-quickbar a:nth-child(3)>i:first-child{background:#faf0ff!important;color:#c026d3!important;}
.vix-clientarea-clean-final .vix-ca-quickbar a:nth-child(4)>i:first-child{background:#fff7ed!important;color:#f97316!important;}
.vix-clientarea-clean-final .vix-ca-quickbar strong{display:block!important;color:var(--vix-text)!important;font-size:13px!important;line-height:1.22!important;font-weight:720!important;margin:0 0 5px!important;}
.vix-clientarea-clean-final .vix-ca-quickbar small{display:block!important;color:var(--vix-muted)!important;font-size:12px!important;line-height:1.35!important;font-weight:450!important;white-space:normal!important;}
.vix-clientarea-clean-final .vix-ca-quickbar em{color:#0f4eaa!important;font-size:12px!important;justify-self:end!important;}

/* Stats grid: aligned, text visible, no garabatos */
.vix-clientarea-clean-final .vix-ca-stats-grid,
.vix-clientarea-clean-final .vix-ca-stats-ultra{
    display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin:0 0 16px!important;
}
.vix-clientarea-clean-final .vix-ca-stat-card{
    min-height:126px!important;height:126px!important;padding:18px!important;border-radius:16px!important;background:#fff!important;border:1px solid var(--vix-border)!important;
    box-shadow:0 6px 16px rgba(15,23,42,.045)!important;display:grid!important;grid-template-columns:54px minmax(0,1fr)!important;gap:15px!important;align-items:center!important;text-decoration:none!important;color:var(--vix-text)!important;overflow:hidden!important;
}
.vix-clientarea-clean-final .vix-ca-stat-card:hover{transform:translateY(-1px)!important;box-shadow:0 8px 18px rgba(15,23,42,.06)!important;border-color:#dce5f2!important;}
.vix-clientarea-clean-final .vix-ca-stat-icon{width:54px!important;height:54px!important;border-radius:16px!important;display:flex!important;align-items:center!important;justify-content:center!important;color:#fff!important;font-size:20px!important;box-shadow:none!important;}
.vix-clientarea-clean-final .vix-stat-blue .vix-ca-stat-icon{background:linear-gradient(135deg,#1268ff,#4f46e5)!important;}
.vix-clientarea-clean-final .vix-stat-green .vix-ca-stat-icon{background:linear-gradient(135deg,#10b981,#14b8a6)!important;}
.vix-clientarea-clean-final .vix-stat-pink .vix-ca-stat-icon{background:linear-gradient(135deg,#ec4899,#a855f7)!important;}
.vix-clientarea-clean-final .vix-stat-orange .vix-ca-stat-icon{background:linear-gradient(135deg,#f59e0b,#fb923c)!important;}
.vix-clientarea-clean-final .vix-ca-stat-card strong{display:block!important;color:var(--vix-text)!important;font-size:28px!important;line-height:1!important;font-weight:760!important;letter-spacing:-.04em!important;margin:0 0 6px!important;}
.vix-clientarea-clean-final .vix-ca-stat-card small{display:block!important;color:#25365f!important;font-size:12.5px!important;line-height:1.25!important;font-weight:650!important;margin:0 0 10px!important;}
.vix-clientarea-clean-final .vix-ca-stat-card b{display:inline-flex!important;align-items:center!important;gap:6px!important;font-size:12px!important;font-weight:720!important;line-height:1!important;}
.vix-clientarea-clean-final .vix-stat-blue b{color:#1268ff!important;}.vix-clientarea-clean-final .vix-stat-green b{color:#059669!important;}.vix-clientarea-clean-final .vix-stat-pink b{color:#db2777!important;}.vix-clientarea-clean-final .vix-stat-orange b{color:#ea580c!important;}

.vix-clientarea-clean-final .vix-ca-security-strip{min-height:58px!important;border-radius:15px!important;background:#f8fbff!important;border:1px solid #d9e8ff!important;box-shadow:none!important;margin-top:4px!important;padding:14px 16px!important;display:grid!important;grid-template-columns:36px 1fr auto!important;gap:14px!important;align-items:center!important;}
.vix-clientarea-clean-final .vix-ca-security-strip span{width:36px!important;height:36px!important;border-radius:12px!important;background:#edf5ff!important;color:#1268ff!important;display:flex!important;align-items:center!important;justify-content:center!important;}
.vix-clientarea-clean-final .vix-ca-security-strip p{margin:0!important;color:#1d3760!important;font-size:13px!important;line-height:1.4!important;}
.vix-clientarea-clean-final .vix-ca-security-strip a{color:#1268ff!important;font-size:12.5px!important;font-weight:750!important;text-decoration:none!important;white-space:nowrap!important;}

/* Restore native sidebar visibility/content */
.sidebar .card,
.primary-sidebar .card,
.secondary-sidebar .card{border:1px solid var(--vix-border)!important;border-radius:16px!important;box-shadow:0 6px 16px rgba(15,23,42,.045)!important;overflow:hidden!important;background:#fff!important;}
.sidebar .card-body,
.primary-sidebar .card-body,
.secondary-sidebar .card-body{min-height:unset!important;height:auto!important;padding:16px!important;color:var(--vix-text)!important;background:#fff!important;}
.sidebar .list-group-item,
.primary-sidebar .list-group-item,
.secondary-sidebar .list-group-item{color:var(--vix-text)!important;background:#fff!important;font-size:13px!important;}
.sidebar .card-header,
.primary-sidebar .card-header,
.secondary-sidebar .card-header{background:#fff!important;color:var(--vix-text)!important;font-weight:700!important;}

/* Responsive */
@media (max-width:1199px){
    .vix-clientarea-clean-final .vix-ca-hero{grid-template-columns:1fr!important;gap:16px!important;padding:28px!important;}
    .vix-clientarea-clean-final .vix-ca-protected-card{min-height:unset!important;}
    .vix-clientarea-clean-final .vix-ca-hero-actions-card{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:991px){
    .vix-clientarea-clean-final .vix-ca-quickbar,
    .vix-clientarea-clean-final .vix-ca-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:575px){
    .vix-clientarea-clean-final .vix-ca-hero{padding:24px 20px!important;border-radius:16px!important;}
    .vix-clientarea-clean-final .vix-ca-hero-main h1{font-size:27px!important;}
    .vix-clientarea-clean-final .vix-ca-hero-actions-card,
    .vix-clientarea-clean-final .vix-ca-quickbar,
    .vix-clientarea-clean-final .vix-ca-stats-grid{grid-template-columns:1fr!important;}
    .vix-clientarea-clean-final .vix-ca-security-strip{grid-template-columns:36px 1fr!important;}
    .vix-clientarea-clean-final .vix-ca-security-strip a{grid-column:2!important;}
}

/* =========================================================
   VIX Clientarea native panels title visibility fix
   Corrige encabezados WHMCS donde solo aparece el icono.
   ========================================================= */
.vix-clientarea-home .vix-ca-panel .card-header,
.vix-clientarea-home .vix-ca-panels .card-header{
    min-height:48px!important;
    display:flex!important;
    align-items:center!important;
    background:#fff!important;
    border-bottom:1px solid #e7edf6!important;
}
.vix-clientarea-home .vix-ca-panel .card-title,
.vix-clientarea-home .vix-ca-panels .card-title{
    width:100%!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    margin:0!important;
    color:#0b1736!important;
    font-size:14px!important;
    font-weight:750!important;
    line-height:1.2!important;
    white-space:normal!important;
    overflow:visible!important;
    text-indent:0!important;
}
.vix-clientarea-home .vix-ca-panel .card-title i,
.vix-clientarea-home .vix-ca-panels .card-title i{
    color:#1268ff!important;
    font-size:15px!important;
    min-width:18px!important;
    text-align:center!important;
}
.vix-clientarea-home .vix-ca-panel .card-title .float-right,
.vix-clientarea-home .vix-ca-panels .card-title .float-right{
    order:10!important;
    margin-left:auto!important;
    float:none!important;
    display:flex!important;
    align-items:center!important;
}
.vix-clientarea-home .vix-ca-panel .card-header .btn,
.vix-clientarea-home .vix-ca-panels .card-header .btn{
    height:26px!important;
    padding:0 10px!important;
    border-radius:999px!important;
    font-size:12px!important;
    line-height:26px!important;
}

/* Títulos de respaldo para paneles nativos si WHMCS/idioma los deja vacíos visualmente */
.vix-clientarea-home .vix-ca-panel[menuItemName*="Active Products"] .card-title::after,
.vix-clientarea-home .vix-ca-panel[menuItemName*="Products/Services"] .card-title::after,
.vix-clientarea-home .vix-ca-panel[menuItemName*="Productos"] .card-title::after,
.vix-clientarea-home .vix-ca-panel[menuItemName*="Servicios"] .card-title::after{
    content:"Tus productos/servicios activos";
    color:#0b1736!important;
    font-size:14px!important;
    font-weight:750!important;
}
.vix-clientarea-home .vix-ca-panel[menuItemName*="Recent Support"] .card-title::after,
.vix-clientarea-home .vix-ca-panel[menuItemName*="Tickets"] .card-title::after,
.vix-clientarea-home .vix-ca-panel[menuItemName*="Soporte"] .card-title::after{
    content:"Tickets recientes";
    color:#0b1736!important;
    font-size:14px!important;
    font-weight:750!important;
}
.vix-clientarea-home .vix-ca-panel[menuItemName*="Register"] .card-title::after,
.vix-clientarea-home .vix-ca-panel[menuItemName*="Domain"] .card-title::after,
.vix-clientarea-home .vix-ca-panel[menuItemName*="Dominio"] .card-title::after{
    content:"Registrar dominio";
    color:#0b1736!important;
    font-size:14px!important;
    font-weight:750!important;
}
.vix-clientarea-home .vix-ca-panel[menuItemName*="Recent News"] .card-title::after,
.vix-clientarea-home .vix-ca-panel[menuItemName*="News"] .card-title::after,
.vix-clientarea-home .vix-ca-panel[menuItemName*="Noticias"] .card-title::after{
    content:"Noticias recientes";
    color:#0b1736!important;
    font-size:14px!important;
    font-weight:750!important;
}

/* Contenido de paneles inferiores legible y limpio */
.vix-clientarea-home .vix-ca-panel .card-body,
.vix-clientarea-home .vix-ca-panels .card-body,
.vix-clientarea-home .vix-ca-panel .list-group-item,
.vix-clientarea-home .vix-ca-panels .list-group-item,
.vix-clientarea-home .vix-ca-panel .card-footer,
.vix-clientarea-home .vix-ca-panels .card-footer{
    color:#0b1736!important;
    background:#fff!important;
    font-size:13px!important;
    line-height:1.55!important;
}
.vix-clientarea-home .vix-ca-panel .card-body a,
.vix-clientarea-home .vix-ca-panels .card-body a,
.vix-clientarea-home .vix-ca-panel .card-footer a,
.vix-clientarea-home .vix-ca-panels .card-footer a{
    color:#1268ff!important;
    font-weight:650!important;
}
.vix-clientarea-home .vix-ca-panel .card-footer,
.vix-clientarea-home .vix-ca-panels .card-footer{
    border-top:1px solid #eef2f7!important;
    min-height:36px!important;
    padding:8px 16px!important;
}

/* =========================================================
   VIX Clientarea final compact alignment fix
   - elimina duplicados de títulos nativos
   - compacta hero y cards para evitar texto descuadrado
   ========================================================= */
.vix-clientarea-home .vix-ca-panel .card-title::after,
.vix-clientarea-home .vix-ca-panels .card-title::after{
    content:none!important;
    display:none!important;
}

.vix-clientarea-clean-final .vix-ca-hero{
    grid-template-columns:minmax(0,1.05fr) minmax(240px,.85fr) minmax(260px,.95fr)!important;
    gap:18px!important;
    padding:30px!important;
    min-height:260px!important;
    border-radius:18px!important;
    align-items:center!important;
}
.vix-clientarea-clean-final .vix-ca-hero-main h1{
    font-size:30px!important;
    line-height:1.08!important;
    font-weight:720!important;
    letter-spacing:-.035em!important;
    margin:12px 0 10px!important;
}
.vix-clientarea-clean-final .vix-ca-hero-main p{
    max-width:330px!important;
    font-size:14px!important;
    line-height:1.45!important;
    margin-bottom:18px!important;
}
.vix-clientarea-clean-final .vix-ca-hero-actions{
    gap:10px!important;
}
.vix-clientarea-clean-final .vix-ca-btn{
    min-height:38px!important;
    padding:0 15px!important;
    font-size:12.5px!important;
    border-radius:11px!important;
}
.vix-clientarea-clean-final .vix-ca-protected-card{
    min-height:196px!important;
    padding:22px!important;
    border-radius:16px!important;
}
.vix-clientarea-clean-final .vix-ca-protected-card strong{
    font-size:18px!important;
    line-height:1.15!important;
    margin-top:12px!important;
}
.vix-clientarea-clean-final .vix-ca-protected-card p{
    font-size:13px!important;
    line-height:1.45!important;
    max-width:210px!important;
}
.vix-clientarea-clean-final .vix-protected-icon{
    width:58px!important;
    height:58px!important;
    border-radius:16px!important;
    font-size:22px!important;
}
.vix-clientarea-clean-final .vix-ca-hero-actions-card{
    gap:12px!important;
}
.vix-clientarea-clean-final .vix-action-tile{
    min-height:92px!important;
    padding:16px!important;
    grid-template-columns:50px minmax(0,1fr) 14px!important;
    gap:14px!important;
    border-radius:16px!important;
}
.vix-clientarea-clean-final .vix-action-tile span{
    width:50px!important;
    height:50px!important;
    border-radius:14px!important;
    font-size:20px!important;
}
.vix-clientarea-clean-final .vix-action-tile strong{
    font-size:14px!important;
    line-height:1.15!important;
    margin-bottom:5px!important;
}
.vix-clientarea-clean-final .vix-action-tile small{
    font-size:11.5px!important;
    line-height:1.35!important;
    max-width:170px!important;
}

.vix-clientarea-clean-final .vix-ca-quickbar{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
    margin:18px 0!important;
}
.vix-clientarea-clean-final .vix-ca-quickbar a{
    min-height:78px!important;
    height:78px!important;
    padding:14px!important;
    grid-template-columns:42px minmax(0,1fr) 12px!important;
    gap:12px!important;
    overflow:hidden!important;
}
.vix-clientarea-clean-final .vix-ca-quickbar i:first-child{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    border-radius:13px!important;
    font-size:16px!important;
}
.vix-clientarea-clean-final .vix-ca-quickbar strong{
    font-size:13px!important;
    line-height:1.15!important;
    margin:0 0 4px!important;
    display:block!important;
    color:#0b1736!important;
}
.vix-clientarea-clean-final .vix-ca-quickbar small{
    font-size:11.5px!important;
    line-height:1.3!important;
    color:#435274!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
}

.vix-clientarea-clean-final .vix-ca-stats-grid{
    gap:14px!important;
}
.vix-clientarea-clean-final .vix-ca-stat-card{
    height:112px!important;
    min-height:112px!important;
    padding:16px!important;
    grid-template-columns:48px minmax(0,1fr)!important;
    gap:14px!important;
    border-radius:15px!important;
}
.vix-clientarea-clean-final .vix-ca-stat-icon{
    width:48px!important;
    height:48px!important;
    border-radius:14px!important;
    font-size:18px!important;
}
.vix-clientarea-clean-final .vix-ca-stat-card strong{
    font-size:25px!important;
    margin-bottom:5px!important;
}
.vix-clientarea-clean-final .vix-ca-stat-card small{
    font-size:12px!important;
    line-height:1.2!important;
    margin-bottom:8px!important;
}
.vix-clientarea-clean-final .vix-ca-stat-card b{
    font-size:11.5px!important;
}

.vix-clientarea-home .vix-ca-panel .card-header,
.vix-clientarea-home .vix-ca-panels .card-header{
    min-height:46px!important;
    padding:12px 16px!important;
}
.vix-clientarea-home .vix-ca-panel .card-title,
.vix-clientarea-home .vix-ca-panels .card-title{
    gap:7px!important;
    font-size:14px!important;
    font-weight:740!important;
}
.vix-clientarea-home .vix-ca-panel .card-title .float-right,
.vix-clientarea-home .vix-ca-panels .card-title .float-right{
    margin-left:auto!important;
}

@media (max-width:1199px){
    .vix-clientarea-clean-final .vix-ca-hero{grid-template-columns:1fr!important;min-height:unset!important;}
    .vix-clientarea-clean-final .vix-ca-hero-actions-card{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:991px){
    .vix-clientarea-clean-final .vix-ca-quickbar,
    .vix-clientarea-clean-final .vix-ca-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media (max-width:575px){
    .vix-clientarea-clean-final .vix-ca-hero{padding:22px!important;}
    .vix-clientarea-clean-final .vix-ca-hero-main h1{font-size:25px!important;}
    .vix-clientarea-clean-final .vix-ca-hero-actions-card,
    .vix-clientarea-clean-final .vix-ca-quickbar,
    .vix-clientarea-clean-final .vix-ca-stats-grid{grid-template-columns:1fr!important;}
}

/* =========================================================
   VIX Pro - Servicios activos full premium
   Corrige la sección de productos/servicios activos para que
   destaque como card SaaS sin perder acciones nativas WHMCS.
   ========================================================= */
.vix-clientarea-home .vix-ca-panels .card:has(.vix-service-premium-card),
.vix-clientarea-home .vix-ca-panel:has(.vix-service-premium-card){
    border:1px solid #dfe7f3!important;
    border-radius:18px!important;
    overflow:hidden!important;
    background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;
    box-shadow:0 8px 22px rgba(9,30,66,.045)!important;
}
.vix-clientarea-home .vix-ca-panels .card:has(.vix-service-premium-card) .card-header,
.vix-clientarea-home .vix-ca-panel:has(.vix-service-premium-card) .card-header{
    background:#fff!important;
    border-bottom:1px solid #edf2f8!important;
    min-height:58px!important;
    padding:16px 18px!important;
}
.vix-clientarea-home .vix-ca-panels .card:has(.vix-service-premium-card) .card-title,
.vix-clientarea-home .vix-ca-panel:has(.vix-service-premium-card) .card-title{
    font-size:15px!important;
    color:#071735!important;
    font-weight:780!important;
    letter-spacing:-.01em!important;
}
.vix-clientarea-home .vix-ca-panels .card:has(.vix-service-premium-card) .card-title i,
.vix-clientarea-home .vix-ca-panel:has(.vix-service-premium-card) .card-title i{
    width:32px!important;
    height:32px!important;
    border-radius:10px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:#1268ff!important;
    background:rgba(18,104,255,.10)!important;
    margin-right:8px!important;
}
.vix-clientarea-home .vix-ca-panels .card:has(.vix-service-premium-card) .card-body,
.vix-clientarea-home .vix-ca-panel:has(.vix-service-premium-card) .card-body{
    padding:0!important;
    background:#fff!important;
}
.vix-service-premium-card{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:18px!important;
    min-height:92px!important;
    padding:18px!important;
    margin:0!important;
    background:linear-gradient(135deg,#ffffff 0%,#f8fbff 100%)!important;
    border-bottom:1px solid #edf2f8!important;
    cursor:pointer!important;
    transition:background .18s ease, transform .18s ease!important;
}
.vix-service-premium-card:hover{
    background:linear-gradient(135deg,#ffffff 0%,#f4f8ff 100%)!important;
}
.vix-service-product{
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    gap:14px!important;
}
.vix-service-icon{
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    border-radius:16px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:#fff!important;
    background:linear-gradient(135deg,#176bff 0%,#7c3aed 100%)!important;
    box-shadow:0 8px 16px rgba(28,107,255,.16)!important;
    font-size:18px!important;
}
.vix-service-meta{
    min-width:0!important;
}
.vix-service-topline{
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    margin-bottom:7px!important;
    flex-wrap:wrap!important;
}
.vix-service-status{
    display:inline-flex!important;
    align-items:center!important;
    gap:6px!important;
    border-radius:999px!important;
    padding:4px 9px!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:800!important;
    border:1px solid transparent!important;
    color:#16a34a!important;
    background:rgba(34,197,94,.12)!important;
}
.vix-service-status i{font-size:7px!important;color:#22c55e!important;}
.vix-service-status.label-danger,
.vix-service-status.label-terminated,
.vix-service-status.label-cancelled{
    color:#dc2626!important;background:rgba(239,68,68,.10)!important;
}
.vix-service-status.label-danger i,
.vix-service-status.label-terminated i,
.vix-service-status.label-cancelled i{color:#ef4444!important;}
.vix-service-status.label-warning,
.vix-service-status.label-pending{
    color:#b45309!important;background:rgba(245,158,11,.12)!important;
}
.vix-service-status.label-warning i,
.vix-service-status.label-pending i{color:#f59e0b!important;}
.vix-service-id{
    font-size:11px!important;
    color:#7a879d!important;
    font-weight:650!important;
}
.vix-service-title{
    color:#071735!important;
    font-size:15px!important;
    line-height:1.25!important;
    font-weight:800!important;
    letter-spacing:-.01em!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    max-width:100%!important;
}
.vix-service-domain{
    display:inline-flex!important;
    align-items:center!important;
    gap:6px!important;
    margin-top:5px!important;
    color:#42526e!important;
    font-size:13px!important;
    font-weight:650!important;
    text-decoration:none!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
}
.vix-service-domain:hover{color:#1268ff!important;text-decoration:none!important;}
.vix-service-domain i{color:#1268ff!important;font-size:12px!important;}
.vix-service-domain-muted{color:#8a95a8!important;}
.vix-service-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    flex-wrap:wrap!important;
    min-width:300px!important;
}
.vix-service-actions .btn,
.vix-service-actions button{
    height:38px!important;
    border-radius:11px!important;
    padding:0 13px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    font-size:12.5px!important;
    line-height:1!important;
    font-weight:780!important;
    box-shadow:none!important;
    transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease!important;
}
.vix-service-primary,
.vix-service-actions .btn-primary{
    color:#fff!important;
    border:0!important;
    background:linear-gradient(135deg,#176bff,#7c3aed)!important;
}
.vix-service-primary:hover,
.vix-service-actions .btn-primary:hover{
    transform:translateY(-1px)!important;
    background:linear-gradient(135deg,#0b5cff,#6d28d9)!important;
}
.vix-service-secondary,
.vix-service-details,
.vix-service-actions .btn-default{
    color:#0b1736!important;
    background:#fff!important;
    border:1px solid #dce4ef!important;
}
.vix-service-secondary:hover,
.vix-service-details:hover,
.vix-service-actions .btn-default:hover{
    background:#f7faff!important;
    border-color:#c9d6e8!important;
    color:#1268ff!important;
}
.vix-service-more .dropdown-toggle{
    width:38px!important;
    padding:0!important;
}
.vix-service-actions .dropdown-menu{
    border:1px solid #e5ebf3!important;
    border-radius:12px!important;
    box-shadow:0 12px 26px rgba(9,30,66,.10)!important;
    padding:6px!important;
}
.vix-service-actions .dropdown-item{
    border-radius:8px!important;
    padding:9px 11px!important;
    font-size:12.5px!important;
    font-weight:650!important;
    color:#17213a!important;
    cursor:pointer!important;
}
.vix-service-actions .dropdown-item:hover{
    background:#f2f6ff!important;
    color:#1268ff!important;
}
.vix-clientarea-home .vix-ca-panels .card:has(.vix-service-premium-card) .card-footer,
.vix-clientarea-home .vix-ca-panel:has(.vix-service-premium-card) .card-footer{
    background:#fbfdff!important;
    border-top:0!important;
    min-height:42px!important;
    padding:10px 18px!important;
    text-align:right!important;
}
.vix-clientarea-home .vix-ca-panels .card:has(.vix-service-premium-card) .card-footer a,
.vix-clientarea-home .vix-ca-panel:has(.vix-service-premium-card) .card-footer a{
    color:#1268ff!important;
    font-weight:780!important;
    font-size:12.5px!important;
}

@media (max-width:991px){
    .vix-service-premium-card{grid-template-columns:1fr!important;align-items:flex-start!important;}
    .vix-service-actions{justify-content:flex-start!important;min-width:0!important;width:100%!important;}
}
@media (max-width:575px){
    .vix-service-premium-card{padding:15px!important;}
    .vix-service-icon{width:46px!important;height:46px!important;min-width:46px!important;}
    .vix-service-title{white-space:normal!important;}
    .vix-service-actions .btn,.vix-service-actions button{height:36px!important;font-size:12px!important;}
}

/* VIX Pro - DNS server sidebar card */
.vix-dns-pro-card{
    margin:0 0 18px 0!important;
    padding:16px!important;
    border:1px solid #e6edf7!important;
    border-radius:16px!important;
    background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;
    box-shadow:0 8px 20px rgba(15,23,42,.035)!important;
    color:#0f1b33!important;
}
.vix-dns-pro-head{
    display:flex!important;
    align-items:center!important;
    gap:11px!important;
    margin-bottom:13px!important;
}
.vix-dns-pro-icon{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    border-radius:12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:rgba(28,107,255,.10)!important;
    color:#1268ff!important;
}
.vix-dns-pro-head strong{
    display:block!important;
    font-size:14px!important;
    line-height:1.15!important;
    font-weight:800!important;
    color:#07152f!important;
}
.vix-dns-pro-head span{
    display:block!important;
    margin-top:3px!important;
    font-size:11.5px!important;
    line-height:1.35!important;
    color:#64748b!important;
}
.vix-dns-pro-list{
    display:grid!important;
    gap:8px!important;
}
.vix-dns-pro-item{
    display:grid!important;
    grid-template-columns:72px 1fr 34px!important;
    align-items:center!important;
    gap:8px!important;
    padding:9px 9px!important;
    border:1px solid #edf2f8!important;
    border-radius:12px!important;
    background:#f8fbff!important;
}
.vix-dns-label{
    font-size:10.5px!important;
    font-weight:800!important;
    color:#64748b!important;
    text-transform:uppercase!important;
    letter-spacing:.02em!important;
}
.vix-dns-pro-item code{
    padding:0!important;
    background:transparent!important;
    color:#0f1b33!important;
    font-size:12.5px!important;
    font-weight:800!important;
    white-space:nowrap!important;
}
.vix-dns-copy{
    width:32px!important;
    height:32px!important;
    border:0!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#1268ff!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-shadow:0 1px 0 rgba(15,23,42,.05)!important;
    cursor:pointer!important;
    transition:background .18s ease,color .18s ease,transform .18s ease!important;
}
.vix-dns-copy:hover{
    background:#1268ff!important;
    color:#fff!important;
    transform:translateY(-1px)!important;
}
.vix-dns-copy-all{
    width:100%!important;
    height:38px!important;
    margin-top:10px!important;
    border:0!important;
    border-radius:12px!important;
    background:linear-gradient(135deg,#1c6bff,#6d28d9)!important;
    color:#fff!important;
    font-size:12.5px!important;
    font-weight:800!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    cursor:pointer!important;
    box-shadow:0 8px 16px rgba(28,107,255,.12)!important;
}
.vix-dns-copy-all:hover{filter:brightness(.98)!important;}
.vix-dns-copy.is-copied,
.vix-dns-copy-all.is-copied{
    background:#16a34a!important;
    color:#fff!important;
}
.vix-dns-pro-note{
    margin-top:10px!important;
    padding:9px 10px!important;
    border-radius:11px!important;
    background:#f1f5ff!important;
    color:#475569!important;
    font-size:11.5px!important;
    line-height:1.35!important;
    display:flex!important;
    gap:7px!important;
}
.vix-dns-pro-note i{color:#1268ff!important;margin-top:2px!important;}
@media(max-width:991px){
    .vix-dns-pro-card{display:none!important;}
}


/* VIX Pro - Top bar premium refinement */
header.header .topbar{
    background:#0f172a!important;
    color:#dbeafe!important;
    min-height:34px!important;
    border-bottom:1px solid rgba(255,255,255,.06)!important;
    font-size:12px!important;
    box-shadow:none!important;
}
header.header .topbar .container{
    max-width:1280px!important;
}
header.header .topbar .btn,
header.header .topbar .input-group-text,
header.header .topbar .active-client .btn{
    background:transparent!important;
    border:0!important;
    color:#dbeafe!important;
    box-shadow:none!important;
    height:34px!important;
    padding-top:0!important;
    padding-bottom:0!important;
    display:inline-flex!important;
    align-items:center!important;
    font-size:12px!important;
}
header.header .topbar .btn:hover,
header.header .topbar .active-client .btn:hover{
    color:#fff!important;
    background:rgba(255,255,255,.06)!important;
    text-decoration:none!important;
}
header.header .topbar .input-group-text{
    opacity:.78!important;
    padding-right:6px!important;
}
header.header .topbar .active-client{
    border:0!important;
    background:rgba(255,255,255,.035)!important;
    border-radius:9px!important;
    overflow:hidden!important;
    height:28px!important;
    margin-top:3px!important;
}
header.header .topbar .active-client .btn-active-client span{
    color:#fff!important;
    font-weight:600!important;
    text-decoration:none!important;
}
header.header .topbar i{
    color:#93c5fd!important;
}
header.header .topbar .client-alerts{
    color:#0f172a!important;
}

/* VIX Pro - DNS final nameservers and softer refinement */
.vix-dns-pro-card{
    box-shadow:0 4px 12px rgba(15,23,42,.03)!important;
    border-color:#e9eef6!important;
}
.vix-dns-copy-all{
    box-shadow:0 4px 10px rgba(28,107,255,.10)!important;
}

/* VIX Pro - DNS Premium Final Refinement */
.vix-dns-premium{
    position:relative!important;
    margin:14px 0 18px!important;
    padding:16px!important;
    border:1px solid #e8eef7!important;
    border-radius:18px!important;
    background:#ffffff!important;
    box-shadow:0 6px 18px rgba(15,23,42,.035)!important;
    overflow:hidden!important;
}
.vix-dns-premium:before{
    content:""!important;
    position:absolute!important;
    inset:0 0 auto 0!important;
    height:3px!important;
    background:linear-gradient(90deg,#1c6bff,#7c3aed)!important;
    opacity:.9!important;
}
.vix-dns-premium .vix-dns-pro-head{
    margin-bottom:14px!important;
    gap:11px!important;
}
.vix-dns-premium .vix-dns-pro-icon{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    border-radius:12px!important;
    background:linear-gradient(135deg,rgba(28,107,255,.12),rgba(124,58,237,.10))!important;
    color:#1c6bff!important;
    box-shadow:none!important;
}
.vix-dns-premium .vix-dns-pro-head strong{
    font-size:14px!important;
    font-weight:800!important;
    color:#07152f!important;
    letter-spacing:-.01em!important;
}
.vix-dns-premium .vix-dns-pro-head span{
    max-width:190px!important;
    font-size:11.5px!important;
    line-height:1.35!important;
    color:#64748b!important;
}
.vix-dns-premium .vix-dns-pro-list{
    gap:8px!important;
}
.vix-dns-premium .vix-dns-pro-item{
    grid-template-columns:78px minmax(0,1fr) 30px!important;
    gap:8px!important;
    min-height:44px!important;
    padding:8px 9px!important;
    background:#fbfdff!important;
    border:1px solid #edf3fa!important;
    border-radius:13px!important;
    box-shadow:none!important;
}
.vix-dns-premium .vix-dns-label{
    font-size:10px!important;
    font-weight:800!important;
    letter-spacing:.04em!important;
    color:#64748b!important;
}
.vix-dns-premium .vix-dns-pro-item code{
    display:block!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:12.5px!important;
    font-weight:800!important;
    letter-spacing:-.01em!important;
    color:#0f1b33!important;
}
.vix-dns-premium .vix-dns-copy{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#1c6bff!important;
    border-radius:9px!important;
    padding:0!important;
}
.vix-dns-premium .vix-dns-copy i{
    font-size:14px!important;
    line-height:1!important;
}
.vix-dns-premium .vix-dns-copy:hover{
    background:rgba(28,107,255,.09)!important;
    color:#1c6bff!important;
    transform:none!important;
}
.vix-dns-premium .vix-dns-copy.is-copied{
    background:rgba(22,163,74,.10)!important;
    color:#16a34a!important;
}
.vix-dns-premium .vix-dns-copy-all{
    height:40px!important;
    margin-top:10px!important;
    border-radius:12px!important;
    background:linear-gradient(135deg,#1c6bff,#6d28d9)!important;
    box-shadow:0 6px 14px rgba(28,107,255,.12)!important;
    font-size:12.5px!important;
    font-weight:800!important;
}
.vix-dns-premium .vix-dns-copy-all:hover{
    transform:translateY(-1px)!important;
    filter:none!important;
    box-shadow:0 8px 18px rgba(28,107,255,.15)!important;
}
.vix-dns-premium .vix-dns-copy-all.is-copied{
    background:linear-gradient(135deg,#16a34a,#22c55e)!important;
}
.vix-dns-premium .vix-dns-pro-note{
    margin-top:10px!important;
    padding:9px 10px!important;
    border-radius:12px!important;
    background:#f6f9ff!important;
    border:1px solid #eef4ff!important;
    color:#516176!important;
    font-size:11.5px!important;
    line-height:1.35!important;
    align-items:flex-start!important;
}
.vix-dns-premium .vix-dns-toast{
    position:absolute!important;
    right:14px!important;
    top:12px!important;
    padding:5px 9px!important;
    border-radius:999px!important;
    background:#0f172a!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:700!important;
    opacity:0!important;
    transform:translateY(-4px)!important;
    pointer-events:none!important;
    transition:opacity .18s ease,transform .18s ease!important;
}
.vix-dns-premium .vix-dns-toast.is-visible{
    opacity:1!important;
    transform:translateY(0)!important;
}
@media(max-width:991px){
    .vix-dns-premium{display:none!important;}
}

/* ==========================================================
   VIX PRO - STORE SAFE POLISH FINAL
   No modifica Bootstrap global ni fuerza grids.
   Corrige tienda/carrito manteniendo estructura WHMCS.
   ========================================================== */
body.cart-page,
body[class*="cart"],
body[class*="store"] {
    background:#f6f8fc;
}

/* Solo orden estándar: limpiar exceso visual sin romper columnas */
#order-standard_cart .panel,
#order-standard_cart .product,
#order-standard_cart .view-cart-items,
#order-standard_cart .order-summary,
#order-standard_cart .domain-checker-container,
#order-standard_cart .panel-sidebar {
    box-shadow:none !important;
}

#order-standard_cart .panel-sidebar,
#order-standard_cart .cart-sidebar {
    /* border: 1px solid #e6edf7 !important; */
    /* border-radius: 14px !important; */
    /* background: #fff !important; */
    /* overflow: hidden !important; */
}

#order-standard_cart .panel-sidebar .list-group-item,
#order-standard_cart .list-group-item {
    border-color:#edf2f7 !important;
    color:#0f172a !important;
    font-size:14px !important;
    font-weight:600 !important;
    padding:13px 16px !important;
    background:#fff !important;
}

#order-standard_cart .panel-sidebar .list-group-item.active,
#order-standard_cart .list-group-item.active,
#order-standard_cart .panel-sidebar .list-group-item:hover,
#order-standard_cart .list-group-item:hover {
    background:#f6f9ff !important;
    color:#125cff !important;
}

#order-standard_cart h1,
#order-standard_cart .main-content h1 {
    color:#0f172a !important;
    font-size:30px !important;
    line-height:1.2 !important;
    font-weight:750 !important;
    letter-spacing:-.02em !important;
    margin-bottom:8px !important;
}

#order-standard_cart p.lead,
#order-standard_cart .products-desc,
#order-standard_cart .products-description {
    color:#64748b !important;
    font-size:14px !important;
    line-height:1.55 !important;
}

/* Productos: respetar columnas originales de WHMCS */
#order-standard_cart .products .product,
#order-standard_cart .product {
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin-bottom:22px !important;
    padding:22px !important;
    border:1px solid #e5edf7 !important;
    border-radius:16px !important;
    background:#fff !important;
    overflow:visible !important;
    box-shadow:none !important;
    writing-mode:horizontal-tb !important;
    text-orientation:mixed !important;
}

#order-standard_cart .product *,
#order-standard_cart .products * {
    writing-mode:horizontal-tb !important;
    text-orientation:mixed !important;
}

#order-standard_cart .product:hover {
    border-color:#d5e3f5 !important;
    transform:none !important;
    box-shadow:none !important;
}

#order-standard_cart .product header,
#order-standard_cart .product .header,
#order-standard_cart .product .product-title,
#order-standard_cart .product h3,
#order-standard_cart .product h4 {
    color:#0f172a !important;
    font-size:18px !important;
    line-height:1.25 !important;
    font-weight:750 !important;
    text-align:left !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    margin-bottom:14px !important;
}

#order-standard_cart .product p,
#order-standard_cart .product li,
#order-standard_cart .product ul,
#order-standard_cart .product .description,
#order-standard_cart .product .features {
    color:#475569 !important;
    font-size:14px !important;
    line-height:1.55 !important;
    text-align:left !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
}

#order-standard_cart .product ul {
    padding-left:18px !important;
    margin:12px 0 18px !important;
}

#order-standard_cart .product .price,
#order-standard_cart .product .pricing,
#order-standard_cart .product .product-pricing {
    color:#0f172a !important;
    font-size:24px !important;
    line-height:1.15 !important;
    font-weight:750 !important;
    margin:14px 0 !important;
    text-align:left !important;
}

#order-standard_cart .btn.btn-primary,
#order-standard_cart .btn.btn-success,
#order-standard_cart .product .btn {
    border:0 !important;
    border-radius:10px !important;
    background:#1c6bff !important;
    color:#fff !important;
    box-shadow:none !important;
    font-size:14px !important;
    font-weight:700 !important;
    padding:10px 16px !important;
    white-space:normal !important;
}

#order-standard_cart .btn.btn-primary:hover,
#order-standard_cart .btn.btn-success:hover,
#order-standard_cart .product .btn:hover {
    background:#155dfc !important;
    box-shadow:none !important;
}

#order-standard_cart input.form-control,
#order-standard_cart select.form-control,
#order-standard_cart textarea.form-control {
    border:1px solid #dbe4f0 !important;
    border-radius:10px !important;
    box-shadow:none !important;
}

#order-standard_cart input.form-control:focus,
#order-standard_cart select.form-control:focus,
#order-standard_cart textarea.form-control:focus {
    border-color:#1c6bff !important;
    box-shadow:0 0 0 2px rgba(28,107,255,.08) !important;
}

/* Evitar sombras fuertes agregadas por versiones anteriores */
.vix-store-modern *,
.vix-store-card,
.store-product-card {
    box-shadow:none !important;
}

/* ==========================================================
   VIX PRO - CONTRAST & READABILITY HOTFIX
   Corrige textos blancos sobre fondos blancos en tienda,
   paneles, cards y secciones claras sin afectar heroes oscuros.
   ========================================================== */
body,
#main-body,
.main-content,
.primary-content,
#order-standard_cart,
#order-standard_cart .main-container,
#order-standard_cart .secondary-cart-body {
    color:#0f172a !important;
}

/* Superficies claras: todo texto debe ser oscuro por defecto */
.panel,
.panel-default,
.panel-body,
.panel-heading,
.card,
.card-body,
.list-group-item,
.sidebar .panel,
.sidebar .list-group-item,
.vix-card,
.vix-panel,
.vix-service-card,
.vix-dns-card,
.vix-quick-card,
.vix-stat-card,
.vix-services-premium,
.vix-clientarea-home .vix-card,
#order-standard_cart .products,
#order-standard_cart .product,
#order-standard_cart .view-cart-items,
#order-standard_cart .domain-selection-options,
#order-standard_cart .categories-collapsed,
#order-standard_cart .cart-sidebar,
#order-standard_cart .sidebar-collapsed,
#order-standard_cart .sub-heading,
#order-standard_cart .product-info,
#order-standard_cart .product-desc,
#order-standard_cart .summary-container {
    color:#0f172a !important;
}

/* Titulares y textos en fondos claros */
.panel h1,.panel h2,.panel h3,.panel h4,.panel h5,.panel h6,
.card h1,.card h2,.card h3,.card h4,.card h5,.card h6,
.vix-card h1,.vix-card h2,.vix-card h3,.vix-card h4,.vix-card h5,.vix-card h6,
.vix-panel h1,.vix-panel h2,.vix-panel h3,.vix-panel h4,.vix-panel h5,.vix-panel h6,
#order-standard_cart h1,
#order-standard_cart h2,
#order-standard_cart h3,
#order-standard_cart h4,
#order-standard_cart h5,
#order-standard_cart h6,
#order-standard_cart .product-title,
#order-standard_cart .product-name,
#order-standard_cart .product header,
#order-standard_cart .products .product header,
#order-standard_cart .panel-title,
#order-standard_cart .field-container label,
#order-standard_cart label {
    color:#081225 !important;
    text-shadow:none !important;
}

.panel p,.panel span,.panel li,.panel small,.panel div,
.card p,.card span,.card li,.card small,
.vix-card p,.vix-card span,.vix-card li,.vix-card small,
.vix-panel p,.vix-panel span,.vix-panel li,.vix-panel small,
#order-standard_cart p,
#order-standard_cart span,
#order-standard_cart li,
#order-standard_cart small,
#order-standard_cart .description,
#order-standard_cart .product-description,
#order-standard_cart .product-desc,
#order-standard_cart .feature,
#order-standard_cart .features,
#order-standard_cart .help-block,
#order-standard_cart .text-muted {
    color:#475569 !important;
    text-shadow:none !important;
}

/* Store: subtítulo bajo el título principal, antes estaba blanco */
#order-standard_cart .order-summary h1 + p,
#order-standard_cart .main-heading + p,
#order-standard_cart .products-desc,
#order-standard_cart .category-description,
#order-standard_cart .headline p,
#order-standard_cart .store-heading p,
#order-standard_cart .cart-body p {
    color:#64748b !important;
}

/* No tocar textos que sí deben ser blancos por contraste */
.btn,
.btn *,
.badge,
.badge *,
.label,
.label *,
.alert-danger,
.alert-danger *,
.alert-success,
.alert-success *,
.alert-warning,
.alert-warning *,
.vix-ca-hero,
.vix-ca-hero *,
.vix-hero,
.vix-hero *,
.vix-login-left,
.vix-login-left *,
.vix-final-brand,
.vix-final-brand *,
.vix-clean-left,
.vix-clean-left *,
.vix-commercial-left,
.vix-commercial-left *,
.top-bar,
.top-bar * {
    text-shadow:none;
}

/* Paneles inferiores WHMCS: título visible y no duplicado visualmente */
.panel-heading,
.card-header,
.vix-panel-heading {
    background:#fff !important;
    border-bottom:1px solid #e5edf6 !important;
    color:#081225 !important;
}
.panel-heading .panel-title,
.panel-heading h3,
.panel-heading h4,
.card-header,
.card-header h3,
.card-header h4 {
    color:#081225 !important;
}

/* Sombras: todo más plano y limpio */
.panel,
.card,
.vix-card,
.vix-panel,
.vix-service-card,
.vix-dns-card,
#order-standard_cart .product,
#order-standard_cart .panel,
#order-standard_cart .card {
    box-shadow:none !important;
    border-color:#e5edf6 !important;
}

/* =========================================================
   VIX PRO - STORE COLOR NORMALIZATION (SAFE FINAL)
   Objetivo: corregir textos blancos sobre fondos blancos sin romper WHMCS.
   Alcance: solo carrito/store (#order-standard_cart y store dinámico).
   ========================================================= */

:root {
    --vix-store-ink: #0f172a;
    --vix-store-text: #334155;
    --vix-store-muted: #64748b;
    --vix-store-border: #e6edf7;
    --vix-store-soft: #f8fafc;
    --vix-store-white: #ffffff;
    --vix-store-primary: #1C6BFF;
    --vix-store-primary-dark: #0f4fd6;
    --vix-store-success: #16a34a;
}

/* Corrección solicitada: solo color activo, sin background forzado */
#order-standard_cart .summary-container {
    color: #0f172a !important;
}

/* Sidebar del carrito: reglas desactivadas a propósito para no romper WHMCS */
#order-standard_cart .panel-sidebar,
#order-standard_cart .cart-sidebar {
    /* border: 1px solid #e6edf7 !important; */
    /* border-radius: 14px !important; */
    /* background: #fff !important; */
    /* overflow: hidden !important; */
}

/* Fondo y texto base del store */
#order-standard_cart,
#order-standard_cart .main-content,
#order-standard_cart .products,
#order-standard_cart .cart-body,
#order-standard_cart .panel,
#order-standard_cart .panel-body,
#order-standard_cart .card,
#order-standard_cart .card-body,
#order-standard_cart .product,
#order-standard_cart .product-info,
#order-standard_cart .view-cart-items,
#order-standard_cart .summary-container,
.store-promoted-product,
.store-promoted-product .content,
.store-promoted-product .product-options,
.store-promoted-product .store-product-card {
    color: var(--vix-store-text) !important;
    text-shadow: none !important;
}

/* Títulos en superficies claras */
#order-standard_cart h1,
#order-standard_cart h2,
#order-standard_cart h3,
#order-standard_cart h4,
#order-standard_cart h5,
#order-standard_cart h6,
#order-standard_cart .panel-title,
#order-standard_cart .product-title,
#order-standard_cart .product-name,
#order-standard_cart .group-headline,
#order-standard_cart .summary-title,
#order-standard_cart .sub-heading,
#order-standard_cart label,
#order-standard_cart strong,
.store-promoted-product h1,
.store-promoted-product h2,
.store-promoted-product h3,
.store-promoted-product h4,
.store-promoted-product .product-title,
.store-promoted-product .product-name,
.store-promoted-product strong {
    color: var(--vix-store-ink) !important;
    text-shadow: none !important;
}

/* Texto secundario en superficies claras */
#order-standard_cart p,
#order-standard_cart li,
#order-standard_cart small,
#order-standard_cart .description,
#order-standard_cart .product-description,
#order-standard_cart .product-desc,
#order-standard_cart .help-block,
#order-standard_cart .text-muted,
#order-standard_cart .features,
#order-standard_cart .feature,
.store-promoted-product p,
.store-promoted-product li,
.store-promoted-product small,
.store-promoted-product .description,
.store-promoted-product .product-description,
.store-promoted-product .text-muted {
    color: var(--vix-store-muted) !important;
    text-shadow: none !important;
}

/* Enlaces */
#order-standard_cart a:not(.btn),
.store-promoted-product a:not(.btn) {
    color: var(--vix-store-primary) !important;
}
#order-standard_cart a:not(.btn):hover,
.store-promoted-product a:not(.btn):hover {
    color: var(--vix-store-primary-dark) !important;
}

/* Botones: conservar contraste correcto */
#order-standard_cart .btn-primary,
#order-standard_cart .btn-success,
#order-standard_cart .btn-info,
#order-standard_cart .btn-warning,
#order-standard_cart .btn-danger,
#order-standard_cart .btn-primary *,
#order-standard_cart .btn-success *,
#order-standard_cart .btn-info *,
#order-standard_cart .btn-warning *,
#order-standard_cart .btn-danger * {
    color: #ffffff !important;
}
#order-standard_cart .btn-default,
#order-standard_cart .btn-secondary,
#order-standard_cart .btn-default *,
#order-standard_cart .btn-secondary * {
    color: var(--vix-store-ink) !important;
}

/* Badges / labels mantienen contraste */
#order-standard_cart .badge,
#order-standard_cart .label,
#order-standard_cart .badge *,
#order-standard_cart .label * {
    color: #ffffff !important;
}

/* Headers de panel claros */
#order-standard_cart .panel-heading,
#order-standard_cart .card-header {
    background: var(--vix-store-white) !important;
    border-bottom: 1px solid var(--vix-store-border) !important;
    color: var(--vix-store-ink) !important;
    text-shadow: none !important;
}
#order-standard_cart .panel-heading *,
#order-standard_cart .card-header * {
    color: var(--vix-store-ink) !important;
    text-shadow: none !important;
}

/* Superficies claras: sin sombras fuertes */
#order-standard_cart .panel,
#order-standard_cart .card,
#order-standard_cart .product,
#order-standard_cart .summary-container,
#order-standard_cart .panel-sidebar,
#order-standard_cart .cart-sidebar,
.store-promoted-product .store-product-card {
    box-shadow: none !important;
    border-color: var(--vix-store-border) !important;
}

/* Zonas oscuras o gradientes: conservar texto blanco solo ahí */
#order-standard_cart .vix-store-hero,
#order-standard_cart .vix-store-hero *,
#order-standard_cart .hero,
#order-standard_cart .hero *,
#order-standard_cart .banner,
#order-standard_cart .banner *,
#order-standard_cart .bg-primary,
#order-standard_cart .bg-primary *,
#order-standard_cart .bg-dark,
#order-standard_cart .bg-dark * {
    color: #ffffff !important;
}

/* Inputs */
#order-standard_cart input,
#order-standard_cart select,
#order-standard_cart textarea {
    color: var(--vix-store-ink) !important;
    background: #ffffff !important;
    border-color: var(--vix-store-border) !important;
}
#order-standard_cart input::placeholder,
#order-standard_cart textarea::placeholder {
    color: #94a3b8 !important;
}

/* =========================================================
   VIX Pro - Tips SaaS premium por sección
   Seguro: no toca Bootstrap ni estructura del store
   ========================================================= */
header.header .topbar .container > .d-flex {
    position: relative;
    align-items: center;
}
.vix-topbar-tips {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    max-width: min(560px, 46vw);
    height: 26px;
    padding: 0 12px 0 7px;
    border-radius: 999px;
    color: #dbeafe;
    background: rgba(255, 255, 255, 0.055);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: none !important;
    line-height: 1;
    pointer-events: none;
    overflow: hidden;
}
.vix-tip-icon {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 18px;
    color: #93c5fd;
    background: rgba(96, 165, 250, 0.12);
}
.vix-tip-icon i {
    font-size: 10px;
    color: inherit !important;
}
.vix-tip-label {
    flex: 0 0 auto;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #93c5fd;
}
#vixSmartTip {
    display: inline-block;
    min-width: 0;
    max-width: 430px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 12px;
    font-weight: 500;
    color: #e5edff;
    transition: opacity .22s ease, transform .22s ease;
}
#vixSmartTip.is-changing {
    opacity: 0;
    transform: translateY(3px);
}
@media (max-width: 1199.98px) {
    .vix-topbar-tips { max-width: 38vw; }
    #vixSmartTip { max-width: 310px; }
}
@media (max-width: 991.98px) {
    .vix-topbar-tips { display: none; }
}


/* =========================================================
   VIX Voucher Payment Block - production safe
   ========================================================= */
.vix-voucher-card {
    margin-top: 16px;
    margin-bottom: 16px;
    padding: 16px;
    border-radius: 16px;
    background: #ffffff;
    border: 1px solid #e8eef7;
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);
}
.vix-voucher-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
}
.vix-voucher-icon {
    width: 38px;
    height: 38px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #eef4ff;
    color: #1c6bff;
    flex: 0 0 auto;
}
.vix-voucher-head strong {
    display: block;
    font-size: 14px;
    line-height: 1.2;
    color: #0f172a;
    font-weight: 700;
}
.vix-voucher-head span {
    display: block;
    margin-top: 2px;
    font-size: 12px;
    line-height: 1.35;
    color: #64748b;
}
.vix-voucher-form { margin: 0; }
.vix-voucher-field {
    display: block;
    margin: 0 0 10px;
}
.vix-voucher-field > span {
    display: block;
    margin-bottom: 5px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .02em;
    text-transform: uppercase;
    color: #64748b;
}
.vix-voucher-field input[type="text"],
.vix-voucher-field input[type="file"] {
    width: 100%;
    min-height: 40px;
    border: 1px solid #dbe5f2;
    border-radius: 10px;
    background: #fff;
    color: #0f172a;
    font-size: 13px;
    padding: 9px 10px;
    outline: none;
}
.vix-voucher-field input:focus {
    border-color: #1c6bff;
    box-shadow: 0 0 0 3px rgba(28, 107, 255, .08);
}
.vix-voucher-submit {
    width: 100%;
    min-height: 42px;
    border: 0;
    border-radius: 11px;
    background: linear-gradient(135deg, #1c6bff 0%, #6938ef 100%);
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    box-shadow: none;
}
.vix-voucher-submit:hover { filter: brightness(.98); }
.vix-voucher-note {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    margin: 10px 0 0;
    padding: 9px 10px;
    border-radius: 10px;
    background: #f7f9fc;
    color: #475569;
    font-size: 12px;
    line-height: 1.35;
}
.vix-voucher-note i { color: #1c6bff; margin-top: 1px; }
.vix-voucher-alert {
    margin-bottom: 16px;
    border-radius: 12px;
    padding: 12px 14px;
    font-size: 13px;
}

/* VIX Voucher: selección de factura pendiente */
.vix-voucher-field select.vix-voucher-select {
    width: 100%;
    height: 40px;
    padding: 0 10px;
    border: 1px solid #dbe4f0;
    border-radius: 10px;
    background: #ffffff;
    color: #0f172a;
    font-size: 12px;
    outline: none;
}
.vix-voucher-field select.vix-voucher-select:focus {
    border-color: #1c6bff;
    box-shadow: 0 0 0 3px rgba(28,107,255,.08);
}
.vix-voucher-submit:disabled {
    opacity: .55;
    cursor: not-allowed;
    filter: grayscale(.15);
}

/* =========================================================
   VIX Pro - Domain Registrar Professional Redesign
   Scoped to WHMCS domain search/pricing only. Does not alter
   Bootstrap global grid, rows or columns.
   ========================================================= */

/* Page typography and contrast */
#order-standard_cart h1,
#order-standard_cart .main-content h1,
.domain-pricing h1 {
    color: #0f172a !important;
    font-weight: 700;
    letter-spacing: -0.03em;
}
#order-standard_cart p,
#order-standard_cart .products-desc,
#order-standard_cart .products-description,
.domain-pricing,
.domain-pricing p,
.domain-pricing small {
    color: #475569 !important;
}

/* Domain search hero */
.home-domain-search {
    background: transparent !important;
    padding: 0 !important;
}
.home-domain-search .container {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.home-domain-search .p-5 {
    position: relative;
    overflow: hidden;
    margin: 20px 0 26px;
    padding: 44px 40px !important;
    border-radius: 18px;
    border: 1px solid rgba(28, 107, 255, .16);
    background:
        radial-gradient(circle at 86% 20%, rgba(255,255,255,.20), transparent 31%),
        linear-gradient(135deg, #0b1224 0%, #1157ef 55%, #6938ef 100%) !important;
    box-shadow: none !important;
    min-height: 250px;
}
.home-domain-search .p-5::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgba(255,255,255,.16) 1px, transparent 1px);
    background-size: 18px 18px;
    opacity: .45;
    pointer-events: none;
}
.home-domain-search .p-5::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -80px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    border: 34px solid rgba(255,255,255,.10);
    pointer-events: none;
}
.home-domain-search h2,
#order-standard_cart .home-domain-search h2 {
    position: relative;
    z-index: 1;
    color: #ffffff !important;
    font-size: 30px;
    font-weight: 700;
    letter-spacing: -0.025em;
    text-align: left !important;
    margin: 0 0 18px !important;
    max-width: 680px;
}
.home-domain-search .input-group-wrapper {
    position: relative;
    z-index: 2;
    max-width: 720px;
    margin: 0 !important;
}
.home-domain-search .input-group {
    display: flex;
    align-items: stretch;
    width: 100%;
    min-height: 58px;
    padding: 8px;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,.25);
    background: rgba(255,255,255,.96);
    box-shadow: none !important;
}
.home-domain-search .input-group.advanced-input {
    flex-wrap: wrap;
    gap: 8px 10px;
    padding: 10px;
}
.home-domain-search input.form-control,
.home-domain-search textarea,
#order-standard_cart .home-domain-search input.form-control,
#order-standard_cart .home-domain-search textarea {
    flex: 1 1 auto;
    min-width: 0;
    height: 48px !important;
    min-height: 48px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: #ffffff !important;
    color: #0f172a !important;
    font-size: 15px !important;
    line-height: 1.45;
    padding: 12px 14px !important;
    box-shadow: none !important;
    outline: none !important;
    resize: none;
}
.home-domain-search textarea::placeholder,
.home-domain-search input.form-control::placeholder {
    color: #64748b !important;
    opacity: 1;
}
.home-domain-search .input-group-btn,
.home-domain-search .input-group-append {
    display: flex;
    align-items: center;
    gap: 8px;
}
.home-domain-search .btn,
#order-standard_cart .home-domain-search .btn {
    height: 48px;
    border-radius: 12px !important;
    border: 0 !important;
    padding: 0 22px !important;
    font-size: 14px;
    font-weight: 700;
    box-shadow: none !important;
}
.home-domain-search .btn-primary,
#order-standard_cart .home-domain-search .btn-primary {
    background: linear-gradient(135deg, #1c6bff 0%, #6938ef 100%) !important;
    color: #ffffff !important;
}
.home-domain-search .btn-success,
#order-standard_cart .home-domain-search .btn-success {
    background: #16a34a !important;
    color: #ffffff !important;
}
.home-domain-search .multiselect-native-select,
.home-domain-search .multiselect-container,
.home-domain-search .advanced-input > label {
    position: relative;
    z-index: 2;
}
.home-domain-search .advanced-input > label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0 0 0 2px;
    padding: 0 4px;
    color: #0f172a !important;
    font-size: 12px;
    font-weight: 600;
}
.home-domain-search .multiselect {
    border: 0 !important;
    background: #f8fafc !important;
    color: #0f172a !important;
    font-size: 12px !important;
    font-weight: 600;
    height: 34px !important;
    border-radius: 9px !important;
    box-shadow: none !important;
}
.home-domain-search .tld-logos {
    position: relative;
    z-index: 2;
    margin-top: 18px;
}
.home-domain-search .btn-link {
    position: relative;
    z-index: 2;
    color: #ffffff !important;
    opacity: .92;
}

/* Domain pricing section */
.domain-pricing {
    margin-top: 18px;
}
.domain-pricing h4 {
    color: #0f172a !important;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: -0.02em;
    margin: 22px 0 12px;
}
.domain-pricing .tld-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 18px;
}
.domain-pricing .tld-filters a.badge,
.domain-pricing .tld-filters .badge {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 7px 11px;
    border-radius: 999px;
    border: 1px solid #dbe5f2;
    background: #ffffff !important;
    color: #334155 !important;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none !important;
    box-shadow: none !important;
}
.domain-pricing .tld-filters a.badge:hover,
.domain-pricing .tld-filters a.badge.badge-success {
    border-color: #1c6bff !important;
    background: #eff6ff !important;
    color: #1c6bff !important;
}
.domain-pricing .table-container {
    overflow: auto;
    border: 1px solid #e6edf7;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: none !important;
}
.domain-pricing table.table,
.domain-pricing .table-list {
    margin-bottom: 0 !important;
    color: #0f172a !important;
    background: #ffffff !important;
}
.domain-pricing table.table thead th,
.domain-pricing .table-list thead th {
    background: #f8fafc !important;
    color: #334155 !important;
    border-bottom: 1px solid #e6edf7 !important;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
    padding: 14px 16px !important;
    white-space: nowrap;
}
.domain-pricing table.table tbody td,
.domain-pricing .table-list tbody td {
    color: #0f172a !important;
    border-top: 1px solid #eef2f7 !important;
    padding: 14px 16px !important;
    vertical-align: middle !important;
    font-size: 14px;
    background: #ffffff !important;
}
.domain-pricing table.table tbody tr:nth-child(even) td {
    background: #fbfdff !important;
}
.domain-pricing table.table tbody tr:hover td {
    background: #f8fbff !important;
}
.domain-pricing table.table tbody td:first-child {
    font-weight: 800;
    font-size: 15px;
    color: #0f172a !important;
}
.domain-pricing table.table small {
    color: #64748b !important;
    font-size: 12px;
}
.domain-pricing .tld-sale-group {
    display: inline-flex;
    margin-left: 8px;
    padding: 3px 7px;
    border-radius: 999px;
    background: #fee2e2 !important;
    color: #b91c1c !important;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
}

/* Keep the domain registrar responsive and readable */
@media (max-width: 991px) {
    .home-domain-search .p-5 {
        padding: 32px 24px !important;
        min-height: 220px;
    }
    .home-domain-search h2,
    #order-standard_cart .home-domain-search h2 {
        font-size: 24px;
    }
}
@media (max-width: 575px) {
    .home-domain-search .input-group,
    .home-domain-search .input-group.advanced-input {
        display: block;
    }
    .home-domain-search .btn,
    #order-standard_cart .home-domain-search .btn {
        width: 100%;
        margin-top: 8px;
    }
    .home-domain-search textarea,
    .home-domain-search input.form-control {
        width: 100% !important;
    }
}
