.auth-modern{min-height:91vh;background:linear-gradient(135deg,#f8fafc,#eef1fc);display:flex;align-items:center;justify-content:center;padding:2rem;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative}.auth-modern *{box-sizing:border-box}.auth-language-switcher{position:absolute;top:1.5rem;right:1.5rem;z-index:10}.auth-container{width:100%;max-width:440px}.auth-header{text-align:center;margin-bottom:2rem}.auth-picto{height:48px;width:auto;margin-bottom:1rem}.auth-lang-switcher{display:flex;justify-content:center;gap:.5rem;background:#5d7cf614;padding:4px;border-radius:10px}.auth-lang-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;border-radius:8px;font-size:.8125rem;font-weight:500;color:#9ea5b8;text-decoration:none;transition:all .2s ease}.auth-lang-btn .flag-emoji{font-size:1rem}.auth-lang-btn:hover{color:#343a50;background:#ffffff80}.auth-lang-btn.active{color:#343a50;background:#fff;box-shadow:0 2px 8px #00000014}.auth-card{background:#fff;border-radius:24px;padding:2.5rem;box-shadow:0 20px 40px #5d7cf61a,0 4px 12px #0000000d;position:relative;overflow:hidden}.auth-card:before{content:"";position:absolute;top:-60px;right:-60px;width:180px;height:180px;background:#5d7cf614;border-radius:50%;filter:blur(40px);pointer-events:none}.auth-card:after{content:"";position:absolute;bottom:-40px;left:-40px;width:120px;height:120px;background:#18c7b30f;border-radius:50%;filter:blur(30px);pointer-events:none}.auth-card-content{position:relative;z-index:1}.auth-title{font-size:1.5rem;font-weight:700;color:#343a50;margin-bottom:.5rem;text-align:center}.auth-subtitle{font-size:.9375rem;color:#9ea5b8;text-align:center;margin-bottom:2rem;line-height:1.5}.auth-form .form-group,.auth-form .input{margin-bottom:1.25rem}.auth-form label,.auth-form .control-label{display:block;font-size:.8125rem;font-weight:600;color:#343a50;margin-bottom:.5rem}.auth-form .form-control,.auth-form input[type=email],.auth-form input[type=password],.auth-form input[type=text]{width:100%;padding:.875rem 1rem;font-size:.9375rem;color:#343a50;background:#f8fafc;border:2px solid transparent;border-radius:12px;transition:all .2s ease;font-family:inherit}.auth-form .form-control::-moz-placeholder,.auth-form input[type=email]::-moz-placeholder,.auth-form input[type=password]::-moz-placeholder,.auth-form input[type=text]::-moz-placeholder{color:#9ea5b8}.auth-form .form-control::placeholder,.auth-form input[type=email]::placeholder,.auth-form input[type=password]::placeholder,.auth-form input[type=text]::placeholder{color:#9ea5b8}.auth-form .form-control:focus,.auth-form input[type=email]:focus,.auth-form input[type=password]:focus,.auth-form input[type=text]:focus{outline:none;background:#fff;border-color:#307fe2;box-shadow:0 0 0 4px #5d7cf61a}.auth-form .form-control:hover:not(:focus),.auth-form input[type=email]:hover:not(:focus),.auth-form input[type=password]:hover:not(:focus),.auth-form input[type=text]:hover:not(:focus){background:#f1f5f9}.auth-form .hint,.auth-form .help-block{font-size:.75rem;color:#9ea5b8;margin-top:.375rem}.auth-form .error-message,.auth-form .field_with_errors+.error,.auth-form .invalid-feedback{font-size:.75rem;color:#ff4d76;margin-top:.375rem}.auth-form .field_with_errors input{border-color:#ff4d76}.auth-form .field_with_errors input:focus{box-shadow:0 0 0 4px #ff4d761a}.auth-form .boolean,.auth-form .checkbox{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.auth-form .boolean input[type=checkbox],.auth-form .checkbox input[type=checkbox]{width:18px;height:18px;accent-color:#307FE2;cursor:pointer}.auth-form .boolean label,.auth-form .checkbox label{margin-bottom:0;font-size:.875rem;font-weight:500;color:#343a50;cursor:pointer}.auth-submit{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:linear-gradient(135deg,#307fe2,#4a6ae5);color:#fff;font-size:.9375rem;font-weight:600;padding:.875rem 2rem;border:none;border-radius:12px;box-shadow:0 8px 24px #5d7cf659;cursor:pointer;transition:all .3s ease;font-family:inherit}.auth-submit:hover{transform:translateY(-2px);box-shadow:0 12px 32px #5d7cf673}.auth-submit:active{transform:translateY(0)}.auth-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-links{margin-top:1.5rem;text-align:center}.auth-links a{display:inline-block;font-size:.875rem;color:#307fe2;text-decoration:none;font-weight:500;transition:color .2s ease}.auth-links a:hover{color:#4a6ae5;text-decoration:underline}.auth-links br{display:none}.auth-links a+a{margin-top:.5rem;display:block}.auth-footer{margin-top:2rem;text-align:center}.auth-footer-logo{opacity:.4}.auth-footer-logo svg,.auth-footer-logo img{height:24px;width:auto}.auth-alert,.auth-card #error_explanation{padding:1rem;border-radius:12px;margin-bottom:1.5rem;font-size:.875rem;line-height:1.5}.auth-alert.alert-success,.auth-card .alert-success#error_explanation,.auth-alert.notice,.auth-card .notice#error_explanation{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.auth-alert.alert-danger,.auth-card #error_explanation,.auth-alert.alert-error,.auth-alert.alert{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.auth-alert.alert-warning,.auth-card .alert-warning#error_explanation{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}.auth-alert.alert-info,.auth-card .alert-info#error_explanation{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}.auth-card #error_explanation h2{font-size:.875rem;font-weight:600;margin-bottom:.5rem}.auth-card #error_explanation ul{margin:0;padding-left:1.25rem}.auth-card #error_explanation li{font-size:.8125rem}.auth-icon svg,.auth-icon i{width:28px;height:28px;color:#fff}.mui-language-switcher{margin:0}.mui-language-toggle{position:relative;display:flex;background:#9ea5b81a;border-radius:12px;padding:4px;backdrop-filter:blur(10px);border:1px solid rgba(158,165,184,.15)}.mui-language-toggle-slider{position:absolute;top:4px;left:4px;width:calc(50% - 4px);height:calc(100% - 8px);background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;transition:transform .3s ease}.mui-language-toggle-btn{flex:1;padding:.5rem .75rem;border:none;background:transparent;color:#9ea5b8;font-size:.875rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;position:relative;z-index:1;transition:color .2s}.mui-language-toggle-btn.active{color:#343a50}.mui-language-toggle-btn:hover:not(.active){color:#727c98}.mui-language-toggle-btn .flag-emoji{font-size:16px;line-height:1}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{padding-right:3rem!important}.password-input-wrapper .password-toggle{position:absolute;right:1rem;background:none;border:none;padding:0;cursor:pointer;color:#9ea5b8;transition:color .2s ease;display:flex;align-items:center;justify-content:center}.password-input-wrapper .password-toggle:hover{color:#307fe2}.password-input-wrapper .password-toggle:focus{outline:none}.auth-icon{width:64px;height:64px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#307fe2,#4a6ae5);border-radius:16px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #5d7cf64d}.auth-icon svg{width:28px;height:28px;color:#fff}.auth-icon.auth-icon-success{background:linear-gradient(135deg,#18c7b3,#14a89a);box-shadow:0 8px 24px #18c7b34d}.auth-icon.auth-icon-error{background:linear-gradient(135deg,#ff4d76,#e6436a);box-shadow:0 8px 24px #ff4d764d}.auth-back-link{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;color:#307fe2;text-decoration:none;font-weight:500;transition:color .2s ease}.auth-back-link:hover{color:#4a6ae5;text-decoration:underline}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
