/*
 * Veiflix - Mobile & Tablet Responsive Layout Rules
 */

/* Desktop: Fixed Sidebar */
@media (min-width: 1025px) {
    .sidebar {
        width: 16rem !important;
        transform: translateX(0) !important;
        display: block !important;
    }
    .contbody, footer {
        padding-left: 16rem !important;
    }
}

/* Tablet: Compact Sidebar */
@media (min-width: 768px) and (max-width: 1024px) {
    .sidebar {
        width: 5rem !important; /* 80px */
        transform: translateX(0) !important;
        display: block !important;
        padding: 1.5rem 0.5rem !important;
    }
    .sidebar-label {
        display: none !important;
    }
    .sidebar-section-title {
        display: none !important;
    }
    .sidebar-link {
        justify-content: center !important;
        padding: 0.75rem 0 !important;
        gap: 0 !important;
    }
    .sidebar-link.active-sidebar-item::before {
        left: 4px;
    }
    .contbody, footer {
        padding-left: 5rem !important;
        padding-top: 4rem;
    }
}

/* Mobile: Collapsible Drawer Sidebar */
@media (max-width: 767px) {
    .sidebar {
        position: fixed !important;
        top: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        width: 17.5rem !important; /* 280px */
        z-index: 50 !important;
        background-color: #0c0c12 !important;
        transform: translateX(-100%);
        display: block !important;
        padding-top: 5rem !important; /* Spaced below header */
        box-shadow: 20px 0 30px rgba(0, 0, 0, 0.8);
    }
    .sidebar.translate-x-0 {
        transform: translateX(0) !important;
    }
    
    .contbody {
        padding-left: 0 !important;
        padding-top: 4.5rem !important;
    }
    footer {
        padding-left: 1.5rem !important;
    }
}

@media (max-width: 768px) {
    /* Lower the Hero Banner size */
    .baack-image {
        min-height: 360px !important;
    }
    
    .baack-image > div {
        min-height: 360px !important;
    }
    
    .tinfo {
        font-size: 2rem !important;
        line-height: 2.25rem !important;
    }

    .info {
        font-size: 0.85rem !important;
        line-height: 1.25rem !important;
        margin-bottom: 1.5rem !important;
    }
    
    /* Grid spacing changes */
    .mylist {
        gap: 12px !important;
    }
    
    .animelistitems {
        width: 160px !important;
    }
    
    .animelistitems img {
        height: 220px !important;
    }
    
    .title-profiles {
        font-size: 0.8rem !important;
    }
}

@media (max-width: 640px) {
    .nav-contener {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    #search-nav-input {
        width: 160px;
        transition: width 0.3s ease;
    }

    #search-nav-input:focus {
        width: 200px;
    }
}
