:root {
  /* Base colors */
  --mf-color-base:           var(--white);
  --mf-color-ink:            var(--background-body);
  --mf-color-brand:          var(--accent);
  --mf-color-brand-dim:      rgba(255, 60, 0, .65);
  --mf-color-brand-dimmer:   rgba(255, 60, 0, .38);
  --mf-color-brand-lite:    rgba(255, 60, 0, .06);

  /* Status colors */
  --mf-color-success:        #16a34a;
  --mf-color-warning:        #d97706;
  --mf-color-danger:         #dc2626;
  --mf-color-info:           #3b82f6;
  --mf-color-info-dim:       rgba(59, 130, 246, 0.4);
  --mf-color-info-dimmer:    rgba(59, 130, 246, 0.2);

  /* Gray scale */
  --mf-color-gray-100:       #fafafa;
  --mf-color-gray-200:       #f6f6f6;
  --mf-color-gray-300:       #f0f0f0;
  --mf-color-gray-400:       #e8e8e8;
  --mf-color-gray-500:       #e0e0e0;
  --mf-color-gray-600:       #ebebeb;
  --mf-color-gray-700:       #d1d5db;
  --mf-color-gray-800:       #bbb;
  --mf-color-gray-900:       #999;
  --mf-color-gray-text:      #888;
  --mf-color-gray-dark:      #666;
  --mf-color-gray-ccc:       #ccc;

  /* UI surfaces */
  --mf-color-surface:        #111111;
  --mf-color-surface-raised: #222222;

  /* Border radius */
  --mf-r-xs:    2px;
  --mf-r-sm:    6px;
  --mf-r-md:    8px;

  /* Font sizes */
  --mf-text-xs:   12px;
  --mf-text-sm:   13px;
  --mf-text-base: 14px;
  --mf-text-md:   15px;
  --mf-text-lg:   17px;
  --mf-text-xl:   20px;
  --mf-text-2xl:  24px;

  --mf-leading: 1.5;
}


/* Hide WooCommerce empty cart "Start Shopping" button */
.wc-block-cart__empty-cart__text,
.wc-block-cart__empty-cart .wp-block-button,
.wc-block-mini-cart__shopping-button,
.wp-block-woocommerce-mini-cart-shopping-button-block {
    display: none !important;
}

/* Back to Top Button */
a.generate-back-to-top {
	font-size: 30px;
	border-radius: 0;
  opacity: 0;
  pointer-events: none;
}
a.generate-back-to-top__show {
  opacity: 1;
  pointer-events: auto;
}
a.generate-back-to-top .gp-icon svg {
	fill: var(--accent);
}
a.generate-back-to-top:is(:hover, :focus) .gp-icon svg {
	fill: var(--white);
}

@media (max-width: 767px) {
  a.generate-back-to-top {
    right: 20px;
  }
}

/* RESET */
.wc-block-components-button:not(.is-link).is-style-outline:not(:focus), .wc-block-components-button:not(.is-link).outlined:not(:focus) {
  box-shadow: none !important;
}

/* ANIMATION */
.mf-spinner svg {
  animation:mf-spin 1s linear infinite;
}

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