:root{font-family:"IBM Plex Sans",Arial,Helvetica,sans-serif;color:#16384b;background:#eaf1f4;font-size:18px}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a{cursor:pointer}h1,h2{font-weight:600}
button:focus-visible,input:focus-visible,a:focus-visible{outline:4px solid #f3a24c;outline-offset:3px}
.login-shell{display:grid;grid-template-columns:minmax(390px,1.15fr) minmax(400px,1fr);min-height:100vh;max-width:1600px;margin:auto;background:#fff}
.brand-panel{display:flex;flex-direction:column;justify-content:space-between;background:#073e56;color:#fff;padding:38px 48px;min-height:620px;position:relative;overflow:hidden}
.brand-panel::after{content:"";position:absolute;width:440px;height:440px;border:1px solid #ffffff20;border-radius:50%;right:-220px;bottom:-130px;box-shadow:0 0 0 85px #ffffff09,0 0 0 170px #ffffff06;pointer-events:none}
.brand-name{font-size:1.2rem;letter-spacing:-.02em;position:relative;z-index:1}.brand-name strong{font-weight:600}
.brand-content{max-width:630px;position:relative;z-index:1}.brand-line{display:block;width:72px;height:5px;background:#6cd0ce;border-radius:8px;margin-bottom:34px}.kicker,.form-kicker{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;font-weight:600}.kicker{color:#b7d9e0}
h1{font-size:clamp(2.2rem,4vw,4.2rem);line-height:1.08;letter-spacing:-.045em;margin:16px 0 22px}.brand-content>p:last-of-type{max-width:500px;color:#d5e8ec;line-height:1.55;font-size:1.05rem}
.flow{display:flex;gap:9px;flex-wrap:wrap;margin-top:42px}.flow span{border:1px solid #9dc7cf55;border-radius:8px;padding:10px 12px;font-size:.82rem;color:#e6f4f5}
.brand-foot{font-size:.8rem;color:#b8d1d9;position:relative;z-index:1}
.form-panel{display:grid;place-items:center;padding:38px 48px}.form-inner{width:min(100%,480px)}.form-kicker{color:#08747d}h2{font-size:2.2rem;letter-spacing:-.04em;margin:12px 0 10px}.form-description{color:#526d7a;line-height:1.5;margin:0 0 32px}
.field{margin-bottom:20px}.field label{display:block;font-weight:600;margin-bottom:9px}.field input{width:100%;height:64px;border:2px solid #a5bec8;border-radius:12px;padding:12px 16px;color:#16384b;background:#fff}.field input:focus{border-color:#08747d}
.field-error{display:block;color:#a23a24;font-size:.85rem;margin-top:5px}.field-error:empty{display:none}.error-summary{color:#a23a24;font-weight:600;margin-bottom:12px}.error-summary:empty{display:none}.error-summary ul{padding-left:20px}
.remember{display:flex;gap:12px;align-items:flex-start;line-height:1.4;margin:22px 0 28px;cursor:pointer}.remember input{width:23px;height:23px;accent-color:#08747d;flex:none;margin-top:1px}
.submit{display:grid;place-items:center;width:100%;min-height:66px;background:#075777;border:0;border-radius:12px;color:white;text-decoration:none;font-weight:600;padding:12px 20px}.submit:hover{background:#064963}.form-foot{color:#607883;font-size:.85rem;line-height:1.5;margin-top:26px}
.simple-panel{width:min(90%,540px);margin:15vh auto;background:#fff;border-radius:20px;padding:42px}.simple-panel h1{font-size:2rem}.simple-panel p{line-height:1.5}
@media(max-width:880px){.login-shell{grid-template-columns:1fr}.brand-panel{min-height:300px;padding:28px}.brand-content{margin:35px 0}.brand-content h1{font-size:2.2rem;max-width:620px}.brand-content>p:last-of-type{margin-bottom:0}.flow,.brand-foot,.brand-line{display:none}.form-panel{padding:40px 24px}}
@media(max-width:500px){.brand-panel{min-height:240px}.brand-content h1{font-size:1.9rem}.form-panel{padding:32px 18px}.field input{height:62px}}
