html{

scroll-behavior:smooth;

}

*{
margin:0;
padding:0;
box-sizing:border-box;
scroll-behavior:smooth;
}

body{
background:#050505;
color:white;
font-family:'Poppins', sans-serif;
overflow-x:hidden;
}

/* NAVBAR */

.navbar{
position:sticky;
top:0;
width:100%;
display:flex;
justify-content:space-between;
align-items:center;
padding:18px 8%;
background:rgba(5,5,5,0.92);
backdrop-filter:blur(14px);
z-index:1000;
border-bottom:1px solid rgba(255,255,255,0.05);
}

.logo{
width:75px;
}

.nav-links{
display:flex;
gap:30px;
}

.nav-links a{
color:white;
text-decoration:none;
transition:0.3s;
}

.nav-links a:hover{
color:#00c8ff;
}

.auth-buttons{
display:flex;
gap:15px;
}

.login-btn,
.register-btn{
padding:12px 24px;
border-radius:12px;
text-decoration:none;
font-weight:600;
transition:0.3s;
}

.login-btn{
border:1px solid #00c8ff;
color:#00c8ff;
}

.register-btn{
background:#00c8ff;
color:black;
}

.hero{
min-height:100vh;
display:flex;
justify-content:center;
align-items:center;
text-align:center;
padding:100px 8%;
background:
radial-gradient(circle at top left, rgba(0,200,255,0.12), transparent 35%),
radial-gradient(circle at bottom right, rgba(212,175,55,0.10), transparent 35%),
#050505;
}

.hero-content{
max-width:950px;
animation:fadeIn 1s ease;
}

.subtitle{
color:#00c8ff;
letter-spacing:4px;
font-size:14px;
margin-bottom:25px;
}

.hero h1{
font-size:80px;
line-height:1.1;
margin-bottom:25px;
font-weight:800;
}

.description{
font-size:22px;
color:#cccccc;
line-height:1.7;
margin-bottom:45px;
}

.hero-buttons{
display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;
}

.primary-btn,
.secondary-btn{
padding:18px 42px;
border-radius:14px;
font-size:18px;
font-weight:700;
cursor:pointer;
transition:0.3s;
}

.primary-btn{
background:#00c8ff;
border:none;
color:black;
}

.secondary-btn{
background:transparent;
border:2px solid #00c8ff;
color:#00c8ff;
}

.primary-btn:hover,
.secondary-btn:hover{
transform:translateY(-5px);
}

.section{
padding:120px 8%;
text-align:center;
}

.section h2{
font-size:52px;
margin-bottom:60px;
color:#00c8ff;
}

/* PROGRAM */

.program-container{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:30px;
}

.program-card{
background:#101010;
padding:40px;
border-radius:24px;
text-align:left;
border:1px solid rgba(255,255,255,0.05);
transition:0.3s;
}

.program-card:hover{
transform:translateY(-10px);
border-color:#00c8ff;
}

.program-card h3{
margin-bottom:25px;
color:#00c8ff;
}

.program-card ul{
padding-left:20px;
}

.program-card li{
margin-bottom:15px;
color:#cccccc;
}

/* RESULTS */

.results-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:25px;
}

.results-grid img{
width:100%;
border-radius:20px;
transition:0.3s;
border:2px solid transparent;
}

.results-grid img:hover{
transform:scale(1.03);
border-color:#00c8ff;
}

/* DARK */

.dark-section{
background:#080808;
}

/* VIDEOS */

.video-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:30px;
}

.video-card{
background:#101010;
padding:25px;
border-radius:24px;
}

.video-placeholder{
height:220px;
background:#181818;
border-radius:18px;
display:flex;
justify-content:center;
align-items:center;
margin-bottom:20px;
}

.video-placeholder i{
font-size:55px;
color:#00c8ff;
}

/* DASHBOARD */

.dashboard-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:30px;
}

.dashboard-card{
background:#101010;
padding:45px;
border-radius:24px;
transition:0.3s;
}

.dashboard-card:hover{
transform:translateY(-10px);
}

.dashboard-card i{
font-size:45px;
margin-bottom:25px;
color:#00c8ff;
}

/* LOGIN */

.login-container{
max-width:500px;
margin:auto;
display:flex;
flex-direction:column;
gap:20px;
}

.login-container input{
padding:18px;
background:#101010;
border:none;
border-radius:14px;
color:white;
font-size:16px;
outline:none;
}

.full-btn{
width:100%;
}

/* CONTACT */

.contact-description{
color:#cccccc;
margin-bottom:50px;
font-size:20px;
}

.social-links{
display:flex;
justify-content:center;
gap:25px;
flex-wrap:wrap;
}

.social-btn{
width:85px;
height:85px;
border-radius:50%;
display:flex;
justify-content:center;
align-items:center;
text-decoration:none;
font-size:35px;
transition:0.3s;
}

.social-btn:hover{
transform:translateY(-10px) scale(1.05);
}

.whatsapp{
background:#25D366;
color:white;
}

.instagram{
background:#E1306C;
color:white;
}

.facebook{
background:#1877F2;
color:white;
}

.mail{
background:#00c8ff;
color:black;
}

/* FOOTER */

footer{
padding:40px;
text-align:center;
background:black;
color:#777777;
}

/* ANIMATION */

@keyframes fadeIn{

from{
opacity:0;
transform:translateY(30px);
}

to{
opacity:1;
transform:translateY(0);
}

}

/* RESPONSIVE */

@media(max-width:768px){

.nav-links{
display:none;
}

.auth-buttons{
display:none;
}

.hero h1{
font-size:48px;
}

.description{
font-size:18px;
}

.section h2{
font-size:36px;
}

.logo{
width:65px;
}

}
.dashboard-page{

min-height:100vh;

background:#050505;

padding:60px 8%;

color:white;

font-family:'Poppins', sans-serif;

}

.dashboard-header{

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:60px;

flex-wrap:wrap;

gap:20px;

}

.dashboard-logo{

width:90px;

}

.logout-btn{

padding:15px 30px;

border:none;

border-radius:14px;

background:#00c8ff;

font-weight:700;

cursor:pointer;

}

