Files
HouseHub/modules/christmas-list/christmas-list.css
T
2026-01-23 15:38:01 +01:00

412 lines
8.3 KiB
CSS
Raw 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.
/* ========================================================= */
/* Styles généraux page Christmas list */
/* ========================================================= */
.pf-christmas-list h1 {
margin-bottom: 4px;
}
.pf-christmas-list p {
margin-top: 0;
margin-bottom: 12px;
font-size: 13px;
color: #4b5563;
}
/* Petit texte explicatif sous les titres */
.cl-legend {
font-size: 12px;
color: #6b7280;
margin-bottom: 8px;
}
/* ========================================================= */
/* Vue par fête: mini-tableaux par enfant */
/* ========================================================= */
.cl-occasion-block {
margin-top: 2rem;
border-top: 2px solid #e5e5e5;
}
.cl-occasion-title {
font-size: 1.2rem;
margin-bottom: 0.5rem;
}
.cl-occasion-children-tables {
display: grid;
grid-template-columns: repeat(3, minmax(280px, 1fr));
gap: 12px; /* espacement léger entre mini-tableaux */
align-items: start;
margin-top: 8px;
}
@media (max-width: 1200px) {
.cl-occasion-children-tables {
grid-template-columns: repeat(2, minmax(280px, 1fr));
}
}
@media (max-width: 780px) {
.cl-occasion-children-tables {
grid-template-columns: 1fr;
}
}
/* ========================================================= */
/* Mini-tableau par enfant */
/* ========================================================= */
.cl-child-table {
display: table !important; /* robustesse même avec resets */
table-layout: fixed;
width: 100%;
border-collapse: collapse;
background: #fff;
border: 1px solid #d9e2ec;
overflow: hidden;
}
.cl-child-table thead {
display: table-header-group !important;
}
.cl-child-table tbody {
display: table-row-group !important;
}
.cl-child-table tr {
display: table-row !important;
}
.cl-child-table th,
.cl-child-table td {
display: table-cell !important;
box-sizing: border-box;
}
/* Nom de l'enfant (caption) + bouton + */
.cl-child-table caption {
caption-side: top;
position: relative; /* pour positionner le + */
text-align: center;
font-weight: 700;
padding: 8px 10px;
background: #f8fafc;
border-bottom: 1px solid #e5e7eb;
font-size: 13px;
}
/* Bouton + dans le caption */
.cl-child-add-btn {
position: absolute;
right: 8px;
top: 50%;
transform: translateY(-50%);
width: 22px;
height: 22px;
border-radius: 50%;
border: 1px solid #d9e2ec;
background: #f0f4f8;
color: #243b53;
font-size: 13px;
line-height: 20px;
text-align: center;
padding: 0;
cursor: pointer;
}
.cl-child-add-btn:hover {
background: #d9e2ec;
}
/* Colonnes égales (3 adultes) via colgroup */
.cl-child-table col.cl-col {
width: 33.3333%;
}
/* En-têtes adultes: séparateurs + total à droite */
.cl-child-table thead th {
background: #f3f4f6;
font-weight: 600;
padding: 6px 8px;
border-bottom: 1px solid #e5e7eb;
font-size: 12px;
text-align: left;
vertical-align: middle;
white-space: nowrap;
border-right: 1px solid #e5e7eb;
}
.cl-child-table thead th:last-child {
border-right: none;
}
.cl-th-inner {
display: flex;
justify-content: space-between;
align-items: center;
}
.cl-th-label {
overflow: hidden;
text-overflow: ellipsis;
}
/* Total adulte (réutilise le style global) */
.cl-summary-adult-total {
font-size: 12px;
font-weight: 600;
color: #1d4ed8;
}
/* Corps: séparateurs + gestion des noms longs */
.cl-child-table tbody td {
vertical-align: top;
padding: 6px 8px;
border-top: 1px solid #edf2f7;
border-right: 1px solid #e5e7eb;
font-size: 12px;
line-height: 1.35;
word-break: break-word;
overflow-wrap: anywhere;
}
.cl-child-table tbody td:last-child {
border-right: none;
}
/* Cellules vides: un “—” par adulte, centré, pleine largeur */
.cl-child-table .cl-empty {
display: inline-block;
width: 100%;
text-align: center;
color: #9ca3af;
}
/* Ligne cadeau: description à gauche, montant complètement à droite */
.cl-gift-line {
display: flex;
align-items: baseline;
gap: 8px;
width: 100%;
}
.cl-gift-desc,
.cl-gift-link {
flex: 1 1 auto;
min-width: 0; /* autorise le wrapping du texte si très long */
}
.cl-gift-amount {
margin-left: auto; /* pousse le montant à droite */
text-align: right;
color: #627d98;
white-space: nowrap; /* reste sur une seule ligne */
min-width: fit-content;
}
/* Code couleur par enfant (bordure + header/caption) */
.cl-child-table.child-pol {
border-color: #bcd3ff;
}
.cl-child-table.child-pol caption,
.cl-child-table.child-pol thead th {
background: #eaf2ff;
border-bottom-color: #bcd3ff;
}
.cl-child-table.child-pep {
border-color: #b9e3b9;
}
.cl-child-table.child-pep caption,
.cl-child-table.child-pep thead th {
background: #eaf7ea;
border-bottom-color: #b9e3b9;
}
.cl-child-table.child-elna {
border-color: #f3bfd7;
}
.cl-child-table.child-elna caption,
.cl-child-table.child-elna thead th {
background: #fdeaf3;
border-bottom-color: #f3bfd7;
}
.cl-child-table.child-bru {
border-color: #ffd0a8;
}
.cl-child-table.child-bru caption,
.cl-child-table.child-bru thead th {
background: #fff3e6;
border-bottom-color: #ffd0a8;
}
.cl-child-table.child-guim {
border-color: #d3c6ff;
}
.cl-child-table.child-guim caption,
.cl-child-table.child-guim thead th {
background: #f0eaff;
border-bottom-color: #d3c6ff;
}
/* ========================================================= */
/* Modale dajout de cadeau */
/* ========================================================= */
.cl-modal {
display: none;
}
.cl-modal.cl-open {
display: block;
}
.cl-modal-backdrop {
position: fixed;
inset: 0;
background: rgba(17, 24, 39, 0.35);
z-index: 999;
}
.cl-modal-dialog {
position: fixed;
z-index: 1000;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
width: min(520px, calc(100% - 24px));
background: #fff;
border: 1px solid #d9e2ec;
border-radius: 8px;
box-shadow: 0 10px 30px rgba(17, 24, 39, 0.25);
}
.cl-modal-form {
display: grid;
gap: 10px;
padding: 14px;
}
.cl-modal-form h3 {
margin: 0 0 4px;
font-size: 16px;
color: #243b53;
}
.clm-label {
display: grid;
gap: 6px;
font-size: 12px;
color: #374151;
}
.clm-label input,
.clm-label select {
font-size: 12px;
padding: 6px 8px;
border: 1px solid #d9e2ec;
border-radius: 6px;
}
.cl-modal-actions {
display: flex;
justify-content: flex-end;
gap: 8px;
margin-top: 4px;
}
.clm-cancel,
.clm-ok {
font-size: 12px;
padding: 6px 12px;
border: 1px solid #d9e2ec;
border-radius: 6px;
background: #f0f4f8;
cursor: pointer;
}
.clm-ok {
font-weight: 600;
color: #1f2933;
}
.clm-cancel {
color: #d03050;
}
.clm-cancel:hover,
.clm-ok:hover {
background: #d9e2ec;
}
/* Prix: sans spinners, largeur fixe */
#clm-amount {
width: 150px;
font-size: 11px;
padding: 2px 3px;
-moz-appearance: textfield; /* Firefox legacy */
appearance: textfield; /* Standard property (modern browsers) */
}
/* Chrome/Safari */
#clm-amount::-webkit-outer-spin-button,
#clm-amount::-webkit-inner-spin-button {
-webkit-appearance: none;
margin: 0;
}
/* ========================================================= */
/* Résumé du budget et Liste détaillée */
/* ========================================================= */
.cl-budget-wrapper {
margin-top: 4px;
}
.cl-budget-wrapper .pf-table {
font-size: 11px;
}
.cl-budget-wrapper .pf-table th,
.cl-budget-wrapper .pf-table td {
padding: 4px 4px;
}
.cl-detail-wrapper .pf-table {
font-size: 11px;
}
.cl-detail-wrapper .pf-table th,
.cl-detail-wrapper .pf-table td {
padding: 4px 4px;
}
/* Icône devant le titre de fête */
.cl-occasion-title {
display: flex;
align-items: center;
gap: 8px;
}
.cl-occasion-icon {
width: 20px;
height: 20px;
object-fit: contain;
flex: 0 0 20px;
filter: none; /* garde les couleurs des SVG/PNG */
}
/* clarté de lecture */
.cl-debt-matrix .cl-matrix-corner {
font-size: 11px;
color: #6b7280;
text-align: left;
line-height: 1.2;
min-width: 92px;
}
.cl-debt-matrix td.cl-mtx-diag {
background-image: repeating-linear-gradient(
45deg,
#111827 0,
#111827 6px,
#1f2937 6px,
#1f2937 12px
);
color: transparent; /* masque le “—” pour un rendu propre */
}
.cl-debt-matrix td.cl-mtx-owe {
background: #fff7ed; /* léger orange */
color: #7c2d12; /* brun/orange foncé */
font-weight: 600;
}
.cl-debt-matrix td.cl-mtx-empty {
color: #9ca3af;
}