/* ═══════════════════════════════════════════════════════════════════
   AGON | COMBAT SPORTS — Premium Website
   © 2026 CHEVORA OŪ. All rights reserved.
══════════════════════════════════════════════════════════════════ */

:root {
  --void:    #030710;
  --deep:    #070e1f;
  --panel:   #0d1630;
  --card:    #101828;
  --blue:    #1a4080;
  --cyan:    #00c8ff;
  --cyan2:   #0088bb;
  --silver:  #a8c0d8;
  --gold:    #d4a843;
  --white:   #f0f8ff;
  --dim:     #6888a8;
  --border:  rgba(0,200,255,0.12);
  --borderH: rgba(0,200,255,0.4);
  --glow:    0 0 20px rgba(0,200,255,0.3);
  --fH: 'Orbitron', monospace;
  --fB: 'Exo 2', sans-serif;
  --fM: 'Space Mono', monospace;
}

*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; overflow-x:hidden; }
body { font-family:var(--fB); background:var(--void); color:var(--silver); cursor:none; overflow-x:hidden; }

/* ── CURSOR ──────────────────────────────────────────────────────── */
#cursor {
  width:30px; height:30px; border:1.5px solid var(--cyan); border-radius:50%;
  position:fixed; pointer-events:none; z-index:9999;
  transform:translate(-50%,-50%); transition:width .2s,height .2s,border-color .2s;
  mix-blend-mode:screen;
}
#cursorDot {
  width:5px; height:5px; background:var(--cyan); border-radius:50%;
  position:fixed; pointer-events:none; z-index:10000;
  transform:translate(-50%,-50%);
}


/* ── GLOBAL HEX BACKGROUND CANVAS (fixed, all pages) ───────── */
#globalCanvas {
  position:fixed; inset:0; width:100vw; height:100vh;
  pointer-events:none; z-index:1; opacity:0.42;
  filter: brightness(0.82);
}

/* ── INTRO ───────────────────────────────────────────────────────── */
#introOverlay {
  position:fixed; inset:0; z-index:500;
  background:#000; overflow:hidden;
}
#introOverlay video {
  width:100%; height:100%; object-fit:cover;
}
.intro-scanlines {
  position:absolute; inset:0; pointer-events:none;
  background:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(0,0,0,0.05) 3px,rgba(0,0,0,0.05) 6px);
}
#introSkip {
  position:absolute; bottom:1.5rem; right:2rem;
  font-family:var(--fM); font-size:.6rem; letter-spacing:.2em;
  color:rgba(255,255,255,.25); cursor:pointer; border:none; background:none;
  transition:color .2s;
}
#introSkip:hover { color:var(--cyan); }

/* ── NAV ─────────────────────────────────────────────────────────── */
#nav {
  position:fixed; top:0; left:0; right:0; height:68px; z-index:100;
  display:flex; align-items:center; justify-content:space-between;
  padding:0 2rem;
  background:rgba(3,7,16,.9); backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border);
  transition:background .3s;
}
#nav.scrolled { background:rgba(3,7,16,.98); }

.nav-logo-link { display:flex; align-items:center; gap:10px; text-decoration:none; }
#navLogo { width:38px; height:38px; filter:drop-shadow(0 0 8px rgba(0,200,255,.5)); transition:opacity .4s; }
.nav-brand { font-family:var(--fH); font-size:.78rem; font-weight:700; letter-spacing:.12em; color:var(--white); }
.pipe { color:var(--cyan); }

.nav-links { display:flex; gap:2rem; }
.nav-links a {
  font-family:var(--fM); font-size:.7rem; letter-spacing:.1em; text-transform:uppercase;
  color:var(--silver); text-decoration:none; transition:color .2s;
}
.nav-links a:hover { color:var(--cyan); }
.nav-links a.active { color:var(--cyan); }

.nav-right { display:flex; align-items:center; gap:1.2rem; }

.lang-wrap { position:relative; }
#langBtn {
  font-family:var(--fM); font-size:.68rem; background:transparent;
  border:1px solid var(--border); color:var(--silver); padding:.3rem .7rem;
  cursor:pointer; border-radius:2px; transition:all .2s;
}
#langBtn:hover { border-color:var(--cyan); color:var(--cyan); }
#langMenu {
  display:none; position:absolute; top:calc(100% + 6px); right:0;
  background:var(--panel); border:1px solid var(--borderH); border-radius:3px;
  min-width:130px; flex-direction:column; z-index:200;
  box-shadow:0 8px 30px rgba(0,0,0,.5);
}
#langMenu.open { display:flex; }
#langMenu button {
  background:transparent; border:none; border-bottom:1px solid var(--border);
  color:var(--dim); font-family:var(--fM); font-size:.66rem;
  padding:.5rem .8rem; text-align:left; cursor:pointer; transition:all .15s;
}
#langMenu button:last-child { border-bottom:none; }
#langMenu button:hover { background:rgba(0,200,255,.07); color:var(--cyan); }

