diff --git a/application/controllers/Artistes.php b/application/controllers/Artistes.php
index 524557a..d32b56d 100644
--- a/application/controllers/Artistes.php
+++ b/application/controllers/Artistes.php
@@ -3,13 +3,13 @@ defined('BASEPATH') OR exit('No direct script access allowed');
 
 class Artistes extends CI_Controller {
 
-    public function __construct(){
+    public function __construct() {
         parent::__construct();
         $this->load->model('model_music');
         $this->load->library('session');
     }
 
-    public function index(){
+    public function index() {
         $genre = $this->input->get('genre');
         $order = $this->input->get('order');
         $query = $this->input->get('query');
@@ -31,20 +31,19 @@ class Artistes extends CI_Controller {
     }
 
     public function view($artistId) {
-		$artistData = $this->model_music->getArtistDetails($artistId);
-	
-		$is_logged_in = $this->session->userdata('logged_in');
-		$data = array(
-			'artist' => $artistData['artist'],
-			'albums' => $artistData['albums'],
-			'is_logged_in' => $is_logged_in
-		);
-	
-		$this->load->view('layout/header', $data);
-		$this->load->view('artist_details', $data);
-		$this->load->view('layout/footer');
-	}
-	
+        $artist = $this->model_music->getArtistDetails($artistId);
+        $albums = $this->model_music->getAlbumsByArtist($artistId);
+
+        $is_logged_in = $this->session->userdata('logged_in');
+        $data = array(
+            'artist' => $artist,
+            'albums' => $albums,
+            'is_logged_in' => $is_logged_in
+        );
+
+        $this->load->view('layout/header', $data);
+        $this->load->view('artist_details', $data);
+        $this->load->view('layout/footer');
+    }
 }
-
-
+?>
diff --git a/application/controllers/Music.php b/application/controllers/Music.php
index dec0599..2bd1d45 100644
--- a/application/controllers/Music.php
+++ b/application/controllers/Music.php
@@ -17,13 +17,13 @@ class Music extends CI_Controller {
 
         $musics = $this->model_music->getMusics($genre, $order, $artist, $query);
         $genres = $this->model_music->researchtype();
-        $artists = $this->model_music->nameArtist();
+        $artists = $this->model_music->nameArtist(); // S'assurer que cette méthode récupère bien les artistes
 
         $is_logged_in = $this->session->userdata('logged_in');
         $data = array(
             'musics' => $musics,
             'genres' => $genres,
-            'artists' => $artists,
+            'artistes' => $artists, // Passer les artistes à la vue
             'is_logged_in' => $is_logged_in
         );
 
@@ -33,17 +33,23 @@ class Music extends CI_Controller {
         $this->load->view('layout/footer');
     }
 
-    public function view($trackId) {
-        $songData = $this->model_music->getSongDetails($trackId);
-
+    public function view($songId) {
+        $songData = $this->model_music->getSongDetails($songId);
+    
+        if (!$songData) {
+            show_404();
+        }
+    
         $is_logged_in = $this->session->userdata('logged_in');
         $data = array(
             'song' => $songData,
             'is_logged_in' => $is_logged_in
         );
-
+    
         $this->load->view('layout/header', $data);
         $this->load->view('song_details', $data);
         $this->load->view('layout/footer');
     }
+    
+    
 }
diff --git a/application/controllers/Playlist.php b/application/controllers/Playlist.php
new file mode 100644
index 0000000..2c57833
--- /dev/null
+++ b/application/controllers/Playlist.php
@@ -0,0 +1,151 @@
+<?php
+defined('BASEPATH') OR exit('No direct script access allowed');
+
+class Playlist extends CI_Controller {
+    public function __construct() {
+        parent::__construct();
+        $this->load->model('Model_playlist');
+        $this->load->model('Model_music'); // Ajouté pour accéder aux musiques
+        $this->load->library('session');
+    }
+
+    public function index() {
+        $is_logged_in = $this->session->userdata('logged_in');
+        $user_email = $this->session->userdata('email');
+
+        if (!$is_logged_in) {
+            redirect('connect/login');
+        }
+
+        $data = array(
+            'is_logged_in' => $is_logged_in,
+            'playlists' => $this->Model_playlist->getPlaylistsByUser($user_email)
+        );
+
+        $this->load->view('layout/header', $data);
+        $this->load->view('playlists_list', $data);
+        $this->load->view('layout/footer');
+    }
+
+    public function add() {
+        $is_logged_in = $this->session->userdata('logged_in');
+        $user_email = $this->session->userdata('email');
+
+        if (!$is_logged_in) {
+            redirect('connect/login');
+        }
+
+        $name = $this->input->post('name');
+        $type = $this->input->post('type');
+
+        if ($type == 'random') {
+            $numSongs = $this->input->post('numSongs');
+            $artist = $this->input->post('artist');
+            $genre = $this->input->post('genre');
+            $this->Model_playlist->createRandomPlaylist($user_email, $name, $numSongs, $artist, $genre);
+        } else {
+            $this->Model_playlist->addPlaylist($user_email, $name);
+        }
+
+        redirect('playlist');
+    }
+
+    public function selectPlaylist() {
+        $itemId = $this->input->post('itemId');
+        $itemType = $this->input->post('itemType');
+        $playlists = $this->Model_playlist->getPlaylistsByUser($this->session->userdata('email'));
+
+        $data = array(
+            'itemId' => $itemId,
+            'itemType' => $itemType,
+            'playlists' => $playlists
+        );
+
+        $this->load->view('layout/header', $data);
+        $this->load->view('select_playlist', $data);
+        $this->load->view('layout/footer');
+    }
+
+    public function addItems() {
+        $playlistId = $this->input->post('playlistId');
+        $itemId = $this->input->post('itemId');
+        $itemType = $this->input->post('itemType');
+
+        if ($itemType == 'album') {
+            $songs = $this->Model_music->getSongsByAlbum($itemId);
+            foreach ($songs as $song) {
+                $this->Model_playlist->addItem($playlistId, $song->id, 'song');
+            }
+        } else if ($itemType == 'artist') {
+            $albums = $this->Model_music->getAlbumsByArtist($itemId);
+            foreach ($albums as $album) {
+                $songs = $this->Model_music->getSongsByAlbum($album->albumId);
+                foreach ($songs as $song) {
+                    $this->Model_playlist->addItem($playlistId, $song->id, 'song');
+                }
+            }
+        } else {
+            $this->Model_playlist->addItem($playlistId, $itemId, 'song');
+        }
+
+        redirect('playlist/view/' . $playlistId);
+    }
+
+    public function view($playlistId) {
+        $is_logged_in = $this->session->userdata('logged_in');
+        $items = $this->Model_playlist->getPlaylistItems($playlistId);
+        $data = array(
+            'is_logged_in' => $is_logged_in,
+            'items' => $items
+        );
+
+        $this->load->view('layout/header', $data);
+        $this->load->view('playlist_details', $data);
+        $this->load->view('layout/footer');
+    }
+
+    public function deleteItem($playlistId, $itemId) {
+        $this->Model_playlist->deleteItem($playlistId, $itemId);
+        redirect('playlist/view/' . $playlistId);
+    }
+
+    public function delete($playlist_id) {
+        $is_logged_in = $this->session->userdata('logged_in');
+        $user_email = $this->session->userdata('email');
+
+        if (!$is_logged_in) {
+            redirect('connect/login');
+        }
+
+        $this->Model_playlist->deletePlaylist($playlist_id);
+        redirect('playlist');
+    }
+
+    public function duplicate($playlist_id) {
+        $is_logged_in = $this->session->userdata('logged_in');
+        $user_email = $this->session->userdata('email');
+
+        if (!$is_logged_in) {
+            redirect('connect/login');
+        }
+
+        $this->Model_playlist->duplicatePlaylist($playlist_id, $user_email);
+        redirect('playlist');
+    }
+
+    public function rename() {
+        $is_logged_in = $this->session->userdata('logged_in');
+        $user_email = $this->session->userdata('email');
+
+        if (!$is_logged_in) {
+            redirect('connect/login');
+        }
+
+        $playlistId = $this->input->post('playlistId');
+        $newName = $this->input->post('newName');
+
+        $this->Model_playlist->renamePlaylist($playlistId, $newName);
+        redirect('playlist');
+    }
+}
+
diff --git a/application/models/Model_music.php b/application/models/Model_music.php
index 8608426..6bda300 100644
--- a/application/models/Model_music.php
+++ b/application/models/Model_music.php
@@ -70,7 +70,6 @@ class Model_music extends CI_Model {
         $result = $this->db->get();
         return $result->result();
     }
-    
 
     public function getMusics($genre = '', $order = '', $artist = '', $query = '') {
         $this->db->select('album.name as albumName, album.id as albumId, year, artist.name as artistName, genre.name as genreName, jpeg, song.name as trackName, track.id as trackId');
@@ -81,29 +80,28 @@ class Model_music extends CI_Model {
         $this->db->join('genre', 'genre.id = album.genreid');
         $this->db->join('cover', 'cover.id = album.coverid');
         $this->db->limit(100);
-
+    
         if (!empty($genre)) {
             $this->db->where('genre.name', $genre);
         }
-
+    
         if (!empty($artist)) {
             $this->db->where('artist.name', $artist);
         }
-
+    
         if ($order == 'asc' || $order == 'desc') {
             $this->db->order_by('song.name', $order);
         }
-
+    
         if (!empty($query)) {
             $this->db->like('song.name', $query);
         }
-
+    
         $result = $this->db->get();
         return $result->result();
     }
 
     public function getAlbumDetails($albumId) {
-        // Get album info
         $this->db->select('album.name as albumName, album.id, year, artist.name as artistName, genre.name as genreName, jpeg');
         $this->db->from('album');
         $this->db->join('artist', 'album.artistid = artist.id');
@@ -113,7 +111,6 @@ class Model_music extends CI_Model {
         $albumQuery = $this->db->get();
         $albumDetails = $albumQuery->row();
     
-        // Get album songs
         $this->db->select('song.name as trackName, track.id as trackId');
         $this->db->from('track');
         $this->db->join('song', 'track.songId = song.id');
@@ -124,22 +121,15 @@ class Model_music extends CI_Model {
         return array('album' => $albumDetails, 'songs' => $songs);
     }
 
-    public function getArtistDetails($artistId) {
-        // Get artist info
-        $this->db->select('artist.name as artistName, artist.id');
-        $this->db->from('artist');
-        $this->db->where('artist.id', $artistId);
-        $artistQuery = $this->db->get();
-        $artistDetails = $artistQuery->row();
-    
-        // Get artist's albums with their songs
-        $this->db->select('album.id as albumId, album.name as albumName, album.year');
+    public function getAlbumsByArtist($artistId) {
+        $this->db->select('album.id as albumId, album.name as albumName, album.year, cover.jpeg, genre.name as genreName');
         $this->db->from('album');
+        $this->db->join('genre', 'album.genreid = genre.id');
+        $this->db->join('cover', 'album.coverid = cover.id');
         $this->db->where('album.artistid', $artistId);
         $albumsQuery = $this->db->get();
         $albums = $albumsQuery->result();
     
-        // Get songs for each album
         foreach ($albums as $album) {
             $this->db->select('track.id as trackId, song.name as songName');
             $this->db->from('track');
@@ -148,26 +138,88 @@ class Model_music extends CI_Model {
             $album->songs = $this->db->get()->result();
         }
     
-        return array('artist' => $artistDetails, 'albums' => $albums);
+        return $albums;
     }
-    
-    
+
+    public function getArtistDetails($artistId) {
+        $this->db->select('artist.name as artistName, artist.id');
+        $this->db->from('artist');
+        $this->db->where('artist.id', $artistId);
+        $artistQuery = $this->db->get();
+        return $artistQuery->row();
+    }
+
     public function getSongDetails($songId) {
-        $this->db->select('song.name as songName, song.id as songId, album.name as albumName, album.id as albumId, album.year, artist.name as artistName, artist.id as artistId, cover.jpeg');
+        $this->db->select('
+            song.name as songName, 
+            song.id as songId, 
+            album.name as albumName, 
+            album.id as albumId, 
+            album.year, 
+            artist.name as artistName, 
+            artist.id as artistId, 
+            cover.jpeg,
+            track.diskNumber, 
+            track.number, 
+            track.duration
+        ');
         $this->db->from('track');
-        $this->db->join('album', 'track.albumId = album.id');
-        $this->db->join('song', 'song.id = track.songId');
+        $this->db->join('album', 'track.albumid = album.id');
+        $this->db->join('song', 'song.id = track.songid');
         $this->db->join('artist', 'album.artistid = artist.id');
         $this->db->join('cover', 'cover.id = album.coverid');
         $this->db->where('track.id', $songId);
-
+    
         $result = $this->db->get();
         return $result->row_array();
     }
 
-    // Suppression de la deuxième méthode researchtype
+    public function getSongsByAlbum($albumId) {
+        $this->db->select('track.id');
+        $this->db->from('track');
+        $this->db->where('track.albumid', $albumId);
+        $query = $this->db->get();
+        return $query->result();
+    }
 
-    public function research(){
-        $result = $this->db->query();
+    public function getSongsByArtist($artistId) {
+        $this->db->select('track.id');
+        $this->db->from('track');
+        $this->db->join('album', 'track.albumid = album.id');
+        $this->db->where('album.artistid', $artistId);
+        $query = $this->db->get();
+        return $query->result();
+    }    
+    
+
+    public function getRandomSongs($numSongs, $artist = '', $genre = '') {
+        $this->db->select('track.id as trackId');
+        $this->db->from('track');
+        $this->db->join('album', 'track.albumid = album.id');
+        $this->db->join('song', 'song.id = track.songid');
+        $this->db->join('artist', 'album.artistid = artist.id');
+        $this->db->join('genre', 'album.genreid = genre.id');
+    
+        if (!empty($artist)) {
+            $this->db->where('artist.name', $artist);
+        }
+    
+        if (!empty($genre)) {
+            $this->db->where('genre.name', $genre);
+        }
+    
+        $this->db->order_by('RAND()');
+        $this->db->limit($numSongs);
+    
+        $query = $this->db->get();
+        return $query->result();
+    }
+    
+
+    public function getGenres() {
+        $this->db->select('id, name');
+        $this->db->from('genre');
+        $query = $this->db->get();
+        return $query->result();
     }
 }
diff --git a/application/models/Model_playlist.php b/application/models/Model_playlist.php
new file mode 100644
index 0000000..70a2b15
--- /dev/null
+++ b/application/models/Model_playlist.php
@@ -0,0 +1,98 @@
+<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
+
+class Model_playlist extends CI_Model {
+    public function __construct() {
+        $this->load->database();
+    }
+
+    public function getPlaylistsByUser($userEmail) {
+        $this->db->select('*');
+        $this->db->from('playlists');
+        $this->db->where('user_email', $userEmail);
+        $query = $this->db->get();
+        return $query->result();
+    }
+
+    public function addPlaylist($userEmail, $name) {
+        $data = array(
+            'user_email' => $userEmail,
+            'name' => $name
+        );
+        $this->db->insert('playlists', $data);
+        return $this->db->insert_id();
+    }
+
+    public function addItem($playlistId, $itemId, $itemType) {
+        $data = array(
+            'playlist_id' => $playlistId,
+            'item_id' => $itemId,
+            'item_type' => $itemType
+        );
+        return $this->db->insert('playlist_items', $data);
+    }
+
+    public function getPlaylistItems($playlistId) {
+        $this->db->select('playlist_items.item_id, song.name as songName, artist.name as artistName, album.name as albumName, playlist_items.playlist_id');
+        $this->db->from('playlist_items');
+        $this->db->join('track', 'track.id = playlist_items.item_id');
+        $this->db->join('song', 'song.id = track.songid');
+        $this->db->join('album', 'album.id = track.albumid');
+        $this->db->join('artist', 'artist.id = album.artistid');
+        $this->db->where('playlist_items.playlist_id', $playlistId);
+
+        $result = $this->db->get();
+        return $result->result();
+    }
+
+    public function deleteItem($playlistId, $itemId) {
+        $this->db->where('playlist_id', $playlistId);
+        $this->db->where('item_id', $itemId);
+        return $this->db->delete('playlist_items');
+    }
+
+    public function deletePlaylist($playlistId) {
+        $this->db->where('playlist_id', $playlistId);
+        $this->db->delete('playlist_items');
+
+        $this->db->where('id', $playlistId);
+        return $this->db->delete('playlists');
+    }
+
+    public function duplicatePlaylist($playlistId) {
+        $this->db->select('*');
+        $this->db->from('playlists');
+        $this->db->where('id', $playlistId);
+        $query = $this->db->get();
+        $playlist = $query->row();
+
+        if ($playlist) {
+            $newPlaylistData = array(
+                'user_email' => $playlist->user_email,
+                'name' => $playlist->name . ' (Copie)'
+            );
+            $this->db->insert('playlists', $newPlaylistData);
+            $newPlaylistId = $this->db->insert_id();
+
+            $this->db->select('*');
+            $this->db->from('playlist_items');
+            $this->db->where('playlist_id', $playlistId);
+            $query = $this->db->get();
+            $items = $query->result();
+
+            foreach ($items as $item) {
+                $newItemData = array(
+                    'playlist_id' => $newPlaylistId,
+                    'item_id' => $item->item_id,
+                    'item_type' => $item->item_type
+                );
+                $this->db->insert('playlist_items', $newItemData);
+            }
+        }
+    }
+
+    public function renamePlaylist($playlistId, $newName) {
+        $data = array('name' => $newName);
+        $this->db->where('id', $playlistId);
+        return $this->db->update('playlists', $data);
+    }
+}
diff --git a/application/views/album_details.php b/application/views/album_details.php
index 7f2fb1c..635cbf9 100644
--- a/application/views/album_details.php
+++ b/application/views/album_details.php
@@ -1,31 +1,38 @@
 <!DOCTYPE html>
 <html>
-<head>
-    <title><?= $album->albumName ?> - Details</title>
-    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@1.0.0/css/bulma.min.css">
-</head>
 <body>
     <section class="section">
         <div class="container">
-            <h1 class="title"><?= $album->albumName ?></h1>
-            <div class="columns">
+            <div class="columns is-vcentered">
                 <div class="column is-one-third">
-                    <figure class="image">
+                    <figure class="image is-square">
                         <img src="data:image/jpeg;base64,<?= base64_encode($album->jpeg) ?>" alt="<?= $album->albumName ?> Cover">
                     </figure>
                 </div>
                 <div class="column">
-                    <p><strong>Artist:</strong> <?= $album->artistName ?></p>
+                    <h1 class="title"><?= $album->albumName ?></h1>
+                    <p><strong>Artiste:</strong> <?= $album->artistName ?></p>
                     <p><strong>Genre:</strong> <?= $album->genreName ?></p>
-                    <p><strong>Year:</strong> <?= $album->year ?></p>
+                    <p><strong>Année:</strong> <?= $album->year ?></p>
                 </div>
             </div>
-            <h2 class="title is-4">Songs</h2>
-            <ul>
-                <?php foreach ($songs as $song): ?>
-                    <li><?= anchor("music/view/{$song->trackId}", $song->trackName) ?></li>
-                <?php endforeach; ?>
-            </ul>
+            <h2 class="title is-4">Chansons</h2>
+            <div class="table-container">
+                <table class="table is-striped is-fullwidth">
+                    <thead>
+                        <tr>
+                            <th>Titre</th>
+                        </tr>
+                    </thead>
+                    <tbody>
+                        <?php foreach ($songs as $song): ?>
+                            <tr>
+                                <td><?= anchor("music/view/{$song->trackId}", $song->trackName) ?></td>
+                            </tr>
+                        <?php endforeach; ?>
+                    </tbody>
+                </table>
+            </div>
         </div>
     </section>
 </body>
diff --git a/application/views/albums_list.php b/application/views/albums_list.php
index 5a24b78..6b7cd2a 100644
--- a/application/views/albums_list.php
+++ b/application/views/albums_list.php
@@ -1,24 +1,44 @@
-<h5 class="title is-5 has-text-white">Liste des Albums</h5>
-<section class="columns is-multiline">
-    <?php foreach($albums as $album): ?>
-        <div class="column is-one-quarter">
-            <div class="card">
-                <div class="card-image">
-                    <figure class="image is-4by3">
-                        <img src="data:image/jpeg;base64,<?= base64_encode($album->jpeg) ?>" alt="<?= $album->name ?>">
-                    </figure>
-                </div>
-                <div class="card-content">
-                    <div class="media">
-                        <div class="media-content">
-                            <p class="title is-4">
-                                <?= anchor("albums/view/{$album->id}", $album->name) ?>
-                            </p>
-                            <p class="subtitle is-6"><?= "{$album->year} - {$album->artistName}" ?></p>
+<!doctype html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title>Liste des Albums - Dix heures</title>
+    <link rel="stylesheet" href="<?= base_url('assets/style.css') ?>">
+</head>
+<body>
+    <section class="section">
+        <div class="container">
+            <h1 class="title is-4 has-text-dark">Liste des Albums</h1>
+            <div class="columns is-multiline is-centered">
+                <?php foreach ($albums as $album): ?>
+                    <div class="column is-one-quarter-desktop is-half-tablet is-full-mobile">
+                        <div class="card">
+                            <div class="card-image">
+                                <figure class="image is-4by3">
+                                    <img src="data:image/jpeg;base64,<?= base64_encode($album->jpeg) ?>" alt="<?= $album->name ?>">
+                                </figure>
+                            </div>
+                            <div class="card-content">
+                                <div class="media">
+                                    <div class="media-content">
+                                        <p class="title is-4 album-title"><?= anchor("albums/view/{$album->id}", $album->name) ?></p>
+                                        <p class="subtitle is-6"><?= "{$album->year} - {$album->artistName}" ?></p>
+                                        <?php if (isset($is_logged_in) && $is_logged_in): ?>
+                                            <form method="post" action="<?= site_url('playlist/selectPlaylist') ?>">
+                                                <input type="hidden" name="itemId" value="<?= $album->id ?>">
+                                                <input type="hidden" name="itemType" value="album">
+                                                <button type="submit" class="button is-link is-fullwidth">Ajouter à la playlist</button>
+                                            </form>
+                                        <?php endif; ?>
+                                    </div>
+                                </div>
+                            </div>
                         </div>
                     </div>
-                </div>
+                <?php endforeach; ?>
             </div>
         </div>
-    <?php endforeach; ?>
-</section>
+    </section>
+</body>
+</html>
diff --git a/application/views/artist_details.php b/application/views/artist_details.php
index eb327ae..798c725 100644
--- a/application/views/artist_details.php
+++ b/application/views/artist_details.php
@@ -1,31 +1,36 @@
 <!DOCTYPE html>
 <html>
-<head>
-    <title><?= $album->albumName ?> - Details</title>
-    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@1.0.0/css/bulma.min.css">
-</head>
 <body>
     <section class="section">
         <div class="container">
-            <h1 class="title has-text-white"><?= $album->albumName ?></h1>
-            <div class="columns">
-                <div class="column is-one-third">
-                    <figure class="image is-square">
-                        <img src="data:image/jpeg;base64,<?= base64_encode($album->jpeg) ?>" alt="<?= $album->albumName ?> Cover">
-                    </figure>
-                </div>
-                <div class="column">
-                    <p><strong>Artist:</strong> <?= $album->artistName ?></p>
-                    <p><strong>Genre:</strong> <?= $album->genreName ?></p>
-                    <p><strong>Year:</strong> <?= $album->year ?></p>
-                </div>
-            </div>
-            <h2 class="title is-4 has-text-white">Songs</h2>
-            <ul>
-                <?php foreach ($songs as $song): ?>
-                    <li><?= anchor("music/view/{$song->trackId}", $song->trackName) ?></li>
+            <h1 class="title"><?= $artist->artistName ?></h1>
+            <h2 class="title is-4">Albums</h2>
+            <?php if ($albums): ?>
+                <?php foreach ($albums as $album): ?>
+                    <div class="box">
+                        <div class="columns">
+                            <div class="column is-one-third">
+                                <figure class="image">
+                                    <img src="data:image/jpeg;base64,<?= base64_encode($album->jpeg) ?>" alt="<?= $album->albumName ?> Cover">
+                                </figure>
+                            </div>
+                            <div class="column">
+                                <h3 class="title is-5"><?= $album->albumName ?></h3>
+                                <p><strong>Genre:</strong> <?= $album->genreName ?></p>
+                                <p><strong>Year:</strong> <?= $album->year ?></p>
+                                <h4 class="title is-6">Songs</h4>
+                                <ul>
+                                    <?php foreach ($album->songs as $song): ?>
+                                        <li><?= anchor("music/view/{$song->trackId}", $song->songName) ?></li>
+                                    <?php endforeach; ?>
+                                </ul>
+                            </div>
+                        </div>
+                    </div>
                 <?php endforeach; ?>
-            </ul>
+            <?php else: ?>
+                <p>No albums found for this artist.</p>
+            <?php endif; ?>
         </div>
     </section>
 </body>
diff --git a/application/views/artists_list.php b/application/views/artists_list.php
index 3992919..85d8a33 100644
--- a/application/views/artists_list.php
+++ b/application/views/artists_list.php
@@ -1,11 +1,27 @@
-<h5>Liste des Artistes</h5>
-<section class="list">
-<?php
-foreach($artists as $artist){
-        echo "<div><article>";
-        echo "<header class='short-text'>";
-        echo anchor("artistes/view/{$artist->artistId}","{$artist->artistName}");
-        echo "</header></article></div>";
-}
-?>
-</section>
\ No newline at end of file
+<section class="section">
+    <div class="container">
+        <h1 class="title is-4">Liste des Artistes</h1>
+        <div class="columns is-multiline">
+            <?php foreach ($artists as $artist): ?>
+                <div class="column is-one-quarter-desktop is-half-tablet is-full-mobile">
+                    <div class="card artist-card">
+                        <div class="card-content">
+                            <div class="media">
+                                <div class="media-content">
+                                    <p class="title is-4 artist-title"><?= anchor("artistes/view/{$artist->artistId}", $artist->artistName) ?></p>
+                                    <?php if (isset($is_logged_in) && $is_logged_in): ?>
+                                        <form method="post" action="<?= site_url('playlist/selectPlaylist') ?>">
+                                            <input type="hidden" name="itemId" value="<?= $artist->artistId ?>">
+                                            <input type="hidden" name="itemType" value="artist">
+                                            <button type="submit" class="button is-link">Ajouter à la playlist</button>
+                                        </form>
+                                    <?php endif; ?>
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+            <?php endforeach; ?>
+        </div>
+    </div>
+</section>
diff --git a/application/views/create.php b/application/views/create.php
index 53d875f..c729345 100644
--- a/application/views/create.php
+++ b/application/views/create.php
@@ -1,32 +1,59 @@
-<?=validation_errors(); ?>
-<?=form_open('connect/create')?>
-  <!-- Grid -->
-  <div class="grid">
-
-    <label for="prenom">
-      Prénom
-      <input type="text" id="prenom" name="prenom" placeholder="Prénom" value="<?=set_value('prenom')?>" required>
-    </label>
-
-    <label for="nom">
-      Nom
-      <input type="text" id="nom" name="nom" placeholder="Nom" value="<?=set_value('nom')?>" required>
-    </label>
-  </div>
-
-  <label for="email">Adresse mail</label>
-  <input type="email" id="email" name="email" placeholder="Email" value="<?=set_value('email')?>" required>
-
-  <div class="grid">
-    <label for="password">Password
-      <input type="password" id="password" name="password" placeholder="Password" value="<?=set_value('password')?>" required>
-    </label>
-
-    <label for="cpassword">Confirmation password
-      <input type="password" id="cpassword" name="cpassword" placeholder="Confirmation Password" value="<?=set_value('cpassword')?>" required>
-    </label>
-  </div>
-
-  <!-- Button -->
-  <button type="submit">Submit</button>
-</form>
+<!doctype html>
+<html lang="en">
+<body>
+    <section class="hero is-fullheight">
+        <div class="hero-body">
+            <div class="container">
+                <div class="columns is-centered">
+                    <div class="column is-5">
+                        <div class="box">
+                            <h1 class="title is-1 has-text-centered">Inscription</h1>
+                            <?=validation_errors(); ?>
+                            <?=form_open('connect/create')?>
+                                <div class="field">
+                                    <label class="label" for="prenom">Prénom</label>
+                                    <div class="control">
+                                        <input class="input is-dark" type="text" id="prenom" name="prenom" placeholder="Prénom" value="<?=set_value('prenom')?>" required>
+                                    </div>
+                                </div>
+                                <div class="field">
+                                    <label class="label" for="nom">Nom</label>
+                                    <div class="control">
+                                        <input class="input is-dark" type="text" id="nom" name="nom" placeholder="Nom" value="<?=set_value('nom')?>" required>
+                                    </div>
+                                </div>
+                                <div class="field">
+                                    <label class="label" for="email">Adresse mail</label>
+                                    <div class="control">
+                                        <input class="input is-dark" type="email" id="email" name="email" placeholder="Email" value="<?=set_value('email')?>" required>
+                                    </div>
+                                </div>
+                                <div class="field">
+                                    <label class="label" for="password">Mot de passe</label>
+                                    <div class="control">
+                                        <input class="input is-dark" type="password" id="password" name="password" placeholder="Mot de passe" value="<?=set_value('password')?>" required>
+                                    </div>
+                                </div>
+                                <div class="field">
+                                    <label class="label" for="cpassword">Confirmation mot de passe</label>
+                                    <div class="control">
+                                        <input class="input is-dark" type="password" id="cpassword" name="cpassword" placeholder="Confirmation mot de passe" value="<?=set_value('cpassword')?>" required>
+                                    </div>
+                                </div>
+                                <div class="field">
+                                    <div class="control">
+                                        <button class="button is-primary is-fullwidth is-large" type="submit">S'inscrire</button>
+                                    </div>
+                                </div>
+                                <div class="has-text-centered">
+                                    <p>Vous avez déjà un compte ? <a href="<?= site_url('connect/login') ?>" class="has-text-primary">Connexion</a></p>
+                                </div>
+                            </form>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </section>
+</body>
+</html>
diff --git a/application/views/layout/getter.php b/application/views/layout/getter.php
index 7342623..d1a5cfe 100644
--- a/application/views/layout/getter.php
+++ b/application/views/layout/getter.php
@@ -17,6 +17,7 @@
     <!-- Div contenant les filtres, cachée par défaut -->
     <div id="filters" style="display: none;">
         <form method="GET" action="">
+            <?php if ($this->uri->segment(1) != 'artistes'): ?>
             <!-- Filtre par artiste -->
             <div class="field">
                 <label class="label" for="artist">Artiste</label>
@@ -31,6 +32,7 @@
                     </div>
                 </div>
             </div>
+            <?php endif; ?>
 
             <!-- Filtre par genre -->
             <div class="field">
diff --git a/application/views/layout/header.php b/application/views/layout/header.php
index e6b1002..bec453e 100644
--- a/application/views/layout/header.php
+++ b/application/views/layout/header.php
@@ -1,58 +1,48 @@
 <!doctype html>
-<html lang="en" class="has-navbar-fixed-top">
+<html lang="en">
 <head>
-    <meta charset="UTF-8" />
-    <title>Dix heures</title>
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title><?= $title ?? 'Dix heures' ?></title>
     <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@1.0.0/css/bulma.min.css">
     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
-    <?= link_tag('assets/style.css') ?>
-    <style>
-        body {
-            background-color: #121212;
-            color: #FFFFFF;
-        }
-        .navbar {
-            background-color: #000000;
-        }
-        .navbar-item {
-            color: white;
-        }
-        .hero {
-            background-color: #282828;
-            color: white;
-        }
-        .card {
-            background-color: #1e1e1e;
-            color: white;
-        }
-        .button, .input, .select {
-            background-color: #282828;
-            color: white;
-            border-color: #282828;
-        }
-        .button:hover, .input:hover, .select:hover {
-            background-color: #3b3b3b;
-            border-color: #3b3b3b;
-        }
-    </style>
+    <link rel="stylesheet" href="<?= base_url('assets/style.css') ?>">
 </head>
 <body>
     <nav class="navbar">
-        <div class="navbar-brand">
-            <a class="navbar-item" href="#">Dix heures</a>
-        </div>
-        <div class="navbar-menu">
-            <div class="navbar-end">
-                <a class="navbar-item" href="<?= site_url('albums') ?>">Albums</a>
-                <a class="navbar-item" href="<?= site_url('artistes') ?>">Artistes</a>
-                <a class="navbar-item" href="<?= site_url('music') ?>">Music</a>
-                <?php if (isset($is_logged_in) && $is_logged_in): ?>
-                    <a class="navbar-item" href="<?= site_url('playlist') ?>">Playlist</a>
-                    <a class="navbar-item" href="<?= site_url('connect/logout') ?>">Déconnexion</a>
-                <?php else: ?>
-                    <a class="navbar-item" href="<?= site_url('connect/login') ?>">Connexion</a>
-                <?php endif; ?>
+        <div class="container">
+            <div class="navbar-brand">
+                <a class="navbar-item" href="#">
+                    <img src="<?= base_url('assets/logo.png') ?>" alt="Logo">
+                </a>
+                <a role="button" class="navbar-burger" aria-label="menu" aria-expanded="false" data-target="navbarBasicExample">
+                    <span aria-hidden="true"></span>
+                    <span aria-hidden="true"></span>
+                    <span aria-hidden="true"></span>
+                </a>
+            </div>
+
+            <div id="navbarBasicExample" class="navbar-menu">
+                <div class="navbar-start">
+                    <a class="navbar-item" href="<?= site_url('albums') ?>">Albums</a>
+                    <a class="navbar-item" href="<?= site_url('artistes') ?>">Artistes</a>
+                    <a class="navbar-item" href="<?= site_url('music') ?>">Musiques</a>
+                    <?php if (isset($is_logged_in) && $is_logged_in): ?>
+                        <a class="navbar-item" href="<?= site_url('playlist') ?>">Playlists</a>
+                    <?php endif; ?>
+                </div>
+
+                <div class="navbar-end">
+                    <div class="navbar-item">
+                        <?php if (isset($is_logged_in) && $is_logged_in): ?>
+                            <a class="button is-light" href="<?= site_url('connect/logout') ?>">Déconnexion</a>
+                        <?php else: ?>
+                            <a class="button is-light" href="<?= site_url('connect/login') ?>">Connexion</a>
+                            <a class="button is-primary" href="<?= site_url('connect/create') ?>">Inscription</a>
+                        <?php endif; ?>
+                    </div>
+                </div>
             </div>
         </div>
     </nav>
-    <main class="container">
+    <main class="container" style="padding-top: 90px;"> <!-- Ajout de padding-top pour éviter que la navbar ne masque le contenu -->
diff --git a/application/views/login.php b/application/views/login.php
index ed4598c..6ac55b7 100644
--- a/application/views/login.php
+++ b/application/views/login.php
@@ -1,29 +1,44 @@
-<!DOCTYPE html>
-<html>
-<head>
-    <title>Login</title>
-</head>
+<!doctype html>
+<html lang="fr">
 <body>
-    <?= validation_errors(); ?>
-
-    <?php if (isset($error)): ?>
-      <p style="color: red;"><?= $error ?></p>
-    <?php endif; ?>
-
-    <?= form_open('connect/login') ?>
-      <!-- Grid -->
-      <div class="grid">
-        <label for="email">Adresse mail</label>
-        <input type="email" id="email" name="email" placeholder="Email" value="<?= set_value('email') ?>" required>
-
-        <label for="password">Password</label>
-        <input type="password" id="password" name="password" placeholder="Password" value="<?= set_value('password') ?>" required>
-      </div>
-      <!-- Button -->
-      <button type="submit">Submit</button>
-      
-      <?= anchor('connect/create', "Pas de compte ? Créez-en un !"); ?>
-    </form>
+    <section class="hero is-fullheight">
+        <div class="hero-body">
+            <div class="container">
+                <div class="columns is-centered">
+                    <div class="column is-5">
+                        <div class="box">
+                            <h1 class="title is-1 has-text-centered">Connexion</h1>
+                            <?= validation_errors(); ?>
+                            <?php if (isset($error)): ?>
+                                <p class="has-text-danger"><?= $error ?></p>
+                            <?php endif; ?>
+                            <?= form_open('connect/login') ?>
+                                <div class="field">
+                                    <label class="label" for="email">Adresse mail</label>
+                                    <div class="control">
+                                        <input class="input is-dark" type="email" id="email" name="email" placeholder="Email" value="<?= set_value('email') ?>" required>
+                                    </div>
+                                </div>
+                                <div class="field">
+                                    <label class="label" for="password">Mot de passe</label>
+                                    <div class="control">
+                                        <input class="input is-dark" type="password" id="password" name="password" placeholder="Mot de passe" value="<?= set_value('password') ?>" required>
+                                    </div>
+                                </div>
+                                <div class="field">
+                                    <div class="control">
+                                        <button class="button is-primary is-fullwidth is-large" type="submit">Se connecter</button>
+                                    </div>
+                                </div>
+                                <div class="has-text-centered">
+                                    <p>Vous n'avez pas de compte ? <a href="<?= site_url('connect/create') ?>" class="has-text-primary">Inscription</a></p>
+                                </div>
+                            </form>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </section>
 </body>
 </html>
-
diff --git a/application/views/logout.php b/application/views/logout.php
index 7ac14d6..9c36dbc 100644
--- a/application/views/logout.php
+++ b/application/views/logout.php
@@ -2,14 +2,6 @@
 defined('BASEPATH') OR exit('No direct script access allowed');
 ?>
 <!doctype html>
-<html lang="en" class="has-navbar-fixed-top">
-<head>
-  <meta charset="UTF-8" />
-  <title>Dix heures</title>
-  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@picocss/pico@2/css/pico.min.css"/>
-  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
-  <?=link_tag('assets/style.css')?>
-</head>
 <body>
   <main class='container'>
     <nav>
diff --git a/application/views/musiques_list.php b/application/views/musiques_list.php
index 8b35a8e..0e0440e 100644
--- a/application/views/musiques_list.php
+++ b/application/views/musiques_list.php
@@ -1,16 +1,33 @@
-<h5>Liste des musiques</h5>
-<section class="list">
-<?php
-foreach($musics as $music){
-    echo "<div><article>";
-    echo "<header class='short-text'>";
-    if(isset($music->trackName)) {
-        echo anchor("music/view/{$music->trackId}", $music->trackName);
-    }
-    echo "</header>";
-    echo '<img src="data:image/jpeg;base64,'.base64_encode($music->jpeg).'" />';
-    echo "<footer class='short-text'>{$music->year} - {$music->artistName} - {$music->albumName}</footer>
-    </article></div>";
-}
-?>
+<section class="section">
+    <div class="container">
+        <h1 class="title is-4 has-text-dark">Liste des musiques</h1>
+        <div class="columns is-multiline">
+            <?php foreach ($musics as $music): ?>
+                <div class="column is-one-quarter-desktop is-half-tablet is-full-mobile">
+                    <div class="card">
+                        <div class="card-image">
+                            <figure class="image is-4by3">
+                                <img src="data:image/jpeg;base64,<?= base64_encode($music->jpeg) ?>" alt="<?= $music->trackName ?>">
+                            </figure>
+                        </div>
+                        <div class="card-content">
+                            <div class="media">
+                                <div class="media-content">
+                                    <p class="title is-4 music-title"><?= anchor("music/view/{$music->trackId}", $music->trackName) ?></p>
+                                    <p class="subtitle is-6"><?= "{$music->year} - {$music->artistName} - {$music->albumName}" ?></p>
+                                    <?php if (isset($is_logged_in) && $is_logged_in): ?>
+                                        <form method="post" action="<?= site_url('playlist/selectPlaylist') ?>">
+                                            <input type="hidden" name="itemId" value="<?= $music->trackId ?>">
+                                            <input type="hidden" name="itemType" value="song">
+                                            <button type="submit" class="button is-link">Ajouter à la playlist</button>
+                                        </form>
+                                    <?php endif; ?>
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+            <?php endforeach; ?>
+        </div>
+    </div>
 </section>
diff --git a/application/views/playlist_details.php b/application/views/playlist_details.php
new file mode 100644
index 0000000..87760cd
--- /dev/null
+++ b/application/views/playlist_details.php
@@ -0,0 +1,38 @@
+<section class="section">
+    <div class="container">
+        <h1 class="title">Détails de la Playlist</h1>
+
+        <?php if ($items): ?>
+            <div class="table-container" style="max-height: 400px; overflow-y: auto;">
+                <table class="table is-fullwidth is-striped">
+                    <thead>
+                        <tr>
+                            <th>Titre</th>
+                            <th>Artiste</th>
+                            <th>Album</th>
+                            <th>Actions</th>
+                        </tr>
+                    </thead>
+                    <tbody>
+                        <?php foreach ($items as $item): ?>
+                            <tr>
+                                <td><?= anchor("music/view/{$item->item_id}", $item->songName) ?></td>
+                                <td><?= $item->artistName ?></td>
+                                <td><?= $item->albumName ?></td>
+                                <td>
+                                    <form method="post" action="<?= site_url('playlist/deleteItem/'.$item->playlist_id.'/'.$item->item_id) ?>" style="display:inline;">
+                                        <button type="submit" class="button is-danger is-small">Supprimer</button>
+                                    </form>
+                                </td>
+                            </tr>
+                        <?php endforeach; ?>
+                    </tbody>
+                </table>
+            </div>
+        <?php else: ?>
+            <p>La playlist est vide.</p>
+        <?php endif; ?>
+
+        <a href="<?= site_url('playlist') ?>" class="button is-link">Retour aux playlists</a>
+    </div>
+</section>
\ No newline at end of file
diff --git a/application/views/playlists_list.php b/application/views/playlists_list.php
new file mode 100644
index 0000000..2c49e07
--- /dev/null
+++ b/application/views/playlists_list.php
@@ -0,0 +1,154 @@
+<section class="section">
+    <div class="container">
+        <h1 class="title">Mes Playlists</h1>
+
+        <?php if (isset($error)): ?>
+            <div class="notification is-danger">
+                <?= $error ?>
+            </div>
+        <?php endif; ?>
+
+        <?php if ($playlists): ?>
+            <div class="columns is-multiline">
+                <?php foreach ($playlists as $playlist): ?>
+                    <div class="column is-one-third">
+                        <div class="card">
+                            <div class="card-content">
+                                <div class="media">
+                                    <div class="media-content">
+                                        <p class="title is-4"><?= anchor("playlist/view/{$playlist->id}", $playlist->name) ?></p>
+                                    </div>
+                                    <div class="media-right buttons-right">
+                                        <?= form_open('playlist/duplicate/'.$playlist->id, ['style' => 'display:inline;']) ?>
+                                            <button type="submit" class="button is-info is-small">Dupliquer</button>
+                                        <?= form_close() ?>
+                                        <button class="button is-warning is-small" onclick="showRenameModal('<?= $playlist->id ?>', '<?= $playlist->name ?>')">Renommer</button>
+                                    </div>
+                                </div>
+                            </div>
+                            <footer class="card-footer">
+                                <?= form_open('playlist/delete/'.$playlist->id, ['class' => 'card-footer-item']) ?>
+                                    <button type="submit" class="button is-danger is-small">Supprimer</button>
+                                <?= form_close() ?>
+                            </footer>
+                        </div>
+                    </div>
+                <?php endforeach; ?>
+            </div>
+        <?php else: ?>
+            <p>Vous n'avez pas encore de playlists.</p>
+        <?php endif; ?>
+
+        <div class="box">
+            <form method="post" action="<?= site_url('playlist/add') ?>">
+                <div class="field">
+                    <label class="label">Nom de la playlist</label>
+                    <div class="control">
+                        <input type="text" name="name" class="input" placeholder="Nom de la playlist" required>
+                    </div>
+                </div>
+                <div class="field">
+                    <label class="label">Type de Playlist</label>
+                    <div class="control">
+                        <div class="select">
+                            <select name="type" id="playlistType" onchange="toggleRandomOptions()">
+                                <option value="empty">Vide</option>
+                                <option value="random">Aléatoire</option>
+                            </select>
+                        </div>
+                    </div>
+                </div>
+
+                <div id="randomOptions" style="display: none;">
+                    <div class="field">
+                        <label class="label">Nombre de chansons</label>
+                        <div class="control">
+                            <input type="number" name="numSongs" class="input" placeholder="Nombre de chansons">
+                        </div>
+                    </div>
+                    <div class="field">
+                        <label class="label">Artiste</label>
+                        <div class="control">
+                            <div class="select">
+                                <select name="artist">
+                                    <option value="">Tous</option>
+                                    <?php foreach($artists as $artist): ?>
+                                        <option value="<?= $artist->name ?>"><?= $artist->name ?></option>
+                                    <?php endforeach; ?>
+                                </select>
+                            </div>
+                        </div>
+                    </div>
+                    <div class="field">
+                        <label class="label">Genre</label>
+                        <div class="control">
+                            <div class="select">
+                                <select name="genre">
+                                    <option value="">Tous</option>
+                                    <?php foreach($genres as $genre): ?>
+                                        <option value="<?= $genre->name ?>"><?= $genre->name ?></option>
+                                    <?php endforeach; ?>
+                                </select>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+
+                <div class="field">
+                    <div class="control">
+                        <button type="submit" class="button is-link">Créer une playlist</button>
+                    </div>
+                </div>
+            </form>
+        </div>
+    </div>
+</section>
+
+<!-- Rename Modal -->
+<div id="renameModal" class="modal">
+    <div class="modal-background"></div>
+    <div class="modal-card">
+        <header class="modal-card-head">
+            <p class="modal-card-title">Renommer la Playlist</p>
+            <button class="delete" aria-label="close" onclick="closeRenameModal()"></button>
+        </header>
+        <section class="modal-card-body">
+            <form id="renameForm" method="post" action="<?= site_url('playlist/rename') ?>">
+                <div class="field">
+                    <label class="label">Nouveau Nom</label>
+                    <div class="control">
+                        <input type="hidden" name="playlistId" id="renamePlaylistId">
+                        <input type="text" name="newName" class="input" id="renameNewName" required>
+                    </div>
+                </div>
+                <div class="field">
+                    <div class="control">
+                        <button type="submit" class="button is-link">Renommer</button>
+                    </div>
+                </div>
+            </form>
+        </section>
+    </div>
+</div>
+
+<script>
+    function toggleRandomOptions() {
+        var playlistType = document.getElementById('playlistType').value;
+        var randomOptions = document.getElementById('randomOptions');
+        if (playlistType === 'random') {
+            randomOptions.style.display = 'block';
+        } else {
+            randomOptions.style.display = 'none';
+        }
+    }
+
+    function showRenameModal(playlistId, playlistName) {
+        document.getElementById('renamePlaylistId').value = playlistId;
+        document.getElementById('renameNewName').value = playlistName;
+        document.getElementById('renameModal').classList.add('is-active');
+    }
+
+    function closeRenameModal() {
+        document.getElementById('renameModal').classList.remove('is-active');
+    }
+</script>
diff --git a/application/views/select_playlist.php b/application/views/select_playlist.php
new file mode 100644
index 0000000..bb6b5f3
--- /dev/null
+++ b/application/views/select_playlist.php
@@ -0,0 +1,31 @@
+<section class="section">
+    <div class="container">
+        <h1 class="title is-4">Sélectionner une playlist</h1>
+
+        <?php if ($playlists): ?>
+            <form method="post" action="<?= site_url('playlist/addItems') ?>">
+                <input type="hidden" name="itemId" value="<?= $itemId ?>">
+                <input type="hidden" name="itemType" value="<?= $itemType ?>">
+                <div class="field">
+                    <label class="label">Choisir une playlist</label>
+                    <div class="control">
+                        <div class="select is-dark">
+                            <select name="playlistId">
+                                <?php foreach ($playlists as $playlist): ?>
+                                    <option value="<?= $playlist->id ?>"><?= $playlist->name ?></option>
+                                <?php endforeach; ?>
+                            </select>
+                        </div>
+                    </div>
+                </div>
+                <div class="field">
+                    <div class="control">
+                        <button type="submit" class="button is-link">Ajouter</button>
+                    </div>
+                </div>
+            </form>
+        <?php else: ?>
+            <p>Vous n'avez pas encore de playlists. Veuillez en créer une.</p>
+        <?php endif; ?>
+    </div>
+</section>
diff --git a/application/views/song_details.php b/application/views/song_details.php
index d72203e..56c653d 100644
--- a/application/views/song_details.php
+++ b/application/views/song_details.php
@@ -1,14 +1,28 @@
 <!DOCTYPE html>
 <html>
-<head>
-    <title><?= $song['songName'] ?> - Details</title>
-</head>
 <body>
-    <h1><?= $song['songName'] ?></h1>
-    <p><strong>Album:</strong> <?= anchor("music/view/{$song['albumId']}", $song['albumName']) ?> (<?= $song['year'] ?>)</p>
-    <p><strong>Artist:</strong> <?= $song['artistName'] ?></p>
-    <?php if(isset($song['jpeg']) && $song['jpeg'] != ''): ?>
-        <img src="data:image/jpeg;base64,<?= base64_encode($song['jpeg']) ?>" alt="<?= $song['albumName'] ?> Cover">
-    <?php endif; ?>
+    <section class="section">
+        <div class="container">
+            <h1 class="title"><?= $song['songName'] ?></h1>
+            <div class="columns">
+                <div class="column is-one-third">
+                    <figure class="image">
+                        <?php if(isset($song['jpeg']) && $song['jpeg'] != ''): ?>
+                            <img src="data:image/jpeg;base64,<?= base64_encode($song['jpeg']) ?>" alt="<?= $song['albumName'] ?> Cover">
+                        <?php else: ?>
+                            <img src="path_to_default_image" alt="Default Cover">
+                        <?php endif; ?>
+                    </figure>
+                </div>
+                <div class="column">
+                    <p><strong>Album:</strong> <?= anchor("albums/view/{$song['albumId']}", $song['albumName']) ?> (<?= $song['year'] ?>)</p>
+                    <p><strong>Artist:</strong> <?= $song['artistName'] ?></p>
+                    <p><strong>Disk Number:</strong> <?= $song['diskNumber'] ?></p>
+                    <p><strong>Track Number:</strong> <?= $song['number'] ?></p>
+                    <p><strong>Duration:</strong> <?= $song['duration'] ?> seconds</p>
+                </div>
+            </div>
+        </div>
+    </section>
 </body>
 </html>
diff --git a/assets/common.css b/assets/common.css
new file mode 100644
index 0000000..e69de29
diff --git a/assets/logo.png b/assets/logo.png
new file mode 100644
index 0000000..8662818
Binary files /dev/null and b/assets/logo.png differ
diff --git a/assets/style.css b/assets/style.css
index df6266e..6dce49b 100644
--- a/assets/style.css
+++ b/assets/style.css
@@ -1,20 +1,38 @@
-section.list
-{
-	display : flex;
-	justify-content : space-between;
-	flex-wrap:wrap;
-}
-section.list > div 
-{
-width : 30%;
-}
-section.list img {
-	display:inline-block;
+/* style.css */
 
-}
-.short-text {
-	overflow: hidden;
-	white-space: nowrap;
-	text-overflow: ellipsis;
+.card {
+    display: flex;
+    flex-direction: column;
+    height: 100%;
 }
 
+.card-image {
+    flex-shrink: 0;
+}
+
+.card-content {
+    flex-grow: 1;
+}
+
+.card-footer {
+    flex-shrink: 0;
+}
+
+.album-title, .artist-title, .music-title {
+    display: -webkit-box;
+    -webkit-box-orient: vertical;
+    -webkit-line-clamp: 2; /* Limite à 2 lignes */
+    overflow: hidden;
+    text-overflow: ellipsis;
+    height: 3em; /* Ajuste en fonction de la taille de la police */
+}
+
+.columns {
+    justify-content: center; /* Centre les colonnes */
+}
+
+.card img {
+    object-fit: cover; /* Assure que les images couvrent bien les figures */
+    width: 100%;
+    height: auto;
+}