body { font-family: "Roboto", sans-serif; background-color: #fff; }

.navbar-top {
    position: fixed; top: 0; left: 0; right: 0; height: 56px;
    background: #fff; z-index: 1030; display: flex; align-items: center;
    padding: 0 16px; justify-content: space-between;
}
.search-container { flex: 0 1 600px; display: flex; margin: 0 20px; }
.search-container input { 
    border-radius: 40px 0 0 40px; border: 1px solid #ccc; padding: 6px 15px; width: 100%; 
}
.search-btn { 
    border-radius: 0 40px 40px 0; border: 1px solid #ccc; border-left: none; 
    background: #f8f8f8; padding: 0 20px;
    color: #000;
}
.search-btn:hover,.search-btn:focus{
    background: #f3f4f6 !important;
    color: #000 !important;
    border: 1px solid #ccc !important;
}
.nav-right-icons .btn { border-radius: 20px; font-weight: 500; }

.sidebar-left {
    position: fixed; top: 56px; left: 0; bottom: 0; width: 72px;
    background: #fff; z-index: 1020; padding-top: 10px; border-right: 1px solid #efefef;
    transition: left 0.3s ease;
}
.sidebar-item {
    display: flex; flex-direction: column; align-items: center;
    padding: 16px 0; color: #0f0f0f; text-decoration: none; font-size: 10px;
}
.sidebar-item i { font-size: 22px; margin-bottom: 5px; }
.sidebar-item:hover { background: #f2f2f2; }

/* --- 3. MAIN CONTENT OFFSET --- */
.main-wrapper { margin-left: 72px; background:#fff; }

/* --- 4. TAG BAR (STICKY) --- */
.tag-bar-container {
    background: white; z-index: 1010;
    padding: 12px 0; border-bottom: 1px solid #eee;
    margin-top: 56px;
}
.tag-scroll { overflow-x: auto; white-space: nowrap; scrollbar-width: none; }
.tag-scroll::-webkit-scrollbar { display: none; }
.btn-tag { 
    background: #f2f2f2; border: none; border-radius: 8px; 
    margin-right: 12px; font-size: 14px; padding: 6px 12px; font-weight: 500;
}
.btn-tag.active { background: #000; color: #fff; }       
/* 1. Tag Navigation */
.tag-scroll { overflow-x: auto; white-space: nowrap; padding: 12px; scrollbar-width: none; background: #fff; justify-content:center; }
.tag-scroll::-webkit-scrollbar { display: none; }
.btn-tag {
    border-radius: 8px;
    background: #f3f4f6;
    border: 1px solid #f3f4f6;
    margin-right: 8px;
    font-weight: 500;
    font-size: 14px;
    padding: 6px 15px;
}
.btn-tag:hover { background: #e5e7eb; color: #000; border-color: #e5e7eb; }
.btn-tag.active { background: #000; color: #fff; border-color: #000; }

/* 2. Banner with Comic Dot Pattern */
.channel-banner {
    width: 100%;
    height: 220px;
    background: url('../images/headerimg.webp') center center no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}
.banner-overlay-text {
    background: rgba(255, 255, 255, 0.9);
    padding: 10px 40px;
    border-radius: 50px;
    box-shadow: 10px 10px 0px rgba(0,0,0,0.1);
    font-weight: 900;
    font-size: 2.5rem;
    color: #ffcc00;
    text-shadow: 2px 2px 0px #000;
    text-transform: uppercase;
}

/* 3. Profile Section */
.profile-img { 
    width: 140px; height: 140px; 
    border-radius: 50%; 
    border: 5px solid white; 
    margin-top: -60px; 
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
    object-fit: cover;
}
.subscribe-btn {
    border-radius: 25px;
    padding: 5px 20px;
    font-weight: 400;
    background-color: #0f0f0f;
}

/* 4. Tabs */
.nav-tabs { border-bottom: 1px solid #ddd; margin-top: 20px; }
.nav-link { color: #606060; font-weight: 600; border: none !important; padding: 10px 20px; }
.nav-link.active { color: #000; border-bottom: 3px solid #000 !important; }

/* 5. Video Grid */
.video-card { transition: transform 0.2s; cursor: pointer; color: #000;
    text-decoration: none;display: block;}
.video-card:hover { transform: scale(1.02); color: #000;}
.thumb-wrapper { position: relative; border-radius: 15px; overflow: hidden; }
.thumb-wrapper img { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.video-duration { position: absolute; bottom: 8px; right: 8px; background: rgba(0,0,0,0.8); color: #fff; padding: 2px 6px; border-radius: 4px; font-size: 12px; }
.video-title {
    font-weight: 600;
    font-size: 14px;
    line-height: 1.3;
    margin-top: 0;
    color: #0f0f0f;
}
.video-meta {
    font-size: 13px;
    color: #606060;
    margin-top: 0;
    line-height: 15px;
    font-weight: 300;
}
.channel-mini-logo { width: 24px; height: 24px; border-radius: 50%; margin-right: 8px; }
.logo_1{max-width: 120px;}
.header_section{
    padding-top: 40px;
    padding-bottom: 40px;
}
.channel_name{
    font-size: 14px;
    font-weight: 300;
}
.thumb-wrapper img.iconyoutube{
    width: auto;
    aspect-ratio: auto;
    object-fit: contain;
}

.thumb-wrapper .youtube-icon{
    position: absolute;
    top: 43%;
    left: 0;
    right: 0;
    margin: 0 auto;
    text-align: center;
}
.header_section .text-secondary.small{
    margin-bottom: 8px;
}
.home .site-content .ast-container,.page-template-page-template-shorts .site-content .ast-container,.archive.tag .site-content .ast-container,
.site-content .ast-container{
   max-width: 100%;
   display: block;
   padding-left: 0;
   padding-right: 0;
}
.topleft img{height: 30px;}
.category_tabs{
    padding: 12px 0 0;
    margin: 0 0 30px;
}
.shortstab .thumb-wrapper img{
    aspect-ratio: unset;
    object-fit: contain;
}
.navbar-top .btn:hover{
    color:#fff;
    background-color: #e10a7c;
    border-color: #e10a7c;
}
.heading-style1{
    font-size: 32px;
    line-height: normal;
}
.mobile_icon{display: none;}

@media(max-width: 767px){
    .mobile_icon{display: block;}
    .main-wrapper{margin-left: 0;}
    .sidebar-left{left: -75px;opacity: 0;}
    .tag-scroll{justify-content: start;}
    .sidebar-left.active {left: 0;opacity: 1;transition: left 0.3s ease;}
}