/*
 *  (c) 2000-2019 deviantART, Inc. All rights reserved.
 */
#submit {
    padding: 0px;
    background: #D3DFD1 url(/minish/main/bbg.gif) repeat-x;
}

#submit h1 {
    font: bold 24px "Trebuchet MS", sans-serif;
    color: #597465;
    height: 30px;
    padding: 15px 20px;
}

#submit h1 span {
    color: #2c3635;
}

#submit a {
    text-decoration: underline;
    color: #3e8eb7;
}
#submit .smbutton {
    color: #121516;
}
#submit a.jsaction {
    text-decoration: none;
}

#submit .buttonsize {
    padding: 5px 10px;
    cursor: pointer;
}

#submit .ch {
    border-radius: 8px;
}

#world  i.tl, #world  i.tr, #world  i.br, #world  i.bl {
    background-image: none !important;
}
#submit  i.tl, #submit  i.tr, #submit  i.br, #submit  i.bl {
    background-image: none !important;
    border-color: #EAF2EE !important;
}
#submit  i.c {
    border-color: #EAF2EE !important;
}
#submit  i.c b {
    background-color: #EAF2EE;
}

div.bubbleview div.errorview {
    margin: 15px;
    background-color:#F7DADA;
}
div.bubbleview div.errorview div.header {
    background-color:#EAB7B7;
    padding:10px 10px 8px;
}
div.bubbleview div.errorview div.error_icon {
    background:transparent url(/styles/minimal/minish/spitbite/icon-error.png) no-repeat scroll left top;
    float:left;
    height:17px;
    padding-right:8px;
    width:18px;
}
div.bubbleview div.errorview div.inner {
    color:#794B4B;
    padding:4px 10px 8px 6px;
}

#submit .altview,
.cartBubble .altview {
    margin: 0 15px 15px 15px;
    padding: 0 0 15px 0;
    background-color: #e8f0e7;
    border: 1px solid #a5b2a7;
}

#submit .altview h3 {
    font: bold 18px "Trebuchet MS", sans-serif;
    margin: 5px 0 5px 15px;
    color: #597465;
}

#submit .altview h3 span.title {
    color: #2c3635;
}

#submit .altview.collapsible .content {
    margin-top: 20px;
}

#submit #paymentTabCont.altview.collapsible .content,
#submit #ShippingAddressBubble.altview.collapsible .content {
    margin-top: 27px;
}

#submit .altview.collapsible.collapsed {
    padding: 0;
    background: #DEE8DC;
    border-color: #bcc8bc;
}

#submit .altview.collapsible h3 {
    line-height: 45px;
}

#submit .altview.collapsible.collapsed .content {
    display: none;
}

#submit .altview.blurred h3 {
    color: #96A99B;
}

#submit .altview.blurred h3 span.title {
    color: #7F8A83;
}

#submit .altview .continue-shopping {
    margin: 19px 16px 0px 0px;
    font-size: 12px;
    float: right;
    display: block;
}

#submit .altview.collapsed .continue-shopping {
    display: none;
}

#submit .altview.collapsible .edit-pane {
    margin: 19px 30px 0px 0px;
    font-size: 12px;
    float: right;
    display: none;
}

#submit .altview.collapsible.completed span.selectedImg {
    display: inline-block;
    top: 4px;
}

/* Cart right column */

#submit div.altview_right {
    margin: 0px 15px 0 0;
    padding: 15px;
    background-color: transparent;
}

/* Promo coupon widget */
#submit div.PromotionBubble {
    background-color: #93aa99;
    position: relative;
    padding-top: 34px; /* Leave space for absolutley posisiontioned headings */
    min-width: 190px;
}
#submit div.PromotionBubble h3 {
    font: bold 18px "Trebuchet MS", sans-serif;
    color: #eef2ee;
    position: absolute;
    top: 13px;
    left: 15px;
}
#submit div.PromotionBubble h3.PromoCodeHeadingApplied {
    background: url(/cart/promo_tick.png) left center no-repeat;
    padding-left: 25px;
    color: #fff;
}
#submit div.PromotionBubble ul#active_coupons {
    list-style: none;
    list-style-image: none;
    padding: 0;
    margin: 10px 0;
}

#submit div.PromotionBubble ul#active_coupons li {
    list-style: none;
    list-style-image: none;
    padding-left: 23px;
    line-height: 25px;
    height: 25px;
    margin: 10px 0;
    border-radius: 3px;
    color: #B73E62;
    background: url(/cart/promo_tag.png) 2px center no-repeat #e4eae5;
    position: relative;
}
#submit div.PromotionBubble.appliedPromotion ul#active_coupons li {
    background-color: #f9f3f3;
}
#submit div.PromotionBubble ul#active_coupons li a.remove_coupon {
    display: block;
    position: absolute;
    top: 5px;
    right: 3px;
    width: 15px;
    height: 15px;
    background: url(/cart/promo_code_remove.png) 0 0 no-repeat;
}
#submit div.PromotionBubble ul#active_coupons li a.remove_coupon:hover {
    background-position: 0 -15px;
}

#submit div.PromotionBubble .promoCodeButton {
    padding: 5px 10px;
    min-width: 55px;
    margin:  3px 0 0 !important;
}
#submit div.PromotionBubble .promoCodeInput {
    width: 172px;
}
#submit div.PromotionBubble span.promoCodeInputDefault {
    display: block;
    position: absolute;
    color: #999;
    bottom: 22px;
    left: 25px;
}
#submit p.PromoCodeError {
    color:#C50000;
    margin-bottom: 0;
}
#submit div.appliedPromotion {
    background-color: #b73e62; /* This is duplicated in CartManager.js since we have to tween between colours */
}

/* "We're safe, honest" widget */

#submit div.AssuranceBubble {
    border: 1px solid #9eb1a2;
    font: 11px Verdana, sans-serif;
    padding: 15px 10px;
    min-width: 190px;
}
#submit div.AssuranceBubble h3 {
    font: bold 18px "Trebuchet MS", sans-serif;
    color: #597465;
    margin: 0 5px;
}
#submit div.AssuranceBubble a.verified-badge {
    display: block;
    float: left;
    margin:  30px 0 -5px;
    width: 90px;
}
#submit div.AssuranceBubble p.verified-text {
    padding-left: 95px;
    margin-bottom: 0;
}


body.secure i.tl, body.secure i.tr, body.secure i.bl, body.secure i.br {
    background-image: none !important;
}
#mainTable tr {
    vertical-align: top;
}
#mainTable .deviously-delighted, #emptyTable .deviously-delighted {
    padding-left: 110px;
    font-size: 8.25pt;
    min-height: 80px;
    min-width: 150px;
    background: transparent url('/minish/deviantwear/buy_with_confidence.png') no-repeat;
    background-position-y: -10px;
    margin: 14px 14px 14px 0px;
    color: #728080;
}
#submit .assuranceSpacer {
    height: 15px;
}

#submit .verifiedTable td {
    align: center;
}

#submit div.altview label.l_error {
    color: #A12020;
}

#submit div.altview label.l {
    width: 150px;
    font-weight: bold;
    text-align: right;
    position: absolute;
    left: 0px;
    margin-top: 4px;
}
#submit div.altview label.optionalLabel {
    color: #7C8685;
}

#submit div.altview input, select {
    margin-left: 162px !important;
}
#submit div.altview select.shippingSelector {
    margin-left: 10px !important;
}

#submit div.altview input.itext, .promoCodeInput {
    font-family: Verdana, Geneva, sans-serif;
    color: #515c5a;
    font-size: 12px;
    letter-spacing: -0.25px;
    padding: 4px 8px;
    border: 1px solid #8c9b8c; 
    background: #f7f7f7; 
    border-radius: 3px;
    box-shadow:0 1px rgba(255,255,255,0.4), 0 1px 4px #bdbdbd inset;
}

#submit div.altview input.itext {
    width: 257px;
}

#cardContainer {
    margin-left: 162px;
}
#paymentNote {
    font-size: 1.0em;
    font-weight: bold;
}
#paymentNote p {
    font-size: 90%;
    color: #52615D;
}

#submit div.paymentTypeDiv {
    position: relative;
    float: left;
    width: 60px;
    height: 30px;
    margin-right: 20px;
}
#submit div.paymentTypeDiv input.paymentTypeRadio {
   margin-left: 0px;
}
span.paymentLabel {
    width: 80%;
    margin: -20px 0px 30px 180px;
    display: block;
}

span.cardlogo {
    position: absolute;
    left: 17px;
    width: 40px;
    height: 26px;
    background: url("/styles/minimal/minish/shop-ccards.gif") no-repeat;
}

img.cardlogo {
    position: absolute;
    left: 70px;
    margin: 0px;
}
#devDollarBalance {
    margin-left: 162px;
    font-weight: bold;
}

