/* ═══════════════════════════════════════════════
   player.css — K&K Stream player-specific styles
   Requires common.css loaded first
   ═══════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════
   AUTH GATE
   ═══════════════════════════════════════════════ */
#auth-gate{
  position:fixed;inset:0;z-index:200;
  display:flex;align-items:center;justify-content:center;padding:20px;
  background:
    radial-gradient(700px 500px at 50% 30%,rgba(201,162,39,.09),transparent 70%),
    rgba(7,7,15,.92);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
#auth-gate.hidden{display:none}
.gate-box{
  position:relative;background:rgba(16,16,28,.94);
  border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:clamp(36px,7vw,52px) clamp(28px,6vw,44px);
  width:420px;max-width:100%;text-align:center;
  box-shadow:var(--shadow),0 0 80px -30px rgba(201,162,39,.15);
  animation:gateIn .55s var(--ease);
}
.gate-box::before{
  content:'';position:absolute;inset:0;border-radius:var(--radius-lg);padding:1px;pointer-events:none;
  background:linear-gradient(135deg,rgba(201,162,39,.25) 0%,rgba(201,162,39,.06) 50%,transparent 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);
  -webkit-mask-composite:xor;mask-composite:exclude;
}
.gate-lock{
  width:64px;height:64px;margin:0 auto 20px;border-radius:20px;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,rgba(201,162,39,.18),rgba(201,162,39,.05));
  border:1px solid var(--border);
  box-shadow:0 8px 24px -8px var(--gold-glow);
}
.gate-lock svg{fill:var(--gold);width:30px;height:30px}
.gate-logo{
  font-family:var(--font-en);font-size:2.2rem;font-weight:800;letter-spacing:2px;
  background:linear-gradient(135deg,var(--gold-xl),var(--gold));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  margin-bottom:10px;
}
.gate-title{color:var(--text2);font-size:.9rem;margin-bottom:30px;line-height:1.75}
.gate-pass-wrap{position:relative;margin-bottom:14px}
.gate-pass-wrap .gate-input{margin-bottom:0;padding-left:48px}
.gate-eye{
  position:absolute;top:50%;left:14px;transform:translateY(-50%);
  background:none;border:none;cursor:pointer;color:var(--text3);
  display:flex;align-items:center;justify-content:center;
  width:30px;height:30px;border-radius:8px;
  transition:color .2s,background .2s;padding:0;
}
.gate-eye:hover{color:var(--gold);background:var(--gold-bg)}
.gate-eye svg{fill:currentColor;width:20px;height:20px}
.gate-eye .eye-open{display:none}
.gate-eye.open .eye-closed{display:none}
.gate-eye.open .eye-open{display:block}

@keyframes gateShake{
  0%,100%{transform:translateX(0)}
  15%{transform:translateX(-8px)}
  30%{transform:translateX(8px)}
  45%{transform:translateX(-6px)}
  60%{transform:translateX(6px)}
  75%{transform:translateX(-3px)}
  90%{transform:translateX(3px)}
}
.gate-box.shake{animation:gateShake .5s var(--ease)}

@keyframes lockPulse{
  0%,100%{box-shadow:0 8px 24px -8px var(--gold-glow)}
  50%{box-shadow:0 8px 36px -4px rgba(201,162,39,.55)}
}
.gate-lock{animation:lockPulse 2.4s ease-in-out infinite}

.gate-input{
  width:100%;padding:14px 18px;
  background:rgba(255,255,255,.038);border:1px solid var(--border);
  border-radius:var(--radius-sm);color:var(--text);
  font-size:1.15rem;font-family:var(--font);
  outline:none;margin-bottom:14px;
  transition:border-color .25s,box-shadow .25s;
  text-align:center;letter-spacing:5px;
}
.gate-input:focus{border-color:var(--gold);box-shadow:0 0 0 4px var(--gold-glow)}
.gate-input::placeholder{letter-spacing:normal;color:var(--text3);font-size:.92rem}
.gate-btn{
  width:100%;padding:14px;
  background:linear-gradient(135deg,var(--gold-l),var(--gold) 60%,var(--gold-d));
  border:none;border-radius:var(--radius-sm);
  color:#060609;font-size:1.02rem;font-weight:800;
  font-family:var(--font);cursor:pointer;
  transition:filter .2s,transform .1s,box-shadow .2s;
  box-shadow:0 12px 28px -10px rgba(201,162,39,.55);
}
.gate-btn:hover{filter:brightness(1.09);box-shadow:0 14px 32px -8px rgba(201,162,39,.70)}
.gate-btn:active{transform:scale(.97)}
.gate-btn:disabled{opacity:.4;cursor:not-allowed}
.gate-error{color:var(--red);font-size:.84rem;margin-top:12px;min-height:1.2em}

