@charset "UTF-8";

/* =========================
   GLOBAL RESET
========================= */
@scope(.metric-card){
*{
    margin: auto;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:'Poppins',sans-serif;

    background:
    linear-gradient(
     135deg,
    #F5F5F5
    );

    overflow-x:hidden;
    color:#222;
    position:relative;
}

.srcMetricPro-wrapper{
    max-width:1300px;
    margin:10px auto;
    padding:10px;
    font-family:'Poppins',sans-serif;
}

.srcMetricPro-title{
    text-align:center;
    font-size:36px;
    font-weight:700;
    margin-bottom:35px;
    letter-spacing:0.5px;

    background:linear-gradient(
        135deg,
        #002147,
        #005792,
        #00A6A6
    );

    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

/* Grid Layout */

.srcMetricPro-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:25px;
}

/* Card */

.srcMetricPro-card{

    position:relative;
    overflow:hidden;

    background:rgba(255,255,255,0.95);

    backdrop-filter:blur(10px);

    border-radius:22px;

    padding:28px 22px;

    box-shadow:
        0 10px 25px rgba(0,33,71,0.08),
        0 4px 10px rgba(0,0,0,0.04);

    transition:all .4s ease;
}

/* Top Gradient Border */

.srcMetricPro-card::after{

    content:'';

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:6px;

    background:linear-gradient(
        90deg,
        #002147,
        #005792,
        #00A6A6,
        #D4A017
    );
}

/* Shine Effect */

.srcMetricPro-card::before{

    content:'';

    position:absolute;

    top:0;
    left:-120%;

    width:60%;
    height:100%;

    transform:skewX(-25deg);

    background:linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,0.7),
        transparent
    );

    transition:.8s;
}

.srcMetricPro-card:hover::before{
    left:150%;
}

.srcMetricPro-card:hover{

    transform:translateY(-10px);

    box-shadow:
        0 18px 35px rgba(0,33,71,0.15),
        0 8px 20px rgba(0,166,166,0.15);
}

/* Icon */

.srcMetricPro-icon{
    text-align:center;
    font-size:34px;
    margin-bottom:12px;
}

/* Metric Name */

.srcMetricPro-name{
    text-align:center;
    font-size:22px;
    font-weight:700;
    color:#002147;
    margin-bottom:22px;
}

/* Metric Rows */

.srcMetricPro-row{

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:12px 0;
}

.srcMetricPro-row:not(:last-child){
    border-bottom:1px solid #edf2f7;
}

.srcMetricPro-label{
    color:#5f6b7a;
    font-size:14px;
    font-weight:500;
}

.srcMetricPro-value{
    font-size:28px;
    font-weight:700;
}

/* Filed Count */

.srcMetricPro-row:first-of-type .srcMetricPro-value{
    color:#00A6A6;
}

/* Granted Count */

.srcMetricPro-row:last-of-type .srcMetricPro-value{
    color:#D4A017;
}

/* Loading / Error */

.srcMetricPro-message{
    grid-column:1/-1;
    text-align:center;
    padding:30px;
    color:#666;
    font-size:16px;
}

/* Tablet */

@media (min-width:769px) and (max-width:1024px){

    .srcMetricPro-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .srcMetricPro-title{
        font-size:30px;
    }
}

/* Mobile */

@media (max-width:768px){

    .srcMetricPro-wrapper{
        padding:12px;
    }

    .srcMetricPro-title{
        font-size:26px;
        margin-bottom:25px;
    }

    .srcMetricPro-grid{
        grid-template-columns:1fr;
        gap:18px;
    }

    .srcMetricPro-card{
        padding:22px 18px;
    }

    .srcMetricPro-name{
        font-size:20px;
    }

    .srcMetricPro-value{
        font-size:24px;
    }
}
/* ==============================
   DASHBOARD WRAPPER
============================== */

.iithProjDashWrapper{
    max-width:1400px;
    margin:40px auto;
    padding:25px;
    font-family:'Poppins',sans-serif;
    position:relative;
    overflow:hidden;
}

/* ==============================
   IIT HYDERABAD WATERMARK
============================== */

.iithProjDashWrapper::before{

    content:'';

    position:absolute;
    inset:0;

    background:
    url('https://upload.wikimedia.org/wikipedia/en/thumb/5/58/IIT_Hyderabad_logo.svg/512px-IIT_Hyderabad_logo.svg.png')
    center center no-repeat;

    background-size:500px;

    opacity:.10;

    animation:iithProjDashLogoFloat 20s ease-in-out infinite;

    pointer-events:none;

    z-index:0;
}

@keyframes iithProjDashLogoFloat{

    0%{
        transform:translateX(-25px);
    }

    25%{
        transform:translateX(25px)
                  translateY(-10px);
    }

    50%{
        transform:translateX(50px);
    }

    75%{
        transform:translateX(25px)
                  translateY(10px);
    }

    100%{
        transform:translateX(-25px);
    }
}

.iithProjDashWrapper > *{
    position:relative;
    z-index:2;
}

/* ==============================
   TITLE
============================== */

.iithProjDashTitle{

    text-align:center;

    font-size:38px;

    font-weight:700;

    margin-bottom:30px;

    background:
    linear-gradient(
        135deg,
        #002147,
        #005792,
        #00A6A6
    );

    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}

/* ==============================
   KPI CARDS
============================== */

.iithProjDashKPI{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(250px,1fr));

    gap:25px;

    margin-bottom:35px;
}

