/* Scoped login layout: independent of the operations workspace form styles. */
#login{display:grid;grid-template-columns:minmax(0,1fr) minmax(480px,1fr);min-height:100vh;min-height:100svh;background:#f2f5ee}
#login[hidden]{display:none}
#login .login-story{padding:180px clamp(40px,5vw,88px) 140px;min-width:0}
#login .login-story .brand{top:56px}
#login .login-story h1{font-size:clamp(32px,3.4vw,54px);line-height:1.65;margin:28px 0 20px;letter-spacing:2px}
#login .login-story p{font-size:15px;line-height:1.8;margin:0}
#login .story-bottom{bottom:48px}
#login .login-panel{display:flex;align-items:center;justify-content:center;padding:48px 32px;box-sizing:border-box;min-width:0;background:radial-gradient(ellipse at 100% 0%,#e5eedf 0,transparent 65%)}
#login #login-form{display:flex;flex-direction:column;gap:0;width:100%;max-width:440px;margin:0;padding:40px;box-sizing:border-box;border:1px solid #e0e8dd;border-radius:24px;background:#fffefa;box-shadow:0 16px 56px #234d3010;outline:none}
#login-form .eyebrow{font-size:10px;letter-spacing:2.4px;color:#819783;line-height:1.5}
#login #login-form h2{font-size:30px;line-height:1.4;letter-spacing:0;margin:16px 0 8px;color:#1d4030}
#login #login-form>p:not(#login-error){font-size:14px;line-height:1.7;color:#79867b;margin:0 0 32px}
#login #login-form label{display:flex;flex-direction:column;gap:10px;width:100%;margin:0 0 22px;font-size:13px;font-weight:500;line-height:1.5;color:#425d4a}
#login #login-form label input{display:block;box-sizing:border-box;width:100%;min-width:0;height:50px;margin:0;padding:0 16px;border:1px solid #d8e2d7;border-radius:10px;background:#fff;color:#254736;font:inherit;font-size:15px;outline:none;transition:border-color .15s,box-shadow .15s}
#login #login-form input::placeholder{color:#9aa59c;font-size:14px}
#login #login-form input:focus-visible{border-color:#246746;box-shadow:0 0 0 3px #24674618}
#login #login-error{font-size:13px;line-height:1.6;color:#b54739;margin:0 0 16px;overflow-wrap:anywhere}
#login #login-error:empty{display:none}
#login #login-form .primary{display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;height:52px;min-height:52px;padding:0 18px;margin:6px 0 0;border:0;border-radius:10px;background:#165e41;color:white;font-size:15px;font-weight:600;line-height:1;cursor:pointer}
#login #login-form .primary:hover{background:#114d35}
#login #login-form .primary:focus-visible{outline:3px solid #b4cbaa;outline-offset:3px}
#login #login-form .primary[disabled]{opacity:.6;cursor:wait}
#login #login-form>small{display:block;font-size:12px;line-height:1.6;text-align:center;margin:24px 0 0;color:#94a091}
@media(max-width:900px){#login{grid-template-columns:minmax(0,.85fr) minmax(420px,1fr)}#login .login-story{padding-left:32px;padding-right:24px}#login .login-panel{padding:32px 24px}#login .login-story h1{font-size:32px}}
@media(max-width:700px){#login{display:flex;flex-direction:column}#login .login-story{display:block;padding:28px 24px 24px;min-height:0}#login .login-story .brand{position:static;font-size:24px;letter-spacing:2px}#login .login-story .brand img{width:34px;height:34px}#login .login-story .brand small{margin-top:8px}#login .login-story h1,#login .login-story>.eyebrow,#login .login-story>p,#login .story-bottom{display:none}#login .login-panel{flex:1;padding:32px 20px;align-items:flex-start}#login #login-form{padding:28px 24px;border-radius:20px}#login #login-form h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){#login #login-form input{transition:none}}
