.captcha{display:flex;flex-direction:column;gap:1rem}.captcha-container{display:flex;flex-direction:row;align-items:end;gap:1rem}.captcha-image{border-radius:8px;width:300px;height:50px}.captcha-refresh{padding:0;width:2rem;height:2rem}.toast-backdrop{position:fixed;inset:0;background-color:#0006;z-index:999;animation:fadeIn .2s ease-out forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.toast{position:fixed;z-index:1000;color:#000;top:50%;left:50%;transform:translate(-50%,-50%);min-width:400px;max-width:500px;animation:scaleIn .2s ease-out forwards}.toast-content{background:#fff;padding:3rem 2rem;text-align:center;border-radius:8px;box-shadow:0 8px 32px #0000001f;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.05);position:relative}.toast-body{overflow:hidden}.toast-additional-text{color:#666;line-height:1.5}.toast-links{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap}.toast-link{color:#1c388f;text-decoration:none;font-weight:500;padding:.5rem 2rem;border-radius:8px;border:2px solid #1c388f;transition:all .2s ease;margin-top:2rem}.toast-link:hover{background-color:#1c388f;color:#fff}.toast-message{font-weight:500;font-size:1rem;flex:1;line-height:1.4;margin-bottom:1.5rem;display:block}.toast-close{background:none;color:#000;border:none;font-size:24px;padding:18px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;position:absolute;top:.5rem;right:.5rem}.toast-close:hover,.toast-close:focus,.toast-close:active{background:#1c388f1a!important;box-shadow:none!important}@keyframes scaleIn{0%{transform:translate(-50%,-50%) scale(.8);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes scaleOut{0%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(-50%,-50%) scale(.8);opacity:0}}.toast.toast-exit{animation:scaleOut .2s ease-in forwards}@media(max-width:768px){.toast-content{padding:3rem 1.5rem 1.5rem}}@media(max-width:480px){.toast{min-width:unset;max-width:unset;width:80vw}.toast .toast-content{padding:3rem 1rem 1.5rem}.toast-popup .toast-links{flex-direction:column;align-items:center}}.app{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(to bottom right,#1c388f,#009bb5)}.container{background:#fff;border-radius:12px;box-shadow:0 20px 40px #1c388f33;padding:3rem 3rem 1rem;width:100%;max-width:500px;position:relative}.header{text-align:center;margin-bottom:2rem}.header .header-content{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1rem}.header .vnw-logo{max-height:60px;width:auto;object-fit:contain;align-self:flex-end}.footer{text-align:right;font-size:.875rem;color:#1c388f;display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label[for=email]{display:flex;justify-content:space-between}.form-group .field-info{font-size:.875rem;color:#1c388fcc;font-style:italic}.form-group .error-message{font-size:.875rem;color:#e74c3c;margin-top:.25rem;margin-top:2px}.form-group.department{visibility:hidden;height:0}.submit-button{margin-top:1rem}.spinner{display:inline-block;width:1.1rem;height:1.1rem}.spinner .spinner-ring{width:1.1rem;height:1.1rem;border:2px solid white;border-top:2px solid transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:768px){.app{padding:0 1rem}.container{padding:2rem}.header .vnw-logo{max-height:50px}}@media(max-width:480px){.container{padding:1.5rem}.header .vnw-logo{max-height:40px}}:root{font-family:Open Sans,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}a{font-weight:500;text-decoration:none;color:#1c388f}a:hover,a:focus{color:#009bb5}body{margin:0;min-width:380px;min-height:100vh}h1{line-height:1.1;color:#1c388f;margin-bottom:.5rem;margin-top:0;font-size:2rem;font-weight:600}p{color:#009bb5;font-size:1.1rem;margin:0}input{padding:.8rem;border:2px solid rgba(28,56,143,.2);border-radius:8px;font-size:1rem;color:#1c388f;transition:border-color .3s ease,box-shadow .3s ease}input:hover{border-color:#1c388f4d}input:focus{outline:none;border-color:#009bb5;box-shadow:0 0 0 2px #009bb51a}input.invalid{border-color:#e74c3c}input:disabled{background-color:#f8f9fa;border-color:#dee2e6;color:#6c757d;cursor:not-allowed}button{border-radius:8px;padding:1rem 2rem;font-size:1.1rem;border:none;font-weight:600;font-family:inherit;background-color:#1c388f;color:#fff;cursor:pointer;position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}button:hover:not(:disabled),button:active:not(:disabled),button:focus:not(:disabled){box-shadow:0 4px 8px #1c388f33;background:#1c388fe6}button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}button.outline{background:#fff;color:#1c388f;border:2px solid #1c388f}button.outline:hover:not(:disabled),button.outline:active:not(:disabled),button.outline:focus:not(:disabled){background:#fff;box-shadow:0 0 4px #1c388fb3}form{display:flex;flex-direction:column;gap:1rem}form label{font-weight:500;color:#1c388f;font-size:1rem}.hidden{visibility:hidden}
