/*
 * Sexy Buttons
 * 
 * DESCRIPTION:
 * 	Sexy, skinnable HTML/CSS buttons with icons.
 * 
 * PROJECT URL: 
 * 	http://code.google.com/p/sexybuttons/
 * 
 * AUTHOR:
 * 	Richard Davies
 * 	http://www.richarddavies.us
 * 	Richard@richarddavies.us
 * 
 * VERSION:
 * 	1.1
 * 
 * LICENSE:
 * 	Apache License 2.0  (http://www.apache.org/licenses/LICENSE-2.0)
 * 	Creative Commons 3.0 Attribution  (http://creativecommons.org/licenses/by/3.0/)
 * 
 * CREDITS:
 * 	Inspired by, derived from, and thanks to:
 * 	http://www.p51labs.com/simply-buttons-v2/
 * 	http://www.oscaralexander.com/tutorials/how-to-make-sexy-buttons-with-css.html
 * 	http://www.zurb.com/article/266/super-awesome-buttons-with-css3-and-rgba
 * 	http://www.elctech.com/snippets/make-your-buttons-look-super-awesome
 * 
 * USAGE:
 * 	Simply add class="sexybutton [skin]" to a <button> or <a> element and wrap the label text with double <span>s.
 * 	You can optionally add a "silk" icon to the button text by using a third <span> with class to identify the icon.   
 * 
 * EXAMPLE: 
 * 	<button id="btn1" class="sexybutton" name="btn1" type="submit" value="Submit">
 * 		<span><span><span class="ok">Submit</span></span></span>
 * 	</button>
 */

/* 
 *	Generic styles for all Sexy Buttons
 */

.sexybutton {
    display: inline-block;
    margin: 0;
    padding: 0;
    font: bold 13px "Helvetica Neue", Helvetica, Arial, clean, sans-serif !important;
    text-decoration: none !important;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.20);
    background: none;
    border: none;
    white-space: nowrap;
    cursor: pointer;
    user-select: none;
    -moz-user-select: none;
    /* Fix extra width padding in IE */
    _width: 0;
    overflow: visible;
}

.sexybutton span {
    display: block;
    /* Prevents :active from working in IE--oh well! */
    height: 24px;
    padding-right: 12px;
    background-repeat: no-repeat;
    background-position: right top;
}

.sexybutton span span {
    padding-right: 0;
    padding-left: 12px;
    line-height: 24px;
    background-position: left top;
}

.sexybutton span span span {
    padding-left: 21px;
    background-image: none;
    background-repeat: no-repeat;
    background-position: left center;
    /* IE6 still requires a PNG transparency fix */
    /* _background-image: none;		Or just hide icons from the undeserving IE6 */
    /* _padding-left: 0;					Or just hide icons from the undeserving IE6 */
}

.sexybutton span span span.after {
    padding-left: 0px;
    padding-right: 21px;
    background-position: right center;
    /* IE6 still requires a PNG transparency fix */
    /* _padding-right: 0;					Or just hide icons from the undeserving IE6 */
}

.sexybutton[disabled],
.sexybutton[disabled]:hover,
.sexybutton[disabled]:focus,
.sexybutton[disabled]:active,
.sexybutton.disabled,
.sexybutton.disabled:hover,
.sexybutton.disabled:focus,
.sexybutton.disabled:active {
    color: #333 !important;
    cursor: inherit;
    text-shadow: none;
    opacity: 0.33;
}

.sexybutton:hover span,
.sexybutton:focus span {
    background-position: 100% -24px;
}

.sexybutton:hover span span,
.sexybutton:focus span span {
    background-position: 0% -24px;
}

.sexybutton:active span {
    background-position: 100% -48px;
}

.sexybutton:active span span {
    background-position: 0% -48px;
}

.sexybutton[disabled] span,
.sexybutton.disabled span {
    background-position: 100% -72px;
}

.sexybutton[disabled] span span,
.sexybutton.disabled span span {
    background-position: 0% -72px;
}

.sexybutton:hover span span span,
.sexybutton:focus span span span,
.sexybutton:active span span span,
.sexybutton[disabled] span span span,
.sexybutton.disabled span span span {
    background-position: left center;
}

.sexybutton:hover span span span.after,
.sexybutton:focus span span span.after,
.sexybutton:active span span span.after,
.sexybutton[disabled] span span span.after,
.sexybutton.disabled span span span.after {
    background-position: right center;
}