.dashboard-content{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(300px,1fr));

gap:30px;

}

.dashboard-box{

background:#101010;

padding:40px;

border-radius:24px;

transition:0.3s;

border:1px solid rgba(255,255,255,0.05);

}

.dashboard-box:hover{

transform:translateY(-10px);

border-color:#00c8ff;

}

.dashboard-body{

background:#050505;

font-family:'Poppins', sans-serif;

display:flex;

min-height:100vh;

color:white;

}

/* SIDEBAR */

.sidebar{

width:260px;

background:#0d0d0d;

padding:40px 20px;

display:flex;

flex-direction:column;

gap:20px;

border-right:1px solid rgba(255,255,255,0.05);

}

.sidebar-logo{

width:90px;

margin-bottom:20px;

}

.sidebar h2{

font-size:24px;

margin-bottom:30px;

}

.sidebar a{

text-decoration:none;

color:white;

padding:14px 18px;

border-radius:12px;

transition:0.3s;

display:flex;

align-items:center;

gap:12px;

}

.sidebar a:hover{

background:#00c8ff;

color:black;

}

.logout-btn{

margin-top:auto;

padding:16px;

border:none;

border-radius:14px;

background:#00c8ff;

font-weight:700;

cursor:pointer;

}

/* CONTENT */

.dashboard-content-main{

flex:1;

padding:60px;

}

.dashboard-content-main h1{

font-size:42px;

margin-bottom:40px;

}

.stats-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

gap:25px;

margin-bottom:40px;

}

.stat-card{

background:#101010;

padding:40px;

border-radius:24px;

text-align:center;

border:1px solid rgba(255,255,255,0.05);

}

.stat-card h2{

font-size:42px;

color:#00c8ff;

}

.premium-box{

background:#101010;

padding:50px;

border-radius:30px;

border:1px solid rgba(255,255,255,0.05);

}

.video-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

gap:30px;

}

.video-card{

background:#101010;

padding:20px;

border-radius:24px;

}

.video-card iframe{

width:100%;

height:220px;

border:none;

border-radius:18px;

margin-bottom:15px;

}

.student-email{

margin-top:-20px;

margin-bottom:40px;

color:#00c8ff;

font-size:18px;

font-weight:500;

}

/* =========================
   DASHBOARD PREMIUM
========================= */

.dashboard-body{

background:#050505;

font-family:'Poppins', sans-serif;

display:flex;

min-height:100vh;

color:white;

}

/* SIDEBAR */

.sidebar{

width:280px;

background:#0d0d0d;

padding:40px 25px;

display:flex;

flex-direction:column;

gap:18px;

border-right:1px solid rgba(255,255,255,0.05);

position:fixed;

height:100vh;

left:0;

top:0;

}

.sidebar-logo{

width:90px;

margin-bottom:10px;

}

.sidebar h2{

font-size:26px;

margin-bottom:30px;

font-weight:700;

}

.sidebar a{

text-decoration:none;

color:white;

padding:16px 18px;

border-radius:16px;

transition:0.3s;

display:flex;

align-items:center;

gap:14px;

font-weight:500;

}

.sidebar a:hover{

background:#00c8ff;

color:black;

transform:translateX(6px);

}

.active-link{

background:#00c8ff;

color:black !important;

font-weight:700;

}

.logout-btn{

margin-top:auto;

padding:16px;

border:none;

border-radius:16px;

background:#00c8ff;

font-weight:700;

cursor:pointer;

font-size:16px;

display:flex;

align-items:center;

justify-content:center;

gap:10px;

transition:0.3s;

}

.logout-btn:hover{

transform:translateY(-4px);

box-shadow:0 0 20px rgba(0,200,255,0.4);

}

/* CONTENT */

.dashboard-content-main{

margin-left:260px;

padding:50px;

min-height:100vh;

width:calc(100% - 260px);

}

/* CENTRAGE UNIQUEMENT
   POUR CERTAINES PAGES */

.center-page{

display:flex;

justify-content:center;

align-items:center;

}

/* TOP */

.dashboard-top{

display:flex;

justify-content:space-between;

align-items:center;

flex-wrap:wrap;

gap:20px;

margin-bottom:40px;

}

.dashboard-top h1{

font-size:46px;

font-weight:800;

margin-bottom:10px;

}

.student-email{

color:#00c8ff;

font-size:18px;

font-weight:500;

}

.premium-badge{

background:#111;

padding:14px 24px;

border-radius:18px;

display:flex;

align-items:center;

gap:12px;

border:1px solid rgba(255,255,255,0.08);

font-weight:600;

}

.premium-badge i{

color:#ffd700;

font-size:20px;

}

/* STATS */

.stats-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(240px,1fr));

gap:25px;

margin-bottom:50px;

}

.stat-card{

background:#101010;

padding:35px;

border-radius:26px;

border:1px solid rgba(255,255,255,0.05);

transition:0.3s;

text-align:center;

}

.stat-card:hover{

transform:translateY(-8px);

border-color:#00c8ff;

box-shadow:0 0 25px rgba(0,200,255,0.15);

}

.stat-card i{

font-size:30px;

color:#00c8ff;

margin-bottom:18px;

}

.stat-card h2{

font-size:42px;

margin-bottom:10px;

}

/* PREMIUM BOX */

.premium-box{

background:linear-gradient(
135deg,
#101010,
#151515
);

padding:50px;

border-radius:32px;

margin-bottom:50px;

border:1px solid rgba(255,255,255,0.05);

overflow:hidden;

position:relative;

}

.premium-content{

display:flex;

justify-content:space-between;

align-items:center;

gap:40px;

flex-wrap:wrap;

}

.premium-content h2{

font-size:38px;

margin-bottom:20px;

}

.premium-content p{

font-size:18px;

line-height:1.8;

max-width:700px;

color:#cfcfcf;

margin-bottom:25px;

}

.academy-icon{

font-size:120px;

color:#00c8ff;

opacity:0.15;

}

/* MODULES */

.modules-preview{

margin-top:40px;

}

.modules-title{

font-size:34px;

margin-bottom:30px;

}

