/* assets/booking.css - styling pro rodičovskou rezervační UI */
.r2025-booking-form { max-width:760px; margin:0 auto; font-family: "Helvetica Neue", Arial, sans-serif; }
.r2025-booking-form h3 { color:#d9742d; border-bottom:3px solid #f0b36b; padding-bottom:6px; margin-bottom:12px; font-size:28px; }
.r2025-booking-form label { display:block; margin:12px 0 6px; font-weight:600; }
.r2025-booking-form select, .r2025-booking-form input[type="text"] { padding:8px 10px; font-size:16px; width:100%; max-width:420px; box-sizing:border-box; }

/* day block */
.r2025-slot-day { margin:12px 0 18px; padding:10px; border-radius:6px; background:#fff; box-shadow:0 2px 12px rgba(0,0,0,0.06); }
.r2025-slot-day-title { margin:0 0 10px; color:#333; font-size:18px; }

/* grid of slot buttons */
.r2025-slot-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(220px,1fr));
  gap:10px;
}
.r2025-slot-btn {
  display:block;
  width:100%;
  padding:14px 12px;
  font-size:18px;
  text-align:center;
  border:2px solid #2ca02c;
  background:#f7fff7;
  color:#0a0a0a;
  border-radius:6px;
  cursor:pointer;
  transition: transform .06s ease, box-shadow .06s ease;
}
.r2025-slot-btn:hover:not(.reserved) { transform: translateY(-2px); box-shadow:0 6px 18px rgba(0,0,0,0.06); }
.r2025-slot-btn.selected { background:#1e73be; color:#fff; border-color:#1e73be; }
.r2025-slot-btn.reserved {
  background:#eee;
  color:#888;
  border-color:#ccc;
  cursor:not-allowed;
  text-decoration:line-through;
}

  .r2025-slot-btn.selected {
    background-color: #f2af00;
  }
  
/* small messages */
.r2025-no-slots, .r2025-loading, .r2025-error { padding:10px; margin:8px 0; color:#666; }

/* reservation form */
#r2025-booking-panel { margin-top:18px; border-top:3px solid #f0b36b; padding-top:12px; }
#r2025-booking-panel h4 { color:#d9742d; margin-top:6px; }

/* responsive */
@media (max-width:520px){
  .r2025-slot-grid { grid-template-columns: repeat(auto-fit,minmax(160px,1fr)); }
  .r2025-slot-btn { font-size:16px; padding:10px; }
}

#r2025-booking-message-mysaved {
  border: 2px solid #ffc107; /* žlutý rámeček */
  background-color: #fffbea; /* jemné žluté pozadí */
  padding: 16px;
  margin-top: 20px;
  border-radius: 8px;
  font-family: Arial, sans-serif;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
  color: #333;
}
#r2025-submit-reservation {
  background-color: #28a745; /* zelená barva */
  color: white;
  font-size: 18px;
  padding: 14px 28px;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  font-weight: bold;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  transition: background-color 0.3s ease, transform 0.2s ease;
}

#r2025-submit-reservation:hover {
  background-color: #218838;
  transform: scale(1.03);
}

#r2025-submit-reservation:active {
  transform: scale(0.98);
}.r2025-slot-btn.past {
  background: #ddd !important;
  color: #666 !important;
  cursor: not-allowed !important;
  border-color: #ccc !important;
}

.r2025-slot-btn.reserved {
  background: #ccc !important;
  color: #444 !important;
  cursor: not-allowed !important;
  border-color: #bbb !important;
}

.r2025-slot-label {
  display: block;
  font-size: 11px;
  color: #a00;
  margin-top: 2px;
}
