.login-container{margin:0 30%;padding:40px 0}.login-logo-container{text-align:center;margin-bottom:24px}.login-logo{height:40px}.login-header{text-align:center;margin-bottom:24px}.login-title{color:var(--text-color);margin-bottom:8px;font-size:24px;font-weight:600}.login-subtitle{color:var(--the-gray);font-size:14px}.login-form{background-color:var(--white);border:var(--border-width) solid var(--the-light-gray);border-radius:12px;padding:24px}.login-form-section{flex-direction:column;gap:16px;display:flex}.login-field{flex-direction:column;gap:6px;display:flex}.login-message{color:var(--the-gray);font-size:14px;line-height:1.5}.login-field-error{color:var(--red);font-size:12px}.login-label{color:var(--text-color);font-size:14px;font-weight:500}.login-required{color:var(--red)}.login-input{width:100%;height:44px;color:var(--text-color);background-color:var(--white);border:var(--border-width) solid var(--the-light-gray);border-radius:var(--border-radius);box-sizing:border-box;outline:none;padding:10px 14px;font-size:15px;transition:border-color .2s,background-color .2s}.login-input:hover{border-color:var(--bobyard-blue)}.login-input:focus{border-color:var(--bobyard-blue);background-color:var(--alice-blue)}.login-input::placeholder{color:var(--the-gray)}.login-form-error{color:var(--red);background-color:var(--light-red);border:var(--border-width) solid var(--red);border-radius:var(--border-radius);margin-top:16px;padding:12px;font-size:14px}.login-form-success{color:var(--success-green);background-color:var(--light-green);border:var(--border-width) solid var(--success-green);border-radius:var(--border-radius);margin-top:16px;padding:12px;font-size:14px}.login-actions{border-top:var(--border-width) solid var(--the-light-gray);justify-content:flex-end;gap:16px;margin-top:20px;padding-top:20px;display:flex}.login-logo-image{height:60px}.login-button-primary{min-width:140px;min-height:44px;color:var(--white);background:var(--bobyard-blue);border-radius:var(--border-radius);appearance:none;opacity:1;cursor:pointer;border:none;justify-content:center;align-items:center;padding:12px 24px;font-size:15px;font-weight:500;line-height:1.2;transition:background-color .2s;display:inline-flex}.login-button-primary:hover:not(:disabled){background:var(--the-blue)}.login-button-primary:disabled{background:var(--the-blue-60);opacity:1;cursor:not-allowed}.sso-section{margin-top:20px}.sso-divider{color:var(--the-gray);align-items:center;gap:12px;margin:4px 0 16px;font-size:13px;display:flex}.sso-divider:before,.sso-divider:after{content:"";height:var(--border-width);background-color:var(--the-light-gray);flex:1}.sso-divider-text{text-transform:uppercase;letter-spacing:.04em}.sso-buttons{flex-direction:column;gap:12px;display:flex}.sso-button{width:100%;min-height:44px;color:var(--text-color);background-color:var(--white);border:var(--border-width) solid var(--the-light-gray);border-radius:var(--border-radius);appearance:none;cursor:pointer;justify-content:center;align-items:center;gap:10px;padding:12px 16px;font-size:15px;font-weight:500;transition:background-color .2s,border-color .2s;display:inline-flex}.sso-button:hover:not(:disabled){background-color:var(--alice-blue);border-color:var(--bobyard-blue)}.sso-button:focus-visible{outline:2px solid var(--bobyard-blue);outline-offset:2px}.sso-button:disabled{cursor:not-allowed;opacity:.6}.sso-button-logo{align-items:center;display:inline-flex}.login-footer{text-align:center;color:var(--text-color);flex-direction:column;gap:8px;margin-top:24px;font-size:14px;display:flex}@media only screen and (width<=500px){.login-wrapper{padding-top:40%;padding-left:15%;padding-right:15%}}.login-link{color:var(--bobyard-blue);text-decoration:none}.login-link:hover{text-decoration:underline}.login-button-link{color:var(--bobyard-blue);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.login-button-link:hover:not(:disabled){text-decoration:underline}.login-button-link:focus-visible{outline:2px solid var(--bobyard-blue);outline-offset:2px}.login-button-link:disabled{cursor:not-allowed;opacity:.6}@media only screen and (width<=900px){.login-container{margin:0 10%;padding:20px 0}}@media only screen and (width<=600px){.login-container{margin:0;padding:20px 15px}.login-form{padding:16px}.login-button-primary{width:100%}.login-actions{justify-content:stretch}.login-footer-container{margin-left:0%}}
