RELEASE V5.5.0 : Voici les modifications apportées :

-> REFONTE TOTALE DE TOUS LES AFFICHEURS CLASSIQUES + QUAIS

FONCTIONNALITÉS EN COURS DE DÉVELOPPEMENT :

-> ADAPTABILITÉ EN FONCTION DES SITUATIONS
This commit is contained in:
mathis committed 2026-08-31 02:02:46 +02:00
1 parent b90c699302
commit 9c6ac798f1
26 files changed
+3040 -2190

No files matched your search

@@ -1,337 +1,315 @@
@font-face {
font-family: 'Achemine';
src: url('/public/fonts/achemine_regular.ttf') format('truetype');
font-weight: 400;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Achemine';
src: url('/public/fonts/achemine_bold.ttf') format('truetype');
font-weight: 700;
font-style: normal;
font-display: swap;
}
body, html {
margin: 0;
padding: 0;
background-color: #006330; /* Green theme */
background-color: #116938;
overflow: hidden;
}
.aff-quais-arrivees-redesign__container {
display: flex;
flex-direction: row;
width: 100%;
height: 100%;
position: relative;
font-family: 'Achemine', 'Helvetica Neue', Arial, sans-serif;
background-color: #006330;
color: #fff;
overflow: hidden;
}
.aff-quais-arrivees-redesign__empty {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}
.aff-quais-arrivees-redesign__empty-text {
font-size: 6rem;
font-weight: 700;
color: #ffffff;
text-align: center;
}
/* =========================================================
LEFT PANEL
CONTAINER (1920x1080)
========================================================= */
.aff-quais-arrivees-redesign__left {
.aff-classique-quai-arr__container {
position: relative;
width: 1920px;
height: 1080px;
background-color: #116938;
color: #ffffff;
font-family: 'Achemine', 'Avenir', 'Helvetica Neue', Arial, sans-serif;
overflow: hidden;
box-sizing: border-box;
}
/* =========================================================
LEFT PANEL (BLANC - Conforme Image 2)
========================================================= */
.aff-classique-quai-arr__left {
position: absolute;
top: 0;
left: 0;
width: 35%;
bottom: 80px;
background-color: #f3eef4; /* Lilac/Light Grey background */
width: 672px;
bottom: 85px;
background-color: #ffffff;
box-sizing: border-box;
padding: 30px 40px;
padding: 42px 48px;
display: flex;
flex-direction: column;
overflow: hidden;
}
.aff-quais-arrivees-redesign__sncf-logo {
width: 90px;
height: auto;
margin-bottom: 25px;
z-index: 2;
}
.aff-quais-arrivees-redesign__time-status {
/* Logo Dynamique (TER Bleu / Opérateur) */
.aff-classique-quai-arr__brand {
display: flex;
flex-direction: column;
align-items: flex-start;
margin-bottom: 24px;
z-index: 3;
}
.aff-classique-quai-arr__brand-logo {
height: 50px;
max-width: 220px;
object-fit: contain;
display: block;
}
.aff-classique-quai-arr__sncf-voyageurs {
font-size: 14px;
font-weight: 800;
color: #116938;
letter-spacing: 2px;
margin-top: 4px;
}
/* Ligne Heure + Statut */
.aff-classique-quai-arr__time-row {
display: flex;
align-items: baseline;
gap: 15px;
margin-bottom: 5px;
z-index: 2;
margin-bottom: 8px;
z-index: 3;
}
.aff-quais-arrivees-redesign__time {
color: #006330; /* Green theme text */
.aff-classique-quai-arr__time {
color: #116938;
font-weight: 700;
font-size: 7.5rem;
font-size: 105px;
line-height: 0.92;
letter-spacing: -1px;
}
.aff-classique-quai-arr__status {
color: #116938;
font-weight: 700;
font-size: 32px;
line-height: 1;
margin-left: 20px;
}
.aff-quais-arrivees-redesign__status {
color: #006330; /* Green theme status */
.aff-classique-quai-arr__time--suppressed,
.aff-classique-quai-arr__status--suppressed {
color: #d32f2f !important;
}
.aff-classique-quai-arr__time--delayed,
.aff-classique-quai-arr__status--delayed {
color: #f5a623 !important;
}
/* Grande Destination / Gare Terminus */
.aff-classique-quai-arr__destination {
color: #116938;
font-weight: 700;
font-size: 2.4rem;
line-height: 1;
font-size: 82px;
line-height: 1.05;
margin-top: 14px;
margin-bottom: 14px;
z-index: 3;
word-break: break-word;
}
.aff-quais-arrivees-redesign__destination {
color: #006330; /* Green theme destination (origin) */
font-weight: 700;
font-size: 5.5rem; /* Slightly smaller to fit 2 lines if needed */
line-height: 1.1;
margin-bottom: 5px;
z-index: 2;
white-space: normal; /* Allow wrapping */
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
max-height: 13rem; /* Prevent overflowing panel */
}
.aff-quais-arrivees-redesign__train-info {
/* Info Train (Type + Numéro) */
.aff-classique-quai-arr__train-info {
display: flex;
align-items: center;
gap: 10px;
z-index: 2;
align-items: baseline;
z-index: 3;
}
.aff-quais-arrivees-redesign__train-type {
color: #006330; /* Green theme train type */
.aff-classique-quai-arr__train-type {
color: #116938;
font-weight: 700;
font-size: 2.2rem;
font-size: 38px;
letter-spacing: 0.5px;
}
.aff-quais-arrivees-redesign__train-number {
color: #7e8a80; /* Grey/Green train number */
.aff-classique-quai-arr__train-number {
color: #7e859b;
font-weight: 400;
font-size: 2.2rem;
font-size: 38px;
letter-spacing: 0.5px;
margin-left: 12px;
}
.aff-quais-arrivees-redesign__icons {
/* Filigrane Vertical "arrivée" géant (orienté bas vers haut) */
.aff-classique-quai-arr__watermark {
position: absolute;
right: -5px;
bottom: 20px;
left: 40px;
width: 0;
height: 0;
display: flex;
align-items: center;
z-index: 2;
}
.aff-quais-arrivees-redesign__watermark {
position: absolute;
right: 0;
top: 50%;
transform: translateY(-50%) rotate(-90deg);
transform-origin: right center;
font-size: 17rem; /* Massive size */
color: #dbebdf; /* Light green/grey watermark */
font-weight: 700;
z-index: 1;
justify-content: flex-start;
align-items: flex-end;
pointer-events: none;
user-select: none;
letter-spacing: 1.5rem;
z-index: 1;
}
.aff-classique-quai-arr__watermark span {
display: inline-block;
transform: rotate(-90deg);
transform-origin: 0 100%;
font-size: 168px;
font-weight: 700;
color: #d5e5d8;
line-height: 1;
letter-spacing: 0.05em;
white-space: nowrap;
}
/* =========================================================
RIGHT PANEL
RIGHT PANEL (VERT FORÊT - Conforme Image 2)
========================================================= */
.aff-quais-arrivees-redesign__right {
.aff-classique-quai-arr__right {
position: absolute;
top: 0;
left: 672px;
right: 0;
width: 65%;
bottom: 80px;
background-color: #006330; /* Green theme */
bottom: 85px;
background-color: #116938;
box-sizing: border-box;
padding: 30px 0 30px 0;
padding: 42px 0 20px 42px;
overflow: hidden;
display: flex;
flex-direction: column;
}
.aff-quais-arrivees-redesign__provenance-title {
font-size: 3.4rem;
color: #dbeb1a; /* Yellow provenance header */
margin-left: 60px;
margin-bottom: 20px;
font-weight: 700;
.aff-classique-quai-arr__stops-wrapper {
position: relative;
width: 100%;
height: 100%;
}
.aff-quais-arrivees-redesign__stops-list {
.aff-classique-quai-arr__stops-list {
list-style: none;
margin: 0;
padding: 0 0 0 60px; /* Space from left edge */
width: 100%;
position: relative;
z-index: 2;
padding: 0;
display: flex;
flex-direction: column;
gap: 8px; /* Closer spacing between stops */
gap: 12px;
position: relative;
z-index: 2;
}
.aff-quais-arrivees-redesign__stop {
.aff-classique-quai-arr__stop-item {
display: flex;
align-items: center;
font-size: 3.4rem;
font-weight: 400;
color: #ffffff;
position: relative;
min-height: 42px;
padding-left: 50px; /* Space for rail and bullet */
min-height: 56px;
padding-left: 65px;
}
/* Bullet styling */
.aff-quais-arrivees-redesign__stop-bullet {
/* Rail vertical vert sauge (#5c8b6b) */
.aff-classique-quai-arr__stop-item::before {
content: '';
position: absolute;
left: 0; /* Centered on 24px rail: (24-16)/2 = 4 */
margin-left: 4px;
top: 50%;
transform: translateY(-50%);
width: 16px; /* Slightly larger bullet */
height: 16px;
background-color: #fbec22;
left: 20px;
width: 28px;
background-color: #5c8b6b;
top: -15px;
bottom: -15px;
z-index: 1;
}
/* Le rail monte jusqu'en haut au 1er arrêt */
.aff-classique-quai-arr__stop-item:first-child::before {
top: -600px;
}
/* Le dernier arrêt n'a pas de rail qui continue en dessous */
.aff-classique-quai-arr__stop-item:last-child::before {
display: none;
}
/* Pastille Jaune (#ffe500 / #fbec22) */
.aff-classique-quai-arr__bullet {
position: absolute;
left: 24px;
width: 20px;
height: 20px;
background-color: #ffe500;
border-radius: 50%;
z-index: 4;
}
.aff-quais-arrivees-redesign__stop-text {
position: relative;
z-index: 4;
/* Nom de la station */
.aff-classique-quai-arr__stop-name {
font-size: 42px;
font-weight: 600;
color: #ffffff;
white-space: nowrap;
letter-spacing: 0.5px;
padding-left: 10px; /* Space from bullet */
z-index: 4;
}
/* The vertical rail segments drawn behind each bullet */
.aff-quais-arrivees-redesign__stop::before {
content: '';
position: absolute;
left: 0;
width: 24px; /* Much wider rail */
background-color: #8fa993; /* Light green-grey rail color */
top: -10px;
bottom: -10px;
z-index: 1;
/* Gare terminus / mise en avant */
.aff-classique-quai-arr__stop-item--dest {
font-weight: 700;
}
/* Rail starts at the first bullet's center */
.aff-quais-arrivees-redesign__stop:first-child::before {
top: 50%;
}
/* Last stop has no rail continuing below */
.aff-quais-arrivees-redesign__stop:last-child::before {
bottom: 50%;
.aff-classique-quai-arr__stop-item--dest .aff-classique-quai-arr__stop-name {
background-color: #5c8b6b;
padding: 8px 32px 8px 65px;
margin-left: -65px;
border-radius: 6px;
position: relative;
z-index: 3;
display: inline-block;
font-weight: 700;
font-size: 44px;
}
/* =========================================================
FOOTER
FOOTER & HORLOGE (Conforme Image 2)
========================================================= */
.aff-quais-arrivees-redesign__footer {
.aff-classique-quai-arr__footer {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 80px;
background-color: #006330; /* Green theme */
width: 1920px;
height: 85px;
background-color: #116938;
display: flex;
justify-content: space-between;
align-items: center;
box-sizing: border-box;
padding: 0 40px;
z-index: 10;
padding: 0 35px;
z-index: 20;
}
.aff-quais-arrivees-redesign__footer-left {
font-size: 3rem;
.aff-classique-quai-arr__footer-track {
font-size: 34px;
font-weight: 700;
color: #ffffff;
font-style: italic;
font-family: 'Achemine', 'Helvetica Neue', Arial, sans-serif;
letter-spacing: 0.5px;
}
.aff-quais-arrivees-redesign__footer-right {
.aff-classique-quai-arr__footer-clock {
display: flex;
align-items: center;
}
.aff-quais-arrivees-redesign__clock {
border: 2px solid #ffffff;
padding: 4px 14px;
font-size: 3rem;
font-weight: 700;
color: #ffffff;
.aff-classique-quai-arr__clock {
background-color: #00337f;
border: 2.5px solid #ffffff;
padding: 4px 16px;
border-radius: 3px;
display: flex;
align-items: center;
gap: 10px;
align-items: baseline;
gap: 4px;
font-family: 'Achemine', 'Helvetica Neue', Arial, sans-serif;
font-size: 42px;
font-weight: 700;
line-height: 1;
}
.aff-quais-arrivees-redesign__clock-s {
color: #f5a623;
.aff-classique-quai-arr__clock-hm {
color: #ffffff;
}
.aff-quais-arrivees-redesign__time--long-text {
font-size: 3.5rem !important;
line-height: 1.2 !important;
.aff-classique-quai-arr__clock-s {
color: #ff8c00;
margin-left: 2px;
}
.aff-quais-arrivees-redesign__time--suppressed,
.aff-quais-arrivees-redesign__status--suppressed {
color: #ff4c5b !important;
}
.aff-quais-arrivees-redesign__time--delayed,
.aff-quais-arrivees-redesign__status--delayed {
color: #ff9e43 !important;
}
/* Disrupted Stop styling */
.aff-quais-arrivees-redesign__stop-text--suppressed {
text-decoration: line-through;
color: #ff4c5b;
opacity: 0.6;
}
.aff-quais-arrivees-redesign__stop-text--delayed {
color: #ff9e43;
}
.aff-quais-arrivees-redesign__stop-status-badge {
font-size: 2.2rem;
font-weight: bold;
margin-left: 10px;
}
.aff-quais-arrivees-redesign__stop-status-badge--suppressed {
color: #ff4c5b;
}
.aff-quais-arrivees-redesign__stop-status-badge--delayed {
color: #ff9e43;
}