/* ═══════════════════════════════════════════════
   PLAYER SECTION — full-body dominant player
   ═══════════════════════════════════════════════ */
.player-section{
  max-width:1440px;margin:0 auto;
  padding:clamp(10px,2vw,18px) clamp(14px,3vw,26px) clamp(10px,2vw,18px);
  position:relative;
  transition:max-width .35s var(--ease);
}
/* compact (default) — small centered player */
body.player-compact .player-section{max-width:860px}
/* expanded (توسيط) — overlay controls like fullscreen */
body:not(.player-compact) .player-section{max-width:100%;padding:0}
body:not(.player-compact) .yt-wrap{border-radius:0;height:92vh}
body:not(.player-compact) .yt-ratio{padding-top:0;height:100%;flex:1 1 auto;min-height:0}
body:not(.player-compact) .yt-ctrl{
  position:absolute;left:0;right:0;bottom:0;z-index:20;border-top:none;
  background:linear-gradient(180deg,transparent 0%,rgba(8,8,14,.9) 55%);
  opacity:0;transform:translateY(8px);pointer-events:none;
  transition:opacity .25s var(--ease),transform .25s var(--ease);
}
body:not(.player-compact) .yt-wrap.show-ctrl .yt-ctrl{opacity:1;transform:none;pointer-events:auto}

.ambient-glow{
  position:absolute;inset:20px;z-index:-1;border-radius:var(--radius);
  filter:blur(80px);opacity:.32;
  background:radial-gradient(circle at 40% 50%,var(--gold) 0%,#785ac8 55%,transparent 80%);
  pointer-events:none;transition:all .8s var(--ease);
  animation:ambient-pulse 6s ease-in-out infinite alternate;
}
@keyframes ambient-pulse{
  0%{filter:blur(65px);opacity:.22;transform:scale(.97)}
  100%{filter:blur(90px);opacity:.40;transform:scale(1.03)}
}

/* ── Player wrapper ── */
.yt-wrap{
  position:relative;background:#000;border-radius:var(--radius);overflow:hidden;
  box-shadow:var(--shadow),0 0 0 1px var(--line);
  cursor:pointer;
  display:flex;flex-direction:column;
}
.yt-ratio{position:relative;padding-top:56.25%}

/* ═══════════════════════════════════════════════
   OFFLINE OVERLAY
   ═══════════════════════════════════════════════ */
.yt-offline{
  position:absolute;inset:0;z-index:10;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:
    radial-gradient(ellipse 80% 60% at 50% 40%,rgba(201,162,39,.10) 0%,transparent 65%),
    radial-gradient(ellipse 60% 50% at 15% 80%,rgba(120,90,200,.07) 0%,transparent 60%),
    radial-gradient(ellipse 60% 50% at 85% 20%,rgba(80,50,160,.05) 0%,transparent 60%),
    linear-gradient(170deg,#040408 0%,#0a0a15 50%,#050510 100%);
  transition:opacity .5s var(--ease);pointer-events:none;
}
.yt-offline::before{
  content:'';position:absolute;inset:0;pointer-events:none;opacity:.18;
  background-image:
    linear-gradient(rgba(201,162,39,.08) 1px,transparent 1px),
    linear-gradient(90deg,rgba(201,162,39,.08) 1px,transparent 1px);
  background-size:40px 40px;
  mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 20%,transparent 80%);
  -webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 20%,transparent 80%);
}
.yt-offline.hidden{opacity:0;pointer-events:none}