.btn-join {
  font-family:var(--fH); font-size:.68rem; letter-spacing:.12em; text-transform:uppercase;
  background:linear-gradient(135deg,var(--blue),var(--cyan2)); color:var(--white);
  text-decoration:none; padding:.5rem 1.2rem; border-radius:2px;
  box-shadow:var(--glow); transition:all .2s;
}
.btn-join:hover { transform:translateY(-1px); box-shadow:0 0 30px rgba(0,200,255,.5); }

/* ── HERO ────────────────────────────────────────────────────────── */
#hero {
  position:relative; min-height:100vh;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  overflow:hidden; background:radial-gradient(circle at top center, rgba(0,120,210,.12), transparent 32%), linear-gradient(180deg, rgba(4,12,28,.72) 0%, rgba(3,7,16,.98) 100%);
}
#hero::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(circle at 50% 15%, rgba(0,200,255,.16), transparent 20%);
  pointer-events:none; z-index:2; mix-blend-mode:screen;
}
#heroCanvas { display:none; }
.scanlines {
  position:absolute; inset:0; pointer-events:none; z-index:1;
  background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,0.03) 2px,rgba(0,0,0,0.03) 4px);
}
#heroContent {
  position:relative; z-index:3; text-align:center; padding:5rem 2rem 2rem;
  display:flex; flex-direction:column; align-items:center;
  opacity:0; transform:translateY(20px);
  transition:opacity .8s ease, transform .8s ease;
}
#heroContent.visible { opacity:1; transform:translateY(0); }

.hero-eyebrow {
  display:flex; align-items:center; gap:.8rem; margin-bottom:1.5rem;
  font-family:var(--fM); font-size:.72rem; letter-spacing:.28em; color:var(--cyan); text-transform:uppercase;
}
.dot { width:5px; height:5px; background:var(--cyan); border-radius:50%; box-shadow:var(--glow); }

.hero-logo {
  width:120px; height:120px; margin-bottom:1.5rem;
  filter:drop-shadow(0 0 30px rgba(0,200,255,.6));
  animation:logoP 4s ease-in-out infinite;
}
@keyframes logoP {
  0%,100% { filter:drop-shadow(0 0 30px rgba(0,200,255,.6)); }
  50% { filter:drop-shadow(0 0 50px rgba(0,200,255,.9)); }
}

.hero-title {
  font-family:var(--fH); font-size:clamp(2rem,5vw,4rem); font-weight:900;
  letter-spacing:.08em; color:var(--white);
  text-shadow:0 0 40px rgba(0,200,255,.3); margin-bottom:1rem; line-height:1.1;
}
.hero-sub { font-size:1rem; color:var(--silver); margin-bottom:2rem; letter-spacing:.04em; }

.hero-btns { display:flex; gap:1rem; flex-wrap:wrap; justify-content:center; margin-bottom:3rem; }

.btn-primary {
  display:inline-flex; align-items:center; gap:.6rem;
  font-family:var(--fH); font-size:.72rem; letter-spacing:.12em; text-transform:uppercase;
  background:linear-gradient(135deg,var(--blue),var(--cyan2)); color:var(--white);
  text-decoration:none; padding:.85rem 2rem; border-radius:2px; border:none; cursor:pointer;
  box-shadow:0 4px 20px rgba(0,200,255,.2); transition:all .25s;
}
.btn-primary:hover { transform:translateY(-2px); box-shadow:0 8px 30px rgba(0,200,255,.4); }

.btn-outline {
  display:inline-flex; align-items:center; gap:.5rem;
  font-family:var(--fH); font-size:.72rem; letter-spacing:.12em; text-transform:uppercase;
  background:transparent; border:1px solid var(--borderH); color:var(--cyan);
  text-decoration:none; padding:.85rem 2rem; border-radius:2px; cursor:pointer; transition:all .25s;
}
.btn-outline:hover { background:rgba(0,200,255,.08); transform:translateY(-2px); }
.btn-outline:disabled { opacity:.4; cursor:not-allowed; }
.btn-sm { padding:.5rem 1rem !important; font-size:.62rem !important; }

