:root{

    --card-bg:rgba(255,255,255,.03);
    --card-border:rgba(255,255,255,.08);

}

/* ==========================================
   Documentation Hero
========================================== */

.docs-hero{

    min-height:85vh;

    display:flex;

    justify-content:center;

    align-items:center;

    text-align:center;

    padding:180px 8% 120px;

    position:relative;

}

.docs-hero-content{

    max-width:900px;

    margin:auto;

}

.docs-hero h1{

    font-size:clamp(3rem,6vw,5rem);

    line-height:1.1;

    margin:30px 0;

}

.docs-hero p{

    max-width:760px;

    margin:0 auto;

    color:var(--muted);

    line-height:1.9;

    font-size:1.15rem;

}

.docs-search{

    margin:55px auto 0;

    max-width:700px;

    display:flex;

    background:var(--card-bg);

    border:1px solid var(--card-border);

    border-radius:18px;

    overflow:hidden;

    backdrop-filter:blur(12px);

}

.docs-search input{

    flex:1;

    background:none;

    border:none;

    outline:none;

    padding:22px 26px;

    color:white;

    font-size:16px;

}

.docs-search input::placeholder{

    color:var(--muted);

}

.docs-search button{

    width:80px;

    border:none;

    background:var(--primary);

    color:white;

    font-size:22px;

    cursor:pointer;

    transition:var(--transition);

}

.docs-search button:hover{

    background:var(--primary-hover);

}

/* ==========================================
   Categories
========================================== */

.docs-categories{

    padding:140px 8%;

}

.docs-grid{

    display:grid;

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

    gap:32px;

    margin-top:70px;

}

.doc-card{

    display:block;

    background:linear-gradient(
        180deg,
        rgba(30,41,59,.95),
        rgba(23,32,51,.95)
    );

    border:1px solid var(--card-border);

    border-radius:24px;

    padding:38px;

    color:var(--text);

    transition:var(--transition);

    position:relative;

    overflow:hidden;

}

.doc-card::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:5px;

    height:100%;

    background:var(--primary);

    transform:scaleY(0);

    transition:var(--transition);

}

.doc-card:hover{

    transform:translateY(-10px);

    border-color:var(--primary);

    box-shadow:0 20px 50px rgba(59,130,246,.22);

}

.doc-card:hover::before{

    transform:scaleY(1);

}

.doc-icon{

    width:72px;

    height:72px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:18px;

    background:rgba(59,130,246,.12);

    font-size:34px;

    margin-bottom:28px;

}

.doc-card h3{

    font-size:26px;

    margin-bottom:18px;

}

.doc-card p{

    color:var(--muted);

    line-height:1.8;

}

/* ==========================================
   Quick Links
========================================== */

.quick-links{

    padding:120px 8%;

}

.quick-grid{

    display:grid;

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

    gap:25px;

    margin-top:60px;

}

.quick-card{

    background:var(--card-bg);

    border:1px solid var(--card-border);

    border-radius:18px;

    padding:24px 28px;

    transition:var(--transition);

    font-weight:600;

}

.quick-card:hover{

    transform:translateY(-6px);

    border-color:var(--primary);

    color:var(--primary);

}

/* ==========================================
   Latest Updates
========================================== */

.updates{

    padding:140px 8%;

}

.updates-grid{

    display:grid;

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

    gap:30px;

    margin-top:60px;

}

.update-card{

    background:var(--card-bg);

    border:1px solid var(--card-border);

    border-radius:24px;

    padding:36px;

    transition:var(--transition);

    backdrop-filter:blur(10px);

}

.update-card:hover{

    transform:translateY(-10px);

    border-color:var(--primary);

    box-shadow:0 20px 50px rgba(59,130,246,.20);

}

.update-version{

    display:inline-block;

    padding:8px 16px;

    border-radius:999px;

    background:rgba(59,130,246,.12);

    color:var(--primary);

    font-size:14px;

    font-weight:700;

    margin-bottom:22px;

}

.update-card h3{

    font-size:24px;

    margin-bottom:18px;

}

.update-card p{

    color:var(--muted);

    line-height:1.8;

}

/* ==========================================
   Statistics
========================================== */

.stats{

    padding:140px 8%;

}

.stats-grid{

    display:grid;

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

    gap:30px;

    margin-top:60px;

}

.stat-box{

    text-align:center;

    padding:45px 30px;

    border-radius:24px;

    background:var(--card-bg);

    border:1px solid var(--card-border);

    transition:var(--transition);

}

.stat-box:hover{

    transform:translateY(-10px);

    border-color:var(--primary);

    box-shadow:0 20px 50px rgba(59,130,246,.20);

}

.stat-box h3{

    font-size:52px;

    color:var(--primary);

    margin-bottom:12px;

}

.stat-box span{

    color:var(--muted);

    font-size:17px;

}

/* ==========================================
   FAQ Preview
========================================== */

.faq-preview{

    padding:140px 8%;

}

.faq-grid{

    display:grid;

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

    gap:30px;

    margin-top:60px;

}

.faq-card{

    background:var(--card-bg);

    border:1px solid var(--card-border);

    border-radius:24px;

    padding:35px;

    transition:var(--transition);

}

.faq-card:hover{

    transform:translateY(-8px);

    border-color:var(--primary);

    box-shadow:0 18px 45px rgba(59,130,246,.18);

}

.faq-card h3{

    font-size:23px;

    margin-bottom:18px;

}

.faq-card p{

    color:var(--muted);

    line-height:1.8;

}

/* ==========================================
   CTA
========================================== */

.docs-cta{

    padding:150px 8%;

}

.cta-content{

    max-width:900px;

    margin:auto;

    text-align:center;

    padding:70px 60px;

    border-radius:30px;

    background:linear-gradient(
        180deg,
        rgba(30,41,59,.95),
        rgba(17,24,39,.95)
    );

    border:1px solid rgba(59,130,246,.15);

    box-shadow:0 25px 70px rgba(59,130,246,.12);

}

.cta-content h2{

    font-size:clamp(2.5rem,4vw,3.6rem);

    margin:25px 0;

}

.cta-content p{

    max-width:700px;

    margin:0 auto;

    color:var(--muted);

    line-height:1.9;

}

.cta-content .buttons{

    display:flex;

    justify-content:center;

    gap:20px;

    flex-wrap:wrap;

    margin-top:45px;

}

/* ==========================================
   Small animations
========================================== */

.doc-card,
.quick-card,
.update-card,
.stat-box,
.faq-card{

    will-change:transform;

}

.doc-card:hover .doc-icon{

    transform:scale(1.08) rotate(-6deg);

}

.doc-icon{

    transition:var(--transition);

}

/* ==========================================
   Responsive
========================================== */

@media (max-width:900px){

    .docs-hero{

        padding:160px 8% 100px;

        min-height:auto;

    }

    .docs-search{

        flex-direction:column;

    }

    .docs-search button{

        width:100%;

        height:64px;

    }

    .docs-categories,
    .quick-links,
    .updates,
    .stats,
    .faq-preview,
    .docs-cta{

        padding:100px 8%;

    }

    .docs-grid,
    .quick-grid,
    .updates-grid,
    .faq-grid{

        gap:20px;

    }

    .cta-content{

        padding:45px 30px;

    }

    .cta-content .buttons{

        flex-direction:column;

        align-items:center;

    }

    .cta-content .buttons a{

        width:100%;

        max-width:320px;

    }

}