/* =========================
   NAVBAR
========================= */

.navbar{

width:100%;

display:flex;

justify-content:space-between;

align-items:center;

padding:18px 50px;

background:white;

box-shadow:0 2px 10px rgba(0,0,0,.1);

position:sticky;

top:0;

left:0;

z-index:1000;

}

.logo a{

    display:flex;

    align-items:center;

    text-decoration:none;

    color:#1e3a8a;

    font-size:24px;

    font-weight:bold;

}

.logo img{

    width:100px;

    height:42px;

    margin-right:12px;

}

.nav-links{

    display:flex;

    list-style:none;

    gap:28px;

}

.nav-links a{

    text-decoration:none;

    color:#334155;

    font-weight:600;

    transition:.3s;

}

.nav-links a:hover{

    color:#2563eb;

}
/* ================= HERO ================= */

.hero{

text-align:center;

padding:80px 20px 60px;

background:linear-gradient(180deg,#111827,#0a1118);

}

.hero h1{

font-size:56px;

color:#f4c542;

margin-bottom:20px;

}

.hero p{

max-width:750px;

margin:auto;

font-size:22px;

line-height:1.8;

color:#cbd5e1;

}

.hero-buttons{

margin-top:35px;

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.primary-btn{

background:#2563eb;

color:white;

padding:15px 35px;

border-radius:10px;

text-decoration:none;

font-size:18px;

transition:.3s;

}

.primary-btn:hover{

background:#1d4ed8;

}

.secondary-btn{

background:#1f2937;

color:white;

padding:15px 35px;

border-radius:10px;

text-decoration:none;

font-size:18px;

transition:.3s;

}

.secondary-btn:hover{

background:#374151;

}
/* Basic Reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

body {
    background: radial-gradient(circle at center, #1b2633 0%, #0a1118 70%);
    color: #e6e6e6;
    font-family: "Segoe UI", Arial, sans-serif;
        margin:0;

    background:#0d1117;

    color:white;
    height: 100vh;
    margin: 0;


}

.title {
    font-size: 48px;
    margin-bottom: 30px;
    color: #f4c542;
    font-weight: 700;
}

.container hr {
    border: none;
    height: 1px;
    background: #2a3440;
    margin: 25px 0;
}


h1 {
    margin-bottom: 20px;
    color: #e2b714;
    /* Yellow Highlight */
}


.correct {
    color: #4caf50;
}

.wrong {
    color: #ff4742;
}

.current {
    color: #e2b714;
    border-bottom: 2px solid #e2b714;
}

.remaining {
    color: #aaa;
}

.current {
    width: 900px;
    margin: auto;
    padding: 40px;
    text-align: center;
}
.current::after{
    content:"";
    display:inline-block;
    width:2px;
    height:18px;
    background:#000;
    animation:blink 1s infinite;
}


#worddisplay {
    font-size: 26px;
    margin: 40px auto;
    max-width: 800px;
    line-height: 1.6;
    color: #aaa;
}

.exam-buttons{
display:flex;
justify-content:center;
gap:10px;
margin-bottom:25px;
flex-wrap:wrap;
}

.exam-btn{

padding:10px 22px;

background:#1e2630;

color:white;

border:none;

border-radius:8px;

cursor:pointer;

font-size:15px;

transition:.3s;
}

.exam-btn:hover{

background:#f4c542;

color:black;

}

.exam-btn.active{

background:#f4c542;

color:black;

box-shadow:0 0 15px rgba(244,197,66,.5);

}

#numberdisplay {
    font-size: 26px;
    margin: 40px auto;
    max-width: 800px;
    line-height: 1.6;
    color: #aaa;
}

.number-box {
    max-height: 140px;
    max-width: 700px;
    margin: auto;
    margin-bottom: 25px;
    overflow: hidden;
    position: relative;

    font-size: 22px;
    line-height: 1.5;

    color: #9aa4b2;

    animation: fadeText 0.5s ease;
}

.word-box {
    max-height: 140px;
    max-width: 700px;
    margin: auto;
    margin-bottom: 25px;
    overflow: hidden;
    position: relative;

    font-size: 22px;
    line-height: 1.7;

    color: #9aa4b2;

    animation: fadeText 0.5s ease;
}



.cursor {
    border-left: 3px solid #f4c542;
    margin-left: 2px;
    animation: blink 1s infinite;

}

@keyframes blink {
    0% {
        opacity: 1;
    }

    50% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

#typinginput{

    display:block;

    width:70%;

    height:60px;

    margin:20px auto;

    background:#0a1118;

    border:2px solid #2c3440;

    border-radius:12px;

    padding:15px;

    font-size:20px;

    color:white;

    outline:none;

    transition:.3s;

}

/* =========================
   FOOTER
========================= */

.footer{
    background:#121b27;
    text-align:center;
    padding:50px 20px;
    margin-top:80px;
}

.footer h2{
    color:white;
    margin-bottom:15px;
}

.footer p{
    color:#cfcfcf;
    max-width:800px;
    margin:0 auto 20px;
    line-height:1.7;
}

.footer-links{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:18px;
    margin:30px 0;
}

