/* cca - common styles for cart, checkout, account */

.woocommerce-shipping-destination,
#account_display_name_description {
  display: block;
  margin-bottom: 0;
  padding-top: 0.1rem;
  font-style: italic;
  font-size: 90%;
}

/* Shop Table */
.resume-manager-resumes,
.shop_table {
  width: 100%;
  border-radius: var(--woo-border-radius);
  overflow: hidden;
  font-size: 90%;
}

.shop_table input[type="number"],
.shop_table input[type="text"] {
  background-color: var(--woo-color__white);
  border-color: var(--woo-color__lighter);
}

.resume-manager-resumes tfoot > tr:first-child th,
.resume-manager-resumes tfoot > tr:first-child td,
.shop_table tfoot > tr:first-child th,
.shop_table tfoot > tr:first-child td {
  border-top: 1px dashed var(--woo-color__black);
}

.resume-manager-resumes thead th,
.resume-manager-resumes tbody td,
.resume-manager-resumes tbody th,
.resume-manager-resumes tfoot td,
.resume-manager-resumes tfoot th,
.shop_table thead th,
.shop_table tbody td,
.shop_table tbody th,
.shop_table tfoot td,
.shop_table tfoot th {
  padding: var(--v-spacing-xs);
  text-align: left;
}

.resume-manager-resumes thead th,
.shop_table thead th {
  background-color: var(--woo-color__black);
  color: var(--woo-color__white);
}

.resume-manager-resumes tbody th,
.resume-manager-resumes tbody td,
.resume-manager-resumes tfoot th,
.resume-manager-resumes tfoot td,
.shop_table tbody th,
.shop_table tbody td,
.shop_table tfoot th,
.shop_table tfoot td {
  background-color: var(--woo-color__lightest);
  border-bottom: 1px solid var(--woo-color__white);
}

.shop_table tr > .product-remove,
.shop_table tr > .product-thumbnail,
.shop_table tr > .woocommerce-orders-table__header-order-actions,
.shop_table tr > .woocommerce-orders-table__cell-order-actions {
  text-align: center;
}

.shop_table tr > .product-price,
.shop_table tr > .product-subtotal,
.shop_table tr > .product-total,
.shop_table tr > .product-quantity,
.shop_table tfoot td,
.cart_totals .shop_table td,
.shop_table tr > .woocommerce-orders-table__header-order-total,
.shop_table tr > .woocommerce-orders-table__cell-order-total {
  text-align: right;
}

/* Coupons */
.coupon-error-notice {
  font-size: 90%;
  color: var(--woo-color__error);
}

.woocommerce-remove-coupon {
  text-decoration: none;
  color: var(--woo-color__error);
  font-size: 90%;
}

.woocommerce-remove-coupon:hover {
  color: var(--woo-color__error--hover);
}

/* Password Fields */
.password-input {
  --reveal-size: 2.5rem;
  --reveal-size-bullet: 1rem;

  display: block;
  text-align: right;
  position: relative;
}

.password-input .input-text {
  padding-right: calc( var(--reveal-size) + 0.5rem ) !important;
}

.password-input .show-password-input,
.password-input .show-password-input::before {
  display: flex;
  align-items: center;
  justify-content: center;
}

.password-input .show-password-input {
  cursor: pointer;
  border: none;
  background-color: transparent;
  padding: 0;
  margin: 0;
  position: absolute;
  inset: 0 0 0 auto;
  z-index: 10;
  width: var(--reveal-size);
  font-size: 120%;
}

.password-input .show-password-input::before {
  content: "";
  padding: 5px;
  border: 1px solid var(--woo-color__black);
  width: var(--reveal-size-bullet);
  height: var(--reveal-size-bullet);
  border-radius: 50%;
}

.password-input .show-password-input.display-password::before {
  background-color: var(--woo-color__black);
}

.woocommerce-password-strength.short {
  color: var(--woo-color__error);
}

.woocommerce-password-strength.bad {
  color: var(--woo-color__warning);
}

.woocommerce-password-strength.good {
  color: var(--woo-color__info);
}

.woocommerce-password-strength.strong {
  color: var(--woo-color__success);
}

.woocommerce-password-hint {
  font-style: italic;
}

/* Shipping Methods */
.woocommerce-shipping-destination {
  padding-top: 0.7rem;
}

.woocommerce-shipping-methods {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.woocommerce-shipping-methods li {
  flex: 0 0 100%;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 0.5rem;
}

.woocommerce-shipping-methods li label {
  order: 1;
}

.woocommerce-shipping-methods li label .amount {
  font-weight: var(--v-font-weight__default--bold);
}

.woocommerce-shipping-methods li input[type="radio"] {
  order: 2;
  margin-top: 2px;
}

/* Payment Methods */
.wc_payment_methods {
  background-color: var(--woo-color__lightest);

  list-style-type: none;
  margin-bottom: var(--v-spacing-sm);
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.wc_payment_methods p {
  margin-bottom: 0;
}

.wc_payment_method {
  flex: 0 0 100%;
}

.wc_payment_method label {
  display: inline-block;
  font-weight: var(--v-font-weight__default--bold);
}

.wc_payment_method .payment_box {
  padding-top: 0.5rem;
}

/* Checkout Buttons */
.cart_totals .checkout-button,
.place-order button#place_order {
  display: block;
  width: 100%;
  padding-top: 1.1rem;
  padding-bottom: 1.1rem;
}

/* Order Detail */
.woocommerce-OrderUpdates,
.woocommerce-order-details,
.woocommerce-table--order-details {
  margin-bottom: var(--v-spacing-sm);
}

.woocommerce-customer-details .woocommerce-columns,
.woocommerce-Addresses {
  display: flex;
  flex-wrap: wrap;
  gap: var(--v-spacing-md);
}

.woocommerce-customer-details address,
.woocommerce-customer-details address > :last-child,
.woocommerce-Address address,
.woocommerce-Address address > :last-child {
  margin-bottom: 0;
}

/* Customer Addresses */
.woocommerce-EditAccountForm,
.woocommerce-address-fields__field-wrapper,
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin: 0 calc( ( var(--v-form__spacing) / 2 ) * -1 );
  row-gap: var(--v-form__spacing);
}

.woocommerce-EditAccountForm > p,
.woocommerce-EditAccountForm > fieldset,
.woocommerce-address-fields__field-wrapper > p,
.woocommerce-billing-fields__field-wrapper > p,
.woocommerce-shipping-fields__field-wrapper > p {
  margin-bottom: 0;
  flex: 0 0 100%;
  padding: 0 calc( var(--v-form__spacing) / 2 );
}

.woocommerce-address-fields__field-wrapper {
  margin-bottom: var(--v-spacing-p);
}

.woocommerce-EditAccountForm .woocommerce-form-row--first,
.woocommerce-EditAccountForm .woocommerce-form-row--last,
#billing_first_name_field,
#billing_last_name_field,
#billing_city_field,
#billing_state_field,
#billing_postcode_field,
#billing_phone_field,

#shipping_first_name_field,
#shipping_last_name_field,
#shipping_city_field,
#shipping_state_field,
#shipping_postcode_field {
  flex-basis: 50%;
}

@media (min-width: 700px) {
  .shop_table {
    font-size: 100%;
  }
}
