{"id":19699,"date":"2023-05-23T11:58:12","date_gmt":"2023-05-23T08:58:12","guid":{"rendered":"https:\/\/vglesports.com\/?page_id=19699"},"modified":"2026-08-09T08:20:50","modified_gmt":"2026-08-09T05:20:50","slug":"allwyn-unileague-esports","status":"publish","type":"page","link":"https:\/\/vglesports.com\/el\/allwyn-unileague-esports\/","title":{"rendered":"allwyn Unileague"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"19699\" class=\"elementor elementor-19699\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-8200a9b elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"8200a9b\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-217f0f4\" data-id=\"217f0f4\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-fc7fca7 elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"fc7fca7\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<!DOCTYPE html>\r\n<html lang=\"el\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Barlow+Condensed:wght@400;600;700;800;900&family=Barlow:wght@400;500&display=swap\" rel=\"stylesheet\">\r\n<style>\r\n#uni-hero,#uni-hero *{box-sizing:border-box !important;margin:0 !important;padding:0 !important;line-height:normal !important;}\r\n\r\n#uni-hero{\r\n  position:relative !important;\r\n  width:100% !important;\r\n  height:min(90vh,700px) !important;\r\n  min-height:540px !important;\r\n  overflow:hidden !important;\r\n  background:#0c111a !important;\r\n}\r\n\r\n#uni-bg{\r\n  position:absolute !important;inset:0 !important;\r\n  background-image:url('https:\/\/vglesports.com\/wp-content\/uploads\/2026\/08\/ROC-CHAMPION-1920-x-1200-px.webp') !important;\r\n  background-size:cover !important;background-position:center top !important;\r\n  background-repeat:no-repeat !important;\r\n  filter:brightness(0.55) saturate(0.65) hue-rotate(200deg) !important;\r\n  z-index:0 !important;\r\n}\r\n\r\n#uni-overlay{\r\n  position:absolute !important;inset:0 !important;z-index:1 !important;\r\n  background:linear-gradient(to top, rgba(12,17,26,1) 0%, rgba(12,17,26,0.78) 28%, rgba(12,17,26,0.3) 60%, rgba(12,17,26,0.08) 100%) !important;\r\n}\r\n\r\n#uni-glow-top{\r\n  position:absolute !important;top:0 !important;left:0 !important;right:0 !important;height:3px !important;\r\n  background:linear-gradient(90deg,transparent,#00c8ff 35%,#7ce8ff 50%,#00c8ff 65%,transparent) !important;\r\n  z-index:5 !important;\r\n}\r\n\r\n#uni-content{\r\n  position:absolute !important;inset:0 !important;\r\n  display:flex !important;flex-direction:column !important;\r\n  justify-content:flex-end !important;\r\n  padding:48px !important;\r\n  z-index:2 !important;\r\n}\r\n\r\n#uni-logos{\r\n  display:flex !important;align-items:center !important;\r\n  margin-bottom:18px !important;\r\n}\r\n#uni-logo{\r\n  height:104px !important;width:auto !important;\r\n  display:block !important;\r\n  filter:drop-shadow(0 2px 12px rgba(0,0,0,0.6)) !important;\r\n}\r\n\r\n#uni-pill{\r\n  font-family:'Barlow Condensed',sans-serif !important;\r\n  font-size:10px !important;font-weight:700 !important;letter-spacing:3px !important;\r\n  text-transform:uppercase !important;\r\n  padding:6px 16px !important;\r\n  border:1px solid rgba(255,255,255,0.5) !important;\r\n  border-radius:100px !important;\r\n  color:#fff !important;\r\n  background:rgba(0,0,0,0.35) !important;\r\n  margin-bottom:14px !important;\r\n  width:fit-content !important;\r\n  display:inline-block !important;\r\n}\r\n\r\n#uni-title{\r\n  font-family:'Barlow Condensed',sans-serif !important;\r\n  font-size:clamp(52px,8vw,100px) !important;\r\n  font-weight:900 !important;color:#fff !important;\r\n  line-height:0.88 !important;letter-spacing:2px !important;\r\n  text-transform:uppercase !important;\r\n  margin-bottom:28px !important;\r\n}\r\n#uni-title em{\r\n  font-style:italic !important;\r\n  color:#00c8ff !important;\r\n  font-size:0.72em !important;\r\n  text-transform:none !important;\r\n  margin-right:4px !important;\r\n}\r\n\r\n#uni-bottom-row{\r\n  display:flex !important;flex-direction:column !important;\r\n  align-items:flex-start !important;\r\n  gap:16px !important;\r\n}\r\n\r\n#uni-cta-row{\r\n  display:flex !important;align-items:center !important;\r\n  gap:16px !important;flex-wrap:wrap !important;\r\n}\r\n\r\n#uni-badges{display:flex !important;gap:6px !important;flex-wrap:wrap !important;}\r\n.u-badge{\r\n  font-family:'Barlow Condensed',sans-serif !important;\r\n  font-size:10px !important;font-weight:700 !important;\r\n  letter-spacing:1px !important;text-transform:uppercase !important;\r\n  padding:4px 10px !important;border-radius:3px !important;\r\n  display:inline-block !important;\r\n}\r\n\r\n.u-vsep{\r\n  width:1px !important;height:28px !important;\r\n  background:rgba(255,255,255,0.15) !important;\r\n  display:block !important;\r\n}\r\n\r\n#uni-cd-inline{\r\n  display:flex !important;align-items:baseline !important;gap:6px !important;\r\n  font-family:'Barlow Condensed',sans-serif !important;\r\n}\r\n.u-cd-val{\r\n  font-size:28px !important;font-weight:900 !important;\r\n  color:#fff !important;letter-spacing:1px !important;line-height:1 !important;\r\n}\r\n.u-cd-lbl{\r\n  font-size:10px !important;font-weight:700 !important;\r\n  letter-spacing:2px !important;text-transform:uppercase !important;\r\n  color:rgba(255,255,255,0.3) !important;\r\n  margin-right:8px !important;\r\n}\r\n.u-cd-sep-inline{\r\n  font-size:22px !important;font-weight:400 !important;\r\n  color:rgba(0,200,255,0.3) !important;line-height:1 !important;\r\n}\r\n\r\n#uni-cd-meta-inline{\r\n  font-family:'Barlow Condensed',sans-serif !important;\r\n  font-size:12px !important;font-weight:600 !important;letter-spacing:1px !important;\r\n  color:rgba(255,255,255,0.3) !important;\r\n}\r\n#uni-cd-meta-inline span{color:#00c8ff !important;}\r\n\r\n#uni-cta{\r\n  font-family:'Barlow Condensed',sans-serif !important;\r\n  font-size:13px !important;font-weight:700 !important;\r\n  letter-spacing:2px !important;text-transform:uppercase !important;\r\n  padding:12px 28px !important;\r\n  background:#fff !important;color:#000 !important;\r\n  text-decoration:none !important;border-radius:6px !important;\r\n  white-space:nowrap !important;display:inline-block !important;\r\n  transition:background 0.2s !important;\r\n}\r\n#uni-cta:hover{background:#d0f5ff !important;}\r\n\r\n@media(max-width:700px){\r\n  #uni-hero{height:78vh !important;min-height:480px !important;}\r\n  #uni-content{padding:24px 20px !important;}\r\n\r\n  #uni-logos{margin-bottom:14px !important;}\r\n  #uni-logo{height:112px !important;}\r\n\r\n  #uni-pill{\r\n    background:rgba(12,17,26,0.28) !important;\r\n    backdrop-filter:blur(4px) !important;\r\n    -webkit-backdrop-filter:blur(4px) !important;\r\n    border-color:rgba(255,255,255,0.4) !important;\r\n    font-size:9px !important;\r\n    letter-spacing:2px !important;\r\n    padding:5px 12px !important;\r\n  }\r\n\r\n  #uni-title{margin-bottom:20px !important;}\r\n\r\n  .u-vsep{display:none !important;}\r\n\r\n  #uni-bottom-row{\r\n    gap:12px !important;\r\n  }\r\n\r\n  #uni-badges{\r\n    width:100% !important;\r\n    flex-wrap:nowrap !important;\r\n    gap:5px !important;\r\n    justify-content:space-between !important;\r\n  }\r\n  #uni-badges .u-badge{flex:1 1 0 !important;text-align:center !important;}\r\n\r\n  #uni-cta-row{\r\n    flex-direction:column !important;\r\n    align-items:stretch !important;\r\n    width:100% !important;\r\n    gap:12px !important;\r\n  }\r\n\r\n  #uni-free-badge{\r\n    text-align:center !important;\r\n    order:1 !important;\r\n    width:100% !important;\r\n  }\r\n\r\n  #uni-cd-inline{\r\n    display:flex !important;\r\n    order:2 !important;\r\n    width:100% !important;\r\n    justify-content:flex-start !important;\r\n    gap:6px !important;\r\n  }\r\n  .u-cd-val{font-size:24px !important;}\r\n\r\n  #uni-cd-meta-inline{\r\n    display:block !important;\r\n    order:3 !important;\r\n    width:100% !important;\r\n  }\r\n\r\n  #uni-cta{\r\n    order:4 !important;\r\n    width:100% !important;\r\n    text-align:center !important;\r\n    padding:14px 24px !important;\r\n  }\r\n}\r\n<\/style>\r\n<\/head>\r\n<body data-rsssl=1 style=\"margin:0;background:#0c111a;\">\r\n\r\n<div id=\"uni-hero\">\r\n  <div id=\"uni-glow-top\"><\/div>\r\n  <div id=\"uni-bg\"><\/div>\r\n  <div id=\"uni-blue-tint\"><\/div>\r\n  <div id=\"uni-overlay\"><\/div>\r\n\r\n  <div id=\"uni-content\">\r\n\r\n    <div id=\"uni-logos\">\r\n      <img decoding=\"async\" id=\"uni-logo\" src=\"https:\/\/vglesports.com\/wp-content\/uploads\/2026\/01\/UNILEAGUE-e-SPORT-GR-coa-e1768771954274.webp\" alt=\"Allwyn Unileague eSports\" translate=\"no\">\r\n    <\/div>\r\n\r\n    <div id=\"uni-pill\" translate=\"no\"><\/div>\r\n\r\n    <div id=\"uni-title\" translate=\"no\">\r\n      <em>Allwyn<\/em><br>Unileague\r\n    <\/div>\r\n\r\n    <div id=\"uni-bottom-row\">\r\n      <div id=\"uni-badges\">\r\n        <span class=\"u-badge u-tab\" data-idx=\"0\" translate=\"no\">EA FC<\/span>\r\n        <span class=\"u-badge u-tab\" data-idx=\"1\" translate=\"no\">eFootball<\/span>\r\n        <span class=\"u-badge u-tab\" data-idx=\"2\" translate=\"no\">Rocket League<\/span>\r\n      <\/div>\r\n\r\n      <div id=\"uni-cta-row\">\r\n        <span id=\"uni-free-badge\" class=\"u-badge\" style=\"background:#1a7a3a !important;color:#fff !important;font-weight:800 !important;font-size:13px !important;padding:8px 18px !important;border-radius:6px !important;\" translate=\"no\">Free \u00b7 Online<\/span>\r\n\r\n        <!-- Countdown inline -->\r\n        <div id=\"uni-cd-inline\" style=\"display:none !important;\">\r\n          <span class=\"u-cd-val\" id=\"ucd-d\">00<\/span><span class=\"u-cd-lbl\" id=\"ucd-unit-d\">D<\/span>\r\n          <span class=\"u-cd-sep-inline\">:<\/span>\r\n          <span class=\"u-cd-val\" id=\"ucd-h\">00<\/span><span class=\"u-cd-lbl\" id=\"ucd-unit-h\">H<\/span>\r\n          <span class=\"u-cd-sep-inline\">:<\/span>\r\n          <span class=\"u-cd-val\" id=\"ucd-m\">00<\/span><span class=\"u-cd-lbl\" id=\"ucd-unit-m\">M<\/span>\r\n          <span class=\"u-cd-sep-inline\">:<\/span>\r\n          <span class=\"u-cd-val\" id=\"ucd-s\">00<\/span><span class=\"u-cd-lbl\" id=\"ucd-unit-s\">S<\/span>\r\n        <\/div>\r\n\r\n        <div id=\"uni-cd-meta-inline\" aria-hidden=\"true\"><\/div>\r\n\r\n        <div class=\"u-vsep\"><\/div>\r\n\r\n        <a id=\"uni-cta\" href=\"https:\/\/battlefy.com\/vgl-esports\" target=\"_blank\" translate=\"no\" rel=\"noopener\"><\/a>\r\n      <\/div>\r\n    <\/div>\r\n\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function(){\r\n  var lang={\r\n    pill:'Student Esports Community \u00b7 Greece',\r\n    cta:'Register \u2192',\r\n    live:'\u25cf LIVE NOW',\r\n    seasonDoneHTML:'<span style=\"color:#f0c040 !important;font-weight:700 !important;letter-spacing:2px !important;text-shadow:0 0 12px rgba(240,192,64,0.5) !important;\">New season coming soon<\/span>'\r\n  };\r\n\r\n  function lockNoTranslate(el,html){\r\n    if(!el)return;\r\n    el.classList.add('notranslate');\r\n    el.setAttribute('translate','no');\r\n    el.setAttribute('data-no-tp-translate','1');\r\n    el.innerHTML=html;\r\n  }\r\n\r\n  \/* Blanket lock: nothing inside the hero can ever be auto-translated by TranslatePress *\/\r\n  var heroRoot=document.getElementById('uni-hero');\r\n  if(heroRoot){\r\n    heroRoot.classList.add('notranslate');\r\n    heroRoot.setAttribute('translate','no');\r\n    heroRoot.setAttribute('data-no-tp-translate','1');\r\n  }\r\n\r\n  document.getElementById('uni-blue-tint').setAttribute('style','position:absolute !important;inset:0 !important;z-index:1 !important;background:rgba(0,60,140,0.35) !important;mix-blend-mode:multiply !important;pointer-events:none !important;');\r\n\r\n  lockNoTranslate(document.getElementById('uni-pill'), lang.pill);\r\n  lockNoTranslate(document.getElementById('uni-cta'), lang.cta);\r\n\r\n  function applyBgPosition(){\r\n    var isMobile=window.matchMedia('(max-width:700px)').matches;\r\n    var isTablet=window.matchMedia('(min-width:701px) and (max-width:1100px)').matches;\r\n\r\n    var pos;\r\n    if(isMobile){\r\n      pos='72% top';        \/\/ \u2190 \u039a\u0399\u039d\u0397\u03a4\u039f: \u03ac\u03bb\u03bb\u03b1\u03be\u03b5 \u03b5\u03b4\u03ce\r\n    } else if(isTablet){\r\n      pos='80% top';        \/\/ \u2190 TABLET: \u03ac\u03bb\u03bb\u03b1\u03be\u03b5 \u03b5\u03b4\u03ce\r\n    } else {\r\n      pos='center 28%';     \/\/ \u2190 DESKTOP: \u03ac\u03bb\u03bb\u03b1\u03be\u03b5 \u03b5\u03b4\u03ce\r\n    }\r\n\r\n    document.getElementById('uni-bg').setAttribute('style','position:absolute !important;inset:0 !important;background-image:url(\\'https:\/\/vglesports.com\/wp-content\/uploads\/2026\/08\/ROC-CHAMPION-1920-x-1200-px.webp\\') !important;background-size:cover !important;background-repeat:no-repeat !important;background-position:'+pos+' !important;filter:brightness(0.8) saturate(0.7) !important;z-index:0 !important;');\r\n  }\r\n  applyBgPosition();\r\n  window.addEventListener('resize',applyBgPosition);\r\n\r\n  \/* \u2500\u2500 Game tabs auto-rotate \u2500\u2500 *\/\r\n  var GAMES=[\r\n    {label:'EA FC',        bg:'rgba(0,168,80,0.22)',   color:'#00a850'},\r\n    {label:'eFootball',    bg:'rgba(0,200,255,0.14)',  color:'#00c8ff'},\r\n    {label:'Rocket League',bg:'rgba(220,50,50,0.18)',  color:'#e03333'}\r\n  ];\r\n  var tabs=document.querySelectorAll('.u-tab');\r\n  var activeTab=0;\r\n\r\n  function tabSizing(){\r\n    var isMobile=window.matchMedia('(max-width:700px)').matches;\r\n    return isMobile\r\n      ? {font:'10px',pad:'7px 9px'}\r\n      : {font:'13px',pad:'8px 18px'};\r\n  }\r\n\r\n  function applyTabs(){\r\n    var sz=tabSizing();\r\n    var inactive='background:rgba(255,255,255,0.08) !important;color:rgba(255,255,255,0.35) !important;border:1px solid rgba(255,255,255,0.1) !important;transition:all 0.4s !important;font-size:'+sz.font+' !important;padding:'+sz.pad+' !important;border-radius:6px !important;white-space:nowrap !important;';\r\n    tabs.forEach(function(el,i){\r\n      if(i===activeTab){\r\n        var g=GAMES[i];\r\n        el.setAttribute('style','background:#fff !important;color:'+g.color+' !important;border:1px solid #fff !important;font-weight:800 !important;font-size:'+sz.font+' !important;padding:'+sz.pad+' !important;border-radius:6px !important;transition:all 0.4s !important;box-shadow:0 2px 14px rgba(255,255,255,0.15) !important;white-space:nowrap !important;');\r\n      } else {\r\n        el.setAttribute('style',inactive);\r\n      }\r\n    });\r\n  }\r\n\r\n  applyTabs();\r\n  window.addEventListener('resize',applyTabs);\r\n  setInterval(function(){\r\n    activeTab=(activeTab+1)%GAMES.length;\r\n    applyTabs();\r\n  },2200);\r\n\r\n  \/* \u2500\u2500 CSV \u2500\u2500 *\/\r\n  var CSV_URL='https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vRwYEJQQvu8A5aCzPtb_vlK-bUTSpKHNq1pGQo_IrScbTshZayVbwL1S6AMODASFA\/pub?gid=1751640218&single=true&output=csv';\r\n  var MONTH_MAP={jan:1,feb:2,mar:3,apr:4,may:5,jun:6,jul:7,aug:8,sep:9,oct:10,nov:11,dec:12};\r\n  var DAYS_EN=['Sun','Mon','Tue','Wed','Thu','Fri','Sat'],DAYS_EL=['\u039a\u03c5\u03c1','\u0394\u03b5\u03c5','\u03a4\u03c1\u03b9','\u03a4\u03b5\u03c4','\u03a0\u03b5\u03bc','\u03a0\u03b1\u03c1','\u03a3\u03b1\u03b2'];\r\n  var MONS_EN=['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'],MONS_EL=['\u0399\u03b1\u03bd','\u03a6\u03b5\u03b2','\u039c\u03b1\u03c1','\u0391\u03c0\u03c1','\u039c\u03b1\u0390','\u0399\u03bf\u03c5\u03bd','\u0399\u03bf\u03c5\u03bb','\u0391\u03c5\u03b3','\u03a3\u03b5\u03c0','\u039f\u03ba\u03c4','\u039d\u03bf\u03b5','\u0394\u03b5\u03ba'];\r\n  var DAYS=DAYS_EN,MONS=MONS_EN;\r\n\r\n  function pad(n){return String(parseInt(n)).padStart(2,'0');}\r\n  function splitCSV(l){var r=[],c='',q=false;for(var i=0;i<l.length;i++){var ch=l[i];if(ch==='\"'){q=!q;}else if(ch===','&&!q){r.push(c);c='';}else c+=ch;}r.push(c);return r;}\r\n  function parseDate(s){if(!s)return null;s=s.trim();if(\/^\\d{4}-\\d{2}-\\d{2}$\/.test(s))return s;var m=s.match(\/^(\\d{1,2})\\\/(\\d{1,2})\\\/(\\d{4})$\/);if(m)return m[3]+'-'+pad(m[2])+'-'+pad(m[1]);var m2=s.match(\/([A-Za-z]+)\\s+(\\d{1,2})\/);if(m2){var mo=MONTH_MAP[m2[1].toLowerCase().substring(0,3)];if(mo)return new Date().getFullYear()+'-'+pad(mo)+'-'+pad(parseInt(m2[2]));}return null;}\r\n  function parseTime(s){if(!s)return null;s=s.trim();var m=s.match(\/(\\d{1,2}):(\\d{2})\/);if(m)return{h:parseInt(m[1]),min:parseInt(m[2])};var m2=s.match(\/^(\\d{1,2})$\/);if(m2)return{h:parseInt(m2[1]),min:0};return null;}\r\n  function parseCSV(text){\r\n    var lines=text.trim().replace(\/\\r\\n\/g,'\\n').replace(\/\\r\/g,'\\n').split('\\n');\r\n    if(lines.length<2)return[];\r\n    var headers=lines[0].split(',').map(function(h){return h.trim().replace(\/^\"|\"$\/g,'').toUpperCase();});\r\n    function findCol(){var names=Array.prototype.slice.call(arguments);for(var i=0;i<headers.length;i++){var hN=headers[i].replace(\/[\\s\\-_]\/g,'');for(var j=0;j<names.length;j++){if(hN===names[j].replace(\/[\\s\\-_]\/g,'').toUpperCase())return i;}}return -1;}\r\n    var iG=findCol('GAME'),iR=findCol('ROUND'),iD=findCol('DATE'),iS=findCol('START','START TIME','STARTTIME');\r\n    var ev=[];\r\n    for(var i=1;i<lines.length;i++){\r\n      if(!lines[i].trim())continue;\r\n      var cols=splitCSV(lines[i]);\r\n      function col(idx){return idx>=0&&idx<cols.length?cols[idx].trim().replace(\/^\"|\"$\/g,''):'';}\r\n      var game=col(iG),dateRaw=col(iD);\r\n      if(!dateRaw||!game)continue;\r\n      var iso=parseDate(dateRaw);if(!iso)continue;\r\n      ev.push({game:game,round:col(iR),date:iso,start:parseTime(col(iS))});\r\n    }\r\n    return ev;\r\n  }\r\n  function getNextEvent(events){\r\n    var now=new Date(),next=null,current=null;\r\n    for(var i=0;i<events.length;i++){\r\n      var ev=events[i],sH=ev.start?ev.start.h:19,sM=ev.start?ev.start.min:0;\r\n      var evStart=new Date(ev.date+'T'+pad(sH)+':'+pad(sM)+':00+03:00');\r\n      var evEnd=new Date(ev.date+'T23:00:00+03:00');\r\n      if(now>=evStart&&now<evEnd){current=ev;break;}\r\n      if(evEnd>now&&!next)next=ev;\r\n    }\r\n    return{current:current,next:next};\r\n  }\r\n\r\n  var allEvents=[],_lastMetaHTML=null,_lastD='',_lastH='',_lastM='',_seasonDoneShown=false;\r\n\r\n  function tick(){\r\n    var result=getNextEvent(allEvents);\r\n    var meta=document.getElementById('uni-cd-meta-inline');\r\n    var cdVals=document.querySelectorAll('.u-cd-val');\r\n\r\n    if(result.current){\r\n      ['ucd-d','ucd-h','ucd-m','ucd-s'].forEach(function(id){document.getElementById(id).textContent='00';});\r\n      cdVals.forEach(function(el){el.setAttribute('style','font-size:28px !important;font-weight:900 !important;color:#ff3c3c !important;letter-spacing:1px !important;line-height:1 !important;');});\r\n      var lHTML='<span style=\"color:#ff3c3c !important;\">'+lang.live+'<\/span>';\r\n      if(meta&&meta.innerHTML!==lHTML)meta.innerHTML=lHTML;\r\n      return;\r\n    }\r\n    cdVals.forEach(function(el){el.setAttribute('style','font-size:28px !important;font-weight:900 !important;color:#fff !important;letter-spacing:1px !important;line-height:1 !important;');});\r\n\r\n    var ev=result.next;\r\n    if(!ev){      if(meta&&meta.innerHTML!==lang.seasonDoneHTML)meta.innerHTML=lang.seasonDoneHTML;return;}\r\n\r\n    var sH=ev.start?ev.start.h:19,sM=ev.start?ev.start.min:0;\r\n    var evStart=new Date(ev.date+'T'+pad(sH)+':'+pad(sM)+':00+03:00');\r\n    var diff=evStart-new Date();\r\n    if(diff<=0){\r\n      document.getElementById('uni-cd-inline').setAttribute('style','display:none !important;');\r\n      return;\r\n    }\r\n\r\n    var d=pad(Math.floor(diff\/86400000)),h=pad(Math.floor((diff%86400000)\/3600000)),m=pad(Math.floor((diff%3600000)\/60000)),s=pad(Math.floor((diff%60000)\/1000));\r\n    if(d!==_lastD){document.getElementById('ucd-d').textContent=d;_lastD=d;}\r\n    if(h!==_lastH){document.getElementById('ucd-h').textContent=h;_lastH=h;}\r\n    if(m!==_lastM){document.getElementById('ucd-m').textContent=m;_lastM=m;}\r\n    document.getElementById('ucd-s').textContent=s;\r\n\r\n    if(meta){\r\n      var evDate=new Date(ev.date+'T'+pad(sH)+':'+pad(sM)+':00+03:00');\r\n      var label=DAYS[evDate.getDay()]+' '+evDate.getDate()+' '+MONS[evDate.getMonth()];\r\n      var nHTML='<span translate=\"no\" class=\"notranslate\" style=\"color:#00c8ff !important;\">'+ev.game+'<\/span>'+(ev.round?' \u00b7 '+ev.round:'')+' \u00b7 '+label;\r\n      if(nHTML!==_lastMetaHTML){meta.setAttribute('translate','no');meta.className='notranslate';meta.innerHTML=nHTML;_lastMetaHTML=nHTML;}\r\n    }\r\n  }\r\n\r\n  \/* Show something immediately (empty allEvents = \"New season coming soon\") instead of a blank gap while the CSV loads *\/\r\n  tick();\r\n\r\n  fetch(CSV_URL).then(function(r){return r.text();}).then(function(text){\r\n    allEvents=parseCSV(text);allEvents.sort(function(a,b){return a.date.localeCompare(b.date);});\r\n    tick();setInterval(tick,1000);\r\n    setInterval(function(){fetch(CSV_URL).then(function(r){return r.text();}).then(function(t){allEvents=parseCSV(t);allEvents.sort(function(a,b){return a.date.localeCompare(b.date);});}).catch(function(){});},5*60*1000);\r\n  }).catch(function(){tick();setInterval(tick,1000);});\r\n\r\n})();\r\n<\/script>\r\n<\/body>\r\n<\/html>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-363896d elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"363896d\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-1443cc0\" data-id=\"1443cc0\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-15db369 elementor-widget elementor-widget-html\" data-id=\"15db369\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<style>\r\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Bebas+Neue&family=Barlow+Condensed:wght@400;600;700;800&family=Barlow:wght@400;500&display=swap');\r\n\r\n.vgl3-wrap {\r\n  font-family: 'Barlow', sans-serif;\r\n  background: #121925;\r\n  padding: 40px 0;\r\n  text-align: center;\r\n  position: relative;\r\n  overflow: hidden;\r\n}\r\n.vgl3-inner { position: relative; z-index: 1; max-width: 1080px; margin: 0 auto; padding: 0 20px; }\r\n.vgl3-label {\r\n  font-family: 'Barlow Condensed', sans-serif;\r\n  font-size: 11px; font-weight: 700; letter-spacing: 3px;\r\n  color: #00c8ff; text-transform: uppercase; margin-bottom: 10px;\r\n}\r\n.vgl3-title {\r\n  font-family: 'Bebas Neue', 'Barlow Condensed', sans-serif;\r\n  font-size: 32px; font-weight: 400; color: #fff;\r\n  text-transform: uppercase; letter-spacing: 2px; margin: 0 0 8px;\r\n}\r\n.vgl3-sub { font-size: 14px; color: rgba(255,255,255,0.55); margin: 0 0 2.5rem; }\r\n.vgl3-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; margin-bottom: 2.5rem; }\r\n.vgl3-card { border-radius: 12px; padding: 28px 18px; text-align: center; background: #1a2332; border: 1px solid rgba(255,255,255,0.15); }\r\n.vgl3-num { font-family: 'Bebas Neue', 'Barlow Condensed', sans-serif; font-size: 52px; line-height: 1; margin-bottom: 8px; }\r\n.vgl3-step-label { font-family: 'Barlow Condensed', sans-serif; font-size: 10px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; margin-bottom: 8px; }\r\n.vgl3-step-title { font-family: 'Barlow Condensed', sans-serif; font-size: 18px; font-weight: 800; color: #fff; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 10px; line-height: 1.2; }\r\n.vgl3-step-desc { font-size: 12px; line-height: 1.7; color: rgba(255,255,255,0.6); }\r\n.vgl3-badge { display: inline-block; font-family: 'Barlow Condensed', sans-serif; font-size: 10px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; padding: 3px 10px; border-radius: 100px; margin-top: 10px; }\r\n.vgl3-cta { display: inline-block; font-family: 'Barlow Condensed', sans-serif; font-size: 14px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; padding: 14px 36px; background: #00c8ff; color: #121925; text-decoration: none; border-radius: 100px; transition: background 0.2s, color 0.2s; }\r\n.vgl3-cta:hover { background: #f0c040; }\r\n\r\n@media (max-width: 600px) {\r\n  .vgl3-grid { grid-template-columns: 1fr; gap: 10px; }\r\n  .vgl3-card { padding: 20px 16px; }\r\n  .vgl3-title { font-size: 24px; letter-spacing: 1px; }\r\n  .vgl3-num { font-size: 36px; }\r\n}\r\n<\/style>\r\n\r\n<div class=\"vgl3-wrap\">\r\n  <div class=\"vgl3-inner\">\r\n    <div class=\"vgl3-label notranslate\" translate=\"no\" data-no-tp-translate=\"1\" id=\"vgl3-label\"><\/div>\r\n    <div class=\"vgl3-title notranslate\" translate=\"no\" data-no-tp-translate=\"1\" id=\"vgl3-title\"><\/div>\r\n    <p class=\"vgl3-sub\" id=\"vgl3-sub\"><\/p>\r\n\r\n    <div class=\"vgl3-grid\">\r\n      <div class=\"vgl3-card\">\r\n        <div class=\"vgl3-num\" style=\"color:rgba(0,200,255,0.3);\">01<\/div>\r\n        <div class=\"vgl3-step-label notranslate\" style=\"color:#00c8ff;\" translate=\"no\" data-no-tp-translate=\"1\" id=\"vgl3-label1\"><\/div>\r\n        <div class=\"vgl3-step-title notranslate\" translate=\"no\" data-no-tp-translate=\"1\" id=\"vgl3-stitle1\"><\/div>\r\n        <div class=\"vgl3-step-desc\" id=\"vgl3-desc1\"><\/div>\r\n        <span class=\"vgl3-badge\" style=\"background:rgba(0,200,255,0.18); color:#00c8ff;\" id=\"vgl3-badge1\"><\/span>\r\n      <\/div>\r\n\r\n      <div class=\"vgl3-card\">\r\n        <div class=\"vgl3-num\" style=\"color:rgba(240,192,64,0.3);\">02<\/div>\r\n        <div class=\"vgl3-step-label notranslate\" style=\"color:#f0c040;\" translate=\"no\" data-no-tp-translate=\"1\" id=\"vgl3-label2\"><\/div>\r\n        <div class=\"vgl3-step-title notranslate\" translate=\"no\" data-no-tp-translate=\"1\" id=\"vgl3-stitle2\"><\/div>\r\n        <div class=\"vgl3-step-desc\" id=\"vgl3-desc2\"><\/div>\r\n      <\/div>\r\n\r\n      <div class=\"vgl3-card\">\r\n        <div class=\"vgl3-num\" style=\"color:rgba(255,91,127,0.3);\">03<\/div>\r\n        <div class=\"vgl3-step-label notranslate\" style=\"color:#ff5b7f;\" translate=\"no\" data-no-tp-translate=\"1\" id=\"vgl3-label3\"><\/div>\r\n        <div class=\"vgl3-step-title notranslate\" translate=\"no\" data-no-tp-translate=\"1\" id=\"vgl3-stitle3\"><\/div>\r\n        <div class=\"vgl3-step-desc\" id=\"vgl3-desc3\"><\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <a class=\"vgl3-cta notranslate\" translate=\"no\" data-no-tp-translate=\"1\" href=\"https:\/\/discord.gg\/n6PrKQesGn\" target=\"_blank\" rel=\"noopener\" id=\"vgl3-cta\"><\/a>\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function () {\r\n  \/\/ Titles \/ labels \/ CTA: fixed, always in this language (NOT translated by TranslatePress)\r\n  var titles = {\r\n    label:   'Why Unileague',\r\n    title:   'Play. Stay Informed. Win.',\r\n    label1:  'Play',\r\n    stitle1: 'Free Tournaments',\r\n    label2:  'Discover',\r\n    stitle2: 'Esports News',\r\n    label3:  'Win',\r\n    stitle3: 'Giveaways',\r\n    cta:     'Discord \u2192'\r\n  };\r\n\r\n  \/\/ Body copy: switches to Greek only on the \/el\/ Unileague page\r\n  var isGreekPage = window.location.href.indexOf('\/el\/allwyn-unileague-esports') !== -1;\r\n\r\n  var texts = {\r\n    en: {\r\n      sub:    'Three reasons thousands of students have already joined the allwyn Unileague community.',\r\n      desc1:  'Pick your favorite games and join the tournaments recommended by the community. Online, no entry fee, with big prizes up for grabs.',\r\n      badge1: 'No entry fee',\r\n      desc2:  'Keep up with everything happening in esports and be the first to know all the details about upcoming competitions.',\r\n      desc3:  'Get automatically entered into draws for exclusive football kits and other great prizes, just by taking part.'\r\n    },\r\n    el: {\r\n      sub:    '\u03a4\u03c1\u03b5\u03b9\u03c2 \u03bb\u03cc\u03b3\u03bf\u03b9 \u03c0\u03bf\u03c5 \u03c7\u03b9\u03bb\u03b9\u03ac\u03b4\u03b5\u03c2 \u03c6\u03bf\u03b9\u03c4\u03b7\u03c4\u03ad\u03c2 \u03ad\u03c7\u03bf\u03c5\u03bd \u03ae\u03b4\u03b7 \u03bc\u03c0\u03b5\u03b9 \u03c3\u03c4\u03b7\u03bd \u03ba\u03bf\u03b9\u03bd\u03cc\u03c4\u03b7\u03c4\u03b1 \u03c4\u03bf\u03c5 allwyn Unileague.',\r\n      desc1:  '\u0394\u03b9\u03ac\u03bb\u03b5\u03be\u03b5 \u03c4\u03b1 \u03b1\u03b3\u03b1\u03c0\u03b7\u03bc\u03ad\u03bd\u03b1 \u03c3\u03bf\u03c5 games \u03ba\u03b1\u03b9 \u03c3\u03c5\u03bc\u03bc\u03b5\u03c4\u03ad\u03c7\u03b5 \u03c3\u03c4\u03b1 \u03c4\u03bf\u03c5\u03c1\u03bd\u03bf\u03c5\u03ac \u03c0\u03bf\u03c5 \u03c0\u03c1\u03bf\u03c4\u03b5\u03af\u03bd\u03b5\u03b9 \u03b7 \u03ba\u03bf\u03b9\u03bd\u03cc\u03c4\u03b7\u03c4\u03b1. Online, \u03c7\u03c9\u03c1\u03af\u03c2 \u03ba\u03cc\u03c3\u03c4\u03bf\u03c2 \u03c3\u03c5\u03bc\u03bc\u03b5\u03c4\u03bf\u03c7\u03ae\u03c2, \u03bc\u03b5 \u03bc\u03b5\u03b3\u03ac\u03bb\u03b1 \u03ad\u03c0\u03b1\u03b8\u03bb\u03b1.',\r\n      badge1: '\u03a7\u03c9\u03c1\u03af\u03c2 \u03ba\u03cc\u03c3\u03c4\u03bf\u03c2',\r\n      desc2:  '\u039c\u03ac\u03b8\u03b5 \u03c4\u03b1 \u03bd\u03ad\u03b1 \u03b1\u03c0\u03cc \u03c4\u03bf\u03bd \u03c7\u03ce\u03c1\u03bf \u03c4\u03c9\u03bd esports \u03ba\u03b1\u03b9 \u03cc\u03bb\u03b5\u03c2 \u03c4\u03b9\u03c2 \u03c0\u03bb\u03b7\u03c1\u03bf\u03c6\u03bf\u03c1\u03af\u03b5\u03c2 \u03b3\u03b9\u03b1 \u03c4\u03b9\u03c2 \u03b5\u03c0\u03b5\u03c1\u03c7\u03cc\u03bc\u03b5\u03bd\u03b5\u03c2 \u03b4\u03b9\u03bf\u03c1\u03b3\u03b1\u03bd\u03ce\u03c3\u03b5\u03b9\u03c2.',\r\n      desc3:  '\u039a\u03ad\u03c1\u03b4\u03b9\u03c3\u03b5 giveaways: \u03b1\u03c0\u03bf\u03ba\u03bb\u03b5\u03b9\u03c3\u03c4\u03b9\u03ba\u03ad\u03c2 \u03c0\u03bf\u03b4\u03bf\u03c3\u03c6\u03b1\u03b9\u03c1\u03b9\u03ba\u03ad\u03c2 \u03b5\u03bc\u03c6\u03b1\u03bd\u03af\u03c3\u03b5\u03b9\u03c2 \u03ba\u03b1\u03b9 \u03c0\u03bb\u03bf\u03cd\u03c3\u03b9\u03b1 \u03b4\u03ce\u03c1\u03b1, \u03b1\u03c0\u03bb\u03ac \u03bc\u03b5 \u03c4\u03b7 \u03c3\u03c5\u03bc\u03bc\u03b5\u03c4\u03bf\u03c7\u03ae \u03c3\u03bf\u03c5.'\r\n    }\r\n  };\r\n\r\n  var t = isGreekPage ? texts.el : texts.en;\r\n\r\n  document.getElementById('vgl3-label').textContent   = titles.label;\r\n  document.getElementById('vgl3-title').textContent   = titles.title;\r\n  document.getElementById('vgl3-sub').textContent     = t.sub;\r\n\r\n  document.getElementById('vgl3-label1').textContent  = titles.label1;\r\n  document.getElementById('vgl3-stitle1').textContent = titles.stitle1;\r\n  document.getElementById('vgl3-desc1').textContent   = t.desc1;\r\n  document.getElementById('vgl3-badge1').textContent  = t.badge1;\r\n\r\n  document.getElementById('vgl3-label2').textContent  = titles.label2;\r\n  document.getElementById('vgl3-stitle2').textContent = titles.stitle2;\r\n  document.getElementById('vgl3-desc2').textContent   = t.desc2;\r\n\r\n  document.getElementById('vgl3-label3').textContent  = titles.label3;\r\n  document.getElementById('vgl3-stitle3').textContent = titles.stitle3;\r\n  document.getElementById('vgl3-desc3').textContent   = t.desc3;\r\n\r\n  document.getElementById('vgl3-cta').textContent     = titles.cta;\r\n})();\r\n<\/script>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-fe57ce9 elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"fe57ce9\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-24d087a\" data-id=\"24d087a\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-bf99834 elementor-widget elementor-widget-html\" data-id=\"bf99834\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<!DOCTYPE html>\r\n<html lang=\"el\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Barlow:wght@400;500;600;700&family=Barlow+Condensed:ital,wght@0,600;0,700;0,800;1,700&family=Bebas+Neue&display=swap\" rel=\"stylesheet\">\r\n<style>\r\n*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }\r\n\r\n#roc-b {\r\n  width:100%;\r\n  background:#121925;\r\n  font-family:'Barlow',sans-serif;\r\n  color:#e8eaf0;\r\n  padding:52px 0 64px;\r\n  position:relative;\r\n  overflow:hidden;\r\n}\r\n\r\n.rb-inner { max-width:1400px; margin:0 auto; padding:0 32px; position:relative; z-index:1; }\r\n\r\n.rb-top-row {\r\n  display:flex; align-items:flex-end; justify-content:space-between;\r\n  flex-wrap:wrap; gap:16px; margin-bottom:36px;\r\n}\r\n\r\n\/* \u2500\u2500 Title block (icon badge + title) \u2500\u2500 *\/\r\n.rb-title-row {\r\n  display:flex; align-items:center; gap:8px;\r\n  margin-bottom:10px;\r\n}\r\n.rb-title-icon {\r\n  width:58px; height:58px;\r\n  display:flex; align-items:center; justify-content:center;\r\n  flex-shrink:0;\r\n  margin-top:-6px;\r\n}\r\n.rb-title-icon img { width:100%; height:100%; object-fit:contain; }\r\n.rb-title {\r\n  font-family:'Bebas Neue',sans-serif;\r\n  font-size:38px; letter-spacing:3px; color:#fff; line-height:1;\r\n  margin-top:8px;\r\n}\r\n.rb-sub-pill {\r\n  display:inline-flex; align-items:center; gap:8px;\r\n  font-family:'Barlow Condensed',sans-serif; font-size:12px; font-weight:600; letter-spacing:1.5px;\r\n  color:rgba(255,255,255,0.5); text-transform:uppercase;\r\n  background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1);\r\n  padding:6px 14px 6px 10px; border-radius:20px;\r\n}\r\n.rb-sub-dot { width:6px; height:6px; border-radius:50%; background:#00c8ff; flex-shrink:0; animation:blink 1.6s ease-in-out infinite; }\r\n@keyframes blink { 0%,100%{opacity:1} 50%{opacity:0.2} }\r\n\r\n\/* \u2500\u2500 How to Play button (ghost\/btn-info style) \u2500\u2500 *\/\r\n#rb-htp-btn {\r\n  display:inline-flex; align-items:center; gap:8px;\r\n  font-family:'Bebas Neue',sans-serif;\r\n  font-size:15px; letter-spacing:2px; text-transform:uppercase;\r\n  color:rgba(255,255,255,0.65);\r\n  background:rgba(0,200,255,0.06);\r\n  border:1px solid rgba(0,200,255,0.22);\r\n  padding:12px 22px; border-radius:8px;\r\n  cursor:pointer;\r\n  transition:background 0.15s, border-color 0.15s, color 0.15s, transform 0.15s;\r\n  flex-shrink:0;\r\n}\r\n#rb-htp-btn:hover { background:rgba(0,200,255,0.14); border-color:rgba(0,200,255,0.45); color:#fff; transform:translateY(-2px); }\r\n#rb-htp-btn svg { flex-shrink:0; }\r\n\r\n\/* \u2500\u2500 Layout: three equal cards \u2500\u2500 *\/\r\n.rb-grid {\r\n  display:grid;\r\n  grid-template-columns:repeat(3, 1fr);\r\n  gap:16px;\r\n  align-items:stretch;\r\n}\r\n\r\n.rb-card {\r\n  background:#1a2332;\r\n  border:1px solid rgba(255,255,255,0.15);\r\n  border-top-width:3px;\r\n  border-radius:14px;\r\n  padding:26px 24px;\r\n  display:flex; flex-direction:column;\r\n  min-height:260px;\r\n  transition:transform 0.2s, border-color 0.2s;\r\n}\r\n.rb-card:hover { transform:translateY(-3px); }\r\n\r\n.rb-card-tourney {\r\n  display:flex; align-items:center; gap:6px;\r\n  font-family:'Barlow Condensed',sans-serif; font-size:10px; font-weight:700; letter-spacing:3px;\r\n  text-transform:uppercase; color:#f0c040; margin-bottom:14px;\r\n}\r\n.rb-card-tourney::before { content:'\u2605'; font-size:10px; }\r\n\r\n.rb-card-game { display:flex; align-items:center; gap:8px; font-family:'Barlow Condensed',sans-serif; font-size:12px; font-weight:700; letter-spacing:3px; text-transform:uppercase; margin-bottom:18px; }\r\n.rb-card-dot { width:8px; height:8px; border-radius:50%; flex-shrink:0; }\r\n\r\n.rb-card-round { font-family:'Bebas Neue',sans-serif; font-size:30px; letter-spacing:2px; line-height:1.1; color:#fff; margin-bottom:8px; }\r\n.rb-card-date { font-family:'Barlow Condensed',sans-serif; font-size:13px; font-weight:600; letter-spacing:1px; color:rgba(255,255,255,0.45); margin-bottom:4px; }\r\n.rb-card-times { font-size:11px; font-weight:500; color:rgba(255,255,255,0.25); margin-bottom:14px; }\r\n\r\n.rb-card-status {\r\n  display:inline-flex; align-items:center; gap:6px;\r\n  font-family:'Bebas Neue',sans-serif; font-size:11px; letter-spacing:1.5px; text-transform:uppercase;\r\n  padding:6px 14px; border-radius:20px; margin-bottom:14px;\r\n  width:auto; align-self:flex-start;\r\n}\r\n.rb-card-status-dot { width:5px; height:5px; border-radius:50%; flex-shrink:0; }\r\n\r\n.rb-card-spacer { flex:1; }\r\n\r\n.rb-card-reg {\r\n  display:flex; align-items:center; justify-content:center; gap:6px;\r\n  padding:12px 18px; border-radius:8px;\r\n  font-family:'Bebas Neue',sans-serif; font-size:14px; letter-spacing:2px; text-transform:uppercase;\r\n  text-decoration:none; color:#121925;\r\n  background:#00c8ff;\r\n  transition:background 0.2s, transform 0.2s;\r\n  margin-top:auto;\r\n}\r\n.rb-card-reg:hover { background:#f0c040; transform:translateY(-2px); }\r\n\r\n\/* \u2500\u2500 Mini countdown \u2500\u2500 *\/\r\n.rb-cd { display:flex; align-items:flex-start; gap:5px; margin-top:auto; margin-bottom:4px; }\r\n.rb-cd-block { display:flex; flex-direction:column; align-items:center; gap:4px; }\r\n.rb-cd-num {\r\n  font-family:'Bebas Neue',sans-serif; font-size:22px; line-height:1;\r\n  color:#fff; width:40px; height:36px;\r\n  display:flex; align-items:center; justify-content:center;\r\n  background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.12);\r\n  border-radius:8px; letter-spacing:1px;\r\n}\r\n.rb-cd-unit { font-family:'Barlow Condensed',sans-serif; font-size:8px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:rgba(255,255,255,0.22); }\r\n.rb-cd-sep { font-family:'Bebas Neue',sans-serif; font-size:18px; color:rgba(255,255,255,0.2); margin-top:6px; line-height:1; }\r\n\r\n.rb-card-finals {\r\n  display:flex; align-items:center; gap:8px;\r\n  padding-top:14px; margin-top:14px;\r\n  border-top:1px solid rgba(255,255,255,0.08);\r\n  font-family:'Barlow Condensed',sans-serif; font-size:11px; font-weight:600; letter-spacing:1px;\r\n}\r\n.rb-card-finals-lbl { color:rgba(240,192,64,0.7); font-weight:700; letter-spacing:2px; text-transform:uppercase; font-size:10px; }\r\n.rb-card-finals-val { color:rgba(255,255,255,0.4); margin-left:auto; }\r\n\r\n.rb-loading { padding:24px 0; font-family:'Barlow Condensed',sans-serif; font-size:12px; letter-spacing:4px; text-transform:uppercase; color:rgba(255,255,255,0.3); grid-column:1\/-1; }\r\n\r\n\/* \u2500\u2500 MODAL \u2500\u2500 *\/\r\n#roc-popup-overlay {\r\n  display:none; position:fixed; inset:0; z-index:9999;\r\n  background:rgba(0,0,0,0.88);\r\n  align-items:center; justify-content:center;\r\n}\r\n#roc-popup-overlay.open { display:flex; }\r\n#roc-modal {\r\n  background:#121925; border:1px solid rgba(255,255,255,0.15); border-radius:14px;\r\n  width:94%; max-width:860px; max-height:92vh; overflow-y:auto;\r\n  animation:rocModalIn 0.25s ease both;\r\n  box-shadow:0 24px 64px rgba(0,0,0,0.7);\r\n  margin-top:env(safe-area-inset-top, 0px);\r\n}\r\n@media (max-width:700px) {\r\n  #roc-popup-overlay { align-items:flex-start; padding-top:40px; }\r\n  #roc-modal { width:96%; max-height:calc(100vh - 60px); border-radius:12px; }\r\n}\r\n@keyframes rocModalIn { from{opacity:0;transform:translateY(14px)} to{opacity:1;transform:translateY(0)} }\r\n.m-header {\r\n  position:sticky; top:0; display:flex; align-items:center; justify-content:space-between;\r\n  padding:12px 18px; background:#121925; border-bottom:1px solid rgba(255,255,255,0.12); z-index:10;\r\n}\r\n.m-title { font-family:'Bebas Neue',sans-serif; font-size:18px; letter-spacing:4px; text-transform:uppercase; color:#00c8ff; text-shadow:0 0 16px rgba(0,200,255,0.3); }\r\n.m-actions { display:flex; align-items:center; gap:8px; }\r\n.m-lang { display:flex; gap:4px; }\r\n.m-lang button {\r\n  font-family:'Bebas Neue',sans-serif; font-size:13px; letter-spacing:2px;\r\n  background:transparent; border:1px solid rgba(0,200,255,0.18); color:rgba(0,200,255,0.45);\r\n  padding:6px 12px; border-radius:6px; cursor:pointer; transition:all 0.15s;\r\n}\r\n.m-lang button.active { border-color:#00c8ff; color:#00c8ff; background:rgba(0,200,255,0.08); }\r\n.m-reg {\r\n  font-family:'Bebas Neue',sans-serif; font-size:14px; letter-spacing:2px; text-transform:uppercase;\r\n  color:#121925; background:#00c8ff;\r\n  border:none; padding:8px 18px; border-radius:8px;\r\n  cursor:pointer; text-decoration:none; display:inline-block;\r\n  transition:all 0.15s;\r\n}\r\n.m-reg:hover { background:#f0c040; }\r\n.m-close {\r\n  background:rgba(0,200,255,0.06); border:1px solid rgba(0,200,255,0.18);\r\n  color:rgba(255,255,255,0.5); font-family:'Bebas Neue',sans-serif; font-size:14px; letter-spacing:1px;\r\n  padding:7px 14px; border-radius:8px; cursor:pointer; transition:all 0.15s;\r\n}\r\n.m-close:hover { background:rgba(0,200,255,0.14); color:#fff; border-color:rgba(0,200,255,0.4); }\r\n.m-body { padding:18px 22px 20px; color:#e8eaf0; }\r\n.lang-content { display:none; }\r\n.lang-content.active {\r\n  display:grid;\r\n  grid-template-columns:1.15fr 0.85fr;\r\n  gap:22px;\r\n  align-items:start;\r\n}\r\n.g-label {\r\n  font-family:'Bebas Neue',sans-serif; font-size:13px; letter-spacing:3px;\r\n  text-transform:uppercase; color:#00c8ff; margin-bottom:10px;\r\n  display:flex; align-items:center; gap:8px;\r\n}\r\n.g-label::before { content:''; display:inline-block; width:14px; height:2px; background:#00c8ff; box-shadow:0 0 6px #00c8ff; }\r\n.g-label::after { content:''; flex:1; height:1px; background:rgba(0,200,255,0.15); }\r\n.g-steps { margin-bottom:0; }\r\n.g-step {\r\n  background:#1a2332; border:1px solid rgba(255,255,255,0.12); border-radius:9px;\r\n  padding:10px 12px; margin-bottom:6px; display:flex; gap:10px; align-items:flex-start;\r\n  position:relative; overflow:hidden; transition:border-color 0.2s,transform 0.2s;\r\n}\r\n.g-step::before { content:''; position:absolute; left:0; top:0; bottom:0; width:3px; background:#00c8ff; opacity:0; transition:opacity 0.2s; }\r\n.g-step:hover { border-color:rgba(0,200,255,0.35); transform:translateX(3px); }\r\n.g-step:hover::before { opacity:1; }\r\n.g-step-n { font-family:'Bebas Neue',sans-serif; font-size:1.25rem; line-height:1; color:#00c8ff; min-width:18px; text-align:center; opacity:0.85; flex-shrink:0; }\r\n.g-step-body { flex:1; min-width:0; }\r\n.g-step-t { font-family:'Barlow Condensed',sans-serif; font-size:0.8rem; font-weight:700; letter-spacing:0.04em; color:#fff; margin-bottom:2px; text-transform:uppercase; }\r\n.g-step-d { font-size:0.72rem; color:#8892a4; line-height:1.42; }\r\n.g-step-d strong { color:#e8eaf0; }\r\n.g-step-d a { color:#00c8ff; font-weight:700; text-decoration:underline; }\r\n.g-warn { display:flex; align-items:center; gap:6px; margin-top:5px; padding:5px 8px; background:rgba(255,60,60,0.1); border:1px solid rgba(255,60,60,0.3); border-radius:5px; font-size:0.66rem; color:#ff8080; font-weight:600; }\r\n.g-tip  { display:flex; align-items:flex-start; gap:6px; margin-top:5px; padding:5px 8px; background:rgba(0,200,255,0.08); border:1px solid rgba(0,200,255,0.2); border-radius:5px; font-size:0.66rem; color:rgba(0,200,255,0.8); line-height:1.35; }\r\n.g-tip a { color:#00c8ff; font-weight:700; text-decoration:underline; }\r\n.g-notices { display:flex; flex-direction:column; gap:7px; }\r\n.g-notice { padding:9px 11px; border-radius:8px; font-size:0.73rem; line-height:1.42; display:flex; align-items:flex-start; gap:8px; }\r\n.g-notice.inf   { background:rgba(0,200,255,0.07); border:1px solid rgba(0,200,255,0.2); color:rgba(0,200,255,0.85); }\r\n.g-notice.promo { background:rgba(61,255,143,0.07); border:1px solid rgba(61,255,143,0.2); color:#9ae6b4; }\r\n.g-notice.warn  { background:rgba(255,60,60,0.07); border:1px solid rgba(255,60,60,0.2); color:#ff8080; }\r\n.g-notice strong { color:inherit; }\r\n.g-col-left, .g-col-right { min-width:0; }\r\n\r\n\/* \u2500\u2500 Mobile \u2500\u2500 *\/\r\n@media (max-width:900px) {\r\n  .rb-grid { grid-template-columns:1fr; }\r\n}\r\n@media (max-width:700px) {\r\n  .rb-inner { padding:0 16px; }\r\n  #roc-b { padding:36px 0 48px; overflow-x:hidden; }\r\n  .rb-title { font-size:28px; letter-spacing:2px; }\r\n  .rb-top-row { flex-direction:column; align-items:flex-start; gap:12px; }\r\n  #rb-htp-btn { width:100%; justify-content:center; }\r\n  .rb-card { padding:22px 20px; }\r\n\r\n  \/* Modal mobile *\/\r\n  #roc-popup-overlay { align-items:flex-start; padding-top:40px; overflow-x:hidden; }\r\n  #roc-modal { width:calc(100vw - 20px); max-width:none; max-height:calc(100vh - 50px); border-radius:12px; overflow-x:hidden; }\r\n  .m-header { padding:10px 14px; flex-wrap:nowrap; gap:6px; }\r\n  .m-title { font-size:15px; letter-spacing:3px; flex-shrink:1; min-width:0; }\r\n  .m-actions { flex-shrink:0; gap:5px; }\r\n  .m-lang button { padding:5px 8px; font-size:11px; }\r\n  .m-reg { padding:7px 10px; font-size:12px; letter-spacing:1px; white-space:nowrap; }\r\n  .m-close { padding:7px 10px; font-size:12px; }\r\n  .m-body { padding:14px 14px 16px; overflow-x:hidden; }\r\n  .lang-content.active { grid-template-columns:1fr; gap:14px; }\r\n  .g-step { padding:9px 11px; }\r\n  .g-notice { padding:8px 10px; }\r\n}\r\n<\/style>\r\n<\/head>\r\n<body data-rsssl=1 style=\"margin:0;\">\r\n\r\n<div id=\"roc-b\">\r\n  <div class=\"rb-inner\">\r\n\r\n    <div class=\"rb-top-row\">\r\n      <div class=\"rb-top-left\">\r\n        <div class=\"rb-title-row\">\r\n          <div class=\"rb-title-icon\">\r\n            <img decoding=\"async\" src=\"https:\/\/vglesports.com\/wp-content\/uploads\/2026\/08\/RoC-Logomain1-1.png\" alt=\"Rise of Champions\" loading=\"lazy\">\r\n          <\/div>\r\n          <div class=\"rb-title notranslate\" translate=\"no\" data-no-tp-translate=\"1\" id=\"rb-title\"><\/div>\r\n        <\/div>\r\n        <div class=\"rb-sub-pill\"><span class=\"rb-sub-dot\"><\/span><span id=\"rb-sub\">Loading\u2026<\/span><\/div>\r\n      <\/div>\r\n      <button id=\"rb-htp-btn\" onclick=\"document.getElementById('roc-popup-overlay').classList.add('open')\">\r\n        <svg width=\"15\" height=\"15\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><path d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\"\/><line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"\/><\/svg>\r\n        How to Play\r\n      <\/button>\r\n    <\/div>\r\n\r\n    <div id=\"rb-grid\" class=\"rb-grid\"><div class=\"rb-loading\">Loading\u2026<\/div><\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<!-- HOW TO PLAY MODAL \u2014 compact two-column layout, no scroll needed -->\r\n<div id=\"roc-popup-overlay\" onclick=\"if(event.target===this)this.classList.remove('open')\">\r\n  <div id=\"roc-modal\">\r\n    <div class=\"m-header\">\r\n      <div class=\"m-title\">Participation Guide<\/div>\r\n      <div class=\"m-actions\">\r\n        <div class=\"m-lang\">\r\n          <button id=\"roc-lang-el\" onclick=\"rocSetLang('el')\">\u0395\u039b<\/button>\r\n          <button id=\"roc-lang-en\" class=\"active\" onclick=\"rocSetLang('en')\">EN<\/button>\r\n        <\/div>\r\n        <a href=\"https:\/\/battlefy.com\/vgl-esports\" target=\"_blank\" class=\"m-reg\" id=\"roc-modal-reg\" rel=\"noopener\">REGISTER \u2197<\/a>\r\n        <button class=\"m-close\" onclick=\"document.getElementById('roc-popup-overlay').classList.remove('open')\">\u2715<\/button>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"m-body\">\r\n      <!-- GREEK -->\r\n      <div class=\"lang-content\" id=\"roc-content-el\">\r\n        <div class=\"g-col-left\">\r\n        <div class=\"g-label\">\u0392\u03ae\u03bc\u03b1\u03c4\u03b1 \u03a3\u03c5\u03bc\u03bc\u03b5\u03c4\u03bf\u03c7\u03ae\u03c2<\/div>\r\n        <div class=\"g-steps\">\r\n          <div class=\"g-step\"><div class=\"g-step-n\">1<\/div><div class=\"g-step-body\"><div class=\"g-step-t\">Register on Battlefy<\/div><div class=\"g-step-d\">\u0394\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03ae\u03c3\u03c4\u03b5 \u03bb\u03bf\u03b3\u03b1\u03c1\u03b9\u03b1\u03c3\u03bc\u03cc \u03c3\u03c4\u03bf <a href=\"https:\/\/battlefy.com\/vgl-esports\" target=\"_blank\" rel=\"noopener\">Battlefy<\/a> \u03ba\u03b1\u03b9 \u03b5\u03b3\u03b3\u03c1\u03b1\u03c6\u03b5\u03af\u03c4\u03b5 \u03c3\u03c4\u03bf \u03c4\u03bf\u03c5\u03c1\u03bd\u03bf\u03c5\u03ac \u03c4\u03bf\u03c5 Rise of Champions. \u0397 \u03b5\u03b3\u03b3\u03c1\u03b1\u03c6\u03ae \u03b5\u03af\u03bd\u03b1\u03b9 \u03b1\u03bd\u03bf\u03b9\u03c7\u03c4\u03ae \u03bc\u03ad\u03c7\u03c1\u03b9 \u03c4\u03b7\u03bd \u03ce\u03c1\u03b1 \u03ad\u03bd\u03b1\u03c1\u03be\u03b7\u03c2.<\/div><\/div><\/div>\r\n          <div class=\"g-step\"><div class=\"g-step-n\">2<\/div><div class=\"g-step-body\"><div class=\"g-step-t\">Check-in<\/div><div class=\"g-step-d\"><strong>30 \u03bb\u03b5\u03c0\u03c4\u03ac \u03c0\u03c1\u03b9\u03bd \u03c4\u03b7\u03bd \u03ad\u03bd\u03b1\u03c1\u03be\u03b7<\/strong>, \u03bc\u03c0\u03b5\u03af\u03c4\u03b5 \u03c3\u03c4\u03bf Battlefy \u03ba\u03b1\u03b9 \u03c0\u03b1\u03c4\u03ae\u03c3\u03c4\u03b5 <strong>Check-in<\/strong>. \u03a4\u03bf Check-in \u03ba\u03bb\u03b5\u03b9\u03b4\u03ce\u03bd\u03b5\u03b9 \u03bc\u03b5 \u03c4\u03b7\u03bd \u03ad\u03bd\u03b1\u03c1\u03be\u03b7 \u03c4\u03bf\u03c5 \u03c4\u03bf\u03c5\u03c1\u03bd\u03bf\u03c5\u03ac.<\/div><div class=\"g-tip\">\u2139\ufe0f \u0391\u03bd \u03b4\u03b5\u03bd \u03c3\u03b1\u03c2 \u03b5\u03bc\u03c6\u03b1\u03bd\u03af\u03b6\u03b5\u03c4\u03b1\u03b9 \u03b7 \u03b5\u03c0\u03b9\u03bb\u03bf\u03b3\u03ae Check-in, \u03b5\u03bd\u03b7\u03bc\u03b5\u03c1\u03ce\u03c3\u03c4\u03b5 \u03bc\u03b1\u03c2 \u03ac\u03bc\u03b5\u03c3\u03b1 \u03c3\u03c4\u03bf <a href=\"https:\/\/discord.gg\/sUz2QbGAZT\" target=\"_blank\" rel=\"noopener\">Discord Support<\/a>.<\/div><\/div><\/div>\r\n          <div class=\"g-step\"><div class=\"g-step-n\">3<\/div><div class=\"g-step-body\"><div class=\"g-step-t\">I am Ready<\/div><div class=\"g-step-d\">\u039c\u03b5 \u03c4\u03b7\u03bd \u03ad\u03bd\u03b1\u03c1\u03be\u03b7, \u03c4\u03bf \u03c3\u03cd\u03c3\u03c4\u03b7\u03bc\u03b1 \u03c3\u03b1\u03c2 \u03b2\u03c1\u03af\u03c3\u03ba\u03b5\u03b9 \u03b1\u03bd\u03c4\u03af\u03c0\u03b1\u03bb\u03bf \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03b1. \u0393\u03b9\u03b1 \u03ba\u03ac\u03b8\u03b5 \u03b1\u03b3\u03ce\u03bd\u03b1, \u03c0\u03b1\u03c4\u03ae\u03c3\u03c4\u03b5 <strong>\u00abI am Ready\u00bb<\/strong> \u03b5\u03bd\u03c4\u03cc\u03c2 <strong>5 \u03bb\u03b5\u03c0\u03c4\u03ce\u03bd<\/strong>.<\/div><div class=\"g-warn\">\u26a0\ufe0f \u0391\u03bd \u03b4\u03b5\u03bd \u03c0\u03b1\u03c4\u03ae\u03c3\u03b5\u03c4\u03b5 \u03b5\u03bd\u03c4\u03cc\u03c2 5 \u03bb\u03b5\u03c0\u03c4\u03ce\u03bd, \u03c7\u03ac\u03bd\u03b5\u03c4\u03b5 \u03c4\u03bf\u03bd \u03b1\u03b3\u03ce\u03bd\u03b1<\/div><\/div><\/div>\r\n          <div class=\"g-step\"><div class=\"g-step-n\">4<\/div><div class=\"g-step-body\"><div class=\"g-step-t\">Chat &amp; Play<\/div><div class=\"g-step-d\">\u0395\u03c0\u03b9\u03ba\u03bf\u03b9\u03bd\u03c9\u03bd\u03ae\u03c3\u03c4\u03b5 \u03bc\u03b5 \u03c4\u03bf\u03bd \u03b1\u03bd\u03c4\u03af\u03c0\u03b1\u03bb\u03cc \u03c3\u03b1\u03c2 \u03c3\u03c4\u03bf <strong>match chat<\/strong> \u03c4\u03bf\u03c5 Battlefy \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03ba\u03b1\u03bd\u03bf\u03bd\u03af\u03c3\u03b5\u03c4\u03b5 Invite \u03ae Lobby. \u03a0\u03b1\u03af\u03be\u03c4\u03b5 \u03c4\u03bf\u03bd \u03b1\u03b3\u03ce\u03bd\u03b1 \u03c3\u03b1\u03c2 \u03ba\u03b1\u03b9 \u03bf\u03bb\u03bf\u03ba\u03bb\u03b7\u03c1\u03ce\u03c3\u03c4\u03b5 \u03c4\u03b7\u03bd \u03b1\u03bd\u03b1\u03bc\u03ad\u03c4\u03c1\u03b7\u03c3\u03b7.<\/div><\/div><\/div>\r\n          <div class=\"g-step\"><div class=\"g-step-n\">5<\/div><div class=\"g-step-body\"><div class=\"g-step-t\">Report Score<\/div><div class=\"g-step-d\">\u039c\u03b5\u03c4\u03ac \u03c4\u03bf\u03bd \u03b1\u03b3\u03ce\u03bd\u03b1 \u03c0\u03b1\u03c4\u03ae\u03c3\u03c4\u03b5 <strong>Report Score<\/strong>, \u03ba\u03b1\u03c4\u03b1\u03c7\u03c9\u03c1\u03ae\u03c3\u03c4\u03b5 \u03c4\u03bf \u03c3\u03ba\u03bf\u03c1 \u03ba\u03b1\u03b9 \u03b1\u03bd\u03b5\u03b2\u03ac\u03c3\u03c4\u03b5 <strong>\u03c6\u03c9\u03c4\u03bf\u03b3\u03c1\u03b1\u03c6\u03af\u03b1 \u03b1\u03c0\u03bf\u03b4\u03b5\u03b9\u03ba\u03c4\u03b9\u03ba\u03bf\u03cd<\/strong>. \u0393\u03b9\u03b1 \u03c0\u03c1\u03cc\u03b2\u03bb\u03b7\u03bc\u03b1 \u03ae \u03ad\u03bd\u03c3\u03c4\u03b1\u03c3\u03b7 \u03c0\u03b1\u03c4\u03ae\u03c3\u03c4\u03b5 <strong>Report Issue<\/strong>.<\/div><div class=\"g-tip\">\u2139\ufe0f \u03a4\u03bf Discord support chat \u03c0\u03b1\u03c1\u03b1\u03bc\u03ad\u03bd\u03b5\u03b9 \u03ba\u03bb\u03b5\u03b9\u03c3\u03c4\u03cc \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7 \u03b4\u03b9\u03ac\u03c1\u03ba\u03b5\u03b9\u03b1 \u03c4\u03bf\u03c5 \u03c4\u03bf\u03c5\u03c1\u03bd\u03bf\u03c5\u03ac.<\/div><\/div><\/div>\r\n        <\/div>\r\n        <\/div>\r\n        <div class=\"g-col-right\">\r\n        <div class=\"g-label\">\u03a3\u03b7\u03bc\u03b1\u03bd\u03c4\u03b9\u03ba\u03ac<\/div>\r\n        <div class=\"g-notices\">\r\n          <div class=\"g-notice promo\"><span>\ud83c\udf81<\/span><span>\u038c\u03bb\u03bf\u03b9 \u03bf\u03b9 \u03c3\u03c5\u03bc\u03bc\u03b5\u03c4\u03ad\u03c7\u03bf\u03bd\u03c4\u03b5\u03c2 \u03bc\u03c0\u03b1\u03af\u03bd\u03bf\u03c5\u03bd \u03b1\u03c5\u03c4\u03cc\u03bc\u03b1\u03c4\u03b1 \u03c3\u03b5 \u03ba\u03bb\u03ae\u03c1\u03c9\u03c3\u03b7 \u03b3\u03b9\u03b1 <strong>\u03b1\u03c0\u03bf\u03ba\u03bb\u03b5\u03b9\u03c3\u03c4\u03b9\u03ba\u03ad\u03c2 \u03c0\u03bf\u03b4\u03bf\u03c3\u03c6\u03b1\u03b9\u03c1\u03b9\u03ba\u03ad\u03c2 \u03b5\u03bc\u03c6\u03b1\u03bd\u03af\u03c3\u03b5\u03b9\u03c2<\/strong>!<\/span><\/div>\r\n          <div class=\"g-notice inf\"><span>\ud83c\udfc6<\/span><span>\u0397 <strong>1\u03b7 \u03b8\u03ad\u03c3\u03b7<\/strong> \u03ba\u03ac\u03b8\u03b5 \u03c4\u03bf\u03c5\u03c1\u03bd\u03bf\u03c5\u03ac \u03bf\u03b4\u03b7\u03b3\u03b5\u03af \u03b1\u03c0\u03b5\u03c5\u03b8\u03b5\u03af\u03b1\u03c2 \u03c3\u03c4\u03bf Final Stage. \u039f\u03b9 \u03c5\u03c0\u03cc\u03bb\u03bf\u03b9\u03c0\u03bf\u03b9 \u03c3\u03c5\u03bd\u03b5\u03c7\u03af\u03b6\u03bf\u03c5\u03bd \u03bc\u03b5 \u03c0\u03cc\u03bd\u03c4\u03bf\u03c5\u03c2 \u03ba\u03b1\u03c4\u03ac\u03c4\u03b1\u03be\u03b7\u03c2.<\/span><\/div>\r\n          <div class=\"g-notice warn\"><span>\u26a0\ufe0f<\/span><span>\u03a4\u03bf <strong>Check-in \u03b5\u03af\u03bd\u03b1\u03b9 \u03c5\u03c0\u03bf\u03c7\u03c1\u03b5\u03c9\u03c4\u03b9\u03ba\u03cc<\/strong>. \u03a7\u03c9\u03c1\u03af\u03c2 Check-in \u03b4\u03b5\u03bd \u03c3\u03c5\u03bc\u03bc\u03b5\u03c4\u03ad\u03c7\u03b5\u03c4\u03b5 \u03c3\u03c4\u03bf \u03c4\u03bf\u03c5\u03c1\u03bd\u03bf\u03c5\u03ac \u03b1\u03ba\u03cc\u03bc\u03b1 \u03ba\u03b1\u03b9 \u03b1\u03bd \u03ad\u03c7\u03b5\u03c4\u03b5 \u03b5\u03b3\u03b3\u03c1\u03b1\u03c6\u03b5\u03af.<\/span><\/div>\r\n        <\/div>\r\n        <\/div>\r\n      <\/div>\r\n      <!-- ENGLISH -->\r\n      <div class=\"lang-content active\" id=\"roc-content-en\">\r\n        <div class=\"g-col-left\">\r\n        <div class=\"g-label\">Participation Steps<\/div>\r\n        <div class=\"g-steps\">\r\n          <div class=\"g-step\"><div class=\"g-step-n\">1<\/div><div class=\"g-step-body\"><div class=\"g-step-t\">Register on Battlefy<\/div><div class=\"g-step-d\">Create an account on <a href=\"https:\/\/battlefy.com\/vgl-esports\" target=\"_blank\" rel=\"noopener\">Battlefy<\/a> and sign up for the Rise of Champions tournament. Registration is open until the start time.<\/div><\/div><\/div>\r\n          <div class=\"g-step\"><div class=\"g-step-n\">2<\/div><div class=\"g-step-body\"><div class=\"g-step-t\">Check-in<\/div><div class=\"g-step-d\"><strong>30 minutes before the start<\/strong>, log into Battlefy and click <strong>Check-in<\/strong>. Check-in closes when the tournament begins.<\/div><div class=\"g-tip\">\u2139\ufe0f If the Check-in option doesn't appear, contact us immediately on <a href=\"https:\/\/discord.gg\/sUz2QbGAZT\" target=\"_blank\" rel=\"noopener\">Discord Support<\/a>.<\/div><\/div><\/div>\r\n          <div class=\"g-step\"><div class=\"g-step-n\">3<\/div><div class=\"g-step-body\"><div class=\"g-step-t\">I am Ready<\/div><div class=\"g-step-d\">At kickoff, the system automatically finds your opponent. For each match, click <strong>\u00abI am Ready\u00bb<\/strong> within <strong>5 minutes<\/strong>.<\/div><div class=\"g-warn\">\u26a0\ufe0f If you don't click within 5 minutes, you forfeit the match<\/div><\/div><\/div>\r\n          <div class=\"g-step\"><div class=\"g-step-n\">4<\/div><div class=\"g-step-body\"><div class=\"g-step-t\">Chat &amp; Play<\/div><div class=\"g-step-d\">Use the <strong>match chat<\/strong> on Battlefy to coordinate an Invite or Lobby with your opponent. Play your match to completion.<\/div><\/div><\/div>\r\n          <div class=\"g-step\"><div class=\"g-step-n\">5<\/div><div class=\"g-step-body\"><div class=\"g-step-t\">Report Score<\/div><div class=\"g-step-d\">After the match click <strong>Report Score<\/strong>, enter the result and upload a <strong>screenshot as proof<\/strong>. For disputes click <strong>Report Issue<\/strong>.<\/div><div class=\"g-tip\">\u2139\ufe0f The Discord support chat is closed during the tournament.<\/div><\/div><\/div>\r\n        <\/div>\r\n        <\/div>\r\n        <div class=\"g-col-right\">\r\n        <div class=\"g-label\">Important<\/div>\r\n        <div class=\"g-notices\">\r\n          <div class=\"g-notice promo\"><span>\ud83c\udf81<\/span><span>All participants are automatically entered into a draw for <strong>exclusive football kits<\/strong>!<\/span><\/div>\r\n          <div class=\"g-notice inf\"><span>\ud83c\udfc6<\/span><span><strong>1st place<\/strong> in each tournament earns a direct spot in the Final Stage. All others accumulate ranking points.<\/span><\/div>\r\n          <div class=\"g-notice warn\"><span>\u26a0\ufe0f<\/span><span><strong>Check-in is mandatory.<\/strong> Without Check-in you will not participate even if you have registered.<\/span><\/div>\r\n        <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function () {\r\n  var titleEl = document.getElementById('rb-title');\r\n  if (titleEl) {\r\n    titleEl.textContent = 'Tournaments Schedule';\r\n    titleEl.classList.add('notranslate');\r\n    titleEl.setAttribute('translate', 'no');\r\n    titleEl.setAttribute('data-no-tp-translate', '1');\r\n  }\r\n\r\n  var CSV = 'https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vRwYEJQQvu8A5aCzPtb_vlK-bUTSpKHNq1pGQo_IrScbTshZayVbwL1S6AMODASFA\/pub?gid=1751640218&single=true&output=csv';\r\n  var GAME_KEYS   = {'EAFC26':'eafc','EAFC27':'eafc','eFootball':'ef','Rocket League':'rl'};\r\n  var GAME_COLORS = {eafc:'#3ddc84', rl:'#ff4d4d', ef:'#2e8fff'};\r\n  var GAME_LABELS = {eafc:'EA FC 26', rl:'Rocket League', ef:'eFOOTBALL'};\r\n  var MONTHS = ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];\r\n  var _data = {};\r\n  var GAMES = ['eafc','rl','ef'];\r\n  var _cdInterval = null;\r\n\r\n  function parseCSV(txt) {\r\n    return txt.trim().split('\\n').map(function(line) {\r\n      var cols=[],cur='',q=false;\r\n      for(var j=0;j<line.length;j++){var c=line[j];if(c==='\"')q=!q;else if(c===','&&!q){cols.push(cur.trim());cur='';}else cur+=c;}\r\n      cols.push(cur.trim()); return cols;\r\n    });\r\n  }\r\n  function parseDt(s) {\r\n    if(!s)return null;\r\n    var m=s.trim().match(\/^(\\d{1,2})\\\/(\\d{1,2})\\\/(\\d{2,4})$\/);\r\n    if(m){var y=+m[3];if(y<100)y+=2000;return new Date(y,+m[2]-1,+m[1]);}\r\n    var d=new Date(s);if(!isNaN(d))return d;\r\n    d=new Date(s+', 2026');return isNaN(d)?null:d;\r\n  }\r\n  function fmtDate(s) {\r\n    if(!s||s.toUpperCase()==='TBA')return 'TBA';\r\n    return s.split(\/\u2192|->\/).map(function(p){var d=parseDt(p.trim());return d?d.getDate()+' '+MONTHS[d.getMonth()]:p.trim();}).join(' \u2192 ');\r\n  }\r\n  function isDone(s){var v=(s||'').toLowerCase().trim();return v==='completed'||v==='done';}\r\n  function isOpen(s){var v=(s||'').toLowerCase().trim();return['open regist','open reg','register','open'].some(function(p){return v.indexOf(p)>=0;});}\r\n  function isSoon(s){return(s||'').toLowerCase().trim()==='soon';}\r\n  function isFinal(r){return(r||'').toUpperCase().indexOf('FINAL')>=0;}\r\n\r\n  function getNextEv(game){var evs=_data[game]||[];return evs.find(function(e){return !isDone(e.status)&&!isFinal(e.round);})||null;}\r\n  function getFinalsEv(game){var evs=_data[game]||[];return evs.find(function(e){return isFinal(e.round)&&!isDone(e.status);})||null;}\r\n\r\n  function statusBadgeHTML(open, soon, dotColor, statusTxt) {\r\n    var bg, border;\r\n    if(open){bg='rgba(61,255,143,0.1)';border='rgba(61,255,143,0.28)';}\r\n    else if(soon){bg='rgba(250,204,21,0.1)';border='rgba(250,204,21,0.28)';}\r\n    else{bg='rgba(255,255,255,0.05)';border='rgba(255,255,255,0.1)';}\r\n    return '<div class=\"rb-card-status\" style=\"background:'+bg+';border:1px solid '+border+';color:'+dotColor+';\">'\r\n      +'<div class=\"rb-card-status-dot'+(open?' blink':'')+'\" style=\"background:'+dotColor+'\"><\/div>'\r\n      +statusTxt+'<\/div>';\r\n  }\r\n\r\n  function renderCard(game) {\r\n    var color=GAME_COLORS[game], label=GAME_LABELS[game];\r\n    var ev=getNextEv(game), fin=getFinalsEv(game);\r\n    var open=ev&&isOpen(ev.status), soon=ev&&isSoon(ev.status);\r\n    var dotColor=open?'#3dff8f':soon?'#facc15':'rgba(255,255,255,0.35)';\r\n    var statusTxt=open?'OPEN':soon?'SOON':ev?'UPCOMING':'\u2014';\r\n    var times=ev?[ev.checkin?'Check-in '+ev.checkin:'',ev.start?'Starts '+ev.start:''].filter(Boolean).join(' \u00b7 '):'';\r\n    var roundName=ev?(ev.round||'').toUpperCase():((_data[game]||[]).every(function(e){return isDone(e.status);})?'SEASON COMPLETE':'TBA');\r\n    var tourneyName=(ev&&ev.tournament)||'Rise of Champions';\r\n    var cdId='rb-cd-'+game;\r\n    var showCd = ev && !open && !isSoon(ev.status) && ev.date && ev.date.toUpperCase()!=='TBA';\r\n\r\n    var html =\r\n      '<div class=\"rb-card-tourney\">'+tourneyName+'<\/div>'\r\n      +'<div class=\"rb-card-game\" style=\"color:'+color+';\">'\r\n      +'<span class=\"rb-card-dot\" style=\"background:'+color+';\"><\/span>'+label\r\n      +'<\/div>'\r\n      +'<div class=\"rb-card-round\">'+roundName+'<\/div>'\r\n      +(ev?'<div class=\"rb-card-date\">'+fmtDate(ev.date)+'<\/div>':'')\r\n      +(times?'<div class=\"rb-card-times\">'+times+'<\/div>':'<div class=\"rb-card-times\">&nbsp;<\/div>')\r\n      +(ev?statusBadgeHTML(open,soon,dotColor,statusTxt):'')\r\n      +(showCd?'<div class=\"rb-cd\" id=\"'+cdId+'\">'\r\n        +'<div class=\"rb-cd-block\"><div class=\"rb-cd-num\" id=\"'+cdId+'-d\">00<\/div><div class=\"rb-cd-unit\">Days<\/div><\/div>'\r\n        +'<div class=\"rb-cd-sep\">:<\/div>'\r\n        +'<div class=\"rb-cd-block\"><div class=\"rb-cd-num\" id=\"'+cdId+'-h\">00<\/div><div class=\"rb-cd-unit\">Hrs<\/div><\/div>'\r\n        +'<div class=\"rb-cd-sep\">:<\/div>'\r\n        +'<div class=\"rb-cd-block\"><div class=\"rb-cd-num\" id=\"'+cdId+'-m\">00<\/div><div class=\"rb-cd-unit\">Min<\/div><\/div>'\r\n        +'<div class=\"rb-cd-sep\">:<\/div>'\r\n        +'<div class=\"rb-cd-block\"><div class=\"rb-cd-num\" id=\"'+cdId+'-s\">00<\/div><div class=\"rb-cd-unit\">Sec<\/div><\/div>'\r\n        +'<\/div>':'<div class=\"rb-card-spacer\"><\/div>')\r\n      +(open&&ev&&ev.link?'<a class=\"rb-card-reg\" href=\"'+ev.link+'\" target=\"_blank\">Register \u2192<\/a>':'')\r\n      +(fin?'<div class=\"rb-card-finals\"><span class=\"rb-card-finals-lbl\">\u2605 Final Stage<\/span><span class=\"rb-card-finals-val\">'+fmtDate(fin.date)+'<\/span><\/div>':'');\r\n\r\n    return '<div class=\"rb-card\" style=\"border-top-color:'+color+';\">'+html+'<\/div>';\r\n  }\r\n\r\n  function renderGrid() {\r\n    var gridEl=document.getElementById('rb-grid');\r\n    gridEl.innerHTML = GAMES.map(renderCard).join('');\r\n  }\r\n\r\n  function updateSub(all){\r\n    var sub=document.getElementById('rb-sub');\r\n    var o=all.find(function(e){return isOpen(e.status);});\r\n    if(o)sub.textContent='\u0395\u03b3\u03b3\u03c1\u03b1\u03c6\u03ad\u03c2 \u03b1\u03bd\u03bf\u03b9\u03c7\u03c4\u03ad\u03c2 \u00b7 '+(GAME_LABELS[o.gameKey]||'')+' \u00b7 '+(o.round||'').toUpperCase()+' \u00b7 '+fmtDate(o.date);\r\n    else{var s=all.find(function(e){return isSoon(e.status);});sub.textContent=s?'Coming Soon \u00b7 '+(GAME_LABELS[s.gameKey]||''):'Season 1 \u00b7 2026';}\r\n  }\r\n\r\n  async function load() {\r\n    try {\r\n      var rows=parseCSV(await(await fetch(CSV)).text());\r\n      var hr=0;\r\n      for(var r=0;r<Math.min(rows.length,5);r++){if(rows[r].some(function(c){return c.toUpperCase()==='GAME';})){hr=r;break;}}\r\n      var h=rows[hr].map(function(x){return x.toUpperCase().trim();});\r\n      function ci(n){var i=h.indexOf(n);return i>=0?i:-1;}\r\n      var iG=ci('GAME'),iE=ci('EVENT'),iR=ci('ROUND'),iD=ci('DATE'),\r\n          iS=ci('STATUS'),iC=ci('CHECK IN'),iSt=ci('START'),iL=ci('TOURNAMENT LINK');\r\n      if(iG<0)iG=3;if(iE<0)iE=2;if(iR<0)iR=4;if(iD<0)iD=5;\r\n      if(iS<0)iS=6;if(iC<0)iC=9;if(iSt<0)iSt=10;if(iL<0)iL=11;\r\n      var grp={eafc:[],rl:[],ef:[]},all=[];\r\n      for(var row=hr+1;row<rows.length;row++){\r\n        var c=rows[row];if(!c||c.length<4)continue;\r\n        var gk=GAME_KEYS[(c[iG]||'').trim()];if(!gk)continue;\r\n        if((c[iE]||'').toLowerCase().indexOf('rise of champions')<0)continue;\r\n        var ev={gameKey:gk,tournament:(c[iE]||'').trim(),round:(c[iR]||'').trim(),date:(c[iD]||'').trim(),\r\n          status:(c[iS]||'').trim(),checkin:(c[iC]||'').trim(),\r\n          start:(c[iSt]||'').trim(),link:iL>=0?(c[iL]||'').trim():''};\r\n        grp[gk].push(ev);all.push(ev);\r\n      }\r\n      _data=grp;\r\n      renderGrid(); updateSub(all);\r\n      setTimeout(startCountdown,300);\r\n    } catch(e) {\r\n      document.getElementById('rb-grid').innerHTML='<div class=\"rb-loading\" style=\"color:#ff6060\">\u26a0\ufe0f \u0391\u03b4\u03c5\u03bd\u03b1\u03bc\u03af\u03b1 \u03c6\u03cc\u03c1\u03c4\u03c9\u03c3\u03b7\u03c2.<\/div>';\r\n    }\r\n  }\r\n  load();\r\n\r\n  var MONTH_MAP={jan:1,feb:2,mar:3,apr:4,may:5,jun:6,jul:7,aug:8,sep:9,oct:10,nov:11,dec:12};\r\n  function parseISODate(s){\r\n    if(!s)return null; s=s.trim();\r\n    if(\/^\\d{4}-\\d{2}-\\d{2}$\/.test(s))return s;\r\n    var m=s.match(\/^(\\d{1,2})\\\/(\\d{1,2})\\\/(\\d{4})$\/);\r\n    if(m)return m[3]+'-'+('0'+m[2]).slice(-2)+'-'+('0'+m[1]).slice(-2);\r\n    var m2=s.match(\/([A-Za-z]+)\\s+(\\d{1,2})\/);\r\n    if(m2){var mo=MONTH_MAP[m2[1].toLowerCase().substring(0,3)];if(mo)return new Date().getFullYear()+'-'+('0'+mo).slice(-2)+'-'+('0'+parseInt(m2[2])).slice(-2);}\r\n    var m3=s.match(\/^(\\d{1,2})\\s+([A-Za-z]+)\/);\r\n    if(m3){var mo2=MONTH_MAP[m3[2].toLowerCase().substring(0,3)];if(mo2)return new Date().getFullYear()+'-'+('0'+mo2).slice(-2)+'-'+('0'+parseInt(m3[1])).slice(-2);}\r\n    return null;\r\n  }\r\n  function parseStartTime(s){\r\n    if(!s)return{h:19,min:0};\r\n    var m=s.match(\/(\\d{1,2}):(\\d{2})\/);\r\n    if(m)return{h:parseInt(m[1]),min:parseInt(m[2])};\r\n    var m2=s.match(\/^(\\d{1,2})$\/);\r\n    if(m2)return{h:parseInt(m2[1]),min:0};\r\n    return{h:19,min:0};\r\n  }\r\n\r\n  function startCountdown(){\r\n    if(_cdInterval)clearInterval(_cdInterval);\r\n    function pad(n){return String(Math.floor(n)).padStart(2,'0');}\r\n    function tick(){\r\n      GAMES.forEach(function(game){\r\n        var ev=getNextEv(game);\r\n        if(!ev||isOpen(ev.status))return;\r\n        var cdId='rb-cd-'+game;\r\n        if(!document.getElementById(cdId+'-d'))return;\r\n        var iso=parseISODate(ev.date);\r\n        if(!iso)return;\r\n        var t=parseStartTime(ev.start);\r\n        var target=new Date(iso+'T'+pad(t.h)+':'+pad(t.min)+':00+03:00');\r\n        var diff=target-new Date();\r\n        if(diff<=0){['d','h','m','s'].forEach(function(u){var el=document.getElementById(cdId+'-'+u);if(el)el.textContent='00';});return;}\r\n        document.getElementById(cdId+'-d').textContent=pad(diff\/86400000);\r\n        document.getElementById(cdId+'-h').textContent=pad((diff%86400000)\/3600000);\r\n        document.getElementById(cdId+'-m').textContent=pad((diff%3600000)\/60000);\r\n        document.getElementById(cdId+'-s').textContent=pad((diff%60000)\/1000);\r\n      });\r\n    }\r\n    tick();\r\n    _cdInterval=setInterval(tick,1000);\r\n  }\r\n\r\n  window.rocSetLang=function(lang){\r\n    document.querySelectorAll('#roc-modal .lang-content').forEach(function(el){el.classList.remove('active');});\r\n    document.getElementById('roc-content-'+lang).classList.add('active');\r\n    document.querySelectorAll('#roc-modal .m-lang button').forEach(function(b){b.classList.remove('active');});\r\n    document.getElementById('roc-lang-'+lang).classList.add('active');\r\n    document.getElementById('roc-modal-reg').textContent=lang==='el'?'\u0395\u0393\u0393\u03a1\u0391\u03a6\u0397 \u2197':'REGISTER \u2197';\r\n  };\r\n\r\n  \/\/ Force header logo\/title alignment (Elementor override)\r\n  (function applyTitleStyle(){\r\n    var row=document.querySelector('.rb-title-row');\r\n    var icon=document.querySelector('.rb-title-icon');\r\n    var title=document.querySelector('.rb-title');\r\n    if(!row||!icon||!title){setTimeout(applyTitleStyle,100);return;}\r\n    row.setAttribute('style','display:flex !important;flex-direction:row !important;align-items:center !important;gap:8px !important;margin-bottom:10px !important;');\r\n    icon.setAttribute('style','display:flex !important;align-items:center !important;justify-content:center !important;width:58px !important;height:58px !important;flex-shrink:0 !important;margin-top:-6px !important;');\r\n    title.style.setProperty('margin-top','8px','important');\r\n    var img=icon.querySelector('img');\r\n    if(img)img.setAttribute('style','width:100% !important;height:100% !important;object-fit:contain !important;display:block !important;');\r\n  })();\r\n\r\n  document.addEventListener('keydown',function(e){if(e.key==='Escape')document.getElementById('roc-popup-overlay').classList.remove('open');});\r\n\r\n  \/\/ Force How to Play button inline styles (Elementor override)\r\n  (function applyBtnStyle(){\r\n    var btn=document.getElementById('rb-htp-btn');\r\n    if(!btn){setTimeout(applyBtnStyle,100);return;}\r\n    var S='display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:8px !important;font-family:Bebas Neue,sans-serif !important;font-size:15px !important;letter-spacing:2px !important;text-transform:uppercase !important;padding:12px 22px !important;border-radius:8px !important;cursor:pointer !important;white-space:nowrap !important;line-height:1 !important;flex-shrink:0 !important;box-sizing:border-box !important;transition:all 0.2s !important;';\r\n    btn.setAttribute('style',S+'color:rgba(255,255,255,0.65) !important;background:rgba(0,200,255,0.06) !important;border:1px solid rgba(0,200,255,0.22) !important;');\r\n    btn.onmouseenter=function(){btn.setAttribute('style',S+'color:#ffffff !important;background:rgba(0,200,255,0.14) !important;border:1px solid rgba(0,200,255,0.45) !important;transform:translateY(-2px) !important;');};\r\n    btn.onmouseleave=function(){btn.setAttribute('style',S+'color:rgba(255,255,255,0.65) !important;background:rgba(0,200,255,0.06) !important;border:1px solid rgba(0,200,255,0.22) !important;');};\r\n  })();\r\n})();\r\n<\/script>\r\n<\/body>\r\n<\/html>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-8cf2e9f elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"8cf2e9f\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-6d050e2\" data-id=\"6d050e2\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-23ebd8f elementor-widget elementor-widget-html\" data-id=\"23ebd8f\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<!DOCTYPE html>\r\n<html lang=\"el\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Barlow:wght@400;600;700&family=Bebas+Neue&display=swap\" rel=\"stylesheet\">\r\n<style>\r\n#vgl-finals-widget {\r\n  --fn-bg-card: #121925;\r\n  --fn-border: rgba(255,255,255,0.06);\r\n  --fn-border-soft: rgba(255,255,255,0.04);\r\n  --fn-gold: #f0c040;\r\n  --fn-ea: #4ade80;\r\n  --fn-rl: #ff6b35;\r\n  --fn-ef: #00d4ff;\r\n  --fn-text: rgba(255,255,255,0.85);\r\n  --fn-muted: rgba(255,255,255,0.28);\r\n  font-family: 'Barlow', sans-serif;\r\n  color: var(--fn-text);\r\n  max-width: 1200px;\r\n  margin: 0 auto;\r\n  padding: 30px 24px 60px;\r\n}\r\n#vgl-finals-widget * { box-sizing: border-box; margin: 0; padding: 0; }\r\n\r\n#vgl-finals-widget .fn-header { text-align: center; margin-bottom: 32px; line-height: 0; }\r\n#vgl-finals-widget .fn-logo {\r\n  display: block !important;\r\n  max-width: 300px !important;\r\n  width: 100% !important;\r\n  height: auto !important;\r\n  margin: 0 auto !important;\r\n  margin-bottom: -55px !important;\r\n  padding: 0 !important;\r\n  float: none !important;\r\n  position: static !important;\r\n  vertical-align: top !important;\r\n}\r\n#vgl-finals-widget .fn-header h1 { line-height: 1.2; margin-top: 0 !important; position: relative; }\r\n#vgl-finals-widget .fn-header h1 {\r\n  font-family: 'Bebas Neue', sans-serif;\r\n  font-size: 2.2rem; font-weight: 400; letter-spacing: 3px;\r\n  text-transform: uppercase; color: var(--fn-text);\r\n}\r\n#vgl-finals-widget .fn-header h1 span { color: var(--fn-gold); }\r\n#vgl-finals-widget .fn-header p {\r\n  color: var(--fn-muted); font-size: 0.75rem; letter-spacing: 2px;\r\n  text-transform: uppercase; margin-top: 6px; font-weight: 600;\r\n}\r\n\r\n#vgl-finals-widget .fn-tabs {\r\n  display: flex; gap: 5px; margin-bottom: 24px;\r\n  justify-content: center; flex-wrap: nowrap;\r\n}\r\n#vgl-finals-widget .fn-tab {\r\n  font-family: 'Barlow', sans-serif; font-size: 11px; font-weight: 700;\r\n  letter-spacing: 1px; text-transform: uppercase;\r\n  color: rgba(255,255,255,0.45); background: rgba(255,255,255,0.04);\r\n  border: 0.5px solid rgba(255,255,255,0.10); padding: 8px 18px;\r\n  border-radius: 20px; cursor: pointer; transition: all 0.18s;\r\n  display: flex; align-items: center; gap: 6px;\r\n  white-space: nowrap; flex-shrink: 0;\r\n}\r\n#vgl-finals-widget .fn-tab:hover { color: rgba(255,255,255,0.75); background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.2); }\r\n#vgl-finals-widget .fn-tab.act-eafc { background: rgba(74,222,128,0.08); border-color: rgba(74,222,128,0.4); color: var(--fn-ea); }\r\n#vgl-finals-widget .fn-tab.act-rl   { background: rgba(255,107,53,0.08);  border-color: rgba(255,107,53,0.4);  color: var(--fn-rl); }\r\n#vgl-finals-widget .fn-tab.act-ef   { background: rgba(0,212,255,0.08);   border-color: rgba(0,212,255,0.4);   color: var(--fn-ef); }\r\n#vgl-finals-widget .fn-tab-dot { width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; }\r\n#vgl-finals-widget .fn-tab[data-g=\"eafc\"] .fn-tab-dot { background: var(--fn-ea); }\r\n#vgl-finals-widget .fn-tab[data-g=\"rl\"]   .fn-tab-dot { background: var(--fn-rl); }\r\n#vgl-finals-widget .fn-tab[data-g=\"ef\"]   .fn-tab-dot { background: var(--fn-ef); }\r\n\r\n#vgl-finals-widget .fn-panel { display: none; }\r\n#vgl-finals-widget .fn-panel.show { display: block; animation: fnFade .25s ease; }\r\n@keyframes fnFade { from { opacity:0; transform:translateY(6px); } to { opacity:1; transform:translateY(0); } }\r\n\r\n#vgl-finals-widget .fn-card {\r\n  background: var(--fn-bg-card);\r\n  border: 0.5px solid var(--fn-border);\r\n  border-radius: 4px; overflow: hidden;\r\n  background-image:\r\n    linear-gradient(rgba(96,165,250,0.025) 1px, transparent 1px),\r\n    linear-gradient(90deg, rgba(96,165,250,0.025) 1px, transparent 1px);\r\n  background-size: 40px 40px;\r\n  margin-bottom: 20px;\r\n}\r\n#vgl-finals-widget .fn-card-hdr {\r\n  padding: 14px 24px 12px; border-bottom: 0.5px solid var(--fn-border);\r\n  display: flex; align-items: center; gap: 12px;\r\n  background: rgba(0,0,0,0.15);\r\n}\r\n#vgl-finals-widget .fn-card-hdr h2 {\r\n  font-family: 'Bebas Neue', sans-serif; font-size: 1.2rem;\r\n  font-weight: 400; letter-spacing: 2px; text-transform: uppercase;\r\n  color: var(--fn-gold);\r\n}\r\n\r\n\/* \u2500\u2500 Podium (Champion \/ 2nd \/ 3rd) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n#vgl-finals-widget .fn-podium-grid {\r\n  display: grid; grid-template-columns: repeat(3, 1fr);\r\n  padding: 18px 20px;\r\n}\r\n#vgl-finals-widget .fn-podium-col {\r\n  text-align: center; padding: 6px 12px;\r\n  border-right: 0.5px solid var(--fn-border);\r\n}\r\n#vgl-finals-widget .fn-podium-col:last-child { border-right: none; }\r\n#vgl-finals-widget .fn-podium-label {\r\n  font-size: 0.62rem; font-weight: 700; text-transform: uppercase;\r\n  letter-spacing: 2px; color: var(--fn-muted); margin-bottom: 8px;\r\n}\r\n#vgl-finals-widget .fn-podium-col.p1 .fn-podium-label { color: var(--fn-gold); }\r\n#vgl-finals-widget .fn-podium-col.p2 .fn-podium-label { color: rgba(192,207,224,0.7); }\r\n#vgl-finals-widget .fn-podium-col.p3 .fn-podium-label { color: rgba(205,127,50,0.85); }\r\n#vgl-finals-widget .fn-podium-name {\r\n  font-family: 'Bebas Neue', sans-serif; letter-spacing: 1px;\r\n  font-size: 1.25rem; color: #fff;\r\n  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\r\n}\r\n#vgl-finals-widget .fn-podium-col.p1 .fn-podium-name { color: var(--fn-gold); font-size: 1.4rem; }\r\n#vgl-finals-widget .fn-podium-players {\r\n  font-family: 'Barlow', sans-serif;\r\n  font-size: 0.68rem; color: rgba(255,255,255,0.35); font-style: italic;\r\n  margin-top: 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\r\n}\r\n\r\n#vgl-finals-widget .fn-gs-layout { display: block; }\r\n#vgl-finals-widget .fn-gs-left,\r\n#vgl-finals-widget .fn-gs-right { display: block; }\r\n\r\n#vgl-finals-widget .fn-groups-wrap {\r\n  display: grid; grid-template-columns: repeat(auto-fit, minmax(260px,1fr));\r\n}\r\n#vgl-finals-widget .fn-group-block {\r\n  padding: 16px 24px;\r\n  border-right: 0.5px solid var(--fn-border);\r\n}\r\n#vgl-finals-widget .fn-group-block:last-child { border-right: none; }\r\n#vgl-finals-widget .fn-group-label {\r\n  font-family: 'Bebas Neue', sans-serif;\r\n  font-size: 0.95rem; font-weight: 400; letter-spacing: 3px;\r\n  text-transform: uppercase; color: var(--fn-gold);\r\n  padding-bottom: 8px; margin-bottom: 4px;\r\n  border-bottom: 0.5px solid rgba(240,192,64,0.2);\r\n}\r\n#vgl-finals-widget .fn-phase-label {\r\n  font-family: 'Bebas Neue', sans-serif;\r\n  font-size: 0.95rem; font-weight: 400; letter-spacing: 3px;\r\n  text-transform: uppercase; color: var(--fn-gold);\r\n  padding: 0 20px 8px; margin: 4px 0;\r\n  border-bottom: 0.5px solid rgba(240,192,64,0.2);\r\n}\r\n#vgl-finals-widget .fn-phase-block { padding-top: 16px; }\r\n#vgl-finals-widget .fn-phase-block:first-child { padding-top: 0; }\r\n#vgl-finals-widget .fn-phase-block .fn-matches-grid { padding: 0 20px 4px; }\r\n\r\n\/* Compact Knockout Stage: phases shown one at a time via tabs, instead\r\n   of stacking or columning every phase, so it never pushes the page\r\n   far down regardless of bracket size. *\/\r\n#vgl-finals-widget .fn-ko-wrap { padding: 16px 20px 18px; }\r\n#vgl-finals-widget .fn-ko-tabs {\r\n  display: flex; gap: 6px; margin-bottom: 14px; flex-wrap: wrap;\r\n}\r\n#vgl-finals-widget .fn-ko-tab {\r\n  font-family: 'Barlow', sans-serif; font-size: 10.5px; font-weight: 700;\r\n  letter-spacing: 1px; text-transform: uppercase;\r\n  color: rgba(255,255,255,0.4); background: rgba(255,255,255,0.03);\r\n  border: 0.5px solid rgba(255,255,255,0.10); padding: 7px 16px;\r\n  border-radius: 16px; cursor: pointer; transition: all 0.18s;\r\n}\r\n#vgl-finals-widget .fn-ko-tab:hover { color: rgba(255,255,255,0.7); background: rgba(255,255,255,0.07); border-color: rgba(255,255,255,0.2); }\r\n#vgl-finals-widget .fn-ko-tab.active {\r\n  background: rgba(240,192,64,0.1); border-color: rgba(240,192,64,0.45); color: var(--fn-gold);\r\n}\r\n\/* All tab panels are stacked in the same grid cell (row 1 \/ col 1).\r\n   CSS Grid sizes that row to the tallest panel automatically \u2014 even\r\n   though only one panel is visually shown at a time \u2014 so the card\r\n   never resizes when switching tabs (Group Stage's pager included). *\/\r\n#vgl-finals-widget .fn-ko-panels-grid { display: grid; }\r\n#vgl-finals-widget .fn-ko-panel {\r\n  grid-column: 1; grid-row: 1;\r\n  display: flex; flex-direction: column; justify-content: center;\r\n  visibility: hidden; opacity: 0; pointer-events: none;\r\n  transition: opacity .15s ease;\r\n}\r\n#vgl-finals-widget .fn-ko-panel.show {\r\n  visibility: visible; opacity: 1; pointer-events: auto;\r\n}\r\n#vgl-finals-widget .fn-ko-panel .fn-matches-grid { padding: 0; gap: 8px; }\r\n#vgl-finals-widget .fn-ko-panel .fn-match { padding: 9px 14px; }\r\n#vgl-finals-widget .fn-ko-panel .fn-matches-grid.single {\r\n  grid-template-columns: 1fr; justify-items: center;\r\n}\r\n#vgl-finals-widget .fn-ko-panel .fn-matches-grid.single .fn-match {\r\n  width: 100%; max-width: 460px; padding: 20px 28px;\r\n}\r\n#vgl-finals-widget .fn-ko-panel .fn-matches-grid.single .fn-match-grp {\r\n  font-size: 0.68rem; margin-bottom: 14px;\r\n}\r\n#vgl-finals-widget .fn-ko-panel .fn-matches-grid.single .fn-match-team {\r\n  font-size: 1.25rem;\r\n}\r\n#vgl-finals-widget .fn-ko-panel .fn-matches-grid.single .fn-match-player {\r\n  font-size: 0.78rem;\r\n}\r\n#vgl-finals-widget .fn-ko-panel .fn-matches-grid.single .fn-score,\r\n#vgl-finals-widget .fn-ko-panel .fn-matches-grid.single .fn-time {\r\n  font-size: 1.5rem; padding: 8px 18px; min-width: 66px;\r\n}\r\n#vgl-finals-widget .fn-ko-panel .fn-matches-grid.single .fn-match-row {\r\n  gap: 16px;\r\n}\r\n#vgl-finals-widget .fn-ko-panel .fn-matches-grid.single .fn-match-side {\r\n  gap: 3px;\r\n}\r\n\r\n\r\n#vgl-finals-widget .fn-tbl { width: 100%; border-collapse: collapse; }\r\n#vgl-finals-widget .fn-tbl th {\r\n  padding: 7px 12px; font-size: 0.6rem; font-weight: 700;\r\n  letter-spacing: 1.5px; text-transform: uppercase; color: var(--fn-muted);\r\n  text-align: center; border-bottom: 0.5px solid var(--fn-border-soft);\r\n  background: rgba(0,0,0,0.15);\r\n}\r\n#vgl-finals-widget .fn-tbl th:nth-child(2) { text-align: left; padding-left: 4px; }\r\n#vgl-finals-widget .fn-tbl td {\r\n  padding: 9px 12px; font-size: 0.82rem; font-weight: 600;\r\n  text-align: center; border-bottom: 0.5px solid var(--fn-border-soft);\r\n  color: var(--fn-muted);\r\n}\r\n#vgl-finals-widget .fn-tbl td:nth-child(1) { width: 28px; }\r\n#vgl-finals-widget .fn-tbl td:nth-child(2) { text-align: left; color: var(--fn-text); font-size: 0.88rem; padding-left: 4px; }\r\n#vgl-finals-widget .fn-tbl td:nth-child(2) .fn-team-name {\r\n  display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 160px;\r\n}\r\n#vgl-finals-widget .fn-team-players {\r\n  display: block; font-size: 0.62rem; color: rgba(255,255,255,0.3); font-style: italic;\r\n  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 160px; margin-top: 2px;\r\n}\r\n#vgl-finals-widget .fn-seed { font-size: 0.6rem; color: rgba(255,255,255,0.28); margin-left: 4px; vertical-align: middle; font-weight: 400; }\r\n#vgl-finals-widget .fn-tbl td:last-child { padding-right: 0; }\r\n#vgl-finals-widget .fn-tbl tr:last-child td { border-bottom: none; }\r\n#vgl-finals-widget .fn-tbl tr.q1 td:nth-child(2) .fn-team-name { color: #fff; font-weight: 700; }\r\n#vgl-finals-widget .fn-tbl .fn-pts { color: var(--fn-gold) !important; font-family: 'Bebas Neue', sans-serif; font-size: 1rem; letter-spacing: 1px; }\r\n#vgl-finals-widget .fn-tbl .pos-1 { font-family: 'Bebas Neue', sans-serif; color: var(--fn-gold) !important; font-size: 1rem; }\r\n#vgl-finals-widget .fn-tbl .pos-2 { color: rgba(192,207,224,0.7) !important; }\r\n#vgl-finals-widget .fn-qual-dot {\r\n  display: inline-block; width: 5px; height: 5px; border-radius: 50%;\r\n  margin-right: 7px; vertical-align: middle; position: relative; top: -1px;\r\n}\r\n#vgl-finals-widget .fn-qual-dot.d1 { background: var(--fn-gold); }\r\n#vgl-finals-widget .fn-qual-dot.d2 { background: rgba(192,207,224,0.5); }\r\n\r\n#vgl-finals-widget .fn-matches-wrap { padding: 20px; }\r\n#vgl-finals-widget .fn-matches-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }\r\n#vgl-finals-widget .fn-match {\r\n  background: rgba(255,255,255,0.02); border: 0.5px solid var(--fn-border);\r\n  border-radius: 4px; padding: 10px 16px; transition: background .15s;\r\n  position: relative;\r\n}\r\n#vgl-finals-widget .fn-match:hover { background: rgba(255,255,255,0.04); }\r\n#vgl-finals-widget .fn-match-grp {\r\n  font-size: 0.6rem; color: var(--fn-muted); font-weight: 700;\r\n  letter-spacing: 1.5px; text-transform: uppercase; text-align: center; margin-bottom: 8px;\r\n}\r\n#vgl-finals-widget .fn-match-group {\r\n  position: absolute; top: 10px; left: 14px;\r\n  font-family: 'Barlow', sans-serif; font-size: 0.58rem; font-weight: 700;\r\n  letter-spacing: 1px; text-transform: uppercase; white-space: nowrap;\r\n  color: var(--fn-muted); background: none; border: none; padding: 0;\r\n}\r\n#vgl-finals-widget .fn-match-row { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 8px; }\r\n#vgl-finals-widget .fn-match-side {\r\n  display: flex; flex-direction: column; justify-content: center; gap: 1px;\r\n}\r\n#vgl-finals-widget .fn-match-side.h { align-items: flex-end; }\r\n#vgl-finals-widget .fn-match-side.a { align-items: flex-start; }\r\n#vgl-finals-widget .fn-match-team {\r\n  font-size: 0.92rem; font-weight: 700; color: var(--fn-text);\r\n  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\r\n  line-height: 1.15;\r\n}\r\n#vgl-finals-widget .fn-match-team.h { text-align: right; }\r\n#vgl-finals-widget .fn-match-team.a { text-align: left; }\r\n#vgl-finals-widget .fn-match-team.winner {\r\n  color: var(--fn-gold); font-weight: 800;\r\n}\r\n#vgl-finals-widget .fn-match-player {\r\n  font-size: 0.68rem; color: rgba(255,255,255,0.22); font-weight: 600;\r\n  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\r\n  font-style: italic; display: block; margin-top: 0; line-height: 1.15;\r\n}\r\n#vgl-finals-widget .fn-match-player.h { text-align: right; }\r\n#vgl-finals-widget .fn-match-player.a { text-align: left; }\r\n#vgl-finals-widget .fn-score {\r\n  font-family: 'Bebas Neue', sans-serif; font-size: 1.05rem; letter-spacing: 1px;\r\n  color: var(--fn-gold); text-align: center; white-space: nowrap;\r\n  padding: 4px 10px; background: rgba(240,192,64,0.08);\r\n  border: 0.5px solid rgba(240,192,64,0.25); border-radius: 3px; min-width: 52px;\r\n}\r\n#vgl-finals-widget .fn-time {\r\n  font-family: 'Bebas Neue', sans-serif; font-size: 0.95rem; letter-spacing: 1px;\r\n  color: rgba(255,255,255,0.25); text-align: center;\r\n  padding: 4px 10px; background: rgba(255,255,255,0.04);\r\n  border: 0.5px solid var(--fn-border); border-radius: 3px; white-space: nowrap;\r\n}\r\n\r\n#vgl-finals-widget .fn-pager {\r\n  display: flex; align-items: center; justify-content: center; gap: 6px;\r\n  padding: 14px 24px; border-top: 0.5px solid var(--fn-border);\r\n  background: var(--fn-bg-card); border-radius: 0 0 4px 4px;\r\n}\r\n#vgl-finals-widget .fn-pg-btn {\r\n  font-family: 'Barlow', sans-serif; font-size: 11px; font-weight: 700;\r\n  letter-spacing: 0.5px; min-width: 34px; height: 34px; padding: 0 10px;\r\n  border-radius: 8px; border: 0.5px solid rgba(255,255,255,0.10);\r\n  background: rgba(255,255,255,0.04); color: rgba(255,255,255,0.45);\r\n  cursor: pointer; transition: all 0.18s; display: inline-flex; align-items: center; justify-content: center;\r\n}\r\n#vgl-finals-widget .fn-pg-btn:hover:not(:disabled) { background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.2); color: rgba(255,255,255,0.8); }\r\n#vgl-finals-widget .fn-pg-btn.active { background: rgba(240,192,64,0.12); border-color: rgba(240,192,64,0.4); color: var(--fn-gold); }\r\n#vgl-finals-widget .fn-pg-btn:disabled { opacity: 0.2; cursor: default; }\r\n\r\n#vgl-finals-widget .fn-qual-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(200px,1fr)); gap: 8px; padding: 20px; }\r\n#vgl-finals-widget .fn-qual-card {\r\n  background: rgba(0,255,255,0.04); border: 0.5px solid rgba(0,255,255,0.15);\r\n  border-radius: 4px; padding: 12px 16px; display: flex; align-items: center; gap: 10px;\r\n}\r\n#vgl-finals-widget .fn-qual-medal { font-size: 1.1rem; }\r\n#vgl-finals-widget .fn-qual-name { font-size: 0.88rem; font-weight: 700; color: #fff; }\r\n#vgl-finals-widget .fn-qual-grp { font-size: 0.62rem; color: var(--fn-muted); font-weight: 700; letter-spacing: 1px; text-transform: uppercase; margin-top: 2px; }\r\n\r\n#vgl-finals-widget .fn-ko-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(320px,1fr)); gap: 10px; padding: 20px; }\r\n#vgl-finals-widget .fn-ko-card {\r\n  background: rgba(240,192,64,0.04); border: 0.5px solid rgba(240,192,64,0.2);\r\n  border-radius: 4px; padding: 14px 20px;\r\n}\r\n#vgl-finals-widget .fn-ko-label {\r\n  font-size: 0.62rem; font-weight: 700; text-transform: uppercase;\r\n  letter-spacing: 2px; color: var(--fn-gold); margin-bottom: 12px;\r\n  font-family: 'Barlow', sans-serif;\r\n}\r\n#vgl-finals-widget .fn-ko-matchup { display: flex; align-items: center; gap: 10px; }\r\n#vgl-finals-widget .fn-ko-team {\r\n  flex: 1; font-size: 0.9rem; font-weight: 700; color: var(--fn-text);\r\n  text-align: center; word-break: break-word; line-height: 1.3;\r\n}\r\n#vgl-finals-widget .fn-ko-score {\r\n  font-family: 'Bebas Neue', sans-serif; font-size: 1.1rem; letter-spacing: 1px;\r\n  color: var(--fn-gold); padding: 6px 12px;\r\n  background: rgba(240,192,64,0.1); border: 0.5px solid rgba(240,192,64,0.25);\r\n  border-radius: 3px; text-align: center; min-width: 52px;\r\n}\r\n#vgl-finals-widget .fn-ko-vs {\r\n  font-family: 'Bebas Neue', sans-serif; font-size: 0.9rem; letter-spacing: 1px;\r\n  color: rgba(255,255,255,0.2); padding: 6px 12px;\r\n  background: rgba(255,255,255,0.04); border: 0.5px solid var(--fn-border);\r\n  border-radius: 3px; text-align: center; min-width: 52px;\r\n}\r\n#vgl-finals-widget .fn-ko-time {\r\n  font-family: 'Bebas Neue', sans-serif; font-size: 0.95rem; letter-spacing: 1px;\r\n  color: rgba(255,255,255,0.3); padding: 6px 12px;\r\n  background: rgba(255,255,255,0.04); border: 0.5px solid var(--fn-border);\r\n  border-radius: 3px; text-align: center; min-width: 52px;\r\n}\r\n\r\n#vgl-finals-widget .fn-loading {\r\n  text-align: center; padding: 48px;\r\n  color: var(--fn-muted); font-size: 0.8rem; letter-spacing: 2px; text-transform: uppercase;\r\n}\r\n#vgl-finals-widget .fn-spin {\r\n  display: inline-block; width: 14px; height: 14px;\r\n  border: 1.5px solid rgba(240,192,64,0.15); border-top-color: var(--fn-gold);\r\n  border-radius: 50%; animation: fn-spin .8s linear infinite;\r\n  vertical-align: middle; margin-right: 8px;\r\n}\r\n@keyframes fn-spin { to { transform: rotate(360deg); } }\r\n#vgl-finals-widget .fn-soon {\r\n  text-align: center; padding: 60px 20px;\r\n  font-family: 'Bebas Neue', sans-serif; font-size: 1.1rem;\r\n  letter-spacing: 3px; color: rgba(255,255,255,0.15);\r\n}\r\n#vgl-finals-widget .fn-updated {\r\n  text-align: right; font-size: 0.66rem; color: rgba(255,255,255,0.15);\r\n  font-style: italic; margin-top: 16px; letter-spacing: 0.5px;\r\n}\r\n\r\n\r\n@media (max-width: 600px) {\r\n  #vgl-finals-widget { padding: 20px 10px 40px; }\r\n  #vgl-finals-widget .fn-header h1 { font-size: 1.6rem; }\r\n  #vgl-finals-widget .fn-header p  { font-size: 0.68rem; }\r\n  #vgl-finals-widget .fn-tab { padding: 7px 12px; font-size: 10px; gap: 5px; }\r\n  #vgl-finals-widget .fn-gs-layout { grid-template-columns: 1fr !important; gap: 12px !important; }\r\n  #vgl-finals-widget .fn-card-hdr { padding: 10px 14px; }\r\n  #vgl-finals-widget .fn-card-hdr h2 { font-size: 1rem; letter-spacing: 1.5px; }\r\n  #vgl-finals-widget .fn-podium-grid { padding: 12px 8px; }\r\n  #vgl-finals-widget .fn-podium-label { font-size: 0.55rem; letter-spacing: 1px; }\r\n  #vgl-finals-widget .fn-podium-name { font-size: 0.95rem; }\r\n  #vgl-finals-widget .fn-podium-col.p1 .fn-podium-name { font-size: 1.05rem; }\r\n  #vgl-finals-widget .fn-podium-players { font-size: 0.58rem; }\r\n  #vgl-finals-widget .fn-group-block { padding: 12px 12px; border-right: none !important; border-bottom: 1px solid rgba(255,255,255,0.05); }\r\n  #vgl-finals-widget .fn-group-block:last-child { border-bottom: none; }\r\n  #vgl-finals-widget .fn-tbl th { padding: 5px 5px; font-size: 0.55rem; letter-spacing: 0.8px; }\r\n  #vgl-finals-widget .fn-tbl td { padding: 7px 5px; font-size: 0.75rem; }\r\n  #vgl-finals-widget .fn-tbl td:nth-child(2) .fn-team-name { font-size: 0.78rem; max-width: 90px; }\r\n  #vgl-finals-widget .fn-team-players { max-width: 90px; }\r\n  #vgl-finals-widget .fn-tbl th:nth-child(7),\r\n  #vgl-finals-widget .fn-tbl td:nth-child(7),\r\n  #vgl-finals-widget .fn-tbl th:nth-child(8),\r\n  #vgl-finals-widget .fn-tbl td:nth-child(8) { display: none; }\r\n  #vgl-finals-widget .fn-groups-wrap,\r\n  #vgl-finals-widget [style*=\"grid-template-columns\"] { grid-template-columns: 1fr !important; }\r\n  #vgl-finals-widget .fn-tbl td,\r\n  #vgl-finals-widget .fn-tbl th,\r\n  #vgl-finals-widget .fn-tbl tr td,\r\n  #vgl-finals-widget .fn-tbl tr th,\r\n  #vgl-finals-widget table td,\r\n  #vgl-finals-widget table th { border: none !important; border-bottom: 1px solid rgba(255,255,255,0.04) !important; outline: none !important; box-shadow: none !important; }\r\n  #vgl-finals-widget .fn-tbl tr:last-child td { border-bottom: none !important; }\r\n  #vgl-finals-widget .fn-matches-wrap { padding: 10px; }\r\n  #vgl-finals-widget .fn-matches-grid { grid-template-columns: 1fr !important; gap: 8px !important; }\r\n  #vgl-finals-widget .fn-score, #vgl-finals-widget .fn-time { font-size: 0.92rem; padding: 3px 8px; min-width: 44px; }\r\n  #vgl-finals-widget .fn-match-team { font-size: 0.82rem; }\r\n  #vgl-finals-widget .fn-ko-grid { grid-template-columns: 1fr !important; padding: 10px !important; }\r\n  #vgl-finals-widget .fn-qual-grid { grid-template-columns: 1fr 1fr !important; padding: 10px !important; gap: 6px !important; }\r\n  #vgl-finals-widget .fn-qual-card { padding: 10px 12px; }\r\n  #vgl-finals-widget .fn-qual-name { font-size: 0.8rem; }\r\n  #vgl-finals-widget .fn-pg-btn { min-width: 30px; height: 30px; font-size: 10px; padding: 0 8px; }\r\n  #vgl-finals-widget .fn-ko-tab { padding: 6px 12px; font-size: 9.5px; }\r\n}\r\n<\/style>\r\n<\/head>\r\n<body data-rsssl=1 style=\"background:#0d1520\">\r\n\r\n<div id=\"vgl-finals-widget\" translate=\"no\" class=\"notranslate\">\r\n\r\n  <div class=\"fn-header\">\r\n    <img decoding=\"async\" class=\"fn-logo notranslate\" src=\"https:\/\/vglesports.com\/wp-content\/uploads\/2026\/05\/RoC-Logo-1.webp\" alt=\"Rise of Champions\" loading=\"lazy\" style=\"display:block!important;max-width:300px!important;width:100%!important;height:auto!important;margin:0 auto -55px!important;padding:0!important;\">\r\n    <h1>Final <span>Stage<\/span><\/h1>\r\n    <p>Season 1 &mdash; Final Stage<\/p>\r\n  <\/div>\r\n\r\n  <div class=\"fn-tabs\">\r\n    <button class=\"fn-tab\" data-g=\"eafc\" onclick=\"fnSwitch('eafc')\"><span class=\"fn-tab-dot\"><\/span>EA FC 26<\/button>\r\n    <button class=\"fn-tab\" data-g=\"rl\"   onclick=\"fnSwitch('rl')\"><span class=\"fn-tab-dot\"><\/span>Rocket League<\/button>\r\n    <button class=\"fn-tab\" data-g=\"ef\"   onclick=\"fnSwitch('ef')\"><span class=\"fn-tab-dot\"><\/span>eFootball<\/button>\r\n  <\/div>\r\n\r\n  <div class=\"fn-panel\" id=\"fn-eafc\">\r\n    <div class=\"fn-loading\" id=\"fn-eafc-load\"><span class=\"fn-spin\"><\/span>Loading data\u2026<\/div>\r\n    <div id=\"fn-eafc-body\"><\/div>\r\n  <\/div>\r\n  <div class=\"fn-panel\" id=\"fn-rl\">\r\n    <div class=\"fn-loading\" id=\"fn-rl-load\"><span class=\"fn-spin\"><\/span>Loading data\u2026<\/div>\r\n    <div id=\"fn-rl-body\"><\/div>\r\n  <\/div>\r\n  <div class=\"fn-panel\" id=\"fn-ef\">\r\n    <div class=\"fn-loading\" id=\"fn-ef-load\"><span class=\"fn-spin\"><\/span>Loading data\u2026<\/div>\r\n    <div id=\"fn-ef-body\"><\/div>\r\n  <\/div>\r\n\r\n  <div class=\"fn-updated\" id=\"fn-ts\"><\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function(){\r\n  const root = document.getElementById('vgl-finals-widget');\r\n  if (!root) return;\r\n\r\n  function lockNode(n) {\r\n    if (n.nodeType !== 1) return;\r\n    n.setAttribute('translate', 'no');\r\n    n.classList.add('notranslate');\r\n    \/\/ TranslatePress-specific: mark as excluded\r\n    n.setAttribute('data-no-translation', '');\r\n    n.setAttribute('data-trp-no-translate', '');\r\n  }\r\n\r\n  function lockTree(el) {\r\n    lockNode(el);\r\n    el.querySelectorAll('*').forEach(lockNode);\r\n  }\r\n\r\n  lockTree(root);\r\n\r\n  \/\/ Watch for any new nodes injected by TP or dynamic rendering\r\n  new MutationObserver(muts => muts.forEach(m => {\r\n    m.addedNodes.forEach(n => { if (n.nodeType === 1) lockTree(n); });\r\n    \/\/ Also re-lock if TP modifies text nodes inside the widget\r\n    if (m.type === 'characterData' && root.contains(m.target)) {\r\n      if (m.target.parentElement) lockNode(m.target.parentElement);\r\n    }\r\n  })).observe(root, {childList: true, subtree: true, characterData: true});\r\n\r\n  \/\/ Belt-and-suspenders: re-lock every 800ms for the first 5s (covers TP late init)\r\n  let ticks = 0;\r\n  const iv = setInterval(() => {\r\n    lockTree(root);\r\n    if (++ticks >= 6) clearInterval(iv);\r\n  }, 800);\r\n})();\r\n\r\nconst FN_SHEET = {\r\n  rl:   'https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vQ7XPmTERn8ypG2cKhJPybs2ztp8zh5PDqS1EmIl-XnroKRjn_sScbb7ke79QcHkn6Txmn9pS7bBgT6\/pub?gid=1286950606&single=true&output=csv',\r\n  eafc: 'https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vQ7XPmTERn8ypG2cKhJPybs2ztp8zh5PDqS1EmIl-XnroKRjn_sScbb7ke79QcHkn6Txmn9pS7bBgT6\/pub?gid=1193440293&single=true&output=csv',\r\n  ef:   'https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vQ7XPmTERn8ypG2cKhJPybs2ztp8zh5PDqS1EmIl-XnroKRjn_sScbb7ke79QcHkn6Txmn9pS7bBgT6\/pub?gid=1849168027&single=true&output=csv'\r\n};\r\nconst FN_LOADED = {};\r\nconst FN_PAGES  = {};\r\nconst FN_KO_TAB = {};\r\nconst PER_PAGE  = 4;\r\n\r\n\/*\r\n  NEW SOURCE (2026-07-11): Quarterfinal \/ Semifinal matches don't live in\r\n  the per-game \"RoC 26' \u2014 Group Standings\" sheet's Knockout section \u2014 they\r\n  get entered in the shared VGL WEBSITE DATABASE \u2192 MATCHES tab instead,\r\n  one flat table with a proper header row (Event, Game, Week, Date, Phase,\r\n  Home, Away, Result, Match Time, Status, H-Player 1-3, A-Player 1-3,\r\n  Stream) covering every event\/game. We fetch it once, filter it down to\r\n  RoC 26' + the current game + any Phase that isn't a Group Stage row, and\r\n  use that as the Knockout Stage data for each tab.\r\n*\/\r\nconst FN_MATCHES_CSV = 'https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vRwYEJQQvu8A5aCzPtb_vlK-bUTSpKHNq1pGQo_IrScbTshZayVbwL1S6AMODASFA\/pub?gid=2085879533&single=true&output=csv';\r\nconst FN_GAME_MATCH = {\r\n  eafc: g => \/eafc\/i.test(g),\r\n  rl:   g => \/rocket\\s*league\/i.test(g),\r\n  ef:   g => \/efootball\/i.test(g)\r\n};\r\nconst fnIsRoC26 = e => \/roc\\s*26\/i.test(e || '');\r\nconst fnIsKnockoutPhase = p => !!(p && !\/^group\/i.test(p.trim()));\r\nlet FN_MATCHES_DB = null;\r\n\r\nfunction fnParseMatchesDB(txt) {\r\n  const rows = txt.split('\\n').map(l=>l.replace(\/\\r$\/,'')).map(fnCSVLine);\r\n  const out = [];\r\n  let headerIdx = -1;\r\n  for (let i=0;i<rows.length;i++) {\r\n    const r = rows[i];\r\n    if (r[0] && r[0].trim().toLowerCase()==='event' && r.some(c=>c && c.trim().toLowerCase()==='phase')) { headerIdx=i; break; }\r\n  }\r\n  if (headerIdx===-1) return out;\r\n  const hdr = rows[headerIdx].map(c=>(c||'').trim().toLowerCase());\r\n  const idx = name => hdr.indexOf(name);\r\n  const iEvent=idx('event'), iGame=idx('game'), iDate=idx('date'), iPhase=idx('phase'),\r\n        iHome=idx('home'), iAway=idx('away'), iResult=idx('result'), iTime=idx('match time'),\r\n        iH1=idx('h-player 1'), iH2=idx('h-player 2'), iH3=idx('h-player 3'),\r\n        iA1=idx('a-player 1'), iA2=idx('a-player 2'), iA3=idx('a-player 3');\r\n\r\n  for (let i=headerIdx+1;i<rows.length;i++) {\r\n    const r = rows[i];\r\n    if (!r || r.every(c=>!c)) continue;\r\n    const event=(r[iEvent]||'').trim();\r\n    if (!event) continue;\r\n    out.push({\r\n      event, game:(r[iGame]||'').trim(), date:(r[iDate]||'').trim(),\r\n      phase:(r[iPhase]||'').trim(), home:(r[iHome]||'').trim(), away:(r[iAway]||'').trim(),\r\n      result:(r[iResult]||'').trim(), time:(r[iTime]||'').trim(),\r\n      hp:[r[iH1],r[iH2],r[iH3]].filter(Boolean).map(s=>s.trim()).join(' \u00b7 '),\r\n      ap:[r[iA1],r[iA2],r[iA3]].filter(Boolean).map(s=>s.trim()).join(' \u00b7 ')\r\n    });\r\n  }\r\n  return out;\r\n}\r\n\r\nasync function fnFetchMatchesDB() {\r\n  if (FN_MATCHES_DB) return FN_MATCHES_DB;\r\n  try {\r\n    const r = await fetch(FN_MATCHES_CSV + '&_=' + Date.now());\r\n    if (!r.ok) throw 0;\r\n    FN_MATCHES_DB = fnParseMatchesDB(await r.text());\r\n  } catch { FN_MATCHES_DB = []; }\r\n  return FN_MATCHES_DB;\r\n}\r\n\r\nfunction fnSwitch(g) {\r\n  document.querySelectorAll('#vgl-finals-widget .fn-tab').forEach(b => {\r\n    b.className = 'fn-tab notranslate';\r\n    if (b.dataset.g === g) b.classList.add('act-' + g);\r\n  });\r\n  document.querySelectorAll('#vgl-finals-widget .fn-panel').forEach(p => p.classList.remove('show'));\r\n  document.getElementById('fn-'+g).classList.add('show');\r\n  if (FN_SHEET[g] && !FN_LOADED[g]) fnFetch(g);\r\n}\r\n\r\nfunction fnKoSwitch(g, idx) {\r\n  FN_KO_TAB[g] = idx;\r\n  document.querySelectorAll('#fn-'+g+'-ko-tabs .fn-ko-tab').forEach((b,i) => {\r\n    b.classList.toggle('active', i===idx);\r\n  });\r\n  document.querySelectorAll('#fn-'+g+'-ko-panels .fn-ko-panel').forEach((p,i) => {\r\n    p.classList.toggle('show', i===idx);\r\n  });\r\n}\r\n\r\nasync function fnFetch(g) {\r\n  try {\r\n    const r = await fetch(FN_SHEET[g] + '&_=' + Date.now());\r\n    if (!r.ok) throw 0;\r\n    const d = fnParse(await r.text());\r\n\r\n    const dbRows = await fnFetchMatchesDB();\r\n    d.knockout = dbRows\r\n      .filter(m => fnIsRoC26(m.event) && FN_GAME_MATCH[g] && FN_GAME_MATCH[g](m.game) && fnIsKnockoutPhase(m.phase))\r\n      .map(m => ({\r\n        date: m.date, phase: m.phase, home: m.home, away: m.away,\r\n        score: m.result || m.time || '', hp: m.hp, ap: m.ap\r\n      }));\r\n\r\n    FN_LOADED[g] = d;\r\n    fnRender(g, d);\r\n  } catch {\r\n    const el = document.getElementById('fn-'+g+'-load');\r\n    if (el) el.innerHTML = '\u26a0\ufe0f Failed to load data.';\r\n  }\r\n}\r\n\r\nfunction fnCSVLine(line) {\r\n  const res=[]; let cur='', q=false;\r\n  for (let i=0; i<line.length; i++) {\r\n    const c=line[i];\r\n    if (c==='\"' && !q){q=true;continue}\r\n    if (c==='\"' && q){q=false;continue}\r\n    if (c===',' && !q){res.push(cur.trim());cur='';continue}\r\n    cur+=c;\r\n  }\r\n  res.push(cur.trim()); return res;\r\n}\r\n\r\n\/*\r\n  DATE HANDLING: the sheet's Date column now uses D\/M\/YY (e.g. 19\/7\/26).\r\n  This is only ever displayed as plain text in this widget (never passed\r\n  to `new Date(...)`), so the format change doesn't break the display.\r\n  For sorting matches *within* a knockout phase chronologically (in case\r\n  a phase has more than one match on the sheet in non-date order), we\r\n  parse it explicitly here instead of relying on new Date(string), which\r\n  would misread \"19\/7\/26\" as an invalid MM\/DD\/YY date.\r\n*\/\r\nfunction fnParseVGLDate(dateStr) {\r\n  if (!dateStr) return 0;\r\n  const parts = dateStr.trim().split('\/');\r\n  if (parts.length < 3) return 0;\r\n  let d = parseInt(parts[0], 10), m = parseInt(parts[1], 10), y = parseInt(parts[2], 10);\r\n  if (isNaN(d) || isNaN(m) || isNaN(y)) return 0;\r\n  if (y < 100) y += 2000;\r\n  return new Date(y, m - 1, d).getTime();\r\n}\r\n\r\nfunction fnParseScore(s) {\r\n  const m = (s || '').match(\/(\\d+)\\s*[-\u2013]\\s*(\\d+)\/);\r\n  if (!m) return null;\r\n  return { h: parseInt(m[1], 10), a: parseInt(m[2], 10) };\r\n}\r\n\r\nfunction fnFindPhase(knockout, names) {\r\n  const lnames = names.map(n => n.toLowerCase());\r\n  return knockout.find(m => lnames.includes((m.phase || '').trim().toLowerCase()));\r\n}\r\n\r\n\/*\r\n  PLAYER MAP: builds team-name \u2192 \"player \u00b7 player \u00b7 player\" lookup by\r\n  scanning every match (Group Stage + Knockout) for H\/A player names.\r\n  Used as a fallback wherever a specific match row doesn't carry its own\r\n  player list, so that a team's roster still shows up in the Standings\r\n  table and the Podium as long as it appeared with players in ANY match.\r\n*\/\r\nfunction fnBuildPlayerMap(d) {\r\n  const map = {};\r\n  const add = (team, players) => { if (team && players && !map[team]) map[team] = players; };\r\n  (d.groupMatches || []).forEach(m => { add(m.home, m.hp); add(m.away, m.ap); });\r\n  (d.knockout || []).forEach(m => { add(m.home, m.hp); add(m.away, m.ap); });\r\n  return map;\r\n}\r\n\r\n\/\/ Champion \/ 2nd \/ 3rd derived from the Final and Third Place matches,\r\n\/\/ including each team's players (from that match, falling back to the\r\n\/\/ global player map if the specific match row has no player names).\r\nfunction fnComputePodium(knockout, playerMap) {\r\n  const podium = { champion:'', championPlayers:'', second:'', secondPlayers:'', third:'', thirdPlayers:'' };\r\n  if (!knockout || !knockout.length) return podium;\r\n\r\n  const finalM = fnFindPhase(knockout, ['final']);\r\n  if (finalM) {\r\n    const sc = fnParseScore(finalM.score);\r\n    if (sc && sc.h !== sc.a) {\r\n      if (sc.h > sc.a) {\r\n        podium.champion = finalM.home; podium.championPlayers = finalM.hp || playerMap[finalM.home] || '';\r\n        podium.second   = finalM.away; podium.secondPlayers   = finalM.ap || playerMap[finalM.away] || '';\r\n      } else {\r\n        podium.champion = finalM.away; podium.championPlayers = finalM.ap || playerMap[finalM.away] || '';\r\n        podium.second   = finalM.home; podium.secondPlayers   = finalM.hp || playerMap[finalM.home] || '';\r\n      }\r\n    }\r\n  }\r\n\r\n  const thirdM = fnFindPhase(knockout, ['third place', '3rd place']);\r\n  if (thirdM) {\r\n    const sc = fnParseScore(thirdM.score);\r\n    if (sc && sc.h !== sc.a) {\r\n      if (sc.h > sc.a) { podium.third = thirdM.home; podium.thirdPlayers = thirdM.hp || playerMap[thirdM.home] || ''; }\r\n      else             { podium.third = thirdM.away; podium.thirdPlayers = thirdM.ap || playerMap[thirdM.away] || ''; }\r\n    }\r\n  }\r\n\r\n  return podium;\r\n}\r\n\r\nfunction fnRenderPodium(p) {\r\n  if (!p.champion && !p.second && !p.third) return '';\r\n  const col = (label, cls, name, players) => `\r\n      <div class=\"fn-podium-col ${cls} notranslate\">\r\n        <div class=\"fn-podium-label notranslate\">${label}<\/div>\r\n        <div class=\"fn-podium-name notranslate\">${name || 'TBD'}<\/div>\r\n        ${players ? `<div class=\"fn-podium-players notranslate\">${players}<\/div>` : ''}\r\n      <\/div>`;\r\n  return `<div class=\"fn-card notranslate\" style=\"margin-bottom:20px\">\r\n    <div class=\"fn-card-hdr\"><h2>\ud83c\udfc6 Podium<\/h2><\/div>\r\n    <div class=\"fn-podium-grid notranslate\">\r\n      ${col('Champion', 'p1', p.champion, p.championPlayers)}\r\n      ${col('2nd Place', 'p2', p.second, p.secondPlayers)}\r\n      ${col('3rd Place', 'p3', p.third, p.thirdPlayers)}\r\n    <\/div>\r\n  <\/div>`;\r\n}\r\n\r\n\/*\r\n  FIX (2026-07-11): Knockout matches were not being read from the sheet.\r\n  Two bugs fixed here:\r\n  1. The \"Knockout\" header row was only detected in column 0 or column 1\r\n     (f.includes('Knockout Stage') \/ c[1].includes(...)). If the label sat\r\n     in a different cell, or used slightly different wording, the parser\r\n     never switched into knockout mode. Now it checks the whole row,\r\n     case-insensitively, for \"knockout\" (and a Greek \"\u03c0\u03c1\u03bf\u03ba\u03c1\u03b9\u03b8\" variant for\r\n     the Qualified header too).\r\n  2. Once in knockout mode, home\/away were read from c[2]\/c[5], which is a\r\n     DIFFERENT column layout than the Group Stage matches (which use\r\n     c[4]\/c[6]). If your Knockout tab uses the same column layout as the\r\n     Group Stage tab (very likely, since it's usually copy-pasted from the\r\n     same template), the old code was reading empty\/wrong cells and\r\n     silently pushing nothing. The parser now tries the Group-Stage-style\r\n     layout first (c[4]\/c[6]) and falls back to the old compact layout\r\n     (c[2]\/c[5]) if that's empty \u2014 so it works with either sheet structure.\r\n*\/\r\nfunction fnParse(txt) {\r\n  const lines = txt.split('\\n').map(l=>l.replace(\/\\r$\/,''));\r\n  const d = {updatedAt:'', groups:{}, groupMatches:[], qualified:[], knockout:[]};\r\n  let sec=null, grp=null;\r\n  for (const line of lines) {\r\n    const c=fnCSVLine(line), f=c[0]||'';\r\n    const rowText = c.join(' ').toLowerCase();\r\n    if (f.startsWith('Updated:')) { d.updatedAt=f.replace('Updated:','').trim(); continue; }\r\n    if (c.every(x=>!x)) continue;\r\n    if (['#','Pos','\u0397\u03bc\/\u03bd\u03af\u03b1'].some(h=>f.startsWith(h))) continue;\r\n    if (rowText.includes('knockout')) { sec='knockout'; continue; }\r\n    if (rowText.includes('qualified') || rowText.includes('\u03c0\u03c1\u03bf\u03ba\u03c1\u03b9\u03b8')) { sec='qualified'; continue; }\r\n    if (f.startsWith('\ud83d\udcc5')||f.includes('\u0391\u03b3\u03ce\u03bd\u03b5\u03c2')||f.includes('Group Stage')) { sec='matches'; grp=null; continue; }\r\n    const gm=f.match(\/^Group\\s+([A-Z])$\/i);\r\n    if (gm) { grp='Group '+gm[1].toUpperCase(); if(!d.groups[grp]) d.groups[grp]=[]; sec='standings'; continue; }\r\n    if (sec==='standings' && grp) {\r\n      const pos=parseInt(f);\r\n      if (!isNaN(pos) && c[1])\r\n        d.groups[grp].push({pos,team:c[1],p:c[2]||'',w:c[3]||'',d_:c[4]||'',l:c[5]||'',gf:c[6]||'',ga:c[7]||'',gd:c[8]||'',pts:c[9]||'0'});\r\n    }\r\n    if (sec==='matches') {\r\n      if (f && c[4] && c[6]) d.groupMatches.push({date:f,group:c[2]||'',home:c[4],away:c[6],score:c[8]||'',hp:'',ap:''});\r\n      else if (!f && c[4] && d.groupMatches.length) { const l=d.groupMatches[d.groupMatches.length-1]; l.hp=c[4]; l.ap=c[6]||''; }\r\n    }\r\n    if (sec==='qualified' && c[1] && c[2] && f!=='Pos') d.qualified.push({pos:f,group:c[1],team:c[2]});\r\n    if (sec==='knockout') {\r\n      if (f && c[4] && c[6]) {\r\n        \/\/ Same layout as the Group Stage matches table, but column 2 now\r\n        \/\/ holds the \"Phase\" value (e.g. Quarterfinal \/ Semifinal) instead\r\n        \/\/ of a group letter: date, Phase, home, blank, away, blank, score.\r\n        d.knockout.push({date:f, phase:c[2]||'Knockout', home:c[4], away:c[6], score:c[8]||'', hp:'', ap:''});\r\n      } else if (!f && c[4] && d.knockout.length) {\r\n        \/\/ Player-name sub-row under the match above (same pattern used\r\n        \/\/ for Group Stage matches).\r\n        const l=d.knockout[d.knockout.length-1]; l.hp=c[4]; l.ap=c[6]||'';\r\n      } else if (f && c[2] && c[5]) {\r\n        \/\/ Fallback: old compact layout with no Phase column at all.\r\n        d.knockout.push({date:f, phase:'Knockout', home:c[2], away:c[5], score:c[8]||'', hp:'', ap:''});\r\n      }\r\n    }\r\n  }\r\n  return d;\r\n}\r\n\r\nfunction fnRender(g, d) {\r\n  const load = document.getElementById('fn-'+g+'-load');\r\n  const body = document.getElementById('fn-'+g+'-body');\r\n  if (load) load.style.display='none';\r\n  if (!body) return;\r\n\r\n  const playerMap = fnBuildPlayerMap(d);\r\n  d.playerMap = playerMap; \/\/ reused by fnMatchPage for the paged Group Stage matches\r\n\r\n  \/\/ Podium is always visible, standalone.\r\n  let podiumHTML = fnRenderPodium(fnComputePodium(d.knockout, playerMap));\r\n\r\n  \/\/ Everything else (Knockout Stage tabs + Group Stage Matches tab,\r\n  \/\/ Group Stage Standings) is built here and always shown \u2014 no collapse.\r\n  let restHTML = '';\r\n  const hasGroups  = Object.keys(d.groups).length > 0;\r\n  const hasMatches = d.groupMatches.length > 0;\r\n\r\n  \/\/ Build one combined tab bar: Knockout phases (Quarterfinal \u2192 Final,\r\n  \/\/ display-ordered) plus a \"Group Stage\" tab holding the paginated\r\n  \/\/ Group Stage matches. Only one tab's content is visible at a time,\r\n  \/\/ so the widget never grows tall regardless of how many matches exist.\r\n  const tabLabels = [];\r\n  const tabPanels = [];\r\n\r\n  if (d.knockout.length) {\r\n    \/\/ Display order: Final \u2192 Third Place \u2192 Semifinal \u2192 Quarterfinal.\r\n    \/\/ Matched by exact phase name (case-insensitive) \u2014 anything not in\r\n    \/\/ this list keeps its original first-seen order and is appended last.\r\n    const PHASE_ORDER = ['final','third place','3rd place','semifinal','quarterfinal'];\r\n    const phaseOrder = [];\r\n    const byPhase = {};\r\n    d.knockout.forEach(m => {\r\n      const p = (m.phase || 'Knockout').trim() || 'Knockout';\r\n      if (!byPhase[p]) { byPhase[p] = []; phaseOrder.push(p); }\r\n      byPhase[p].push(m);\r\n    });\r\n    phaseOrder.sort((a,b) => {\r\n      const ai = PHASE_ORDER.indexOf(a.toLowerCase());\r\n      const bi = PHASE_ORDER.indexOf(b.toLowerCase());\r\n      if (ai===-1 && bi===-1) return 0;\r\n      if (ai===-1) return 1;\r\n      if (bi===-1) return -1;\r\n      return ai-bi;\r\n    });\r\n    \/\/ Sort matches within each phase chronologically (D\/M\/YY-safe).\r\n    phaseOrder.forEach(p => byPhase[p].sort((a,b) => fnParseVGLDate(a.date) - fnParseVGLDate(b.date)));\r\n\r\n    const renderPhaseMatches = p => {\r\n      const single = byPhase[p].length === 1;\r\n      let s = `<div class=\"fn-matches-grid notranslate${single ? ' single' : ''}\">`;\r\n      byPhase[p].forEach(m => {\r\n        const sc=m.score||'\u2014', isScore=\/\\d+[-\u2013]\\d+\/.test(sc);\r\n        const scoreObj = isScore ? fnParseScore(sc) : null;\r\n        const hWin = scoreObj && scoreObj.h > scoreObj.a;\r\n        const aWin = scoreObj && scoreObj.a > scoreObj.h;\r\n        const hpText = m.hp || playerMap[m.home] || '';\r\n        const apText = m.ap || playerMap[m.away] || '';\r\n        const hp=hpText?`<span class=\"fn-match-player h notranslate\">${hpText}<\/span>`:'';\r\n        const ap=apText?`<span class=\"fn-match-player a notranslate\">${apText}<\/span>`:'';\r\n        s+=`<div class=\"fn-match notranslate\">\r\n          <div class=\"fn-match-grp notranslate\">${m.date}<\/div>\r\n          <div class=\"fn-match-row notranslate\">\r\n            <div class=\"fn-match-side h notranslate\"><div class=\"fn-match-team h notranslate${hWin?' winner':''}\">${m.home}<\/div>${hp}<\/div>\r\n            <div class=\"${isScore?'fn-score':'fn-time'} notranslate\">${sc}<\/div>\r\n            <div class=\"fn-match-side a notranslate\"><div class=\"fn-match-team a notranslate${aWin?' winner':''}\">${m.away}<\/div>${ap}<\/div>\r\n          <\/div>\r\n        <\/div>`;\r\n      });\r\n      s += `<\/div>`;\r\n      return s;\r\n    };\r\n\r\n    phaseOrder.forEach(p => { tabLabels.push(p); tabPanels.push(renderPhaseMatches(p)); });\r\n  }\r\n\r\n  if (hasMatches) {\r\n    tabLabels.push('Group Stage');\r\n    tabPanels.push(`<div class=\"fn-matches-wrap notranslate\" style=\"padding:0\">\r\n        <div id=\"fn-${g}-mgrid\" class=\"fn-matches-grid notranslate\"><\/div>\r\n      <\/div>\r\n      <div class=\"fn-pager notranslate\" id=\"fn-${g}-mpager\"><\/div>`);\r\n  }\r\n\r\n  if (tabLabels.length) {\r\n    \/\/ Default to the \"Group Stage\" tab on load (it's always last in\r\n    \/\/ tabLabels since knockout phases are pushed first) so that's what\r\n    \/\/ people see first when the widget loads.\r\n    const groupStageIdx = hasMatches ? tabLabels.length - 1 : -1;\r\n    const fallbackIdx = groupStageIdx !== -1 ? groupStageIdx : tabLabels.length - 1;\r\n    const defaultIdx = FN_KO_TAB[g] != null && FN_KO_TAB[g] < tabLabels.length ? FN_KO_TAB[g] : fallbackIdx;\r\n\r\n    restHTML += `<div class=\"fn-card notranslate\" style=\"margin-bottom:20px\">\r\n      <div class=\"fn-card-hdr\"><h2>\u26a1 Matches &amp; Results<\/h2><\/div>\r\n      <div class=\"fn-ko-wrap notranslate\">\r\n        <div class=\"fn-ko-tabs notranslate\" id=\"fn-${g}-ko-tabs\">`;\r\n    tabLabels.forEach((p,i) => {\r\n      restHTML += `<button class=\"fn-ko-tab notranslate${i===defaultIdx?' active':''}\" onclick=\"fnKoSwitch('${g}',${i})\">${p}<\/button>`;\r\n    });\r\n    restHTML += `<\/div>\r\n        <div id=\"fn-${g}-ko-panels\" class=\"fn-ko-panels-grid notranslate\">`;\r\n    tabPanels.forEach((panelHTML,i) => {\r\n      restHTML += `<div class=\"fn-ko-panel notranslate${i===defaultIdx?' show':''}\">${panelHTML}<\/div>`;\r\n    });\r\n    restHTML += `<\/div>\r\n      <\/div>\r\n    <\/div>`;\r\n  }\r\n\r\n  if (hasGroups) {\r\n    restHTML += `<div class=\"fn-card notranslate\" style=\"margin-bottom:20px\">\r\n      <div class=\"fn-card-hdr\"><h2>\ud83d\udcca Group Stage \u2014 Standings<\/h2><\/div>`;\r\n    const groupKeys = Object.keys(d.groups);\r\n    const gridCols = groupKeys.length > 2 ? 'repeat(2,1fr)' : 'repeat(auto-fit,minmax(260px,1fr))';\r\n    restHTML += `<div style=\"display:grid;grid-template-columns:${gridCols}\">`;\r\n    groupKeys.forEach(gk => {\r\n      restHTML += `<div class=\"fn-group-block notranslate\">\r\n        <div class=\"fn-group-label\">\u2605 &nbsp;${gk}<\/div>\r\n        <table class=\"fn-tbl\"><thead><tr>\r\n          <th>#<\/th><th>Team<\/th><th>P<\/th><th>W<\/th><th>D<\/th><th>L<\/th><th>GF<\/th><th>GA<\/th><th>GD<\/th><th>Pts<\/th>\r\n        <\/tr><\/thead><tbody>`;\r\n      d.groups[gk].forEach((t,i) => {\r\n        const rc=i===0?'q1':'', pc=i===0?'pos-1':i===1?'pos-2':'';\r\n        const dot=i<2?`<span class=\"fn-qual-dot ${i===0?'d1':'d2'}\"><\/span>`:'';\r\n        const tp=t.team.match(\/^(.*?)\\s*(\\(\\s*\\d+\\s*\\))$\/);\r\n        const tName=tp?tp[1]:t.team;\r\n        const tSeedNum=tp?tp[2].replace(\/\\s\/g,''):'';\r\n        const tSeed=tSeedNum?`<span class=\"fn-seed\">${tSeedNum}<\/span>`:'';\r\n        const tPlayers = playerMap[tName] || playerMap[t.team] || '';\r\n        const playersHtml = tPlayers ? `<span class=\"fn-team-players notranslate\">${tPlayers}<\/span>` : '';\r\n        restHTML+=`<tr class=\"${rc} notranslate\"><td class=\"${pc}\">${t.pos}<\/td><td><span class=\"fn-team-name notranslate\">${dot}${tName}${tSeed}<\/span>${playersHtml}<\/td><td>${t.p}<\/td><td>${t.w}<\/td><td>${t.d_}<\/td><td>${t.l}<\/td><td>${t.gf}<\/td><td>${t.ga}<\/td><td>${t.gd}<\/td><td class=\"fn-pts\">${t.pts}<\/td><\/tr>`;\r\n      });\r\n      restHTML += `<\/tbody><\/table><\/div>`;\r\n    });\r\n    restHTML += `<\/div><\/div>`;\r\n  }\r\n\r\n  \/\/ Podium + Knockout + Group Stage are always shown, no collapse\/dropdown.\r\n  let h = podiumHTML + restHTML;\r\n\r\n  if (!podiumHTML && !restHTML) h='<div class=\"fn-card\"><div class=\"fn-soon\">No data found.<\/div><\/div>';\r\n  body.innerHTML = h;\r\n  if (d.updatedAt) document.getElementById('fn-ts').textContent = 'Last updated: ' + d.updatedAt;\r\n\r\n  if (d.groupMatches.length) {\r\n    FN_PAGES[g] = 1;\r\n    fnMatchPage(g, d.groupMatches, 1);\r\n  }\r\n}\r\n\r\nfunction fnMatchPage(g, matches, pg) {\r\n  FN_PAGES[g] = pg;\r\n  const total = matches.length, pages = Math.ceil(total\/PER_PAGE);\r\n  const slice = matches.slice((pg-1)*PER_PAGE, pg*PER_PAGE);\r\n  const grid  = document.getElementById('fn-'+g+'-mgrid');\r\n  const pager = document.getElementById('fn-'+g+'-mpager');\r\n  if (!grid) return;\r\n\r\n  const playerMap = (FN_LOADED[g] && FN_LOADED[g].playerMap) || {};\r\n\r\n  let gHTML = '';\r\n  slice.forEach(m => {\r\n    const sc=m.score||'\u2014', isScore=\/\\d+[-\u2013]\\d+\/.test(sc);\r\n    const scoreObj = isScore ? fnParseScore(sc) : null;\r\n    const hWin = scoreObj && scoreObj.h > scoreObj.a;\r\n    const aWin = scoreObj && scoreObj.a > scoreObj.h;\r\n    const hpText = m.hp || playerMap[m.home] || '';\r\n    const apText = m.ap || playerMap[m.away] || '';\r\n    const hp=hpText?`<span class=\"fn-match-player h notranslate\">${hpText}<\/span>`:'';\r\n    const ap=apText?`<span class=\"fn-match-player a notranslate\">${apText}<\/span>`:'';\r\n    const groupLabel = m.group ? `<span class=\"fn-match-group notranslate\">${m.group}<\/span>` : '';\r\n    gHTML+=`<div class=\"fn-match notranslate\">\r\n      ${groupLabel}\r\n      <div class=\"fn-match-grp notranslate\">${m.date||''}<\/div>\r\n      <div class=\"fn-match-row notranslate\">\r\n        <div class=\"fn-match-side h notranslate\"><div class=\"fn-match-team h notranslate${hWin?' winner':''}\">${m.home}<\/div>${hp}<\/div>\r\n        <div class=\"${isScore?'fn-score':'fn-time'} notranslate\">${sc}<\/div>\r\n        <div class=\"fn-match-side a notranslate\"><div class=\"fn-match-team a notranslate${aWin?' winner':''}\">${m.away}<\/div>${ap}<\/div>\r\n      <\/div>\r\n    <\/div>`;\r\n  });\r\n  grid.innerHTML = gHTML;\r\n\r\n  if (!pager) return;\r\n  if (pages <= 1) { pager.style.display='none'; return; }\r\n  pager.style.display = 'flex';\r\n  let pH = `<button class=\"fn-pg-btn notranslate\" ${pg===1?'disabled':''} onclick=\"fnMatchPage('${g}',FN_LOADED['${g}'].groupMatches,${pg-1})\">\u2039<\/button>`;\r\n  for (let i=1;i<=pages;i++)\r\n    pH+=`<button class=\"fn-pg-btn notranslate ${i===pg?'active':''}\" onclick=\"fnMatchPage('${g}',FN_LOADED['${g}'].groupMatches,${i})\">${i}<\/button>`;\r\n  pH+=`<button class=\"fn-pg-btn notranslate\" ${pg===pages?'disabled':''} onclick=\"fnMatchPage('${g}',FN_LOADED['${g}'].groupMatches,${pg+1})\">\u203a<\/button>`;\r\n  pager.innerHTML = pH;\r\n}\r\n\r\nfnSwitch('eafc');\r\n\r\nfunction fnFixBorders() {\r\n  document.querySelectorAll('#vgl-finals-widget .fn-tbl td, #vgl-finals-widget .fn-tbl th').forEach(el => {\r\n    el.style.setProperty('border', 'none', 'important');\r\n    el.style.setProperty('border-bottom', '1px solid rgba(255,255,255,0.04)', 'important');\r\n    el.style.setProperty('box-shadow', 'none', 'important');\r\n    el.style.setProperty('outline', 'none', 'important');\r\n  });\r\n  document.querySelectorAll('#vgl-finals-widget .fn-tbl tr:last-child td').forEach(el => {\r\n    el.style.setProperty('border-bottom', 'none', 'important');\r\n  });\r\n}\r\n\r\nconst _origRender = fnRender;\r\nfnRender = function(g, d) {\r\n  _origRender(g, d);\r\n  setTimeout(fnFixBorders, 50);\r\n};\r\nsetTimeout(fnFixBorders, 500);\r\n\r\nsetInterval(() => {\r\n  FN_MATCHES_DB = null;\r\n  Object.keys(FN_LOADED).forEach(g => { if (FN_SHEET[g]) { FN_LOADED[g]=null; fnFetch(g); } });\r\n}, 2*60*1000);\r\n<\/script>\r\n<\/body>\r\n<\/html>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-e217c47 elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"e217c47\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0522e02\" data-id=\"0522e02\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-eedd9c7 elementor-widget elementor-widget-html\" data-id=\"eedd9c7\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Barlow:wght@400;500;600;700&display=swap\" rel=\"stylesheet\">\r\n\r\n<style>\r\n  #vglRocHero {\r\n    --hero-bg-page: #121925;\r\n    --hero-bg-card: #1a2332;\r\n    --hero-border: rgba(255,255,255,0.15);\r\n    --hero-text: rgba(255,255,255,0.85);\r\n    --hero-muted: rgba(255,255,255,0.55);\r\n    --hero-cyan: #00d4ff;\r\n    --hero-gold: #f0c040;\r\n    font-family: 'Barlow', sans-serif !important;\r\n    background: var(--hero-bg-page) !important;\r\n    padding: 40px 16px 24px !important;\r\n    text-align: center !important;\r\n  }\r\n  #vglRocHero .hero-inner { max-width: 560px !important; margin: 0 auto !important; }\r\n\r\n  #vglRocHero .hero-card {\r\n    background: var(--hero-bg-card) !important;\r\n    border: 1px solid var(--hero-border) !important;\r\n    border-radius: 12px !important;\r\n    padding: 22px 28px !important;\r\n    opacity: 0;\r\n    animation: hcFadeUp 0.55s ease-out 0.1s forwards;\r\n  }\r\n\r\n  #vglRocHero p.hero-sub {\r\n    font-family: 'Barlow', sans-serif !important;\r\n    font-size: 0.95rem !important; font-weight: 600 !important;\r\n    line-height: 1.6 !important;\r\n    color: var(--hero-text) !important;\r\n    letter-spacing: 0.2px !important;\r\n    margin: 0 auto !important;\r\n    max-width: 440px !important;\r\n  }\r\n  #vglRocHero .hero-sub .hl-cyan { color: var(--hero-cyan) !important; }\r\n  #vglRocHero .hero-sub .hl-gold { color: var(--hero-gold) !important; }\r\n\r\n  @keyframes hcFadeUp { from { opacity:0; transform: translateY(8px); } to { opacity:1; transform: translateY(0); } }\r\n\r\n  @media (prefers-reduced-motion: reduce) {\r\n    #vglRocHero .hero-card { animation: none !important; opacity: 1 !important; }\r\n  }\r\n\r\n  @media (max-width: 600px) {\r\n    #vglRocHero { padding: 28px 16px 20px !important; }\r\n    #vglRocHero .hero-card { padding: 18px 18px !important; }\r\n    #vglRocHero p.hero-sub { font-size: 0.85rem !important; max-width: 300px !important; }\r\n  }\r\n<\/style>\r\n\r\n<div id=\"vglRocHero\">\r\n  <div class=\"hero-inner\">\r\n    <div class=\"hero-card\">\r\n      <p class=\"hero-sub\">\r\n        Player <span class=\"hl-cyan\">Rankings<\/span> &amp; Final Stage <span class=\"hl-gold\">Format Guide<\/span> \u2014 across EA&nbsp;FC, Rocket League &amp; eFootball.\r\n      <\/p>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-27a8b20 elementor-section-content-middle elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"27a8b20\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;,&quot;xpro_backdrop_filter&quot;:&quot;yes&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-44ac92f\" data-id=\"44ac92f\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-4c3b20e elementor-widget__width-initial elementor-widget-mobile__width-initial elementor-widget elementor-widget-html\" data-id=\"4c3b20e\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Barlow:wght@400;600;700&family=Bebas+Neue&display=swap\" rel=\"stylesheet\">\r\n\r\n<style>\r\n  #rocRankWrap {\r\n    --rk-bg-card: #121925;\r\n    --rk-bg-hover: rgba(255,255,255,0.02);\r\n    --rk-border: rgba(255,255,255,0.06);\r\n    --rk-border-soft: rgba(255,255,255,0.04);\r\n    --rk-gold: #f0c040;\r\n    --rk-silver: #c0cfe0;\r\n    --rk-bronze: #cd7f32;\r\n    --rk-ef: #00d4ff;\r\n    --rk-rl: #ff6b35;\r\n    --rk-ea: #4ade80;\r\n    --rk-text: rgba(255,255,255,0.85);\r\n    --rk-muted: rgba(255,255,255,0.28);\r\n    --rk-qf: #00ffff;\r\n    font-family: 'Barlow', sans-serif;\r\n    color: var(--rk-text);\r\n    background: #121925;\r\n  }\r\n\r\n  #rocRankWrap .rk-wrapper { max-width: 960px; margin: 0 auto; padding: 40px 16px 60px; }\r\n\r\n  #rocRankWrap .rk-tab-nav { display: flex; gap: 5px; margin-bottom: 24px; justify-content: center; flex-wrap: nowrap; }\r\n  #rocRankWrap .rk-tab-btn {\r\n    font-family: 'Barlow', sans-serif;\r\n    font-size: 11px;\r\n    font-weight: 700;\r\n    letter-spacing: 1px;\r\n    text-transform: uppercase;\r\n    color: rgba(255,255,255,0.45);\r\n    background: rgba(255,255,255,0.04);\r\n    border: 0.5px solid rgba(255,255,255,0.10);\r\n    padding: 8px 18px;\r\n    border-radius: 20px;\r\n    cursor: pointer;\r\n    transition: all 0.18s;\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 6px;\r\n    white-space: nowrap;\r\n    flex-shrink: 0;\r\n  }\r\n  #rocRankWrap .rk-tab-btn:hover { color: rgba(255,255,255,0.75); background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.2); }\r\n  #rocRankWrap .rk-tab-btn.active[data-game=\"eafc\"]      { background: rgba(74,222,128,0.08); border-color: rgba(74,222,128,0.4); color: #4ade80; }\r\n  #rocRankWrap .rk-tab-btn.active[data-game=\"rl\"]        { background: rgba(255,107,53,0.08); border-color: rgba(255,107,53,0.4); color: #ff6b35; }\r\n  #rocRankWrap .rk-tab-btn.active[data-game=\"efootball\"] { background: rgba(0,212,255,0.08); border-color: rgba(0,212,255,0.4); color: #00d4ff; }\r\n\r\n  #rocRankWrap .rk-tab-dot { width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; }\r\n  #rocRankWrap .rk-tab-btn[data-game=\"eafc\"] .rk-tab-dot      { background: var(--rk-ea); }\r\n  #rocRankWrap .rk-tab-btn[data-game=\"rl\"] .rk-tab-dot        { background: var(--rk-rl); }\r\n  #rocRankWrap .rk-tab-btn[data-game=\"efootball\"] .rk-tab-dot { background: var(--rk-ef); }\r\n\r\n  #rocRankWrap .rk-tab-panel { display: none; }\r\n  #rocRankWrap .rk-tab-panel.active { display: block; animation: rkFadeIn 0.25s ease; }\r\n  @keyframes rkFadeIn { from { opacity:0; transform:translateY(6px); } to { opacity:1; transform:translateY(0); } }\r\n\r\n  #rocRankWrap .rk-table-wrap {\r\n    background: #1a2332; border: 1px solid rgba(255,255,255,0.15);\r\n    border-radius: 12px; overflow: hidden; position: relative;\r\n  }\r\n\r\n  \/* Title row *\/\r\n  #rocRankWrap .rk-table-hdr {\r\n    padding: 16px 24px 13px; border-bottom: 0.5px solid var(--rk-border);\r\n    display: flex; align-items: center; gap: 12px; background: rgba(0,0,0,0.15);\r\n  }\r\n  #rocRankWrap .rk-table-hdr h2 { font-family: 'Bebas Neue', sans-serif; font-size: 1.3rem; font-weight: 400; letter-spacing: 2px; text-transform: uppercase; }\r\n  #rocRankWrap .rk-table-hdr h2.efootball { color: var(--rk-ef); }\r\n  #rocRankWrap .rk-table-hdr h2.rl        { color: var(--rk-rl); }\r\n  #rocRankWrap .rk-table-hdr h2.eafc      { color: var(--rk-ea); }\r\n\r\n  \/* Search row \u2014 sits in its own row directly below the title *\/\r\n  #rocRankWrap .rk-search-row {\r\n    padding: 12px 24px; border-bottom: 0.5px solid var(--rk-border);\r\n    background: rgba(0,0,0,0.10);\r\n  }\r\n  #rocRankWrap .rk-search-wrap { position: relative; }\r\n  #rocRankWrap .rk-search {\r\n    width: 100%; background: rgba(255,255,255,0.03); border: 0.5px solid rgba(255,255,255,0.08);\r\n    border-radius: 2px; color: var(--rk-text); font-family: 'Barlow', sans-serif;\r\n    font-size: 0.9rem; font-weight: 600; padding: 10px 16px 10px 40px; outline: none;\r\n    transition: border-color 0.2s; box-sizing: border-box;\r\n  }\r\n  #rocRankWrap .rk-search::placeholder { color: var(--rk-muted); }\r\n  #rocRankWrap .rk-search:focus { border-color: rgba(96,165,250,0.35); }\r\n  #rocRankWrap .rk-search-icon { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); color: var(--rk-muted); pointer-events: none; font-size: 14px; }\r\n\r\n  #rocRankWrap .rk-col-hdr {\r\n    display: grid; grid-template-columns: 56px 1fr 110px 80px;\r\n    padding: 9px 24px; background: rgba(0,0,0,0.2); border-bottom: 0.5px solid var(--rk-border);\r\n  }\r\n  #rocRankWrap .rk-col-hdr span { font-size: 0.68rem; letter-spacing: 2px; text-transform: uppercase; color: var(--rk-muted); font-weight: 700; }\r\n  #rocRankWrap .rk-col-hdr span:nth-child(3), #rocRankWrap .rk-col-hdr span:last-child { text-align: right; }\r\n\r\n  #rocRankWrap .rk-row {\r\n    display: grid; grid-template-columns: 56px 1fr 110px 80px;\r\n    padding: 12px 24px; border-bottom: 0.5px solid var(--rk-border-soft);\r\n    align-items: center; transition: background 0.15s;\r\n  }\r\n  #rocRankWrap .rk-row:last-child { border-bottom: none; }\r\n  #rocRankWrap .rk-row:hover { background: var(--rk-bg-hover); }\r\n\r\n  \/* Qualified by wins (knockout \/ QF) \u2014 gold highlight *\/\r\n  #rocRankWrap .rk-row.qf-row { background: rgba(240,192,64,0.06); border-bottom-color: rgba(240,192,64,0.14); }\r\n  #rocRankWrap .rk-row.qf-row:hover { background: rgba(240,192,64,0.12); }\r\n\r\n  \/* Qualified by points\/ranking cutoff \u2014 sea\/teal highlight (distinct from QF gold) *\/\r\n  #rocRankWrap .rk-row.pts-qualified { background: rgba(20,184,166,0.07); border-bottom-color: rgba(20,184,166,0.16); }\r\n  #rocRankWrap .rk-row.pts-qualified:hover { background: rgba(20,184,166,0.13); }\r\n\r\n  #rocRankWrap .rk-num { font-family: 'Bebas Neue', sans-serif; font-size: 1.1rem; font-weight: 400; color: var(--rk-muted); letter-spacing: 1px; }\r\n  #rocRankWrap .rk-row.top1 .rk-num { color: var(--rk-gold); font-size: 1.2rem; }\r\n  #rocRankWrap .rk-row.top2 .rk-num { color: var(--rk-silver); }\r\n  #rocRankWrap .rk-row.top3 .rk-num { color: var(--rk-bronze); }\r\n  #rocRankWrap .rk-bold { color: rgba(255,255,255,0.85) !important; font-weight: 700; }\r\n\r\n  #rocRankWrap .rk-name { font-size: 0.95rem; font-weight: 600; color: var(--rk-text); }\r\n  #rocRankWrap .rk-name.qualified { color: #fff; font-weight: 700; }\r\n\r\n  #rocRankWrap .rk-wr { text-align: right; font-family: 'Bebas Neue', sans-serif; font-weight: 400; font-size: 0.95rem; }\r\n  #rocRankWrap .rk-wr-val { color: rgba(255,255,255,0.7); }\r\n  #rocRankWrap .rk-wr-na { color: var(--rk-muted); opacity: 0.4; font-size: 0.8rem; }\r\n\r\n  #rocRankWrap .rk-pts { text-align: right; font-family: 'Bebas Neue', sans-serif; font-weight: 400; font-size: 1.1rem; letter-spacing: 1px; }\r\n  #rocRankWrap .rk-pts-num.efootball { color: var(--rk-ef); }\r\n  #rocRankWrap .rk-pts-num.rl        { color: var(--rk-rl); }\r\n  #rocRankWrap .rk-pts-num.eafc      { color: var(--rk-ea); }\r\n  #rocRankWrap .rk-pts-qf {\r\n    color: #f0c040; font-size: 0.65rem; background: rgba(240,192,64,0.1);\r\n    border: 0.5px solid rgba(240,192,64,0.3); padding: 3px 8px; border-radius: 2px;\r\n    letter-spacing: 2px; display: inline-block; font-family: 'Bebas Neue', sans-serif;\r\n  }\r\n\r\n  #rocRankWrap .rk-divider {\r\n    padding: 7px 24px; background: rgba(0,255,255,0.04);\r\n    border-top: 0.5px solid rgba(0,255,255,0.12); border-bottom: 0.5px solid rgba(0,255,255,0.12);\r\n    font-size: 0.63rem; letter-spacing: 3px; text-transform: uppercase;\r\n    color: rgba(255,255,255,0.35); font-weight: 700; display: flex; align-items: center; gap: 10px;\r\n  }\r\n  #rocRankWrap .rk-divider::after { content:''; flex:1; height:1px; background: rgba(0,255,255,0.12); }\r\n\r\n  #rocRankWrap .rk-pager {\r\n    display: flex; align-items: center; justify-content: center; gap: 6px;\r\n    padding: 14px 24px; border-top: 0.5px solid var(--rk-border);\r\n    background: #1a2332; border-radius: 0 0 12px 12px;\r\n  }\r\n  #rocRankWrap .rk-pg-btn {\r\n    font-family: 'Barlow', sans-serif; font-size: 11px; font-weight: 700;\r\n    letter-spacing: 0.5px; min-width: 34px; height: 34px; padding: 0 10px;\r\n    border-radius: 8px; border: 0.5px solid rgba(255,255,255,0.10);\r\n    background: rgba(255,255,255,0.04); color: rgba(255,255,255,0.45);\r\n    cursor: pointer; transition: all 0.18s; display: flex; align-items: center; justify-content: center;\r\n  }\r\n  #rocRankWrap .rk-pg-btn:hover:not(:disabled) { background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.2); color: rgba(255,255,255,0.8); }\r\n  #rocRankWrap .rk-pg-btn.active { background: rgba(96,165,250,0.12); border-color: rgba(96,165,250,0.4); color: #60a5fa; }\r\n  #rocRankWrap .rk-pg-btn:disabled { opacity: 0.2; cursor: default; }\r\n  #rocRankWrap .rk-pg-info { font-family: 'Barlow', sans-serif; font-size: 10px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: rgba(255,255,255,0.2); padding: 0 4px; }\r\n\r\n  @media(max-width:600px) {\r\n    #rocRankWrap .rk-col-hdr, #rocRankWrap .rk-row { grid-template-columns: 36px 1fr 72px 52px; padding-left: 12px; padding-right: 12px; }\r\n    #rocRankWrap .rk-header h1 { font-size: 1.5rem; }\r\n    #rocRankWrap .rk-name { font-size: 0.82rem; }\r\n    #rocRankWrap .rk-pts { font-size: 0.9rem; }\r\n    #rocRankWrap .rk-wr { font-size: 0.82rem; }\r\n    #rocRankWrap .rk-num { font-size: 0.9rem; }\r\n    #rocRankWrap .rk-pts-qf { font-size: 0.55rem; padding: 2px 5px; letter-spacing: 1px; }\r\n    #rocRankWrap .rk-search-row { padding: 10px 12px; }\r\n  }\r\n  @media(max-width:400px) {\r\n    #rocRankWrap .rk-tab-btn { padding: 7px 12px; font-size: 10px; gap: 5px; }\r\n    #rocRankWrap .rk-col-hdr, #rocRankWrap .rk-row { grid-template-columns: 32px 1fr 64px 46px; padding-left: 10px; padding-right: 10px; }\r\n  }\r\n<\/style>\r\n\r\n<div id=\"rocRankWrap\">\r\n  <div class=\"rk-wrapper\">\r\n\r\n    <div class=\"rk-tab-nav\">\r\n      <button class=\"rk-tab-btn active\" data-game=\"eafc\"><span class=\"rk-tab-dot\"><\/span> EA FC 26<\/button>\r\n      <button class=\"rk-tab-btn\" data-game=\"rl\"><span class=\"rk-tab-dot\"><\/span> Rocket League<\/button>\r\n      <button class=\"rk-tab-btn\" data-game=\"efootball\"><span class=\"rk-tab-dot\"><\/span> eFOOTBALL<\/button>\r\n    <\/div>\r\n\r\n    <div class=\"rk-tab-panel active\" id=\"rk-panel-eafc\">\r\n      <div class=\"rk-table-wrap\">\r\n        <div class=\"rk-table-hdr\"><h2 class=\"eafc\">EA FC 26<\/h2><\/div>\r\n        <div class=\"rk-search-row\">\r\n          <div class=\"rk-search-wrap\">\r\n            <span class=\"rk-search-icon\">\ud83d\udd0d<\/span>\r\n            <input class=\"rk-search\" type=\"text\" placeholder=\"\u0391\u03bd\u03b1\u03b6\u03ae\u03c4\u03b7\u03c3\u03b7 \u03c0\u03b1\u03af\u03ba\u03c4\u03b7...\" data-game=\"eafc\">\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"rk-col-hdr\"><span><\/span><span>Participant<\/span><span>\u03a3\u03b7\u03bc\u03b5\u03af\u03b1<\/span><span>Win %<\/span><\/div>\r\n        <div id=\"rk-rows-eafc\"><\/div>\r\n      <\/div>\r\n      <div class=\"rk-pager\" id=\"rk-pager-eafc\"><\/div>\r\n    <\/div>\r\n\r\n    <div class=\"rk-tab-panel\" id=\"rk-panel-rl\">\r\n      <div class=\"rk-table-wrap\">\r\n        <div class=\"rk-table-hdr\"><h2 class=\"rl\">Rocket League<\/h2><\/div>\r\n        <div class=\"rk-search-row\">\r\n          <div class=\"rk-search-wrap\">\r\n            <span class=\"rk-search-icon\">\ud83d\udd0d<\/span>\r\n            <input class=\"rk-search\" type=\"text\" placeholder=\"\u0391\u03bd\u03b1\u03b6\u03ae\u03c4\u03b7\u03c3\u03b7 \u03bf\u03bc\u03ac\u03b4\u03b1\u03c2...\" data-game=\"rl\">\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"rk-col-hdr\"><span><\/span><span>\u039f\u03bc\u03ac\u03b4\u03b1<\/span><span>\u03a3\u03b7\u03bc\u03b5\u03af\u03b1<\/span><span>Win %<\/span><\/div>\r\n        <div id=\"rk-rows-rl\"><\/div>\r\n      <\/div>\r\n      <div class=\"rk-pager\" id=\"rk-pager-rl\"><\/div>\r\n    <\/div>\r\n\r\n    <div class=\"rk-tab-panel\" id=\"rk-panel-efootball\">\r\n      <div class=\"rk-table-wrap\">\r\n        <div class=\"rk-table-hdr\"><h2 class=\"efootball\">eFOOTBALL<\/h2><\/div>\r\n        <div class=\"rk-search-row\">\r\n          <div class=\"rk-search-wrap\">\r\n            <span class=\"rk-search-icon\">\ud83d\udd0d<\/span>\r\n            <input class=\"rk-search\" type=\"text\" placeholder=\"\u0391\u03bd\u03b1\u03b6\u03ae\u03c4\u03b7\u03c3\u03b7 \u03c0\u03b1\u03af\u03ba\u03c4\u03b7...\" data-game=\"efootball\">\r\n          <\/div>\r\n        <\/div>\r\n        <div class=\"rk-col-hdr\"><span><\/span><span>Participant<\/span><span>\u03a3\u03b7\u03bc\u03b5\u03af\u03b1<\/span><span>Win %<\/span><\/div>\r\n        <div id=\"rk-rows-efootball\"><\/div>\r\n      <\/div>\r\n      <div class=\"rk-pager\" id=\"rk-pager-efootball\"><\/div>\r\n    <\/div>\r\n\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function() {\r\n  var SUPABASE_URL = 'https:\/\/yvzhzxhqbyebblqebxja.supabase.co';\r\n  var SUPABASE_KEY = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6Inl2emh6eGhxYnllYmJscWVieGphIiwicm9sZSI6ImFub24iLCJpYXQiOjE3NzgyNzkzNjUsImV4cCI6MjA5Mzg1NTM2NX0.uhtM7kTsaJhcsD4ZdeggabcMn3wsrtgNLehB3taPhP4';\r\n  var PAGE_DESKTOP = 22;\r\n  var PAGE_MOBILE  = 16;\r\n  var allData = { efootball: [], rl: [], eafc: [] };\r\n  var pages   = { efootball: 1, rl: 1, eafc: 1 };\r\n\r\n  function pageSize() { return window.innerWidth <= 600 ? PAGE_MOBILE : PAGE_DESKTOP; }\r\n\r\n  \/\/ Ranks within these cutoffs count as \"qualified by points\/ranking\"\r\n  function isPointsQualified(game, rank) {\r\n    if (game === 'eafc') return rank <= 16;\r\n    if (game === 'rl' || game === 'efootball') return rank <= 8;\r\n    return false;\r\n  }\r\n\r\n  function boldClass(game, rank) {\r\n    return isPointsQualified(game, rank) ? 'rk-bold' : '';\r\n  }\r\n\r\n  function fmtWR(wr) {\r\n    if (wr === null || wr === undefined || wr === '' || wr === 'null')\r\n      return '<span class=\"rk-wr-na\">\u2014<\/span>';\r\n    var s = String(wr).trim();\r\n    return '<span class=\"rk-wr-val\">' + (s.endsWith('%') ? s : s + '%') + '<\/span>';\r\n  }\r\n\r\n  function parseWR(wr) {\r\n    if (!wr || wr === 'null') return -1;\r\n    return parseFloat(String(wr).replace('%','')) || -1;\r\n  }\r\n\r\n  function renderRows(game, data) {\r\n    var container = document.getElementById('rk-rows-' + game);\r\n    var pager     = document.getElementById('rk-pager-' + game);\r\n    var ps        = pageSize();\r\n    var pg        = pages[game];\r\n\r\n    var qfRows    = data.filter(function(r){ return r[2] === 'QF'; });\r\n    var nonQFRows = data.filter(function(r){ return r[2] !== 'QF'; });\r\n    qfRows.sort(function(a,b){ return parseWR(b[3]) - parseWR(a[3]); });\r\n\r\n    var topRanks = [];\r\n    nonQFRows.forEach(function(r){ if (topRanks.indexOf(r[0]) === -1) topRanks.push(r[0]); });\r\n    topRanks = topRanks.slice(0,3);\r\n\r\n    var qfCount  = qfRows.length;\r\n    var p1nonQF  = Math.max(0, ps - qfCount);\r\n    var totalPages = 1 + Math.ceil(Math.max(0, nonQFRows.length - p1nonQF) \/ ps);\r\n    pg = Math.min(pg, totalPages);\r\n    pages[game] = pg;\r\n\r\n    var isP1     = pg === 1;\r\n    var offset   = isP1 ? 0 : p1nonQF + (pg - 2) * ps;\r\n    var sliceSize= isP1 ? p1nonQF : ps;\r\n    var slice    = nonQFRows.slice(offset, offset + sliceSize);\r\n\r\n    var html = '';\r\n    if (isP1) {\r\n      qfRows.forEach(function(row, idx) {\r\n        html += '<div class=\"rk-row qf-row\">' +\r\n          '<div class=\"rk-num\" style=\"color:#f0c040\">' + (idx+1) + '<\/div>' +\r\n          '<div class=\"rk-name qualified\">' + row[1] + '<\/div>' +\r\n          '<div class=\"rk-pts\"><span class=\"rk-pts-qf\">\u2726 QF<\/span><\/div>' +\r\n          '<div class=\"rk-wr\">' + fmtWR(row[3]) + '<\/div>' +\r\n          '<\/div>';\r\n      });\r\n      if (qfRows.length > 0)\r\n        html += '<div class=\"rk-divider\">Overall Ranking<\/div>';\r\n    }\r\n\r\n    slice.forEach(function(row) {\r\n      var rank = row[0], name = row[1], pts = row[2], wr = row[3];\r\n      var rc = '';\r\n      if (topRanks[0] === rank) rc = 'top1';\r\n      else if (topRanks[1] === rank) rc = 'top2';\r\n      else if (topRanks[2] === rank) rc = 'top3';\r\n\r\n      var rowClasses = 'rk-row';\r\n      if (rc) rowClasses += ' ' + rc;\r\n      if (isPointsQualified(game, rank)) rowClasses += ' pts-qualified';\r\n\r\n      html += '<div class=\"' + rowClasses + '\">' +\r\n        '<div class=\"rk-num ' + boldClass(game, rank) + '\">' + rank + '<\/div>' +\r\n        '<div class=\"rk-name\">' + name + '<\/div>' +\r\n        '<div class=\"rk-pts\"><span class=\"rk-pts-num ' + game + '\">' + pts + '<\/span><\/div>' +\r\n        '<div class=\"rk-wr\">' + fmtWR(wr) + '<\/div>' +\r\n        '<\/div>';\r\n    });\r\n\r\n    container.innerHTML = html;\r\n\r\n    if (totalPages <= 1) { pager.style.display = 'none'; return; }\r\n    pager.style.display = 'flex';\r\n\r\n    var ph = '';\r\n    ph += '<button class=\"rk-pg-btn\" data-game=\"' + game + '\" data-pg=\"prev\" ' + (pg===1?'disabled':'') + '>\u2039<\/button>';\r\n    for (var i = 1; i <= totalPages; i++) {\r\n      ph += '<button class=\"rk-pg-btn' + (i===pg?' active':'') + '\" data-game=\"' + game + '\" data-pg=\"' + i + '\">' + i + '<\/button>';\r\n    }\r\n    ph += '<button class=\"rk-pg-btn\" data-game=\"' + game + '\" data-pg=\"next\" ' + (pg===totalPages?'disabled':'') + '>\u203a<\/button>';\r\n    pager.innerHTML = ph;\r\n\r\n    pager.querySelectorAll('.rk-pg-btn').forEach(function(btn) {\r\n      btn.addEventListener('click', function() {\r\n        var g = btn.getAttribute('data-game');\r\n        var v = btn.getAttribute('data-pg');\r\n        var cur = pages[g];\r\n        var tot = totalPages;\r\n        if (v === 'prev') pages[g] = Math.max(1, cur - 1);\r\n        else if (v === 'next') pages[g] = Math.min(tot, cur + 1);\r\n        else pages[g] = parseInt(v);\r\n        renderRows(g, allData[g]);\r\n        var panel = document.getElementById('rk-panel-' + g);\r\n        if (panel) panel.scrollIntoView({ behavior: 'smooth', block: 'start' });\r\n      });\r\n    });\r\n  }\r\n\r\n  function filterTable(game, query) {\r\n    var q = query.toLowerCase().trim();\r\n    var filtered = q ? allData[game].filter(function(r){ return r[1].toLowerCase().includes(q); }) : allData[game];\r\n    pages[game] = 1;\r\n    renderRows(game, filtered);\r\n  }\r\n\r\n  document.querySelectorAll('#rocRankWrap .rk-tab-btn').forEach(function(btn) {\r\n    btn.addEventListener('click', function() {\r\n      var game = btn.getAttribute('data-game');\r\n      document.querySelectorAll('#rocRankWrap .rk-tab-panel').forEach(function(p){ p.classList.remove('active'); });\r\n      document.querySelectorAll('#rocRankWrap .rk-tab-btn').forEach(function(b){ b.classList.remove('active'); });\r\n      document.getElementById('rk-panel-' + game).classList.add('active');\r\n      btn.classList.add('active');\r\n    });\r\n  });\r\n\r\n  document.querySelectorAll('#rocRankWrap .rk-search').forEach(function(input) {\r\n    input.addEventListener('input', function() {\r\n      filterTable(input.getAttribute('data-game'), input.value);\r\n    });\r\n  });\r\n\r\n  async function loadGame(game) {\r\n    var container = document.getElementById('rk-rows-' + game);\r\n    container.innerHTML = '<div style=\"text-align:center;padding:30px;color:rgba(255,255,255,0.2);font-size:0.85rem;letter-spacing:1.5px;text-transform:uppercase\">\u03a6\u03cc\u03c1\u03c4\u03c9\u03c3\u03b7...<\/div>';\r\n    try {\r\n      var res = await fetch(SUPABASE_URL + '\/rest\/v1\/rankings?game=eq.' + game + '&order=id.asc&select=rank_pos,player_name,points,win_rate', {\r\n        headers: { 'apikey': SUPABASE_KEY, 'Authorization': 'Bearer ' + SUPABASE_KEY }\r\n      });\r\n      var rows = await res.json();\r\n      if (!rows || rows.length === 0) {\r\n        container.innerHTML = '<div style=\"text-align:center;padding:30px;color:rgba(255,255,255,0.2);font-size:0.85rem\">\u0394\u03b5\u03bd \u03b2\u03c1\u03ad\u03b8\u03b7\u03ba\u03b1\u03bd \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03b1.<\/div>';\r\n        return;\r\n      }\r\n      allData[game] = rows.map(function(r) {\r\n        return [\r\n          isNaN(Number(r.rank_pos)) ? r.rank_pos : Number(r.rank_pos),\r\n          r.player_name,\r\n          isNaN(Number(r.points)) ? r.points : Number(r.points),\r\n          r.win_rate ?? null\r\n        ];\r\n      });\r\n      renderRows(game, allData[game]);\r\n    } catch(e) {\r\n      container.innerHTML = '<div style=\"text-align:center;padding:20px;color:#ff6b6b;font-size:0.82rem\">\u26a0\ufe0f \u0391\u03b4\u03c5\u03bd\u03b1\u03bc\u03af\u03b1 \u03c6\u03cc\u03c1\u03c4\u03c9\u03c3\u03b7\u03c2. \u0391\u03bd\u03b1\u03bd\u03ad\u03c9\u03c3\u03b5 \u03c4\u03b7 \u03c3\u03b5\u03bb\u03af\u03b4\u03b1.<\/div>';\r\n    }\r\n  }\r\n\r\n  ['efootball','rl','eafc'].forEach(loadGame);\r\n})();\r\n<\/script>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t<div class=\"elementor-column elementor-col-50 elementor-top-column elementor-element elementor-element-dcd03cb\" data-id=\"dcd03cb\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-bc05c47 elementor-widget__width-initial elementor-widget elementor-widget-html\" data-id=\"bc05c47\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<!DOCTYPE html>\r\n<html lang=\"el\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Barlow:wght@400;600;700&family=Bebas+Neue&display=swap\" rel=\"stylesheet\">\r\n<\/head>\r\n<body data-rsssl=1 style=\"background:#0a0f1a;margin:0;padding:0;\">\r\n<style>\r\n  :root {\r\n    --fmt-bg-card: #1a2332;\r\n    --fmt-border: rgba(255,255,255,0.15);\r\n    --fmt-border-soft: rgba(255,255,255,0.04);\r\n    --fmt-gold: #f0c040;\r\n    --fmt-accent-ef: #00d4ff;\r\n    --fmt-accent-rl: #ff6b35;\r\n    --fmt-accent-ea: #4ade80;\r\n    --fmt-text: rgba(255,255,255,0.85);\r\n    --fmt-muted: rgba(255,255,255,0.28);\r\n  }\r\n  #rocFmtWrap * { box-sizing: border-box; }\r\n  #rocFmtWrap {\r\n    font-family: 'Barlow', sans-serif;\r\n    color: var(--fmt-text);\r\n    width: 100%; max-width: 960px;\r\n    margin: 0 auto; padding: 40px 16px 60px;\r\n  }\r\n  #rocFmtWrap .fmt-tab-panel { display: none; width: 100%; }\r\n  #rocFmtWrap .fmt-tab-panel.active { display: block; animation: fmtFadeIn 0.25s ease; }\r\n  @keyframes fmtFadeIn { from{opacity:0;transform:translateY(6px)} to{opacity:1;transform:translateY(0)} }\r\n\r\n  \/* TABS *\/\r\n  #rocFmtWrap .fmt-tab-nav { display:flex; gap:6px; margin-bottom:24px; justify-content:center; flex-wrap:nowrap; }\r\n  #rocFmtWrap .fmt-tab-btn {\r\n    font-family:'Barlow',sans-serif; font-size:11px; font-weight:700;\r\n    letter-spacing:1px; text-transform:uppercase;\r\n    color:rgba(255,255,255,0.45); background:rgba(255,255,255,0.04);\r\n    border:0.5px solid rgba(255,255,255,0.10);\r\n    padding:8px 18px; border-radius:20px; cursor:pointer;\r\n    transition:all 0.18s; display:flex; align-items:center; gap:6px;\r\n    white-space:nowrap; flex-shrink:0;\r\n  }\r\n  #rocFmtWrap .fmt-tab-btn:hover { color:rgba(255,255,255,0.75); background:rgba(255,255,255,0.08); border-color:rgba(255,255,255,0.2); }\r\n  #rocFmtWrap .fmt-tab-btn.active[data-game=\"eafc\"]      { background:rgba(74,222,128,0.08); border-color:rgba(74,222,128,0.4); color:var(--fmt-accent-ea); }\r\n  #rocFmtWrap .fmt-tab-btn.active[data-game=\"rl\"]        { background:rgba(255,107,53,0.08); border-color:rgba(255,107,53,0.4); color:var(--fmt-accent-rl); }\r\n  #rocFmtWrap .fmt-tab-btn.active[data-game=\"efootball\"] { background:rgba(0,212,255,0.08);  border-color:rgba(0,212,255,0.4);  color:var(--fmt-accent-ef); }\r\n  #rocFmtWrap .fmt-tab-dot { width:6px; height:6px; border-radius:50%; flex-shrink:0; }\r\n  #rocFmtWrap .fmt-tab-btn[data-game=\"eafc\"]      .fmt-tab-dot { background:var(--fmt-accent-ea); }\r\n  #rocFmtWrap .fmt-tab-btn[data-game=\"rl\"]        .fmt-tab-dot { background:var(--fmt-accent-rl); }\r\n  #rocFmtWrap .fmt-tab-btn[data-game=\"efootball\"] .fmt-tab-dot { background:var(--fmt-accent-ef); }\r\n  @media(max-width:400px) {\r\n    #rocFmtWrap .fmt-tab-btn { padding:7px 12px; font-size:10px; gap:5px; }\r\n    #rocFmtWrap .fmt-tab-dot { width:5px; height:5px; }\r\n  }\r\n\r\n  \/* CARD *\/\r\n  #rocFmtWrap .fmt-card {\r\n    background:var(--fmt-bg-card); border:1px solid var(--fmt-border);\r\n    border-radius:12px; overflow:hidden; width:100%;\r\n  }\r\n  #rocFmtWrap .fmt-card-hdr {\r\n    padding:14px 20px; border-bottom:0.5px solid var(--fmt-border);\r\n    background:rgba(0,0,0,0.15); display:flex; align-items:center; gap:12px;\r\n  }\r\n  #rocFmtWrap .fmt-card-hdr h2 { font-family:'Bebas Neue',sans-serif; font-size:1.3rem; font-weight:400; letter-spacing:2px; text-transform:uppercase; margin:0; padding:0; }\r\n  #rocFmtWrap .fmt-card-hdr h2.eafc      { color:var(--fmt-accent-ea); }\r\n  #rocFmtWrap .fmt-card-hdr h2.rl        { color:var(--fmt-accent-rl); }\r\n  #rocFmtWrap .fmt-card-hdr h2.efootball { color:var(--fmt-accent-ef); }\r\n  #rocFmtWrap .fmt-card-hdr::after { content:''; display:block; height:2px; width:32px; border-radius:1px; background:var(--fmt-accent); margin-left:auto; opacity:0.6; }\r\n  #rocFmtWrap .panel-eafc .fmt-card-hdr { --fmt-accent:var(--fmt-accent-ea); }\r\n  #rocFmtWrap .panel-rl   .fmt-card-hdr { --fmt-accent:var(--fmt-accent-rl); }\r\n  #rocFmtWrap .panel-ef   .fmt-card-hdr { --fmt-accent:var(--fmt-accent-ef); }\r\n\r\n  #rocFmtWrap .fmt-body { padding:20px; display:flex; flex-direction:column; gap:20px; }\r\n\r\n  \/* SEC LABEL *\/\r\n  #rocFmtWrap .sec-label {\r\n    font-size:0.63rem; letter-spacing:3px; text-transform:uppercase;\r\n    color:var(--fmt-accent); font-weight:700;\r\n    display:flex; align-items:center; gap:10px; margin-bottom:8px; opacity:0.75;\r\n  }\r\n  #rocFmtWrap .sec-label::after { content:''; flex:1; height:1px; background:var(--fmt-border); }\r\n\r\n  \/* RANKING *\/\r\n  #rocFmtWrap .rank-rows { display:flex; flex-direction:column; gap:4px; }\r\n  #rocFmtWrap .rank-row { display:flex; align-items:center; justify-content:space-between; padding:9px 12px; background:rgba(255,255,255,0.02); border:0.5px solid var(--fmt-border-soft); border-radius:2px; font-size:0.88rem; }\r\n  #rocFmtWrap .rank-pos { color:var(--fmt-muted); font-size:0.72rem; letter-spacing:1.5px; text-transform:uppercase; font-weight:700; }\r\n  #rocFmtWrap .rank-val { font-weight:600; color:var(--fmt-text); }\r\n  #rocFmtWrap .rank-row.rank-top { background:rgba(240,192,64,0.04); border-color:rgba(240,192,64,0.18); border-left:2px solid var(--fmt-gold); }\r\n  #rocFmtWrap .rank-row.rank-top .rank-pos { color:var(--fmt-gold); }\r\n  #rocFmtWrap .badge-direct { display:inline-block; font-family:'Bebas Neue',sans-serif; font-size:0.75rem; letter-spacing:2px; padding:3px 10px; border-radius:2px; background:rgba(74,222,128,0.08); color:var(--fmt-accent-ea); border:0.5px solid rgba(74,222,128,0.3); }\r\n  #rocFmtWrap .bonus-row { display:flex; justify-content:space-between; align-items:center; padding:9px 12px; background:rgba(255,255,255,0.02); border:0.5px solid var(--fmt-border-soft); border-radius:2px; font-size:0.88rem; margin-bottom:4px; }\r\n  #rocFmtWrap .bonus-row:last-child { margin-bottom:0; }\r\n  #rocFmtWrap .bonus-key { color:var(--fmt-muted); }\r\n  #rocFmtWrap .bonus-val { font-weight:700; color:var(--fmt-text); }\r\n\r\n  \/* QUALIFY *\/\r\n  #rocFmtWrap .qualify-row { display:flex; align-items:center; padding:9px 12px; background:rgba(255,255,255,0.02); border:0.5px solid var(--fmt-border-soft); border-radius:2px; font-size:0.88rem; margin-bottom:4px; color:var(--fmt-muted); }\r\n  #rocFmtWrap .qualify-row:last-child { margin-bottom:0; }\r\n  #rocFmtWrap .q-badge { margin-left:auto; flex-shrink:0; font-family:'Bebas Neue',sans-serif; font-size:0.7rem; letter-spacing:2px; padding:3px 9px; border-radius:2px; }\r\n  #rocFmtWrap .q-win  { background:rgba(74,222,128,0.08); color:var(--fmt-accent-ea); border:0.5px solid rgba(74,222,128,0.3); }\r\n  #rocFmtWrap .q-rank { background:rgba(0,212,255,0.08);  color:var(--fmt-accent-ef); border:0.5px solid rgba(0,212,255,0.3); }\r\n\r\n  \/* DAYS GRID *\/\r\n  #rocFmtWrap .days-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; align-items:start; }\r\n  @media(max-width:600px) { #rocFmtWrap .days-grid { grid-template-columns:1fr; } }\r\n\r\n  #rocFmtWrap .day-card { background:rgba(0,0,0,0.2); border:0.5px solid var(--fmt-border); border-radius:4px; overflow:hidden; display:flex; flex-direction:column; }\r\n  #rocFmtWrap .day-hdr { padding:8px 10px; border-bottom:0.5px solid var(--fmt-border); display:flex; align-items:center; gap:6px; background:rgba(0,0,0,0.15); min-width:0; overflow:hidden; }\r\n  #rocFmtWrap .day-badge { font-family:'Bebas Neue',sans-serif; font-size:0.65rem; letter-spacing:2px; padding:2px 8px; border-radius:2px; white-space:nowrap; flex-shrink:0; }\r\n  #rocFmtWrap .day1 .day-badge { background:rgba(240,192,64,0.1); color:var(--fmt-gold); border:0.5px solid rgba(240,192,64,0.25); }\r\n  #rocFmtWrap .day2 .day-badge { background:rgba(255,107,53,0.1); color:var(--fmt-accent-rl); border:0.5px solid rgba(255,107,53,0.25); }\r\n  #rocFmtWrap .day-title { font-size:0.72rem; font-weight:700; color:rgba(255,255,255,0.55); letter-spacing:0.5px; text-transform:uppercase; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; }\r\n  #rocFmtWrap .day-body { padding:10px 12px; display:flex; flex-direction:column; gap:5px; }\r\n\r\n  \/* INFO ROWS *\/\r\n  #rocFmtWrap .info-row { display:flex; flex-direction:column; padding:6px 0; border-bottom:0.5px solid var(--fmt-border-soft); font-size:0.78rem; gap:2px; }\r\n  #rocFmtWrap .info-row:last-of-type { border-bottom:none; }\r\n  #rocFmtWrap .i-key { color:var(--fmt-muted); font-size:0.70rem; letter-spacing:0.3px; }\r\n  #rocFmtWrap .i-val { font-weight:600; color:var(--fmt-text); }\r\n\r\n  \/* PILLS *\/\r\n  #rocFmtWrap .pill { font-family:'Bebas Neue',sans-serif; font-size:0.68rem; letter-spacing:1.5px; padding:2px 7px; border-radius:2px; display:inline-block; white-space:nowrap; }\r\n  #rocFmtWrap .pill-bo5 { background:rgba(255,107,53,0.08);  color:var(--fmt-accent-rl); border:0.5px solid rgba(255,107,53,0.3); }\r\n  #rocFmtWrap .pill-agg { background:rgba(0,212,255,0.08);   color:var(--fmt-accent-ef); border:0.5px solid rgba(0,212,255,0.3); }\r\n  #rocFmtWrap .pill-gg  { background:rgba(240,192,64,0.08);  color:var(--fmt-gold);      border:0.5px solid rgba(240,192,64,0.3); }\r\n\r\n  \/* BRACKET *\/\r\n  #rocFmtWrap .bracket { display:flex; flex-direction:column; gap:4px; margin-top:8px; }\r\n  #rocFmtWrap .bm { background:rgba(0,0,0,0.3); border:0.5px solid var(--fmt-border); border-radius:2px; padding:5px 8px; font-size:0.72rem; color:rgba(255,255,255,0.35); text-align:center; }\r\n  #rocFmtWrap .bm-final { background:rgba(240,192,64,0.08); color:var(--fmt-gold); border-color:rgba(240,192,64,0.3); font-weight:700; }\r\n  #rocFmtWrap .b-arrow { text-align:center; color:var(--fmt-muted); font-size:0.75rem; }\r\n  #rocFmtWrap .seed-lbl { font-size:0.60rem; letter-spacing:2px; text-transform:uppercase; color:var(--fmt-muted); font-weight:700; margin-bottom:2px; }\r\n\r\n  \/* PRIZES *\/\r\n  #rocFmtWrap .prizes { display:flex; flex-direction:column; gap:6px; }\r\n  #rocFmtWrap .prize-note { font-size:0.8rem; color:var(--fmt-muted); padding:8px 12px; background:rgba(255,255,255,0.02); border:0.5px solid var(--fmt-border-soft); border-radius:2px; }\r\n  #rocFmtWrap .prize-row { display:flex; align-items:center; justify-content:space-between; padding:11px 14px; background:rgba(255,255,255,0.02); border:0.5px solid var(--fmt-border-soft); border-radius:2px; }\r\n  #rocFmtWrap .prize-row.p1 { background:rgba(240,192,64,0.05); border-color:rgba(240,192,64,0.2); border-left:2px solid var(--fmt-gold); }\r\n  #rocFmtWrap .prize-pos { font-size:0.82rem; font-weight:700; text-transform:uppercase; letter-spacing:1px; color:var(--fmt-muted); }\r\n  #rocFmtWrap .prize-row.p1 .prize-pos { color:var(--fmt-gold); }\r\n  #rocFmtWrap .prize-amt { font-family:'Bebas Neue',sans-serif; font-size:1.5rem; letter-spacing:2px; color:var(--fmt-text); }\r\n  #rocFmtWrap .prize-row.p1 .prize-amt { color:var(--fmt-gold); font-size:2rem; }\r\n\r\n  \/* TB BUTTON *\/\r\n  #rocFmtWrap .tb-btn {\r\n    display:inline-flex; align-items:center; gap:5px;\r\n    font-family:'Barlow',sans-serif; font-size:0.70rem; font-weight:700;\r\n    letter-spacing:1px; text-transform:uppercase;\r\n    color:rgba(255,255,255,0.4); background:rgba(255,255,255,0.04);\r\n    border:0.5px solid rgba(255,255,255,0.12);\r\n    padding:5px 11px; border-radius:20px; cursor:pointer;\r\n    margin-top:8px; transition:all 0.18s; width:fit-content;\r\n  }\r\n  #rocFmtWrap .tb-btn:hover { color:rgba(255,255,255,0.75); background:rgba(255,255,255,0.09); border-color:rgba(255,255,255,0.28); }\r\n\r\n  \/* POPUP \u2014 appended to body via JS, outside Elementor *\/\r\n  #rocTbOverlay {\r\n    display:none; position:fixed; inset:0; z-index:999999;\r\n    background:rgba(0,0,0,0.7); backdrop-filter:blur(5px);\r\n    align-items:center; justify-content:center; padding:20px;\r\n  }\r\n  #rocTbOverlay.open { display:flex; animation:fmtFadeIn 0.2s ease; }\r\n  #rocTbModal {\r\n    background:#1a2332; border:1px solid rgba(255,255,255,0.15);\r\n    border-radius:12px; width:100%; max-width:360px;\r\n    overflow:hidden; box-shadow:0 32px 80px rgba(0,0,0,0.7);\r\n  }\r\n  #rocTbModal .tb-mhdr {\r\n    padding:13px 16px; border-bottom:0.5px solid rgba(255,255,255,0.07);\r\n    background:rgba(0,0,0,0.25); display:flex; align-items:center; justify-content:space-between;\r\n  }\r\n  #rocTbModal .tb-mtitle { font-family:'Barlow',sans-serif; font-size:0.62rem; letter-spacing:3px; text-transform:uppercase; color:rgba(255,255,255,0.35); font-weight:700; }\r\n  #rocTbModal .tb-mclose {\r\n    width:26px; height:26px; border-radius:50%; border:0.5px solid rgba(255,255,255,0.1);\r\n    background:rgba(255,255,255,0.05); color:rgba(255,255,255,0.5);\r\n    display:flex; align-items:center; justify-content:center;\r\n    cursor:pointer; font-size:14px; transition:all 0.15s; flex-shrink:0;\r\n    font-family:sans-serif; line-height:1;\r\n  }\r\n  #rocTbModal .tb-mclose:hover { background:rgba(255,255,255,0.14); color:#fff; }\r\n  #rocTbModal .tb-mbody { padding:14px 16px; display:flex; flex-direction:column; }\r\n  #rocTbModal .tb-mitem { display:flex; gap:10px; padding:8px 10px; border-bottom:0.5px solid rgba(255,255,255,0.04); font-size:0.82rem; color:rgba(255,255,255,0.65); line-height:1.4; font-family:'Barlow',sans-serif; }\r\n  #rocTbModal .tb-mitem:last-child { border-bottom:none; }\r\n  #rocTbModal .tb-mn { color:rgba(255,255,255,0.28); flex-shrink:0; min-width:18px; font-weight:700; font-size:0.75rem; }\r\n\r\n  @media(max-width:600px) {\r\n    #rocFmtWrap .fmt-body { padding:14px 12px; gap:16px; }\r\n    #rocFmtWrap .fmt-card-hdr { padding:12px 14px; }\r\n  }\r\n<\/style>\r\n\r\n<div id=\"rocFmtWrap\">\r\n\r\n  <div class=\"fmt-tab-nav\">\r\n    <button class=\"fmt-tab-btn active\" data-game=\"eafc\"><span class=\"fmt-tab-dot\"><\/span> EA FC 26<\/button>\r\n    <button class=\"fmt-tab-btn\" data-game=\"rl\"><span class=\"fmt-tab-dot\"><\/span> Rocket League<\/button>\r\n    <button class=\"fmt-tab-btn\" data-game=\"efootball\"><span class=\"fmt-tab-dot\"><\/span> eFOOTBALL<\/button>\r\n  <\/div>\r\n\r\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 EA FC 26 \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\r\n  <div class=\"fmt-tab-panel active panel-eafc\" id=\"fmt-eafc\">\r\n    <div class=\"fmt-card\">\r\n      <div class=\"fmt-card-hdr\"><h2 class=\"eafc\">EA FC 26<\/h2><\/div>\r\n      <div class=\"fmt-body\">\r\n        <div>\r\n          <div class=\"sec-label\" style=\"--fmt-accent:var(--fmt-accent-ea)\">Prize Pool<\/div>\r\n          <div class=\"prizes\">\r\n            <div class=\"prize-note\">\u2605 \u20ac50 bonus for each qualifying tournament winner<\/div>\r\n            <div class=\"prize-row p1\"><span class=\"prize-pos\">\u2605 1st Place \u2014 Finals<\/span><span class=\"prize-amt\">500 \u20ac<\/span><\/div>\r\n            <div class=\"prize-row\"><span class=\"prize-pos\">2nd Place \u2014 Finals<\/span><span class=\"prize-amt\">200 \u20ac<\/span><\/div>\r\n            <div class=\"prize-row\"><span class=\"prize-pos\">3rd Place \u2014 Finals<\/span><span class=\"prize-amt\">100 \u20ac<\/span><\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div>\r\n          <div class=\"sec-label\" style=\"--fmt-accent:var(--fmt-accent-ea)\">Finals Qualification<\/div>\r\n          <div class=\"qualify-row\">8 players \u2014 Tournament Wins <span class=\"q-badge q-win\">\u039d\u0399\u039a\u0395\u03a3<\/span><\/div>\r\n          <div class=\"qualify-row\">8 players \u2014 Ranking <span class=\"q-badge q-rank\">Ranking<\/span><\/div>\r\n        <\/div>\r\n        <div>\r\n          <div class=\"sec-label\" style=\"--fmt-accent:var(--fmt-accent-ea)\">Ranking System<\/div>\r\n          <div class=\"rank-rows\">\r\n            <div class=\"rank-row rank-top\"><span class=\"rank-pos\">1st Place<\/span><span class=\"rank-val\"><span class=\"badge-direct\">Direct Qualifier<\/span><\/span><\/div>\r\n            <div class=\"rank-row\"><span class=\"rank-pos\">2nd Place<\/span><span class=\"rank-val\">200 pts<\/span><\/div>\r\n            <div class=\"rank-row\"><span class=\"rank-pos\">3rd Place<\/span><span class=\"rank-val\">150 pts<\/span><\/div>\r\n            <div class=\"rank-row\"><span class=\"rank-pos\">4th Place<\/span><span class=\"rank-val\">100 pts<\/span><\/div>\r\n            <div class=\"rank-row\"><span class=\"rank-pos\">5th Place<\/span><span class=\"rank-val\">70 pts<\/span><\/div>\r\n          <\/div>\r\n          <div style=\"height:8px\"><\/div>\r\n          <div class=\"bonus-row\"><span class=\"bonus-key\">Tournament Participation<\/span><span class=\"bonus-val\">+30 pts<\/span><\/div>\r\n          <div class=\"bonus-row\"><span class=\"bonus-key\">Per Win<\/span><span class=\"bonus-val\">+10 pts<\/span><\/div>\r\n        <\/div>\r\n        <div>\r\n          <div class=\"sec-label\" style=\"--fmt-accent:var(--fmt-accent-ea)\">Final Stage Format<\/div>\r\n          <div class=\"days-grid\">\r\n            <div class=\"day-card day1\">\r\n              <div class=\"day-hdr\"><span class=\"day-badge\">Day 1<\/span><span class=\"day-title\">Group Stage<\/span><\/div>\r\n              <div class=\"day-body\">\r\n                <div class=\"info-row\"><span class=\"i-key\">Structure<\/span><span class=\"i-val\">4 Groups \u00d7 4<\/span><\/div>\r\n                <div class=\"info-row\"><span class=\"i-key\">Format<\/span><span class=\"i-val\"><span class=\"pill pill-agg\">BO2 \u00b7 Agg<\/span><\/span><\/div>\r\n                <div class=\"info-row\"><span class=\"i-key\">\u03a3\u03b7\u03bc\u03b5\u03af\u03b1<\/span><span class=\"i-val\">W=3 \u00b7 D=1 \u00b7 L=0<\/span><\/div>\r\n                <div class=\"info-row\"><span class=\"i-key\">Advance<\/span><span class=\"i-val\">Top 2 \/ group<\/span><\/div>\r\n                <button class=\"tb-btn\" data-open-tb>\r\n                  <svg width=\"10\" height=\"10\" viewbox=\"0 0 10 10\" fill=\"none\" style=\"flex-shrink:0\"><circle cx=\"5\" cy=\"5\" r=\"4.5\" stroke=\"currentColor\" stroke-opacity=\"0.6\"\/><text x=\"5\" y=\"7.5\" text-anchor=\"middle\" font-size=\"6.5\" fill=\"currentColor\" font-family=\"sans-serif\" font-weight=\"700\">i<\/text><\/svg>\r\n                  Tiebreaker Criteria\r\n                <\/button>\r\n              <\/div>\r\n            <\/div>\r\n            <div class=\"day-card day2\">\r\n              <div class=\"day-hdr\"><span class=\"day-badge\">Day 2<\/span><span class=\"day-title\">Knockout<\/span><\/div>\r\n              <div class=\"day-body\">\r\n                <div class=\"info-row\"><span class=\"i-key\">Format<\/span><span class=\"i-val\"><span class=\"pill pill-agg\">BO2 \u00b7 Agg<\/span><\/span><\/div>\r\n                <div class=\"info-row\"><span class=\"i-key\">Tiebreak<\/span><span class=\"i-val\"><span class=\"pill pill-gg\">Golden Goal<\/span><\/span><\/div>\r\n                <div class=\"bracket\">\r\n                  <div class=\"seed-lbl\">Seeding<\/div>\r\n                  <div class=\"bm\">1A vs 2B \u00b7 1C vs 2D<\/div>\r\n                  <div class=\"bm\">1B vs 2A \u00b7 1D vs 2C<\/div>\r\n                  <div class=\"b-arrow\">\u2193<\/div>\r\n                  <div class=\"bm bm-final\">\u2605 Grand Final<\/div>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 ROCKET LEAGUE \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\r\n  <div class=\"fmt-tab-panel panel-rl\" id=\"fmt-rl\">\r\n    <div class=\"fmt-card\">\r\n      <div class=\"fmt-card-hdr\"><h2 class=\"rl\">Rocket League<\/h2><\/div>\r\n      <div class=\"fmt-body\">\r\n        <div>\r\n          <div class=\"sec-label\" style=\"--fmt-accent:var(--fmt-accent-rl)\">Prize Pool<\/div>\r\n          <div class=\"prizes\">\r\n            <div class=\"prize-note\">\u2605 \u20ac50 bonus for each qualifying tournament winner<\/div>\r\n            <div class=\"prize-row p1\"><span class=\"prize-pos\">\u2605 1st Place \u2014 Finals<\/span><span class=\"prize-amt\">250 \u20ac<\/span><\/div>\r\n            <div class=\"prize-row\"><span class=\"prize-pos\">2nd Place \u2014 Finals<\/span><span class=\"prize-amt\">100 \u20ac<\/span><\/div>\r\n            <div class=\"prize-row\"><span class=\"prize-pos\">3rd Place \u2014 Finals<\/span><span class=\"prize-amt\">50 \u20ac<\/span><\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div>\r\n          <div class=\"sec-label\" style=\"--fmt-accent:var(--fmt-accent-rl)\">Finals Qualification<\/div>\r\n          <div class=\"qualify-row\">4 teams \u2014 Tournament Wins <span class=\"q-badge q-win\">\u039d\u0399\u039a\u0395\u03a3<\/span><\/div>\r\n          <div class=\"qualify-row\">4 teams \u2014 Ranking <span class=\"q-badge q-rank\">Ranking<\/span><\/div>\r\n        <\/div>\r\n        <div>\r\n          <div class=\"sec-label\" style=\"--fmt-accent:var(--fmt-accent-rl)\">Ranking System<\/div>\r\n          <div class=\"rank-rows\">\r\n            <div class=\"rank-row rank-top\"><span class=\"rank-pos\">1st Place<\/span><span class=\"rank-val\"><span class=\"badge-direct\">Direct Qualifier<\/span><\/span><\/div>\r\n            <div class=\"rank-row\"><span class=\"rank-pos\">2nd Place<\/span><span class=\"rank-val\">200 pts<\/span><\/div>\r\n            <div class=\"rank-row\"><span class=\"rank-pos\">3rd Place<\/span><span class=\"rank-val\">150 pts<\/span><\/div>\r\n            <div class=\"rank-row\"><span class=\"rank-pos\">4th Place<\/span><span class=\"rank-val\">100 pts<\/span><\/div>\r\n            <div class=\"rank-row\"><span class=\"rank-pos\">5th Place<\/span><span class=\"rank-val\">70 pts<\/span><\/div>\r\n          <\/div>\r\n          <div style=\"height:8px\"><\/div>\r\n          <div class=\"bonus-row\"><span class=\"bonus-key\">Tournament Participation<\/span><span class=\"bonus-val\">+30 pts<\/span><\/div>\r\n          <div class=\"bonus-row\"><span class=\"bonus-key\">Per Win<\/span><span class=\"bonus-val\">+10 pts<\/span><\/div>\r\n        <\/div>\r\n        <div>\r\n          <div class=\"sec-label\" style=\"--fmt-accent:var(--fmt-accent-rl)\">Final Stage Format<\/div>\r\n          <div class=\"days-grid\">\r\n            <div class=\"day-card day1\">\r\n              <div class=\"day-hdr\"><span class=\"day-badge\">Day 1<\/span><span class=\"day-title\">Group Stage<\/span><\/div>\r\n              <div class=\"day-body\">\r\n                <div class=\"info-row\"><span class=\"i-key\">Format<\/span><span class=\"i-val\"><span class=\"pill pill-agg\">BO2 \u00b7 Agg<\/span><\/span><\/div>\r\n                <div class=\"info-row\"><span class=\"i-key\">\u03a3\u03b7\u03bc\u03b5\u03af\u03b1<\/span><span class=\"i-val\">W=3 \u00b7 D=1 \u00b7 L=0<\/span><\/div>\r\n                <div class=\"info-row\"><span class=\"i-key\">Advance<\/span><span class=\"i-val\">Top 2 \/ group<\/span><\/div>\r\n                <button class=\"tb-btn\" data-open-tb>\r\n                  <svg width=\"10\" height=\"10\" viewbox=\"0 0 10 10\" fill=\"none\" style=\"flex-shrink:0\"><circle cx=\"5\" cy=\"5\" r=\"4.5\" stroke=\"currentColor\" stroke-opacity=\"0.6\"\/><text x=\"5\" y=\"7.5\" text-anchor=\"middle\" font-size=\"6.5\" fill=\"currentColor\" font-family=\"sans-serif\" font-weight=\"700\">i<\/text><\/svg>\r\n                  Tiebreaker Criteria\r\n                <\/button>\r\n              <\/div>\r\n            <\/div>\r\n            <div class=\"day-card day2\">\r\n              <div class=\"day-hdr\"><span class=\"day-badge\">Day 2<\/span><span class=\"day-title\">Knockout<\/span><\/div>\r\n              <div class=\"day-body\">\r\n                <div class=\"info-row\"><span class=\"i-key\">Format<\/span><span class=\"i-val\"><span class=\"pill pill-bo5\">Best of 5<\/span><\/span><\/div>\r\n                <div class=\"bracket\">\r\n                  <div class=\"seed-lbl\">Seeding<\/div>\r\n                  <div class=\"bm\">1A vs 2B \u00b7 1B vs 2A<\/div>\r\n                  <div class=\"b-arrow\">\u2193<\/div>\r\n                  <div class=\"bm bm-final\">\u2605 Grand Final<\/div>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 eFOOTBALL \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\r\n  <div class=\"fmt-tab-panel panel-ef\" id=\"fmt-efootball\">\r\n    <div class=\"fmt-card\">\r\n      <div class=\"fmt-card-hdr\"><h2 class=\"efootball\">eFOOTBALL<\/h2><\/div>\r\n      <div class=\"fmt-body\">\r\n        <div>\r\n          <div class=\"sec-label\" style=\"--fmt-accent:var(--fmt-accent-ef)\">Prize Pool<\/div>\r\n          <div class=\"prizes\">\r\n            <div class=\"prize-note\">\u2605 \u20ac50 bonus for each qualifying tournament winner<\/div>\r\n            <div class=\"prize-row p1\"><span class=\"prize-pos\">\u2605 1st Place \u2014 Finals<\/span><span class=\"prize-amt\">250 \u20ac<\/span><\/div>\r\n            <div class=\"prize-row\"><span class=\"prize-pos\">2nd Place \u2014 Finals<\/span><span class=\"prize-amt\">100 \u20ac<\/span><\/div>\r\n            <div class=\"prize-row\"><span class=\"prize-pos\">3rd Place \u2014 Finals<\/span><span class=\"prize-amt\">50 \u20ac<\/span><\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <div>\r\n          <div class=\"sec-label\" style=\"--fmt-accent:var(--fmt-accent-ef)\">Finals Qualification<\/div>\r\n          <div class=\"qualify-row\">4 players \u2014 Tournament Wins <span class=\"q-badge q-win\">\u039d\u0399\u039a\u0395\u03a3<\/span><\/div>\r\n          <div class=\"qualify-row\">4 players \u2014 Ranking <span class=\"q-badge q-rank\">Ranking<\/span><\/div>\r\n        <\/div>\r\n        <div>\r\n          <div class=\"sec-label\" style=\"--fmt-accent:var(--fmt-accent-ef)\">Ranking System<\/div>\r\n          <div class=\"rank-rows\">\r\n            <div class=\"rank-row rank-top\"><span class=\"rank-pos\">1st Place<\/span><span class=\"rank-val\"><span class=\"badge-direct\">Direct Qualifier<\/span><\/span><\/div>\r\n            <div class=\"rank-row\"><span class=\"rank-pos\">2nd Place<\/span><span class=\"rank-val\">200 pts<\/span><\/div>\r\n            <div class=\"rank-row\"><span class=\"rank-pos\">3rd Place<\/span><span class=\"rank-val\">150 pts<\/span><\/div>\r\n            <div class=\"rank-row\"><span class=\"rank-pos\">4th Place<\/span><span class=\"rank-val\">100 pts<\/span><\/div>\r\n            <div class=\"rank-row\"><span class=\"rank-pos\">5th Place<\/span><span class=\"rank-val\">70 pts<\/span><\/div>\r\n          <\/div>\r\n          <div style=\"height:8px\"><\/div>\r\n          <div class=\"bonus-row\"><span class=\"bonus-key\">Tournament Participation<\/span><span class=\"bonus-val\">+30 pts<\/span><\/div>\r\n          <div class=\"bonus-row\"><span class=\"bonus-key\">Per Win<\/span><span class=\"bonus-val\">+10 pts<\/span><\/div>\r\n        <\/div>\r\n        <div>\r\n          <div class=\"sec-label\" style=\"--fmt-accent:var(--fmt-accent-ef)\">Final Stage Format<\/div>\r\n          <div class=\"days-grid\">\r\n            <div class=\"day-card day1\">\r\n              <div class=\"day-hdr\"><span class=\"day-badge\">Day 1<\/span><span class=\"day-title\">Group Stage<\/span><\/div>\r\n              <div class=\"day-body\">\r\n                <div class=\"info-row\"><span class=\"i-key\">Structure<\/span><span class=\"i-val\">2 Groups \u00d7 4<\/span><\/div>\r\n                <div class=\"info-row\"><span class=\"i-key\">Format<\/span><span class=\"i-val\"><span class=\"pill pill-agg\">BO2 \u00b7 Agg<\/span><\/span><\/div>\r\n                <div class=\"info-row\"><span class=\"i-key\">\u03a3\u03b7\u03bc\u03b5\u03af\u03b1<\/span><span class=\"i-val\">W=3 \u00b7 D=1 \u00b7 L=0<\/span><\/div>\r\n                <div class=\"info-row\"><span class=\"i-key\">Advance<\/span><span class=\"i-val\">Top 2 \/ group<\/span><\/div>\r\n                <button class=\"tb-btn\" data-open-tb>\r\n                  <svg width=\"10\" height=\"10\" viewbox=\"0 0 10 10\" fill=\"none\" style=\"flex-shrink:0\"><circle cx=\"5\" cy=\"5\" r=\"4.5\" stroke=\"currentColor\" stroke-opacity=\"0.6\"\/><text x=\"5\" y=\"7.5\" text-anchor=\"middle\" font-size=\"6.5\" fill=\"currentColor\" font-family=\"sans-serif\" font-weight=\"700\">i<\/text><\/svg>\r\n                  Tiebreaker Criteria\r\n                <\/button>\r\n              <\/div>\r\n            <\/div>\r\n            <div class=\"day-card day2\">\r\n              <div class=\"day-hdr\"><span class=\"day-badge\">Day 2<\/span><span class=\"day-title\">Knockout<\/span><\/div>\r\n              <div class=\"day-body\">\r\n                <div class=\"info-row\"><span class=\"i-key\">Format<\/span><span class=\"i-val\"><span class=\"pill pill-agg\">BO2 \u00b7 Agg<\/span><\/span><\/div>\r\n                <div class=\"info-row\"><span class=\"i-key\">Tiebreak<\/span><span class=\"i-val\"><span class=\"pill pill-gg\">Golden Goal<\/span><\/span><\/div>\r\n                <div class=\"bracket\">\r\n                  <div class=\"seed-lbl\">Seeding<\/div>\r\n                  <div class=\"bm\">1A vs 2B \u00b7 1B vs 2A<\/div>\r\n                  <div class=\"b-arrow\">\u2193<\/div>\r\n                  <div class=\"bm bm-final\">\u2605 Grand Final<\/div>\r\n                <\/div>\r\n              <\/div>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n<script>\r\n(function() {\r\n  \/\/ \u2500\u2500 TABS \u2500\u2500\r\n  document.querySelectorAll('#rocFmtWrap .fmt-tab-btn').forEach(function(btn) {\r\n    btn.addEventListener('click', function() {\r\n      var game = btn.getAttribute('data-game');\r\n      document.querySelectorAll('#rocFmtWrap .fmt-tab-panel').forEach(function(p) { p.classList.remove('active'); });\r\n      document.querySelectorAll('#rocFmtWrap .fmt-tab-btn').forEach(function(b) { b.classList.remove('active'); });\r\n      document.getElementById('fmt-' + game).classList.add('active');\r\n      btn.classList.add('active');\r\n    });\r\n  });\r\n\r\n  \/\/ \u2500\u2500 POPUP: inject directly into <body data-rsssl=1> at top level, bypassing ALL Elementor wrappers \u2500\u2500\r\n  var overlayHTML = '<div id=\"rocTbOverlay\">'\r\n    + '<div id=\"rocTbModal\">'\r\n    + '<div class=\"tb-mhdr\">'\r\n    + '<span class=\"tb-mtitle\">Tiebreaker Criteria \u2014 Group Stage<\/span>'\r\n    + '<span class=\"tb-mclose\" id=\"rocTbClose\">&#10005;<\/span>'\r\n    + '<\/div>'\r\n    + '<div class=\"tb-mbody\">'\r\n    + '<div class=\"tb-mitem\"><span class=\"tb-mn\">1.<\/span>Head-to-head result<\/div>'\r\n    + '<div class=\"tb-mitem\"><span class=\"tb-mn\">2.<\/span>Head-to-head goal difference<\/div>'\r\n    + '<div class=\"tb-mitem\"><span class=\"tb-mn\">3.<\/span>Head-to-head goals scored<\/div>'\r\n    + '<div class=\"tb-mitem\"><span class=\"tb-mn\">4.<\/span>Overall goal difference<\/div>'\r\n    + '<div class=\"tb-mitem\"><span class=\"tb-mn\">5.<\/span>Overall goals scored<\/div>'\r\n    + '<\/div><\/div><\/div>';\r\n\r\n  \/\/ Remove any old instance first\r\n  var old = document.getElementById('rocTbOverlay');\r\n  if (old) old.remove();\r\n\r\n  \/\/ Append to body \u2014 escapes every container\/wrapper\r\n  document.body.insertAdjacentHTML('beforeend', overlayHTML);\r\n\r\n  var overlay = document.getElementById('rocTbOverlay');\r\n\r\n  function openTb() { overlay.classList.add('open'); }\r\n  function closeTb() { overlay.classList.remove('open'); }\r\n\r\n  document.querySelectorAll('[data-open-tb]').forEach(function(btn) {\r\n    btn.addEventListener('click', function(e) { e.stopPropagation(); openTb(); });\r\n  });\r\n  document.getElementById('rocTbClose').addEventListener('click', closeTb);\r\n  overlay.addEventListener('click', function(e) { if (e.target === overlay) closeTb(); });\r\n  document.addEventListener('keydown', function(e) { if (e.key === 'Escape') closeTb(); });\r\n})();\r\n<\/script>\r\n<\/body>\r\n<\/html>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-6b68ecb elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"6b68ecb\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0f6bd9b\" data-id=\"0f6bd9b\" data-element_type=\"column\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-e1b4554 elementor-widget elementor-widget-html\" data-id=\"e1b4554\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<!DOCTYPE html>\r\n<html lang=\"el\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Barlow:wght@400;600;700&family=Barlow+Condensed:wght@700;800&family=Bebas+Neue&display=swap\" rel=\"stylesheet\">\r\n<link rel=\"stylesheet\" href=\"https:\/\/cdn.jsdelivr.net\/npm\/@tabler\/icons-webfont@latest\/tabler-icons.min.css\">\r\n<style>\r\n* { box-sizing: border-box; margin: 0; padding: 0; }\r\n\r\n#vgl-video-widget {\r\n  width: 100%;\r\n  font-family: 'Barlow', sans-serif;\r\n  background: rgba(6, 8, 13, 0.45);\r\n  border-radius: 8px;\r\n  overflow: hidden;\r\n  position: relative;\r\n}\r\n\r\n#vgl-video-widget::before {\r\n  content: '';\r\n  position: absolute;\r\n  top: 0; left: 0; right: 0;\r\n  height: 2px;\r\n  background: linear-gradient(90deg, transparent, #ff5000 30%, #60a5fa 70%, transparent);\r\n}\r\n\r\n.vgl-vw-inner {\r\n  display: grid;\r\n  grid-template-columns: 1fr 1fr;\r\n  gap: 0;\r\n  min-height: 340px;\r\n}\r\n\r\n\/* LEFT: VIDEO *\/\r\n.vgl-vw-video-col {\r\n  position: relative;\r\n  background: #000;\r\n  display: flex;\r\n  align-items: stretch;\r\n}\r\n\r\n.vgl-vw-video-wrap {\r\n  position: relative;\r\n  width: 100%;\r\n}\r\n\r\n@media (min-width: 701px) {\r\n  .vgl-vw-video-wrap { height: 100%; }\r\n  .vgl-vw-video-wrap iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: none; display: block; }\r\n}\r\n@media (max-width: 700px) {\r\n  .vgl-vw-video-wrap { padding-top: 56.25%; }\r\n  .vgl-vw-video-wrap iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: none; display: block; }\r\n}\r\n\r\n\/* RIGHT: TEXT *\/\r\n.vgl-vw-text-col {\r\n  display: flex;\r\n  flex-direction: column;\r\n  justify-content: center;\r\n  padding: 2.5rem 2.2rem;\r\n  background: linear-gradient(135deg, rgba(13,17,24,0.72) 0%, rgba(10,12,16,0.45) 100%);\r\n  backdrop-filter: blur(8px);\r\n  -webkit-backdrop-filter: blur(8px);\r\n  border-left: 1px solid rgba(255,255,255,0.06);\r\n  position: relative;\r\n  overflow: hidden;\r\n}\r\n\r\n.vgl-vw-text-col::after {\r\n  content: '';\r\n  position: absolute;\r\n  top: -60px; right: -60px;\r\n  width: 220px; height: 220px;\r\n  border-radius: 50%;\r\n  background: radial-gradient(circle, rgba(96,165,250,0.07) 0%, transparent 70%);\r\n  pointer-events: none;\r\n}\r\n\r\n.vgl-vw-eyebrow {\r\n  font-size: 10px; font-weight: 700; letter-spacing: 3px;\r\n  text-transform: uppercase; color: #ff5000;\r\n  margin-bottom: 0.8rem;\r\n  display: flex; align-items: center; gap: 8px;\r\n}\r\n.vgl-vw-eyebrow::before {\r\n  content: '';\r\n  display: inline-block;\r\n  width: 20px; height: 2px;\r\n  background: #ff5000; border-radius: 2px;\r\n}\r\n\r\n.vgl-vw-title {\r\n  font-family: 'Bebas Neue', sans-serif;\r\n  font-size: clamp(28px, 3.5vw, 46px);\r\n  line-height: 0.95; letter-spacing: 1px;\r\n  color: #fff;\r\n  margin-bottom: 1.2rem;\r\n  text-shadow: 0 2px 20px rgba(0,0,0,0.6);\r\n}\r\n.vgl-vw-title span { color: #60a5fa; }\r\n\r\n.vgl-vw-desc {\r\n  font-size: 13px; line-height: 1.65;\r\n  color: rgba(255,255,255,0.58);\r\n  margin-bottom: 1.8rem; max-width: 360px;\r\n}\r\n\r\n.vgl-vw-tags {\r\n  display: flex; gap: 6px; flex-wrap: wrap;\r\n  margin-bottom: 1.8rem;\r\n}\r\n.vgl-vw-tag {\r\n  font-size: 10px; font-weight: 700; letter-spacing: 0.8px;\r\n  text-transform: uppercase;\r\n  padding: 4px 10px; border-radius: 2px; border: 0.5px solid;\r\n}\r\n.vgl-vw-tag.t-blue  { color:#60a5fa; border-color:rgba(96,165,250,0.35); background:rgba(96,165,250,0.07); }\r\n.vgl-vw-tag.t-orange{ color:#ff5000; border-color:rgba(255,80,0,0.35);   background:rgba(255,80,0,0.07); }\r\n.vgl-vw-tag.t-green { color:#4ade80; border-color:rgba(74,222,128,0.35); background:rgba(74,222,128,0.07); }\r\n\r\n.vgl-vw-actions { display: flex; gap: 10px; flex-wrap: wrap; }\r\n\r\n.vgl-vw-btn-p {\r\n  display: inline-flex; align-items: center; gap: 7px;\r\n  font-family: 'Barlow', sans-serif; font-size: 12px; font-weight: 700;\r\n  letter-spacing: 1.5px; text-transform: uppercase;\r\n  color: #06080d; background: #ff5000;\r\n  border: none; border-radius: 3px; padding: 11px 22px;\r\n  cursor: pointer; text-decoration: none;\r\n  transition: background 0.15s, transform 0.15s;\r\n}\r\n.vgl-vw-btn-p:hover { background: #ff6a1f; transform: translateY(-1px); }\r\n.vgl-vw-btn-p i { font-size: 15px; }\r\n\r\n.vgl-vw-btn-s {\r\n  display: inline-flex; align-items: center; gap: 7px;\r\n  font-family: 'Barlow', sans-serif; font-size: 12px; font-weight: 700;\r\n  letter-spacing: 1.5px; text-transform: uppercase;\r\n  color: rgba(255,255,255,0.65); background: transparent;\r\n  border: 0.5px solid rgba(255,255,255,0.2); border-radius: 3px; padding: 11px 20px;\r\n  cursor: pointer; text-decoration: none;\r\n  transition: border-color 0.15s, color 0.15s;\r\n}\r\n.vgl-vw-btn-s:hover { border-color: rgba(255,255,255,0.5); color: #fff; }\r\n.vgl-vw-btn-s i { font-size: 15px; }\r\n\r\n@media (max-width: 700px) {\r\n  .vgl-vw-inner { grid-template-columns: 1fr; }\r\n  .vgl-vw-text-col {\r\n    border-left: none;\r\n    border-top: 1px solid rgba(255,255,255,0.06);\r\n    padding: 1.8rem 1.4rem;\r\n  }\r\n  .vgl-vw-title { font-size: 32px; }\r\n}\r\n<\/style>\r\n<\/head>\r\n\r\n<body data-rsssl=1 style=\"background:#06080d;\">\r\n\r\n<div id=\"vgl-video-widget\">\r\n  <div class=\"vgl-vw-inner\">\r\n\r\n    <!-- LEFT: VIDEO -->\r\n    <div class=\"vgl-vw-video-col\">\r\n      <div class=\"vgl-vw-video-wrap\">\r\n        <iframe\r\n          src=\"https:\/\/www.youtube.com\/embed\/xUpyM4YsvcA?rel=0&modestbranding=1&color=white\"\r\n          title=\"allwyn Unileague \u2013 Highlights\"\r\n          allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\r\n          allowfullscreen>\r\n        <\/iframe>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <!-- RIGHT: TEXT -->\r\n    <div class=\"vgl-vw-text-col\">\r\n\r\n      <div class=\"vgl-vw-eyebrow notranslate\">allwyn Unileague<\/div>\r\n\r\n      <div class=\"vgl-vw-title notranslate\">\r\n        \u03a0\u03b1\u03b9\u03c7\u03bd\u03af\u03b4\u03b9<br><span>\u039a\u03bf\u03b9\u03bd\u03cc\u03c4\u03b7\u03c4\u03b1<\/span><br>for Students\r\n      <\/div>\r\n\r\n      <div class=\"vgl-vw-desc\" id=\"vgl-desc\"><\/div>\r\n\r\n      <div class=\"vgl-vw-tags notranslate\">\r\n        <span class=\"vgl-vw-tag t-blue\">EA FC<\/span>\r\n        <span class=\"vgl-vw-tag t-orange\">eFootball<\/span>\r\n        <span class=\"vgl-vw-tag t-green\">Rocket League<\/span>\r\n      <\/div>\r\n\r\n      <div class=\"vgl-vw-actions\">\r\n        <a href=\"https:\/\/battlefy.com\/vgl-esports\" target=\"_blank\" class=\"vgl-vw-btn-p notranslate\" rel=\"noopener\">\r\n          <i class=\"ti ti-trophy\"><\/i> REGISTER NOW\r\n        <\/a>\r\n        <a href=\"https:\/\/discord.gg\/n6PrKQesGn\" target=\"_blank\" class=\"vgl-vw-btn-s notranslate\" rel=\"noopener\">\r\n          <i class=\"ti ti-brand-discord\"><\/i> DISCORD\r\n        <\/a>\r\n      <\/div>\r\n\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function () {\r\n  var isEl = window.location.pathname.indexOf('\/el\/') !== -1;\r\n  var desc = document.getElementById('vgl-desc');\r\n  if (isEl) {\r\n    desc.textContent = '\u0397 allwyn Unileague \u03ad\u03c7\u03b5\u03b9 \u03b4\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03ae\u03c3\u03b5\u03b9 \u03c6\u03bf\u03b9\u03c4\u03b7\u03c4\u03b9\u03ba\u03ae gaming \u03ba\u03bf\u03b9\u03bd\u03cc\u03c4\u03b7\u03c4\u03b1 \u03bc\u03b5 \u03c3\u03c4\u03cc\u03c7\u03bf \u03c4\u03b7\u03bd \u03b5\u03bd\u03b7\u03bc\u03ad\u03c1\u03c9\u03c3\u03b7, \u03c4\u03b7\u03bd \u03c5\u03c0\u03bf\u03c3\u03c4\u03ae\u03c1\u03b9\u03be\u03b7 \u03ba\u03b1\u03b9 \u03c4\u03b7 \u03b4\u03b9\u03b1\u03c3\u03ba\u03ad\u03b4\u03b1\u03c3\u03b7 \u03c4\u03c9\u03bd gamers \u03c3\u03b5 \u03ad\u03bd\u03b1 \u03bf\u03c1\u03b3\u03b1\u03bd\u03c9\u03bc\u03ad\u03bd\u03bf \u03b4\u03b9\u03b1\u03b4\u03b9\u03ba\u03c4\u03c5\u03b1\u03ba\u03cc \u03c0\u03b5\u03c1\u03b9\u03b2\u03ac\u03bb\u03bb\u03bf\u03bd.';\r\n  } else {\r\n    desc.textContent = 'The allwyn Unileague has built a student gaming community focused on informing, supporting, and entertaining gamers in a structured online environment.';\r\n    desc.classList.add('notranslate');\r\n  }\r\n})();\r\n<\/script>\r\n\r\n<\/body>\r\n<\/html>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-1e68389 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"1e68389\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-d9b63ae\" data-id=\"d9b63ae\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-8232473 elementor-widget elementor-widget-html\" data-id=\"8232473\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<!DOCTYPE html>\r\n<html lang=\"el\">\r\n<head>\r\n<meta charset=\"UTF-8\">\r\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Barlow:wght@400;600;700&family=Bebas+Neue&display=swap\" rel=\"stylesheet\">\r\n<link rel=\"stylesheet\" href=\"https:\/\/cdn.jsdelivr.net\/npm\/@tabler\/icons-webfont@latest\/tabler-icons.min.css\">\r\n<style>\r\n* { box-sizing: border-box; margin: 0; padding: 0; }\r\n\r\n#vgl-news {\r\n  width: 100%;\r\n  font-family: 'Barlow', sans-serif;\r\nbackground: rgba(6, 8, 13, 0.3);  border-radius: 8px;\r\n  padding: 2rem 2rem 1.6rem;\r\n  position: relative;\r\n  overflow: hidden;\r\n}\r\n#vgl-news::before {\r\n  content: '';\r\n  position: absolute;\r\n  top: 0; left: 0; right: 0;\r\n  height: 2px;\r\n  background: linear-gradient(90deg, transparent, #ff5000 30%, #60a5fa 70%, transparent);\r\n}\r\n\r\n.vgl-n-header {\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: space-between;\r\n  margin-bottom: 1.4rem;\r\n}\r\n.vgl-n-title {\r\n  font-family: 'Bebas Neue', sans-serif;\r\n  font-size: 28px;\r\n  letter-spacing: 2px;\r\n  color: #fff;\r\n  display: flex;\r\n  align-items: center;\r\n  gap: 10px;\r\n}\r\n.vgl-n-title span { color: #60a5fa; }\r\n.vgl-n-dot {\r\n  width: 7px; height: 7px; border-radius: 50%;\r\n  background: #ff5000;\r\n  animation: npulse 1.8s ease-in-out infinite;\r\n  flex-shrink: 0;\r\n}\r\n@keyframes npulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.35;transform:scale(.65)} }\r\n\r\n.vgl-n-all {\r\n  font-size: 11px; font-weight: 700; letter-spacing: 1.5px;\r\n  text-transform: uppercase; color: rgba(255,255,255,0.45);\r\n  text-decoration: none;\r\n  display: flex; align-items: center; gap: 5px;\r\n  transition: color .15s;\r\n}\r\n.vgl-n-all:hover { color: #60a5fa; }\r\n.vgl-n-all i { font-size: 13px; }\r\n\r\n.vgl-n-grid {\r\n  display: grid;\r\n  grid-template-columns: repeat(3, 1fr);\r\n  gap: 12px;\r\n  margin-bottom: 1.2rem;\r\n}\r\n\r\n.vgl-n-card {\r\n  display: flex;\r\n  flex-direction: column;\r\n  background: #0d1118;\r\n  border: 0.5px solid rgba(255,255,255,0.07);\r\n  border-radius: 6px;\r\n  overflow: hidden;\r\n  text-decoration: none;\r\n  transition: border-color .2s, transform .2s;\r\n  cursor: pointer;\r\n}\r\n.vgl-n-card:hover {\r\n  border-color: rgba(96,165,250,0.35);\r\n  transform: translateY(-3px);\r\n}\r\n.vgl-n-card:hover .vgl-n-img img { transform: scale(1.05); }\r\n\r\n.vgl-n-img {\r\n  width: 100%; aspect-ratio: 16\/9;\r\n  overflow: hidden; position: relative;\r\n  background: #111;\r\n  flex-shrink: 0;\r\n}\r\n.vgl-n-img img {\r\n  width: 100%; height: 100%; object-fit: cover;\r\n  display: block;\r\n  transition: transform .4s ease;\r\n}\r\n.vgl-n-img-placeholder {\r\n  width: 100%; height: 100%;\r\n  display: flex; align-items: center; justify-content: center;\r\n  background: linear-gradient(135deg, #0d1118, #111820);\r\n}\r\n.vgl-n-img-placeholder i { font-size: 28px; color: rgba(255,255,255,0.1); }\r\n\r\n.vgl-n-card-body {\r\n  padding: 12px 13px 14px;\r\n  display: flex; flex-direction: column; flex: 1;\r\n}\r\n.vgl-n-date {\r\n  font-size: 10px; font-weight: 600; letter-spacing: 1.5px;\r\n  text-transform: uppercase; color: rgba(255,255,255,0.28);\r\n  margin-bottom: 6px;\r\n}\r\n.vgl-n-card-title {\r\n  font-size: 13px; font-weight: 700; line-height: 1.4;\r\n  color: rgba(255,255,255,0.88);\r\n  display: -webkit-box;\r\n  -webkit-line-clamp: 3;\r\n  -webkit-box-orient: vertical;\r\n  overflow: hidden;\r\n  flex: 1;\r\n}\r\n.vgl-n-read {\r\n  margin-top: 10px;\r\n  font-size: 10px; font-weight: 700; letter-spacing: 1px;\r\n  text-transform: uppercase; color: #60a5fa;\r\n  display: flex; align-items: center; gap: 4px;\r\n}\r\n.vgl-n-read i { font-size: 12px; }\r\n\r\n.vgl-n-footer {\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: center;\r\n  gap: 10px;\r\n}\r\n.vgl-n-btn {\r\n  display: flex; align-items: center; justify-content: center;\r\n  width: 36px; height: 36px; border-radius: 3px;\r\n  background: rgba(255,255,255,0.05);\r\n  border: 0.5px solid rgba(255,255,255,0.12);\r\n  color: rgba(255,255,255,0.6); font-size: 17px;\r\n  cursor: pointer; transition: background .15s, border-color .15s, color .15s;\r\n  user-select: none;\r\n}\r\n.vgl-n-btn:hover:not(:disabled) { background: rgba(96,165,250,0.12); border-color: rgba(96,165,250,0.4); color: #fff; }\r\n.vgl-n-btn:disabled { opacity: .3; cursor: default; }\r\n\r\n.vgl-n-pages { display: flex; gap: 6px; }\r\n.vgl-n-page {\r\n  width: 7px; height: 7px; border-radius: 50%;\r\n  background: rgba(255,255,255,0.15);\r\n  transition: background .2s, transform .2s;\r\n  cursor: pointer;\r\n}\r\n.vgl-n-page.active { background: #60a5fa; transform: scale(1.3); }\r\n\r\n.vgl-n-loading {\r\n  text-align: center; padding: 3rem 0;\r\n  color: rgba(255,255,255,0.25); font-size: 13px; letter-spacing: 1px;\r\n}\r\n.vgl-n-spinner {\r\n  width: 28px; height: 28px; border: 2px solid rgba(255,255,255,0.1);\r\n  border-top-color: #60a5fa; border-radius: 50%;\r\n  animation: nspin .8s linear infinite;\r\n  margin: 0 auto 10px;\r\n}\r\n@keyframes nspin { to { transform: rotate(360deg); } }\r\n\r\n@media (max-width: 640px) {\r\n  .vgl-n-grid { grid-template-columns: 1fr 1fr; }\r\n  #vgl-news { padding: 1.4rem 1.2rem 1.2rem; }\r\n}\r\n@media (max-width: 400px) {\r\n  .vgl-n-grid { grid-template-columns: 1fr; }\r\n}\r\n<\/style>\r\n<\/head>\r\n<body data-rsssl=1 style=\"background:#06080d; padding:20px;\">\r\n\r\n<div id=\"vgl-news\">\r\n  <div class=\"vgl-n-header\">\r\n    <div class=\"vgl-n-title\">\r\n      <div class=\"vgl-n-dot\"><\/div>\r\n      WHAT'S <span>&nbsp;NEW<\/span>\r\n    <\/div>\r\n    <a href=\"https:\/\/vglesports.com\/el\/news-page\/\" target=\"_blank\" class=\"vgl-n-all\">\r\n      \u039f\u03bb\u03b1 \u03c4\u03b1 \u03bd\u03b5\u03b1 <i class=\"ti ti-arrow-right\"><\/i>\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <div id=\"vgl-n-grid\" class=\"vgl-n-grid\">\r\n    <div class=\"vgl-n-loading\">\r\n      <div class=\"vgl-n-spinner\"><\/div>\r\n      \u03a6\u03cc\u03c1\u03c4\u03c9\u03c3\u03b7 \u03bd\u03ad\u03c9\u03bd\u2026\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <div class=\"vgl-n-footer\">\r\n    <button class=\"vgl-n-btn\" id=\"vgl-n-prev\" disabled>\r\n      <i class=\"ti ti-chevron-left\"><\/i>\r\n    <\/button>\r\n    <div class=\"vgl-n-pages\" id=\"vgl-n-pages\"><\/div>\r\n    <button class=\"vgl-n-btn\" id=\"vgl-n-next\" disabled>\r\n      <i class=\"ti ti-chevron-right\"><\/i>\r\n    <\/button>\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function () {\r\n  var PER_PAGE = 3;\r\n  var allItems = [];\r\n  var page = 0;\r\n  var BASE = 'https:\/\/vglesports.com';\r\n  var EXCLUDE_SLUGS = ['tutorials', 'deep-dive'];\r\n\r\n  function formatDate(str) {\r\n    if (!str) return '';\r\n    var d = new Date(str);\r\n    var MONS = ['\u0399\u03b1\u03bd','\u03a6\u03b5\u03b2','\u039c\u03b1\u03c1','\u0391\u03c0\u03c1','\u039c\u03b1\u0390','\u0399\u03bf\u03c5\u03bd','\u0399\u03bf\u03c5\u03bb','\u0391\u03c5\u03b3','\u03a3\u03b5\u03c0','\u039f\u03ba\u03c4','\u039d\u03bf\u03b5','\u0394\u03b5\u03ba'];\r\n    return d.getDate() + ' ' + MONS[d.getMonth()] + ' ' + d.getFullYear();\r\n  }\r\n\r\n  function render() {\r\n    var grid = document.getElementById('vgl-n-grid');\r\n    var start = page * PER_PAGE;\r\n    var slice = allItems.slice(start, start + PER_PAGE);\r\n    var totalPages = Math.ceil(allItems.length \/ PER_PAGE);\r\n\r\n    grid.innerHTML = slice.map(function(item) {\r\n      var img = item._imgUrl || null;\r\n      var title = (item.title && item.title.rendered) ? item.title.rendered : (item.title || '');\r\n      var imgHtml = img\r\n        ? '<img decoding=\"async\" src=\"' + img + '\" alt=\"\" loading=\"lazy\">'\r\n        : '<div class=\"vgl-n-img-placeholder\"><i class=\"ti ti-photo\"><\/i><\/div>';\r\n      return '<a class=\"vgl-n-card\" href=\"' + item.link + '\" target=\"_blank\" rel=\"noopener\">'\r\n        + '<div class=\"vgl-n-img\">' + imgHtml + '<\/div>'\r\n        + '<div class=\"vgl-n-card-body\">'\r\n        + '<div class=\"vgl-n-date\">' + formatDate(item.date) + '<\/div>'\r\n        + '<div class=\"vgl-n-card-title\">' + title + '<\/div>'\r\n        + '<div class=\"vgl-n-read\">\u0394\u03b9\u03b1\u03b2\u03b1\u03c3\u03b5 <i class=\"ti ti-arrow-right\"><\/i><\/div>'\r\n        + '<\/div><\/a>';\r\n    }).join('');\r\n\r\n    var dotsEl = document.getElementById('vgl-n-pages');\r\n    dotsEl.innerHTML = '';\r\n    for (var i = 0; i < totalPages; i++) {\r\n      var dot = document.createElement('div');\r\n      dot.className = 'vgl-n-page' + (i === page ? ' active' : '');\r\n      dot.setAttribute('data-p', i);\r\n      dot.addEventListener('click', function(){ goTo(parseInt(this.getAttribute('data-p'))); });\r\n      dotsEl.appendChild(dot);\r\n    }\r\n    document.getElementById('vgl-n-prev').disabled = (page === 0);\r\n    document.getElementById('vgl-n-next').disabled = (page >= totalPages - 1);\r\n  }\r\n\r\n  function goTo(p) { page = p; render(); }\r\n  document.getElementById('vgl-n-prev').addEventListener('click', function(){ if(page>0) goTo(page-1); });\r\n  document.getElementById('vgl-n-next').addEventListener('click', function(){ goTo(page+1); });\r\n\r\n  function showError() {\r\n    document.getElementById('vgl-n-grid').innerHTML =\r\n      '<div class=\"vgl-n-loading\" style=\"color:rgba(255,80,0,0.6);\">'\r\n      + '<i class=\"ti ti-alert-circle\" style=\"font-size:24px;display:block;margin:0 auto 8px;\"><\/i>'\r\n      + '\u0394\u03b5\u03bd \u03c6\u03bf\u03c1\u03c4\u03c9\u03b8\u03b7\u03ba\u03b1\u03bd \u03c4\u03b1 \u03bd\u03b5\u03b1.<\/div>';\r\n  }\r\n\r\n  function fetchPosts(excludeIds) {\r\n    var excludeParam = excludeIds.length ? '&categories_exclude=' + excludeIds.join(',') : '';\r\n    fetch(BASE + '\/wp-json\/wp\/v2\/posts?per_page=9&_fields=id,title,link,date,featured_media' + excludeParam)\r\n      .then(function(r){ if(!r.ok) throw new Error(r.status); return r.json(); })\r\n      .then(function(posts){\r\n        if(!posts || !posts.length) throw new Error('empty');\r\n        allItems = posts;\r\n        var ids = posts.map(function(p){ return p.featured_media; }).filter(function(id){ return id > 0; });\r\n        if(!ids.length){ render(); return; }\r\n        fetch(BASE + '\/wp-json\/wp\/v2\/media?include=' + ids.join(',') + '&per_page=9&_fields=id,source_url,media_details')\r\n          .then(function(r){ return r.json(); })\r\n          .then(function(mediaList){\r\n            var imgMap = {};\r\n            (mediaList || []).forEach(function(m){\r\n              var url = m.source_url;\r\n              try {\r\n                var s = m.media_details.sizes;\r\n                url = (s.medium_large || s.medium || s.large || s.full).source_url || url;\r\n              } catch(e){}\r\n              imgMap[m.id] = url;\r\n            });\r\n            allItems.forEach(function(p){\r\n              if(p.featured_media && imgMap[p.featured_media]) p._imgUrl = imgMap[p.featured_media];\r\n            });\r\n            render();\r\n          })\r\n          .catch(function(){ render(); });\r\n      })\r\n      .catch(function(err){ console.warn('[VGL News] failed:', err); showError(); });\r\n  }\r\n\r\n  fetch(BASE + '\/wp-json\/wp\/v2\/categories?slug=' + EXCLUDE_SLUGS.join(',') + '&per_page=20&_fields=id,slug')\r\n    .then(function(r){ return r.json(); })\r\n    .then(function(cats){\r\n      var ids = (cats || []).map(function(c){ return c.id; });\r\n      fetchPosts(ids);\r\n    })\r\n    .catch(function(){ fetchPosts([]); });\r\n})();\r\n<\/script>\r\n<\/body>\r\n<\/html>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-4dd738f elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"4dd738f\" data-element_type=\"section\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-03bd802\" data-id=\"03bd802\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-729add3 elementor-widget elementor-widget-html\" data-id=\"729add3\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<!-- \u0391\u039b\u039b\u0391\u039e\u0395 \u039c\u039f\u039d\u039f \u03a4\u0397\u039d \u03a0\u0391\u03a1\u0391\u039a\u0391\u03a4\u03a9 \u0393\u03a1\u0391\u039c\u039c\u0397 \u0391\u039d\u0391 PAGE -->\r\n<script>var PAGE_ID = 'unileague';<\/script>\r\n\r\n<style>\r\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Barlow+Condensed:wght@700;800&family=Barlow:wght@400;500&display=swap');\r\n.rw{font-family:'Barlow',sans-serif;padding:60px 0}\r\n.rw-header{text-align:center;margin-bottom:40px}\r\n.rw-label{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;letter-spacing:3px;color:#888;text-transform:uppercase;margin-bottom:10px}\r\n.rw-title{font-family:'Barlow Condensed',sans-serif;font-size:36px;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:2px;margin:0 0 8px;white-space:nowrap}\r\n.rw-sub{font-size:14px;color:#888;margin:0}\r\n.rw{background:#121925;position:relative}\r\n.rw::before{content:'';position:absolute;inset:0;pointer-events:none;z-index:0;background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='120' height='120'%3E%3Cdefs%3E%3Cpattern id='h' x='0' y='0' width='120' height='104' patternUnits='userSpaceOnUse'%3E%3Cpolygon points='60,2 112,32 112,72 60,102 8,72 8,32' fill='none' stroke='rgba(255,255,255,0.04)' stroke-width='1'\/%3E%3C\/pattern%3E%3C\/defs%3E%3Crect width='100%25' height='100%25' fill='url(%23h)'\/%3E%3C\/svg%3E\")}\r\n.rw-grid{max-width:900px;margin:0 auto}\r\n.rw>*{position:relative;z-index:1}\r\n.rw-grid{\r\n  display:grid;\r\n  grid-template-columns:repeat(2, 1fr); \/* mobile & tablet: 2 \u03b1\u03bd\u03ac \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae *\/\r\n  gap:12px;\r\n  margin:0 auto;\r\n  padding:0 16px;\r\n  box-sizing:border-box;\r\n  max-width:900px;\r\n}\r\n\/* Tablet: 4 \u03b1\u03bd\u03ac \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae *\/\r\n@media(min-width:501px) and (max-width:900px){\r\n  .rw-grid{\r\n    grid-template-columns:repeat(4, 1fr);\r\n  }\r\n}\r\n\/* Desktop: 5 \u03b1\u03bd\u03ac \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae *\/\r\n@media(min-width:901px){\r\n  .rw-grid{\r\n    display:flex;\r\n    flex-wrap:nowrap;\r\n    justify-content:center;\r\n    gap:12px;\r\n  }\r\n  .rw-grid .rw-item{\r\n    width:calc((1100px - 16px*2 - 12px*4) \/ 5);\r\n    flex-shrink:0;\r\n  }\r\n}\r\n.rw-item{\r\n  position:relative;\r\n  border-radius:12px;\r\n  overflow:hidden;\r\n  aspect-ratio:9\/16;\r\n  background:#0C111A;\r\n  border:0.5px solid rgba(255,255,255,0.08);\r\n  cursor:pointer;\r\n  display:block;\r\n  text-decoration:none;\r\n  width:100%; \/* \u03c0\u03b1\u03af\u03c1\u03bd\u03b5\u03b9 \u03c4\u03bf \u03c0\u03bb\u03ac\u03c4\u03bf\u03c2 \u03b1\u03c0\u03cc \u03c4\u03bf grid *\/\r\n}\r\n.rw-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 0.4s ease}\r\n.rw-item:hover img{transform:scale(1.05)}\r\n.rw-overlay{position:absolute;inset:0;background:rgba(0,0,0,0.35);transition:background 0.3s}\r\n.rw-item:hover .rw-overlay{background:rgba(0,0,0,0.2)}\r\n.rw-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;background:rgba(255,255,255,0.15);backdrop-filter:blur(4px);border:1.5px solid rgba(255,255,255,0.4);display:flex;align-items:center;justify-content:center;transition:all 0.3s}\r\n.rw-item:hover .rw-play{background:rgba(255,255,255,0.25);transform:translate(-50%,-50%) scale(1.1)}\r\n.rw-play svg{width:20px;height:20px;fill:#fff;margin-left:3px}\r\n.rw-badge{position:absolute;bottom:10px;left:10px;display:flex;align-items:center;gap:5px;background:rgba(0,0,0,0.6);border-radius:100px;padding:4px 10px}\r\n.rw-badge svg{width:12px;height:12px;fill:#fff}\r\n.rw-badge span{font-family:'Barlow Condensed',sans-serif;font-size:10px;font-weight:700;color:#fff;letter-spacing:1px;text-transform:uppercase}\r\n.rw-cta{text-align:center;margin-top:32px}\r\n.rw-toggle{display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,0.2);border-radius:100px;overflow:hidden;position:relative;background:rgba(255,255,255,0.04)}\r\n.rw-toggle-btn{display:flex;align-items:center;gap:7px;font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:11px 22px;color:rgba(255,255,255,0.45);text-decoration:none;transition:color 0.25s;position:relative;z-index:1;white-space:nowrap}\r\n.rw-toggle-btn svg{width:14px;height:14px;fill:currentColor;flex-shrink:0;transition:fill 0.25s}\r\n.rw-toggle-divider{width:1px;background:rgba(255,255,255,0.15);align-self:stretch;flex-shrink:0}\r\n.rw-toggle-btn.active{color:#fff}\r\n.rw-toggle-btn:hover{color:rgba(255,255,255,0.8)}\r\n\r\n@media(max-width:500px){\r\n  .rw-title{font-size:24px;white-space:normal}\r\n}\r\n@media(min-width:501px) and (max-width:900px){\r\n  .rw-title{white-space:normal}\r\n}\r\n<\/style>\r\n\r\n<div class=\"rw\">\r\n  <div class=\"rw-header\">\r\n    <div class=\"rw-label\">Highlights<\/div>\r\n    <div class=\"rw-title\" id=\"rw-title\"><\/div>\r\n    <p class=\"rw-sub\" id=\"rw-sub\"><\/p>\r\n  <\/div>\r\n  <div class=\"rw-grid\" id=\"rw-grid\"><\/div>\r\n  <div class=\"rw-cta\">\r\n    <div class=\"rw-toggle\">\r\n      <a class=\"rw-toggle-btn active\" href=\"https:\/\/www.instagram.com\/vglesports\/\" target=\"_blank\" id=\"rw-cta-ig\" rel=\"noopener\">\r\n        <svg viewbox=\"0 0 24 24\"><path d=\"M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zm0-2.163c-3.259 0-3.667.014-4.947.072-4.358.2-6.78 2.618-6.98 6.98-.059 1.281-.073 1.689-.073 4.948 0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98 1.281.058 1.689.072 4.948.072 3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98-1.281-.059-1.69-.073-4.949-.073zm0 5.838c-3.403 0-6.162 2.759-6.162 6.162s2.759 6.163 6.162 6.163 6.162-2.759 6.162-6.163c0-3.403-2.759-6.162-6.162-6.162zm0 10.162c-2.209 0-4-1.79-4-4 0-2.209 1.791-4 4-4s4 1.791 4 4c0 2.21-1.791 4-4 4zm6.406-11.845c-.796 0-1.441.645-1.441 1.44s.645 1.44 1.441 1.44c.795 0 1.439-.645 1.439-1.44s-.644-1.44-1.439-1.44z\"\/><\/svg>\r\n        <span id=\"rw-cta-ig-text\"><\/span>\r\n      <\/a>\r\n      <div class=\"rw-toggle-divider\"><\/div>\r\n      <a class=\"rw-toggle-btn\" href=\"https:\/\/www.tiktok.com\/@vglesports\" target=\"_blank\" id=\"rw-cta-tt\" rel=\"noopener\">\r\n        <svg viewbox=\"0 0 24 24\"><path d=\"M19.59 6.69a4.83 4.83 0 0 1-3.77-4.25V2h-3.45v13.67a2.89 2.89 0 0 1-2.88 2.5 2.89 2.89 0 0 1-2.89-2.89 2.89 2.89 0 0 1 2.89-2.89c.28 0 .54.04.79.1V9.01a6.33 6.33 0 0 0-.79-.05 6.34 6.34 0 0 0-6.34 6.34 6.34 6.34 0 0 0 6.34 6.34 6.34 6.34 0 0 0 6.33-6.34V8.69a8.18 8.18 0 0 0 4.78 1.52V6.75a4.85 4.85 0 0 1-1.01-.06z\"\/><\/svg>\r\n        <span id=\"rw-cta-tt-text\"><\/span>\r\n      <\/a>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function(){\r\n  var CSV = 'https:\/\/docs.google.com\/spreadsheets\/d\/e\/2PACX-1vRwYEJQQvu8A5aCzPtb_vlK-bUTSpKHNq1pGQo_IrScbTshZayVbwL1S6AMODASFA\/pub?gid=1215148930&single=true&output=csv';\r\n  var igSVG = '<svg viewBox=\"0 0 24 24\"><path d=\"M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zm0-2.163c-3.259 0-3.667.014-4.947.072-4.358.2-6.78 2.618-6.98 6.98-.059 1.281-.073 1.689-.073 4.948 0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98 1.281.058 1.689.072 4.948.072 3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98-1.281-.059-1.69-.073-4.949-.073zm0 5.838c-3.403 0-6.162 2.759-6.162 6.162s2.759 6.163 6.162 6.163 6.162-2.759 6.162-6.163c0-3.403-2.759-6.162-6.162-6.162zm0 10.162c-2.209 0-4-1.79-4-4 0-2.209 1.791-4 4-4s4 1.791 4 4c0 2.21-1.791 4-4 4zm6.406-11.845c-.796 0-1.441.645-1.441 1.44s.645 1.44 1.441 1.44c.795 0 1.439-.645 1.439-1.44s-.644-1.44-1.439-1.44z\"\/><\/svg>';\r\n  var ttSVG  = '<svg viewBox=\"0 0 24 24\"><path d=\"M19.59 6.69a4.83 4.83 0 0 1-3.77-4.25V2h-3.45v13.67a2.89 2.89 0 0 1-2.88 2.5 2.89 2.89 0 0 1-2.89-2.89 2.89 2.89 0 0 1 2.89-2.89c.28 0 .54.04.79.1V9.01a6.33 6.33 0 0 0-.79-.05 6.34 6.34 0 0 0-6.34 6.34 6.34 6.34 0 0 0 6.34 6.34 6.34 6.34 0 0 0 6.33-6.34V8.69a8.18 8.18 0 0 0 4.78 1.52V6.75a4.85 4.85 0 0 1-1.01-.06z\"\/><\/svg>';\r\n  var playSVG = '<svg viewBox=\"0 0 24 24\"><path d=\"M8 5v14l11-7z\"\/><\/svg>';\r\n\r\n  function getPlatform(url) {\r\n    if (url.indexOf('tiktok.com') !== -1) return 'tiktok';\r\n    return 'instagram';\r\n  }\r\n\r\n  \/\/ Fixed English-only copy \u2014 no language switching, no TranslatePress interference\r\n  var labels = {\r\n    ethniki:   { title:'BEST MOMENTS', sub:'Highlights from the official eNational Team competitions' },\r\n    ekypello:  { title:'BEST MOMENTS', sub:'Highlights from the eKypello Ellados' },\r\n    unileague: { title:'BEST MOMENTS', sub:'Highlights from the Allwyn UniLeague' },\r\n    home:      { title:'BEST MOMENTS', sub:'Highlights from our official competitions' }\r\n  };\r\n\r\n  var pg = typeof PAGE_ID !== 'undefined' ? PAGE_ID : 'home';\r\n  var lb = labels[pg] || labels['home'];\r\n  document.getElementById('rw-title').textContent = lb.title;\r\n  document.getElementById('rw-sub').textContent   = lb.sub;\r\n  document.getElementById('rw-cta-ig-text').textContent = 'Instagram \\u2192';\r\n  document.getElementById('rw-cta-tt-text').textContent = 'TikTok \\u2192';\r\n\r\n  var btns = document.querySelectorAll('.rw-toggle-btn');\r\n  for (var b = 0; b < btns.length; b++) {\r\n    btns[b].addEventListener('mouseenter', function(){ this.classList.add('active'); });\r\n    btns[b].addEventListener('mouseleave', function(){ this.classList.remove('active'); });\r\n  }\r\n\r\n  function parseCSVRow(row) {\r\n    var result = [], cur = '', inQ = false;\r\n    for (var i = 0; i < row.length; i++) {\r\n      var c = row[i];\r\n      if (c === '\"') { inQ = !inQ; }\r\n      else if (c === ',' && !inQ) { result.push(cur.trim()); cur = ''; }\r\n      else { cur += c; }\r\n    }\r\n    result.push(cur.trim());\r\n    return result;\r\n  }\r\n\r\n  fetch(CSV)\r\n    .then(function(r){ return r.text(); })\r\n    .then(function(text){\r\n      var rows = text.trim().split('\\n').slice(1);\r\n      var filtered = [];\r\n      for (var i = 0; i < rows.length; i++) {\r\n        var cols = parseCSVRow(rows[i]);\r\n        var pid  = (cols[3]||'').replace(\/\"\/g,'').trim();\r\n        var reel = (cols[4]||'').replace(\/\"\/g,'').trim();\r\n        var img  = (cols[5]||'').replace(\/\"\/g,'').trim();\r\n        if (pid === pg && reel && img) filtered.push({reel:reel, img:img});\r\n      }\r\n\r\n      var grid = document.getElementById('rw-grid');\r\n      if (!filtered.length) { grid.innerHTML = ''; return; }\r\n\r\n      grid.innerHTML = filtered.map(function(r){\r\n        var platform = getPlatform(r.reel);\r\n        var icon  = platform === 'tiktok' ? ttSVG : igSVG;\r\n        var label = platform === 'tiktok' ? 'TikTok' : 'Reel';\r\n        return '<a class=\"rw-item\" href=\"'+r.reel+'\" target=\"_blank\">'+\r\n          '<img decoding=\"async\" src=\"'+r.img+'\" alt=\"'+label+'\" loading=\"lazy\">'+\r\n          '<div class=\"rw-overlay\"><\/div>'+\r\n          '<div class=\"rw-play\">'+playSVG+'<\/div>'+\r\n          '<div class=\"rw-badge\">'+icon+'<span>'+label+'<\/span><\/div>'+\r\n        '<\/a>';\r\n      }).join('');\r\n    })\r\n    .catch(function(e){ console.error('Reels widget error:', e); });\r\n})();\r\n<\/script>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-4d83aa5 elementor-section-full_width elementor-section-height-default elementor-section-height-default\" data-id=\"4d83aa5\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-e0ee813\" data-id=\"e0ee813\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-15675fc elementor-widget elementor-widget-html\" data-id=\"15675fc\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<style>\r\n#seo-uni * { box-sizing:border-box !important; }\r\n#seo-uni h2,#seo-uni h3,#seo-uni p,#seo-uni ul,#seo-uni li { margin:0 !important; padding:0 !important; }\r\n\r\n#seo-uni {\r\n  width:100% !important;\r\n  background:#121925 !important;\r\n  padding:56px 24px 64px !important;\r\n  position:relative !important;\r\n  overflow:hidden !important;\r\n  font-family:'Barlow',sans-serif !important;\r\n}\r\n#seo-uni::before {\r\n  content:'';\r\n  position:absolute;inset:0;\r\n  background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='120' height='120'%3E%3Cdefs%3E%3Cpattern id='hex4' x='0' y='0' width='120' height='104' patternUnits='userSpaceOnUse'%3E%3Cpolygon points='60,2 112,32 112,72 60,102 8,72 8,32' fill='none' stroke='rgba(255,255,255,0.03)' stroke-width='1'\/%3E%3C\/pattern%3E%3C\/defs%3E%3Crect width='100%25' height='100%25' fill='url(%23hex4)'\/%3E%3C\/svg%3E\");\r\n  pointer-events:none;\r\n}\r\n#seo-uni-wrap {\r\n  position:relative !important;\r\n  max-width:900px !important;\r\n  margin:0 auto !important;\r\n}\r\n\r\n\/* SPACING *\/\r\n#seo-uni h2,#seo-uni h3,#seo-uni p,#seo-uni li,#seo-uni ul { margin:0 !important; padding:0 !important; }\r\n#seo-uni .uni-h2 { margin-bottom:20px !important; }\r\n#seo-uni .uni-h3 { margin-top:28px !important; margin-bottom:10px !important; }\r\n#seo-uni .uni-p  { margin-bottom:12px !important; }\r\n#seo-uni .uni-list { margin-bottom:12px !important; gap:6px !important; }\r\n\r\n.uni-divider {\r\n  display:flex !important;\r\n  align-items:center !important;\r\n  gap:16px !important;\r\n  margin-bottom:40px !important;\r\n}\r\n.uni-divider-line {\r\n  flex:1 !important;\r\n  height:1px !important;\r\n  background:linear-gradient(90deg,transparent,rgba(240,192,64,0.25),transparent) !important;\r\n}\r\n.uni-divider-icon {\r\n  width:6px !important; height:6px !important;\r\n  border-radius:50% !important;\r\n  background:rgba(240,192,64,0.5) !important;\r\n  flex-shrink:0 !important;\r\n}\r\n.uni-h2 {\r\n  font-family:'Bebas Neue',sans-serif !important;\r\n  font-size:26px !important;\r\n  letter-spacing:3px !important;\r\n  color:#ffffff !important;\r\n  line-height:1.1 !important;\r\n}\r\n.uni-h3 {\r\n  font-family:'Barlow Condensed',sans-serif !important;\r\n  font-size:12px !important;\r\n  font-weight:700 !important;\r\n  letter-spacing:3px !important;\r\n  text-transform:uppercase !important;\r\n  color:#f0c040 !important;\r\n  line-height:1.4 !important;\r\n}\r\n.uni-p {\r\n  font-size:13px !important;\r\n  line-height:1.85 !important;\r\n  color:rgba(255,255,255,0.75) !important;\r\n  max-width:820px !important;\r\n}\r\n.uni-list {\r\n  list-style:none !important;\r\n  display:flex !important;\r\n  flex-direction:column !important;\r\n  gap:6px !important;\r\n}\r\n.uni-list li {\r\n  font-size:13px !important;\r\n  line-height:1.7 !important;\r\n  color:rgba(255,255,255,0.75) !important;\r\n  padding-left:16px !important;\r\n  position:relative !important;\r\n}\r\n.uni-list li::before {\r\n  content:'' !important;\r\n  position:absolute !important;\r\n  left:0 !important; top:10px !important;\r\n  width:6px !important; height:1px !important;\r\n  background:#f0c040 !important;\r\n}\r\n.uni-link {\r\n  color:#f0c040 !important;\r\n  text-decoration:none !important;\r\n}\r\n.uni-link:hover { color:#ffda6a !important; }\r\n<\/style>\r\n\r\n<div id=\"seo-uni\">\r\n  <div id=\"seo-uni-wrap\">\r\n\r\n    <div class=\"uni-divider\">\r\n      <div class=\"uni-divider-line\"><\/div>\r\n      <div class=\"uni-divider-icon\"><\/div>\r\n      <div class=\"uni-divider-line\"><\/div>\r\n    <\/div>\r\n\r\n    <h2 class=\"uni-h2\">\r\n      <span class=\"uni-el\">ALLWYN UNILEAGUE ESPORTS \u2013 \u03a6\u039f\u0399\u03a4\u0397\u03a4\u0399\u039a\u0397 GAMING \u039a\u039f\u0399\u039d\u039f\u03a4\u0397\u03a4\u0391<\/span>\r\n      <span class=\"uni-en\" style=\"display:none\">ALLWYN UNILEAGUE ESPORTS \u2013 FREE STUDENT GAMING COMMUNITY<\/span>\r\n    <\/h2>\r\n\r\n    <p class=\"uni-p\">\r\n      <span class=\"uni-el\">\u03a4\u03bf allwyn Unileague esports \u03b5\u03af\u03bd\u03b1\u03b9 \u03b7 \u03c6\u03bf\u03b9\u03c4\u03b7\u03c4\u03b9\u03ba\u03ae gaming \u03ba\u03bf\u03b9\u03bd\u03cc\u03c4\u03b7\u03c4\u03b1 \u03c4\u03b7\u03c2 VGL Esports. \u03a3\u03c7\u03b5\u03b4\u03b9\u03b1\u03c3\u03bc\u03ad\u03bd\u03bf \u03b1\u03c0\u03bf\u03ba\u03bb\u03b5\u03b9\u03c3\u03c4\u03b9\u03ba\u03ac \u03b3\u03b9\u03b1 \u03c6\u03bf\u03b9\u03c4\u03b7\u03c4\u03ad\u03c2 \u03ba\u03b1\u03b9 \u03c3\u03c0\u03bf\u03c5\u03b4\u03b1\u03c3\u03c4\u03ad\u03c2, \u03c0\u03c1\u03bf\u03c4\u03b5\u03af\u03bd\u03b5\u03b9 \u03ba\u03b1\u03b9 \u03c0\u03c1\u03bf\u03c9\u03b8\u03b5\u03af esports \u03c4\u03bf\u03c5\u03c1\u03bd\u03bf\u03c5\u03ac \u03ba\u03b1\u03b9 \u03b4\u03c1\u03ac\u03c3\u03b5\u03b9\u03c2 \u03c3\u03b5 \u03bf\u03c1\u03b3\u03b1\u03bd\u03c9\u03bc\u03ad\u03bd\u03bf \u03b4\u03b9\u03b1\u03b4\u03b9\u03ba\u03c4\u03c5\u03b1\u03ba\u03cc \u03c0\u03b5\u03c1\u03b9\u03b2\u03ac\u03bb\u03bb\u03bf\u03bd \u03b3\u03b9\u03b1 \u03b5\u03bd\u03b7\u03bc\u03ad\u03c1\u03c9\u03c3\u03b7, \u03c5\u03c0\u03bf\u03c3\u03c4\u03ae\u03c1\u03b9\u03be\u03b7 \u03ba\u03b1\u03b9 \u03b4\u03b9\u03b1\u03c3\u03ba\u03ad\u03b4\u03b1\u03c3\u03b7.<\/span>\r\n      <span class=\"uni-en\" style=\"display:none\">The allwyn Unileague esports is the student gaming community of VGL Esports. Designed exclusively for university and college students, it recommends and promotes esports tournaments and activities in an organised online environment for information, support and entertainment.<\/span>\r\n    <\/p>\r\n\r\n    <h3 class=\"uni-h3\">\r\n      <span class=\"uni-el\">\u03a4\u0399 \u0395\u0399\u039d\u0391\u0399 \u03a4\u039f ALLWYN UNILEAGUE<\/span>\r\n      <span class=\"uni-en\" style=\"display:none\">WHAT IS ALLWYN UNILEAGUE<\/span>\r\n    <\/h3>\r\n\r\n    <p class=\"uni-p\">\r\n      <span class=\"uni-el\">\u03a4\u03bf allwyn Unileague esports \u03b4\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03ae\u03b8\u03b7\u03ba\u03b5 \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03c6\u03ad\u03c1\u03b5\u03b9 \u03ba\u03bf\u03bd\u03c4\u03ac \u03c4\u03bf\u03c5\u03c2 \u03c6\u03bf\u03b9\u03c4\u03b7\u03c4\u03ad\u03c2 gamers \u03c4\u03b7\u03c2 \u0395\u03bb\u03bb\u03ac\u03b4\u03b1\u03c2. \u039c\u03ad\u03c3\u03b1 \u03b1\u03c0\u03cc \u03c0\u03c1\u03bf\u03c4\u03b5\u03b9\u03bd\u03cc\u03bc\u03b5\u03bd\u03b5\u03c2 \u03b4\u03b9\u03bf\u03c1\u03b3\u03b1\u03bd\u03ce\u03c3\u03b5\u03b9\u03c2 \u03ba\u03b1\u03b9 leaderboards, \u03bf\u03b9 \u03c6\u03bf\u03b9\u03c4\u03b7\u03c4\u03ad\u03c2 \u03bc\u03c0\u03bf\u03c1\u03bf\u03cd\u03bd \u03bd\u03b1 \u03b1\u03bd\u03c4\u03b1\u03b3\u03c9\u03bd\u03b9\u03c3\u03c4\u03bf\u03cd\u03bd, \u03bd\u03b1 \u03b5\u03be\u03b5\u03bb\u03b9\u03c7\u03b8\u03bf\u03cd\u03bd \u03ba\u03b1\u03b9 \u03bd\u03b1 \u03b3\u03bd\u03c9\u03c1\u03b9\u03c3\u03c4\u03bf\u03cd\u03bd \u03bc\u03b5 \u03ac\u03bb\u03bb\u03bf\u03c5\u03c2 \u03c0\u03b1\u03af\u03ba\u03c4\u03b5\u03c2 \u03b1\u03c0\u03cc \u03cc\u03bb\u03b7 \u03c4\u03b7\u03bd \u0395\u03bb\u03bb\u03ac\u03b4\u03b1.<\/span>\r\n      <span class=\"uni-en\" style=\"display:none\">The allwyn Unileague esports was created to bring together student gamers across Greece. Through recommended competitions and leaderboards, students can compete, improve and connect with other players from across the country.<\/span>\r\n    <\/p>\r\n\r\n    <h3 class=\"uni-h3\">\r\n      <span class=\"uni-el\">\u03a4\u0399 \u03a0\u03a1\u039f\u03a3\u03a6\u0395\u03a1\u0395\u0399<\/span>\r\n      <span class=\"uni-en\" style=\"display:none\">WHAT IT OFFERS<\/span>\r\n    <\/h3>\r\n\r\n    <ul class=\"uni-list\">\r\n      <li>\r\n        <span class=\"uni-el\"><strong style=\"color:#ffffff !important\">\u03a0\u03c1\u03bf\u03c4\u03b5\u03b9\u03bd\u03cc\u03bc\u03b5\u03bd\u03b1 \u03b4\u03c9\u03c1\u03b5\u03ac\u03bd \u03c4\u03bf\u03c5\u03c1\u03bd\u03bf\u03c5\u03ac<\/strong> \u03ba\u03b1\u03b9 leagues \u03b1\u03c0\u03bf\u03ba\u03bb\u03b5\u03b9\u03c3\u03c4\u03b9\u03ba\u03ac \u03b3\u03b9\u03b1 \u03c6\u03bf\u03b9\u03c4\u03b7\u03c4\u03ad\u03c2.<\/span>\r\n        <span class=\"uni-en\" style=\"display:none\"><strong style=\"color:#ffffff !important\">Recommended free tournaments<\/strong> and leagues exclusively for students.<\/span>\r\n      <\/li>\r\n      <li>\r\n        <span class=\"uni-el\"><strong style=\"color:#ffffff !important\">Consistency Leaderboard<\/strong> \u2014 \u03ba\u03b1\u03c4\u03ac\u03c4\u03b1\u03be\u03b7 \u03b2\u03ac\u03c3\u03b5\u03b9 \u03c3\u03c5\u03bd\u03ad\u03c0\u03b5\u03b9\u03b1\u03c2 \u03ba\u03b1\u03b9 \u03b1\u03c0\u03cc\u03b4\u03bf\u03c3\u03b7\u03c2 \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7 \u03b4\u03b9\u03ac\u03c1\u03ba\u03b5\u03b9\u03b1 \u03c4\u03b7\u03c2 \u03c3\u03b5\u03b6\u03cc\u03bd.<\/span>\r\n        <span class=\"uni-en\" style=\"display:none\"><strong style=\"color:#ffffff !important\">Consistency Leaderboard<\/strong> \u2014 ranking based on consistency and performance throughout the season.<\/span>\r\n      <\/li>\r\n      <li>\r\n        <span class=\"uni-el\">\u039a\u03bf\u03b9\u03bd\u03cc\u03c4\u03b7\u03c4\u03b1 \u03bc\u03b5 <strong style=\"color:#ffffff !important\">\u03c5\u03c0\u03bf\u03c3\u03c4\u03ae\u03c1\u03b9\u03be\u03b7 \u03ba\u03b1\u03b9 \u03b5\u03bd\u03b7\u03bc\u03ad\u03c1\u03c9\u03c3\u03b7<\/strong> \u03b3\u03b9\u03b1 \u03bd\u03ad\u03bf\u03c5\u03c2 gamers.<\/span>\r\n        <span class=\"uni-en\" style=\"display:none\">A community with <strong style=\"color:#ffffff !important\">support and guidance<\/strong> for new gamers.<\/span>\r\n      <\/li>\r\n    <\/ul>\r\n\r\n    <h3 class=\"uni-h3\">\r\n      <span class=\"uni-el\">\u03a0\u03a9\u03a3 \u039d\u0391 \u03a3\u03a5\u039c\u039c\u0395\u03a4\u0391\u03a3\u03a7\u0395\u0399\u03a3<\/span>\r\n      <span class=\"uni-en\" style=\"display:none\">HOW TO JOIN<\/span>\r\n    <\/h3>\r\n\r\n    <p class=\"uni-p\">\r\n      <span class=\"uni-el\">\u0395\u03b3\u03b3\u03c1\u03ac\u03c8\u03bf\u03c5 \u03bc\u03ad\u03c3\u03c9 \u03c4\u03c9\u03bd <a class=\"uni-link\" href=\"https:\/\/vglesports.com\/el\/greece-esports-tournaments\/\">\u03b1\u03bd\u03bf\u03b9\u03c7\u03c4\u03ce\u03bd \u03c4\u03bf\u03c5\u03c1\u03bd\u03bf\u03c5\u03ac \u03c4\u03b7\u03c2 VGL Esports<\/a> \u03ba\u03b1\u03b9 \u03ad\u03bd\u03c4\u03b1\u03be\u03ad \u03c3\u03bf\u03c5 \u03c3\u03c4\u03b7\u03bd \u03ba\u03bf\u03b9\u03bd\u03cc\u03c4\u03b7\u03c4\u03b1. \u0393\u03b9\u03b1 \u03b1\u03bd\u03b1\u03ba\u03bf\u03b9\u03bd\u03ce\u03c3\u03b5\u03b9\u03c2 \u03ba\u03b1\u03b9 \u03c5\u03c0\u03bf\u03c3\u03c4\u03ae\u03c1\u03b9\u03be\u03b7 \u03b5\u03c0\u03b9\u03c3\u03ba\u03ad\u03c8\u03bf\u03c5 \u03c4\u03bf <a class=\"uni-link\" href=\"https:\/\/discord.gg\/TVh2bcawQm\" target=\"_blank\" rel=\"noopener\">Discord \u03c4\u03b7\u03c2 VGL Esports<\/a>.<\/span>\r\n      <span class=\"uni-en\" style=\"display:none\">Register through <a class=\"uni-link\" href=\"https:\/\/vglesports.com\/el\/greece-esports-tournaments\/\">VGL Esports open tournaments<\/a> and join the community. For announcements and support visit the <a class=\"uni-link\" href=\"https:\/\/discord.gg\/TVh2bcawQm\" target=\"_blank\" rel=\"noopener\">VGL Esports Discord<\/a>.<\/span>\r\n    <\/p>\r\n\r\n  <\/div>\r\n<\/div>\r\n\r\n<script>\r\n(function(){\r\n  var isGreek = window.location.pathname.indexOf('\/el\/') !== -1;\r\n  var elEls = document.querySelectorAll('#seo-uni .uni-el');\r\n  var enEls = document.querySelectorAll('#seo-uni .uni-en');\r\n  if(isGreek){\r\n    for(var i=0;i<elEls.length;i++) elEls[i].style.display='';\r\n    for(var i=0;i<enEls.length;i++) enEls[i].style.display='none';\r\n  } else {\r\n    for(var i=0;i<elEls.length;i++) elEls[i].style.display='none';\r\n    for(var i=0;i<enEls.length;i++) enEls[i].style.display='';\r\n  }\r\n})();\r\n<\/script>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>AllwynUnileague EA FC eFootball Rocket League Free \u00b7 Online 00D : 00H : 00M : 00S 01 02 03 Loading\u2026 How to Play Loading\u2026 Participation Guide \u0395\u039b EN REGISTER \u2197 \u2715 \u0392\u03ae\u03bc\u03b1\u03c4\u03b1 \u03a3\u03c5\u03bc\u03bc\u03b5\u03c4\u03bf\u03c7\u03ae\u03c2 1Register on Battlefy\u0394\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03ae\u03c3\u03c4\u03b5 \u03bb\u03bf\u03b3\u03b1\u03c1\u03b9\u03b1\u03c3\u03bc\u03cc \u03c3\u03c4\u03bf Battlefy \u03ba\u03b1\u03b9 \u03b5\u03b3\u03b3\u03c1\u03b1\u03c6\u03b5\u03af\u03c4\u03b5 \u03c3\u03c4\u03bf \u03c4\u03bf\u03c5\u03c1\u03bd\u03bf\u03c5\u03ac \u03c4\u03bf\u03c5 Rise of Champions. \u0397 \u03b5\u03b3\u03b3\u03c1\u03b1\u03c6\u03ae \u03b5\u03af\u03bd\u03b1\u03b9 \u03b1\u03bd\u03bf\u03b9\u03c7\u03c4\u03ae \u03bc\u03ad\u03c7\u03c1\u03b9 \u03c4\u03b7\u03bd \u03ce\u03c1\u03b1 \u03ad\u03bd\u03b1\u03c1\u03be\u03b7\u03c2&#8230;.<\/p>","protected":false},"author":1771,"featured_media":29596,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_mi_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"_links":{"self":[{"href":"https:\/\/vglesports.com\/el\/wp-json\/wp\/v2\/pages\/19699"}],"collection":[{"href":"https:\/\/vglesports.com\/el\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/vglesports.com\/el\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/vglesports.com\/el\/wp-json\/wp\/v2\/users\/1771"}],"replies":[{"embeddable":true,"href":"https:\/\/vglesports.com\/el\/wp-json\/wp\/v2\/comments?post=19699"}],"version-history":[{"count":0,"href":"https:\/\/vglesports.com\/el\/wp-json\/wp\/v2\/pages\/19699\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vglesports.com\/el\/wp-json\/wp\/v2\/media\/29596"}],"wp:attachment":[{"href":"https:\/\/vglesports.com\/el\/wp-json\/wp\/v2\/media?parent=19699"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}