Ajoute colonnes Δ sem. / Fin cible, supprime solde global, indicateurs minima
- Nouvelles colonnes : Δ sem. (solde cumulé semaine) et Fin cible (heure de sortie aprem optimale pour 0h suppl. en fin de semaine) - Δ sem. n'est affiché que quand la journée est complète et la chaîne de jours ininterrompue (pas de saut de jour non saisi) - Fin cible disparaît quand la journée est validée (passée/complète) - Delta = "—" pour les jours non travaillés (futur ou congé jour) - Indicateur warn (fond rouge) sur matin/aprem si horaires < minimum (matin 09:00→12:00, aprem 14:00→17:00) ; mise à jour live via JS - Suppression du solde global (3 cartes au lieu de 4) - Tableau sans largeurs fixes + container 1100 px pour éviter scroll horizontal sur écrans normaux ; touch-scroll conservé sur mobile - Base reste 39h/semaine (7h48/jour) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@ -82,7 +82,7 @@
|
||||
|
||||
/* ── Layout ── */
|
||||
.container {
|
||||
max-width: 940px;
|
||||
max-width: 1100px;
|
||||
margin: 0 auto;
|
||||
padding: 2rem 1.5rem;
|
||||
display: flex;
|
||||
@ -124,7 +124,7 @@
|
||||
/* ── Soldes ── */
|
||||
.soldes {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(4, 1fr);
|
||||
grid-template-columns: repeat(3, 1fr);
|
||||
border: 1.5px solid var(--rule);
|
||||
background: var(--surface);
|
||||
}
|
||||
@ -156,12 +156,12 @@
|
||||
.solde-num.neutral { color: var(--text); }
|
||||
|
||||
/* ── Table ── */
|
||||
.table-section { overflow-x: auto; }
|
||||
.table-section { overflow-x: auto; -webkit-overflow-scrolling: touch; }
|
||||
table {
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
border: 1.5px solid var(--rule);
|
||||
background: var(--surface);
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.th-group th {
|
||||
@ -272,14 +272,27 @@
|
||||
.time-input:focus { outline: none; border-color: var(--accent); background: #fff; }
|
||||
tr.htmx-request .time-input { opacity: .4; }
|
||||
|
||||
.col-calc { text-align: right; white-space: nowrap; width: 72px; }
|
||||
.col-calc { text-align: right; padding-left: .5rem; }
|
||||
.calc-num { font-family: var(--mono); font-size: 13px; color: var(--muted); }
|
||||
.delta-pos { font-family: var(--mono); font-size: 13px; font-weight: 500; color: var(--pos); }
|
||||
.delta-neg { font-family: var(--mono); font-size: 13px; font-weight: 500; color: var(--neg); }
|
||||
.delta-zero{ font-family: var(--mono); font-size: 13px; color: var(--rule); }
|
||||
|
||||
.col-save { width: 36px; text-align: center; padding: .4rem .3rem; }
|
||||
.g-save { width: 36px; background: var(--ground); }
|
||||
/* Warn state: time input violates minimum directive */
|
||||
td.c-matin .td-fill.warn,
|
||||
td.c-aprem .td-fill.warn { border-left-color: var(--neg); background: var(--neg-bg); }
|
||||
.td-fill.warn .time-input { background: transparent; }
|
||||
tbody tr:hover .td-fill.warn { background: var(--neg-bg); }
|
||||
|
||||
/* Cumulative delta and sortie cible columns */
|
||||
.col-cumul { text-align: right; padding-left: .5rem; }
|
||||
.col-cible { text-align: right; padding-left: .5rem; }
|
||||
.g-cumul { text-align: right; }
|
||||
.g-cible { text-align: right; }
|
||||
.cible-num { font-family: var(--mono); font-size: 12px; color: var(--accent); font-weight: 500; }
|
||||
|
||||
.col-save { text-align: center; padding: .4rem .3rem; }
|
||||
.g-save { background: var(--ground); }
|
||||
.btn-valider {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
@ -294,7 +307,7 @@
|
||||
}
|
||||
.btn-valider:hover { background: var(--accent); color: #fff; }
|
||||
.btn-valider.htmx-request { opacity: .4; pointer-events: none; }
|
||||
.col-conge { width: 88px; text-align: center; }
|
||||
.col-conge { text-align: center; }
|
||||
.conge-btns { display: flex; gap: 3px; justify-content: center; }
|
||||
.btn-cg {
|
||||
display: inline-flex;
|
||||
|
||||
Reference in New Issue
Block a user