.randevu-form-wrapper{max-width:600px;margin:0 auto;padding:30px;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.1);background:#fff}
.randevu-error{color:#d32f2f;background:#ffebee;padding:15px;border-radius:4px;text-align:center;font-weight:500;border:1px solid #ffcdd2}
.randevu-form h3{margin-bottom:15px}
.randevu-form p{margin-bottom:15px;text-align:left}
.randevu-form label{font-weight:bold;margin-bottom:5px;display:block;text-align:left}
.randevu-form input{width:100%;padding:10px;border:1px solid #ccc;border-radius:4px;box-sizing:border-box}
.form-buttons{display:flex;justify-content:space-between;align-items:center;margin-top:15px}
.form-buttons button[type="submit"]{background:#2271b1!important;color:#fff!important;padding:12px 24px;border:none;border-radius:4px;cursor:pointer;font-weight:bold;transition:background 0.2s,transform 0.1s}
.form-buttons button[type="submit"]:hover{background:#135e96!important}
.form-buttons button[type="submit"]:active{transform:scale(0.98)}
#back-to-slots-btn{background:#f44336!important;color:#fff!important;padding:12px 24px;border:none;border-radius:4px;cursor:pointer;font-weight:bold;transition:background 0.2s,transform 0.1s}
#back-to-slots-btn:hover{background:#d32f2f!important}
#back-to-slots-btn:active{transform:scale(0.98)}
#randevu-calendar{margin-bottom:20px}
#next-step-btn{background:#2271b1!important;color:#fff!important;padding:12px 24px;border:none;border-radius:4px;cursor:pointer;font-size:16px;font-weight:bold;transition:background 0.2s,transform 0.1s}
#next-step-btn:hover:not(:disabled){background:#135e96!important}
#next-step-btn:active:not(:disabled){transform:scale(0.98)}
#next-step-btn:disabled{background:#ccc!important;color:#999!important;cursor:not-allowed}
.slot-btn{padding:15px 10px;background:#f0f0f0;border:2px solid #ccc;border-radius:4px;cursor:pointer;text-align:center;font-size:14px;font-weight:600;transition:all 0.2s}
.slot-btn.slot-btn-available{background:#d4edda!important;color:#155724!important;border-color:#28a745!important}
.slot-btn.slot-btn-available:hover{background:#c3e6cb!important;color:#155724!important;border-color:#28a745!important}
.slot-btn.slot-btn-booked{background:#e0e0e0!important;color:#999!important;border-color:#ccc!important;cursor:not-allowed}
.slot-btn.slot-btn-past{background:#e8e8e8!important;color:#bbb!important;border-color:#ddd!important;cursor:not-allowed}
.slot-btn.slot-btn-reserved{background:#fff3cd!important;color:#856404!important;border-color:#ffc107!important;cursor:not-allowed}
.calendar-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}
.calendar-nav button{background:#2271b1!important;color:#fff!important;padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-weight:bold;transition:background 0.2s,transform 0.1s}
.calendar-nav button:hover{background:#135e96!important}
.calendar-nav button:active{transform:scale(0.98)}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}
.calendar-header{background:#f0f0f0;padding:10px 5px;font-weight:bold;font-size:13px;display:flex;justify-content:center;align-items:center}
.calendar-day{padding:5px;border:1px solid #ddd;border-radius:4px;cursor:pointer;text-align:center;aspect-ratio:1/1!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;box-sizing:border-box}
.calendar-day:hover{background:#e0e0e0}
.calendar-day.disabled{background:#f5f5f5;color:#ccc;cursor:not-allowed}
.calendar-day.has-slots{background:#d4edda;border-color:#28a745;cursor:pointer}
.calendar-day.has-slots:hover{background:#c3e6cb}
.calendar-day.selected{background:#2271b1!important;color:#fff!important;border-color:#135e96!important}
.calendar-day.selected:hover{background:#135e96!important}
.calendar-day.empty-month{background:transparent;border-color:transparent;cursor:default}
#randevu-form-section h3{margin-bottom:15px}
.selected-slot-info{background:#fff9db!important;color:#78350f!important;border:1px solid #fde047!important;padding:15px;border-radius:4px;margin-bottom:15px;font-weight:500}

.randevu-custom-field{margin-bottom:15px;text-align:left}
.randevu-custom-field>label{font-weight:bold;margin-bottom:5px;display:block;text-align:left}
.randevu-custom-field textarea,.randevu-custom-field select{width:100%;padding:10px;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-size:inherit;font-family:inherit;background:#fff}
.randevu-custom-field textarea{resize:vertical;min-height:80px}
.randevu-option-group{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid #eee;border-radius:4px;background:#fafafa}
.randevu-custom-field label.randevu-option{display:flex;align-items:center;gap:8px;font-weight:normal;margin:0;cursor:pointer}
.randevu-form .randevu-option input{width:auto;padding:0;margin:0;flex:0 0 auto}
.randevu-kvkk{margin:15px 0;padding:12px;border:1px solid #eee;border-radius:4px;background:#fafafa;text-align:left}
.randevu-form .randevu-kvkk label.randevu-option{display:flex;align-items:flex-start;gap:8px;font-weight:normal;margin:0;cursor:pointer;font-size:14px;line-height:1.5}
.randevu-form .randevu-kvkk input{width:auto;padding:0;margin:2px 0 0 0;flex:0 0 auto}
.randevu-kvkk a{text-decoration:underline;font-weight:bold}
.randevu-custom-loading{color:#666;font-size:13px;margin:0 0 15px 0}
.randevu-custom-error{color:#d32f2f;background:#ffebee;border:1px solid #ffcdd2;padding:10px;border-radius:4px;font-size:13px;margin:0 0 15px 0}

.table-btn{padding:20px 15px;background:#f8f9fa;border:2px solid #dee2e6;border-radius:8px;cursor:pointer;text-align:center;font-size:14px;transition:all 0.2s;}
.table-btn:hover{background:#e9ecef;border-color:#adb5bd;}
.table-btn.table-btn-available{background:#d4edda!important;color:#155724!important;border-color:#28a745!important;}
.table-btn.table-btn-available:hover{background:#c3e6cb!important;color:#155724!important;border-color:#218838!important;}
.table-btn.table-btn-disabled{background:#f8f9fa!important;color:#6c757d!important;border-color:#dee2e6!important;cursor:not-allowed!important;opacity:0.8;}
.table-btn.table-btn-disabled:hover{background:#f8f9fa!important;border-color:#dee2e6!important;}

#success-popup-container{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,0.6);z-index:999999;display:flex;justify-content:center;align-items:center}
.success-popup-box{background:#fff;border-radius:8px;padding:30px;max-width:400px;width:90%;text-align:center;box-shadow:0 8px 32px rgba(0,0,0,0.3)}
.success-check{font-size:48px;color:#28a745;margin-bottom:15px}
.success-popup-box h3{margin:0 0 10px 0;color:#155724}
.success-popup-box p{margin:0 0 20px 0;color:#333}
.success-popup-box button{background:#2271b1;color:#fff;padding:12px 24px;border:none;border-radius:4px;cursor:pointer;font-size:16px}
.success-popup-box button:hover{background:#135e96}

@keyframes booking-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
.booking-loader {
  width: 50px;
  height: 50px;
  border: 5px solid #f3f3f3;
  border-top: 5px solid #28a745;
  border-radius: 50%;
  animation: booking-spin 1s linear infinite;
  margin: 20px auto;
}

.slots-loader-container{display:flex;flex-direction:column;align-items:center;justify-content:center;grid-column:1/-1;padding:20px 0;width:100%;}
