/* =========================
   BACKGROUND FX
========================= */

body{
    margin:0;
    font-family:Arial;

    color:white;
    min-height:100vh;

    background:linear-gradient(-45deg,#050608,#0b1324,#18263d,#0d1117,#06080d);
    background-size:400% 400%;
    animation:bg 15s infinite;

    overflow-x:hidden;
}

/* خطوط الشبكة المتحركة */
body::before{
    content:"";
    position:fixed;
    inset:0;

    background:
    repeating-linear-gradient(
        90deg,
        transparent 0,
        transparent 120px,
        rgba(255,255,255,.03) 121px
    ),
    repeating-linear-gradient(
        0deg,
        transparent 0,
        transparent 120px,
        rgba(255,255,255,.02) 121px
    );

    animation:gridMove 18s linear infinite;
    pointer-events:none;
}

/* glow light */
body::after{
    content:"";
    position:fixed;
    width:600px;
    height:600px;
    left:-200px;
    top:-200px;

    background:radial-gradient(circle,rgba(0,170,255,.2),transparent 70%);
    filter:blur(80px);

    animation:lightMove 14s ease-in-out infinite alternate;

    pointer-events:none;
}
/* =========================
   HEADER
========================= */

.header{
    position:fixed;
    top:20px;
    left:50%;
    transform:translateX(-50%);

    width:92%;
    height:70px;

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:0 25px;

    background:rgba(255,255,255,.05);
    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.1);
    border-radius:18px;

    z-index:1000;
}

/* logo */
.logo{
    font-size:22px;
    font-weight:bold;
}

/* nav */
nav{
    display:flex;
    gap:12px;
}

/* links */
nav a{
    color:#cfd3ff;
    text-decoration:none;

    padding:10px 14px;
    border-radius:10px;

    transition:.3s;

    position:relative;
}

/* hover نيون */
nav a:hover{
    color:white;
    transform:translateY(-2px);

    box-shadow:0 0 15px rgba(0,170,255,.5);
}

/* underline neon */
nav a::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:5px;
    transform:translateX(-50%);

    width:0;
    height:2px;

    background:#00b7ff;

    transition:.3s;
}

nav a:hover::after{
    width:60%;
}
@keyframes bg{
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}

/* HEADER */
.header{
    position:fixed;
    top:20px;
    left:50%;
    transform:translateX(-50%);

    width:92%;
    height:70px;

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:0 25px;

    /* 💎 شفاف (Glass) */
    background:rgba(255,255,255,.05);
    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.1);
    border-radius:18px;

    z-index:1000;

    /* لمسة نيون خفيفة */
    box-shadow:0 10px 30px rgba(0,0,0,.4);
}
/* =========================
   MOBILE MENU BUTTON
========================= */

.menu-toggle{
    display:none;
    font-size:28px;
    cursor:pointer;
    color:white;
}

/* =========================
   MOBILE NAV
========================= */

@media(max-width:768px){

    .menu-toggle{
        display:block;
    }

    nav{
        position:absolute;
        top:80px;
        left:50%;
        transform:translateX(-50%);

        width:90%;

        display:none;
        flex-direction:column;
        gap:10px;

        /* 🔥 هذا أهم تعديل (بدون شفافية) */
        background:#0b0f1a;

        border:1px solid rgba(0,170,255,.25);

        padding:15px;
        border-radius:15px;

        z-index:2000; /* فوق كل شيء */

        box-shadow:
        0 15px 40px rgba(0,0,0,.6);
    }

    nav a{
        padding:12px;
        text-align:center;
    }

    nav.show{
        display:flex;
    }
}

/* GRID */
.grid{
    width:90%;
    margin:160px auto 60px; /* 👈 هذا المهم (كان قريب من الهيدر) */

    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:15px;
}
.hero{
    text-align:center;
    margin-top:120px;
    padding:20px;
    position:relative;
    z-index:2;
}

.hero h1{
    font-size:50px;
    margin-bottom:15px;
    text-shadow:0 0 20px rgba(0,170,255,.3);
}

