.engineer-login{min-height:100vh;width:100vw;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;transition:background-color .3s ease}.engineer-login-card{background:var(--card-bg, var(--secondary-bg));width:100vw;max-width:100vw;min-height:100vh;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 0;border-radius:0;box-shadow:none;transition:background .3s ease}.auth-logo{width:196px;margin-bottom:2rem;display:block}.engineer-login-card h1{margin:0 0 1.5rem;font-size:2rem;color:var(--accent-color);letter-spacing:1px;transition:color .3s ease}.error-message{color:var(--error-color);background:var(--error-bg, rgba(239, 68, 68, .1));padding:.8rem 1rem;border-radius:6px;margin-bottom:1.2rem;max-width:350px;width:90vw;text-align:center;border:1px solid var(--error-border, rgba(239, 68, 68, .2))}.engineer-login-card form{display:flex;flex-direction:column;align-items:stretch;width:90vw;max-width:350px}.form-group{margin-bottom:1.4rem;text-align:left;width:100%}.form-group label{font-weight:500;display:block;margin-bottom:.5rem;color:var(--text-secondary);font-size:.95rem}.form-group input{width:100%;padding:.75rem;border:1.5px solid var(--border-color);border-radius:6px;font-size:1rem;transition:all .2s ease;background:var(--input-bg, var(--secondary-bg));color:var(--text-color);box-sizing:border-box}.form-group input:focus{border-color:var(--accent-color);outline:none;box-shadow:0 0 0 2px #4c8af033}.login-button{padding:.85rem;background:var(--accent-color);color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s ease;margin-bottom:1.1rem;width:100%}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-button:hover:not(:disabled){background:var(--accent-dark, #2563eb);transform:translateY(-1px)}.register-link{color:var(--text-secondary);font-size:.95rem;text-align:center}.register-link a{color:var(--accent-color);text-decoration:underline;margin-left:4px;font-weight:600;transition:color .2s ease}.register-link a:hover{color:var(--accent-dark, #2563eb)}@media (max-width: 768px){.engineer-login-card{padding:2rem .5rem}.engineer-login-card h1{font-size:1.8rem}.auth-logo{width:160px;margin-bottom:1.5rem}}@media (max-width: 480px){.engineer-login-card{padding:1.5rem .25rem}.auth-logo{width:140px;margin-bottom:1.2rem}.engineer-login-card h1{font-size:1.5rem;margin-bottom:1.2rem}.form-group input{padding:.65rem;font-size:.95rem}.login-button{padding:.75rem;font-size:.95rem}.register-link{font-size:.9rem}}.theme-dark .engineer-login{background-blend-mode:overlay;background-color:#000000b3}.theme-dark .engineer-login-card{background:var(--card-bg, rgba(26, 32, 44, .95))}.form-group input:focus-visible,.login-button:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.login-button:disabled{animation:pulse 1.5s ease-in-out infinite}.login-button{-webkit-appearance:none;-moz-appearance:none;appearance:none}.theme-light .form-group input{background:var(--input-bg, #ffffff)}.theme-dark .form-group input{background:var(--input-bg, #2d3748)}.form-group input::placeholder{color:var(--text-secondary);opacity:.7}.form-group input:invalid:not(:focus):not(:placeholder-shown){border-color:var(--error-color)}.form-group input:valid:not(:focus):not(:placeholder-shown){border-color:var(--success-color, #10b981)}
