/* ===================================

   HERO SECTION

=================================== */

.result-hero{

    background:#f7faff;

    padding:60px 0 40px;

    overflow:hidden;

}

/* Badge */

.hero-badge{

    display:inline-block;

    padding:10px 18px;

    background:#eef4ff;

    color:#0d6efd;

    border-radius:30px;

    font-size:13px;

    font-weight:700;

    letter-spacing:.5px;

    margin-bottom:20px;

}

.hero-img {
    max-height: 500px;
}

/* Heading */

.result-hero h1{

    font-size:64px;

    font-weight:800;

    line-height:1.05;

    color:#0a2540;

    margin-bottom:20px;

}

.result-hero h1 span{

    display:block;

    color:#0d6efd;

}

.result-hero p{

    font-size:18px;

    line-height:1.8;

    color:#6b7280;

    margin-bottom:30px;

}

/* ===================================

   MINI CARDS

=================================== */

.hero-mini-cards{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:12px;

    margin-top:25px;

}

.mini-card{

    background:#fff;

    border:1px solid #e8edf7;

    border-radius:14px;

    padding:16px 18px;

    display:flex;

    align-items:center;

    gap:12px;

    transition:.3s;

}

.mini-card:hover{

    transform:translateY(-3px);

    box-shadow:0 8px 20px rgba(13,110,253,.08);

}

.mini-card i{

    color:#0d6efd;

    font-size:20px;

    width:24px;

    flex-shrink:0;

}

.mini-card span{

    font-size:15px;

    font-weight:600;

    color:#0a2540;

}

/* ===================================

   HERO IMAGE

=================================== */

.hero-image-wrap{

    text-align:center;

    position:relative;

}

.hero-image-wrap img{

    max-height:560px;

    width:auto;

    object-fit:contain;

}

/* ===================================

   FACTS CARD

=================================== */

.exam-facts-card{

    background:#fff;

    border:1px solid #e8edf7;

    border-radius:20px;

    overflow:hidden;

    box-shadow:0 5px 20px rgba(0,0,0,.05);

}

.fact-item{

    display:flex;

    align-items:center;

    gap:15px;

    padding:20px;

    border-bottom:1px solid #eef2f8;

}

.fact-item:last-child{

    border-bottom:none;

}

.fact-item i{

    width:40px;

    text-align:center;

    font-size:22px;

    color:#0d6efd;

    flex-shrink:0;

}

.fact-item small{

    display:block;

    color:#6b7280;

    font-size:13px;

    margin-bottom:2px;

}

.fact-item strong{

    display:block;

    color:#0a2540;

    font-size:18px;

    font-weight:700;

    line-height:1.2;

}

/* STATS BAR */

.counselling-stats{
    margin-top:-35px;
    position:relative;
    z-index:10;
}

.stats-wrapper{
    background:linear-gradient(
        135deg,
        #2563eb,
        #0d47c9
    );

    border-radius:22px;

    display:grid;
    grid-template-columns:repeat(6,1fr);

    overflow:hidden;
}

.stat-box{
    text-align:center;
    padding:30px 15px;
    color:#fff;
    border-right:1px solid rgba(255,255,255,.15);
}

.stat-box:last-child{
    border-right:none;
}

.stat-box i{
    font-size:34px;
    margin-bottom:15px;

    /* WHITE ICONS */
    color:#fff;
}

.stat-box h3{
    font-size:38px;
    font-weight:800;
}

.stat-box p{
    margin:0;
    font-size:15px;
}

/* ===================================
   COUNSELLING OVERVIEW
=================================== */

.counselling-overview{
    background:#fff;
}

.overview-card{

    position:relative;

    border-radius:18px;

    padding:30px 20px;

    text-align:center;

    height:100%;

    transition:.3s;

    border:1px solid transparent;
}

.overview-card:hover{

    transform:translateY(-6px);

    box-shadow:
    0 12px 30px rgba(0,0,0,.08);
}

.step-number{

    position:absolute;

    top:15px;
    right:15px;

    font-size:14px;
    font-weight:700;

    opacity:.4;
}

.overview-card i{

    font-size:42px;

    margin-bottom:18px;
}

.overview-card h6{

    margin:0;

    font-size:15px;

    font-weight:700;
}

/* COLORS */

.overview-card.blue{
    background:#eef5ff;
    color:#0d6efd;
}

.overview-card.green{
    background:#eefcf4;
    color:#16a34a;
}

.overview-card.orange{
    background:#fff7ed;
    color:#f59e0b;
}

.overview-card.purple{
    background:#f5f0ff;
    color:#8b5cf6;
}

.overview-card.cyan{
    background:#ecfeff;
    color:#06b6d4;
}

.overview-card.red{
    background:#fff1f2;
    color:#ef4444;
}