.modules-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:20px;

}

.module-item{

background:#101010;

padding:22px;

border-radius:20px;

border:1px solid rgba(255,255,255,0.05);

transition:0.3s;

font-weight:500;

line-height:1.5;

}

.module-item:hover{

transform:translateY(-6px);

border-color:#00c8ff;

box-shadow:0 0 20px rgba(0,200,255,0.12);

}

/* VIDEO PAGE */

.video-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(340px,1fr));

gap:30px;

}

.video-card{

background:#101010;

padding:20px;

border-radius:24px;

border:1px solid rgba(255,255,255,0.05);

transition:0.3s;

overflow:hidden;

}

.video-card:hover{

transform:translateY(-8px);

border-color:#00c8ff;

box-shadow:0 0 25px rgba(0,200,255,0.2);

}

.video-card iframe{

width:100%;

height:220px;

border:none;

border-radius:18px;

margin-bottom:18px;

background:#000;

}

.video-card h3{

font-size:18px;

line-height:1.6;

font-weight:600;

}

/* RESPONSIVE */

@media(max-width:950px){

.sidebar{

position:relative;

width:100%;

height:auto;

}

.dashboard-content-main{

margin-left:0;

padding:30px;

}

.dashboard-body{

flex-direction:column;

}

}

/* Cible la boîte qui contient toutes les icônes pour les centrer et les espacer */
.social-links {
    display: flex;
    justify-content: center;
    gap: 20px;          /* Espace de 20px entre chaque rond */
    margin-top: 30px;
}

/* Redimensionne les ronds de couleur */
.social-links .social-btn {
    width: 50px;        /* Largeur du rond (au lieu de géant) */
    height: 50px;       /* Hauteur du rond */
    border-radius: 50%; /* Rend le bouton parfaitement circulaire */
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: transform 0.3s ease; /* Petit effet fluide au survol */
}

/* Redimensionne précisément l'icône blanche (le logo) à l'intérieur du rond */
.social-links .social-btn i {
    font-size: 22px;    /* Taille de l'icône (ajustez si vous voulez plus petit ou plus grand) */
    color: #ffffff;     /* Force les logos à rester blancs */
}

/* Optionnel : Un petit effet de survol dynamique digne d'un site pro */
.social-links .social-btn:hover {
    transform: translateY(-5px); /* Le rond monte légèrement quand on passe la souris */
}

/* Style principal du footer */
.main-footer {
    background-color: #0b0c10; /* Un noir très profond qui rappelle votre thème dark */
    color: #c5c6c7;
    padding: 50px 20px 20px 20px;
    font-family: 'Poppins', sans-serif;
    border-top: 1px solid #1f2833; /* Fine ligne de séparation */
}

/* Conteneur des colonnes */
.footer-container {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 40px;
}

/* Style de chaque colonne */
.footer-column {
    flex: 1;
    min-width: 250px; /* Aligne proprement sur mobile */
}

.footer-column h3 {
    color: #66fcf1; /* Le bleu turquoise de votre logo/boutons */
    font-size: 18px;
    margin-bottom: 20px;
    font-weight: 600;
}

.footer-column p {
    font-size: 14px;
    line-height: 1.6;
    color: #45f3ff; /* Teinte bleutée textuelle légère */
}

/* Listes de liens */
.footer-column ul {
    list-style: none;
    padding: 0;
}

.footer-column ul li {
    margin-bottom: 12px;
}

.footer-column ul li a {
    color: #c5c6c7;
    text-decoration: none;
    font-size: 14px;
    transition: color 0.3s ease;
}

/* Effet au survol des liens */
.footer-column ul li a:hover {
    color: #66fcf1; /* Le lien s'allume en turquoise */
}

/* Ligne de copyright du bas */
.footer-bottom {
    text-align: center;
    margin-top: 40px;
    padding-top: 20px;
    border-top: 1px solid #1f2833;
    font-size: 13px;
    color: #c5c6c7;
}

/* =========================
   PROGRESSION
========================= */

.progress-container{

width:100%;

height:18px;

background:#111;

border-radius:30px;

overflow:hidden;

margin-top:18px;

margin-bottom:10px;

border:1px solid rgba(255,255,255,0.05);

}

.progress-bar{

height:100%;

width:0%;

background:linear-gradient(
90deg,
#00c8ff,
#00ffae
);

border-radius:30px;

transition:1s;

}

.progress-text{

font-size:16px;

font-weight:600;

color:#00c8ff;

}

/* =========================
   MODULES LOCKED
========================= */

.locked{

opacity:0.45;

pointer-events:none;

filter:blur(1px);

position:relative;

}

.locked::after{

content:"🔒 Module verrouillé";

position:absolute;

top:50%;

left:50%;

transform:translate(-50%,-50%);

background:#000;

padding:12px 20px;

border-radius:14px;

font-weight:700;

font-size:15px;

border:1px solid rgba(255,255,255,0.08);

}

.unlocked{

opacity:1;

pointer-events:auto;

filter:none;

}

/* =========================
   ADMIN PANEL
========================= */

.admin-users{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(280px,1fr));

gap:20px;

margin-top:40px;

}

.admin-card{

background:#111;

padding:25px;

border-radius:20px;

border:1px solid rgba(255,255,255,0.05);

transition:0.3s;

}

.admin-card:hover{

transform:translateY(-5px);

border-color:#00c8ff;

box-shadow:0 0 25px rgba(0,200,255,0.15);

}

.admin-card h3{

margin-bottom:15px;

color:#00c8ff;

}

/* =========================
   ADMIN STATS
========================= */

.admin-stats{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(220px,1fr));

gap:20px;

margin-top:40px;

margin-bottom:40px;

}

.admin-stat-card{

background:#111;

padding:30px;

border-radius:20px;

text-align:center;

border:1px solid rgba(255,255,255,0.05);

transition:0.3s;

}

.admin-stat-card:hover{

transform:translateY(-5px);

border-color:#00c8ff;

box-shadow:0 0 25px rgba(0,200,255,0.15);

}