#submitBubble {
    margin: 0px;
    padding: 5px 0px 5px 0px;
    width: 66%;
    text-align: center;
}
#submit #submitBubble input {
    margin: 0px 7px 0px 7px;
}


#shipAndCheckout .shippingRow select.shippingSelector {

    margin-left: 10px;

}

#submit .cartfootertext {
    border-top: 1px solid #ADBFBD;
    font: normal 10px Verdana, sans-serif;
    color: #768e81;
}

#submit #shipAndCheckout table.multiShipTable.totalTable {
    margin-top: -20px;
}

table.multiShipTable {
    width: 97%;
    margin-left: 15px;
}

table.multiShipTable tr.subtotal td {
    border-bottom: 1px solid #ADBFBD;
}

table.multiShipTable .shippingmethod {
    font-size: 11px;
    color: #323D3B;
    font-weight: bold;
}

#mainTable table.multiShipTable tr {
    vertical-align: middle;
}
table.itemListTable thead tr th {
    color: #6F6F6F;
    border-bottom: 1px solid #a5b2a7;
    padding: 0;
    margin: 0;
    height: 20px;
    font: bold 12px "Trebuchet MS", sans-serif;
}
table.itemListTable thead tr th:first-child {
    color: #2c3536;
    font-size: 16px;
    letter-spacing: -1px;
}
table.multiShipTable thead tr th.center {
    text-align: center;
}
table.multiShipTable thead tr th.left {
    text-align: left;
}
table.multiShipTable thead tr th.right {
   text-align: right;
}
table.multiShipTable tr td.left {
   text-align: left;
}
table.multiShipTable tr td.right {
   text-align: right;
}
table.multiShipTable tr td.center {
    text-align: center;
}
table.multiShipTable td {
   padding: 2px 5px;
}

#submit table.multiShipTable a.productName {
    font: bold 17px "Trebuchet MS", sans-serif;
    letter-spacing: -1px;
    color: #2c76a9;
    text-decoration: none;
}

#submit table.multiShipTable a.productName:hover {
    text-decoration: underline;
}

table.multiShipTable span.itemName {
    font: normal 10px Verdana, sans-serif;
    color: #818181;
}

table.multiShipTable tr.seperator td {
    height: 1px;
    border-bottom: 2px solid #ADBFBD;
}
table.multiShipTable tr.subtotal td {
    font-weight: bold;
}
table.multiShipTable td.thumbCol {
    width: 155px;
    padding: 2px 10px 2px 5px;
}
table.multiShipTable td.priceTD {
    text-align: right;
}
table.multiShipTable div.pointsPrice  {
    position: relative;
}
table.multiShipTable td.priceTD {
    width: 120px;
}
span.discountLabel .pointsPrice {
    display: inline;
}
span.discountLabel .pointsVal {
    display: inline;
}

table.multiShipTable td.left div.pointsPrice {
    display: inline;
}
table.multiShipTable td.left div.pointsVal {
    display: inline;
}

#gitSome {
    float: left;
    background:url(/cart/morepoints.gif) no-repeat 0px 0px;
    padding: 0 20px 0 30px;
    line-height: 20px;
}
#pointsBalance {
    line-height: 20px;
}
table.multiShipTable div.pointsPrice div.pointsLogo {
    background:url(/minish/main/userbaricons.gif?7) no-repeat -608px -13px;
    font-size: 14px;
    display: inline;
}
table.multiShipTable tr.total td.priceTD div.pointsPrice div.pointsLogo {
    line-height: 22px;
}
table.multiShipTable tr.total td.priceTD ,
table.multiShipTable tr.subtotal td.priceTD {
    width: 135px;
}
table.multiShipTable select.shippingMethodSelector{
    margin: 0px;
}
#submit table.multiShipTable input.quantityInput {
    width: 38px;
    margin: 0px 4px 0px 0px !important;
    text-align: center;
    font-family: Verdana, Geneva, sans-serif;
    color: #515c5a;
    letter-spacing: -0.25px;
    font-size: 11px;
    padding: 5px 4px 4px;
    border: 1px solid #8c9b8c; 
    background: #f7f7f7; 
    border-radius: 3px;
    box-shadow:0 1px rgba(255,255,255,0.4), 0 1px 4px #bdbdbd inset;
}
#submit table.multiShipTable tr.emptyCartRow {
    font-size: 1.5em;
    font-weight: Bold;
}
#submit table.multiShipTable span.itemRemove {
    left: -62px;
    position: relative;
    top: 28px;
    text-decoration: underline;
    font-size: 0.90em;
    cursor: pointer;
    color: #3e8eb7;
}
#submit table.multiShipTable span.rebillWarning {
    font-size: 0.9em;
    font-weight: bold;
    text-decoration: italic;
}
#submit table.multiShipTable span.rebillToggle {
    text-decoration: underline;
    font-size: 0.95em;
    cursor: pointer;
}
#shipAndCheckout table.multiShipTable {
    margin-top: 10px;
    margin-bottom: 30px;
}
table.totalTable tr.discount {
    font: bold 12px Verdana, sans-serif;
    color: #b73e62;
}

#submit div.pendingExplanation {
    margin: 10px 15px;
    display: none;
}

#submit #shipAndCheckout table.multiShipTable td.buttonTD {
    width: 140px;
}

#submitButton {
    color: #26570E !important;
    font-family: 'Trebuchet MS', sans-serif;
    font-size: 14px;
    font-weight: bold;
    text-shadow: 0 1px #E7F78A;
    padding: 7px 11px !important;
}


table.totalTable tr.total {
    font: bold 24px "Trebuchet MS", sans-serif;
    color: #52615d;
}

table.multiShipTable tr.total td,
table.multiShipTable tr.discount td {
    padding: 11px 5px;
}

table.totalTable tr.total .priceTD {
    color: black;
}

table.totalTable tr.pendingSubmit td.warning {
    font-size: 0.85em;
    vertical-align: center;
    margin: 2px;
}

#submit #shipAndCheckout table.totalTable {
    margin-bottom: 0px;
}
#submit #shipAndCheckout table.multiShipTable td.thumbCol {
    width: 110px;
}
table.itemListTable tr.shippingRow {
    background-color: #d9e4d8;
    height: 30px;
}

table.itemListTable tr.shippingRow td {
    padding: 4px 5px;
}

table.itemListTable tr.subtotal td {
    padding-bottom: 7px;
    padding-top: 15px;
}


#totalTableHolder {
    width: 100%;
}
#priceTable, #totalTable {
    width: 95%;
    margin: auto
}

#priceTableHolder {
    padding: 0 15px;
}

#priceTableHolder div.crossProductQualified {
    padding: 10px 0;
    margin: 15px 0 0;
    border-top: 1px solid #D1D8D0;
    border-bottom: 1px solid #D1D8D0;
    text-align: right;
    position: relative;
}

#priceTableHolder div.crossProductQualified table {
    border:  0;
    width: 100%;
}

#priceTableHolder div.crossProductQualified table td {
    vertical-align: middle;
}
#priceTableHolder td.crossProductQualifiedBrowse{
    width: 30px;
}
#priceTableHolder td.crossProductQualifiedDesc {
    font-weight: bold;
    color: #51625D;
    display: block;
    padding: 6px 0;
}
#priceTableHolder td.crossProductQualifiedDesc strong {
    color: #2C3635;
}
#priceTableHolder div.crossProductQualified a.smbutton {
    text-decoration: none;
    position: relative;
    margin: 0 0 0 15px !important; /* I can't believe I've done it... */
}
#priceTableHolder div.crossProductQualified a.smbutton span.browse-right-arrow {
    display:block;
    position: absolute;
    top: 0;
    right: 8px;
    width: 4px;
    margin:  0;
    height: 100%;
    background:  url(/minish/cart/browse-right-arrow.png) left center transparent no-repeat;
}

#topPriceTable {
    width: 100%;
    margin: 0;
}

table.priceTable tr {
    vertical-align: top;
}

table.priceTable td {
   padding: 5px;
}

table.priceTable thead {
    color: #374341;
}
#priceTable thead tr th {
    border-bottom: 2px solid #ADBFBD;
    padding: 0;
    margin: 0;
    height: 20px;
}
table.priceTable thead tr th.left {
    font-size: 0.95em;
    text-align: left;
}
table.priceTable thead tr th.right {
    font-size: 0.95em;
   text-align: right;
}

.discountLabel {
    font: normal 12px Verdana, sans-serif;
    color: #b73e62;
}

.priceFree {
    font-weight: bold;
    color: #b73e62;
}

strong.giftItem {
    text-transform: uppercase;
}

