@font-face{font-family:Orbitron;src:url(fonts/Orbitron.ttf);font-display:swap}
@font-face{font-family:Rajdhani;src:url(fonts/Rajdhani-SemiBold.ttf);font-weight:600;font-display:swap}
@font-face{font-family:Rajdhani;src:url(fonts/Rajdhani-Bold.ttf);font-weight:700;font-display:swap}
@font-face{font-family:Cairo;src:url(fonts/Cairo.ttf);font-display:swap}
:root{--cyan:#23d9ff;--pink:#ff2fa8;--violet:#9b4dff;--red:#ff3a4f;--ink:#07060e;--glass:rgba(10,12,22,.58);--glass2:rgba(10,12,22,.82);--line:rgba(160,200,255,.18);
  --title:Orbitron,Cairo,sans-serif;--num:Orbitron,sans-serif;--body:Rajdhani,Cairo,system-ui,sans-serif;--cut:10px}
html[lang=ar]{--title:Cairo,Orbitron,sans-serif;--body:Cairo,Rajdhani,system-ui,sans-serif}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;height:100%;overflow:hidden;background:var(--ink);color:#e9eef8;font-family:var(--body);font-weight:600;user-select:none;-webkit-user-select:none;touch-action:none}
#c{position:fixed;inset:0;width:100%;height:100%;display:block}
.hidden{display:none!important}
.glass{background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut))}
/* ---------- screens ---------- */
.screen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;z-index:20;overflow:auto;
  background:linear-gradient(180deg,rgba(4,4,10,.55),rgba(4,4,10,.78))}
#menu{justify-content:flex-start;background:linear-gradient(90deg,rgba(4,4,10,.86) 0,rgba(4,4,10,.55) 38%,rgba(4,4,10,0) 62%)}
html[dir=rtl] #menu{background:linear-gradient(270deg,rgba(4,4,10,.86) 0,rgba(4,4,10,.55) 38%,rgba(4,4,10,0) 62%)}
.panel{display:flex;flex-direction:column;gap:10px;width:min(420px,92vw);padding-inline-start:clamp(8px,4vw,64px)}
.panel.center{align-items:stretch;padding:26px 28px;background:var(--glass2);border:1px solid var(--line);
  clip-path:polygon(16px 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 16px)}
.panel.wide{width:min(620px,94vw)}
.kicker{display:flex;align-items:center;gap:10px;font-size:13px;letter-spacing:4px;color:var(--cyan);text-transform:uppercase}
.kicker i{width:28px;height:2px;background:var(--cyan);box-shadow:0 0 8px var(--cyan)}
h1.logo{font-family:var(--title);font-weight:900;font-size:clamp(38px,5.6vw,72px);line-height:.95;margin:2px 0 0;letter-spacing:3px;color:#f4f7ff;
  text-shadow:-2px 0 rgba(255,47,168,.75),2px 0 rgba(35,217,255,.75),0 0 30px rgba(35,217,255,.25)}
