        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        }
        h1 {
            text-align: center;
            margin-bottom: 25px;
            color: #2c3e50;
            font-weight: 600;
        }
        
        .calendar-container {
            display: flex;
            flex-direction: column;
            gap: 10px;
        }
        
        .calendar-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 15px;
        }
        
        .calendar-nav {
            display: flex;
            gap: 10px;
        }
        
        .calendar-nav button {
            background: #39b2e9;
            color: white;
            border: none;
            border-radius: 6px;
            padding: 8px 15px;
            cursor: pointer;
            transition: background 0.3s;
        }
        
        .calendar-nav button:hover {
            background: #2980b9;
        }
        
        .current-month {
            font-size: 16px;
            font-weight: 600;
            color: #2c3e50;
			margin-left: 10px;
        }
        
        .calendar {
            display: grid;
            grid-template-columns: repeat(7, 1fr);
            gap: 8px;
            margin-bottom: 20px;
        }
        
        .calendar-day-header {
            text-align: center;
            font-weight: 600;
            padding: 10px;
            color: #7f8c8d;
            background-color: #f8f9fa;
            border-radius: 6px;
        }
        
        .calendar-day {
            height: 50px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 8px;
            cursor: pointer;
            transition: all 0.2s;
            background-color: #f8f9fa;
        }
        
        .calendar-day:hover {
            background-color: #e3f2fd;
        }
        
        .calendar-day.available {
            background-color: #c6e4f2;
            color: #00537b;
            font-weight: 500;
        }
        
        .calendar-day.available:hover {
            background-color: #39b2e9;
        }
        
        .calendar-day.selected {
            background-color: #39b2e9;
            color: white;
            font-weight: 600;
        }
        
        .calendar-day.other-month {
            color: #bdc3c7;
            background-color: #f5f5f5;
        }
        
        .calendar-day.today {
            border: 2px solid #39b2e9;
        }
        
        .time-slots {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
            gap: 10px;
            /*margin-top: 20px;*/
        }
        
        .time-slot {
            padding: 12px;
            text-align: center;
            border: 1px solid #ddd;
            border-radius: 8px;
            cursor: pointer;
            transition: all 0.2s;
            background-color: white;
        }
        
        .time-slot:hover {
            background-color: #e3f2fd;
            border-color: #39b2e9;
        }
        
        .time-slot.selected {
            background-color: #39b2e9;
            color: white;
            border-color: #39b2e9;
        }
        
        .time-slot.unavailable {
            background-color: #f5f5f5;
            color: #bdc3c7;
            cursor: not-allowed;
        }
        
        .form-actions {
            display: flex;
            justify-content: flex-end;
            /*margin-top: 25px;*/
            gap: 15px;
        }
        
        button {
            padding: 12px 25px;
            border: none;
            border-radius: 8px;
            cursor: pointer;
            /*font-weight: 600;*/
            transition: all 0.3s;
        }
        
        .btn-primary {
            background-color: #39b2e9;
            color: white;
        }
        
        .btn-primary:hover {
            background-color: #2980b9;
        }
        
        .btn-secondary {
            background-color: #e0e0e0;
            color: #333;
        }
        
        .btn-secondary:hover {
            background-color: #d0d0d0;
        } 
        
        .selected-info {
            background-color: #e8f5e9;
            padding: 15px;
            border-radius: 8px;
            margin-top: 20px;
            display: none;
        }
        
        .selected-info.visible {
            display: block;
        }
        
        .no-slots-message {
            padding-bottom: 26px;
            color: #7f8c8d;
            font-style: italic;
			display: grid;
            gap: 10px;
        }
        
        @media (max-width: 600px) {
            .calendar {
                grid-template-columns: repeat(7, 1fr);
            }
            
            .calendar-day {
                height: 40px;
                font-size: 0.9rem;
            }
            
            .time-slots {
                grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
            }
        }
		
.slots-counter {
	clear:both;
	margin-top:25px;
	margin-bottom:25px;	
}
.slots-counter h3, .calendar-container h3 {
	font-size: 20px;
}
.calendar-container h3 {
margin-top: 0px;
}

#free-slots-count {
font-weight: 900;
color: #008dd2;
}

.container {
	padding-right: 0px!important;
    padding-left: 0px!important;
}


.btn-primary:disabled {
    background-color: #6c757d;
    border-color: #6c757d;
    /*cursor: not-allowed;*/
    opacity: 0.65;
}

.btn-primary.disabled {
    background-color: #6c757d;
    border-color: #6c757d;
    /*cursor: not-allowed;/*
    opacity: 0.65;
}