#seperator td {
    height: 1px;
    border-bottom: 2px solid #ADBFBD;
}
table.priceTable tr td.left {
   text-align: left;
}
table.priceTable tr td.right {
   text-align: right;
}
table.priceTable td.thumbCol {
    width: 155px;
}
#submit table.priceTable td.priceTD {
    text-align: right;
}
#submit div.storedCardButtonsDiv,
#submit div.addressButtonsDiv {
    margin: 10px 0px 10px 162px;
}
span.storedCardButton,
#submit span.addressButton {
    text-decoration: underline;
    cursor: pointer;
    color: #3e8eb7;
    margin: 0px 20px 0px 0px;
}
#submit div.shipLabelContainer,  #submit div.billLabelContainer  {
    margin: 10px 0px 10px 162px;
    font-weight: bold;
    color: #374341;
}
#submit #shipFormContainer,  #submit #billFormContainer  {
    margin: 20px 0px 10px 0px;
}
#submit table.priceTable select.shippingMethodSelector{
    margin: 0px;
}
#submit table.priceTable input.quantityInput {
    width: 40px;
    margin: 0px 4px 0px 0px;
    padding: 0;
    text-align: center;
}
#submit table.priceTable tr.emptyCartRow {
    font-size: 1.5em;
    font-weight: Bold;
}
#submit table.priceTable span.itemRemove {
    text-decoration: underline;
    font-size: 0.95em;
    cursor: pointer;
    color: #3e8eb7;
}
#submit table.priceTable span.rebillWarning {
    font-size: 0.9em;
    font-weight: bold;
    text-decoration: italic;
}
#submit table.priceTable span.rebillToggle {
    text-decoration: underline;
    font-size: 0.95em;
    cursor: pointer;
}
#submit table#topPriceTable tr.preferRebill a.rebillToggle {
    display: none;
}

#submit #topPriceTable {
    border-bottom: 1px solid #a5b2a7;
}

a.helper {
    width: 20px;
    height: 20px;
    float: left;
    position: absolute;
    left: 60px;
    z-index: 1000;
    background:url(/styles/minimal/minish/bubble-help.gif) no-repeat 0 0;
}

#submit #paymentCompleteBubble {
    background-color: #F9F9F8;
    color: #626867;
}

#submit #paymentCompleteBubble h3 {
    color: #53605C;
}

#submit #paymentCompleteBubble a {
    color: #397EB2;
    text-decoration: none;
}
#submit #paymentCompleteBubble a:hover {
    text-decoration: underline;
}

#paymentCompleteBubble p {
    margin: 15px;
}
#submit #mainTable #fakeButton,
#submit #empty.cartBubble .fakeButton {
    float: right;
    margin: 15px 15px 0 0 !important;
}

#submit .collapsible .continue-wizard {
    margin: 15px 15px 0 0 !important;
    float: right;
    clear: right;
}

#submit #TopOrderTable .continue-wizard {
    margin: 15px 0 0 0 !important;
}

#submit .fakeButtonDisabled {
    border: 1px solid #C4D1C4;
    display: block;
    display: inline-block;
    padding: 0;
    text-align: center;
    min-width: 85px;
    background: #E3EBE1;
    color: #8B938E !important;

    border-radius: 5px;

    padding: 5px 10px;

    float: right;
    margin: 15px 20px 0 0 !important;
}
#submit #emptyCartButton {
    float: right;
    margin: 15px;
    cursor: pointer;
}
#submit div.spacer {
    width: 25px;
    height: 30px;
}



#submit #removedBubble {
    background-color: #F7DADA;
}
#submit #removedBubble tr.shippingRow{
    display: none;
}
#submit #removedBubble tr.subtotal{
    display: none;
}
#submit #removedBubble input.quantityInput {
    display: none;
}
#submit #removedBubble b.staticQuantity {
    margin: 0px 10px 0px 0px;
}
#submit #removedBubble table.itemListTable thead tr th {
    border-bottom:2px solid #CDBFBD;
}

label.buyerLabel {
    font-weight: bold;
    line-height: 20px;
    font-size: 9pt;
}
input#buyerLoginButton {
    background: transparent url(/cart/login_button.gif?1) no-repeat;
    width: 94px;
    height: 33px;
    border: 0;
}

input#buyerLoginButton:hover {
    background: transparent url(/cart/login_button.gif?1) no-repeat 0px -34px;
}

input#buyerLoginButton:active {
    background: transparent url(/cart/login_button.gif?1) no-repeat 0px -68px;
}




div.maincart div#PaymentMethodTabs {
    margin: 10px 15px 0px 15px;
    height: 32px;
    border-bottom: 1px solid #92a399;
}
div#PaymentMethodTabs div.PaymentTab {
    margin: 0px 0px 0px 10px;
    float: left;
    height: 29px;
    padding: 5px 10px 0px 10px;
    position: relative;
    -x-system-font:none;
    font-family:Trebuchet MS,sans-serif;
    font-size:10pt;
    font-size-adjust:none;
    font-stretch:normal;
    font-style:normal;
    font-variant:normal;
    letter-spacing:-1px;
    line-height: 18pt;
    font-weight: bold;
    color: #4A8293;
    width: 120px;
}
div#PaymentMethodTabs div.PaymentTab span.textPart {
    width: 120px;
    height: 30px;
    position: absolute;
    top: 5px;
    text-align: center;
    z-index: 30;
}
div#PaymentMethodTabs div.PaymentTab div.leftPart {
    width: 135px;
    height: 33px;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 20;
}
div#PaymentMethodTabs div.PaymentTab div.rightPart {
    width: 5px;
    height: 33px;
    position: absolute;
    top: 0px;
    right: 0px;
    z-index: 21;
}
div#PaymentMethodTabs div.PaymentTabActive {
    color: #374341;
}
div#PaymentMethodTabs div.PaymentTab span.selectedImg {
    display: none;
}
div#PaymentMethodTabs div.PaymentTabActive span.selectedImg,
#submit .altview.collapsible h3 span.selectedImg {
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url(/cart/shoppingcart_tabs_tick.png?1) no-repeat;
    position: relative;
    top: 5px;
    left: 5px;
}

#submit .altview.collapsible h3 span.selectedImg {
    display: none;
}

div#PaymentMethodTabs div.PaymentTabActive div.leftPart {
    background: url(/cart/shoppingcart_tabs.png?1) no-repeat scroll 0px 0;
}
div#PaymentMethodTabs div.PaymentTabActive div.rightPart {
    background: url(/cart/shoppingcart_tabs.png?1) no-repeat scroll -245px 0;
}
div#PaymentMethodTabs div.PaymentTabInactive {
    cursor: pointer;
}
div#PaymentMethodTabs div.PaymentTabInactive div.leftPart {
    background: url(/cart/shoppingcart_tabs.png?1) no-repeat scroll 0px -36px;
    height: 31px;
}
div#PaymentMethodTabs div.PaymentTabInactive div.rightPart {
    background: url(/cart/shoppingcart_tabs.png?1) no-repeat scroll -245px -36px;
    height: 31px;
}
div#PaymentMethodTabs div.PaymentTabInactive:hover div.leftPart {
    background: url(/cart/shoppingcart_tabs.png?1) no-repeat scroll 0px -72px;
    height: 31px;
}
div#PaymentMethodTabs div.PaymentTabInactive:hover div.rightPart {
    background: url(/cart/shoppingcart_tabs.png?1) no-repeat scroll -245px -72px;
    height: 31px;
}

div.maincart div.PaymentTabContent {
    position: relative;
    background-color: #e9f0e6;
    margin: 0 15px;
    padding: 20px 0px 0 10px;
    border: 0;
}
#submit div.altview div.PaymentTabContent label.l {
    width: 160px;
}
#passwordWhy {
    margin-left: 10px;
    font-size: 8pt;
    color:#3E8EB7;
    text-decoration:underline;
}
div.popup2.popup2-cartHelp {
    background: none repeat scroll 0 0 #F8F8F8;
    border: 2px solid #4A8293;
    padding: 4px 6px;
}

div#treatment4SubOnlyCart div#PaymentMethodTabs,
div#treatment4SubOnlyCart div.PaymentTabContent {
    max-width: 660px;
}
*html div#treatment4SubOnlyCart div#PaymentMethodTabs,
*html div#treatment4SubOnlyCart div.PaymentTabContent {
    width: 660px;
}