.hero-stats {
  display:flex; align-items:center; gap:1.5rem;
  padding:1.1rem 2rem; background:rgba(10,20,50,.8);
  border:1px solid var(--border); backdrop-filter:blur(12px); border-radius:3px;
  flex-wrap:wrap; justify-content:center;
}
.stat { text-align:center; min-width:80px; }
.stat-n { display:block; font-family:var(--fH); font-size:1.45rem; font-weight:700; color:var(--cyan); line-height:1; }
.stat-l { font-family:var(--fM); font-size:.55rem; letter-spacing:.10em; color:var(--dim); text-transform:uppercase; margin-top:.25rem; }
.stat-div { width:1px; height:38px; background:var(--borderH); flex-shrink:0; }
.card-disc--gold { background:linear-gradient(135deg,#d4a843,#a8792a); }
.intel-cta { text-align:center; margin-top:3rem; }

.ticker-wrap {
  width:100%; margin-top:2rem; padding:.85rem 0;
  background:rgba(3,7,16,.82); border-top:1px solid rgba(0,200,255,.2);
  border-bottom:1px solid rgba(0,200,255,.2); -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px);
  overflow:hidden;
  box-shadow:inset 0 0 60px rgba(0,200,255,.08);
}
.ticker {
  display:inline-flex; gap:2.8rem; white-space:nowrap; width:max-content;
  animation:tick 30s linear infinite;
  will-change:transform;
  font-family:var(--fH); font-size:.82rem; letter-spacing:.24em; color:var(--silver);
  text-shadow:0 0 12px rgba(0,200,255,.18);
}
.ticker span { display:inline-flex; align-items:center; }
.ticker .td { color:var(--cyan); }
@keyframes tick { from { transform:translateX(0); } to { transform:translateX(-50%); } }

/* ── SECTIONS ────────────────────────────────────────────────────── */
.section { padding:6rem 0; position:relative; background:transparent; }
.section-dark { background:rgba(7,14,31,0.82); }
.container { max-width:1200px; margin:0 auto; padding:0 2rem; }

.sec-header { text-align:center; margin-bottom:3.5rem; }
.sec-tag {
  display:inline-block; font-family:var(--fM); font-size:.66rem; letter-spacing:.28em;
  color:var(--cyan); text-transform:uppercase; margin-bottom:1rem;
  padding:.25rem 1rem; border:1px solid rgba(0,200,255,.3);
}
.sec-header h2 {
  font-family:var(--fH); font-size:clamp(1.8rem,3.5vw,2.8rem); font-weight:700;
  color:var(--white); margin-bottom:.8rem; letter-spacing:.04em;
}
.sec-header p { color:var(--dim); max-width:480px; margin:0 auto; }

/* ── INTEL CARDS ─────────────────────────────────────────────────── */
.cards { display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:1.5rem; }
.card {
  background:var(--card); border:1px solid var(--border);
  padding:1.8rem; border-radius:3px; transition:all .3s; position:relative; overflow:hidden;
}
.card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg,transparent,var(--cyan),transparent); opacity:0; transition:opacity .3s;
}
.card:hover { border-color:var(--borderH); transform:translateY(-4px); box-shadow:0 20px 40px rgba(0,0,0,.4),var(--glow); }
.card:hover::before { opacity:1; }
.card.featured { border-color:rgba(212,168,67,.3); }
.card-disc { display:inline-block; font-family:var(--fM); font-size:.62rem; letter-spacing:.12em; padding:.22rem .7rem; border-radius:2px; margin-bottom:.7rem; background:rgba(0,200,255,.1); color:var(--cyan); }
.card-event { font-family:var(--fM); font-size:.65rem; color:var(--dim); margin-bottom:.7rem; }
.card h3 { font-family:var(--fH); font-size:.95rem; font-weight:600; color:var(--white); margin-bottom:.7rem; line-height:1.4; }
.card p { font-size:.86rem; color:var(--silver); line-height:1.6; margin-bottom:1.2rem; }
.card-foot { display:flex; justify-content:space-between; align-items:center; }
.card-foot span { font-family:var(--fM); font-size:.64rem; color:var(--dim); }
.card-foot a { font-family:var(--fM); font-size:.7rem; color:var(--cyan); text-decoration:none; transition:letter-spacing .2s; }
.card-foot a:hover { letter-spacing:.05em; }

