/* -----------------------------------------------------
 * Layout settings
 * ----------------------------------------------------- */
/* -----------------------------------------------------
 * App-wide specs: colors, dimensions, etc.
 * Controller- and page-specific variables should be declared in
 * the controller-specific SASS stylesheet.
 * ----------------------------------------------------- */
/*
 * Utopia-specific SASS variables and mixins.
 */
/* Page layouts
 */
/* -----------------------------------------------------
 * Grids
 *
 * Programmatically generate the widths of elements that
 * belong in the grid.
 *
 * Usage:
 *
 * .container
 *   @include row
 *   .primary
 *     @include col(8)
 *     @include internal-margin
 *   .secondary
 *     @include col(4)
 *     @include last
 * .container
 *   @include row
 *   .tertiary
 *     @prepend(4)
 *     @include(4)
 *     @append(4)
 *
 * Inspired by:
 *   http://bjorkoy.com/2010/05/css-grids-with-sass/
 * ----------------------------------------------------- */
/* math magic */
/* create row div */
/* create a column div */
/* make an element span n columns */
/* the first and last columns in a row needs these */
/* prepend n blank columns */
/* append n blank columns */
/*
 * Book display styles.
 */
.tax-info {
  font-size: 12px;
  line-height: 1.38em;
}

/*
 * Utopia-specific SASS variables and mixins.
 */
/* Page layouts
 */
/* -----------------------------------------------------
 * Grids
 *
 * Programmatically generate the widths of elements that
 * belong in the grid.
 *
 * Usage:
 *
 * .container
 *   @include row
 *   .primary
 *     @include col(8)
 *     @include internal-margin
 *   .secondary
 *     @include col(4)
 *     @include last
 * .container
 *   @include row
 *   .tertiary
 *     @prepend(4)
 *     @include(4)
 *     @append(4)
 *
 * Inspired by:
 *   http://bjorkoy.com/2010/05/css-grids-with-sass/
 * ----------------------------------------------------- */
/* math magic */
/* create row div */
/* create a column div */
/* make an element span n columns */
/* the first and last columns in a row needs these */
/* prepend n blank columns */
/* append n blank columns */
/*
 * Book display styles.
 */
.blurb form div {
  margin: 0;
}
.blurb td {
  vertical-align: middle;
}
.blurb .main {
  width: 710px;
  padding: 0 20px;
  float: left;
}

#cart_box {
  width: 748px;
  border: 0;
}

#cart_table {
  width: 730px;
}
#cart_table th {
  text-transform: uppercase;
  padding: 0;
  margin: 0;
}
#cart_table th.products {
  width: 350px;
}
#cart_table th.format {
  width: 210px;
}
#cart_table th.qty {
  width: 35px;
}
#cart_table th.price {
  width: 80px;
  text-align: right;
}
#cart_table th.separator div.rule {
  border-bottom: 2px groove black;
  height: 10px;
  margin-bottom: 20px;
}
#cart_table td.separator div.rule {
  border-bottom: 2px groove black;
  height: 15px;
  margin-bottom: 20px;
}
#cart_table ul.format_options {
  padding-bottom: 10px;
}

#cart_table .ebook-line-item img {
  float: left;
  margin-right: 15px;
}

/* products */
.ie #cart_table td.product_cell {
  width: 500px;
}

#cart_table td {
  vertical-align: top;
}
#cart_table td a {
  color: #00ace5;
}
#cart_table td.format_qty_cell a {
  font-weight: normal;
  text-transform: uppercase;
}
#cart_table td.product_cell {
  width: 380px;
}
#cart_table td.product_cell > a {
  float: left;
}
#cart_table td.product_cell .book_title {
  font: normal 1.5em/1.2 Georgia, serif;
  font-size: 18px;
  padding: 0 0 10px 0;
  word-wrap: break-word;
}
#cart_table td.product_cell .book_author, #cart_table td.product_cell .book_user {
  font-size: 0.9em;
  font-family: "Georgia", serif;
}
#cart_table td.product_cell .book_meta {
  font-size: 0.85em;
  color: #aaaaaa;
  margin-top: 15px;
}
#cart_table td .warning_title {
  font-weight: bold;
}
#cart_table td.format_qty_cell input.format_qty {
  width: 80px;
  text-align: center;
}
#cart_table td.format_price {
  text-align: right;
  font-weight: bold;
}
#cart_table td ul.format_options li {
  font-size: 0.9em;
  margin: 0;
}
#cart_table td.volume_discounts {
  padding: 10px;
  background-color: #f9f4e4;
}
#cart_table td.volume_discounts div.volume_discount_title {
  font-weight: bold;
  text-transform: uppercase;
}
#cart_table td.volume_discounts div.volume_discount_message {
  font-weight: bold;
}

.page-carts-cart #cart_table p.book_meta {
  color: #6d6d6d;
}

#sideBarModule {
  margin-right: 20px;
  float: right !important;
}

