Files
2025-12-05 10:30:43 +01:00

472 lines
8.6 KiB
CSS
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* === SECTION LISTE DES SÉRIES === */
section.list {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
grid-auto-rows: minmax(100px, auto);
gap: calc(2em + 2vh) calc(1.5em + 1vmin);
background-color: rgba(255, 255, 255, 0.015);
border: 1px solid rgba(255, 255, 255, 0.06);
border-radius: 12px;
padding: 12px;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}
section.list article,
section.list article header {
text-align: center;
transition: transform 0.2s ease, box-shadow 0.2s ease;
cursor: pointer;
}
section.list article:hover {
box-shadow: 0 4px 15px rgba(0,0,0,0.15);
transform: scale(1.03);
}
section.list img {
display: inline-block;
}
.short-text {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
text-align: center;
}
/*IMAGES AVEC EFFET HOVER*/
img.serie-img,
.img-hover-grow {
max-width: 200px;
border-radius: 10px;
display: block;
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
img.serie-img:hover,
.img-hover-grow:hover {
transform: scale(1.03);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}
/*ÉTOILES DE NOTE*/
.stars {
font-size: 1.2em;
color: goldenrod;
}
.empty-star {
font-size: 1.5em;
color: goldenrod;
vertical-align: -0.095em;
}
/*LIENS SÉRIES*/
a.tvshow-link {
text-decoration: none;
color: inherit;
}
/*FICHE SÉRIE PAGE DÉTAIL */
.fiche-wrapper {
display: flex;
align-items: flex-start;
gap: 28px;
margin-top: 10px;
flex-wrap: wrap;
}
.fiche-image {
flex: 0 0 auto;
}
.fiche-infos {
margin-top: -10px;
flex: 1 1 500px;
max-width: 1200px;
display: flex;
flex-direction: column;
gap: 10px;
transform: translateY(-20px);
}
.genres-absolus {
margin-top: -10px;
padding-top: -20px;
font-size: 1rem;
line-height: 1.6;
}
.titre-et-coeur {
margin-top: 20px;
margin-bottom: -20px;
display: flex;
align-items: center;
gap: 25px;
}
.titre-et-coeur h2 {
font-size: 2rem;
}
.coeur-btn {
padding: 8px;
font-size: 1.6em;
border: none;
border-radius: 12px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
width: 67px;
height: 47px;
box-shadow: 0 2px 6px rgba(0, 0, 0, 1.5);
transition: background 0.3s ease, color 0.3s ease;
margin-top: 2px;
line-height: 1;
}
.coeur-btn {
background-color: #512727;
color: #ff3333;
}
.coeur-btn.vide {
background: linear-gradient(180deg, #0274b2, #4a84ce);
color: white;
}
/*COMMENTAIRES UTILISATEURS*/
.user-reviews .review-item {
display: flex;
gap: 20px;
align-items: center;
flex-wrap: wrap;
margin-bottom: 25px;
padding: 20px;
border: 1px solid rgba(200, 200, 200, 0.5);
border-radius: 10px;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}
.review-content {
flex: 1;
}
.review-meta {
display: flex;
flex-direction: column;
align-items: center;
gap: 8px;
}
.review-title {
font-weight: bold;
text-transform: uppercase;
font-size: 1.1rem;
margin: 0;
text-align: center;
}
.btn-edit {
display: inline-block;
margin-top: 8px;
background: #0172ad;
color: white;
padding: 6px 10px;
border-radius: 5px;
text-decoration: none;
box-shadow: 0 0 10px rgba(26, 26, 26, 0.3);
}
/*SECTION FAVORIS*/
.favoris-section {
text-align: center;
}
.favoris-section h3 {
font-size: 1.8rem;
margin-bottom: 1rem;
text-transform: uppercase;
}
.favoris-wrapper {
display: flex;
justify-content: center;
}
.favoris-wrapper .list {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 2em;
max-width: 1200px;
}
/*MESSAGE DE BIENVENUE*/
.bonjour-message {
text-align: center;
margin-bottom: -0.5rem;
}
/*BOUTON SCROLL TOP*/
#btnScrollTop {
position: fixed;
bottom: 20px;
right: 20px;
width: 60px;
height: 60px;
border: none;
font-weight: bold;
border-radius: 50%;
background-color: #0172ad;
scroll-behavior: smooth;
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
cursor: pointer;
z-index: 1000;
display: flex;
align-items: center;
justify-content: center;
transition: opacity 0.3s, transform 0.3s;
}
#btnScrollTop:hover {
opacity: 0.7;
}
.fleche {
display: inline-block;
font-size: 1.7rem;
transform: scaleX(1.2);
line-height: 0.8;
}
.btn-avis {
display: inline-block;
background-color: #0172ad;
color: white;
padding: 10px 20px;
border-radius: 8px;
text-decoration: none;
font-weight: bold;
box-shadow: 0 2px 6px rgba(0,0,0,0.3);
transition: background-color 0.3s ease, transform 0.2s ease;
}
.btn-avis:hover {
background-color: #005a85;
transform: translateY(-2px);
}
/* STARS INTERACTIFS*/
.rating {
direction: rtl;
display: inline-flex;
gap: 10px;
font-size: 2rem;
padding: 12px 20px;
border-radius: 8px;
margin-bottom: 20px;
transition: background-color 0.3s, color 0.3s;
}
.rating input[type="radio"] {
display: none;
}
.rating label {
color: #9c9797;
cursor: pointer;
transition: color 0.2s, transform 0.2s ease;
}
.rating input[type="radio"]:checked ~ label,
.rating label:hover,
.rating label:hover ~ label {
color: orange;
transform: scale(1.2) translateY(-2px);
text-shadow: 0 0 6px rgba(255, 165, 0, 0.8);
}
/*FORMULAIRE EDIT REVIEW*/
.edit-review-container {
max-width: 600px;
margin: 40px auto;
padding: 30px;
border-radius: 12px;
box-shadow: 0 0 10px rgba(0,0,0,0.3);
}
.edit-label {
display: block;
margin: 15px 0 5px;
font-weight: bold;
}
.edit-textarea {
width: 100%;
padding: 10px;
font-size: 1rem;
border-radius: 6px;
box-sizing: border-box;
resize: vertical;
}
.edit-btn {
margin-top: 25px;
width: 100%;
padding: 12px;
font-size: 1rem;
background-color: #007BFF;
border: none;
border-radius: 6px;
cursor: pointer;
transition: background-color 0.2s ease;
}
.edit-btn:hover {
background-color: #218838;
}
.edit-review-container h2 {
text-align: center;
margin-bottom: 20px;
}
/*BLOC CRITIQUE SAISON*/
.season-review-block {
border: 1px solid rgba(180, 180, 180, 0.3);
padding: 20px;
margin-bottom: 25px;
border-radius: 10px;
box-shadow: 0 4px 15px rgba(0,0,0,0.15);
}
/*TITRE DE SAISON*/
.season-title {
font-size: 1.3rem;
font-weight: bold;
display: inline-block;
padding: 10px 0;
}
/*ACCORDÉON DE SAISON*/
details summary {
cursor: pointer;
padding: 8px 10px;
border-radius: 5px;
}
/*LISTE SAISONS CLIQUABLES*/
.saison-cartes-ligne {
display: flex;
flex-direction: column;
gap: 20px;
margin: 2em 0;
}
.carte-saison-ligne {
display: flex;
align-items: center;
border-radius: 10px;
padding: 15px;
text-decoration: none;
color: inherit;
box-shadow: 0 4px 15px rgba(0,0,0,0.15);
transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.carte-saison-ligne:hover {
transform: scale(1.01);
box-shadow: 0 4px 20px rgba(0,0,0,0.4);
}
.poster-saison {
width: 120px;
height: auto;
border-radius: 8px;
margin-right: 20px;
box-shadow: 0 0 8px rgba(0,0,0,0.4);
}
.infos-saison {
display: flex;
flex-direction: column;
justify-content: center;
}
.infos-saison .saison-num {
font-size: 1.4rem;
font-weight: bold;
color: #0172ad;
margin-bottom: 5px;
}
.infos-saison .saison-episodes {
font-size: 1rem;
}
/*PAGE SAISON*/
.saison-detail-wrapper {
margin-top: 2em;
}
.saison-header {
display: flex;
flex-wrap: wrap;
align-items: flex-start;
gap: 30px;
padding: 20px;
border-radius: 12px;
box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
.poster-saison-large {
max-width: 200px;
border-radius: 10px;
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.4);
}
.saison-infos {
flex: 1;
display: flex;
flex-direction: column;
justify-content: space-between;
}
.saison-num-title {
color: #0172ad;
}
.saison-synopsis {
font-style: italic;
margin-top: 10px;
}
.saison-meta {
font-size: 1.1rem;
margin-top: 20px;
}
/*SECTION DES CARTES ÉPISODES HORIZONTALES*/
.episodes-cartes-horizontales {
display: flex;
flex-direction: column;
gap: 1px;
margin: 2em 0;
}
.carte-episode-horizontale {
border: 1px solid rgba(255, 255, 255, 0.12);
border-radius: 14px;
box-shadow: 0 4px 8px rgba(0,0,0,0.17);
padding: 20px;
display: flex;
flex-direction: column;
transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}
.carte-episode-horizontale:hover {
transform: translateY(-3px);
box-shadow: 0 2px 8px rgba(0,0,0,0.5);
background-color: rgba(255, 255, 255, 0.03);
}
/*Contenu de la carte*/
.infos-episode {
display: flex;
flex-direction: column;
}
.episode-num {
font-weight: bold;
font-size: 1rem;
color: #0172ad;
margin-bottom: 6px;
}
.episode-title {
font-size: 1rem;
font-weight: 600;
margin-bottom: 10px;
}
.episode-overview {
font-size: 0.95rem;
margin-left: 10px;
line-height: 1.5;
}
/*CRITIQUES DE SAISON*/
.critiques-saison {
margin-top: 30px;
}
.season-review-list {
list-style: none;
padding-left: 0;
margin: 0;
}
.season-review-list li {
padding-left: 10px;
margin-bottom: 12px;
padding: 10px 14px;
border-radius: 10px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}