body.lm-app .btn,
body.lm-auth .btn,
body.lm-app button,
body.lm-auth button,
body.lm-app input[type="submit"],
body.lm-auth input[type="submit"],
body.lm-app .history-action-btn,
body.lm-app .history-open-link {
  border-radius: var(--lm-radius);
  font-weight: 750;
  transition: background-color 150ms ease, border-color 150ms ease, color 150ms ease;
}

body.lm-app .btn-primary,
body.lm-auth .btn-primary,
body.lm-app .bg-primary,
body.lm-auth .bg-primary,
body.lm-app .checkout-btn,
body.lm-app .add-to-cart-btn,
body.lm-app .custom-file-upload,
body.lm-app .btnr,
body.lm-app input[type="submit"].btn-primary {
  border-color: var(--lm-brand) !important;
  background: var(--lm-brand) !important;
  color: #fff !important;
  box-shadow: none !important;
}

body.lm-app .btn-primary:hover,
body.lm-auth .btn-primary:hover,
body.lm-app .checkout-btn:hover,
body.lm-app .add-to-cart-btn:hover,
body.lm-app .custom-file-upload:hover,
body.lm-app .btnr:hover {
  border-color: var(--lm-brand-hover) !important;
  background: var(--lm-brand-hover) !important;
  color: #fff !important;
  transform: none !important;
}

body.lm-app .btn-outline-primary,
body.lm-auth .btn-outline-primary {
  border-color: var(--lm-charcoal) !important;
  background: transparent !important;
  color: var(--lm-charcoal) !important;
}

body.lm-app .btn-outline-primary:hover,
body.lm-auth .btn-outline-primary:hover {
  border-color: var(--lm-charcoal) !important;
  background: var(--lm-charcoal) !important;
  color: #fff !important;
}

body.lm-app .btn-success,
body.lm-app .bg-success {
  border-color: var(--lm-success) !important;
  background: var(--lm-success) !important;
  color: #fff !important;
}

body.lm-app .text-primary,
body.lm-auth .text-primary {
  color: var(--lm-brand) !important;
}

body.lm-app .bg-light,
body.lm-auth .bg-light {
  background: var(--lm-surface-strong) !important;
}

body.lm-app .card,
body.lm-app .cart-item,
body.lm-app .checkout-container,
body.lm-app .order-card,
body.lm-app .info-section,
body.lm-app .pricing-section,
body.lm-app .history-item,
body.lm-app .history-detail-card,
body.lm-app .quote-notice,
body.lm-app .forms {
  border: 1px solid var(--lm-border) !important;
  border-radius: var(--lm-radius) !important;
  background: var(--lm-surface) !important;
  box-shadow: none !important;
}

body.lm-app .card:hover,
body.lm-app .cart-item:hover,
body.lm-app .order-card:hover {
  transform: none !important;
  box-shadow: var(--lm-shadow-sm) !important;
}

body.lm-app .card-header,
body.lm-app .card-footer,
body.lm-app .order-header,
body.lm-app .history-summary {
  border-color: var(--lm-border) !important;
  background: var(--lm-surface-strong) !important;
  color: var(--lm-text) !important;
}

body.lm-app .form-control,
body.lm-app .form-select,
body.lm-app input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="hidden"]),
body.lm-app textarea,
body.lm-app select,
body.lm-auth .form-control,
body.lm-auth input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="hidden"]),
body.lm-auth textarea,
body.lm-auth select {
  min-height: 44px;
  border: 1px solid var(--lm-border) !important;
  border-radius: var(--lm-radius) !important;
  background-color: #fffdf8 !important;
  color: var(--lm-text) !important;
  box-shadow: none !important;
}

body.lm-app .form-control:focus,
body.lm-app .form-select:focus,
body.lm-app input:focus,
body.lm-app textarea:focus,
body.lm-app select:focus,
body.lm-auth .form-control:focus,
body.lm-auth input:focus,
body.lm-auth textarea:focus,
body.lm-auth select:focus {
  border-color: var(--lm-focus) !important;
  box-shadow: 0 0 0 3px rgb(13 110 253 / 16%) !important;
}