.sexybutton img {
    margin-right: 5px;
    vertical-align: text-top;
    /* IE6 Hack */
    _margin-top: 4px;
    _vertical-align: text-bottom;
    /* IE6 still requires a PNG transparency fix */
    /* _display: none;		Or just hide icons from the undeserving IE6 */
}

.sexybutton img.after {
    margin-right: 0;
    margin-left: 5px;
    /* IE6 still requires a PNG transparency fix */
    /* _margin-left: 0;		Or just hide icons from the undeserving IE6 */
}

.sexybutton.sexymedium {
    font-size: 15px !important;
}

.sexybutton.sexylarge {
    font-size: 18px !important;
}

/*
 * Button Skins
 * 
 * .PNG background images with alpha transparency are also supplied if you'd rather use them instead of the 
 * default .GIF images. (Just beware of IE6's lack of support.) 
 * 
 * Additional skins can be added below. The images/skins/ButtonTemplate.psd can be used to create new skins.
 * Prefix the skin name with "sexy" to avoid any potential conflicts with other class names. 
 */

/* Silver Button Skin (the default skin) */

.sexybutton,
.sexybutton.sexysilver {
    color: #666 !important;
}

.sexybutton:hover,
.sexybutton:focus,
.sexybutton.sexysilver:hover,
.sexybutton.sexysilver:focus {
    color: #333 !important;
}

.sexybutton span,
.sexybutton.sexysilver span {
    background-image: url(images/skins/silver/button_right.gif);
}

.sexybutton span span,
.sexybutton.sexysilver span span {
    background-image: url(images/skins/silver/button_left.gif);
}

/* Orange Button Skin */

.sexybutton.sexyorange,
.sexybutton.sexyorange:hover,
.sexybutton.sexyorange:focus {
    color: white !important;
}

.sexybutton.sexyorange[disabled],
.sexybutton.sexyorange[disabled]:hover,
.sexybutton.sexyorange[disabled]:active,
.sexybutton.sexyorange[disabled]:focus,
.sexybutton.sexyorange.disabled,
.sexybutton.sexyorange.disabled:hover,
.sexybutton.sexyorange.disabled:active,
.sexybutton.sexyorange.disabled:focus {
    color: #333 !important;
}

.sexybutton.sexyorange span {
    background-image: url(images/skins/orange/button_right.gif);
}

.sexybutton.sexyorange span span {
    background-image: url(images/skins/orange/button_left.gif);
}

/* Yellow Button Skin */

.sexybutton.sexyyellow,
.sexybutton.sexyyellow:hover,
.sexybutton.sexyyellow:focus {
    color: #994800 !important;
}

.sexybutton.sexyyellow span {
    background-image: url(images/skins/yellow/button_right.gif);
}

.sexybutton.sexyyellow span span {
    background-image: url(images/skins/yellow/button_left.gif);
}

/* 
 * Simple Skin Buttons
 */

.sexybutton.sexysimple {
    position: relative;
    padding: 5px 10px 5px;
    font: inherit;
    font-size: 13px !important;
    font-style: normal !important;
    font-weight: bold !important;
    color: #fff !important;
    line-height: 1;
    background-image: url(images/skins/simple/awesome-overlay-sprite.png);
    background-repeat: repeat-x;
    background-position: 0 0;
    /* Special effects */
    text-shadow: 0 -1px 1px rgba(0, 0, 0, 0.25), -2px 0 1px rgba(0, 0, 0, 0.25);
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
    /* IE only stuff */
    border-bottom: 1px solid transparent\9;
    _background-image: none;
    /* Cross browser inline block hack - http://blog.mozilla.com/webdev/2009/02/20/cross-browser-inline-block/ */
    display: -moz-inline-stack;
    display: inline-block;
    vertical-align: middle;
    *display: inline !important;
    position: relative;
    /* Force hasLayout in IE */
    zoom: 1;
    /* Disable text selection (Firefox only)*/
    -moz-user-select: none;
}

.sexybutton.sexysimple::selection {
    background: transparent;
}

.sexybutton.sexysimple:hover,
.sexybutton.sexysimple:focus {
    background-position: 0 -50px;
    color: #fff !important;
}

.sexybutton.sexysimple:active {
    background-position: 0 -100px;
    -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.7);
    /* Unfortunately, Safari doesn't support inset yet */
    -webkit-box-shadow: none;
    /* IE only stuff */
    border-bottom: 0\9;
    border-top: 1px solid #666\9;
}

.sexybutton.sexysimple[disabled],
.sexybutton.sexysimple.disabled {
    background-position: 0 -150px;
    color: #333 !important;
    text-shadow: none;
}

