 @import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');



 body,
 html {
     height: 100%;
     margin: 0;
     /* font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; */
     font-family: "Roboto", sans-serif;
 }




 .videobx {
     position: fixed;
     /* Or absolute */
     inset: 0;
     width: 100%;
     height: 100%;
     overflow: hidden;
     z-index: -1;
 }

 .videobx video {
     position: absolute;
     max-width: 100%;
     top: 50%;
     left: 50%;
     min-width: 100%;
     min-height: 100%;
     width: auto;
     height: auto;
     transform: translate(-50%, -50%);
     object-fit: cover;
     /* Ensures video covers area, cropping if needed */
 }






 /* Background image container with overlay */
.bg-container {
    background-image: linear-gradient(rgba(100, 110, 210, 0.4), rgba(100, 110, 210, 0.4)), url('../images/');
    background-size: cover;
    background-position: center;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    z-index: 1;
    position: relative;
    flex-direction: column;
}

 /* Glassmorphism login card */
 .login-card {
     background: rgba(255, 255, 255, 0.15);
     backdrop-filter: blur(10px);
     -webkit-backdrop-filter: blur(10px);
     border: 1px solid rgba(255, 255, 255, 0.25);
     border-radius: 20px;
     padding: 40px;
     width: 100%;
     max-width: 601px;
     color: #ffffff;
     box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.3);
 }

.registercard {
    max-width: 920px;
    padding: 20px 20px;
}


 .brand-logo {
     max-width: 240px;
     height: auto;
 }

 /* Form input updates */
 .form-control {
     border-radius: 8px;
     padding: 12px 16px;
     border: 1px solid #ced4da;
 }

 .input-group-text {
     background-color: #ffffff;
     border-right: none;
     color: #6c757d;

     /* border-radius: 8px 0 0 8px; */
 }

.registerpage .input-group-text {
    height: 40px;
}

.registerpage .form-control.is-invalid, .registerpage .was-validated .form-control:invalid, .registerpage .form-select.is-invalid, .registerpage .was-validated .form-select:invalid {
    border-color: white;
}

.input-group .form-control {
    border-left: none;
    border-radius: 0 8px 8px 0;
}

 .input-group .form-control:focus {
     box-shadow: none;
     border-color: #ced4da;
 }

 .primarytext {
     color: #1a1aff;
     text-decoration: underline;
 }


 .btn-login {
     background-color: #1a1aff;
     border: none;
     padding: 12px;
     font-weight: bold;
     letter-spacing: 1px;
     border-radius: 8px;
     transition: background-color 0.2s;
 }

 .btn-login:hover {
     background-color: #0000cc;
 }

 .status-link {
     color: #ffffff;
     text-decoration: underline;
     letter-spacing: 1px;
     font-size: 0.9rem;
 }

 .support-text {
     font-size: 0.8rem;
     line-height: 1.5;
     opacity: 0.9;
 }

 .footer-links a {
     color: #ffffff;
     text-decoration: none;
     font-size: 0.85rem;
 }

 .footer-links a:hover {
     text-decoration: underline;
 }

 .dot-separator::after {
     content: " • ";
     padding: 0 8px;
     font-size: 2rem;
     vertical-align: middle;
     display: inline-block
 }

 .syoderbtn {
     border-top: .5px solid #ddd;
     border-bottom: .5px solid #ddd;
     padding: 12px;
 }
.registerpage .syoderbtn {padding:5px;
}

    .forminputs {
        display: flex;
        gap: 15px;
        flex-wrap: wrap;
        /*     max-height: 190px;*/
        /*     overflow: hidden;*/
        gap: 0px 15px;
        justify-content: space-between;
        transition: all 0.5s ease-in-out;
    }

 .forminputs:hover {
     overflow-y: auto;
     transition: all 0.5s ease-in-out;
 }

 .forminputs>* {
     width: 32%;
 }

.registercard .btn-login, .registercard .syoderbtn {
    max-width: 70%; margin:auto;
}

 .forminputs::-webkit-scrollbar {
     width: 5px;
 }

 .forminputs::-webkit-scrollbar-track {
     background: #1a1aff;
     ;
 }

 .forminputs::-webkit-scrollbar-thumb {
     background: #fff;
     border-radius: 2px;
     /* Adds rounded corners */
 }

 .forminputs::-webkit-scrollbar-thumb:hover {
     background: #555;
     /* Changes color on hover */
 }
.input-error {
    border: 1px solid #ff4d4d !important;
}
.error-text {
    color: #dc3545; /* Turns the text red */
    font-size: 0.85em; /* Makes it slightly smaller than regular text */
    display: block; /* Ensures it sits cleanly on its own line below the input */
    margin-top: 5px; /* Adds a tiny gap between the input and the text */
}
.radio-group {
    /*display: flex;*/
    gap: 15px;
    margin-top: 0px;
    margin-bottom: 10px;
}

    .radio-group label {
        font-weight: normal;
        cursor: pointer;
    }
.registemodule {
    display: flex;
    gap: 20px;
    text-align: center;
    justify-content: center;
}
.registemodule .radio-group{ display:flex; gap:20px;}
.registerpage .logobx {
    max-width: 250px;
    margin: auto;
}
.forminputs .input-group .form-control {
    height: 40px; padding :0 16px;
}
.forminputs .form-control::placeholder {font-size:14px;}
.captchbx .g-recaptcha {   
  
        transform: scale(0.77);
        transform-origin: 0 0;
   }
.captchbx{height:65px;}
.registerpage {
    padding: 10px 20px;
}
.error-text, .invalid-feedback {
    display: block;
    width: 100%;
    color: #fff !important;
    text-align: left;
}