.login-page{background:#fff;color:#142332}
.login-layout{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(430px,1fr);max-width:none;margin:0;padding:0;min-height:100vh;min-height:100svh}
.login-visual{position:relative;min-width:0;overflow:hidden;background:#eaf2f5;display:flex;align-items:center}
.login-product{display:block;width:100%;height:auto;object-fit:contain;mask-image:linear-gradient(to bottom,transparent,black 12%,black 88%,transparent)}
.login-workspace{display:flex;flex-direction:column;min-width:0;padding:42px clamp(36px,5.4vw,104px) 30px;min-height:100svh;background:#fff}
.login-brand{display:flex;align-items:center;gap:12px;align-self:flex-start;color:#132438;text-decoration:none}
.login-brand:hover{text-decoration:none}
.login-brand img{display:block;width:52px;height:52px;object-fit:contain}
.login-wordmark{display:flex;flex-direction:column;gap:1px}
.login-wordmark>span:first-child{font-size:1.75rem;font-weight:750;letter-spacing:-.08em;line-height:1;color:#0cb4c3}
.wordmark-werk{color:#132438}
.login-brand-label{font-size:.62rem;letter-spacing:.16em;font-weight:600;line-height:1.7;color:#6b7c8c}
.login-form-panel{width:100%;max-width:390px;margin:auto;padding:64px 0}
.login-kicker{font-size:.75rem;letter-spacing:.15em;font-weight:650;color:#537086;margin-bottom:18px}
.login-form-panel h1{font-size:clamp(2.1rem,3.1vw,3rem);font-weight:650;line-height:1.12;letter-spacing:-.065em;margin-bottom:26px}
.login-form-panel h1>span{font-weight:400;color:#40596c;letter-spacing:-.05em}
.login-intro{font-size:1rem;font-weight:600;color:#172b3d;margin:0 0 24px}
.login-form{display:grid;gap:0}
.login-form label{display:block;font-size:.875rem;font-weight:500;line-height:1.5;margin-bottom:8px;color:#435b6e}
.login-form input:not([type=hidden]){height:50px;padding:12px 14px;border:1px solid #cbd6df;border-radius:5px;background:#fff;transition:border-color .15s,box-shadow .15s;margin-bottom:22px}
.login-form input:not([type=hidden]):hover{border-color:#91a7b8}
.login-form input:not([type=hidden]):focus{border-color:#277a97;box-shadow:0 0 0 3px #158aac12;outline:none}
.login-form input:not([type=hidden]):focus-visible{outline:2px solid #277a97;outline-offset:2px}
.login-form .login-submit{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:8px;min-height:52px;padding:14px 20px;border-radius:5px;background:#112d43;font-size:.9375rem;font-weight:600;transition:background .15s}
.login-form .login-submit:hover{background:#1e4962}
.login-submit>span{float:none;font-size:1.25rem;color:#70d9e4;font-weight:400}
.login-footer{display:flex;justify-content:space-between;gap:16px;font-size:.75rem;color:#667d8e;line-height:1.6}
@media(min-width:1600px){.login-layout{grid-template-columns:1.22fr 1fr}.login-form-panel{max-width:420px}}
@media(max-width:1050px){.login-layout{grid-template-columns:1fr}.login-visual{height:clamp(230px,40vw,400px);min-height:0;justify-content:center}.login-product{width:auto;max-width:100%;height:100%;object-fit:contain;mask-image:linear-gradient(to right,transparent,black 8%,black 92%,transparent)}.login-workspace{min-height:calc(100svh - clamp(230px,40vw,400px));padding:32px max(32px,calc((100vw - 440px)/2)) 24px}.login-form-panel{max-width:440px;padding:42px 0}.login-form-panel h1{font-size:2.5rem}.login-brand img{width:44px;height:44px}.login-wordmark>span:first-child{font-size:1.55rem}}
@media(max-width:540px){.login-visual{height:auto;aspect-ratio:3/2}.login-product{width:100%;height:auto;mask-image:none}.login-workspace{padding:27px 26px 22px;min-height:calc(100svh - 66.67vw)}.login-form-panel{padding:32px 0}.login-kicker{margin-bottom:12px;font-size:.7rem}.login-form-panel h1{font-size:2.1rem;margin-bottom:24px}.login-intro{margin-bottom:20px}.login-footer{font-size:.7rem}.login-brand-label{font-size:.6rem}}
@media(prefers-reduced-motion:reduce){.login-form input,.login-form .login-submit{transition:none}}
