/* ==========================
   REGISTER ONLINE PAGE CSS
========================== */

.register-page{
  background: linear-gradient(135deg, #fff7f2, #f2fbff);
}

/* Banner */
.page-banner{
  position: relative;
  height: 200px;
  overflow: hidden;
}

.page-banner-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page-banner-overlay{
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(14,58,93,0.85), rgba(255,107,53,0.75));
  display: flex;
  align-items: center;
}

.page-banner-title{
  color: #fff;
  font-weight: 800;
  margin: 0;
  font-size: 40px;
}

.page-breadcrumb{
  margin-top: 10px;
  font-weight: 700;
  font-size: 14px;
  color: rgba(255,255,255,0.9);
}

.page-breadcrumb a{
  color: #fff;
  text-decoration: none;
}

.page-breadcrumb a:hover{
  color: #0b2f4a;
}

.page-breadcrumb span{
  margin: 0 6px;
}

/* ===== Premium Glass Register Card ===== */
.register-card{
  position: relative;
  border-radius: 22px;
  padding: 34px;

  /* ✅ Glass effect */
  background: linear-gradient(
    135deg,
    rgba(255, 255, 255, 0.55),
    rgba(255, 255, 255, 0.20)
  );
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);

  /* ✅ Border + shadow */
  border: 1px solid rgba(255, 255, 255, 0.35);
  box-shadow: 0 18px 45px rgba(0,0,0,0.12);

  transition: 0.35s ease;
  overflow: hidden;
}

/* ✅ Soft gradient glow inside card */
.register-card::before{
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top left,
      rgba(255, 107, 53, 0.22),
      transparent 55%),
    radial-gradient(circle at bottom right,
      rgba(0, 180, 216, 0.18),
      transparent 55%);
  z-index: 0;
}

/* ✅ keep content above gradient */
.register-card > *{
  position: relative;
  z-index: 2;
}

/* ✅ Hover effect */
.register-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 25px 60px rgba(0,0,0,0.18);
  border-color: rgba(255, 107, 53, 0.45);
}

.register-title{
  font-weight: 800;
  color: #0B1320;
  margin-bottom: 5px;
}

.register-subtitle{
  color: #666;
  font-weight: 600;
  font-size: 14px;
}

.custom-input{
  border-radius: 14px;
  padding: 12px 14px;
  border: 1px solid rgba(0,0,0,0.10);
  font-weight: 600;
  background: rgba(255,255,255,0.75);
  transition: 0.3s ease;
}

.custom-input:focus{
  background: #fff;
  border-color: #ff6b35;
  box-shadow: 0 0 0 0.25rem rgba(255,107,53,0.20);
}

/* Button */
.btn-register-now{
  background: linear-gradient(135deg, #ff6b35, #ff944d);
  color: #fff;
  font-weight: 800;
  border: none;
  padding: 12px;
  border-radius: 12px;
  transition: 0.3s ease;
}

.btn-register-now:hover{
  transform: translateY(-2px);
  box-shadow: 0 15px 30px rgba(0,0,0,0.15);
  color: #fff;
}


/* Tabs style */
.reg-tabs{
  background: rgba(255,255,255,0.55);
  padding: 10px;
  border-radius: 14px;
  display: flex;
  gap: 10px;
}

.reg-tabs .nav-link{
  border-radius: 12px;
  font-weight: 800;
  color: #0B1320;
  padding: 10px 16px;
  transition: 0.3s ease;
}

.reg-tabs .nav-link.active{
  background: linear-gradient(135deg, #ff6b35, #ff944d);
  color: #fff;
}

.download-format{
  margin-left: 8px;
  font-size: 12px;
  font-weight: 800;
  color: #ff6b35;
  text-decoration: none;
}

.download-format:hover{
  text-decoration: underline;
}

/* Next / Prev buttons */
.btn-next-tab,
.btn-prev-tab{
  border: none;
  padding: 10px 18px;
  border-radius: 12px;
  font-weight: 800;
  transition: 0.3s ease;
}

.btn-next-tab{
  background: #0E3A5D;
  color: #fff;
}

.btn-next-tab:hover{
  background: #ff6b35;
  transform: translateY(-2px);
  color: #fff;
}

.btn-prev-tab{
  background: #eaeaea;
  color: #111;
}

.btn-prev-tab:hover{
  background: #dcdcdc;
}
.req{
  color: red;
  font-weight: 800;
}

.hint-red{
  color: red;
  font-weight: 700;
  font-size: 12px;
  margin-left: 6px;
}


.select2-container .select2-selection--single{
  height: 46px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(0,0,0,0.10) !important;
  padding: 8px 10px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow{
  height: 46px !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height: 28px !important;
  font-weight: 600;
}


.vendor-note{
  background: rgba(255,107,53,0.12);
  border: 1px solid rgba(255,107,53,0.35);
  padding: 12px 14px;
  border-radius: 14px;
  font-weight: 700;
  font-size: 13px;
  color: #0B1320;
}

.vendor-note a{
  color: #ff6b35;
  font-weight: 800;
  text-decoration: none;
}

.vendor-note a:hover{
  text-decoration: underline;
}

.vendor-link{
  margin-left: 6px;
}

.form-footer-note{
  margin-top: 18px;
}

.form-footer-line{
  border-top: 1px solid rgba(0,0,0,0.15);
  margin-bottom: 12px;
}

.footer-note-text{
  font-size: 13px;
  font-weight: 700;
  color: #444;
  line-height: 1.6;
  text-align: center;
}

.footer-note-text a{
  color: #ff6b35;
  font-weight: 800;
  text-decoration: none;
}

.footer-note-text a:hover{
  text-decoration: underline;
}


.field-error{
  color: red;
  font-size: 12px;
  font-weight: 700;
  margin-top: 4px;
}

.input-error{
  border-color: red !important;
}

.select2-container--default .select2-selection--single.input-error{
  border-color: red !important;
}



