*{
  box-sizing:border-box;
  font-family:Segoe UI,Arial,sans-serif;
}
body{
  margin:0;
  background:#f4f6f9;
  color:#222;
}

/* ================= TOPBAR (LIGHT) ================= */
.topbar{
  background:#ffffff;
  color:#222;
  padding:12px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  position:sticky;
  top:0;
  z-index:100;
  box-shadow:0 2px 8px rgba(0,0,0,.08);
}
.logo{
  font-weight:700;
  font-size:20px;
  color:#111;
}
.menu{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.menu a{
  color:#222;
  text-decoration:none;
  padding:6px 12px;
  border-radius:10px;
  transition:.2s;
  font-size:14px;
}
.menu a:hover{
  background:#ffcc00;
  color:#000;
}
.lang a{
  color:#222;
  margin-left:8px;
  text-decoration:none;
  font-weight:600;
}
.lang a:hover{color:#ffcc00}

/* ================= HERO ================= */
.hero{
  height:320px;
  background:url("/assets/bg.jpg") center/cover no-repeat;
  position:relative;
}
.hero-overlay{
  background:rgba(0,0,0,.55);
  color:#fff;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  animation:fadeIn 1s;
}
.hero h1{
  font-size:40px;
  margin:0;
}
.hero p{
  margin:8px 0 0;
}
.status{
  margin-top:12px;
  padding:6px 16px;
  background:#ffcc00;
  color:#000;
  border-radius:20px;
  font-weight:600;
}

/* ================= BLOCK ================= */
.block{
  padding:30px 20px;
   background:url("/assets/dd.png") center/cover no-repeat;
}
.block h2{
  margin-bottom:15px;
  border-left:5px solid #ffcc00;
  padding-left:10px;
}

/* ================= GRID ================= */
.grid,
.video-grid,
.gallery-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(170px,1fr));
  gap:15px;
}

/* ================= CARDS ================= */
.small-card,
.video-card,
.gallery-card{
  background:#fff;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 4px 12px rgba(0,0,0,.15);
  transition:.3s;
  position:relative;
}
.small-card:hover,
.video-card:hover,
.gallery-card:hover{
  transform:translateY(-6px) scale(1.02);
}
.small-card img,
.small-card video,
.video-card video,
.gallery-card img{
  width:100%;
  height:120px;
  object-fit:cover;
}
.small-card .info,
.video-card .info,
.gallery-card .info{
  padding:8px;
  text-align:center;
  font-size:13px;
}

/* ================= ICONS ================= */
.play-icon,
.zoom-icon{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  font-size:36px;
  color:#fff;
  text-shadow:0 0 10px #000;
  pointer-events:none;
}

/* ================= PAGE TITLE ================= */
.page-title{
  padding:20px;
  font-size:26px;
}

/* ================= VIDEO / IMAGE VIEW ================= */
.watch-container,
.view-container{
  max-width:900px;
  margin:30px auto;
  padding:0 15px;
}
.video-box,
.image-box{
  background:#fff;
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 6px 16px rgba(0,0,0,.15);
}
.video-box video,
.image-box img{
  width:100%;
  display:block;
}
.video-title,
.image-title{
  padding:15px;
  font-size:22px;
  font-weight:600;
}

/* ================= COMMENTS ================= */
.comment-box{
  margin-top:25px;
}
.comment-item{
  background:#fff;
  border-radius:12px;
  padding:10px 12px;
  margin-bottom:10px;
  box-shadow:0 2px 6px rgba(0,0,0,.1);
}
.comment-item b{color:#000}
.comment-item a{
  font-size:12px;
  text-decoration:none;
}

/* ================= COMMENT FORM ================= */
.comment-form{
  background:#fff;
  border-radius:14px;
  padding:15px;
  margin-top:15px;
  box-shadow:0 4px 10px rgba(0,0,0,.1);
}
.comment-form h4{
  margin:0 0 10px;
}
.comment-form input,
.comment-form textarea{
  width:100%;
  border:1px solid #ddd;
  border-radius:10px;
  padding:10px 12px;
  font-size:14px;
  outline:none;
  transition:.2s;
  margin-bottom:8px;
}
.comment-form input:focus,
.comment-form textarea:focus{
  border-color:#ffcc00;
  box-shadow:0 0 0 2px rgba(255,204,0,.2);
}
.comment-form textarea{
  resize:vertical;
  min-height:80px;
}
.comment-form button{
  margin-top:5px;
  background:#ffcc00;
  border:none;
  padding:10px 18px;
  border-radius:20px;
  font-weight:600;
  cursor:pointer;
  transition:.2s;
}
.comment-form button:hover{
  background:#e6b800;
}

/* ================= FORMS ================= */
form{
  max-width:500px;
  margin:20px auto;
  background:#fff;
  padding:20px;
  border-radius:14px;
  box-shadow:0 4px 10px rgba(0,0,0,.1);
}
form input,
form textarea,
form select{
  width:100%;
  padding:10px;
  margin-bottom:10px;
  border-radius:10px;
  border:1px solid #ddd;
}
form button{
  background:#ffcc00;
  border:none;
  padding:10px 18px;
  border-radius:20px;
  font-weight:600;
}

/* ================= FOOTER ================= */
.footer{
  background:#111;
  color:#fff;
  text-align:center;
  padding:15px;
  margin-top:40px;
}

/* ================= ANIMATION ================= */
@keyframes fadeIn{
  from{opacity:0;transform:translateY(20px)}
  to{opacity:1;transform:none}
}

/* ================= TABLET ================= */
@media (max-width:1024px){
  .hero{height:260px}
  .hero h1{font-size:32px}
  .grid,
  .video-grid,
  .gallery-grid{
    grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
  }
  .menu a{
    font-size:13px;
    padding:5px 8px;
  }
}

/* ================= PHONE ================= */
@media (max-width:600px){
  .topbar{
    flex-direction:column;
    align-items:center;
    gap:8px;
  }
  .menu{
    justify-content:center;
  }
  .hero{
    height:220px;
  }
  .hero h1{
    font-size:22px;
  }
  .hero p{
    font-size:13px;
  }
  .grid,
  .video-grid,
  .gallery-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .small-card img,
  .small-card video,
  .video-card video,
  .gallery-card img{
    height:100px;
  }
  .page-title{
    font-size:20px;
    padding:10px;
  }
  .video-title,
  .image-title{
    font-size:18px;
  }
  .comment-form input,
  .comment-form textarea,
  form input,
  form textarea,
  form select{
    font-size:14px;
    padding:12px;
  }
  .footer{
    font-size:12px;
  }
}