.admin-stat-card h2{

font-size:38px;

color:#00c8ff;

margin-bottom:10px;

}

/* =========================
   DELETE BUTTON
========================= */

.delete-user-btn{

width:100%;

margin-top:20px;

padding:12px;

border:none;

border-radius:14px;

background:#ff3b3b;

color:white;

font-weight:700;

cursor:pointer;

transition:0.3s;

}

.delete-user-btn:hover{

transform:translateY(-3px);

box-shadow:0 0 18px rgba(255,59,59,0.35);

}

/* =========================
   PREMIUM BUTTON
========================= */

.premium-btn{

width:100%;

padding:12px;

margin-top:15px;

border:none;

border-radius:14px;

background:#00c8ff;

color:black;

font-weight:700;

cursor:pointer;

transition:0.3s;

}

.premium-btn:hover{

transform:translateY(-3px);

box-shadow:0 0 18px rgba(0,200,255,0.35);

}

/* =========================
   PROGRESS BAR
========================= */

.progress-container{

margin-top:40px;

margin-bottom:40px;

background:#111;

padding:30px;

border-radius:24px;

border:1px solid rgba(255,255,255,0.05);

}

.progress-container h2{

margin-bottom:20px;

}

.progress-bar{

width:100%;

height:35px;

background:#1a1a1a;

border-radius:50px;

overflow:hidden;

}

.progress-fill{

height:100%;

width:0%;

background:linear-gradient(
90deg,
#00c8ff,
#00ffae
);

display:flex;

align-items:center;

justify-content:center;

font-weight:700;

color:black;

border-radius:50px;

transition:1s;

}

/* =========================
   ANNOUNCEMENTS
========================= */

.announcement-box{

background:#111;

padding:30px;

border-radius:24px;

margin-bottom:40px;

border:1px solid rgba(255,255,255,0.05);

}

.announcement-box h2{

margin-bottom:20px;

}

.announcement-box textarea{

width:100%;

height:140px;

background:#1a1a1a;

border:none;

border-radius:18px;

padding:20px;

color:white;

font-size:16px;

resize:none;

outline:none;

margin-bottom:20px;

font-family:'Poppins',sans-serif;

}

#publish-announcement{

padding:14px 25px;

border:none;

border-radius:14px;

background:#00c8ff;

color:black;

font-weight:700;

cursor:pointer;

transition:0.3s;

}

#publish-announcement:hover{

transform:translateY(-3px);

box-shadow:0 0 18px rgba(0,200,255,0.35);

}

/* =========================
   STUDENT ANNOUNCEMENT
========================= */

.student-announcement{

background:#111;

padding:30px;

border-radius:24px;

margin-top:40px;

border:1px solid rgba(255,255,255,0.05);

}

.student-announcement h2{

margin-bottom:20px;

color:#00c8ff;

}

#announcement-message{

line-height:1.8;

font-size:17px;

}

/* =========================
   PROFILE
========================= */

.profile-card{

background:#111;

padding:40px;

border-radius:30px;

max-width:700px;

margin:auto;

text-align:center;

border:1px solid rgba(255,255,255,0.05);

}

.profile-avatar{

width:120px;

height:120px;

background:linear-gradient(
135deg,
#00c8ff,
#00ffae
);

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

font-size:45px;

color:black;

margin:auto;

margin-bottom:25px;

}

.profile-card h1{

margin-bottom:10px;

}

.profile-card p{

opacity:0.8;

}

.profile-info{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(200px,1fr));

gap:20px;

margin-top:40px;

}

.profile-info-box{

background:#1a1a1a;

padding:25px;

border-radius:20px;

}

/* =========================
   CERTIFICATE
========================= */

.certificate-card{

background:white;

color:black;

padding:60px;

border-radius:30px;

max-width:900px;

margin:auto;

text-align:center;

}

.certificate-logo{

width:120px;

margin-bottom:20px;

}

.certificate-card h1{

font-size:42px;

margin-bottom:20px;

}

.certificate-card h2{

font-size:38px;

margin:30px 0;

color:#00a8ff;

}

.certificate-info{

display:flex;

justify-content:space-between;

margin-top:50px;

font-weight:600;

flex-wrap:wrap;

gap:20px;

}

/* =========================
   SUPPORT
========================= */

.support-box{

background:#111;

padding:40px;

border-radius:30px;

max-width:800px;

margin:auto;

border:1px solid rgba(255,255,255,0.05);

}

.support-box h1{

margin-bottom:15px;

}

.support-box p{

margin-bottom:30px;

opacity:0.8;

}

.support-box textarea{

width:100%;

height:200px;

background:#1a1a1a;

border:none;

border-radius:20px;

padding:20px;

color:white;

font-size:16px;

resize:none;

outline:none;

margin-bottom:20px;

font-family:'Poppins',sans-serif;

}

.support-title{

margin-top:60px;

margin-bottom:20px;

}

.support-messages{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(300px,1fr));

gap:20px;

}

/* =========================
   PAYMENT
========================= */

.payment-box{

background:#111;

padding:50px;

border-radius:30px;

max-width:800px;

margin:auto;

text-align:center;

border:1px solid rgba(255,255,255,0.05);

}

.payment-price{

font-size:70px;

font-weight:800;

margin:25px 0;

background:linear-gradient(
90deg,
#00c8ff,
#00ffae
);

-webkit-background-clip:text;
background-clip: text;
-webkit-text-fill-color:transparent;

}

.payment-description{

line-height:2;

margin-bottom:40px;

opacity:0.9;

}

.payment-methods{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(250px,1fr));

gap:20px;

margin-bottom:40px;

}

.payment-card{

background:#1a1a1a;

padding:30px;

border-radius:24px;

}


/* =========================
   PAYMENT PAGE
========================= */

.payment-box{

background:#111;

padding:50px;

border-radius:30px;

max-width:900px;

margin:auto;

text-align:center;

border:1px solid rgba(255,255,255,0.05);

}

.payment-box h1{

font-size:42px;

margin-bottom:20px;

}

