/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Manrope:wght@400;500;600;700;800&display=swap');
@layer properties;
:root {
  --fl-rose: #D9486A;
  --fl-rose-hover: #B8395A;
  --fl-rose-50: #FCEEF1;
  --fl-rose-100: #F8DAE0;
  --fl-terracotta: #B85C3E;
  --fl-terracotta-50: #F5E4DC;
  --fl-forest: #2D5A4F;
  --fl-forest-50: #DFEAE6;
  --fl-ink: #1A1A1A;
  --fl-ink-2: #4A4642;
  --fl-ink-3: #8A8580;
  --fl-line: #E8E0D8;
  --fl-line-strong: #D6CDC2;
  --fl-cream: #FAF5EF;
  --fl-cream-2: #F2EAE0;
  --fl-blush: #FBEDEA;
  --fl-white: #FFFFFF;
  --fl-success: #2E7A5C;
  --fl-warn: #C18A2E;
  --fl-font-display: 'Cormorant Garamond', 'Times New Roman', Georgia, serif;
  --fl-font-body: 'Manrope', 'Helvetica Neue', system-ui, sans-serif;
  --fl-text-display: clamp(28px, 7vw, 56px);
  --fl-text-h1: clamp(22px, 5vw, 32px);
  --fl-text-h2: clamp(18px, 4vw, 24px);
  --fl-text-h3: clamp(15px, 3.5vw, 18px);
  --fl-text-price: clamp(17px, 4.4vw, 22px);
  --fl-text-body-lg: 16px;
  --fl-text-body: 14px;
  --fl-text-caption: 12px;
  --fl-text-micro: 11px;
  --fl-s-1: 4px;
  --fl-s-2: 8px;
  --fl-s-3: 12px;
  --fl-s-4: 16px;
  --fl-s-5: 20px;
  --fl-s-6: 24px;
  --fl-s-8: 32px;
  --fl-s-10: 40px;
  --fl-s-12: 48px;
  --fl-s-14: 56px;
  --fl-s-16: 64px;
  --fl-s-20: 80px;
  --fl-r-xs: 4px;
  --fl-r-s: 8px;
  --fl-r-m: 12px;
  --fl-r-l: 16px;
  --fl-r-xl: 24px;
  --fl-r-pill: 9999px;
  --fl-shadow-card: 0 1px 2px rgba(40,20,10,.04), 0 4px 10px rgba(40,20,10,.07);
  --fl-shadow-hover: 0 2px 4px rgba(40,20,10,.06), 0 5px 10px rgba(40,20,10,.14);
  --fl-shadow-pop: 0 12px 32px rgba(40,20,10,.12), 0 24px 64px rgba(40,20,10,.10);
  --fl-ring-focus: 0 0 0 3px rgba(217,72,106,.25);
  --fl-ease: cubic-bezier(.2, .7, .3, 1);
  --fl-duration: .15s;
  --fl-container-max: 1280px;
  --fl-container-pad: 16px;
}
@media (min-width: 1024px) {
  :root {
    --fl-container-pad: 40px;
  }
}
.fl-btn, .btn, .button, .wp-block-button__link, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--fl-s-2);
  padding: 10px 22px;
  font-family: var(--fl-font-body);
  font-size: var(--fl-text-body);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: .01em;
  border: 1px solid transparent;
  border-radius: var(--fl-r-pill);
  cursor: pointer;
  white-space: nowrap;
  text-decoration: none;
  transition: background var(--fl-duration) var(--fl-ease), border-color var(--fl-duration) var(--fl-ease), color var(--fl-duration) var(--fl-ease), transform var(--fl-duration) var(--fl-ease);
  appearance: none;
  -webkit-appearance: none;
}
.fl-btn-primary, .btn-primary, .woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt, .single_add_to_cart_button {
  background-color: var(--fl-rose);
  color: var(--fl-white);
  border-color: var(--fl-rose);
}
.fl-btn-primary:hover, .btn-primary:hover, .woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover, .single_add_to_cart_button:hover {
  background-color: var(--fl-rose-hover);
  border-color: var(--fl-rose-hover);
  color: var(--fl-white);
}
.fl-btn-outline, .btn-outline, .btn-secondary, .woocommerce a.button:not(.alt), .woocommerce button.button:not(.alt) {
  background-color: var(--fl-white);
  color: var(--fl-ink);
  border-color: var(--fl-line-strong);
}
.fl-btn-outline:hover, .btn-outline:hover, .btn-secondary:hover, .woocommerce a.button:not(.alt):hover, .woocommerce button.button:not(.alt):hover {
  border-color: var(--fl-rose);
  color: var(--fl-rose);
  background-color: var(--fl-white);
}
.fl-btn-ghost, .btn-ghost {
  background-color: transparent;
  color: var(--fl-rose);
  padding: 8px 14px;
  border-color: transparent;
}
.fl-btn-ghost:hover, .btn-ghost:hover {
  background-color: var(--fl-rose-50);
  color: var(--fl-rose);
}
.btn-lg {
  padding: 14px 28px;
  font-size: 15px;
}
.btn-sm {
  padding: 8px 16px;
  font-size: 13px;
}
.btn-xs {
  padding: 6px 12px;
  font-size: 12px;
}
.btn-circle {
  width: 44px;
  height: 44px;
  padding: 0;
  border-radius: 50%;
}
.fl-btn--xs {
  height: 28px;
  padding: 0 12px;
  font-size: 11px;
  gap: 6px;
}
.fl-btn--sm {
  height: 36px;
  padding: 0 14px;
  font-size: 12px;
  gap: 6px;
}
.fl-btn--md {
  height: 44px;
  padding: 0 18px;
  font-size: 13px;
  gap: 8px;
}
.fl-btn--lg {
  height: 52px;
  padding: 0 24px;
  font-size: 14px;
  gap: 8px;
}
.fl-btn--xl {
  height: 60px;
  padding: 0 28px;
  font-size: 15px;
  gap: 10px;
}
.fl-btn--icon {
  padding: 0;
  aspect-ratio: 1 / 1;
  flex-shrink: 0;
}
.fl-btn--icon.fl-btn--xs {
  width: 28px;
}
.fl-btn--icon.fl-btn--sm {
  width: 36px;
}
.fl-btn--icon.fl-btn--md {
  width: 44px;
}
.fl-btn--icon.fl-btn--lg {
  width: 52px;
}
.fl-btn--icon.fl-btn--xl {
  width: 60px;
}
.fl-btn--primary {
  background-color: var(--fl-rose);
  color: var(--fl-white);
  border-color: var(--fl-rose);
}
.fl-btn--primary:hover {
  background-color: var(--fl-rose-hover);
  border-color: var(--fl-rose-hover);
  color: var(--fl-white);
}
.fl-btn--secondary {
  background-color: var(--fl-white);
  color: var(--fl-ink-2);
  border-color: var(--fl-line-strong);
}
.fl-btn--secondary:hover {
  border-color: var(--fl-rose);
  color: var(--fl-rose);
  background-color: var(--fl-white);
}
.fl-btn--ghost {
  background-color: transparent;
  color: var(--fl-rose);
  border-color: transparent;
}
.fl-btn--ghost:hover {
  background-color: var(--fl-rose-50);
  color: var(--fl-rose);
}
.fl-btn:disabled, .fl-btn[aria-disabled="true"] {
  opacity: .55;
  cursor: not-allowed;
}
.fl-btn--xs svg {
  width: 12px;
  height: 12px;
}
.fl-btn--sm svg {
  width: 14px;
  height: 14px;
}
.fl-btn--md svg {
  width: 16px;
  height: 16px;
}
.fl-btn--lg svg {
  width: 18px;
  height: 18px;
}
.fl-btn--xl svg {
  width: 20px;
  height: 20px;
}
.fl-btn:focus-visible, .btn:focus-visible, .button:focus-visible, .woocommerce a.button:focus-visible, .woocommerce button.button:focus-visible {
  outline: none;
  box-shadow: var(--fl-ring-focus);
}
@media (max-width: 767px) {
  .woocommerce ul.products, .woocommerce-page ul.products, ul.products, .special-offers__products-grid, .wc-block-grid__products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: var(--fl-s-3);
    margin: 0 !important;
    padding: 0 var(--fl-s-4);
    list-style: none;
  }
  .woocommerce ul.products li.product, ul.products li.product, .wc-block-grid__product {
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
    clear: none !important;
    max-width: none !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .woocommerce ul.products, ul.products {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--fl-s-5);
  }
}
@media (min-width: 1024px) {
  .woocommerce ul.products.columns-4, ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--fl-s-5);
  }
  .woocommerce ul.products.columns-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