.hero p{
    max-width:700px;
    margin:auto;
    color:#cfd3ff;
    line-height:1.6;
    font-size:16px;
}
/* CARD */
.card{
    background:rgba(255,255,255,.06);
    border:1px solid rgba(0,170,255,.3);
    border-radius:15px;
    padding:15px;
    backdrop-filter:blur(15px);
    transition:.3s;
}

.card:hover{
    transform:translateY(-8px);
    box-shadow:0 0 25px rgba(0,170,255,.5);
    border:1px solid rgba(0,170,255,.9);
}

/* PREVIEW */
.preview{
    display:flex;
    justify-content:center;
    align-items:center;
    height:100px;
}

/* BUTTON */
.btn{
    padding:10px 15px;
    border-radius:10px;
    border:1px solid rgba(0,170,255,.4);
    background:transparent;
    color:white;
}

/* ACTIONS */
.actions{
    display:flex;
    gap:8px;
    margin-top:10px;
}

.actions button{
    flex:1;
    padding:8px;
    font-size:12px;
    border-radius:8px;
    border:1px solid rgba(255,255,255,.2);
    background:rgba(0,0,0,.3);
    color:white;
    cursor:pointer;
}

.actions button:hover{
    border:1px solid rgba(0,170,255,.8);
    box-shadow:0 0 10px rgba(0,170,255,.4);
}
@keyframes bg{
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}

@keyframes gridMove{
    from{transform:translateY(0)}
    to{transform:translateY(120px)}
}

@keyframes lightMove{
    from{transform:translate(0,0)}
    to{transform:translate(500px,250px)}
}
/* =========================
   NEW HOME PAGE SECTIONS
========================= */

.hero{
    width:min(1100px,90%);
    margin:0 auto;
    padding:180px 0 100px;
    text-align:center;
    position:relative;
    z-index:2;
}

.hero-tag,
.section-heading p,
.about-content > p{
    color:#5ed7ff;
    font-size:12px;
    font-weight:800;
    letter-spacing:2px;
    margin:0 0 16px;
}

.hero h1{
    margin:0;
    font-size:clamp(42px,7vw,78px);
    line-height:1.05;
    letter-spacing:-2px;
}

.hero h1 span{
    color:#72ddff;
    text-shadow:0 0 30px rgba(0,183,255,.35);
}

.hero-description{
    max-width:720px;
    margin:25px auto 0;
    color:#cfd3ff;
    line-height:1.8;
    font-size:17px;
}

.hero-buttons{
    display:flex;
    justify-content:center;
    gap:14px;
    margin-top:32px;
    flex-wrap:wrap;
}

.primary-hero-btn,
.secondary-hero-btn,
.show-more-btn,
.back-home-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    padding:14px 21px;
    border-radius:12px;
    font-weight:800;
    transition:.3s;
}

.primary-hero-btn{
    color:#03131c;
    background:#6fdbff;
    box-shadow:0 10px 25px rgba(0,183,255,.25);
}

.primary-hero-btn:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 30px rgba(0,183,255,.4);
}

.secondary-hero-btn{
    color:#d8f6ff;
    border:1px solid rgba(114,221,255,.35);
    background:rgba(255,255,255,.04);
}

.secondary-hero-btn:hover{
    background:rgba(114,221,255,.12);
    transform:translateY(-4px);
}

.hero-stats{
    display:flex;
    justify-content:center;
    gap:15px;
    margin-top:55px;
    flex-wrap:wrap;
}

.hero-stats div{
    min-width:155px;
    padding:16px 20px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:14px;
    background:rgba(255,255,255,.04);
    backdrop-filter:blur(10px);
}

.hero-stats strong{
    display:block;
    color:#72ddff;
    font-size:22px;
    margin-bottom:5px;
}

.hero-stats span{
    color:#aebbd5;
    font-size:13px;
}

.services-section,
.featured-section,
.about-section,
.all-components-section{
    width:min(1200px,90%);
    margin:0 auto;
    position:relative;
    z-index:2;
}

