
.vsdl-public-login-template{margin:0;background:#fff}
.vsdl-public-login-page{background:#f8fbff;color:#111b31}
.vsdl-public-login-shell{width:min(calc(100% - 40px),1280px);margin:0 auto}
.vsdl-public-login-hero{position:relative;overflow:hidden;padding:136px 0 58px;background:radial-gradient(circle at 82% 18%,rgba(35,125,255,.2),transparent 26%),radial-gradient(circle at 90% 52%,rgba(113,94,255,.12),transparent 18%),linear-gradient(112deg,#020a1a,#07183a);color:#fff}
.vsdl-public-login-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(64,126,228,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(64,126,228,.07) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(180deg,transparent,#000 15%,#000 85%,transparent)}
.vsdl-public-login-hero:after{content:"";position:absolute;left:-8%;right:-8%;bottom:-160px;height:280px;border-radius:50%;background:radial-gradient(ellipse,rgba(24,111,255,.22),transparent 67%);filter:blur(14px)}
.vsdl-public-login-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr);align-items:center;gap:34px}
.vsdl-public-login-eyebrow{display:inline-flex;align-items:center;gap:10px;color:#5ea8ff;font-size:12px;font-weight:800;letter-spacing:.14em}.vsdl-public-login-eyebrow i{display:block;width:28px;height:1px;background:currentColor}
.vsdl-public-login-copy h1{max-width:700px;margin:20px 0 0;font-size:clamp(42px,4.4vw,66px);line-height:1.02;letter-spacing:-.052em;text-wrap:balance}.vsdl-public-login-copy h1 span{color:#72b7ff}.vsdl-public-login-copy>p{max-width:650px;margin:24px 0 0;color:#c5d2e4;font-size:16px;line-height:1.78}
.vsdl-public-login-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:34px}.vsdl-public-login-points article{padding:16px 16px 18px;border:1px solid rgba(131,176,239,.16);border-radius:18px;background:linear-gradient(180deg,rgba(15,36,73,.78),rgba(6,20,45,.74));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.vsdl-public-login-points strong{display:block;font-size:15px;line-height:1.35}.vsdl-public-login-points span{display:block;margin-top:9px;color:#9db3d3;font-size:13px;line-height:1.6}
.vsdl-public-login-showcase{position:relative;min-height:560px}
.vsdl-public-login-visual{position:relative;min-height:560px}.vsdl-public-login-glow{position:absolute;inset:12% 5% 0 15%;border-radius:50%;background:radial-gradient(circle,rgba(39,126,255,.35),transparent 66%);filter:blur(34px)}.vsdl-public-login-orbit{position:absolute;left:10%;right:4%;top:8%;bottom:5%;border:1px solid rgba(78,132,230,.34);border-radius:50%;transform:rotate(-8deg)}.vsdl-public-login-dot-grid{position:absolute;right:0;top:15%;width:180px;height:180px;border-radius:26px;background-image:radial-gradient(rgba(145,189,255,.36) 1px, transparent 1px);background-size:12px 12px;opacity:.48;transform:rotate(10deg)}
.vsdl-public-login-window{position:absolute;inset:24px 16px 0 20px;padding:18px;border:1px solid rgba(102,151,226,.24);border-radius:30px;background:linear-gradient(180deg,rgba(9,20,41,.84),rgba(4,14,32,.88));box-shadow:0 36px 76px rgba(0,0,0,.42);transform:perspective(1500px) rotateY(-8deg) rotateX(2deg)}.vsdl-public-login-window:before{content:"";position:absolute;inset:16px;border:1px solid rgba(255,255,255,.07);border-radius:22px;pointer-events:none}
.vsdl-public-login-window>header{display:flex;align-items:center;gap:7px;height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:rgba(255,255,255,.04);color:#8da8d1;font-size:10px;font-weight:700}.vsdl-public-login-window>header i{display:block;width:8px;height:8px;border-radius:50%;background:#4e6d9b}.vsdl-public-login-window>header i:nth-child(2){background:#5b7db2}.vsdl-public-login-window>header i:nth-child(3){background:#6f91c7}.vsdl-public-login-window>header span{margin-left:6px}
.vsdl-public-login-body{display:grid;grid-template-columns:116px 1fr;gap:16px;margin-top:14px;min-height:428px}.vsdl-public-login-body aside{display:grid;align-content:start;gap:10px;padding:14px;border:1px solid rgba(255,255,255,.06);border-radius:18px;background:rgba(255,255,255,.03)}.vsdl-public-login-body aside strong{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#176fff,#3157ee);color:#fff;font-size:18px;font-weight:900}.vsdl-public-login-body aside span{min-height:34px;padding:0 12px;border-radius:11px;background:rgba(255,255,255,.02);color:#8ea4c5;font-size:10px;font-weight:700;line-height:34px}.vsdl-public-login-body aside span.is-active{background:rgba(23,111,255,.16);color:#dce9ff}
.vsdl-public-login-body main{padding:14px;border:1px solid rgba(255,255,255,.06);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.02))}.vsdl-public-login-dashboard-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.vsdl-public-login-dashboard-head small{display:block;color:#718ab0;font-size:8px;font-weight:800;letter-spacing:.14em}.vsdl-public-login-dashboard-head b{display:block;margin-top:4px;color:#eef4ff;font-size:14px}.vsdl-public-login-dashboard-head em{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 12px;border:1px solid rgba(66,197,124,.26);border-radius:999px;background:rgba(66,197,124,.13);color:#91e2b0;font-size:9px;font-style:normal;font-weight:800;letter-spacing:.08em}
.vsdl-public-login-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:14px}.vsdl-public-login-kpis article{padding:13px 12px;border:1px solid rgba(255,255,255,.06);border-radius:15px;background:rgba(255,255,255,.02)}.vsdl-public-login-kpis small{display:block;color:#7088aa;font-size:8px;font-weight:800;letter-spacing:.12em}.vsdl-public-login-kpis strong{display:block;margin-top:7px;color:#eef4ff;font-size:12px;line-height:1.45}
.vsdl-public-login-chart{display:grid;grid-template-columns:repeat(4,1fr);align-items:end;gap:10px;height:140px;margin-top:16px;padding:14px;border:1px solid rgba(255,255,255,.06);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015))}.vsdl-public-login-chart span{display:block;border-radius:14px 14px 8px 8px;background:linear-gradient(180deg,#2c80ff,#1f5ed5)}.vsdl-public-login-chart .bar-1{height:50px}.vsdl-public-login-chart .bar-2{height:84px}.vsdl-public-login-chart .bar-3{height:116px;background:linear-gradient(180deg,#6b68ff,#5149e8)}.vsdl-public-login-chart .bar-4{height:74px;background:linear-gradient(180deg,#39ca82,#23a966)}
.vsdl-public-login-bottom{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:16px;padding:13px 14px;border:1px solid rgba(255,255,255,.06);border-radius:16px;background:rgba(255,255,255,.03)}.vsdl-public-login-bottom>div{display:flex;align-items:center;gap:10px}.vsdl-public-login-bottom i{width:8px;height:8px;border-radius:50%;background:#3bce7a}.vsdl-public-login-bottom small{color:#9eb3d0;font-size:10px}.vsdl-public-login-bottom button{min-width:88px;height:32px;border:0;border-radius:9px;background:linear-gradient(135deg,#176fff,#3157ee);color:#fff;font-size:10px;font-weight:800}
.vsdl-public-login-float{position:absolute;z-index:4;padding:14px 16px;border:1px solid rgba(106,156,230,.24);border-radius:18px;background:linear-gradient(180deg,rgba(18,37,72,.97),rgba(8,23,50,.96));box-shadow:0 24px 48px rgba(0,0,0,.34);color:#fff}.vsdl-public-login-float small{display:block;color:#7e94b5;font-size:8px;font-weight:800;letter-spacing:.10em}.vsdl-public-login-float strong{display:block;margin-top:6px;font-size:12px;line-height:1.45}.vsdl-public-login-float.is-security{left:-6px;top:62px;max-width:220px}.vsdl-public-login-float.is-access{right:-6px;bottom:24px;max-width:240px}
.vsdl-public-login-main{padding:0 0 84px;background:linear-gradient(180deg,#fff,#f7faff)}.vsdl-public-login-main-grid{display:grid;grid-template-columns:minmax(340px,.78fr) minmax(520px,1.22fr);gap:28px;align-items:start;transform:translateY(-30px)}
.vsdl-public-login-info-card,.vsdl-public-login-auth{border:1px solid #dfe8f3;border-radius:24px;background:#fff;box-shadow:0 22px 48px rgba(18,48,91,.08)}.vsdl-public-login-info-card{padding:30px;background:radial-gradient(circle at 10% 12%,rgba(39,126,255,.08),transparent 28%),#fff}.vsdl-public-login-info-card>span,.vsdl-public-login-badge{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;background:#eef5ff;color:#247cff;font-size:10px;font-weight:800;letter-spacing:.12em}.vsdl-public-login-info-card h2,.vsdl-public-login-auth h2{margin:16px 0 0;color:#111b31;font-size:34px;line-height:1.14;letter-spacing:-.04em}.vsdl-public-login-info-card p,.vsdl-public-login-auth>p{margin:15px 0 0;color:#62738d;font-size:15px;line-height:1.8}.vsdl-public-login-info-card ul{display:grid;gap:13px;margin:24px 0 0;padding:0;list-style:none}.vsdl-public-login-info-card li{position:relative;padding-left:24px;color:#263b59;font-size:14px;font-weight:700;line-height:1.6}.vsdl-public-login-info-card li:before{content:"";position:absolute;left:0;top:9px;width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#176fff,#56b8ff)}
.vsdl-public-login-auth{padding:30px}.vsdl-public-login-notice{margin:18px 0 0;padding:14px 16px;border-radius:14px;font-size:13px;font-weight:700}.vsdl-public-login-notice p{margin:0}.vsdl-public-login-notice.is-error{border:1px solid #f3cbcb;background:#fff3f3;color:#b13b3b}.vsdl-public-login-notice.is-success{border:1px solid #bde9d0;background:#effbf4;color:#19834d}
.vsdl-public-login-form{display:grid;gap:16px;margin-top:20px}.vsdl-public-login-form label{display:block}.vsdl-public-login-form label>span{display:block;color:#263a58;font-size:12px;font-weight:800}.vsdl-public-login-form input[type=text],.vsdl-public-login-form input[type=password]{width:100%;height:54px;margin-top:8px;padding:0 15px;border:1px solid #d9e4f1;border-radius:12px;background:#f9fbfe;color:#172741;font-size:15px;outline:0;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.vsdl-public-login-form input:focus{border-color:#3989f8;background:#fff;box-shadow:0 0 0 4px rgba(39,126,255,.10)}
.vsdl-public-login-form-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.vsdl-public-login-form-row a,.vsdl-public-login-help a{color:#1769ee;font-size:13px;font-weight:800;text-decoration:none}.vsdl-public-login-remember{display:inline-flex!important;align-items:center;gap:9px;color:#62738d;font-size:13px;font-weight:700}.vsdl-public-login-remember input{margin:0}
.vsdl-public-login-form button,.vsdl-public-login-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 24px;border:0;border-radius:12px;background:linear-gradient(135deg,#176fff,#3157ee);box-shadow:0 15px 32px rgba(31,99,255,.23);color:#fff;font-size:14px;font-weight:800;text-decoration:none;cursor:pointer}.vsdl-public-login-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}.vsdl-public-login-actions .is-secondary{border:1px solid #dbe6f5;background:#fff;box-shadow:none;color:#1769ee}.vsdl-public-login-help{margin:16px 0 0}.vsdl-public-login-footnote{margin-top:20px;padding:15px 16px;border:1px solid #e4edf8;border-radius:14px;background:#f8fbff;color:#6b7d94;font-size:13px;line-height:1.7}.vsdl-public-login-auth.is-logged-in{text-align:left}
@media(max-width:1180px){.vsdl-public-login-grid{grid-template-columns:1fr}.vsdl-public-login-copy{text-align:center}.vsdl-public-login-copy>p{margin-left:auto;margin-right:auto}.vsdl-public-login-points{grid-template-columns:repeat(3,minmax(0,1fr))}.vsdl-public-login-showcase{width:min(760px,100%);margin:0 auto}.vsdl-public-login-main-grid{grid-template-columns:1fr;transform:translateY(-18px)}}
@media(max-width:860px){.vsdl-public-login-points{grid-template-columns:1fr}.vsdl-public-login-form-row{flex-direction:column;align-items:flex-start}}
@media(max-width:720px){.vsdl-public-login-shell{width:min(calc(100% - 26px),1280px)}.vsdl-public-login-hero{padding:108px 0 40px}.vsdl-public-login-copy h1{font-size:40px}.vsdl-public-login-copy>p{font-size:15px}.vsdl-public-login-showcase,.vsdl-public-login-visual{min-height:410px}.vsdl-public-login-dot-grid{display:none}.vsdl-public-login-window{inset:8px 0 0 0;padding:10px;border-radius:20px;transform:none}.vsdl-public-login-window>header{height:28px;padding:0 10px;border-radius:10px;font-size:8px}.vsdl-public-login-window>header i{width:6px;height:6px}.vsdl-public-login-body{grid-template-columns:90px 1fr;gap:10px;min-height:300px}.vsdl-public-login-body aside{padding:10px;border-radius:14px}.vsdl-public-login-body aside strong{width:36px;height:36px;font-size:14px}.vsdl-public-login-body aside span{min-height:26px;padding:0 8px;border-radius:8px;font-size:8px;line-height:26px}.vsdl-public-login-dashboard-head b{font-size:11px}.vsdl-public-login-dashboard-head em{min-height:24px;padding:0 8px;font-size:7px}.vsdl-public-login-kpis{grid-template-columns:1fr}.vsdl-public-login-kpis article{padding:10px}.vsdl-public-login-chart{height:88px;padding:10px}.vsdl-public-login-bottom{padding:10px}.vsdl-public-login-bottom small,.vsdl-public-login-bottom button{font-size:8px}.vsdl-public-login-float{display:none}.vsdl-public-login-main{padding-bottom:56px}.vsdl-public-login-info-card,.vsdl-public-login-auth{padding:22px;border-radius:18px}.vsdl-public-login-info-card h2,.vsdl-public-login-auth h2{font-size:28px}.vsdl-public-login-form button,.vsdl-public-login-actions a{width:100%}.vsdl-public-login-actions{display:grid}}


/* 4.1.1 — Premium logged-in account view */
.vsdl-public-login-hero-logged{padding-bottom:82px}
.vsdl-public-login-user-line{display:flex;align-items:center;gap:14px;margin-top:22px}
.vsdl-public-login-avatar{display:grid;width:58px;height:58px;place-items:center;border:1px solid rgba(105,171,255,.34);border-radius:18px;background:linear-gradient(145deg,rgba(25,111,255,.34),rgba(76,79,222,.25));box-shadow:0 16px 30px rgba(19,78,174,.24);color:#fff;font-size:18px;font-weight:900;letter-spacing:.04em}
.vsdl-public-login-user-line small{display:block;color:#7fa7d8;font-size:10px;font-weight:800;letter-spacing:.13em}
.vsdl-public-login-user-line strong{display:block;margin-top:6px;color:#fff;font-size:18px;line-height:1.35}
.vsdl-public-login-session-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:30px}
.vsdl-public-login-session-meta article{min-height:84px;padding:15px 16px;border:1px solid rgba(142,181,235,.18);border-radius:17px;background:linear-gradient(180deg,rgba(17,42,82,.84),rgba(8,25,55,.75));box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.vsdl-public-login-session-meta small{display:block;color:#8ca7cc;font-size:9px;font-weight:800;letter-spacing:.13em}
.vsdl-public-login-session-meta strong{display:block;margin-top:9px;color:#f3f7ff;font-size:14px;line-height:1.45;overflow-wrap:anywhere}
.vsdl-public-login-session-meta strong.is-online{color:#8de0b0}
.vsdl-public-login-hero-actions{margin-top:26px}
.vsdl-public-login-hero-actions .is-secondary{border-color:rgba(133,175,238,.38);background:rgba(4,17,41,.5);color:#fff}
.vsdl-public-login-logged-main{padding:72px 0 82px;background:linear-gradient(180deg,#fff,#f6f9fd)}
.vsdl-public-login-logged-heading{text-align:center}
.vsdl-public-login-logged-heading>span{color:#247cff;font-size:10px;font-weight:800;letter-spacing:.14em}
.vsdl-public-login-logged-heading h2{margin:10px 0 0;color:#111b31;font-size:36px;line-height:1.16;letter-spacing:-.04em}
.vsdl-public-login-logged-heading p{max-width:680px;margin:13px auto 0;color:#657791;font-size:15px;line-height:1.75}
.vsdl-public-login-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:34px}
.vsdl-public-login-quick-grid>a{position:relative;display:grid;grid-template-columns:48px 1fr;gap:15px;min-height:210px;padding:22px;border:1px solid #dfe8f3;border-radius:22px;background:linear-gradient(180deg,#fff,#f9fbff);box-shadow:0 18px 38px rgba(18,48,91,.07);color:#111b31;text-decoration:none;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.vsdl-public-login-quick-grid>a:hover{transform:translateY(-5px);border-color:#b9d4fa;box-shadow:0 26px 48px rgba(18,48,91,.12)}
.vsdl-public-login-quick-grid>a>span{display:grid;width:46px;height:46px;place-items:center;border-radius:15px;background:linear-gradient(145deg,#eaf3ff,#d7e8ff);color:#176fff;font-size:13px;font-weight:900}
.vsdl-public-login-quick-grid h3{margin:2px 0 0;font-size:19px;line-height:1.3;letter-spacing:-.025em}
.vsdl-public-login-quick-grid p{margin:10px 0 0;color:#657791;font-size:13px;line-height:1.7}
.vsdl-public-login-quick-grid strong{display:block;margin-top:18px;color:#1769ee;font-size:12px}
.vsdl-public-login-account-bar{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:28px;padding:22px 24px;border:1px solid #dbe6f4;border-radius:22px;background:#fff;box-shadow:0 18px 38px rgba(18,48,91,.06)}
.vsdl-public-login-account-bar>div{display:flex;align-items:center;gap:15px}
.vsdl-public-login-account-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;background:linear-gradient(145deg,#eafaf1,#d6f3e2);color:#1a9a5b;font-size:18px;font-weight:900}
.vsdl-public-login-account-bar strong{display:block;color:#172741;font-size:15px}.vsdl-public-login-account-bar p{margin:6px 0 0;color:#6d7f98;font-size:13px;line-height:1.55}
.vsdl-public-login-account-bar>a{display:inline-flex;align-items:center;justify-content:center;min-width:126px;min-height:46px;padding:0 18px;border:1px solid #d9e5f4;border-radius:12px;background:#f8fbff;color:#1769ee;font-size:13px;font-weight:800;text-decoration:none}
.is-logged-in-view .vsdl-public-login-bottom button{min-width:106px}
@media(max-width:1180px){.vsdl-public-login-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.vsdl-public-login-hero-logged{padding-bottom:48px}.vsdl-public-login-user-line{justify-content:center}.vsdl-public-login-session-meta{grid-template-columns:1fr}.vsdl-public-login-logged-main{padding:54px 0}.vsdl-public-login-logged-heading h2{font-size:29px}.vsdl-public-login-quick-grid{grid-template-columns:1fr}.vsdl-public-login-quick-grid>a{min-height:0}.vsdl-public-login-account-bar{align-items:stretch;flex-direction:column}.vsdl-public-login-account-bar>a{width:100%}}


/* 4.1.2 — Premium custom lost-password and reset-password flow */
.vsdl-public-password-hero{padding-bottom:78px}
.vsdl-public-password-main{padding-bottom:84px}
.vsdl-public-password-info ol{margin:0;padding:0;list-style:none}
.vsdl-public-password-steps{display:grid;gap:13px;margin-top:24px!important}
.vsdl-public-password-steps li{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:14px;padding:14px;border:1px solid #e1eaf5;border-radius:16px;background:#f9fbff}
.vsdl-public-password-steps li>b{display:grid;width:46px;height:46px;place-items:center;border-radius:14px;background:linear-gradient(145deg,#eaf3ff,#d7e8ff);color:#176fff;font-size:12px;font-weight:900}
.vsdl-public-password-steps li>span{display:block}
.vsdl-public-password-steps strong{display:block;color:#172741;font-size:14px;line-height:1.4}
.vsdl-public-password-steps small{display:block;margin-top:5px;color:#71829a;font-size:12px;line-height:1.55}
.vsdl-public-password-auth .vsdl-public-login-form button{width:100%}
.vsdl-public-password-back{margin-top:18px;text-align:center}
.vsdl-public-password-success-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px}
.vsdl-public-password-success-actions:has(a:only-child){grid-template-columns:1fr}
.vsdl-public-password-success-actions a{width:100%;text-align:center}
.vsdl-public-password-auth .vsdl-public-login-notice p+p{margin-top:7px}
@media(max-width:720px){.vsdl-public-password-hero{padding-bottom:44px}.vsdl-public-password-main{padding-bottom:56px}.vsdl-public-password-success-actions{grid-template-columns:1fr}.vsdl-public-password-steps li{grid-template-columns:42px 1fr}.vsdl-public-password-steps li>b{width:40px;height:40px}}
