:root{
  --ink:#090b08;
  --ink-2:#0e110d;
  --ink-3:#151912;
  --paper:#e8e2d1;
  --paper-soft:#bbb5a5;
  --muted:#939a8c;
  --line:#2b3027;
  --line-soft:#20251e;
  --olive:#8e9770;
  --olive-deep:#38412f;
  --rust:#cb6544;
  --rust-dark:#8c3f2d;
  --sun:#d27b4b;
  --green:#8faa7a;
  --max:1500px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{
  margin:0;
  color:var(--paper);
  background:
    linear-gradient(180deg,rgba(255,255,255,.012),transparent 25%),
    var(--ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:15px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
img{display:block;max-width:100%}
.shell{width:min(calc(100% - 44px),var(--max));margin:auto}
.line{height:1px;background:var(--line-soft)}
.eyebrow{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#8d9388;font-weight:900}
.display{font-family:Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;letter-spacing:-.01em;text-transform:uppercase}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}

/* Header */
.site-header{
  position:fixed;top:0;left:0;right:0;z-index:50;
  background:linear-gradient(180deg,rgba(8,10,8,.96),rgba(8,10,8,.78),transparent);
}
.header-inner{
  height:86px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px;
  border-bottom:1px solid rgba(255,255,255,.06)
}
.brand{display:flex;align-items:center;gap:16px}
.brand-logo{width:72px;height:72px;border:none;border-radius:0;object-fit:contain;background:transparent;filter:drop-shadow(0 2px 10px rgba(0,0,0,0.6))}


.brand b{display:block;font-size:15px;letter-spacing:.15em}.brand small{display:block;margin-top:3px;color:#8d9487;font-size:10px;letter-spacing:.12em}
.nav{display:flex;justify-content:center;gap:30px}
.nav a{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#a0a79a;font-weight:800;position:relative;padding:34px 0 28px}
.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--rust);transition:.2s}
.nav a:hover,.nav a.active{color:#e7e1d2}.nav a:hover:after,.nav a.active:after{right:0}
.network-status{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:900;letter-spacing:.12em;color:#b2c3a3;text-transform:uppercase}
.network-status i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(143,170,122,.12)}
.menu-btn{display:none}

/* Hero avec Image de fond heros-hllv.png */
.hero{
  min-height:100vh;position:relative;overflow:hidden;
  display:flex;align-items:flex-end;
  background:
    linear-gradient(180deg, rgba(9,11,8,0.45) 0%, rgba(9,11,8,0.85) 75%, #090b08 100%),
    linear-gradient(90deg, rgba(9,11,8,0.92) 0%, rgba(9,11,8,0.7) 45%, rgba(9,11,8,0.4) 100%),
    url('/assets/heros-hllv.png') center/cover no-repeat;
}
.hero:before{
  content:"VIETNAM";position:absolute;right:-1vw;top:11vh;
  font:900 clamp(110px,19vw,310px)/.8 Impact,Haettenschweiler,"Arial Narrow Bold",sans-serif;
  letter-spacing:-.055em;color:rgba(232,226,209,.035);pointer-events:none
}
.hero-content{position:relative;z-index:4;padding:160px 0 72px;width:min(850px,68%)}
.hero-topline{display:flex;align-items:center;gap:12px;color:#9ca395;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:900}
.hero-topline:before{content:"";width:42px;height:2px;background:var(--rust)}
.hero h1{font-size:clamp(68px,9vw,135px);line-height:.82;margin:28px 0 24px}.hero h1 span{color:#c2c3b3}
.hero-lead{font-size:16px;line-height:1.75;color:#c1c6b9;max-width:720px}
.hero-actions{display:flex;gap:14px;margin-top:36px}
.btn{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 22px;border:1px solid var(--line);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:900;transition:.18s;border-radius:4px}
.btn.primary{background:var(--rust);border-color:#db7450;color:#110a07}.btn:hover{transform:translateY(-2px)}
.hero-stats{
  position:absolute;z-index:5;left:0;right:0;bottom:0;
  border-top:1px solid rgba(255,255,255,.09);background:rgba(8,10,8,.78);backdrop-filter:blur(14px)
}
.hero-stats-inner{display:grid;grid-template-columns:1.2fr .8fr .8fr .8fr}
.hero-stat{padding:20px 26px;border-right:1px solid rgba(255,255,255,.07)}
.hero-stat:last-child{border-right:0}
.hero-stat span{display:block;color:#858c81;font-size:10px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.hero-stat strong{display:block;margin-top:6px;font-size:20px;color:#f0ebd9}

/* Editorial sections */
.section{padding:90px 0}
.section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:50px;margin-bottom:42px}
.section-heading h2{font-size:clamp(42px,5vw,74px);line-height:.9;margin:8px 0 0}
.section-heading p{margin:0;color:#9aa194;line-height:1.75;font-size:14px;max-width:560px;justify-self:end}
.section-heading .index{color:#52594e;font-size:52px;line-height:1;font-weight:900}

/* Servers as operation rows */
.operations{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.operation{
  min-height:168px;display:grid;grid-template-columns:110px 1.8fr 1fr 1fr 1fr 140px;
  align-items:center;gap:24px;border-bottom:1px solid var(--line-soft);position:relative;overflow:hidden;
  transition:.2s ease
}
.operation:last-child{border-bottom:0}
.operation:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(203,101,68,.08),transparent 35%);opacity:0;transition:.2s}
.operation:hover:before{opacity:1}
.op-number{font-size:52px;color:#454c42}
.op-name{position:relative;z-index:2}.op-name b{display:block;font-size:21px;color:#f2ede2}.op-name span{display:block;margin-top:6px;color:#91988c;font-size:11px;letter-spacing:.08em;font-weight:700}
.op-data span{display:block;color:#787f73;font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.op-data strong{display:block;margin-top:7px;font-size:14px;color:#ded9cc}
.op-pop{display:flex;align-items:center;gap:9px}.op-pop i{width:8px;height:8px;border-radius:50%;background:var(--green)}
.op-open{justify-self:end;width:120px;height:42px;border:1px solid #424a3e;display:grid;place-items:center;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#d8d3c5}

/* Live population ribbon */
.intel-band{position:relative;overflow:hidden;background:#12160f;border-top:1px solid #262c23;border-bottom:1px solid #262c23}
.intel-inner{display:grid;grid-template-columns:.65fr 1.35fr;min-height:420px}
.intel-copy{padding:72px 54px 72px 0;display:flex;flex-direction:column;justify-content:center}
.intel-copy h3{font-size:54px;line-height:.94;margin:12px 0 18px}
.intel-copy p{color:#9ca396;line-height:1.75;font-size:13px}
.intel-graph{position:relative;overflow:hidden;border-left:1px solid #262c23;background:linear-gradient(180deg,#141912,#10130f)}
.intel-grid{position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:72px 72px}
.chart-svg{position:absolute;inset:12% 6% 12% 6%;width:88%;height:76%}
.chart-line{fill:none;stroke:var(--rust);stroke-width:2.5;vector-effect:non-scaling-stroke}
.chart-area{fill:url(#fill)}
.intel-number{position:absolute;right:6%;top:10%;font-size:110px;color:rgba(232,226,209,.06);font-weight:900}

/* Player list: dossier style */
.dossier{display:grid;grid-template-columns:360px 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.dossier-aside{padding:36px 36px 36px 0;border-right:1px solid var(--line)}
.dossier-aside h3{font-size:42px;margin:10px 0 15px}.dossier-aside p{font-size:13px;color:#9aa194;line-height:1.7}
.searchline{margin-top:26px;border-bottom:1px solid #485044;display:flex;align-items:center}
.searchline input{width:100%;height:46px;border:0;background:transparent;color:#f0ebd9;outline:0;font-size:13px}
.searchline input::placeholder{color:#767e72}
.searchline button{color:#888f83;font-size:11px;letter-spacing:.1em}
.roster{padding-left:34px}
.roster-head,.roster-row{display:grid;grid-template-columns:1.5fr .9fr .8fr .7fr .5fr;gap:18px;align-items:center}
.roster-head{height:54px;color:#7b8276;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--line-soft)}
.roster-row{min-height:82px;border-bottom:1px solid var(--line-soft);font-size:13px}.roster-row:last-child{border-bottom:0}
.roster-player{display:flex;align-items:center;gap:14px}.avatar{width:38px;height:38px;border:1px solid #40483c;border-radius:6px;display:grid;place-items:center;font-size:11px;font-weight:900;background:#181c16;color:#e6e1d3}
.roster-player b{display:block;font-size:14px;color:#f5f0e3}.roster-player span{display:block;margin-top:4px;color:#858c80;font-size:11px}
.platform{color:#b3b8ab;font-weight:600}.kd{font-size:16px;font-weight:900}

/* Leaderboard */
.leaderboard{position:relative;padding:110px 0 120px;overflow:hidden}
.leaderboard:before{content:"TOP 3";position:absolute;right:-2%;top:7%;font:900 220px/.8 Impact,sans-serif;color:rgba(232,226,209,.018)}
.rank-wrap{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.rank-col{padding:46px 34px 50px;border-right:1px solid var(--line);min-height:300px;position:relative}.rank-col:last-child{border-right:0}
.rank-no{font-size:96px;line-height:.8;color:#454c41}.rank-col.first .rank-no{color:#9e7e4c}
.rank-name{font-size:32px;margin-top:46px;color:#f2ede2}.rank-meta{color:#888f83;font-size:12px;margin-top:8px}.rank-score{margin-top:26px;font-size:15px;color:#d4bf85;font-weight:700}
.rank-accent{position:absolute;left:0;right:0;bottom:0;height:3px;background:#2f352d}.first .rank-accent{background:var(--gold)}.second .rank-accent{background:#6f756d}.third .rank-accent{background:#805343}

/* Server page */
.page-hero{padding:160px 0 64px;border-bottom:1px solid var(--line);position:relative;overflow:hidden;background:linear-gradient(180deg, rgba(9,11,8,0.7) 0%, #090b08 100%), url('/assets/heros-hllv.png') center/cover no-repeat;}
.page-hero:before{content:"OPERATION";position:absolute;right:-1%;top:80px;font:900 150px/.8 Impact,sans-serif;color:rgba(232,226,209,.025)}
.breadcrumb{font-size:11px;color:#858c80;letter-spacing:.1em;font-weight:800}.breadcrumb a{color:#b3b8ac}
.page-title{display:grid;grid-template-columns:1fr auto;align-items:end;gap:20px;margin-top:26px}.page-title h1{font-size:68px;line-height:.9;margin:8px 0 0;color:#f5f0e3}.page-title p{color:#99a093;margin:10px 0 0;font-size:15px}
.server-strip{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#0e110d}
.server-strip div{padding:24px;border-right:1px solid var(--line-soft)}.server-strip div:last-child{border-right:0}
.server-strip span{display:block;color:#787f73;font-size:10px;text-transform:uppercase;font-weight:900;letter-spacing:.14em}.server-strip strong{display:block;margin-top:6px;font-size:16px;color:#f0ebd9}
.map-stage{min-height:420px;position:relative;overflow:hidden;background:linear-gradient(140deg,#1b2017,#0f120e)}
.map-stage:before{content:"";position:absolute;right:15%;top:14%;width:160px;height:160px;border-radius:50%;background:#bd694237}
.map-stage:after{content:"";position:absolute;left:0;right:0;bottom:0;height:62%;background:#0c100b;clip-path:polygon(0 73%,12% 49%,25% 68%,39% 38%,53% 60%,67% 41%,82% 66%,100% 45%,100% 100%,0 100%)}
.map-label{position:absolute;left:4%;bottom:10%;z-index:3}.map-label span{font-size:11px;color:#858c80;letter-spacing:.14em;font-weight:900}.map-label strong{display:block;font-size:54px;margin-top:5px;color:#f5f0e3}

/* Footer */
footer{border-top:1px solid var(--line);padding:36px 0 46px;color:#7d8478;font-size:12px;background:#060805}
.footer-inner{display:flex;justify-content:space-between;gap:20px}

/* Responsive */
@media(max-width:1100px){
  .operation{grid-template-columns:90px 1.5fr 1fr 1fr 120px}.operation .op-data:nth-of-type(4){display:none}
  .section-heading{grid-template-columns:1fr}
  .section-heading p{justify-self:start}
  .intel-inner{grid-template-columns:1fr}
  .intel-graph{border-left:0;border-top:1px solid var(--line);min-height:360px}
  .dossier{grid-template-columns:1fr}.dossier-aside{border-right:0;border-bottom:1px solid var(--line);padding-right:0}.roster{padding-left:0}
}
@media(max-width:820px){
  .nav{display:none}.network-status{display:none}.menu-btn{display:block}
  .header-inner{grid-template-columns:auto auto}
  .hero-content{width:100%;padding-top:140px}
  .hero h1{font-size:72px}
  .hero-stats-inner{grid-template-columns:repeat(2,1fr)}
  .operation{grid-template-columns:70px 1fr 1fr 100px}.operation .op-data:nth-of-type(3),.operation .op-data:nth-of-type(4){display:none}
  .rank-wrap{grid-template-columns:1fr}.rank-col{border-right:0;border-bottom:1px solid var(--line)}.rank-col:last-child{border-bottom:0}
  .page-title{grid-template-columns:1fr}
  .server-strip{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:560px){
  .shell{width:min(calc(100% - 24px),var(--max))}
  .brand small{display:none}
  .hero{min-height:880px}.hero h1{font-size:58px}.hero-content{padding-bottom:220px}
  .hero-stats-inner{grid-template-columns:1fr 1fr}
  .hero-stat{padding:14px}
  .section{padding:64px 0}
  .operation{grid-template-columns:48px 1fr 90px;gap:12px;min-height:138px}.operation .op-data{display:none}.op-number{font-size:34px}.op-open{width:85px}
  .roster-head,.roster-row{grid-template-columns:1.3fr .7fr .5fr}.roster-head div:nth-child(3),.roster-head div:nth-child(4),.roster-row>div:nth-child(3),.roster-row>div:nth-child(4){display:none}
  .footer-inner{flex-direction:column}
}