/* ── FIGHTERS ────────────────────────────────────────────────────── */
.hex-bg-pattern {
  position:absolute; inset:0; opacity:.04; pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='100'%3E%3Cpath d='M28 66L0 50V16L28 0l28 16v34L28 66zM0 50L28 34l28 16' fill='none' stroke='%2300c8ff' stroke-width='1'/%3E%3C/svg%3E");
  background-size:56px 100px;
}
.search-box {
  display:flex; max-width:600px; margin:0 auto 3rem;
  background:var(--card); border:1px solid var(--borderH); border-radius:3px; overflow:hidden;
}
#searchInput {
  flex:1; background:transparent; border:none; outline:none;
  color:var(--white); font-family:var(--fB); font-size:1rem; padding:1rem 1.2rem;
}
#searchInput::placeholder { color:var(--dim); }
#searchBtn {
  background:linear-gradient(135deg,var(--blue),var(--cyan2)); color:var(--white);
  border:none; cursor:pointer; font-family:var(--fH); font-size:.68rem; letter-spacing:.12em;
  padding:0 1.5rem; text-transform:uppercase; transition:opacity .2s;
}
#searchBtn:hover { opacity:.9; }

/* ── DISCIPLINE FILTER ───────────────────────────────────────────── */
.disc-filter-wrap {
  margin:0 -2rem 2.5rem;          /* bleed to section edges */
  padding:0 2rem;
  border-top:2px solid rgba(0,200,255,0.35);
  border-bottom:2px solid rgba(0,200,255,0.35);
  background:rgba(3,8,25,.8);
}
.disc-filter {
  display:flex; flex-wrap:wrap; gap:0;
  max-width:1060px; margin:0 auto;
}
.disc-btn {
  font-family:var(--fM); font-size:.58rem; letter-spacing:.15em; text-transform:uppercase;
  padding:.9rem 1.4rem; background:transparent; border:none;
  color:rgba(100,150,190,.7); cursor:pointer; transition:color .2s, border-color .2s;
  border-bottom:2px solid transparent; margin-bottom:-2px;
  white-space:nowrap;
}
.disc-btn:hover { color:var(--white); }
.disc-btn.active { color:var(--cyan); border-bottom-color:var(--cyan); }
.disc-filter-sep { width:1px; background:var(--border); margin:.6rem .4rem; }
.disc-btn--special.active { color:var(--gold); border-bottom-color:var(--gold); }
.extra-filter-panel {
  display:flex; align-items:center; gap:.7rem; flex-wrap:wrap;
  max-width:1060px; margin:0 auto; padding:.8rem 0;
}
.extra-filter-panel[hidden] { display:none; }

/* ── Custom select — replaces native <select>/<input type=date>, whose
   open dropdown/popup is OS-themed and can't be restyled with CSS. Mirrors
   the header language switcher (.lang-wrap/#langMenu) for visual consistency. */
.csel { position:relative; }
.csel-btn {
  display:flex; align-items:center; gap:.5rem;
  background:var(--panel); border:1px solid var(--border); border-radius:3px;
  color:var(--white); font-family:var(--fB); font-size:.85rem; padding:.5rem .8rem;
  cursor:pointer; transition:all .2s;
}
.csel-btn:hover { border-color:var(--cyan); color:var(--cyan); }
.csel-caret { color:var(--dim); font-size:.7rem; }
.csel-menu {
  display:none; position:absolute; top:calc(100% + 6px); left:0;
  background:var(--panel); border:1px solid var(--borderH); border-radius:3px;
  min-width:100%; max-height:260px; overflow-y:auto; flex-direction:column;
  z-index:200; box-shadow:0 8px 30px rgba(0,0,0,.5);
}
.csel-menu.open { display:flex; }
.csel--wide .csel-menu { min-width:220px; }
.csel-opt {
  background:transparent; border:none; border-bottom:1px solid var(--border);
  color:var(--dim); font-family:var(--fM); font-size:.72rem;
  padding:.55rem .9rem; text-align:left; cursor:pointer; transition:all .15s;
  white-space:nowrap;
}
.csel-opt:last-child { border-bottom:none; }
.csel-opt:hover { background:rgba(0,200,255,.07); color:var(--cyan); }
.csel-opt.active { color:var(--cyan); }

.fighter-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:1.5rem; }
.f-card {
  background:var(--card); border:1px solid var(--border);
  padding:1.8rem; border-radius:3px; text-align:center; transition:all .3s;
}
.f-card:hover { border-color:var(--borderH); transform:translateY(-4px); }
.f-flag { font-size:1.6rem; margin-bottom:.7rem; }
.f-name { font-family:var(--fH); font-size:.9rem; font-weight:700; color:var(--white); margin-bottom:.4rem; }
.f-rec { font-family:var(--fM); font-size:.68rem; color:var(--dim); margin-bottom:1.2rem; }
.f-link { font-family:var(--fM); font-size:.7rem; color:var(--cyan); text-decoration:none; cursor:pointer; }
.f-card--clickable { cursor:pointer; }
.f-card--clickable:hover { border-color:var(--borderH); transform:translateY(-4px); box-shadow:var(--glow); }
.f-card--clickable:hover .f-link { letter-spacing:.05em; }

