:root{
  --bg:#080c12;--bg2:#0d131d;--panel:#111925;--panel2:#161f2c;--line:#243044;
  --text:#f4f7fb;--muted:#8e9bad;--red:#ef3e3e;--red2:#9d2029;--blue:#55a8ff;--green:#43d17b;
  --shadow:0 18px 50px rgba(0,0,0,.34);--radius:12px
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button,input{font:inherit}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(to bottom,black,transparent 72%);z-index:-1}
.topbar{height:76px;display:flex;align-items:center;gap:32px;padding:0 3vw;border-bottom:1px solid rgba(255,255,255,.07);background:rgba(7,11,17,.92);backdrop-filter:blur(18px);position:sticky;top:0;z-index:50}.brand{min-width:155px;line-height:1}.brand-main{font-size:20px;font-weight:900;font-style:italic;letter-spacing:1px}.brand-main b{color:var(--red)}.brand-sub{display:block;color:var(--red);font-weight:800;font-size:9px;letter-spacing:3px;margin-top:6px}.main-nav{display:flex;align-items:center;gap:4px;flex:1}.main-nav a{padding:12px 14px;border-radius:7px;color:#9eabba;font-size:13px;font-weight:650}.main-nav a:hover,.main-nav a.active{color:#fff;background:rgba(255,255,255,.055)}.main-nav a.active:after{content:"";display:block;height:2px;background:var(--red);margin-top:8px}.nav-cta{border:1px solid rgba(239,62,62,.65);color:#fff;padding:10px 16px;border-radius:7px;font-size:12px;font-weight:750}.nav-cta:hover{background:var(--red)}.nav-toggle{display:none;background:none;border:0;color:white;font-size:24px}
main{min-height:calc(100vh - 140px)}footer{min-height:82px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:18px;color:#697587;font-size:11px;padding:20px}footer strong{color:white;letter-spacing:2px}
.landing-wrap{width:min(1280px,90vw);margin:auto}.landing-hero{min-height:720px;display:flex;align-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 72% 42%,rgba(51,81,118,.33),transparent 28%),linear-gradient(115deg,#070b11 0%,#0b121d 52%,#111923 100%)}.landing-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,8,13,.99) 0%,rgba(5,8,13,.78) 42%,rgba(5,8,13,.2) 78%),linear-gradient(0deg,#080c12 0%,transparent 28%)}.landing-hero:after{content:"THE LINE";position:absolute;right:-50px;top:70px;font-size:clamp(110px,18vw,300px);font-weight:950;font-style:italic;letter-spacing:-15px;color:rgba(255,255,255,.022);white-space:nowrap;transform:rotate(-8deg)}.hero-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:80px;align-items:center;position:relative;z-index:2;padding:100px 0}.eyebrow,.section-heading small,.split-copy>small,.final-cta small{font-size:11px;letter-spacing:2.6px;font-weight:800;color:#adb8c8}.eyebrow{display:flex;align-items:center;gap:10px}.eyebrow span{width:30px;height:2px;background:var(--red)}.hero-copy h1{font-size:clamp(54px,6.6vw,98px);line-height:.93;text-transform:uppercase;letter-spacing:-4px;margin:24px 0}.hero-copy h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.64)}.hero-lead{max-width:680px;color:#a7b2c2;font-size:18px;line-height:1.75}.hero-actions{display:flex;gap:12px;margin:32px 0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:7px;font-size:12px;font-weight:850;letter-spacing:.5px;text-transform:uppercase;transition:.2s}.btn.primary{background:var(--red);box-shadow:0 10px 26px rgba(239,62,62,.2)}.btn.primary:hover{background:#ff4d4d;transform:translateY(-2px)}.btn.ghost{border:1px solid #435066;color:#dce3ec}.btn.ghost:hover{border-color:white}.btn.light{background:white;color:#10151d}.server-chips{display:flex;flex-wrap:wrap;gap:8px}.server-chips span{padding:7px 10px;border:1px solid #303d50;border-radius:5px;color:#8190a3;font-size:10px;font-weight:800}.server-card{background:linear-gradient(155deg,rgba(24,34,48,.94),rgba(13,20,30,.94));border:1px solid #303d50;border-top:3px solid var(--red);padding:26px;box-shadow:var(--shadow);position:relative}.server-card:before{content:"";position:absolute;inset:8px;border:1px solid rgba(255,255,255,.025);pointer-events:none}.server-card-head{display:flex;gap:14px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px}.server-card-head small{display:block;color:#78879a;font-size:9px;letter-spacing:1.5px}.server-card-head b{color:var(--green);font-size:13px}.live-dot{width:13px;height:13px;border-radius:50%;background:var(--green);box-shadow:0 0 0 6px rgba(67,209,123,.12),0 0 22px rgba(67,209,123,.65)}.server-card dl{margin:18px 0}.server-card dl div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.045)}.server-card dt{font-size:10px;color:#778599;text-transform:uppercase;letter-spacing:1px}.server-card dd{margin:0;text-align:right;font-size:13px;font-weight:700}.server-card-link{display:block;padding-top:8px;color:var(--red);font-size:11px;font-weight:800}.hero-gridline{position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--red),transparent)}
.landing-section{padding:110px 0}.section-heading{max-width:780px;margin-bottom:48px}.section-heading h2,.split-copy h2,.final-cta h2{font-size:clamp(38px,5vw,68px);line-height:1.06;letter-spacing:-2.5px;margin:16px 0}.section-heading p,.split-copy p,.final-cta p{color:var(--muted);font-size:16px;max-width:670px}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.feature-card{background:linear-gradient(155deg,var(--panel2),var(--panel));border:1px solid var(--line);padding:28px;min-height:240px;position:relative;overflow:hidden}.feature-card:after{content:"";position:absolute;left:0;bottom:0;width:0;height:3px;background:var(--red);transition:.25s}.feature-card:hover:after{width:100%}.feature-card>span{font-size:11px;color:var(--red);font-weight:900}.feature-card h3{font-size:20px;margin:48px 0 12px}.feature-card p{color:var(--muted);font-size:14px}.stats-strip{background:linear-gradient(90deg,#6e151d,#dc3038);border-block:1px solid rgba(255,255,255,.12)}.stats-strip-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stats-strip-grid div{padding:35px 24px;border-right:1px solid rgba(255,255,255,.15)}.stats-strip-grid b{display:block;font-size:35px}.stats-strip-grid span{font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:#ffd7da}.split-section{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:75px}.visual-panel{height:500px;position:relative;overflow:hidden;border:1px solid #314056;background:radial-gradient(circle at 48% 45%,rgba(239,62,62,.11),transparent 28%),linear-gradient(rgba(20,31,45,.5),rgba(7,11,17,.93)),repeating-linear-gradient(0deg,transparent,transparent 39px,rgba(122,144,170,.08) 40px),repeating-linear-gradient(90deg,transparent,transparent 39px,rgba(122,144,170,.08) 40px)}.visual-panel:after{content:"";position:absolute;inset:10%;border:1px solid rgba(255,255,255,.08);clip-path:polygon(0 0,18% 0,18% 1px,82% 1px,82% 0,100% 0,100% 18%,calc(100% - 1px) 18%,calc(100% - 1px) 82%,100% 82%,100% 100%,82% 100%,82% calc(100% - 1px),18% calc(100% - 1px),18% 100%,0 100%,0 82%,1px 82%,1px 18%,0 18%)}.visual-crosshair{position:absolute;width:130px;height:130px;border:1px solid rgba(239,62,62,.55);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.visual-crosshair:before,.visual-crosshair:after{content:"";position:absolute;background:rgba(239,62,62,.55)}.visual-crosshair:before{width:190px;height:1px;left:-30px;top:64px}.visual-crosshair:after{height:190px;width:1px;top:-30px;left:64px}.visual-label{position:absolute;top:20px;left:22px;font-size:10px;letter-spacing:2px;color:#aeb9c7}.visual-coords{position:absolute;right:22px;bottom:20px;text-align:right;font-family:monospace;color:#6c7b90;font-size:12px}.visual-scan{position:absolute;left:0;right:0;height:1px;background:var(--red);box-shadow:0 0 18px var(--red);animation:scan 4s linear infinite}@keyframes scan{from{top:10%}to{top:90%}}.check-list{list-style:none;padding:0;margin:26px 0}.check-list li{border-bottom:1px solid var(--line);padding:12px 0;color:#bcc6d2}.check-list li:before{content:"✓";color:var(--red);font-weight:900;margin-right:12px}.final-cta{text-align:center;padding:105px 0;background:radial-gradient(circle at 50% 100%,rgba(239,62,62,.18),transparent 35%),#0b1018;border-top:1px solid var(--line)}.final-cta h2{margin-inline:auto}.final-cta p{margin:0 auto 30px}
.dashboard-page main,.dashboard-page+main{width:min(1500px,94vw);margin:auto;padding:36px 0 70px}.hero{padding:34px 0 30px}.hero p,.page-head small,.profile-head small{color:var(--red);letter-spacing:2px;font-size:10px;font-weight:800}.hero h1,.page-head h1,.profile-head h1{font-size:clamp(34px,5vw,62px);margin:8px 0;text-transform:uppercase;letter-spacing:-2px}.hero span{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:20px 0 30px}.cards article{background:linear-gradient(145deg,var(--panel2),var(--panel));padding:22px;border:1px solid var(--line);border-radius:var(--radius);position:relative;box-shadow:0 10px 30px rgba(0,0,0,.16)}.cards article:before{content:"";position:absolute;left:-1px;top:18px;height:30px;width:3px;background:var(--red)}.cards small{color:var(--muted);font-size:9px;letter-spacing:1.5px}.cards b{display:block;font-size:28px;margin-top:8px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:18px;overflow:hidden;box-shadow:0 10px 35px rgba(0,0,0,.14)}.panel-title{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.panel-title h2{font-size:14px;text-transform:uppercase;letter-spacing:.8px;margin:0}.panel-title a{color:var(--red);font-size:11px;font-weight:750}table{width:100%;border-collapse:collapse;font-size:13px}th{color:var(--muted);font-size:9px;letter-spacing:1px;text-transform:uppercase;text-align:left;background:#0d141e}th,td{padding:14px 16px;border-bottom:1px solid #202b3a}tbody tr:hover{background:#172130}td a{font-weight:750}td a:hover{color:var(--red)}.rank{color:var(--red);font-weight:bold}.feed{display:flex;flex-direction:column}.kill{display:grid;grid-template-columns:120px minmax(100px,1fr) minmax(100px,.8fr) 20px minmax(100px,1fr) 90px;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid #202b3a;font-size:12px}.kill time{color:var(--muted);font-size:10px}.kill .weapon{color:#9ba7b5}.kill b{color:#fff}.kill em{text-align:right;color:#f1ad4c;font-style:normal;font-size:10px}.kill.tk{border-left:3px solid var(--red)}.kill.tk em,.kill.suicide em{color:var(--red)}.kill.ai{border-left:3px solid var(--blue)}.page-head{display:flex;justify-content:space-between;align-items:end;margin:20px 0 24px}.page-head h1{font-size:42px}.tabs{display:flex;gap:5px;flex-wrap:wrap}.tabs a,.search button,.pager a{padding:10px 14px;border:1px solid var(--line);border-radius:6px;font-size:10px;text-transform:uppercase}.tabs a.active,.tabs a:hover,.search button:hover{background:var(--red);color:white;border-color:var(--red)}.search{display:flex}.search input{width:280px;background:var(--panel);border:1px solid var(--line);color:white;padding:11px 14px;outline:none;border-radius:6px 0 0 6px}.search button{background:transparent;color:var(--text);cursor:pointer;border-radius:0 6px 6px 0}.player-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.player-card{display:flex;gap:16px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:18px;transition:.2s}.player-card:hover{border-color:var(--red);transform:translateY(-2px)}.player-card>span,.avatar{display:grid;place-items:center;width:54px;height:54px;background:linear-gradient(145deg,var(--red),#7b1721);color:white;font-weight:900;font-size:18px;border-radius:50%}.player-card h3,.player-card p{margin:0 0 5px}.player-card p,.player-card small{color:var(--muted);font-size:12px}.profile-head{display:flex;gap:25px;align-items:center;margin:30px 0}.avatar{width:90px;height:90px;font-size:28px}.profile-head h1{font-size:46px}.profile-head p{color:var(--muted)}.details{display:grid;grid-template-columns:1fr 1fr;margin:0}.details div{padding:18px;border-bottom:1px solid var(--line)}dt{font-size:10px;color:var(--muted);text-transform:uppercase}dd{margin:7px 0 0;font-size:18px;font-weight:bold}.pager{display:flex;justify-content:space-between;align-items:center;padding:18px}.pager span{color:var(--muted)}.empty{text-align:center;padding:100px}.empty h1{font-size:80px;color:var(--red);margin:0}.empty code{display:block;margin-top:20px;color:var(--red)}.table-scroll{overflow:auto}
body:not(.landing-page) main{width:min(1500px,94vw);margin:auto;padding:36px 0 70px}
@media(max-width:1050px){.main-nav{position:fixed;left:0;right:0;top:76px;display:none;flex-direction:column;align-items:stretch;background:#0a1018;border-bottom:1px solid var(--line);padding:12px}.nav-open .main-nav{display:flex}.nav-toggle{display:block;margin-left:auto}.nav-cta{display:none}.hero-layout{grid-template-columns:1fr;gap:45px}.server-card{max-width:520px}.feature-grid{grid-template-columns:1fr 1fr}.split-section{grid-template-columns:1fr;gap:45px}.visual-panel{height:400px}}
@media(max-width:760px){.topbar{height:68px;padding:0 5vw}.main-nav{top:68px}.landing-hero{min-height:auto}.hero-layout{padding:85px 0 70px}.hero-copy h1{font-size:50px;letter-spacing:-2px}.hero-lead{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch}.landing-section{padding:75px 0}.feature-grid{grid-template-columns:1fr}.stats-strip-grid{grid-template-columns:1fr 1fr}.stats-strip-grid div:nth-child(2){border-right:0}.stats-strip-grid div{border-bottom:1px solid rgba(255,255,255,.15)}.grid{grid-template-columns:1fr}.kill{grid-template-columns:78px 1fr 1fr}.kill .weapon,.kill>b,.kill em{display:none}.page-head{align-items:flex-start;flex-direction:column;gap:15px}.search{width:100%}.search input{width:100%}}
@media(max-width:480px){.brand{min-width:120px}.brand-main{font-size:17px}.hero-copy h1{font-size:42px}.stats-strip-grid{grid-template-columns:1fr}.stats-strip-grid div{border-right:0}.server-card{padding:20px}.section-heading h2,.split-copy h2,.final-cta h2{font-size:36px}.cards{grid-template-columns:1fr 1fr}.player-grid{grid-template-columns:1fr}.details{grid-template-columns:1fr}.profile-head h1{font-size:30px}.visual-panel{height:300px}}
.announcement{background:#b91c1c;color:#fff;text-align:center;padding:10px 20px;font-weight:700;letter-spacing:.04em}
.admin-shell{max-width:760px;margin:70px auto;padding:0 24px;min-height:60vh}.admin-wide{max-width:1180px}.admin-login{padding:34px}.admin-login h1,.admin-shell h1{font-size:38px;margin:8px 0}.admin-form,.admin-grid,.admin-password{display:grid;gap:18px}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:28px}.admin-grid h2{grid-column:1/-1;border-bottom:1px solid var(--line,#273241);padding-bottom:10px;margin:16px 0 0}.admin-grid .full,.admin-actions{grid-column:1/-1}.admin-password{margin-top:24px;padding:28px;grid-template-columns:1fr 1fr auto;align-items:end}.admin-shell label{display:grid;gap:8px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#9eabba}.admin-shell input,.admin-shell textarea{width:100%;box-sizing:border-box;background:#0b111a;border:1px solid #2a3545;border-radius:6px;color:#fff;padding:12px;font:inherit;text-transform:none;letter-spacing:normal}.admin-shell textarea{resize:vertical}.admin-shell input:focus,.admin-shell textarea:focus{outline:none;border-color:#ef4444}.flash{padding:12px 16px;border-radius:6px;margin:14px 0}.flash.success{background:#123b2b;color:#86efac}.flash.error{background:#451a1a;color:#fecaca}.admin-actions{display:flex;gap:12px;align-items:center}.page-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:24px}@media(max-width:760px){.admin-grid,.admin-password{grid-template-columns:1fr}.admin-grid h2,.admin-grid .full,.admin-actions{grid-column:1}.page-head{align-items:start;flex-direction:column}}

/* V3.3 — Bouton Discord configurable */
.hero-actions-discord{align-items:center}
.discord-hero-button{
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-height:58px;
  padding:8px 18px 8px 10px;
  border:1px solid rgba(88,101,242,.78);
  border-radius:9px;
  background:linear-gradient(135deg,rgba(88,101,242,.18),rgba(88,101,242,.06));
  color:#eef0ff;
  font-size:12px;
  font-weight:850;
  letter-spacing:.45px;
  text-transform:uppercase;
  box-shadow:0 10px 28px rgba(88,101,242,.12);
  transition:transform .2s,border-color .2s,background .2s,box-shadow .2s;
}
.discord-hero-button:hover{
  transform:translateY(-2px);
  border-color:#7c86ff;
  background:linear-gradient(135deg,rgba(88,101,242,.32),rgba(88,101,242,.1));
  box-shadow:0 14px 34px rgba(88,101,242,.22);
}
.discord-hero-button img{
  width:42px;
  height:42px;
  object-fit:contain;
  display:block;
}
.admin-grid select{
  width:100%;
  min-height:44px;
  border:1px solid #344154;
  border-radius:6px;
  background:#0d141f;
  color:#e7edf5;
  padding:0 12px;
}
@media(max-width:760px){
  .discord-hero-button{width:100%;justify-content:center}
}