.payment-price{

font-size:80px;

font-weight:800;

margin:30px 0;

background:linear-gradient(
90deg,
#00c8ff,
#00ffae
);

-webkit-background-clip:text;
background-clip: text;
-webkit-text-fill-color:transparent;

}

.payment-description{

font-size:17px;

line-height:2;

opacity:0.9;

margin-bottom:50px;

}

/* =========================
   PAYMENT METHODS
========================= */

.payment-methods{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(220px,1fr));

gap:20px;

margin-bottom:40px;

}

.payment-card{

background:#1a1a1a;

padding:30px;

border-radius:24px;

transition:0.3s;

border:1px solid rgba(255,255,255,0.05);

}

.payment-card:hover{

transform:translateY(-5px);

box-shadow:0 0 25px rgba(0,200,255,0.15);

}

.payment-logo{

width:80px;

height:80px;

object-fit:contain;

margin-bottom:20px;

}

.payment-card h2{

font-size:20px;

}

/* =========================
   PAYMENT INSTRUCTIONS
========================= */

.payment-instructions{

background:#1a1a1a;

padding:30px;

border-radius:24px;

margin-bottom:40px;

text-align:left;

border:1px solid rgba(255,255,255,0.05);

}

.payment-instructions h2{

margin-bottom:20px;

color:#00c8ff;

}

.payment-instructions p{

line-height:2;

font-size:16px;

opacity:0.9;

}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:768px){

.payment-box{

padding:30px 20px;

}

.payment-price{

font-size:60px;

}

}

.premium-btn{

margin-top:15px;

padding:12px 20px;

border:none;

border-radius:12px;

background:#00c8ff;

color:black;

font-weight:700;

cursor:pointer;

transition:0.3s;

width:100%;

}

.premium-btn:hover{

transform:translateY(-3px);

}

/* =========================
   COMMENTS
========================= */

.comments-section{

margin-top:30px;

background:#111;

padding:25px;

border-radius:20px;

}

.comment-form{

display:flex;

gap:15px;

margin-bottom:20px;

flex-wrap:wrap;

}

.comment-input{

flex:1;

padding:15px;

border:none;

border-radius:14px;

background:#1a1a1a;

color:white;

outline:none;

font-family:'Poppins',sans-serif;

}

.comment-btn{

padding:15px 25px;

border:none;

border-radius:14px;

background:#00c8ff;

color:black;

font-weight:700;

cursor:pointer;

}

.comment-card{

background:#1a1a1a;

padding:18px;

border-radius:14px;

margin-bottom:15px;

}

.comment-card h4{

margin-bottom:10px;

color:#00c8ff;

}

/* =========================
   RESPONSIVE GLOBAL
========================= */

@media(max-width:1200px){

.dashboard-content-main{

padding:40px 25px;

}

.stats-grid,
.dashboard-grid,
.payment-methods,
.admin-stats,
.support-messages{

grid-template-columns:
repeat(auto-fit,minmax(250px,1fr));

}

}

/* TABLETTES */

@media(max-width:992px){

.navbar{

flex-direction:column;

gap:20px;

padding:20px;

}

.nav-links{

flex-wrap:wrap;

justify-content:center;

}

.hero h1{

font-size:50px;

line-height:1.2;

}

.sidebar{

width:100%;

height:auto;

position:relative;

padding:25px;

display:flex;

flex-wrap:wrap;

justify-content:center;

gap:15px;

}

.dashboard-content-main{

margin-left:0;

width:100%;

}

}

/* MOBILES */

@media(max-width:768px){

.hero{

padding:120px 20px 80px;

text-align:center;

}

.hero h1{

font-size:38px;

}

.hero-buttons{

flex-direction:column;

width:100%;

}

.primary-btn,
.secondary-btn{

width:100%;

}

.section{

padding:80px 20px;

}

.program-container,
.results-grid,
.dashboard-grid,
.stats-grid,
.payment-methods{

grid-template-columns:1fr;

}

.payment-price{

font-size:55px;

}

.dashboard-content-main{

padding:30px 20px;

}

.login-container{

padding:30px 20px;

}

.comment-form{

flex-direction:column;

}

.comment-btn{

width:100%;

}

}

/* PETITS MOBILES */

@media(max-width:480px){

.hero h1{

font-size:30px;

}

.payment-box{

padding:25px 15px;

}

.payment-price{

font-size:45px;

}

.sidebar{

padding:20px 10px;

}

.sidebar a{

width:100%;

text-align:center;

}

}

.sidebar{

position:fixed;

left:0;

top:0;

width:260px;

height:100vh;

overflow-y:auto;

z-index:1000;

background:#050505;

border-right:1px solid rgba(255,255,255,0.05);

}

.stats-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(250px,1fr));

gap:25px;

margin-top:40px;

}

.stat-card{

width:100%;

min-height:220px;

}

.premium-box{

margin-top:50px;

width:100%;

max-width:100%;

overflow:hidden;

}

@media(max-width:992px){

.sidebar{

position:relative;

width:100%;

height:auto;

}

.dashboard-content-main{

margin-left:0;

width:100%;

padding:30px 20px;

}

}

@media(max-width:768px){

.stats-grid{

grid-template-columns:1fr;

}

.hero h1{

font-size:36px;

}

.payment-box{

width:100%;

}

}

/* =========================
   PROFILE
========================= */

.profile-card{

background:#111;

padding:50px;

border-radius:30px;

width:100%;

max-width:1100px;

margin:auto;

border:1px solid rgba(255,255,255,0.05);

}

.profile-top{

display:flex;

align-items:center;

gap:30px;

margin-bottom:50px;

flex-wrap:wrap;

}

.profile-avatar{

width:130px;

height:130px;

border-radius:50%;

background:linear-gradient(
135deg,
#00c8ff,
#00ffae
);

display:flex;

justify-content:center;

align-items:center;

font-size:55px;

color:black;

font-weight:700;

}

.profile-top h1{

font-size:38px;

margin-bottom:10px;

}

.profile-top p{

opacity:0.8;

}

.profile-info-grid{

display:grid;

grid-template-columns:
repeat(auto-fit,minmax(220px,1fr));

gap:25px;

margin-bottom:50px;

}