/*
div#treatment2SubOnlyCart div.PaymentTabContent ,
div#treatment3SubOnlyCart div.PaymentTabContent ,
div#giftCart div.PaymentTabContent ,
div#treatment4SubOnlyCart div.PaymentTabContent {
    height: 120px;
}
*/
div.PaymentTabContent i.mytl,
div.PaymentTabContent i.mytr,
div.PaymentTabContent i.mybl,
div.PaymentTabContent i.mybr{
    position: absolute;
    width: 5px;
    height: 15px;
    border: 0px;
}
div.PaymentTabContent i.mytl{
    background: url(/cart/subcart_sprite.gif?1) no-repeat scroll -556px -64px;
    top: -1px;
    left: -1px;
}
div.PaymentTabContent i.mytr{
    background: url(/cart/subcart_sprite.gif?1) no-repeat scroll -567px -64px;
    top: -1px;
    right: -1px;
}
*html div.PaymentTabContent i.mytr{
    right: -2px;
}
div.PaymentTabContent i.mybl{
    background: url(/cart/subcart_sprite.gif?1) no-repeat scroll -556px -78px;
    bottom: -1px;
    left: -1px;
}
*html div.PaymentTabContent i.mybl{
    bottom: -2px;
}
div.PaymentTabContent i.mybr{
    background: url(/cart/subcart_sprite.gif?1) no-repeat scroll -567px -78px;
    bottom: -1px;
    right: -1px;
}
*html div.PaymentTabContent i.mybr{
    bottom: -2px;
    right: -2px;
}

div.PaymentTabContent label {
    left:0;
    margin-top:4px;
    position:absolute;
    text-align:right;
    width:135px;
}

div.PaymentTabContent#LoggedOutTab {
    padding: 40px 0;
    text-align: center;
    display: inline-block;
    font-size: 20px;
}
div.PaymentTabContent#LoggedOutTab #login_button {
    padding: 40px 0;
}

div.PaymentTabContent#LoggedOutTab #login_button #becomeDevButton {
    font-size: 14px;
}

 div.PaymentTabContent#LoggedOutTab {
     border-top: 1px solid #92A399;
 }
div#treatment2SubOnlyCart input.itext ,
div#treatment3SubOnlyCart input.itext ,
div#giftCart input.itext ,
div#treatment4SubOnlyCart input.itext {
    width: 300px;
}
div#subOnlyCart select#billCountry,
div#subOnlyCart input.itext {
    width: 30%;
}

/*
div#DevDollarTab,
div#PayPalTab{
    height: 150px;
}
*/
div#DevDollarTab div#devDollarBalance,
div#PayPalTab div#paymentNote {
    font-size: 1.4em;
    margin: 20px;
    text-align: center;
}

#SubPrefRadios tr {
    display: none;
}

#redPromotion {
    color: #B73E62;
    font-family:Trebuchet MS,sans-serif;
    font-size:14pt;
    font-size-adjust:none;
    font-stretch:normal;
    font-style:normal;
    font-variant:normal;
    letter-spacing:-1px;
    line-height:normal;
    margin:0;
}

#finePrint {
    font-family:Trebuchet MS,sans-serif;
    font-size:9pt;
    letter-spacing:-1px;
    line-height:normal;
    text-align: right;
    margin:10px 0 20px;
}
#forgotPassword {
    text-align: right;
    width: 455px;
    margin: 5px 0;
}

#DeliveryGuaranteeBubble {
    border: 1px solid #9EB1A2;
    background: url(/cart/deliveryguarantee/shipping_guarantee.png) no-repeat top left;
    width: 270px;
    padding: 10px !important;
    padding-top: 39px !important;
    font-size: 11px;
    font-family: Verdana, sans-serif;
}

#DeliveryGuaranteeBubble caption {
    font: bold 18px "Trebuchet MS",sans-serif;
    text-align: left;
    margin: 0 5px;
    color: #000;
    padding: 0;
    margin: 0;
}

#DeliveryGuaranteeBubble table {
    width: 270px;
    margin-bottom: 11px;
    font-size: 10px;
    line-height: 18px;
    border-collapse: collapse;
}

#DeliveryGuaranteeBubble tr, th {
    text-align: left;
    margin: 0;
    padding: 0;
}

#DeliveryGuaranteeBubble tr {
    border-top: 1px solid #96ab98;
}

#DeliveryGuaranteeBubble tr.heading {
    border-top: none;
}

#DeliveryGuaranteeBubble th {
    color: red;
    font-weight: normal;
}

#DeliveryGuaranteeBubble td:first-child {
    width: 35%;
}

#DeliveryGuaranteeBubble .note {
    color: #54615D;
    font-size: 10px;
}

/* Premium Membership Banner start */
#oneclick-subby-ad { position:relative; height:120px; padding:0 160px 0 0; overflow:hidden; margin:0 5px 15px 15px; }
.oneclick-subby-ad-left { background:#eaf0c4 url(/cart/oneclick-subby/upgrade-promo.jpg) center left no-repeat; height:118px; border:1px solid #A5B2A7; border-radius: 8px; width:100%;}
.oneclick-subby-ad-right { width:160px; position:absolute; right:0; top:0; }
.oneclick-subby-ad-right .promo-tape { background:url(/cart/oneclick-subby/tape.jpg) center no-repeat; position:relative; margin:0 auto; font:bold 20px/normal Verdana, Geneva, sans-serif; color:#363618; width:139px; height:83px; }
.oneclick-subby-ad-right .promo-tape span { padding: 28px 0 0 0; text-align: center; display: block; }
.oneclick-subby-ad-right a { background:url(/cart/oneclick-subby/button-upgrade.png) bottom no-repeat; display:block; height:34px; width:138px; text-indent:-9999em; margin:3px auto 0; }
.oneclick-subby-ad-right a:hover { background-position:center; }
.oneclick-subby-ad-right a:active { background-position:top; }

/* Cart Promo Banner */
#cart-promo { position:relative; height:120px; border-radius: 8px; padding:0 10px 0 0; overflow:hidden; margin:0 15px 15px 15px;  }
#cart-promo a {display: block;}
/* one click subby promo modal */

#oneclick-subby-modal {
    width:480px;
}

#oneclick-subby-modal h3 {
    color: #2c3635;
    font: bold 27px "Trebuchet MS", sans-serif;
    margin-left: 110px;
    padding-top: 10px;
}
#oneclick-subby-modal .save-text {
    color: #597465;
    font: bold 16px "Trebuchet MS", sans-serif;
    margin-left: 110px;
    margin-top: 1px;
}

#oneclick-subby-modal .modal-header {
    height: 75px;
}

#oneclick-subby-modal .modal-iframe {
    height: 400px;
    overflow: hidden;
}

#oneclick-subby-modal #loading_iframe {
    text-align: center;
    font-weight: bold;
    font-size: 1.2em;
    padding-top: 25%;
    width: 100%;
}

#oneclick-subby-modal .modal-iframe iframe {
    border:0;
    width:100%;
    height:100%;
    z-index: 100;
    overflow: hidden;
}

/* Credit card billing address fields */

ul.wizardFields {
    list-style: none;
    margin: 0;
    padding: 0;
}
ul.wizardFields li {
    margin: 0 0 19px 0;
    padding: 0;
}
ul.wizardFields li.lastline {
    margin: 0;
}

ul.wizardFields li#billCountryContainer {
    margin-bottom: 15px;
}
ul.wizardFields li#billAddress1Container {
    margin-bottom: 7px;
}

#submit .wizardFields input#billZip {
    width: 90px;
}

#submit .wizardFields input#cardCCV {
    width: 100px;
}

ul.wizardFields li.error label {
    color: #a93736;
}

#submit ul.wizardFields li.error input {
    border: 1px #d95341 solid;
    background-color: #fcedeb;
}

ul.wizardFields li.error .error-msg {
    font: 11px "Verdana", sans-serif;
    color: #c58681;
    margin-left: 8px;
}
ul.wizardFields li.error .error-msg.giftcart {
    margin-left: 28%;
    display: block;
    color: #794B4B;
    margin-top: 10px;
}
ul.storedCardFields li textarea,
ul.storedCardFields li input {
    margin-left: 162px !important;
}

#submit .currency-container span.currency-button {
    width: 120px;
    font-size: 11px;
    float:right;
    margin: 10px 0 0 0;
    text-align: right;
}


#submit .multiShipTable .upDownButton {
    margin-left: 1px;
    width: 13px;
    height: 24px;
    float: left;
}

#submit .multiShipTable .upDownButton .up,
#submit .multiShipTable .upDownButton .down {
    display: block;
    width: 13px;
    height: 12px;
    background-position: 0 0;
}

#submit .multiShipTable .upDownButton .up:hover,
#submit .multiShipTable .upDownButton .down:hover {
    background-position: -13px 0;
}

#submit .multiShipTable .upDownButton .up:active,
#submit .multiShipTable .upDownButton .down:active {
    background-position: -26px 0;
}

#submit .multiShipTable .upDownButton .up {
    background-image: url("/cart/cart_updown_btn_up.png");
}

#submit .multiShipTable .upDownButton .down {
    background-image: url("/cart/cart_updown_btn_down.png");
}

#submit .multiShipTable .quantityInput {
    float: left;
}

