/* Dynamic Booking CSS - Generated */
:root {
    --primary-color: #391e34;
    --primary-color-dark: #331b2e;
    --primary-color-rgba: rgba(57, 30, 52, 0.05);
    --primary-color-shadow: rgba(57, 30, 52, 0.3);
}

/* Company Logo Circle - No background needed */

/* Language Button */
.language-btn {
    border-color: #391e34 !important;
    color: #391e34 !important;
}
.language-btn:hover {
    background: #391e34 !important;
    color: white !important;
}

/* Step Indicator */
.step-item.active .step-circle {
    background: #391e34 !important;
    border-color: #391e34 !important;
    box-shadow: 0 4px 15px rgba(57, 30, 52, 0.5) !important;
}

.step-item.completed .step-circle {
    background: #391e34 !important;
    border-color: #391e34 !important;
    box-shadow: 0 2px 8px rgba(57, 30, 52, 0.3) !important;
}

.step-connector.active {
    background: #391e34 !important;
}

/* Calendar Container */
.calendar-container {
    background: #391e34 !important;
}

/* Calendar Day Selected */
.calendar-day.selected {
    color: #391e34 !important;
}

/* Time Slots */
.time-slot {
    color: #391e34 !important;
    border: 2px solid #e9ecef !important;
}

.time-slot:hover {
    border-color: #391e34 !important;
    background: #391e34 !important;
    color: white !important;
    box-shadow: 0 2px 6px rgba(57, 30, 52, 0.3) !important;
}

.time-slot.selected {
    background: #391e34 !important;
    border-color: #391e34 !important;
    color: white !important;
    box-shadow: 0 3px 8px rgba(57, 30, 52, 0.5) !important;
}

/* Waiting List Button */
.waiting-list-btn {
    border-color: #391e34 !important;
    color: #391e34 !important;
}
.waiting-list-btn:hover {
    background: rgba(57, 30, 52, 0.05) !important;
}

/* Modal Buttons */
.modal-footer .btn.btn-primary {
    background: #391e34 !important;
    border-color: #391e34 !important;
}
.modal-footer .btn.btn-primary:hover {
    background: #331b2e !important;
    border-color: #331b2e !important;
}

/* Navigation Buttons */
.nav-btn.next {
    background: #391e34 !important;
}
.nav-btn.next:hover {
    background: #331b2e !important;
}

/* Force styles for step indicators */
#step-1.active .step-circle,
#step-2.active .step-circle,
#step-3.active .step-circle,
#step-4.active .step-circle {
    background: #391e34 !important;
    border-color: #391e34 !important;
    box-shadow: 0 4px 15px rgba(57, 30, 52, 0.5) !important;
}

#step-1.completed .step-circle,
#step-2.completed .step-circle,
#step-3.completed .step-circle,
#step-4.completed .step-circle {
    background: #391e34 !important;
    border-color: #391e34 !important;
}

/* Customer Zone Button (Klientská zóna) */
.btn-outline-success {
    color: #391e34 !important;
    border-color: #391e34 !important;
}

.btn-outline-success:hover,
.btn-outline-success:focus,
.btn-outline-success:active {
    background-color: #391e34 !important;
    border-color: #391e34 !important;
    color: white !important;
}

/* Personal Data Section Icon and Text */
.text-success, .text-primary {
    color: #391e34 !important;
}

/* Icons with success/primary color */
.fa-user.text-success,
.fa-user.text-primary,
.fas.fa-user.text-success,
.fas.fa-user.text-primary {
    color: #391e34 !important;
}

/* Login Box Styling */
.login-box, .customer-login-box {
    background-color: #391e34 !important;
}

/* Login Button */
.login-btn, .customer-login-btn {
    background-color: rgba(255, 255, 255, 0.2) !important;
    border-color: rgba(255, 255, 255, 0.3) !important;
    color: white !important;
}

.login-btn:hover, .customer-login-btn:hover {
    background-color: rgba(255, 255, 255, 0.3) !important;
    border-color: rgba(255, 255, 255, 0.4) !important;
}

/* Agreement Section Icon */
.agreement-icon,
.fa-shield-alt.text-success,
.fas.fa-shield-alt.text-success {
    color: #391e34 !important;
}

/* Available Times Heading */
.available-times-heading {
    color: #391e34 !important;
}

/* Personal Information Heading */
.personal-info-heading {
    color: #391e34 !important;
}

/* Declarations Heading */
.declarations-heading {
    color: #391e34 !important;
}

/* Customer Login Button */
.customer-login-btn {
    background: white !important;
    color: #391e34 !important;
}

/* Form Controls Focus States */
.form-control:focus,
.form-select:focus {
    border-color: #391e34 !important;
    box-shadow: 0 0 0 0.2rem rgba(57, 30, 52, 0.3) !important;
}

#wizard-frame-3 .form-control:focus,
#wizard-frame-3 .form-select:focus {
    border-color: #391e34 !important;
    box-shadow: 0 0 0 0.2rem rgba(57, 30, 52, 0.3) !important;
}

#wizard-frame-3 .form-control:hover,
#wizard-frame-3 .form-select:hover {
    border-color: #391e34 !important;
}

#wizard-frame-3 .password-toggle:hover {
    color: #391e34 !important;
}

/* Primary and Success Buttons - General */
.btn-primary {
    background: #391e34 !important;
    border-color: #391e34 !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background: #331b2e !important;
    border-color: #331b2e !important;
}

.btn-success {
    background: #391e34 !important;
    border-color: #391e34 !important;
}

.btn-success:hover,
.btn-success:focus,
.btn-success:active {
    background: #331b2e !important;
    border-color: #331b2e !important;
}

/* Pulse animation with dynamic color */
@keyframes pulse-green {
    0% { box-shadow: 0 4px 15px rgba(57, 30, 52, 0.5); }
    50% { box-shadow: 0 6px 20px rgba(57, 30, 52, 0.4); }
    100% { box-shadow: 0 4px 15px rgba(57, 30, 52, 0.5); }
}