/* Tap to play overlay */
#tapToPlay{
  position:absolute;inset:0;z-index:12;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;
  background:rgba(0,0,0,.55);backdrop-filter:blur(4px);
  cursor:pointer;
}
.ttp-btn{
  width:76px;height:76px;border-radius:50%;
  background:var(--gold);color:#06060c;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 0 30px rgba(201,162,39,.5);
  transition:transform .18s,box-shadow .18s;
}
#tapToPlay:hover .ttp-btn,#tapToPlay:active .ttp-btn{
  transform:scale(1.1);
  box-shadow:0 0 44px rgba(201,162,39,.7);
}
.ttp-label{
  font-size:1rem;font-weight:700;color:#fff;
  letter-spacing:.04em;
}
.yt-offline-logo{
  font-family:var(--font-en);font-size:clamp(2.6rem,8vw,4rem);font-weight:900;letter-spacing:4px;
  background:linear-gradient(135deg,var(--gold-xl),var(--gold) 55%,var(--gold-d));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  margin-bottom:18px;position:relative;
  animation:float 4s ease-in-out infinite;
  filter:drop-shadow(0 0 30px rgba(201,162,39,.35));
}
.yt-offline-text{color:var(--text2);font-size:1rem;font-weight:500;letter-spacing:.5px}
.yt-offline::after{
  content:'';position:absolute;bottom:18%;left:50%;transform:translateX(-50%);
  width:120px;height:3px;
  background:linear-gradient(90deg,transparent,rgba(201,162,39,.18),transparent);
  border-radius:3px;
  animation:dotSlide 2.2s ease-in-out infinite;
}
@keyframes dotSlide{
  0%,100%{width:50px;opacity:.3}
  50%{width:140px;opacity:.7}
}

.yt-offline-waiting{
  color:var(--text3);font-size:.82rem;letter-spacing:.5px;margin-top:8px;
  animation:blink 2.6s ease-in-out infinite;
}

.yt-spinner-wrap{display:flex;align-items:center;justify-content:center;margin:26px auto 0;position:relative;width:50px;height:50px}
.yt-spinner-outer{
  position:absolute;inset:0;border-radius:50%;
  border:3px solid transparent;border-top-color:var(--gold);
  animation:spin .9s cubic-bezier(.6,.2,.2,.8) infinite;
  box-shadow:var(--glow-gold);
}
.yt-spinner-inner{
  position:absolute;inset:9px;border-radius:50%;
  border:2px solid transparent;border-bottom-color:rgba(201,162,39,.45);
  animation:spin .6s cubic-bezier(.6,.2,.2,.8) infinite reverse;
}
/* ── Buffer spinner (while playing) ── */
.yt-buffer{
  position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:6;
  width:54px;height:54px;border:3px solid rgba(255,255,255,.08);border-top-color:var(--gold);
  border-radius:50%;animation:spin .8s cubic-bezier(.5,.1,.1,.9) infinite;display:none;
  box-shadow:0 0 22px var(--gold-glow);pointer-events:none;
}
.yt-buffer.show{display:block}

/* ── Ripple ── */
#ytRipple{
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%) scale(.5);
  width:84px;height:84px;
  background:rgba(0,0,0,.55);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  pointer-events:none;z-index:5;opacity:0;
  transition:transform .18s var(--ease),opacity .18s;
  backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);
  border:1px solid rgba(255,255,255,.12);
}
#ytRipple.show{opacity:1;transform:translate(-50%,-50%) scale(1)}

/* ── Top gradient ── */
.yt-top-grad{
  position:absolute;top:0;left:0;right:0;height:90px;
  background:linear-gradient(to bottom,rgba(0,0,0,.55),transparent);
  pointer-events:none;z-index:3;opacity:0;transition:opacity .25s;
}
.yt-wrap:hover .yt-top-grad,.yt-wrap.show-ctrl .yt-top-grad{opacity:1}

/* ═══════════════════════════════════════════════
   CONTROLS
   ═══════════════════════════════════════════════ */
/* ── Control bar — متراكب شفّاف فوق الفيديو ── */
.yt-ctrl{
  position:absolute;left:0;right:0;bottom:0;z-index:20;flex-shrink:0;direction:ltr;
  padding:26px 16px 10px;
  background:linear-gradient(180deg,transparent 0%,rgba(6,6,12,.72) 100%);
  opacity:0;transform:translateY(8px);pointer-events:none;
  transition:opacity .25s var(--ease),transform .25s var(--ease);
}
.yt-wrap.show-ctrl .yt-ctrl{opacity:1;transform:none;pointer-events:auto}

