@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap');

:root{
  --navy:#0B1F3A;
  --navy-2:#122A4D;
  --blue:#1E56A0;
  --blue-bright:#2E7BD6;
  --yellow:#F4C400;
  --yellow-deep:#B98D00;
  --ink:#101826;
  --paper:#F5F7FA;
  --white:#ffffff;
  --line:#E1E6ED;
  --grey:#5B6472;
  --green:#2E8B4F;
  --red:#C23B3B;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--paper); color:var(--ink);
  font-family:'Inter', sans-serif; font-size:15.5px; line-height:1.5;
}
h1,h2,h3,.disp{font-family:'Oswald', sans-serif; text-transform:uppercase; letter-spacing:.3px;}
a{color:inherit;}
img{max-width:100%; display:block;}

/* ===== Header / nav (pennant motif from the crest ribbon) ===== */
header{
  background:var(--navy); color:var(--white);
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 40px; border-bottom:4px solid var(--yellow);
  position:sticky; top:0; z-index:50;
}
.brand{display:flex; align-items:center; gap:14px; text-decoration:none;}
.brand img{width:46px; height:46px; object-fit:contain;}
.brand .txt b{display:block; font-family:'Oswald'; font-size:17px; text-transform:uppercase; letter-spacing:.5px;}
.brand .txt small{display:block; font-size:10.5px; color:#9db3d1; letter-spacing:1.5px; text-transform:uppercase; margin-top:1px;}

.header-right{display:flex; align-items:center; gap:6px;}

nav{display:flex; gap:2px; flex-wrap:wrap;}
nav a{
  color:#c3d2e8; text-decoration:none; font-family:'Oswald'; font-size:13px; text-transform:uppercase;
  letter-spacing:.8px; padding:10px 14px; border-bottom:3px solid transparent; transition:color .15s, border-color .15s;
}
nav a:hover{color:var(--white);}
nav a.active{color:var(--white); border-color:var(--yellow);}

.menu-toggle{display:none; background:none; border:1px solid #2a3f61; color:var(--white); padding:8px 10px; border-radius:4px;}

.nyelv-valto{display:flex; gap:2px; margin-left:14px;}
.nyelv-gomb{
  border:1px solid #2a3f61; background:transparent; color:#c3d2e8; font-family:'Oswald'; font-size:11px;
  letter-spacing:.5px; padding:6px 10px; cursor:pointer; transition:background .15s, color .15s;
}
.nyelv-gomb:first-child{border-radius:4px 0 0 4px;}
.nyelv-gomb:last-child{border-radius:0 4px 4px 0; border-left:none;}
.nyelv-gomb.active{background:var(--yellow); color:var(--navy); border-color:var(--yellow); font-weight:700;}

@media(max-width:820px){
  header{padding:12px 18px; flex-wrap:wrap;}
  .header-right{width:100%; justify-content:space-between; flex-wrap:wrap;}
  nav{display:none; width:100%; flex-direction:column; padding-top:10px; border-top:1px solid #23385b; margin-top:10px; order:3;}
  nav.open{display:flex;}
  .menu-toggle{display:block;}
  nav a{padding:10px 4px; border-bottom:1px solid #1c3155;}
}

/* ===== Scoreboard signature module ===== */
.scoreboard{
  background:radial-gradient(circle at 20% 20%, #16305c 0%, var(--navy) 60%);
  background-size:cover; background-position:center 30%;
  color:var(--white); border-bottom:1px solid #0a1830;
}
.scoreboard{position:relative;}
.scoreboard.kep-kattinthato{cursor:pointer;}
.scoreboard .scoreboard-inner{transition:opacity .35s ease;}
.scoreboard.kep-tiszta .scoreboard-inner{opacity:0; pointer-events:none;}
.hero-kep-jelzo{
  position:absolute; right:14px; bottom:12px; background:rgba(8,20,40,.7); color:#e3ecf8;
  font-size:11.5px; padding:5px 11px; border-radius:14px; border:1px solid rgba(255,255,255,.25); pointer-events:none;
}
.scoreboard-inner{
  max-width:1080px; margin:0 auto; padding:48px 40px;
  display:grid; grid-template-columns:1.1fr .9fr; gap:36px; align-items:center;
}
.eyebrow{display:flex; align-items:center; gap:10px; margin-bottom:14px;}
.eyebrow .chip{width:28px; height:3px; background:var(--yellow);}
.eyebrow span{font-family:'Oswald'; font-size:12.5px; letter-spacing:2.5px; text-transform:uppercase; color:#9db3d1;}
.scoreboard h1{font-size:clamp(26px,3.4vw,40px); font-weight:600; line-height:1.15; margin-bottom:14px;}
.scoreboard h1 em{font-style:normal; color:var(--yellow);}
.scoreboard p.lead{color:#c3d2e8; font-size:15px; max-width:46ch;}

.led-panel{
  background:#081428; border:1px solid #1c3155; border-radius:4px; padding:22px 24px;
  box-shadow:inset 0 0 30px rgba(0,0,0,.4);
}
.led-row{display:flex; justify-content:space-between; align-items:center; font-family:'Oswald';}
.led-label{font-size:11px; letter-spacing:2px; text-transform:uppercase; color:#6f88ab; margin-bottom:6px;}
.led-team{font-size:15px; text-transform:uppercase; color:var(--white);}
.led-score{font-size:42px; font-weight:700; color:var(--yellow); text-shadow:0 0 14px rgba(244,196,0,.45); letter-spacing:2px;}
.led-divider{height:1px; background:#1c3155; margin:16px 0;}
.led-sub{font-size:11.5px; color:#7d93b3; text-transform:uppercase; letter-spacing:1px;}

/* ===== Sections ===== */
section{padding:52px 40px; border-bottom:1px solid var(--line); max-width:1080px; margin:0 auto;}
.section-head{display:flex; align-items:baseline; gap:16px; margin-bottom:28px; flex-wrap:wrap;}
.section-head h2{font-size:24px; font-weight:600;}
.section-head .bar{flex:1; height:1px; background:var(--line); min-width:40px;}
.section-head .hint{font-size:12px; color:var(--grey); text-transform:none; letter-spacing:0; font-family:'Inter';}

/* pennant/ribbon divider echoing the crest banner */
.pennant{
  display:inline-flex; align-items:center; gap:8px; background:var(--navy); color:var(--white);
  font-family:'Oswald'; font-size:12px; letter-spacing:1.5px; text-transform:uppercase;
  padding:6px 16px 6px 14px; clip-path:polygon(0 0,100% 0,94% 100%,0% 100%);
}

.toggle-group{display:flex; gap:4px; background:var(--paper); border:1px solid var(--line); border-radius:20px; padding:3px;}
.toggle-gomb{
  border:none; background:transparent; color:var(--grey); font-family:'Oswald'; font-size:12px;
  text-transform:uppercase; letter-spacing:.5px; padding:7px 14px; border-radius:20px; cursor:pointer; transition:background .15s, color .15s;
}
.toggle-gomb.active{background:var(--navy); color:var(--white);}

.alcim{font-family:'Oswald'; font-size:15px; text-transform:uppercase; letter-spacing:.3px; margin-bottom:12px; color:var(--ink);}

/* ===== Cards ===== */
.grid{display:grid; grid-template-columns:repeat(4,1fr); gap:18px;}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:520px){.grid{grid-template-columns:1fr;}}

.player-card{
  background:var(--white); border:1px solid var(--line); border-radius:6px; overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease;
}
.player-card:hover{transform:translateY(-4px); box-shadow:0 14px 26px rgba(11,31,58,.12);}
.player-photo{
  aspect-ratio:1/1; background:linear-gradient(160deg,var(--blue),var(--navy)); position:relative;
  display:flex; align-items:center; justify-content:center; overflow:hidden;
}
.player-photo img{width:100%; height:100%; object-fit:cover;}
.player-photo .placeholder{color:rgba(255,255,255,.35); font-family:'Oswald'; font-size:52px;}
.player-number{
  position:absolute; top:8px; right:8px; background:var(--yellow); color:var(--navy);
  font-family:'Oswald'; font-weight:700; font-size:14px; width:30px; height:30px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
}
.player-number.player-role{
  width:auto; height:auto; border-radius:20px; padding:4px 10px; font-size:11px;
  text-transform:uppercase; letter-spacing:.5px;
}
.player-info{padding:14px 16px;}
.player-info .name{font-family:'Oswald'; font-size:16.5px; text-transform:uppercase; letter-spacing:.2px;}
.player-info .meta{font-size:12px; color:var(--grey); margin-top:2px;}

/* ===== Stat cards ===== */
.stat-card{background:var(--white); border:1px solid var(--line); border-left:4px solid var(--blue); border-radius:4px; padding:20px 22px;}
.stat-card .k{font-size:11.5px; text-transform:uppercase; letter-spacing:1px; color:var(--grey); font-weight:600; margin-bottom:10px;}
.stat-card .v{font-family:'Oswald'; font-size:38px; font-weight:600;}

/* ===== Tables ===== */
table{width:100%; border-collapse:collapse; font-size:14px; background:var(--white);}
th{
  text-align:left; font-family:'Oswald'; text-transform:uppercase; font-size:11.5px; letter-spacing:.6px;
  color:var(--white); background:var(--navy); padding:12px 10px; white-space:nowrap;
  position:sticky; top:0; z-index:1;
}
td{padding:11px 10px; border-bottom:1px solid var(--line);}
tr:nth-child(even) td{background:#FAFBFD;}
tr:hover td{background:#F0F4F9;}
tr.sajat-csapat td{background:#EAF2FF; font-weight:700; box-shadow:inset 3px 0 0 var(--blue);}
tr.sajat-csapat:hover td{background:#E1ECFC;}
.table-wrap{overflow-x:auto; border:1px solid var(--line); border-radius:8px; max-height:70vh;}
.table-wrap table{border:none;}
.table-wrap td:first-child, .table-wrap th:first-child{padding-left:14px;}
.rank-badge{
  display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px;
  border-radius:50%; background:var(--paper); border:1px solid var(--line);
  font-family:'Oswald'; font-weight:700; font-size:12.5px; color:var(--ink);
}
tr.sajat-csapat .rank-badge{background:var(--blue); color:var(--white); border-color:var(--blue);}

/* ===== Match list ===== */
.match-row{
  display:flex; align-items:center; gap:18px; padding:16px 18px; background:var(--white);
  border:1px solid var(--line); border-radius:6px; cursor:pointer; transition:background .15s;
}
.match-row:hover{background:#F9FBFD;}
.match-item{margin-bottom:10px;}
.match-item .match-row{margin-bottom:0; border-radius:6px 6px 0 0;}
.match-item:not(.open) .match-row{border-radius:6px;}
.match-chevron{color:var(--grey); font-size:12px; transition:transform .2s; flex-shrink:0;}
.match-item.open .match-chevron{transform:rotate(180deg);}
.match-detail{
  display:none; background:var(--paper); border:1px solid var(--line); border-top:none;
  border-radius:0 0 6px 6px; padding:6px 18px 14px;
}
.match-item.open .match-detail{display:block;}
.match-detail-empty{color:var(--grey); font-size:13px; padding:10px 0;}
.match-summary{
  font-size:13.5px; line-height:1.55; color:var(--ink); padding:12px 0 4px;
  border-bottom:1px solid var(--line); margin-bottom:4px; white-space:pre-line;
}
.match-detail table{background:transparent;}
.match-detail th{background:transparent; color:var(--grey); font-size:10.5px; padding:8px 8px 6px; border-bottom:1px solid var(--line);}
.match-detail td{padding:8px; border-bottom:1px dashed var(--line); background:transparent;}
.match-date{font-family:'Oswald'; font-size:13px; color:var(--grey); min-width:84px;}
.match-teams{flex:1; font-family:'Oswald'; font-size:16px; text-transform:uppercase;}
.match-teams .us{color:var(--blue);}
.match-sub{font-family:'Inter'; font-size:11.5px; text-transform:none; letter-spacing:0; color:var(--grey); margin-top:3px;}
.match-score{
  font-family:'Oswald'; font-size:20px; font-weight:700; background:var(--navy); color:var(--yellow);
  padding:5px 14px; border-radius:4px; min-width:64px; text-align:center;
}
.match-score.none{background:var(--paper); color:var(--grey); font-size:12px; font-weight:400;}
.match-score.wdl-gyozelem{background:var(--green); color:var(--white);}
.match-score.wdl-vereseg{background:var(--red); color:var(--white);}
.match-score.wdl-dontetlen{background:var(--navy); color:var(--yellow);}

/* ===== Scorer list ===== */
.scorer-row{display:flex; align-items:center; gap:14px; padding:12px 4px; border-bottom:1px dashed var(--line);}
.scorer-rank{font-family:'Oswald'; font-size:15px; color:var(--grey); width:26px;}
.scorer-name{flex:1; font-weight:600;}
.scorer-goals{font-family:'Oswald'; font-size:18px; color:var(--blue); font-weight:700;}
.scorer-row:first-child .scorer-goals{color:var(--yellow-deep);}

/* ===== Forms (photo upload) ===== */
.form-card{background:var(--white); border:1px solid var(--line); border-radius:6px; padding:28px; max-width:480px;}
label{display:block; font-size:12.5px; text-transform:uppercase; letter-spacing:.5px; color:var(--grey); font-weight:600; margin:16px 0 6px;}
label:first-child{margin-top:0;}
select, input[type="file"]{
  width:100%; padding:10px 12px; border:1px solid var(--line); border-radius:4px; background:var(--paper); font-size:14px; font-family:'Inter';
}
button.primary{
  margin-top:22px; background:var(--blue); color:var(--white); border:none; padding:12px 22px;
  font-family:'Oswald'; text-transform:uppercase; letter-spacing:.6px; font-size:14px; border-radius:4px; cursor:pointer;
  transition:background .15s;
}
button.primary:hover{background:var(--blue-bright);}
button.primary:disabled{background:#a9b6c8; cursor:not-allowed;}
.form-status{margin-top:14px; font-size:13px;}
.form-status a{color:inherit; text-decoration:underline;}
.form-status.ok{color:var(--green);}
.form-status.err{color:var(--red);}

.empty-note{color:var(--grey); font-size:14px; padding:18px 0;}
.loading-note{color:var(--grey); font-size:13px; font-style:italic;}

footer{padding:26px 40px; text-align:center; font-size:12.5px; color:var(--grey); background:var(--white);}
.footer-inner{display:flex; align-items:center; justify-content:center; gap:20px; flex-wrap:wrap;}
.footer-fb{
  display:inline-flex; align-items:center; gap:7px; color:#1877F2; text-decoration:none; font-weight:600;
  transition:opacity .15s;
}
.footer-fb:hover{opacity:.75;}
.footer-email{
  display:inline-flex; align-items:center; gap:7px; color:var(--blue); text-decoration:none; font-weight:600;
  transition:opacity .15s;
}
.footer-email:hover{opacity:.75;}

.fb-widget-wrap{max-width:500px; border:1px solid var(--line); border-radius:8px; overflow:hidden; background:var(--white);}

.fb-share-gomb{
  display:inline-flex; align-items:center; gap:6px; background:#1877F2; color:var(--white); border:none;
  padding:9px 16px; border-radius:4px; font-family:'Oswald'; font-size:13px; text-transform:uppercase;
  letter-spacing:.5px; cursor:pointer; transition:background .15s; margin-left:10px;
}
.fb-share-gomb:hover{background:#1360d6;}
.fb-share-kicsi{margin:0 0 10px; font-size:11px; padding:6px 12px;}

/* ===== Videó lightbox ===== */
.video-lightbox{display:none; position:fixed; inset:0; background:rgba(8,20,40,.9); z-index:200; align-items:center; justify-content:center; padding:20px;}
.video-lightbox.open{display:flex;}
.video-lightbox-inner{position:relative; width:100%; max-width:820px;}
.video-lightbox-close{
  position:absolute; top:-40px; right:0; background:none; border:none; color:var(--white); font-size:20px; cursor:pointer;
}
.video-lightbox-frame{position:relative; width:100%; padding-top:56.25%; background:#000; border-radius:6px; overflow:hidden;}
.video-lightbox-frame iframe{position:absolute; inset:0; width:100%; height:100%; border:none;}

/* ===== Médianéző (galéria mappán belüli fotó/videó, elő-hátra nyilakkal) ===== */
.media-nezo{display:none; position:fixed; inset:0; background:rgba(8,20,40,.94); z-index:210; flex-direction:column; align-items:center; justify-content:center; padding:20px;}
.media-nezo.open{display:flex;}
.media-nezo-inner{position:relative; width:100%; max-width:900px; display:flex; flex-direction:column; align-items:center;}
.media-nezo-close{
  position:absolute; top:-42px; right:0; background:none; border:none; color:var(--white); font-size:22px; cursor:pointer; z-index:2;
}
.media-nezo-cim{color:var(--white); font-size:13px; margin-bottom:10px; text-align:center; min-height:16px;}
.media-nezo-kozep{position:relative; width:100%; display:flex; align-items:center; justify-content:center;}
.media-nezo-tartalom{width:100%; max-height:70vh; display:flex; align-items:center; justify-content:center; background:#000; border-radius:6px; overflow:hidden;}
.media-nezo-kep{width:100%; max-height:70vh; object-fit:contain;}
.media-nezo-video{position:relative; width:100%; padding-top:56.25%;}
.media-nezo-video iframe{position:absolute; inset:0; width:100%; height:100%; border:none;}
.media-nezo-nyil{
  position:absolute; top:50%; transform:translateY(-50%); background:rgba(255,255,255,.12); border:none; color:var(--white);
  font-size:30px; width:44px; height:44px; border-radius:50%; cursor:pointer; z-index:2; transition:background .15s; line-height:1;
}
.media-nezo-nyil:hover{background:rgba(255,255,255,.25);}
.media-nezo-elozo{left:-8px;}
.media-nezo-kovetkezo{right:-8px;}
.media-nezo-mozaik{display:flex; gap:8px; margin-top:14px; overflow-x:auto; max-width:100%; padding:4px 2px;}
.media-nezo-mozaik img{
  width:56px; height:42px; object-fit:cover; border-radius:4px; cursor:pointer; opacity:.5; flex-shrink:0;
  border:2px solid transparent; transition:opacity .15s, border-color .15s;
}
.media-nezo-mozaik img:hover{opacity:.8;}
.media-nezo-mozaik img.aktiv{opacity:1; border-color:var(--yellow);}
@media(max-width:640px){
  .media-nezo-nyil{width:38px; height:38px; font-size:24px;}
  .media-nezo-elozo{left:2px;}
  .media-nezo-kovetkezo{right:2px;}
}

/* ===== Gólvideó / galéria kártyák ===== */
.gol-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:18px;}

/* ===== Galéria mappa-kártyák ===== */
.mappa-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(230px, 1fr)); gap:28px 24px;}
.mappa-kartya-wrap{position:relative; cursor:pointer; padding:6px 6px 10px;}
.mappa-kartya-wrap::before, .mappa-kartya-wrap::after{
  content:''; position:absolute; inset:6px 10px 10px; background:var(--white); border:1px solid var(--line);
  border-radius:10px; box-shadow:0 4px 10px rgba(11,31,58,.06);
}
.mappa-kartya-wrap::before{transform:rotate(-5deg); z-index:1;}
.mappa-kartya-wrap::after{transform:rotate(4deg); z-index:0;}
.mappa-kartya{
  position:relative; z-index:2; aspect-ratio:4/3; border-radius:10px; overflow:hidden;
  border:1px solid var(--line); box-shadow:0 6px 16px rgba(11,31,58,.14); transition:transform .18s ease;
}
.mappa-kartya-wrap:hover .mappa-kartya{transform:translateY(-4px) rotate(-1.5deg);}
.mappa-kartya img{width:100%; height:100%; object-fit:cover;}
.mappa-cimke{
  position:absolute; left:0; right:0; bottom:0; padding:26px 14px 12px; color:var(--white);
  background:linear-gradient(180deg, rgba(8,20,40,0) 0%, rgba(8,20,40,.82) 100%);
}
.mappa-nev{font-family:'Oswald'; font-size:15px; text-transform:uppercase; letter-spacing:.3px; line-height:1.25;}
.mappa-darabszam{font-size:11px; opacity:.85; margin-top:2px;}
.mappa-vissza-gomb{
  background:none; border:1px solid var(--line); color:var(--ink); padding:8px 16px; border-radius:20px;
  font-family:'Oswald'; font-size:12px; text-transform:uppercase; letter-spacing:.4px; cursor:pointer; transition:border-color .15s;
}
.mappa-vissza-gomb:hover{border-color:var(--blue); color:var(--blue);}
.gol-kartya{background:var(--white); border:1px solid var(--line); border-radius:8px; overflow:hidden; transition:transform .15s ease, box-shadow .15s ease;}
.gol-kartya:hover{transform:translateY(-3px); box-shadow:0 12px 22px rgba(11,31,58,.1);}
.gol-thumb{position:relative; aspect-ratio:16/9; background:var(--navy); cursor:pointer; overflow:hidden;}
.gol-thumb img{width:100%; height:100%; object-fit:cover;}
.gol-thumb .play-gomb{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center; background:rgba(8,20,40,.25); transition:background .15s;
}
.gol-thumb .play-gomb::after{
  content:''; width:0; height:0; border-style:solid; border-width:11px 0 11px 18px; border-color:transparent transparent transparent var(--white);
  margin-left:4px; filter:drop-shadow(0 1px 3px rgba(0,0,0,.4));
}
.gol-thumb:hover .play-gomb{background:rgba(8,20,40,.45);}
.gol-info{padding:12px 14px;}
.gol-jatekos{font-family:'Oswald'; font-size:14.5px; text-transform:uppercase;}
.gol-meta{font-size:11.5px; color:var(--grey); margin-top:2px;}
.gol-szavaz-sor{display:flex; align-items:center; justify-content:space-between; margin-top:10px; gap:8px;}
.gol-szavazat-szam{font-family:'Oswald'; font-weight:700; color:var(--blue); font-size:14px;}
.gol-szavaz-gomb{
  background:var(--blue); color:var(--white); border:none; padding:6px 12px; border-radius:4px; font-family:'Oswald';
  font-size:11px; text-transform:uppercase; letter-spacing:.4px; cursor:pointer; transition:background .15s;
}
.gol-szavaz-gomb:hover{background:var(--blue-bright);}
.gol-szavaz-gomb:disabled{background:var(--grey); cursor:not-allowed; opacity:.6;}
.gol-szavazva{font-size:11px; color:var(--green); font-weight:600;}
.honap-badge{
  display:inline-flex; align-items:center; gap:5px; background:#FFF6DA; color:#8a6b00; border:1px solid #f0dfa0;
  padding:5px 12px; border-radius:20px; font-size:12px; font-weight:700; margin-top:8px;
}

/* ===== Mini-arckép a játékosnevek mellett ===== */
.jatekos-nev-mini{display:inline-flex; align-items:center; gap:7px; vertical-align:middle; position:relative; cursor:pointer;}
.mini-avatar{
  width:22px; height:22px; border-radius:50%; object-fit:cover; flex-shrink:0; border:1px solid var(--line); background:var(--paper);
}
.mini-avatar-placeholder{
  display:flex; align-items:center; justify-content:center; background:var(--navy); color:var(--white);
  font-family:'Oswald'; font-size:9px; font-weight:700; letter-spacing:.3px;
}
.jatekos-popup{
  display:none; position:absolute; z-index:60; bottom:calc(100% + 10px); left:50%; transform:translateX(-50%);
  width:150px; height:150px; border-radius:10px; overflow:hidden; border:3px solid var(--white);
  box-shadow:0 10px 28px rgba(11,31,58,.4); background:var(--navy);
}
.jatekos-popup img{width:100%; height:100%; object-fit:cover; display:block;}
.jatekos-popup-placeholder{
  width:100%; height:100%; display:flex; align-items:center; justify-content:center;
  color:rgba(255,255,255,.4); font-family:'Oswald'; font-size:40px; font-weight:700;
}
/* Asztali gépen (valódi egérrel) hoverre; érintőképernyőn kattintásra (.mutatott osztály) */
@media (hover: hover){
  .jatekos-nev-mini:hover .jatekos-popup{display:block;}
}
.jatekos-nev-mini.mutatott .jatekos-popup{display:block;}

/* ===== Kezdőcsapat doboz ===== */
.kezdocsapat-doboz{background:var(--paper); border:1px solid var(--line); border-radius:6px; padding:12px 14px; margin:10px 0;}
.kezdocsapat-cim{font-family:'Oswald'; font-size:12px; text-transform:uppercase; letter-spacing:.5px; color:var(--blue); margin-bottom:6px;}
.kezdocsapat-nevek{font-size:13.5px; line-height:1.6; color:var(--ink); font-weight:600;}
.csere-sor{font-size:12.5px; color:var(--grey); margin-top:6px;}
.edzo-sor{font-size:12.5px; color:var(--grey); margin-top:6px;}
.upcoming-left .kezdocsapat-doboz{background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.15);}
.upcoming-left .kezdocsapat-cim{color:var(--yellow);}
.upcoming-left .kezdocsapat-nevek{color:var(--white);}
.upcoming-left .csere-sor{color:#9db3d1;}
.upcoming-left .edzo-sor{color:#9db3d1;}

/* ===== "A Szurkoló Hangja" doboz ===== */
.szurkolo-doboz{background:#F0F6FF; border:1px solid #d5e6fb; border-radius:6px; padding:14px 16px; margin-top:14px;}
.szurkolo-cim{font-family:'Oswald'; font-size:12.5px; text-transform:uppercase; letter-spacing:.5px; color:var(--blue); margin-bottom:8px;}
.szurkolo-kerdes{font-size:13.5px; color:var(--ink); margin-bottom:8px;}
.szurkolo-gombok{display:flex; gap:8px; flex-wrap:wrap;}
.szurkolo-gomb{
  background:var(--white); border:1px solid var(--line); padding:8px 16px; border-radius:20px; font-size:13px;
  font-weight:600; cursor:pointer; transition:background .15s, border-color .15s;
}
.szurkolo-gomb:hover{border-color:var(--blue);}
.szurkolo-gomb.kivalasztva{background:var(--blue); color:var(--white); border-color:var(--blue);}
.szurkolo-csillag-gomb{
  background:none; border:none; font-size:24px; color:#d4d9e2; cursor:pointer; padding:0 2px; transition:color .15s;
}
.szurkolo-csillag-gomb.kivalasztva{color:#F4C400;}
.szurkolo-koszonet{font-size:13.5px; color:var(--green); font-weight:600;}
.szurkolo-eredmeny{font-size:12px; color:var(--grey); margin-top:4px;}

/* ===== Születésnap kártya (Kezdőlap) ===== */
.szuletesnap-sav{
  background:linear-gradient(135deg, #FFF6DA, #FFEFC0); border:1px solid #f0dfa0; border-radius:8px;
  padding:14px 18px; margin-bottom:24px; font-size:14px; color:#6b5300; font-weight:600;
}
.szuletesnap-sor{display:flex; align-items:center; gap:8px; padding:4px 0;}

/* ===== Idővonal (Rólunk oldal) ===== */
.idovonal{position:relative; max-width:640px; padding-left:28px; border-left:3px solid var(--yellow);}
.idovonal-elem{position:relative; padding-bottom:28px;}
.idovonal-elem:last-child{padding-bottom:0;}
.idovonal-elem::before{
  content:''; position:absolute; left:-35px; top:2px; width:14px; height:14px; border-radius:50%;
  background:var(--navy); border:3px solid var(--yellow);
}
.idovonal-ev{font-family:'Oswald'; font-weight:700; font-size:20px; color:var(--blue); margin-bottom:4px;}
.idovonal-szoveg{font-size:14px; line-height:1.6; color:var(--ink); max-width:56ch;}

.sponsor-strip{display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:20px;}
.sponsor-logo{
  display:flex; align-items:center; justify-content:center; background:var(--white);
  border:1px solid var(--line); border-radius:8px; padding:20px; min-height:150px;
  transition:transform .15s ease, box-shadow .15s ease;
}
.sponsor-logo:hover{transform:translateY(-3px); box-shadow:0 10px 20px rgba(11,31,58,.1);}
.sponsor-logo img{max-height:90px; max-width:100%; object-fit:contain;}
.sponsor-inner{display:flex; flex-direction:column; align-items:center; gap:10px; text-align:center;}
.sponsor-leiras{font-size:12px; color:var(--grey); line-height:1.4;}

.upcoming-card{
  display:grid; grid-template-columns:1fr auto; gap:24px; align-items:center;
  background:var(--navy); color:var(--white); border-radius:10px; padding:28px 32px;
}
.upcoming-teams{font-family:'Oswald'; font-size:20px; text-transform:uppercase;}
.upcoming-date{color:#9db3d1; font-size:13px; margin-top:4px;}
.upcoming-countdown{
  display:inline-block; margin-top:10px; background:var(--yellow); color:var(--navy);
  font-family:'Oswald'; font-weight:700; font-size:13px; text-transform:uppercase;
  padding:5px 14px; border-radius:20px;
}
.upcoming-right{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  background:rgba(255,255,255,.06); border-radius:8px; padding:16px 26px; min-width:120px;
}
.weather-icon{font-size:32px;}
.weather-temp{font-family:'Oswald'; font-size:20px; margin-top:4px;}
.weather-temp span{color:#9db3d1; font-size:14px;}
.weather-label{font-size:11px; color:#9db3d1; text-transform:uppercase; letter-spacing:.5px; margin-top:2px;}

.tipp-doboz{margin-top:18px; padding-top:16px; border-top:1px solid rgba(255,255,255,.15);}
.tipp-cim{font-family:'Oswald'; font-size:13px; text-transform:uppercase; letter-spacing:.5px; color:var(--yellow); margin-bottom:8px;}
.tipp-magyarazat{font-size:11.5px; color:rgba(255,255,255,.65); line-height:1.5; margin-bottom:12px; max-width:52ch;}
.tipp-magyarazat a{color:var(--yellow);}
.tipp-nev-figyelmeztetes{
  font-family:'Oswald'; font-weight:700; font-size:12px; letter-spacing:.3px; text-transform:uppercase;
  color:var(--navy); background:var(--yellow); padding:8px 12px; border-radius:4px; margin-bottom:10px; line-height:1.4;
}

.tipp-dij-sor{
  font-size:13px; font-weight:600; color:#8fe0a3; margin-bottom:14px; line-height:1.4;
}
.tipp-sor{display:flex; align-items:center; gap:8px; flex-wrap:wrap;}
.tipp-nev-sor{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:10px;}
.tipp-nev-sor input[type="text"]{
  flex:1; min-width:120px; padding:9px 12px; border-radius:4px; border:1px solid rgba(255,255,255,.2);
  background:rgba(255,255,255,.08); color:var(--white); font-family:'Inter'; font-size:13px;
}
.tipp-sor input[type="text"]{
  flex:1; min-width:90px; padding:9px 12px; border-radius:4px; border:1px solid rgba(255,255,255,.2);
  background:rgba(255,255,255,.08); color:var(--white); font-family:'Inter'; font-size:13px;
}
.tipp-sor input[type="number"]{
  width:96px; padding:9px 6px; border-radius:4px; border:1px solid rgba(255,255,255,.2);
  background:rgba(255,255,255,.08); color:var(--white); text-align:center; font-family:'Oswald'; font-size:14px;
}
.tipp-sor input[type="number"]::placeholder{font-size:11px; text-transform:uppercase; letter-spacing:.3px;}
.tipp-sor input::placeholder{color:rgba(255,255,255,.45);}
.tipp-sor span{color:rgba(255,255,255,.6); font-family:'Oswald'; font-weight:700;}
#km-tipp-doboz .form-status{margin-top:10px;}

/* Lezárt tippelés: áthúzott, elhalványított doboz + piros "lezárva" sáv */
.tipp-lezarva-sav{
  font-family:'Oswald'; font-weight:700; font-size:13px; letter-spacing:.5px; text-transform:uppercase;
  color:#fff; background:#c0392b; padding:9px 12px; border-radius:4px; margin-bottom:12px; text-align:center;
}
.tipp-lezarva .tipp-cim,
.tipp-lezarva .tipp-magyarazat,
.tipp-lezarva .tipp-nev-figyelmeztetes,
.tipp-lezarva .tipp-dij-sor{text-decoration:line-through; opacity:.5;}
.tipp-lezarva .tipp-nev-sor,
.tipp-lezarva .tipp-sor{opacity:.4; pointer-events:none;}
.tipp-lezarva input,.tipp-lezarva button{cursor:not-allowed;}

.fade-in{animation:fadein .4s ease;}
@keyframes fadein{from{opacity:0; transform:translateY(6px);} to{opacity:1; transform:translateY(0);}}

/* ===== Mobil optimalizálás ===== */
@media(max-width:700px){
  section{padding:32px 18px;}
  .section-head{margin-bottom:20px;}
  .section-head h2{font-size:20px;}

  .scoreboard-inner{
    grid-template-columns:1fr; padding:32px 18px; gap:22px;
  }
  .scoreboard h1{font-size:24px;}
  .scoreboard p.lead{font-size:13.5px;}
  .led-panel{padding:18px;}
  .led-row{flex-wrap:wrap; gap:8px 12px;}
  .led-team{font-size:12px;}
  .led-score{font-size:30px; letter-spacing:1px;}

  .pennant{font-size:11px; padding:5px 14px 5px 12px;}

  .match-row{padding:12px 14px; gap:10px;}
  .match-date{min-width:0; font-size:10.5px; flex-shrink:0;}
  .match-teams{font-size:13px;}
  .match-sub{font-size:10.5px;}
  .match-score{font-size:15px; padding:4px 10px; min-width:0;}
  .match-chevron{font-size:10px;}
  .match-detail{padding:4px 12px 12px;}
  .match-detail table{display:block; overflow-x:auto; white-space:nowrap;}
  .match-summary{font-size:12.5px;}

  .stat-card{padding:16px 18px;}
  .stat-card .v{font-size:30px;}

  table{font-size:12.5px;}
  th{padding:9px 8px; font-size:10px;}
  td{padding:9px 8px;}

  .form-card{padding:18px; max-width:100%;}

  .sponsor-strip{grid-template-columns:repeat(auto-fill, minmax(140px, 1fr)); gap:12px;}
  .sponsor-logo{height:100px; padding:12px;}

  .player-info{padding:12px;}
  .player-info .name{font-size:14.5px;}

  .upcoming-card{grid-template-columns:1fr; padding:22px 20px; text-align:center;}
  .upcoming-right{margin:0 auto;}
}

@media(max-width:400px){
  .brand .txt small{display:none;}
  .brand img{width:38px; height:38px;}
  .brand .txt b{font-size:14px;}
}

/* ===== Szülinapi felugró ünneplés (Kezdőlap) ===== */
.szulinap-overlay{
  position:fixed; inset:0; z-index:300; display:flex; align-items:center; justify-content:center;
  background:rgba(3,10,22,.68); padding:20px; opacity:0; transition:opacity .2s ease;
}
.szulinap-overlay.lathato{opacity:1;}
.szulinap-modal{
  position:relative; width:100%; max-width:520px; max-height:88vh; overflow-y:auto; overflow-x:hidden;
  background:linear-gradient(160deg, #16305c 0%, #0B1F3A 70%); border:1px solid #22406e; border-radius:16px;
  box-shadow:0 30px 70px rgba(0,0,0,.5); padding:40px 32px 30px; text-align:center;
  transform:translateY(14px) scale(.97); transition:transform .22s ease;
}
.szulinap-overlay.lathato .szulinap-modal{transform:translateY(0) scale(1);}

.szulinap-bezar-x{
  position:absolute; top:14px; right:14px; width:30px; height:30px; border-radius:50%;
  border:1px solid #2a3f61; background:rgba(255,255,255,.04); color:#c3d2e8; cursor:pointer;
  display:flex; align-items:center; justify-content:center; padding:0;
}
.szulinap-bezar-x:hover{background:rgba(255,255,255,.1);}

.szulinap-konfetti{position:absolute; inset:0; overflow:hidden; border-radius:16px; pointer-events:none;}
.szulinap-konfetti-darab{
  position:absolute; top:-16px; width:8px; height:14px; opacity:.9;
  animation-name:szulinap-hullas; animation-timing-function:linear; animation-iteration-count:infinite;
}
.szulinap-konfetti-darab.kerek{width:7px; height:7px; border-radius:50%;}
@keyframes szulinap-hullas{
  0%{transform:translateY(-20px) rotate(0deg); opacity:1;}
  85%{opacity:1;}
  100%{transform:translateY(420px) rotate(360deg); opacity:0;}
}

.szulinap-pezsgo{position:relative; display:flex; align-items:flex-end; justify-content:center; gap:14px; height:90px; margin-bottom:4px;}
.szulinap-dugo{animation:szulinap-durran 2.4s ease-in-out infinite;}
@keyframes szulinap-durran{
  0%, 70%{transform:translateY(0) rotate(0deg);}
  78%{transform:translateY(-14px) rotate(-18deg);}
  86%{transform:translateY(-4px) rotate(-8deg);}
  100%{transform:translateY(0) rotate(0deg);}
}
.szulinap-pohar{margin-bottom:2px;}
.szulinap-buborek{animation-name:szulinap-buborekol; animation-timing-function:ease-in; animation-iteration-count:infinite;}
.szulinap-buborek.b1{animation-duration:2.1s; animation-delay:0s;}
.szulinap-buborek.b2{animation-duration:1.7s; animation-delay:.4s;}
.szulinap-buborek.b3{animation-duration:2.4s; animation-delay:.8s;}
@keyframes szulinap-buborekol{
  0%{transform:translateY(0); opacity:.9;}
  100%{transform:translateY(-22px); opacity:0;}
}

.szulinap-cim{font-family:'Oswald'; text-transform:uppercase; font-size:24px; font-weight:700; color:#F4C400; letter-spacing:.5px; margin-top:6px;}
.szulinap-alcim{font-size:13.5px; color:#9db3d1; margin-top:4px; margin-bottom:18px;}

.szulinap-tartalom{display:flex; flex-wrap:wrap; gap:18px; justify-content:center;}
.szulinap-kartya{display:flex; flex-direction:column; align-items:center; gap:8px; width:130px;}
.szulinap-foto-keret{width:110px; height:110px; border-radius:50%; border:4px solid #F4C400; box-shadow:0 0 0 5px rgba(244,196,0,.15); overflow:hidden; animation:szulinap-bob 3s ease-in-out infinite;}
@keyframes szulinap-bob{0%,100%{transform:translateY(0);}50%{transform:translateY(-6px);}}
.szulinap-nagy-foto{width:100%; height:100%; object-fit:cover; display:block;}
.szulinap-nagy-foto-placeholder{
  width:100%; height:100%; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(145deg,#1c3c6e,#122A4D); color:#fff; font-family:'Oswald'; font-size:30px; font-weight:700;
}
.szulinap-nev{font-size:14px; font-weight:600; color:#fff; text-align:center;}

.szulinap-gombsor{display:flex; flex-direction:column; align-items:center; gap:10px; margin-top:26px;}
.szulinap-nemutasd{background:none; border:none; color:#7f98bd; font-size:12.5px; text-decoration:underline; cursor:pointer; padding:4px;}
.szulinap-nemutasd:hover{color:#c3d2e8;}

@media(max-width:480px){
  .szulinap-modal{padding:32px 20px 24px;}
  .szulinap-cim{font-size:20px;}
  .szulinap-kartya{width:44%;}
}