#topOrderBeforeShipping .label,
#topOrderBeforeShipping .amount {
    font: bold 16px "Trebuchet MS", sans-serif;
    color: #52615d;
    padding-bottom: 5px;
}

#topOrderBeforeShipping .amount {
    width: 150px;
    color: black;
}
#topOrderSubtotal .label,
#topOrderSubtotal .amount {
    font: bold 24px "Trebuchet MS", sans-serif;
    color: #52615d;
}

#topOrderSubtotal .amount {
    color: black;
}

#topOrderDiscount {
    font: bold 12px Verdana, sans-serif;
    color: #b73e62;
}

#topOrderDiscount td {
    padding: 5px 0;
}

table.topOrderTotals {
    float: right;
    text-align: right;
    margin: 15px 0 5px;
}

table.topOrderTotals .pointsVal {
    display: inline-block;
    margin-right: 3px;
}

#submit .altview.collapsible .oddCart h3 {
    color: #6C6F4F;
}

#submit .altview.collapsible .oddCart h3 span.title {
    color: #343717;
}

.oddCart {
    background: #EBF1DC;
    border: 1px solid #A5B2A7;
    border-width: 1px 0;
    padding: 10px 0;
    margin-top: 10px;
}

.oddCart table.itemListTable .shippingRow {
    background: #E0E3C3;
}

.PromoCodeError {
    display: none;
}

.placeOrderButton {
    border-radius: 5px 5px 5px 5px;
}

.pendingNote {
    display: none;
}

#shipAndCheckout table.multiShipTable.cartfooterTable {
    margin-bottom: 0;
}

#shipAndCheckout table.multiShipTable .placeOrderRow td {
    padding-bottom: 10px;
}

#submit div.altview .placeOrderRow label.l {
    position: static;
}

#submit div.altview .placeOrderRow input#override_uniqueness {
    /* I swear this is moar important */
    margin-left: 5px !important;
}

#shipAndCheckout table.multiShipTable td.cartfootertext {
    padding-top: 8px;
}

#shipAndCheckout .cartfooterTable .right .labelLovesIE { /* <3 IE <3 */
    width: 400px;
    float: right;
    text-align: right;
}

#removedBubble h3 {
    margin-bottom: 5px;
    color: #5F050F;
    margin-top: 11px;
}

#submit #removedBubble table.multiShipTable span.itemRemove {
    position: static;
}

.collapsible span.shadow {
    padding: 8px 4px 5px;
}

/*** Thank you ***/

div.cartBubble {
    background: #d4dfd0 url(/cart/light_gradient.png) repeat-x;
    border-top: 1px #f0faf2 solid;
    padding: 7px 0;
}

.cartBubble h1 {
    font: bold 28px 'Trebuchet MS', sans-serif;
    color: black;
    text-align: center;
    margin-top: 30px;
    text-shadow: 0 1px #E9EFE8;
}

#cartCancel h1 {
    margin-top: 100px;
}

.cartBubble .orderMessage {
    font: bold 14px 'Trebuchet MS', sans-serif;
    color: #71897B;
    margin-top: 28px;
    text-align: center;
}

.cartBubble .cancelMessage {
    font: 15px Verdana, sans-serif;
    text-shadow: 0 1px #E3E6DD;
    color: #557665;
    margin-top: 28px;
    text-align: center;
}

.cartBubble .cancelButtons {
    width: 450px;
    padding-top: 18px;
    margin: auto;
    margin-top: 60px;
    border-top: 1px #bbc6b8 solid;
    box-shadow:inset 0 1px #e6f1e3;
}

.cartBubble .cancelButtons .smbutton img {
    position: relative;
    top: 3px;
}

.cancelButtons .backToFrontPage {
    padding: 5px 14px 10px 19px !important;
    float: right;
}

.cancelButtons .continueShopping {
    padding: 5px 19px 10px 14px !important;
    float: left;
}

.cancelButtons .continueShopping img {
    margin-right: 5px;
}

.cancelButtons .backToFrontPage img {
    margin-left: 5px;
}

.cartBubble .orderMessage strong {
    color: #2C3635;
}

.cartBubble .receiptArea {
    width: 600px;
    margin: 20px auto 40px;
}
.bubbleview.cartBubble .errorview {
    width: 600px;
    margin-left: auto;
    margin-right: auto;
}
.receiptArea .navigationButtons {
    height: 40px;
}

.navigationButtons .backToFrontPage.smbutton {
    height: 29px;
    line-height: 29px;
    padding: 0 10px !important;
}

.navigationButtons .continueShoppingArrow.smbutton {
    float: right;
    height: 29px;
    line-height: 29px;
    padding: 0 10px !important;
    position: relative;
    left: -14px;
    overflow: visible;
}

.ie.eq9 .smbutton .rightArrow {
    display: none;
}

.navigationButtons .continueShoppingArrow.smbutton:hover .rightArrow {
    background-position: 0 -30px;
}

.navigationButtons .continueShoppingArrow.smbutton:active .rightArrow {
    background-position: 0 -60px;
}

.continueShoppingArrow .rightArrow {
    background: url(/cart/arrow_right.png) repeat scroll 0 0 transparent;
    display: block;
    height: 30px;
    position: absolute;
    right: -14px;
    top: 0px;
    width: 16px;
}

.cartBubble .receipt {
    clear: left;
    box-shadow:3px 5px 5px -3px #A9A9A9, -3px 5px 5px -3px #A9A9A9;
    background: #fcfcfc;
    padding: 3px 38px 50px 38px;
    position: relative;

    & #deviantart-logo {
        width: 150px;
        height: 33px;
        
        .type .logotype {
            fill: black;
        }
    }
}

.cartBubble .topAngularBorder {
    height: 9px;
    position: relative;
    top: 9px;
    z-index: 101;
    background: #D3DFD1 url(/cart/trans-cut_top.png?1) repeat-x scroll -5px bottom;
}

.cartBubble .bottomAngularBorder {
    height: 5px;
    background: url(/cart/trans-cut_bottom.png?1) repeat-x scroll -5px top;
    position: relative;
    top: -2px;
}

.cartBubble .altview {
    margin: 0;
    padding: 16px;
    position: relative;
}

.cartBubble .printButton {
    position:absolute;
    right:20px;
    top:30px;
    text-decoration: none;
    color: #85888C;
    .linear-gradient(#F9F9F9, #F6F6F6);
    border: 1px #DFDFDF solid;
    border-radius: 4px;
    font: 14px 'Trebuchet MS', sans-serif;
    padding: 5px 14px 9px;
}

.cartBubble .printButton img {
    left: -4px;
    position: relative;
    top: 3px;
}

.cartBubble .altview.faq {
    background: #DEE8DC;
    width: 807px;
    margin: 0px auto 100px;
}

.cartBubble .altview h2 {
    color: black;
    font-size: 17px;
}

.cartBubble .order-status-link {
    width: 722px;
    text-align: left;
    margin: 30px auto 38px;
    min-height: 28px;
    line-height: 28px;
}

.cartBubble .order-status-link span {
    display: block;
    background: #C8D2C2 url(/cart/info_icon.png) no-repeat 13px 11px;
    color: #52615d;
    font: bold 13px Verdana, sans-serif;
    border-radius: 6px;
    padding: 13px 12px 13px 45px;
    text-shadow: 0 1px #e2e7de;
    line-height: 16px;
}

.cartBubble .order-status-link b {
    color: #2c3635;
}

.cartBubble .order-status-link a {
    color: #337287;
    text-transform: uppercase;
}

.cartBubble .faq .moreHelp {
    text-decoration: none;
    position: absolute;
    bottom: 10px;
    right: 10px;
    color: #43788c;
}

.cartBubble .faq .moreHelp img {
    position: relative;
    top: 1px;
}

.cartBubble .faq table {
    width: 100%;
}

.cartBubble .faq table th {
    font: bold 16px 'Trebuchet MS', sans-serif;
    text-align: left;
    border-bottom: 2px #B0C0B2 solid;
    padding-bottom: 4px;
}

.cartBubble .faq table ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.cartBubble .faq table ul li {
    padding: 5px 0;
}

.cartBubble .faq table a {
    text-decoration: none;
    color: #7c9181;
}
.cartBubble .faq table td a:hover {
    text-decoration: underline;
}

.cartBubble .faq table td,
.cartBubble .faq table th {
    width: 47%; /* 6%  width used by separator, 47% left for each col */
    border: none;
    vertical-align: top;
}
.cartBubble .faq table td.separator,
.cartBubble .faq table th.separator {
    width: 6%;
    border: none;
}

.itemListTable .priceTD .pointsicon,
tr.discount .pointsicon,
tr.total .pointsicon {
    float: right;
    margin: 0 0 0 5px;
}
/* Merged from #7570 */
#submit td.signupNewsletter {
    font-size: 8pt;
}