.profile-info-box{

background:#1a1a1a;

padding:30px;

border-radius:24px;

}

.profile-info-box h3{

margin-bottom:15px;

color:#00c8ff;

}

.profile-progress-section{

margin-top:30px;

}

@media(max-width:768px){

.profile-card{

padding:30px 20px;

}

.profile-top{

flex-direction:column;

text-align:center;

}

.profile-top h1{

font-size:30px;

}

}

/* =========================
   LEGAL PAGES
========================= */

.legal-container{

max-width:1000px;

margin:auto;

background:#111;

padding:50px;

border-radius:30px;

line-height:2;

border:1px solid rgba(255,255,255,0.05);

}

.legal-container h1{

font-size:45px;

margin-bottom:40px;

}

.legal-container h2{

margin-top:40px;

margin-bottom:20px;

color:#00c8ff;

}

.legal-container p{

opacity:0.9;

margin-bottom:20px;

}

.legal-container ul{

padding-left:20px;

}

.legal-container li{

margin-bottom:15px;

}

@media(max-width:768px){

.legal-container{

padding:30px 20px;

}

.legal-container h1{

font-size:34px;

}

}

.risk-warning{

margin-top:30px;

font-size:14px;

opacity:0.7;

line-height:1.8;

text-align:center;

}

/* =========================
   FAQ SECTION
========================= */

.faq-section{

padding:120px 8%;

}

.faq-container{

max-width:900px;

margin:auto;

display:flex;

flex-direction:column;

gap:20px;

}

.faq-item{

background:#111;

border-radius:20px;

overflow:hidden;

border:1px solid rgba(255,255,255,0.05);

transition:0.3s;

}

.faq-item:hover{

transform:translateY(-3px);

}

.faq-question{

width:100%;

background:none;

border:none;

padding:25px;

display:flex;

justify-content:space-between;

align-items:center;

color:white;

font-size:18px;

font-weight:600;

cursor:pointer;

}

.faq-answer{

max-height:0;

overflow:hidden;

transition:0.4s ease;

padding:0 25px;

}

.faq-answer p{

padding-bottom:25px;

line-height:1.8;

opacity:0.8;

}

.faq-item.active .faq-answer{

max-height:300px;

}

.faq-item.active i{

transform:rotate(45deg);

}

.faq-question i{

transition:0.3s;

}

@media(max-width:768px){

.faq-question{

font-size:16px;

padding:20px;

}

}

/* =========================
   PREMIUM ANIMATIONS
========================= */

.stat-card,
.program-card,
.result-card,
.payment-card,
.module-item,
.profile-info-box,
.admin-card{

transition:
0.35s ease;

}

.stat-card:hover,
.program-card:hover,
.result-card:hover,
.payment-card:hover,
.module-item:hover,
.profile-info-box:hover,
.admin-card:hover{

transform:
translateY(-8px);

box-shadow:
0 15px 40px rgba(0,200,255,0.15);

}

/* BOUTONS */

.primary-btn,
.secondary-btn{

transition:0.3s;

}

.primary-btn:hover{

transform:translateY(-3px) scale(1.03);

}

.secondary-btn:hover{

transform:translateY(-3px);

}

.sidebar a{

transition:0.3s ease;

}

.sidebar a:hover{

background:rgba(0,200,255,0.12);

transform:translateX(5px);

}

.active-link{

background:rgba(0,200,255,0.15);

border-left:4px solid #00c8ff;

}

/* =========================
   LEGAL PREMIUM
========================= */

.legal-container{

background:
linear-gradient(
145deg,
#0d0d0d,
#161616
);

box-shadow:
0 15px 40px rgba(0,0,0,0.4);

}

.legal-container h1{

background:
linear-gradient(
90deg,
#00c8ff,
#00ffae
);

-webkit-background-clip:text;
background-clip: text;
-webkit-text-fill-color:
transparent;

}

.legal-container h2{

position:relative;

padding-left:20px;

}

.legal-container h2::before{

content:"";

position:absolute;

left:0;

top:5px;

width:5px;

height:80%;

background:#00c8ff;

border-radius:20px;

}

.legal-container p{

font-size:17px;

}

/* ========================================
   RESPONSIVE FINAL — NATHAN TRADING
======================================== */

/* TABLET */

@media screen and (max-width: 1024px){

.dashboard-content-main{
margin-left:0;
padding:30px 20px;
width:100%;
}

.sidebar{
position:relative;
width:100%;
height:auto;
display:flex;
flex-wrap:wrap;
justify-content:center;
align-items:center;
gap:12px;
padding:20px;
}

.sidebar h2{
width:100%;
text-align:center;
margin-bottom:10px;
}

.sidebar a,
.logout-btn{
width:48%;
justify-content:center;
}

.stats-grid,
.dashboard-grid,
.program-container,
.results-grid,
.modules-grid,
.profile-info-grid,
.support-cards,
.admin-stats{
grid-template-columns:repeat(2,1fr);
}

.hero h1{
font-size:52px;
line-height:1.1;
}

.hero-content{
padding:40px 20px;
}

.navbar{
padding:18px 25px;
flex-wrap:wrap;
gap:20px;
}

.nav-links{
flex-wrap:wrap;
justify-content:center;
}

.video-card iframe{
height:320px;
}

}

/* MOBILE */

