:root{--navy:#013a71;--navy-dark:#002b56;--cyan:#46d6de;--line:#dce3e9;--ink:#1c2b39;--muted:#6e7b87;--serif:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}.icon{width:18px;height:18px;display:block}.no-script{padding:12px;text-align:center;background:#fff3cd;color:#674d00}
.login-page{min-height:100vh}.login-header{height:82px;display:flex;align-items:center;padding:0 clamp(24px,5vw,66px);border-bottom:1px solid #ebeff2;background:#fff}.login-header img{width:164px;height:auto}
.login-layout{min-height:calc(100vh - 82px);display:grid;grid-template-columns:minmax(430px,1.05fr) minmax(420px,.95fr)}
.login-brand-panel{background:var(--navy);color:#fff;display:flex;align-items:center;padding:70px clamp(44px,7vw,108px);position:relative;overflow:hidden}.login-brand-panel::after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(70,214,222,.18);border-radius:50%;right:-170px;bottom:-150px;box-shadow:0 0 0 70px rgba(70,214,222,.035),0 0 0 140px rgba(70,214,222,.025)}
.login-brand-content{position:relative;z-index:1;max-width:650px}.login-kicker,.form-kicker{display:block;color:var(--cyan);font-size:10px;letter-spacing:2.1px;font-weight:800}.login-brand-content h1{font-family:var(--serif);font-size:clamp(46px,5vw,72px);line-height:1.08;margin:18px 0 24px;letter-spacing:-1px}.login-brand-content>p{font-size:17px;line-height:1.7;color:#d8e6f0;max-width:570px;margin:0}.brand-rule{width:76px;height:4px;background:var(--cyan);margin:38px 0 28px}.login-points{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.login-points div{min-width:0}.login-points strong{display:block;color:var(--cyan);font-size:31px;line-height:1;font-weight:700;margin-bottom:9px}.login-points span{font-family:var(--serif);font-weight:700;font-size:14px;line-height:1.3;color:#fff}
.login-form-panel{display:flex;align-items:center;justify-content:center;padding:48px}.login-card{width:min(100%,390px)}.form-kicker{color:#52818a}.login-card h2{font-family:var(--serif);font-size:36px;color:var(--navy);margin:10px 0 8px}.login-card>p:not(.login-message){font-size:13px;line-height:1.65;color:var(--muted);margin:0 0 31px}.login-card label{display:block;color:#405464;font-size:12px;font-weight:700;margin:17px 0 8px}.login-card input{width:100%;height:48px;border:1px solid #d7dfe6;border-radius:7px;outline:0;padding:0 13px;color:#203344;background:#fff;font-size:14px}.login-card input:focus{border-color:#63a6b7;box-shadow:0 0 0 3px rgba(70,214,222,.18)}.login-card input::placeholder{color:#a0aab3}.login-submit{margin-top:25px;width:100%;height:49px;border:0;border-radius:7px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 17px;font-weight:700;font-size:12px;cursor:pointer}.login-submit:hover{background:var(--navy-dark)}.login-submit:disabled{opacity:.6;cursor:not-allowed}.login-submit .icon{color:var(--cyan)}.login-note{margin-top:19px;display:flex;align-items:center;justify-content:center;gap:7px;color:#7b8792;font-size:10px}.login-note .icon{width:14px;height:14px;color:#54959c}.login-message{padding:10px 12px;border-radius:7px;background:#fff0ee;border:1px solid #efcbc7;color:#8c2f27;font-size:11px;line-height:1.55;margin:0 0 16px}.login-message.info{background:#eef8fb;border-color:#cce8ed;color:#366773}
@media(max-width:900px){.login-layout{grid-template-columns:1fr}.login-brand-panel{min-height:290px;padding:38px 32px}.login-brand-content h1{font-size:46px;margin:14px 0 14px}.login-brand-content>p{font-size:14px}.brand-rule{margin:24px 0 20px}.login-points{gap:15px}.login-points strong{font-size:24px}.login-points span{font-size:12px}.login-form-panel{padding:40px 28px 58px}}
@media(max-width:600px){.login-header{height:70px;padding:0 20px}.login-header img{width:145px}.login-layout{min-height:calc(100vh - 70px)}.login-brand-panel{min-height:auto;padding:29px 22px}.login-brand-content h1{font-size:36px}.login-brand-content>p{font-size:12px}.brand-rule{width:55px;height:3px;margin:20px 0 15px}.login-points{display:none}.login-form-panel{padding:34px 22px 48px;align-items:flex-start}.login-card h2{font-size:31px}.login-card>p:not(.login-message){margin-bottom:24px}}