#submit div.signupNewsletter {
    margin-top: 3px;
    margin-bottom: 10px;
    padding: 5px;
}

#submit .pendingSubmit div.signupNewsletter {
    margin-top: 10px;
    margin-bottom: 15px;
}

div.signupNewsletter {
    background: #deeadf;
    color: #374645;
}

div#newBuyerDiv div.signupNewsletter {
    border-radius: 3px;
    margin: 20px 0 5px 162px;
    padding: 7px 10px;
    width: 380px;
}

div#newBuyerDiv div.signupNewsletter div.signupNewsletterCheckbox {
    float: left;
    min-height: 24pt;
    padding-right: 5px;
}

#submit div.altview div#newBuyerDiv div.signupNewsletter input {
    /* Oh good. Dueling !importants. */
    margin-left: 0 !important;
}

#submit div.altview div#newBuyerDiv div.signupNewsletter label.l {
    font-size: 8pt;
    font-weight: normal;
    margin: 0;
    position: static;
    text-align: left;
    width: auto;
}

.seven-year-subby {
    margin-top: 15px;
    margin-left: 5px;
}

.payment-processed-msg {
    &.giftsub {
        padding: 10px;
    }
}

/*
Margin underneath rendered header text: 10px Left & Right margins: 15px Margin above & below smaller "fedex is unable" type: 15px;

Table Zone Border color: ##c7d0d0 1px solid

Tinted border background: #f6f7f8 Table Header Text: #3a535c bold verdana 11px

Regular table text: #666666 regular verdana 11px

*/

.card-logos {
    .card-logo {
        display: inline-block;
        cursor: pointer;

        &:before {
            display: block;
            content: '';
        }
    }
}
.card-logos-tiny {
    .card-logo {
        border: 1px solid transparent;
        border-radius: 3px;
        padding: 1px;

        &:before {
            width: 28px;
            height: 19px;
            background: url(/cart/cc1.png) no-repeat;
        }
        &:hover:not(.card-logo-selected) {
            border-color: rgba(166, 166, 166, .4);
        }
    }
    .card-logo-selected {
        border-color: #a6a6a6;
    }
    .card-logo-visa:before {
        background-position: 0 0;
    }
    .card-logo-mastercard:before {
        background-position: -33px 0;
    }
    .card-logo-discover:before {
        background-position: -65px 0;
    }
    .card-logo-amex:before {
        background-position: -98px 0;
    }
}
.card-logos-medium {
    .card-logo {
        border: 2px solid transparent;
        border-radius: 6px;
        padding: 1px;

        &:before {
            width: 45px;
            height: 29px;
            background: url(/cart/cc3.png) no-repeat;
        }
        &:hover:not(.card-logo-selected) {
            border-color: rgba(197, 211, 193, 0.6);
        }
    }
    .card-logo-selected {
        border-color: #c5d3c1;
    }
    .card-logo-visa:before {
        background-position: 0 0;
    }
    .card-logo-mastercard:before {
        background-position: -51px 0;
    }
    .card-logo-discover:before {
        background-position: -102px 0;
    }
    .card-logo-amex:before {
        background-position: -154px 0;
    }
}

.card-logos-maincart {
    &.card-logos-cc {
        display: inline-block;
        vertical-align: middle;
    }
}

.card-logos-premium {
    &.card-logos-cc {
        display: inline-block;
        vertical-align: middle;
    }
}

#modalspace div.modal.modal-rounded.bunnyHouse.v4.with-cc-logos,
#bunnyHouse.with-cc-logos {
    .PaymentTabContent .cardType {
        width: 30%;
    }
}

div.why-bubble {
    position:absolute;
    top:0;
    left:0;
    z-index:122;
    background:#F8F8F8;
    border:2px solid #4A8293;
    padding:4px 6px;
    width:300px;
}

div.why-answer {
    padding-top:6px;
}


/* Helper mixins */
.colormixin(@color:false) when not (@color=false) {color: @color;}
.bgcolormixin(@color:false) when not (@color=false) {background-color: @color;}
.bordercolormixin(@color:false) when not (@color=false) {border-color: @color;}

.widthmixin(@width:false) when not (@width=false) {width: @width;}
.minwidthmixin(@width:false) when not (@width=false) {min-width: @width;}
.maxwidthmixin(@width:false) when not (@width=false) {max-width: @width;}

.heightmixin(@height:false) when not (@height=false) {height: @height;}
.minheightmixin(@height:false) when not (@height=false) {min-height: @height;}
.maxheightmixin(@height:false) when not (@height=false) {max-height: @height;}

/* Helper variable for retina media queries */
@retina : ~"(-webkit-min-device-pixel-ratio: 2), (min--moz-device-pixel-ratio: 2), (min-device-pixel-ratio: 2), (min-resolution: 2dppx), (min-resolution: 192dpi)";

/*
 * helper function for .linear-gradient
 * @encode - string of svg xml
 */
.base64DataUriBackground (@encode, @type: ~"image/svg+xml") {
    @dataUriPrefix: ~"url(data:@{type};base64,";
    @dataUriSuffix: ~")";
 
    // because our lessc doesn't give access to btoa()
    // we have to make our own
    @b64DataUri: ~`(function(a,b,c){function e(a){a=a.replace(/\r\n/g,'\n');var b='';for(var c=0;c<a.length;c++){var d=a.charCodeAt(c);if(d<128){b+=String.fromCharCode(d)}else if(d>127&&d<2048){b+=String.fromCharCode(d>>6|192);b+=String.fromCharCode(d&63|128)}else{b+=String.fromCharCode(d>>12|224);b+=String.fromCharCode(d>>6&63|128);b+=String.fromCharCode(d&63|128)}}return b}function f(a){var b='';var c,f,g,h,i,j,l;var m=0;a=e(a);while(m<a.length){c=a.charCodeAt(m++);f=a.charCodeAt(m++);g=a.charCodeAt(m++);h=c>>2;i=(c&3)<<4|f>>4;j=(f&15)<<2|g>>6;l=g&63;if(isNaN(f)){j=l=64}else if(isNaN(g)){l=64}b=b+d.charAt(h)+d.charAt(i)+d.charAt(j)+d.charAt(l)}return b}var d='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';return a+f(b)+c})('@{dataUriPrefix}','@{encode}','@{dataUriSuffix}')`;
 
    background: @b64DataUri;
}

/*
 * @angle - 1st param (eg 45deg, top, to left bottom)
 * @legacy_color - Color if no gradient at all is available
 * @ie_gradient_type - 0 (vertical) or 1 (horizontal).  If anybody wants to write a filter to deduce this 
 *                     angle, have at it
 */
.linear-gradient(@start_color, @end_color) {
    .linear-gradient(top, @start_color, @end_color, @start_color);
}
.linear-gradient(@angle, @start_color, @end_color) {
    .linear-gradient(@angle, @start_color, @end_color, @start_color);
}
.linear-gradient(@angle, @start_color, @end_color, @legacy_color: @start_color, @ie_gradient_type: 0) {
    @svg: ~'<?xml version="1.0" ?><svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 1 1" preserveAspectRatio="none"><linearGradient id="grad-ucgg-generated" gradientUnits="userSpaceOnUse" x1="0%" y1="0%" x2="0%" y2="100%"><stop offset="0%" stop-color="@{start_color}" stop-opacity="1"/><stop offset="100%" stop-color="@{end_color}" stop-opacity="1"/></linearGradient><rect x="0" y="0" width="1" height="1" fill="url(#grad-ucgg-generated)" /></svg>';
 
    
    /* base background */
    background: @legacy_color;
    
    /* IE9 you so special */
    .ie.eq9 & {
        .base64DataUriBackground(@svg);
    }
    /* IE8 is the bad kind of special */
    .ie.lt9 & {
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='@{start_color}', endColorstr='@{end_color}',GradientType=@ie_gradient_type );
    }
    
    /* hooray modern browsers */
    background: -webkit-linear-gradient(@angle, @start_color, @end_color);
    background: -moz-linear-gradient(@angle, @start_color, @end_color);
    background: linear-gradient(@angle, @start_color, @end_color);
}

.linear-gradient-stops(@angle, @legacy_start_color, @legacy_end_color, @legacy_color, @rest...) 
{
    @svg: ~'<?xml version="1.0" ?><svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 1 1" preserveAspectRatio="none"><linearGradient id="grad-ucgg-generated" gradientUnits="userSpaceOnUse" x1="0%" y1="0%" x2="0%" y2="100%"><stop offset="0%" stop-color="@{legacy_start_color}" stop-opacity="1"/><stop offset="100%" stop-color="@{legacy_end_color}" stop-opacity="1"/></linearGradient><rect x="0" y="0" width="1" height="1" fill="url(#grad-ucgg-generated)" /></svg>';
 
    
    /* base background */
    background: @legacy_color;
    
    /* IE9 you so special */
    .ie.eq9 & {
        .base64DataUriBackground(@svg);
    }
    /* IE8 is the bad kind of special */
    .ie.lt9 & {
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='@{legacy_start_color}', endColorstr='@{legacy_end_color}',GradientType=0 );
    }
    
    /* hooray modern browsers */
    background: -webkit-linear-gradient(@angle, @rest);
    background: -moz-linear-gradient(@angle, @rest);
    background: linear-gradient(@angle, @rest);
}