.woocommerce ul.products li.product, .product-card {
  background: var(--fl-white);
  border: 1px solid var(--fl-line);
  border-radius: var(--fl-r-l);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: var(--fl-shadow-card);
  transition: box-shadow var(--fl-duration) var(--fl-ease), transform var(--fl-duration) var(--fl-ease);
  padding: 0 !important;
}
.woocommerce ul.products li.product:hover, .product-card:hover {
  box-shadow: var(--fl-shadow-hover);
  transform: translateY(-2px);
}
.woocommerce ul.products li.product > a, .product-card > a {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
  height: 100%;
}
.woocommerce ul.products li.product img, .product-card img {
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1.05;
  object-fit: cover;
  display: block;
  margin: 0 !important;
  border-radius: 0;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title, .product-card .product-title, .product-card .pc-title {
  font-family: var(--fl-font-body) !important;
  font-weight: 600 !important;
  line-height: 1.35;
  color: var(--fl-ink);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  padding: var(--fl-s-3) var(--fl-s-3) var(--fl-s-1);
  font-size: var(--fl-text-h3) !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 2.7em;
  margin: 0;
}
.woocommerce ul.products li.product .price, .product-card .price, .product-card .pc-price-value, .product-card .pc-price-value * {
  font-family: var(--fl-font-body) !important;
  font-weight: 700;
  color: var(--fl-ink);
  font-variant-numeric: lining-nums tabular-nums;
  font-feature-settings: "lnum" 1, "tnum" 1;
  letter-spacing: -.01em;
  line-height: 1.1;
}
.product-card .pc-price-value {
  font-size: var(--fl-text-price) !important;
}
.woocommerce ul.products li.product .price {
  padding: 0 var(--fl-s-3);
  margin: 0 0 var(--fl-s-3);
  font-size: var(--fl-text-price) !important;
}
.woocommerce ul.products li.product .price del, .product-card .price del, .product-card .pc-price-value del {
  font-weight: 500;
  font-size: 0.7em;
  color: var(--fl-ink-3);
  margin-right: 6px;
  opacity: 1;
}
.woocommerce ul.products li.product .price ins, .product-card .price ins, .product-card .pc-price-value ins {
  background: transparent;
  text-decoration: none;
  color: var(--fl-ink);
  font-weight: 700;
}
.woocommerce ul.products li.product .button {
  margin: auto var(--fl-s-3) var(--fl-s-3);
  padding: 9px 14px !important;
  font-size: var(--fl-text-body) !important;
  border-radius: var(--fl-r-s);
}
.product-card .pc-cart-btn {
  padding: 8px 12px;
  font-size: 13px;
  border-radius: var(--fl-r-s);
  font-weight: 600;
}
.fl-hero {
  position: relative;
  height: clamp(380px, 52vh, 460px);
  overflow: hidden;
}
@media (min-width: 768px) {
  .fl-hero {
    height: clamp(460px, 60vh, 580px);
  }
}
.fl-hero__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.fl-hero__scrim {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(20, 15, 12, .15) 0%, rgba(20, 15, 12, .35) 45%, rgba(20, 15, 12, .55) 100%);
}
@media (min-width: 768px) {
  .fl-hero__scrim {
    background: linear-gradient(90deg, rgba(20, 15, 12, .55) 0%, rgba(20, 15, 12, .25) 45%, transparent 70%);
  }
}
.fl-hero__content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--fl-s-6) var(--fl-s-5);
  height: 100%;
  max-width: 1360px;
  margin: 0 auto;
  color: var(--fl-white);
}
@media (min-width: 768px) {
  .fl-hero__content {
    padding: var(--fl-s-12) var(--fl-s-10);
  }
}
.fl-hero__eyebrow {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  background: rgba(255, 255, 255, .18);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, .3);
  border-radius: var(--fl-r-pill);
  font-size: var(--fl-text-micro);
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-bottom: var(--fl-s-3);
  color: var(--fl-white);
}
.fl-hero__title {
  margin: 0 0 var(--fl-s-3);
  font-family: var(--fl-font-display);
  font-weight: 500;
  font-size: clamp(32px, 8.4vw, 56px);
  line-height: 1.08;
  letter-spacing: -.015em;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .25);
  max-width: 520px;
  color: var(--fl-white);
}
.fl-hero__copy {
  margin: 0 0 var(--fl-s-5);
  font-size: clamp(14px, 3.8vw, 16px);
  line-height: 1.5;
  opacity: .94;
  max-width: 420px;
  color: var(--fl-white);
}
.fl-hero__ctas {
  display: flex;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
}
.fl-btn-hero-secondary {
  background: rgba(255, 255, 255, .12);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  color: var(--fl-white);
  border: 1px solid rgba(255, 255, 255, .4);
}
.fl-btn-hero-secondary:hover {
  background: rgba(255, 255, 255, .22);
  color: var(--fl-white);
  border-color: rgba(255, 255, 255, .5);
}
@media (max-width: 767px) {
  .fl-btn-hero-secondary {
    display: none;
  }
}
.fl-hero__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .18);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, .32);
  color: var(--fl-white);
  display: none;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 22px;
  line-height: 1;
  z-index: 3;
}
.fl-hero__arrow--prev {
  left: 24px;
}
.fl-hero__arrow--next {
  right: 24px;
}
@media (min-width: 768px) {
  .fl-hero__arrow {
    display: inline-flex;
  }
}
.fl-hero__dots {
  position: absolute;
  bottom: 24px;
  right: 24px;
  display: flex;
  gap: 6px;
  z-index: 3;
}
.fl-hero__dots span, .fl-hero__dots .hero-slider__dot {
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background: rgba(255, 255, 255, .5);
  transition: width .2s var(--fl-ease);
  display: block;
  border: 0;
  padding: 0;
  cursor: pointer;
}
.fl-hero__dots span.is-active, .fl-hero__dots .hero-slider__dot--active {
  width: 28px;
  background: var(--fl-white);
  opacity: 1;
}
@media (max-width: 767px) {
  .fl-hero__dots {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    bottom: 16px;
  }
}
.fl-section {
  padding: var(--fl-s-12) var(--fl-s-4);
}
@media (min-width: 768px) {
  .fl-section {
    padding: var(--fl-s-16) var(--fl-s-10);
  }
}
.fl-section--cream {
  background: var(--fl-cream);
}
.fl-section--cream-2 {
  background: var(--fl-cream-2);
}
.fl-section--blush {
  background: var(--fl-blush);
}
.fl-section--white {
  background: var(--fl-white);
}
.fl-section__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: var(--fl-s-4);
  margin: 0 auto var(--fl-s-8);
  max-width: 1360px;
}
.fl-section__title {
  font-family: var(--fl-font-display);
  font-weight: 500;
  font-size: var(--fl-text-h1);
  line-height: 1.1;
  letter-spacing: -.015em;
  margin: 0;
}
.fl-section__action {
  font-size: var(--fl-text-body);
  font-weight: 600;
  color: var(--fl-rose);
  display: inline-flex;
  align-items: center;
  gap: 4px;
  text-decoration: none;
}
.fl-eyebrow {
  font-family: var(--fl-font-body);
  font-size: var(--fl-text-caption);
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--fl-rose);
}
.bestsellers__title, .special-offers__title, .testimonials__title, .category-grid__title, .product-finder__title, .seo-text__title, .benefits-section__title, .fl-section__title {
  font-family: var(--fl-font-display) !important;
  font-weight: 500 !important;
  font-size: clamp(28px, 4vw, 44px) !important;
  line-height: 1.1 !important;
  letter-spacing: -.015em !important;
  color: var(--fl-ink) !important;
}
.benefits-section__title {
  font-style: italic !important;
  font-weight: 400 !important;
  font-size: clamp(22px, 3.4vw, 36px) !important;
  line-height: 1.25 !important;
}
.bestsellers__subtitle, .special-offers__subtitle, .testimonials__subtitle, .category-grid__subtitle {
  font-family: var(--fl-font-body);
  font-size: var(--fl-text-body-lg);
  color: var(--fl-ink-2);
}
.fl-section-head .fl-eyebrow, .bestsellers__header .fl-eyebrow, .special-offers__header .fl-eyebrow {
  margin-bottom: 8px;
}
.fl-section-head--split {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
  text-align: left;
  gap: 12px;
  padding-left: var(--fl-s-4);
  padding-right: var(--fl-s-4);
}
.fl-section-head--split .fl-section-head__text {
  min-width: 0;
}
.fl-section-head--split .fl-section-head__sub, .fl-section-head--split .special-offers__subtitle, .fl-section-head--split .bestsellers__subtitle {
  display: none;
}
.fl-section-head--split .fl-section-head__action {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 13px;
  font-weight: 600;
  color: var(--fl-rose);
  text-decoration: none;
  white-space: nowrap;
  flex-shrink: 0;
  padding-bottom: 4px;
}
.fl-section-head--split .fl-section-head__action:hover {
  color: var(--fl-rose-hover);
}
@media (min-width: 768px) {
  .fl-section-head--split .fl-section-head__sub, .fl-section-head--split .special-offers__subtitle, .fl-section-head--split .bestsellers__subtitle {
    display: block;
  }
  .fl-section-head--split .fl-section-head__action {
    font-size: 14px;
    padding-bottom: 10px;
  }
}
.fl-chip, .fl-pill, .fl-tab, .tab {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--fl-font-body);
  font-weight: 500;
  border: 1px solid transparent;
  border-radius: var(--fl-r-pill);
  cursor: pointer;
  white-space: nowrap;
  text-decoration: none;
  transition: background var(--fl-duration) var(--fl-ease), border-color var(--fl-duration) var(--fl-ease), color var(--fl-duration) var(--fl-ease);
}
.fl-chip {
  padding: 8px 18px;
  font-size: 14px;
}
.fl-chip--sm {
  padding: 6px 14px;
  font-size: 13px;
}
.fl-chip--md {
  padding: 8px 18px;
  font-size: 14px;
}
.fl-chip--lg {
  padding: 10px 22px;
  font-size: 15px;
}
.fl-chip--outline, .fl-pill {
  background: var(--fl-white);
  border-color: var(--fl-line);
  color: var(--fl-ink-2);
}
.fl-chip--outline:hover, .fl-pill:hover {
  border-color: var(--fl-ink-3);
  color: var(--fl-ink);
}
.fl-chip--outline.is-active, .fl-chip--outline[aria-pressed="true"], .fl-pill.is-active, .fl-pill[aria-pressed="true"] {
  background: var(--fl-ink) !important;
  color: var(--fl-white) !important;
  border-color: var(--fl-ink) !important;
}
.fl-chip--ghost, .fl-tab, .tab {
  background: transparent;
  border-color: transparent;
  color: var(--fl-ink-3);
}
.fl-chip--ghost:hover, .fl-tab:hover, .tab:hover {
  background: rgba(0, 0, 0, .04);
  border-color: transparent;
  color: var(--fl-ink);
}
.fl-chip--ghost.is-active, .fl-chip--ghost[aria-selected="true"], .fl-tab.fl-tab-active, .fl-tab[aria-selected="true"], .tab.tab-active {
  background: var(--fl-white) !important;
  color: var(--fl-ink) !important;
  border-color: var(--fl-ink) !important;
  font-weight: 600;
}
.fl-chip--primary {
  background: var(--fl-rose);
  border-color: var(--fl-rose);
  color: var(--fl-white);
}
.fl-chip--primary:hover {
  background: var(--fl-rose-hover);
  border-color: var(--fl-rose-hover);
  color: var(--fl-white);
}
.fl-pill {
  padding: 8px 18px;
  font-size: 14px;
}
.fl-tab, .tab {
  padding: 6px 14px;
  font-size: 13px;
}
@media (min-width: 768px) {
  .fl-tab, .tab {
    padding: 8px 18px;
    font-size: 14px;
  }
}
.fl-chip::before, .fl-pill::before, .fl-tab::before, .tab::before, .tabs-border .tab::before, .tabs .tab::before {
  display: none !important;
  content: none !important;
}
.fl-badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  font-size: var(--fl-text-micro);
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
  border-radius: var(--fl-r-pill);
  font-variant-numeric: tabular-nums;
}
.fl-badge-sale, .woocommerce span.onsale {
  background: var(--fl-terracotta) !important;
  color: var(--fl-white) !important;
  border: none !important;
  top: var(--fl-s-2) !important;
  left: var(--fl-s-2) !important;
  right: auto !important;
  margin: 0 !important;
  padding: 4px 10px !important;
  min-height: auto !important;
  min-width: auto !important;
  line-height: 1.2 !important;
  font-family: var(--fl-font-body) !important;
  font-weight: 600 !important;
  font-size: var(--fl-text-micro) !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  border-radius: var(--fl-r-pill) !important;
  position: absolute !important;
}
.fl-badge-new {
  background: var(--fl-forest);
  color: var(--fl-white);
}
.fl-badge-stock {
  background: var(--fl-forest-50);
  color: var(--fl-forest);
  font-size: var(--fl-text-micro);
  padding: 3px 8px;
  text-transform: none;
  letter-spacing: 0;
}
.pc-bonus-badge {
  position: absolute;
  top: var(--fl-s-2);
  right: var(--fl-s-2);
  background: rgba(255, 255, 255, 0.94);
  color: var(--fl-rose);
  padding: 4px 9px;
  border-radius: var(--fl-r-pill);
  font-family: var(--fl-font-body);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .01em;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 3px;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  box-shadow: 0 1px 4px rgba(0, 0, 0, .08);
  z-index: 2;
}
.pc-bonus-badge > span {
  font-size: 10px;
  line-height: 1;
}
.fl-badge-spec {
  position: absolute;
  bottom: var(--fl-s-2);
  left: var(--fl-s-2);
  background: rgba(20, 15, 12, 0.78);
  color: var(--fl-white);
  padding: 4px 12px;
  border-radius: var(--fl-r-pill);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .04em;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  line-height: 1.2;
  white-space: nowrap;
}
.fl-input, .product-finder input[type="text"], .product-finder input[type="email"], .product-finder input[type="tel"], .product-finder input[type="number"], .product-finder input[type="search"], .product-finder textarea, .product-finder select, .fl-bouquet-helper input[type="text"], .fl-bouquet-helper select, .fl-bouquet-helper textarea {
  width: 100%;
  height: 48px;
  padding: 0 var(--fl-s-4);
  font-family: var(--fl-font-body);
  font-size: var(--fl-text-body);
  color: var(--fl-ink);
  background: var(--fl-white);
  border: 1px solid var(--fl-line);
  border-radius: var(--fl-r-s);
  box-sizing: border-box;
  transition: border-color var(--fl-duration) var(--fl-ease);
}
.fl-input:focus, .product-finder input:focus, .product-finder select:focus, .product-finder textarea:focus, .fl-bouquet-helper input:focus, .fl-bouquet-helper select:focus, .fl-bouquet-helper textarea:focus {
  outline: none;
  border-color: var(--fl-rose);
  box-shadow: var(--fl-ring-focus);
}
.fl-bouquet-helper, .product-finder {
  background: linear-gradient(135deg, var(--fl-cream-2) 0%, var(--fl-rose-50) 100%) !important;
  color: var(--fl-ink) !important;
  padding: var(--fl-s-12) var(--fl-s-4);
}
.fl-bouquet-helper h2, .fl-bouquet-helper h3, .product-finder .product-finder__title, .product-finder h2 {
  color: var(--fl-ink) !important;
  background: none !important;
  -webkit-background-clip: initial !important;
  -webkit-text-fill-color: var(--fl-ink) !important;
}
.product-finder .product-finder__subtitle {
  color: var(--fl-ink-2) !important;
  font-size: 13px;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .product-finder .product-finder__subtitle {
    font-size: 14px;
  }
}
.product-finder .fieldset-legend {
  color: var(--fl-ink-2) !important;
}
.product-finder .product-finder__form-wrapper {
  background: var(--fl-white) !important;
  backdrop-filter: none !important;
  border: 1px solid var(--fl-line);
  border-radius: var(--fl-r-l);
  box-shadow: var(--fl-shadow-pop);
  padding: 16px;
  max-width: 1080px;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .product-finder .product-finder__form-wrapper {
    padding: 20px;
    border-radius: var(--fl-r-xl);
  }
}
.product-finder__submit {
  height: 48px;
  padding: 0 24px;
}
@media (min-width: 768px) {
  .product-finder__submit {
    height: 64px;
    padding: 0 32px;
    font-size: 15px;
  }
}
.product-finder__eyebrow {
  display: inline-block;
  font-family: var(--fl-font-body);
  font-size: var(--fl-text-caption);
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--fl-rose);
  margin-bottom: 8px;
}
.fl-float-field {
  position: relative;
  display: block;
}
.fl-float-field__label {
  position: absolute;
  left: 18px;
  top: 9px;
  font-size: 10px;
  color: var(--fl-ink-3);
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  pointer-events: none;
  z-index: 1;
}
.fl-float-field select, .fl-float-field input {
  width: 100%;
  height: 56px;
  padding: 22px 16px 8px;
  font-family: var(--fl-font-body);
  font-size: 14px;
  color: var(--fl-ink);
  background-color: var(--fl-white);
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' stroke='%231a1a1a' stroke-width='1.6' fill='none' stroke-linecap='round'/></svg>");
  background-repeat: no-repeat;
  background-position: right 14px center;
  border: 1px solid var(--fl-line);
  border-radius: var(--fl-r-s);
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  transition: border-color var(--fl-duration) var(--fl-ease);
}
.fl-float-field input {
  background-image: none;
  padding: 22px 16px 8px;
  cursor: text;
}
.fl-float-field select:focus, .fl-float-field input:focus {
  outline: none;
  border-color: var(--fl-rose);
  box-shadow: var(--fl-ring-focus);
}
@media (min-width: 768px) {
  .fl-float-field select, .fl-float-field input {
    height: 64px;
    padding: 28px 18px 10px;
    font-size: 15px;
  }
  .fl-float-field__label {
    top: 11px;
    font-size: 11px;
  }
}
.fl-stickybar {
  display: none;
}
@media (max-width: 767px) {
  .fl-stickybar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 100;
    display: flex;
    gap: var(--fl-s-2);
    padding: var(--fl-s-2) var(--fl-s-3);
    background: var(--fl-white);
    border-top: 1px solid var(--fl-line);
    box-shadow: 0 -4px 16px rgba(0, 0, 0, .06);
  }
  .fl-stickybar__phone {
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1px solid var(--fl-line-strong);
    background: var(--fl-white);
    color: var(--fl-ink);
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .fl-stickybar__cta {
    flex: 1;
    height: 44px;
  }
}
.woocommerce table.shop_table {
  border-radius: var(--fl-r-m);
  border-color: var(--fl-line);
  font-family: var(--fl-font-body);
}
.woocommerce-cart .cart-collaterals .cart_totals h2 {
  font-family: var(--fl-font-display);
  font-weight: 500;
}
.woocommerce .quantity input.qty {
  width: 80px;
  height: 44px;
  border-radius: var(--fl-r-s);
  border: 1px solid var(--fl-line-strong);
  text-align: center;
  font-family: var(--fl-font-body);
  font-variant-numeric: tabular-nums;
}
.woocommerce .star-rating {
  color: #F4A742;
}
.woocommerce-message, .woocommerce-info {
  background: var(--fl-rose-50) !important;
  border-top-color: var(--fl-rose) !important;
  color: var(--fl-ink) !important;
}
.woocommerce-error {
  background: var(--fl-terracotta-50) !important;
  border-top-color: var(--fl-terracotta) !important;
  color: var(--fl-ink) !important;
}
.bestsellers.bg-rose-50, .testimonials.bg-rose-50, section.bg-rose-50 {
  background-color: var(--fl-blush) !important;
}
.woocommerce-page.bg-rose-50 {
  background-color: var(--fl-cream) !important;
}
@media (min-width: 1024px) {
  .special-offers .special-offers__products-grid {
    justify-content: center;
  }
  .special-offers .special-offers__products-grid:has(> :nth-child(3):last-child) {
    grid-template-columns: repeat(3, minmax(220px, 320px));
    max-width: 1040px;
    margin-left: auto;
    margin-right: auto;
  }
  .special-offers .special-offers__products-grid:has(> :nth-child(2):last-child) {
    grid-template-columns: repeat(2, minmax(220px, 320px));
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
  }
  .special-offers .special-offers__products-grid:has(> :first-child:last-child) {
    grid-template-columns: minmax(220px, 320px);
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .special-offers .special-offers__products-grid {
    justify-content: center;
  }
  .special-offers .special-offers__products-grid:has(> :nth-child(2):last-child) {
    grid-template-columns: repeat(2, minmax(220px, 320px));
  }
  .special-offers .special-offers__products-grid:has(> :first-child:last-child) {
    grid-template-columns: minmax(220px, 320px);
  }
}
.fl-footer {
  background: var(--fl-ink);
  color: var(--fl-white);
  padding: 48px var(--fl-s-4) 80px;
}
.fl-footer__grid {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 1360px;
  margin: 0 auto;
}
.fl-footer__brand {
  display: flex;
  flex-direction: column;
}
.fl-footer__logo {
  font-family: var(--fl-font-display);
  font-size: 24px;
  font-weight: 500;
  color: var(--fl-rose);
  letter-spacing: .04em;
  text-decoration: none;
}
.fl-footer__tagline {
  margin: 10px 0 0;
  font-size: 13px;
  line-height: 1.55;
  color: rgba(255, 255, 255, .65);
  max-width: 320px;
}
.fl-footer__social {
  display: inline-flex;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--fl-rose);
  align-items: center;
  justify-content: center;
  color: var(--fl-white);
  text-decoration: none;
  flex-shrink: 0;
}
.fl-footer__social:hover {
  background: var(--fl-rose-hover);
}
.fl-footer__col {
  display: flex;
  flex-direction: column;
}
.fl-footer__col--locations {
  display: none;
}
@media (min-width: 768px) {
  .fl-footer__col--locations {
    display: flex;
  }
}
.fl-footer__col-title {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .55);
  margin-bottom: 10px;
}
.fl-footer__col ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.fl-footer__col li {
  margin: 0;
}
.fl-footer__col a {
  font-size: 14px;
  color: rgba(255, 255, 255, .92);
  text-decoration: none;
}
.fl-footer__col a:hover {
  color: var(--fl-rose);
}
.fl-footer__bar {
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, .12);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  font-size: 12px;
  color: rgba(255, 255, 255, .5);
  max-width: 1360px;
  margin-left: auto;
  margin-right: auto;
}
.fl-footer__bar .fl-footer__social {
  margin-top: 0;
}
.fl-footer__bar-right {
  display: none;
}
@media (min-width: 768px) {
  .fl-footer {
    padding: 56px 40px 28px;
  }
  .fl-footer__grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1fr;
    gap: 48px;
    margin-bottom: 40px;
  }
  .fl-footer__logo {
    font-size: 30px;
  }
  .fl-footer__bar {
    margin-top: 0;
  }
  .fl-footer__bar-right {
    display: inline;
    margin-left: auto;
  }
}
.seo-text {
  background: var(--fl-white);
  padding: 40px var(--fl-s-4) 32px;
  text-align: left;
}
.seo-text .seo-text__header {
  text-align: center;
}
.seo-text .seo-text__intro {
  text-align: center;
}
.seo-text .seo-text__title {
  font-family: var(--fl-font-display);
  font-weight: 500;
  font-size: clamp(18px, 3.6vw, 30px) !important;
  line-height: 1.2 !important;
  letter-spacing: -.015em;
  color: var(--fl-ink);
  margin-bottom: 12px;
}
.seo-text .seo-text__toggle {
  padding: 8px 18px;
  font-size: 13px;
}
.seo-text .seo-text__intro {
  max-width: 780px;
  margin: 0 auto 24px;
  font-size: 13px;
  line-height: 1.6;
  color: var(--fl-ink-2);
}
.seo-text .seo-text__intro b, .seo-text .seo-text__intro strong {
  color: var(--fl-ink);
}
.seo-text .w-16.h-0\.5, .seo-text .seo-text__header + div > .bg-rose-300 {
  display: none !important;
}
.seo-text h3[data-toggles] {
  font-family: var(--fl-font-body) !important;
  font-weight: 600;
  color: var(--fl-rose) !important;
  font-size: 14px;
  display: none;
  border-bottom: 1px solid var(--fl-rose);
  padding-bottom: 2px;
  cursor: pointer;
  margin: 0 auto 24px !important;
}
.seo-text .seo-text__expandable-inner {
  max-width: 720px;
  margin: 0 auto;
  text-align: left;
}
.seo-text .seo-text__expandable-inner > div {
  text-align: left;
}
.seo-text .seo-text__expandable-inner p {
  text-align: left;
  font-size: 14px;
  line-height: 1.65;
  margin: 0 0 16px;
  color: var(--fl-ink-2);
}
.seo-text .seo-text__expandable-inner ul {
  text-align: left;
  list-style: disc outside;
  padding-left: 24px;
  margin: 0 0 20px;
}
.seo-text .seo-text__expandable-inner li {
  text-align: left;
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 8px;
  color: var(--fl-ink-2);
}
.seo-text .seo-text__expandable-inner h3:not([data-toggles]) {
  font-family: var(--fl-font-display) !important;
  font-weight: 500 !important;
  color: var(--fl-ink) !important;
  font-size: 22px !important;
  line-height: 1.25 !important;
  letter-spacing: -.01em !important;
  text-align: center;
  border: 0 !important;
  padding: 0 !important;
  margin: 36px auto 8px !important;
  cursor: default;
}
.seo-text .seo-text__expandable-inner h3 + div.bg-rose-300, .seo-text .seo-text__expandable-inner .w-16.h-0\.5 {
  display: block !important;
  width: 48px;
  height: 1px;
  background: var(--fl-rose);
  margin: 0 auto 24px;
}
.seo-text .seo-text__expandable-inner h4 {
  font-family: var(--fl-font-body);
  font-weight: 600;
  color: var(--fl-ink);
  font-size: 15px;
  line-height: 1.4;
  margin: 28px 0 10px;
  text-align: left;
}
@media (min-width: 768px) {
  .seo-text {
    padding: 80px 40px 64px;
  }
  .seo-text .seo-text__intro {
    font-size: 15px;
    line-height: 1.7;
  }
  .seo-text h3[data-toggles] {
    display: inline-block;
    font-size: 15px;
  }
  .seo-text .seo-text__toggle-wrapper {
    display: none;
  }
  .seo-text .seo-text__expandable-inner p, .seo-text .seo-text__expandable-inner li {
    font-size: 15px;
    line-height: 1.7;
  }
  .seo-text .seo-text__expandable-inner h3:not([data-toggles]) {
    font-size: 28px !important;
    margin-top: 48px !important;
  }
  .seo-text .seo-text__expandable-inner h4 {
    font-size: 17px;
    margin-top: 36px;
  }
}
.fl-reviews {
  background: var(--fl-blush);
  padding: 40px 0 32px;
}
.fl-reviews__head {
  text-align: center;
  padding: 0 20px;
  margin-bottom: 24px;
}
.fl-reviews__head .fl-eyebrow {
  display: block;
  margin-bottom: 8px;
}
.fl-reviews__head h2 {
  margin: 4px 0 8px;
  font-family: var(--fl-font-display);
  font-weight: 500;
  font-size: clamp(28px, 4vw, 44px);
  line-height: 1.1;
  letter-spacing: -.015em;
  color: var(--fl-ink);
}
.fl-reviews__subtitle {
  margin: 0;
  font-size: 14px;
  color: var(--fl-ink-2);
}
.fl-stars {
  color: #F4A742;
  font-size: 14px;
  letter-spacing: 2px;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.fl-stars--sm {
  font-size: 12px;
  letter-spacing: 1px;
}
.fl-reviews__list {
  display: flex;
  gap: 12px;
  overflow-x: auto;
  padding: 4px var(--fl-s-4) 8px;
  scrollbar-width: none;
  scroll-snap-type: x mandatory;
  scroll-padding-inline-start: var(--fl-s-4);
}
.fl-reviews__list::-webkit-scrollbar {
  display: none;
}
.fl-review {
  flex: 0 0 84%;
  scroll-snap-align: start;
  background: var(--fl-white);
  border-radius: var(--fl-r-l);
  padding: 16px;
  box-shadow: var(--fl-shadow-card);
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.fl-review__header {
  display: flex;
  align-items: center;
  gap: 9px;
}
.fl-review__avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--fl-rose-50);
  color: var(--fl-rose);
  font-weight: 700;
  font-size: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 36px;
  font-variant-numeric: tabular-nums;
}
.fl-review__meta {
  flex: 1;
  min-width: 0;
}
.fl-review__name {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  color: var(--fl-ink);
}
.fl-review__date {
  font-size: 11px;
  color: var(--fl-ink-3);
  margin-top: 2px;
}
.fl-review__source {
  width: 18px;
  height: 18px;
  margin-left: auto;
  flex: 0 0 18px;
}
.fl-review__text {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: var(--fl-ink-2);
  text-wrap: pretty;
}
@media (min-width: 768px) {
  .fl-reviews {
    padding: 24px 0 72px;
  }
  .fl-reviews__head {
    margin-bottom: 32px;
  }
  .fl-reviews__subtitle {
    font-size: 15px;
  }
  .fl-reviews__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    overflow: visible;
    padding: 0 40px;
    max-width: 1360px;
    margin: 0 auto;
  }
  .fl-review {
    flex: none;
    padding: 22px 22px 24px;
    gap: 12px;
  }
  .fl-review__avatar {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    font-size: 16px;
  }
  .fl-review__name {
    font-size: 14px;
  }
  .fl-review__date {
    font-size: 11px;
  }
  .fl-review__text {
    font-size: 14px;
    line-height: 1.6;
  }
  .fl-stars {
    font-size: 16px;
  }
}
.fl-catalog {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  padding: 4px 0 32px;
}
.fl-catalog__tile {
  position: relative;
  display: block;
  aspect-ratio: 1 / 1;
  border-radius: var(--fl-r-m);
  overflow: hidden;
  background: var(--fl-cream);
  text-decoration: none;
  color: var(--fl-white);
}
.fl-catalog__tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s var(--fl-ease);
}
.fl-catalog__tile:hover img {
  transform: scale(1.04);
}
.fl-catalog__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 50%, rgba(0, 0, 0, .55) 100%);
  padding: 10px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.fl-catalog__label {
  font-family: var(--fl-font-body);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .01em;
  text-shadow: 0 1px 4px rgba(0, 0, 0, .4);
  color: var(--fl-white);
}
.fl-catalog__count {
  display: none;
}
@media (min-width: 1024px) {
  .fl-catalog {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 280px);
    gap: 20px;
    padding: 0 40px 72px;
    max-width: 1360px;
    margin: 0 auto;
  }
  .fl-catalog__tile {
    aspect-ratio: auto;
    height: 100%;
  }
  .fl-catalog__tile--tall {
    grid-row: span 2;
  }
  .fl-catalog__overlay {
    padding: 20px;
    background: linear-gradient(180deg, transparent 35%, rgba(0, 0, 0, .55) 100%);
  }
  .fl-catalog__label {
    font-family: var(--fl-font-display);
    font-weight: 500;
    font-size: 24px;
    line-height: 1.1;
  }
  .fl-catalog__count {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    opacity: .9;
    margin-top: 4px;
    color: var(--fl-white);
  }
  .fl-catalog__count svg {
    width: 14px;
    height: 14px;
  }
}
.fl-trust {
  display: flex;
  background: var(--fl-white);
  border-bottom: 1px solid var(--fl-line);
  padding: 12px 16px;
  font-size: 11px;
  color: var(--fl-ink-2);
}
.fl-trust__item {
  flex: 1;
  text-align: center;
  padding: 0 4px;
  border-right: 1px solid var(--fl-line);
}
.fl-trust__item:last-child {
  border-right: 0;
}
.fl-trust__num {
  font-family: var(--fl-font-body);
  font-size: 17px;
  font-weight: 700;
  color: var(--fl-ink);
  line-height: 1;
  font-variant-numeric: lining-nums tabular-nums;
  letter-spacing: -.01em;
}
.fl-trust__label {
  margin-top: 3px;
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: 10px;
}
.fl-trust__title, .fl-trust__sub {
  display: none;
}
@media (min-width: 768px) {
  .fl-trust {
    padding: 18px 40px;
    gap: 32px;
    max-width: 1360px;
    margin: 0 auto;
  }
  .fl-trust__item {
    display: flex;
    align-items: center;
    gap: 14px;
    text-align: left;
    border-right: 0;
    padding: 0;
    position: relative;
  }
  .fl-trust__item::before {
    content: '';
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background-color: var(--fl-rose-50);
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 24 24' fill='none' stroke='%23D9486A' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='m5 12 5 5L20 7'/></svg>");
    background-repeat: no-repeat;
    background-position: center;
  }
  .fl-trust__num, .fl-trust__label {
    display: none;
  }
  .fl-trust__title {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: var(--fl-ink);
    font-family: var(--fl-font-body);
    line-height: 1.25;
    white-space: nowrap;
  }
  .fl-trust__sub {
    display: block;
    font-size: 12px;
    color: var(--fl-ink-3);
    margin-top: 2px;
  }
  .fl-trust__item > div {
    display: flex;
    flex-direction: column;
  }
}
.site-header, .fl-header {
  position: sticky;
  top: 0;
  z-index: 40;
  background: var(--fl-white);
  border-bottom: 1px solid var(--fl-line);
}
.fl-header__utility {
  background: var(--fl-cream);
  border-bottom: 1px solid var(--fl-line);
  padding: 7px 8px;
  font-size: 11px;
  color: var(--fl-ink-2);
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 28px;
}
.fl-header__location {
  color: var(--fl-rose);
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.fl-header__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 8px;
  min-height: 56px;
}
.fl-header__logo {
  font-family: var(--fl-font-display);
  font-size: 24px;
  font-weight: 500;
  letter-spacing: .06em;
  color: #5689A8;
}
.fl-header__nav {
  display: none;
}
.fl-header__icons {
  display: flex;
  gap: 4px;
}
.fl-header__icon-btn {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: none;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--fl-ink);
  cursor: pointer;
  position: relative;
}
.fl-header__cart-badge {
  position: absolute;
  top: 4px;
  right: 4px;
  min-width: 16px;
  height: 16px;
  border-radius: 8px;
  padding: 0 4px;
  background: var(--fl-rose);
  color: var(--fl-white);
  font-size: 10px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-variant-numeric: tabular-nums;
}
.fl-header__categories {
  display: flex;
  gap: 8px;
  padding: 10px 8px;
  overflow-x: auto;
  scrollbar-width: none;
  border-top: 1px solid var(--fl-line);
  border-bottom: 1px solid var(--fl-line);
  min-height: 44px;
  -webkit-overflow-scrolling: touch;
}
.fl-header__categories::-webkit-scrollbar {
  display: none;
}
.fl-header__categories .fl-pill {
  flex: 0 0 auto;
  font-size: 13px;
}
@media (min-width: 1024px) {
  .fl-header__utility {
    background: var(--fl-ink);
    color: var(--fl-white);
    padding: 8px 40px;
    font-size: 12px;
    min-height: 32px;
  }
  .fl-header__utility a {
    color: rgba(255, 255, 255, .85);
  }
  .fl-header__utility a:hover {
    color: var(--fl-white);
  }
  .fl-header__location {
    color: var(--fl-rose);
  }
  .fl-header__main {
    padding: 14px 40px;
    gap: 32px;
    min-height: 68px;
  }
  .fl-header__logo {
    font-size: 30px;
  }
  .fl-header__nav {
    display: flex;
    gap: 32px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    flex: 1;
    justify-content: center;
  }
  .fl-header__nav a {
    color: var(--fl-ink);
    padding-bottom: 4px;
    border-bottom: 2px solid transparent;
    text-decoration: none;
    transition: color var(--fl-duration) var(--fl-ease), border-color var(--fl-duration) var(--fl-ease);
  }
  .fl-header__nav a:hover, .fl-header__nav a.is-active, .fl-header__nav a.current-menu-item, .fl-header__nav a.current_page_item {
    color: var(--fl-rose);
    border-bottom-color: var(--fl-rose);
  }
  .fl-header__categories {
    display: none;
  }
  .fl-header__icon-btn--cart {
    background: var(--fl-rose-50);
    color: var(--fl-rose);
  }
  .fl-header__icon-btn--cart:hover {
    background: var(--fl-rose-100);
  }
}
.fl-stack > * + * {
  margin-top: var(--fl-s-4);
}
.fl-stack-sm > * + * {
  margin-top: var(--fl-s-2);
}
.fl-stack-lg > * + * {
  margin-top: var(--fl-s-8);
}
.fl-row {
  display: flex;
  align-items: center;
  gap: var(--fl-s-3);
}
.fl-container {
  max-width: 1360px;
  margin: 0 auto;
  padding: 0 var(--fl-s-4);
}
@media (min-width: 768px) {
  .fl-container {
    padding: 0 var(--fl-s-10);
  }
}
.fl-product__hero-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--fl-s-4);
}
@media (min-width: 1024px) {
  .fl-product__hero-grid {
    grid-template-columns: minmax(0, 660px) minmax(0, 1fr);
    gap: 56px;
    align-items: start;
    max-width: var(--fl-container-max);
    margin: 0 auto;
  }
}
.single-product .floralle-breadcrumb-wrapper {
  background: var(--fl-white) !important;
  padding: 0 var(--fl-container-pad) !important;
  border-bottom: 1px solid var(--fl-line);
}
.single-product .floralle-breadcrumb-wrapper .container {
  max-width: var(--fl-container-max) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.single-product .floralle-breadcrumb-wrapper .flex.justify-center {
  justify-content: flex-start;
}
.single-product .floralle-breadcrumb-wrapper nav.breadcrumbs {
  padding: var(--fl-s-3) 0 !important;
  margin: 0 !important;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
}
.single-product .floralle-breadcrumb-wrapper nav.breadcrumbs::-webkit-scrollbar {
  display: none;
}
.single-product .floralle-breadcrumb-wrapper ul {
  display: flex;
  flex-wrap: nowrap;
  gap: 0;
  white-space: nowrap;
  font-size: var(--fl-text-caption);
  color: var(--fl-ink-3);
  list-style: none;
  margin: 0;
  padding: 0;
}
.single-product .floralle-breadcrumb-wrapper li {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0;
}
.single-product .floralle-breadcrumb-wrapper nav.breadcrumbs > ul > li + ::before, .single-product .floralle-breadcrumb-wrapper li + li::before {
  content: "/" !important;
  background-image: none !important;
  background: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
  opacity: .4;
  margin: 0 8px !important;
  padding: 0 !important;
  width: auto !important;
  height: auto !important;
  border: 0 !important;
  transform: none !important;
  color: var(--fl-ink-3);
  font-weight: 400;
}
.single-product .floralle-breadcrumb-wrapper li i, .single-product .floralle-breadcrumb-wrapper li svg {
  display: none !important;
}
.single-product .floralle-breadcrumb-wrapper a {
  color: var(--fl-ink-3);
  text-decoration: none;
  font-weight: 400;
}
.single-product .floralle-breadcrumb-wrapper a:hover {
  color: var(--fl-rose);
}
.single-product .floralle-breadcrumb-wrapper li:last-child span, .single-product .floralle-breadcrumb-wrapper li:last-child {
  color: var(--fl-ink);
  font-weight: 600;
}
@media (min-width: 1024px) {
  .single-product .floralle-breadcrumb-wrapper nav.breadcrumbs {
    padding: 14px 0 !important;
  }
  .single-product .floralle-breadcrumb-wrapper ul {
    font-size: 13px;
  }
}
.fl-gallery {
  display: flex;
  flex-direction: column;
  gap: var(--fl-s-3);
}
.fl-gallery__stage {
  position: relative;
  aspect-ratio: 1 / 1;
  border-radius: 0;
  overflow: hidden;
  background: var(--fl-cream);
  scroll-snap-type: x mandatory;
  display: flex;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.fl-gallery__stage::-webkit-scrollbar {
  display: none;
}
.fl-gallery__slide {
  flex: 0 0 100%;
  scroll-snap-align: center;
  position: relative;
}
.fl-gallery__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.fl-gallery__badge-sale {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 5;
  background: var(--fl-terracotta);
  color: #fff;
  padding: 7px 14px;
  border-radius: var(--fl-r-pill);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-variant-numeric: tabular-nums;
}
.fl-gallery__badge-size {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 5;
  background: rgba(20,15,12,.7);
  color: #fff;
  padding: 5px 10px;
  border-radius: var(--fl-r-pill);
  font-size: 10px;
  font-weight: 600;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  font-variant-numeric: tabular-nums;
}
.fl-gallery__counter {
  position: absolute;
  bottom: 14px;
  left: 14px;
  z-index: 5;
  background: rgba(20,15,12,.7);
  color: #fff;
  padding: 4px 10px;
  border-radius: var(--fl-r-pill);
  font-size: 10px;
  font-weight: 600;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  font-variant-numeric: tabular-nums;
}
.fl-gallery__actions {
  position: absolute;
  bottom: 14px;
  right: 14px;
  z-index: 5;
  display: flex;
  gap: 6px;
}
.fl-gallery__action {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255,255,255,.92);
  border: none;
  color: var(--fl-ink-2);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(6px);
}
.fl-gallery__action:hover {
  background: #fff;
  color: var(--fl-rose);
}
.fl-gallery__thumbs {
  display: flex;
  gap: 6px;
  padding: 10px 14px 0;
  overflow-x: auto;
  list-style: none;
  margin: 0;
  -webkit-overflow-scrolling: touch;
}
.fl-gallery__thumbs::-webkit-scrollbar {
  display: none;
}
.fl-gallery__thumb {
  width: 54px;
  height: 54px;
  flex-shrink: 0;
  border-radius: var(--fl-r-s);
  overflow: hidden;
  border: 1px solid var(--fl-line);
  cursor: pointer;
  padding: 0;
  background: var(--fl-cream);
}
.fl-gallery__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.fl-gallery__thumb.is-active {
  border: 2px solid var(--fl-rose);
}
@media (min-width: 1024px) {
  .fl-gallery__stage {
    aspect-ratio: 1 / 1.05;
    border-radius: var(--fl-r-l);
    border: 1px solid var(--fl-line);
    overflow: hidden;
    display: block;
  }
  .fl-gallery__slide {
    display: none;
    height: 100%;
  }
  .fl-gallery__slide.is-active {
    display: block;
  }
  .fl-gallery__thumbs {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px;
    padding: 0;
  }
  .fl-gallery__thumb {
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
  }
  .fl-gallery__badge-sale {
    top: 18px;
    left: 18px;
    padding: 8px 16px;
    font-size: 13px;
  }
  .fl-gallery__badge-size {
    top: 18px;
    right: 18px;
    padding: 6px 12px;
    font-size: 12px;
  }
  .fl-gallery__counter {
    bottom: 18px;
    left: 18px;
    font-size: 11px;
  }
  .fl-gallery__actions {
    bottom: 18px;
    right: 18px;
  }
}
.fl-product__summary {
  display: flex;
  flex-direction: column;
  gap: var(--fl-s-5);
}
.fl-product__header {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (min-width: 1024px) {
  .fl-product__summary {
    gap: var(--fl-s-6);
  }
  .fl-product__header {
    gap: 12px;
  }
}
.fl-product__eyebrow {
  display: block;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--fl-rose);
  margin: 0 0 var(--fl-s-1);
}
.fl-product__title {
  margin: 0;
  font-family: var(--fl-font-display);
  font-weight: 500;
  font-size: 26px;
  line-height: 1.15;
  letter-spacing: -.015em;
  color: var(--fl-ink);
  text-wrap: pretty;
}
.fl-product__meta {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  font-size: 12px;
  color: var(--fl-ink-3);
}
.fl-product__meta .fl-stars {
  color: #F4A742;
  letter-spacing: 1px;
  font-size: 13px;
}
.fl-product__meta .fl-stars--empty {
  color: var(--fl-line-strong);
}
.fl-product__meta .fl-rating {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.fl-product__meta .fl-rating--interactive {
  gap: 2px;
}
.fl-rating__star {
  background: none;
  border: 0;
  padding: 0;
  color: var(--fl-line-strong);
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  transition: color var(--fl-duration) var(--fl-ease), transform var(--fl-duration) var(--fl-ease);
}
.fl-rating__star:hover, .fl-rating__star.is-hover, .fl-rating__star:focus-visible {
  color: #F4A742;
  outline: none;
  transform: scale(1.05);
}
.fl-product__meta .fl-review-link, .fl-product__meta .fl-review-link--new {
  background: none;
  border: 0;
  padding: 0;
  font: inherit;
  color: var(--fl-ink-3);
  text-decoration: underline;
  text-decoration-style: dotted;
  text-underline-offset: 2px;
  cursor: pointer;
}
.fl-product__meta .fl-review-link--new {
  color: var(--fl-rose);
  font-weight: 600;
}
.fl-product__meta .fl-review-link:hover {
  color: var(--fl-rose);
}
.fl-product__meta .fl-rating-num {
  color: var(--fl-ink);
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.fl-product__meta .fl-review-link {
  color: var(--fl-ink-3);
  text-decoration: underline;
  text-decoration-style: dotted;
  text-underline-offset: 2px;
}
.fl-product__meta .fl-stock-in {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--fl-success);
  font-weight: 600;
}
.fl-product__meta .fl-sep {
  color: var(--fl-line-strong);
}
.fl-product__meta .fl-sku {
  margin-left: auto;
  color: var(--fl-ink-3);
}
@media (min-width: 1024px) {
  .fl-product__title {
    font-size: 42px;
  }
  .fl-product__eyebrow {
    font-size: 12px;
  }
  .fl-product__meta {
    font-size: 13px;
    gap: 18px;
  }
}
.fl-section-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--fl-ink-3);
  margin: 0 0 var(--fl-s-2);
}
.fl-section-label a, .fl-size-help-trigger {
  color: var(--fl-rose);
  text-decoration: underline;
  text-decoration-style: dotted;
  text-underline-offset: 2px;
  background: none;
  border: 0;
  padding: 0;
  font: inherit;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
  font-size: 11px;
  cursor: pointer;
}
.fl-size-help-trigger:hover {
  color: var(--fl-rose-hover);
}
.fl-size-section {
  position: relative;
}
.fl-size-help {
  position: absolute;
  right: 0;
  top: calc(100% + 6px);
  z-index: 30;
  width: min(360px, calc(100vw - 32px));
  background: var(--fl-white);
  border: 1px solid var(--fl-line);
  border-radius: var(--fl-r-l);
  box-shadow: var(--fl-shadow-pop);
  padding: 18px 20px 16px;
  opacity: 0;
  transform: translateY(-4px);
  transition: opacity .15s var(--fl-ease), transform .15s var(--fl-ease);
}
.fl-size-help.is-open {
  opacity: 1;
  transform: translateY(0);
}
.fl-size-help__close {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 28px;
  height: 28px;
  background: none;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  color: var(--fl-ink-3);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.fl-size-help__close:hover {
  color: var(--fl-ink);
  background: var(--fl-cream);
}
.fl-size-help__title {
  margin: 0 0 12px;
  font-family: var(--fl-font-display);
  font-size: 18px;
  font-weight: 500;
  letter-spacing: -.01em;
  color: var(--fl-ink);
}
.fl-size-help__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.fl-size-help__list li {
  font-size: 12px;
  line-height: 1.5;
  color: var(--fl-ink-2);
}
.fl-size-help__list strong {
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: var(--fl-ink);
  margin-bottom: 2px;
}
.fl-size-help__list strong span {
  font-weight: 400;
  color: var(--fl-ink-3);
  font-size: 11px;
}
.fl-size-help__hint {
  margin: 12px 0 0;
  padding-top: 12px;
  border-top: 1px solid var(--fl-line);
  font-size: 11px;
  color: var(--fl-ink-3);
  font-style: italic;
}
.fl-size-tiles {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--fl-s-2);
}
.fl-size-tile {
  position: relative;
  padding: 10px 6px;
  border-radius: var(--fl-r-m);
  border: 1px solid var(--fl-line);
  background: var(--fl-white);
  text-align: center;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 3px;
  transition: all var(--fl-duration) var(--fl-ease);
}
.fl-size-tile input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.fl-size-tile:hover {
  border-color: var(--fl-line-strong);
}
.fl-size-tile.is-active, .fl-size-tile:has(input:checked) {
  border: 1.5px solid var(--fl-rose);
  background: var(--fl-rose-50);
}
.fl-size-tile__head {
  display: inline-flex;
  align-items: baseline;
  gap: 4px;
  margin-bottom: 2px;
}
.fl-size-tile__count {
  font-family: var(--fl-font-display);
  font-size: 22px;
  font-weight: 600;
  line-height: 1;
  color: var(--fl-ink);
  font-variant-numeric: tabular-nums;
}
.fl-size-tile.is-active .fl-size-tile__count, .fl-size-tile:has(input:checked) .fl-size-tile__count {
  color: var(--fl-rose);
}
.fl-size-tile__cap {
  font-size: 10px;
  color: var(--fl-ink-3);
}
.fl-size-tile__label {
  font-size: 12px;
  font-weight: 600;
  color: var(--fl-ink-2);
}
.fl-size-tile__dim {
  font-size: 10px;
  color: var(--fl-ink-3);
  font-variant-numeric: tabular-nums;
}
.fl-size-tile__price {
  font-size: 12px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--fl-ink);
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
}
.fl-size-tile__price-old {
  font-size: 11px;
  font-weight: 400;
  color: var(--fl-ink-3);
  text-decoration: line-through;
}
@media (min-width: 1024px) {
  .fl-size-tile {
    padding: 14px 12px;
    gap: 4px;
    text-align: left;
  }
  .fl-size-tile__count {
    font-size: 24px;
  }
  .fl-size-tile__cap {
    font-size: 11px;
  }
  .fl-size-tile__price {
    font-size: 14px;
  }
  .fl-size-tile__dim {
    font-size: 11px;
  }
}
.fl-pkg-tiles {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--fl-s-2);
}
.fl-pkg-tile {
  position: relative;
  padding: 8px 6px;
  border-radius: var(--fl-r-m);
  border: 1px solid var(--fl-line);
  background: var(--fl-white);
  cursor: pointer;
  text-align: center;
  transition: all var(--fl-duration) var(--fl-ease);
}
.fl-pkg-tile input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.fl-pkg-tile:hover {
  border-color: var(--fl-line-strong);
}
.fl-pkg-tile.is-active, .fl-pkg-tile:has(input:checked) {
  border: 1.5px solid var(--fl-rose);
  background: var(--fl-rose-50);
}
.fl-pkg-tile__swatch {
  height: 24px;
  border-radius: 6px;
  margin-bottom: 6px;
  background: var(--swatch, linear-gradient(135deg, #FCD9DC, #F8B7C0));
  border: 1px solid rgba(0,0,0,.06);
}
.fl-pkg-tile__label {
  font-size: 11px;
  font-weight: 600;
  color: var(--fl-ink);
  display: block;
}
.fl-pkg-tile.is-active .fl-pkg-tile__label, .fl-pkg-tile:has(input:checked) .fl-pkg-tile__label {
  color: var(--fl-rose);
}
.fl-pkg-tile__sub {
  font-size: 9px;
  color: var(--fl-ink-3);
  margin-top: 2px;
  display: block;
}
@media (min-width: 1024px) {
  .fl-pkg-tile {
    padding: 10px 12px;
    text-align: left;
    display: flex;
    align-items: center;
    gap: 10px;
  }
  .fl-pkg-tile__swatch {
    width: 36px;
    height: 36px;
    margin: 0;
    flex-shrink: 0;
    border-radius: 8px;
  }
  .fl-pkg-tile__text-wrap {
    flex: 1;
  }
  .fl-pkg-tile__label {
    font-size: 12px;
  }
  .fl-pkg-tile__sub {
    font-size: 11px;
    margin-top: 0;
  }
}
.fl-product__price-row {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin: 0;
  padding: var(--fl-s-3) 0;
  border-top: 1px solid var(--fl-line);
  border-bottom: 1px solid var(--fl-line);
  font-family: var(--fl-font-body);
  flex-wrap: wrap;
}
.fl-product__price-now {
  font-size: 30px;
  font-weight: 700;
  letter-spacing: -.02em;
  line-height: 1;
  color: var(--fl-ink);
  font-variant-numeric: tabular-nums;
}
.fl-product__price-old {
  font-size: 15px;
  font-weight: 400;
  color: var(--fl-ink-3);
  text-decoration: line-through;
  font-variant-numeric: tabular-nums;
}
.fl-product__discount-pill {
  padding: 3px 10px;
  border-radius: var(--fl-r-pill);
  background: var(--fl-terracotta);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .04em;
}
.fl-product__bonus {
  padding: 3px 10px;
  border-radius: var(--fl-r-pill);
  background: var(--fl-rose-50);
  color: var(--fl-rose);
  font-size: 11px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.fl-product__bonus-row {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin: 10px 0 0;
}
.fl-product__bonus-note {
  font-size: 11px;
  color: var(--fl-ink-3);
  margin: 0;
}
.fl-product__short-desc {
  font-size: 14px;
  line-height: 1.55;
  color: var(--fl-ink-2);
  margin: 0;
  text-wrap: pretty;
}
.fl-product__short-desc p {
  margin: 0;
}
.fl-product__quick-btn {
  width: 100%;
  margin-top: 8px;
}
.fl-qty {
  display: inline-flex;
  align-items: center;
  border-radius: var(--fl-r-pill);
  border: 1px solid var(--fl-line-strong);
  background: var(--fl-white);
  overflow: hidden;
  height: 44px;
  flex-shrink: 0;
}
.fl-qty input, .fl-qty .qty, .fl-qty input[type="number"], .fl-qty input.qty, .fl-qty input.input-text {
  width: 32px;
  height: 100%;
  border: 0 !important;
  outline: none;
  background: transparent !important;
  box-shadow: none !important;
  text-align: center;
  font-size: 14px;
  font-weight: 600;
  font-family: var(--fl-font-body);
  color: var(--fl-ink);
  font-variant-numeric: tabular-nums;
  padding: 0;
  margin: 0;
  -moz-appearance: textfield;
  appearance: textfield;
}
.fl-qty input:focus, .fl-qty .qty:focus, .fl-qty input[type="number"]:focus {
  outline: none;
  box-shadow: none !important;
  border: 0 !important;
}
.fl-qty input::-webkit-outer-spin-button, .fl-qty input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.fl-qty button {
  width: 32px;
  height: 42px;
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 16px;
  color: var(--fl-ink-2);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.fl-qty button:hover {
  color: var(--fl-rose);
}
.fl-product__cart-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: var(--fl-s-3);
}
.fl-product__cart-btn {
  flex: 1;
}
.fl-product__wishlist:hover {
  color: var(--fl-rose);
  border-color: var(--fl-rose);
}
.fl-quick-order {
  display: none;
}
@media (min-width: 1024px) {
  .fl-product__buy-card {
    padding: 22px 24px;
    background: var(--fl-cream);
    border: 1px solid var(--fl-line);
    border-radius: var(--fl-r-l);
  }
  .fl-product__buy-card .fl-product__price-row {
    border: none;
    padding: 0;
    margin-bottom: 6px;
  }
  .fl-product__buy-card .fl-product__price-now {
    font-size: 40px;
  }
  .fl-product__buy-card .fl-product__price-old {
    font-size: 18px;
  }
}
.fl-delivery {
  border: 0;
  padding: 0;
  margin: 0;
}
.fl-delivery__days {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--fl-s-2);
  margin-bottom: var(--fl-s-2);
}
.fl-delivery__day {
  padding: 8px 4px;
  border-radius: var(--fl-r-m);
  border: 1px solid var(--fl-line);
  background: var(--fl-white);
  cursor: pointer;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 2px;
  position: relative;
  transition: all var(--fl-duration) var(--fl-ease);
}
.fl-delivery__day input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.fl-delivery__day.is-active, .fl-delivery__day:has(input:checked) {
  border: 1.5px solid var(--fl-rose);
  background: var(--fl-rose-50);
}
.fl-delivery__day-title {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--fl-ink);
}
.fl-delivery__day.is-active .fl-delivery__day-title, .fl-delivery__day:has(input:checked) .fl-delivery__day-title {
  color: var(--fl-rose);
}
.fl-delivery__day-sub {
  font-size: 9px;
  color: var(--fl-ink-3);
}
.fl-delivery__date {
  width: 100%;
  margin: var(--fl-s-2) 0;
  padding: 10px 12px;
  border: 1px solid var(--fl-line-strong);
  border-radius: var(--fl-r-m);
  font-family: var(--fl-font-body);
  font-size: 14px;
}
.fl-delivery__slots {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
}
.fl-delivery__slot {
  padding: 5px 10px;
  border-radius: var(--fl-r-pill);
  font-size: 10px;
  font-weight: 600;
  border: 1px solid var(--fl-line);
  background: var(--fl-white);
  color: var(--fl-ink-2);
  cursor: pointer;
  font-variant-numeric: tabular-nums;
  position: relative;
  transition: all var(--fl-duration) var(--fl-ease);
}
.fl-delivery__slot input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.fl-delivery__slot.is-active, .fl-delivery__slot:has(input:checked) {
  background: var(--fl-ink);
  color: #fff;
  border-color: var(--fl-ink);
}
.fl-delivery__note {
  margin: 10px 0 0;
  font-size: 12px;
  color: var(--fl-ink-2);
  display: flex;
  align-items: center;
  gap: 6px;
}
.fl-delivery__note svg {
  color: var(--fl-success);
  flex-shrink: 0;
}
@media (min-width: 1024px) {
  .fl-delivery__day {
    padding: 12px 10px;
  }
  .fl-delivery__day-title {
    font-size: 13px;
  }
  .fl-delivery__day-sub {
    font-size: 11px;
  }
  .fl-delivery__slot {
    padding: 6px 14px;
    font-size: 12px;
  }
}
.fl-trust-strip {
  list-style: none;
  margin: 0;
  padding: 12px 0;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 8px;
  border-top: 1px solid var(--fl-line);
  border-bottom: 1px solid var(--fl-line);
}
.fl-trust-strip li {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 600;
  color: var(--fl-ink-2);
  line-height: 1.25;
  text-align: left;
}
.fl-trust-strip__icon {
  width: 28px;
  height: 28px;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--fl-rose-50);
  color: var(--fl-rose);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
}
.fl-trust-strip__icon svg {
  width: 14px;
  height: 14px;
}
@media (min-width: 1024px) {
  .fl-trust-strip {
    padding: 14px 0;
    gap: 14px;
  }
  .fl-trust-strip li {
    font-size: 12px;
  }
  .fl-trust-strip__icon {
    width: 32px;
    height: 32px;
    font-size: 16px;
  }
  .fl-trust-strip__icon svg {
    width: 16px;
    height: 16px;
  }
}
.fl-addons {
  background: var(--fl-cream);
  padding: var(--fl-s-8) var(--fl-container-pad);
}
.fl-addons__head {
  padding: 0 0 var(--fl-s-4);
  max-width: var(--fl-container-max);
  margin: 0 auto;
}
.fl-addons__eyebrow {
  display: block;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--fl-rose);
  margin-bottom: 6px;
}
.fl-addons__title {
  margin: 0;
  font-family: var(--fl-font-display);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -.015em;
  color: var(--fl-ink);
}
.fl-addons__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 10px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
  max-width: var(--fl-container-max);
  margin-left: auto;
  margin-right: auto;
}
.fl-addons__list::-webkit-scrollbar {
  display: none;
}
.fl-addons__card {
  flex: 0 0 150px;
  scroll-snap-align: start;
  background: var(--fl-white);
  border-radius: var(--fl-r-m);
  padding: 14px 12px;
  border: 1px solid var(--fl-line);
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.fl-addons__photo {
  aspect-ratio: 4/3;
  background: var(--fl-cream-2);
  border-radius: var(--fl-r-s);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 36px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  padding: 14px;
}
.fl-addons__photo img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  border-radius: 0;
  mix-blend-mode: multiply;
}
.fl-addons__name {
  margin: 0;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  color: var(--fl-ink);
}
.fl-addons__name a {
  color: inherit;
  text-decoration: none;
}
.fl-addons__name a:hover {
  color: var(--fl-rose);
}
.fl-addons__desc {
  margin: 0;
  font-size: 11px;
  color: var(--fl-ink-3);
}
.fl-addons__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
}
.fl-addons__price {
  font-size: 13px;
  font-weight: 700;
  color: var(--fl-rose);
  font-variant-numeric: tabular-nums;
}
.fl-addons__add {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid var(--fl-rose);
  background: var(--fl-white);
  color: var(--fl-rose);
  cursor: pointer;
  font-size: 16px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  transition: all var(--fl-duration) var(--fl-ease);
}
.fl-addons__add:hover {
  background: var(--fl-rose-50);
}
.fl-addons__add[aria-pressed="true"] {
  background: var(--fl-rose);
  color: #fff;
}
@media (min-width: 1024px) {
  .fl-addons {
    padding: 72px var(--fl-container-pad);
  }
  .fl-addons__head {
    text-align: center;
    padding: 0;
    margin: 0 auto 32px;
    max-width: var(--fl-container-max);
  }
  .fl-addons__title {
    font-size: 38px;
  }
  .fl-addons__list {
    max-width: var(--fl-container-max);
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    overflow: visible;
    padding: 0;
  }
  .fl-addons__card {
    flex: none;
    padding: 24px 22px;
    gap: 14px;
  }
  .fl-addons__photo {
    aspect-ratio: 4/3;
    font-size: 64px;
  }
  .fl-addons__name {
    font-size: 15px;
  }
  .fl-addons__desc {
    font-size: 12px;
  }
  .fl-addons__price {
    font-size: 15px;
  }
  .fl-addons__add {
    width: 36px;
    height: 36px;
    font-size: 18px;
  }
}
.fl-card-message {
  background: var(--fl-white);
  padding: var(--fl-s-8) var(--fl-container-pad);
  border-top: 1px solid var(--fl-line);
  border-bottom: 1px solid var(--fl-line);
}
.fl-card-message__inner {
  max-width: var(--fl-container-max);
  margin: 0 auto;
}
.fl-card-message__copy {
  text-align: left;
}
.fl-card-message__eyebrow {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--fl-rose);
  display: block;
  margin-bottom: 10px;
}
.fl-card-message__title {
  margin: 0 0 12px;
  font-family: var(--fl-font-display);
  font-size: 26px;
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -.015em;
  color: var(--fl-ink);
  text-align: left;
}
.fl-card-message__desc {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: var(--fl-ink-2);
  text-align: left;
}
.fl-card-message__form {
  position: relative;
  background: #FBF6EF;
  border-radius: var(--fl-r-l);
  padding: 24px 24px 20px;
  margin-top: 18px;
  box-shadow: 0 4px 18px rgba(40,20,10,.04);
  overflow: hidden;
}
.fl-card-message__form::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 36px;
  height: 36px;
  background: linear-gradient(225deg, var(--fl-line) 50%, transparent 50%);
  border-bottom-left-radius: 4px;
  pointer-events: none;
}
.fl-card-message__salutation {
  margin: 0 0 8px;
  font-family: var(--fl-font-display);
  font-style: italic;
  font-size: 16px;
  color: var(--fl-ink-3);
  line-height: 1.4;
}
.fl-card-message__form textarea {
  width: 100%;
  min-height: 140px;
  padding: 0;
  border: 0;
  background: transparent;
  font-family: var(--fl-font-display);
  font-style: italic;
  font-size: 18px;
  line-height: 1.55;
  color: var(--fl-ink);
  outline: none;
  resize: none;
  box-sizing: border-box;
}
.fl-card-message__form textarea::placeholder {
  color: var(--fl-ink-3);
  opacity: 1;
}
.fl-card-message__foot {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px dashed var(--fl-line-strong);
  font-size: 12px;
  color: var(--fl-ink-3);
}
.fl-card-message__count {
  font-variant-numeric: tabular-nums;
}
@media (min-width: 1024px) {
  .fl-card-message {
    padding: 72px var(--fl-container-pad);
  }
  .fl-card-message__inner {
    display: grid;
    grid-template-columns: minmax(0, 380px) minmax(0, 1fr);
    gap: 64px;
    align-items: center;
  }
  .fl-card-message__title {
    font-size: 38px;
  }
  .fl-card-message__desc {
    font-size: 14px;
  }
  .fl-card-message__form {
    padding: 32px 36px 24px;
    margin-top: 0;
  }
  .fl-card-message__form::before {
    width: 48px;
    height: 48px;
  }
  .fl-card-message__form textarea {
    font-size: 20px;
    min-height: 200px;
  }
}
.fl-tabs {
  background: var(--fl-cream);
  padding: var(--fl-s-8) var(--fl-container-pad);
}
.fl-tabs__list {
  list-style: none;
  margin: 0 auto 16px;
  padding: 0;
  max-width: var(--fl-container-max);
  display: flex;
  gap: 6px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.fl-tabs__list::-webkit-scrollbar {
  display: none;
}
.fl-tabs__tab {
  padding: 7px 14px;
  border-radius: var(--fl-r-pill);
  font-size: 12px;
  font-weight: 600;
  border: 1px solid var(--fl-line);
  background: var(--fl-white);
  color: var(--fl-ink-2);
  cursor: pointer;
  flex-shrink: 0;
  white-space: nowrap;
  font-family: var(--fl-font-body);
  transition: all var(--fl-duration) var(--fl-ease);
}
.fl-tabs__tab.is-active {
  background: var(--fl-rose);
  color: #fff;
  border-color: var(--fl-rose);
}
.fl-tabs__panel {
  padding: 0 0 var(--fl-s-6);
  max-width: var(--fl-container-max);
  margin: 0 auto;
  font-size: 14px;
  line-height: 1.7;
  color: var(--fl-ink-2);
}
.fl-tabs__panel[hidden] {
  display: none;
}
.fl-tabs__panel p {
  margin: 0 0 14px;
}
.fl-about {
  display: flex;
  flex-direction: column;
  gap: var(--fl-s-6);
}
.fl-about__prose p {
  color: var(--fl-ink-2);
  text-wrap: pretty;
}
.fl-about__quote {
  margin: var(--fl-s-5) 0 0;
  padding: var(--fl-s-3) 0 var(--fl-s-3) var(--fl-s-5);
  border-left: 2px solid var(--fl-rose);
  font-family: var(--fl-font-display);
  font-style: italic;
  font-size: 17px;
  line-height: 1.5;
  color: var(--fl-ink);
}
.fl-about__quote p {
  margin: 0 0 6px;
}
.fl-about__quote cite {
  display: block;
  font-family: var(--fl-font-body);
  font-style: normal;
  font-size: 12px;
  color: var(--fl-ink-3);
}
.fl-about__specs {
  background: var(--fl-white);
  border: 1px solid var(--fl-line);
  border-radius: var(--fl-r-l);
  padding: var(--fl-s-5) var(--fl-s-5);
  align-self: start;
}
.fl-about__specs-title {
  margin: 0 0 var(--fl-s-3);
  font-family: var(--fl-font-display);
  font-size: 20px;
  font-weight: 500;
  letter-spacing: -.01em;
  color: var(--fl-ink);
}
.fl-about__specs-list {
  margin: 0;
  padding: 0;
}
.fl-about__specs-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 12px 0;
  border-top: 1px solid var(--fl-line);
  font-size: 13px;
}
.fl-about__specs-row:first-child {
  border-top: 0;
  padding-top: 0;
}
.fl-about__specs-row dt {
  margin: 0;
  color: var(--fl-ink-3);
  font-weight: 400;
}
.fl-about__specs-row dd {
  margin: 0;
  color: var(--fl-ink);
  font-weight: 600;
  text-align: right;
}
@media (min-width: 1024px) {
  .fl-about {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 340px);
    gap: 56px;
    align-items: start;
  }
  .fl-about__specs {
    padding: var(--fl-s-6);
  }
  .fl-about__specs-title {
    font-size: 22px;
  }
}
.fl-tabs__comp {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.fl-tabs__comp-card {
  background: var(--fl-white);
  border-radius: var(--fl-r-m);
  border: 1px solid var(--fl-line);
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(40,20,10,.04);
}
.fl-tabs__comp-card-img {
  position: relative;
  aspect-ratio: 4/5;
  background: var(--fl-cream);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 40px;
  overflow: hidden;
}
.fl-tabs__comp-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.fl-tabs__comp-card-badge {
  position: absolute;
  left: 10px;
  bottom: 10px;
  background: rgba(20,15,12,.7);
  color: #fff;
  padding: 4px 10px;
  border-radius: var(--fl-r-pill);
  font-size: 11px;
  font-weight: 600;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.fl-tabs__comp-card-body {
  padding: 14px 16px 16px;
}
.fl-tabs__comp-card-name {
  margin: 0;
  display: flex;
  align-items: baseline;
  gap: 8px;
  font-size: 15px;
  font-weight: 600;
  color: var(--fl-ink);
}
.fl-tabs__comp-card-count {
  font-family: var(--fl-font-display);
  font-size: 22px;
  font-weight: 600;
  color: var(--fl-rose);
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
.fl-tabs__comp-card-desc {
  font-size: 12px;
  color: var(--fl-ink-3);
  margin: 6px 0 0;
}
.fl-tabs__care {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
}
.fl-tabs__care-item {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  padding: 18px 0;
  border-top: 1px solid var(--fl-line);
}
.fl-tabs__care-item:first-child {
  border-top: 0;
  padding-top: 0;
}
.fl-tabs__care-num {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--fl-rose-50);
  color: var(--fl-rose);
  font-family: var(--fl-font-display);
  font-style: italic;
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-variant-numeric: tabular-nums;
}
.fl-tabs__care-text {
  flex: 1;
}
.fl-tabs__care-text strong {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: var(--fl-ink);
  margin-bottom: 4px;
}
.fl-tabs__care-text span {
  font-size: 13px;
  line-height: 1.55;
  color: var(--fl-ink-2);
}
.fl-tabs__delivery {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--fl-s-6);
}
.fl-tabs__delivery-title {
  margin: 0 0 14px;
  font-family: var(--fl-font-display);
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -.01em;
  color: var(--fl-ink);
}
.fl-tabs__delivery-list {
  list-style: disc inside;
  margin: 0;
  padding: 0;
}
.fl-tabs__delivery-list li {
  padding: 6px 0 6px 4px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--fl-ink-2);
}
.fl-tabs__delivery-list li::marker {
  color: var(--fl-ink-3);
}
@media (min-width: 1024px) {
  .fl-tabs__delivery {
    grid-template-columns: 1fr 1fr;
    gap: 80px;
  }
}
@media (min-width: 1024px) {
  .fl-tabs {
    padding: 72px var(--fl-container-pad);
  }
  .fl-tabs__list {
    border-bottom: 1px solid var(--fl-line);
    padding: 0;
    margin: 0 auto 32px;
    gap: 0;
  }
  .fl-tabs__tab {
    border: none;
    border-radius: 0;
    background: transparent;
    border-bottom: 2px solid transparent;
    padding: 14px 24px;
    font-size: 14px;
    color: var(--fl-ink-2);
  }
  .fl-tabs__tab.is-active {
    background: transparent;
    color: var(--fl-rose);
    border-bottom: 2px solid var(--fl-rose);
  }
  .fl-tabs__panel {
    padding: 0 0 var(--fl-s-6);
  }
  .fl-tabs__comp {
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
  }
  .fl-tabs__comp-card-name {
    font-size: 16px;
  }
  .fl-tabs__comp-card-count {
    font-size: 24px;
  }
  .fl-tabs__care-num {
    width: 40px;
    height: 40px;
    font-size: 20px;
  }
  .fl-tabs__care-text strong {
    font-size: 16px;
  }
  .fl-tabs__care-text span {
    font-size: 14px;
  }
}
.fl-reviews {
  background: var(--fl-white);
  padding: var(--fl-s-8) var(--fl-container-pad);
}
.fl-reviews__inner {
  max-width: var(--fl-container-max);
  margin: 0 auto;
}
.fl-reviews__head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 14px;
  flex-wrap: wrap;
  gap: 10px;
}
.fl-reviews__agg-num {
  margin: 0;
  font-family: var(--fl-font-display);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: -.015em;
  color: var(--fl-ink);
}
.fl-reviews__stars {
  color: #F4A742;
  font-size: 14px;
  letter-spacing: 1px;
}
.fl-reviews__count {
  font-size: 11px;
  color: var(--fl-ink-3);
  display: block;
}
.fl-reviews__hist {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 18px;
}
.fl-reviews__hist-row {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  color: var(--fl-ink-3);
}
.fl-reviews__hist-bar {
  flex: 1;
  height: 5px;
  background: var(--fl-cream);
  border-radius: 3px;
  overflow: hidden;
  border: 1px solid var(--fl-line);
}
.fl-reviews__hist-fill {
  height: 100%;
  background: #F4A742;
}
.fl-reviews__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.fl-reviews__item {
  background: var(--fl-white);
  border: 1px solid var(--fl-line);
  border-radius: var(--fl-r-m);
  padding: 14px;
  margin-bottom: 12px;
}
.fl-reviews__item-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 6px;
  gap: 10px;
}
.fl-reviews__item-name {
  font-size: 13px;
  font-weight: 700;
  color: var(--fl-ink);
}
.fl-reviews__item-verified {
  display: inline-block;
  padding: 1px 6px;
  border-radius: var(--fl-r-pill);
  background: var(--fl-forest-50);
  color: var(--fl-forest);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .04em;
  text-transform: uppercase;
  margin-left: 8px;
}
.fl-reviews__item-date {
  font-size: 11px;
  color: var(--fl-ink-3);
}
.fl-reviews__item-stars {
  color: #F4A742;
  font-size: 13px;
  letter-spacing: 1px;
  margin-top: 2px;
}
.fl-reviews__item-body {
  margin: 8px 0 0;
  font-size: 12px;
  line-height: 1.55;
  color: var(--fl-ink-2);
  text-wrap: pretty;
}
.fl-reviews__empty {
  text-align: center;
  padding: var(--fl-s-6) 0;
}
.fl-reviews__empty-eyebrow {
  display: block;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--fl-rose);
  margin-bottom: 10px;
}
.fl-reviews__empty-title {
  font-family: var(--fl-font-display);
  font-size: 22px;
  font-weight: 500;
  margin: 0 0 8px;
  color: var(--fl-ink);
}
.fl-reviews__empty-desc {
  font-size: 13px;
  color: var(--fl-ink-2);
  margin: 0 0 18px;
}
.fl-reviews__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: var(--fl-rose);
  color: #fff;
  border: none;
  border-radius: var(--fl-r-pill);
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
}
.fl-reviews__cta:hover {
  background: var(--fl-rose-hover);
  color: #fff;
}
.fl-reviews__form {
  margin-top: var(--fl-s-6);
  padding-top: var(--fl-s-6);
  border-top: 1px solid var(--fl-line);
  max-width: 720px;
  grid-column: 1 / -1;
}
.fl-reviews__form #comments > h2.woocommerce-Reviews-title, .fl-reviews__form .woocommerce-noreviews, .fl-reviews__form .no-comments {
  display: none;
}
.fl-reviews__form #reply-title, .fl-reviews__form .comment-reply-title {
  font-family: var(--fl-font-display);
  font-size: 22px;
  font-weight: 500;
  letter-spacing: -.01em;
  color: var(--fl-ink);
  margin: 0 0 8px;
  display: block;
}
.fl-reviews__form #reply-title small, .fl-reviews__form .comment-reply-title small {
  display: none;
}
.fl-reviews__form .comment-form-rating label, .fl-reviews__form label {
  display: block;
  font-size: 12px;
  font-weight: 600;
  color: var(--fl-ink-2);
  margin-bottom: 6px;
}
.fl-reviews__form p.stars {
  margin: 4px 0 18px;
}
.fl-reviews__form p.stars a {
  color: var(--fl-line-strong);
  text-decoration: none;
  font-size: 22px;
  transition: color var(--fl-duration) var(--fl-ease);
}
.fl-reviews__form p.stars a:hover, .fl-reviews__form p.stars a.active, .fl-reviews__form p.stars.selected a:not(.active) {
  color: #F4A742;
}
.fl-reviews__form p {
  margin: 0 0 16px;
}
.fl-reviews__form input[type="text"], .fl-reviews__form input[type="email"], .fl-reviews__form input[type="url"], .fl-reviews__form textarea {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--fl-line-strong);
  border-radius: var(--fl-r-m);
  background: var(--fl-white);
  font-family: var(--fl-font-body);
  font-size: 14px;
  color: var(--fl-ink);
  outline: none;
  box-sizing: border-box;
}
.fl-reviews__form input:focus, .fl-reviews__form textarea:focus {
  border-color: var(--fl-rose);
  box-shadow: var(--fl-ring-focus);
}
.fl-reviews__form textarea {
  min-height: 110px;
  resize: vertical;
}
.fl-reviews__form .form-submit input[type="submit"], .fl-reviews__form #submit, .fl-reviews__form input.submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 44px !important;
  padding: 0 24px !important;
  background: var(--fl-rose) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--fl-r-pill) !important;
  font-family: var(--fl-font-body) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  cursor: pointer;
  box-shadow: none;
  text-transform: none;
  letter-spacing: 0;
}
.fl-reviews__form .form-submit input[type="submit"]:hover, .fl-reviews__form #submit:hover, .fl-reviews__form input.submit:hover {
  background: var(--fl-rose-hover) !important;
}
.fl-reviews__form .comment-form-cookies-consent {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: var(--fl-ink-3);
}
.fl-reviews__form .comment-form-cookies-consent label {
  font-size: 12px;
  font-weight: 400;
  color: var(--fl-ink-3);
  margin: 0;
  display: inline;
}
.fl-reviews__form .comment-form-cookies-consent input[type="checkbox"] {
  margin: 0;
}
.fl-reviews__form .comment-notes, .fl-reviews__form .logged-in-as {
  font-size: 12px;
  color: var(--fl-ink-3);
  margin-bottom: 18px;
}
@media (min-width: 1024px) {
  .fl-reviews {
    padding: 72px var(--fl-container-pad);
  }
  .fl-reviews__inner {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 56px;
    align-items: start;
  }
  .fl-reviews__head {
    display: block;
  }
  .fl-reviews__agg-num {
    font-size: 36px;
    margin-bottom: 18px;
  }
  .fl-reviews__hist-bar {
    height: 6px;
  }
  .fl-reviews__empty {
    grid-column: 1 / -1;
  }
}
.fl-section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--fl-s-4);
  margin: 0 auto var(--fl-s-5);
  max-width: var(--fl-container-max);
  padding: 0 var(--fl-container-pad);
}
.fl-section-heading__copy {
  min-width: 0;
}
.fl-section-heading__eyebrow {
  display: block;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--fl-rose);
  margin-bottom: 6px;
}
.fl-section-heading__title {
  margin: 0;
  font-family: var(--fl-font-display);
  font-size: 26px;
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -.015em;
  color: var(--fl-ink);
}
.fl-section-heading__link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--fl-rose);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  flex-shrink: 0;
  white-space: nowrap;
}
.fl-section-heading__link:hover {
  color: var(--fl-rose-hover);
}
@media (min-width: 1024px) {
  .fl-section-heading {
    padding: 0;
    margin-bottom: var(--fl-s-6);
  }
  .fl-section-heading__title {
    font-size: 36px;
  }
  .fl-section-heading__link {
    font-size: 14px;
  }
}
.single-product .related.products, .single-product .up-sells.products, .single-product .fl-similar {
  padding: var(--fl-s-8) var(--fl-container-pad);
}
.single-product .fl-similar > .product-carousel-component {
  max-width: var(--fl-container-max);
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .single-product .related.products, .single-product .up-sells.products, .single-product .fl-similar {
    padding: 72px var(--fl-container-pad);
  }
  .single-product .related .products, .single-product .fl-similar__grid {
    max-width: var(--fl-container-max);
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    overflow: visible;
    padding: 0;
  }
  .single-product .related .products > .product, .single-product .fl-similar__grid > * {
    flex: none;
  }
}
.fl-sticky-bar {
  display: none;
}
@media (max-width: 1023px) {
  .fl-sticky-bar {
    display: flex;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 80;
    background: var(--fl-white);
    border-top: 1px solid var(--fl-line);
    padding: 10px 12px;
    gap: 10px;
    align-items: center;
    box-shadow: 0 -8px 24px rgba(40,20,10,.08);
    transform: translateY(100%);
    opacity: 0;
    pointer-events: none;
    transition: transform .25s var(--fl-ease), opacity .25s var(--fl-ease);
  }
  .fl-sticky-bar.is-visible {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
  }
  .fl-sticky-bar__price {
    min-width: 80px;
  }
  .fl-sticky-bar__price-now {
    display: block;
    font-size: 16px;
    font-weight: 700;
    color: var(--fl-ink);
    line-height: 1;
    font-variant-numeric: tabular-nums;
  }
  .fl-sticky-bar__price-old {
    display: block;
    font-size: 10px;
    color: var(--fl-ink-3);
    text-decoration: line-through;
    margin-top: 2px;
    font-variant-numeric: tabular-nums;
  }
  .fl-sticky-bar__cta {
    flex: 1;
  }
  body.single-product {
    padding-bottom: 80px;
  }
}
.testimonials.fl-reviews {
  background: var(--fl-blush);
  padding: 40px 0 32px;
}
.testimonials .fl-reviews__head {
  display: block;
  text-align: center;
  padding: 0 20px;
  margin-bottom: 24px;
}
.testimonials .fl-reviews__list {
  list-style: none;
}
@media (min-width: 768px) {
  .testimonials.fl-reviews {
    padding: 24px 0 72px;
  }
  .testimonials .fl-reviews__head {
    margin-bottom: 32px;
  }
  .testimonials .fl-reviews__list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    overflow: visible;
    padding: 0 40px;
    max-width: 1360px;
    margin: 0 auto;
  }
}
.fl-reviews .fl-reviews__inner {
  display: block;
}
.fl-reviews__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
}
.fl-reviews__aside {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.fl-reviews__eyebrow {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--fl-rose);
}
.fl-reviews__grid .fl-reviews__agg-num {
  margin: 0;
  font-family: var(--fl-font-display);
  font-size: 40px;
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -.015em;
  color: var(--fl-ink);
}
.fl-reviews__grid .fl-reviews__stars {
  color: #F4A742;
  font-size: 18px;
  letter-spacing: 2px;
}
.fl-reviews__basis {
  margin: 0;
  font-size: 13px;
  color: var(--fl-ink-2);
  line-height: 1.5;
}
.fl-reviews__grid .fl-reviews__hist {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 6px 0 4px;
}
.fl-reviews__hist-row {
  display: grid;
  grid-template-columns: 12px 14px 1fr 40px;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: var(--fl-ink-3);
  font-variant-numeric: tabular-nums;
}
.fl-reviews__hist-label {
  text-align: right;
}
.fl-reviews__hist-star {
  color: #F4A742;
  font-size: 12px;
}
.fl-reviews__hist-bar {
  height: 6px;
  background: var(--fl-cream, #f6efe7);
  border-radius: 999px;
  overflow: hidden;
}
.fl-reviews__hist-fill {
  display: block;
  height: 100%;
  background: #F4A742;
  border-radius: inherit;
}
.fl-reviews__hist-pct {
  text-align: right;
}
.fl-reviews__grid .fl-reviews__cta {
  align-self: flex-start;
  margin-top: 8px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: var(--fl-rose);
  color: #fff;
  border: none;
  border-radius: var(--fl-r-pill);
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  transition: background .15s ease;
}
.fl-reviews__grid .fl-reviews__cta:hover {
  background: var(--fl-rose-hover);
  color: #fff;
}
.fl-reviews__main {
  min-width: 0;
}
.fl-reviews__grid .fl-reviews__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}
.fl-reviews__grid .fl-reviews__item {
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--fl-line);
  border-radius: 0;
  padding: 22px 0;
  margin: 0;
}
.fl-reviews__grid .fl-reviews__item:first-child {
  padding-top: 0;
}
.fl-reviews__grid .fl-reviews__item:last-child {
  border-bottom: 0;
}
.fl-reviews__grid .fl-reviews__item-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 6px;
}
.fl-reviews__item-id {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  min-width: 0;
}
.fl-reviews__grid .fl-reviews__item-name {
  font-size: 15px;
  font-weight: 700;
  color: var(--fl-ink);
}
.fl-reviews__item-pill {
  display: inline-block;
  padding: 2px 8px;
  border-radius: var(--fl-r-pill);
  background: var(--fl-forest-50, #e6f0e3);
  color: var(--fl-forest, #2f6b3a);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.fl-reviews__item-pill--google {
  background: #eef2ff;
  color: #3b5bdb;
}
.fl-reviews__grid .fl-reviews__item-date {
  font-size: 12px;
  color: var(--fl-ink-3);
  white-space: nowrap;
  flex: 0 0 auto;
}
.fl-reviews__grid .fl-reviews__item-stars {
  color: #F4A742;
  font-size: 14px;
  letter-spacing: 1px;
  margin: 4px 0 8px;
}
.fl-reviews__grid .fl-reviews__item-body {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: var(--fl-ink-2);
  text-wrap: pretty;
}
.fl-reviews__more {
  display: block;
  width: 100%;
  margin-top: 18px;
  padding: 14px 20px;
  background: transparent;
  border: 1px solid var(--fl-line);
  border-radius: var(--fl-r-pill);
  font-size: 14px;
  font-weight: 600;
  color: var(--fl-ink);
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease;
}
.fl-reviews__more:hover {
  background: var(--fl-blush);
  border-color: var(--fl-rose-50, #f6d8d8);
}
@media (min-width: 900px) {
  .fl-reviews__grid {
    grid-template-columns: minmax(260px, 320px) 1fr;
    gap: 56px;
    align-items: start;
  }
  .fl-reviews__grid .fl-reviews__agg-num {
    font-size: 48px;
  }
  .fl-reviews__grid .fl-reviews__item {
    padding: 26px 0;
  }
}
.fl-reviews__form-source {
  display: none !important;
}
.fl-reviews__popover {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.fl-reviews__popover[hidden] {
  display: none;
}
.fl-reviews__popover-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(20, 12, 8, .45);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
}
.fl-reviews__popover-panel {
  position: relative;
  background: var(--fl-white);
  border-radius: var(--fl-r-l);
  box-shadow: 0 20px 60px rgba(40, 20, 10, .25);
  max-width: 520px;
  width: 100%;
  max-height: 90vh;
  overflow-y: auto;
  padding: 28px 28px 24px;
}
.fl-reviews__popover-close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 32px;
  height: 32px;
  border: 0;
  background: transparent;
  font-size: 24px;
  line-height: 1;
  color: var(--fl-ink-3);
  cursor: pointer;
  border-radius: 50%;
  transition: background .15s ease;
}
.fl-reviews__popover-close:hover {
  background: var(--fl-blush);
  color: var(--fl-ink);
}
.fl-reviews__popover-title {
  margin: 0 0 16px;
  font-family: var(--fl-font-display);
  font-size: 24px;
  font-weight: 500;
  letter-spacing: -.01em;
  color: var(--fl-ink);
}
.fl-reviews__popover-msg {
  margin: 0 0 16px;
  font-size: 14px;
  color: var(--fl-ink-2);
  line-height: 1.5;
}
.fl-reviews__popover-body #commentform {
  margin: 0;
}
.fl-reviews__popover-body #commentform label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 6px;
  color: var(--fl-ink);
}
.fl-reviews__popover-body #commentform .comment-form-rating {
  margin-bottom: 12px;
}
.fl-reviews__popover-body #commentform p.stars {
  margin: 0;
}
.fl-reviews__popover-body #commentform textarea {
  width: 100%;
  min-height: 100px;
  padding: 10px 12px;
  border: 1px solid var(--fl-line);
  border-radius: var(--fl-r-m);
  font: inherit;
  resize: vertical;
}
.fl-reviews__popover-body #commentform .form-submit input[type="submit"] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: var(--fl-rose);
  color: #fff;
  border: 0;
  border-radius: var(--fl-r-pill);
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}
.fl-reviews__popover-body #commentform .form-submit input[type="submit"]:hover {
  background: var(--fl-rose-hover);
}
.fl-reviews__popover-social {
  margin: 12px 0;
}
.fl-reviews__popover-social .nsl-container {
  margin: 0 !important;
}
.fl-reviews__popover-fineprint {
  margin: 12px 0 0;
  font-size: 12px;
  color: var(--fl-ink-3);
  line-height: 1.45;
}
.fl-reviews__item-name--link, .fl-review__name-link {
  color: inherit;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  transition: color .15s ease;
}
.fl-reviews__item-name--link:hover, .fl-review__name-link:hover {
  color: var(--fl-rose);
}
.fl-reviews__item-name-ext, .fl-review__name-ext {
  opacity: .55;
  flex: 0 0 auto;
  transition: opacity .15s ease;
}
.fl-reviews__item-name--link:hover .fl-reviews__item-name-ext, .fl-review__name-link:hover .fl-review__name-ext {
  opacity: 1;
}
.prose .front-page-sections {
  margin-inline: auto;
  max-width: var(--container-7xl);
}
.prose .wc-block-grid {
  margin-inline: auto;
  max-width: var(--container-7xl);
}
.prose .wc-block-grid__products {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: calc(var(--spacing) * 3);
  @media (width >= 48rem) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (width >= 48rem) {
    gap: calc(var(--spacing) * 6);
  }
  @media (width >= 64rem) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.prose .wc-block-grid__product {
  display: flex;
  height: 100%;
  width: 100%;
  flex-direction: column;
  background-color: var(--color-white);
  flex: none !important;
  max-width: none !important;
}
.prose .wc-block-grid__product-image {
  aspect-ratio: 1 / 1;
  width: 100%;
  overflow: hidden;
}
.prose .wc-block-grid__product-link {
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-normal);
  font-weight: var(--font-weight-normal);
  color: var(--color-neutral-800);
  text-decoration-line: none;
  &:hover {
    @media (hover: hover) {
      text-decoration-line: none;
    }
  }
}
.prose .wc-block-grid__product-title {
  font-size: var(--text-base);
  line-height: var(--tw-leading, var(--text-base--line-height));
  --tw-font-weight: var(--font-weight-semibold);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-800);
  text-decoration-line: none;
  &:hover {
    @media (hover: hover) {
      text-decoration-line: none;
    }
  }
  @media (width >= 48rem) {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
}
.prose .wc-block-grid__products .wc-block-grid__product-image img {
  border-radius: var(--radius-lg);
}
.prose .wc-block-grid__product-price {
  margin-bottom: calc(var(--spacing) * 4);
  padding-inline: calc(var(--spacing) * 4);
  font-size: var(--text-xl);
  line-height: var(--tw-leading, var(--text-xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
  color: var(--color-neutral-900);
  @media (width >= 48rem) {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  font-variant-numeric: lining-nums tabular-nums;
}
.prose .wc-block-grid__product-add-to-cart {
  margin-top: auto;
  padding-inline: calc(var(--spacing) * 4);
  padding-bottom: calc(var(--spacing) * 4);
}
.prose .wc-block-grid__product-add-to-cart .wp-block-button__link {
  background-color: #d9486a;
  color: #fff;
  border-radius: 9999px;
  font-weight: 600;
  width: 100%;
  padding: 10px 22px;
  transition: background-color 0.15s ease;
}
.prose .wc-block-grid__product-add-to-cart .wp-block-button__link:hover {
  background-color: #b8395a;
}
.prose .wc-block-grid__product::before {
  display: none;
}
.hero-slider__wrapper {
  height: 100%;
}
.hero-slider__slide {
  height: 100%;
  min-height: clamp(380px, 52vh, 460px);
}
@media (min-width: 768px) {
  .hero-slider__slide {
    min-height: clamp(460px, 60vh, 580px);
  }
}
.hero-slider__nav--prev, .hero-slider__nav--next {
  top: 50%;
  transform: translateY(-50%);
}
.hero-slider__nav--prev {
  left: 1rem;
}
.hero-slider__nav--next {
  right: 1rem;
}
@media (min-width: 768px) {
  .hero-slider__nav--prev {
    left: 1.5rem;
  }
  .hero-slider__nav--next {
    right: 1.5rem;
  }
}
.bestsellers__tabs {
  -webkit-overflow-scrolling: touch;
}
.bestsellers__tabs::-webkit-scrollbar {
  display: none;
}
.bestsellers__products {
  -ms-overflow-style: none;
}
.bestsellers__products::-webkit-scrollbar {
  display: none;
}
.bestsellers__slider--no-scroll .bestsellers__nav-btn {
  display: none;
}
.category-grid__item:hover .category-grid__image {
  --tw-scale-x: 105%;
  --tw-scale-y: 105%;
  --tw-scale-z: 105%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
}
.instagram-feed-grid--columns-1 {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}
.instagram-feed-grid--columns-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.instagram-feed-grid--columns-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.instagram-feed-grid--columns-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.instagram-feed-grid--columns-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.instagram-feed-grid--columns-6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
.instagram-feed--loading::after {
  position: absolute;
  top: calc(1 / 2 * 100%);
  left: calc(1 / 2 * 100%);
  margin-top: calc(var(--spacing) * -5);
  margin-left: calc(var(--spacing) * -5);
  height: calc(var(--spacing) * 10);
  width: calc(var(--spacing) * 10);
  border-radius: calc(infinity * 1px);
  border-style: var(--tw-border-style);
  border-width: 4px;
  border-color: var(--color-gray-200);
  --tw-content: '';
  content: var(--tw-content);
  border-top-color: var(--color-instagram);
  animation: instagram-feed-spin 1s linear infinite;
}
@keyframes instagram-feed-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(180deg);
  }
}
.seo-text__toggle-icon {
  transition: transform 0.2s ease;
}
.seo-text__toggle[aria-expanded='true'] .seo-text__toggle-icon {
  transform: rotate(180deg);
}
.seo-text__expandable {
  max-height: calc(var(--spacing) * 0);
  opacity: 0%;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.seo-text__expandable[style*='display: block'] {
  max-height: 2000px;
  opacity: 100%;
}
.testimonials__wrapper {
  display: flex;
  transition-property: transform, translate, scale, rotate;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.testimonials__slide {
  display: none;
  width: calc(1 / 2 * 100%);
  flex: none;
  --tw-scale-x: 90%;
  --tw-scale-y: 90%;
  --tw-scale-z: 90%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  opacity: 50%;
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.testimonials__slide--active {
  display: block;
  --tw-scale-x: 100%;
  --tw-scale-y: 100%;
  --tw-scale-z: 100%;
  scale: var(--tw-scale-x) var(--tw-scale-y);
  opacity: 100%;
}
.testimonials .ti-widget-container {
  margin: calc(var(--spacing) * 0);
  border-style: var(--tw-border-style);
  border-width: 0px;
  background-color: transparent;
  padding: calc(var(--spacing) * 0);
  --tw-shadow: 0 0 #0000;
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.testimonials .ti-widget {
  margin: calc(var(--spacing) * 0);
  max-width: 100%;
}
.testimonials .ti-widget .ti-widget-content {
  padding: calc(var(--spacing) * 0);
}
.testimonials .ti-widget .ti-widget-review {
  position: relative;
  margin-bottom: calc(var(--spacing) * 4);
  border-radius: var(--radius-lg);
  border-style: var(--tw-border-style);
  border-width: 0px;
  background-color: var(--color-white);
  padding: calc(var(--spacing) * 6);
  --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  transition-property: box-shadow;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 300ms;
  transition-duration: 300ms;
  --tw-ease: var(--ease-in-out);
  transition-timing-function: var(--ease-in-out);
}
.testimonials .ti-widget .ti-widget-review:hover {
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
@layer components {
  .breadcrumbs {
    text-align: center;
  }
  .breadcrumbs .breadcrumbs__list {
    justify-content: center;
  }
  nav[aria-label="Breadcrumb"] {
    text-align: center;
  }
  nav[aria-label="Breadcrumb"] > ul {
    justify-content: center;
  }
}
.d-inline-flex {
  display: inline-flex;
}
.align-center {
  align-items: center;
}
.justify-center {
  justify-content: center;
}
.justify-between {
  justify-content: space-between;
}
.gap-xs {
  gap: calc(var(--spacing) * 1);
}
.gap-sm {
  gap: calc(var(--spacing) * 2);
}
.gap-md {
  gap: calc(var(--spacing) * 4);
}
.gap-lg {
  gap: calc(var(--spacing) * 6);
}
.px-sm {
  padding-inline: calc(var(--spacing) * 2);
}
.px-md {
  padding-inline: calc(var(--spacing) * 4);
}
.px-lg {
  padding-inline: calc(var(--spacing) * 6);
}
.py-xs {
  padding-block: calc(var(--spacing) * 1);
}
.py-sm {
  padding-block: calc(var(--spacing) * 2);
}
.py-md {
  padding-block: calc(var(--spacing) * 4);
}
.py-lg {
  padding-block: calc(var(--spacing) * 6);
}
.mb-sm {
  margin-bottom: calc(var(--spacing) * 2);
}
.mb-md {
  margin-bottom: calc(var(--spacing) * 4);
}
.mb-lg {
  margin-bottom: calc(var(--spacing) * 6);
}
.mt-sm {
  margin-top: calc(var(--spacing) * 2);
}
.mt-md {
  margin-top: calc(var(--spacing) * 4);
}
.mt-lg {
  margin-top: calc(var(--spacing) * 6);
}
.text-small {
  font-size: var(--text-sm);
  line-height: var(--tw-leading, var(--text-sm--line-height));
}
.text-muted {
  color: var(--color-gray-500);
}
.text-dark {
  color: var(--color-gray-900);
}
.bg-light {
  background-color: var(--color-gray-100);
}
.bg-dark {
  background-color: var(--color-gray-900);
}
.border-radius-sm {
  border-radius: var(--radius-sm);
}
.border-radius-md {
  border-radius: var(--radius-md);
}
.border-radius-lg {
  border-radius: var(--radius-lg);
}
.border-radius-circle {
  border-radius: calc(infinity * 1px);
}
.border-none {
  border-style: var(--tw-border-style);
  border-width: 0px;
}
.transition-fast {
  transition-property: all;
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--default-transition-duration));
  --tw-duration: 200ms;
  transition-duration: 200ms;
}
.position-absolute {
  position: absolute;
}
.w-100 {
  width: 100%;
}
.h-100 {
  height: 100%;
}
.flex-wrap {
  flex-wrap: wrap;
}
.bg-gradient-primary {
  background: linear-gradient(135deg, var(--color-primary-600), var(--color-primary-500));
}
.bg-black-50 {
  background-color: rgba(0, 0, 0, 0.5);
}
.bg-black-70 {
  background-color: rgba(0, 0, 0, 0.7);
}
.bg-gradient-instagram {
  background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
}
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: "Manrope", "Helvetica Neue", Arial, sans-serif;
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-red-50: oklch(97.1% 0.013 17.38);
    --color-red-100: oklch(93.6% 0.032 17.717);
    --color-red-200: oklch(88.5% 0.062 18.334);
    --color-red-400: oklch(70.4% 0.191 22.216);
    --color-red-500: oklch(63.7% 0.237 25.331);
    --color-red-600: oklch(57.7% 0.245 27.325);
    --color-red-700: oklch(50.5% 0.213 27.518);
    --color-red-800: oklch(44.4% 0.177 26.899);
    --color-orange-100: oklch(95.4% 0.038 75.164);
    --color-orange-500: oklch(70.5% 0.213 47.604);
    --color-orange-600: oklch(64.6% 0.222 41.116);
    --color-orange-800: oklch(47% 0.157 37.304);
    --color-amber-50: oklch(98.7% 0.022 95.277);
    --color-amber-100: oklch(96.2% 0.059 95.617);
    --color-amber-200: oklch(92.4% 0.12 95.746);
    --color-amber-600: oklch(66.6% 0.179 58.318);
    --color-amber-700: oklch(55.5% 0.163 48.998);
    --color-amber-800: oklch(47.3% 0.137 46.201);
    --color-amber-900: oklch(41.4% 0.112 45.904);
    --color-yellow-100: oklch(97.3% 0.071 103.193);
    --color-yellow-200: oklch(94.5% 0.129 101.54);
    --color-yellow-800: oklch(47.6% 0.114 61.907);
    --color-green-50: oklch(98.2% 0.018 155.826);
    --color-green-100: oklch(96.2% 0.044 156.743);
    --color-green-200: oklch(92.5% 0.084 155.995);
    --color-green-400: oklch(79.2% 0.209 151.711);
    --color-green-500: oklch(72.3% 0.219 149.579);
    --color-green-600: oklch(62.7% 0.194 149.214);
    --color-green-700: oklch(52.7% 0.154 150.069);
    --color-green-800: oklch(44.8% 0.119 151.328);
    --color-emerald-50: oklch(97.9% 0.021 166.113);
    --color-emerald-100: oklch(95% 0.052 163.051);
    --color-emerald-600: oklch(59.6% 0.145 163.225);
    --color-emerald-700: oklch(50.8% 0.118 165.612);
    --color-blue-50: oklch(97% 0.014 254.604);
    --color-blue-100: oklch(93.2% 0.032 255.585);
    --color-blue-200: oklch(88.2% 0.059 254.128);
    --color-blue-400: oklch(70.7% 0.165 254.624);
    --color-blue-600: oklch(54.6% 0.245 262.881);
    --color-blue-700: oklch(48.8% 0.243 264.376);
    --color-blue-800: oklch(42.4% 0.199 265.638);
    --color-purple-100: oklch(94.6% 0.033 307.174);
    --color-purple-600: oklch(55.8% 0.288 302.321);
    --color-pink-50: oklch(97.1% 0.014 343.198);
    --color-rose-50: oklch(96.9% 0.015 12.422);
    --color-rose-100: oklch(94.1% 0.03 12.58);
    --color-rose-200: oklch(89.2% 0.058 10.001);
    --color-rose-300: oklch(81% 0.117 11.638);
    --color-rose-400: oklch(71.2% 0.194 13.428);
    --color-rose-500: oklch(64.5% 0.246 16.439);
    --color-rose-600: oklch(58.6% 0.253 17.585);
    --color-rose-700: oklch(51.4% 0.222 16.935);
    --color-rose-800: oklch(45.5% 0.188 13.697);
    --color-gray-50: oklch(98.5% 0.002 247.839);
    --color-gray-100: oklch(96.7% 0.003 264.542);
    --color-gray-200: oklch(92.8% 0.006 264.531);
    --color-gray-300: oklch(87.2% 0.01 258.338);
    --color-gray-400: oklch(70.7% 0.022 261.325);
    --color-gray-500: oklch(55.1% 0.027 264.364);
    --color-gray-600: oklch(44.6% 0.03 256.802);
    --color-gray-700: oklch(37.3% 0.034 259.733);
    --color-gray-800: oklch(27.8% 0.033 256.848);
    --color-gray-900: oklch(21% 0.034 264.665);
    --color-neutral-50: oklch(98.5% 0 0);
    --color-neutral-100: oklch(97% 0 0);
    --color-neutral-200: oklch(92.2% 0 0);
    --color-neutral-300: oklch(87% 0 0);
    --color-neutral-400: oklch(70.8% 0 0);
    --color-neutral-500: oklch(55.6% 0 0);
    --color-neutral-600: oklch(43.9% 0 0);
    --color-neutral-700: oklch(37.1% 0 0);
    --color-neutral-800: oklch(26.9% 0 0);
    --color-neutral-900: oklch(20.5% 0 0);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --breakpoint-xl: 80rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-5xl: 64rem;
    --container-6xl: 72rem;
    --container-7xl: 80rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 0.875rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.125rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.375rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.5rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-5xl: 3rem;
    --text-5xl--line-height: 1;
    --text-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --text-8xl: 6rem;
    --text-8xl--line-height: 1;
    --font-weight-light: 300;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --tracking-wide: 0.025em;
    --tracking-wider: 0.05em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --radius-sm: 0.25rem;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --radius-2xl: 1rem;
    --drop-shadow-md: 0 3px 3px rgb(0 0 0 / 0.12);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --animate-spin: spin 1s linear infinite;
    --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    --blur-sm: 8px;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --font-display: "Cormorant Garamond", "Times New Roman", Georgia, serif;
    --font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;
    --color-primary-100: #f8dae0;
    --color-primary-500: #d9486a;
    --color-primary-600: #b8395a;
    --color-primary-700: #952d49;
    --color-primary-800: #732339;
    --shadow-card: 0 1px 2px rgba(40, 20, 10, .04), 0 8px 24px rgba(40, 20, 10, .05);
    --shadow-pop: 0 12px 32px rgba(40, 20, 10, .12), 0 24px 64px rgba(40, 20, 10, .10);
    --color-instagram: #e1306c;
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .diff {
    position: relative;
    display: grid;
    width: 100%;
    overflow: hidden;
    webkit-user-select: none;
    user-select: none;
    grid-template-rows: 1fr 1.8rem 1fr;
    direction: ltr;
    container-type: inline-size;
    grid-template-columns: auto 1fr;
    &:focus-visible, &:has(.diff-item-1:focus-visible) {
      outline-style: var(--tw-outline-style);
      outline-width: 2px;
      outline-offset: 1px;
      outline-color: var(--color-base-content);
    }
    &:focus-visible {
      outline-style: var(--tw-outline-style);
      outline-width: 2px;
      outline-offset: 1px;
      outline-color: var(--color-base-content);
      .diff-resizer {
        min-width: 95cqi;
        max-width: 95cqi;
      }
    }
    &:has(.diff-item-1:focus-visible) {
      outline-style: var(--tw-outline-style);
      outline-width: 2px;
      outline-offset: 1px;
      .diff-resizer {
        min-width: 5cqi;
        max-width: 5cqi;
      }
    }
    @supports (-webkit-overflow-scrolling: touch) and (overflow: -webkit-paged-x) {
      &:focus {
        .diff-resizer {
          min-width: 5cqi;
          max-width: 5cqi;
        }
      }
      &:has(.diff-item-1:focus) {
        .diff-resizer {
          min-width: 95cqi;
          max-width: 95cqi;
        }
      }
    }
  }
  .modal {
    pointer-events: none;
    visibility: hidden;
    position: fixed;
    inset: calc(0.25rem * 0);
    margin: calc(0.25rem * 0);
    display: grid;
    height: 100%;
    max-height: none;
    width: 100%;
    max-width: none;
    align-items: center;
    justify-items: center;
    background-color: transparent;
    padding: calc(0.25rem * 0);
    color: inherit;
    overflow-x: hidden;
    transition: translate 0.3s ease-out, visibility 0.3s allow-discrete, background-color 0.3s ease-out, opacity 0.1s ease-out;
    overflow-y: hidden;
    overscroll-behavior: contain;
    z-index: 999;
    scrollbar-gutter: auto;
    &::backdrop {
      display: none;
    }
    &.modal-open, &[open], &:target {
      pointer-events: auto;
      visibility: visible;
      opacity: 100%;
      background-color: oklch(0% 0 0/ 0.4);
      .modal-box {
        translate: 0 0;
        scale: 1;
        opacity: 1;
      }
    }
    @starting-style {
      &.modal-open, &[open], &:target {
        visibility: hidden;
        opacity: 0%;
      }
    }
  }
  .fab {
    pointer-events: none;
    position: fixed;
    inset-inline-end: calc(0.25rem * 4);
    bottom: calc(0.25rem * 4);
    z-index: 999;
    display: flex;
    flex-direction: column-reverse;
    align-items: flex-end;
    gap: calc(0.25rem * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    white-space: nowrap;
    > * {
      pointer-events: auto;
      display: flex;
      align-items: center;
      gap: calc(0.25rem * 2);
      &:hover, &:has(:focus-visible) {
        z-index: 1;
      }
    }
    > [tabindex] {
      &:first-child {
        position: relative;
        display: grid;
        transition-property: opacity, visibility, rotate;
        transition-duration: 0.2s;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
      }
    }
    .fab-close {
      position: absolute;
      inset-inline-end: calc(0.25rem * 0);
      bottom: calc(0.25rem * 0);
    }
    .fab-main-action {
      position: absolute;
      inset-inline-end: calc(0.25rem * 0);
      bottom: calc(0.25rem * 0);
    }
    &:focus-within {
      &:has(.fab-close), &:has(.fab-main-action) {
        > [tabindex] {
          rotate: 90deg;
          opacity: 0%;
        }
      }
      > [tabindex]:first-child {
        pointer-events: none;
      }
      > :nth-child(n + 2) {
        visibility: visible;
        --tw-scale-x: 100%;
        --tw-scale-y: 100%;
        --tw-scale-z: 100%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
        opacity: 100%;
      }
    }
    > :nth-child(n + 2) {
      visibility: hidden;
      --tw-scale-x: 80%;
      --tw-scale-y: 80%;
      --tw-scale-z: 80%;
      scale: var(--tw-scale-x) var(--tw-scale-y);
      opacity: 0%;
      transition-property: opacity, scale, visibility;
      transition-duration: 0.2s;
      transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
      &.fab-main-action, &.fab-close {
        --tw-scale-x: 100%;
        --tw-scale-y: 100%;
        --tw-scale-z: 100%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
    > :nth-child(3) {
      transition-delay: 30ms;
    }
    > :nth-child(4) {
      transition-delay: 60ms;
    }
    > :nth-child(5) {
      transition-delay: 90ms;
    }
    > :nth-child(6) {
      transition-delay: 120ms;
    }
  }
  .tab {
    position: relative;
    display: inline-flex;
    cursor: pointer;
    appearance: none;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    text-align: center;
    webkit-user-select: none;
    user-select: none;
    &:hover {
      @media (hover: hover) {
        color: var(--color-base-content);
      }
    }
    --tab-p: 1rem;
    --tab-bg: var(--color-base-100);
    --tab-border-color: var(--color-base-300);
    --tab-radius-ss: 0;
    --tab-radius-se: 0;
    --tab-radius-es: 0;
    --tab-radius-ee: 0;
    --tab-order: 0;
    --tab-radius-min: calc(0.75rem - var(--border));
    border-color: #0000;
    order: var(--tab-order);
    height: var(--tab-height);
    font-size: 0.875rem;
    padding-inline-start: var(--tab-p);
    padding-inline-end: var(--tab-p);
    &:is(input[type="radio"]) {
      min-width: fit-content;
      &:after {
        content: attr(aria-label);
      }
    }
    &:is(label) {
      position: relative;
      input {
        position: absolute;
        inset: calc(0.25rem * 0);
        cursor: pointer;
        appearance: none;
        opacity: 0%;
      }
    }
    &:checked, &:is(label:has(:checked)), &:is(.tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"]) {
      & + .tab-content {
        display: block;
        height: calc(100% - var(--tab-height) + var(--border));
      }
    }
    &:not( :checked, label:has(:checked), :hover, .tab-active, [aria-selected="true"], [aria-current="true"], [aria-current="page"] ) {
      color: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 50%, transparent);
      }
    }
    &:not(input):empty {
      flex-grow: 1;
      cursor: default;
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    &:focus-visible, &:is(label:has(:checked:focus-visible)) {
      outline: 2px solid currentColor;
      outline-offset: -5px;
    }
    &[disabled] {
      pointer-events: none;
      opacity: 40%;
    }
  }
  .menu {
    display: flex;
    width: fit-content;
    flex-direction: column;
    flex-wrap: wrap;
    padding: calc(0.25rem * 2);
    --menu-active-fg: var(--color-neutral-content);
    --menu-active-bg: var(--color-neutral);
    font-size: 0.875rem;
    :where(li ul) {
      position: relative;
      margin-inline-start: calc(0.25rem * 4);
      padding-inline-start: calc(0.25rem * 2);
      white-space: nowrap;
      &:before {
        position: absolute;
        inset-inline-start: calc(0.25rem * 0);
        top: calc(0.25rem * 3);
        bottom: calc(0.25rem * 3);
        background-color: var(--color-base-content);
        opacity: 10%;
        width: var(--border);
        content: "";
      }
    }
    :where(li > .menu-dropdown:not(.menu-dropdown-show)) {
      display: none;
    }
    :where(li:not(.menu-title) > *:not(ul, details, .menu-title, .btn)), :where(li:not(.menu-title) > details > summary:not(.menu-title)) {
      display: grid;
      grid-auto-flow: column;
      align-content: flex-start;
      align-items: center;
      gap: calc(0.25rem * 2);
      border-radius: var(--radius-field);
      padding-inline: calc(0.25rem * 3);
      padding-block: calc(0.25rem * 1.5);
      text-align: start;
      transition-property: color, background-color, box-shadow;
      transition-duration: 0.2s;
      transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
      grid-auto-columns: minmax(auto, max-content) auto max-content;
      text-wrap: balance;
      user-select: none;
    }
    :where(li > details > summary) {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
      &::-webkit-details-marker {
        display: none;
      }
    }
    :where(li > details > summary), :where(li > .menu-dropdown-toggle) {
      &:after {
        justify-self: flex-end;
        display: block;
        height: 0.375rem;
        width: 0.375rem;
        rotate: -135deg;
        translate: 0 -1px;
        transition-property: rotate, translate;
        transition-duration: 0.2s;
        content: "";
        transform-origin: 50% 50%;
        box-shadow: 2px 2px inset;
        pointer-events: none;
      }
    }
    :where(li > details[open] > summary):after, :where(li > .menu-dropdown-toggle.menu-dropdown-show):after {
      rotate: 45deg;
      translate: 0 1px;
    }
    :where( li:not(.menu-title, .disabled) > *:not(ul, details, .menu-title), li:not(.menu-title, .disabled) > details > summary:not(.menu-title) ):not(.menu-active, :active, .btn) {
      &.menu-focus, &:focus-visible {
        cursor: pointer;
        background-color: var(--color-base-content);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        color: var(--color-base-content);
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
    }
    :where( li:not(.menu-title, .disabled) > *:not(ul, details, .menu-title):not(.menu-active, :active, .btn):hover, li:not(.menu-title, .disabled) > details > summary:not(.menu-title):not(.menu-active, :active, .btn):hover ) {
      cursor: pointer;
      background-color: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
      }
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
      box-shadow: 0 1px oklch(0% 0 0 / 0.01) inset, 0 -1px oklch(100% 0 0 / 0.01) inset;
    }
    :where(li:empty) {
      background-color: var(--color-base-content);
      opacity: 10%;
      margin: 0.5rem 1rem;
      height: 1px;
    }
    :where(li) {
      position: relative;
      display: flex;
      flex-shrink: 0;
      flex-direction: column;
      flex-wrap: wrap;
      align-items: stretch;
      .badge {
        justify-self: flex-end;
      }
      & > *:not(ul, .menu-title, details, .btn):active, & > *:not(ul, .menu-title, details, .btn).menu-active, & > details > summary:active {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
        color: var(--menu-active-fg);
        background-color: var(--menu-active-bg);
        background-size: auto, calc(var(--noise) * 100%);
        background-image: none, var(--fx-noise);
        &:not(&:active) {
          box-shadow: 0 2px calc(var(--depth) * 3px) -2px var(--menu-active-bg);
        }
      }
      &.menu-disabled {
        pointer-events: none;
        color: var(--color-base-content);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
    }
    .dropdown:focus-within {
      .menu-dropdown-toggle:after {
        rotate: 45deg;
        translate: 0 1px;
      }
    }
    .dropdown-content {
      margin-top: calc(0.25rem * 2);
      padding: calc(0.25rem * 2);
      &:before {
        display: none;
      }
    }
  }
  .floating-label {
    position: relative;
    display: block;
    input {
      display: block;
      &::placeholder {
        transition: top 0.1s ease-out, translate 0.1s ease-out, scale 0.1s ease-out, opacity 0.1s ease-out;
      }
    }
    textarea {
      &::placeholder {
        transition: top 0.1s ease-out, translate 0.1s ease-out, scale 0.1s ease-out, opacity 0.1s ease-out;
      }
    }
    > span {
      position: absolute;
      inset-inline-start: calc(0.25rem * 3);
      z-index: 1;
      background-color: var(--color-base-100);
      padding-inline: calc(0.25rem * 1);
      opacity: 0%;
      font-size: 0.875rem;
      top: calc(var(--size-field, 0.25rem) * 10 / 2);
      line-height: 1;
      border-radius: 2px;
      pointer-events: none;
      translate: 0 -50%;
      transition: top 0.1s ease-out, translate 0.1s ease-out, scale 0.1s ease-out, opacity 0.1s ease-out;
    }
    &:focus-within, &:not(:has(input:placeholder-shown, textarea:placeholder-shown)) {
      ::placeholder {
        opacity: 0%;
        top: 0;
        translate: -12.5% calc(-50% - 0.125em);
        scale: 0.75;
        pointer-events: auto;
      }
      > span {
        opacity: 100%;
        top: 0;
        translate: -12.5% calc(-50% - 0.125em);
        scale: 0.75;
        pointer-events: auto;
        z-index: 2;
      }
    }
    &:has(:disabled, [disabled]) {
      > span {
        opacity: 0%;
      }
    }
    &:has(.input-xs, .select-xs, .textarea-xs) span {
      font-size: 0.6875rem;
      top: calc(var(--size-field, 0.25rem) * 6 / 2);
    }
    &:has(.input-sm, .select-sm, .textarea-sm) span {
      font-size: 0.75rem;
      top: calc(var(--size-field, 0.25rem) * 8 / 2);
    }
    &:has(.input-md, .select-md, .textarea-md) span {
      font-size: 0.875rem;
      top: calc(var(--size-field, 0.25rem) * 10 / 2);
    }
    &:has(.input-lg, .select-lg, .textarea-lg) span {
      font-size: 1.125rem;
      top: calc(var(--size-field, 0.25rem) * 12 / 2);
    }
    &:has(.input-xl, .select-xl, .textarea-xl) span {
      font-size: 1.375rem;
      top: calc(var(--size-field, 0.25rem) * 14 / 2);
    }
  }
  .dropdown {
    position: relative;
    display: inline-block;
    position-area: var(--anchor-v, bottom) var(--anchor-h, span-right);
    & > *:not(summary):focus {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    .dropdown-content {
      position: absolute;
    }
    &:not(details, .dropdown-open, .dropdown-hover:hover, :focus-within) {
      .dropdown-content {
        display: none;
        transform-origin: top;
        opacity: 0%;
        scale: 95%;
      }
    }
    &[popover], .dropdown-content {
      z-index: 999;
      @media (prefers-reduced-motion: no-preference) {
        animation: dropdown 0.2s;
        transition-property: opacity, scale, display;
        transition-behavior: allow-discrete;
        transition-duration: 0.2s;
        transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
      }
    }
    @starting-style {
      &[popover], .dropdown-content {
        scale: 95%;
        opacity: 0;
      }
    }
    &.dropdown-open, &:not(.dropdown-hover):focus, &:focus-within {
      > [tabindex]:first-child {
        pointer-events: none;
      }
      .dropdown-content {
        opacity: 100%;
      }
    }
    &.dropdown-hover:hover {
      .dropdown-content {
        opacity: 100%;
        scale: 100%;
      }
    }
    &:is(details) {
      summary {
        &::-webkit-details-marker {
          display: none;
        }
      }
    }
    &.dropdown-open, &:focus, &:focus-within {
      .dropdown-content {
        scale: 100%;
      }
    }
    &:where([popover]) {
      background: #0000;
    }
    &[popover] {
      position: fixed;
      color: inherit;
      @supports not (position-area: bottom) {
        margin: auto;
        &.dropdown-open:not(:popover-open) {
          display: none;
          transform-origin: top;
          opacity: 0%;
          scale: 95%;
        }
        &::backdrop {
          background-color: color-mix(in oklab, #000 30%, #0000);
        }
      }
      &:not(.dropdown-open, :popover-open) {
        display: none;
        transform-origin: top;
        opacity: 0%;
        scale: 95%;
      }
    }
  }
  .btn {
    :where(&) {
      width: unset;
    }
    display: inline-flex;
    flex-shrink: 0;
    cursor: pointer;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 1.5);
    text-align: center;
    vertical-align: middle;
    outline-offset: 2px;
    webkit-user-select: none;
    user-select: none;
    padding-inline: var(--btn-p);
    color: var(--btn-fg);
    --tw-prose-links: var(--btn-fg);
    height: var(--size);
    font-size: var(--fontsize, 0.875rem);
    font-weight: 600;
    outline-color: var(--btn-color, var(--color-base-content));
    transition-property: color, background-color, border-color, box-shadow;
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
    transition-duration: 0.2s;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-color: var(--btn-bg);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--btn-noise);
    border-width: var(--border);
    border-style: solid;
    border-color: var(--btn-border);
    text-shadow: 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 0.15));
    touch-action: manipulation;
    box-shadow: 0 0.5px 0 0.5px oklch(100% 0 0 / calc(var(--depth) * 6%)) inset, var(--btn-shadow);
    --size: calc(var(--size-field, 0.25rem) * 10);
    --btn-bg: var(--btn-color, var(--color-base-200));
    --btn-fg: var(--color-base-content);
    --btn-p: 1rem;
    --btn-border: var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-border: color-mix(in oklab, var(--btn-bg), #000 calc(var(--depth) * 5%));
    }
    --btn-shadow: 0 3px 2px -2px var(--btn-bg),
    0 4px 3px -2px var(--btn-bg);
    @supports (color: color-mix(in lab, red, red)) {
      --btn-shadow: 0 3px 2px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000),
    0 4px 3px -2px color-mix(in oklab, var(--btn-bg) calc(var(--depth) * 30%), #0000);
    }
    --btn-noise: var(--fx-noise);
    .prose & {
      text-decoration-line: none;
    }
    @media (hover: hover) {
      &:hover {
        --btn-bg: var(--btn-color, var(--color-base-200));
        @supports (color: color-mix(in lab, red, red)) {
          --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
        }
      }
    }
    &:focus-visible, &:has(:focus-visible) {
      outline-width: 2px;
      outline-style: solid;
      isolation: isolate;
    }
    &:active:not(.btn-active) {
      translate: 0 0.5px;
      --btn-bg: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 5%);
      }
      --btn-border: var(--btn-color, var(--color-base-200));
      @supports (color: color-mix(in lab, red, red)) {
        --btn-border: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
      }
      --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    }
    &:is(:disabled, [disabled], .btn-disabled) {
      &:not(.btn-link, .btn-ghost) {
        background-color: var(--color-base-content);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
        }
        box-shadow: none;
      }
      pointer-events: none;
      --btn-border: #0000;
      --btn-noise: none;
      --btn-fg: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
      }
      @media (hover: hover) {
        &:hover {
          pointer-events: none;
          background-color: var(--color-neutral);
          @supports (color: color-mix(in lab, red, red)) {
            background-color: color-mix(in oklab, var(--color-neutral) 20%, transparent);
          }
          --btn-border: #0000;
          --btn-fg: var(--color-base-content);
          @supports (color: color-mix(in lab, red, red)) {
            --btn-fg: color-mix(in oklch, var(--color-base-content) 20%, #0000);
          }
        }
      }
    }
    &:is(input[type="checkbox"], input[type="radio"]) {
      appearance: none;
      &::after {
        content: attr(aria-label);
      }
    }
    &:where(input:checked:not(.filter .btn)) {
      --btn-color: var(--color-primary);
      --btn-fg: var(--color-primary-content);
      isolation: isolate;
    }
  }
  .loading {
    pointer-events: none;
    display: inline-block;
    aspect-ratio: 1 / 1;
    background-color: currentcolor;
    vertical-align: middle;
    width: calc(var(--size-selector, 0.25rem) * 6);
    mask-size: 100%;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");
  }
  .pointer-events-none {
    pointer-events: none;
  }
  .collapse {
    &:not(td, tr, colgroup) {
      visibility: visible;
    }
    position: relative;
    display: grid;
    overflow: hidden;
    border-radius: var(--radius-box, 1rem);
    width: 100%;
    grid-template-rows: max-content 0fr;
    grid-template-columns: minmax(0, 1fr);
    isolation: isolate;
    @media (prefers-reduced-motion: no-preference) {
      transition: grid-template-rows 0.2s;
    }
    > input:is([type="checkbox"], [type="radio"]) {
      grid-column-start: 1;
      grid-row-start: 1;
      appearance: none;
      opacity: 0;
      z-index: 1;
      width: 100%;
      padding: 1rem;
      padding-inline-end: 3rem;
      min-height: 1lh;
      transition: background-color 0.2s ease-out;
    }
    &:is([open], [tabindex]:focus:not(.collapse-close), [tabindex]:focus-within:not(.collapse-close)), &:not(.collapse-close):has(> input:is([type="checkbox"], [type="radio"]):checked) {
      grid-template-rows: max-content 1fr;
    }
    &:is([open], [tabindex]:focus:not(.collapse-close), [tabindex]:focus-within:not(.collapse-close)) > .collapse-content, &:not(.collapse-close) > :where(input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-content) {
      visibility: visible;
      min-height: fit-content;
    }
    &:focus-visible, &:has(> input:is([type="checkbox"], [type="radio"]):focus-visible), &:has(summary:focus-visible) {
      outline-color: var(--color-base-content);
      outline-style: solid;
      outline-width: 2px;
      outline-offset: 2px;
    }
    &:not(.collapse-close) {
      > input[type="checkbox"], > input[type="radio"]:not(:checked), > .collapse-title {
        cursor: pointer;
      }
    }
    &[tabindex]:focus:not(.collapse-close, .collapse[open]), &[tabindex]:focus-within:not(.collapse-close, .collapse[open]) {
      > .collapse-title {
        cursor: unset;
      }
    }
    &:is([open], [tabindex]:focus:not(.collapse-close), [tabindex]:focus-within:not(.collapse-close)) > :where(.collapse-content), &:not(.collapse-close) > :where(input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-content) {
      padding-bottom: 1rem;
      @media (prefers-reduced-motion: no-preference) {
        transition: padding 0.2s ease-out, background-color 0.2s ease-out;
      }
    }
    &:is([open]) {
      &.collapse-arrow {
        > .collapse-title:after {
          @media (prefers-reduced-motion: no-preference) {
            transform: translateY(-50%) rotate(225deg);
          }
        }
      }
    }
    &.collapse-open {
      &.collapse-arrow {
        > .collapse-title:after {
          @media (prefers-reduced-motion: no-preference) {
            transform: translateY(-50%) rotate(225deg);
          }
        }
      }
      &.collapse-plus {
        > .collapse-title:after {
          content: "−";
        }
      }
    }
    &[tabindex].collapse-arrow:focus:not(.collapse-close), &.collapse-arrow[tabindex]:focus-within:not(.collapse-close) {
      > .collapse-title:after {
        transform: translateY(-50%) rotate(225deg);
      }
    }
    &.collapse-arrow:not(.collapse-close) {
      > input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-title:after {
        transform: translateY(-50%) rotate(225deg);
      }
    }
    &[open] {
      &.collapse-plus {
        > .collapse-title:after {
          content: "−";
        }
      }
    }
    &[tabindex].collapse-plus:focus:not(.collapse-close) {
      > .collapse-title:after {
        content: "−";
      }
    }
    &.collapse-plus:not(.collapse-close) {
      > input:is([type="checkbox"], [type="radio"]):checked ~ .collapse-title:after {
        content: "−";
      }
    }
    &:is(details) {
      width: 100%;
      @media (prefers-reduced-motion: no-preference) {
        @supports (transition: content-visibility allow-discrete) and (interpolate-size: allow-keywords) {
          &::details-content {
            transition: content-visibility 0.2s allow-discrete, height 0.2s;
            height: 0;
            interpolate-size: allow-keywords;
          }
          &:where([open], .collapse-open)::details-content {
            height: auto;
          }
        }
      }
      & summary {
        position: relative;
        display: block;
        &::-webkit-details-marker {
          display: none;
        }
      }
    }
    &:is(details) summary {
      outline: none;
    }
  }
  .collapse {
    visibility: collapse;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .list {
    display: flex;
    flex-direction: column;
    font-size: 0.875rem;
    :where(.list-row) {
      --list-grid-cols: minmax(0, auto) 1fr;
      position: relative;
      display: grid;
      grid-auto-flow: column;
      gap: calc(0.25rem * 4);
      border-radius: var(--radius-box);
      padding: calc(0.25rem * 4);
      word-break: break-word;
      grid-template-columns: var(--list-grid-cols);
      &:has(.list-col-grow:nth-child(1)) {
        --list-grid-cols: 1fr;
      }
      &:has(.list-col-grow:nth-child(2)) {
        --list-grid-cols: minmax(0, auto) 1fr;
      }
      &:has(.list-col-grow:nth-child(3)) {
        --list-grid-cols: minmax(0, auto) minmax(0, auto) 1fr;
      }
      &:has(.list-col-grow:nth-child(4)) {
        --list-grid-cols: minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr;
      }
      &:has(.list-col-grow:nth-child(5)) {
        --list-grid-cols: minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto) 1fr;
      }
      &:has(.list-col-grow:nth-child(6)) {
        --list-grid-cols: minmax(0, auto) minmax(0, auto) minmax(0, auto) minmax(0, auto)
        minmax(0, auto) 1fr;
      }
      :not(.list-col-wrap) {
        grid-row-start: 1;
      }
    }
    & > :not(:last-child) {
      &.list-row, .list-row {
        &:after {
          content: "";
          border-bottom: var(--border) solid;
          inset-inline: var(--radius-box);
          position: absolute;
          bottom: calc(0.25rem * 0);
          border-color: var(--color-base-content);
          @supports (color: color-mix(in lab, red, red)) {
            border-color: color-mix(in oklab, var(--color-base-content) 5%, transparent);
          }
        }
      }
    }
  }
  .toast {
    position: fixed;
    inset-inline-start: auto;
    inset-inline-end: calc(0.25rem * 4);
    top: auto;
    bottom: calc(0.25rem * 4);
    display: flex;
    flex-direction: column;
    gap: calc(0.25rem * 2);
    background-color: transparent;
    translate: var(--toast-x, 0) var(--toast-y, 0);
    width: max-content;
    max-width: calc(100vw - 2rem);
    & > * {
      @media (prefers-reduced-motion: no-preference) {
        animation: toast 0.25s ease-out;
      }
    }
    &:where(.toast-start) {
      inset-inline-start: calc(0.25rem * 4);
      inset-inline-end: auto;
      --toast-x: 0;
    }
    &:where(.toast-center) {
      inset-inline-start: calc(1/2 * 100%);
      inset-inline-end: calc(1/2 * 100%);
      --toast-x: -50%;
    }
    &:where(.toast-end) {
      inset-inline-start: auto;
      inset-inline-end: calc(0.25rem * 4);
      --toast-x: 0;
    }
    &:where(.toast-bottom) {
      top: auto;
      bottom: calc(0.25rem * 4);
      --toast-y: 0;
    }
    &:where(.toast-middle) {
      top: calc(1/2 * 100%);
      bottom: auto;
      --toast-y: -50%;
    }
    &:where(.toast-top) {
      top: calc(0.25rem * 4);
      bottom: auto;
      --toast-y: 0;
    }
  }
  .toggle {
    border: var(--border) solid currentColor;
    color: var(--input-color);
    position: relative;
    display: inline-grid;
    flex-shrink: 0;
    cursor: pointer;
    appearance: none;
    place-content: center;
    vertical-align: middle;
    webkit-user-select: none;
    user-select: none;
    grid-template-columns: 0fr 1fr 1fr;
    --radius-selector-max: calc(
    var(--radius-selector) + var(--radius-selector) + var(--radius-selector)
  );
    border-radius: calc( var(--radius-selector) + min(var(--toggle-p), var(--radius-selector-max)) + min(var(--border), var(--radius-selector-max)) );
    padding: var(--toggle-p);
    box-shadow: 0 1px currentColor inset;
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000) inset;
    }
    transition: color 0.3s, grid-template-columns 0.2s;
    --input-color: var(--color-base-content);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 50%, #0000);
    }
    --toggle-p: calc(var(--size) * 0.125);
    --size: calc(var(--size-selector, 0.25rem) * 6);
    width: calc((var(--size) * 2) - (var(--border) + var(--toggle-p)) * 2);
    height: var(--size);
    > * {
      z-index: 1;
      grid-column: span 1 / span 1;
      grid-column-start: 2;
      grid-row-start: 1;
      height: 100%;
      cursor: pointer;
      appearance: none;
      background-color: transparent;
      padding: calc(0.25rem * 0.5);
      transition: opacity 0.2s, rotate 0.4s;
      border: none;
      &:focus {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
      &:nth-child(2) {
        color: var(--color-base-100);
        rotate: 0deg;
      }
      &:nth-child(3) {
        color: var(--color-base-100);
        opacity: 0%;
        rotate: -15deg;
      }
    }
    &:has(:checked) {
      > :nth-child(2) {
        opacity: 0%;
        rotate: 15deg;
      }
      > :nth-child(3) {
        opacity: 100%;
        rotate: 0deg;
      }
    }
    &:before {
      position: relative;
      inset-inline-start: calc(0.25rem * 0);
      grid-column-start: 2;
      grid-row-start: 1;
      aspect-ratio: 1 / 1;
      height: 100%;
      border-radius: var(--radius-selector);
      background-color: currentcolor;
      translate: 0;
      --tw-content: "";
      content: var(--tw-content);
      transition: background-color 0.1s, translate 0.2s, inset-inline-start 0.2s;
      box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px currentColor;
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000);
      }
      background-size: auto, calc(var(--noise) * 100%);
      background-image: none, var(--fx-noise);
    }
    @media (forced-colors: active) {
      &:before {
        outline-style: var(--tw-outline-style);
        outline-width: 1px;
        outline-offset: calc(1px * -1);
      }
    }
    @media print {
      &:before {
        outline: 0.25rem solid;
        outline-offset: -1rem;
      }
    }
    &:focus-visible, &:has(:focus-visible) {
      outline: 2px solid currentColor;
      outline-offset: 2px;
    }
    &:checked, &[aria-checked="true"], &:has(> input:checked) {
      grid-template-columns: 1fr 1fr 0fr;
      background-color: var(--color-base-100);
      --input-color: var(--color-base-content);
      &:before {
        background-color: currentcolor;
      }
      @starting-style {
        &:before {
          opacity: 0;
        }
      }
    }
    &:indeterminate {
      grid-template-columns: 0.5fr 1fr 0.5fr;
    }
    &:disabled {
      cursor: not-allowed;
      opacity: 30%;
      &:before {
        background-color: transparent;
        border: var(--border) solid currentColor;
      }
    }
  }
  .input {
    cursor: text;
    border: var(--border) solid #0000;
    position: relative;
    display: inline-flex;
    flex-shrink: 1;
    appearance: none;
    align-items: center;
    gap: calc(0.25rem * 2);
    background-color: var(--color-base-100);
    padding-inline: calc(0.25rem * 3);
    vertical-align: middle;
    white-space: nowrap;
    width: clamp(3rem, 20rem, 100%);
    height: var(--size);
    font-size: 0.875rem;
    touch-action: manipulation;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    border-color: var(--input-color);
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    }
    --size: calc(var(--size-field, 0.25rem) * 10);
    --input-color: var(--color-base-content);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
    &:where(input) {
      display: inline-flex;
    }
    :where(input) {
      display: inline-flex;
      height: 100%;
      width: 100%;
      appearance: none;
      background-color: transparent;
      border: none;
      &:focus, &:focus-within {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
    }
    :where(input[type="url"]), :where(input[type="email"]) {
      direction: ltr;
    }
    :where(input[type="date"]) {
      display: inline-flex;
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
      isolation: isolate;
      z-index: 1;
    }
    &:has(> input[disabled]), &:is(:disabled, [disabled]), fieldset:disabled & {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
      &::placeholder {
        color: var(--color-base-content);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
      box-shadow: none;
    }
    &:has(> input[disabled]) > input[disabled] {
      cursor: not-allowed;
    }
    &::-webkit-date-and-time-value {
      text-align: inherit;
    }
    &[type="number"] {
      &::-webkit-inner-spin-button {
        margin-block: calc(0.25rem * -3);
        margin-inline-end: calc(0.25rem * -3);
      }
    }
    &::-webkit-calendar-picker-indicator {
      position: absolute;
      inset-inline-end: 0.75em;
    }
    &:has(> input[type="date"]) {
      :where(input[type="date"]) {
        display: inline-flex;
        webkit-appearance: none;
        appearance: none;
      }
      input[type="date"]::-webkit-calendar-picker-indicator {
        position: absolute;
        inset-inline-end: 0.75em;
        width: 1em;
        height: 1em;
        cursor: pointer;
      }
    }
  }
  .indicator {
    position: relative;
    display: inline-flex;
    width: max-content;
    :where(.indicator-item) {
      z-index: 1;
      position: absolute;
      white-space: nowrap;
      top: var(--indicator-t, 0);
      bottom: var(--indicator-b, auto);
      left: var(--indicator-s, auto);
      right: var(--indicator-e, 0);
      translate: var(--indicator-x, 50%) var(--indicator-y, -50%);
    }
  }
  .table {
    font-size: 0.875rem;
    position: relative;
    width: 100%;
    border-radius: var(--radius-box);
    text-align: left;
    &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
      text-align: right;
    }
    tr.row-hover {
      &, &:nth-child(even) {
        &:hover {
          @media (hover: hover) {
            background-color: var(--color-base-200);
          }
        }
      }
    }
    :where(th, td) {
      padding-inline: calc(0.25rem * 4);
      padding-block: calc(0.25rem * 3);
      vertical-align: middle;
    }
    :where(thead, tfoot) {
      white-space: nowrap;
      color: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
      }
      font-size: 0.875rem;
      font-weight: 600;
    }
    :where(tfoot) {
      border-top: var(--border) solid var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        border-top: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
      }
    }
    :where(.table-pin-rows thead tr) {
      position: sticky;
      top: calc(0.25rem * 0);
      z-index: 1;
      background-color: var(--color-base-100);
    }
    :where(.table-pin-rows tfoot tr) {
      position: sticky;
      bottom: calc(0.25rem * 0);
      z-index: 1;
      background-color: var(--color-base-100);
    }
    :where(.table-pin-cols tr th) {
      position: sticky;
      right: calc(0.25rem * 0);
      left: calc(0.25rem * 0);
      background-color: var(--color-base-100);
    }
    :where(thead tr, tbody tr:not(:last-child)) {
      border-bottom: var(--border) solid var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        border-bottom: var(--border) solid color-mix(in oklch, var(--color-base-content) 5%, #0000);
      }
    }
  }
  .steps {
    display: inline-grid;
    grid-auto-flow: column;
    overflow: hidden;
    overflow-x: auto;
    counter-reset: step;
    grid-auto-columns: 1fr;
    .step {
      display: grid;
      grid-template-columns: repeat(1, minmax(0, 1fr));
      grid-template-columns: auto;
      grid-template-rows: repeat(2, minmax(0, 1fr));
      grid-template-rows: 40px 1fr;
      place-items: center;
      text-align: center;
      min-width: 4rem;
      --step-bg: var(--color-base-300);
      --step-fg: var(--color-base-content);
      &:before {
        top: calc(0.25rem * 0);
        grid-column-start: 1;
        grid-row-start: 1;
        height: calc(0.25rem * 2);
        width: 100%;
        border: 1px solid;
        color: var(--step-bg);
        background-color: var(--step-bg);
        --tw-content: "";
        content: var(--tw-content);
        margin-inline-start: -100%;
      }
      > .step-icon, &:not(:has(.step-icon)):after {
        content: counter(step);
        counter-increment: step;
        z-index: 1;
        color: var(--step-fg);
        background-color: var(--step-bg);
        border: 1px solid var(--step-bg);
        position: relative;
        grid-column-start: 1;
        grid-row-start: 1;
        display: grid;
        height: calc(0.25rem * 8);
        width: calc(0.25rem * 8);
        place-items: center;
        place-self: center;
        border-radius: calc(infinity * 1px);
      }
      &:first-child:before {
        content: none;
      }
      &[data-content]:after {
        content: attr(data-content);
      }
    }
    .step-neutral {
      + .step-neutral:before, &:after, > .step-icon {
        --step-bg: var(--color-neutral);
        --step-fg: var(--color-neutral-content);
      }
    }
    .step-primary {
      + .step-primary:before, &:after, > .step-icon {
        --step-bg: var(--color-primary);
        --step-fg: var(--color-primary-content);
      }
    }
    .step-secondary {
      + .step-secondary:before, &:after, > .step-icon {
        --step-bg: var(--color-secondary);
        --step-fg: var(--color-secondary-content);
      }
    }
    .step-accent {
      + .step-accent:before, &:after, > .step-icon {
        --step-bg: var(--color-accent);
        --step-fg: var(--color-accent-content);
      }
    }
    .step-info {
      + .step-info:before, &:after, > .step-icon {
        --step-bg: var(--color-info);
        --step-fg: var(--color-info-content);
      }
    }
    .step-success {
      + .step-success:before, &:after, > .step-icon {
        --step-bg: var(--color-success);
        --step-fg: var(--color-success-content);
      }
    }
    .step-warning {
      + .step-warning:before, &:after, > .step-icon {
        --step-bg: var(--color-warning);
        --step-fg: var(--color-warning-content);
      }
    }
    .step-error {
      + .step-error:before, &:after, > .step-icon {
        --step-bg: var(--color-error);
        --step-fg: var(--color-error-content);
      }
    }
  }
  .range {
    appearance: none;
    webkit-appearance: none;
    --range-thumb: var(--color-base-100);
    --range-thumb-size: calc(var(--size-selector, 0.25rem) * 6);
    --range-progress: currentColor;
    --range-fill: 1;
    --range-p: 0.25rem;
    --range-bg: currentColor;
    @supports (color: color-mix(in lab, red, red)) {
      --range-bg: color-mix(in oklab, currentColor 10%, #0000);
    }
    cursor: pointer;
    overflow: hidden;
    background-color: transparent;
    vertical-align: middle;
    width: clamp(3rem, 20rem, 100%);
    --radius-selector-max: calc(
    var(--radius-selector) + var(--radius-selector) + var(--radius-selector)
  );
    border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));
    border: none;
    height: var(--range-thumb-size);
    [dir="rtl"] & {
      --range-dir: -1;
    }
    &:focus {
      outline: none;
    }
    &:focus-visible {
      outline: 2px solid;
      outline-offset: 2px;
    }
    &::-webkit-slider-runnable-track {
      width: 100%;
      background-color: var(--range-bg);
      border-radius: var(--radius-selector);
      height: calc(var(--range-thumb-size) * 0.5);
    }
    @media (forced-colors: active) {
      &::-webkit-slider-runnable-track {
        border: 1px solid;
      }
    }
    @media (forced-colors: active) {
      &::-moz-range-track {
        border: 1px solid;
      }
    }
    &::-webkit-slider-thumb {
      position: relative;
      box-sizing: border-box;
      border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));
      background-color: currentColor;
      height: var(--range-thumb-size);
      width: var(--range-thumb-size);
      border: var(--range-p) solid;
      appearance: none;
      webkit-appearance: none;
      top: 50%;
      color: var(--range-progress);
      transform: translateY(-50%);
      box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100rem) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100rem * var(--range-fill));
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100rem) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100rem * var(--range-fill));
      }
    }
    &::-moz-range-track {
      width: 100%;
      background-color: var(--range-bg);
      border-radius: var(--radius-selector);
      height: calc(var(--range-thumb-size) * 0.5);
    }
    &::-moz-range-thumb {
      position: relative;
      box-sizing: border-box;
      border-radius: calc(var(--radius-selector) + min(var(--range-p), var(--radius-selector-max)));
      background-color: currentColor;
      height: var(--range-thumb-size);
      width: var(--range-thumb-size);
      border: var(--range-p) solid;
      top: 50%;
      color: var(--range-progress);
      box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px currentColor, 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100rem) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100rem * var(--range-fill));
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px color-mix(in oklab, currentColor calc(var(--depth) * 10%), #0000), 0 0 0 2rem var(--range-thumb) inset, calc((var(--range-dir, 1) * -100rem) - (var(--range-dir, 1) * var(--range-thumb-size) / 2)) 0 0 calc(100rem * var(--range-fill));
      }
    }
    &:disabled {
      cursor: not-allowed;
      opacity: 30%;
    }
  }
  .countdown {
    display: inline-flex;
    &.countdown {
      line-height: 1em;
    }
    & > * {
      display: inline-block;
      overflow-y: hidden;
      height: 1em;
      &:before {
        position: relative;
        content: "00\A 01\A 02\A 03\A 04\A 05\A 06\A 07\A 08\A 09\A 10\A 11\A 12\A 13\A 14\A 15\A 16\A 17\A 18\A 19\A 20\A 21\A 22\A 23\A 24\A 25\A 26\A 27\A 28\A 29\A 30\A 31\A 32\A 33\A 34\A 35\A 36\A 37\A 38\A 39\A 40\A 41\A 42\A 43\A 44\A 45\A 46\A 47\A 48\A 49\A 50\A 51\A 52\A 53\A 54\A 55\A 56\A 57\A 58\A 59\A 60\A 61\A 62\A 63\A 64\A 65\A 66\A 67\A 68\A 69\A 70\A 71\A 72\A 73\A 74\A 75\A 76\A 77\A 78\A 79\A 80\A 81\A 82\A 83\A 84\A 85\A 86\A 87\A 88\A 89\A 90\A 91\A 92\A 93\A 94\A 95\A 96\A 97\A 98\A 99\A";
        white-space: pre;
        top: calc(var(--value) * -1em);
        text-align: center;
        transition: all 1s cubic-bezier(1, 0, 0, 1);
      }
    }
  }
  .select {
    border: var(--border) solid #0000;
    position: relative;
    display: inline-flex;
    flex-shrink: 1;
    appearance: none;
    align-items: center;
    gap: calc(0.25rem * 1.5);
    background-color: var(--color-base-100);
    padding-inline-start: calc(0.25rem * 3);
    padding-inline-end: calc(0.25rem * 7);
    vertical-align: middle;
    width: clamp(3rem, 20rem, 100%);
    height: var(--size);
    font-size: 0.875rem;
    touch-action: manipulation;
    border-start-start-radius: var(--join-ss, var(--radius-field));
    border-start-end-radius: var(--join-se, var(--radius-field));
    border-end-start-radius: var(--join-es, var(--radius-field));
    border-end-end-radius: var(--join-ee, var(--radius-field));
    background-image: linear-gradient(45deg, #0000 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, #0000 50%);
    background-position: calc(100% - 20px) calc(1px + 50%), calc(100% - 16.1px) calc(1px + 50%);
    background-size: 4px 4px, 4px 4px;
    background-repeat: no-repeat;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    }
    border-color: var(--input-color);
    --input-color: var(--color-base-content);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
    --size: calc(var(--size-field, 0.25rem) * 10);
    [dir="rtl"] & {
      background-position: calc(0% + 12px) calc(1px + 50%), calc(0% + 16px) calc(1px + 50%);
      &::picker(select), select::picker(select) {
        translate: 0.5rem 0;
      }
    }
    &:where([multiple]) {
      height: auto;
      padding-block: calc(0.25rem * 3);
      padding-inline-end: calc(0.25rem * 3);
      background-image: none;
    }
    select {
      margin-inline-start: calc(0.25rem * -3);
      margin-inline-end: calc(0.25rem * -7);
      width: calc(100% + 2.75rem);
      appearance: none;
      padding-inline-start: calc(0.25rem * 3);
      padding-inline-end: calc(0.25rem * 7);
      height: calc(100% - calc(var(--border) * 2));
      align-items: center;
      background: inherit;
      border-radius: inherit;
      border-style: none;
      &:focus, &:focus-within {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
      &:not(:last-child) {
        margin-inline-end: calc(0.25rem * -5.5);
        background-image: none;
      }
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
      isolation: isolate;
      z-index: 1;
    }
    &:has(> select[disabled]), &:is(:disabled, [disabled]), fieldset:disabled & {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
      &::placeholder {
        color: var(--color-base-content);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
    }
    &:has(> select[disabled]) > select[disabled] {
      cursor: not-allowed;
    }
    &, & select {
      @supports (appearance: base-select) {
        appearance: base-select;
      }
      @supports (appearance: base-select) {
        &::picker(select) {
          appearance: base-select;
        }
      }
      &::picker(select) {
        color: inherit;
        max-height: min(24rem, 70dvh);
        margin-inline: 0.5rem;
        translate: -0.5rem 0;
        border: var(--border) solid var(--color-base-200);
        margin-block: calc(0.25rem * 2);
        border-radius: var(--radius-box);
        padding: calc(0.25rem * 2);
        background-color: inherit;
        box-shadow: 0 2px calc(var(--depth) * 3px) -2px oklch(0% 0 0/0.2);
        box-shadow: 0 20px 25px -5px rgb(0 0 0 / calc(var(--depth) * 0.1)), 0 8px 10px -6px rgb(0 0 0 / calc(var(--depth) * 0.1));
      }
      &::picker-icon {
        display: none;
      }
      optgroup {
        padding-top: 0.5em;
        option {
          &:nth-child(1) {
            margin-top: 0.5em;
          }
        }
      }
      option {
        border-radius: var(--radius-field);
        padding-inline: calc(0.25rem * 3);
        padding-block: calc(0.25rem * 1.5);
        transition-property: color, background-color;
        transition-duration: 0.2s;
        transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
        white-space: normal;
        &:not(:disabled) {
          &:hover, &:focus-visible {
            cursor: pointer;
            background-color: var(--color-base-content);
            @supports (color: color-mix(in lab, red, red)) {
              background-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
            }
            --tw-outline-style: none;
            outline-style: none;
            @media (forced-colors: active) {
              outline: 2px solid transparent;
              outline-offset: 2px;
            }
          }
          &:active {
            background-color: var(--color-neutral);
            color: var(--color-neutral-content);
            box-shadow: 0 2px calc(var(--depth) * 3px) -2px var(--color-neutral);
          }
        }
      }
    }
  }
  .card {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: var(--radius-box);
    outline-width: 2px;
    transition: outline 0.2s ease-in-out;
    outline: 0 solid #0000;
    outline-offset: 2px;
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    &:focus-visible {
      outline-color: currentColor;
    }
    :where(figure:first-child) {
      overflow: hidden;
      border-start-start-radius: inherit;
      border-start-end-radius: inherit;
      border-end-start-radius: unset;
      border-end-end-radius: unset;
    }
    :where(figure:last-child) {
      overflow: hidden;
      border-start-start-radius: unset;
      border-start-end-radius: unset;
      border-end-start-radius: inherit;
      border-end-end-radius: inherit;
    }
    &:where(.card-border) {
      border: var(--border) solid var(--color-base-200);
    }
    &:where(.card-dash) {
      border: var(--border) dashed var(--color-base-200);
    }
    &.image-full {
      display: grid;
      > * {
        grid-column-start: 1;
        grid-row-start: 1;
      }
      > .card-body {
        position: relative;
        color: var(--color-neutral-content);
      }
      :where(figure) {
        overflow: hidden;
        border-radius: inherit;
      }
      > figure img {
        height: 100%;
        object-fit: cover;
        filter: brightness(28%);
      }
    }
    figure {
      display: flex;
      align-items: center;
      justify-content: center;
    }
    &:has(> input:is(input[type="checkbox"], input[type="radio"])) {
      cursor: pointer;
      user-select: none;
    }
    &:has(> :checked) {
      outline: 2px solid currentColor;
    }
  }
  .swap {
    position: relative;
    display: inline-grid;
    cursor: pointer;
    place-content: center;
    vertical-align: middle;
    webkit-user-select: none;
    user-select: none;
    input {
      appearance: none;
      border: none;
    }
    > * {
      grid-column-start: 1;
      grid-row-start: 1;
      @media (prefers-reduced-motion: no-preference) {
        transition-property: transform, rotate, opacity;
        transition-duration: 0.2s;
        transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
      }
    }
    .swap-on, .swap-indeterminate, input:indeterminate ~ .swap-on {
      opacity: 0%;
    }
    input:is(:checked, :indeterminate) {
      & ~ .swap-off {
        opacity: 0%;
      }
    }
    input:checked ~ .swap-on, input:indeterminate ~ .swap-indeterminate {
      opacity: 100%;
      backface-visibility: visible;
    }
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .menu-vertical {
    display: inline-flex;
    flex-direction: column;
    & > li:not(.menu-title) > details > ul {
      position: relative;
      margin-inline-start: calc(0.25rem * 4);
      margin-top: calc(0.25rem * 0);
      padding-block: calc(0.25rem * 0);
      padding-inline-end: calc(0.25rem * 0);
    }
  }
  .avatar {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
    & > div {
      display: block;
      aspect-ratio: 1 / 1;
      overflow: hidden;
    }
    img {
      height: 100%;
      width: 100%;
      object-fit: cover;
    }
  }
  .checkbox {
    border: var(--border) solid var(--input-color, var(--color-base-content));
    @supports (color: color-mix(in lab, red, red)) {
      border: var(--border) solid var(--input-color, color-mix(in oklab, var(--color-base-content) 20%, #0000));
    }
    position: relative;
    display: inline-block;
    flex-shrink: 0;
    cursor: pointer;
    appearance: none;
    border-radius: var(--radius-selector);
    padding: calc(0.25rem * 1);
    vertical-align: middle;
    color: var(--color-base-content);
    box-shadow: 0 1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 0 #0000 inset, 0 0 #0000;
    transition: background-color 0.2s, box-shadow 0.2s;
    --size: calc(var(--size-selector, 0.25rem) * 6);
    width: var(--size);
    height: var(--size);
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--fx-noise);
    &:before {
      --tw-content: "";
      content: var(--tw-content);
      display: block;
      width: 100%;
      height: 100%;
      rotate: 45deg;
      background-color: currentcolor;
      opacity: 0%;
      transition: clip-path 0.3s, opacity 0.1s, rotate 0.3s, translate 0.3s;
      transition-delay: 0.1s;
      clip-path: polygon(20% 100%, 20% 80%, 50% 80%, 50% 80%, 70% 80%, 70% 100%);
      box-shadow: 0px 3px 0 0px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
      font-size: 1rem;
      line-height: 0.75;
    }
    &:focus-visible {
      outline: 2px solid var(--input-color, currentColor);
      outline-offset: 2px;
    }
    &:checked, &[aria-checked="true"] {
      background-color: var(--input-color, #0000);
      box-shadow: 0 0 #0000 inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px oklch(0% 0 0 / calc(var(--depth) * 0.1));
      &:before {
        clip-path: polygon(20% 100%, 20% 80%, 50% 80%, 50% 0%, 70% 0%, 70% 100%);
        opacity: 100%;
      }
      @media (forced-colors: active) {
        &:before {
          rotate: 0deg;
          background-color: transparent;
          --tw-content: "✔︎";
          clip-path: none;
        }
      }
      @media print {
        &:before {
          rotate: 0deg;
          background-color: transparent;
          --tw-content: "✔︎";
          clip-path: none;
        }
      }
    }
    &:indeterminate {
      background-color: var(--input-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        background-color: var(--input-color, color-mix(in oklab, var(--color-base-content) 20%, #0000));
      }
      &:before {
        rotate: 0deg;
        opacity: 100%;
        translate: 0 -35%;
        clip-path: polygon(20% 100%, 20% 80%, 50% 80%, 50% 80%, 80% 80%, 80% 100%);
      }
    }
    &:disabled {
      cursor: not-allowed;
      opacity: 20%;
    }
  }
  .radio {
    position: relative;
    display: inline-block;
    flex-shrink: 0;
    cursor: pointer;
    appearance: none;
    border-radius: calc(infinity * 1px);
    padding: calc(0.25rem * 1);
    vertical-align: middle;
    border: var(--border) solid var(--input-color, currentColor);
    @supports (color: color-mix(in lab, red, red)) {
      border: var(--border) solid var(--input-color, color-mix(in srgb, currentColor 20%, #0000));
    }
    box-shadow: 0 1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset;
    --size: calc(var(--size-selector, 0.25rem) * 6);
    width: var(--size);
    height: var(--size);
    color: var(--input-color, currentColor);
    &:before {
      display: block;
      width: 100%;
      height: 100%;
      border-radius: calc(infinity * 1px);
      --tw-content: "";
      content: var(--tw-content);
      background-size: auto, calc(var(--noise) * 100%);
      background-image: none, var(--fx-noise);
    }
    &:focus-visible {
      outline: 2px solid currentColor;
    }
    &:checked, &[aria-checked="true"] {
      border-color: currentcolor;
      background-color: var(--color-base-100);
      @media (prefers-reduced-motion: no-preference) {
        animation: radio 0.2s ease-out;
      }
      &:before {
        background-color: currentcolor;
        box-shadow: 0 -1px oklch(0% 0 0 / calc(var(--depth) * 0.1)) inset, 0 8px 0 -4px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset, 0 1px oklch(0% 0 0 / calc(var(--depth) * 0.1));
      }
      @media (forced-colors: active) {
        &:before {
          outline-style: var(--tw-outline-style);
          outline-width: 1px;
          outline-offset: calc(1px * -1);
        }
      }
      @media print {
        &:before {
          outline: 0.25rem solid;
          outline-offset: -1rem;
        }
      }
    }
    &:disabled {
      cursor: not-allowed;
      opacity: 20%;
    }
  }
  .rating {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
    & input {
      border: none;
      appearance: none;
    }
    :where(*) {
      height: calc(0.25rem * 6);
      width: calc(0.25rem * 6);
      border-radius: 0;
      background-color: var(--color-base-content);
      opacity: 20%;
      @media (prefers-reduced-motion: no-preference) {
        animation: rating 0.25s ease-out;
      }
      &:is(input) {
        cursor: pointer;
      }
    }
    & .rating-hidden {
      width: calc(0.25rem * 2);
      background-color: transparent;
    }
    input[type="radio"]:checked {
      background-image: none;
    }
    * {
      &:checked, &[aria-checked="true"], &[aria-current="true"], &:has(~ *:checked, ~ *[aria-checked="true"], ~ *[aria-current="true"]) {
        opacity: 100%;
      }
      &:focus-visible {
        scale: 1.1;
        @media (prefers-reduced-motion: no-preference) {
          transition: scale 0.2s ease-out;
        }
      }
    }
    & *:active:focus {
      animation: none;
      scale: 1.1;
    }
    &.rating-xs :where(*:not(.rating-hidden)) {
      width: calc(0.25rem * 4);
      height: calc(0.25rem * 4);
    }
    &.rating-sm :where(*:not(.rating-hidden)) {
      width: calc(0.25rem * 5);
      height: calc(0.25rem * 5);
    }
    &.rating-md :where(*:not(.rating-hidden)) {
      width: calc(0.25rem * 6);
      height: calc(0.25rem * 6);
    }
    &.rating-lg :where(*:not(.rating-hidden)) {
      width: calc(0.25rem * 7);
      height: calc(0.25rem * 7);
    }
    &.rating-xl :where(*:not(.rating-hidden)) {
      width: calc(0.25rem * 8);
      height: calc(0.25rem * 8);
    }
  }
  .stats {
    position: relative;
    display: inline-grid;
    grid-auto-flow: column;
    overflow-x: auto;
    border-radius: var(--radius-box);
  }
  .progress {
    position: relative;
    height: calc(0.25rem * 2);
    width: 100%;
    appearance: none;
    overflow: hidden;
    border-radius: var(--radius-box);
    background-color: currentcolor;
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, currentcolor 20%, transparent);
    }
    color: var(--color-base-content);
    &:indeterminate {
      background-image: repeating-linear-gradient( 90deg, currentColor -1%, currentColor 10%, #0000 10%, #0000 90% );
      background-size: 200%;
      background-position-x: 15%;
      @media (prefers-reduced-motion: no-preference) {
        animation: progress 5s ease-in-out infinite;
      }
      @supports (-moz-appearance: none) {
        &::-moz-progress-bar {
          background-color: transparent;
          @media (prefers-reduced-motion: no-preference) {
            animation: progress 5s ease-in-out infinite;
            background-image: repeating-linear-gradient( 90deg, currentColor -1%, currentColor 10%, #0000 10%, #0000 90% );
            background-size: 200%;
            background-position-x: 15%;
          }
        }
      }
    }
    @supports (-moz-appearance: none) {
      &::-moz-progress-bar {
        border-radius: var(--radius-box);
        background-color: currentcolor;
      }
    }
    @supports (-webkit-appearance: none) {
      &::-webkit-progress-bar {
        border-radius: var(--radius-box);
        background-color: transparent;
      }
      &::-webkit-progress-value {
        border-radius: var(--radius-box);
        background-color: currentColor;
      }
    }
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .inset-y-0 {
    inset-block: calc(var(--spacing) * 0);
  }
  .dropdown-bottom {
    --anchor-v: bottom;
    .dropdown-content {
      top: 100%;
      bottom: auto;
      transform-origin: top;
    }
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-1\/2 {
    top: calc(1 / 2 * 100%);
  }
  .top-2 {
    top: calc(var(--spacing) * 2);
  }
  .top-3 {
    top: calc(var(--spacing) * 3);
  }
  .top-4 {
    top: calc(var(--spacing) * 4);
  }
  .top-6 {
    top: calc(var(--spacing) * 6);
  }
  .top-8 {
    top: calc(var(--spacing) * 8);
  }
  .top-24 {
    top: calc(var(--spacing) * 24);
  }
  .top-\[-5px\] {
    top: -5px;
  }
  .top-full {
    top: 100%;
  }
  .-right-3 {
    right: calc(var(--spacing) * -3);
  }
  .right-0 {
    right: calc(var(--spacing) * 0);
  }
  .right-3 {
    right: calc(var(--spacing) * 3);
  }
  .right-4 {
    right: calc(var(--spacing) * 4);
  }
  .right-\[-20px\] {
    right: -20px;
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .-left-3 {
    left: calc(var(--spacing) * -3);
  }
  .left-0 {
    left: calc(var(--spacing) * 0);
  }
  .left-1\/2 {
    left: calc(1 / 2 * 100%);
  }
  .left-2 {
    left: calc(var(--spacing) * 2);
  }
  .left-3 {
    left: calc(var(--spacing) * 3);
  }
  .left-4 {
    left: calc(var(--spacing) * 4);
  }
  .textarea {
    border: var(--border) solid #0000;
    min-height: calc(0.25rem * 20);
    flex-shrink: 1;
    appearance: none;
    border-radius: var(--radius-field);
    background-color: var(--color-base-100);
    padding-block: calc(0.25rem * 2);
    vertical-align: middle;
    width: clamp(3rem, 20rem, 100%);
    padding-inline-start: 0.75rem;
    padding-inline-end: 0.75rem;
    font-size: 0.875rem;
    touch-action: manipulation;
    border-color: var(--input-color);
    box-shadow: 0 1px var(--input-color) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000) inset, 0 -1px oklch(100% 0 0 / calc(var(--depth) * 0.1)) inset;
    }
    --input-color: var(--color-base-content);
    @supports (color: color-mix(in lab, red, red)) {
      --input-color: color-mix(in oklab, var(--color-base-content) 20%, #0000);
    }
    textarea {
      appearance: none;
      background-color: transparent;
      border: none;
      &:focus, &:focus-within {
        --tw-outline-style: none;
        outline-style: none;
        @media (forced-colors: active) {
          outline: 2px solid transparent;
          outline-offset: 2px;
        }
      }
    }
    &:focus, &:focus-within {
      --input-color: var(--color-base-content);
      box-shadow: 0 1px var(--input-color);
      @supports (color: color-mix(in lab, red, red)) {
        box-shadow: 0 1px color-mix(in oklab, var(--input-color) calc(var(--depth) * 10%), #0000);
      }
      outline: 2px solid var(--input-color);
      outline-offset: 2px;
      isolation: isolate;
    }
    &:has(> textarea[disabled]), &:is(:disabled, [disabled]) {
      cursor: not-allowed;
      border-color: var(--color-base-200);
      background-color: var(--color-base-200);
      color: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
      }
      &::placeholder {
        color: var(--color-base-content);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
        }
      }
      box-shadow: none;
    }
    &:has(> textarea[disabled]) > textarea[disabled] {
      cursor: not-allowed;
    }
  }
  .btn-active {
    --btn-bg: var(--btn-color, var(--color-base-200));
    @supports (color: color-mix(in lab, red, red)) {
      --btn-bg: color-mix(in oklab, var(--btn-color, var(--color-base-200)), #000 7%);
    }
    --btn-shadow: 0 0 0 0 oklch(0% 0 0/0), 0 0 0 0 oklch(0% 0 0/0);
    isolation: isolate;
  }
  .stack {
    display: inline-grid;
    grid-template-columns: 3px 4px 1fr 4px 3px;
    grid-template-rows: 3px 4px 1fr 4px 3px;
    & > * {
      height: 100%;
      width: 100%;
      &:nth-child(n + 2) {
        width: 100%;
        opacity: 70%;
      }
      &:nth-child(2) {
        z-index: 2;
        opacity: 90%;
      }
      &:nth-child(1) {
        z-index: 3;
        width: 100%;
      }
    }
    &, &.stack-bottom {
      > * {
        grid-column: 3 / 4;
        grid-row: 3 / 6;
        &:nth-child(2) {
          grid-column: 2 / 5;
          grid-row: 2 / 5;
        }
        &:nth-child(1) {
          grid-column: 1 / 6;
          grid-row: 1 / 4;
        }
      }
    }
    &.stack-top {
      > * {
        grid-column: 3 / 4;
        grid-row: 1 / 4;
        &:nth-child(2) {
          grid-column: 2 / 5;
          grid-row: 2 / 5;
        }
        &:nth-child(1) {
          grid-column: 1 / 6;
          grid-row: 3 / 6;
        }
      }
    }
    &.stack-start {
      > * {
        grid-column: 1 / 4;
        grid-row: 3 / 4;
        &:nth-child(2) {
          grid-column: 2 / 5;
          grid-row: 2 / 5;
        }
        &:nth-child(1) {
          grid-column: 3 / 6;
          grid-row: 1 / 6;
        }
      }
    }
    &.stack-end {
      > * {
        grid-column: 3 / 6;
        grid-row: 3 / 4;
        &:nth-child(2) {
          grid-column: 2 / 5;
          grid-row: 2 / 5;
        }
        &:nth-child(1) {
          grid-column: 1 / 4;
          grid-row: 1 / 6;
        }
      }
    }
  }
  .z-10 {
    z-index: 10;
  }
  .z-40 {
    z-index: 40;
  }
  .z-50 {
    z-index: 50;
  }
  .z-\[60\] {
    z-index: 60;
  }
  .col-1 {
    grid-column: 1;
  }
  .col-2 {
    grid-column: 2;
  }
  .col-span-1 {
    grid-column: span 1 / span 1;
  }
  .col-span-4 {
    grid-column: span 4 / span 4;
  }
  .col-span-full {
    grid-column: 1 / -1;
  }
  .hero {
    display: grid;
    width: 100%;
    place-items: center;
    background-size: cover;
    background-position: center;
    & > * {
      grid-column-start: 1;
      grid-row-start: 1;
    }
  }
  .modal-box {
    grid-column-start: 1;
    grid-row-start: 1;
    max-height: 100vh;
    width: calc(11/12 * 100%);
    max-width: 32rem;
    background-color: var(--color-base-100);
    padding: calc(0.25rem * 6);
    transition: translate 0.3s ease-out, scale 0.3s ease-out, opacity 0.2s ease-out 0.05s, box-shadow 0.3s ease-out;
    border-top-left-radius: var(--modal-tl, var(--radius-box));
    border-top-right-radius: var(--modal-tr, var(--radius-box));
    border-bottom-left-radius: var(--modal-bl, var(--radius-box));
    border-bottom-right-radius: var(--modal-br, var(--radius-box));
    scale: 95%;
    opacity: 0;
    box-shadow: oklch(0% 0 0/ 0.25) 0px 25px 50px -12px;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .stat-value {
    grid-column-start: 1;
    white-space: nowrap;
    font-size: 2rem;
    font-weight: 800;
  }
  .stat-title {
    grid-column-start: 1;
    white-space: nowrap;
    color: var(--color-base-content);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
    font-size: 0.75rem;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .divider {
    display: flex;
    height: calc(0.25rem * 4);
    flex-direction: row;
    align-items: center;
    align-self: stretch;
    white-space: nowrap;
    margin: var(--divider-m, 1rem 0);
    --divider-color: var(--color-base-content);
    @supports (color: color-mix(in lab, red, red)) {
      --divider-color: color-mix(in oklab, var(--color-base-content) 10%, transparent);
    }
    &:before, &:after {
      content: "";
      height: calc(0.25rem * 0.5);
      width: 100%;
      flex-grow: 1;
      background-color: var(--divider-color);
    }
    @media print {
      &:before, &:after {
        border: 0.5px solid;
      }
    }
    &:not(:empty) {
      gap: calc(0.25rem * 4);
    }
  }
  .m-0 {
    margin: calc(var(--spacing) * 0);
  }
  .m-2 {
    margin: calc(var(--spacing) * 2);
  }
  .m-2\.5 {
    margin: calc(var(--spacing) * 2.5);
  }
  .filter {
    display: flex;
    flex-wrap: wrap;
    input[type="radio"] {
      width: auto;
    }
    input {
      overflow: hidden;
      opacity: 100%;
      scale: 1;
      transition: margin 0.1s, opacity 0.3s, padding 0.3s, border-width 0.1s;
      &:not(:last-child) {
        margin-inline-end: calc(0.25rem * 1);
      }
      &.filter-reset {
        aspect-ratio: 1 / 1;
        &::after {
          content: "×";
        }
      }
    }
    &:not(:has(input:checked:not(.filter-reset))) {
      .filter-reset, input[type="reset"] {
        scale: 0;
        border-width: 0;
        margin-inline: calc(0.25rem * 0);
        width: calc(0.25rem * 0);
        padding-inline: calc(0.25rem * 0);
        opacity: 0%;
      }
    }
    &:has(input:checked:not(.filter-reset)) {
      input:not(:checked, .filter-reset, input[type="reset"]) {
        scale: 0;
        border-width: 0;
        margin-inline: calc(0.25rem * 0);
        width: calc(0.25rem * 0);
        padding-inline: calc(0.25rem * 0);
        opacity: 0%;
      }
    }
  }
  .mx-4 {
    margin-inline: calc(var(--spacing) * 4);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .my-2 {
    margin-block: calc(var(--spacing) * 2);
  }
  .my-2\.5 {
    margin-block: calc(var(--spacing) * 2.5);
  }
  .my-6 {
    margin-block: calc(var(--spacing) * 6);
  }
  .label {
    display: inline-flex;
    align-items: center;
    gap: calc(0.25rem * 1.5);
    white-space: nowrap;
    color: currentcolor;
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, currentcolor 60%, transparent);
    }
    &:has(input) {
      cursor: pointer;
    }
    &:is(.input > *, .select > *) {
      display: flex;
      height: calc(100% - 0.5rem);
      align-items: center;
      padding-inline: calc(0.25rem * 3);
      white-space: nowrap;
      font-size: inherit;
      &:first-child {
        margin-inline-start: calc(0.25rem * -3);
        margin-inline-end: calc(0.25rem * 3);
        border-inline-end: var(--border) solid currentColor;
        @supports (color: color-mix(in lab, red, red)) {
          border-inline-end: var(--border) solid color-mix(in oklab, currentColor 10%, #0000);
        }
      }
      &:last-child {
        margin-inline-start: calc(0.25rem * 3);
        margin-inline-end: calc(0.25rem * -3);
        border-inline-start: var(--border) solid currentColor;
        @supports (color: color-mix(in lab, red, red)) {
          border-inline-start: var(--border) solid color-mix(in oklab, currentColor 10%, #0000);
        }
      }
    }
  }
  .mt-0 {
    margin-top: calc(var(--spacing) * 0);
  }
  .mt-0\.5 {
    margin-top: calc(var(--spacing) * 0.5);
  }
  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-5 {
    margin-top: calc(var(--spacing) * 5);
  }
  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }
  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }
  .mt-10 {
    margin-top: calc(var(--spacing) * 10);
  }
  .mt-12 {
    margin-top: calc(var(--spacing) * 12);
  }
  .mt-16 {
    margin-top: calc(var(--spacing) * 16);
  }
  .mt-auto {
    margin-top: auto;
  }
  .breadcrumbs {
    max-width: 100%;
    overflow-x: auto;
    padding-block: calc(0.25rem * 2);
    > menu, > ul, > ol {
      display: flex;
      min-height: min-content;
      align-items: center;
      white-space: nowrap;
      > li {
        display: flex;
        align-items: center;
        > * {
          display: flex;
          cursor: pointer;
          align-items: center;
          gap: calc(0.25rem * 2);
          &:hover {
            @media (hover: hover) {
              text-decoration-line: underline;
            }
          }
          &:focus {
            --tw-outline-style: none;
            outline-style: none;
            @media (forced-colors: active) {
              outline: 2px solid transparent;
              outline-offset: 2px;
            }
          }
          &:focus-visible {
            outline: 2px solid currentColor;
            outline-offset: 2px;
          }
        }
        & + *:before {
          content: "";
          margin-right: calc(0.25rem * 3);
          margin-left: calc(0.25rem * 2);
          display: block;
          height: calc(0.25rem * 1.5);
          width: calc(0.25rem * 1.5);
          opacity: 40%;
          rotate: 45deg;
          border-top: 1px solid;
          border-right: 1px solid;
          background-color: #0000;
        }
        [dir="rtl"] & + *:before {
          rotate: -135deg;
        }
      }
    }
  }
  .mr-1 {
    margin-right: calc(var(--spacing) * 1);
  }
  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }
  .mr-2\.5 {
    margin-right: calc(var(--spacing) * 2.5);
  }
  .mr-4 {
    margin-right: calc(var(--spacing) * 4);
  }
  .fieldset-legend {
    margin-bottom: calc(0.25rem * -1);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(0.25rem * 2);
    padding-block: calc(0.25rem * 2);
    color: var(--color-base-content);
    font-weight: 600;
  }
  .mb-0 {
    margin-bottom: calc(var(--spacing) * 0);
  }
  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-2\.5 {
    margin-bottom: calc(var(--spacing) * 2.5);
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-5 {
    margin-bottom: calc(var(--spacing) * 5);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .mb-10 {
    margin-bottom: calc(var(--spacing) * 10);
  }
  .mb-12 {
    margin-bottom: calc(var(--spacing) * 12);
  }
  .mb-16 {
    margin-bottom: calc(var(--spacing) * 16);
  }
  .ml-1 {
    margin-left: calc(var(--spacing) * 1);
  }
  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }
  .ml-3 {
    margin-left: calc(var(--spacing) * 3);
  }
  .ml-4 {
    margin-left: calc(var(--spacing) * 4);
  }
  .ml-auto {
    margin-left: auto;
  }
  .carousel-item {
    box-sizing: content-box;
    display: flex;
    flex: none;
    scroll-snap-align: start;
  }
  .status {
    display: inline-block;
    aspect-ratio: 1 / 1;
    width: calc(0.25rem * 2);
    height: calc(0.25rem * 2);
    border-radius: var(--radius-selector);
    background-color: var(--color-base-content);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
    }
    background-position: center;
    background-repeat: no-repeat;
    vertical-align: middle;
    color: color-mix(in srgb, #000 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-black) 30%, transparent);
    }
    background-image: radial-gradient( circle at 35% 30%, oklch(1 0 0 / calc(var(--depth) * 0.5)), #0000 );
    box-shadow: 0 2px 3px -1px currentColor;
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 2px 3px -1px color-mix(in oklab, currentColor calc(var(--depth) * 100%), #0000);
    }
  }
  .badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: calc(0.25rem * 2);
    border-radius: var(--radius-selector);
    vertical-align: middle;
    color: var(--badge-fg);
    border: var(--border) solid var(--badge-color, var(--color-base-200));
    font-size: 0.875rem;
    width: fit-content;
    padding-inline: calc(0.25rem * 3 - var(--border));
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--fx-noise);
    background-color: var(--badge-bg);
    --badge-bg: var(--badge-color, var(--color-base-100));
    --badge-fg: var(--color-base-content);
    --size: calc(var(--size-selector, 0.25rem) * 6);
    height: var(--size);
  }
  .tabs {
    display: flex;
    flex-wrap: wrap;
    --tabs-height: auto;
    --tabs-direction: row;
    --tab-height: calc(var(--size-field, 0.25rem) * 10);
    height: var(--tabs-height);
    flex-direction: var(--tabs-direction);
  }
  .footer {
    display: grid;
    width: 100%;
    grid-auto-flow: row;
    place-items: start;
    column-gap: calc(0.25rem * 4);
    row-gap: calc(0.25rem * 10);
    font-size: 0.875rem;
    line-height: 1.25rem;
    & > * {
      display: grid;
      place-items: start;
      gap: calc(0.25rem * 2);
    }
    &.footer-center {
      grid-auto-flow: column dense;
      place-items: center;
      text-align: center;
      & > * {
        place-items: center;
      }
    }
  }
  .stat {
    display: inline-grid;
    width: 100%;
    column-gap: calc(0.25rem * 4);
    padding-inline: calc(0.25rem * 6);
    padding-block: calc(0.25rem * 4);
    grid-template-columns: repeat(1, 1fr);
    &:not(:last-child) {
      border-inline-end: var(--border) dashed currentColor;
      @supports (color: color-mix(in lab, red, red)) {
        border-inline-end: var(--border) dashed color-mix(in oklab, currentColor 10%, #0000);
      }
      border-block-end: none;
    }
  }
  .card-body {
    display: flex;
    flex: auto;
    flex-direction: column;
    gap: calc(0.25rem * 2);
    padding: var(--card-p, 1.5rem);
    font-size: var(--card-fs, 0.875rem);
    :where(p) {
      flex-grow: 1;
    }
  }
  .carousel {
    display: inline-flex;
    overflow-x: scroll;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    @media (prefers-reduced-motion: no-preference) {
      scroll-behavior: smooth;
    }
    &::-webkit-scrollbar {
      display: none;
    }
  }
  .alert {
    display: grid;
    align-items: center;
    gap: calc(0.25rem * 4);
    border-radius: var(--radius-box);
    padding-inline: calc(0.25rem * 4);
    padding-block: calc(0.25rem * 3);
    color: var(--color-base-content);
    background-color: var(--alert-color, var(--color-base-200));
    justify-content: start;
    justify-items: start;
    grid-auto-flow: column;
    grid-template-columns: auto;
    text-align: start;
    border: var(--border) solid var(--color-base-200);
    font-size: 0.875rem;
    line-height: 1.25rem;
    background-size: auto, calc(var(--noise) * 100%);
    background-image: none, var(--fx-noise);
    box-shadow: 0 3px 0 -2px oklch(100% 0 0 / calc(var(--depth) * 0.08)) inset, 0 1px #000, 0 4px 3px -2px oklch(0% 0 0 / calc(var(--depth) * 0.08));
    @supports (color: color-mix(in lab, red, red)) {
      box-shadow: 0 3px 0 -2px oklch(100% 0 0 / calc(var(--depth) * 0.08)) inset, 0 1px color-mix( in oklab, color-mix(in oklab, #000 20%, var(--alert-color, var(--color-base-200))) calc(var(--depth) * 20%), #0000 ), 0 4px 3px -2px oklch(0% 0 0 / calc(var(--depth) * 0.08));
    }
    &:has(:nth-child(2)) {
      grid-template-columns: auto minmax(auto, 1fr);
    }
    &.alert-outline {
      background-color: transparent;
      color: var(--alert-color);
      box-shadow: none;
      background-image: none;
    }
    &.alert-dash {
      background-color: transparent;
      color: var(--alert-color);
      border-style: dashed;
      box-shadow: none;
      background-image: none;
    }
    &.alert-soft {
      color: var(--alert-color, var(--color-base-content));
      background: var(--alert-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        background: color-mix( in oklab, var(--alert-color, var(--color-base-content)) 8%, var(--color-base-100) );
      }
      border-color: var(--alert-color, var(--color-base-content));
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix( in oklab, var(--alert-color, var(--color-base-content)) 10%, var(--color-base-100) );
      }
      box-shadow: none;
      background-image: none;
    }
  }
  .fieldset {
    display: grid;
    gap: calc(0.25rem * 1.5);
    padding-block: calc(0.25rem * 1);
    font-size: 0.75rem;
    grid-template-columns: 1fr;
    grid-auto-rows: max-content;
  }
  .card-title {
    display: flex;
    align-items: center;
    gap: calc(0.25rem * 2);
    font-size: var(--cardtitle-fs, 1.125rem);
    font-weight: 600;
  }
  .chat {
    display: grid;
    column-gap: calc(0.25rem * 3);
    padding-block: calc(0.25rem * 1);
    --mask-chat: url("data:image/svg+xml,%3csvg width='13' height='13' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill='black' d='M0 11.5004C0 13.0004 2 13.0004 2 13.0004H12H13V0.00036329L12.5 0C12.5 0 11.977 2.09572 11.8581 2.50033C11.6075 3.35237 10.9149 4.22374 9 5.50036C6 7.50036 0 10.0004 0 11.5004Z'/%3e%3c/svg%3e");
  }
  .line-clamp-1 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }
  .line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .line-clamp-3 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
  .line-clamp-4 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
  }
  .prose {
    :root & {
      --tw-prose-body: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-body: color-mix(in oklab, var(--color-base-content) 80%, #0000);
      }
      --tw-prose-headings: var(--color-base-content);
      --tw-prose-lead: var(--color-base-content);
      --tw-prose-links: var(--color-base-content);
      --tw-prose-bold: var(--color-base-content);
      --tw-prose-counters: var(--color-base-content);
      --tw-prose-bullets: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-bullets: color-mix(in oklab, var(--color-base-content) 50%, #0000);
      }
      --tw-prose-hr: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-hr: color-mix(in oklab, var(--color-base-content) 20%, #0000);
      }
      --tw-prose-quotes: var(--color-base-content);
      --tw-prose-quote-borders: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-quote-borders: color-mix(in oklab, var(--color-base-content) 20%, #0000);
      }
      --tw-prose-captions: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-captions: color-mix(in oklab, var(--color-base-content) 50%, #0000);
      }
      --tw-prose-code: var(--color-base-content);
      --tw-prose-pre-code: var(--color-neutral-content);
      --tw-prose-pre-bg: var(--color-neutral);
      --tw-prose-th-borders: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-th-borders: color-mix(in oklab, var(--color-base-content) 50%, #0000);
      }
      --tw-prose-td-borders: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-td-borders: color-mix(in oklab, var(--color-base-content) 20%, #0000);
      }
      --tw-prose-kbd: var(--color-base-content);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-prose-kbd: color-mix(in oklab, var(--color-base-content) 80%, #0000);
      }
      :where(code):not(pre > code) {
        background-color: var(--color-base-200);
        border-radius: var(--radius-selector);
        border: var(--border) solid var(--color-base-300);
        padding-inline: 0.5em;
        font-weight: inherit;
        &:before, &:after {
          display: none;
        }
      }
    }
  }
  .mask {
    display: inline-block;
    vertical-align: middle;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .table {
    display: table;
  }
  .aspect-\[16\/10\] {
    aspect-ratio: 16/10;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .btn-circle {
    border-radius: calc(infinity * 1px);
    padding-inline: calc(0.25rem * 0);
    width: var(--size);
    height: var(--size);
  }
  .btn-square {
    padding-inline: calc(0.25rem * 0);
    width: var(--size);
    height: var(--size);
  }
  .h-0\.5 {
    height: calc(var(--spacing) * 0.5);
  }
  .h-1 {
    height: calc(var(--spacing) * 1);
  }
  .h-2 {
    height: calc(var(--spacing) * 2);
  }
  .h-3 {
    height: calc(var(--spacing) * 3);
  }
  .h-3\.5 {
    height: calc(var(--spacing) * 3.5);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-5 {
    height: calc(var(--spacing) * 5);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-10 {
    height: calc(var(--spacing) * 10);
  }
  .h-11 {
    height: calc(var(--spacing) * 11);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-14 {
    height: calc(var(--spacing) * 14);
  }
  .h-16 {
    height: calc(var(--spacing) * 16);
  }
  .h-20 {
    height: calc(var(--spacing) * 20);
  }
  .h-24 {
    height: calc(var(--spacing) * 24);
  }
  .h-40 {
    height: calc(var(--spacing) * 40);
  }
  .h-64 {
    height: calc(var(--spacing) * 64);
  }
  .h-80 {
    height: calc(var(--spacing) * 80);
  }
  .h-100 {
    height: calc(var(--spacing) * 100);
  }
  .h-\[20px\] {
    height: 20px;
  }
  .h-auto {
    height: auto;
  }
  .h-full {
    height: 100%;
  }
  .max-h-60 {
    max-height: calc(var(--spacing) * 60);
  }
  .max-h-96 {
    max-height: calc(var(--spacing) * 96);
  }
  .max-h-\[36px\] {
    max-height: 36px;
  }
  .max-h-\[60px\] {
    max-height: 60px;
  }
  .max-h-full {
    max-height: 100%;
  }
  .min-h-11 {
    min-height: calc(var(--spacing) * 11);
  }
  .min-h-\[2\.5rem\] {
    min-height: 2.5rem;
  }
  .min-h-\[3\.5rem\] {
    min-height: 3.5rem;
  }
  .min-h-screen {
    min-height: 100vh;
  }
  .loading-lg {
    width: calc(var(--size-selector, 0.25rem) * 7);
  }
  .loading-sm {
    width: calc(var(--size-selector, 0.25rem) * 5);
  }
  .w-1\/2 {
    width: calc(1 / 2 * 100%);
  }
  .w-1\/3 {
    width: calc(1 / 3 * 100%);
  }
  .w-2 {
    width: calc(var(--spacing) * 2);
  }
  .w-2\/3 {
    width: calc(2 / 3 * 100%);
  }
  .w-3 {
    width: calc(var(--spacing) * 3);
  }
  .w-3\.5 {
    width: calc(var(--spacing) * 3.5);
  }
  .w-4 {
    width: calc(var(--spacing) * 4);
  }
  .w-4\/5 {
    width: calc(4 / 5 * 100%);
  }
  .w-5 {
    width: calc(var(--spacing) * 5);
  }
  .w-6 {
    width: calc(var(--spacing) * 6);
  }
  .w-8 {
    width: calc(var(--spacing) * 8);
  }
  .w-10 {
    width: calc(var(--spacing) * 10);
  }
  .w-11 {
    width: calc(var(--spacing) * 11);
  }
  .w-12 {
    width: calc(var(--spacing) * 12);
  }
  .w-14 {
    width: calc(var(--spacing) * 14);
  }
  .w-16 {
    width: calc(var(--spacing) * 16);
  }
  .w-20 {
    width: calc(var(--spacing) * 20);
  }
  .w-24 {
    width: calc(var(--spacing) * 24);
  }
  .w-40 {
    width: calc(var(--spacing) * 40);
  }
  .w-44 {
    width: calc(var(--spacing) * 44);
  }
  .w-48 {
    width: calc(var(--spacing) * 48);
  }
  .w-100 {
    width: calc(var(--spacing) * 100);
  }
  .w-\[calc\(50\%-22px\)\] {
    width: calc(50% - 22px);
  }
  .w-auto {
    width: auto;
  }
  .w-full {
    width: 100%;
  }
  .w-max {
    width: max-content;
  }
  .max-w-2xl {
    max-width: var(--container-2xl);
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-4xl {
    max-width: var(--container-4xl);
  }
  .max-w-5xl {
    max-width: var(--container-5xl);
  }
  .max-w-6xl {
    max-width: var(--container-6xl);
  }
  .max-w-7xl {
    max-width: var(--container-7xl);
  }
  .max-w-full {
    max-width: 100%;
  }
  .max-w-lg {
    max-width: var(--container-lg);
  }
  .max-w-md {
    max-width: var(--container-md);
  }
  .max-w-none {
    max-width: none;
  }
  .max-w-screen-xl {
    max-width: var(--breakpoint-xl);
  }
  .max-w-sm {
    max-width: var(--container-sm);
  }
  .max-w-xl {
    max-width: var(--container-xl);
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .min-w-20 {
    min-width: calc(var(--spacing) * 20);
  }
  .min-w-\[20px\] {
    min-width: 20px;
  }
  .min-w-full {
    min-width: 100%;
  }
  .flex-1 {
    flex: 1;
  }
  .flex-none {
    flex: none;
  }
  .flex-shrink {
    flex-shrink: 1;
  }
  .flex-shrink-0 {
    flex-shrink: 0;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .flex-grow {
    flex-grow: 1;
  }
  .flex-grow-0 {
    flex-grow: 0;
  }
  .border-collapse {
    border-collapse: collapse;
  }
  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-x-full {
    --tw-translate-x: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-0 {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-full {
    --tw-translate-x: 100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-0 {
    --tw-translate-y: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-5 {
    --tw-translate-y: calc(var(--spacing) * 5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-full {
    --tw-translate-y: 100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .scale-95 {
    --tw-scale-x: 95%;
    --tw-scale-y: 95%;
    --tw-scale-z: 95%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
  }
  .rotate-180 {
    rotate: 180deg;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .skeleton {
    border-radius: var(--radius-box);
    background-color: var(--color-base-300);
    @media (prefers-reduced-motion: reduce) {
      transition-duration: 15s;
    }
    will-change: background-position;
    background-image: linear-gradient( 105deg, #0000 0% 40%, var(--color-base-100) 50%, #0000 60% 100% );
    background-size: 200% auto;
    background-repeat: no-repeat;
    background-position-x: -50%;
    @media (prefers-reduced-motion: no-preference) {
      animation: skeleton 1.8s ease-in-out infinite;
    }
  }
  .animate-pulse {
    animation: var(--animate-pulse);
  }
  .animate-spin {
    animation: var(--animate-spin);
  }
  .link {
    cursor: pointer;
    text-decoration-line: underline;
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
      @media (forced-colors: active) {
        outline: 2px solid transparent;
        outline-offset: 2px;
      }
    }
    &:focus-visible {
      outline: 2px solid currentColor;
      outline-offset: 2px;
    }
  }
  .cursor-not-allowed {
    cursor: not-allowed;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .resize {
    resize: both;
  }
  .resize-none {
    resize: none;
  }
  .snap-x {
    scroll-snap-type: x var(--tw-scroll-snap-strictness);
  }
  .carousel-center {
    .carousel-item {
      scroll-snap-align: center;
    }
  }
  .scroll-mt-28 {
    scroll-margin-top: calc(var(--spacing) * 28);
  }
  .list-inside {
    list-style-position: inside;
  }
  .list-disc {
    list-style-type: disc;
  }
  .list-none {
    list-style-type: none;
  }
  .columns-4 {
    columns: 4;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-row {
    flex-direction: row;
  }
  .flex-nowrap {
    flex-wrap: nowrap;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-baseline {
    align-items: baseline;
  }
  .items-center {
    align-items: center;
  }
  .items-end {
    align-items: flex-end;
  }
  .items-start {
    align-items: flex-start;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }
  .gap-12 {
    gap: calc(var(--spacing) * 12);
  }
  .space-y-1 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-2 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-3 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-4 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-6 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-8 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-12 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .gap-x-5 {
    column-gap: calc(var(--spacing) * 5);
  }
  .gap-x-12 {
    column-gap: calc(var(--spacing) * 12);
  }
  .space-x-1 {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(calc(var(--spacing) * 1) * var(--tw-space-x-reverse));
      margin-inline-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-x-reverse)));
    }
  }
  .space-x-2 {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));
      margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)));
    }
  }
  .space-x-3 {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(calc(var(--spacing) * 3) * var(--tw-space-x-reverse));
      margin-inline-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-x-reverse)));
    }
  }
  .space-x-4 {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));
      margin-inline-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)));
    }
  }
  .gap-y-2 {
    row-gap: calc(var(--spacing) * 2);
  }
  .gap-y-10 {
    row-gap: calc(var(--spacing) * 10);
  }
  .divide-y {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 0;
      border-bottom-style: var(--tw-border-style);
      border-top-style: var(--tw-border-style);
      border-top-width: calc(1px * var(--tw-divide-y-reverse));
      border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
    }
  }
  .divide-neutral-100 {
    :where(& > :not(:last-child)) {
      border-color: var(--color-neutral-100);
    }
  }
  .self-center {
    align-self: center;
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-x-auto {
    overflow-x: auto;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }
  .rounded-box {
    border-radius: var(--radius-box);
  }
  .rounded-box {
    border-radius: var(--radius-box);
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .rounded-md {
    border-radius: var(--radius-md);
  }
  .rounded-none {
    border-radius: 0;
  }
  .rounded-sm {
    border-radius: var(--radius-sm);
  }
  .rounded-xl {
    border-radius: var(--radius-xl);
  }
  .rounded-r-lg {
    border-top-right-radius: var(--radius-lg);
    border-bottom-right-radius: var(--radius-lg);
  }
  .rounded-bl-lg {
    border-bottom-left-radius: var(--radius-lg);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-0 {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-t-2 {
    border-top-style: var(--tw-border-style);
    border-top-width: 2px;
  }
  .border-r {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-b-2 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 2px;
  }
  .border-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .border-l-4 {
    border-left-style: var(--tw-border-style);
    border-left-width: 4px;
  }
  .border-none {
    --tw-border-style: none;
    border-style: none;
  }
  .badge-ghost {
    border-color: var(--color-base-200);
    background-color: var(--color-base-200);
    color: var(--color-base-content);
    background-image: none;
  }
  .badge-outline {
    color: var(--badge-color);
    --badge-bg: #0000;
    background-image: none;
    border-color: currentColor;
  }
  .alert-error {
    border-color: var(--color-error);
    color: var(--color-error-content);
    --alert-color: var(--color-error);
  }
  .alert-info {
    border-color: var(--color-info);
    color: var(--color-info-content);
    --alert-color: var(--color-info);
  }
  .alert-success {
    border-color: var(--color-success);
    color: var(--color-success-content);
    --alert-color: var(--color-success);
  }
  .alert-warning {
    border-color: var(--color-warning);
    color: var(--color-warning-content);
    --alert-color: var(--color-warning);
  }
  .border-amber-100 {
    border-color: var(--color-amber-100);
  }
  .border-amber-200 {
    border-color: var(--color-amber-200);
  }
  .border-base-300 {
    border-color: var(--color-base-300);
  }
  .border-blue-200 {
    border-color: var(--color-blue-200);
  }
  .border-emerald-100 {
    border-color: var(--color-emerald-100);
  }
  .border-error {
    border-color: var(--color-error);
  }
  .border-gray-200 {
    border-color: var(--color-gray-200);
  }
  .border-green-200 {
    border-color: var(--color-green-200);
  }
  .border-neutral-100 {
    border-color: var(--color-neutral-100);
  }
  .border-neutral-200 {
    border-color: var(--color-neutral-200);
  }
  .border-neutral-300 {
    border-color: var(--color-neutral-300);
  }
  .border-primary-600 {
    border-color: var(--color-primary-600);
  }
  .border-red-200 {
    border-color: var(--color-red-200);
  }
  .border-red-500 {
    border-color: var(--color-red-500);
  }
  .border-rose-100 {
    border-color: var(--color-rose-100);
  }
  .border-rose-100\/60 {
    border-color: color-mix(in srgb, oklch(94.1% 0.03 12.58) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-rose-100) 60%, transparent);
    }
  }
  .border-rose-100\/70 {
    border-color: color-mix(in srgb, oklch(94.1% 0.03 12.58) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-rose-100) 70%, transparent);
    }
  }
  .border-rose-200 {
    border-color: var(--color-rose-200);
  }
  .border-rose-300 {
    border-color: var(--color-rose-300);
  }
  .border-rose-400 {
    border-color: var(--color-rose-400);
  }
  .border-rose-500 {
    border-color: var(--color-rose-500);
  }
  .border-rose-600 {
    border-color: var(--color-rose-600);
  }
  .border-transparent {
    border-color: transparent;
  }
  .border-white {
    border-color: var(--color-white);
  }
  .border-white\/30 {
    border-color: color-mix(in srgb, #fff 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-white) 30%, transparent);
    }
  }
  .glass {
    border: none;
    backdrop-filter: blur(var(--glass-blur, 40px));
    background-color: #0000;
    background-image: linear-gradient( 135deg, oklch(100% 0 0 / var(--glass-opacity, 30%)) 0%, oklch(0% 0 0 / 0%) 100% ), linear-gradient( var(--glass-reflect-degree, 100deg), oklch(100% 0 0 / var(--glass-reflect-opacity, 5%)) 25%, oklch(0% 0 0 / 0%) 25% );
    box-shadow: 0 0 0 1px oklch(100% 0 0 / var(--glass-border-opacity, 20%)) inset, 0 0 0 2px oklch(0% 0 0 / 5%);
    text-shadow: 0 1px oklch(0% 0 0 / var(--glass-text-shadow-opacity, 5%));
  }
  .bg-amber-50 {
    background-color: var(--color-amber-50);
  }
  .bg-amber-50\/70 {
    background-color: color-mix(in srgb, oklch(98.7% 0.022 95.277) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-amber-50) 70%, transparent);
    }
  }
  .bg-amber-100 {
    background-color: var(--color-amber-100);
  }
  .bg-base-100 {
    background-color: var(--color-base-100);
  }
  .bg-base-100\/80 {
    background-color: var(--color-base-100);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-base-100) 80%, transparent);
    }
  }
  .bg-base-200 {
    background-color: var(--color-base-200);
  }
  .bg-black {
    background-color: var(--color-black);
  }
  .bg-black\/50 {
    background-color: color-mix(in srgb, #000 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
    }
  }
  .bg-blue-50 {
    background-color: var(--color-blue-50);
  }
  .bg-blue-100 {
    background-color: var(--color-blue-100);
  }
  .bg-blue-400 {
    background-color: var(--color-blue-400);
  }
  .bg-blue-600 {
    background-color: var(--color-blue-600);
  }
  .bg-blue-700 {
    background-color: var(--color-blue-700);
  }
  .bg-emerald-50 {
    background-color: var(--color-emerald-50);
  }
  .bg-error\/10 {
    background-color: var(--color-error);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-error) 10%, transparent);
    }
  }
  .bg-gray-50 {
    background-color: var(--color-gray-50);
  }
  .bg-gray-100 {
    background-color: var(--color-gray-100);
  }
  .bg-gray-200 {
    background-color: var(--color-gray-200);
  }
  .bg-gray-500 {
    background-color: var(--color-gray-500);
  }
  .bg-green-50 {
    background-color: var(--color-green-50);
  }
  .bg-green-100 {
    background-color: var(--color-green-100);
  }
  .bg-green-500 {
    background-color: var(--color-green-500);
  }
  .bg-green-600 {
    background-color: var(--color-green-600);
  }
  .bg-info {
    background-color: var(--color-info);
  }
  .bg-neutral-50 {
    background-color: var(--color-neutral-50);
  }
  .bg-neutral-100 {
    background-color: var(--color-neutral-100);
  }
  .bg-neutral-200 {
    background-color: var(--color-neutral-200);
  }
  .bg-neutral-300 {
    background-color: var(--color-neutral-300);
  }
  .bg-neutral-600 {
    background-color: var(--color-neutral-600);
  }
  .bg-neutral-700 {
    background-color: var(--color-neutral-700);
  }
  .bg-neutral-900 {
    background-color: var(--color-neutral-900);
  }
  .bg-orange-100 {
    background-color: var(--color-orange-100);
  }
  .bg-orange-500 {
    background-color: var(--color-orange-500);
  }
  .bg-primary {
    background-color: var(--color-primary);
  }
  .bg-primary-100 {
    background-color: var(--color-primary-100);
  }
  .bg-primary-600 {
    background-color: var(--color-primary-600);
  }
  .bg-primary\/5 {
    background-color: var(--color-primary);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-primary) 5%, transparent);
    }
  }
  .bg-purple-100 {
    background-color: var(--color-purple-100);
  }
  .bg-red-50 {
    background-color: var(--color-red-50);
  }
  .bg-red-100 {
    background-color: var(--color-red-100);
  }
  .bg-red-500 {
    background-color: var(--color-red-500);
  }
  .bg-red-600 {
    background-color: var(--color-red-600);
  }
  .bg-rose-50 {
    background-color: var(--color-rose-50);
  }
  .bg-rose-50\/70 {
    background-color: color-mix(in srgb, oklch(96.9% 0.015 12.422) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-rose-50) 70%, transparent);
    }
  }
  .bg-rose-100 {
    background-color: var(--color-rose-100);
  }
  .bg-rose-300 {
    background-color: var(--color-rose-300);
  }
  .bg-rose-400 {
    background-color: var(--color-rose-400);
  }
  .bg-rose-500 {
    background-color: var(--color-rose-500);
  }
  .bg-rose-600 {
    background-color: var(--color-rose-600);
  }
  .bg-secondary {
    background-color: var(--color-secondary);
  }
  .bg-success\/10 {
    background-color: var(--color-success);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-success) 10%, transparent);
    }
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-warning\/10 {
    background-color: var(--color-warning);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-warning) 10%, transparent);
    }
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-white\/10 {
    background-color: color-mix(in srgb, #fff 10%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
    }
  }
  .bg-white\/15 {
    background-color: color-mix(in srgb, #fff 15%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 15%, transparent);
    }
  }
  .bg-white\/90 {
    background-color: color-mix(in srgb, #fff 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 90%, transparent);
    }
  }
  .bg-yellow-100 {
    background-color: var(--color-yellow-100);
  }
  .bg-yellow-200 {
    background-color: var(--color-yellow-200);
  }
  .bg-gradient-to-r {
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-gradient-to-t {
    --tw-gradient-position: to top in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .from-black\/50 {
    --tw-gradient-from: color-mix(in srgb, #000 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-black) 50%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-black\/60 {
    --tw-gradient-from: color-mix(in srgb, #000 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-black) 60%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-gray-900 {
    --tw-gradient-from: var(--color-gray-900);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-rose-50 {
    --tw-gradient-from: var(--color-rose-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-rose-400 {
    --tw-gradient-from: var(--color-rose-400);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-rose-500 {
    --tw-gradient-from: var(--color-rose-500);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-rose-600 {
    --tw-gradient-from: var(--color-rose-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-white {
    --tw-gradient-from: var(--color-white);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .via-black\/30 {
    --tw-gradient-via: color-mix(in srgb, #000 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-via: color-mix(in oklab, var(--color-black) 30%, transparent);
    }
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .to-gray-800 {
    --tw-gradient-to: var(--color-gray-800);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-pink-50 {
    --tw-gradient-to: var(--color-pink-50);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-rose-600 {
    --tw-gradient-to: var(--color-rose-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-rose-700 {
    --tw-gradient-to: var(--color-rose-700);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-transparent {
    --tw-gradient-to: transparent;
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .loading-ring {
    mask-image: url("data:image/svg+xml,%3Csvg width='44' height='44' viewBox='0 0 44 44' xmlns='http://www.w3.org/2000/svg' stroke='white'%3E%3Cg fill='none' fill-rule='evenodd' stroke-width='2'%3E%3Ccircle cx='22' cy='22' r='1'%3E%3Canimate attributeName='r' begin='0s' dur='1.8s' values='1;20' calcMode='spline' keyTimes='0;1' keySplines='0.165,0.84,0.44,1' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-opacity' begin='0s' dur='1.8s' values='1;0' calcMode='spline' keyTimes='0;1' keySplines='0.3,0.61,0.355,1' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='22' cy='22' r='1'%3E%3Canimate attributeName='r' begin='-0.9s' dur='1.8s' values='1;20' calcMode='spline' keyTimes='0;1' keySplines='0.165,0.84,0.44,1' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-opacity' begin='-0.9s' dur='1.8s' values='1;0' calcMode='spline' keyTimes='0;1' keySplines='0.3,0.61,0.355,1' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");
  }
  .loading-spinner {
    mask-image: url("data:image/svg+xml,%3Csvg width='24' height='24' stroke='black' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform-origin='center'%3E%3Ccircle cx='12' cy='12' r='9.5' fill='none' stroke-width='3' stroke-linecap='round'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 12 12' to='360 12 12' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dasharray' values='0,150;42,150;42,150' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='stroke-dashoffset' values='0;-16;-59' keyTimes='0;0.475;1' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/g%3E%3C/svg%3E");
  }
  .bg-cover {
    background-size: cover;
  }
  .bg-center {
    background-position: center;
  }
  .bg-no-repeat {
    background-repeat: no-repeat;
  }
  .stroke-current {
    stroke: currentcolor;
  }
  .object-contain {
    object-fit: contain;
  }
  .object-cover {
    object-fit: cover;
  }
  .object-center {
    object-position: center;
  }
  .checkbox-sm {
    padding: 0.1875rem;
    --size: calc(var(--size-selector, 0.25rem) * 5);
  }
  .p-0 {
    padding: calc(var(--spacing) * 0);
  }
  .p-1 {
    padding: calc(var(--spacing) * 1);
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-5 {
    padding: calc(var(--spacing) * 5);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .p-12 {
    padding: calc(var(--spacing) * 12);
  }
  .select-lg {
    --size: calc(var(--size-field, 0.25rem) * 12);
    font-size: 1.125rem;
    option {
      padding-inline: calc(0.25rem * 4);
      padding-block: calc(0.25rem * 1.5);
    }
  }
  .badge-lg {
    --size: calc(var(--size-selector, 0.25rem) * 7);
    font-size: 1rem;
    padding-inline: calc(0.25rem * 3.5 - var(--border));
  }
  .badge-sm {
    --size: calc(var(--size-selector, 0.25rem) * 5);
    font-size: 0.75rem;
    padding-inline: calc(0.25rem * 2.5 - var(--border));
  }
  .badge-xs {
    --size: calc(var(--size-selector, 0.25rem) * 4);
    font-size: 0.625rem;
    padding-inline: calc(0.25rem * 2 - var(--border));
  }
  .px-1 {
    padding-inline: calc(var(--spacing) * 1);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .px-8 {
    padding-inline: calc(var(--spacing) * 8);
  }
  .py-0\.5 {
    padding-block: calc(var(--spacing) * 0.5);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-3\.5 {
    padding-block: calc(var(--spacing) * 3.5);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }
  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }
  .py-10 {
    padding-block: calc(var(--spacing) * 10);
  }
  .py-12 {
    padding-block: calc(var(--spacing) * 12);
  }
  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
  .py-24 {
    padding-block: calc(var(--spacing) * 24);
  }
  .pt-0 {
    padding-top: calc(var(--spacing) * 0);
  }
  .pt-1 {
    padding-top: calc(var(--spacing) * 1);
  }
  .pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }
  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }
  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }
  .pt-6 {
    padding-top: calc(var(--spacing) * 6);
  }
  .pt-8 {
    padding-top: calc(var(--spacing) * 8);
  }
  .pt-20 {
    padding-top: calc(var(--spacing) * 20);
  }
  .pr-3 {
    padding-right: calc(var(--spacing) * 3);
  }
  .pr-4 {
    padding-right: calc(var(--spacing) * 4);
  }
  .pr-11 {
    padding-right: calc(var(--spacing) * 11);
  }
  .pr-12 {
    padding-right: calc(var(--spacing) * 12);
  }
  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }
  .pb-5 {
    padding-bottom: calc(var(--spacing) * 5);
  }
  .pb-8 {
    padding-bottom: calc(var(--spacing) * 8);
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .pl-6 {
    padding-left: calc(var(--spacing) * 6);
  }
  .pl-16 {
    padding-left: calc(var(--spacing) * 16);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .text-right {
    text-align: right;
  }
  .font-mono {
    font-family: var(--font-mono);
  }
  .font-sans {
    font-family: var(--font-sans);
  }
  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .text-6xl {
    font-size: var(--text-6xl);
    line-height: var(--tw-leading, var(--text-6xl--line-height));
  }
  .text-8xl {
    font-size: var(--text-8xl);
    line-height: var(--tw-leading, var(--text-8xl--line-height));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .text-\[10px\] {
    font-size: 10px;
  }
  .leading-\[20px\] {
    --tw-leading: 20px;
    line-height: 20px;
  }
  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }
  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }
  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .font-extrabold {
    --tw-font-weight: var(--font-weight-extrabold);
    font-weight: var(--font-weight-extrabold);
  }
  .font-light {
    --tw-font-weight: var(--font-weight-light);
    font-weight: var(--font-weight-light);
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }
  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }
  .text-wrap {
    text-wrap: wrap;
  }
  .break-words {
    overflow-wrap: break-word;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .whitespace-pre-line {
    white-space: pre-line;
  }
  .checkbox-primary {
    color: var(--color-primary-content);
    --input-color: var(--color-primary);
  }
  .link-primary {
    color: var(--color-primary);
    @media (hover: hover) {
      &:hover {
        color: var(--color-primary);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-primary) 80%, #000);
        }
      }
    }
  }
  .text-amber-600 {
    color: var(--color-amber-600);
  }
  .text-amber-700 {
    color: var(--color-amber-700);
  }
  .text-amber-800 {
    color: var(--color-amber-800);
  }
  .text-amber-900 {
    color: var(--color-amber-900);
  }
  .text-base-content {
    color: var(--color-base-content);
  }
  .text-base-content\/40 {
    color: var(--color-base-content);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
    }
  }
  .text-base-content\/50 {
    color: var(--color-base-content);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 50%, transparent);
    }
  }
  .text-base-content\/60 {
    color: var(--color-base-content);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
    }
  }
  .text-base-content\/70 {
    color: var(--color-base-content);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
    }
  }
  .text-blue-600 {
    color: var(--color-blue-600);
  }
  .text-blue-700 {
    color: var(--color-blue-700);
  }
  .text-blue-800 {
    color: var(--color-blue-800);
  }
  .text-current {
    color: currentcolor;
  }
  .text-emerald-600 {
    color: var(--color-emerald-600);
  }
  .text-emerald-700 {
    color: var(--color-emerald-700);
  }
  .text-error {
    color: var(--color-error);
  }
  .text-gray-300 {
    color: var(--color-gray-300);
  }
  .text-gray-400 {
    color: var(--color-gray-400);
  }
  .text-gray-500 {
    color: var(--color-gray-500);
  }
  .text-gray-600 {
    color: var(--color-gray-600);
  }
  .text-gray-700 {
    color: var(--color-gray-700);
  }
  .text-gray-800 {
    color: var(--color-gray-800);
  }
  .text-gray-900 {
    color: var(--color-gray-900);
  }
  .text-green-400 {
    color: var(--color-green-400);
  }
  .text-green-500 {
    color: var(--color-green-500);
  }
  .text-green-600 {
    color: var(--color-green-600);
  }
  .text-green-700 {
    color: var(--color-green-700);
  }
  .text-green-800 {
    color: var(--color-green-800);
  }
  .text-info {
    color: var(--color-info);
  }
  .text-info-content {
    color: var(--color-info-content);
  }
  .text-neutral-200 {
    color: var(--color-neutral-200);
  }
  .text-neutral-300 {
    color: var(--color-neutral-300);
  }
  .text-neutral-400 {
    color: var(--color-neutral-400);
  }
  .text-neutral-500 {
    color: var(--color-neutral-500);
  }
  .text-neutral-600 {
    color: var(--color-neutral-600);
  }
  .text-neutral-700 {
    color: var(--color-neutral-700);
  }
  .text-neutral-800 {
    color: var(--color-neutral-800);
  }
  .text-neutral-900 {
    color: var(--color-neutral-900);
  }
  .text-orange-600 {
    color: var(--color-orange-600);
  }
  .text-orange-800 {
    color: var(--color-orange-800);
  }
  .text-primary {
    color: var(--color-primary);
  }
  .text-primary-600 {
    color: var(--color-primary-600);
  }
  .text-primary-800 {
    color: var(--color-primary-800);
  }
  .text-primary-content {
    color: var(--color-primary-content);
  }
  .text-purple-600 {
    color: var(--color-purple-600);
  }
  .text-red-400 {
    color: var(--color-red-400);
  }
  .text-red-500 {
    color: var(--color-red-500);
  }
  .text-red-600 {
    color: var(--color-red-600);
  }
  .text-red-700 {
    color: var(--color-red-700);
  }
  .text-red-800 {
    color: var(--color-red-800);
  }
  .text-rose-100 {
    color: var(--color-rose-100);
  }
  .text-rose-200 {
    color: var(--color-rose-200);
  }
  .text-rose-400 {
    color: var(--color-rose-400);
  }
  .text-rose-500 {
    color: var(--color-rose-500);
  }
  .text-rose-600 {
    color: var(--color-rose-600);
  }
  .text-rose-700 {
    color: var(--color-rose-700);
  }
  .text-rose-800 {
    color: var(--color-rose-800);
  }
  .text-secondary-content {
    color: var(--color-secondary-content);
  }
  .text-success {
    color: var(--color-success);
  }
  .text-warning {
    color: var(--color-warning);
  }
  .text-white {
    color: var(--color-white);
  }
  .text-white\/70 {
    color: color-mix(in srgb, #fff 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
  }
  .text-yellow-800 {
    color: var(--color-yellow-800);
  }
  .lowercase {
    text-transform: lowercase;
  }
  .normal-case {
    text-transform: none;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .line-through {
    text-decoration-line: line-through;
  }
  .no-underline {
    text-decoration-line: none;
  }
  .underline {
    text-decoration-line: underline;
  }
  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .opacity-0 {
    opacity: 0%;
  }
  .opacity-25 {
    opacity: 25%;
  }
  .opacity-50 {
    opacity: 50%;
  }
  .opacity-75 {
    opacity: 75%;
  }
  .opacity-90 {
    opacity: 90%;
  }
  .opacity-100 {
    opacity: 100%;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-sm {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-xl {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-2 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-rose-100\/60 {
    --tw-ring-color: color-mix(in srgb, oklch(94.1% 0.03 12.58) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-rose-100) 60%, transparent);
    }
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .btn-ghost {
    &:not(.btn-active, :hover, :active:focus, :focus-visible) {
      --btn-shadow: "";
      --btn-bg: #0000;
      --btn-border: #0000;
      --btn-noise: none;
      &:not(:disabled, [disabled], .btn-disabled) {
        outline-color: currentcolor;
        --btn-fg: currentColor;
      }
    }
    @media (hover: none) {
      &:hover:not(.btn-active, :active, :focus-visible, :disabled, [disabled], .btn-disabled) {
        --btn-shadow: "";
        --btn-bg: #0000;
        --btn-border: #0000;
        --btn-noise: none;
        --btn-fg: currentColor;
      }
    }
  }
  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .brightness-90 {
    --tw-brightness: brightness(90%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .drop-shadow-md {
    --tw-drop-shadow-size: drop-shadow(0 3px 3px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.12)));
    --tw-drop-shadow: drop-shadow(var(--drop-shadow-md));
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .backdrop-blur {
    --tw-backdrop-blur: blur(8px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-blur-sm {
    --tw-backdrop-blur: blur(var(--blur-sm));
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-filter {
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .duration-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
  .duration-500 {
    --tw-duration: 500ms;
    transition-duration: 500ms;
  }
  .duration-600 {
    --tw-duration: 600ms;
    transition-duration: 600ms;
  }
  .ease-in-out {
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }
  .ease-out {
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }
  .btn-outline {
    &:not( .btn-active, :hover, :active:focus, :focus-visible, :disabled, [disabled], .btn-disabled, :checked ) {
      --btn-shadow: "";
      --btn-bg: #0000;
      --btn-fg: var(--btn-color);
      --btn-border: var(--btn-color);
      --btn-noise: none;
    }
    @media (hover: none) {
      &:hover:not( .btn-active, :active, :focus-visible, :disabled, [disabled], .btn-disabled, :checked ) {
        --btn-shadow: "";
        --btn-bg: #0000;
        --btn-fg: var(--btn-color);
        --btn-border: var(--btn-color);
        --btn-noise: none;
      }
    }
  }
  .btn-lg {
    --fontsize: 1.125rem;
    --btn-p: 1.25rem;
    --size: calc(var(--size-field, 0.25rem) * 12);
  }
  .btn-sm {
    --fontsize: 0.75rem;
    --btn-p: 0.75rem;
    --size: calc(var(--size-field, 0.25rem) * 8);
  }
  .btn-xs {
    --fontsize: 0.6875rem;
    --btn-p: 0.5rem;
    --size: calc(var(--size-field, 0.25rem) * 6);
  }
  .badge-neutral {
    --badge-color: var(--color-neutral);
    --badge-fg: var(--color-neutral-content);
  }
  .badge-primary {
    --badge-color: var(--color-primary);
    --badge-fg: var(--color-primary-content);
  }
  .badge-success {
    --badge-color: var(--color-success);
    --badge-fg: var(--color-success-content);
  }
  .btn-primary {
    --btn-color: var(--color-primary);
    --btn-fg: var(--color-primary-content);
  }
  .btn-secondary {
    --btn-color: var(--color-secondary);
    --btn-fg: var(--color-secondary-content);
  }
  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }
  .input-error {
    &, &:focus, &:focus-within {
      --input-color: var(--color-error);
    }
  }
  .radio-primary {
    --input-color: var(--color-primary);
  }
  .toggle-primary {
    &:checked, &[aria-checked="true"] {
      --input-color: var(--color-primary);
    }
  }
  .group-hover\:scale-105 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-scale-x: 105%;
        --tw-scale-y: 105%;
        --tw-scale-z: 105%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
  }
  .group-hover\:scale-110 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-scale-x: 110%;
        --tw-scale-y: 110%;
        --tw-scale-z: 110%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
  }
  .group-hover\:text-primary-600 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-primary-600);
      }
    }
  }
  .group-hover\:text-rose-500 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-rose-500);
      }
    }
  }
  .group-hover\:text-rose-600 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-rose-600);
      }
    }
  }
  .group-hover\:opacity-100 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        opacity: 100%;
      }
    }
  }
  .peer-checked\:flex {
    &:is(:where(.peer):checked ~ *) {
      display: flex;
    }
  }
  .last\:border-b-0 {
    &:last-child {
      border-bottom-style: var(--tw-border-style);
      border-bottom-width: 0px;
    }
  }
  .last\:pb-0 {
    &:last-child {
      padding-bottom: calc(var(--spacing) * 0);
    }
  }
  .hover\:scale-105 {
    &:hover {
      @media (hover: hover) {
        --tw-scale-x: 105%;
        --tw-scale-y: 105%;
        --tw-scale-z: 105%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
  }
  .hover\:border-primary\/20 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-primary);
        @supports (color: color-mix(in lab, red, red)) {
          border-color: color-mix(in oklab, var(--color-primary) 20%, transparent);
        }
      }
    }
  }
  .hover\:border-rose-300 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-rose-300);
      }
    }
  }
  .hover\:bg-base-200 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-base-200);
      }
    }
  }
  .hover\:bg-base-200\/50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-base-200);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-base-200) 50%, transparent);
        }
      }
    }
  }
  .hover\:bg-base-300 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-base-300);
      }
    }
  }
  .hover\:bg-blue-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-blue-700);
      }
    }
  }
  .hover\:bg-error {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-error);
      }
    }
  }
  .hover\:bg-gray-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gray-50);
      }
    }
  }
  .hover\:bg-green-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-green-700);
      }
    }
  }
  .hover\:bg-neutral-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-neutral-50);
      }
    }
  }
  .hover\:bg-neutral-300 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-neutral-300);
      }
    }
  }
  .hover\:bg-neutral-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-neutral-700);
      }
    }
  }
  .hover\:bg-neutral-800 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-neutral-800);
      }
    }
  }
  .hover\:bg-primary {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-primary);
      }
    }
  }
  .hover\:bg-primary-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-primary-700);
      }
    }
  }
  .hover\:bg-red-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-red-700);
      }
    }
  }
  .hover\:bg-rose-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-rose-50);
      }
    }
  }
  .hover\:bg-rose-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-rose-100);
      }
    }
  }
  .hover\:bg-rose-600 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-rose-600);
      }
    }
  }
  .hover\:bg-rose-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-rose-700);
      }
    }
  }
  .hover\:bg-white {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-white);
      }
    }
  }
  .hover\:bg-white\/20 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #fff 20%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-white) 20%, transparent);
        }
      }
    }
  }
  .hover\:bg-white\/25 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #fff 25%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-white) 25%, transparent);
        }
      }
    }
  }
  .hover\:text-neutral-600 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-neutral-600);
      }
    }
  }
  .hover\:text-neutral-700 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-neutral-700);
      }
    }
  }
  .hover\:text-neutral-800 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-neutral-800);
      }
    }
  }
  .hover\:text-neutral-900 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-neutral-900);
      }
    }
  }
  .hover\:text-primary {
    &:hover {
      @media (hover: hover) {
        color: var(--color-primary);
      }
    }
  }
  .hover\:text-primary-700 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-primary-700);
      }
    }
  }
  .hover\:text-primary-800 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-primary-800);
      }
    }
  }
  .hover\:text-rose-500 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-rose-500);
      }
    }
  }
  .hover\:text-rose-600 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-rose-600);
      }
    }
  }
  .hover\:text-rose-700 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-rose-700);
      }
    }
  }
  .hover\:text-white {
    &:hover {
      @media (hover: hover) {
        color: var(--color-white);
      }
    }
  }
  .hover\:text-white\/90 {
    &:hover {
      @media (hover: hover) {
        color: color-mix(in srgb, #fff 90%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          color: color-mix(in oklab, var(--color-white) 90%, transparent);
        }
      }
    }
  }
  .hover\:no-underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: none;
      }
    }
  }
  .hover\:underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .hover\:opacity-90 {
    &:hover {
      @media (hover: hover) {
        opacity: 90%;
      }
    }
  }
  .hover\:opacity-100 {
    &:hover {
      @media (hover: hover) {
        opacity: 100%;
      }
    }
  }
  .hover\:shadow-lg {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-md {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-xl {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:ring-1 {
    &:hover {
      @media (hover: hover) {
        --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:ring-rose-200 {
    &:hover {
      @media (hover: hover) {
        --tw-ring-color: var(--color-rose-200);
      }
    }
  }
  .hover\:badge-primary {
    &:hover {
      @media (hover: hover) {
        --badge-color: var(--color-primary);
        --badge-fg: var(--color-primary-content);
      }
    }
  }
  .focus\:border-error {
    &:focus {
      border-color: var(--color-error);
    }
  }
  .focus\:border-red-500 {
    &:focus {
      border-color: var(--color-red-500);
    }
  }
  .focus\:border-rose-500 {
    &:focus {
      border-color: var(--color-rose-500);
    }
  }
  .focus\:no-underline {
    &:focus {
      text-decoration-line: none;
    }
  }
  .focus\:ring-0 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus\:ring-2 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus\:ring-green-500 {
    &:focus {
      --tw-ring-color: var(--color-green-500);
    }
  }
  .focus\:ring-primary-500 {
    &:focus {
      --tw-ring-color: var(--color-primary-500);
    }
  }
  .focus\:ring-red-500 {
    &:focus {
      --tw-ring-color: var(--color-red-500);
    }
  }
  .focus\:ring-rose-500 {
    &:focus {
      --tw-ring-color: var(--color-rose-500);
    }
  }
  .focus\:ring-offset-2 {
    &:focus {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
  }
  .focus\:outline-none {
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .disabled\:cursor-not-allowed {
    &:disabled {
      cursor: not-allowed;
    }
  }
  .disabled\:opacity-60 {
    &:disabled {
      opacity: 60%;
    }
  }
  .sm\:static {
    @media (width >= 40rem) {
      position: static;
    }
  }
  .sm\:right-4 {
    @media (width >= 40rem) {
      right: calc(var(--spacing) * 4);
    }
  }
  .sm\:contents {
    @media (width >= 40rem) {
      display: contents;
    }
  }
  .sm\:hidden {
    @media (width >= 40rem) {
      display: none;
    }
  }
  .sm\:inline {
    @media (width >= 40rem) {
      display: inline;
    }
  }
  .sm\:h-80 {
    @media (width >= 40rem) {
      height: calc(var(--spacing) * 80);
    }
  }
  .sm\:w-1\/3 {
    @media (width >= 40rem) {
      width: calc(1 / 3 * 100%);
    }
  }
  .sm\:w-auto {
    @media (width >= 40rem) {
      width: auto;
    }
  }
  .sm\:flex-1 {
    @media (width >= 40rem) {
      flex: 1;
    }
  }
  .sm\:grid-cols-2 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-3 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .sm\:flex-row {
    @media (width >= 40rem) {
      flex-direction: row;
    }
  }
  .sm\:items-center {
    @media (width >= 40rem) {
      align-items: center;
    }
  }
  .sm\:gap-4 {
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .sm\:p-6 {
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 6);
    }
  }
  .sm\:px-6 {
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .sm\:pr-2 {
    @media (width >= 40rem) {
      padding-right: calc(var(--spacing) * 2);
    }
  }
  .sm\:text-4xl {
    @media (width >= 40rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .md\:-right-6 {
    @media (width >= 48rem) {
      right: calc(var(--spacing) * -6);
    }
  }
  .md\:-left-6 {
    @media (width >= 48rem) {
      left: calc(var(--spacing) * -6);
    }
  }
  .md\:col-span-1 {
    @media (width >= 48rem) {
      grid-column: span 1 / span 1;
    }
  }
  .md\:col-span-2 {
    @media (width >= 48rem) {
      grid-column: span 2 / span 2;
    }
  }
  .md\:col-span-5 {
    @media (width >= 48rem) {
      grid-column: span 5 / span 5;
    }
  }
  .md\:col-span-7 {
    @media (width >= 48rem) {
      grid-column: span 7 / span 7;
    }
  }
  .md\:mt-0 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 0);
    }
  }
  .md\:mb-3 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 3);
    }
  }
  .md\:mb-8 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 8);
    }
  }
  .md\:mb-10 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 10);
    }
  }
  .md\:mb-12 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 12);
    }
  }
  .md\:mb-14 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 14);
    }
  }
  .md\:mb-16 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 16);
    }
  }
  .md\:flex {
    @media (width >= 48rem) {
      display: flex;
    }
  }
  .md\:hidden {
    @media (width >= 48rem) {
      display: none;
    }
  }
  .md\:inline {
    @media (width >= 48rem) {
      display: inline;
    }
  }
  .md\:h-80 {
    @media (width >= 48rem) {
      height: calc(var(--spacing) * 80);
    }
  }
  .md\:w-1\/3 {
    @media (width >= 48rem) {
      width: calc(1 / 3 * 100%);
    }
  }
  .md\:w-56 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 56);
    }
  }
  .md\:w-\[calc\(33\.333\%-0\.83rem\)\] {
    @media (width >= 48rem) {
      width: calc(33.333% - 0.83rem);
    }
  }
  .md\:w-auto {
    @media (width >= 48rem) {
      width: auto;
    }
  }
  .md\:grid-cols-2 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-3 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-4 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-12 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-\[1fr_1fr_1fr_auto\] {
    @media (width >= 48rem) {
      grid-template-columns: 1fr 1fr 1fr auto;
    }
  }
  .md\:flex-row {
    @media (width >= 48rem) {
      flex-direction: row;
    }
  }
  .md\:items-center {
    @media (width >= 48rem) {
      align-items: center;
    }
  }
  .md\:justify-center {
    @media (width >= 48rem) {
      justify-content: center;
    }
  }
  .md\:gap-3 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 3);
    }
  }
  .md\:gap-4 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .md\:gap-5 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 5);
    }
  }
  .md\:gap-6 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 6);
    }
  }
  .md\:gap-10 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 10);
    }
  }
  .md\:gap-12 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 12);
    }
  }
  .md\:space-y-8 {
    @media (width >= 48rem) {
      :where(& > :not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
        margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
      }
    }
  }
  .md\:gap-x-14 {
    @media (width >= 48rem) {
      column-gap: calc(var(--spacing) * 14);
    }
  }
  .md\:gap-y-12 {
    @media (width >= 48rem) {
      row-gap: calc(var(--spacing) * 12);
    }
  }
  .md\:rounded-xl {
    @media (width >= 48rem) {
      border-radius: var(--radius-xl);
    }
  }
  .md\:p-8 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .md\:p-10 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 10);
    }
  }
  .md\:p-12 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 12);
    }
  }
  .md\:px-6 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .md\:px-12 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 12);
    }
  }
  .md\:py-4 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 4);
    }
  }
  .md\:py-8 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 8);
    }
  }
  .md\:py-16 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 16);
    }
  }
  .md\:py-20 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 20);
    }
  }
  .md\:pb-16 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--spacing) * 16);
    }
  }
  .md\:text-2xl {
    @media (width >= 48rem) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .md\:text-3xl {
    @media (width >= 48rem) {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }
  .md\:text-4xl {
    @media (width >= 48rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .md\:text-5xl {
    @media (width >= 48rem) {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }
  .md\:text-base {
    @media (width >= 48rem) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
  }
  .md\:text-lg {
    @media (width >= 48rem) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .md\:text-sm {
    @media (width >= 48rem) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .md\:text-xl {
    @media (width >= 48rem) {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  .md\:leading-snug {
    @media (width >= 48rem) {
      --tw-leading: var(--leading-snug);
      line-height: var(--leading-snug);
    }
  }
  .md\:btn-md {
    @media (width >= 48rem) {
      --fontsize: 0.875rem;
      --btn-p: 1rem;
      --size: calc(var(--size-field, 0.25rem) * 10);
    }
  }
  .lg\:sticky {
    @media (width >= 64rem) {
      position: sticky;
    }
  }
  .lg\:top-8 {
    @media (width >= 64rem) {
      top: calc(var(--spacing) * 8);
    }
  }
  .lg\:-right-10 {
    @media (width >= 64rem) {
      right: calc(var(--spacing) * -10);
    }
  }
  .lg\:-left-10 {
    @media (width >= 64rem) {
      left: calc(var(--spacing) * -10);
    }
  }
  .lg\:col-span-1 {
    @media (width >= 64rem) {
      grid-column: span 1 / span 1;
    }
  }
  .lg\:col-span-2 {
    @media (width >= 64rem) {
      grid-column: span 2 / span 2;
    }
  }
  .lg\:col-span-3 {
    @media (width >= 64rem) {
      grid-column: span 3 / span 3;
    }
  }
  .lg\:col-span-9 {
    @media (width >= 64rem) {
      grid-column: span 9 / span 9;
    }
  }
  .lg\:mt-12 {
    @media (width >= 64rem) {
      margin-top: calc(var(--spacing) * 12);
    }
  }
  .lg\:mb-12 {
    @media (width >= 64rem) {
      margin-bottom: calc(var(--spacing) * 12);
    }
  }
  .lg\:block {
    @media (width >= 64rem) {
      display: block;
    }
  }
  .lg\:grid {
    @media (width >= 64rem) {
      display: grid;
    }
  }
  .lg\:hidden {
    @media (width >= 64rem) {
      display: none;
    }
  }
  .lg\:h-96 {
    @media (width >= 64rem) {
      height: calc(var(--spacing) * 96);
    }
  }
  .lg\:w-\[calc\(25\%-0\.94rem\)\] {
    @media (width >= 64rem) {
      width: calc(25% - 0.94rem);
    }
  }
  .lg\:grid-cols-2 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-3 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-4 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-5 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-12 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
  }
  .lg\:gap-8 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .lg\:gap-12 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 12);
    }
  }
  .lg\:p-8 {
    @media (width >= 64rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .lg\:p-12 {
    @media (width >= 64rem) {
      padding: calc(var(--spacing) * 12);
    }
  }
  .lg\:px-8 {
    @media (width >= 64rem) {
      padding-inline: calc(var(--spacing) * 8);
    }
  }
  .lg\:py-12 {
    @media (width >= 64rem) {
      padding-block: calc(var(--spacing) * 12);
    }
  }
  .lg\:text-3xl {
    @media (width >= 64rem) {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }
  .xl\:w-\[calc\(20\%-1rem\)\] {
    @media (width >= 80rem) {
      width: calc(20% - 1rem);
    }
  }
  .xl\:grid-cols-4 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .\[\&_\.wpgmza_map\]\:\!h-full {
    & .wpgmza map {
      height: 100% !important;
    }
  }
  .\[\&_\.wpgmza_map\]\:\!w-full {
    & .wpgmza map {
      width: 100% !important;
    }
  }
  .\[\&_iframe\]\:h-full {
    & iframe {
      height: 100%;
    }
  }
  .\[\&_iframe\]\:w-full {
    & iframe {
      width: 100%;
    }
  }
  .\[\&\>a\]\:inline-flex {
    &>a {
      display: inline-flex;
    }
  }
  .\[\&\>a\]\:items-center {
    &>a {
      align-items: center;
    }
  }
  .\[\&\>a\]\:rounded-lg {
    &>a {
      border-radius: var(--radius-lg);
    }
  }
  .\[\&\>a\]\:border {
    &>a {
      border-style: var(--tw-border-style);
      border-width: 1px;
    }
  }
  .\[\&\>a\]\:border-rose-200 {
    &>a {
      border-color: var(--color-rose-200);
    }
  }
  .\[\&\>a\]\:px-4 {
    &>a {
      padding-inline: calc(var(--spacing) * 4);
    }
  }
  .\[\&\>a\]\:py-2 {
    &>a {
      padding-block: calc(var(--spacing) * 2);
    }
  }
  .\[\&\>a\]\:text-sm {
    &>a {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .\[\&\>a\]\:font-medium {
    &>a {
      --tw-font-weight: var(--font-weight-medium);
      font-weight: var(--font-weight-medium);
    }
  }
  .\[\&\>a\]\:text-rose-600 {
    &>a {
      color: var(--color-rose-600);
    }
  }
  .\[\&\>a\]\:transition-colors {
    &>a {
      transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
      transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
      transition-duration: var(--tw-duration, var(--default-transition-duration));
    }
  }
  .\[\&\>a\]\:hover\:bg-rose-50 {
    &>a {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-rose-50);
        }
      }
    }
  }
  .\[\&\>span\]\:inline-flex {
    &>span {
      display: inline-flex;
    }
  }
  .\[\&\>span\]\:items-center {
    &>span {
      align-items: center;
    }
  }
  .\[\&\>span\]\:rounded-lg {
    &>span {
      border-radius: var(--radius-lg);
    }
  }
  .\[\&\>span\]\:bg-rose-600 {
    &>span {
      background-color: var(--color-rose-600);
    }
  }
  .\[\&\>span\]\:px-4 {
    &>span {
      padding-inline: calc(var(--spacing) * 4);
    }
  }
  .\[\&\>span\]\:py-2 {
    &>span {
      padding-block: calc(var(--spacing) * 2);
    }
  }
  .\[\&\>span\]\:text-sm {
    &>span {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .\[\&\>span\]\:font-medium {
    &>span {
      --tw-font-weight: var(--font-weight-medium);
      font-weight: var(--font-weight-medium);
    }
  }
  .\[\&\>span\]\:text-white {
    &>span {
      color: var(--color-white);
    }
  }
}
@layer base {
  html {
    background-color: #faf5ef;
  }
  body {
    font-family: "Manrope", "Helvetica Neue", Arial, sans-serif;
    color: #1a1a1a;
    background-color: #faf5ef;
    font-variant-numeric: lining-nums;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  h1, h2, h3, h4, h5, h6 {
    margin: calc(var(--spacing) * 0);
    padding: calc(var(--spacing) * 0);
    font-family: "Cormorant Garamond", "Times New Roman", Georgia, serif;
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: -0.01em;
    font-variant-numeric: lining-nums tabular-nums;
    text-wrap: balance;
  }
  h1 {
    font-size: clamp(1.75rem, 5vw, 2.5rem);
  }
  h2 {
    font-size: clamp(1.5rem, 4vw, 2rem);
  }
  h3 {
    font-size: clamp(1.125rem, 3vw, 1.5rem);
  }
  h4 {
    font-size: clamp(1rem, 2.5vw, 1.25rem);
  }
  h5 {
    font-size: 1.0625rem;
    font-weight: 600;
  }
  h6 {
    font-size: 0.9375rem;
    font-weight: 600;
  }
  p {
    margin: calc(var(--spacing) * 0);
    padding: calc(var(--spacing) * 0);
    line-height: 1.55;
    text-wrap: pretty;
  }
  ul, ol {
    margin-bottom: calc(var(--spacing) * 4);
  }
  li {
    margin-bottom: calc(var(--spacing) * 1);
  }
  blockquote {
    margin-bottom: calc(var(--spacing) * 4);
    border-left-style: var(--tw-border-style);
    border-left-width: 4px;
    border-color: var(--color-gray-300);
    padding-left: calc(var(--spacing) * 4);
    font-family: "Cormorant Garamond", Georgia, serif;
    font-style: italic;
  }
  h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
    margin-top: calc(var(--spacing) * 0);
  }
  p:first-child, ul:first-child, ol:first-child, blockquote:first-child {
    margin-top: calc(var(--spacing) * 0);
  }
  a:not(.btn):not(.fl-btn) {
    text-decoration-line: none;
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 300ms;
    transition-duration: 300ms;
    color: #1a1a1a;
  }
  a:not(.btn):not(.fl-btn):hover {
    color: #d9486a;
  }
  .num, .price, .stat-num, [class*="price"], [class*="amount"] {
    font-variant-numeric: lining-nums tabular-nums;
    font-feature-settings: "lnum" 1, "tnum" 1;
  }
}
@layer components {
  .phone-input-field::placeholder {
    color: var(--color-neutral-400);
  }
  .phone-input-field:focus {
    border-color: var(--color-rose-500);
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-ring-color: var(--color-rose-500);
    --tw-outline-style: none;
    outline-style: none;
  }
  .alert-info-soft {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-blue-100);
    background-color: var(--color-blue-50);
    color: var(--color-blue-800);
  }
  .alert-success-soft {
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-green-100);
    background-color: var(--color-green-50);
    color: var(--color-green-800);
  }
  .btn:hover {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .btn:focus {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-ring-offset-width: 2px;
    --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    --tw-outline-style: none;
    outline-style: none;
  }
  .btn-primary:focus {
    --tw-ring-color: var(--color-rose-500);
  }
  .btn-secondary:focus {
    --tw-ring-color: var(--color-neutral-400);
  }
  .btn:active {
    scale: 0.98;
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 100ms;
    transition-duration: 100ms;
  }
  .btn:disabled {
    transform: none;
    cursor: not-allowed;
    opacity: 50%;
  }
  .btn:disabled:hover {
    transform: none;
  }
  .carousel-item {
    scroll-snap-align: start;
  }
}
@layer base {
  :root {
    --fx-noise: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.34' numOctaves='4' stitchTiles='stitch'%3E%3C/feTurbulence%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23a)' opacity='0.2'%3E%3C/rect%3E%3C/svg%3E");
  }
}
@layer base {
  :root {
    scrollbar-color: currentColor #0000;
    @supports (color: color-mix(in lab, red, red)) {
      scrollbar-color: color-mix(in oklch, currentColor 35%, #0000) #0000;
    }
  }
}
@layer base {
  @property --radialprogress {
    syntax: "<percentage>";
    inherits: true;
    initial-value: 0%;
  }
}
@layer base {
  :root:has( .modal-open, .modal[open], .modal:target, .modal-toggle:checked, .drawer:not([class*="drawer-open"]) > .drawer-toggle:checked ) {
    overflow: hidden;
  }
}
@layer base {
  :where( :root:has( .modal-open, .modal[open], .modal:target, .modal-toggle:checked, .drawer:not(.drawer-open) > .drawer-toggle:checked ) ) {
    scrollbar-gutter: stable;
    background-image: linear-gradient(var(--color-base-100), var(--color-base-100));
    --root-bg: var(--color-base-100);
    @supports (color: color-mix(in lab, red, red)) {
      --root-bg: color-mix(in srgb, var(--color-base-100), oklch(0% 0 0) 40%);
    }
  }
  :where(.modal[open], .modal-open, .modal-toggle:checked + .modal):not(.modal-start, .modal-end) {
    scrollbar-gutter: stable;
  }
}
@layer base {
  :root, [data-theme] {
    background-color: var(--root-bg, var(--color-base-100));
    color: var(--color-base-content);
  }
}
@keyframes rating {
  0%, 40% {
    scale: 1.1;
    filter: brightness(1.05) contrast(1.05);
  }
}
@keyframes dropdown {
  0% {
    opacity: 0;
  }
}
@keyframes radio {
  0% {
    padding: 5px;
  }
  50% {
    padding: 3px;
  }
}
@keyframes toast {
  0% {
    scale: 0.9;
    opacity: 0;
  }
  100% {
    scale: 1;
    opacity: 1;
  }
}
@keyframes skeleton {
  0% {
    background-position: 150%;
  }
  100% {
    background-position: -50%;
  }
}
@keyframes progress {
  50% {
    background-position-x: -115%;
  }
}
@layer base {
  :where(:root),:root:has(input.theme-controller[value=floralle]:checked),[data-theme="floralle"] {
    color-scheme: light;
    --color-base-100: #ffffff;
    --color-base-200: #faf5ef;
    --color-base-300: #f2eae0;
    --color-base-content: #1a1a1a;
    --color-primary: #d9486a;
    --color-primary-content: #ffffff;
    --color-secondary: #1a1a1a;
    --color-secondary-content: #ffffff;
    --color-accent: #b85c3e;
    --color-accent-content: #ffffff;
    --color-neutral: #1a1a1a;
    --color-neutral-content: #ffffff;
    --color-info: #2d5a4f;
    --color-info-content: #ffffff;
    --color-success: #2e7a5c;
    --color-success-content: #ffffff;
    --color-warning: #c18a2e;
    --color-warning-content: #ffffff;
    --color-error: #b85c3e;
    --color-error-content: #ffffff;
    --radius-selector: 9999px;
    --radius-field: 9999px;
    --radius-box: 1rem;
    --size-selector: 0.25rem;
    --size-field: 0.25rem;
    --border: 1px;
    --depth: 1;
    --noise: 0;
  }
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-content {
  syntax: "*";
  inherits: false;
  initial-value: "";
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-scroll-snap-strictness {
  syntax: "*";
  inherits: false;
  initial-value: proximity;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-ordinal {
  syntax: "*";
  inherits: false;
}
@property --tw-slashed-zero {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-figure {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-fraction {
  syntax: "*";
  inherits: false;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-font-weight: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-border-style: solid;
      --tw-content: "";
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-scroll-snap-strictness: proximity;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-divide-y-reverse: 0;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-tracking: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
    }
  }
}