@media screen and (max-width: 768px){

body{
overflow-x:hidden;
}

.navbar{
flex-direction:column;
align-items:center;
padding:20px;
gap:20px;
}

.logo{
width:70px;
}

.nav-links{
flex-direction:column;
gap:15px;
width:100%;
text-align:center;
}

.auth-buttons{
width:100%;
display:flex;
justify-content:center;
gap:15px;
flex-wrap:wrap;
}

.hero{
padding:120px 20px 80px;
min-height:auto;
}

.hero h1{
font-size:38px;
line-height:1.2;
text-align:center;
}

.subtitle,
.description{
text-align:center;
}

.hero-buttons{
flex-direction:column;
align-items:center;
}

.primary-btn,
.secondary-btn{
width:100%;
max-width:320px;
}

.section{
padding:70px 20px;
}

.section h2{
font-size:32px;
text-align:center;
}

.program-container,
.results-grid,
.dashboard-grid,
.stats-grid,
.modules-grid,
.profile-info-grid,
.support-cards,
.admin-stats{
grid-template-columns:1fr;
}

.program-card,
.dashboard-card,
.stat-card,
.module-item,
.profile-info-box,
.support-card,
.admin-stat-card{
width:100%;
}

.dashboard-body{
flex-direction:column;
}

.sidebar{
position:relative;
width:100%;
height:auto;
padding:20px;
display:flex;
flex-direction:column;
align-items:center;
gap:15px;
}

.sidebar-logo{
width:80px;
}

.sidebar a,
.logout-btn{
width:100%;
max-width:320px;
justify-content:center;
}

.dashboard-content-main{
margin-left:0;
width:100%;
padding:25px 15px;
}

.dashboard-top{
flex-direction:column;
gap:25px;
align-items:flex-start;
}

.premium-badge{
width:100%;
justify-content:center;
}

.progress-container{
padding:20px;
}

.premium-content{
flex-direction:column;
text-align:center;
gap:30px;
}

.academy-icon{
font-size:70px;
}

.modules-title{
font-size:30px;
text-align:center;
}

.video-card{
padding:20px;
}

.video-card iframe{
height:220px;
border-radius:16px;
}

.comments-section{
padding:20px 15px;
}

.comment-form{
flex-direction:column;
}

.comment-input{
width:100%;
}

.comment-btn{
width:100%;
}

.login-container{
padding:30px 20px;
}

.login-container input{
font-size:15px;
}

.footer-container{
grid-template-columns:1fr;
gap:40px;
text-align:center;
}

.footer-column ul{
padding:0;
}

.payment-box,
.profile-card,
.support-box,
.certificate-card,
.admin-card{
padding:25px 20px;
}

.certificate-card h1{
font-size:32px;
}

#student-name{
font-size:36px;
}

.certificate-info{
flex-direction:column;
gap:25px;
text-align:center;
}

.profile-top{
flex-direction:column;
text-align:center;
gap:20px;
}

.profile-avatar{
margin:auto;
}

.admin-users{
grid-template-columns:1fr;
}

textarea{
min-height:140px;
}

.support-header h1,
.profile-card h1,
.admin-panel h1{
font-size:32px;
text-align:center;
}

.results-grid img{
height:230px;
object-fit:cover;
}

}

/* PETITS MOBILES */

@media screen and (max-width: 480px){

.hero h1{
font-size:30px;
}

.section h2{
font-size:28px;
}

.primary-btn,
.secondary-btn{
font-size:14px;
padding:14px 20px;
}

.video-card iframe{
height:190px;
}

.payment-price{
font-size:42px;
}

.certificate-card h1{
font-size:26px;
}

#student-name{
font-size:28px;
}

.modules-title{
font-size:24px;
}

.dashboard-top h1{
font-size:28px;
}

}

/* ========================================
   RESPONSIVE IMAGES
======================================== */

img{
max-width:100%;
height:auto;
display:auto;
}

/* ========================================
   FLEX SECURITY
======================================== */

*{
box-sizing:border-box;
}

/* ========================================
   SCROLLBAR PREMIUM
======================================== */

::-webkit-scrollbar{
width:10px;
}

::-webkit-scrollbar-track{
background:#0b0f1c;
}

::-webkit-scrollbar-thumb{
background:#00ffae;
border-radius:20px;
}

/* ========================================
   ANIMATIONS
======================================== */

.video-card,
.program-card,
.dashboard-card,
.stat-card,
.profile-info-box,
.support-card,
.admin-card{
transition:0.3s ease;
}

.video-card:hover,
.program-card:hover,
.dashboard-card:hover,
.stat-card:hover,
.profile-info-box:hover,
.support-card:hover,
.admin-card:hover{
transform:translateY(-6px);
}


/* ==========================================
   CORRECTION TEMPORAIRE POUR TOUT REAFFICHER
   ========================================== */

/* 1. Force l'affichage des sections bloquées par AOS */
[data-aos] {
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
}

@media(max-width:768px){

.navbar{

flex-direction:column;

gap:20px;

padding:20px;

}

.nav-links{

flex-wrap:wrap;

justify-content:center;

gap:15px;

}

.auth-buttons{

width:100%;

justify-content:center;

}

}

.hero-warning{

margin-top:20px;

font-size:14px;

opacity:0.7;

line-height:1.7;

}

/* =========================
   LEGAL PAGES
========================= */

.legal-container{

max-width:1000px;

margin:auto;

background:#111;

padding:50px;

border-radius:30px;

line-height:2;

border:1px solid rgba(255,255,255,0.05);

}

.legal-container h1{

font-size:45px;

margin-bottom:40px;

}

.legal-container h2{

margin-top:40px;

margin-bottom:20px;

color:#00c8ff;

}

.legal-container p{

opacity:0.9;

margin-bottom:20px;

}

.legal-container ul{

padding-left:20px;

}

.legal-container li{

margin-bottom:15px;

}

@media(max-width:768px){

.legal-container{

padding:30px 20px;

}

.legal-container h1{

font-size:34px;

}

}

.results-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
gap:20px;
}

.results-grid img{
width:100%;
height:auto;
display:block;
border-radius:15px;
object-fit:cover;
}

.results-grid img{
width:100%;
height:auto;
object-fit:contain;
}

.video-card.locked{
    opacity:.5;
    pointer-events:none;
    position:relative;
}

.video-card.locked::after{
    content:"🔒 Module verrouillé";
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    background:#111;
    color:#fff;
    padding:10px 20px;
    border-radius:10px;
    font-weight:600;
}

.locked {
    opacity: .55;
    pointer-events: none;
    position: relative;
}

.lock-overlay {
    text-align: center;
    padding: 20px;
}

.lock-overlay i {
    font-size: 32px;
    margin-bottom: 10px;
    color: #f5b942;
}

.module-status.locked {
    background: #ff3d3d;
}

/* =========================
   LEGAL PAGES
========================= */