.sexybutton.sexysimple[disabled]:hover,
.sexybutton.sexysimple[disabled]:focus,
.sexybutton.sexysimple[disabled]:active,
.sexybutton.sexysimple.disabled:hover,
.sexybutton.sexysimple.disabled:focus,
.sexybutton.sexysimple.disabled:active {
    -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
    -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}

.sexybutton.sexysimple span {
    height: auto;
    padding-left: 24px;
    padding-right: 0;
    background-position: left center;
    background-repeat: no-repeat;
    /* IE6 still requires a PNG transparency fix */
    /* _padding-left: 0;		Or just hide icons from the undeserving IE6 */
}

.sexybutton.sexysimple span.after {
    padding-left: 0;
    padding-right: 24px;
    background-position: right center;
    /* IE6 still requires a PNG transparency fix */
    /* _padding-right: 0;		Or just hide icons from the undeserving IE6 */
}

/* Simple button colors */

.sexybutton.sexysimple {
    background-color: #333;
}

/* Default */

.sexybutton.sexysimple.sexyblack {
    background-color: #333;
}

.sexybutton.sexysimple.sexyred {
    background-color: #a90118;
}

.sexybutton.sexysimple.sexyorange {
    background-color: #ff8a00;
}

.sexybutton.sexysimple.sexyyellow {
    background-color: #ffb515;
}

.sexybutton.sexysimple.sexygreen {
    background-color: #59a901;
}

.sexybutton.sexysimple.sexyblue {
    background-color: #015ea9;
}

.sexybutton.sexysimple.sexyteal {
    background-color: #2daebf;
}

.sexybutton.sexysimple.sexymagenta {
    background-color: #a9014b;
}

.sexybutton.sexysimple.sexypurple {
    background-color: #9d01a9;
}

/* Simple button sizes */

.sexybutton.sexysimple.sexysmall {
    padding: 4px 7px 5px;
    font-size: 10px !important;
}

.sexybutton.sexysimple.sexysmall:active {
    padding: 5px 7px 4px;
}

.sexybutton.sexysimple {
    /* default */
}

.sexybutton.sexysimple:active {
    padding: 6px 10px 4px;
}

.sexybutton.sexysimple.sexymedium {
    /* default */
}

.sexybutton.sexysimple.sexymedium:active {
    padding: 6px 10px 4px;
}

.sexybutton.sexysimple.sexylarge {
    padding: 8px 14px 8px;
    font-size: 14px !important;
}

.sexybutton.sexysimple.sexylarge:active {
    padding: 9px 14px 7px;
}

.sexybutton.sexysimple.sexyxl {
    padding: 8px 14px 8px;
    font-size: 16px !important;
}

.sexybutton.sexysimple.sexyxl:active {
    padding: 9px 14px 7px;
}

.sexybutton.sexysimple.sexyxxl {
    padding: 8px 14px 8px;
    font-size: 20px !important;
}

.sexybutton.sexysimple.sexyxxl:active {
    padding: 9px 14px 7px;
}

.sexybutton.sexysimple.sexyxxxl {
    padding: 8px 14px 8px;
    font-size: 26px !important;
}

.sexybutton.sexysimple.sexyxxxl:active {
    padding: 9px 14px 7px;
}

.sexybutton.sexysimple.sexysmall[disabled]:active,
.sexybutton.sexysimple.sexysmall.disabled:active {
    padding: 4px 7px 5px;
}

.sexybutton.sexysimple[disabled]:active,
.sexybutton.sexysimple.disabled:active {
    padding: 5px 10px 5px;
}

.sexybutton.sexysimple.sexymedium[disabled]:active,
.sexybutton.sexysimple.sexymedium.disabled:active {
    padding: 6px 10px 4px;
}

.sexybutton.sexysimple.sexylarge[disabled]:active,
.sexybutton.sexysimple.sexylarge.disabled:active {
    padding: 8px 14px 8px;
}

.sexybutton.sexysimple.sexyxl[disabled]:active,
.sexybutton.sexysimple.sexyxl.disabled:active {
    padding: 8px 14px 8px;
}

.sexybutton.sexysimple.sexyxxl[disabled]:active,
.sexybutton.sexysimple.sexyxxl.disabled:active {
    padding: 8px 14px 8px;
}

.sexybutton.sexysimple.sexyxxxl[disabled]:active,
.sexybutton.sexysimple.sexyxxxl.disabled:active {
    padding: 8px 14px 8px;
}

/*
 * Icon Definitions
 */