/* ===================================
   COUNSELLING FLOW
=================================== */

.counselling-flow-section{
    background:#f8fbff;
}

.process-wrapper{
    position:relative;

    display:flex;

    justify-content:space-between;

    gap:20px;

    flex-wrap:wrap;
}

.process-line{

    position:absolute;

    top:45px;

    left:8%;
    right:8%;

    height:3px;

    background:#dbe7ff;

    z-index:1;
}

.process-step{

    width:15%;

    text-align:center;

    position:relative;

    z-index:2;
}

.process-icon{

    width:90px;
    height:90px;

    margin:0 auto 20px;

    border-radius:50%;

    background:#fff;

    border:3px solid #0d6efd;

    color:#0d6efd;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:30px;

    box-shadow:0 8px 25px rgba(13,110,253,.08);
}

.process-icon.success{
    border-color:#16a34a;
    color:#16a34a;
}

.step-no{

    display:block;

    margin-bottom:10px;

    color:#0d6efd;

    font-size:13px;

    font-weight:700;

    text-transform:uppercase;
}

.process-step h6{

    font-weight:700;

    margin-bottom:10px;
}

.process-step p{

    color:#6c757d;

    font-size:13px;

    margin:0;
}

/* ===================================
   QUOTA COMPARISON
=================================== */

.quota-comparison{
    background:#fff;
}

.quota-card{

    background:#fff;

    border-radius:22px;

    padding:35px;

    height:100%;

    position:relative;

    overflow:hidden;

    border:1px solid #e8edf7;

    transition:.3s;
}

.quota-card:hover{

    transform:translateY(-5px);

    box-shadow:
    0 15px 35px rgba(0,0,0,.08);
}

.aiq-card{

    border-top:5px solid #0d6efd;
}

.state-card{

    border-top:5px solid #16a34a;
}

.quota-header{

    display:flex;

    align-items:center;

    gap:20px;

    margin-bottom:30px;
}

.quota-icon{

    width:80px;
    height:80px;

    border-radius:20px;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:32px;
}

.aiq-card .quota-icon{

    background:#eef5ff;
    color:#0d6efd;
}

.state-card .quota-icon{

    background:#eefcf4;
    color:#16a34a;
}

.quota-percent{

    display:block;

    font-size:42px;

    font-weight:800;

    line-height:1;
}

.aiq-card .quota-percent{
    color:#0d6efd;
}

.state-card .quota-percent{
    color:#16a34a;
}

.quota-header h3{

    margin-top:8px;

    font-weight:700;

    color:#0a2540;
}

.quota-list{

    list-style:none;

    padding:0;

    margin:0;
}

.quota-list li{

    padding:14px 0;

    border-bottom:1px solid #eef2f8;

    position:relative;

    padding-left:28px;
}

.quota-list li:last-child{
    border-bottom:none;
}

.quota-list li::before{

    content:"✓";

    position:absolute;

    left:0;

    color:#16a34a;

    font-weight:700;
}

.quota-footer{

    margin-top:25px;

    padding:14px;

    border-radius:12px;

    background:#f8fbff;

    text-align:center;

    font-weight:600;

    color:#0a2540;
}

/* ===================================
   ELIGIBILITY & DOCUMENTS
=================================== */

.eligibility-documents{
    background:#f8fbff;
}

.info-card{

    background:#fff;

    border:1px solid #e8edf7;

    border-radius:22px;

    padding:35px;

    height:100%;

    transition:.3s;
}

.info-card:hover{

    transform:translateY(-4px);

    box-shadow:0 15px 35px rgba(0,0,0,.06);
}

.card-header-block{

    display:flex;

    gap:20px;

    align-items:center;

    margin-bottom:30px;
}

.card-icon{

    width:75px;
    height:75px;

    border-radius:18px;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:28px;
}

.card-icon.blue{

    background:#eef5ff;
    color:#0d6efd;
}

.card-icon.green{

    background:#eefcf4;
    color:#16a34a;
}

.card-header-block h3{

    margin-bottom:5px;

    font-weight:700;
}

.card-header-block p{

    margin:0;

    color:#6c757d;
}

.info-item{

    display:flex;

    gap:15px;

    margin-bottom:25px;
}

.info-item:last-child{
    margin-bottom:0;
}

.info-item i{

    color:#0d6efd;

    font-size:22px;

    margin-top:4px;
}

.info-item h6{

    margin-bottom:5px;

    font-weight:700;
}

.info-item span{

    color:#6c757d;

    font-size:14px;
}

/* Documents */

.document-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:15px;
}

.document-item{

    background:#f8fbff;

    border:1px solid #e8edf7;

    border-radius:14px;

    padding:18px;

    display:flex;

    gap:12px;

    align-items:center;

    font-weight:600;
}

.document-item i{

    color:#16a34a;
}

