*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

body{

    min-height:100vh;

    background:
    linear-gradient(
        135deg,
        #0f172a,
        #111827,
        #1e293b
    );

    color:white;

    padding:40px 20px;
}

.resume-container{

    max-width:1400px;

    margin:auto;
}

.glass{

    background:
    rgba(255,255,255,.05);

    backdrop-filter:
    blur(20px);

    border:
    1px solid
    rgba(255,255,255,.1);

    border-radius:24px;
}

.hero{

    padding:40px;

    text-align:center;

    margin-bottom:30px;
}

.hero h1{

    font-size:3rem;

    font-weight:700;

    margin-bottom:15px;

    background:
    linear-gradient(
        90deg,
        #60a5fa,
        #a855f7
    );

    -webkit-background-clip:text;

    -webkit-text-fill-color:
    transparent;
}

.hero p{

    max-width:800px;

    margin:auto;

    color:#cbd5e1;

    line-height:1.8;
}

.upload-section{

    padding:30px;

    margin-bottom:30px;

    display:flex;

    flex-direction:column;

    gap:20px;
}

.upload-section h2{

    color:#f8fafc;
}

.upload-section input,

.upload-section select,

.upload-section textarea{

    width:100%;

    padding:16px;

    border:none;

    outline:none;

    border-radius:14px;

    background:
    rgba(255,255,255,.07);

    color:white;
}

.upload-section textarea{

    min-height:180px;

    resize:none;
}

.primary-btn{

    padding:16px;

    border:none;

    cursor:pointer;

    border-radius:14px;

    font-weight:600;

    font-size:1rem;

    background:
    linear-gradient(
        135deg,
        #3b82f6,
        #8b5cf6
    );

    color:white;

    transition:.3s;
}

.primary-btn:hover{

    transform:
    translateY(-3px);

    box-shadow:
    0 10px 30px
    rgba(59,130,246,.4);
}

.score-grid{

    display:grid;

    grid-template-columns:
    repeat(
        auto-fit,
        minmax(250px,1fr)
    );

    gap:20px;

    margin-bottom:30px;
}

.score-card{

    padding:30px;

    text-align:center;
}

.score-card h3{

    color:#94a3b8;

    margin-bottom:15px;
}

.score-card h1{

    font-size:3rem;

    color:#60a5fa;
}

.score-card h2{

    color:#a855f7;
}

.analysis-grid{

    display:grid;

    grid-template-columns:
    repeat(
        auto-fit,
        minmax(400px,1fr)
    );

    gap:20px;

    margin-bottom:30px;
}

.analysis-card{

    padding:30px;

    transition:.3s;
}

.analysis-card:hover{

    transform:
    translateY(-5px);

    border:
    1px solid
    rgba(96,165,250,.3);
}

.analysis-card h2{

    margin-bottom:20px;

    color:#60a5fa;
}

.analysis-card ul{

    list-style:none;
}

.analysis-card li{

    padding:12px;

    margin-bottom:10px;

    border-radius:12px;

    background:
    rgba(255,255,255,.05);

    color:#e2e8f0;
}

.skills-section{

    padding:30px;

    margin-bottom:30px;
}

.skills-section h2{

    margin-bottom:20px;

    color:#60a5fa;
}

#missingSkills,

#optimizedSkills{

    display:flex;

    flex-wrap:wrap;

    gap:12px;
}

.skill-tag{

    padding:12px 18px;

    border-radius:50px;

    font-size:.9rem;

    font-weight:500;

    background:
    linear-gradient(
        135deg,
        rgba(239,68,68,.25),
        rgba(239,68,68,.1)
    );

    border:
    1px solid
    rgba(239,68,68,.3);

    color:#fecaca;
}

.optimized-tag{

    padding:12px 18px;

    border-radius:50px;

    font-size:.9rem;

    font-weight:500;

    background:
    linear-gradient(
        135deg,
        rgba(34,197,94,.25),
        rgba(34,197,94,.1)
    );

    border:
    1px solid
    rgba(34,197,94,.3);

    color:#bbf7d0;
}

.readiness-section{

    padding:30px;

    margin-bottom:30px;
}

.readiness-section h2{

    color:#60a5fa;

    margin-bottom:15px;
}

.readiness-section p{

    line-height:1.8;

    color:#e2e8f0;
}

.verdict-section{

    padding:30px;

    margin-bottom:30px;
}

.verdict-section h2{

    color:#a855f7;

    margin-bottom:15px;
}

.verdict-section p{

    line-height:1.9;

    color:#f8fafc;
}

/* =========================
   ROADMAP SECTION
========================= */

.roadmap-section{

    padding:30px;

    margin-bottom:30px;
}

.roadmap-section h2{

    margin-bottom:25px;

    color:#60a5fa;
}

#roadmapContainer{

    display:grid;

    grid-template-columns:
    repeat(
        auto-fit,
        minmax(250px,1fr)
    );

    gap:20px;
}

.roadmap-card{

    padding:20px;

    border-radius:18px;

    background:
    rgba(255,255,255,.05);

    border:
    1px solid
    rgba(255,255,255,.08);

    transition:.3s;
}

.roadmap-card:hover{

    transform:
    translateY(-6px);

    border:
    1px solid
    rgba(96,165,250,.3);

    box-shadow:
    0 15px 35px
    rgba(96,165,250,.15);
}