body.lm-app table:not(.table-borderless),
body.lm-app .checkout-detail-table,
body.lm-app .cart-detail-table {
  border-color: var(--lm-border) !important;
  background: var(--lm-surface) !important;
  color: var(--lm-text) !important;
  font-family: Inter, ui-sans-serif, system-ui, sans-serif !important;
}

body.lm-app table:not(.table-borderless) th,
body.lm-app .checkout-detail-table th,
body.lm-app .cart-detail-table th {
  border-color: var(--lm-border) !important;
  background: #eef4fb !important;
  color: var(--lm-text) !important;
  font-weight: 800;
}

body.lm-app table:not(.table-borderless) td,
body.lm-app .checkout-detail-table td,
body.lm-app .cart-detail-table td {
  border-color: var(--lm-border) !important;
  background: var(--lm-surface) !important;
  color: var(--lm-text) !important;
}

body.lm-app .badge {
  border: 1px solid var(--lm-border);
  border-radius: 999px;
  background: var(--lm-surface-strong) !important;
  color: var(--lm-text) !important;
  font-weight: 750;
}

body.lm-app .alert,
body.lm-app .flash-error,
body.lm-app .success,
body.lm-app .callout,
body.lm-auth .flash-error,
body.lm-auth .success {
  border-width: 1px !important;
  border-style: solid !important;
  border-radius: var(--lm-radius) !important;
  box-shadow: none !important;
}

body.lm-app .alert-warning,
body.lm-app .callout--warning {
  border-color: #d9b06d !important;
  background: #fff3cd !important;
  color: #6a4311 !important;
}

body.lm-app .flash-error,
body.lm-auth .flash-error {
  border-color: #d69a91 !important;
  background: #f8d7da !important;
  color: #7f291f !important;
}

body.lm-app .success,
body.lm-auth .success {
  border-color: #94c4aa !important;
  background: #ecf7f0 !important;
  color: #1f6543 !important;
}

body.lm-app .modal-content,
body.lm-app .modal-content-panel,
body.lm-app .popuptext,
body.lm-app .chat-popup,
body.lm-auth .chat-popup {
  border: 1px solid var(--lm-border) !important;
  border-radius: var(--lm-radius) !important;
  background: var(--lm-surface) !important;
  box-shadow: var(--lm-shadow-overlay) !important;
}

body.lm-app #chat_button,
body.lm-auth #chat_button {
  border: 1px solid rgb(255 255 255 / 18%) !important;
  border-radius: var(--lm-radius) !important;
  background: var(--lm-brand) !important;
  color: #fff !important;
  box-shadow: var(--lm-shadow-sm) !important;
  transform: none !important;
}

body.lm-app #chat_button:hover,
body.lm-auth #chat_button:hover {
  background: var(--lm-brand-hover) !important;
}

body.lm-app #chat_button::after,
body.lm-auth #chat_button::after {
  width: 8px;
  height: 8px;
  margin-left: 8px;
  border-radius: 50%;
  background: #22c55e;
  content: "";
  display: inline-block;
}

body.lm-app .status-badge,
body.lm-app .customer-type-badge {
  border-radius: 999px !important;
  font-weight: 800 !important;
  box-shadow: none !important;
}

body.lm-app .remove-btn,
body.lm-app .remove-from-cart,
body.lm-app .history-delete-btn {
  border-color: var(--lm-danger) !important;
  background: transparent !important;
  color: var(--lm-danger) !important;
  box-shadow: none !important;
}

body.lm-app .total-value,
body.lm-app .grand-total-value,
body.lm-app .grand-total,
body.lm-app .cart-summary-total,
body.lm-app .gr_tot_p:last-of-type {
  color: var(--lm-brand) !important;
}

@media (prefers-reduced-motion: reduce) {
  body.lm-app *,
  body.lm-auth * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