/* ── GAME ────────────────────────────────────────────────────────── */
.game-wrap { max-width:820px; margin:0 auto; }
.game-hud {
  display:flex; align-items:center; gap:1rem;
  background:var(--panel); border:1px solid var(--border); border-bottom:none; padding:.8rem 1.2rem;
}
.hud-f { flex:1; display:flex; align-items:center; gap:.8rem; font-family:var(--fH); font-size:.7rem; color:var(--white); }
.hud-r { flex-direction:row-reverse; }
.hp-wrap { flex:1; height:9px; background:rgba(255,255,255,.08); border-radius:2px; overflow:hidden; }
.hp { height:100%; width:100%; background:linear-gradient(90deg,#ff3366,#ff6633); transition:width .3s; }
.hp.hp2 { background:linear-gradient(270deg,#3366ff,#0099ff); }
.hud-c { text-align:center; min-width:72px; }
#rdDisp { font-family:var(--fM); font-size:.62rem; color:var(--dim); }
#tmDisp { font-family:var(--fH); font-size:1.4rem; color:var(--cyan); }
#p1HpNum,#p2HpNum { font-family:var(--fM); font-size:.7rem; color:var(--cyan); white-space:nowrap; }
#gameCanvas { display:block; width:100%; height:auto; background:#050b18; border:1px solid var(--border); border-top:none; border-bottom:none; }
.game-ctrl {
  display:flex; align-items:center; justify-content:space-between;
  background:var(--panel); border:1px solid var(--border); border-top:none;
  padding:.7rem 1.2rem; font-family:var(--fM); font-size:.62rem; color:var(--dim);
  flex-wrap:wrap; gap:.5rem;
}
.game-ctrl div { display:flex; gap:.5rem; }
.touch-controls {
  display:none;
  flex-wrap:wrap; gap:.55rem; justify-content:center; width:100%; margin-top:.6rem;
}
.touch-control-button {
  flex:1 1 120px; min-width:86px; padding:.9rem 1rem;
  font-family:var(--fH); font-size:.78rem; color:var(--white);
  background:rgba(0,200,255,.12); border:1px solid rgba(0,200,255,.24);
  border-radius:4px; cursor:pointer; transition:transform .2s, background .2s, border-color .2s;
  touch-action:none;
}
.touch-control-button:hover,
.touch-control-button:active {
  background:rgba(0,200,255,.2); transform:translateY(-1px);
}
.touch-control-button[data-action="attack"] { min-width:110px; }
.touch-control-button[data-action="special"] { background:linear-gradient(135deg,rgba(255,182,0,.15),rgba(255,80,0,.15)); border-color:rgba(255,182,0,.38); }

/* ── PRICING ─────────────────────────────────────────────────────── */
.pricing { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1.5rem; max-width:860px; margin:0 auto; }
.price-card {
  background:var(--card); border:1px solid var(--border);
  padding:2.2rem 1.8rem; border-radius:3px; text-align:center; position:relative; transition:all .3s;
}
.price-card.featured { border-color:var(--cyan); box-shadow:0 0 30px rgba(0,200,255,.12); }
.price-card:hover { transform:translateY(-4px); }
.price-badge {
  position:absolute; top:-1px; left:50%; transform:translateX(-50%);
  background:var(--cyan); color:var(--void);
  font-family:var(--fM); font-size:.58rem; letter-spacing:.18em; padding:.22rem 1rem; font-weight:700;
}
.price-tier { font-family:var(--fH); font-size:.75rem; letter-spacing:.22em; color:var(--dim); margin-bottom:1rem; }
.price-val { font-family:var(--fH); font-size:2rem; font-weight:700; color:var(--white); margin-bottom:1.8rem; }
.per { font-size:.75rem; color:var(--dim); }
.price-card ul { list-style:none; text-align:left; margin-bottom:2rem; }
.price-card li { padding:.45rem 0; border-bottom:1px solid var(--border); font-size:.85rem; color:var(--silver); }
.price-card li:last-child { border-bottom:none; }

/* ── ABOUT / CONTACT ─────────────────────────────────────────────── */
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:start; }
.about-body { color:var(--silver); line-height:1.7; margin-bottom:2rem; }
.contact-subtitle { font-family:var(--fH); font-size:.85rem; color:var(--white); letter-spacing:.05em; margin-bottom:1rem; }
.contact-list { list-style:none; margin-bottom:2rem; }
.contact-list li { display:flex; gap:.8rem; align-items:baseline; padding:.5rem 0; border-bottom:1px solid var(--border); }
.contact-list .contact-label { font-family:var(--fM); font-size:.68rem; color:var(--dim); text-transform:uppercase; min-width:90px; }
.contact-list a { color:var(--cyan); text-decoration:none; }
.contact-list a:hover { text-decoration:underline; }
.support-box { background:var(--card); border:1px solid var(--border); border-radius:3px; padding:1.6rem; }
.support-box p { color:var(--dim); font-size:.85rem; margin:.6rem 0 1.2rem; }
.ton-wrap { margin-top:1.2rem; padding-top:1.2rem; border-top:1px solid var(--border); }
.ton-qr-row { display:flex; align-items:center; gap:1rem; margin-top:.5rem; }
.ton-qr { border-radius:4px; background:#fff; padding:4px; flex-shrink:0; }
.ton-address-row { display:flex; flex-direction:column; align-items:stretch; gap:.5rem; flex:1; min-width:0; }
.ton-address-row code {
  flex:1; background:var(--panel); border:1px solid var(--border); border-radius:3px;
  padding:.6rem .8rem; font-family:var(--fM); font-size:.68rem; color:var(--silver);
  overflow-x:auto; white-space:nowrap;
}
.ton-copy-btn {
  background:transparent; border:1px solid var(--borderH); color:var(--cyan);
  border-radius:3px; padding:.6rem 1rem; font-family:var(--fM); font-size:.65rem;
  cursor:pointer; white-space:nowrap; transition:background .2s;
}
.ton-copy-btn:hover { background:rgba(0,200,255,.08); }
.contact-form { background:var(--card); border:1px solid var(--border); border-radius:3px; padding:1.8rem; display:flex; flex-direction:column; gap:1rem; }
.contact-form input, .contact-form textarea {
  background:var(--panel); border:1px solid var(--border); border-radius:3px; color:var(--white);
  font-family:var(--fB); font-size:.9rem; padding:.85rem 1rem; outline:none; resize:vertical;
}
.contact-form input::placeholder, .contact-form textarea::placeholder { color:var(--dim); }
.contact-form input:focus, .contact-form textarea:focus { border-color:var(--borderH); }
.contact-status { font-family:var(--fM); font-size:.75rem; min-height:1.2em; }
.contact-status.ok { color:#4ade80; }
.contact-status.err { color:#f87171; }

/* ── FOOTER ──────────────────────────────────────────────────────── */
footer {
  position:fixed; bottom:0; left:0; right:0; z-index:99;
  background:rgba(2,5,14,.97); -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px);
  border-top:1px solid var(--border);
  padding:.7rem 2rem;
}
.footer-bot { display:flex; justify-content:center; max-width:1200px; margin:0 auto; font-family:var(--fM); font-size:.6rem; color:var(--dim); flex-wrap:wrap; gap:.5rem; }
body { padding-bottom:44px; }

/* ── RESPONSIVE ──────────────────────────────────────────────────── */
/* ── 1024px — tablets landscape ─────────────────────────────────── */
@media(max-width:1024px) {
  .container { padding:0 1.5rem; }
  .game-hud { flex-direction:column; align-items:stretch; }
  .hud-f, .hud-r { width:100%; justify-content:space-between; }
  .hud-c { min-width:auto; }
  .touch-controls { display:flex; }
}

/* ── 768px — tablets portrait ───────────────────────────────────── */
@media(max-width:768px) {
  /* Nav: compact single row */
  #nav { padding:.8rem 1rem; height:auto; }
  .nav-brand { font-size:.75rem; }
  .nav-links { gap:1.2rem; }
  .nav-links a { font-size:.6rem; letter-spacing:.08em; }
  .nav-right { gap:.8rem; }
  #langBtn { font-size:.65rem; padding:.35rem .5rem; }
  .btn-join { font-size:.6rem; padding:.45rem .9rem; }

  /* Hero */
  .hero-title { font-size:2.4rem; }
  .hero-sub { font-size:.9rem; }
  .hero-btns { gap:.8rem; }
  .hero-logo { width:90px; height:90px; }
  .hero-stats { gap:.8rem; padding:.9rem 1.2rem; flex-wrap:wrap; }
  .stat-div { display:none; }
  .stat { min-width:70px; }
  .stat-n { font-size:1.2rem; }

  /* Container */
  .container { padding:0 1rem; }
  .sec-header h2 { font-size:2rem; }

  /* Filter */
  .disc-filter-wrap { margin:0 -1rem 2rem; padding:0 1rem; }
  .disc-btn { padding:.7rem .9rem; font-size:.55rem; letter-spacing:.1em; }

  /* Cards */
  .cards { grid-template-columns:1fr; gap:1.2rem; }

  /* About / Contact */
  .about-grid { grid-template-columns:1fr; gap:2rem; }
  .ton-qr-row { flex-direction:column; align-items:flex-start; }
  .fighter-cards { grid-template-columns:1fr 1fr; }

  /* Modal */
  .modal-overlay { padding:0; align-items:flex-end; }
  .modal-box { width:100%; border-radius:12px 12px 0 0; max-height:92vh; }
  .modal-content { padding:1.5rem; }
  .modal-close { top:.8rem; right:.8rem; }

  /* Misc */
  .pricing { grid-template-columns:1fr; }
  .footer-bot { flex-direction:column; gap:.5rem; }
}

/* ── 480px — phones ─────────────────────────────────────────────── */
@media(max-width:480px) {
  /* Nav: stack logo + links */
  #nav { flex-wrap:wrap; padding:.7rem 1rem; gap:.5rem; }
  .nav-links { order:3; width:100%; justify-content:center; gap:.8rem; }
  .nav-right { order:2; }
  .nav-brand { display:none; } /* hide text, keep logo */

  /* Hero */
  .hero-title { font-size:1.9rem; letter-spacing:.05em; }
  .hero-logo { width:70px; height:70px; }
  .hero-btns { flex-direction:column; width:100%; align-items:stretch; }
  .hero-btns a { text-align:center; justify-content:center; }
  .hero-stats { gap:.5rem; padding:.8rem 1rem; }
  .stat-n { font-size:1.1rem; }
  .stat-l { font-size:.5rem; }

  /* Filter: scroll horizontally */
  .disc-filter-wrap { overflow-x:auto; overscroll-behavior-x:contain; }
  .disc-filter { flex-wrap:nowrap; min-width:max-content; }
  .disc-btn { padding:.65rem .8rem; white-space:nowrap; }

  /* Cards single column */
  .cards { grid-template-columns:1fr; }
  .fighter-cards { grid-template-columns:1fr; }
  .card { padding:1.2rem; }
  .card-photo img { height:150px; }

  /* Section headers */
  .sec-header h2 { font-size:1.7rem; }
  .sec-header p { font-size:.85rem; }
  .sec-tag { font-size:.55rem; }

  /* Ticker */
  .ticker { font-size:.7rem; gap:2rem; }
}

/* ── 360px — small phones ───────────────────────────────────────── */
@media(max-width:360px) {
  .hero-title { font-size:1.6rem; }
  .stat-n { font-size:1rem; }
  .disc-btn { padding:.55rem .65rem; font-size:.5rem; }
  .sec-header h2 { font-size:1.5rem; }
  .modal-content { padding:1rem; }
  .modal-body { font-size:.9rem; line-height:1.7; }
}

/* ── CARD PHOTO ──────────────────────────────────────────────────── */
.card-photo { margin:-1.8rem -1.8rem 1.2rem; overflow:hidden; border-radius:2px 2px 0 0; }
.card-photo img { width:100%; height:180px; object-fit:cover; display:block; }
.feed-loading { color:var(--dim); font-family:var(--fM); font-size:.7rem;
  letter-spacing:.08em; text-align:center; padding:3rem 0; width:100%; }

/* ── CLICKABLE CARDS ─────────────────────────────────────────────── */
.card--clickable { cursor:pointer; }
.card--clickable:hover { border-color:var(--borderH); transform:translateY(-4px); box-shadow:var(--glow); }
.card-read { font-family:var(--fM); font-size:.7rem; color:var(--cyan); letter-spacing:.05em; }

/* ── ARTICLE MODAL ───────────────────────────────────────────────── */
.modal-overlay {
  position:fixed; inset:0; z-index:9000;
  background:rgba(3,7,16,.95); -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px);
  display:flex; align-items:flex-start; justify-content:center;
  overflow-y:auto; padding:2rem 1rem;
  opacity:0; pointer-events:none; transition:opacity .25s;
}
.modal-overlay.open { opacity:1; pointer-events:all; }
.modal-box {
  position:relative; width:min(860px,96vw); margin:auto;
  background:var(--deep); border:1px solid var(--border);
  border-radius:4px; padding:0;
  box-shadow:0 0 100px rgba(0,200,255,.1);
}
.modal-close {
  position:absolute; top:1rem; right:1rem; z-index:10;
  background:rgba(0,0,0,.6); border:1px solid var(--border);
  color:var(--silver); font-size:.9rem; cursor:pointer;
  padding:.35rem .6rem; border-radius:2px; font-family:var(--fM);
  line-height:1;
}
.modal-close:hover { color:var(--white); border-color:var(--borderH); }
.modal-photo { width:100%; height:auto; display:block;
  border-radius:4px 4px 0 0; }
.modal-photo--hidden { display:none; }
.modal-content { padding:2.5rem 3rem; }
@media(max-width:600px){ .modal-content { padding:1.5rem; } }
.modal-meta {
  font-family:var(--fM); font-size:.6rem; letter-spacing:.12em;
  color:var(--cyan); text-transform:uppercase; margin-bottom:1.2rem;
}
.modal-body {
  font-family:var(--fB); font-size:1rem; line-height:1.8;
  color:var(--silver);
}
.modal-body b { color:var(--white); font-weight:600; }
.modal-body i { color:var(--dim); font-style:italic; display:block; margin-bottom:.8rem; }
.modal-share {
  margin-top:2rem; padding-top:1.5rem; border-top:1px solid var(--border);
  display:flex; align-items:center; gap:.7rem;
}
.modal-share-label { font-family:var(--fM); font-size:.7rem; color:var(--dim); text-transform:uppercase; }
.share-btn {
  width:36px; height:36px; display:flex; align-items:center; justify-content:center;
  background:var(--card); border:1px solid var(--border); border-radius:50%;
  font-size:1rem; cursor:pointer; text-decoration:none; transition:border-color .2s, transform .2s;
}
.share-btn:hover { border-color:var(--borderH); transform:translateY(-2px); }
.modal-footer {
  margin-top:1rem;
  display:flex; justify-content:flex-end;
}
/* ── Search result items ─────────────────────────────────────────── */
.search-result-item {
  padding:1.2rem 0; border-bottom:1px solid var(--border);
  cursor:pointer; overflow:hidden;
}
.search-result-item:hover { background:rgba(0,200,255,.03); }
.sri-date { font-family:var(--fM); font-size:.58rem; color:var(--cyan);
  letter-spacing:.1em; margin-bottom:.35rem; }
.sri-title { font-family:var(--fB); font-size:.95rem; color:var(--white);
  font-weight:600; margin-bottom:.35rem; line-height:1.4; }
.sri-preview { font-family:var(--fB); font-size:.82rem; color:var(--dim);
  line-height:1.5; }
.sri-read { font-family:var(--fM); font-size:.65rem; color:var(--cyan);
  margin-top:.5rem; }
@media(max-width:480px) {
  body { font-size:.95rem; }
  .hero-title { font-size:2rem; }
  .game-hud { gap:.6rem; }
  .hud-f, .hud-r { font-size:.72rem; }
  .ai-label { display:none; }
  .btn-outline, .btn-primary { width:100%; justify-content:center; }
  .touch-control-button { min-width:72px; padding:.8rem .8rem; font-size:.82rem; }
}

/* ── GAME CONTROLS ENHANCED ─────────────────────────────────── */
.ctrl-help { display:flex; flex-direction:column; gap:0.3rem; font-size:.58rem; color:var(--dim); }
.ctrl-p1 { color:#88aaff; } .ctrl-p2 { color:#ff9988; }
.game-buttons { display:flex; align-items:center; gap:.4rem; flex-wrap:wrap; }
.ai-label { font-family:var(--fM); font-size:.62rem; color:var(--dim); }
.ai-btn.active { border-color:var(--cyan); color:var(--cyan); background:rgba(0,200,255,.1); }
.game-ctrl { display:flex; flex-direction:column; align-items:center; gap:.6rem;
  background:var(--panel); border:1px solid var(--border); border-top:none;
  padding:.8rem 1.2rem; flex-wrap:wrap; }

/* Sound button */
.intro-sound-btn {
  position:absolute; bottom:1.5rem; left:2rem;
  font-family:var(--fM); font-size:.62rem; letter-spacing:.15em;
  color:rgba(255,255,255,.5); cursor:pointer; border:1px solid rgba(255,255,255,.2);
  background:rgba(0,0,0,.3); padding:.3rem .8rem; border-radius:2px;
  transition:all .2s;
}
.intro-sound-btn:hover { color:var(--cyan); border-color:var(--cyan); }