html[lang=ar] h1.logo{letter-spacing:0;font-weight:800}
h2{font-family:var(--title);font-weight:700;font-size:clamp(22px,3vw,32px);margin:0 0 8px;letter-spacing:3px;text-transform:uppercase}
html[lang=ar] h2{letter-spacing:0}
.tag{margin:0 0 6px;font-size:clamp(16px,1.6vw,19px);color:#aab4c8;line-height:1.35}
.classCard{display:flex;flex-direction:column;gap:2px;padding:10px 14px;margin:4px 0 8px;background:var(--glass);border-inline-start:3px solid var(--cyan);font-size:15px;color:#b9c3d6}
.cc-top{display:flex;gap:10px;align-items:baseline}.cc-top span{font-size:11px;letter-spacing:3px;color:var(--cyan);text-transform:uppercase}
.classCard b{font-family:var(--title);font-size:17px;color:#fff;letter-spacing:1px}
.btn{font-family:var(--body);font-weight:700;font-size:clamp(17px,1.7vw,20px);letter-spacing:2px;text-transform:uppercase;padding:12px 20px;text-align:start;
  border:1px solid var(--line);background:rgba(16,19,32,.72);color:#e9eef8;cursor:pointer;transition:background .12s,border-color .12s,padding .12s;
  clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px)}
html[lang=ar] .btn{letter-spacing:0}
.btn:hover{background:rgba(35,217,255,.14);border-color:var(--cyan);padding-inline-start:26px}
.btn.primary{background:linear-gradient(90deg,rgba(35,217,255,.9),rgba(35,150,255,.85));color:#03111a;border-color:transparent;box-shadow:0 0 24px rgba(35,217,255,.35)}
.btn.primary:hover{background:linear-gradient(90deg,#5fe6ff,#3aa0ff)}
.panel.center .btn{text-align:center}
.btn.ghost{background:transparent;border-color:transparent;color:#8f9bb3;font-size:15px;padding:6px 0}
.btn.ghost:hover{color:#fff;padding-inline-start:6px;background:transparent}
.proto{color:#5e6880;font-size:13px;margin:8px 0 0;letter-spacing:1px}
.row{display:flex;align-items:center;gap:14px;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--line);font-size:17px}
.row input[type=range]{flex:1;accent-color:var(--cyan)}.row output{width:44px;text-align:center;font-family:var(--num);font-size:14px;color:var(--cyan)}
.seg{display:flex;gap:0;border:1px solid var(--line)}.seg button{font:inherit;font-weight:700;padding:6px 16px;border:0;background:transparent;color:#8f9bb3;cursor:pointer;letter-spacing:1px}
.seg button.on{background:var(--cyan);color:#03111a}
.howText{font-size:18px;line-height:1.7;color:#c4cddd;margin:0 0 10px}
#board{border-collapse:collapse;font-size:17px;width:100%;margin-bottom:10px}
#board td,#board th{padding:8px 14px;text-align:start;border-bottom:1px solid var(--line)}#board th{font-family:var(--num);font-size:11px;letter-spacing:2px;color:#7f8aa3;font-weight:400}
#board td:nth-child(n+3){font-family:var(--num);font-size:15px}
#board tr.me{background:rgba(35,217,255,.14)}#board tr.me td:first-child{box-shadow:inset 3px 0 var(--cyan)}
body.showcase .screen,body.showcase #hud{display:none!important}
/* ---------- HUD ---------- */
#hud{position:fixed;inset:0;pointer-events:none;z-index:10;font-family:var(--body)}
#cross{position:absolute;left:50%;top:50%;width:0;height:0}
#cross i{position:absolute;background:rgba(255,255,255,.92);box-shadow:0 0 2px rgba(0,0,0,.8)}
#cross i:nth-child(1){width:2px;height:8px;left:-1px;top:-14px}#cross i:nth-child(2){width:2px;height:8px;left:-1px;top:6px}
#cross i:nth-child(3){width:8px;height:2px;left:-14px;top:-1px}#cross i:nth-child(4){width:8px;height:2px;left:6px;top:-1px}
#cross b{position:absolute;width:2px;height:2px;left:-1px;top:-1px;background:#fff}
#cross.wide i:nth-child(1){top:-24px}#cross.wide i:nth-child(2){top:16px}#cross.wide i:nth-child(3){left:-24px}#cross.wide i:nth-child(4){left:16px}
#hitmark{position:absolute;left:50%;top:50%;width:0;height:0;opacity:0;transition:opacity .15s}
#hitmark i{position:absolute;width:10px;height:2px;background:#fff;box-shadow:0 0 3px rgba(0,0,0,.6)}
#hitmark i:nth-child(1){left:-18px;top:-12px;transform:rotate(45deg)}#hitmark i:nth-child(2){left:8px;top:-12px;transform:rotate(-45deg)}
#hitmark i:nth-child(3){left:-18px;top:10px;transform:rotate(-45deg)}#hitmark i:nth-child(4){left:8px;top:10px;transform:rotate(45deg)}
#hitmark.show{opacity:1;transition:none}#hitmark.head i{background:var(--red);box-shadow:0 0 6px var(--red);width:13px}
#vignette{position:absolute;inset:0;transition:box-shadow .3s}
#adsVig{position:absolute;inset:0;opacity:0;pointer-events:none;background:radial-gradient(ellipse 60% 70% at 50% 50%,rgba(0,0,0,0) 55%,rgba(2,6,14,.55) 100%)}
#cross.ads{display:none}
#mmWrap{position:absolute;top:14px;inset-inline-start:14px;width:clamp(120px,12vw,168px);aspect-ratio:1;padding:6px;--cut:14px}
#mm{width:100%;height:100%;display:block;border-radius:50%;background:radial-gradient(circle,rgba(20,26,44,.6),rgba(6,8,14,.6))}
#topbar{position:absolute;top:14px;left:0;right:0;display:flex;flex-direction:column;align-items:center;gap:6px}
#timerBox{padding:4px 22px;--cut:8px}
#timer{font-family:var(--num);font-size:clamp(18px,1.8vw,24px);letter-spacing:2px;color:#f2f6ff;min-width:74px;text-align:center}
#score{display:flex;align-items:center;gap:10px;padding:3px 14px;font-size:14px;letter-spacing:1px;color:#aab4c8;--cut:6px}
#score b{font-family:var(--num);color:#fff;font-size:15px}#score .you b{color:var(--cyan)}#score .lead b{color:var(--red)}
#score .sep{width:1px;height:14px;background:var(--line)}#score small{color:#6c768c;font-family:var(--num);font-size:11px}
#killfeed{position:absolute;top:16px;inset-inline-end:16px;display:flex;flex-direction:column;gap:4px;align-items:flex-end}
html[dir=rtl] #killfeed{align-items:flex-start}
#killfeed div{background:var(--glass);border-inline-end:2px solid var(--red);padding:3px 12px;font-size:15px;animation:kf 4s forwards;display:flex;align-items:center;gap:6px}
#killfeed b{color:#fff}#killfeed span{color:#c9d2e3}
#killfeed .kfi{display:inline-block;width:16px;height:2px;background:var(--cyan);box-shadow:0 0 6px var(--cyan);position:relative}
#killfeed .kfi:after{content:'';position:absolute;right:-1px;top:-3px;border:4px solid transparent;border-left:5px solid var(--cyan)}
html[dir=rtl] #killfeed .kfi{transform:scaleX(-1)}
#killfeed .me{border-inline-end-color:var(--cyan);background:rgba(35,217,255,.16)}
@keyframes kf{0%{opacity:0;transform:translateY(-6px)}6%{opacity:1;transform:none}85%{opacity:1}100%{opacity:0}}
#chaos{position:absolute;top:20%;left:50%;transform:translateX(-50%);text-align:center;background:linear-gradient(90deg,rgba(255,30,60,0),rgba(40,4,12,.85) 20%,rgba(40,4,12,.85) 80%,rgba(255,30,60,0));
  border-top:1px solid rgba(255,58,79,.7);border-bottom:1px solid rgba(255,58,79,.7);padding:8px 70px;min-width:min(520px,90vw)}
#chaosWarn{font-size:13px;letter-spacing:4px;color:#ff8a97;text-transform:uppercase}
#chaosName{font-family:var(--title);font-size:clamp(22px,3.2vw,38px);font-weight:900;letter-spacing:4px;color:#fff;text-shadow:-2px 0 rgba(255,58,79,.9),2px 0 rgba(35,217,255,.6)}
#chaosCount{font-family:var(--num);font-size:26px;color:var(--red)}
#chaos.shake{animation:shake .25s infinite}
@keyframes shake{0%,100%{transform:translateX(-50%)}25%{transform:translateX(calc(-50% - 3px))}75%{transform:translateX(calc(-50% + 3px))}}
#chaosActive{position:absolute;top:96px;left:50%;transform:translateX(-50%);border:1px solid rgba(255,58,79,.6);background:rgba(40,4,12,.7);color:#ffb3bc;padding:2px 14px;font-size:13px;letter-spacing:2px}
#bl{position:absolute;bottom:16px;inset-inline-start:16px;display:flex;align-items:center;gap:12px;padding:10px 14px}
#hpWrap{width:clamp(170px,19vw,260px)}
#hpWrap .lbl{display:flex;justify-content:space-between;align-items:baseline;font-size:12px;letter-spacing:3px;color:#8f9bb3;text-transform:uppercase;margin-bottom:4px}
#hptext{font-family:var(--num);font-size:22px;color:#fff;letter-spacing:1px}
#hpbar{position:relative;height:8px;background:rgba(255,255,255,.08);overflow:hidden}
#hpfill{position:absolute;inset:0;width:100%;background:linear-gradient(90deg,#1fb8ff,#3ef0ff);box-shadow:0 0 10px rgba(35,217,255,.6);transition:width .12s}
html[dir=rtl] #hpfill{left:auto;right:0}
#hpfill.low{background:linear-gradient(90deg,#ff2a40,#ff6a5a);box-shadow:0 0 10px rgba(255,58,79,.7)}
#hpseg{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 calc(10% - 2px),rgba(6,8,14,.9) calc(10% - 2px) 10%)}
#ability{position:relative;width:44px;height:44px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;overflow:hidden}
#abFill{position:absolute;left:0;right:0;bottom:0;height:100%;background:rgba(35,217,255,.18)}
#abIcon{position:relative;width:22px;height:22px;fill:#7f8aa3}
#ability.ready{border-color:var(--cyan);box-shadow:0 0 12px rgba(35,217,255,.4) inset}#ability.ready #abIcon{fill:var(--cyan);filter:drop-shadow(0 0 4px var(--cyan))}
#abText{position:absolute;bottom:1px;font-size:9px;letter-spacing:1px;color:#c9d2e3;font-family:var(--num)}
#ability.ready #abText{display:none}
#br{position:absolute;bottom:16px;inset-inline-end:16px;padding:8px 16px 10px;min-width:180px;text-align:end}
#weapons{display:flex;gap:6px;justify-content:flex-end;align-items:center;font-size:13px;letter-spacing:2px;color:#8f9bb3;text-transform:uppercase}
#weapons .w{font-family:var(--num);font-size:10px;border:1px solid var(--line);padding:1px 6px;opacity:.6}
#weapons .w.on{opacity:1;border-color:var(--cyan);color:var(--cyan)}
#wName{color:#dfe6f3;margin-inline-start:6px}
#ammo{font-family:var(--num);line-height:1;margin-top:4px}#ammo b{font-size:clamp(34px,3.4vw,46px);color:#fff;font-weight:700}
#ammo .slash,#ammoMax{font-size:16px;color:#6c768c;margin-inline-start:4px}
#ammo.low b{color:var(--red);text-shadow:0 0 10px rgba(255,58,79,.6)}
#reloadLine{height:2px;background:rgba(255,255,255,.08);margin-top:6px}#reloadBar{height:100%;width:0;background:var(--cyan);box-shadow:0 0 6px var(--cyan)}
#reloadTxt{color:var(--cyan);font-size:12px;letter-spacing:3px;margin-top:3px;text-transform:uppercase}
#dead{position:absolute;top:60%;left:50%;transform:translateX(-50%);padding:12px 28px;font-size:20px;letter-spacing:1px;color:#ffb3bc;border-color:rgba(255,58,79,.5)}
#dead b{color:#fff;font-family:var(--num)}
#clickPlay{position:absolute;top:60%;left:50%;transform:translateX(-50%);padding:12px 28px;font-size:18px;letter-spacing:2px;text-transform:uppercase;pointer-events:auto;cursor:pointer;border-color:var(--cyan)}
/* ---------- touch ---------- */
#touch{position:absolute;inset:0;pointer-events:none}
#touch .tb{position:absolute;pointer-events:auto;width:60px;height:60px;border-radius:50%;border:1px solid rgba(160,200,255,.35);background:rgba(10,12,22,.5);color:#e9eef8;
  display:flex;align-items:center;justify-content:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:0}
#touch .tb svg{width:26px;height:26px;fill:none;stroke:#e9eef8;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#touch .tb svg .fill{fill:#e9eef8;stroke:none}
#touch .tb.big{width:84px;height:84px;border-color:rgba(255,58,79,.6);background:rgba(60,8,18,.45)}#touch .tb.big svg{width:34px;height:34px;stroke:#ff8a97}
#touch .tb.on{border-color:var(--cyan);background:rgba(10,60,80,.55);box-shadow:0 0 14px rgba(35,217,255,.55)}#touch .tb.on svg{stroke:#9ff6ff}
#touch .tb.small{width:44px;height:44px}#touch .tb.small svg{width:18px;height:18px}
#tFire{right:112px;bottom:64px}#tJump{right:22px;bottom:56px}#tDash{right:30px;bottom:134px}#tSlide{right:196px;bottom:40px}#tSwap{right:118px;bottom:168px}#tAds{right:204px;bottom:136px}#tPause{left:50%;margin-left:-22px;top:96px}
#stick{position:absolute;left:30px;bottom:36px;width:140px;height:140px;border-radius:50%;background:rgba(10,12,22,.35);border:1px solid rgba(160,200,255,.3);pointer-events:auto}
#knob{position:absolute;left:45px;top:45px;width:50px;height:50px;border-radius:50%;background:rgba(35,217,255,.35);border:1px solid var(--cyan);box-shadow:0 0 12px rgba(35,217,255,.4)}
body.touch #bl{bottom:auto;top:auto;bottom:190px;padding:6px 10px}body.touch #br{bottom:auto;top:150px;min-width:140px}
body.touch #ammo b{font-size:28px}body.touch #hpWrap{width:150px}body.touch #ability{width:38px;height:38px}body.touch #killfeed{top:16px}
body.touch #mmWrap{width:110px}

/* short screens (phones in landscape) */
@media (max-height:560px){
  .screen{align-items:flex-start;padding:12px 18px}
  .panel{gap:6px;margin:auto 0}
  .panel.center{padding:14px 18px}
  h1.logo{font-size:clamp(28px,7vh,40px)}
  .tag{font-size:14px;margin:0}
  .kicker{font-size:11px}
  .classCard{padding:6px 10px;margin:2px 0;font-size:13px}.classCard b{font-size:14px}
  .btn{padding:8px 16px;font-size:15px}
  .btn.ghost{padding:2px 0}
  .proto{display:none}
  .row{padding:6px 10px;font-size:15px}
  .howText{font-size:15px;line-height:1.5}
  #board td,#board th{padding:4px 10px}
}
body.touch #br{top:14px;bottom:auto;padding:6px 12px 8px;min-width:130px}
body.touch #killfeed{top:96px}
@media (max-height:560px){
  body.touch #touch .tb{width:52px;height:52px}body.touch #touch .tb.big{width:72px;height:72px}
  body.touch #tFire{right:96px;bottom:46px}body.touch #tJump{right:18px;bottom:40px}body.touch #tDash{right:22px;bottom:108px}
  body.touch #tSlide{right:172px;bottom:26px}body.touch #tSwap{right:100px;bottom:130px}body.touch #tAds{right:178px;bottom:104px}
  body.touch #stick{width:120px;height:120px;left:22px;bottom:22px}body.touch #knob{left:35px;top:35px}
  body.touch #bl{bottom:156px}body.touch #mmWrap{width:96px}body.touch #chaos{top:28%}
}
html[lang=ar] *{letter-spacing:0!important}
body.touch #bl{left:16px;right:auto}

/* agz1: bot difficulty row (menu top) */
.gzDiffRow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px;background:var(--glass2,rgba(8,10,20,.6));border:1px solid var(--line)}
.gzDiffRow>span{font-weight:700;letter-spacing:1px;color:#c9d2e3}
.gzDiffRow .seg button{min-height:44px;padding:6px 12px}
/* agz1: phone portrait HUD + touch layout — nothing overlaps (owner rule Oct 23) */
@media (orientation:portrait){
  body.touch #mmWrap{width:84px;top:calc(10px + env(safe-area-inset-top));inset-inline-start:10px;padding:4px}
  body.touch #topbar{top:calc(10px + env(safe-area-inset-top));left:104px;right:10px;align-items:center}
  body.touch #score{gap:6px;padding:3px 8px;font-size:12px;flex-wrap:wrap;justify-content:center;max-width:100%}
  body.touch #br{top:calc(150px + env(safe-area-inset-top));bottom:auto;inset-inline-start:10px;inset-inline-end:auto;left:10px;right:auto;min-width:0;max-width:170px;padding:4px 10px 6px;text-align:start}
  body.touch #ammo b{font-size:22px}
  body.touch #killfeed{top:calc(230px + env(safe-area-inset-top));inset-inline-end:10px;max-width:52vw}
  body.touch #killfeed div{font-size:12px;padding:2px 8px}
  body.touch #bl{bottom:calc(250px + env(safe-area-inset-bottom));left:10px}
  body.touch #stick{width:120px;height:120px;left:calc(14px + env(safe-area-inset-left));bottom:calc(24px + env(safe-area-inset-bottom))}body.touch #knob{left:35px;top:35px}
  body.touch #touch .tb{width:60px;height:60px}body.touch #touch .tb.big{width:84px;height:84px}body.touch #touch .tb.small{width:48px;height:48px}
  body.touch #tFire{right:96px;bottom:calc(40px + env(safe-area-inset-bottom))}
  body.touch #tJump{right:16px;bottom:calc(36px + env(safe-area-inset-bottom))}
  body.touch #tDash{right:16px;bottom:calc(112px + env(safe-area-inset-bottom))}
  body.touch #tSlide{right:188px;bottom:calc(30px + env(safe-area-inset-bottom))}
  body.touch #tSwap{right:106px;bottom:calc(136px + env(safe-area-inset-bottom))}
  body.touch #tAds{right:188px;bottom:calc(112px + env(safe-area-inset-bottom))}
}
@media (pointer:coarse){.gzDiffRow .seg button{min-height:48px}}
@media (max-height:420px){#menu .tag,#menu .kicker{display:none}#menu .panel{gap:5px}}

/* agz-scope: clean see-through aim (owner 23 Oct) - thin reticle, no dark box */
#adsRet{position:absolute;left:50%;top:50%;width:0;height:0;display:none;pointer-events:none;z-index:6}
body.ads #adsRet{display:block}
#adsRet i{position:absolute;background:#6ff6ff;box-shadow:0 0 0 1px rgba(0,0,0,.55)}
#adsRet i:nth-child(1){width:1.5px;height:9px;left:-.75px;top:-17px}#adsRet i:nth-child(2){width:1.5px;height:9px;left:-.75px;top:8px}
#adsRet i:nth-child(3){width:9px;height:1.5px;left:-17px;top:-.75px}#adsRet i:nth-child(4){width:9px;height:1.5px;left:8px;top:-.75px}
#adsRet b{position:absolute;width:4px;height:4px;left:-2px;top:-2px;border-radius:50%;background:#ff4d4d;box-shadow:0 0 0 1px rgba(0,0,0,.6)}
#aimTag{position:absolute;transform:translate(-50%,-100%);pointer-events:none;z-index:6;font:700 12px/1.2 system-ui,sans-serif;color:#fff;background:rgba(40,10,0,.72);border:1px solid #ff7a2a;border-radius:6px;padding:2px 7px;white-space:nowrap;text-shadow:0 1px 2px #000}