.roadmap-card h3{

    margin-bottom:10px;

    color:#60a5fa;
}

.roadmap-card p{

    color:#cbd5e1;

    line-height:1.6;
}

/* =========================
   PREMIUM GLOW EFFECTS
========================= */

.hero,
.score-card,
.analysis-card,
.skills-section,
.readiness-section,
.verdict-section,
.roadmap-section{

    transition:.35s;
}

.hero:hover,
.score-card:hover,
.analysis-card:hover,
.skills-section:hover,
.readiness-section:hover,
.verdict-section:hover,
.roadmap-section:hover{

    box-shadow:
    0 0 35px
    rgba(96,165,250,.12);
}

/* =========================
   SCORE CARD EFFECT
========================= */

.score-card{

    position:relative;

    overflow:hidden;
}

.score-card::before{

    content:"";

    position:absolute;

    top:-50%;

    left:-50%;

    width:200%;

    height:200%;

    background:
    linear-gradient(
        45deg,
        transparent,
        rgba(255,255,255,.05),
        transparent
    );

    transform:
    rotate(25deg);

    transition:.6s;
}

.score-card:hover::before{

    left:100%;
}

/* =========================
   CUSTOM SCROLLBAR
========================= */

::-webkit-scrollbar{

    width:10px;
}

::-webkit-scrollbar-track{

    background:#111827;
}

::-webkit-scrollbar-thumb{

    background:
    linear-gradient(
        #60a5fa,
        #a855f7
    );

    border-radius:50px;
}

/* =========================
   FILE INPUT STYLING
========================= */

input[type="file"]{

    cursor:pointer;
}

input[type="file"]::file-selector-button{

    border:none;

    padding:10px 16px;

    border-radius:10px;

    margin-right:15px;

    background:
    linear-gradient(
        135deg,
        #3b82f6,
        #8b5cf6
    );

    color:white;

    cursor:pointer;
}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:900px){

    .hero h1{

        font-size:2.2rem;
    }

    .analysis-grid{

        grid-template-columns:1fr;
    }

    .score-grid{

        grid-template-columns:1fr;
    }

    #roadmapContainer{

        grid-template-columns:1fr;
    }
}

@media(max-width:600px){

    body{

        padding:15px;
    }

    .hero{

        padding:25px;
    }

    .upload-section{

        padding:20px;
    }

    .score-card h1{

        font-size:2.2rem;
    }
}

/* ===========================
   RESUME ANALYTICS CARD
=========================== */

.analytics-card{

    margin-top:40px;

    padding:35px;

    border-radius:24px;

    background:
    linear-gradient(
        135deg,
        rgba(20,25,45,.95),
        rgba(30,40,70,.90)
    );

    border:
    1px solid
    rgba(139,92,246,.25);

    box-shadow:
    0 0 40px rgba(139,92,246,.15);

    overflow:hidden;

    position:relative;
}

.analytics-card::before{

    content:"";

    position:absolute;

    top:-150px;
    right:-150px;

    width:300px;
    height:300px;

    background:
    radial-gradient(
        circle,
        rgba(139,92,246,.15),
        transparent
    );

    pointer-events:none;
}

/* ===========================
   HEADER
=========================== */

.analytics-header{

    display:flex;

    justify-content:
    space-between;

    align-items:center;

    margin-bottom:30px;
}

.analytics-header h2{

    color:white;

    font-size:28px;

    font-weight:700;
}

.live-badge{

    padding:8px 18px;

    border-radius:50px;

    background:
    linear-gradient(
        135deg,
        #06b6d4,
        #8b5cf6
    );

    color:white;

    font-size:13px;

    font-weight:600;

    letter-spacing:.5px;
}

/* ===========================
   CHART
=========================== */

#resumeChart{

    width:100% !important;

    max-height:420px;

    margin-top:15px;
}

/* ===========================
   SUMMARY
=========================== */

.graph-summary{

    display:grid;

    grid-template-columns:
    repeat(
        auto-fit,
        minmax(220px,1fr)
    );

    gap:20px;

    margin-top:35px;
}

.summary-box{

    padding:22px;

    border-radius:18px;

    background:
    rgba(255,255,255,.04);

    border:
    1px solid
    rgba(255,255,255,.08);

    transition:.35s;
}

.summary-box:hover{

    transform:
    translateY(-5px);

    border-color:
    rgba(139,92,246,.4);

    box-shadow:
    0 0 25px
    rgba(139,92,246,.2);
}

.summary-box h4{

    color:#94a3b8;

    font-size:14px;

    margin-bottom:10px;

    text-transform:uppercase;

    letter-spacing:1px;
}

.summary-box p{

    color:white;

    font-size:22px;

    font-weight:700;
}

/* ===========================
   RESPONSIVE
=========================== */

@media(max-width:768px){

    .analytics-card{

        padding:20px;
    }

    .analytics-header{

        flex-direction:column;

        gap:15px;

        align-items:flex-start;
    }

    .analytics-header h2{

        font-size:22px;
    }

    .summary-box p{

        font-size:18px;
    }
}

select{
    width:100%;
    padding:18px 20px;
    background:#2b3245;
    color:#ffffff;
    border:none;
    border-radius:14px;
    font-size:16px;
}

select option{
    background:#2b3245;
    color:#ffffff;
}