.legal-section{
    min-height:100vh;
    padding:120px 20px 80px;
    background:#0d1117;
}

.legal-container{
    max-width:1000px;
    margin:auto;
    background:#161b22;
    padding:40px;
    border-radius:20px;
    border:1px solid rgba(255,255,255,.08);
    box-shadow:0 10px 40px rgba(0,0,0,.3);
}

.legal-container h1{
    font-size:2.5rem;
    margin-bottom:30px;
    color:#ffffff;
}

.legal-container h2{
    margin-top:30px;
    margin-bottom:10px;
    color:#f5b942;
}

.legal-container p,
.legal-container li{
    color:#d1d5db;
    line-height:1.8;
    margin-bottom:15px;
}

.legal-container ul{
    padding-left:20px;
}

/* MOBILE */

@media(max-width:768px){

    .legal-container{
        padding:25px;
    }

    .legal-container h1{
        font-size:2rem;
    }

}


/* =====================
AUTH PAGES
===================== */

.auth-body{
min-height:100vh;
display:flex;
justify-content:center;
align-items:center;
background:#0f172a;
padding:20px;
}

.auth-container{
width:100%;
max-width:450px;
background:#111827;
padding:40px;
border-radius:20px;
text-align:center;
box-shadow:0 0 30px rgba(0,255,174,.15);
}

.auth-logo{
width:90px;
margin-bottom:20px;
}

.auth-container h1{
color:white;
margin-bottom:10px;
}

.auth-container p{
color:#9ca3af;
margin-bottom:25px;
}

.auth-container form{
display:flex;
flex-direction:column;
gap:15px;
}

.auth-container input{
width:100%;
padding:15px;
border:none;
border-radius:10px;
background:#1f2937;
color:white;
}

.auth-btn{
width:100%;
}

.auth-links{
margin-top:20px;
}

.auth-links a{
color:#00ffae;
text-decoration:none;
font-weight:600;
}

.password-box{
position:relative;
}

.toggle-password{
position:absolute;
right:15px;
top:50%;
transform:translateY(-50%);
cursor:pointer;
color:#999;
}


/* ==========================
   AUTH PAGES
========================== */

.auth-body{

min-height:100vh;

display:flex;

justify-content:center;

align-items:center;

padding:30px;

background:#0b0f17;

}

.auth-container{

width:100%;

max-width:450px;

padding:40px;

border-radius:20px;

background:#121a28;

text-align:center;

box-shadow:0 0 40px rgba(0,255,174,.1);

}

.auth-logo{

width:90px;

margin-bottom:20px;

}

.auth-container h1{

margin-bottom:10px;

color:white;

}

.auth-container p{

color:#b5b5b5;

margin-bottom:20px;

}

.auth-container form{

display:flex;

flex-direction:column;

gap:15px;

}

.auth-container input{

padding:15px;

border:none;

border-radius:10px;

background:#1b2435;

color:white;

font-size:15px;

}

.auth-container input:focus{

outline:none;

border:1px solid #00ffae;

}

.auth-switch{

margin-top:20px;

}

.auth-switch a{

color:#00ffae;

text-decoration:none;

font-weight:600;

}

.password-box{
position:relative;
width:100%;
}

.password-box input{
width:100%;
}

.password-box i{
position:absolute;
right:15px;
top:50%;
transform:translateY(-50%);
cursor:pointer;
color:#999;
}

.forgot-password{
text-align:center;
margin-top:15px;
}

.forgot-password a{
color:#00d4ff;
text-decoration:none;
font-weight:600;
}

.forgot-password a:hover{
text-decoration:underline;
}

.password-container{
position:relative;
width:100%;
}

.password-container input{
width:100%;
}

.toggle-password{
position:absolute;
right:15px;
top:50%;
transform:translateY(-50%);
cursor:pointer;
font-size:18px;
user-select:none;
}

.toggle-password:hover{
opacity:0.8;
}

/* CONTAINER DU BOUTON GOOGLE */
.google-btn-container {
    display: flex;
    justify-content: center;
    margin-top: 15px;
    width: 100%;
}

/* LE BOUTON GOOGLE */
.google-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    background-color: #ffffff;
    color: #1f2937; /* Texte gris très foncé/noir */
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 14px;
    width: 100%;
    max-width: 340px; /* Aligné sur ton bouton bleu */
    padding: 12px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
}

/* EFFET AU SURVOL */
.google-btn:hover {
    background-color: #f1f5f9; /* Un blanc légèrement grisé */
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
}

/* EFFET AU CLIC */
.google-btn:active {
    transform: translateY(0);
}

/* CONTAINER DU BOUTON GOOGLE */
.google-btn-container {
    display: flex;
    justify-content: center;
    margin-top: 15px;
    width: 100%;
}

/* LE BOUTON GOOGLE */
.google-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    background-color: #ffffff;
    color: #1f2937; /* Texte gris très foncé/noir */
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    font-size: 14px;
    width: 100%;
    max-width: 340px; /* Aligné sur ton bouton bleu */
    padding: 12px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
}

/* EFFET AU SURVOL */
.google-btn:hover {
    background-color: #f1f5f9; /* Un blanc légèrement grisé */
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.3);
}

/* EFFET AU CLIC */
.google-btn:active {
    transform: translateY(0);
}

/* FORMATTAGE DE L'ICÔNE GOOGLE */
.google-btn i {
    font-size: 18px;
    color: #ea4335; /* Rouge Google original */
}

/* CONTAINER DU BOUTON GOOGLE */
.google-btn-container {
    display: flex;
    justify-content: center;
    margin-top: 15px;
    width: 100%;
}
/* Style moderne pour le bouton Google en mode sombre */
.google-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    background: rgba(255, 255, 255, 0.05); /* Fond très sombre et transparent */
    color: #ffffff; /* Texte blanc */
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    width: 100%;
    max-width: 340px;
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, 0.2); /* Bordure discrète */
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.google-btn:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: #00d2ff; /* Le bleu de ton académie au survol */
}

.google-btn i {
    font-size: 18px;
    color: #ffffff; /* Icône blanche pour rester sobre */
}