/* Widget de réservation inline — s'intègre dans les cartouches sombres de la page d'accueil. */
.resa-widget { margin-top: 14px; text-align: left; }
.resa-widget .rw { display: flex; flex-direction: column; gap: 10px; }
.resa-widget .rw-loading, .resa-widget .rw-msg { font-size: 0.95rem; opacity: 0.85; }
.resa-widget .rw-dates { margin-bottom: 6px; }
.resa-widget .rw-dates-t { font-size: 0.8rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; opacity: 0.8; margin-bottom: 6px; }
.resa-widget .rw-date-li { display: flex; justify-content: space-between; gap: 10px; align-items: baseline; padding: 5px 0; border-bottom: 1px solid rgba(255, 255, 255, 0.12); }
.resa-widget .rw-date-li:last-child { border-bottom: 0; }
.resa-widget .rw-date-d { font-weight: 600; }
.resa-widget .rw-date-av { font-size: 0.82rem; color: #5eead4; white-space: nowrap; }
.resa-widget .rw-date-full { font-size: 0.82rem; color: #fca5a5; font-weight: 600; white-space: nowrap; }
.resa-widget .rw-li-full .rw-date-d { opacity: 0.6; }
.resa-widget .rw-cta { font-size: 1.15rem; font-weight: 700; color: #facc15; margin: 4px 0 10px; }
.resa-widget .rw-step { display: flex; flex-direction: column; gap: 4px; }
.resa-widget .rw-lab { font-size: 0.85rem; font-weight: 600; opacity: 0.9; }
.resa-widget .rw-inp {
  width: 100%; padding: 9px 11px; border-radius: 8px;
  background: rgba(0, 0, 0, 0.25); color: inherit;
  border: 1px solid rgba(255, 255, 255, 0.3); font: inherit; font-size: 0.95rem;
}
.resa-widget select.rw-inp { appearance: auto; }
.resa-widget .rw-inp:focus { outline: none; border-color: #facc15; box-shadow: 0 0 6px rgba(250, 204, 21, 0.5); }
.resa-widget .rw-inp::placeholder { color: rgba(255, 255, 255, 0.55); }
.resa-widget .rw-fb { font-size: 0.85rem; min-height: 1em; }
.resa-widget .rw-fb.rw-ok { color: #5eead4; font-weight: 600; }
.resa-widget .rw-confirm { display: inline-flex; align-items: center; gap: 6px; cursor: pointer; }
.resa-widget .rw-confirm input { width: auto; }
.resa-widget .rw-hint { font-size: 0.8rem; opacity: 0.7; font-style: italic; }
.resa-widget .rw-rest { display: flex; flex-direction: column; gap: 10px; animation: rw-fade 0.25s ease; }
@keyframes rw-fade { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
.resa-widget .rw-btn {
  margin-top: 4px; padding: 11px 18px; border: 0; border-radius: 24px; cursor: pointer;
  background: #e07b39; color: #fff; font: inherit; font-weight: 700; transition: background 0.2s, opacity 0.2s;
}
.resa-widget .rw-btn:hover:not(:disabled) { background: #c9692c; }
.resa-widget .rw-btn:disabled { opacity: 0.55; cursor: not-allowed; }
.resa-widget .rw-err { color: #fca5a5; font-size: 0.85rem; min-height: 1em; }