/*
 * This is not compatible with IE8, don't use it if you have to support old IE
 * 
 * @lhs - Left hand side (height, width, whatever)
 * @rhs - Right hand side, whatever your calculation is.  You probably need a ~
 *
 * Example: .calc(height, ~"100% - 50px")
 *
 * Note, using a guard because less doesn't seem to like using a variable for lhs
 * Annoying, but don't know what else to do
 *
 * http://caniuse.com/calc
 */
.calc(@lhs, @rhs) when (@lhs = width) {
    width: -webkit-calc(@rhs);
    width: calc(@rhs);
}
.calc(@lhs, @rhs) when (@lhs = height) {
    height: -webkit-calc(@rhs);
    height: calc(@rhs);
}
.calc(@lhs, @rhs) when (@lhs = left) {
    left: -webkit-calc(@rhs);
    left: calc(@rhs);
}
.calc(@lhs, @rhs) when (@lhs = right) {
    right: -webkit-calc(@rhs);
    right: calc(@rhs);
}
.calc(@lhs, @rhs) when (@lhs = top) {
    top: -webkit-calc(@rhs);
    top: calc(@rhs);
}
.calc(@lhs, @rhs) when (@lhs = bottom) {
    bottom: -webkit-calc(@rhs);
    bottom: calc(@rhs);
}
.calc(@lhs, @rhs) when (@lhs = min-width) {
    min-width: -webkit-calc(@rhs);
    min-width: calc(@rhs);
}
.calc(@lhs, @rhs) when (@lhs = max-width) {
    max-width: -webkit-calc(@rhs);
    max-width: calc(@rhs);
}
.calc(@lhs, @rhs) when (@lhs = min-height) {
    min-height: -webkit-calc(@rhs);
    min-height: calc(@rhs);
}
.calc(@lhs, @rhs) when (@lhs = max-height) {
    max-height: -webkit-calc(@rhs);
    max-height: calc(@rhs);
}


/*
 * Not compatible with IE8 or IE9 (nothing breaks, they just don't get transitions)
 */
.transition(@arg) {
    -moz-transition: @arg;
    -webkit-transition: @arg;
    transition: @arg;
}

.transition(@transition, @duration, @timingFunction: ease-in-out ) when (@transition = transform) {
    -webkit-transition: -webkit-transform @duration @timingFunction;
    -moz-transition: -moz-transform @duration @timingFunction;
    -ms-transition: -ms-transform @duration @timingFunction;
    transition: transform @duration @timingFunction;
}

.animation (@name, @duration: 300ms, @delay: 0, @ease: ease, @iterationCount: 1) {
    -webkit-animation: @name @duration @delay @ease;
    -moz-animation:    @name @duration @delay @ease;
    -ms-animation:     @name @duration @delay @ease;
    animation-iteration-count: @iterationCount;
    -webkit-animation-iteration-count: @iterationCount;
    -moz-animation-iteration-count: @iterationCount;
}

.transition-delay(@arg) {
    -webkit-transition-delay: @arg;
    -moz-transition-delay: @arg;
    -o-transition-delay: @arg;
    transition-delay: @arg;
}

/*
 * Not supported in <=IE8
 */
.transform(@arg) {
    -ms-transform: @arg;
    -webkit-transform: @arg;
    transform: @arg;
}

.transform-scale(@arg) {
    -ms-zoom: @arg;
    -ms-transform: scale(@arg);
    -webkit-transform: scale(@arg);
    transform: scale(@arg);
}

.transform-origin(@arg) {
    -ms-transform-origin: @arg;
    -moz-transform-origin: @arg;
    -webkit-transform-origin: @arg;
    transform-origin: @arg;
}

.box-sizing(@arg) {
    -moz-box-sizing: @arg;
    -webkit-box-sizing: @arg;
    box-sizing: @arg;
}

.filter(@arg) {
    -ms-filter: @arg;
    -moz-filter: @arg;
    -webkit-filter: @arg;
    filter: @arg;
}

.user-select(@arg) {
    -ms-user-select: @arg;
    -moz-user-select: @arg;
    -webkit-user-select: @arg;
    user-select: @arg;
}

.backface-visibility(@arg) {
    -webkit-backface-visibility: @arg;
    backface-visibility: @arg;
}

.perspective(@arg) {
    -webkit-perspective: @arg;
    perspective: @arg;
}

.cursor-zoom-in(@arg) {
    cursor: @arg;
    cursor: -webkit-zoom-in;
    cursor: -moz-zoom-in;
}

.cursor-zoom-out(@arg) {
    cursor: @arg;
    cursor: -webkit-zoom-out;
    cursor: -moz-zoom-out;
}

.appearance(@arg) {
    -webkit-appearance: @arg;
    -moz-appearance: @arg;
}

.text-size-adjust(@arg) {
    -webkit-text-size-adjust: @arg;
    -moz-text-size-adjust: @arg;
    -ms-text-size-adjust: @arg;
}

/* 
 *  Make something spin for infinite time, one rotation per @interval 
 *  example: .spin(3000ms)
*/
.spin(@interval) {
    -webkit-animation-name: spin;
    -webkit-animation-duration: @interval;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    -moz-animation-name: spin;
    -moz-animation-duration: @interval;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -ms-animation-name: spin;
    -ms-animation-duration: @interval;
    -ms-animation-iteration-count: infinite;
    -ms-animation-timing-function: linear;
    animation-name: spin;
    animation-duration: @interval;
    animation-iteration-count: infinite;
    animation-timing-function: linear;

    @-ms-keyframes spin {
        from { -ms-transform: rotate(0deg); }
        to { -ms-transform: rotate(360deg); }
    }
    @-moz-keyframes spin {
        from { -moz-transform: rotate(0deg); }
        to { -moz-transform: rotate(360deg); }
    }
    @-webkit-keyframes spin {
        from { -webkit-transform: rotate(0deg); }
        to { -webkit-transform: rotate(360deg); }
    }
    @keyframes spin {
        from { transform:rotate(0deg); }
        to { transform:rotate(360deg); }
    }
}

/*
 * CSS3 multi-column layout.
 * Won't do anything for IE8 or 9.
 */
.column-count(@arg) {
    -moz-column-count: @arg;
    -webkit-column-count: @arg;
    column-count: @arg;
}
.column-width(@arg) {
    -moz-column-width: @arg;
    -webkit-column-width: @arg;
    column-width: @arg;
}
.column-gap(@arg) {
    -moz-column-gap: @arg;
    -webkit-column-gap: @arg;
    column-gap: @arg;
}
.column-rule(@arg) {
    -moz-column-rule: @arg;
    -webkit-column-rule: @arg;
    column-rule: @arg;
}

/*
 * Input placeholder text
 */
.placeholder-font-style(@style){
    &::-webkit-input-placeholder {
        font-style: @style;
    }
    &:-moz-placeholder {
        font-style: @style;
    }
    &::-moz-placeholder {
        font-style: @style;
    }
    &:-ms-input-placeholder {
        font-style: @style;
    }
}
.placeholder-color(@color: false, @bgcolor: false, @bordercolor: false){
    &::-webkit-input-placeholder {
        .colormixin(@color);
        .bgcolormixin(@bgcolor);
        .bordercolormixin(@bordercolor);
    }
    &:-moz-placeholder {
        .colormixin(@color);
        .bgcolormixin(@bgcolor);
        .bordercolormixin(@bordercolor);
    }
    &::-moz-placeholder {
        .colormixin(@color);
        .bgcolormixin(@bgcolor);
        .bordercolormixin(@bordercolor);
    }
    &:-ms-input-placeholder {
        .colormixin(@color);
        .bgcolormixin(@bgcolor);
        .bordercolormixin(@bordercolor);
    }
}