/* footer row */
#subtotal_table {
  width: 100%;
}
#subtotal_table td {
  padding: 0.23em;
  font-weight: bold;
}
@media (max-width: 460px) {
  #subtotal_table td {
    max-width: 40vw;
  }
}
#subtotal_table td.space {
  border: none;
  min-width: 160px;
  width: 350px;
}
#subtotal_table td.final_subtotal {
  font-size: 18px;
  text-align: right;
  min-width: 280px;
}
#subtotal_table td.final_subtotal_msg {
  text-align: right;
  line-height: 1em;
  padding-left: 0.77em;
}
#subtotal_table td.final_subtotal_msg.responsive_modifier {
  border-top: 1px solid;
  padding-left: 4.5px;
}
#subtotal_table td.final_subtotal--responsive {
  border-top: 1px solid;
}
#subtotal_table td.subtotal_msg, #subtotal_table td.subtotal {
  font-size: 1em;
  line-height: 1.69em;
  text-align: right;
}
#subtotal_table td div {
  text-align: right;
}
#subtotal_table td div.regular_subtotal_msg_title-responsive, #subtotal_table td div.final_subtotal--descriptions, #subtotal_table td div.subtotal_msg_title-responsive, #subtotal_table td div.tax_msg_title {
  text-align: left;
}
#subtotal_table td.regular_subtotal--price {
  font-weight: 500;
  text-align: right;
}
#subtotal_table tr.vat--responsive td {
  font-weight: 500;
}
#subtotal_table tr:first-child .final_subtotal_msg, #subtotal_table tr:first-child .final_subtotal--responsive {
  border-top: none;
}
#subtotal_table .total_before_vat td.subtotal_msg, #subtotal_table .total_before_vat td.subtotal {
  border-bottom: 1px dotted #999999;
}
#subtotal_table .vat td.subtotal_msg, #subtotal_table .vat td.subtotal {
  border-bottom: 1px solid #999999;
}

#cart_buttons {
  margin: 12px 8px;
  font-size: 1.3em;
}
#cart_buttons #continue_shopping {
  max-width: 212px;
  float: left;
  margin-top: 12px;
}
#cart_buttons #continue_shopping a {
  color: #00ace5;
}
#cart_buttons #update_and_checkout_wrap {
  max-width: 552px;
  float: right;
}
#cart_buttons #update_and_checkout_wrap #update_quantity {
  float: left;
  margin-left: 10px;
  margin-right: 14px;
}
@media (min-width: 851px) {
  #cart_buttons #update_and_checkout_wrap #update_quantity {
    margin-right: 10px;
    margin-left: 6px;
  }
}
#cart_buttons #update_and_checkout_wrap #update_quantity input {
  padding-left: 0;
  padding-right: 0;
  text-shadow: 0 -1px black;
  background-image: -moz-linear-gradient(top, #787878, #3a3a3a);
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #787878), color-stop(1, #3a3a3a));
  color: white;
  min-width: 230px;
}
#cart_buttons #update_and_checkout_wrap #checkout_button {
  float: right;
}
#cart_buttons #update_and_checkout_wrap #checkout_button input {
  background-image: -moz-linear-gradient(top, #ff9b3d, #fd7a00);
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #ff9b3d), color-stop(1, #fd7a00));
  text-shadow: 0 -1px 0 #da5d01;
  border: 1px solid #fd7820;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
  box-shadow: 0 1px 2px black;
  min-width: 230px;
}
#cart_buttons #update_and_checkout_wrap #checkout_button input:hover {
  text-shadow: 0 -1px 0 #006085;
  border: 1px solid #00adef;
  color: #eeeeee;
  background-image: -moz-linear-gradient(top, #00adef, #008dc3);
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #00adef), color-stop(1, #008dc3));
}

#shopping-cart-header {
  font-size: 1.3em;
  padding: 10px 0 10px 7px;
  text-transform: uppercase;
  color: #aaaaaa;
}

.blurb .carts_layout {
  margin-top: 10px;
}
.blurb .carts_layout .notification-div {
  clear: both;
  text-transform: none;
  padding: 15px 8px 15px 40px;
  border: 1px solid #fcaf15;
  border-radius: 5px;
  margin-bottom: 10px;
  background: url("/images/icons/note.png") no-repeat left center;
}

#exit-button a {
  position: absolute;
  top: 10px;
  right: 20px;
  font-size: 1.8em;
  color: gray;
}
#exit-button a:hover {
  color: #45bbff;
}

