/* =========================
   REGISTER PAGE
========================= */

.register-section{
background:linear-gradient(135deg,#eef6ff,#f8fbff);
min-height:100vh;
padding:60px 0;
}

.register-card{
background:#fff;
border-radius:25px;
overflow:hidden;
box-shadow:0 15px 40px rgba(0,0,0,.12);
border:1px solid #e5e7eb;
}

.register-header{
background:linear-gradient(135deg,#1e3a8a,#2563eb);
color:#fff;
padding:30px;
text-align:center;
}

.register-header h2{
font-size:32px;
font-weight:800;
margin-bottom:10px;
}

.register-header p{
font-size:16px;
opacity:.95;
}

.form-label{
font-weight:700;
color:#1e293b;
margin-bottom:8px;
}

.form-control,
.form-select{
height:52px;
border-radius:12px;
border:2px solid #dbeafe;
box-shadow:none;
}

textarea.form-control{
height:auto;
min-height:120px;
}

.form-control:focus,
.form-select:focus{
border-color:#2563eb;
box-shadow:0 0 0 0.15rem rgba(37,99,235,.15);
}

/* readonly fields */

.bg-light{
background:#eef4ff !important;
font-weight:700;
color:#1e3a8a;
}

/* =========================
   ONLINE CLASS BOX
========================= */

.online-class-box{
background:linear-gradient(135deg,#eff6ff,#dbeafe);
padding:25px;
border-radius:18px;
border:2px solid #93c5fd;
}

.online-class-box h5{
font-weight:800;
color:#1e3a8a;
}

.online-class-box p{
margin-bottom:15px;
}

/* custom radio */

.form-check{
padding:12px 18px;
background:#fff;
border:2px solid #dbeafe;
border-radius:12px;
margin-right:15px;
cursor:pointer;
}

.form-check-input{
width:20px;
height:20px;
border:2px solid #2563eb;
cursor:pointer;
}

.form-check-label{
font-weight:700;
cursor:pointer;
margin-left:8px;
}

/* =========================
   PAYMENT SUMMARY
========================= */

.payment-summary{
border-radius:20px;
overflow:hidden;
box-shadow:0 10px 25px rgba(0,0,0,.10);
border:1px solid #e5e7eb;
}

.payment-header{
background:linear-gradient(135deg,#059669,#10b981);
padding:18px 25px;
color:#fff;
font-size:20px;
font-weight:800;
}

.payment-header i{
margin-right:8px;
}

.payment-body{
padding:25px;
background:#fff;
}

.summary-row{
display:flex;
justify-content:space-between;
align-items:center;
padding:12px 0;
border-bottom:1px dashed #d1d5db;
font-size:16px;
}

.summary-row span:last-child{
font-weight:700;
color:#111827;
}

/* Group Highlight */

.summary-value{
background:#1e3a8a;
color:#fff;
padding:6px 18px;
border-radius:30px;
font-weight:800;
}

/* Total */

.summary-total{
display:flex;
justify-content:space-between;
align-items:center;
padding-top:20px;
margin-top:10px;
font-size:24px;
font-weight:800;
color:#059669;
}

/* =========================
   SUBMIT BUTTON
========================= */

.btn-payment{
height:60px;
font-size:20px;
font-weight:800;
border:none;
border-radius:15px;
background:linear-gradient(135deg,#f59e0b,#f97316);
color:#fff;
box-shadow:0 10px 25px rgba(249,115,22,.25);
transition:.3s;
}

.btn-payment:hover{
transform:translateY(-3px);
box-shadow:0 15px 35px rgba(249,115,22,.35);
}

/* =========================
   MOBILE
========================= */

@media(max-width:768px){

.register-header h2{
font-size:24px;
}

.payment-header{
font-size:18px;
}

.summary-total{
font-size:20px;
}

.form-check{
display:block;
margin-bottom:10px;
}

}