.services-section{
    padding:50px 0 90px;
}

.section-heading{
    text-align:center;
    max-width:700px;
    margin:0 auto 35px;
}

.section-heading h2{
    margin:0;
    font-size:clamp(28px,4vw,42px);
    line-height:1.2;
}

.services-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
}

.service-card{
    padding:24px;
    border:1px solid rgba(255,255,255,.11);
    border-radius:18px;
    background:rgba(255,255,255,.05);
    backdrop-filter:blur(12px);
    transition:.3s;
}

.service-card:hover{
    transform:translateY(-7px);
    border-color:rgba(0,183,255,.55);
    box-shadow:0 16px 30px rgba(0,0,0,.25);
}

.service-icon{
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    border-radius:13px;
    background:rgba(0,183,255,.13);
    color:#72ddff;
    font-size:23px;
    margin-bottom:18px;
}

.service-card h3{
    margin:0 0 10px;
    font-size:17px;
}

.service-card p{
    margin:0;
    color:#b6c1d9;
    line-height:1.7;
    font-size:14px;
}

.featured-section{
    padding:20px 0 95px;
}

.show-more-box{
    text-align:center;
    margin-top:30px;
}

.show-more-btn{
    color:#05141b;
    background:linear-gradient(135deg,#72ddff,#36b8ff);
    box-shadow:0 12px 25px rgba(0,183,255,.22);
}

.show-more-btn:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 32px rgba(0,183,255,.35);
}

.show-more-box p{
    color:#aebbd5;
    font-size:14px;
    margin-top:15px;
}

.about-section{
    padding:0 0 100px;
}

.about-content{
    padding:45px;
    text-align:center;
    border:1px solid rgba(0,183,255,.22);
    border-radius:22px;
    background:linear-gradient(135deg,rgba(0,183,255,.1),rgba(139,92,246,.08));
    backdrop-filter:blur(15px);
}

.about-content h2{
    margin:0;
    font-size:clamp(27px,4vw,42px);
}

.about-content span{
    display:block;
    max-width:650px;
    margin:18px auto 0;
    color:#cfd3ff;
    line-height:1.8;
}

/* =========================
   BUTTONS PAGE
========================= */

.components-hero{
    width:min(850px,90%);
    margin:0 auto;
    padding:170px 0 50px;
    text-align:center;
    position:relative;
    z-index:2;
}

.components-hero h1{
    margin:0;
    font-size:clamp(42px,6vw,68px);
}

.components-hero > p:not(.hero-tag){
    max-width:600px;
    margin:18px auto 25px;
    color:#cfd3ff;
    line-height:1.7;
}

.back-home-btn{
    color:#ccefff;
    border:1px solid rgba(114,221,255,.35);
    background:rgba(255,255,255,.04);
}

.back-home-btn:hover{
    background:rgba(114,221,255,.13);
    transform:translateY(-3px);
}

.all-components-section{
    padding-bottom:80px;
}

/* اسم الزر داخل الكارد */

.component-name{
    margin:0 0 12px;
    color:#dff8ff;
    font-size:14px;
    font-weight:800;
}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:900px){

    .services-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:560px){

    .services-grid{
        grid-template-columns:1fr;
    }

    .hero-stats{
        gap:10px;
    }

    .hero-stats div{
        min-width:135px;
    }
}
/* =========================
   BUTTON CARDS SPACING
========================= */

.grid{
    gap:28px;
}

.component-card{
    margin:0;
    padding:18px;
}

.preview{
    min-height:150px;
    padding:28px 20px;
}

.actions{
    margin-top:14px;
    gap:12px;
}
/* إزالة أي خط تحت اللوقو */

.logo,
.logo:hover,
.logo:focus,
.logo:visited{
    text-decoration:none !important;
}

.logo::after{
    display:none !important;
}
/* =========================
   COPY BUTTONS DESIGN
========================= */

.actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:15px;
}