#cart-message {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  background-color: rgba(64, 64, 64, 0.8);
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(74, 74, 74, 0.95)), color-stop(100%, rgba(33, 33, 33, 0.95)));
  background-image: -webkit-linear-gradient(top, rgba(74, 74, 74, 0.95), rgba(33, 33, 33, 0.95));
  background-image: -moz-linear-gradient(top, rgba(74, 74, 74, 0.95), rgba(33, 33, 33, 0.95));
  background-image: -o-linear-gradient(top, rgba(74, 74, 74, 0.95), rgba(33, 33, 33, 0.95));
  background-image: linear-gradient(top, rgba(74, 74, 74, 0.95), rgba(33, 33, 33, 0.95));
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.4);
  width: 750px;
  min-height: 80px;
  padding: 12px 18px;
  position: absolute;
  top: 0;
  right: 55px;
  z-index: 12;
  border-radius: 0 0 9px 9px;
  display: none;
  color: white;
  font-size: 16px;
}
#cart-message h2 {
  color: white;
  font-size: 1em;
  padding: 5px;
}
#cart-message #message-content {
  color: #d0d2d3;
  font-size: 1.4em;
  line-height: 1.4em;
  font-family: "ARSMaquettePro", "News Gothic MT", sans-serif;
  display: inline;
}
#cart-message .button a {
  display: block;
  font-family: "ARSMaquettePro", "News Gothic MT", sans-serif;
  float: right;
  margin-top: 10px;
  padding: 10px 18px;
  background-color: #fd7820;
  color: white;
  min-width: 220px;
  text-align: center;
  white-space: nowrap;
  border: 1px solid #fd7820;
  border-radius: 5px;
  box-shadow: 0 1px 2px black;
  font-size: 1.4em;
  font-weight: 700;
  text-shadow: 0 -1px 0 #da5d01;
  background-image: -moz-linear-gradient(top, #ff9b3d, #fd7a00);
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #ff9b3d), color-stop(1, #fd7a00));
}
#cart-message .button a:hover {
  text-shadow: 0 -1px 0 #006085;
  border: 1px solid #00adef;
  color: #eeeeee;
  background-image: -moz-linear-gradient(top, #00adef, #008dc3);
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #00adef), color-stop(1, #008dc3));
}

#shopping-cart-popup #cart_table {
  margin: 0 0 0 5px;
}
#shopping-cart-popup #cart_table th {
  color: #999999;
  font-weight: normal;
}
#shopping-cart-popup #cart_table td ul.format_options {
  float: left;
}
#shopping-cart-popup #cart_table td ul.format_options li {
  width: 200px;
  padding: 0;
  color: #aaaaaa;
  float: left;
}
#shopping-cart-popup .format_name h4 {
  color: white;
}
#shopping-cart-popup #notification-div {
  padding-bottom: 15px;
}

.line-item-qty input.cart_input {
  background-color: transparent;
  border: none;
}

.tax-info {
  padding: 0.54px 0 0.77em;
  text-align: center;
  color: #6d6d6d;
  clear: both;
}

.msg-container--center_wrapper {
  text-align: center;
}

.small-notice--msg__container {
  margin-top: 2px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 420px) {
  .small-notice--msg__container {
    width: 420px;
  }
}
@media (min-width: 851px) {
  .small-notice--msg__container {
    width: 100%;
  }
}

@media (min-width: 851px) {
  .cart-message-non-overlay .empty {
    width: 29vw;
  }
  .cart-message-non-overlay .empty.discount-present {
    width: 35vw;
  }
}
@media (min-width: 961px) {
  .cart-message-non-overlay .empty {
    width: 22vw;
  }
  .cart-message-non-overlay .empty.discount-present {
    width: 26vw;
  }
}
@media (min-width: 1013px) {
  .cart-message-non-overlay .empty.discount-present {
    width: 22vw;
  }
}
@media (min-width: 1242px) {
  .cart-message-non-overlay .empty {
    width: 294px;
  }
  .cart-message-non-overlay .empty.discount-present {
    width: 330px;
  }
}
.cart-message-non-overlay .update-quantity, .cart-message-non-overlay .update-quantity-button {
  margin-left: -2px;
}
.cart-message-non-overlay .update_quantity-button, .cart-message-non-overlay .checkout_button {
  width: 225px;
}
.cart-message-non-overlay #update_and_checkout_wrap {
  margin-left: -6px;
}

.final_subtotal--discounted-price, .subtotal_msg_title-responsive {
  font-size: 18px;
}

.subtotal_msg_title-responsive {
  min-width: 315px;
}

.subtotal--discount_wrapper {
  font-size: 15px;
  font-weight: bold;
  color: #fe784e;
}

.regular_subtotal_msg_title-responsive, .regular_subtotal, .small-notice--msg, .final_subtotal--descriptions, .small-notice--msg {
  font-weight: 500;
}

.small-notice--msg {
  color: #9b9fa1;
  font-size: 13px;
  text-align: center;
}

.empty {
  display: none;
  margin: 0;
  width: 280px;
}
@media (min-width: 851px) {
  .empty {
    display: block;
  }
}
.empty.discount-present {
  width: 315px;
}

.meta-wrapper {
  display: inline-block;
  margin-left: 7px;
  vertical-align: top;
  width: 58%;
}
@media (min-width: 770px) {
  .meta-wrapper .book_meta, .meta-wrapper .book_title {
    margin-left: 8px;
    margin-right: 8px;
  }
}

.product_img {
  margin-right: 0px;
  max-height: 90px;
}