/* ===================================
   IMPORTANT DATES
=================================== */

.important-dates-section{
    background:#fff;
}

.date-table{
    margin-bottom:0;
}

.date-table thead{
    background:#0d6efd;
    color:#fff;
}

.date-table th{
    border:none;
    padding:16px;
    font-size:14px;
}

.date-table td{
    padding:14px 16px;
    font-size:14px;
    vertical-align:middle;
}

.date-table tbody tr:nth-child(even){
    background:#f8fbff;
}

.date-table tbody tr:hover{
    background:#eef5ff;
}

/* Timeline */

.date-timeline{
    display:flex;
    justify-content:space-between;
    position:relative;
    gap:15px;
}

.date-timeline::before{
    content:'';
    position:absolute;
    top:30px;
    left:8%;
    right:8%;
    height:2px;
    background:#dce7ff;
}

.date-timeline .timeline-item{
    flex:1;
    text-align:center;
    position:relative;
    z-index:2;
}

.date-timeline .timeline-icon{
    width:60px;
    height:60px;

    margin:auto auto 12px;

    border-radius:50%;
    background:#fff;

    border:2px solid #dce7ff;

    display:flex;
    align-items:center;
    justify-content:center;

    color:#0d6efd;
    font-size:20px;
}

.date-timeline .timeline-item.active .timeline-icon{
    background:#eef4ff;
    border-color:#0d6efd;
}

.date-timeline h6{
    font-size:14px;
    font-weight:700;
    margin-bottom:4px;
}

.date-timeline p{
    margin:0;
    font-size:13px;
    color:#6b7280;
}

/* ===================================
   ELIGIBILITY CRITERIA
=================================== */

.card-title-wrap{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:25px;
}

.card-title-wrap i{
    color:#0d6efd;
    font-size:24px;
}

.card-title-wrap h4{
    margin:0;
    font-weight:700;
}