.footer-links a{
    color:#4f8cff;
    text-decoration:none;
    font-weight:600;
    transition:.3s;
}

.footer-links a:hover{
    color:white;
}

.copyright{
    margin-top:20px;
    color:#999;
    font-size:15px;
}
.stats {
    display: flex;
    justify-content: center;
    gap: 30px;

    margin-top: 25px;
    margin-bottom: 25px;

    font-size: 18px;
    color: #cbd5e1;
}

.stats span {
    color: white;
    font-weight: 600;
}


.choosetimer {
    text-align: justify;
    width: 80%;
    max-width: 800px;
}

.time-btn {
    padding: 10px 28px;
    background: #1e2630;
    color: #cbd5e1;
    border: none;
    border-radius: 10px;
    font-size: 16px;
    cursor: pointer;

    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.5);
    transition: 0.25s;
}

.time-btn:hover {
    background: #f4c542;
    color: #111;
}

.time-buttons {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-bottom: 25px;
}

.time-btn.active {
    background: #f4c542;
    color: #111;
}

.mode-buttons {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-bottom: 40px;
}

.mode-btn {
    padding: 10px 30px;
    background: #1e2630;
    color: #cbd5e1;
    border: none;
    border-radius: 10px;
    font-size: 16px;
    cursor: pointer;

    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.5);
    transition: 0.25s;
}

.mode-btn:hover {
    background: #f4c542;
    color: #111;
}

.mode-btn.active {
    background: #f4c542;
    color: #111;
}

.actions {
    display: flex;
    justify-content: center;
    gap: 20px;
}

/* RESTART BUTTON */

#restart-btn {
    padding: 12px 35px;

    background: #2a3440;
    color: #d1d5db;

    border: none;
    border-radius: 8px;

    font-size: 16px;
    cursor: pointer;

    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.5);

    transition: 0.25s;
}

#restart-btn:hover {
    background: #516074;
}


.next-btn {
    padding: 12px 35px;

    background: linear-gradient(180deg, #3b82f6, #1d4ed8);

    color: white;

    border-radius: 8px;

    text-decoration: none;

    font-size: 16px;

    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6);

    transition: 0.25s;
}

.next-btn:hover {
    background: linear-gradient(180deg, #60a5fa, #2563eb);
}

.button-link {
    text-decoration: none;
}


.time-btn.active,
.mode-btn.active {
    background: #f4c542;
    color: #111;

    box-shadow:
        0 0 10px rgba(244, 197, 66, 0.6),
        0 0 20px rgba(244, 197, 66, 0.4);
}


/* ===========================
   ABOUT PAGE
===========================*/

.about-hero{

text-align:center;

padding:40px 20px;

}

.about-hero h1{

font-size:42px;

color:#1e3a8a;

margin-bottom:20px;

}

.about-hero p{

font-size:20px;

color:#dfe305;

max-width:800px;

margin:auto;

line-height:1.8;

}
/* Legal Pages */

.about-section{

max-width:900px;

margin:25px auto;

}

.about-section h2{

color:#2563eb;

margin-bottom:15px;

font-size:30px;

}

.about-section p{

color:#d1d5db;

line-height:1.9;

font-size:18px;

}

.about-list{

padding-left:25px;

line-height:2;

color:#d1d5db;

}

.about-list li{

margin-bottom:10px;

}

/* Card */

.about-section{

background:#161d29;

padding:30px;

border-radius:18px;

box-shadow:0 10px 30px rgba(0,0,0,.35);

border:1px solid #2d3748;

transition:.3s;

}

.about-section:hover{

transform:translateY(-4px);

border-color:#2563eb;

}

.feature-grid{

display:grid;

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

gap:25px;

margin-top:30px;

}

.feature-card{

background:white;

border-radius:15px;

padding:25px;

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

transition:.3s;

}

.feature-card:hover{

transform:translateY(-8px);

}

.feature-card h3{

color:#2563eb;

margin-bottom:12px;

}

.feature-card p{
color: #000000;
font-size:16px;

line-height:1.7;

}

.about-list{

margin-left:25px;

line-height:2;

font-size:18px;

color:white;

}


/*=========================
404 PAGE
==========================*/

.home-btn{

display:inline-block;

padding:15px 35px;

background:#2563eb;

color:white;

text-decoration:none;

font-size:18px;

border-radius:10px;

transition:.3s;

}

.home-btn:hover{

background:#1d4ed8;

transform:translateY(-3px);
}

.seo-section{
    width:90%;
    max-width:1100px;
    margin:70px auto;
    color:white;
}

.seo-section h2{
    color:#4f8cff;
    margin-bottom:18px;
    margin-top:45px;
    font-size:32px;
}

.seo-section p{
    font-size:18px;
    line-height:1.8;
    color:#d5d5d5;
}

.feature-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:25px;
    margin-top:30px;
}

.feature-card{
    background:#121b27;
    padding:25px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,0.08);
    transition:.3s;
}

.feature-card:hover{
    transform:translateY(-5px);
}

.feature-card h3{
    color:#4f8cff;
    margin-bottom:12px;
}

.feature-card p{
    font-size:16px;
    color:#d7d7d7;
}