.actions button{
    position:relative;
    overflow:hidden;
    padding:11px 12px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:10px;
    background:linear-gradient(
        135deg,
        rgba(255,255,255,.08),
        rgba(255,255,255,.02)
    );
    color:#dff8ff;
    font-size:12px;
    font-weight:800;
    letter-spacing:.7px;
    cursor:pointer;
    transition:.3s;
}

.actions button:first-child{
    border-color:rgba(0,183,255,.38);
}

.actions button:last-child{
    border-color:rgba(139,92,246,.38);
}

.actions button::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,.18),
        transparent
    );
    transform:translateX(-120%);
    transition:.55s;
}

.actions button:hover::before{
    transform:translateX(120%);
}

.actions button:hover{
    transform:translateY(-3px);
    color:white;
    box-shadow:0 10px 20px rgba(0,0,0,.25);
}

.actions button:first-child:hover{
    background:rgba(0,183,255,.15);
    box-shadow:0 10px 22px rgba(0,183,255,.18);
}

.actions button:last-child:hover{
    background:rgba(139,92,246,.15);
    box-shadow:0 10px 22px rgba(139,92,246,.18);
}
/* =========================
   GLASS BUTTON CARDS
========================= */

.grid{
    gap:32px;
}

.component-card{
    margin:0;
    padding:18px;
    min-height:230px;

    background:linear-gradient(
        135deg,
        rgba(255,255,255,.10),
        rgba(255,255,255,.025)
    );

    border:1px solid rgba(255,255,255,.18);
    border-top-color:rgba(255,255,255,.32);
    border-left-color:rgba(255,255,255,.26);

    border-radius:22px;

    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);

    box-shadow:
        0 18px 35px rgba(0,0,0,.25),
        inset 0 1px 0 rgba(255,255,255,.12);

    transition:transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}

.component-card:hover{
    transform:translateY(-8px);
    border-color:rgba(114,221,255,.55);

    box-shadow:
        0 22px 45px rgba(0,0,0,.35),
        0 0 28px rgba(0,183,255,.14),
        inset 0 1px 0 rgba(255,255,255,.18);
}

.component-name{
    margin:0 0 15px;
    padding-bottom:12px;

    color:#ffffff;
    font-size:14px;
    font-weight:800;
    letter-spacing:.4px;

    border-bottom:1px solid rgba(255,255,255,.10);
}

.preview{
    min-height:125px;
    padding:25px 18px;

    background:rgba(2,8,20,.22);
    border:1px solid rgba(255,255,255,.07);
    border-radius:15px;
}

.actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:15px;
}

.actions button{
    padding:11px 12px;
    border:1px solid rgba(255,255,255,.15);
    border-radius:10px;

    background:rgba(255,255,255,.06);
    color:#ffffff;

    font-size:12px;
    font-weight:800;
    letter-spacing:.7px;

    cursor:pointer;
    transition:.25s;
}

.actions button:hover{
    transform:translateY(-3px);
    background:rgba(0,183,255,.16);
    border-color:rgba(114,221,255,.65);
    box-shadow:0 8px 18px rgba(0,183,255,.14);
}

/* =========================
   LOGO ALWAYS WHITE
========================= */

.logo,
.logo:hover,
.logo:focus,
.logo:active,
.logo:visited{
    color:#ffffff !important;
    text-decoration:none !important;
    text-shadow:none !important;
}

/* يمنع أي خط أو تأثير تحت اسم الموقع */
.logo::before,
.logo::after{
    content:none !important;
    display:none !important;
}
.show-more-btn,
.show-more-btn:hover,
.show-more-btn:focus,
.show-more-btn:active,
.show-more-btn:visited{
    text-decoration: none !important;
}
/* =========================
   BIG FORM CARDS
========================= */

.forms-grid{
    grid-template-columns:repeat(auto-fit,minmax(420px,1fr));
    gap:35px;
}

.forms-grid .component-card{
    min-height:560px;
    padding:24px;
}

.forms-grid .preview{
    min-height:410px;
    padding:35px 25px;
    align-items:flex-start;
    overflow:auto;
}

.forms-grid .component-name{
    font-size:16px;
    margin-bottom:18px;
}

