/* apply a natural box layout model to all elements */
.box-sizing (@model: border-box) {
    -moz-box-sizing: @model;
    -webkit-box-sizing: @model;
    box-sizing: @model;
}
.rounded-corners (@radius: 5px) {
    -webkit-border-radius: @radius;
    -moz-border-radius: @radius;
    border-radius: @radius;
}
.rounded-corners (@top-left, @top-right, @bottom-right: 0, @bottom-left: 0) {
    -webkit-border-radius: @arguments;
    -moz-border-radius: @arguments;
    border-radius: @arguments;
}
.shadow (@x, @y, @blur, @spread, @color) {
    -webkit-box-shadow: @arguments;
    -moz-box-shadow: @arguments;
    box-shadow: @arguments;
}
/* apply a natural box layout model to elements */
.border-sizing(@model) {
    -webkit-box-sizing: @model;
    -moz-box-sizing: @model;
    box-sizing: @model;
}
.transition(@prop, @duration: 1s) {
    -webkit-transition: @prop @duration;
    -moz-transition: @prop @duration;
    transition: @prop @duration;
}
.rotate(@deg) {
    -webkit-transform: rotate(@deg);
    -moz-transform: rotate(@deg);
    transform: rotate(@deg);
}
.transformOrigin(@top, @left) {
    -webkit-transform-origin: @top @left;
    -moz-transform-origin: @top @left;
    transform-origin: @top @left;
}
// Gradients
#gradient {
  .horizontal (@startColor: #555, @endColor: #333) {
    background-color: @endColor;
    background-repeat: repeat-x;
    background-image: -webkit-linear-gradient(left, @startColor, @endColor); /* Safari 5.1+, Chrome 10+ */
    -ms-filter: %("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=1)",@startColor,@endColor); /* IE8+ */
    background-image: linear-gradient(to right, @startColor, @endColor); /* the standard */
  }
  .vertical (@startColor: #555, @endColor: #333) {
    background-color: @endColor;
    background-repeat: repeat-x;
    background-image: -webkit-linear-gradient(top, @startColor, @endColor); /* Safari 5.1+, Chrome 10+ */
    -ms-filter: %("progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d', GradientType=0)",@startColor,@endColor); /* IE8+ */
    background-image: linear-gradient(to bottom, @startColor, @endColor); /* the standard */
  }
}
.button() {
    background-color: #406A80;
    background-image: -webkit-linear-gradient(top, #5D94B0, #48768E 50%, #406A80 51%, #48768E);
    background-image: linear-gradient(to bottom, #5D94B0, #48768E 50%, #406A80 51%, #48768E);
    box-shadow: inset 0px 1px 1px #B5D7E8;
    color: white;
    margin: 1rem;
    padding: .5rem;
    border: 1px solid #406A80;
    border-radius: .4rem;
    min-width: 100px;
    font-size: 1.3rem;
    cursor: pointer;

    &:hover {
        background-image: -webkit-linear-gradient(top, #5D94B0, #51829C 50%, #48758C 51%, #51829C);
        background-image: linear-gradient(to bottom, #5D94B0, #51829C 50%, #48758C 51%, #51829C);
    }
    &:active {
        background-image: none;
        background-color: #5D94B0;
    }
}
.notification {
    background-color: #fff;
    margin: 1rem;
    padding: .5rem;
    .rounded-corners(6px);
}
/*http://developer.yahoo.com/blogs/ydn/posts/2012/10/clip-your-hidden-content-for-better-accessibility/*/
.accessibly-hidden() {
    position: absolute;
    clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px);
    padding:0;
    border:0;
    height: 1px;
    width: 1px;
    overflow: hidden;
}
