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

.docs-page{
    max-width:1400px;
    margin:auto;
    padding:80px 30px;
}

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

.docs-hero{
    text-align:center;
    margin-bottom:80px;
}

.docs-hero span{
    color:var(--blue);
    font-weight:700;
    letter-spacing:.15em;
    font-size:.9rem;
}

.docs-hero h1{
    font-size:clamp(3rem,6vw,5.5rem);
    line-height:1;
    margin:20px 0;
}

.docs-hero p{
    max-width:800px;
    margin:auto;
    color:var(--text-soft);
    font-size:1.15rem;
    line-height:1.8;
}

/* =========================
   LAYOUT
========================= */

.docs-layout{
    display:grid;
    grid-template-columns:280px 1fr;
    gap:40px;
}

/* =========================
   SIDEBAR
========================= */

.docs-sidebar{
    position:sticky;
    top:110px;
    height:max-content;

    padding:28px;

    border-radius:24px;

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

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

    backdrop-filter:blur(20px);
}

.docs-sidebar h3{
    margin:25px 0 15px;
    color:white;
    font-size:1rem;
}

.docs-sidebar h3:first-child{
    margin-top:0;
}

.docs-sidebar a{
    display:block;

    text-decoration:none;

    color:var(--text-soft);

    margin:12px 0;

    transition:.25s;
}

.docs-sidebar a:hover{
    color:var(--blue);

    transform:translateX(5px);
}

/* =========================
   CONTENT
========================= */

.docs-content{
    width:100%;
}

.doc-section{
    margin-bottom:80px;
}

.doc-section h2{
    font-size:2.2rem;
    margin-bottom:18px;
}

.doc-section p{
    color:var(--text-soft);
    line-height:1.8;
    margin-bottom:20px;
}

/* =========================
   TERMINAL BLOCK
========================= */

.terminal-block{
    position:relative;

    border-radius:24px;

    overflow:hidden;

    background:rgba(10,16,34,.92);

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

    box-shadow:0 20px 50px rgba(0,0,0,.35);
}

.terminal-block::before{
    content:"";

    display:block;

    height:55px;

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

    background:
    linear-gradient(
        to right,
        transparent,
        rgba(36,200,255,.05)
    );
}

.terminal-block::after{
    content:"● ● ●";

    position:absolute;

    top:17px;
    left:20px;

    color:#ff5f57;
    letter-spacing:8px;

    font-size:14px;
}

.terminal-block pre{
    color:var(--green);

    padding:30px;

    font-size:1rem;

    line-height:2;

    overflow-x:auto;

    font-family:Consolas, monospace;
}

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

.faq-card{
    padding:28px;

    margin-bottom:20px;

    border-radius:20px;

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

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

    transition:.3s;
}

.faq-card:hover{
    border-color:var(--blue);

    transform:translateY(-3px);
}

.faq-card h3{
    margin-bottom:10px;
}

.faq-card p{
    margin:0;
}

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

.docs-cta{

    text-align:center;

    margin-top:120px;

    padding:80px 40px;

    border-radius:30px;

    background:
    linear-gradient(
        135deg,
        rgba(36,200,255,.08),
        rgba(139,92,246,.08)
    );

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

.docs-cta h2{
    font-size:3rem;
    margin-bottom:15px;
}

.docs-cta p{
    color:var(--text-soft);
    margin-bottom:30px;
}

/* =========================
   TABLES
========================= */

.docs-table{
    width:100%;

    border-collapse:collapse;

    margin-top:20px;
}

.docs-table th{
    text-align:left;

    padding:16px;

    background:rgba(255,255,255,.06);
}

.docs-table td{
    padding:16px;

    border-top:1px solid rgba(255,255,255,.06);
}

.docs-table tr:hover{
    background:rgba(255,255,255,.03);
}

/* =========================
   CODE INLINE
========================= */

code{
    padding:4px 8px;

    border-radius:8px;

    color:var(--green);

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

    font-family:Consolas, monospace;
}

/* =========================
   LIGHT MODE
========================= */

body.light .docs-sidebar,
body.light .faq-card{
    background:rgba(255,255,255,.92);

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

body.light .terminal-block{
    background:#ffffff;

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

body.light .terminal-block pre{
    color:#059669;
}

body.light .docs-sidebar h3{
    color:#111827;
}

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

@media(max-width:1100px){

    .docs-layout{
        grid-template-columns:1fr;
    }

    .docs-sidebar{
        position:static;
    }
}

@media(max-width:768px){

    .docs-page{
        padding:50px 20px;
    }

    .docs-hero h1{
        font-size:3rem;
    }

    .doc-section h2{
        font-size:1.8rem;
    }

    .docs-cta h2{
        font-size:2rem;
    }
}