@media(max-width:560px){

    .forms-grid{
        grid-template-columns:1fr;
    }

    .forms-grid .component-card{
        min-height:500px;
        padding:16px;
    }

    .forms-grid .preview{
        min-height:360px;
        padding:22px 12px;
    }
}
/* =========================
   LAYBRARY FOOTER - LIGHT THEME
========================= */

.footer{
    position: relative;
    overflow: hidden;
    margin-top: 120px;
    padding: 75px 8% 25px;
    background: #f8f7ff;
    border-top: 1px solid #e7e3f8;
    color: #252334;
}

.footer::before{
    content: "";
    position: absolute;
    top: 0;
    left: 8%;
    width: 180px;
    height: 2px;
    background: linear-gradient(90deg, transparent, #7c5cff, transparent);
}

.footer-container{
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1.6fr 0.8fr 1fr;
    gap: 60px;
    max-width: 1250px;
    margin: auto;
}

.footer-logo{
    display: inline-block;
    margin-bottom: 18px;
    color: #242234;
    font-size: 2rem;
    font-weight: 800;
    letter-spacing: -1px;
    text-decoration: none;
}

.footer-logo span{
    color: #7657f5;
}

.footer-brand p{
    max-width: 330px;
    margin-bottom: 25px;
    color: #747184;
    font-size: 0.95rem;
    line-height: 1.8;
}

.linkedin-link{
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 11px 16px;
    border: 1px solid #ddd7ff;
    border-radius: 12px;
    color: #4e3bb2;
    background: #ffffff;
    text-decoration: none;
    transition: 0.3s ease;
}

.linkedin-link svg{
    width: 19px;
    height: 19px;
    fill: #7657f5;
    transition: 0.3s ease;
}

.linkedin-link:hover{
    transform: translateY(-4px);
    border-color: #7657f5;
    color: white;
    background: #7657f5;
    box-shadow: 0 12px 25px rgba(118,87,245,0.22);
}

.linkedin-link:hover svg{
    fill: white;
}

.footer-links h3,
.footer-creator h3{
    margin-bottom: 20px;
    color: #28253a;
    font-size: 1rem;
}

.footer-links{
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.footer-links a{
    width: fit-content;
    color: #747184;
    font-size: 0.94rem;
    text-decoration: none;
    transition: 0.25s ease;
}

.footer-links a:hover{
    padding-left: 7px;
    color: #7657f5;
}

.creator-name{
    margin-bottom: 10px;
    color: #5b42d6;
    font-size: 1.1rem;
    font-weight: 700;
}

.footer-creator > p:not(.creator-name){
    max-width: 260px;
    margin-bottom: 15px;
    color: #747184;
    font-size: 0.94rem;
    line-height: 1.8;
}

.email-link{
    color: #5b42d6;
    font-size: 0.9rem;
    text-decoration: none;
    border-bottom: 1px solid #cfc7ff;
    transition: 0.25s ease;
}

.email-link:hover{
    color: #332487;
    border-color: #332487;
}

.footer-bottom{
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    max-width: 1250px;
    margin: 65px auto 0;
    padding-top: 23px;
    border-top: 1px solid #e3dff3;
    color: #898697;
    font-size: 0.85rem;
}

.footer-heart{
    color: #7657f5;
    font-size: 1rem;
}

.footer-bottom strong{
    color: #5b42d6;
}

.footer-glow{
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    filter: blur(10px);
}

.footer-glow-one{
    width: 330px;
    height: 330px;
    top: -190px;
    left: -100px;
    background: rgba(118,87,245,0.10);
}

.footer-glow-two{
    width: 280px;
    height: 280px;
    right: -90px;
    bottom: -170px;
    background: rgba(120,184,255,0.12);
}

@media (max-width: 800px){

    .footer{
        padding: 60px 7% 22px;
    }

    .footer-container{
        grid-template-columns: 1fr;
        gap: 38px;
    }

    .footer-bottom{
        flex-direction: column;
        margin-top: 45px;
        gap: 10px;
    }

}