/**
 * Shopware 4.0
 * Copyright © 2012 shopware AG
 *
 * According to our dual licensing model, this program can be used either
 * under the terms of the GNU Affero General Public License, version 3,
 * or under a proprietary license.
 *
 * The texts of the GNU Affero General Public License with an additional
 * permission and of our proprietary license can be found at and
 * in the LICENSE file you have received along with this program.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 * GNU Affero General Public License for more details.
 *
 * "Shopware" is a registered trademark of shopware AG.
 * The licensing of the program under the AGPLv3 does not imply a
 * trademark license. Therefore any rights, title and interest in
 * our trademarks remain entirely with us.
 *
 * @category   Shopware
 * @package    Shopware_Styling
 * @subpackage Mixins
 * @copyright  Copyright (c) 2012, shopware AG (http://www.shopware.de)
 * @version    $Id$
 * @author shopware AG
 */

/**
 * Cross Browser mixin which allows to create
 * transitions between two states.
 *
 * @param [string] type - which property should be animated
 * @param [string] duration - duration of the animation
 * @param [string] easing - easing function for the animation
 * @param [string] delay - delay of the animation
 */
@mixin single-transition($type: all, $duration: 0.5s, $easing: linear) {
	-webkit-transition: $type $easing $duration;
	-moz-transition:$type $easing $duration;
	-ms-transition: $type $easing $duration;
	-o-transition: $type $easing $duration;
	transition: $type $easing $duration;
}

/**
 * Cross Browser mixin which provides the default focus behavior.
 */
@mixin form-item-focus($border-color: rgba(82, 168, 236, 0.8), $box-shadow-inset-color: rgba(0, 0, 0, 0.075), $box-shadow-outer-color: rgba(82, 168, 236, 0.6)) {
	 -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
     -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
     -ms-transition: border linear 0.2s, box-shadow linear 0.2s;
     -o-transition: border linear 0.2s, box-shadow linear 0.2s;
     transition: border linear 0.2s, box-shadow linear 0.2s;
     
     &:focus {
     	@include box-shadow(inset 0 1px 1px $box-shadow-inset-color, 0 0 8px $box-shadow-outer-color);
		border-color: $border-color;
	}
}

/**
 * Cross Browser mixin which allows to set the user
 * selection for a element.
 *
 * @param [string] select - selection model for the element
 */
@mixin user-select($select: none) {
	-webkit-user-select: $select;
	-moz-user-select: $select;
	-ms-user-select: $select;
	user-select: $select;
}

@mixin reset-border-radius {
	@include border-radius(0);
}

@mixin reset-box-shadow {
	-webkit-box-shadow: 0 0 0 0 transparent;
	-moz-box-shadow: 0 0 0 0 transparent;
	-ms-box-shadow: 0 0 0 0 transparent;
	-o-box-shadow: 0 0 0 0 transparent;
	box-shadow: 0 0 0 0 transparent;
}