/* Full-screen mixin */
.full-screen-width(@width: false, @minwidth: false, @maxwidth: false) {
    &:-webkit-full-screen {
        .widthmixin(@width);
        .minwidthmixin(@minwidth);
        .maxwidthmixin(@maxwidth);
    }
    &:-moz-full-screen {
        .widthmixin(@width);
        .minwidthmixin(@minwidth);
        .maxwidthmixin(@maxwidth);
    }
    &:-ms-full-screen {
        .widthmixin(@width);
        .minwidthmixin(@minwidth);
        .maxwidthmixin(@maxwidth);
    }
    &:-o-full-screen {
        .widthmixin(@width);
        .minwidthmixin(@minwidth);
        .maxwidthmixin(@maxwidth);
    }
    &:full-screen {
        .widthmixin(@width);
        .minwidthmixin(@minwidth);
        .maxwidthmixin(@maxwidth);
    }
}
.full-screen-height(@height: false, @minheight: false, @maxheight: false) {
    &:-webkit-full-screen {
        .heightmixin(@height);
        .minheightmixin(@minheight);
        .maxheightmixin(@maxheight);
    }
    &:-moz-full-screen {
        .heightmixin(@height);
        .minheightmixin(@minheight);
        .maxheightmixin(@maxheight);
    }
    &:-ms-full-screen {
        .heightmixin(@height);
        .minheightmixin(@minheight);
        .maxheightmixin(@maxheight);
    }
    &:-o-full-screen {
        .heightmixin(@height);
        .minheightmixin(@minheight);
        .maxheightmixin(@maxheight);
    }
    &:full-screen {
        .heightmixin(@height);
        .minheightmixin(@minheight);
        .maxheightmixin(@maxheight);
    }
}

/* Text hyphenation */
.hyphenate(@style:auto) {
    -webkit-hyphens:@style;
       -moz-hyphens:@style;
        -ms-hyphens:@style;
            hyphens:@style;
}

.clearfix() {
    zoom:1;
    &:before, &:after{ 
        content:""; 
        display:table; 
    }
    &:after{ 
        clear: both; 
    }
}

.font-smoothing(@value: antialiased) when(@value = antialiased) {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.font-smoothing(@value) when (@value = subpixel) {
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: auto;
}

.font-default(@font-size: 14px, @line-height: 1.2, @font-weight: 300) {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: @font-size;
    line-height: @line-height;
    font-weight: @font-weight;
}

.font-face-calibre() {
    @font-face {
    font-family: 'Calibre-Bold';
        src: url('//st.deviantart.net/fonts/calibre-bold.otf') format('opentype');
        font-weight: normal;
        font-style: normal;
    }
    @font-face {
    font-family: 'Calibre-Semibold';
        src: url('//st.deviantart.net/fonts/calibre-semibold.otf') format('opentype');
        font-weight: normal;
        font-style: normal;
    }

    @font-face {
    font-family: 'Calibre-Light';
        src: url('//st.deviantart.net/fonts/calibre-light.otf') format('opentype');
        font-weight: normal;
        font-style: normal;
    }
}

.font-heading-bold(@font-size: 40px, @line-height: 1, @font-weight: 300) {
    font-family: 'Calibre-Bold';
    line-height: @line-height;
    font-weight: @font-weight;
    font-size: @font-size;
}

.flexbox() {
    /* order is important here */
    display: -webkit-box;      /* OLD - iOS <6, Safari 3.1-6 */
    display: -moz-box;         /* OLD - Firefox <19 */
    display: -ms-flexbox;      /* TWEENER - IE 10 */
    display: -webkit-flex;     /* NEW - Chrome */
    display: flex;             /* NEW, Opera 12.1, Firefox >20 */
}

.flex() {
    .flexbox();

    /* but not here */
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-direction: row;
    -webkit-flex-direction:row;
    -moz-flex-direction:row;
    justify-content: flex-start;
    -webkit-justify-content:flex-start;
    -moz-justify-content:flex-start;
}
.flex-sizing(@size:1) {
    flex-grow: @size;
    -ms-flex-grow: @size;
    -moz-flex-grow: @size;
    -webkit-flex-grow:@size;
    flex-shrink: @size;
    -ms-flex-shrink: @size;
    -moz-flex-shrink: @size;
    -webkit-flex-shrink: @size;
}
.flex-center() {
    -webkit-box-pack: center; /* OLD - iOS <6, Safari 3.1-6 */
    -webkit-box-align: center;
    -moz-box-pack: center; /* OLD - Firefox <19 */
    -moz-box-align: center;
    -ms-flex-pack: center; /* TWEENER - IE 10 */
    -ms-flex-align: center;
    -webkit-justify-content: center; /* NEW - Chrome, Safari */
    -webkit-align-items: center;
    justify-content: center; /* NEW, Opera 12.1, Firefox >20 */
    align-items: center; 
}

.flexbox-inline() {
    display: -ms-inline-flex;
    display: -webkit-inline-flex;
    display: inline-flex;
}
.flex-direction(@value: row) {
    -webkit-flex-direction: @value;
    -ms-flex-direction: @value;
    flex-direction: @value;
}
.flex-grow(@value: 0) {
    -webkit-flex-grow: @value;
    -ms-flex-grow: @value;
    flex-grow: @value;
}
.flex-shrink(@value: 1) {
    -webkit-flex-shrink: @value;
    -ms-flex-shrink: @value;
    flex-shrink: @value;
}
.flex-justify(@value: flex-start) {
    -webkit-justify-content: @value;
    -ms-justify-content: @value;
    justify-content: @value;
}
.flex-align(@value: stretch) {
    -webkit-align-items: @value;
    -ms-align-items: @value;
    align-items: @value;
}
.flex-align-self(@value: auto) {
    -webkit-align-self: @value;
    -ms-align-self: @value;
    align-self: @value;
}
.flex-wrap(@value: wrap) {
    -webkit-flex-wrap: @value;
    -ms-flex-wrap: @value;
    flex-wrap: @value;
}
.fit(@margin:0) {
    position: absolute;
    top: @margin;
    right: @margin;
    bottom: @margin;
    left: @margin;
}

.fit-fixed(@margin:0) {
    position: fixed;
    top: @margin;
    right: @margin;
    bottom: @margin;
    left: @margin;
}

.transition-cubic-bezier(@property: all, @duration: 0.2s) {
    .transition(@property @duration cubic-bezier(0, 0, 0.58, 1));
}

/*
 * Push lately to have greyscale interfaces.
 * UI likes to think in terms of % grey, so they make mocks with
 * rgba(0,0,0, .74) for 74% grey.
 * This style uses more css room, requires more processing cycles from the browser's paint, and is dangerous
 * if underlying element is ever changed to something other than white.
 *
 * Now you can just do .foo { .grey(74%); color:@grey; }
 */

.grey(@percentage) {
    @grey: darken(#fff, 100% - @percentage);
}


/* Old brand colors */
.brandcolors() {
    @primary-green: #0FCC47;
    @primary-teal: #41CFC7;
    @primary-orange: #F75908;
    @primary-magenta: #ED145A;
    @primary-lightgreen: #BDD023;
    @primary-darkgreen: #026D20;

    @grey1: #111;
    @grey2: #242626;
    @grey3: #2F3131;
    @grey4: #323232;
    @grey5: #363636;
    @grey6: #474747;
    @grey7: #555;
    @grey8: #575757;
    @grey9: #666;
    @grey10: #6F6F6F;
    @grey11: #727272;
    @grey12: #828282;
    @grey13: #999;
    @grey14: #909090;
    @grey15: #CBCBCB;
    @pale-grey: #F2F2F2;

    @black-alpha1: rgba(0,0,0,0.5);
    @black-alpha2: rgba(0,0,0,0.2);

    @white-alpha1: rgba(0,0,0,0.8);
    @white-alpha2: rgba(0,0,0,0.5);
    @white-alpha3: rgba(0,0,0,0.3);
    @white-alpha4: rgba(0,0,0,0.2);
    @white-alpha5: rgba(0,0,0,0.1);
    @white-alpha6: rgba(0,0,0,0.07);

    @list-level-0: #19252C;
    @list-level-1: #273943;
    @list-level-2: #324855;
    @list-level-3: #455C69;
}

/* New brand colors */
.11-14-brandcolors() {
    /* Used by the header */
    @brand-green: #05CC47;
    @header-green: #475C4D;
    @dark-header-green: #46584A;
    @border-green: #38463B;
    @subheader-green: #3D4F42;
    @submit-green: #5FAC75;
    @menu-grey: #313836;
    @hover-blue: #508FA3;

    /* Colors from the brand guidelines */

    @black: #000;
    @grey1: #181A1B;
    @grey2: #4F5254;
    @grey3: #7D8080;
    @grey4: #F2F2F2;
    @white: #FFF;
    @darker-grey: #181A1B;
    @pale-grey: #F2F2F2;


    @blue1: #1F3833;
    @blue2: #36807A;
    @blue3: #40CFC7;
    @blue4: #D4F5F2;

    @green1: #1F3626;
    @green2: #42704F;
    @green3: #4DC47D;
    @green4: #D4F5DE;

    @orange: #F7590A;
    @accent-orange: darken(@orange, 10%);
}


