imprv roadtrip
Deploy HouseHub / deploy (push) Successful in 3s

This commit is contained in:
2026-07-28 08:51:55 +02:00
parent ac8ebf7328
commit 659b286967
4 changed files with 359 additions and 54 deletions
+152 -18
View File
@@ -1124,24 +1124,6 @@ input[type="date"]::-webkit-calendar-picker-indicator:hover {
align-items: stretch;
overflow: hidden;
}
@media (max-width: 768px) {
.hol-planning-layout {
flex-direction: column;
height: 75vh;
}
.hol-unmapped-zone {
width: 100%;
height: 180px;
min-height: 180px;
flex-direction: row;
overflow-x: auto;
overflow-y: hidden;
align-items: flex-start;
}
.hol-calendar-zone {
flex: 1;
}
}
/* Zone des activités non planifiées */
.hol-unmapped-zone {
@@ -1343,6 +1325,34 @@ input[type="date"]::-webkit-calendar-picker-indicator:hover {
font-weight: 700;
}
/* Bouton pour retirer une carte du planning (Undo) */
.hol-unplace-btn {
display: none; /* Caché par défaut dans la zone "À placer" */
background: #fee2e2;
color: #ef4444;
border: 1px solid #fca5a5;
border-radius: 4px;
width: 24px;
height: 24px;
cursor: pointer;
font-size: 0.85rem;
align-items: center;
justify-content: center;
padding: 0;
transition: all 0.2s;
margin-left: 4px;
}
.hol-unplace-btn:hover {
background: #ef4444;
color: white;
}
/* Le bouton n'apparaît QUE quand la carte est physiquement dans le calendrier */
.hol-time-slot .hol-drag-item .hol-unplace-btn {
display: flex;
}
.highlight-step {
transition:
box-shadow 0.3s,
@@ -1639,3 +1649,127 @@ input[type="date"]::-webkit-calendar-picker-indicator:hover {
.hol-expense-price-group .status-pending {
line-height: 1;
}
/* ============================================================================
📱 UX MOBILE : MODALE DE PLANNING (DRAG & DROP)
============================================================================ */
@media (max-width: 768px) {
/* --- MODALE GLOBALE --- */
#planningModal .pf-modal-content {
padding: 8px !important;
height: 98vh !important;
max-height: 98vh !important;
display: flex !important;
flex-direction: column !important;
}
#planningModal .pf-modal-content > div:first-child {
margin-bottom: 6px !important;
padding-bottom: 6px !important;
}
#planningModalTitle {
font-size: 1rem !important;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
#planningContainer > div {
flex-direction: column !important;
padding-bottom: 0 !important;
gap: 8px !important;
height: 100% !important;
}
/* --- 1. LE CALENDRIER (EN HAUT) --- */
.hol-calendar-zone {
width: 100% !important;
flex: 1 1 auto !important; /* Le calendrier prend tout l'espace restant */
order: 1 !important;
padding-bottom: 10px !important;
margin-top: 0 !important;
gap: 6px !important;
}
/* 🎯 Header des Jours ultra-compressé */
.hol-calendar-day-header {
padding: 4px !important;
}
.hol-cal-weekday {
font-size: 0.6rem !important;
margin-bottom: 0 !important;
}
.hol-cal-date {
font-size: 0.9rem !important;
line-height: 1 !important;
margin-bottom: 2px !important;
}
div[id^="plan-weather-"] {
min-height: 14px !important;
margin-top: 0 !important;
}
div[id^="plan-weather-"] .pf-weather-badge {
padding: 1px 4px !important;
font-size: 0.55rem !important;
}
.hol-time-slot {
min-height: 40px !important;
padding: 4px !important;
}
/* --- 2. LA ZONE "À PLACER" (BOTTOM SHEET - 30%) --- */
.hol-unmapped-zone {
width: 100% !important;
height: 30vh !important; /* 🔼 Prend exactement 30% de l'écran */
min-height: 180px !important;
flex: 0 0 auto !important; /* 🛡️ Protection anti-écrasement */
order: 2 !important;
border-radius: 12px 12px 0 0 !important;
border-top: 2px solid var(--primary) !important;
border-bottom: none !important;
border-left: none !important;
border-right: none !important;
box-shadow: 0 -4px 15px rgba(0, 0, 0, 0.15) !important;
margin: 0 -8px -8px -8px !important;
padding: 12px 10px 15px 10px !important;
z-index: 100;
background: var(--bg-panel) !important;
display: flex !important;
flex-direction: column !important; /* ↕️ On repasse en mode vertical */
}
.hol-unmapped-title {
font-size: 0.8rem !important;
margin-bottom: 8px !important;
flex-shrink: 0 !important;
}
/* --- 3. LISTE VERTICALE (Scroll Down) --- */
#unmapped-pool {
flex-direction: column !important; /* ↕️ Les cartes s'empilent */
overflow-y: auto !important; /* ↕️ Apparition du scroll vertical */
overflow-x: hidden !important;
padding-bottom: 10px !important;
padding-right: 5px !important; /* Espace pour la barre de scroll */
gap: 8px !important;
-webkit-overflow-scrolling: touch;
flex: 1 !important; /* Prend tout l'espace des 30vh */
align-items: stretch !important;
}
/* 🎯 Les cartes s'adaptent à 100% de la largeur du téléphone */
#unmapped-pool .hol-drag-item {
width: 100% !important;
height: auto !important;
min-height: 50px !important;
padding: 8px 10px !important;
white-space: normal !important;
}
/* 🗑️ On cache le footer de la modale pour gagner de l'espace */
#planningModal .modal-footer {
display: none !important;
}
}