/* ── Control bar ── */
.yt-bar{display:flex;align-items:center;gap:4px;pointer-events:all;height:40px}
.yt-bar-r{margin-left:auto;display:flex;align-items:center;gap:4px}

.yt-btn{
  width:34px;height:34px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:none;border:none;color:rgba(255,255,255,.82);cursor:pointer;
  transition:background .18s,transform .14s,color .18s;flex-shrink:0;
}
.yt-btn:hover{background:rgba(255,255,255,.12);transform:scale(1.1);color:#fff}
.yt-btn:active{transform:scale(.88)}
.yt-btn svg{fill:currentColor;display:block;width:20px;height:20px}
.yt-btn.active{color:var(--gold-l);background:rgba(201,162,39,.14)}

#ytPlayBtn{
  width:38px;height:38px;
  background:rgba(201,162,39,.12);
  border:1px solid rgba(201,162,39,.22);
  color:var(--gold-l);
}
#ytPlayBtn svg{width:22px;height:22px}
#ytPlayBtn:hover{background:rgba(201,162,39,.26);border-color:rgba(201,162,39,.48);color:var(--gold-xl);box-shadow:0 0 14px -3px rgba(201,162,39,.5);transform:scale(1.08)}

/* ── Volume ── */
.yt-vol{display:flex;align-items:center}
.yt-vol-slide-wrap{width:0;overflow:hidden;transition:width .2s var(--ease);display:flex;align-items:center}
.yt-vol:hover .yt-vol-slide-wrap{width:68px}
.yt-vol-slider{
  -webkit-appearance:none;appearance:none;
  width:60px;height:3px;margin:0 4px;
  background:rgba(255,255,255,.22);border-radius:3px;outline:none;cursor:pointer;
}
.yt-vol-slider::-webkit-slider-thumb{-webkit-appearance:none;width:11px;height:11px;border-radius:50%;background:#fff;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.5)}
.yt-vol-slider::-moz-range-thumb{width:11px;height:11px;border:none;border-radius:50%;background:#fff;cursor:pointer}

/* ── Time: hidden ── */
.yt-time{display:none}

/* ── Quality menu ── */
.yt-q-wrap{position:relative}
.yt-gear-btn{
  display:flex;align-items:center;gap:5px;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.09);color:rgba(255,255,255,.75);
  cursor:pointer;padding:5px 10px;border-radius:20px;
  transition:all .2s var(--ease);white-space:nowrap;height:28px;
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}
.yt-gear-btn:hover{background:rgba(201,162,39,.18);border-color:rgba(201,162,39,.3);color:var(--gold-l);transform:scale(1.05)}
.yt-gear-btn:active{transform:scale(.94)}
.yt-gear-btn svg{fill:currentColor;flex-shrink:0;transition:transform .5s var(--ease);width:15px;height:15px}
.yt-gear-btn:hover svg{transform:rotate(65deg)}
.yt-gear-lbl{font-size:11px;font-weight:700;font-family:var(--font);letter-spacing:.2px}
.yt-q-menu{
  position:absolute;bottom:calc(100% + 8px);right:0;
  background:rgba(10,10,18,.97);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  border:1px solid var(--border);border-radius:12px;overflow:hidden;
  min-width:120px;display:none;z-index:30;
  box-shadow:0 12px 40px rgba(0,0,0,.8);
}
.yt-q-menu.open{display:block;animation:menuIn .16s var(--ease)}
@keyframes menuIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.yt-q-item{
  padding:9px 14px;font-size:.78rem;cursor:pointer;color:var(--text2);
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  transition:background .14s,color .14s;
}
.yt-q-item:hover{background:var(--gold-bg-h);color:var(--text)}
.yt-q-item.active{color:var(--gold-l);font-weight:700}
.yt-q-badge{font-size:.6rem;padding:2px 6px;border-radius:5px;background:var(--gold-bg);color:var(--gold-l);font-family:var(--font-en);font-weight:700}

/* ═══════════════════════════════════════════════
   CONTEXT MENU
   ═══════════════════════════════════════════════ */
#player-context-menu{
  position:absolute;z-index:100;
  background:rgba(16,16,28,.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border:1px solid var(--border);border-radius:10px;
  padding:6px 0;width:175px;box-shadow:var(--shadow);
  display:none;direction:rtl;text-align:right;
}
.context-menu-item{
  padding:9px 15px;font-size:.80rem;cursor:pointer;color:var(--text2);
  display:flex;align-items:center;gap:8px;transition:background .2s,color .2s;
}
.context-menu-item svg{fill:currentColor}
.context-menu-item:hover{background:var(--gold-bg-h);color:var(--gold-l)}

/* ═══════════════════════════════════════════════
   STATS PANEL
   ═══════════════════════════════════════════════ */
#stats-nerds{
  position:absolute;top:15px;left:15px;z-index:99;
  background:rgba(10,10,20,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border:1px solid var(--border);border-radius:12px;padding:13px 17px;
  font-size:.74rem;font-family:var(--font-en);color:var(--text2);
  width:290px;max-width:calc(100% - 30px);box-shadow:var(--shadow-sm);
  display:none;direction:ltr;text-align:left;pointer-events:all;
}
#stats-nerds.show{display:block;animation:fadeIn .2s var(--ease)}
.stats-row{display:flex;justify-content:space-between;margin-bottom:7px;gap:8px}
.stats-row span:first-child{color:var(--text3);flex-shrink:0}
.stats-row span:last-child{color:var(--gold-l);font-weight:700;text-align:right}
.stats-close{cursor:pointer;color:var(--red);float:right;font-size:10px;font-weight:bold;padding:2px 6px;border-radius:5px;background:rgba(232,90,90,.1)}
.stats-close:hover{background:rgba(232,90,90,.2)}

/* ═══════════════════════════════════════════════
   OVENPLAYER OVERRIDES
   ═══════════════════════════════════════════════ */
.ovenplayer{width:100%!important;height:100%!important;position:absolute!important;inset:0!important;background:#000!important}
.ovenplayer .op-ratio{padding-top:0!important;height:100%!important}
.ovenplayer .op-player{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important}
.ovenplayer video{width:100%!important;height:100%!important;object-fit:contain!important}

/* ═══════════════════════════════════════════════
   FULLSCREEN — video fills the whole screen,
   control bar overlays at the bottom and auto-hides.
   NOTE: :fullscreen and :-webkit-full-screen are kept in
   SEPARATE rules on purpose — in a comma list, a browser that
   doesn't know one pseudo drops the WHOLE rule.
   ═══════════════════════════════════════════════ */
.yt-wrap:fullscreen{border-radius:0;width:100vw;height:100vh;display:flex;flex-direction:column}
.yt-wrap:-webkit-full-screen{border-radius:0;width:100vw;height:100vh;display:flex;flex-direction:column}

.yt-wrap:fullscreen .yt-ratio{padding-top:0;height:100%;flex:1 1 auto;min-height:0}
.yt-wrap:-webkit-full-screen .yt-ratio{padding-top:0;height:100%;flex:1 1 auto;min-height:0}

.yt-wrap:fullscreen .yt-ctrl{
  position:absolute;left:0;right:0;bottom:0;z-index:20;border-top:none;
  background:linear-gradient(180deg,transparent 0%,rgba(8,8,14,.92) 55%);
  opacity:0;transform:translateY(100%);pointer-events:none;
  transition:opacity .25s var(--ease),transform .25s var(--ease);
}
.yt-wrap:-webkit-full-screen .yt-ctrl{
  position:absolute;left:0;right:0;bottom:0;z-index:20;border-top:none;
  background:linear-gradient(180deg,transparent 0%,rgba(8,8,14,.92) 55%);
  opacity:0;transform:translateY(100%);pointer-events:none;
  transition:opacity .25s var(--ease),transform .25s var(--ease);
}
.yt-wrap:fullscreen.show-ctrl .yt-ctrl{opacity:1;transform:none;pointer-events:auto}
.yt-wrap:-webkit-full-screen.show-ctrl .yt-ctrl{opacity:1;transform:none;pointer-events:auto}
/* زر التوسيط لا معنى له داخل ملء الشاشة — يُخفى لتفادي كسر التخطيط */
.yt-wrap:fullscreen #ytWideBtn,
.yt-wrap:-webkit-full-screen #ytWideBtn,
.yt-wrap.fake-fs #ytWideBtn{display:none!important}

/* ═══════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════ */
@media(max-width:600px){
  .yt-ctrl{padding:20px 10px 8px}
  .yt-btn{width:32px;height:32px}
  .yt-btn svg{width:18px;height:18px}
  #ytPlayBtn{width:36px;height:36px}
  #ytPlayBtn svg{width:20px;height:20px}
  .yt-bar{height:36px;gap:1px}
  .yt-vol-slide-wrap{width:48px!important}
  .yt-vol-slider{width:42px}
  #ytWideBtn{display:none!important}
  .yt-gear-lbl{display:none}
  .yt-gear-btn{padding:5px 7px;height:26px;gap:4px}
}
@media(max-width:380px){
  .yt-ctrl{padding:18px 8px 7px}
  .yt-btn{width:30px;height:30px}
  .yt-btn svg{width:17px;height:17px}
  #ytPlayBtn{width:34px;height:34px}
  .yt-bar{height:34px;gap:1px}
  .yt-bar-r{gap:1px}
  .yt-vol-slide-wrap{width:36px!important}
  .yt-vol-slider{width:30px}
  .yt-gear-btn{padding:4px 6px;width:auto;height:24px}
  .live-pill{padding:5px 10px;font-size:.68rem}
}
@media(min-width:1600px){
  .yt-ctrl{padding:34px 32px 14px}
  .yt-btn{width:40px;height:40px}
  .yt-btn svg{width:22px;height:22px}
  #ytPlayBtn{width:44px;height:44px}
  .yt-bar{height:46px}
  .yt-gear-lbl{font-size:.95rem}
  .yt-q-item{font-size:.95rem;padding:12px 18px}
  .yt-time{font-size:14px}
}
@media(min-width:1440px){
  .player-section{max-width:1600px}
  .matches-section{max-width:1500px}
}
@media(hover:none){.yt-vol-slide-wrap{width:52px!important}}

/* ═══════════════════════════════════════════════
   iOS / FAKE FULLSCREEN
   ═══════════════════════════════════════════════ */
.yt-wrap.fake-fs{
  position:fixed!important;inset:0!important;
  width:100vw!important;height:100dvh!important;
  z-index:9998!important;border-radius:0!important;
  background:#000!important;margin:0!important;
}
.yt-wrap.fake-fs .yt-ratio{
  padding-top:0!important;padding-bottom:0!important;
  height:auto!important;flex:1 1 auto!important;min-height:0!important;
}
.yt-wrap.fake-fs .yt-ctrl{
  position:absolute;left:0;right:0;bottom:0;z-index:20;border-top:none;
  background:linear-gradient(180deg,transparent 0%,rgba(8,8,14,.92) 55%);
  opacity:0;transform:translateY(100%);pointer-events:none;
  transition:opacity .25s var(--ease),transform .25s var(--ease);
}
.yt-wrap.fake-fs.show-ctrl .yt-ctrl{opacity:1;transform:none;pointer-events:auto}
body.has-fake-fs{overflow:hidden}
body.has-fake-fs .site-header,
body.has-fake-fs .site-footer,
body.has-fake-fs #remote-panel,
body.has-fake-fs #infoBar,
body.has-fake-fs .ambient-glow{display:none!important}
body.has-fake-fs .player-section{padding:0!important;margin:0!important}

/* ═══════════════════════════════════════════════
   COUNTDOWN BAR
   ═══════════════════════════════════════════════ */
.countdown-bar{
  display:flex;align-items:center;justify-content:center;
  flex-wrap:wrap;gap:12px 24px;
  padding:12px 20px;
  background:rgba(8,8,18,.95);
  border-bottom:1px solid rgba(201,162,39,.18);
  animation:fadeIn .4s var(--ease);
}
.countdown-bar.hidden{display:none}
.countdown-label{
  font-size:.82rem;font-weight:600;color:var(--text2);
  white-space:nowrap;
}
.countdown-digits{
  display:flex;align-items:flex-end;gap:4px;
  font-family:var(--font-en);
}
.cd-unit{
  display:flex;flex-direction:column;align-items:center;
  background:rgba(201,162,39,.07);
  border:1px solid rgba(201,162,39,.2);
  border-radius:8px;padding:6px 10px;min-width:48px;
}
.cd-unit span{
  font-size:1.35rem;font-weight:800;color:var(--gold);line-height:1;
}
.cd-unit small{
  font-size:.58rem;color:var(--text3);margin-top:3px;
  font-family:var(--font);letter-spacing:.3px;
}
.cd-sep{
  font-size:1.3rem;font-weight:800;color:var(--gold);
  opacity:.55;padding-bottom:16px;
}

@media(max-width:600px){
  .cd-unit{min-width:40px;padding:5px 7px}
  .cd-unit span{font-size:1.1rem}
  .countdown-label{display:none}
}

/* ═══════════ MATCHES SECTION ═══════════ */
.matches-section{
  max-width:1340px;margin:18px auto 0;
  padding:0 clamp(14px,3vw,26px) 30px;
}
.matches-header-bar{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:14px;
}
.matches-title-wrap{display:flex;align-items:center;gap:8px}
.matches-ttl{
  font-size:1rem;font-weight:700;color:var(--text);
  letter-spacing:.02em;
}
.matches-meta-wrap{display:flex;align-items:center;gap:10px}
.matches-refresh-btn{
  background:rgba(255,255,255,.06);border:1px solid var(--line);
  border-radius:8px;color:var(--text2);cursor:pointer;
  padding:5px 8px;display:flex;align-items:center;
  transition:background .2s,color .2s;
}
.matches-refresh-btn:hover{background:rgba(201,162,39,.1);color:var(--gold)}
.matches-refresh-btn.spinning svg{animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

.matches-list{display:flex;flex-direction:column;gap:14px}

.matches-loading{
  display:flex;align-items:center;justify-content:center;gap:10px;
  padding:30px;color:var(--text3);font-size:.85rem;
}
.matches-spinner{
  width:18px;height:18px;border:2px solid rgba(201,162,39,.2);
  border-top-color:var(--gold);border-radius:50%;
  animation:spin .8s linear infinite;
}
.matches-empty{
  padding:30px;text-align:center;
  color:var(--text3);font-size:.85rem;
}

/* Competition block */
.comp-block{
  background:rgba(12,12,22,.85);
  border:1px solid var(--border);border-radius:var(--radius);
  overflow:hidden;backdrop-filter:blur(8px);
  transition:border-color .25s,box-shadow .25s,transform .2s var(--ease);
}
.comp-block:hover{
  border-color:rgba(201,162,39,.32);
  box-shadow:0 10px 32px -12px rgba(0,0,0,.6);
  transform:translateY(-1px);
}
.comp-header{
  display:flex;align-items:center;gap:9px;
  padding:10px 14px;
  background:rgba(201,162,39,.06);
  border-bottom:1px solid var(--border);
  font-size:.82rem;font-weight:700;color:var(--gold);
}
.comp-emblem{width:20px;height:20px;object-fit:contain}
.comp-day-label{
  padding:5px 14px;
  font-size:.72rem;color:var(--text3);
  background:rgba(255,255,255,.02);
  border-bottom:1px solid rgba(255,255,255,.04);
  letter-spacing:.06em;text-transform:uppercase;
}

/* Match row */
.m-row{
  display:grid;grid-template-columns:1fr auto 1fr;
  align-items:center;padding:11px 14px;gap:10px;
  border-bottom:1px solid rgba(255,255,255,.04);
  transition:background .15s;
}
.m-row:last-child{border-bottom:none}
.m-row:hover{background:rgba(255,255,255,.03)}
.m-live{background:rgba(220,40,40,.07);box-shadow:inset 3px 0 0 rgba(220,40,40,.55)}
.m-done{opacity:.6}

.m-team{
  display:flex;align-items:center;gap:8px;min-width:0;
}
.m-home{justify-content:flex-end;text-align:right}
.m-away{justify-content:flex-start;text-align:left}

.m-tname{
  font-size:.8rem;font-weight:600;color:var(--text);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.m-crest{width:24px;height:24px;object-fit:contain;flex-shrink:0}

.m-middle{
  display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:3px;
  flex-shrink:0;min-width:70px;
}
.m-time{
  font-size:1.1rem;font-weight:800;
  color:var(--gold);letter-spacing:.05em;
  display:flex;flex-direction:column;align-items:center;gap:1px;
}
.m-day-lbl{
  font-size:.65rem;font-weight:600;
  color:var(--text3);letter-spacing:.04em;
  line-height:1;
}
.m-score{
  font-size:1rem;font-weight:800;
  color:var(--text);letter-spacing:.1em;
}
.m-badge{
  font-size:.65rem;font-weight:700;
  padding:2px 8px;border-radius:20px;
  text-transform:uppercase;letter-spacing:.06em;
}
.m-badge.live{
  background:rgba(220,40,40,.22);color:#ff5252;
  border:1px solid rgba(220,40,40,.4);
  box-shadow:0 0 10px -2px rgba(220,40,40,.55);
  animation:pulse-badge 1.5s ease-in-out infinite;
}
@keyframes pulse-badge{0%,100%{opacity:1}50%{opacity:.6}}
.m-badge.done{background:rgba(255,255,255,.05);color:var(--text3);border:1px solid var(--line)}
.m-badge.post{background:rgba(201,162,39,.08);color:var(--gold);border:1px solid rgba(201,162,39,.2)}

@media(max-width:600px){
  .m-tname{font-size:.72rem}
  .m-crest{width:20px;height:20px}
  .m-middle{min-width:58px}
  .m-time,.m-score{font-size:.78rem}
}
@media(max-width:380px){
  .m-row{padding:7px 8px;gap:5px}
  .m-tname{font-size:.64rem}
  .m-crest{width:17px;height:17px}
  .m-middle{min-width:50px}
  .m-time{font-size:.74rem}
  .m-score{font-size:.76rem}
  .m-day-lbl{font-size:.58rem}
  .comp-header{padding:7px 10px;font-size:.74rem}
  .comp-emblem{width:16px;height:16px}
}

/* all-matches link */
.all-matches-link{
  display:inline-flex;align-items:center;gap:5px;
  padding:5px 12px;border-radius:20px;
  font-size:.76rem;font-weight:700;
  color:var(--gold);text-decoration:none;
  border:1px solid rgba(201,162,39,.3);
  background:rgba(201,162,39,.07);
  transition:background .2s,border-color .2s;white-space:nowrap;
}
.all-matches-link:hover{background:rgba(201,162,39,.15);border-color:rgba(201,162,39,.5)}
.all-matches-badge{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--gold);color:#06060c;
  border-radius:10px;font-size:.65rem;font-weight:800;
  padding:1px 5px;min-width:16px;line-height:1.4;
}
.all-matches-badge:empty{display:none}

/* countdown per match row */
.m-countdown{
  font-size:.7rem;font-weight:700;
  color:var(--gold);letter-spacing:.03em;
  font-variant-numeric:tabular-nums;
  margin-top:3px;
}
.m-countdown.urgent{color:#ff5252;animation:pulse-badge 1s ease-in-out infinite}
.m-countdown.soon{color:#ffaa00}

/* site-settings body overrides */
body.hide-cd-bar #countdown-bar{display:none!important}

/* ═══════════════════════════════════════════════
   RESPONSIVE — mobile
   ═══════════════════════════════════════════════ */
@media(max-width:480px){
  .matches-section{margin-top:12px}
  .player-section{padding:8px 10px 14px}
}
@media(max-width:380px){
  .cd-unit{min-width:36px;padding:4px 5px}
  .cd-unit span{font-size:1rem}
  .cd-sep{font-size:1rem;padding-bottom:12px}
  .countdown-bar{gap:8px 16px;padding:10px 14px}
  .player-section{padding:6px 8px 12px}
}

/* ═══════════════════════════════════════════════
   MATCHES.HTML HEADER — overflow fix on mobile
   ═══════════════════════════════════════════════ */
@media(max-width:540px){
  .mp-tz{display:none!important}
}
@media(max-width:440px){
  .mp-header{padding:10px clamp(10px,3vw,16px)!important;gap:5px!important}
  .mp-title{font-size:.82rem!important}
  .mp-back{padding:5px 9px!important;font-size:.74rem!important}
}
@media(max-width:360px){
  .mp-header{flex-wrap:wrap!important;gap:6px!important}
  .mp-title{order:3;width:100%;padding-right:4px}
  .mp-refresh-btn{padding:5px 7px!important}
}
