/* ============================================================
   ATS Video TV Format — Cadre TV grand format
   ============================================================ */

/* Stage = environnement autour de la TV */
.ats-tv-stage{
  background: radial-gradient(ellipse at center top, #2a2a2a 0%, #0a0a0a 70%, #000 100%);
  padding: 40px 24px 28px;
  margin: 32px auto;
  border-radius: 16px;
  box-shadow: 0 16px 50px rgba(0,0,0,0.5);
  max-width: 1100px;
  position: relative;
}

/* Le cadre TV : bezel épais en métal/plastique noir */
.ats-tv-stage .ats-tv-frame{
  position: relative;
  margin: 0 auto;
  background:
    linear-gradient(145deg, #2c2c2c 0%, #181818 50%, #0a0a0a 100%);
  padding: 18px 18px 22px;
  border-radius: 14px;
  box-shadow:
    inset 0 2px 4px rgba(255,255,255,0.08),
    inset 0 -3px 6px rgba(0,0,0,0.6),
    0 0 0 1px #000,
    0 20px 50px rgba(0,0,0,0.7),
    0 6px 16px rgba(220,30,30,0.12);
}

/* Reflet brillant en haut du bezel */
.ats-tv-stage .ats-tv-frame::before{
  content: "";
  position: absolute;
  top: 4px; left: 6%; right: 6%;
  height: 8px;
  background: linear-gradient(180deg, rgba(255,255,255,0.18), transparent);
  border-radius: 4px;
  pointer-events: none;
}

/* Logo "ATS" gravé en bas du bezel */
.ats-tv-stage .ats-tv-frame::after{
  content: "ATS";
  position: absolute;
  bottom: 4px;
  left: 50%;
  transform: translateX(-50%);
  font-family: -apple-system, "Segoe UI", Roboto, sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 3px;
  color: rgba(220,30,30,0.65);
  text-shadow: 0 1px 0 #000;
  pointer-events: none;
}

/* Écran intérieur (où vit la vidéo) */
.ats-tv-stage .ats-tv-screen{
  position: relative;
  background: #000;
  border-radius: 4px;
  overflow: hidden;
  box-shadow:
    inset 0 0 0 2px #000,
    inset 0 0 25px rgba(0,0,0,0.9),
    inset 0 0 60px rgba(220,30,30,0.05);
}

/* Effet "glow" écran allumé */
.ats-tv-screen::after{
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at center, transparent 60%, rgba(0,0,0,0.35) 100%);
  pointer-events: none;
  z-index: 2;
}

/* Vidéo horizontale (16:9) */
.ats-tv-frame.landscape{ max-width: 980px; }
.ats-tv-frame.landscape .ats-tv-screen{ aspect-ratio: 16/9; }
.ats-tv-frame.landscape video{
  width: 100%; height: 100%;
  object-fit: contain;
  display: block; background: #000;
}

/* Vidéo verticale (TikTok) : letterbox élégant dans un écran 16:9 */
.ats-tv-frame.portrait{ max-width: 880px; }
.ats-tv-frame.portrait .ats-tv-screen{
  aspect-ratio: 16/9;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ats-tv-frame.portrait video{
  height: 100%;
  width: auto;
  max-width: 100%;
  display: block;
  position: relative;
  z-index: 1;
}

/* Pieds de la TV (deux supports) */
.ats-tv-stage .ats-tv-stand{
  position: relative;
  width: 60%;
  max-width: 500px;
  margin: -6px auto 0;
  height: 14px;
  background: linear-gradient(180deg, #1a1a1a 0%, #050505 100%);
  border-radius: 0 0 20px 20px;
  box-shadow: 0 8px 16px rgba(0,0,0,0.6);
}
.ats-tv-stage .ats-tv-stand::before,
.ats-tv-stage .ats-tv-stand::after{
  content: "";
  position: absolute;
  bottom: -8px;
  width: 80px;
  height: 8px;
  background: linear-gradient(180deg, #222 0%, #0a0a0a 100%);
  border-radius: 0 0 8px 8px;
  box-shadow: 0 4px 6px rgba(0,0,0,0.5);
}
.ats-tv-stage .ats-tv-stand::before{ left: 15%; }
.ats-tv-stage .ats-tv-stand::after{ right: 15%; }

/* Badge "ATS WEB TV" */
.ats-tv-stage .ats-tv-badge{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 28px;
  color: #d0d0d0;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.ats-tv-stage .ats-tv-badge::before{
  content: "";
  width: 9px; height: 9px;
  background: #dc1e1e;
  border-radius: 50%;
  box-shadow: 0 0 8px #dc1e1e;
  animation: ats-tv-pulse 1.6s infinite;
}
@keyframes ats-tv-pulse{
  0%,100%{ opacity: 1; transform: scale(1); }
  50%{ opacity: 0.4; transform: scale(1.3); }
}

/* Responsive mobile */
@media (max-width: 768px){
  .ats-tv-stage{ padding: 20px 10px 16px; border-radius: 10px; }
  .ats-tv-stage .ats-tv-frame{ padding: 10px 10px 14px; border-radius: 10px; }
  .ats-tv-stage .ats-tv-frame::after{ font-size: 8px; letter-spacing: 2px; }
  .ats-tv-frame.portrait .ats-tv-screen{ aspect-ratio: 9/16; }
  .ats-tv-frame.portrait video{ width: 100%; height: auto; }
  .ats-tv-stage .ats-tv-stand{ height: 10px; width: 70%; }
  .ats-tv-stage .ats-tv-stand::before,
  .ats-tv-stage .ats-tv-stand::after{ width: 50px; height: 6px; bottom: -6px; }
}

/* === Tags sous le cadre TV (single post) === */
.ats-tv-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:center;
  margin-top:18px;
  padding:0 12px;
}
.ats-tv-tag{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:6px 14px;
  background:rgba(220,30,30,0.08);
  border:1px solid rgba(220,30,30,0.3);
  color:#ff6b6b;
  font-size:13px;
  font-weight:600;
  text-decoration:none;
  border-radius:18px;
  transition:all 0.15s ease;
  letter-spacing:0.3px;
}
.ats-tv-tag:hover{
  background:rgba(220,30,30,0.2);
  border-color:#dc1e1e;
  color:#fff;
  transform:translateY(-1px);
  text-decoration:none;
}
.ats-tv-tag span{
  font-size:10px;
  opacity:0.65;
  font-weight:400;
}
@media (max-width: 768px){
  .ats-tv-tag{ font-size:11px; padding:4px 10px; }
}
