*{margin:0;padding:0;box-sizing:border-box}:root{--primary-blue:#005daa;--primary-blue-dark:#004a8a;--primary-blue-light:#0070cc;--accent-blue:#0088cc;--text-dark:#333333;--text-medium:#666666;--text-light:#999999;--border-color:#d0d0d0;--bg-light:#f5f5f5;--bg-white:#ffffff;--link-blue:#0066cc;--link-hover:#004a99;--error-red:#d32f2f;--success-green:#388e3c;--font-primary:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;--font-size-base:16px;--font-size-small:14px;--font-size-large:18px;--font-size-xlarge:24px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-xxl:48px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 3px rgba(0,0,0,0.1);--shadow-md:0 4px 6px rgba(0,0,0,0.1);--shadow-lg:0 10px 20px rgba(0,0,0,0.15);--transition-fast:0.2s ease;--transition-medium:0.3s ease;--transition-slow:0.4s ease}body{font-family:var(--font-primary);font-size:var(--font-size-base);color:var(--text-dark);line-height:1.6;background-color:var(--bg-light);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app-container{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1 1;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg)}.login-page-wrap{width:100%;max-width:1000px;display:flex;flex-direction:column;align-items:stretch;gap:var(--spacing-lg)}.login-page-wrap .login-title{margin-bottom:0}.header{background-color:var(--bg-white);border-bottom:1px solid var(--border-color);padding:var(--spacing-md) var(--spacing-xl);box-shadow:var(--shadow-sm)}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.header-logo-link{display:inline-flex;align-items:center;text-decoration:none;color:inherit}.header-logo-link:hover .logo{transform:scale(1.05)}.logo{height:40px;width:auto;transition:transform var(--transition-fast)}.logo:hover{transform:scale(1.05)}.help-link{color:var(--link-blue);text-decoration:none;font-size:var(--font-size-base);display:flex;align-items:center;gap:var(--spacing-xs);transition:color var(--transition-fast)}.help-link:hover{color:var(--link-hover);text-decoration:underline}.help-icon{width:20px;height:20px;border:2px solid;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.login-container{max-width:1000px;width:100%;animation:fadeInUp .5s ease}.login-container-narrow{max-width:520px;background-color:var(--bg-white);border-radius:var(--radius-lg);border:1px solid var(--border-color);overflow:hidden}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-content{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--spacing-xl);gap:var(--spacing-xl)}.login-section{padding:var(--spacing-xxl);background-color:var(--bg-white);border-radius:var(--radius-lg);border:1px solid var(--border-color)}.login-section-left{border-right:none}.login-section-right{background-color:var(--bg-white)}.login-section-left .form-input{border:none;border-bottom:1px solid var(--border-color);border-radius:0;padding-left:0;padding-right:var(--spacing-md);padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.login-section-left .form-input:focus{box-shadow:none;border-bottom-color:var(--primary-blue)}.login-section-left .password-wrapper .form-input{padding-right:3.5rem}.twofa-content,.verify-content{padding:var(--spacing-xxl)}.twofa-intro{color:var(--text-medium);font-size:var(--font-size-base);margin-bottom:var(--spacing-xl);line-height:1.6}.twofa-form{gap:var(--spacing-xl)}.twofa-form,.twofa-options{display:flex;flex-direction:column}.twofa-option,.twofa-options{gap:var(--spacing-md)}.twofa-option{display:flex;align-items:center;padding:var(--spacing-lg);border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--bg-white);cursor:pointer;transition:all var(--transition-fast)}.twofa-option:hover{border-color:var(--primary-blue-light);background-color:rgba(0,93,170,.04)}.twofa-option-selected{border-color:var(--primary-blue);background-color:rgba(0,93,170,.06);box-shadow:0 0 0 1px var(--primary-blue)}.twofa-option-input{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.twofa-option-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;color:var(--text-medium)}.twofa-option-selected .twofa-option-icon{color:var(--primary-blue)}.twofa-option-disabled,.twofa-options-disabled .twofa-option{pointer-events:none;opacity:.6}.twofa-option-text{flex:1 1;display:flex;flex-direction:column;gap:var(--spacing-xs);text-align:left}.twofa-option-text strong{color:var(--text-dark);font-size:var(--font-size-base)}.twofa-option-desc{color:var(--text-medium);font-size:var(--font-size-small)}.verify-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.verify-code-inputs{display:flex;gap:var(--spacing-sm);justify-content:center;flex-wrap:wrap}.verify-code-input{width:48px;height:52px;text-align:center;font-size:var(--font-size-large);font-weight:600;padding:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:var(--font-primary);transition:all var(--transition-fast)}.verify-code-input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px rgba(0,93,170,.1)}.verify-resend{font-size:var(--font-size-small);color:var(--text-medium);text-align:center;margin:0}.button-link{background:none;border:none;cursor:pointer;padding:0;font-size:inherit}.verify-back{text-align:center;margin:0;margin-top:var(--spacing-sm)}.recover-content{padding:var(--spacing-xxl)}.recover-intro{color:var(--text-medium);font-size:var(--font-size-base);margin-bottom:var(--spacing-xl);line-height:1.6}.recover-check-email{color:var(--text-dark);font-weight:600;margin-bottom:var(--spacing-md)}.recover-form .form-group{margin-bottom:var(--spacing-xl)}.recover-content .form-input{border:none;border-bottom:1px solid var(--border-color);border-radius:0;padding-left:0;padding-right:0;padding-top:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.recover-content .form-input:focus{box-shadow:none;border-bottom-color:var(--primary-blue)}.recover-actions{display:flex;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.recover-content .login-button.recover-send-btn{width:auto;min-width:0;padding:6px 18px;font-size:var(--font-size-small);border-radius:4px;line-height:1.4}.recover-forgot-password{margin:0;font-size:var(--font-size-small)}.recover-card{background-color:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-xl);margin-top:var(--spacing-md)}.recover-card-title{font-size:var(--font-size-large);color:var(--text-dark);font-weight:600;margin-bottom:var(--spacing-md)}.recover-card-text{color:var(--text-medium);font-size:var(--font-size-base);line-height:1.6;margin-bottom:var(--spacing-md)}.recover-card-text:last-of-type{margin-bottom:var(--spacing-xl)}.recover-content .login-button.recover-return-btn{display:inline-block;width:auto;min-width:0;text-align:center;text-decoration:none;padding:6px 18px;font-size:var(--font-size-small)}.recover-return-btn:hover{text-decoration:none;color:var(--bg-white)}.login-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-button:disabled:hover{transform:none;box-shadow:none}.login-title{font-size:var(--font-size-xlarge);color:var(--text-dark);margin-bottom:var(--spacing-xl);font-weight:400}.notification-error{background-color:#fef2f2;border:1px solid var(--error-red);color:var(--error-red);padding:var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-small)}.form-group,.notification-error{margin-bottom:var(--spacing-lg)}.form-label{display:block;margin-bottom:var(--spacing-sm);color:var(--text-dark);font-weight:400}.form-input,.form-label{font-size:var(--font-size-base)}.form-input{width:100%;padding:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:var(--font-primary);transition:all var(--transition-fast);background-color:var(--bg-white)}.form-input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px rgba(0,93,170,.1)}.form-input::placeholder{color:var(--text-light)}.password-wrapper{position:relative;display:block}.password-wrapper .form-input{padding-right:3.5rem}.password-toggle{position:absolute;right:var(--spacing-sm);top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-medium);cursor:pointer;padding:var(--spacing-sm);font-size:var(--font-size-small);transition:color var(--transition-fast);white-space:nowrap}.password-toggle:hover{color:var(--primary-blue)}.password-toggle-icon{display:inline-flex;align-items:center;justify-content:center}.password-toggle-icon svg{width:18px;height:18px}.password-toggle-text{margin-left:var(--spacing-xs)}.login-button{width:100%;padding:var(--spacing-md) var(--spacing-lg);background-color:var(--primary-blue);color:var(--bg-white);border:none;border-radius:var(--radius-sm);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all var(--transition-fast);text-transform:none;font-family:var(--font-primary)}.login-button:hover{background-color:var(--primary-blue-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.login-button:active{transform:translateY(0)}.login-section-left .login-button{width:auto;min-width:0;padding:6px 18px;font-size:var(--font-size-small);border-radius:4px;line-height:1.4}.form-links{display:flex;justify-content:flex-start;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-md);font-size:var(--font-size-small)}.form-link{color:var(--link-blue);text-decoration:none;transition:color var(--transition-fast)}.form-link:hover{color:var(--link-hover);text-decoration:underline}.form-link-loading{cursor:wait;opacity:.8;pointer-events:none}.form-link-loading:hover{text-decoration:none}.divider{margin:var(--spacing-lg) 0;text-align:center;position:relative}.divider:before{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background-color:var(--border-color)}.divider-text{position:relative;background-color:var(--bg-white);padding:0 var(--spacing-md)}.create-account-text,.divider-text{color:var(--text-medium);font-size:var(--font-size-small)}.create-account-text{text-align:left;margin-top:0;margin-bottom:0}.login-page-wrap .create-account-text{margin-top:var(--spacing-md)}.section-title{font-size:var(--font-size-large);color:var(--text-dark);margin-bottom:var(--spacing-lg);font-weight:400}.link-group{margin-bottom:var(--spacing-xl)}.link-group-title{font-size:var(--font-size-base);color:var(--text-dark);margin-bottom:var(--spacing-md);font-weight:600}.link-list{list-style:none}.link-list li{margin-bottom:var(--spacing-sm)}.link-list a{color:var(--link-blue);text-decoration:none;font-size:var(--font-size-base);transition:color var(--transition-fast);display:inline-block}.link-list a:hover{color:var(--link-hover);text-decoration:underline}.footer{background-color:var(--bg-white);border-top:1px solid var(--border-color);padding:var(--spacing-lg) var(--spacing-xl);font-size:var(--font-size-small);color:var(--text-medium)}.footer-content{max-width:1200px;margin:0 auto;text-align:center}.footer-text{line-height:1.8;margin-bottom:var(--spacing-md)}.footer-links{display:flex;justify-content:center;gap:var(--spacing-lg);flex-wrap:wrap}.footer-link{color:var(--link-blue);text-decoration:none;transition:color var(--transition-fast)}.footer-link:hover{color:var(--link-hover);text-decoration:underline}@media (max-width:768px){.login-content{grid-template-columns:1fr;gap:var(--spacing-xxl)}.login-section-left{border-right:none;border-bottom:none;padding-bottom:0}.login-section-right{padding-top:var(--spacing-xxl)}.login-section{padding:var(--spacing-lg)}.header-content{padding:var(--spacing-sm);display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.header-content>:first-child{grid-column:2;justify-self:center}.header-content .help-link{grid-column:3;justify-self:end}.logo{height:32px}.footer-links{flex-direction:column;gap:var(--spacing-sm)}.login-section-left form{width:100%}.login-section-left .password-wrapper{display:flex;flex-direction:column;align-items:stretch}.login-section-left .password-wrapper .form-input{padding-right:var(--spacing-md)}.login-section-left .password-toggle{position:static;transform:none;align-self:flex-start;margin-top:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:0;color:var(--link-blue);text-decoration:underline;font-size:var(--font-size-base)}.login-section-left .password-toggle:hover{color:var(--link-hover)}.login-section-left .login-button{width:auto;min-width:100px;margin:0;display:block;box-sizing:border-box;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-small)}.login-section-left .form-links{flex-wrap:wrap}.login-section-left .form-links .form-link:not(:first-child){padding-left:var(--spacing-sm);border-left:1px solid var(--border-color)}}@media (max-width:480px){.login-section,.main-content{padding:var(--spacing-md)}.login-title{font-size:20px}.section-title{font-size:var(--font-size-base)}.form-links{flex-direction:column;gap:var(--spacing-sm)}.login-section-left .form-links{flex-direction:row;flex-wrap:wrap}.twofa-content,.verify-content{padding:var(--spacing-lg)}.verify-code-input{width:42px;height:48px;font-size:var(--font-size-base)}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--primary-blue);outline-offset:2px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading{animation:pulse 1.5s ease-in-out infinite}