.iithProjDashCard{

    background:white;

    border-radius:20px;

    padding:25px;

    text-align:center;

    box-shadow:
    0 10px 25px rgba(0,33,71,.08);

    transition:.35s;

    animation:iithProjDashSlideUp .8s ease;
}

.iithProjDashCard:hover{

    transform:
    translateY(-10px)
    scale(1.02);

    box-shadow:
    0 15px 35px rgba(0,33,71,.15);
}

.iithProjDashCardTitle{

    font-size:15px;

    color:#666;

    margin-bottom:10px;
}

.iithProjDashCardValue{

    font-size:36px;

    font-weight:700;

    color:#002147;
}

@keyframes iithProjDashSlideUp{

    from{
        opacity:0;
        transform:translateY(40px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* ==============================
   TABLE
============================== */

.iithProjDashTableWrap{

    background:white;

    border-radius:20px;

    overflow:hidden;

    box-shadow:
    0 10px 25px rgba(0,33,71,.08);

    margin-bottom:35px;

    animation:iithProjDashSlideLeft 1s ease;
}

@keyframes iithProjDashSlideLeft{

    from{
        opacity:0;
        transform:translateX(-60px);
    }

    to{
        opacity:1;
        transform:translateX(0);
    }
}

.iithProjDashTable{

    width:100%;

    border-collapse:collapse;
}

.iithProjDashTable thead{

    background:
    linear-gradient(
        135deg,
        #002147,
        #005792
    );

    color:white;
}

.iithProjDashTable th{

    padding:16px;

    text-align:center;

    font-weight:600;
}

.iithProjDashTable td{

    padding:15px;

    text-align:center;
}

.iithProjDashTable tbody tr:nth-child(even){

    background:#f5f9fc;
}

.iithProjDashTable tbody tr:hover{

    background:#e8f4ff;
}

/* ==============================
   CHARTS
============================== */

.iithProjDashChartsRow{

    display:grid;

    grid-template-columns:0.35fr 0.35fr;
    justify-content: center;

    gap:25px;
}

.iithProjDashChartCard{

    background:white;

    border-radius:20px;

    padding:25px;

    box-shadow:
    0 10px 25px rgba(0,33,71,.08);

    animation:iithProjDashSlideRight 1s ease;
  display:flex;
    flex-direction:column;
    align-items:center;
}
.iithProjDashChartCard canvas{

    width:60% !important;

    max-width:300px;

    height:auto !important;
}

@keyframes iithProjDashSlideRight{

    from{
        opacity:0;
        transform:translateX(60px);
    }

    to{
        opacity:1;
        transform:translateX(0);
    }
}

.iithProjDashChartTitle{

    text-align:center;

    font-size:22px;

    font-weight:600;

    color:#002147;

    margin-bottom:10px;
}

/* ==============================
   RESPONSIVE
============================== */

@media(max-width:992px){

    .iithProjDashChartsRow{

        grid-template-columns:1fr;
    }
}

@media(max-width:768px){

    .iithProjDashWrapper{
        padding:12px;
    }

    .iithProjDashTitle{
        font-size:28px;
    }

    .iithProjDashCardValue{
        font-size:28px;
    }

    .iithProjDashTableWrap{
        overflow-x:auto;
    }
}
*{
    margin:0;
    padding:0;
   
    font-family:'Segoe UI', sans-serif;
}


body{
    padding:40px 20px;
   
}

.container{
    max-width:1200px;
    margin:auto;
    background:#ffffff;
    border-radius:18px;
    box-shadow:0 10px 30px rgba(0,0,0,0.12);
    overflow:hidden;
}

.heading{
    background:linear-gradient(135deg,#123c6b,#1f5fa5);
    color:white;
    text-align:center;
    padding:28px;
    font-size:34px;
    font-weight:700;
    letter-spacing:0.5px;
}

.table-container{
    padding:25px;
}

table{
    width:100%;
    border-collapse:collapse;
}

thead{
    background:#1f5fa5;
    color:white;
}

th{
    padding:18px 15px;
    text-align:left;
    font-size:16px;
    font-weight:700;
}

td{
    padding:16px 15px;
    font-size:15px;
    color:#333;
    line-height:1.6;
}

tbody tr:nth-child(odd){
    background:#f4f8ff;
}

tbody tr:nth-child(even){
    background:#eaf1fb;
}

tbody tr:hover{
    background:#d9e9ff;
    transition:0.3s ease;
}

/* ==========================
   MOBILE RESPONSIVE DESIGN
   ========================== */

@media (max-width:768px){

    body{
        padding:10px;
    }

    .container{
        border-radius:12px;
    }

    .heading{
        font-size:22px;
        padding:18px;
    }

    .table-container{
        padding:12px;
    }

    table,
    thead,
    tbody,
    th,
    td,
    tr{
        display:block;
        width:100%;
    }

    thead{
        display:none;
    }

    tbody tr{
        background:#ffffff !important;
        margin-bottom:15px;
        border-radius:12px;
        box-shadow:0 4px 12px rgba(0,0,0,0.08);
        padding:10px;
        overflow:hidden;
    }

    td{
        border:none;
        position:relative;
        padding:10px 10px 10px 45%;
        text-align:left;
        font-size:14px;
        min-height:40px;
        word-break:break-word;
    }

    td::before{
        position:absolute;
        left:10px;
        top:10px;
        width:40%;
        font-weight:600;
        color:#1f5fa5;
    }

    td:nth-child(1)::before{
        content:"S.No.";
    }

    td:nth-child(2)::before{
        content:"Name";
    }

    td:nth-child(3)::before{
        content:"Department";
    }

    td:nth-child(4)::before{
        content:"Role";
    }
}
}