.login-page{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:#fff}
.login-header{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid var(--line);gap:20px}
.login-header .brand img{width:144px}.back-link{display:inline-flex;align-items:center;gap:9px;min-height:44px;font-size:13px;text-decoration:none;color:var(--muted)}
.login-layout{flex:1;width:100%;max-width:1280px;margin:auto}.login-panel{padding:38px 24px 42px}.login-content{max-width:400px;margin:auto}
.login-content h1{font-size:40px;letter-spacing:-1.8px;line-height:1.15;margin:24px 0 12px}.login-intro{font-size:15px;color:var(--muted);line-height:1.7;margin-bottom:24px}
.preview-notice{background:#f1f6f8;border:1px solid #dce8ee;border-radius:8px;color:#48616f;font-size:12px;line-height:1.65;padding:14px 16px;margin-bottom:26px}.preview-notice strong{display:block;font-weight:600;color:var(--ink)}
.login-page .form-label{font-size:14px;font-weight:600;margin-bottom:9px}.login-page .form-control{min-height:54px;padding:13px 15px;font-size:16px;border-color:#bdcbd3;border-radius:7px;color:var(--ink)}.login-page .form-control::placeholder{color:#72818b}.login-page .form-control:focus{border-color:var(--blue);box-shadow:0 0 0 3px #005d971f}
.password-field{position:relative}.password-field input{padding-right:90px}.password-toggle{position:absolute;right:5px;top:5px;min-height:44px;padding:0 11px;background:transparent;border:0;border-radius:4px;font-size:12px;font-weight:600;color:var(--blue)}
.access-help{font-size:12px;line-height:1.7;color:var(--muted);margin:18px 0 26px}.login-button{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:54px;padding:12px 19px;border-radius:7px;background:var(--blue);color:#fff;font-size:15px;font-weight:600}.login-button:hover,.login-button:active{background:#004875!important;color:white!important}.login-button span{font-size:22px;font-weight:400}.login-page button:focus-visible{outline:3px solid #46a8d3;outline-offset:3px}.login-page #login-feedback{font-size:13px;line-height:1.6}
.login-story{display:none}.login-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding:22px 24px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.login-footer strong{color:var(--ink);font-weight:600}
@media(min-width:768px){.login-header{padding:22px 40px}.login-header .brand img{width:165px}.login-panel{padding:55px 40px}.login-content h1{font-size:46px}.login-footer{padding:24px 40px}}
@media(min-width:992px){.login-layout{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;padding:32px;gap:32px}.login-panel{display:flex;align-items:center;padding:36px 24px}.login-content{width:100%}.login-story{display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;border-radius:12px;background:#0b4162;color:#e5f2f9;padding:30px 34px;min-height:620px}.story-top,.story-bottom{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.4px;color:#b6d2e1}.login-territory{width:calc(100% + 68px);margin:0 -34px}.story-copy{position:relative;padding:10px 0 40px}.story-kicker{font-size:9px;letter-spacing:2px;color:#a4d3e6}.story-copy h2{font-size:34px;line-height:1.2;font-weight:500;margin:18px 0}.story-copy p{font-size:14px;line-height:1.8;color:#c3dbe7;max-width:310px;margin:0}.story-bottom{border-top:1px solid #ffffff26;padding-top:21px;letter-spacing:0}.story-bottom span+span{font-size:20px}}
