:root{font-family:"Segoe UI",Arial,sans-serif;color:#193149;background:#eef3f7;font-synthesis:none}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:grid;place-items:center;padding:24px 20px}
.vm-login{width:100%;max-width:900px;display:grid;grid-template-columns:1.1fr 1fr;border:1px solid #dce5ed;border-radius:17px;overflow:hidden;box-shadow:0 18px 55px #1a3d5b12;background:white}
.vm-visual{position:relative;display:flex;flex-direction:column;overflow:hidden;color:white;background:#14354e;padding:24px 26px 20px}
.vm-visual-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.vm-wordmark{font-size:16px;font-weight:800;letter-spacing:.07em}
.vm-wordmark span{display:block;font-size:7px;font-weight:500;letter-spacing:.16em;margin-top:3px;color:#aec9dc}
.vm-tag{font-size:8px;letter-spacing:.06em;color:#c6dce9;border:1px solid #ffffff26;border-radius:20px;padding:6px 8px}
.vm-visual-copy{margin:28px 0 0;z-index:1}
.vm-eyebrow{display:block;font-size:9px;letter-spacing:.1em;font-weight:700;color:#8ac8ec}
h1{font-size:29px;line-height:1.2;letter-spacing:-.8px;margin:12px 0}
.vm-visual-copy p{font-size:12px;line-height:1.7;color:#c5d8e6;margin:0}
.vm-illustration{width:calc(100% + 52px);height:230px;object-fit:contain;display:block;margin:9px -26px 10px;}
.vm-visual-footer{margin-top:auto;display:flex;justify-content:space-between;align-items:center;font-size:9px;color:#adc6d6;gap:10px;z-index:1}
.vm-visual-footer i{display:inline-block;width:5px;height:5px;background:#83d9bf;border-radius:50%;margin-right:6px}
.vm-visual-footer>span:last-child{display:none}
.vm-panel{padding:26px 30px 20px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.vm-form-content{width:100%;max-width:340px;margin:auto}
.vm-logo{display:block;width:168px;max-width:100%;height:auto;margin-bottom:20px}
.vm-form-eyebrow{color:#2475a9;font-size:8px}
h2{font-size:24px;letter-spacing:-.6px;line-height:1.25;margin:8px 0}
.vm-intro{font-size:12px;color:#748497;line-height:1.6;margin:0 0 18px}
label{display:block;font-size:12px;font-weight:600;margin:14px 0 6px}
input{font:inherit;font-size:14px;width:100%;height:40px;padding:9px 11px;border:1px solid #cbd8e4;border-radius:7px;color:#193149;background:#fff;min-width:0}
input::placeholder{color:#96a3b0}
input:focus{outline:3px solid #2b80b51c;border-color:#287eb7}
.vm-password-field{position:relative}
.vm-password-field input{padding-right:83px}
.vm-password-field button{position:absolute;right:4px;top:4px;height:32px;padding:0 8px;font:inherit;font-size:11px;color:#246b9e;border:0;border-radius:5px;background:transparent;cursor:pointer}
.vm-password-field button:hover{background:#eef5fa}
.vm-submit{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;min-height:40px;margin:18px 0 14px;border:0;border-radius:7px;background:#176da9;color:white;font:inherit;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 4px 10px #176da91a}
.vm-submit:hover{background:#12598c}
.vm-links{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.vm-links a{color:#426b8c;font-size:11px;text-decoration:none}
.vm-links a:hover{text-decoration:underline;text-underline-offset:3px}
.vm-help{margin:22px 0 0;border-top:1px solid #e9eef3;padding-top:14px;font-size:11px;line-height:1.6;color:#8997a5}
.vm-help strong{font-weight:400;color:#63798e}
.vm-panel-footer{margin-top:22px;font-size:9px;color:#95a2af;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.vm-error{border:1px solid #f0c7c7;border-radius:7px;background:#fff4f3;color:#a03139;font-size:12px;line-height:1.6;padding:10px 12px;margin:0 0 14px}
button:focus-visible,a:focus-visible{outline:3px solid #73b8e5;outline-offset:3px}
@media(max-width:900px){.vm-tag{display:none}.vm-panel{padding-left:25px;padding-right:25px}h1{font-size:27px}}
@media(max-width:760px){body{padding:16px 12px}.vm-login{display:block;max-width:380px;border-radius:14px}.vm-visual{display:none}.vm-panel{padding:24px 25px 20px}.vm-logo{width:155px;margin:0 auto 18px}.vm-form-eyebrow{font-size:8px}h2{font-size:24px}.vm-intro{margin-bottom:17px}.vm-help{margin-top:20px}.vm-panel-footer{margin-top:20px}input{font-size:16px}}
@media(max-width:360px){.vm-panel{padding:21px 20px 18px}.vm-links{gap:12px}.vm-panel-footer span{display:none}}
@media(max-height:620px) and (max-width:760px){body{padding-top:10px;padding-bottom:10px}.vm-logo{width:140px;margin-bottom:15px}.vm-help{margin-top:16px;padding-top:11px}.vm-panel-footer{margin-top:16px}}
.vm-visual{background:radial-gradient(ellipse at 80% 55%,#315967 0,transparent 65%),linear-gradient(135deg,#142c42,#1c3f52)}.vm-greeting{padding:10px 12px;background:#eff6fa;border-radius:7px;color:#44697e;font-size:12px;line-height:1.6;margin-top:18px}