.eligibility-list{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.eligibility-item{
    padding:14px 18px;
    border:1px solid #e8edf7;
    border-radius:12px;
    background:#f8fbff;
    font-weight:500;
}

.eligibility-item i{
    color:#16a34a;
    margin-right:10px;
}

.percentile-table thead{
    background:#eef4ff;
}

.percentile-badge{
    display:inline-block;
    padding:8px 14px;
    border-radius:30px;
    font-size:13px;
    font-weight:600;
}

.percentile-badge.blue{
    background:#e7f0ff;
    color:#0d6efd;
}

.percentile-badge.cyan{
    background:#e8fbff;
    color:#0891b2;
}

.percentile-badge.green{
    background:#ecfdf3;
    color:#16a34a;
}

.percentile-badge.orange{
    background:#fff7ed;
    color:#ea580c;
}

.percentile-badge.purple{
    background:#f5f3ff;
    color:#7c3aed;
}

.percentile-badge.red{
    background:#fff1f2;
    color:#dc2626;
}

.score-card{
    background:#fff;
    border:1px solid #e8edf7;
    border-radius:16px;
    padding:20px;
    text-align:center;
    transition:.3s;
}

.score-card:hover{
    transform:translateY(-4px);
    box-shadow:0 10px 25px rgba(13,110,253,.08);
}

.score-card h6{
    color:#6b7280;
    margin-bottom:10px;
}

.score-card strong{
    font-size:30px;
    color:#0d6efd;
}

/* ===================================
   SEAT RESERVATION
=================================== */

.seat-reservation-section{
    background:#f8fbff;
}

.reservation-card{

    background:#fff;

    border-radius:20px;

    padding:30px;

    text-align:center;

    height:100%;

    border:1px solid #e8edf7;

    transition:.3s;
}

.reservation-card:hover{

    transform:translateY(-5px);

    box-shadow:0 12px 30px rgba(0,0,0,.06);
}

.reservation-icon{

    width:80px;
    height:80px;

    margin:0 auto 20px;

    border-radius:20px;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:32px;
}

.reservation-card h3{

    font-size:42px;

    font-weight:800;

    margin-bottom:8px;
}

.reservation-card h5{

    font-weight:700;

    margin-bottom:6px;
}

.reservation-card p{
    margin:0;
    color:#6b7280;
}

/* OBC */

.obc .reservation-icon{
    background:#eef5ff;
    color:#0d6efd;
}

.obc h3{
    color:#0d6efd;
}

/* SC */

.sc .reservation-icon{
    background:#ecfdf3;
    color:#16a34a;
}

.sc h3{
    color:#16a34a;
}

/* ST */

.st .reservation-icon{
    background:#fff7ed;
    color:#ea580c;
}

.st h3{
    color:#ea580c;
}

/* EWS */

.ews .reservation-icon{
    background:#f5f3ff;
    color:#7c3aed;
}

.ews h3{
    color:#7c3aed;
}

/* Extra Cards */

.extra-reservation-card{

    background:#fff;

    border:1px solid #e8edf7;

    border-radius:16px;

    padding:25px;

    text-align:center;
}

.extra-reservation-card h3{

    color:#0d6efd;

    font-size:36px;

    font-weight:800;
}

.extra-reservation-card h6{

    margin-top:10px;

    font-weight:700;
}

.extra-reservation-card p{

    color:#6b7280;

    margin:0;
}

/* ===================================
   REGISTRATION PROCESS
=================================== */

.registration-process-section{
    background:#fff;
}

.registration-flow{
    position:relative;
}

.registration-card{

    background:#fff;

    border:1px solid #e8edf7;

    border-radius:20px;

    padding:30px;

    text-align:center;

    height:100%;

    position:relative;

    transition:.3s;
}

.registration-card:hover{

    transform:translateY(-5px);

    box-shadow:0 12px 30px rgba(0,0,0,.06);
}

.step-badge{

    position:absolute;

    top:15px;
    right:15px;

    width:35px;
    height:35px;

    border-radius:50%;

    background:#eef4ff;

    color:#0d6efd;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:13px;
    font-weight:700;
}

.reg-icon{

    width:80px;
    height:80px;

    margin:0 auto 20px;

    border-radius:20px;

    background:#eef4ff;

    color:#0d6efd;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:32px;
}

.registration-card h5{

    font-weight:700;

    margin-bottom:12px;
}

.registration-card p{

    color:#6b7280;

    font-size:14px;

    margin:0;
}

.process-checklist{

    list-style:none;

    padding:0;

    margin:0;
}

.process-checklist li{

    padding:14px 0;

    border-bottom:1px solid #edf2f7;

    position:relative;

    padding-left:30px;
}

.process-checklist li:last-child{
    border-bottom:none;
}

.process-checklist li::before{

    content:"✓";

    position:absolute;

    left:0;

    color:#16a34a;

    font-weight:700;
}

/* ===================================
   REGISTRATION FEES
=================================== */

.registration-fees-section{
    background:#f8fbff;
}

/* Fee Cards */

.fee-card{
    background:#fff;
    border:1px solid #e8edf7;
    border-radius:20px;
    padding:25px;
    text-align:center;
    height:100%;
    min-height:240px;
    transition:.3s;
}

.fee-card:hover{
    transform:translateY(-4px);
    box-shadow:0 10px 25px rgba(0,0,0,.05);
}

.fee-card.success{
    border-top:4px solid #16a34a;
}

.fee-icon{
    width:60px;
    height:60px;
    margin:0 auto 15px;

    border-radius:16px;

    background:#eef4ff;
    color:#0d6efd;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:24px;
}

.fee-card.success .fee-icon{
    background:#ecfdf3;
    color:#16a34a;
}

.fee-card h3{
    font-size:20px;
    font-weight:700;
    margin-bottom:10px;
}

.fee-amount{
    font-size:34px;
    font-weight:800;
    color:#0d6efd;
    margin:10px 0;
    line-height:1;
}

.fee-card.success .fee-amount{
    color:#16a34a;
}

.fee-card p{
    margin:0;
    color:#6b7280;
    font-size:15px;
}

/* ===================================
   SECURITY DEPOSIT
=================================== */

.security-wrapper{
    background:#fff;
    border:1px solid #e8edf7;
    border-radius:20px;
    padding:25px;
}

.security-wrapper h3{
    font-size:28px;
    font-weight:700;
    margin-bottom:25px;
}

.security-card{
    background:#fff;

    border:1px solid #e8edf7;

    border-radius:16px;

    padding:20px;

    text-align:center;

    height:100%;

    min-height:200px;

    transition:.3s;
}

.security-card:hover{
    transform:translateY(-4px);
    box-shadow:0 10px 25px rgba(0,0,0,.05);
}

.security-card i{
    font-size:26px;
    color:#0d6efd;
    margin-bottom:12px;
}

.security-card h5{
    font-size:18px;
    font-weight:700;
    margin-bottom:12px;
}

.security-amount{
    font-size:30px;
    font-weight:800;
    color:#0d6efd;
    margin-bottom:8px;
    line-height:1;
}

.security-card span{
    color:#16a34a;
    font-size:15px;
    font-weight:600;
}

.security-card.featured{
    border:2px solid #0d6efd;
}

/* ===================================
   INFO NOTE
=================================== */

.fee-note{
    background:#eef5ff;
    border-left:4px solid #0d6efd;
    padding:16px 18px;
    border-radius:12px;

    display:flex;
    gap:12px;
    align-items:flex-start;
}

.fee-note i{
    color:#0d6efd;
    font-size:18px;
    margin-top:2px;
}

.fee-note p{
    margin:0;
    font-size:14px;
    color:#475569;
}