:root{
  --bg:#050807;
  --panel:#0b100f;
  --panel2:#101817;
  --text:#edf7f4;
  --muted:#95aaa3;
  --green:#00d99a;
  --green2:#00ffb3;
  --border:rgba(0,255,179,.22);
  --shadow:0 25px 80px rgba(0,0,0,.55);
}
*{box-sizing:border-box;scroll-behavior:smooth}
body{margin:0;font-family:Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden}
.bg-glow{position:fixed;inset:0;z-index:-2;background:radial-gradient(circle at 15% 20%,rgba(0,255,179,.16),transparent 28%),radial-gradient(circle at 85% 70%,rgba(0,217,154,.12),transparent 28%),linear-gradient(135deg,#020303,#07110f 55%,#020303)}
.bg-glow:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 0 18%,rgba(0,255,179,.12) 18.2%,transparent 18.6% 80%,rgba(0,255,179,.12) 80.2%,transparent 80.7%)}
.topbar{position:fixed;top:0;left:0;right:0;z-index:10;height:78px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;background:rgba(5,8,7,.72);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}
.brand{display:flex;align-items:center;gap:14px;color:var(--text);text-decoration:none;font-weight:800;text-transform:uppercase;letter-spacing:1px}.brand img{width:54px;height:54px;object-fit:cover;border-radius:14px;border:1px solid var(--border)}
nav{display:flex;align-items:center;gap:10px}nav a{color:var(--muted);text-decoration:none;padding:11px 14px;border-radius:12px;font-weight:650}nav a:hover,.discord{color:var(--text);background:rgba(0,255,179,.10);border:1px solid var(--border)}.burger{display:none;background:none;border:0;color:white;font-size:28px}
.section{padding:110px 6vw}.hero{min-height:100vh;display:grid;grid-template-columns:1fr .9fr;gap:45px;align-items:center}.badge{display:inline-flex;color:var(--green2);border:1px solid var(--border);background:rgba(0,255,179,.08);padding:9px 13px;border-radius:999px;font-weight:700}h1{font-size:clamp(42px,5vw,76px);line-height:1;margin:20px 0}h2{font-size:clamp(30px,3vw,46px);margin:8px 0 18px}.lead{font-size:20px;color:var(--muted);max-width:760px;line-height:1.7}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border-radius:14px;text-decoration:none;color:var(--text);border:1px solid var(--border);background:rgba(255,255,255,.04);font-weight:800}.btn.primary{background:linear-gradient(135deg,var(--green),#007f63);box-shadow:0 12px 35px rgba(0,255,179,.18);border:0}.heroCard{padding:18px;border:1px solid var(--border);border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));box-shadow:var(--shadow)}.heroCard img{width:100%;display:block;border-radius:20px}.sectionTitle p{color:var(--green2);font-weight:800;text-transform:uppercase;letter-spacing:2px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card,.skills div,.shopBox{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid var(--border);border-radius:22px;padding:26px;box-shadow:var(--shadow)}.card span{color:var(--green2);font-weight:900}.card p,.skills span,.shopBox p{color:var(--muted);line-height:1.7}.skills{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.skills b{display:block;margin-bottom:8px;color:var(--green2)}.shopBox{display:flex;align-items:center;justify-content:space-between;gap:25px}footer{display:flex;justify-content:space-between;gap:20px;padding:26px 6vw;color:var(--muted);border-top:1px solid var(--border)}footer a{color:var(--green2)}.reveal{opacity:0;transform:translateY(25px);transition:.8s ease}.reveal.show{opacity:1;transform:none}
@media(max-width:900px){.burger{display:block}nav{position:absolute;top:78px;left:5vw;right:5vw;display:none;flex-direction:column;background:#07100e;border:1px solid var(--border);border-radius:18px;padding:14px}nav.open{display:flex}.hero{grid-template-columns:1fr;padding-top:130px}.grid,.skills{grid-template-columns:1fr}.shopBox{flex-direction:column;align-items:flex-start}.section{padding:85px 5vw}}
nav a.active{color:var(--text);background:rgba(0,255,179,.14);border:1px solid var(--border)}
.page{padding-top:135px;min-height:calc(100vh - 90px)}
.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:28px}.gallery.three{grid-template-columns:repeat(3,1fr)}
.work{display:block;color:var(--text);text-decoration:none;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid var(--border);border-radius:22px;overflow:hidden;box-shadow:var(--shadow)}
.work img{max-width:100%;width:auto;height:auto;display:block;margin:0 auto;object-fit:contain}.gallery.three .work img{height:auto}.work span{display:block;padding:16px 18px 4px;color:var(--green2);font-weight:900;text-transform:uppercase;letter-spacing:1px}.work p{padding:0 18px 20px;color:var(--muted);line-height:1.6}.muted{color:var(--muted)}
@media(max-width:900px){.gallery,.gallery.three{grid-template-columns:1fr}.work img,.gallery.three .work img{height:auto}}


/* Améliorations portfolio moderne */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.stats article,.ctaBox,.product,.faq details{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow)}
.stats article{padding:24px;text-align:center}
.stats strong{display:block;color:var(--green2);font-size:34px}
.stats span{color:var(--muted);font-weight:700}
.ctaBox{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:34px}
.shopGrid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}
.product{overflow:hidden;display:flex;flex-direction:column}
.product img{width:100%;height:auto;display:block;object-fit:contain;background:rgba(0,0,0,.25)}
.product div{padding:20px;flex:1}
.product .btn{margin:0 20px 20px;text-align:center}
.tag{display:inline-flex;color:var(--green2);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}
.faq{margin-top:38px}
.faq details{padding:18px 20px;margin-bottom:12px}
.faq summary{cursor:pointer;font-weight:800;color:var(--green2)}
.discordFloat{position:fixed;right:24px;bottom:24px;z-index:20;background:linear-gradient(135deg,var(--green),var(--green2));color:#03110d;text-decoration:none;font-weight:900;padding:14px 18px;border-radius:999px;box-shadow:0 15px 45px rgba(0,255,179,.28)}
.lightbox{position:fixed;inset:0;z-index:99;background:rgba(0,0,0,.86);display:none;align-items:center;justify-content:center;padding:30px}
.lightbox.open{display:flex}
.lightbox img{max-width:95vw;max-height:90vh;border-radius:16px;border:1px solid var(--border);box-shadow:var(--shadow)}
#lightboxClose{position:fixed;top:22px;right:28px;background:rgba(255,255,255,.08);border:1px solid var(--border);color:white;border-radius:12px;font-size:34px;width:55px;height:55px;cursor:pointer}
.work img{width:100%;height:auto;object-fit:contain;display:block;background:rgba(0,0,0,.22)}
.work{cursor:pointer}
.work:hover{transform:translateY(-4px);box-shadow:0 20px 60px rgba(0,255,179,.10)}
@media(max-width:900px){
  .stats{grid-template-columns:repeat(2,1fr)}
  .ctaBox{flex-direction:column;align-items:flex-start}
}
@media(max-width:560px){
  .stats{grid-template-columns:1fr}
  .discordFloat{right:14px;bottom:14px}
}

.logo-showcase{display:flex;justify-content:center;gap:40px;flex-wrap:wrap;padding:30px 0}
.logo-showcase img{max-width:220px;height:auto;filter:drop-shadow(0 0 20px rgba(0,255,180,.25))}


.server-brand{display:flex;align-items:center;gap:25px}
.server-logo{width:140px;height:140px;object-fit:contain;border-radius:16px;filter:drop-shadow(0 0 15px rgba(0,255,170,.35))}


/* Panel administrateur local */
.dynamicTitle{margin-top:42px}
.adminGrid{display:grid;grid-template-columns:minmax(320px,.8fr) 1.2fr;gap:24px;margin-top:30px}
.adminForm,.adminListBox{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));border:1px solid var(--border);border-radius:22px;padding:26px;box-shadow:var(--shadow)}
.adminForm label{display:block;margin:14px 0;color:var(--muted);font-weight:700}
.adminForm input,.adminForm textarea{width:100%;margin-top:8px;padding:14px 15px;border-radius:14px;border:1px solid var(--border);background:rgba(0,0,0,.28);color:var(--text);outline:none;font:inherit}
.adminForm input:focus,.adminForm textarea:focus{border-color:var(--green2);box-shadow:0 0 0 3px rgba(0,255,179,.08)}
.panelActions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.btn.danger{border-color:rgba(255,80,80,.45);color:#ffb3b3}.importBtn{position:relative;overflow:hidden}.importBtn input{position:absolute;inset:0;opacity:0;cursor:pointer}
.adminProducts{display:grid;gap:14px;margin-top:16px}.adminProduct{display:grid;grid-template-columns:110px 1fr;gap:16px;align-items:center;border:1px solid var(--border);border-radius:18px;padding:14px;background:rgba(0,0,0,.22)}
.adminProduct img{width:110px;height:80px;object-fit:contain;border-radius:12px;background:rgba(0,0,0,.35)}.adminProduct h3{margin:0 0 6px}.adminProduct p{margin:0;color:var(--muted)}.adminProductBtns{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.adminProductBtns button{cursor:pointer}
.emptyPanel{color:var(--muted);border:1px dashed var(--border);border-radius:18px;padding:20px;text-align:center}.product.customProduct{animation:fadeInProduct .35s ease}@keyframes fadeInProduct{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:900px){.adminGrid{grid-template-columns:1fr}.adminProduct{grid-template-columns:1fr}.adminProduct img{width:100%;height:auto;max-height:220px}}