/* Silk Icons - http://www.famfamfam.com/lab/icons/silk/ */

/* (Obviously not all Silk icons are defined here. Feel free to define any other icons that you may need.) */

.sexybutton span.ok {
    background-image: url(images/icons/silk/tick.png) !important;
}

.sexybutton span.cancel {
    background-image: url(images/icons/silk/cross.png) !important;
}

.sexybutton span.add {
    background-image: url(images/icons/silk/add.png) !important;
}

.sexybutton span.delete {
    background-image: url(images/icons/silk/delete.png) !important;
}

.sexybutton span.download {
    background-image: url(images/icons/silk/arrow_down.png) !important;
}

.sexybutton span.download2 {
    background-image: url(images/icons/silk/package_down.png) !important;
}

.sexybutton span.upload {
    background-image: url(images/icons/silk/arrow_up.png) !important;
}

.sexybutton span.search {
    background-image: url(images/icons/silk/magnifier.png) !important;
}

.sexybutton span.find {
    background-image: url(images/icons/silk/find.png) !important;
}

.sexybutton span.first {
    background-image: url(images/icons/silk/resultset_first.png) !important;
}

.sexybutton span.prev {
    background-image: url(images/icons/silk/resultset_previous.png) !important;
}

.sexybutton span.next {
    background-image: url(images/icons/silk/resultset_next.png) !important;
}

.sexybutton span.last {
    background-image: url(images/icons/silk/resultset_last.png) !important;
}

.sexybutton span.play {
    background-image: url(images/icons/silk/play_blue.png) !important;
}

.sexybutton span.pause {
    background-image: url(images/icons/silk/pause_blue.png) !important;
}

.sexybutton span.rewind {
    background-image: url(images/icons/silk/rewind_blue.png) !important;
}

.sexybutton span.forward {
    background-image: url(images/icons/silk/forward_blue.png) !important;
}

.sexybutton span.stop {
    background-image: url(images/icons/silk/stop_blue.png) !important;
}

.sexybutton span.reload {
    background-image: url(images/icons/silk/reload.png) !important;
}

.sexybutton span.sync {
    background-image: url(images/icons/silk/arrow_refresh.png) !important;
}

.sexybutton span.save {
    background-image: url(images/icons/silk/disk.png) !important;
}

.sexybutton span.email {
    background-image: url(images/icons/silk/email.png) !important;
}

.sexybutton span.print {
    background-image: url(images/icons/silk/printer.png) !important;
}

.sexybutton span.heart {
    background-image: url(images/icons/silk/heart.png) !important;
}

.sexybutton span.like {
    background-image: url(images/icons/silk/thumb_up.png) !important;
}

.sexybutton span.dislike {
    background-image: url(images/icons/silk/thumb_down.png) !important;
}

.sexybutton span.accept {
    background-image: url(images/icons/silk/accept.png) !important;
}

.sexybutton span.decline {
    background-image: url(images/icons/silk/decline.png) !important;
}

.sexybutton span.help {
    background-image: url(images/icons/silk/help.png) !important;
}

.sexybutton span.home {
    background-image: url(images/icons/silk/house.png) !important;
}

.sexybutton span.info {
    background-image: url(images/icons/silk/information.png) !important;
}

.sexybutton span.cut {
    background-image: url(images/icons/silk/cut.png) !important;
}

.sexybutton span.copy {
    background-image: url(images/icons/silk/page_white_copy.png) !important;
}

.sexybutton span.paste {
    background-image: url(images/icons/silk/paste_plain.png) !important;
}

.sexybutton span.erase {
    background-image: url(images/icons/silk/erase.png) !important;
}

.sexybutton span.undo {
    background-image: url(images/icons/silk/arrow_undo.png) !important;
}

.sexybutton span.redo {
    background-image: url(images/icons/silk/arrow_redo.png) !important;
}

.sexybutton span.edit {
    background-image: url(images/icons/silk/pencil.png) !important;
}

.sexybutton span.calendar {
    background-image: url(images/icons/silk/date.png) !important;
}

.sexybutton span.user {
    background-image: url(images/icons/silk/user.png) !important;
}

.sexybutton span.settings {
    background-image: url(images/icons/silk/cog.png) !important;
}

.sexybutton span.cart {
    background-image: url(images/icons/silk/cart.png) !important;
}

.sexybutton span.wand {
    background-image: url(images/icons/silk/wand.png) !important;
}

.sexybutton span.wrench {
    background-image: url(images/icons/silk/wrench.png) !important;
}