/* ============ RESET ============ */
*{box-sizing:border-box}
body,html{margin:0;padding:0;font-family:'Inter',system-ui,sans-serif}
a{text-decoration:none;transition:0.2s}




/* Cache le menu mobile sur desktop */
.mobile-nav {
    display: none;
}

/* Affiche le menu mobile seulement sur petits écrans */
@media (max-width: 768px) {
    .mobile-nav {
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
        background: #fff;
        border-top: 1px solid #eee;
        padding: 1rem;
    }
}


/* RTL menu */
.site-header[dir="rtl"] .header-inner{ direction: rtl; }
.site-header[dir="rtl"] .main-nav{ direction: rtl; }
.site-header[dir="rtl"] .nav-link{ font-weight:600; }

/* ============ THEME COLORS ============ */
:root{
    --green:#89CF55;
    --blue:#1BC4EB;
    --ink:#0f172a;
    --muted:#6b7280;
    --bg:#ffffff;
    --soft:#f9fafb;
    --radius:14px;
    --shadow:0 6px 18px rgba(0,0,0,.06);
}
[data-theme="dark"]{
    --bg:#0c111b;
    --ink:#e5e7eb;
    --muted:#9ca3af;
    --soft:#1a2232;
    --shadow:0 6px 24px rgba(0,0,0,.4);
}

/* ============ STRUCTURE ============ */
.container{max-width:1200px;margin:0 auto;padding:0 20px}
.page{padding:40px 0;background:var(--bg);color:var(--ink)}

/* ============ HEADER ============ */
.site-header{
    position:sticky;top:0;z-index:100;background:var(--bg);
    box-shadow:0 2px 8px rgba(0,0,0,.04);
}
.header-inner{
    display:flex;align-items:center;justify-content:space-between;
    height:70px;
}
.brand-text{
    font-size:1.5rem;
    font-weight:800;
    background:linear-gradient(90deg,var(--green),var(--blue));
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
}
.main-nav{display:flex;gap:24px}
.nav-link{
    color:var(--ink);
    font-weight:500;
    padding:8px 0;
    position:relative;
}
.nav-link::after{
    content:"";
    position:absolute;
    bottom:0;left:0;width:0;height:2px;
    background:linear-gradient(90deg,var(--green),var(--blue));
    transition:width .3s;
}
.nav-link:hover::after{width:100%;}
.header-actions{display:flex;align-items:center;gap:12px}
.theme-toggle,.menu-toggle{
    border:none;background:var(--soft);
    color:var(--ink);
    border-radius:10px;
    width:38px;height:38px;
    cursor:pointer;
    display:grid;place-items:center;
    box-shadow:var(--shadow);
}
.menu-toggle{display:none;}
@media (max-width:900px){
    .main-nav{display:none;}
    .menu-toggle{display:grid;}
    .mobile-nav{display:none;flex-direction:column;background:var(--bg);
        border-top:1px solid var(--soft);padding:10px 20px;}
    .menu-open .mobile-nav{display:flex;}
    .mobile-nav .nav-link{padding:10px 0;}
}

/* ============ BUTTONS ============ */
.btn-primary{
    background:linear-gradient(90deg,var(--green),var(--blue));
    color:#fff;border:none;padding:10px 20px;
    border-radius:var(--radius);cursor:pointer;
    font-weight:600;box-shadow:0 4px 14px rgba(0,0,0,.1);
}
.btn-primary:hover{filter:brightness(1.05);}
.btn-outline{
    border:2px solid var(--green);color:var(--green);
    background:transparent;border-radius:var(--radius);
    padding:10px 20px;font-weight:600;
}
.btn-outline:hover{background:var(--green);color:#fff}

/* ============ FOOTER ============ */
.site-footer{
    background:var(--soft);
    color:var(--ink);
    border-top:4px solid var(--green);
    margin-top:60px;
    padding-top:30px;
}
.footer-grid{
    display:grid;
    grid-template-columns:2fr 1fr 1fr;
    gap:24px;
    padding-bottom:30px;
}
.footer-title{
    font-weight:700;margin-bottom:10px;color:var(--blue);
}
.footer-list{list-style:none;padding:0;margin:0;display:grid;gap:6px;}
.footer-list a{color:var(--ink);}
.footer-list a:hover{color:var(--blue);}
.footer-bottom{
    border-top:1px solid rgba(0,0,0,.05);
    padding:10px 0;text-align:center;color:var(--muted);
}

/* ============ UTILITAIRES ============ */
.muted{color:var(--muted);}
.small{font-size:0.9rem;}
.xsmall{font-size:0.8rem;}
.shadow{box-shadow:var(--shadow);}
.rounded{border-radius:var(--radius);}
