*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-family:"Segoe UI", Arial, sans-serif;
}

body{
  min-height:100vh;
  background:linear-gradient(135deg,#061735,#0b4c88);
  padding:35px 15px;
}

.page-wrapper{
  max-width:1050px;
  margin:auto;
}

.form-card{
  background:#ffffff;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 20px 50px rgba(0,0,0,0.25);
}

.form-header{
  text-align:center;
  background:linear-gradient(135deg,#07204a,#123c7c);
  color:white;
  padding:35px 20px;
}

.form-header img{
  width:90px;
  height:90px;
  border-radius:50%;
  background:white;
  padding:6px;
  margin-bottom:12px;
}

.form-header h1{
  font-size:32px;
  margin-bottom:8px;
}

.form-header p{
  font-size:16px;
  opacity:0.9;
}

form{
  padding:35px;
}

.form-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:22px;
}

.input-group{
  display:flex;
  flex-direction:column;
}

.input-group.full{
  grid-column:1/3;
}

label{
  font-weight:700;
  color:#08234d;
  margin-bottom:8px;
}

label span{
  color:red;
}

input{
  padding:14px 15px;
  border:1.5px solid #cbd5e1;
  border-radius:9px;
  font-size:15px;
  outline:none;
  transition:0.3s;
}

input:focus{
  border-color:#ff8800;
  box-shadow:0 0 0 3px rgba(255,136,0,0.15);
}

input[type="file"]{
  background:#f8fafc;
}

small{
  color:red;
  font-size:13px;
  min-height:18px;
  margin-top:5px;
}

h3{
  grid-column:1/3;
  margin-top:10px;
  padding:13px 18px;
  background:#f1f5f9;
  color:#0b376d;
  border-left:5px solid #ff8800;
  border-radius:8px;
}

button{
  width:100%;
  margin-top:30px;
  padding:16px;
  background:linear-gradient(135deg,#ff9900,#ff6600);
  color:white;
  border:none;
  border-radius:10px;
  font-size:19px;
  font-weight:800;
  cursor:pointer;
  transition:0.3s;
}

button:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 25px rgba(255,102,0,0.35);
}

.input-group.error input{
  border-color:red;
}

.input-group.success input{
  border-color:#16a34a;
}

@media(max-width:768px){
  .form-grid{
    grid-template-columns:1fr;
  }

  .input-group.full,
  h3{
    grid-column:1;
  }

  form{
    padding:24px;
  }

  .form-header h1{
    font-size:25px;
  }
}

.college-logo{
    width:95px;
    height:95px;
    object-fit:contain;
    background:#ffffff;
    border-radius:50%;
    padding:6px;
    margin-bottom:15px;
    box-shadow:0 5px 15px rgba(0,0,0,0.2);
}