@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&display=swap');html,
body {
  height: 100%;
  margin: 0;
}

body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.content-area {
  margin-top: 0; /* Remove margin to eliminate space below header */
}

.app-container {
  flex: 1;
  position: relative;
  margin: 0;
  padding: 0;
}

.app-footer {
  height: 60px;
}

.app-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background-color: #333;
  height: 6%;
  opacity: 0.9;
}

.custom-footer {
  padding: 1rem 0;
}

.footer-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.footer-links {
  display: flex;
  gap: 1rem;
}

@media (max-width: 640px) {
  .footer-content {
    flex-direction: column;
    gap: 1rem;
  }
}

.form-bg-image {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  height: 60vh;
}

.logo-container {
  margin-left: 210px;
}
/* 
 * 🎯 TRIGGER ANIMATIONS
 * Psychological micro-interactions designed to create engagement and retention
 * Built by Nexus - The Animation Psychology Expert 🎭
 */

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes slideInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideInLeft {
  from {
    opacity: 0;
    transform: translateX(-20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3) translateY(-50px);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

@keyframes shimmer {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}

@keyframes glow {
  0%,
  100% {
    box-shadow: 0 0 5px rgba(59, 130, 246, 0.3);
  }
  50% {
    box-shadow: 0 0 20px rgba(59, 130, 246, 0.6),
      0 0 30px rgba(59, 130, 246, 0.4);
  }
}

@keyframes celebrationPulse {
  0% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7);
  }
  70% {
    transform: scale(1.05);
    box-shadow: 0 0 0 10px rgba(34, 197, 94, 0);
  }
  100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(34, 197, 94, 0);
  }
}

/* Utility classes for  animations */
.animate-fadeIn {
  animation: fadeIn 0.3s ease-out;
}

.animate-slideInUp {
  animation: slideInUp 0.4s ease-out;
}

.animate-slideInLeft {
  animation: slideInLeft 0.4s ease-out;
}

.animate-slideInRight {
  animation: slideInRight 0.4s ease-out;
}

.animate-bounceIn {
  animation: bounceIn 0.6s ease-out;
}

.animate-shimmer {
  animation: shimmer 2s infinite;
}

.animate-glow {
  animation: glow 2s ease-in-out infinite alternate;
}

.animate-celebrationPulse {
  animation: celebrationPulse 1s ease-out;
}

/* Hover effects for maximum engagement */
.hover-lift {
  transition: all 0.2s ease-out;
}

.hover-lift:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.hover-glow {
  transition: all 0.3s ease-out;
}

.hover-glow:hover {
  box-shadow: 0 0 20px rgba(59, 130, 246, 0.4);
  transform: scale(1.02);
}

/* Critical task urgency pulse */
.critical-pulse {
  animation: pulse 1s cubic-bezier(0.4, 0, 0.6, 1) infinite;
  box-shadow: 0 0 0 1px rgba(239, 68, 68, 0.4);
}

/* Success celebration ring effect */
.success-ring {
  position: relative;
}

.success-ring::after {
  content: "";
  position: absolute;
  top: -4px;
  left: -4px;
  right: -4px;
  bottom: -4px;
  border: 2px solid rgba(34, 197, 94, 0.6);
  border-radius: inherit;
  animation: celebrationPulse 1.5s ease-out infinite;
}

/* Magnetic button effect for critical actions */
.magnetic-button {
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
}

.magnetic-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.3),
    transparent
  );
  transition: left 0.5s;
}

.magnetic-button:hover::before {
  left: 100%;
}

.magnetic-button:hover {
  transform: scale(1.05) translateY(-1px);
}

/* Progress bar enthusiasm */
.progress-enthusiastic {
  background: linear-gradient(45deg, #3b82f6, #8b5cf6, #06b6d4, #10b981);
  background-size: 300% 300%;
  animation: gradient-shift 3s ease infinite;
}

@keyframes gradient-shift {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* Completion celebration confetti */
.confetti-container {
  position: relative;
  overflow: hidden;
}

.confetti-piece {
  position: absolute;
  width: 6px;
  height: 6px;
  background: #fbbf24;
  animation: confetti-fall 3s linear infinite;
}

@keyframes confetti-fall {
  0% {
    transform: translateY(-100vh) rotate(0deg);
    opacity: 1;
  }
  100% {
    transform: translateY(100vh) rotate(720deg);
    opacity: 0;
  }
}

/* Micro-interaction feedback */
.feedback-ripple {
  position: relative;
  overflow: hidden;
}

.feedback-ripple::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.6);
  transform: translate(-50%, -50%);
  transition: width 0.3s, height 0.3s;
}

.feedback-ripple:active::after {
  width: 300px;
  height: 300px;
}
@keyframes notyf-fadeinup{0%{opacity:0;transform:translateY(25%)}to{opacity:1;transform:translateY(0)}}@keyframes notyf-fadeinleft{0%{opacity:0;transform:translateX(25%)}to{opacity:1;transform:translateX(0)}}@keyframes notyf-fadeoutright{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(25%)}}@keyframes notyf-fadeoutdown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(25%)}}@keyframes ripple{0%{transform:scale(0) translateY(-45%) translateX(13%)}to{transform:scale(1) translateY(-45%) translateX(13%)}}.notyf{position:fixed;top:0;left:0;height:100%;width:100%;color:#fff;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;pointer-events:none;box-sizing:border-box;padding:20px}.notyf__icon--error,.notyf__icon--success{height:21px;width:21px;background:#fff;border-radius:50%;display:block;margin:0 auto;position:relative}.notyf__icon--error:after,.notyf__icon--error:before{content:"";background:currentColor;display:block;position:absolute;width:3px;border-radius:3px;left:9px;height:12px;top:5px}.notyf__icon--error:after{transform:rotate(-45deg)}.notyf__icon--error:before{transform:rotate(45deg)}.notyf__icon--success:after,.notyf__icon--success:before{content:"";background:currentColor;display:block;position:absolute;width:3px;border-radius:3px}.notyf__icon--success:after{height:6px;transform:rotate(-45deg);top:9px;left:6px}.notyf__icon--success:before{height:11px;transform:rotate(45deg);top:5px;left:10px}.notyf__toast{display:block;overflow:hidden;pointer-events:auto;animation:notyf-fadeinup .3s ease-in forwards;box-shadow:0 3px 7px 0 rgba(0,0,0,.25);position:relative;padding:0 15px;border-radius:2px;max-width:300px;transform:translateY(25%);box-sizing:border-box;flex-shrink:0}.notyf__toast--disappear{transform:translateY(0);animation:notyf-fadeoutdown .3s forwards;animation-delay:.25s}.notyf__toast--disappear .notyf__icon,.notyf__toast--disappear .notyf__message{animation:notyf-fadeoutdown .3s forwards;opacity:1;transform:translateY(0)}.notyf__toast--disappear .notyf__dismiss{animation:notyf-fadeoutright .3s forwards;opacity:1;transform:translateX(0)}.notyf__toast--disappear .notyf__message{animation-delay:.05s}.notyf__toast--upper{margin-bottom:20px}.notyf__toast--lower{margin-top:20px}.notyf__toast--dismissible .notyf__wrapper{padding-right:30px}.notyf__ripple{height:400px;width:400px;position:absolute;transform-origin:bottom right;right:0;top:0;border-radius:50%;transform:scale(0) translateY(-51%) translateX(13%);z-index:5;animation:ripple .4s ease-out forwards}.notyf__wrapper{display:flex;align-items:center;padding-top:17px;padding-bottom:17px;padding-right:15px;border-radius:3px;position:relative;z-index:10}.notyf__icon{width:22px;text-align:center;font-size:1.3em;opacity:0;animation:notyf-fadeinup .3s forwards;animation-delay:.3s;margin-right:13px}.notyf__dismiss{position:absolute;top:0;right:0;height:100%;width:26px;margin-right:-15px;animation:notyf-fadeinleft .3s forwards;animation-delay:.35s;opacity:0}.notyf__dismiss-btn{background-color:rgba(0,0,0,.25);border:none;cursor:pointer;transition:opacity .2s ease,background-color .2s ease;outline:none;opacity:.35;height:100%;width:100%}.notyf__dismiss-btn:after,.notyf__dismiss-btn:before{content:"";background:#fff;height:12px;width:2px;border-radius:3px;position:absolute;left:calc(50% - 1px);top:calc(50% - 5px)}.notyf__dismiss-btn:after{transform:rotate(-45deg)}.notyf__dismiss-btn:before{transform:rotate(45deg)}.notyf__dismiss-btn:hover{opacity:.7;background-color:rgba(0,0,0,.15)}.notyf__dismiss-btn:active{opacity:.8}.notyf__message{vertical-align:middle;position:relative;opacity:0;animation:notyf-fadeinup .3s forwards;animation-delay:.25s;line-height:1.5em}@media only screen and (max-width:480px){.notyf{padding:0}.notyf__ripple{height:600px;width:600px;animation-duration:.5s}.notyf__toast{max-width:none;border-radius:0;box-shadow:0 -2px 7px 0 rgba(0,0,0,.13);width:100%}.notyf__dismiss{width:56px}}/* Enhanced scrolling for all chat modes - FIXED */
/* Conversation sidebar specific styles - Updated with subtle colors */
.conversation-sidebar {
  width: 280px !important;
  min-width: 280px;
  background-color: #f8fafc;
  border-right: 1px solid #e2e8f0;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  transition: width 0.3s ease, opacity 0.3s ease;
  z-index: 20;
  height: 100%;
  box-shadow: 2px 0 5px rgba(0, 0, 0, 0.05);
  position: relative;
}
/* When the sidebar is collapsed */
.conversation-sidebar.w-0 {
  min-width: 0 !important;
  width: 0 !important;
  padding: 0 !important;
  opacity: 0;
  overflow: hidden;
}
/* Sidebar header with modern gradient */
.sidebar-header {
  background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
  color: white;
  padding: 12px 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
/* Sidebar header with icon and title */
.sidebar-header-content {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.sidebar-header h3 {
  font-size: 0.875rem;
  font-weight: 500;
  margin: 0;
}
/* Sidebar action buttons */
.sidebar-action-buttons {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.sidebar-action-button {
  background: none;
  border: none;
  color: white;
  opacity: 0.8;
  cursor: pointer;
  transition: all 0.2s ease;
  padding: 0.375rem;
  border-radius: 0.375rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sidebar-action-button:hover {
  opacity: 1;
  background-color: rgba(255, 255, 255, 0.1);
  transform: scale(1.05);
}
.sidebar-action-button:active {
  transform: scale(0.95);
}
/* History toggle button (when sidebar is collapsed) */
.history-toggle-button {
  position: absolute;
  left: 0;
  top: 6rem;
  background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
  color: white;
  border: none;
  padding: 0.5rem;
  border-radius: 0 0.375rem 0.375rem 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.75rem;
  font-weight: 500;
  box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.15);
  transition: all 0.2s ease;
  z-index: 60;
}
.history-toggle-button:hover {
  background: linear-gradient(135deg, #1d4ed8 0%, #1e40af 100%);
  transform: translateX(2px);
  box-shadow: 4px 4px 12px rgba(0, 0, 0, 0.2);
}
.history-toggle-button svg {
  width: 1rem;
  height: 1rem;
}
/* Conversation list styling */
.conversation-list {
  padding: 0.5rem;
  height: calc(100% - 60px);
  overflow-y: auto;
}
.conversation-list::-webkit-scrollbar {
  width: 4px;
}
.conversation-list::-webkit-scrollbar-track {
  background: transparent;
}
.conversation-list::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 2px;
}
.conversation-list::-webkit-scrollbar-thumb:hover {
  background: #9ca3af;
}
/* Individual conversation items */
.conversation-item {
  padding: 0.75rem;
  margin: 0.25rem 0;
  border-radius: 0.5rem;
  cursor: pointer;
  transition: all 0.2s ease;
  border: 1px solid transparent;
  position: relative;
  overflow: hidden;
}
.conversation-item:hover {
  background-color: #f3f4f6;
  border-color: #d1d5db;
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.conversation-item.active {
  background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
  color: white;
  border-color: #1d4ed8;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.conversation-item.active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: linear-gradient(180deg, #60a5fa 0%, #3b82f6 100%);
}
/* Conversation item content */
.conversation-item-header {
  display: flex;
  justify-content: between;
  align-items: flex-start;
  gap: 0.5rem;
}
.conversation-item-title {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25;
  margin: 0 0 0.25rem 0;
  flex-grow: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.conversation-item.active .conversation-item-title {
  color: white;
}
.conversation-item-date {
  font-size: 0.75rem;
  opacity: 0.7;
  margin: 0;
  flex-shrink: 0;
}
.conversation-item.active .conversation-item-date {
  color: rgba(255, 255, 255, 0.8);
}
/* Delete button for conversations */
.conversation-delete-button {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  background: none;
  border: none;
  color: #9ca3af;
  cursor: pointer;
  padding: 0.25rem;
  border-radius: 0.25rem;
  opacity: 0;
  transition: all 0.2s ease;
}
.conversation-item:hover .conversation-delete-button {
  opacity: 1;
}
.conversation-delete-button:hover {
  color: #ef4444;
  background-color: rgba(239, 68, 68, 0.1);
  transform: scale(1.1);
}
.conversation-item.active .conversation-delete-button {
  color: rgba(255, 255, 255, 0.7);
}
.conversation-item.active .conversation-delete-button:hover {
  color: #fca5a5;
  background-color: rgba(255, 255, 255, 0.1);
}
/* Empty state styling */
.conversation-empty-state {
  text-align: center;
  padding: 2rem 1rem;
  color: #6b7280;
}
.conversation-empty-state-icon {
  width: 3rem;
  height: 3rem;
  margin: 0 auto 1rem auto;
  background-color: #f3f4f6;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #9ca3af;
}
.conversation-empty-state h4 {
  font-size: 1rem;
  font-weight: 500;
  margin: 0 0 0.5rem 0;
  color: #374151;
}
.conversation-empty-state p {
  font-size: 0.875rem;
  margin: 0 0 1.5rem 0;
  opacity: 0.8;
}
.conversation-empty-state-button {
  background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
  color: white;
  border: none;
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
}
.conversation-empty-state-button:hover {
  background: linear-gradient(135deg, #1d4ed8 0%, #1e40af 100%);
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}
/* Fix for main container when sidebar is toggled */
.absolute.inset-0.flex {
  overflow: visible !important;
}
/* Ensure main content area expands to fill space */
.flex-grow.flex.flex-col.overflow-hidden.relative {
  width: 100%;
  height: 100%;
  min-width: 0;
  flex: 1;
}
/* Fullscreen mode adjustments */
.investor-assistant-fullscreen .conversation-sidebar {
  position: relative;
  height: 100vh;
  box-shadow: none;
  border-right: 1px solid #e2e8f0;
}
/* Mobile responsive adjustments */
@media (max-width: 768px) {
  .conversation-sidebar {
    width: 100% !important;
    min-width: 100% !important;
    position: absolute;
    z-index: 100;
    height: 100%;
    background-color: white;
  }

  .history-toggle-button {
    display: none;
  }

  .conversation-item {
    padding: 1rem;
  }

  .conversation-item-title {
    font-size: 1rem;
  }

  .conversation-item-date {
    font-size: 0.8rem;
  }
}
/* Animation for sidebar toggle */
@keyframes slideInFromLeft {
  from {
    transform: translateX(-100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes slideOutToLeft {
  from {
    transform: translateX(0);
    opacity: 1;
  }
  to {
    transform: translateX(-100%);
    opacity: 0;
  }
}
.conversation-sidebar.entering {
  animation: slideInFromLeft 0.3s ease-out;
}
.conversation-sidebar.exiting {
  animation: slideOutToLeft 0.3s ease-in;
}
/* Improved focus states for accessibility */
.conversation-item:focus-visible {
  outline: 2px solid #3b82f6;
  outline-offset: 2px;
}
.sidebar-action-button:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.8);
  outline-offset: 2px;
}
/* High contrast mode support */
@media (prefers-contrast: high) {
  .conversation-sidebar {
    border-right-width: 2px;
  }

  .conversation-item {
    border-width: 2px;
  }

  .conversation-item.active {
    border-width: 2px;
    border-color: #1f2937;
  }
}
/* Ensure main content area expands to fill space */
.flex-grow.flex.flex-col.overflow-hidden.relative {
  width: 100%;
  height: 100%;
  min-width: 0;
  flex: 1;
}
.flex-grow.overflow-y-auto.p-2 {
  height: calc(100% - 50px);
}
/* Fullscreen mode adjustments */
.investor-assistant-fullscreen .conversation-sidebar {
  position: relative;
  height: 100vh;
  box-shadow: none;
  border-right: 1px solid #e2e8f0;
}
/* Mobile responsive adjustments */
@media (max-width: 768px) {
  .conversation-sidebar {
    width: 100% !important;
    min-width: 100% !important;
    position: absolute;
    z-index: 100;
    height: 100%;
    background-color: white;
  }

  .history-toggle-button {
    display: none;
  }

  .conversation-item {
    padding: 1rem;
  }

  .conversation-item-title {
    font-size: 1rem;
  }

  .conversation-item-date {
    font-size: 0.8rem;
  }
}
/* Animation for sidebar toggle */
@keyframes slideInFromLeft {
  from {
    transform: translateX(-100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes slideOutToLeft {
  from {
    transform: translateX(0);
    opacity: 1;
  }
  to {
    transform: translateX(-100%);
    opacity: 0;
  }
}
.conversation-sidebar.entering {
  animation: slideInFromLeft 0.3s ease-out;
}
.conversation-sidebar.exiting {
  animation: slideOutToLeft 0.3s ease-in;
}
/* Improved focus states for accessibility */
.conversation-item:focus-visible {
  outline: 2px solid #3b82f6;
  outline-offset: 2px;
}
.sidebar-action-button:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.8);
  outline-offset: 2px;
}
/* High contrast mode support */
@media (prefers-contrast: high) {
  .conversation-sidebar {
    border-right-width: 2px;
  }

  .conversation-item {
    border-width: 2px;
  }

  .conversation-item.active {
    border-width: 2px;
    border-color: #1f2937;
  }
}
/* Smooth scrolling for conversation list */
.conversation-list {
  scroll-behavior: smooth;
}
/* Loading state for conversations */
.conversation-loading {
  padding: 1rem;
  text-align: center;
  color: #6b7280;
}
.conversation-loading-spinner {
  display: inline-block;
  width: 20px;
  height: 20px;
  border: 2px solid #f3f4f6;
  border-radius: 50%;
  border-top-color: #3b82f6;
  animation: spin 1s ease-in-out infinite;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
/* Conversation item badges */
.conversation-badge {
  position: absolute;
  top: 0.5rem;
  right: 2rem;
  background-color: #ef4444;
  color: white;
  font-size: 0.7rem;
  font-weight: 600;
  padding: 0.125rem 0.375rem;
  border-radius: 9999px;
  min-width: 1.25rem;
  text-align: center;
  line-height: 1;
}
.conversation-item.active .conversation-badge {
  background-color: rgba(255, 255, 255, 0.9);
  color: #374151;
}
/* Search functionality for conversations */
.conversation-search {
  padding: 0.75rem;
  border-bottom: 1px solid #e5e7eb;
  background-color: white;
}
.conversation-search-input {
  width: 100%;
  padding: 0.5rem 0.75rem;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
  font-size: 0.875rem;
  background-color: #f9fafb;
  transition: all 0.2s ease;
}
.conversation-search-input:focus {
  outline: none;
  border-color: #3b82f6;
  background-color: white;
  box-shadow: 0 0 0 2px rgba(75, 85, 99, 0.1);
}
.conversation-search-input::-moz-placeholder {
  color: #9ca3af;
}
.conversation-search-input::placeholder {
  color: #9ca3af;
}
/* Conversation categories/filters */
.conversation-filters {
  padding: 0.5rem;
  border-bottom: 1px solid #e5e7eb;
  background-color: #f9fafb;
  display: flex;
  gap: 0.25rem;
  flex-wrap: wrap;
}
.conversation-filter-chip {
  padding: 0.25rem 0.5rem;
  background-color: white;
  border: 1px solid #d1d5db;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 500;
  color: #374151;
  cursor: pointer;
  transition: all 0.2s ease;
}
.conversation-filter-chip:hover {
  background-color: #f3f4f6;
  border-color: #9ca3af;
}
.conversation-filter-chip.active {
  background-color: #3b82f6;
  color: white;
  border-color: #1d4ed8;
}
/* Context menu for conversations */
.conversation-context-menu {
  position: absolute;
  top: 100%;
  right: 0;
  background-color: white;
  border: 1px solid #e5e7eb;
  border-radius: 0.375rem;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  min-width: 150px;
}
.conversation-context-menu-item {
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  color: #374151;
  cursor: pointer;
  border-bottom: 1px solid #f3f4f6;
  transition: background-color 0.2s ease;
}
.conversation-context-menu-item:hover {
  background-color: #f9fafb;
}
.conversation-context-menu-item:last-child {
  border-bottom: none;
}
.conversation-context-menu-item.danger {
  color: #ef4444;
}
.conversation-context-menu-item.danger:hover {
  background-color: #fef2f2;
}
/* Drag and drop support for conversations */
.conversation-item.dragging {
  opacity: 0.5;
  transform: rotate(2deg);
}
.conversation-item.drag-over {
  border-color: #3b82f6;
  background-color: rgba(75, 85, 99, 0.05);
}
/* Keyboard navigation indicators */
.conversation-item.keyboard-focused {
  outline: 2px solid #3b82f6;
  outline-offset: -2px;
}
/* Conversation item status indicators */
.conversation-status {
  position: absolute;
  bottom: 0.5rem;
  right: 0.5rem;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  border: 2px solid white;
}
.conversation-status.unread {
  background-color: #3b82f6;
}
.conversation-status.active {
  background-color: #10b981;
}
.conversation-status.archived {
  background-color: #6b7280;
}
/* Responsive layout improvements */
@media (max-width: 1024px) {
  .conversation-sidebar {
    width: 240px !important;
    min-width: 240px;
  }
}
@media (max-width: 480px) {
  .conversation-sidebar {
    width: 100vw !important;
    min-width: 100vw !important;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
  }

  .conversation-item {
    padding: 1.25rem;
    margin: 0.125rem 0;
  }

  .conversation-item-title {
    font-size: 1.125rem;
    line-height: 1.4;
  }

  .conversation-empty-state {
    padding: 3rem 1.5rem;
  }
}
/* Performance optimizations */
.conversation-sidebar {
  contain: layout style paint;
  will-change: width, opacity;
}
.conversation-item {
  contain: layout style paint;
}
/* Dark mode support */
@media (prefers-color-scheme: dark) {
  .conversation-sidebar {
    background-color: #1f2937;
    border-right-color: #374151;
  }

  .sidebar-header {
    background: linear-gradient(135deg, #111827 0%, #000000 100%);
  }

  .conversation-item {
    color: #e5e7eb;
  }

  .conversation-item:hover {
    background-color: #374151;
    border-color: #3b82f6;
  }

  .conversation-item.active {
    background: linear-gradient(135deg, #1f2937 0%, #111827 100%);
    color: white;
    border-color: #111827;
  }

  .conversation-empty-state {
    color: #9ca3af;
  }

  .conversation-empty-state h4 {
    color: #e5e7eb;
  }

  .conversation-search-input {
    background-color: #374151;
    border-color: #3b82f6;
    color: #e5e7eb;
  }

  .conversation-search-input::-moz-placeholder {
    color: #6b7280;
  }

  .conversation-search-input::placeholder {
    color: #6b7280;
  }

  .conversation-filters {
    background-color: #1f2937;
    border-bottom-color: #374151;
  }

  .conversation-filter-chip {
    background-color: #374151;
    border-color: #3b82f6;
    color: #e5e7eb;
  }

  .conversation-context-menu {
    background-color: #1f2937;
    border-color: #1d4ed8;
    color: #e5e7eb;
  }
}
/* Print styles */
@media print {
  .conversation-sidebar {
    display: none;
  }

  .history-toggle-button {
    display: none;
  }
}
.investor-assistant {
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  background-color: #ffffff;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  position: relative;
}
/* FIXED: Ensure proper scrolling in all modes */
.investor-assistant .message-container,
.investor-assistant .chat-container,
.message-container-scrollable {
  overflow-y: auto !important;
  overflow-x: hidden !important;
  height: 100% !important;
  scroll-behavior: smooth !important;
}
/* Fix for message list scrolling */
.investor-assistant .MessageList,
.message-list {
  height: auto;
  min-height: 100%;
  display: flex;
  flex-direction: column;
}
/* Fullscreen styles */
.investor-assistant-fullscreen {
  display: flex;
  flex-direction: column;
  height: 100vh;
  width: 100vw;
  background-color: #ffffff;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  overflow: hidden;
}
/* Header styles - Updated with more subtle colors */
/* Removed global .bg-gradient-to-r override - was breaking Tailwind gradients */
/* Mock data toggle */
.mock-data-toggle {
  padding: 8px 12px;
  background-color: #f8fafc;
  border-bottom: 1px solid #e2e8f0;
  display: flex;
  justify-content: flex-end;
  z-index: 10;
}
/* Mock data indicator */
.mock-data-indicator {
  position: absolute;
  top: 60px;
  right: 12px;
  background-color: #3b82f6;
  color: white;
  font-size: 10px;
  font-weight: bold;
  padding: 3px 6px;
  border-radius: 4px;
  z-index: 20;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
/* Message list container - FIXED: Proper scrolling */
.chat-container {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 1rem;
  background-color: #f8fafc;
  width: 100%;
  height: 100%;
  max-width: 100%;
  scroll-behavior: smooth;
}
.chat-input-container {
  border-top: 1px solid #e2e8f0;
  padding: 0.5rem 1rem 1rem;
  background-color: #ffffff;
}
/* Dark mode overrides */
.dark-mode .investor-assistant {
  background-color: #1e293b;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}
.dark-mode .chat-container {
  background-color: #0f172a;
}
.dark-mode .chat-input-container {
  background-color: #1e293b;
  border-top: 1px solid #334155;
}
.dark-mode .mock-data-toggle {
  background-color: #1e293b;
  border-bottom: 1px solid #334155;
}
.dark-mode .mock-data-indicator {
  background-color: #3b82f6;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}
/* Message animations */
@keyframes message-fade-in {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.message-enter {
  animation: message-fade-in 0.3s ease forwards;
}
/* Message container styles */
.message-container {
  transition: opacity 0.3s ease-in-out;
  display: flex;
  margin-bottom: 1.25rem;
  position: relative;
  max-width: 100%;
}
.user-message {
  justify-content: flex-end;
  padding-left: 48px;
}
.assistant-message {
  justify-content: flex-start;
  padding-right: 48px;
}
/* Message bubble styles - Updated with subtle colors */
.message-bubble {
  max-width: 80%;
  padding: 0.75rem 1rem;
  border-radius: 1rem;
  position: relative;
  animation: message-fade-in 0.3s ease forwards;
}
.user-message .message-bubble {
  background: linear-gradient(135deg, #3b82f6 0%, #1d4ed8 100%);
  color: white;
  border-bottom-right-radius: 0.25rem;
  margin-left: auto;
}
.assistant-message .message-bubble {
  background-color: white;
  color: #334155;
  border-bottom-left-radius: 0.25rem;
  margin-right: auto;
  border: 1px solid #e2e8f0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}
/* Message sender label */
.message-sender {
  font-size: 0.75rem;
  font-weight: 600;
  color: #374151;
  margin-bottom: 0.25rem;
}
/* Message content */
.message-content {
  word-wrap: break-word;
  white-space: pre-wrap;
  line-height: 1.5;
}
/* Message timestamp */
.message-timestamp {
  font-size: 0.7rem;
  color: rgba(255, 255, 255, 0.7);
  margin-top: 0.5rem;
  text-align: right;
}
.assistant-message .message-timestamp {
  color: #64748b;
}
/* Avatar styles */
.avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 0.5rem;
  flex-shrink: 0;
}
.assistant-message .avatar {
  background-color: #f3f4f6;
  color: #374151;
}
.user-message .avatar {
  background-color: #e5e7eb;
  color: #374151;
  margin-left: 0.5rem;
  margin-right: 0;
}
/* Improve feedback button visibility */
.message-feedback {
  display: flex;
  flex-direction: column;
  margin-left: 0.5rem;
  opacity: 0;
  transition: opacity 0.2s ease;
}
.assistant-message:hover .message-feedback {
  opacity: 1;
}
.feedback-button {
  background: none;
  border: none;
  font-size: 1rem;
  cursor: pointer;
  padding: 0.25rem;
  opacity: 0.5;
  transition: opacity 0.2s ease, transform 0.2s ease;
}
.feedback-button:hover {
  opacity: 1;
  transform: scale(1.2);
}
/* Typing indicator */
.typing-indicator {
  display: flex;
  align-items: center;
  padding: 12px 16px;
  background-color: white;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  max-width: 80px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  margin-bottom: 8px;
}
.typing-dot {
  background-color: #3b82f6;
  border-radius: 50%;
  width: 6px;
  height: 6px;
  margin: 0 2px;
  animation: typingAnimation 1.2s infinite ease-in-out;
}
.typing-dot:nth-child(1) {
  animation-delay: 0s;
}
.typing-dot:nth-child(2) {
  animation-delay: 0.2s;
}
.typing-dot:nth-child(3) {
  animation-delay: 0.4s;
}
@keyframes typingAnimation {
  0% {
    transform: translateY(0px);
    opacity: 0.4;
  }
  50% {
    transform: translateY(-5px);
    opacity: 1;
  }
  100% {
    transform: translateY(0px);
    opacity: 0.4;
  }
}
/* Content Type Styling */
.deal-calculation-content,
.market-insights-content,
.similar-properties-content {
  display: flex;
  flex-direction: column;
}
.deal-calculation-content h3,
.market-insights-content h3,
.similar-properties-content h3 {
  margin-top: 0;
  margin-bottom: 0.75rem;
  font-size: 1.1rem;
  color: #374151;
}
.calculation-text,
.market-text,
.similar-text {
  margin-bottom: 1rem;
  white-space: pre-wrap;
}
.view-details-button {
  align-self: flex-start;
  background-color: #f3f4f6;
  border: none;
  border-radius: 12px;
  padding: 0.5rem 0.75rem;
  font-size: 0.85rem;
  color: #374151;
  cursor: pointer;
  transition: all 0.2s ease;
}
.view-details-button:hover {
  background-color: #e5e7eb;
  transform: translateY(-1px);
}
.similar-count {
  font-size: 0.85rem;
  margin-bottom: 0.75rem;
  color: #64748b;
}
.fallback-content pre {
  white-space: pre-wrap;
  font-size: 0.85rem;
  margin: 0;
}
.empty-content {
  font-style: italic;
  color: #64748b;
}
/* Suggestion chips styles - Updated colors */
.suggestion-chips {
  display: flex;
  flex-wrap: nowrap;
  gap: 0.5rem;
  overflow-x: auto;
  padding-bottom: 0.5rem;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE and Edge */
}
.suggestion-chips::-webkit-scrollbar {
  display: none; /* Chrome, Safari and Opera */
}
.suggestion-chip {
  background-color: #f9fafb;
  border: 1px solid #4b5563;
  color: #374151;
  padding: 0.5rem 1rem;
  border-radius: 16px;
  font-size: 0.85rem;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
  flex-shrink: 0;
}
.suggestion-chip:hover {
  background-color: rgba(75, 85, 99, 0.1);
  transform: translateY(-1px);
}
/* Input area styles */
.chat-input {
  display: flex;
  position: relative;
  border-radius: 24px;
  background-color: #f9fafb;
  border: 1px solid #e2e8f0;
  overflow: hidden;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.chat-input:focus-within {
  border-color: #4b5563;
  box-shadow: 0 0 0 2px rgba(75, 85, 99, 0.2);
}
.message-textarea {
  flex: 1;
  border: none;
  background: transparent;
  padding: 12px 50px 12px 16px;
  resize: none;
  font-family: inherit;
  font-size: 14px;
  min-height: 24px;
  max-height: 120px;
  color: #334155;
  outline: none;
}
.message-textarea::-moz-placeholder {
  color: #94a3b8;
}
.message-textarea::placeholder {
  color: #94a3b8;
}
.send-button {
  position: absolute;
  right: 8px;
  bottom: 8px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: linear-gradient(135deg, #6b7280 0%, #4b5563 100%);
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: white;
  transition: all 0.2s ease;
}
.send-button:hover {
  transform: scale(1.05);
}
.send-button:disabled {
  background: #cbd5e1;
  cursor: not-allowed;
  transform: none;
}
.send-button svg {
  width: 16px;
  height: 16px;
}
/* Input footer */
.input-footer {
  display: flex;
  justify-content: space-between;
  padding: 4px 12px;
  font-size: 0.75rem;
  color: #64748b;
}
.input-hint {
  opacity: 0.7;
}
.character-counter {
  font-variant-numeric: tabular-nums;
}
/* Date divider styles */
.date-divider {
  position: relative;
  text-align: center;
  margin: 16px 0;
  height: 10px;
}
.date-divider::before {
  content: \"\";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  border-top: 1px solid #e2e8f0;
  z-index: 0;
}
.date-divider span {
  position: relative;
  background-color: #f8fafc;
  padding: 0 10px;
  font-size: 12px;
  color: #64748b;
  z-index: 1;
}
/* Header action buttons */
.header-action-button {
  background: transparent;
  border: none;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.2s ease;
  color: white;
  padding: 0;
}
.header-action-button:hover {
  background-color: rgba(255, 255, 255, 0.15);
}
.header-action-button.active {
  background-color: rgba(255, 255, 255, 0.25);
}
/* Settings panel styles */
.settings-panel {
  background-color: white;
  border-bottom: 1px solid #e2e8f0;
  padding: 16px;
}
.settings-section {
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #f1f5f9;
}
.settings-section:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.settings-header {
  font-size: 14px;
  font-weight: 600;
  color: #334155;
  margin: 0 0 12px 0;
}
.settings-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
}
.settings-label {
  font-size: 14px;
  color: #475569;
}
/* Size mode selector */
.size-mode-selector {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin-top: 12px;
}
.size-mode-button {
  padding: 8px;
  background-color: #f1f5f9;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 500;
  color: #475569;
  cursor: pointer;
  transition: all 0.2s ease;
}
.size-mode-button:hover {
  background-color: #e2e8f0;
}
.size-mode-button.active {
  background-color: #3b82f6;
  color: white;
  border-color: #1d4ed8;
}
/* Responsive design */
@media (max-width: 768px) {
  .investor-assistant {
    border-radius: 0;
    box-shadow: none;
    height: 100vh;
    width: 100vw;
    max-width: none;
  }

  .chat-container {
    padding: 0.5rem;
  }

  .chat-input-container {
    padding: 0.25rem 0.5rem 0.5rem;
  }

  .mock-data-toggle {
    padding: 4px 8px;
  }

  .mock-data-indicator {
    top: 50px;
    right: 8px;
    font-size: 9px;
    padding: 2px 4px;
  }

  .message-bubble {
    max-width: 85%;
  }

  .suggestion-chips {
    gap: 0.4rem;
    margin-bottom: 0.5rem;
  }

  .suggestion-chip {
    padding: 0.4rem 0.75rem;
    font-size: 0.8rem;
  }

  /* Fullscreen responsive adjustments */
  .investor-assistant-fullscreen .flex.h-full.w-full {
    flex-direction: column;
  }

  .investor-assistant-fullscreen .w-80 {
    width: 100%;
    height: 40%;
    border-right: none;
    border-bottom: 1px solid #e2e8f0;
  }
}
/* Conversation Sidebar - Updated with subtle colors */
.conversation-sidebar {
  min-width: 280px;
  width: 280px !important;
  border-right: 1px solid #e2e8f0;
  overflow-y: auto;
  background-color: #f8fafc;
  transition: width 0.3s ease, opacity 0.3s ease;
  position: relative;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  z-index: 30;
  box-shadow: 2px 0 5px rgba(0, 0, 0, 0.05);
}
.sidebar-header {
  background: linear-gradient(135deg, #4b5563 0%, #374151 100%);
  color: white;
  padding: 12px 16px;
  font-weight: 600;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.sidebar-button {
  background: none;
  border: none;
  color: white;
  opacity: 0.8;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.sidebar-button:hover {
  opacity: 1;
}
/* Fix for flex layout when sidebar is open */
.absolute.inset-0.flex {
  overflow: visible !important;
}
/* Make main content area expand to fill space */
.flex-grow.flex.flex-col.overflow-hidden.relative {
  width: 100%;
  height: 100%;
  min-width: 0;
}
.flex-grow.overflow-y-auto.p-2 {
  height: calc(100% - 50px);
}
/* Fullscreen specific styles */
.investor-assistant-fullscreen .conversation-sidebar {
  box-shadow: none;
  border-right: 1px solid #e2e8f0;
}
/* Smooth transitions for all interactive elements */
* {
  transition: background-color 0.2s ease, color 0.2s ease,
    border-color 0.2s ease;
}
/* Focus states for accessibility */
button:focus-visible {
  outline: 2px solid #3b82f6;
  outline-offset: 2px;
}
input:focus {
  outline: 2px solid #3b82f6;
  outline-offset: 2px;
}
/* Scrollbar styling */
::-webkit-scrollbar {
  width: 6px;
}
::-webkit-scrollbar-track {
  background: #f1f5f9;
}
::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
  background: #9ca3af;
}
/* Fullscreen specific styles */
.investor-assistant-fullscreen .conversation-sidebar {
  box-shadow: none;
  border-right: 1px solid #e2e8f0;
}
/* Smooth transitions for all interactive elements */
* {
  transition: background-color 0.2s ease, color 0.2s ease,
    border-color 0.2s ease;
}
/* Focus states for accessibility */
button:focus-visible {
  outline: 2px solid #3b82f6;
  outline-offset: 2px;
}
input:focus {
  outline: 2px solid #3b82f6;
  outline-offset: 2px;
}
/* Scrollbar styling */
::-webkit-scrollbar {
  width: 6px;
}
::-webkit-scrollbar-track {
  background: #f1f5f9;
}
::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
  background: #9ca3af;
}
/* Additional fullscreen layout improvements */
.investor-assistant-fullscreen .max-w-4xl {
  max-width: none;
  width: 100%;
}
/* Improved button hover states */
.investor-assistant button:hover {
  transform: translateY(-1px);
}
.investor-assistant button:active {
  transform: translateY(0);
}
/* History icon button styling */
.sidebar-toggle-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  border-radius: 0.375rem;
  transition: all 0.2s ease;
}
.sidebar-toggle-icon:hover {
  background-color: rgba(255, 255, 255, 0.1);
}
/* Enhanced conversation list styling */
.conversation-list-item {
  padding: 0.75rem;
  margin: 0.25rem 0;
  border-radius: 0.5rem;
  cursor: pointer;
  transition: all 0.2s ease;
  border: 1px solid transparent;
}
.conversation-list-item:hover {
  background-color: #f3f4f6;
  border-color: #d1d5db;
}
.conversation-list-item.active {
  background-color: #3b82f6;
  color: white;
  border-color: #1d4ed8;
}
/* Improved settings panel */
.settings-toggle {
  background-color: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 0.375rem;
  padding: 0.5rem;
  margin: 0.25rem 0;
}
/* Enhanced input styling */
.chat-input-enhanced {
  background: linear-gradient(135deg, #ffffff 0%, #f9fafb 100%);
  border: 2px solid #e5e7eb;
  border-radius: 1.5rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.chat-input-enhanced:focus-within {
  border-color: #4b5563;
  box-shadow: 0 0 0 3px rgba(75, 85, 99, 0.1);
}
/* Message bubble animations */
.message-bubble-enter {
  animation: slideInFromRight 0.3s ease-out;
}
.assistant-message .message-bubble {
  animation: slideInFromLeft 0.3s ease-out;
}
@keyframes slideInFromRight {
  from {
    opacity: 0;
    transform: translateX(20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes slideInFromLeft {
  from {
    opacity: 0;
    transform: translateX(-20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
/* Improved loading states */
.loading-shimmer {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: shimmer 2s infinite;
}
@keyframes shimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
/* Enhanced suggestion chips */
.suggestion-chip-enhanced {
  background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
  border: 1px solid #d1d5db;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.suggestion-chip-enhanced:hover {
  background: linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}
/* Professional color palette improvements */
.professional-header {
  background: linear-gradient(135deg, #1f2937 0%, #111827 100%);
}
.professional-sidebar {
  background: linear-gradient(180deg, #f9fafb 0%, #f3f4f6 100%);
}
.professional-input {
  background: linear-gradient(135deg, #ffffff 0%, #f9fafb 100%);
  border: 1px solid #e5e7eb;
}
/* Status indicators */
.status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  display: inline-block;
  margin-right: 0.5rem;
}
.status-online {
  background-color: #10b981;
  box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.2);
}
.status-busy {
  background-color: #f59e0b;
  box-shadow: 0 0 0 2px rgba(245, 158, 11, 0.2);
}
.status-offline {
  background-color: #6b7280;
  box-shadow: 0 0 0 2px rgba(107, 114, 128, 0.2);
}
/* Tooltip improvements */
.tooltip {
  position: relative;
}
.tooltip::after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: 125%;
  left: 50%;
  transform: translateX(-50%);
  background-color: #1f2937;
  color: white;
  padding: 0.5rem;
  border-radius: 0.375rem;
  font-size: 0.75rem;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s, visibility 0.2s;
  z-index: 1000;
}
.tooltip:hover::after {
  opacity: 1;
  visibility: visible;
}
/* Accessibility improvements */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
/* High contrast mode support */
@media (prefers-contrast: high) {
  .suggestion-chip {
    border-width: 2px;
  }

  .message-bubble {
    border-width: 2px;
  }

  button {
    border: 2px solid currentColor;
  }
}
/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
/* Print styles */
@media print {
  .investor-assistant {
    box-shadow: none;
    border: 1px solid #000;
  }

  .sidebar-header,
  .chat-input-container {
    display: none;
  }

  .message-bubble {
    border: 1px solid #000;
    -moz-column-break-inside: avoid;
         break-inside: avoid;
  }
}
/* ============================================================================ */
/* 🎯 STAGING VISIBILITY FIXES - Ensure assistant is always visible in staging */
/* ============================================================================ */
/* Staging visibility fixes */
.investor-assistant {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}
/* Force z-index for staging */
.investor-assistant,
[data-tour="investor-assistant"] {
  z-index: 9999 !important;
}
/* Debug styles for staging */
.investor-assistant::before {
  content: "🤖 AI Assistant";
  position: absolute;
  top: -20px;
  left: 0;
  font-size: 12px;
  color: #10b981;
  background: rgba(16, 185, 129, 0.1);
  padding: 2px 6px;
  border-radius: 4px;
  z-index: 10000;
}
.text-content {
  line-height: 1.5;
  word-wrap: break-word;
}

.text-link {
  color: var(--link-color);
  text-decoration: underline;
  word-break: break-all;
}

.user-message .text-link {
  color: rgba(255, 255, 255, 0.9);
}

/* Dark mode overrides */
.dark-mode .text-link {
  color: var(--dark-link-color);
}

.dark-mode .user-message .text-link {
  color: rgba(255, 255, 255, 0.9);
}
.property-analysis-container {
  width: 100%;
  max-width: 800px;
  margin: 1rem 0;
  background-color: var(--bg-primary);
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.analysis-tabs {
  display: flex;
  border-bottom: 1px solid var(--border-color);
  background-color: var(--bg-secondary);
  overflow-x: auto;
  scrollbar-width: none;
}

.analysis-tabs::-webkit-scrollbar {
  display: none;
}

.tab-button {
  padding: 0.75rem 1rem;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 0.9rem;
  font-weight: 500;
  color: var(--text-secondary);
  transition: all 0.2s ease;
  white-space: nowrap;
}

.tab-button:hover {
  background-color: rgba(0, 0, 0, 0.05);
  color: var(--text-primary);
}

.tab-button.active {
  color: var(--primary-color);
  border-bottom: 2px solid var(--primary-color);
  background-color: rgba(var(--primary-color-rgb), 0.05);
}

.analysis-content {
  padding: 1.5rem;
}

.analysis-text {
  margin-bottom: 1.5rem;
  line-height: 1.6;
  color: var(--text-primary);
}

.property-details-card {
  background-color: var(--bg-secondary);
  border-radius: 8px;
  padding: 1rem;
  margin-bottom: 1rem;
}

.property-details-card h3 {
  margin-top: 0;
  margin-bottom: 1rem;
  font-size: 1.1rem;
}

.property-details-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 1rem;
}

.property-detail-item {
  display: flex;
  flex-direction: column;
}

.detail-label {
  font-size: 0.85rem;
  color: var(--text-secondary);
  margin-bottom: 0.25rem;
}

.detail-value {
  font-weight: 500;
  color: var(--text-primary);
}

.charts-container {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.chart-wrapper {
  border-radius: 8px;
  background-color: var(--bg-secondary);
  padding: 1rem;
}

.metrics-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 1rem;
}

.metric-card {
  background-color: var(--bg-secondary);
  border-radius: 8px;
  padding: 1rem;
  text-align: center;
}

.metric-value {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--primary-color);
  margin-bottom: 0.5rem;
}

.metric-name {
  font-size: 0.85rem;
  color: var(--text-secondary);
}

.expenses-table {
  margin-top: 1.5rem;
  overflow-x: auto;
}

.expenses-table table {
  width: 100%;
  border-collapse: collapse;
}

.expenses-table th,
.expenses-table td {
  padding: 0.75rem;
  text-align: left;
  border-bottom: 1px solid var(--border-color);
}

.expenses-table th {
  font-weight: 600;
  color: var(--text-secondary);
  background-color: var(--bg-secondary);
}

.market-insights-container {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.market-overview {
  background-color: var(--bg-secondary);
  border-radius: 8px;
  padding: 1rem;
}

.market-overview h4 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-size: 1.1rem;
}

.market-sections {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.market-section {
  background-color: var(--bg-secondary);
  border-radius: 8px;
  padding: 1rem;
}

.market-section h4 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-size: 1rem;
}

.similar-properties-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 1rem;
}

.similar-property-card {
  background-color: var(--bg-secondary);
  border-radius: 8px;
  padding: 1rem;
  position: relative;
  display: flex;
  flex-direction: column;
}

.property-similarity {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  background-color: var(--primary-color);
  color: white;
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  font-size: 0.8rem;
  font-weight: 500;
}

.similar-property-card h4 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-size: 1rem;
}

.property-basic-details {
  display: flex;
  gap: 0.75rem;
  margin-bottom: 0.5rem;
  font-size: 0.85rem;
  color: var(--text-secondary);
}

.property-price {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--primary-color);
  margin-bottom: 0.5rem;
}

.property-description {
  font-size: 0.9rem;
  color: var(--text-secondary);
  margin-bottom: 1rem;
  flex-grow: 1;
}

.view-property-button {
  background-color: var(--primary-color);
  color: white;
  border: none;
  border-radius: 4px;
  padding: 0.5rem 1rem;
  cursor: pointer;
  font-weight: 500;
  transition: background-color 0.2s ease;
}

.view-property-button:hover {
  background-color: var(--primary-color-dark);
}

.no-data-message {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 2rem;
  text-align: center;
}

.no-data-message p {
  color: var(--text-secondary);
  margin: 0;
}

.analysis-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  padding: 1rem 1.5rem;
  border-top: 1px solid var(--border-color);
  background-color: var(--bg-secondary);
}

.action-button {
  background-color: var(--bg-primary);
  color: var(--text-primary);
  border: 1px solid var(--border-color);
  border-radius: 4px;
  padding: 0.5rem 1rem;
  cursor: pointer;
  font-weight: 500;
  transition: all 0.2s ease;
}

.action-button:hover {
  background-color: var(--bg-hover);
}

.action-button.primary {
  background-color: var(--primary-color);
  color: white;
  border-color: var(--primary-color);
}

.action-button.primary:hover {
  background-color: var(--primary-color-dark);
}

/* Dark mode overrides */
.dark-mode .property-analysis-container {
  background-color: var(--dark-bg-primary);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.dark-mode .analysis-tabs {
  background-color: var(--dark-bg-secondary);
  border-bottom-color: var(--dark-border-color);
}

.dark-mode .tab-button:hover {
  background-color: rgba(255, 255, 255, 0.05);
}

.dark-mode .tab-button.active {
  background-color: rgba(var(--primary-color-rgb), 0.2);
}

.dark-mode .property-details-card,
.dark-mode .chart-wrapper,
.dark-mode .metric-card,
.dark-mode .market-overview,
.dark-mode .market-section,
.dark-mode .similar-property-card {
  background-color: var(--dark-bg-secondary);
}

.dark-mode .expenses-table th {
  background-color: var(--dark-bg-secondary);
}

.dark-mode .action-button {
  background-color: var(--dark-bg-primary);
  color: var(--dark-text-primary);
  border-color: var(--dark-border-color);
}

.dark-mode .action-button:hover {
  background-color: var(--dark-bg-hover);
}

/* Responsive design */
@media (max-width: 768px) {
  .property-analysis-container {
    max-width: 100%;
    border-radius: 0;
    margin: 0.5rem 0;
  }
  
  .analysis-content {
    padding: 1rem;
  }
  
  .property-details-grid,
  .metrics-grid {
    grid-template-columns: 1fr 1fr;
  }
  
  .charts-container {
    gap: 1rem;
  }
  
  .similar-properties-grid {
    grid-template-columns: 1fr;
  }
  
  .analysis-actions {
    padding: 0.75rem 1rem;
    justify-content: center;
  }
}

@media (max-width: 480px) {
  .property-details-grid,
  .metrics-grid {
    grid-template-columns: 1fr;
  }
  
  .tab-button {
    padding: 0.5rem 0.75rem;
    font-size: 0.8rem;
  }
}
/* FallbackMessage.css - Styling for error and fallback messages */

.fallback-message-container {
  display: flex;
  justify-content: center;
  margin: 15px 0;
  width: 100%;
}

.fallback-message {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1rem;
  margin: 0.5rem 0;
  border-radius: 8px;
  background-color: #f8f9fa;
  border: 1px solid #e9ecef;
  max-width: 100%;
  text-align: center;
}

.fallback-message-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 16px;
  border-radius: 8px;
  background-color: #fff4f4;
  border: 1px solid #ffdbdb;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
  max-width: 90%;
  width: 500px;
}

.fallback-icon {
  font-size: 2rem;
  margin-bottom: 0.5rem;
  color: #e53935;
}

.fallback-content {
  width: 100%;
}

.fallback-title {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
  color: #343a40;
  text-align: center;
}

.fallback-description {
  font-size: 0.9rem;
  color: #495057;
  margin-bottom: 1rem;
}

.fallback-technical-details {
  font-size: 12px;
  color: #9e9e9e;
  background-color: #f5f5f5;
  padding: 8px;
  border-radius: 4px;
  margin-bottom: 12px;
  max-width: 100%;
  overflow-wrap: break-word;
  text-align: center;
}

.fallback-details {
  background-color: #e9ecef;
  padding: 0.75rem;
  border-radius: 4px;
  margin-bottom: 1rem;
  font-size: 0.8rem;
  color: #6c757d;
  overflow-wrap: break-word;
  max-height: 100px;
  overflow-y: auto;
}

.fallback-retry-button {
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  background-color: #4263eb;
  color: white;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.2s ease-in-out;
}

.fallback-retry-button:hover {
  background-color: #364fc7;
}

.fallback-retry-button:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(66, 99, 235, 0.5);
}

/* Variations based on error type */
.fallback-message[data-error-type="UNSAFE_CONTENT"] {
  border-color: #ff8787;
  background-color: #fff5f5;
}

.fallback-message[data-error-type="UNSAFE_CONTENT"] .fallback-title {
  color: #c92a2a;
}

.fallback-message[data-error-type="CONNECTION_ERROR"],
.fallback-message[data-error-type="TIMEOUT_ERROR"] {
  border-color: #ffa94d;
  background-color: #fff9db;
}

.fallback-message[data-error-type="CONNECTION_ERROR"] .fallback-title,
.fallback-message[data-error-type="TIMEOUT_ERROR"] .fallback-title {
  color: #e67700;
}

/* Animation for loading state if needed */
@keyframes pulse {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}

.fallback-message.loading {
  animation: pulse 1.5s infinite;
}
.message-container {
  transition: opacity 0.3s ease-in-out;
  display: flex;
  margin-bottom: 1rem;
  position: relative;
}

.user-message {
  justify-content: flex-end;
}

.assistant-message {
  justify-content: flex-start;
}

/* Streaming content styles */
.streaming-content {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.message-container.streaming .message-bubble {
  border-color: #3b82f6;
  box-shadow: 0 2px 8px rgba(59, 130, 246, 0.1);
}

.message-container.streaming .message-timestamp {
  opacity: 0.7;
  font-style: italic;
}

.message-bubble {
  max-width: 80%;
  padding: 0.75rem 1rem;
  border-radius: 1rem;
  position: relative;
  animation: message-fade-in 0.3s ease forwards;
}

.user-message .message-bubble {
  background-color: #3b82f6;
  color: white;
  border-bottom-right-radius: 0.25rem;
  margin-left: auto;
}

.assistant-message .message-bubble {
  background-color: white;
  color: #333;
  border-bottom-left-radius: 0.25rem;
  margin-right: auto;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.error-message .message-bubble {
  background-color: #f44336;
  color: white;
}

.message-timestamp {
  font-size: 0.7rem;
  color: rgba(255, 255, 255, 0.7);
  margin-top: 0.5rem;
  text-align: right;
}

.assistant-message .message-timestamp {
  color: #999;
}

/* Improve feedback button visibility */
.message-feedback {
  display: flex;
  flex-direction: column;
  margin-left: 0.5rem;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.assistant-message:hover .message-feedback {
  opacity: 1;
}

.feedback-button {
  background: none;
  border: none;
  font-size: 1rem;
  cursor: pointer;
  padding: 0.25rem;
  opacity: 0.5;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.feedback-button:hover {
  opacity: 1;
  transform: scale(1.2);
}

/* Content Type Styling */

.deal-calculation-content,
.market-insights-content,
.similar-properties-content {
  display: flex;
  flex-direction: column;
}

.deal-calculation-content h3,
.market-insights-content h3,
.similar-properties-content h3 {
  margin-top: 0;
  margin-bottom: 0.75rem;
  font-size: 1.1rem;
}

.calculation-text,
.market-text,
.similar-text {
  margin-bottom: 1rem;
  white-space: pre-wrap;
}

.view-details-button {
  align-self: flex-start;
  background-color: transparent;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 4px;
  padding: 0.5rem 0.75rem;
  font-size: 0.85rem;
  color: inherit;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.assistant-message .view-details-button {
  border-color: #e0e0e0;
  color: #3b82f6;
}

.view-details-button:hover {
  background-color: rgba(255, 255, 255, 0.1);
}

.assistant-message .view-details-button:hover {
  background-color: rgba(59, 130, 246, 0.05);
}

.similar-count {
  font-size: 0.85rem;
  margin-bottom: 0.75rem;
  opacity: 0.8;
}

.fallback-content pre {
  white-space: pre-wrap;
  font-size: 0.85rem;
  margin: 0;
}

.empty-content {
  font-style: italic;
  opacity: 0.7;
}

/* Avatar */
.avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 8px;
  background-color: #3b82f6;
  color: white;
  flex-shrink: 0; /* Prevent avatar from shrinking */
  position: relative;
  overflow: hidden;
}

.user-message .avatar {
  margin-right: 0;
  margin-left: 8px;
  background-color: #10b981; /* Different color for user */
}

.assistant-avatar {
  background-color: #3b82f6;
}

.user-avatar {
  background-color: #10b981;
}

.system-avatar {
  background-color: #9ca3af;
}

.avatar svg {
  width: 18px;
  height: 18px;
  z-index: 1;
}

.avatar-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

.message-sender {
  font-size: 0.75rem;
  color: #3b82f6;
  margin-bottom: 0.25rem;
  font-weight: 500;
}

/* Typing indicator */
.typing-indicator {
  display: inline-flex;
  align-items: center;
  background-color: white;
  border: 1px solid #e0e0e0;
  border-radius: 18px;
  border-bottom-left-radius: 4px;
  padding: 0.75rem 1rem;
  gap: 4px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.typing-dot {
  width: 8px;
  height: 8px;
  background-color: #3b82f6;
  border-radius: 50%;
  opacity: 0.7;
  animation: typingAnimation 1.4s infinite ease-in-out;
}

.typing-dot:nth-child(1) {
  animation-delay: 0s;
}

.typing-dot:nth-child(2) {
  animation-delay: 0.2s;
}

.typing-dot:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes typingAnimation {
  0%,
  60%,
  100% {
    transform: translateY(0);
  }
  30% {
    transform: translateY(-4px);
  }
}

@keyframes message-fade-in {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Responsive Design */
@media (max-width: 768px) {
  .message-bubble {
    max-width: 85%;
  }
}

@media (max-width: 480px) {
  .message-bubble {
    max-width: 90%;
    padding: 0.5rem 0.75rem;
  }

  .message-feedback {
    flex-direction: row;
    margin-left: 0;
    margin-top: 0.25rem;
  }

  .assistant-message {
    flex-direction: column;
  }

  .assistant-message .message-feedback {
    opacity: 0.5;
  }
}
/* 🎨 ENHANCED CONVERSATION LIST - NEXUS & WESNER PREMIUM DESIGN
Built by The Ultimate Design Dream Team! 💙✨🔥
Features: Full Integration with Sidebar Gradient, Enhanced Visibility
*/

/* ====================================
💬 CONVERSATION LIST CONTAINER
==================================== */

.conversation-list-container {
  height: 100%;
  display: flex;
  flex-direction: column;
  background: transparent;
  overflow: hidden;
}

/* ====================================
💬 CONVERSATION LIST STYLES
==================================== */

.conversation-list {
  flex: 1;
  padding: 0 16px;
  overflow-y: auto;
  background: transparent;
}

.conversation-item {
  padding: 20px;
  margin-bottom: 12px;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(15px);
  border: 2px solid rgba(59, 130, 246, 0.15);
  border-radius: 24px;
  cursor: pointer;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
  box-shadow: 0 8px 25px rgba(59, 130, 246, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.3);
}

.conversation-item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(
    90deg,
    rgba(59, 130, 246, 0.6) 0%,
    rgba(124, 58, 237, 0.6) 50%,
    rgba(139, 92, 246, 0.6) 100%
  );
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
}

.conversation-item:hover {
  background: rgba(255, 255, 255, 0.95);
  border-color: rgba(59, 130, 246, 0.3);
  transform: translateY(-4px) scale(1.02);
  box-shadow: 0 25px 50px -12px rgba(59, 130, 246, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.4);
}

.conversation-item:hover::before {
  transform: scaleX(1);
}

.conversation-item.active {
  background: linear-gradient(
    135deg,
    rgba(59, 130, 246, 0.15) 0%,
    rgba(124, 58, 237, 0.12) 100%
  );
  border-color: rgba(59, 130, 246, 0.4);
  transform: translateY(-2px);
  box-shadow: 0 20px 40px -10px rgba(59, 130, 246, 0.25),
    inset 0 1px 0 rgba(255, 255, 255, 0.3);
}

.conversation-item.active::before {
  transform: scaleX(1);
  height: 4px;
}

.conversation-item img {
  width: 48px;
  height: 48px;
  border-radius: 20px;
  margin-right: 16px;
  border: 3px solid rgba(255, 255, 255, 0.9);
  box-shadow: 0 8px 20px rgba(59, 130, 246, 0.15),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
  transition: all 0.3s ease;
}

.conversation-item:hover img {
  transform: scale(1.1) rotate(2deg);
  box-shadow: 0 12px 25px rgba(59, 130, 246, 0.2),
    0 0 0 3px rgba(59, 130, 246, 0.2);
}

.conversation-info h4 {
  font-size: 18px;
  font-weight: 700;
  color: rgb(30, 41, 59);
  margin-bottom: 4px;
  letter-spacing: -0.025em;
  background: linear-gradient(135deg, #1e293b 0%, #334155 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.conversation-info p {
  font-size: 14px;
  color: rgb(100, 116, 139);
  font-weight: 500;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.conversation-time {
  font-size: 12px;
  color: rgb(59, 130, 246);
  font-weight: 600;
  background: rgba(59, 130, 246, 0.1);
  padding: 6px 12px;
  border-radius: 12px;
  backdrop-filter: blur(10px);
  border: 1px solid rgba(59, 130, 246, 0.2);
}

/* Enhanced unread indicators */
.conversation-item.unread {
  background: rgba(59, 130, 246, 0.08);
  border-color: rgba(59, 130, 246, 0.25);
}

.conversation-item.unread h4 {
  font-weight: 800;
}

.conversation-item.unread::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 8px;
  height: 8px;
  background: linear-gradient(45deg, #3b82f6, #6366f1);
  border-radius: 50%;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.2);
}

/* Priority badges enhancement */
.priority-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  backdrop-filter: blur(10px);
  border: 1px solid;
}

.priority-badge.high {
  background: rgba(239, 68, 68, 0.1);
  color: rgb(185, 28, 28);
  border-color: rgba(239, 68, 68, 0.2);
}

.priority-badge.medium {
  background: rgba(245, 158, 11, 0.1);
  color: rgb(180, 83, 9);
  border-color: rgba(245, 158, 11, 0.2);
}

.priority-badge.low {
  background: rgba(34, 197, 94, 0.1);
  color: rgb(21, 128, 61);
  border-color: rgba(34, 197, 94, 0.2);
}

/* Role badges enhancement */
.role-badge {
  background: linear-gradient(
    135deg,
    rgba(59, 130, 246, 0.1) 0%,
    rgba(124, 58, 237, 0.1) 100%
  );
  color: rgb(59, 130, 246);
  border: 1px solid rgba(59, 130, 246, 0.2);
  padding: 4px 12px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
  text-transform: capitalize;
  backdrop-filter: blur(10px);
}

/* ====================================
🛠️ CUSTOM SCROLLBAR FOR CONVERSATION LIST
==================================== */

.conversation-list::-webkit-scrollbar {
  width: 8px;
}

.conversation-list::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.3);
  border-radius: 12px;
  margin: 8px;
}

.conversation-list::-webkit-scrollbar-thumb {
  background: linear-gradient(
    135deg,
    rgba(59, 130, 246, 0.4) 0%,
    rgba(124, 58, 237, 0.4) 100%
  );
  border-radius: 12px;
  border: 2px solid transparent;
  background-clip: padding-box;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.3);
}

.conversation-list::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(
    135deg,
    rgba(59, 130, 246, 0.6) 0%,
    rgba(124, 58, 237, 0.6) 100%
  );
}

/* ====================================
✨ NO MESSAGES STATE - Integrated with Gradient
==================================== */

.no-conversations-state {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  text-align: center;
  background: transparent;
}

.no-conversations-icon {
  width: 4rem;
  height: 4rem;
  margin-bottom: 1.5rem;
  background: linear-gradient(
    135deg,
    rgba(59, 130, 246, 0.15) 0%,
    rgba(124, 58, 237, 0.1) 100%
  );
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 25px rgba(59, 130, 246, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.3);
  backdrop-filter: blur(15px);
  border: 2px solid rgba(255, 255, 255, 0.3);
}

.no-conversations-icon svg {
  width: 2rem;
  height: 2rem;
  color: rgba(59, 130, 246, 0.8);
}

.no-conversations-text {
  font-size: 1.25rem;
  font-weight: 700;
  background: linear-gradient(135deg, #334155 0%, #475569 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: 0.5rem;
  letter-spacing: -0.025em;
}

.no-conversations-subtext {
  font-size: 0.875rem;
  color: rgba(100, 116, 139, 0.8);
  line-height: 1.6;
  max-width: 280px;
}

/* ====================================
📱 RESPONSIVE DESIGN
==================================== */

@media (max-width: 1024px) {
  .conversation-item {
    padding: 16px;
    margin-bottom: 8px;
  }

  .conversation-item img {
    width: 40px;
    height: 40px;
  }
}

@media (max-width: 768px) {
  .conversation-list {
    padding: 0 12px;
  }

  .conversation-item {
    padding: 12px;
    margin-bottom: 6px;
  }

  .conversation-item img {
    width: 36px;
    height: 36px;
  }
}

/* ====================================
✨ NEXUS SPECIAL EFFECTS FOR CONVERSATIONS
==================================== */

.conversation-glow {
  animation: conversationGlow 3s ease-in-out infinite alternate;
}

@keyframes conversationGlow {
  from {
    box-shadow: 0 8px 25px rgba(59, 130, 246, 0.1),
      inset 0 1px 0 rgba(255, 255, 255, 0.3);
  }
  to {
    box-shadow: 0 15px 35px rgba(59, 130, 246, 0.2),
      inset 0 1px 0 rgba(255, 255, 255, 0.4);
  }
}

.conversation-pulse {
  animation: conversationPulse 2s ease-in-out infinite;
}

@keyframes conversationPulse {
  0%,
  100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.01);
  }
}

/* Enhanced search results */
.search-results-empty {
  padding: 2rem;
  text-align: center;
  background: rgba(255, 255, 255, 0.5);
  border-radius: 20px;
  margin: 1rem;
  backdrop-filter: blur(10px);
}

.search-results-empty h3 {
  font-size: 1.125rem;
  font-weight: 600;
  color: rgba(100, 116, 139, 0.8);
  margin-bottom: 0.5rem;
}

.search-results-empty p {
  font-size: 0.875rem;
  color: rgba(148, 163, 184, 0.8);
}
/* 🎨 MESSAGE LIST ENHANCED - DRIBBBLE-INSPIRED DESIGN
Built by Nexus & Wesner - The Ultimate Design Dream Team! 💙✨
Features: Glassmorphism, Gradients, Smooth Animations, Premium Feel
*/

/* ====================================
💬 MESSAGE LIST STYLES
==================================== */

.message-list {
  flex: 1;
  padding: 32px;
  background: linear-gradient(135deg,
    rgb(248, 250, 252) 0%,
    rgba(239, 246, 255, 0.5) 25%,
    rgba(224, 242, 254, 0.3) 50%,
    rgba(238, 242, 255, 0.5) 75%,
    rgb(248, 250, 252) 100%
  );
  position: relative;
}

.message-list::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  height: 100%;
  background: linear-gradient(180deg,
    transparent 0%,
    rgba(124, 58, 237, 0.1) 20%,
    rgba(59, 130, 246, 0.1) 50%,
    rgba(139, 92, 246, 0.1) 80%,
    transparent 100%
  );
  pointer-events: none;
}

.message-item {
  margin-bottom: 24px;
  position: relative;
  animation: messageSlideIn 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

@keyframes messageSlideIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.message-item.sent {
  display: flex;
  justify-content: flex-end;
}

.message-item.received {
  display: flex;
  justify-content: flex-start;
}

.message-content {
  max-width: 70%;
  padding: 20px 24px;
  border-radius: 24px;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 500;
  position: relative;
  backdrop-filter: blur(10px);
  box-shadow:
    0 15px 35px rgba(0, 0, 0, 0.08),
    0 0 0 1px rgba(255, 255, 255, 0.1);
  transition: all 0.3s ease;
}

.message-content:hover {
  transform: translateY(-2px);
  box-shadow:
    0 20px 40px rgba(0, 0, 0, 0.12),
    0 0 0 1px rgba(255, 255, 255, 0.2);
}

.message-item.sent .message-content {
  background: linear-gradient(135deg,
    rgb(124, 58, 237) 0%,
    rgb(139, 92, 246) 50%,
    rgb(59, 130, 246) 100%
  );
  color: white;
  border-bottom-right-radius: 8px;
  position: relative;
}

.message-item.sent .message-content::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg,
    rgba(255, 255, 255, 0.1) 0%,
    transparent 50%,
    rgba(0, 0, 0, 0.05) 100%
  );
  border-radius: inherit;
  pointer-events: none;
}

.message-item.received .message-content {
  background: rgba(255, 255, 255, 0.9);
  color: rgb(30, 41, 59);
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-bottom-left-radius: 8px;
}

.message-time {
  font-size: 12px;
  font-weight: 600;
  margin-top: 8px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.message-item.sent .message-time {
  color: rgba(255, 255, 255, 0.8);
  justify-content: flex-end;
}

.message-item.received .message-time {
  color: rgb(148, 163, 184);
  justify-content: flex-start;
}

.sender-avatar {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  margin-right: 12px;
  margin-top: 4px;
  border: 2px solid rgba(255, 255, 255, 0.8);
  box-shadow:
    0 8px 16px rgba(0, 0, 0, 0.1),
    0 0 0 1px rgba(255, 255, 255, 0.2);
}

.sender-name {
  font-weight: 700;
  font-size: 14px;
  color: rgb(30, 41, 59);
  margin-bottom: 6px;
  letter-spacing: -0.025em;
}

/* ====================================
💬 SENTIMENT INDICATOR STYLES
==================================== */

.sentiment-indicator {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 600;
  margin-top: 8px;
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.sentiment-positive {
  background: rgba(34, 197, 94, 0.1);
  color: rgb(21, 128, 61);
  border-color: rgba(34, 197, 94, 0.2);
}

.sentiment-negative {
  background: rgba(239, 68, 68, 0.1);
  color: rgb(185, 28, 28);
  border-color: rgba(239, 68, 68, 0.2);
}

.sentiment-neutral {
  background: rgba(59, 130, 246, 0.1);
  color: rgb(29, 78, 216);
  border-color: rgba(59, 130, 246, 0.2);
}

/* ====================================
💬 MESSAGE ACTIONS STYLES
==================================== */

.message-actions {
  display: flex;
  gap: 8px;
  margin-top: 12px;
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.3s ease;
}

.message-item:hover .message-actions {
  opacity: 1;
  transform: translateY(0);
}

.message-action-btn {
  padding: 8px 12px;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: 12px;
  font-size: 12px;
  font-weight: 600;
  color: rgb(100, 116, 139);
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  gap: 4px;
}

.message-action-btn:hover {
  background: rgba(124, 58, 237, 0.1);
  border-color: rgba(124, 58, 237, 0.3);
  color: rgb(124, 58, 237);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(124, 58, 237, 0.2);
}

/* ====================================
💬 AI ENHANCEMENT INDICATOR
==================================== */

.ai-enhanced-indicator {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 6px;
  background: linear-gradient(135deg,
    rgba(124, 58, 237, 0.1) 0%,
    rgba(59, 130, 246, 0.08) 100%
  );
  border-radius: 8px;
  font-size: 10px;
  font-weight: 700;
  color: rgb(124, 58, 237);
  margin-left: 8px;
  border: 1px solid rgba(124, 58, 237, 0.2);
}

.ai-enhanced-indicator .sparkle {
  animation: sparkleRotate 2s ease-in-out infinite;
}

@keyframes sparkleRotate {
  0%, 100% { transform: rotate(0deg) scale(1); }
  50% { transform: rotate(180deg) scale(1.2); }
}

/* ====================================
💬 TYPING INDICATOR
==================================== */

.typing-indicator {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 20px;
  margin-bottom: 16px;
  max-width: 200px;
  border: 1px solid rgba(148, 163, 184, 0.2);
}

.typing-dots {
  display: flex;
  gap: 4px;
}

.typing-dot {
  width: 6px;
  height: 6px;
  background: rgb(148, 163, 184);
  border-radius: 50%;
  animation: typingPulse 1.5s ease-in-out infinite;
}

.typing-dot:nth-child(2) {
  animation-delay: 0.2s;
}

.typing-dot:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes typingPulse {
  0%, 60%, 100% {
    transform: scale(1);
    opacity: 0.5;
  }
  30% {
    transform: scale(1.2);
    opacity: 1;
  }
}

/* ====================================
📱 RESPONSIVE DESIGN
==================================== */

@media (max-width: 1024px) {
  .message-list {
    padding: 20px;
  }

  .message-content {
    max-width: 85%;
    padding: 16px 20px;
  }
}

@media (max-width: 768px) {
  .message-list {
    padding: 16px;
  }

  .message-content {
    max-width: 90%;
    padding: 14px 18px;
    font-size: 14px;
  }
  
  .sender-avatar {
    width: 32px;
    height: 32px;
    margin-right: 8px;
  }
}/* 🎨 ENHANCED MESSAGE COMPOSER - DRIBBBLE-INSPIRED DESIGN
Built by Nexus & Wesner - The Ultimate Design Dream Team! 💙✨
Features: Glassmorphism, Gradients, Smooth Animations, Premium Feel
*/

/* ====================================
🎨 ENHANCED MESSAGE COMPOSER STYLES
==================================== */

.enhanced-composer {
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(20px);
  border-radius: 24px;
  padding: 24px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  box-shadow:
    0 25px 50px -12px rgba(0, 0, 0, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
  position: relative;
}

.composer-toolbar {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.1);
}

.composer-action {
  padding: 12px;
  background: rgba(124, 58, 237, 0.08);
  border: 1px solid rgba(124, 58, 237, 0.15);
  border-radius: 12px;
  color: rgb(124, 58, 237);
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}

.composer-action:hover {
  background: rgba(124, 58, 237, 0.15);
  border-color: rgba(124, 58, 237, 0.3);
  transform: translateY(-2px) scale(1.05);
  box-shadow: 0 8px 20px rgba(124, 58, 237, 0.2);
}

.ai-enhancement-indicator {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  background: linear-gradient(135deg,
    rgba(124, 58, 237, 0.1) 0%,
    rgba(59, 130, 246, 0.08) 100%
  );
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  color: rgb(124, 58, 237);
  border: 1px solid rgba(124, 58, 237, 0.2);
}

.ai-enhancement-indicator .sparkle {
  animation: sparkleRotate 2s ease-in-out infinite;
}

@keyframes sparkleRotate {
  0%, 100% { transform: rotate(0deg) scale(1); }
  50% { transform: rotate(180deg) scale(1.2); }
}

/* ====================================
💬 MESSAGE INPUT STYLES
==================================== */

.message-input {
  padding: 32px;
  background: linear-gradient(135deg,
    rgba(255, 255, 255, 0.95) 0%,
    rgba(239, 246, 255, 0.8) 50%,
    rgba(224, 242, 254, 0.7) 100%
  );
  backdrop-filter: blur(20px);
  border-top: 2px solid rgba(148, 163, 184, 0.1);
  position: relative;
}

.message-input::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(124, 58, 237, 0.3) 50%,
    transparent 100%
  );
}

.message-input-container {
  background: linear-gradient(135deg,
    rgba(239, 246, 255, 0.8) 0%,
    rgba(224, 242, 254, 0.6) 50%,
    rgba(238, 242, 255, 0.8) 100%
  );
  backdrop-filter: blur(20px);
  border-radius: 28px;
  padding: 24px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  box-shadow:
    0 25px 50px -12px rgba(124, 58, 237, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
  position: relative;
  overflow: hidden;
}

.message-input-container::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg,
    rgba(124, 58, 237, 0.02) 0%,
    rgba(59, 130, 246, 0.02) 100%
  );
  pointer-events: none;
}

.message-input input,
.message-input textarea {
  width: 100%;
  padding: 20px 24px;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(15px);
  border: 2px solid rgba(148, 163, 184, 0.15);
  border-radius: 20px;
  font-size: 16px;
  font-weight: 500;
  color: rgb(30, 41, 59);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow:
    0 8px 25px rgba(0, 0, 0, 0.04),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
  resize: none;
  font-family: inherit;
}

.message-input input:focus,
.message-input textarea:focus {
  outline: none;
  border-color: rgb(124, 58, 237);
  background: rgba(255, 255, 255, 0.98);
  box-shadow:
    0 0 0 4px rgba(124, 58, 237, 0.1),
    0 15px 35px rgba(124, 58, 237, 0.08);
  transform: translateY(-2px);
}

.message-input input::-moz-placeholder, .message-input textarea::-moz-placeholder {
  color: rgb(148, 163, 184);
  font-weight: 400;
}

.message-input input::placeholder,
.message-input textarea::placeholder {
  color: rgb(148, 163, 184);
  font-weight: 400;
}

.message-input button {
  margin-left: 16px;
  padding: 20px 32px;
  background: linear-gradient(135deg,
    rgb(124, 58, 237) 0%,
    rgb(139, 92, 246) 50%,
    rgb(59, 130, 246) 100%
  );
  color: white;
  border: none;
  border-radius: 20px;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow:
    0 15px 35px rgba(124, 58, 237, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  gap: 8px;
}

.message-input button::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.2) 50%,
    transparent 100%
  );
  transition: left 0.6s ease;
}

.message-input button:hover {
  transform: translateY(-3px) scale(1.05);
  box-shadow:
    0 20px 40px rgba(124, 58, 237, 0.4),
    inset 0 1px 0 rgba(255, 255, 255, 0.3);
}

.message-input button:hover::before {
  left: 100%;
}

.message-input button:active {
  transform: translateY(-1px) scale(1.02);
}

.message-input button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
  transform: none;
}

.message-input button:disabled:hover {
  transform: none;
  box-shadow:
    0 15px 35px rgba(124, 58, 237, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

/* ====================================
🎨 ENHANCEMENT FEATURES
==================================== */

.enhancement-panel {
  margin-top: 16px;
  padding: 16px;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(148, 163, 184, 0.2);
  border-radius: 16px;
  animation: slideInUp 0.3s ease;
}

@keyframes slideInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.enhancement-options {
  display: flex;
  gap: 8px;
  margin-top: 12px;
  flex-wrap: wrap;
}

.enhancement-option {
  padding: 8px 12px;
  background: rgba(124, 58, 237, 0.08);
  border: 1px solid rgba(124, 58, 237, 0.2);
  border-radius: 12px;
  font-size: 12px;
  font-weight: 600;
  color: rgb(124, 58, 237);
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  gap: 4px;
}

.enhancement-option:hover {
  background: rgba(124, 58, 237, 0.15);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(124, 58, 237, 0.2);
}

.enhancement-option.selected {
  background: rgb(124, 58, 237);
  color: white;
  border-color: rgb(124, 58, 237);
}

.feedback-section {
  margin-top: 16px;
  padding: 12px;
  background: rgba(249, 250, 251, 0.9);
  border-radius: 12px;
  border: 1px solid rgba(209, 213, 219, 0.5);
}

.feedback-buttons {
  display: flex;
  gap: 8px;
  margin-top: 8px;
}

.feedback-btn {
  padding: 6px 12px;
  border: 1px solid rgba(209, 213, 219, 0.5);
  border-radius: 8px;
  background: white;
  font-size: 12px;
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  gap: 4px;
}

.feedback-btn:hover {
  background: rgba(124, 58, 237, 0.05);
  border-color: rgba(124, 58, 237, 0.2);
  transform: translateY(-1px);
}

.feedback-btn.positive {
  color: rgb(34, 197, 94);
  border-color: rgba(34, 197, 94, 0.3);
}

.feedback-btn.negative {
  color: rgb(239, 68, 68);
  border-color: rgba(239, 68, 68, 0.3);
}

/* ====================================
📱 RESPONSIVE DESIGN
==================================== */

@media (max-width: 1024px) {
  .message-input {
    padding: 20px;
  }

  .message-input-container {
    padding: 20px;
  }
}

@media (max-width: 768px) {
  .message-input {
    padding: 16px;
  }

  .message-input-container {
    padding: 16px;
  }

  .message-input input,
  .message-input textarea {
    padding: 16px 20px;
    font-size: 14px;
  }

  .message-input button {
    padding: 16px 24px;
    font-size: 14px;
    margin-left: 12px;
  }

  .composer-toolbar {
    gap: 8px;
  }

  .composer-action {
    padding: 10px;
  }

  .enhancement-options {
    gap: 6px;
  }
}/* 🎨 ENHANCED MESSAGES PAGE - NEXUS & WESNER PREMIUM DESIGN
Built by The Ultimate Design Dream Team! 💙✨🔥
Features: Full Gradient Sidebar, Enhanced Visibility, Premium Feel
*/

/* ====================================
📱 MAIN MESSAGES CONTAINER
==================================== */

.messages-container {
  display: flex;
  height: calc(100vh - 80px);
  width: 100vw;
  background: linear-gradient(
    135deg,
    rgba(255, 255, 255, 0.95) 0%,
    rgba(239, 246, 255, 0.8) 25%,
    rgba(224, 242, 254, 0.7) 50%,
    rgba(238, 242, 255, 0.8) 75%,
    rgba(255, 255, 255, 0.95) 100%
  );
  backdrop-filter: blur(20px);
  position: fixed;
  top: 80px;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  z-index: 1;
}

.messages-container::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(
      circle at 30% 20%,
      rgba(124, 58, 237, 0.05) 0%,
      transparent 50%
    ),
    radial-gradient(
      circle at 70% 80%,
      rgba(59, 130, 246, 0.03) 0%,
      transparent 50%
    );
  pointer-events: none;
}

/* ====================================
🎯 ENHANCED SIDEBAR STYLES - FULL GRADIENT
==================================== */

.sidebar {
  width: 350px;
  padding: 0;
  /* FULL GRADIENT BACKGROUND - THE MAGIC! */
  background: linear-gradient(
    180deg,
    rgba(239, 246, 255, 0.95) 0%,
    rgba(224, 242, 254, 0.9) 15%,
    rgba(219, 234, 254, 0.85) 30%,
    rgba(199, 225, 255, 0.8) 50%,
    rgba(186, 230, 253, 0.75) 70%,
    rgba(224, 242, 254, 0.8) 85%,
    rgba(239, 246, 255, 0.9) 100%
  );
  backdrop-filter: blur(25px);
  border-right: 2px solid rgba(59, 130, 246, 0.15);
  overflow-y: hidden;
  position: relative;
  box-shadow: inset -1px 0 0 rgba(255, 255, 255, 0.2),
    25px 0 50px -12px rgba(59, 130, 246, 0.08);
  display: flex;
  flex-direction: column;
}

/* Enhanced gradient border effect */
.sidebar::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 2px;
  height: 100%;
  background: linear-gradient(
    180deg,
    rgba(59, 130, 246, 0.4) 0%,
    rgba(124, 58, 237, 0.3) 50%,
    rgba(59, 130, 246, 0.4) 100%
  );
}

/* SIDEBAR HEADER - Enhanced visibility and contrast */
.sidebar .p-6 {
  background: linear-gradient(
    135deg,
    rgba(59, 130, 246, 0.12) 0%,
    rgba(99, 102, 241, 0.1) 30%,
    rgba(139, 92, 246, 0.08) 70%,
    rgba(124, 58, 237, 0.1) 100%
  ) !important;
  backdrop-filter: blur(30px);
  border-bottom: 2px solid rgba(59, 130, 246, 0.1);
  position: relative;
}

/* ENHANCED MESSAGES HEADING - Better visibility */
.sidebar h1 {
  text-shadow: 0 2px 4px rgba(255, 255, 255, 0.5);
  font-weight: 900 !important;
  font-size: 1.75rem !important;
  background: linear-gradient(
    135deg,
    #1e293b 0%,
    #334155 50%,
    #475569 100%
  ) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  letter-spacing: -0.025em;
  position: relative;
  z-index: 10;
}

/* ENHANCED BUTTONS - Much better visibility */
.sidebar button {
  background: rgba(255, 255, 255, 0.9) !important;
  backdrop-filter: blur(15px) !important;
  border: 2px solid rgba(59, 130, 246, 0.2) !important;
  box-shadow: 0 8px 20px rgba(59, 130, 246, 0.15),
    inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.sidebar button:hover {
  background: rgba(255, 255, 255, 1) !important;
  border-color: rgba(59, 130, 246, 0.4) !important;
  transform: translateY(-2px) scale(1.05) !important;
  box-shadow: 0 12px 30px rgba(59, 130, 246, 0.25),
    inset 0 1px 0 rgba(255, 255, 255, 0.5) !important;
}

.sidebar button svg {
  color: rgba(59, 130, 246, 0.8) !important;
  transition: all 0.3s ease !important;
}

.sidebar button:hover svg {
  color: rgba(59, 130, 246, 1) !important;
  filter: drop-shadow(0 2px 4px rgba(59, 130, 246, 0.3));
}

/* ENHANCED SEARCH BAR */
.sidebar input {
  background: rgba(255, 255, 255, 0.95) !important;
  backdrop-filter: blur(20px) !important;
  border: 2px solid rgba(59, 130, 246, 0.2) !important;
  box-shadow: 0 8px 25px rgba(59, 130, 246, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;
}

.sidebar input:focus {
  background: rgba(255, 255, 255, 1) !important;
  border-color: rgba(59, 130, 246, 0.5) !important;
  box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.15),
    0 15px 35px rgba(59, 130, 246, 0.2) !important;
}

/* STATS CARDS - Enhanced visibility */
.sidebar .grid > div {
  background: rgba(255, 255, 255, 0.85) !important;
  backdrop-filter: blur(20px) !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
  box-shadow: 0 8px 25px rgba(59, 130, 246, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.4) !important;
}

/* CONVERSATION LIST AREA - Keep gradient flowing */
.sidebar .flex-1 {
  background: transparent !important;
  overflow-y: auto !important;
}

/* NO MESSAGES STATE - Beautiful gradient message */
.no-messages-state {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  text-align: center;
  background: rgba(255, 255, 255, 0.4) !important;
  backdrop-filter: blur(15px);
  border-radius: 24px;
  margin: 16px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  box-shadow: 0 8px 25px rgba(59, 130, 246, 0.1);
}

.no-messages-icon {
  width: 4rem;
  height: 4rem;
  margin-bottom: 1.5rem;
  background: linear-gradient(
    135deg,
    rgba(59, 130, 246, 0.2) 0%,
    rgba(124, 58, 237, 0.15) 100%
  );
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 25px rgba(59, 130, 246, 0.2);
}

.no-messages-icon svg {
  width: 2rem;
  height: 2rem;
  color: rgba(59, 130, 246, 0.8);
}

.no-messages-text {
  font-size: 1.125rem;
  font-weight: 700;
  color: rgba(15, 23, 42, 0.9) !important;
  margin-bottom: 0.5rem;
  text-shadow: 0 1px 2px rgba(255, 255, 255, 0.5);
}

.no-messages-subtext {
  font-size: 0.875rem;
  color: rgba(51, 65, 85, 0.8) !important;
  line-height: 1.5;
  font-weight: 500;
  text-shadow: 0 1px 2px rgba(255, 255, 255, 0.3);
}

/* ====================================
💬 CHAT AREA STYLES - ENHANCED
==================================== */

.chat-area {
  flex: 1;
  display: flex;
  flex-direction: column;
  background: rgba(255, 255, 255, 0.98);
  backdrop-filter: blur(25px);
  position: relative;
}

.chat-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 24px 32px;
  background: rgba(255, 255, 255, 0.98);
  backdrop-filter: blur(30px);
  border-bottom: 2px solid rgba(59, 130, 246, 0.08);
  box-shadow: 0 4px 20px rgba(59, 130, 246, 0.05);
  position: relative;
}

.chat-header::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(59, 130, 246, 0.2) 50%,
    transparent 100%
  );
}

/* ====================================
📝 MESSAGE LIST STYLES - ENHANCED
==================================== */

.message-list {
  flex: 1;
  padding: 32px;
  overflow-y: auto;
  background: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(15px);
  position: relative;
}

.message-list::-webkit-scrollbar {
  width: 8px;
}

.message-list::-webkit-scrollbar-track {
  background: rgba(59, 130, 246, 0.1);
  border-radius: 12px;
}

.message-list::-webkit-scrollbar-thumb {
  background: linear-gradient(
    180deg,
    rgba(59, 130, 246, 0.4) 0%,
    rgba(124, 58, 237, 0.4) 100%
  );
  border-radius: 12px;
  border: 2px solid transparent;
  background-clip: padding-box;
}

.message-list::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(
    180deg,
    rgba(59, 130, 246, 0.6) 0%,
    rgba(124, 58, 237, 0.6) 100%
  );
}

/* ====================================
🛠️ CUSTOM SCROLLBAR FOR SIDEBAR
==================================== */

.custom-scrollbar::-webkit-scrollbar {
  width: 8px;
}

.custom-scrollbar::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.3);
  border-radius: 12px;
  margin: 8px;
}

.custom-scrollbar::-webkit-scrollbar-thumb {
  background: linear-gradient(
    135deg,
    rgba(59, 130, 246, 0.4) 0%,
    rgba(124, 58, 237, 0.4) 100%
  );
  border-radius: 12px;
  border: 2px solid transparent;
  background-clip: padding-box;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.3);
}

.custom-scrollbar::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(
    135deg,
    rgba(59, 130, 246, 0.6) 0%,
    rgba(124, 58, 237, 0.6) 100%
  );
}

/* ====================================
📱 RESPONSIVE DESIGN
==================================== */

@media (max-width: 1024px) {
  .sidebar {
    width: 300px;
    padding: 0;
  }

  .chat-header {
    padding: 20px 24px;
  }

  .message-list {
    padding: 24px;
  }
}

@media (max-width: 768px) {
  .messages-container {
    flex-direction: column;
  }

  .sidebar {
    width: 100%;
    height: 200px;
    border-right: none;
    border-bottom: 2px solid rgba(59, 130, 246, 0.15);
  }

  .chat-area {
    flex: 1;
  }

  .chat-header {
    padding: 16px 20px;
  }

  .message-list {
    padding: 20px;
  }
}

/* ====================================
✨ NEXUS SPECIAL EFFECTS
==================================== */

.nexus-glow {
  animation: nexusGlow 3s ease-in-out infinite alternate;
}

@keyframes nexusGlow {
  from {
    box-shadow: 0 15px 35px rgba(59, 130, 246, 0.2),
      inset 0 1px 0 rgba(255, 255, 255, 0.3);
  }
  to {
    box-shadow: 0 20px 45px rgba(59, 130, 246, 0.3),
      inset 0 1px 0 rgba(255, 255, 255, 0.4);
  }
}

.gradient-pulse {
  animation: gradientPulse 4s ease-in-out infinite;
}

@keyframes gradientPulse {
  0%,
  100% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
}

/* ====================================
🎯 OVERRIDE ANY CONFLICTING STYLES
==================================== */

/* Ensure sidebar maintains full gradient */
.messages-container .sidebar .no-messages-state,
.messages-container .sidebar .conversation-item {
  background: transparent !important;
}

.messages-container .sidebar {
  background: linear-gradient(
    180deg,
    rgba(239, 246, 255, 0.95) 0%,
    rgba(224, 242, 254, 0.9) 15%,
    rgba(219, 234, 254, 0.85) 30%,
    rgba(199, 225, 255, 0.8) 50%,
    rgba(186, 230, 253, 0.75) 70%,
    rgba(224, 242, 254, 0.8) 85%,
    rgba(239, 246, 255, 0.9) 100%
  ) !important;
}

/* Ensure header section has proper backdrop */
.messages-container .sidebar .p-6 {
  background: rgba(255, 255, 255, 0.1) !important;
  backdrop-filter: blur(30px) !important;
}

/* Make sure conversation list area is transparent */
.messages-container .sidebar .flex-1 {
  background: transparent !important;
}
/* required styles */

.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
	position: absolute;
	left: 0;
	top: 0;
	}
.leaflet-container {
	overflow: hidden;
	}
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
	-webkit-user-select: none;
	   -moz-user-select: none;
	        user-select: none;
	  -webkit-user-drag: none;
	}
/* Prevents IE11 from highlighting tiles in blue */
.leaflet-tile::-moz-selection {
	background: transparent;
}
.leaflet-tile::selection {
	background: transparent;
}
/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
	image-rendering: -webkit-optimize-contrast;
	}
/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
	width: 1600px;
	height: 1600px;
	-webkit-transform-origin: 0 0;
	}
.leaflet-marker-icon,
.leaflet-marker-shadow {
	display: block;
	}
/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg {
	max-width: none !important;
	max-height: none !important;
	}
.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer,
.leaflet-container .leaflet-tile {
	max-width: none !important;
	max-height: none !important;
	width: auto;
	padding: 0;
	}

.leaflet-container img.leaflet-tile {
	/* See: https://bugs.chromium.org/p/chromium/issues/detail?id=600120 */
	mix-blend-mode: plus-lighter;
}

.leaflet-container.leaflet-touch-zoom {
	touch-action: pan-x pan-y;
	}
.leaflet-container.leaflet-touch-drag {
	/* Fallback for FF which doesn't support pinch-zoom */
	touch-action: none;
	touch-action: pinch-zoom;
}
.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
	touch-action: none;
}
.leaflet-container {
	-webkit-tap-highlight-color: transparent;
}
.leaflet-container a {
	-webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}
.leaflet-tile {
	filter: inherit;
	visibility: hidden;
	}
.leaflet-tile-loaded {
	visibility: inherit;
	}
.leaflet-zoom-box {
	width: 0;
	height: 0;
	box-sizing: border-box;
	z-index: 800;
	}
/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
	-moz-user-select: none;
	}

.leaflet-pane         { z-index: 400; }

.leaflet-tile-pane    { z-index: 200; }
.leaflet-overlay-pane { z-index: 400; }
.leaflet-shadow-pane  { z-index: 500; }
.leaflet-marker-pane  { z-index: 600; }
.leaflet-tooltip-pane   { z-index: 650; }
.leaflet-popup-pane   { z-index: 700; }

.leaflet-map-pane canvas { z-index: 100; }
.leaflet-map-pane svg    { z-index: 200; }

.leaflet-vml-shape {
	width: 1px;
	height: 1px;
	}
.lvml {
	behavior: url(#default#VML);
	display: inline-block;
	position: absolute;
	}


/* control positioning */

.leaflet-control {
	position: relative;
	z-index: 800;
	pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
	pointer-events: auto;
	}
.leaflet-top,
.leaflet-bottom {
	position: absolute;
	z-index: 1000;
	pointer-events: none;
	}
.leaflet-top {
	top: 0;
	}
.leaflet-right {
	right: 0;
	}
.leaflet-bottom {
	bottom: 0;
	}
.leaflet-left {
	left: 0;
	}
.leaflet-control {
	float: left;
	clear: both;
	}
.leaflet-right .leaflet-control {
	float: right;
	}
.leaflet-top .leaflet-control {
	margin-top: 10px;
	}
.leaflet-bottom .leaflet-control {
	margin-bottom: 10px;
	}
.leaflet-left .leaflet-control {
	margin-left: 10px;
	}
.leaflet-right .leaflet-control {
	margin-right: 10px;
	}


/* zoom and fade animations */

.leaflet-fade-anim .leaflet-popup {
	opacity: 0;
	transition: opacity 0.2s linear;
	}
.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
	opacity: 1;
	}
.leaflet-zoom-animated {
	transform-origin: 0 0;
	}
svg.leaflet-zoom-animated {
	will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
	transition:         transform 0.25s cubic-bezier(0,0,0.25,1);
	}
.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
	transition: none;
	}

.leaflet-zoom-anim .leaflet-zoom-hide {
	visibility: hidden;
	}


/* cursors */

.leaflet-interactive {
	cursor: pointer;
	}
.leaflet-grab {
	cursor:         grab;
	}
.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
	cursor: crosshair;
	}
.leaflet-popup-pane,
.leaflet-control {
	cursor: auto;
	}
.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
	cursor: move;
	cursor:         grabbing;
	}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
	pointer-events: none;
	}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive,
svg.leaflet-image-layer.leaflet-interactive path {
	pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
	pointer-events: auto;
	}

/* visual tweaks */

.leaflet-container {
	background: #ddd;
	outline-offset: 1px;
	}
.leaflet-container a {
	color: #0078A8;
	}
.leaflet-zoom-box {
	border: 2px dotted #38f;
	background: rgba(255,255,255,0.5);
	}


/* general typography */
.leaflet-container {
	font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1.5;
	}


/* general toolbar styles */

.leaflet-bar {
	box-shadow: 0 1px 5px rgba(0,0,0,0.65);
	border-radius: 4px;
	}
.leaflet-bar a {
	background-color: #fff;
	border-bottom: 1px solid #ccc;
	width: 26px;
	height: 26px;
	line-height: 26px;
	display: block;
	text-align: center;
	text-decoration: none;
	color: black;
	}
.leaflet-bar a,
.leaflet-control-layers-toggle {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	display: block;
	}
.leaflet-bar a:hover,
.leaflet-bar a:focus {
	background-color: #f4f4f4;
	}
.leaflet-bar a:first-child {
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	}
.leaflet-bar a:last-child {
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	border-bottom: none;
	}
.leaflet-bar a.leaflet-disabled {
	cursor: default;
	background-color: #f4f4f4;
	color: #bbb;
	}

.leaflet-touch .leaflet-bar a {
	width: 30px;
	height: 30px;
	line-height: 30px;
	}
.leaflet-touch .leaflet-bar a:first-child {
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
	}
.leaflet-touch .leaflet-bar a:last-child {
	border-bottom-left-radius: 2px;
	border-bottom-right-radius: 2px;
	}

/* zoom control */

.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
	font: bold 18px 'Lucida Console', Monaco, monospace;
	text-indent: 1px;
	}

.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out  {
	font-size: 22px;
	}


/* layers control */

.leaflet-control-layers {
	box-shadow: 0 1px 5px rgba(0,0,0,0.4);
	background: #fff;
	border-radius: 5px;
	}
.leaflet-control-layers-toggle {
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);
	width: 36px;
	height: 36px;
	}
.leaflet-retina .leaflet-control-layers-toggle {
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);
	background-size: 26px 26px;
	}
.leaflet-touch .leaflet-control-layers-toggle {
	width: 44px;
	height: 44px;
	}
.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
	display: none;
	}
.leaflet-control-layers-expanded .leaflet-control-layers-list {
	display: block;
	position: relative;
	}
.leaflet-control-layers-expanded {
	padding: 6px 10px 6px 6px;
	color: #333;
	background: #fff;
	}
.leaflet-control-layers-scrollbar {
	overflow-y: scroll;
	overflow-x: hidden;
	padding-right: 5px;
	}
.leaflet-control-layers-selector {
	margin-top: 2px;
	position: relative;
	top: 1px;
	}
.leaflet-control-layers label {
	display: block;
	font-size: 13px;
	font-size: 1.08333em;
	}
.leaflet-control-layers-separator {
	height: 0;
	border-top: 1px solid #ddd;
	margin: 5px -10px 5px -6px;
	}

/* Default icon URLs */
.leaflet-default-icon-path { /* used only in path-guessing heuristic, see L.Icon.Default */
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=);
	}


/* attribution and scale controls */

.leaflet-container .leaflet-control-attribution {
	background: #fff;
	background: rgba(255, 255, 255, 0.8);
	margin: 0;
	}
.leaflet-control-attribution,
.leaflet-control-scale-line {
	padding: 0 5px;
	color: #333;
	line-height: 1.4;
	}
.leaflet-control-attribution a {
	text-decoration: none;
	}
.leaflet-control-attribution a:hover,
.leaflet-control-attribution a:focus {
	text-decoration: underline;
	}
.leaflet-attribution-flag {
	display: inline !important;
	vertical-align: baseline !important;
	width: 1em;
	height: 0.6669em;
	}
.leaflet-left .leaflet-control-scale {
	margin-left: 5px;
	}
.leaflet-bottom .leaflet-control-scale {
	margin-bottom: 5px;
	}
.leaflet-control-scale-line {
	border: 2px solid #777;
	border-top: none;
	line-height: 1.1;
	padding: 2px 5px 1px;
	white-space: nowrap;
	box-sizing: border-box;
	background: rgba(255, 255, 255, 0.8);
	text-shadow: 1px 1px #fff;
	}
.leaflet-control-scale-line:not(:first-child) {
	border-top: 2px solid #777;
	border-bottom: none;
	margin-top: -2px;
	}
.leaflet-control-scale-line:not(:first-child):not(:last-child) {
	border-bottom: 2px solid #777;
	}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	box-shadow: none;
	}
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
	border: 2px solid rgba(0,0,0,0.2);
	background-clip: padding-box;
	}


/* popup */

.leaflet-popup {
	position: absolute;
	text-align: center;
	margin-bottom: 20px;
	}
.leaflet-popup-content-wrapper {
	padding: 1px;
	text-align: left;
	border-radius: 12px;
	}
.leaflet-popup-content {
	margin: 13px 24px 13px 20px;
	line-height: 1.3;
	font-size: 13px;
	font-size: 1.08333em;
	min-height: 1px;
	}
.leaflet-popup-content p {
	margin: 17px 0;
	margin: 1.3em 0;
	}
.leaflet-popup-tip-container {
	width: 40px;
	height: 20px;
	position: absolute;
	left: 50%;
	margin-top: -1px;
	margin-left: -20px;
	overflow: hidden;
	pointer-events: none;
	}
.leaflet-popup-tip {
	width: 17px;
	height: 17px;
	padding: 1px;

	margin: -10px auto 0;
	pointer-events: auto;
	transform: rotate(45deg);
	}
.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
	background: white;
	color: #333;
	box-shadow: 0 3px 14px rgba(0,0,0,0.4);
	}
.leaflet-container a.leaflet-popup-close-button {
	position: absolute;
	top: 0;
	right: 0;
	border: none;
	text-align: center;
	width: 24px;
	height: 24px;
	font: 16px/24px Tahoma, Verdana, sans-serif;
	color: #757575;
	text-decoration: none;
	background: transparent;
	}
.leaflet-container a.leaflet-popup-close-button:hover,
.leaflet-container a.leaflet-popup-close-button:focus {
	color: #585858;
	}
.leaflet-popup-scrolled {
	overflow: auto;
	}

.leaflet-oldie .leaflet-popup-content-wrapper {
	-ms-zoom: 1;
	}
.leaflet-oldie .leaflet-popup-tip {
	width: 24px;
	margin: 0 auto;

	-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
	filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
	}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
	border: 1px solid #999;
	}


/* div icon */

.leaflet-div-icon {
	background: #fff;
	border: 1px solid #666;
	}


/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
	position: absolute;
	padding: 6px;
	background-color: #fff;
	border: 1px solid #fff;
	border-radius: 3px;
	color: #222;
	white-space: nowrap;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	pointer-events: none;
	box-shadow: 0 1px 3px rgba(0,0,0,0.4);
	}
.leaflet-tooltip.leaflet-interactive {
	cursor: pointer;
	pointer-events: auto;
	}
.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	position: absolute;
	pointer-events: none;
	border: 6px solid transparent;
	background: transparent;
	content: "";
	}

/* Directions */

.leaflet-tooltip-bottom {
	margin-top: 6px;
}
.leaflet-tooltip-top {
	margin-top: -6px;
}
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
	left: 50%;
	margin-left: -6px;
	}
.leaflet-tooltip-top:before {
	bottom: 0;
	margin-bottom: -12px;
	border-top-color: #fff;
	}
.leaflet-tooltip-bottom:before {
	top: 0;
	margin-top: -12px;
	margin-left: -6px;
	border-bottom-color: #fff;
	}
.leaflet-tooltip-left {
	margin-left: -6px;
}
.leaflet-tooltip-right {
	margin-left: 6px;
}
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
	top: 50%;
	margin-top: -6px;
	}
.leaflet-tooltip-left:before {
	right: 0;
	margin-right: -12px;
	border-left-color: #fff;
	}
.leaflet-tooltip-right:before {
	left: 0;
	margin-left: -12px;
	border-right-color: #fff;
	}

/* Printing */

@media print {
	/* Prevent printers from removing background-images of controls. */
	.leaflet-control {
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
		}
	}
/**
 * Swiper 11.2.10
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 28, 2025
 */

/* FONT_START */
@font-face {
  font-family: 'swiper-icons';
  src: url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');
  font-weight: 400;
  font-style: normal;
}
/* FONT_END */
:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}
:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}
.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}
.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}
.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}
.swiper-horizontal {
  touch-action: pan-y;
}
.swiper-vertical {
  touch-action: pan-x;
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}
.swiper-slide-invisible-blank {
  visibility: hidden;
}
/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}
/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}
.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}
.swiper-3d {
  perspective: 1200px;
}
.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}
.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}
.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}
.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: '';
  flex-shrink: 0;
  order: 9999;
}
.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}
/* Slide styles start */
/* 3D Shadows */
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}
.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}
.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}
.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}
:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 10px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}
.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}
.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}
.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}
.swiper-button-prev svg,
.swiper-button-next svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  transform-origin: center;
}
.swiper-rtl .swiper-button-prev svg,
.swiper-rtl .swiper-button-next svg {
  transform: rotate(180deg);
}
.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto;
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}
.swiper-button-lock {
  display: none;
}
/* Navigation font start */
.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}
.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: 'prev';
}
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}
.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: 'next';
}
/* Navigation font end */
:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}
.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}
/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}
/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}
.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}
button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
          -moz-appearance: none;
       appearance: none;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}
.swiper-pagination-bullet:only-child {
  display: none !important;
}
.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}
.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}
.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}
.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform,
        200ms top;
}
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}
.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform,
        200ms left;
}
.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform,
    200ms right;
}
/* Fraction */
.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}
/* Progress */
.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}
.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}
.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}
.swiper-vertical > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}
.swiper-pagination-lock {
  display: none;
}
:root {
  /*
  --swiper-scrollbar-border-radius: 10px;
  --swiper-scrollbar-top: auto;
  --swiper-scrollbar-bottom: 4px;
  --swiper-scrollbar-left: auto;
  --swiper-scrollbar-right: 4px;
  --swiper-scrollbar-sides-offset: 1%;
  --swiper-scrollbar-bg-color: rgba(0, 0, 0, 0.1);
  --swiper-scrollbar-drag-bg-color: rgba(0, 0, 0, 0.5);
  --swiper-scrollbar-size: 4px;
  */
}
.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
}
.swiper-scrollbar-disabled > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}
.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset, 1%);
  bottom: var(--swiper-scrollbar-bottom, 4px);
  top: var(--swiper-scrollbar-top, auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size, 4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}
.swiper-vertical > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-vertical {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}
.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0;
}
.swiper-scrollbar-cursor-drag {
  cursor: move;
}
.swiper-scrollbar-lock {
  display: none;
}
/* Zoom container styles start */
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
/* Zoom container styles end */
.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}
/* a11y */
.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}
.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}
.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}
.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}
.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}
.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}
.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-fade .swiper-slide-active {
  pointer-events: auto;
}
.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper.swiper-cube {
  overflow: visible;
}
.swiper-cube .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}
.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}
.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}
.swiper-cube .swiper-cube-shadow:before {
  content: '';
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}
.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}
/* Cube slide shadows start */
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right {
  z-index: 0;
  backface-visibility: hidden;
}
/* Cube slide shadows end */
.swiper.swiper-flip {
  overflow: visible;
}
.swiper-flip .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
}
.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}
.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}
/* Flip slide shadows start */
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right {
  z-index: 0;
  backface-visibility: hidden;
}
/* Flip slide shadows end */
.swiper-creative .swiper-slide {
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}
.swiper.swiper-cards {
  overflow: visible;
}
.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  backface-visibility: hidden;
  overflow: hidden;
}
.leaflet-cluster-anim .leaflet-marker-icon, .leaflet-cluster-anim .leaflet-marker-shadow {
	transition: transform 0.3s ease-out, opacity 0.3s ease-in;
}

.leaflet-cluster-spider-leg {
	/* stroke-dashoffset (duration and function) should match with leaflet-marker-icon transform in order to track it exactly */
	transition: stroke-dashoffset 0.3s ease-out, stroke-opacity 0.3s ease-in;
}
.marker-cluster-small {
	background-color: rgba(181, 226, 140, 0.6);
	}
.marker-cluster-small div {
	background-color: rgba(110, 204, 57, 0.6);
	}

.marker-cluster-medium {
	background-color: rgba(241, 211, 87, 0.6);
	}
.marker-cluster-medium div {
	background-color: rgba(240, 194, 12, 0.6);
	}

.marker-cluster-large {
	background-color: rgba(253, 156, 115, 0.6);
	}
.marker-cluster-large div {
	background-color: rgba(241, 128, 23, 0.6);
	}

	/* IE 6-8 fallback colors */
.leaflet-oldie .marker-cluster-small {
	background-color: rgb(181, 226, 140);
	}
.leaflet-oldie .marker-cluster-small div {
	background-color: rgb(110, 204, 57);
	}

.leaflet-oldie .marker-cluster-medium {
	background-color: rgb(241, 211, 87);
	}
.leaflet-oldie .marker-cluster-medium div {
	background-color: rgb(240, 194, 12);
	}

.leaflet-oldie .marker-cluster-large {
	background-color: rgb(253, 156, 115);
	}
.leaflet-oldie .marker-cluster-large div {
	background-color: rgb(241, 128, 23);
}

.marker-cluster {
	background-clip: padding-box;
	border-radius: 20px;
	}
.marker-cluster div {
	width: 30px;
	height: 30px;
	margin-left: 5px;
	margin-top: 5px;

	text-align: center;
	border-radius: 15px;
	font: 12px "Helvetica Neue", Arial, Helvetica, sans-serif;
	}
.marker-cluster span {
	line-height: 30px;
	}.roi-calculator-form {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding: 1rem;
}

.roi-calculator-form fieldset.input-group {
  border: 1px solid var(--border-color, #e0e0e0);
  border-radius: 8px;
  margin-bottom: 1.5rem;
  padding: 1.5rem;
  background: var(--fieldset-bg, #ffffff);
}

.roi-calculator-form legend {
  font-weight: 600;
  color: var(--text-primary, #333333);
  padding: 0 0.5rem;
  margin-bottom: 0.5rem;
}

.roi-calculator-form .fields-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1rem;
}

.roi-calculator-form .field {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.roi-calculator-form label {
  font-size: 0.9rem;
  color: var(--text-secondary, #666666);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.roi-calculator-form .unit {
  font-size: 0.8rem;
  color: var(--text-muted, #888888);
}

.roi-calculator-form .input-wrapper {
  position: relative;
}

.roi-calculator-form input {
  width: 100%;
  padding: 0.75rem;
  border: 1px solid var(--input-border, #cccccc);
  border-radius: 4px;
  font-size: 1rem;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.roi-calculator-form input:focus {
  border-color: var(--focus-border, #4D9D74);
  box-shadow: 0 0 0 2px rgba(77, 157, 116, 0.2);
  outline: none;
}

.roi-calculator-form input.error {
  border-color: var(--error-color, #dc3545);
}

.roi-calculator-form .error-message {
  position: absolute;
  font-size: 0.8rem;
  color: var(--error-color, #dc3545);
  margin-top: 0.25rem;
}

.roi-calculator-form .form-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 2rem;
}

.roi-calculator-form .calculate-button {
  background-color: var(--primary-color, #4D9D74);
  color: white;
  padding: 0.75rem 1.5rem;
  border: none;
  border-radius: 4px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s;
}

.roi-calculator-form .calculate-button:hover {
  background-color: var(--primary-color-dark, #3d7d5d);
}

.roi-calculator-form .calculate-button:disabled {
  background-color: var(--disabled-color, #cccccc);
  cursor: not-allowed;
}

/* Accessibility improvements */
.roi-calculator-form input:focus-visible {
  outline: 2px solid var(--focus-border, #4D9D74);
  outline-offset: 1px;
}

.roi-calculator-form .calculate-button:focus-visible {
  outline: 2px solid var(--focus-border, #4D9D74);
  outline-offset: 2px;
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
  .roi-calculator-form {
    --border-color: #444444;
    --fieldset-bg: #1a1a1a;
    --text-primary: #ffffff;
    --text-secondary: #bbbbbb;
    --text-muted: #888888;
    --input-border: #555555;
    --focus-border: #6dbd94;
    --primary-color: #6dbd94;
    --primary-color-dark: #4D9D74;
    --disabled-color: #444444;
  }

  .roi-calculator-form input {
    background-color: #2a2a2a;
    color: #ffffff;
  }
}

/* High contrast mode support */
@media (forced-colors: active) {
  .roi-calculator-form input,
  .roi-calculator-form .calculate-button {
    border: 1px solid ButtonBorder;
  }

  .roi-calculator-form .calculate-button:disabled {
    opacity: 0.5;
  }
}

/* Responsive adjustments */
@media (max-width: 600px) {
  .roi-calculator-form {
    padding: 0.5rem;
  }

  .roi-calculator-form fieldset.input-group {
    padding: 1rem;
  }

  .roi-calculator-form .fields-grid {
    grid-template-columns: 1fr;
  }

  .roi-calculator-form .form-actions {
    position: sticky;
    bottom: 0;
    background: var(--fieldset-bg, #ffffff);
    padding: 1rem;
    margin: 0 -0.5rem;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
  }
}

/* Print styles */
@media print {
  .roi-calculator-form {
    border: none;
    padding: 0;
    max-width: none;
  }

  .roi-calculator-form fieldset.input-group {
    -moz-column-break-inside: avoid;
         break-inside: avoid;
    border: 1px solid #000000;
    margin-bottom: 1rem;
  }

  .roi-calculator-form input {
    border: 1px solid #000000;
  }

  .roi-calculator-form .error-message {
    display: none;
  }

  .roi-calculator-form .form-actions {
    display: none;
  }
}.roi-calculator {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  font-family: var(--font-family, system-ui, -apple-system, sans-serif);
}

.roi-calculator.embedded {
  max-width: 100%;
}

/* Results section */
.roi-results {
  margin-top: 2rem;
  padding: 1.5rem;
  background: var(--results-bg, #f8f9fa);
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.roi-results h3 {
  margin: 0 0 1.5rem;
  color: var(--heading-color, #2c3e50);
  font-size: 1.5rem;
  font-weight: 600;
}

.roi-results h4 {
  margin: 0 0 1rem;
  color: var(--subheading-color, #34495e);
  font-size: 1.1rem;
  font-weight: 500;
}

/* Results summary grid layout */
.results-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 1.5rem;
}

.metric-group {
  padding: 1.25rem;
  background: var(--metric-group-bg, #ffffff);
  border-radius: 6px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* Individual metrics */
.result-metric {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 0.75rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--border-color, rgba(0, 0, 0, 0.1));
}

.result-metric:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.metric-label {
  color: var(--label-color, #666666);
  font-size: 0.9rem;
}

.metric-value {
  color: var(--value-color, #2c3e50);
  font-weight: 600;
  font-size: 1.1rem;
}

/* Metric group specific styles */
.metric-group.cash-flow .metric-value {
  color: var(--cash-flow-color, #2ecc71);
}

.metric-group.returns .metric-value {
  color: var(--returns-color, #3498db);
}

.metric-group.investment .metric-value {
  color: var(--investment-color, #9b59b6);
}

.metric-group.monthly .metric-value {
  color: var(--monthly-color, #e67e22);
}

/* Positive/Negative values */
.metric-value.positive {
  color: var(--positive-color, #2ecc71);
}

.metric-value.negative {
  color: var(--negative-color, #e74c3c);
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
  .roi-calculator {
    --results-bg: #1a1a1a;
    --metric-group-bg: #2a2a2a;
    --heading-color: #ffffff;
    --subheading-color: #dddddd;
    --label-color: #999999;
    --value-color: #ffffff;
    --border-color: rgba(255, 255, 255, 0.1);
    --cash-flow-color: #2ecc71;
    --returns-color: #3498db;
    --investment-color: #9b59b6;
    --monthly-color: #e67e22;
    --positive-color: #2ecc71;
    --negative-color: #e74c3c;
  }
}

/* Print styles */
@media print {
  .roi-calculator {
    max-width: none;
  }

  .roi-results {
    -moz-column-break-inside: avoid;
         break-inside: avoid;
    background: none;
    box-shadow: none;
    padding: 0;
  }

  .metric-group {
    -moz-column-break-inside: avoid;
         break-inside: avoid;
    background: none;
    box-shadow: none;
    border: 1px solid #000000;
  }

  .result-metric {
    border-bottom-color: #cccccc;
  }

  .metric-value {
    color: #000000 !important;
  }

  .metric-value.positive,
  .metric-value.negative {
    color: #000000 !important;
  }
}

/* High contrast mode support */
@media (forced-colors: active) {
  .roi-calculator {
    --border-color: ButtonBorder;
  }

  .metric-group {
    border: 1px solid ButtonBorder;
  }

  .result-metric {
    border-bottom: 1px solid ButtonBorder;
  }

  .metric-value {
    color: ButtonText;
  }
}

/* Responsive adjustments */
@media (max-width: 600px) {
  .roi-results {
    padding: 1rem;
    margin-top: 1.5rem;
  }

  .results-summary {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .metric-group {
    padding: 1rem;
  }

  .metric-label {
    font-size: 0.85rem;
  }

  .metric-value {
    font-size: 1rem;
  }
}

*, ::before, ::after{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(63 131 248 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

::backdrop{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(63 131 248 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
}

/*
! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com
*/

/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #E5E7EB; /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

/*
Add the correct font weight in Edge and Safari.
*/

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}

/*
Add the correct font size in all browsers.
*/

small {
  font-size: 80%;
}

/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}

/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}

/*
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

/*
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
  vertical-align: baseline;
}

/*
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/*
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/

dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9CA3AF; /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9CA3AF; /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/

:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

img,
video {
  max-width: 100%;
  height: auto;
}

/* Make elements with the HTML hidden attribute stay hidden by default */

[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}

[data-tooltip-style^='light'] + .tooltip > .tooltip-arrow:before{
  border-style: solid;
  border-color: #e5e7eb;
}

[data-tooltip-style^='light'] + .tooltip[data-popper-placement^='top'] > .tooltip-arrow:before{
  border-bottom-width: 1px;
  border-right-width: 1px;
}

[data-tooltip-style^='light'] + .tooltip[data-popper-placement^='right'] > .tooltip-arrow:before{
  border-bottom-width: 1px;
  border-left-width: 1px;
}

[data-tooltip-style^='light'] + .tooltip[data-popper-placement^='bottom'] > .tooltip-arrow:before{
  border-top-width: 1px;
  border-left-width: 1px;
}

[data-tooltip-style^='light'] + .tooltip[data-popper-placement^='left'] > .tooltip-arrow:before{
  border-top-width: 1px;
  border-right-width: 1px;
}

.tooltip[data-popper-placement^='top'] > .tooltip-arrow{
  bottom: -4px;
}

.tooltip[data-popper-placement^='bottom'] > .tooltip-arrow{
  top: -4px;
}

.tooltip[data-popper-placement^='left'] > .tooltip-arrow{
  right: -4px;
}

.tooltip[data-popper-placement^='right'] > .tooltip-arrow{
  left: -4px;
}

.tooltip.invisible > .tooltip-arrow:before{
  visibility: hidden;
}

[data-popper-arrow],[data-popper-arrow]:before{
  position: absolute;
  width: 8px;
  height: 8px;
  background: inherit;
}

[data-popper-arrow]{
  visibility: hidden;
}

[data-popper-arrow]:before{
  content: "";
  visibility: visible;
  transform: rotate(45deg);
}

[data-popper-arrow]:after{
  content: "";
  visibility: visible;
  transform: rotate(45deg);
  position: absolute;
  width: 9px;
  height: 9px;
  background: inherit;
}

[role="tooltip"] > [data-popper-arrow]:before{
  border-style: solid;
  border-color: #e5e7eb;
}

.dark [role="tooltip"] > [data-popper-arrow]:before{
  border-style: solid;
  border-color: #4b5563;
}

[role="tooltip"] > [data-popper-arrow]:after{
  border-style: solid;
  border-color: #e5e7eb;
}

.dark [role="tooltip"] > [data-popper-arrow]:after{
  border-style: solid;
  border-color: #4b5563;
}

[data-popover][role="tooltip"][data-popper-placement^='top'] > [data-popper-arrow]:before{
  border-bottom-width: 1px;
  border-right-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='top'] > [data-popper-arrow]:after{
  border-bottom-width: 1px;
  border-right-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='right'] > [data-popper-arrow]:before{
  border-bottom-width: 1px;
  border-left-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='right'] > [data-popper-arrow]:after{
  border-bottom-width: 1px;
  border-left-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='bottom'] > [data-popper-arrow]:before{
  border-top-width: 1px;
  border-left-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='bottom'] > [data-popper-arrow]:after{
  border-top-width: 1px;
  border-left-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='left'] > [data-popper-arrow]:before{
  border-top-width: 1px;
  border-right-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='left'] > [data-popper-arrow]:after{
  border-top-width: 1px;
  border-right-width: 1px;
}

[data-popover][role="tooltip"][data-popper-placement^='top'] > [data-popper-arrow]{
  bottom: -5px;
}

[data-popover][role="tooltip"][data-popper-placement^='bottom'] > [data-popper-arrow]{
  top: -5px;
}

[data-popover][role="tooltip"][data-popper-placement^='left'] > [data-popper-arrow]{
  right: -5px;
}

[data-popover][role="tooltip"][data-popper-placement^='right'] > [data-popper-arrow]{
  left: -5px;
}

[role="tooltip"].invisible > [data-popper-arrow]:before{
  visibility: hidden;
}

[role="tooltip"].invisible > [data-popper-arrow]:after{
  visibility: hidden;
}

[type='text'],[type='email'],[type='url'],[type='password'],[type='number'],[type='date'],[type='datetime-local'],[type='month'],[type='search'],[type='tel'],[type='time'],[type='week'],[multiple],textarea,select{
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #fff;
  border-color: #6B7280;
  border-width: 1px;
  border-radius: 0px;
  padding-top: 0.5rem;
  padding-right: 0.75rem;
  padding-bottom: 0.5rem;
  padding-left: 0.75rem;
  font-size: 1rem;
  line-height: 1.5rem;
  --tw-shadow: 0 0 #0000;
}

[type='text']:focus, [type='email']:focus, [type='url']:focus, [type='password']:focus, [type='number']:focus, [type='date']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='week']:focus, [multiple]:focus, textarea:focus, select:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: #1C64F2;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  border-color: #1C64F2;
}

input::-moz-placeholder, textarea::-moz-placeholder{
  color: #6B7280;
  opacity: 1;
}

input::placeholder,textarea::placeholder{
  color: #6B7280;
  opacity: 1;
}

::-webkit-datetime-edit-fields-wrapper{
  padding: 0;
}

input[type="time"]::-webkit-calendar-picker-indicator{
  background: none;
}

select:not([size]){
  background-image: url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 10 6'%3e %3cpath stroke='%236B7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m1 1 4 4 4-4'/%3e %3c/svg%3e");
  background-position: right 0.75rem center;
  background-repeat: no-repeat;
  background-size: 0.75em 0.75em;
  padding-right: 2.5rem;
  -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
}

:is([dir=rtl]) select:not([size]){
  background-position: left 0.75rem center;
  padding-right: 0.75rem;
  padding-left: 0;
}

[multiple]{
  background-image: initial;
  background-position: initial;
  background-repeat: unset;
  background-size: initial;
  padding-right: 0.75rem;
  -webkit-print-color-adjust: unset;
          print-color-adjust: unset;
}

[type='checkbox'],[type='radio']{
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
  display: inline-block;
  vertical-align: middle;
  background-origin: border-box;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  flex-shrink: 0;
  height: 1rem;
  width: 1rem;
  color: #1C64F2;
  background-color: #fff;
  border-color: #6B7280;
  border-width: 1px;
  --tw-shadow: 0 0 #0000;
}

[type='checkbox']{
  border-radius: 0px;
}

[type='radio']{
  border-radius: 100%;
}

[type='checkbox']:focus,[type='radio']:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
  --tw-ring-offset-width: 2px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: #1C64F2;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}

[type='checkbox']:checked,[type='radio']:checked,.dark [type='checkbox']:checked,.dark [type='radio']:checked{
  border-color: transparent;
  background-color: currentColor;
  background-size: 0.55em 0.55em;
  background-position: center;
  background-repeat: no-repeat;
}

[type='checkbox']:checked{
  background-image: url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 12'%3e %3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M1 5.917 5.724 10.5 15 1.5'/%3e %3c/svg%3e");
  background-repeat: no-repeat;
  background-size: 0.55em 0.55em;
  -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
}

[type='radio']:checked{
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
  background-size: 1em 1em;
}

.dark [type='radio']:checked{
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e");
  background-size: 1em 1em;
}

[type='checkbox']:indeterminate{
  background-image: url("data:image/svg+xml,%3csvg aria-hidden='true' xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 12'%3e %3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M0.5 6h14'/%3e %3c/svg%3e");
  background-color: currentColor;
  border-color: transparent;
  background-position: center;
  background-repeat: no-repeat;
  background-size: 0.55em 0.55em;
  -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
}

[type='checkbox']:indeterminate:hover,[type='checkbox']:indeterminate:focus{
  border-color: transparent;
  background-color: currentColor;
}

[type='file']{
  background: unset;
  border-color: inherit;
  border-width: 0;
  border-radius: 0;
  padding: 0;
  font-size: unset;
  line-height: inherit;
}

[type='file']:focus{
  outline: 1px auto inherit;
}

input[type=file]::file-selector-button{
  color: white;
  background: #1F2937;
  border: 0;
  font-weight: 500;
  font-size: 0.875rem;
  cursor: pointer;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  padding-left: 2rem;
  padding-right: 1rem;
  margin-inline-start: -1rem;
  margin-inline-end: 1rem;
}

input[type=file]::file-selector-button:hover{
  background: #374151;
}

:is([dir=rtl]) input[type=file]::file-selector-button{
  padding-right: 2rem;
  padding-left: 1rem;
}

.dark input[type=file]::file-selector-button{
  color: white;
  background: #4B5563;
}

.dark input[type=file]::file-selector-button:hover{
  background: #6B7280;
}

input[type="range"]::-webkit-slider-thumb{
  height: 1.25rem;
  width: 1.25rem;
  background: #1C64F2;
  border-radius: 9999px;
  border: 0;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}

input[type="range"]:disabled::-webkit-slider-thumb{
  background: #9CA3AF;
}

.dark input[type="range"]:disabled::-webkit-slider-thumb{
  background: #6B7280;
}

input[type="range"]:focus::-webkit-slider-thumb{
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1px;
  --tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity));
}

input[type="range"]::-moz-range-thumb{
  height: 1.25rem;
  width: 1.25rem;
  background: #1C64F2;
  border-radius: 9999px;
  border: 0;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}

input[type="range"]:disabled::-moz-range-thumb{
  background: #9CA3AF;
}

.dark input[type="range"]:disabled::-moz-range-thumb{
  background: #6B7280;
}

input[type="range"]::-moz-range-progress{
  background: #3F83F8;
}

input[type="range"]::-ms-fill-lower{
  background: #3F83F8;
}

:root {
    --background: 0 0% 100%;
    --foreground: 222.2 84% 4.9%;

    --primary: 222.2 47.4% 11.2%;
    --primary-foreground: 210 40% 98%;

    --secondary: 210 40% 96.1%;
    --secondary-foreground: 222.2 47.4% 11.2%;

    --destructive: 0 84.2% 60.2%;
    --destructive-foreground: 210 40% 98%;

    --border: 214.3 31.8% 91.4%;
    --input: 214.3 31.8% 91.4%;
    --ring: 222.2 84% 4.9%;
  }

body {
    font-family: 'Lato', sans-serif;
  }

.\!container{
  width: 100% !important;
}

.container{
  width: 100%;
}

@media (min-width: 640px){

  .\!container{
    max-width: 640px !important;
  }

  .container{
    max-width: 640px;
  }
}

@media (min-width: 768px){

  .\!container{
    max-width: 768px !important;
  }

  .container{
    max-width: 768px;
  }
}

@media (min-width: 1024px){

  .\!container{
    max-width: 1024px !important;
  }

  .container{
    max-width: 1024px;
  }
}

@media (min-width: 1280px){

  .\!container{
    max-width: 1280px !important;
  }

  .container{
    max-width: 1280px;
  }
}

@media (min-width: 1536px){

  .\!container{
    max-width: 1536px !important;
  }

  .container{
    max-width: 1536px;
  }
}

input[type="range"] {
    -webkit-appearance: none;
    -moz-appearance: none;
         appearance: none;
    background: transparent;
    cursor: pointer;
  }

input[type="range"]::-webkit-slider-track{
  height: 0.5rem;
  border-radius: 0.5rem;
}

input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    height: 1.25rem;
    width: 1.25rem;
    cursor: pointer;
    border-radius: 9999px;
    --tw-bg-opacity: 1;
    background-color: rgb(28 100 242 / var(--tw-bg-opacity, 1));
    --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    --tw-shadow-color: rgb(195 221 253 / 0.5);
    --tw-shadow: var(--tw-shadow-colored);
    margin-top: -6px;
  }

input[type="range"]::-moz-range-thumb{
  height: 1.25rem;
  width: 1.25rem;
  cursor: pointer;
  border-radius: 9999px;
  border-width: 0px;
  --tw-bg-opacity: 1;
  background-color: rgb(28 100 242 / var(--tw-bg-opacity, 1));
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  --tw-shadow-color: rgb(195 221 253 / 0.5);
  --tw-shadow: var(--tw-shadow-colored);
}

input[type="range"]:focus {
    outline: none;
  }

input[type="range"]:focus::-webkit-slider-thumb{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity, 1));
  --tw-ring-offset-width: 2px;
}

.sr-only{
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.pointer-events-none{
  pointer-events: none;
}

.\!visible{
  visibility: visible !important;
}

.visible{
  visibility: visible;
}

.invisible{
  visibility: hidden;
}

.collapse{
  visibility: collapse;
}

.static{
  position: static;
}

.fixed{
  position: fixed;
}

.absolute{
  position: absolute;
}

.relative{
  position: relative;
}

.sticky{
  position: sticky;
}

.inset-0{
  inset: 0px;
}

.inset-0\.5{
  inset: 0.125rem;
}

.inset-\[1px\]{
  inset: 1px;
}

.inset-y-0{
  top: 0px;
  bottom: 0px;
}

.-bottom-0\.5{
  bottom: -0.125rem;
}

.-bottom-1{
  bottom: -0.25rem;
}

.-bottom-12{
  bottom: -3rem;
}

.-bottom-16{
  bottom: -4rem;
}

.-bottom-2{
  bottom: -0.5rem;
}

.-bottom-32{
  bottom: -8rem;
}

.-bottom-4{
  bottom: -1rem;
}

.-bottom-5{
  bottom: -1.25rem;
}

.-bottom-8{
  bottom: -2rem;
}

.-left-1{
  left: -0.25rem;
}

.-left-12{
  left: -3rem;
}

.-left-2{
  left: -0.5rem;
}

.-left-6{
  left: -1.5rem;
}

.-left-8{
  left: -2rem;
}

.-right-0\.5{
  right: -0.125rem;
}

.-right-1{
  right: -0.25rem;
}

.-right-2{
  right: -0.5rem;
}

.-right-3{
  right: -0.75rem;
}

.-right-4{
  right: -1rem;
}

.-right-6{
  right: -1.5rem;
}

.-right-8{
  right: -2rem;
}

.-top-1{
  top: -0.25rem;
}

.-top-12{
  top: -3rem;
}

.-top-2{
  top: -0.5rem;
}

.-top-3{
  top: -0.75rem;
}

.-top-6{
  top: -1.5rem;
}

.bottom-0{
  bottom: 0px;
}

.bottom-1{
  bottom: 0.25rem;
}

.bottom-16{
  bottom: 4rem;
}

.bottom-2{
  bottom: 0.5rem;
}

.bottom-20{
  bottom: 5rem;
}

.bottom-3{
  bottom: 0.75rem;
}

.bottom-4{
  bottom: 1rem;
}

.bottom-6{
  bottom: 1.5rem;
}

.bottom-8{
  bottom: 2rem;
}

.bottom-full{
  bottom: 100%;
}

.left-0{
  left: 0px;
}

.left-1\/2{
  left: 50%;
}

.left-1\/4{
  left: 25%;
}

.left-12{
  left: 3rem;
}

.left-16{
  left: 4rem;
}

.left-2{
  left: 0.5rem;
}

.left-20{
  left: 5rem;
}

.left-3{
  left: 0.75rem;
}

.left-4{
  left: 1rem;
}

.left-40{
  left: 10rem;
}

.left-6{
  left: 1.5rem;
}

.left-8{
  left: 2rem;
}

.right-0{
  right: 0px;
}

.right-1{
  right: 0.25rem;
}

.right-1\/4{
  right: 25%;
}

.right-12{
  right: 3rem;
}

.right-16{
  right: 4rem;
}

.right-2{
  right: 0.5rem;
}

.right-20{
  right: 5rem;
}

.right-24{
  right: 6rem;
}

.right-3{
  right: 0.75rem;
}

.right-4{
  right: 1rem;
}

.right-6{
  right: 1.5rem;
}

.right-8{
  right: 2rem;
}

.right-\[3\%\]{
  right: 3%;
}

.right-\[5\%\]{
  right: 5%;
}

.top-0{
  top: 0px;
}

.top-1{
  top: 0.25rem;
}

.top-1\/2{
  top: 50%;
}

.top-12{
  top: 3rem;
}

.top-16{
  top: 4rem;
}

.top-2{
  top: 0.5rem;
}

.top-2\.5{
  top: 0.625rem;
}

.top-20{
  top: 5rem;
}

.top-24{
  top: 6rem;
}

.top-3{
  top: 0.75rem;
}

.top-3\.5{
  top: 0.875rem;
}

.top-4{
  top: 1rem;
}

.top-40{
  top: 10rem;
}

.top-5{
  top: 1.25rem;
}

.top-6{
  top: 1.5rem;
}

.top-8{
  top: 2rem;
}

.top-\[13\%\]{
  top: 13%;
}

.top-\[23\%\]{
  top: 23%;
}

.top-\[76px\]{
  top: 76px;
}

.top-full{
  top: 100%;
}

.-z-10{
  z-index: -10;
}

.z-10{
  z-index: 10;
}

.z-20{
  z-index: 20;
}

.z-30{
  z-index: 30;
}

.z-40{
  z-index: 40;
}

.z-50{
  z-index: 50;
}

.z-\[10000\]{
  z-index: 10000;
}

.z-\[10001\]{
  z-index: 10001;
}

.z-\[1000\]{
  z-index: 1000;
}

.z-\[60\]{
  z-index: 60;
}

.z-\[8000\]{
  z-index: 8000;
}

.z-\[9000\]{
  z-index: 9000;
}

.z-\[9999\]{
  z-index: 9999;
}

.col-auto{
  grid-column: auto;
}

.col-span-1{
  grid-column: span 1 / span 1;
}

.col-span-12{
  grid-column: span 12 / span 12;
}

.col-span-2{
  grid-column: span 2 / span 2;
}

.col-span-3{
  grid-column: span 3 / span 3;
}

.col-span-4{
  grid-column: span 4 / span 4;
}

.col-span-6{
  grid-column: span 6 / span 6;
}

.col-span-8{
  grid-column: span 8 / span 8;
}

.col-span-full{
  grid-column: 1 / -1;
}

.m-0{
  margin: 0px;
}

.m-1{
  margin: 0.25rem;
}

.m-2{
  margin: 0.5rem;
}

.m-3{
  margin: 0.75rem;
}

.m-4{
  margin: 1rem;
}

.m-6{
  margin: 1.5rem;
}

.mx-1{
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}

.mx-2{
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}

.mx-4{
  margin-left: 1rem;
  margin-right: 1rem;
}

.mx-6{
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}

.mx-auto{
  margin-left: auto;
  margin-right: auto;
}

.-my-3{
  margin-top: -0.75rem;
  margin-bottom: -0.75rem;
}

.my-12{
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.my-2{
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.my-3{
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}

.my-4{
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.my-6{
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}

.my-7{
  margin-top: 1.75rem;
  margin-bottom: 1.75rem;
}

.my-8{
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.-mb-16{
  margin-bottom: -4rem;
}

.-mb-px{
  margin-bottom: -1px;
}

.-ml-1{
  margin-left: -0.25rem;
}

.-ml-2{
  margin-left: -0.5rem;
}

.-mr-1{
  margin-right: -0.25rem;
}

.-mr-32{
  margin-right: -8rem;
}

.-mt-10{
  margin-top: -2.5rem;
}

.-mt-12{
  margin-top: -3rem;
}

.-mt-24{
  margin-top: -6rem;
}

.-mt-32{
  margin-top: -8rem;
}

.-mt-4{
  margin-top: -1rem;
}

.-mt-8{
  margin-top: -2rem;
}

.mb-0{
  margin-bottom: 0px;
}

.mb-0\.5{
  margin-bottom: 0.125rem;
}

.mb-1{
  margin-bottom: 0.25rem;
}

.mb-1\.5{
  margin-bottom: 0.375rem;
}

.mb-10{
  margin-bottom: 2.5rem;
}

.mb-12{
  margin-bottom: 3rem;
}

.mb-16{
  margin-bottom: 4rem;
}

.mb-2{
  margin-bottom: 0.5rem;
}

.mb-3{
  margin-bottom: 0.75rem;
}

.mb-4{
  margin-bottom: 1rem;
}

.mb-5{
  margin-bottom: 1.25rem;
}

.mb-6{
  margin-bottom: 1.5rem;
}

.mb-8{
  margin-bottom: 2rem;
}

.me-1{
  margin-inline-end: 0.25rem;
}

.me-2{
  margin-inline-end: 0.5rem;
}

.me-3{
  margin-inline-end: 0.75rem;
}

.me-4{
  margin-inline-end: 1rem;
}

.me-5{
  margin-inline-end: 1.25rem;
}

.me-auto{
  margin-inline-end: auto;
}

.ml-0{
  margin-left: 0px;
}

.ml-1{
  margin-left: 0.25rem;
}

.ml-1\.5{
  margin-left: 0.375rem;
}

.ml-12{
  margin-left: 3rem;
}

.ml-2{
  margin-left: 0.5rem;
}

.ml-3{
  margin-left: 0.75rem;
}

.ml-4{
  margin-left: 1rem;
}

.ml-5{
  margin-left: 1.25rem;
}

.ml-6{
  margin-left: 1.5rem;
}

.ml-64{
  margin-left: 16rem;
}

.ml-8{
  margin-left: 2rem;
}

.ml-auto{
  margin-left: auto;
}

.mr-1{
  margin-right: 0.25rem;
}

.mr-1\.5{
  margin-right: 0.375rem;
}

.mr-2{
  margin-right: 0.5rem;
}

.mr-3{
  margin-right: 0.75rem;
}

.mr-4{
  margin-right: 1rem;
}

.mr-6{
  margin-right: 1.5rem;
}

.-ms-2{
  margin-inline-start: -0.5rem;
}

.ms-1{
  margin-inline-start: 0.25rem;
}

.ms-2{
  margin-inline-start: 0.5rem;
}

.ms-auto{
  margin-inline-start: auto;
}

.mt-0{
  margin-top: 0px;
}

.mt-0\.5{
  margin-top: 0.125rem;
}

.mt-1{
  margin-top: 0.25rem;
}

.mt-12{
  margin-top: 3rem;
}

.mt-14{
  margin-top: 3.5rem;
}

.mt-16{
  margin-top: 4rem;
}

.mt-2{
  margin-top: 0.5rem;
}

.mt-20{
  margin-top: 5rem;
}

.mt-3{
  margin-top: 0.75rem;
}

.mt-4{
  margin-top: 1rem;
}

.mt-5{
  margin-top: 1.25rem;
}

.mt-6{
  margin-top: 1.5rem;
}

.mt-7{
  margin-top: 1.75rem;
}

.mt-8{
  margin-top: 2rem;
}

.mt-auto{
  margin-top: auto;
}

.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;
}

.block{
  display: block;
}

.inline-block{
  display: inline-block;
}

.inline{
  display: inline;
}

.flex{
  display: flex;
}

.inline-flex{
  display: inline-flex;
}

.table{
  display: table;
}

.grid{
  display: grid;
}

.contents{
  display: contents;
}

.hidden{
  display: none;
}

.aspect-square{
  aspect-ratio: 1 / 1;
}

.aspect-video{
  aspect-ratio: 16 / 9;
}

.h-0{
  height: 0px;
}

.h-0\.5{
  height: 0.125rem;
}

.h-1{
  height: 0.25rem;
}

.h-1\.5{
  height: 0.375rem;
}

.h-10{
  height: 2.5rem;
}

.h-12{
  height: 3rem;
}

.h-14{
  height: 3.5rem;
}

.h-16{
  height: 4rem;
}

.h-2{
  height: 0.5rem;
}

.h-2\.5{
  height: 0.625rem;
}

.h-20{
  height: 5rem;
}

.h-24{
  height: 6rem;
}

.h-28{
  height: 7rem;
}

.h-3{
  height: 0.75rem;
}

.h-3\.5{
  height: 0.875rem;
}

.h-32{
  height: 8rem;
}

.h-36{
  height: 9rem;
}

.h-4{
  height: 1rem;
}

.h-40{
  height: 10rem;
}

.h-48{
  height: 12rem;
}

.h-5{
  height: 1.25rem;
}

.h-6{
  height: 1.5rem;
}

.h-64{
  height: 16rem;
}

.h-7{
  height: 1.75rem;
}

.h-72{
  height: 18rem;
}

.h-8{
  height: 2rem;
}

.h-80{
  height: 20rem;
}

.h-9{
  height: 2.25rem;
}

.h-96{
  height: 24rem;
}

.h-\[180px\]{
  height: 180px;
}

.h-\[2px\]{
  height: 2px;
}

.h-\[320px\]{
  height: 320px;
}

.h-\[550px\]{
  height: 550px;
}

.h-\[600px\]{
  height: 600px;
}

.h-\[60px\]{
  height: 60px;
}

.h-\[700px\]{
  height: 700px;
}

.h-\[95vh\]{
  height: 95vh;
}

.h-\[calc\(100vh-200px\)\]{
  height: calc(100vh - 200px);
}

.h-\[calc\(100vh-60px\)\]{
  height: calc(100vh - 60px);
}

.h-\[calc\(100vh-80px\)\]{
  height: calc(100vh - 80px);
}

.h-auto{
  height: auto;
}

.h-full{
  height: 100%;
}

.h-px{
  height: 1px;
}

.h-screen{
  height: 100vh;
}

.max-h-0{
  max-height: 0px;
}

.max-h-16{
  max-height: 4rem;
}

.max-h-32{
  max-height: 8rem;
}

.max-h-40{
  max-height: 10rem;
}

.max-h-48{
  max-height: 12rem;
}

.max-h-60{
  max-height: 15rem;
}

.max-h-64{
  max-height: 16rem;
}

.max-h-96{
  max-height: 24rem;
}

.max-h-\[600px\]{
  max-height: 600px;
}

.max-h-\[80vh\]{
  max-height: 80vh;
}

.max-h-\[90vh\]{
  max-height: 90vh;
}

.max-h-\[95vh\]{
  max-height: 95vh;
}

.max-h-\[calc\(100vh-300px\)\]{
  max-height: calc(100vh - 300px);
}

.max-h-\[calc\(90vh-200px\)\]{
  max-height: calc(90vh - 200px);
}

.max-h-\[calc\(95vh-200px\)\]{
  max-height: calc(95vh - 200px);
}

.max-h-full{
  max-height: 100%;
}

.max-h-none{
  max-height: none;
}

.min-h-0{
  min-height: 0px;
}

.min-h-\[100px\]{
  min-height: 100px;
}

.min-h-\[120px\]{
  min-height: 120px;
}

.min-h-\[300px\]{
  min-height: 300px;
}

.min-h-\[400px\]{
  min-height: 400px;
}

.min-h-\[800px\]{
  min-height: 800px;
}

.min-h-full{
  min-height: 100%;
}

.min-h-screen{
  min-height: 100vh;
}

.w-0{
  width: 0px;
}

.w-0\.5{
  width: 0.125rem;
}

.w-1{
  width: 0.25rem;
}

.w-1\.5{
  width: 0.375rem;
}

.w-1\/2{
  width: 50%;
}

.w-1\/3{
  width: 33.333333%;
}

.w-1\/4{
  width: 25%;
}

.w-10{
  width: 2.5rem;
}

.w-11{
  width: 2.75rem;
}

.w-12{
  width: 3rem;
}

.w-14{
  width: 3.5rem;
}

.w-16{
  width: 4rem;
}

.w-2{
  width: 0.5rem;
}

.w-2\.5{
  width: 0.625rem;
}

.w-2\/3{
  width: 66.666667%;
}

.w-2\/4{
  width: 50%;
}

.w-2\/5{
  width: 40%;
}

.w-20{
  width: 5rem;
}

.w-24{
  width: 6rem;
}

.w-28{
  width: 7rem;
}

.w-3{
  width: 0.75rem;
}

.w-3\.5{
  width: 0.875rem;
}

.w-3\/4{
  width: 75%;
}

.w-3\/5{
  width: 60%;
}

.w-32{
  width: 8rem;
}

.w-36{
  width: 9rem;
}

.w-4{
  width: 1rem;
}

.w-40{
  width: 10rem;
}

.w-48{
  width: 12rem;
}

.w-5{
  width: 1.25rem;
}

.w-5\/6{
  width: 83.333333%;
}

.w-6{
  width: 1.5rem;
}

.w-64{
  width: 16rem;
}

.w-7{
  width: 1.75rem;
}

.w-72{
  width: 18rem;
}

.w-8{
  width: 2rem;
}

.w-80{
  width: 20rem;
}

.w-9{
  width: 2.25rem;
}

.w-96{
  width: 24rem;
}

.w-\[480px\]{
  width: 480px;
}

.w-\[90vw\]{
  width: 90vw;
}

.w-\[95vw\]{
  width: 95vw;
}

.w-auto{
  width: auto;
}

.w-full{
  width: 100%;
}

.w-px{
  width: 1px;
}

.min-w-0{
  min-width: 0px;
}

.min-w-48{
  min-width: 12rem;
}

.min-w-5{
  min-width: 1.25rem;
}

.min-w-\[100px\]{
  min-width: 100px;
}

.min-w-\[120px\]{
  min-width: 120px;
}

.min-w-\[200px\]{
  min-width: 200px;
}

.min-w-\[20px\]{
  min-width: 20px;
}

.min-w-\[25px\]{
  min-width: 25px;
}

.min-w-\[30px\]{
  min-width: 30px;
}

.min-w-full{
  min-width: 100%;
}

.min-w-max{
  min-width: -moz-max-content;
  min-width: max-content;
}

.max-w-24{
  max-width: 6rem;
}

.max-w-2xl{
  max-width: 42rem;
}

.max-w-32{
  max-width: 8rem;
}

.max-w-3xl{
  max-width: 48rem;
}

.max-w-4xl{
  max-width: 56rem;
}

.max-w-5xl{
  max-width: 64rem;
}

.max-w-6xl{
  max-width: 72rem;
}

.max-w-7xl{
  max-width: 80rem;
}

.max-w-\[150px\]{
  max-width: 150px;
}

.max-w-\[1600px\]{
  max-width: 1600px;
}

.max-w-\[1920px\]{
  max-width: 1920px;
}

.max-w-\[200px\]{
  max-width: 200px;
}

.max-w-\[600px\]{
  max-width: 600px;
}

.max-w-\[70\%\]{
  max-width: 70%;
}

.max-w-\[75\%\]{
  max-width: 75%;
}

.max-w-\[85\%\]{
  max-width: 85%;
}

.max-w-full{
  max-width: 100%;
}

.max-w-lg{
  max-width: 32rem;
}

.max-w-md{
  max-width: 28rem;
}

.max-w-none{
  max-width: none;
}

.max-w-sm{
  max-width: 24rem;
}

.max-w-xs{
  max-width: 20rem;
}

.flex-1{
  flex: 1 1 0%;
}

.flex-shrink-0{
  flex-shrink: 0;
}

.shrink-0{
  flex-shrink: 0;
}

.flex-grow{
  flex-grow: 1;
}

.grow{
  flex-grow: 1;
}

.origin-left{
  transform-origin: left;
}

.-translate-x-1\/2{
  --tw-translate-x: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-translate-x-24{
  --tw-translate-x: -6rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-translate-x-4{
  --tw-translate-x: -1rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-translate-x-full{
  --tw-translate-x: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-translate-y-1\/2{
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-translate-y-32{
  --tw-translate-y: -8rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-translate-y-8{
  --tw-translate-y: -2rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-0{
  --tw-translate-x: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-0\.5{
  --tw-translate-x: 0.125rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-1{
  --tw-translate-x: 0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-1\/2{
  --tw-translate-x: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-32{
  --tw-translate-x: 8rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-4{
  --tw-translate-x: 1rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-5{
  --tw-translate-x: 1.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-6{
  --tw-translate-x: 1.5rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-7{
  --tw-translate-x: 1.75rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-x-8{
  --tw-translate-x: 2rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-0{
  --tw-translate-y: 0px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-24{
  --tw-translate-y: 6rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-4{
  --tw-translate-y: 1rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.translate-y-8{
  --tw-translate-y: 2rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-12{
  --tw-rotate: 12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-180{
  --tw-rotate: 180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-45{
  --tw-rotate: 45deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.rotate-90{
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.-skew-x-12{
  --tw-skew-x: -12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-100{
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-105{
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-110{
  --tw-scale-x: 1.1;
  --tw-scale-y: 1.1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-150{
  --tw-scale-x: 1.5;
  --tw-scale-y: 1.5;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-90{
  --tw-scale-x: .9;
  --tw-scale-y: .9;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-\[1\.02\]{
  --tw-scale-x: 1.02;
  --tw-scale-y: 1.02;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.scale-x-0{
  --tw-scale-x: 0;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.transform{
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@keyframes bounce{

  0%, 100%{
    transform: translateY(-25%);
    animation-timing-function: cubic-bezier(0.8,0,1,1);
  }

  50%{
    transform: none;
    animation-timing-function: cubic-bezier(0,0,0.2,1);
  }
}

.animate-bounce{
  animation: bounce 1s infinite;
}

@keyframes ping{

  75%, 100%{
    transform: scale(2);
    opacity: 0;
  }
}

.animate-ping{
  animation: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
}

@keyframes pulse{

  50%{
    opacity: .5;
  }
}

.animate-pulse{
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes spin{

  to{
    transform: rotate(360deg);
  }
}

.animate-spin{
  animation: spin 1s linear infinite;
}

.cursor-default{
  cursor: default;
}

.cursor-ew-resize{
  cursor: ew-resize;
}

.cursor-grab{
  cursor: grab;
}

.cursor-not-allowed{
  cursor: not-allowed;
}

.cursor-pointer{
  cursor: pointer;
}

.select-none{
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.resize-none{
  resize: none;
}

.resize{
  resize: both;
}

.list-inside{
  list-style-position: inside;
}

.list-decimal{
  list-style-type: decimal;
}

.list-disc{
  list-style-type: disc;
}

.appearance-none{
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.grid-cols-1{
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grid-cols-12{
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.grid-cols-2{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grid-cols-3{
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grid-cols-4{
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.grid-cols-6{
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.grid-cols-7{
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

.grid-cols-8{
  grid-template-columns: repeat(8, minmax(0, 1fr));
}

.grid-rows-6{
  grid-template-rows: repeat(6, minmax(0, 1fr));
}

.flex-row{
  flex-direction: row;
}

.flex-row-reverse{
  flex-direction: row-reverse;
}

.flex-col{
  flex-direction: column;
}

.flex-wrap{
  flex-wrap: wrap;
}

.items-start{
  align-items: flex-start;
}

.items-end{
  align-items: flex-end;
}

.items-center{
  align-items: center;
}

.items-baseline{
  align-items: baseline;
}

.justify-start{
  justify-content: flex-start;
}

.justify-end{
  justify-content: flex-end;
}

.justify-center{
  justify-content: center;
}

.justify-between{
  justify-content: space-between;
}

.justify-around{
  justify-content: space-around;
}

.gap-0\.5{
  gap: 0.125rem;
}

.gap-1{
  gap: 0.25rem;
}

.gap-1\.5{
  gap: 0.375rem;
}

.gap-2{
  gap: 0.5rem;
}

.gap-3{
  gap: 0.75rem;
}

.gap-4{
  gap: 1rem;
}

.gap-5{
  gap: 1.25rem;
}

.gap-6{
  gap: 1.5rem;
}

.gap-8{
  gap: 2rem;
}

.gap-x-3{
  -moz-column-gap: 0.75rem;
       column-gap: 0.75rem;
}

.gap-x-4{
  -moz-column-gap: 1rem;
       column-gap: 1rem;
}

.gap-x-6{
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}

.gap-y-1{
  row-gap: 0.25rem;
}

.gap-y-5{
  row-gap: 1.25rem;
}

.space-x-0\.5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-x-reverse: 0;
  margin-right: calc(0.125rem * var(--tw-space-x-reverse));
  margin-left: calc(0.125rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-1 > :not([hidden]) ~ :not([hidden]){
  --tw-space-x-reverse: 0;
  margin-right: calc(0.25rem * var(--tw-space-x-reverse));
  margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-1\.5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-x-reverse: 0;
  margin-right: calc(0.375rem * var(--tw-space-x-reverse));
  margin-left: calc(0.375rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-2 > :not([hidden]) ~ :not([hidden]){
  --tw-space-x-reverse: 0;
  margin-right: calc(0.5rem * var(--tw-space-x-reverse));
  margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-3 > :not([hidden]) ~ :not([hidden]){
  --tw-space-x-reverse: 0;
  margin-right: calc(0.75rem * var(--tw-space-x-reverse));
  margin-left: calc(0.75rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-4 > :not([hidden]) ~ :not([hidden]){
  --tw-space-x-reverse: 0;
  margin-right: calc(1rem * var(--tw-space-x-reverse));
  margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-x-reverse: 0;
  margin-right: calc(1.25rem * var(--tw-space-x-reverse));
  margin-left: calc(1.25rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-6 > :not([hidden]) ~ :not([hidden]){
  --tw-space-x-reverse: 0;
  margin-right: calc(1.5rem * var(--tw-space-x-reverse));
  margin-left: calc(1.5rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-x-8 > :not([hidden]) ~ :not([hidden]){
  --tw-space-x-reverse: 0;
  margin-right: calc(2rem * var(--tw-space-x-reverse));
  margin-left: calc(2rem * calc(1 - var(--tw-space-x-reverse)));
}

.space-y-0\.5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.125rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.125rem * var(--tw-space-y-reverse));
}

.space-y-1 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));
}

.space-y-1\.5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.375rem * var(--tw-space-y-reverse));
}

.space-y-12 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(3rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(3rem * var(--tw-space-y-reverse));
}

.space-y-2 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.5rem * var(--tw-space-y-reverse));
}

.space-y-2\.5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.625rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.625rem * var(--tw-space-y-reverse));
}

.space-y-3 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(0.75rem * var(--tw-space-y-reverse));
}

.space-y-4 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1rem * var(--tw-space-y-reverse));
}

.space-y-5 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.25rem * var(--tw-space-y-reverse));
}

.space-y-6 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));
}

.space-y-8 > :not([hidden]) ~ :not([hidden]){
  --tw-space-y-reverse: 0;
  margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse)));
  margin-bottom: calc(2rem * var(--tw-space-y-reverse));
}

.divide-y > :not([hidden]) ~ :not([hidden]){
  --tw-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
}

.divide-gray-100 > :not([hidden]) ~ :not([hidden]){
  --tw-divide-opacity: 1;
  border-color: rgb(243 244 246 / var(--tw-divide-opacity, 1));
}

.divide-gray-200 > :not([hidden]) ~ :not([hidden]){
  --tw-divide-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-divide-opacity, 1));
}

.self-end{
  align-self: flex-end;
}

.overflow-auto{
  overflow: auto;
}

.overflow-hidden{
  overflow: hidden;
}

.overflow-x-auto{
  overflow-x: auto;
}

.overflow-y-auto{
  overflow-y: auto;
}

.scroll-smooth{
  scroll-behavior: smooth;
}

.truncate{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.whitespace-nowrap{
  white-space: nowrap;
}

.whitespace-pre-line{
  white-space: pre-line;
}

.whitespace-pre-wrap{
  white-space: pre-wrap;
}

.break-all{
  word-break: break-all;
}

.rounded{
  border-radius: 0.25rem;
}

.rounded-2xl{
  border-radius: 1rem;
}

.rounded-3xl{
  border-radius: 1.5rem;
}

.rounded-full{
  border-radius: 9999px;
}

.rounded-lg{
  border-radius: 0.5rem;
}

.rounded-md{
  border-radius: 0.375rem;
}

.rounded-none{
  border-radius: 0px;
}

.rounded-sm{
  border-radius: 0.125rem;
}

.rounded-xl{
  border-radius: 0.75rem;
}

.rounded-b-2xl{
  border-bottom-right-radius: 1rem;
  border-bottom-left-radius: 1rem;
}

.rounded-b-3xl{
  border-bottom-right-radius: 1.5rem;
  border-bottom-left-radius: 1.5rem;
}

.rounded-b-lg{
  border-bottom-right-radius: 0.5rem;
  border-bottom-left-radius: 0.5rem;
}

.rounded-b-md{
  border-bottom-right-radius: 0.375rem;
  border-bottom-left-radius: 0.375rem;
}

.rounded-b-xl{
  border-bottom-right-radius: 0.75rem;
  border-bottom-left-radius: 0.75rem;
}

.rounded-e-lg{
  border-start-end-radius: 0.5rem;
  border-end-end-radius: 0.5rem;
}

.rounded-l-lg{
  border-top-left-radius: 0.5rem;
  border-bottom-left-radius: 0.5rem;
}

.rounded-l-md{
  border-top-left-radius: 0.375rem;
  border-bottom-left-radius: 0.375rem;
}

.rounded-r{
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.rounded-r-lg{
  border-top-right-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}

.rounded-r-md{
  border-top-right-radius: 0.375rem;
  border-bottom-right-radius: 0.375rem;
}

.rounded-r-xl{
  border-top-right-radius: 0.75rem;
  border-bottom-right-radius: 0.75rem;
}

.rounded-s-lg{
  border-start-start-radius: 0.5rem;
  border-end-start-radius: 0.5rem;
}

.rounded-t-2xl{
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
}

.rounded-t-3xl{
  border-top-left-radius: 1.5rem;
  border-top-right-radius: 1.5rem;
}

.rounded-t-lg{
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
}

.rounded-t-md{
  border-top-left-radius: 0.375rem;
  border-top-right-radius: 0.375rem;
}

.rounded-bl-md{
  border-bottom-left-radius: 0.375rem;
}

.rounded-bl-none{
  border-bottom-left-radius: 0px;
}

.rounded-br-md{
  border-bottom-right-radius: 0.375rem;
}

.rounded-br-none{
  border-bottom-right-radius: 0px;
}

.rounded-tl-md{
  border-top-left-radius: 0.375rem;
}

.border{
  border-width: 1px;
}

.border-0{
  border-width: 0px;
}

.border-2{
  border-width: 2px;
}

.border-4{
  border-width: 4px;
}

.border-b{
  border-bottom-width: 1px;
}

.border-b-2{
  border-bottom-width: 2px;
}

.border-b-4{
  border-bottom-width: 4px;
}

.border-l{
  border-left-width: 1px;
}

.border-l-0{
  border-left-width: 0px;
}

.border-l-2{
  border-left-width: 2px;
}

.border-l-4{
  border-left-width: 4px;
}

.border-r{
  border-right-width: 1px;
}

.border-r-4{
  border-right-width: 4px;
}

.border-t{
  border-top-width: 1px;
}

.border-t-2{
  border-top-width: 2px;
}

.border-t-4{
  border-top-width: 4px;
}

.border-solid{
  border-style: solid;
}

.border-dashed{
  border-style: dashed;
}

.border-none{
  border-style: none;
}

.border-amber-100{
  --tw-border-opacity: 1;
  border-color: rgb(254 243 199 / var(--tw-border-opacity, 1));
}

.border-amber-200{
  --tw-border-opacity: 1;
  border-color: rgb(253 230 138 / var(--tw-border-opacity, 1));
}

.border-amber-300{
  --tw-border-opacity: 1;
  border-color: rgb(252 211 77 / var(--tw-border-opacity, 1));
}

.border-amber-500{
  --tw-border-opacity: 1;
  border-color: rgb(245 158 11 / var(--tw-border-opacity, 1));
}

.border-amber-600{
  --tw-border-opacity: 1;
  border-color: rgb(217 119 6 / var(--tw-border-opacity, 1));
}

.border-black{
  --tw-border-opacity: 1;
  border-color: rgb(0 0 0 / var(--tw-border-opacity, 1));
}

.border-blue-100{
  --tw-border-opacity: 1;
  border-color: rgb(225 239 254 / var(--tw-border-opacity, 1));
}

.border-blue-200{
  --tw-border-opacity: 1;
  border-color: rgb(195 221 253 / var(--tw-border-opacity, 1));
}

.border-blue-300{
  --tw-border-opacity: 1;
  border-color: rgb(164 202 254 / var(--tw-border-opacity, 1));
}

.border-blue-400{
  --tw-border-opacity: 1;
  border-color: rgb(118 169 250 / var(--tw-border-opacity, 1));
}

.border-blue-500{
  --tw-border-opacity: 1;
  border-color: rgb(63 131 248 / var(--tw-border-opacity, 1));
}

.border-blue-600{
  --tw-border-opacity: 1;
  border-color: rgb(28 100 242 / var(--tw-border-opacity, 1));
}

.border-blue-700{
  --tw-border-opacity: 1;
  border-color: rgb(26 86 219 / var(--tw-border-opacity, 1));
}

.border-cyan-100{
  --tw-border-opacity: 1;
  border-color: rgb(207 250 254 / var(--tw-border-opacity, 1));
}

.border-cyan-200{
  --tw-border-opacity: 1;
  border-color: rgb(165 243 252 / var(--tw-border-opacity, 1));
}

.border-emerald-100{
  --tw-border-opacity: 1;
  border-color: rgb(209 250 229 / var(--tw-border-opacity, 1));
}

.border-emerald-200{
  --tw-border-opacity: 1;
  border-color: rgb(167 243 208 / var(--tw-border-opacity, 1));
}

.border-emerald-300{
  --tw-border-opacity: 1;
  border-color: rgb(110 231 183 / var(--tw-border-opacity, 1));
}

.border-emerald-500{
  --tw-border-opacity: 1;
  border-color: rgb(16 185 129 / var(--tw-border-opacity, 1));
}

.border-emerald-600{
  --tw-border-opacity: 1;
  border-color: rgb(5 150 105 / var(--tw-border-opacity, 1));
}

.border-gray-100{
  --tw-border-opacity: 1;
  border-color: rgb(243 244 246 / var(--tw-border-opacity, 1));
}

.border-gray-100\/50{
  border-color: rgb(243 244 246 / 0.5);
}

.border-gray-200{
  --tw-border-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-border-opacity, 1));
}

.border-gray-200\/50{
  border-color: rgb(229 231 235 / 0.5);
}

.border-gray-300{
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}

.border-gray-400{
  --tw-border-opacity: 1;
  border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));
}

.border-gray-50{
  --tw-border-opacity: 1;
  border-color: rgb(249 250 251 / var(--tw-border-opacity, 1));
}

.border-gray-500{
  --tw-border-opacity: 1;
  border-color: rgb(107 114 128 / var(--tw-border-opacity, 1));
}

.border-gray-700{
  --tw-border-opacity: 1;
  border-color: rgb(55 65 81 / var(--tw-border-opacity, 1));
}

.border-gray-800{
  --tw-border-opacity: 1;
  border-color: rgb(31 41 55 / var(--tw-border-opacity, 1));
}

.border-gray-900{
  --tw-border-opacity: 1;
  border-color: rgb(17 24 39 / var(--tw-border-opacity, 1));
}

.border-green-100{
  --tw-border-opacity: 1;
  border-color: rgb(222 247 236 / var(--tw-border-opacity, 1));
}

.border-green-200{
  --tw-border-opacity: 1;
  border-color: rgb(188 240 218 / var(--tw-border-opacity, 1));
}

.border-green-300{
  --tw-border-opacity: 1;
  border-color: rgb(132 225 188 / var(--tw-border-opacity, 1));
}

.border-green-400{
  --tw-border-opacity: 1;
  border-color: rgb(49 196 141 / var(--tw-border-opacity, 1));
}

.border-green-50{
  --tw-border-opacity: 1;
  border-color: rgb(243 250 247 / var(--tw-border-opacity, 1));
}

.border-green-500{
  --tw-border-opacity: 1;
  border-color: rgb(14 159 110 / var(--tw-border-opacity, 1));
}

.border-green-600{
  --tw-border-opacity: 1;
  border-color: rgb(5 122 85 / var(--tw-border-opacity, 1));
}

.border-indigo-100{
  --tw-border-opacity: 1;
  border-color: rgb(229 237 255 / var(--tw-border-opacity, 1));
}

.border-indigo-200{
  --tw-border-opacity: 1;
  border-color: rgb(205 219 254 / var(--tw-border-opacity, 1));
}

.border-indigo-400{
  --tw-border-opacity: 1;
  border-color: rgb(141 162 251 / var(--tw-border-opacity, 1));
}

.border-indigo-500{
  --tw-border-opacity: 1;
  border-color: rgb(104 117 245 / var(--tw-border-opacity, 1));
}

.border-orange-100{
  --tw-border-opacity: 1;
  border-color: rgb(254 236 220 / var(--tw-border-opacity, 1));
}

.border-orange-200{
  --tw-border-opacity: 1;
  border-color: rgb(252 217 189 / var(--tw-border-opacity, 1));
}

.border-orange-300{
  --tw-border-opacity: 1;
  border-color: rgb(253 186 140 / var(--tw-border-opacity, 1));
}

.border-orange-400{
  --tw-border-opacity: 1;
  border-color: rgb(255 138 76 / var(--tw-border-opacity, 1));
}

.border-orange-500{
  --tw-border-opacity: 1;
  border-color: rgb(255 90 31 / var(--tw-border-opacity, 1));
}

.border-orange-600{
  --tw-border-opacity: 1;
  border-color: rgb(208 56 1 / var(--tw-border-opacity, 1));
}

.border-pink-200{
  --tw-border-opacity: 1;
  border-color: rgb(250 209 232 / var(--tw-border-opacity, 1));
}

.border-purple-100{
  --tw-border-opacity: 1;
  border-color: rgb(237 235 254 / var(--tw-border-opacity, 1));
}

.border-purple-200{
  --tw-border-opacity: 1;
  border-color: rgb(220 215 254 / var(--tw-border-opacity, 1));
}

.border-purple-300{
  --tw-border-opacity: 1;
  border-color: rgb(202 191 253 / var(--tw-border-opacity, 1));
}

.border-purple-400{
  --tw-border-opacity: 1;
  border-color: rgb(172 148 250 / var(--tw-border-opacity, 1));
}

.border-purple-500{
  --tw-border-opacity: 1;
  border-color: rgb(144 97 249 / var(--tw-border-opacity, 1));
}

.border-purple-600{
  --tw-border-opacity: 1;
  border-color: rgb(126 58 242 / var(--tw-border-opacity, 1));
}

.border-red-100{
  --tw-border-opacity: 1;
  border-color: rgb(253 232 232 / var(--tw-border-opacity, 1));
}

.border-red-200{
  --tw-border-opacity: 1;
  border-color: rgb(251 213 213 / var(--tw-border-opacity, 1));
}

.border-red-300{
  --tw-border-opacity: 1;
  border-color: rgb(248 180 180 / var(--tw-border-opacity, 1));
}

.border-red-400{
  --tw-border-opacity: 1;
  border-color: rgb(249 128 128 / var(--tw-border-opacity, 1));
}

.border-red-500{
  --tw-border-opacity: 1;
  border-color: rgb(240 82 82 / var(--tw-border-opacity, 1));
}

.border-red-600{
  --tw-border-opacity: 1;
  border-color: rgb(224 36 36 / var(--tw-border-opacity, 1));
}

.border-red-700{
  --tw-border-opacity: 1;
  border-color: rgb(200 30 30 / var(--tw-border-opacity, 1));
}

.border-rose-100{
  --tw-border-opacity: 1;
  border-color: rgb(255 228 230 / var(--tw-border-opacity, 1));
}

.border-slate-100{
  --tw-border-opacity: 1;
  border-color: rgb(241 245 249 / var(--tw-border-opacity, 1));
}

.border-slate-200{
  --tw-border-opacity: 1;
  border-color: rgb(226 232 240 / var(--tw-border-opacity, 1));
}

.border-slate-200\/50{
  border-color: rgb(226 232 240 / 0.5);
}

.border-slate-200\/60{
  border-color: rgb(226 232 240 / 0.6);
}

.border-slate-300{
  --tw-border-opacity: 1;
  border-color: rgb(203 213 225 / var(--tw-border-opacity, 1));
}

.border-slate-50{
  --tw-border-opacity: 1;
  border-color: rgb(248 250 252 / var(--tw-border-opacity, 1));
}

.border-slate-700\/50{
  border-color: rgb(51 65 85 / 0.5);
}

.border-slate-900{
  --tw-border-opacity: 1;
  border-color: rgb(15 23 42 / var(--tw-border-opacity, 1));
}

.border-teal-100{
  --tw-border-opacity: 1;
  border-color: rgb(213 245 246 / var(--tw-border-opacity, 1));
}

.border-teal-500{
  --tw-border-opacity: 1;
  border-color: rgb(6 148 162 / var(--tw-border-opacity, 1));
}

.border-transparent{
  border-color: transparent;
}

.border-violet-100{
  --tw-border-opacity: 1;
  border-color: rgb(237 233 254 / var(--tw-border-opacity, 1));
}

.border-violet-200{
  --tw-border-opacity: 1;
  border-color: rgb(221 214 254 / var(--tw-border-opacity, 1));
}

.border-white{
  --tw-border-opacity: 1;
  border-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}

.border-white\/10{
  border-color: rgb(255 255 255 / 0.1);
}

.border-white\/20{
  border-color: rgb(255 255 255 / 0.2);
}

.border-white\/30{
  border-color: rgb(255 255 255 / 0.3);
}

.border-white\/5{
  border-color: rgb(255 255 255 / 0.05);
}

.border-white\/50{
  border-color: rgb(255 255 255 / 0.5);
}

.border-yellow-200{
  --tw-border-opacity: 1;
  border-color: rgb(252 233 106 / var(--tw-border-opacity, 1));
}

.border-yellow-300{
  --tw-border-opacity: 1;
  border-color: rgb(250 202 21 / var(--tw-border-opacity, 1));
}

.border-yellow-400{
  --tw-border-opacity: 1;
  border-color: rgb(227 160 8 / var(--tw-border-opacity, 1));
}

.border-yellow-500{
  --tw-border-opacity: 1;
  border-color: rgb(194 120 3 / var(--tw-border-opacity, 1));
}

.border-yellow-600{
  --tw-border-opacity: 1;
  border-color: rgb(159 88 10 / var(--tw-border-opacity, 1));
}

.border-l-blue-500{
  --tw-border-opacity: 1;
  border-left-color: rgb(63 131 248 / var(--tw-border-opacity, 1));
}

.border-l-gray-400{
  --tw-border-opacity: 1;
  border-left-color: rgb(156 163 175 / var(--tw-border-opacity, 1));
}

.border-l-purple-500{
  --tw-border-opacity: 1;
  border-left-color: rgb(144 97 249 / var(--tw-border-opacity, 1));
}

.border-l-red-500{
  --tw-border-opacity: 1;
  border-left-color: rgb(240 82 82 / var(--tw-border-opacity, 1));
}

.border-l-yellow-500{
  --tw-border-opacity: 1;
  border-left-color: rgb(194 120 3 / var(--tw-border-opacity, 1));
}

.border-t-blue-500{
  --tw-border-opacity: 1;
  border-top-color: rgb(63 131 248 / var(--tw-border-opacity, 1));
}

.border-t-blue-600{
  --tw-border-opacity: 1;
  border-top-color: rgb(28 100 242 / var(--tw-border-opacity, 1));
}

.border-t-emerald-500{
  --tw-border-opacity: 1;
  border-top-color: rgb(16 185 129 / var(--tw-border-opacity, 1));
}

.border-t-green-500{
  --tw-border-opacity: 1;
  border-top-color: rgb(14 159 110 / var(--tw-border-opacity, 1));
}

.border-t-slate-600{
  --tw-border-opacity: 1;
  border-top-color: rgb(71 85 105 / var(--tw-border-opacity, 1));
}

.border-t-slate-800{
  --tw-border-opacity: 1;
  border-top-color: rgb(30 41 59 / var(--tw-border-opacity, 1));
}

.border-t-transparent{
  border-top-color: transparent;
}

.border-t-white{
  --tw-border-opacity: 1;
  border-top-color: rgb(255 255 255 / var(--tw-border-opacity, 1));
}

.border-opacity-20{
  --tw-border-opacity: 0.2;
}

.\!bg-gray-50{
  --tw-bg-opacity: 1 !important;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1)) !important;
}

.bg-amber-100{
  --tw-bg-opacity: 1;
  background-color: rgb(254 243 199 / var(--tw-bg-opacity, 1));
}

.bg-amber-200{
  --tw-bg-opacity: 1;
  background-color: rgb(253 230 138 / var(--tw-bg-opacity, 1));
}

.bg-amber-50{
  --tw-bg-opacity: 1;
  background-color: rgb(255 251 235 / var(--tw-bg-opacity, 1));
}

.bg-amber-50\/30{
  background-color: rgb(255 251 235 / 0.3);
}

.bg-amber-500{
  --tw-bg-opacity: 1;
  background-color: rgb(245 158 11 / var(--tw-bg-opacity, 1));
}

.bg-amber-600{
  --tw-bg-opacity: 1;
  background-color: rgb(217 119 6 / var(--tw-bg-opacity, 1));
}

.bg-black{
  --tw-bg-opacity: 1;
  background-color: rgb(0 0 0 / var(--tw-bg-opacity, 1));
}

.bg-black\/0{
  background-color: rgb(0 0 0 / 0);
}

.bg-black\/20{
  background-color: rgb(0 0 0 / 0.2);
}

.bg-black\/30{
  background-color: rgb(0 0 0 / 0.3);
}

.bg-black\/40{
  background-color: rgb(0 0 0 / 0.4);
}

.bg-black\/50{
  background-color: rgb(0 0 0 / 0.5);
}

.bg-black\/60{
  background-color: rgb(0 0 0 / 0.6);
}

.bg-black\/70{
  background-color: rgb(0 0 0 / 0.7);
}

.bg-black\/80{
  background-color: rgb(0 0 0 / 0.8);
}

.bg-black\/95{
  background-color: rgb(0 0 0 / 0.95);
}

.bg-blue-100{
  --tw-bg-opacity: 1;
  background-color: rgb(225 239 254 / var(--tw-bg-opacity, 1));
}

.bg-blue-200{
  --tw-bg-opacity: 1;
  background-color: rgb(195 221 253 / var(--tw-bg-opacity, 1));
}

.bg-blue-300{
  --tw-bg-opacity: 1;
  background-color: rgb(164 202 254 / var(--tw-bg-opacity, 1));
}

.bg-blue-400{
  --tw-bg-opacity: 1;
  background-color: rgb(118 169 250 / var(--tw-bg-opacity, 1));
}

.bg-blue-50{
  --tw-bg-opacity: 1;
  background-color: rgb(235 245 255 / var(--tw-bg-opacity, 1));
}

.bg-blue-50\/30{
  background-color: rgb(235 245 255 / 0.3);
}

.bg-blue-50\/50{
  background-color: rgb(235 245 255 / 0.5);
}

.bg-blue-50\/80{
  background-color: rgb(235 245 255 / 0.8);
}

.bg-blue-500{
  --tw-bg-opacity: 1;
  background-color: rgb(63 131 248 / var(--tw-bg-opacity, 1));
}

.bg-blue-500\/20{
  background-color: rgb(63 131 248 / 0.2);
}

.bg-blue-500\/90{
  background-color: rgb(63 131 248 / 0.9);
}

.bg-blue-600{
  --tw-bg-opacity: 1;
  background-color: rgb(28 100 242 / var(--tw-bg-opacity, 1));
}

.bg-blue-900\/20{
  background-color: rgb(35 56 118 / 0.2);
}

.bg-current{
  background-color: currentColor;
}

.bg-cyan-100{
  --tw-bg-opacity: 1;
  background-color: rgb(207 250 254 / var(--tw-bg-opacity, 1));
}

.bg-cyan-50{
  --tw-bg-opacity: 1;
  background-color: rgb(236 254 255 / var(--tw-bg-opacity, 1));
}

.bg-destructive{
  background-color: hsl(var(--destructive));
}

.bg-emerald-100{
  --tw-bg-opacity: 1;
  background-color: rgb(209 250 229 / var(--tw-bg-opacity, 1));
}

.bg-emerald-200{
  --tw-bg-opacity: 1;
  background-color: rgb(167 243 208 / var(--tw-bg-opacity, 1));
}

.bg-emerald-400{
  --tw-bg-opacity: 1;
  background-color: rgb(52 211 153 / var(--tw-bg-opacity, 1));
}

.bg-emerald-50{
  --tw-bg-opacity: 1;
  background-color: rgb(236 253 245 / var(--tw-bg-opacity, 1));
}

.bg-emerald-50\/50{
  background-color: rgb(236 253 245 / 0.5);
}

.bg-emerald-50\/80{
  background-color: rgb(236 253 245 / 0.8);
}

.bg-emerald-500{
  --tw-bg-opacity: 1;
  background-color: rgb(16 185 129 / var(--tw-bg-opacity, 1));
}

.bg-emerald-600{
  --tw-bg-opacity: 1;
  background-color: rgb(5 150 105 / var(--tw-bg-opacity, 1));
}

.bg-emerald-900\/20{
  background-color: rgb(6 78 59 / 0.2);
}

.bg-gray-100{
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}

.bg-gray-200{
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}

.bg-gray-300{
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}

.bg-gray-400{
  --tw-bg-opacity: 1;
  background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));
}

.bg-gray-50{
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}

.bg-gray-500{
  --tw-bg-opacity: 1;
  background-color: rgb(107 114 128 / var(--tw-bg-opacity, 1));
}

.bg-gray-600{
  --tw-bg-opacity: 1;
  background-color: rgb(75 85 99 / var(--tw-bg-opacity, 1));
}

.bg-gray-700{
  --tw-bg-opacity: 1;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
}

.bg-gray-800{
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
}

.bg-gray-900{
  --tw-bg-opacity: 1;
  background-color: rgb(17 24 39 / var(--tw-bg-opacity, 1));
}

.bg-green-100{
  --tw-bg-opacity: 1;
  background-color: rgb(222 247 236 / var(--tw-bg-opacity, 1));
}

.bg-green-200{
  --tw-bg-opacity: 1;
  background-color: rgb(188 240 218 / var(--tw-bg-opacity, 1));
}

.bg-green-300{
  --tw-bg-opacity: 1;
  background-color: rgb(132 225 188 / var(--tw-bg-opacity, 1));
}

.bg-green-400{
  --tw-bg-opacity: 1;
  background-color: rgb(49 196 141 / var(--tw-bg-opacity, 1));
}

.bg-green-50{
  --tw-bg-opacity: 1;
  background-color: rgb(243 250 247 / var(--tw-bg-opacity, 1));
}

.bg-green-50\/50{
  background-color: rgb(243 250 247 / 0.5);
}

.bg-green-50\/80{
  background-color: rgb(243 250 247 / 0.8);
}

.bg-green-500{
  --tw-bg-opacity: 1;
  background-color: rgb(14 159 110 / var(--tw-bg-opacity, 1));
}

.bg-green-600{
  --tw-bg-opacity: 1;
  background-color: rgb(5 122 85 / var(--tw-bg-opacity, 1));
}

.bg-green-900{
  --tw-bg-opacity: 1;
  background-color: rgb(1 71 55 / var(--tw-bg-opacity, 1));
}

.bg-indigo-100{
  --tw-bg-opacity: 1;
  background-color: rgb(229 237 255 / var(--tw-bg-opacity, 1));
}

.bg-indigo-50{
  --tw-bg-opacity: 1;
  background-color: rgb(240 245 255 / var(--tw-bg-opacity, 1));
}

.bg-indigo-50\/30{
  background-color: rgb(240 245 255 / 0.3);
}

.bg-indigo-500{
  --tw-bg-opacity: 1;
  background-color: rgb(104 117 245 / var(--tw-bg-opacity, 1));
}

.bg-indigo-600{
  --tw-bg-opacity: 1;
  background-color: rgb(88 80 236 / var(--tw-bg-opacity, 1));
}

.bg-orange-100{
  --tw-bg-opacity: 1;
  background-color: rgb(254 236 220 / var(--tw-bg-opacity, 1));
}

.bg-orange-200{
  --tw-bg-opacity: 1;
  background-color: rgb(252 217 189 / var(--tw-bg-opacity, 1));
}

.bg-orange-300{
  --tw-bg-opacity: 1;
  background-color: rgb(253 186 140 / var(--tw-bg-opacity, 1));
}

.bg-orange-400{
  --tw-bg-opacity: 1;
  background-color: rgb(255 138 76 / var(--tw-bg-opacity, 1));
}

.bg-orange-50{
  --tw-bg-opacity: 1;
  background-color: rgb(255 248 241 / var(--tw-bg-opacity, 1));
}

.bg-orange-50\/50{
  background-color: rgb(255 248 241 / 0.5);
}

.bg-orange-500{
  --tw-bg-opacity: 1;
  background-color: rgb(255 90 31 / var(--tw-bg-opacity, 1));
}

.bg-orange-600{
  --tw-bg-opacity: 1;
  background-color: rgb(208 56 1 / var(--tw-bg-opacity, 1));
}

.bg-orange-900\/20{
  background-color: rgb(119 29 29 / 0.2);
}

.bg-pink-100{
  --tw-bg-opacity: 1;
  background-color: rgb(252 232 243 / var(--tw-bg-opacity, 1));
}

.bg-pink-50{
  --tw-bg-opacity: 1;
  background-color: rgb(253 242 248 / var(--tw-bg-opacity, 1));
}

.bg-pink-500{
  --tw-bg-opacity: 1;
  background-color: rgb(231 70 148 / var(--tw-bg-opacity, 1));
}

.bg-primary{
  background-color: hsl(var(--primary));
}

.bg-purple-100{
  --tw-bg-opacity: 1;
  background-color: rgb(237 235 254 / var(--tw-bg-opacity, 1));
}

.bg-purple-200{
  --tw-bg-opacity: 1;
  background-color: rgb(220 215 254 / var(--tw-bg-opacity, 1));
}

.bg-purple-300{
  --tw-bg-opacity: 1;
  background-color: rgb(202 191 253 / var(--tw-bg-opacity, 1));
}

.bg-purple-50{
  --tw-bg-opacity: 1;
  background-color: rgb(246 245 255 / var(--tw-bg-opacity, 1));
}

.bg-purple-50\/30{
  background-color: rgb(246 245 255 / 0.3);
}

.bg-purple-50\/50{
  background-color: rgb(246 245 255 / 0.5);
}

.bg-purple-50\/80{
  background-color: rgb(246 245 255 / 0.8);
}

.bg-purple-500{
  --tw-bg-opacity: 1;
  background-color: rgb(144 97 249 / var(--tw-bg-opacity, 1));
}

.bg-purple-600{
  --tw-bg-opacity: 1;
  background-color: rgb(126 58 242 / var(--tw-bg-opacity, 1));
}

.bg-purple-700{
  --tw-bg-opacity: 1;
  background-color: rgb(108 43 217 / var(--tw-bg-opacity, 1));
}

.bg-red-100{
  --tw-bg-opacity: 1;
  background-color: rgb(253 232 232 / var(--tw-bg-opacity, 1));
}

.bg-red-200{
  --tw-bg-opacity: 1;
  background-color: rgb(251 213 213 / var(--tw-bg-opacity, 1));
}

.bg-red-400{
  --tw-bg-opacity: 1;
  background-color: rgb(249 128 128 / var(--tw-bg-opacity, 1));
}

.bg-red-50{
  --tw-bg-opacity: 1;
  background-color: rgb(253 242 242 / var(--tw-bg-opacity, 1));
}

.bg-red-50\/50{
  background-color: rgb(253 242 242 / 0.5);
}

.bg-red-50\/80{
  background-color: rgb(253 242 242 / 0.8);
}

.bg-red-500{
  --tw-bg-opacity: 1;
  background-color: rgb(240 82 82 / var(--tw-bg-opacity, 1));
}

.bg-red-600{
  --tw-bg-opacity: 1;
  background-color: rgb(224 36 36 / var(--tw-bg-opacity, 1));
}

.bg-red-700{
  --tw-bg-opacity: 1;
  background-color: rgb(200 30 30 / var(--tw-bg-opacity, 1));
}

.bg-red-900{
  --tw-bg-opacity: 1;
  background-color: rgb(119 29 29 / var(--tw-bg-opacity, 1));
}

.bg-red-900\/20{
  background-color: rgb(119 29 29 / 0.2);
}

.bg-red-900\/30{
  background-color: rgb(119 29 29 / 0.3);
}

.bg-rose-50{
  --tw-bg-opacity: 1;
  background-color: rgb(255 241 242 / var(--tw-bg-opacity, 1));
}

.bg-secondary{
  background-color: hsl(var(--secondary));
}

.bg-slate-100{
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
}

.bg-slate-100\/80{
  background-color: rgb(241 245 249 / 0.8);
}

.bg-slate-200{
  --tw-bg-opacity: 1;
  background-color: rgb(226 232 240 / var(--tw-bg-opacity, 1));
}

.bg-slate-200\/50{
  background-color: rgb(226 232 240 / 0.5);
}

.bg-slate-300{
  --tw-bg-opacity: 1;
  background-color: rgb(203 213 225 / var(--tw-bg-opacity, 1));
}

.bg-slate-400{
  --tw-bg-opacity: 1;
  background-color: rgb(148 163 184 / var(--tw-bg-opacity, 1));
}

.bg-slate-50{
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
}

.bg-slate-50\/50{
  background-color: rgb(248 250 252 / 0.5);
}

.bg-slate-600{
  --tw-bg-opacity: 1;
  background-color: rgb(71 85 105 / var(--tw-bg-opacity, 1));
}

.bg-slate-700{
  --tw-bg-opacity: 1;
  background-color: rgb(51 65 85 / var(--tw-bg-opacity, 1));
}

.bg-slate-800{
  --tw-bg-opacity: 1;
  background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));
}

.bg-slate-900{
  --tw-bg-opacity: 1;
  background-color: rgb(15 23 42 / var(--tw-bg-opacity, 1));
}

.bg-slate-900\/50{
  background-color: rgb(15 23 42 / 0.5);
}

.bg-slate-900\/60{
  background-color: rgb(15 23 42 / 0.6);
}

.bg-slate-900\/70{
  background-color: rgb(15 23 42 / 0.7);
}

.bg-slate-950\/50{
  background-color: rgb(2 6 23 / 0.5);
}

.bg-teal-100{
  --tw-bg-opacity: 1;
  background-color: rgb(213 245 246 / var(--tw-bg-opacity, 1));
}

.bg-teal-50{
  --tw-bg-opacity: 1;
  background-color: rgb(237 250 250 / var(--tw-bg-opacity, 1));
}

.bg-teal-50\/30{
  background-color: rgb(237 250 250 / 0.3);
}

.bg-teal-500{
  --tw-bg-opacity: 1;
  background-color: rgb(6 148 162 / var(--tw-bg-opacity, 1));
}

.bg-transparent{
  background-color: transparent;
}

.bg-violet-50{
  --tw-bg-opacity: 1;
  background-color: rgb(245 243 255 / var(--tw-bg-opacity, 1));
}

.bg-white{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.bg-white\/10{
  background-color: rgb(255 255 255 / 0.1);
}

.bg-white\/20{
  background-color: rgb(255 255 255 / 0.2);
}

.bg-white\/30{
  background-color: rgb(255 255 255 / 0.3);
}

.bg-white\/40{
  background-color: rgb(255 255 255 / 0.4);
}

.bg-white\/50{
  background-color: rgb(255 255 255 / 0.5);
}

.bg-white\/60{
  background-color: rgb(255 255 255 / 0.6);
}

.bg-white\/70{
  background-color: rgb(255 255 255 / 0.7);
}

.bg-white\/80{
  background-color: rgb(255 255 255 / 0.8);
}

.bg-white\/90{
  background-color: rgb(255 255 255 / 0.9);
}

.bg-white\/95{
  background-color: rgb(255 255 255 / 0.95);
}

.bg-yellow-100{
  --tw-bg-opacity: 1;
  background-color: rgb(253 246 178 / var(--tw-bg-opacity, 1));
}

.bg-yellow-200{
  --tw-bg-opacity: 1;
  background-color: rgb(252 233 106 / var(--tw-bg-opacity, 1));
}

.bg-yellow-300{
  --tw-bg-opacity: 1;
  background-color: rgb(250 202 21 / var(--tw-bg-opacity, 1));
}

.bg-yellow-400{
  --tw-bg-opacity: 1;
  background-color: rgb(227 160 8 / var(--tw-bg-opacity, 1));
}

.bg-yellow-50{
  --tw-bg-opacity: 1;
  background-color: rgb(253 253 234 / var(--tw-bg-opacity, 1));
}

.bg-yellow-50\/80{
  background-color: rgb(253 253 234 / 0.8);
}

.bg-yellow-500{
  --tw-bg-opacity: 1;
  background-color: rgb(194 120 3 / var(--tw-bg-opacity, 1));
}

.bg-yellow-600{
  --tw-bg-opacity: 1;
  background-color: rgb(159 88 10 / var(--tw-bg-opacity, 1));
}

.bg-opacity-10{
  --tw-bg-opacity: 0.1;
}

.bg-opacity-15{
  --tw-bg-opacity: 0.15;
}

.bg-opacity-20{
  --tw-bg-opacity: 0.2;
}

.bg-opacity-30{
  --tw-bg-opacity: 0.3;
}

.bg-opacity-50{
  --tw-bg-opacity: 0.5;
}

.bg-opacity-60{
  --tw-bg-opacity: 0.6;
}

.bg-opacity-70{
  --tw-bg-opacity: 0.7;
}

.bg-opacity-75{
  --tw-bg-opacity: 0.75;
}

.bg-opacity-80{
  --tw-bg-opacity: 0.8;
}

.bg-opacity-90{
  --tw-bg-opacity: 0.9;
}

.bg-gradient-to-b{
  background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
}

.bg-gradient-to-br{
  background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
}

.bg-gradient-to-r{
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}

.bg-gradient-to-t{
  background-image: linear-gradient(to top, var(--tw-gradient-stops));
}

.from-amber-100{
  --tw-gradient-from: #fef3c7 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(254 243 199 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-amber-50{
  --tw-gradient-from: #fffbeb var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 251 235 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-amber-500{
  --tw-gradient-from: #f59e0b var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(245 158 11 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-black{
  --tw-gradient-from: #000000 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-black\/30{
  --tw-gradient-from: rgb(0 0 0 / 0.3) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-black\/70{
  --tw-gradient-from: rgb(0 0 0 / 0.7) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-100{
  --tw-gradient-from: #E1EFFE var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(225 239 254 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-100\/30{
  --tw-gradient-from: rgb(225 239 254 / 0.3) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(225 239 254 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-100\/60{
  --tw-gradient-from: rgb(225 239 254 / 0.6) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(225 239 254 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-200{
  --tw-gradient-from: #C3DDFD var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(195 221 253 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-200\/30{
  --tw-gradient-from: rgb(195 221 253 / 0.3) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(195 221 253 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-400{
  --tw-gradient-from: #76A9FA var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(118 169 250 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-400\/10{
  --tw-gradient-from: rgb(118 169 250 / 0.1) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(118 169 250 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-400\/20{
  --tw-gradient-from: rgb(118 169 250 / 0.2) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(118 169 250 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-50{
  --tw-gradient-from: #EBF5FF var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(235 245 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-50\/50{
  --tw-gradient-from: rgb(235 245 255 / 0.5) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(235 245 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-500{
  --tw-gradient-from: #3F83F8 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(63 131 248 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-500\/10{
  --tw-gradient-from: rgb(63 131 248 / 0.1) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(63 131 248 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-500\/20{
  --tw-gradient-from: rgb(63 131 248 / 0.2) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(63 131 248 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-500\/5{
  --tw-gradient-from: rgb(63 131 248 / 0.05) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(63 131 248 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-600{
  --tw-gradient-from: #1C64F2 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(28 100 242 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-600\/20{
  --tw-gradient-from: rgb(28 100 242 / 0.2) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(28 100 242 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-blue-600\/80{
  --tw-gradient-from: rgb(28 100 242 / 0.8) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(28 100 242 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-cyan-50{
  --tw-gradient-from: #ecfeff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(236 254 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-cyan-500{
  --tw-gradient-from: #06b6d4 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(6 182 212 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-emerald-200{
  --tw-gradient-from: #a7f3d0 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(167 243 208 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-emerald-400{
  --tw-gradient-from: #34d399 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(52 211 153 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-emerald-50{
  --tw-gradient-from: #ecfdf5 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(236 253 245 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-emerald-500{
  --tw-gradient-from: #10b981 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(16 185 129 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-emerald-500\/20{
  --tw-gradient-from: rgb(16 185 129 / 0.2) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(16 185 129 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-emerald-600{
  --tw-gradient-from: #059669 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(5 150 105 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-gray-200{
  --tw-gradient-from: #E5E7EB var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(229 231 235 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-gray-50{
  --tw-gradient-from: #F9FAFB var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-gray-50\/50{
  --tw-gradient-from: rgb(249 250 251 / 0.5) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(249 250 251 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-gray-500{
  --tw-gradient-from: #6B7280 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(107 114 128 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-gray-600{
  --tw-gradient-from: #4B5563 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(75 85 99 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-gray-700{
  --tw-gradient-from: #374151 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(55 65 81 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-gray-800{
  --tw-gradient-from: #1F2937 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(31 41 55 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-gray-900{
  --tw-gradient-from: #111827 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-green-100{
  --tw-gradient-from: #DEF7EC var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(222 247 236 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-green-400{
  --tw-gradient-from: #31C48D var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(49 196 141 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-green-50{
  --tw-gradient-from: #F3FAF7 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(243 250 247 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-green-500{
  --tw-gradient-from: #0E9F6E var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(14 159 110 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-green-600{
  --tw-gradient-from: #057A55 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(5 122 85 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-indigo-200\/20{
  --tw-gradient-from: rgb(205 219 254 / 0.2) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(205 219 254 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-indigo-50{
  --tw-gradient-from: #F0F5FF var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(240 245 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-indigo-600{
  --tw-gradient-from: #5850EC var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(88 80 236 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-indigo-800{
  --tw-gradient-from: #42389D var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(66 56 157 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-orange-400{
  --tw-gradient-from: #FF8A4C var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 138 76 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-orange-50{
  --tw-gradient-from: #FFF8F1 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 248 241 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-orange-500{
  --tw-gradient-from: #FF5A1F var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 90 31 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-orange-500\/20{
  --tw-gradient-from: rgb(255 90 31 / 0.2) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 90 31 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-orange-600{
  --tw-gradient-from: #D03801 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(208 56 1 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-pink-200{
  --tw-gradient-from: #FAD1E8 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(250 209 232 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-pink-400{
  --tw-gradient-from: #F17EB8 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(241 126 184 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-pink-50{
  --tw-gradient-from: #FDF2F8 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(253 242 248 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-pink-500{
  --tw-gradient-from: #E74694 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(231 70 148 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-purple-100{
  --tw-gradient-from: #EDEBFE var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(237 235 254 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-purple-100\/30{
  --tw-gradient-from: rgb(237 235 254 / 0.3) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(237 235 254 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-purple-400{
  --tw-gradient-from: #AC94FA var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(172 148 250 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-purple-400\/10{
  --tw-gradient-from: rgb(172 148 250 / 0.1) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(172 148 250 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-purple-50{
  --tw-gradient-from: #F6F5FF var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(246 245 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-purple-500{
  --tw-gradient-from: #9061F9 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(144 97 249 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-purple-600{
  --tw-gradient-from: #7E3AF2 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(126 58 242 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-red-200{
  --tw-gradient-from: #FBD5D5 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(251 213 213 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-red-400{
  --tw-gradient-from: #F98080 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(249 128 128 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-red-50{
  --tw-gradient-from: #FDF2F2 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(253 242 242 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-red-500{
  --tw-gradient-from: #F05252 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(240 82 82 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-red-500\/20{
  --tw-gradient-from: rgb(240 82 82 / 0.2) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(240 82 82 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-red-600{
  --tw-gradient-from: #E02424 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(224 36 36 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-rose-50{
  --tw-gradient-from: #fff1f2 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 241 242 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-slate-100{
  --tw-gradient-from: #f1f5f9 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(241 245 249 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-slate-50{
  --tw-gradient-from: #f8fafc var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(248 250 252 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-slate-500{
  --tw-gradient-from: #64748b var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(100 116 139 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-slate-600{
  --tw-gradient-from: #475569 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(71 85 105 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-slate-700{
  --tw-gradient-from: #334155 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(51 65 85 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-slate-800{
  --tw-gradient-from: #1e293b var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(30 41 59 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-slate-900{
  --tw-gradient-from: #0f172a var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(15 23 42 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-teal-50{
  --tw-gradient-from: #EDFAFA var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(237 250 250 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-transparent{
  --tw-gradient-from: transparent var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-violet-50{
  --tw-gradient-from: #f5f3ff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(245 243 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-white{
  --tw-gradient-from: #ffffff var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-white\/20{
  --tw-gradient-from: rgb(255 255 255 / 0.2) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-white\/80{
  --tw-gradient-from: rgb(255 255 255 / 0.8) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-white\/90{
  --tw-gradient-from: rgb(255 255 255 / 0.9) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-yellow-400{
  --tw-gradient-from: #E3A008 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(227 160 8 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-yellow-50{
  --tw-gradient-from: #FDFDEA var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(253 253 234 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.from-yellow-500{
  --tw-gradient-from: #C27803 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(194 120 3 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.via-blue-100{
  --tw-gradient-to: rgb(225 239 254 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #E1EFFE var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-blue-50{
  --tw-gradient-to: rgb(235 245 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #EBF5FF var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-blue-50\/20{
  --tw-gradient-to: rgb(235 245 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(235 245 255 / 0.2) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-blue-50\/30{
  --tw-gradient-to: rgb(235 245 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(235 245 255 / 0.3) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-blue-50\/40{
  --tw-gradient-to: rgb(235 245 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(235 245 255 / 0.4) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-blue-500{
  --tw-gradient-to: rgb(63 131 248 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #3F83F8 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-blue-600{
  --tw-gradient-to: rgb(28 100 242 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #1C64F2 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-blue-600\/20{
  --tw-gradient-to: rgb(28 100 242 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(28 100 242 / 0.2) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-blue-900{
  --tw-gradient-to: rgb(35 56 118 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #233876 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-emerald-50{
  --tw-gradient-to: rgb(236 253 245 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #ecfdf5 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-emerald-600{
  --tw-gradient-to: rgb(5 150 105 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #059669 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-emerald-600\/20{
  --tw-gradient-to: rgb(5 150 105 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(5 150 105 / 0.2) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-gray-300{
  --tw-gradient-to: rgb(209 213 219 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #D1D5DB var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-green-500{
  --tw-gradient-to: rgb(14 159 110 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #0E9F6E var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-green-600{
  --tw-gradient-to: rgb(5 122 85 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #057A55 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-indigo-200{
  --tw-gradient-to: rgb(205 219 254 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #CDDBFE var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-indigo-50{
  --tw-gradient-to: rgb(240 245 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #F0F5FF var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-indigo-50\/50{
  --tw-gradient-to: rgb(240 245 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(240 245 255 / 0.5) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-indigo-500{
  --tw-gradient-to: rgb(104 117 245 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #6875F5 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-indigo-600{
  --tw-gradient-to: rgb(88 80 236 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #5850EC var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-orange-500{
  --tw-gradient-to: rgb(255 90 31 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #FF5A1F var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-orange-600{
  --tw-gradient-to: rgb(208 56 1 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #D03801 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-orange-600\/20{
  --tw-gradient-to: rgb(208 56 1 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(208 56 1 / 0.2) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-pink-50{
  --tw-gradient-to: rgb(253 242 248 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #FDF2F8 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-pink-600{
  --tw-gradient-to: rgb(214 31 105 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #D61F69 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-purple-400{
  --tw-gradient-to: rgb(172 148 250 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #AC94FA var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-purple-50{
  --tw-gradient-to: rgb(246 245 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #F6F5FF var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-purple-600{
  --tw-gradient-to: rgb(126 58 242 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #7E3AF2 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-purple-600\/80{
  --tw-gradient-to: rgb(126 58 242 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(126 58 242 / 0.8) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-red-500{
  --tw-gradient-to: rgb(240 82 82 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #F05252 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-red-600{
  --tw-gradient-to: rgb(224 36 36 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #E02424 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-red-600\/20{
  --tw-gradient-to: rgb(224 36 36 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(224 36 36 / 0.2) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-red-700{
  --tw-gradient-to: rgb(200 30 30 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #C81E1E var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-slate-800{
  --tw-gradient-to: rgb(30 41 59 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #1e293b var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-transparent{
  --tw-gradient-to: rgb(0 0 0 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-white{
  --tw-gradient-to: rgb(255 255 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #ffffff var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-white\/20{
  --tw-gradient-to: rgb(255 255 255 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(255 255 255 / 0.2) var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.via-yellow-200{
  --tw-gradient-to: rgb(252 233 106 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #FCE96A var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.to-amber-100{
  --tw-gradient-to: #fef3c7 var(--tw-gradient-to-position);
}

.to-amber-50{
  --tw-gradient-to: #fffbeb var(--tw-gradient-to-position);
}

.to-amber-500{
  --tw-gradient-to: #f59e0b var(--tw-gradient-to-position);
}

.to-amber-600{
  --tw-gradient-to: #d97706 var(--tw-gradient-to-position);
}

.to-amber-600\/20{
  --tw-gradient-to: rgb(217 119 6 / 0.2) var(--tw-gradient-to-position);
}

.to-blue-100{
  --tw-gradient-to: #E1EFFE var(--tw-gradient-to-position);
}

.to-blue-50{
  --tw-gradient-to: #EBF5FF var(--tw-gradient-to-position);
}

.to-blue-50\/30{
  --tw-gradient-to: rgb(235 245 255 / 0.3) var(--tw-gradient-to-position);
}

.to-blue-50\/40{
  --tw-gradient-to: rgb(235 245 255 / 0.4) var(--tw-gradient-to-position);
}

.to-blue-500{
  --tw-gradient-to: #3F83F8 var(--tw-gradient-to-position);
}

.to-blue-600{
  --tw-gradient-to: #1C64F2 var(--tw-gradient-to-position);
}

.to-blue-700{
  --tw-gradient-to: #1A56DB var(--tw-gradient-to-position);
}

.to-blue-800{
  --tw-gradient-to: #1E429F var(--tw-gradient-to-position);
}

.to-blue-900{
  --tw-gradient-to: #233876 var(--tw-gradient-to-position);
}

.to-cyan-100{
  --tw-gradient-to: #cffafe var(--tw-gradient-to-position);
}

.to-cyan-50{
  --tw-gradient-to: #ecfeff var(--tw-gradient-to-position);
}

.to-cyan-500{
  --tw-gradient-to: #06b6d4 var(--tw-gradient-to-position);
}

.to-emerald-100{
  --tw-gradient-to: #d1fae5 var(--tw-gradient-to-position);
}

.to-emerald-400{
  --tw-gradient-to: #34d399 var(--tw-gradient-to-position);
}

.to-emerald-50{
  --tw-gradient-to: #ecfdf5 var(--tw-gradient-to-position);
}

.to-emerald-500{
  --tw-gradient-to: #10b981 var(--tw-gradient-to-position);
}

.to-emerald-600{
  --tw-gradient-to: #059669 var(--tw-gradient-to-position);
}

.to-emerald-700{
  --tw-gradient-to: #047857 var(--tw-gradient-to-position);
}

.to-gray-100{
  --tw-gradient-to: #F3F4F6 var(--tw-gradient-to-position);
}

.to-gray-200{
  --tw-gradient-to: #E5E7EB var(--tw-gradient-to-position);
}

.to-gray-300{
  --tw-gradient-to: #D1D5DB var(--tw-gradient-to-position);
}

.to-gray-50{
  --tw-gradient-to: #F9FAFB var(--tw-gradient-to-position);
}

.to-gray-500{
  --tw-gradient-to: #6B7280 var(--tw-gradient-to-position);
}

.to-gray-600{
  --tw-gradient-to: #4B5563 var(--tw-gradient-to-position);
}

.to-gray-700{
  --tw-gradient-to: #374151 var(--tw-gradient-to-position);
}

.to-green-100{
  --tw-gradient-to: #DEF7EC var(--tw-gradient-to-position);
}

.to-green-200{
  --tw-gradient-to: #BCF0DA var(--tw-gradient-to-position);
}

.to-green-50{
  --tw-gradient-to: #F3FAF7 var(--tw-gradient-to-position);
}

.to-green-500{
  --tw-gradient-to: #0E9F6E var(--tw-gradient-to-position);
}

.to-green-600{
  --tw-gradient-to: #057A55 var(--tw-gradient-to-position);
}

.to-green-700{
  --tw-gradient-to: #046C4E var(--tw-gradient-to-position);
}

.to-indigo-100{
  --tw-gradient-to: #E5EDFF var(--tw-gradient-to-position);
}

.to-indigo-50{
  --tw-gradient-to: #F0F5FF var(--tw-gradient-to-position);
}

.to-indigo-50\/40{
  --tw-gradient-to: rgb(240 245 255 / 0.4) var(--tw-gradient-to-position);
}

.to-indigo-500{
  --tw-gradient-to: #6875F5 var(--tw-gradient-to-position);
}

.to-indigo-500\/10{
  --tw-gradient-to: rgb(104 117 245 / 0.1) var(--tw-gradient-to-position);
}

.to-indigo-600{
  --tw-gradient-to: #5850EC var(--tw-gradient-to-position);
}

.to-indigo-600\/20{
  --tw-gradient-to: rgb(88 80 236 / 0.2) var(--tw-gradient-to-position);
}

.to-indigo-600\/80{
  --tw-gradient-to: rgb(88 80 236 / 0.8) var(--tw-gradient-to-position);
}

.to-indigo-700{
  --tw-gradient-to: #5145CD var(--tw-gradient-to-position);
}

.to-orange-100{
  --tw-gradient-to: #FEECDC var(--tw-gradient-to-position);
}

.to-orange-400{
  --tw-gradient-to: #FF8A4C var(--tw-gradient-to-position);
}

.to-orange-50{
  --tw-gradient-to: #FFF8F1 var(--tw-gradient-to-position);
}

.to-orange-500{
  --tw-gradient-to: #FF5A1F var(--tw-gradient-to-position);
}

.to-orange-600{
  --tw-gradient-to: #D03801 var(--tw-gradient-to-position);
}

.to-orange-700{
  --tw-gradient-to: #B43403 var(--tw-gradient-to-position);
}

.to-pink-100{
  --tw-gradient-to: #FCE8F3 var(--tw-gradient-to-position);
}

.to-pink-100\/30{
  --tw-gradient-to: rgb(252 232 243 / 0.3) var(--tw-gradient-to-position);
}

.to-pink-200\/20{
  --tw-gradient-to: rgb(250 209 232 / 0.2) var(--tw-gradient-to-position);
}

.to-pink-400{
  --tw-gradient-to: #F17EB8 var(--tw-gradient-to-position);
}

.to-pink-50{
  --tw-gradient-to: #FDF2F8 var(--tw-gradient-to-position);
}

.to-pink-500{
  --tw-gradient-to: #E74694 var(--tw-gradient-to-position);
}

.to-pink-500\/10{
  --tw-gradient-to: rgb(231 70 148 / 0.1) var(--tw-gradient-to-position);
}

.to-pink-600{
  --tw-gradient-to: #D61F69 var(--tw-gradient-to-position);
}

.to-purple-100{
  --tw-gradient-to: #EDEBFE var(--tw-gradient-to-position);
}

.to-purple-100\/40{
  --tw-gradient-to: rgb(237 235 254 / 0.4) var(--tw-gradient-to-position);
}

.to-purple-200{
  --tw-gradient-to: #DCD7FE var(--tw-gradient-to-position);
}

.to-purple-200\/30{
  --tw-gradient-to: rgb(220 215 254 / 0.3) var(--tw-gradient-to-position);
}

.to-purple-400{
  --tw-gradient-to: #AC94FA var(--tw-gradient-to-position);
}

.to-purple-400\/20{
  --tw-gradient-to: rgb(172 148 250 / 0.2) var(--tw-gradient-to-position);
}

.to-purple-50{
  --tw-gradient-to: #F6F5FF var(--tw-gradient-to-position);
}

.to-purple-50\/20{
  --tw-gradient-to: rgb(246 245 255 / 0.2) var(--tw-gradient-to-position);
}

.to-purple-50\/30{
  --tw-gradient-to: rgb(246 245 255 / 0.3) var(--tw-gradient-to-position);
}

.to-purple-50\/50{
  --tw-gradient-to: rgb(246 245 255 / 0.5) var(--tw-gradient-to-position);
}

.to-purple-500{
  --tw-gradient-to: #9061F9 var(--tw-gradient-to-position);
}

.to-purple-500\/10{
  --tw-gradient-to: rgb(144 97 249 / 0.1) var(--tw-gradient-to-position);
}

.to-purple-500\/5{
  --tw-gradient-to: rgb(144 97 249 / 0.05) var(--tw-gradient-to-position);
}

.to-purple-600{
  --tw-gradient-to: #7E3AF2 var(--tw-gradient-to-position);
}

.to-purple-600\/20{
  --tw-gradient-to: rgb(126 58 242 / 0.2) var(--tw-gradient-to-position);
}

.to-purple-700{
  --tw-gradient-to: #6C2BD9 var(--tw-gradient-to-position);
}

.to-purple-900{
  --tw-gradient-to: #4A1D96 var(--tw-gradient-to-position);
}

.to-red-100{
  --tw-gradient-to: #FDE8E8 var(--tw-gradient-to-position);
}

.to-red-400{
  --tw-gradient-to: #F98080 var(--tw-gradient-to-position);
}

.to-red-50{
  --tw-gradient-to: #FDF2F2 var(--tw-gradient-to-position);
}

.to-red-500{
  --tw-gradient-to: #F05252 var(--tw-gradient-to-position);
}

.to-red-600{
  --tw-gradient-to: #E02424 var(--tw-gradient-to-position);
}

.to-red-700{
  --tw-gradient-to: #C81E1E var(--tw-gradient-to-position);
}

.to-red-800{
  --tw-gradient-to: #9B1C1C var(--tw-gradient-to-position);
}

.to-rose-100{
  --tw-gradient-to: #ffe4e6 var(--tw-gradient-to-position);
}

.to-rose-200{
  --tw-gradient-to: #fecdd3 var(--tw-gradient-to-position);
}

.to-rose-400{
  --tw-gradient-to: #fb7185 var(--tw-gradient-to-position);
}

.to-rose-50{
  --tw-gradient-to: #fff1f2 var(--tw-gradient-to-position);
}

.to-rose-600{
  --tw-gradient-to: #e11d48 var(--tw-gradient-to-position);
}

.to-rose-700{
  --tw-gradient-to: #be123c var(--tw-gradient-to-position);
}

.to-rose-700\/20{
  --tw-gradient-to: rgb(190 18 60 / 0.2) var(--tw-gradient-to-position);
}

.to-sky-50{
  --tw-gradient-to: #f0f9ff var(--tw-gradient-to-position);
}

.to-slate-200{
  --tw-gradient-to: #e2e8f0 var(--tw-gradient-to-position);
}

.to-slate-50{
  --tw-gradient-to: #f8fafc var(--tw-gradient-to-position);
}

.to-slate-500{
  --tw-gradient-to: #64748b var(--tw-gradient-to-position);
}

.to-slate-600{
  --tw-gradient-to: #475569 var(--tw-gradient-to-position);
}

.to-slate-700{
  --tw-gradient-to: #334155 var(--tw-gradient-to-position);
}

.to-slate-800{
  --tw-gradient-to: #1e293b var(--tw-gradient-to-position);
}

.to-slate-900{
  --tw-gradient-to: #0f172a var(--tw-gradient-to-position);
}

.to-teal-100{
  --tw-gradient-to: #D5F5F6 var(--tw-gradient-to-position);
}

.to-teal-100\/30{
  --tw-gradient-to: rgb(213 245 246 / 0.3) var(--tw-gradient-to-position);
}

.to-teal-200{
  --tw-gradient-to: #AFECEF var(--tw-gradient-to-position);
}

.to-teal-50{
  --tw-gradient-to: #EDFAFA var(--tw-gradient-to-position);
}

.to-teal-500{
  --tw-gradient-to: #0694A2 var(--tw-gradient-to-position);
}

.to-teal-600{
  --tw-gradient-to: #047481 var(--tw-gradient-to-position);
}

.to-teal-600\/20{
  --tw-gradient-to: rgb(4 116 129 / 0.2) var(--tw-gradient-to-position);
}

.to-transparent{
  --tw-gradient-to: transparent var(--tw-gradient-to-position);
}

.to-violet-100{
  --tw-gradient-to: #ede9fe var(--tw-gradient-to-position);
}

.to-violet-50{
  --tw-gradient-to: #f5f3ff var(--tw-gradient-to-position);
}

.to-violet-600{
  --tw-gradient-to: #7c3aed var(--tw-gradient-to-position);
}

.to-white{
  --tw-gradient-to: #ffffff var(--tw-gradient-to-position);
}

.to-white\/40{
  --tw-gradient-to: rgb(255 255 255 / 0.4) var(--tw-gradient-to-position);
}

.to-white\/60{
  --tw-gradient-to: rgb(255 255 255 / 0.6) var(--tw-gradient-to-position);
}

.to-yellow-100{
  --tw-gradient-to: #FDF6B2 var(--tw-gradient-to-position);
}

.bg-cover{
  background-size: cover;
}

.bg-clip-text{
  -webkit-background-clip: text;
          background-clip: text;
}

.bg-center{
  background-position: center;
}

.fill-amber-400{
  fill: #fbbf24;
}

.fill-blue-100{
  fill: #E1EFFE;
}

.fill-current{
  fill: currentColor;
}

.fill-rose-500{
  fill: #f43f5e;
}

.fill-white{
  fill: #ffffff;
}

.fill-yellow-400{
  fill: #E3A008;
}

.object-contain{
  -o-object-fit: contain;
     object-fit: contain;
}

.object-cover{
  -o-object-fit: cover;
     object-fit: cover;
}

.\!p-6{
  padding: 1.5rem !important;
}

.p-0{
  padding: 0px;
}

.p-1{
  padding: 0.25rem;
}

.p-1\.5{
  padding: 0.375rem;
}

.p-10{
  padding: 2.5rem;
}

.p-12{
  padding: 3rem;
}

.p-16{
  padding: 4rem;
}

.p-2{
  padding: 0.5rem;
}

.p-2\.5{
  padding: 0.625rem;
}

.p-3{
  padding: 0.75rem;
}

.p-3\.5{
  padding: 0.875rem;
}

.p-4{
  padding: 1rem;
}

.p-5{
  padding: 1.25rem;
}

.p-6{
  padding: 1.5rem;
}

.p-8{
  padding: 2rem;
}

.px-0{
  padding-left: 0px;
  padding-right: 0px;
}

.px-1{
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}

.px-1\.5{
  padding-left: 0.375rem;
  padding-right: 0.375rem;
}

.px-10{
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.px-12{
  padding-left: 3rem;
  padding-right: 3rem;
}

.px-2{
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.px-2\.5{
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}

.px-3{
  padding-left: 0.75rem;
  padding-right: 0.75rem;
}

.px-4{
  padding-left: 1rem;
  padding-right: 1rem;
}

.px-5{
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.px-6{
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.px-8{
  padding-left: 2rem;
  padding-right: 2rem;
}

.py-0{
  padding-top: 0px;
  padding-bottom: 0px;
}

.py-0\.5{
  padding-top: 0.125rem;
  padding-bottom: 0.125rem;
}

.py-1{
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

.py-1\.5{
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}

.py-12{
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.py-16{
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.py-2{
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.py-2\.5{
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
}

.py-20{
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.py-3{
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
}

.py-3\.5{
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
}

.py-4{
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.py-5{
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}

.py-6{
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.py-8{
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.pb-0{
  padding-bottom: 0px;
}

.pb-1{
  padding-bottom: 0.25rem;
}

.pb-12{
  padding-bottom: 3rem;
}

.pb-2{
  padding-bottom: 0.5rem;
}

.pb-3{
  padding-bottom: 0.75rem;
}

.pb-4{
  padding-bottom: 1rem;
}

.pb-5{
  padding-bottom: 1.25rem;
}

.pb-6{
  padding-bottom: 1.5rem;
}

.pb-8{
  padding-bottom: 2rem;
}

.pe-2{
  padding-inline-end: 0.5rem;
}

.pe-8{
  padding-inline-end: 2rem;
}

.pl-1{
  padding-left: 0.25rem;
}

.pl-10{
  padding-left: 2.5rem;
}

.pl-11{
  padding-left: 2.75rem;
}

.pl-12{
  padding-left: 3rem;
}

.pl-14{
  padding-left: 3.5rem;
}

.pl-2{
  padding-left: 0.5rem;
}

.pl-3{
  padding-left: 0.75rem;
}

.pl-4{
  padding-left: 1rem;
}

.pl-5{
  padding-left: 1.25rem;
}

.pl-6{
  padding-left: 1.5rem;
}

.pl-7{
  padding-left: 1.75rem;
}

.pl-8{
  padding-left: 2rem;
}

.pl-9{
  padding-left: 2.25rem;
}

.pr-10{
  padding-right: 2.5rem;
}

.pr-12{
  padding-right: 3rem;
}

.pr-16{
  padding-right: 4rem;
}

.pr-2{
  padding-right: 0.5rem;
}

.pr-3{
  padding-right: 0.75rem;
}

.pr-4{
  padding-right: 1rem;
}

.pr-6{
  padding-right: 1.5rem;
}

.pr-8{
  padding-right: 2rem;
}

.ps-0{
  padding-inline-start: 0px;
}

.pt-0{
  padding-top: 0px;
}

.pt-0\.5{
  padding-top: 0.125rem;
}

.pt-1{
  padding-top: 0.25rem;
}

.pt-10{
  padding-top: 2.5rem;
}

.pt-12{
  padding-top: 3rem;
}

.pt-14{
  padding-top: 3.5rem;
}

.pt-16{
  padding-top: 4rem;
}

.pt-2{
  padding-top: 0.5rem;
}

.pt-20{
  padding-top: 5rem;
}

.pt-3{
  padding-top: 0.75rem;
}

.pt-4{
  padding-top: 1rem;
}

.pt-5{
  padding-top: 1.25rem;
}

.pt-6{
  padding-top: 1.5rem;
}

.pt-8{
  padding-top: 2rem;
}

.pt-\[56\.25\%\]{
  padding-top: 56.25%;
}

.text-left{
  text-align: left;
}

.text-center{
  text-align: center;
}

.text-right{
  text-align: right;
}

.text-start{
  text-align: start;
}

.text-end{
  text-align: end;
}

.align-middle{
  vertical-align: middle;
}

.font-\[\'Lato\'\2c sans-serif\]{
  font-family: 'Lato',sans-serif;
}

.font-mono{
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

.font-sans{
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}

.text-2xl{
  font-size: 1.5rem;
  line-height: 2rem;
}

.text-3xl{
  font-size: 1.875rem;
  line-height: 2.25rem;
}

.text-4xl{
  font-size: 2.25rem;
  line-height: 2.5rem;
}

.text-5xl{
  font-size: 3rem;
  line-height: 1;
}

.text-6xl{
  font-size: 3.75rem;
  line-height: 1;
}

.text-9xl{
  font-size: 8rem;
  line-height: 1;
}

.text-\[10px\]{
  font-size: 10px;
}

.text-base{
  font-size: 1rem;
  line-height: 1.5rem;
}

.text-lg{
  font-size: 1.125rem;
  line-height: 1.75rem;
}

.text-sm{
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.text-xl{
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.text-xs{
  font-size: 0.75rem;
  line-height: 1rem;
}

.font-black{
  font-weight: 900;
}

.font-bold{
  font-weight: 700;
}

.font-extrabold{
  font-weight: 800;
}

.font-light{
  font-weight: 300;
}

.font-medium{
  font-weight: 500;
}

.font-normal{
  font-weight: 400;
}

.font-semibold{
  font-weight: 600;
}

.uppercase{
  text-transform: uppercase;
}

.lowercase{
  text-transform: lowercase;
}

.capitalize{
  text-transform: capitalize;
}

.italic{
  font-style: italic;
}

.leading-4{
  line-height: 1rem;
}

.leading-5{
  line-height: 1.25rem;
}

.leading-6{
  line-height: 1.5rem;
}

.leading-9{
  line-height: 2.25rem;
}

.leading-none{
  line-height: 1;
}

.leading-relaxed{
  line-height: 1.625;
}

.leading-tight{
  line-height: 1.25;
}

.tracking-tight{
  letter-spacing: -0.025em;
}

.tracking-wide{
  letter-spacing: 0.025em;
}

.tracking-wider{
  letter-spacing: 0.05em;
}

.tracking-widest{
  letter-spacing: 0.1em;
}

.text-amber-100{
  --tw-text-opacity: 1;
  color: rgb(254 243 199 / var(--tw-text-opacity, 1));
}

.text-amber-400{
  --tw-text-opacity: 1;
  color: rgb(251 191 36 / var(--tw-text-opacity, 1));
}

.text-amber-500{
  --tw-text-opacity: 1;
  color: rgb(245 158 11 / var(--tw-text-opacity, 1));
}

.text-amber-600{
  --tw-text-opacity: 1;
  color: rgb(217 119 6 / var(--tw-text-opacity, 1));
}

.text-amber-700{
  --tw-text-opacity: 1;
  color: rgb(180 83 9 / var(--tw-text-opacity, 1));
}

.text-amber-800{
  --tw-text-opacity: 1;
  color: rgb(146 64 14 / var(--tw-text-opacity, 1));
}

.text-amber-900{
  --tw-text-opacity: 1;
  color: rgb(120 53 15 / var(--tw-text-opacity, 1));
}

.text-black{
  --tw-text-opacity: 1;
  color: rgb(0 0 0 / var(--tw-text-opacity, 1));
}

.text-blue-100{
  --tw-text-opacity: 1;
  color: rgb(225 239 254 / var(--tw-text-opacity, 1));
}

.text-blue-200{
  --tw-text-opacity: 1;
  color: rgb(195 221 253 / var(--tw-text-opacity, 1));
}

.text-blue-300{
  --tw-text-opacity: 1;
  color: rgb(164 202 254 / var(--tw-text-opacity, 1));
}

.text-blue-300\/60{
  color: rgb(164 202 254 / 0.6);
}

.text-blue-400{
  --tw-text-opacity: 1;
  color: rgb(118 169 250 / var(--tw-text-opacity, 1));
}

.text-blue-500{
  --tw-text-opacity: 1;
  color: rgb(63 131 248 / var(--tw-text-opacity, 1));
}

.text-blue-600{
  --tw-text-opacity: 1;
  color: rgb(28 100 242 / var(--tw-text-opacity, 1));
}

.text-blue-700{
  --tw-text-opacity: 1;
  color: rgb(26 86 219 / var(--tw-text-opacity, 1));
}

.text-blue-800{
  --tw-text-opacity: 1;
  color: rgb(30 66 159 / var(--tw-text-opacity, 1));
}

.text-blue-800\/80{
  color: rgb(30 66 159 / 0.8);
}

.text-blue-900{
  --tw-text-opacity: 1;
  color: rgb(35 56 118 / var(--tw-text-opacity, 1));
}

.text-cyan-600{
  --tw-text-opacity: 1;
  color: rgb(8 145 178 / var(--tw-text-opacity, 1));
}

.text-cyan-700{
  --tw-text-opacity: 1;
  color: rgb(14 116 144 / var(--tw-text-opacity, 1));
}

.text-cyan-800{
  --tw-text-opacity: 1;
  color: rgb(21 94 117 / var(--tw-text-opacity, 1));
}

.text-destructive-foreground{
  color: hsl(var(--destructive-foreground));
}

.text-emerald-100{
  --tw-text-opacity: 1;
  color: rgb(209 250 229 / var(--tw-text-opacity, 1));
}

.text-emerald-500{
  --tw-text-opacity: 1;
  color: rgb(16 185 129 / var(--tw-text-opacity, 1));
}

.text-emerald-600{
  --tw-text-opacity: 1;
  color: rgb(5 150 105 / var(--tw-text-opacity, 1));
}

.text-emerald-700{
  --tw-text-opacity: 1;
  color: rgb(4 120 87 / var(--tw-text-opacity, 1));
}

.text-emerald-800{
  --tw-text-opacity: 1;
  color: rgb(6 95 70 / var(--tw-text-opacity, 1));
}

.text-emerald-900{
  --tw-text-opacity: 1;
  color: rgb(6 78 59 / var(--tw-text-opacity, 1));
}

.text-foreground{
  color: hsl(var(--foreground));
}

.text-gray-200{
  --tw-text-opacity: 1;
  color: rgb(229 231 235 / var(--tw-text-opacity, 1));
}

.text-gray-300{
  --tw-text-opacity: 1;
  color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}

.text-gray-400{
  --tw-text-opacity: 1;
  color: rgb(156 163 175 / var(--tw-text-opacity, 1));
}

.text-gray-500{
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}

.text-gray-600{
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}

.text-gray-700{
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}

.text-gray-800{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
}

.text-gray-900{
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}

.text-green-100{
  --tw-text-opacity: 1;
  color: rgb(222 247 236 / var(--tw-text-opacity, 1));
}

.text-green-200{
  --tw-text-opacity: 1;
  color: rgb(188 240 218 / var(--tw-text-opacity, 1));
}

.text-green-300{
  --tw-text-opacity: 1;
  color: rgb(132 225 188 / var(--tw-text-opacity, 1));
}

.text-green-400{
  --tw-text-opacity: 1;
  color: rgb(49 196 141 / var(--tw-text-opacity, 1));
}

.text-green-500{
  --tw-text-opacity: 1;
  color: rgb(14 159 110 / var(--tw-text-opacity, 1));
}

.text-green-600{
  --tw-text-opacity: 1;
  color: rgb(5 122 85 / var(--tw-text-opacity, 1));
}

.text-green-700{
  --tw-text-opacity: 1;
  color: rgb(4 108 78 / var(--tw-text-opacity, 1));
}

.text-green-700\/70{
  color: rgb(4 108 78 / 0.7);
}

.text-green-800{
  --tw-text-opacity: 1;
  color: rgb(3 84 63 / var(--tw-text-opacity, 1));
}

.text-green-900{
  --tw-text-opacity: 1;
  color: rgb(1 71 55 / var(--tw-text-opacity, 1));
}

.text-indigo-500{
  --tw-text-opacity: 1;
  color: rgb(104 117 245 / var(--tw-text-opacity, 1));
}

.text-indigo-600{
  --tw-text-opacity: 1;
  color: rgb(88 80 236 / var(--tw-text-opacity, 1));
}

.text-indigo-700{
  --tw-text-opacity: 1;
  color: rgb(81 69 205 / var(--tw-text-opacity, 1));
}

.text-indigo-800{
  --tw-text-opacity: 1;
  color: rgb(66 56 157 / var(--tw-text-opacity, 1));
}

.text-indigo-900{
  --tw-text-opacity: 1;
  color: rgb(54 47 120 / var(--tw-text-opacity, 1));
}

.text-orange-100{
  --tw-text-opacity: 1;
  color: rgb(254 236 220 / var(--tw-text-opacity, 1));
}

.text-orange-300{
  --tw-text-opacity: 1;
  color: rgb(253 186 140 / var(--tw-text-opacity, 1));
}

.text-orange-400{
  --tw-text-opacity: 1;
  color: rgb(255 138 76 / var(--tw-text-opacity, 1));
}

.text-orange-500{
  --tw-text-opacity: 1;
  color: rgb(255 90 31 / var(--tw-text-opacity, 1));
}

.text-orange-600{
  --tw-text-opacity: 1;
  color: rgb(208 56 1 / var(--tw-text-opacity, 1));
}

.text-orange-700{
  --tw-text-opacity: 1;
  color: rgb(180 52 3 / var(--tw-text-opacity, 1));
}

.text-orange-800{
  --tw-text-opacity: 1;
  color: rgb(138 44 13 / var(--tw-text-opacity, 1));
}

.text-orange-900{
  --tw-text-opacity: 1;
  color: rgb(119 29 29 / var(--tw-text-opacity, 1));
}

.text-pink-300\/60{
  color: rgb(248 180 217 / 0.6);
}

.text-pink-400{
  --tw-text-opacity: 1;
  color: rgb(241 126 184 / var(--tw-text-opacity, 1));
}

.text-pink-600{
  --tw-text-opacity: 1;
  color: rgb(214 31 105 / var(--tw-text-opacity, 1));
}

.text-pink-700{
  --tw-text-opacity: 1;
  color: rgb(191 18 93 / var(--tw-text-opacity, 1));
}

.text-pink-800{
  --tw-text-opacity: 1;
  color: rgb(153 21 75 / var(--tw-text-opacity, 1));
}

.text-primary{
  color: hsl(var(--primary));
}

.text-primary-foreground{
  color: hsl(var(--primary-foreground));
}

.text-purple-100{
  --tw-text-opacity: 1;
  color: rgb(237 235 254 / var(--tw-text-opacity, 1));
}

.text-purple-200{
  --tw-text-opacity: 1;
  color: rgb(220 215 254 / var(--tw-text-opacity, 1));
}

.text-purple-400{
  --tw-text-opacity: 1;
  color: rgb(172 148 250 / var(--tw-text-opacity, 1));
}

.text-purple-500{
  --tw-text-opacity: 1;
  color: rgb(144 97 249 / var(--tw-text-opacity, 1));
}

.text-purple-600{
  --tw-text-opacity: 1;
  color: rgb(126 58 242 / var(--tw-text-opacity, 1));
}

.text-purple-700{
  --tw-text-opacity: 1;
  color: rgb(108 43 217 / var(--tw-text-opacity, 1));
}

.text-purple-800{
  --tw-text-opacity: 1;
  color: rgb(85 33 181 / var(--tw-text-opacity, 1));
}

.text-purple-900{
  --tw-text-opacity: 1;
  color: rgb(74 29 150 / var(--tw-text-opacity, 1));
}

.text-red-100{
  --tw-text-opacity: 1;
  color: rgb(253 232 232 / var(--tw-text-opacity, 1));
}

.text-red-200{
  --tw-text-opacity: 1;
  color: rgb(251 213 213 / var(--tw-text-opacity, 1));
}

.text-red-300{
  --tw-text-opacity: 1;
  color: rgb(248 180 180 / var(--tw-text-opacity, 1));
}

.text-red-400{
  --tw-text-opacity: 1;
  color: rgb(249 128 128 / var(--tw-text-opacity, 1));
}

.text-red-500{
  --tw-text-opacity: 1;
  color: rgb(240 82 82 / var(--tw-text-opacity, 1));
}

.text-red-600{
  --tw-text-opacity: 1;
  color: rgb(224 36 36 / var(--tw-text-opacity, 1));
}

.text-red-700{
  --tw-text-opacity: 1;
  color: rgb(200 30 30 / var(--tw-text-opacity, 1));
}

.text-red-700\/70{
  color: rgb(200 30 30 / 0.7);
}

.text-red-800{
  --tw-text-opacity: 1;
  color: rgb(155 28 28 / var(--tw-text-opacity, 1));
}

.text-red-900{
  --tw-text-opacity: 1;
  color: rgb(119 29 29 / var(--tw-text-opacity, 1));
}

.text-rose-400{
  --tw-text-opacity: 1;
  color: rgb(251 113 133 / var(--tw-text-opacity, 1));
}

.text-rose-500{
  --tw-text-opacity: 1;
  color: rgb(244 63 94 / var(--tw-text-opacity, 1));
}

.text-rose-600{
  --tw-text-opacity: 1;
  color: rgb(225 29 72 / var(--tw-text-opacity, 1));
}

.text-secondary-foreground{
  color: hsl(var(--secondary-foreground));
}

.text-slate-300{
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
}

.text-slate-400{
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}

.text-slate-500{
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.text-slate-600{
  --tw-text-opacity: 1;
  color: rgb(71 85 105 / var(--tw-text-opacity, 1));
}

.text-slate-700{
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity, 1));
}

.text-slate-800{
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.text-slate-900{
  --tw-text-opacity: 1;
  color: rgb(15 23 42 / var(--tw-text-opacity, 1));
}

.text-teal-500{
  --tw-text-opacity: 1;
  color: rgb(6 148 162 / var(--tw-text-opacity, 1));
}

.text-teal-600{
  --tw-text-opacity: 1;
  color: rgb(4 116 129 / var(--tw-text-opacity, 1));
}

.text-teal-600\/60{
  color: rgb(4 116 129 / 0.6);
}

.text-teal-700{
  --tw-text-opacity: 1;
  color: rgb(3 102 114 / var(--tw-text-opacity, 1));
}

.text-teal-700\/80{
  color: rgb(3 102 114 / 0.8);
}

.text-teal-800{
  --tw-text-opacity: 1;
  color: rgb(5 80 92 / var(--tw-text-opacity, 1));
}

.text-teal-900{
  --tw-text-opacity: 1;
  color: rgb(1 68 81 / var(--tw-text-opacity, 1));
}

.text-transparent{
  color: transparent;
}

.text-violet-600{
  --tw-text-opacity: 1;
  color: rgb(124 58 237 / var(--tw-text-opacity, 1));
}

.text-white{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.text-white\/70{
  color: rgb(255 255 255 / 0.7);
}

.text-white\/80{
  color: rgb(255 255 255 / 0.8);
}

.text-white\/90{
  color: rgb(255 255 255 / 0.9);
}

.text-yellow-300{
  --tw-text-opacity: 1;
  color: rgb(250 202 21 / var(--tw-text-opacity, 1));
}

.text-yellow-300\/60{
  color: rgb(250 202 21 / 0.6);
}

.text-yellow-400{
  --tw-text-opacity: 1;
  color: rgb(227 160 8 / var(--tw-text-opacity, 1));
}

.text-yellow-500{
  --tw-text-opacity: 1;
  color: rgb(194 120 3 / var(--tw-text-opacity, 1));
}

.text-yellow-600{
  --tw-text-opacity: 1;
  color: rgb(159 88 10 / var(--tw-text-opacity, 1));
}

.text-yellow-700{
  --tw-text-opacity: 1;
  color: rgb(142 75 16 / var(--tw-text-opacity, 1));
}

.text-yellow-700\/70{
  color: rgb(142 75 16 / 0.7);
}

.text-yellow-800{
  --tw-text-opacity: 1;
  color: rgb(114 59 19 / var(--tw-text-opacity, 1));
}

.text-yellow-900{
  --tw-text-opacity: 1;
  color: rgb(99 49 18 / var(--tw-text-opacity, 1));
}

.underline{
  text-decoration-line: underline;
}

.line-through{
  text-decoration-line: line-through;
}

.no-underline{
  text-decoration-line: none;
}

.placeholder-gray-400::-moz-placeholder{
  --tw-placeholder-opacity: 1;
  color: rgb(156 163 175 / var(--tw-placeholder-opacity, 1));
}

.placeholder-gray-400::placeholder{
  --tw-placeholder-opacity: 1;
  color: rgb(156 163 175 / var(--tw-placeholder-opacity, 1));
}

.placeholder-gray-500::-moz-placeholder{
  --tw-placeholder-opacity: 1;
  color: rgb(107 114 128 / var(--tw-placeholder-opacity, 1));
}

.placeholder-gray-500::placeholder{
  --tw-placeholder-opacity: 1;
  color: rgb(107 114 128 / var(--tw-placeholder-opacity, 1));
}

.placeholder-slate-400::-moz-placeholder{
  --tw-placeholder-opacity: 1;
  color: rgb(148 163 184 / var(--tw-placeholder-opacity, 1));
}

.placeholder-slate-400::placeholder{
  --tw-placeholder-opacity: 1;
  color: rgb(148 163 184 / var(--tw-placeholder-opacity, 1));
}

.accent-emerald-600{
  accent-color: #059669;
}

.opacity-0{
  opacity: 0;
}

.opacity-10{
  opacity: 0.1;
}

.opacity-100{
  opacity: 1;
}

.opacity-20{
  opacity: 0.2;
}

.opacity-25{
  opacity: 0.25;
}

.opacity-30{
  opacity: 0.3;
}

.opacity-40{
  opacity: 0.4;
}

.opacity-50{
  opacity: 0.5;
}

.opacity-60{
  opacity: 0.6;
}

.opacity-70{
  opacity: 0.7;
}

.opacity-75{
  opacity: 0.75;
}

.opacity-80{
  opacity: 0.8;
}

.opacity-90{
  opacity: 0.9;
}

.mix-blend-multiply{
  mix-blend-mode: multiply;
}

.shadow{
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-2xl{
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-\[0_0_8px_rgba\(16\2c 185\2c 129\2c 0\.4\)\]{
  --tw-shadow: 0 0 8px rgba(16,185,129,0.4);
  --tw-shadow-colored: 0 0 8px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-inner{
  --tw-shadow: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: inset 0 2px 4px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-lg{
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-md{
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-none{
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-sm{
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-xl{
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.shadow-blue-100\/50{
  --tw-shadow-color: rgb(225 239 254 / 0.5);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-blue-200{
  --tw-shadow-color: #C3DDFD;
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-blue-200\/50{
  --tw-shadow-color: rgb(195 221 253 / 0.5);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-blue-500\/20{
  --tw-shadow-color: rgb(63 131 248 / 0.2);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-blue-500\/25{
  --tw-shadow-color: rgb(63 131 248 / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-blue-500\/30{
  --tw-shadow-color: rgb(63 131 248 / 0.3);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-blue-600\/20{
  --tw-shadow-color: rgb(28 100 242 / 0.2);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-blue-900\/20{
  --tw-shadow-color: rgb(35 56 118 / 0.2);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-emerald-200{
  --tw-shadow-color: #a7f3d0;
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-emerald-500\/20{
  --tw-shadow-color: rgb(16 185 129 / 0.2);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-emerald-500\/25{
  --tw-shadow-color: rgb(16 185 129 / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-emerald-500\/30{
  --tw-shadow-color: rgb(16 185 129 / 0.3);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-green-500\/50{
  --tw-shadow-color: rgb(14 159 110 / 0.5);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-orange-500\/20{
  --tw-shadow-color: rgb(255 90 31 / 0.2);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-orange-500\/25{
  --tw-shadow-color: rgb(255 90 31 / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-purple-500\/25{
  --tw-shadow-color: rgb(144 97 249 / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-purple-500\/30{
  --tw-shadow-color: rgb(144 97 249 / 0.3);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-red-100\/50{
  --tw-shadow-color: rgb(253 232 232 / 0.5);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-red-200{
  --tw-shadow-color: #FBD5D5;
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-red-200\/50{
  --tw-shadow-color: rgb(251 213 213 / 0.5);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-red-500\/20{
  --tw-shadow-color: rgb(240 82 82 / 0.2);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-red-500\/25{
  --tw-shadow-color: rgb(240 82 82 / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-slate-200{
  --tw-shadow-color: #e2e8f0;
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-slate-200\/50{
  --tw-shadow-color: rgb(226 232 240 / 0.5);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-slate-300\/50{
  --tw-shadow-color: rgb(203 213 225 / 0.5);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-slate-500\/25{
  --tw-shadow-color: rgb(100 116 139 / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-slate-900\/10{
  --tw-shadow-color: rgb(15 23 42 / 0.1);
  --tw-shadow: var(--tw-shadow-colored);
}

.shadow-slate-900\/20{
  --tw-shadow-color: rgb(15 23 42 / 0.2);
  --tw-shadow: var(--tw-shadow-colored);
}

.outline-none{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.outline{
  outline-style: solid;
}

.outline-primary{
  outline-color: hsl(var(--primary));
}

.outline-secondary{
  outline-color: hsl(var(--secondary));
}

.ring{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-0{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-1{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-2{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-4{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.ring-blue-400{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(118 169 250 / var(--tw-ring-opacity, 1));
}

.ring-blue-500{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity, 1));
}

.ring-blue-500\/50{
  --tw-ring-color: rgb(63 131 248 / 0.5);
}

.ring-emerald-500{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(16 185 129 / var(--tw-ring-opacity, 1));
}

.ring-green-100{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(222 247 236 / var(--tw-ring-opacity, 1));
}

.ring-green-300{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(132 225 188 / var(--tw-ring-opacity, 1));
}

.ring-purple-100{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(237 235 254 / var(--tw-ring-opacity, 1));
}

.ring-purple-400{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(172 148 250 / var(--tw-ring-opacity, 1));
}

.ring-red-200{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(251 213 213 / var(--tw-ring-opacity, 1));
}

.ring-white{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(255 255 255 / var(--tw-ring-opacity, 1));
}

.ring-opacity-50{
  --tw-ring-opacity: 0.5;
}

.ring-offset-2{
  --tw-ring-offset-width: 2px;
}

.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);
}

.blur-2xl{
  --tw-blur: blur(40px);
  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);
}

.blur-3xl{
  --tw-blur: blur(64px);
  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);
}

.blur-lg{
  --tw-blur: blur(16px);
  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);
}

.blur-xl{
  --tw-blur: blur(24px);
  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{
  --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow(0 1px 1px rgb(0 0 0 / 0.06));
  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-lg{
  --tw-drop-shadow: drop-shadow(0 10px 8px rgb(0 0 0 / 0.04)) drop-shadow(0 4px 3px rgb(0 0 0 / 0.1));
  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-sm{
  --tw-drop-shadow: drop-shadow(0 1px 1px rgb(0 0 0 / 0.05));
  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);
}

.grayscale{
  --tw-grayscale: grayscale(100%);
  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-lg{
  --tw-backdrop-blur: blur(16px);
  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-md{
  --tw-backdrop-blur: blur(12px);
  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(4px);
  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-xl{
  --tw-backdrop-blur: blur(24px);
  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{
  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, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-all{
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-colors{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-opacity{
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-shadow{
  transition-property: box-shadow;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.transition-transform{
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}

.delay-100{
  transition-delay: 100ms;
}

.delay-1000{
  transition-delay: 1000ms;
}

.delay-200{
  transition-delay: 200ms;
}

.duration-1000{
  transition-duration: 1000ms;
}

.duration-150{
  transition-duration: 150ms;
}

.duration-200{
  transition-duration: 200ms;
}

.duration-300{
  transition-duration: 300ms;
}

.duration-500{
  transition-duration: 500ms;
}

.duration-700{
  transition-duration: 700ms;
}

.ease-in{
  transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ease-in-out{
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.ease-out{
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

/* Custom range slider styles */

/* Rest of your existing styles */

.file\:mr-4::file-selector-button{
  margin-right: 1rem;
}

.file\:rounded-full::file-selector-button{
  border-radius: 9999px;
}

.file\:border-0::file-selector-button{
  border-width: 0px;
}

.file\:bg-blue-50::file-selector-button{
  --tw-bg-opacity: 1;
  background-color: rgb(235 245 255 / var(--tw-bg-opacity, 1));
}

.file\:px-4::file-selector-button{
  padding-left: 1rem;
  padding-right: 1rem;
}

.file\:py-2::file-selector-button{
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.file\:text-sm::file-selector-button{
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.file\:font-semibold::file-selector-button{
  font-weight: 600;
}

.file\:text-blue-700::file-selector-button{
  --tw-text-opacity: 1;
  color: rgb(26 86 219 / var(--tw-text-opacity, 1));
}

.placeholder\:text-slate-400::-moz-placeholder{
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}

.placeholder\:text-slate-400::placeholder{
  --tw-text-opacity: 1;
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
}

.after\:ml-0\.5::after{
  content: var(--tw-content);
  margin-left: 0.125rem;
}

.after\:text-red-500::after{
  content: var(--tw-content);
  --tw-text-opacity: 1;
  color: rgb(240 82 82 / var(--tw-text-opacity, 1));
}

.after\:content-\[\"\*\"\]::after{
  --tw-content: "*";
  content: var(--tw-content);
}

.last\:mb-0:last-child{
  margin-bottom: 0px;
}

.last\:border-0:last-child{
  border-width: 0px;
}

.last\:border-b-0:last-child{
  border-bottom-width: 0px;
}

.last\:pb-0:last-child{
  padding-bottom: 0px;
}

.checked\:border-transparent:checked{
  border-color: transparent;
}

.checked\:bg-blue-500:checked{
  --tw-bg-opacity: 1;
  background-color: rgb(63 131 248 / var(--tw-bg-opacity, 1));
}

.focus-within\:border-blue-500:focus-within{
  --tw-border-opacity: 1;
  border-color: rgb(63 131 248 / var(--tw-border-opacity, 1));
}

.focus-within\:outline-none:focus-within{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.focus-within\:ring-2:focus-within{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus-within\:ring-blue-500:focus-within{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity, 1));
}

.focus-within\:ring-offset-2:focus-within{
  --tw-ring-offset-width: 2px;
}

.hover\:-translate-y-0\.5:hover{
  --tw-translate-y: -0.125rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:-translate-y-1:hover{
  --tw-translate-y: -0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:scale-105:hover{
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:scale-110:hover{
  --tw-scale-x: 1.1;
  --tw-scale-y: 1.1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:scale-\[1\.02\]:hover{
  --tw-scale-x: 1.02;
  --tw-scale-y: 1.02;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hover\:transform:hover{
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@keyframes spin{

  to{
    transform: rotate(360deg);
  }
}

.hover\:animate-spin:hover{
  animation: spin 1s linear infinite;
}

.hover\:border-amber-200:hover{
  --tw-border-opacity: 1;
  border-color: rgb(253 230 138 / var(--tw-border-opacity, 1));
}

.hover\:border-amber-300:hover{
  --tw-border-opacity: 1;
  border-color: rgb(252 211 77 / var(--tw-border-opacity, 1));
}

.hover\:border-blue-100:hover{
  --tw-border-opacity: 1;
  border-color: rgb(225 239 254 / var(--tw-border-opacity, 1));
}

.hover\:border-blue-200:hover{
  --tw-border-opacity: 1;
  border-color: rgb(195 221 253 / var(--tw-border-opacity, 1));
}

.hover\:border-blue-300:hover{
  --tw-border-opacity: 1;
  border-color: rgb(164 202 254 / var(--tw-border-opacity, 1));
}

.hover\:border-blue-400:hover{
  --tw-border-opacity: 1;
  border-color: rgb(118 169 250 / var(--tw-border-opacity, 1));
}

.hover\:border-blue-500:hover{
  --tw-border-opacity: 1;
  border-color: rgb(63 131 248 / var(--tw-border-opacity, 1));
}

.hover\:border-emerald-300:hover{
  --tw-border-opacity: 1;
  border-color: rgb(110 231 183 / var(--tw-border-opacity, 1));
}

.hover\:border-emerald-400:hover{
  --tw-border-opacity: 1;
  border-color: rgb(52 211 153 / var(--tw-border-opacity, 1));
}

.hover\:border-emerald-500:hover{
  --tw-border-opacity: 1;
  border-color: rgb(16 185 129 / var(--tw-border-opacity, 1));
}

.hover\:border-gray-300:hover{
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}

.hover\:border-gray-400:hover{
  --tw-border-opacity: 1;
  border-color: rgb(156 163 175 / var(--tw-border-opacity, 1));
}

.hover\:border-green-200:hover{
  --tw-border-opacity: 1;
  border-color: rgb(188 240 218 / var(--tw-border-opacity, 1));
}

.hover\:border-green-300:hover{
  --tw-border-opacity: 1;
  border-color: rgb(132 225 188 / var(--tw-border-opacity, 1));
}

.hover\:border-green-400:hover{
  --tw-border-opacity: 1;
  border-color: rgb(49 196 141 / var(--tw-border-opacity, 1));
}

.hover\:border-indigo-500:hover{
  --tw-border-opacity: 1;
  border-color: rgb(104 117 245 / var(--tw-border-opacity, 1));
}

.hover\:border-orange-300:hover{
  --tw-border-opacity: 1;
  border-color: rgb(253 186 140 / var(--tw-border-opacity, 1));
}

.hover\:border-orange-500:hover{
  --tw-border-opacity: 1;
  border-color: rgb(255 90 31 / var(--tw-border-opacity, 1));
}

.hover\:border-purple-100:hover{
  --tw-border-opacity: 1;
  border-color: rgb(237 235 254 / var(--tw-border-opacity, 1));
}

.hover\:border-purple-200:hover{
  --tw-border-opacity: 1;
  border-color: rgb(220 215 254 / var(--tw-border-opacity, 1));
}

.hover\:border-purple-300:hover{
  --tw-border-opacity: 1;
  border-color: rgb(202 191 253 / var(--tw-border-opacity, 1));
}

.hover\:border-purple-400:hover{
  --tw-border-opacity: 1;
  border-color: rgb(172 148 250 / var(--tw-border-opacity, 1));
}

.hover\:border-purple-500:hover{
  --tw-border-opacity: 1;
  border-color: rgb(144 97 249 / var(--tw-border-opacity, 1));
}

.hover\:border-red-300:hover{
  --tw-border-opacity: 1;
  border-color: rgb(248 180 180 / var(--tw-border-opacity, 1));
}

.hover\:border-slate-300:hover{
  --tw-border-opacity: 1;
  border-color: rgb(203 213 225 / var(--tw-border-opacity, 1));
}

.hover\:border-teal-100:hover{
  --tw-border-opacity: 1;
  border-color: rgb(213 245 246 / var(--tw-border-opacity, 1));
}

.hover\:border-white\/60:hover{
  border-color: rgb(255 255 255 / 0.6);
}

.hover\:bg-amber-100:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(254 243 199 / var(--tw-bg-opacity, 1));
}

.hover\:bg-amber-600:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(217 119 6 / var(--tw-bg-opacity, 1));
}

.hover\:bg-amber-700:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(180 83 9 / var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-100:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(225 239 254 / var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-200:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(195 221 253 / var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-50:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(235 245 255 / var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-600:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(28 100 242 / var(--tw-bg-opacity, 1));
}

.hover\:bg-blue-600\/90:hover{
  background-color: rgb(28 100 242 / 0.9);
}

.hover\:bg-blue-700:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(26 86 219 / var(--tw-bg-opacity, 1));
}

.hover\:bg-destructive\/80:hover{
  background-color: hsl(var(--destructive) / 0.8);
}

.hover\:bg-emerald-50:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(236 253 245 / var(--tw-bg-opacity, 1));
}

.hover\:bg-emerald-600:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(5 150 105 / var(--tw-bg-opacity, 1));
}

.hover\:bg-emerald-700:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(4 120 87 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-100:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-200:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-300:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-400:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-50:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(249 250 251 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-500:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(107 114 128 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-600:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(75 85 99 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-700:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
}

.hover\:bg-gray-800:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
}

.hover\:bg-green-100:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(222 247 236 / var(--tw-bg-opacity, 1));
}

.hover\:bg-green-200:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(188 240 218 / var(--tw-bg-opacity, 1));
}

.hover\:bg-green-50:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(243 250 247 / var(--tw-bg-opacity, 1));
}

.hover\:bg-green-600:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(5 122 85 / var(--tw-bg-opacity, 1));
}

.hover\:bg-green-700:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(4 108 78 / var(--tw-bg-opacity, 1));
}

.hover\:bg-indigo-100:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(229 237 255 / var(--tw-bg-opacity, 1));
}

.hover\:bg-indigo-700:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(81 69 205 / var(--tw-bg-opacity, 1));
}

.hover\:bg-orange-100:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(254 236 220 / var(--tw-bg-opacity, 1));
}

.hover\:bg-orange-200:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(252 217 189 / var(--tw-bg-opacity, 1));
}

.hover\:bg-orange-50:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(255 248 241 / var(--tw-bg-opacity, 1));
}

.hover\:bg-orange-600:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(208 56 1 / var(--tw-bg-opacity, 1));
}

.hover\:bg-orange-700:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(180 52 3 / var(--tw-bg-opacity, 1));
}

.hover\:bg-primary\/80:hover{
  background-color: hsl(var(--primary) / 0.8);
}

.hover\:bg-purple-100:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(237 235 254 / var(--tw-bg-opacity, 1));
}

.hover\:bg-purple-50:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(246 245 255 / var(--tw-bg-opacity, 1));
}

.hover\:bg-purple-600:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(126 58 242 / var(--tw-bg-opacity, 1));
}

.hover\:bg-purple-700:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(108 43 217 / var(--tw-bg-opacity, 1));
}

.hover\:bg-purple-800:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(85 33 181 / var(--tw-bg-opacity, 1));
}

.hover\:bg-red-100:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(253 232 232 / var(--tw-bg-opacity, 1));
}

.hover\:bg-red-200:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(251 213 213 / var(--tw-bg-opacity, 1));
}

.hover\:bg-red-50:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(253 242 242 / var(--tw-bg-opacity, 1));
}

.hover\:bg-red-500:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(240 82 82 / var(--tw-bg-opacity, 1));
}

.hover\:bg-red-500\/90:hover{
  background-color: rgb(240 82 82 / 0.9);
}

.hover\:bg-red-600:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(224 36 36 / var(--tw-bg-opacity, 1));
}

.hover\:bg-red-700:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(200 30 30 / var(--tw-bg-opacity, 1));
}

.hover\:bg-secondary\/80:hover{
  background-color: hsl(var(--secondary) / 0.8);
}

.hover\:bg-slate-100:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(241 245 249 / var(--tw-bg-opacity, 1));
}

.hover\:bg-slate-200:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(226 232 240 / var(--tw-bg-opacity, 1));
}

.hover\:bg-slate-200\/50:hover{
  background-color: rgb(226 232 240 / 0.5);
}

.hover\:bg-slate-300:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(203 213 225 / var(--tw-bg-opacity, 1));
}

.hover\:bg-slate-400:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(148 163 184 / var(--tw-bg-opacity, 1));
}

.hover\:bg-slate-50:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(248 250 252 / var(--tw-bg-opacity, 1));
}

.hover\:bg-slate-700:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(51 65 85 / var(--tw-bg-opacity, 1));
}

.hover\:bg-slate-800:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(30 41 59 / var(--tw-bg-opacity, 1));
}

.hover\:bg-slate-900:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(15 23 42 / var(--tw-bg-opacity, 1));
}

.hover\:bg-white:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
}

.hover\:bg-white\/10:hover{
  background-color: rgb(255 255 255 / 0.1);
}

.hover\:bg-white\/100:hover{
  background-color: rgb(255 255 255 / 1);
}

.hover\:bg-white\/20:hover{
  background-color: rgb(255 255 255 / 0.2);
}

.hover\:bg-white\/30:hover{
  background-color: rgb(255 255 255 / 0.3);
}

.hover\:bg-white\/60:hover{
  background-color: rgb(255 255 255 / 0.6);
}

.hover\:bg-white\/90:hover{
  background-color: rgb(255 255 255 / 0.9);
}

.hover\:bg-white\/95:hover{
  background-color: rgb(255 255 255 / 0.95);
}

.hover\:bg-yellow-100:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(253 246 178 / var(--tw-bg-opacity, 1));
}

.hover\:bg-yellow-200:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(252 233 106 / var(--tw-bg-opacity, 1));
}

.hover\:bg-yellow-300:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(250 202 21 / var(--tw-bg-opacity, 1));
}

.hover\:bg-yellow-50:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(253 253 234 / var(--tw-bg-opacity, 1));
}

.hover\:bg-yellow-600:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(159 88 10 / var(--tw-bg-opacity, 1));
}

.hover\:bg-yellow-700:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(142 75 16 / var(--tw-bg-opacity, 1));
}

.hover\:bg-opacity-20:hover{
  --tw-bg-opacity: 0.2;
}

.hover\:bg-opacity-80:hover{
  --tw-bg-opacity: 0.8;
}

.hover\:bg-gradient-to-r:hover{
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
}

.hover\:from-black:hover{
  --tw-gradient-from: #000000 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-blue-50\/50:hover{
  --tw-gradient-from: rgb(235 245 255 / 0.5) var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(235 245 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-blue-500:hover{
  --tw-gradient-from: #3F83F8 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(63 131 248 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-blue-600:hover{
  --tw-gradient-from: #1C64F2 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(28 100 242 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-blue-700:hover{
  --tw-gradient-from: #1A56DB var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(26 86 219 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-emerald-700:hover{
  --tw-gradient-from: #047857 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(4 120 87 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-gray-700:hover{
  --tw-gradient-from: #374151 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(55 65 81 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-green-100:hover{
  --tw-gradient-from: #DEF7EC var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(222 247 236 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-green-600:hover{
  --tw-gradient-from: #057A55 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(5 122 85 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-green-700:hover{
  --tw-gradient-from: #046C4E var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(4 108 78 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-orange-100:hover{
  --tw-gradient-from: #FEECDC var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(254 236 220 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-purple-600:hover{
  --tw-gradient-from: #7E3AF2 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(126 58 242 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-purple-700:hover{
  --tw-gradient-from: #6C2BD9 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(108 43 217 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-red-100:hover{
  --tw-gradient-from: #FDE8E8 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(253 232 232 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-red-600:hover{
  --tw-gradient-from: #E02424 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(224 36 36 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-red-700:hover{
  --tw-gradient-from: #C81E1E var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(200 30 30 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-slate-700:hover{
  --tw-gradient-from: #334155 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(51 65 85 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:from-yellow-100:hover{
  --tw-gradient-from: #FDF6B2 var(--tw-gradient-from-position);
  --tw-gradient-to: rgb(253 246 178 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}

.hover\:via-blue-700:hover{
  --tw-gradient-to: rgb(26 86 219 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #1A56DB var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.hover\:via-emerald-700:hover{
  --tw-gradient-to: rgb(4 120 87 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #047857 var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.hover\:via-green-700:hover{
  --tw-gradient-to: rgb(4 108 78 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #046C4E var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.hover\:via-indigo-700:hover{
  --tw-gradient-to: rgb(81 69 205 / 0)  var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #5145CD var(--tw-gradient-via-position), var(--tw-gradient-to);
}

.hover\:to-amber-100:hover{
  --tw-gradient-to: #fef3c7 var(--tw-gradient-to-position);
}

.hover\:to-blue-700:hover{
  --tw-gradient-to: #1A56DB var(--tw-gradient-to-position);
}

.hover\:to-blue-800:hover{
  --tw-gradient-to: #1E429F var(--tw-gradient-to-position);
}

.hover\:to-emerald-100:hover{
  --tw-gradient-to: #d1fae5 var(--tw-gradient-to-position);
}

.hover\:to-emerald-700:hover{
  --tw-gradient-to: #047857 var(--tw-gradient-to-position);
}

.hover\:to-emerald-800:hover{
  --tw-gradient-to: #065f46 var(--tw-gradient-to-position);
}

.hover\:to-gray-800:hover{
  --tw-gradient-to: #1F2937 var(--tw-gradient-to-position);
}

.hover\:to-green-700:hover{
  --tw-gradient-to: #046C4E var(--tw-gradient-to-position);
}

.hover\:to-green-800:hover{
  --tw-gradient-to: #03543F var(--tw-gradient-to-position);
}

.hover\:to-indigo-700:hover{
  --tw-gradient-to: #5145CD var(--tw-gradient-to-position);
}

.hover\:to-indigo-800:hover{
  --tw-gradient-to: #42389D var(--tw-gradient-to-position);
}

.hover\:to-orange-700:hover{
  --tw-gradient-to: #B43403 var(--tw-gradient-to-position);
}

.hover\:to-pink-600:hover{
  --tw-gradient-to: #D61F69 var(--tw-gradient-to-position);
}

.hover\:to-pink-700:hover{
  --tw-gradient-to: #BF125D var(--tw-gradient-to-position);
}

.hover\:to-purple-50\/30:hover{
  --tw-gradient-to: rgb(246 245 255 / 0.3) var(--tw-gradient-to-position);
}

.hover\:to-purple-600:hover{
  --tw-gradient-to: #7E3AF2 var(--tw-gradient-to-position);
}

.hover\:to-purple-700:hover{
  --tw-gradient-to: #6C2BD9 var(--tw-gradient-to-position);
}

.hover\:to-red-700:hover{
  --tw-gradient-to: #C81E1E var(--tw-gradient-to-position);
}

.hover\:to-rose-100:hover{
  --tw-gradient-to: #ffe4e6 var(--tw-gradient-to-position);
}

.hover\:to-slate-800:hover{
  --tw-gradient-to: #1e293b var(--tw-gradient-to-position);
}

.hover\:to-teal-700:hover{
  --tw-gradient-to: #036672 var(--tw-gradient-to-position);
}

.hover\:text-amber-600:hover{
  --tw-text-opacity: 1;
  color: rgb(217 119 6 / var(--tw-text-opacity, 1));
}

.hover\:text-amber-900:hover{
  --tw-text-opacity: 1;
  color: rgb(120 53 15 / var(--tw-text-opacity, 1));
}

.hover\:text-blue-500:hover{
  --tw-text-opacity: 1;
  color: rgb(63 131 248 / var(--tw-text-opacity, 1));
}

.hover\:text-blue-600:hover{
  --tw-text-opacity: 1;
  color: rgb(28 100 242 / var(--tw-text-opacity, 1));
}

.hover\:text-blue-700:hover{
  --tw-text-opacity: 1;
  color: rgb(26 86 219 / var(--tw-text-opacity, 1));
}

.hover\:text-blue-800:hover{
  --tw-text-opacity: 1;
  color: rgb(30 66 159 / var(--tw-text-opacity, 1));
}

.hover\:text-blue-900:hover{
  --tw-text-opacity: 1;
  color: rgb(35 56 118 / var(--tw-text-opacity, 1));
}

.hover\:text-emerald-600:hover{
  --tw-text-opacity: 1;
  color: rgb(5 150 105 / var(--tw-text-opacity, 1));
}

.hover\:text-emerald-700:hover{
  --tw-text-opacity: 1;
  color: rgb(4 120 87 / var(--tw-text-opacity, 1));
}

.hover\:text-emerald-800:hover{
  --tw-text-opacity: 1;
  color: rgb(6 95 70 / var(--tw-text-opacity, 1));
}

.hover\:text-gray-200:hover{
  --tw-text-opacity: 1;
  color: rgb(229 231 235 / var(--tw-text-opacity, 1));
}

.hover\:text-gray-600:hover{
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}

.hover\:text-gray-700:hover{
  --tw-text-opacity: 1;
  color: rgb(55 65 81 / var(--tw-text-opacity, 1));
}

.hover\:text-gray-800:hover{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
}

.hover\:text-gray-900:hover{
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}

.hover\:text-green-500:hover{
  --tw-text-opacity: 1;
  color: rgb(14 159 110 / var(--tw-text-opacity, 1));
}

.hover\:text-green-600:hover{
  --tw-text-opacity: 1;
  color: rgb(5 122 85 / var(--tw-text-opacity, 1));
}

.hover\:text-green-700:hover{
  --tw-text-opacity: 1;
  color: rgb(4 108 78 / var(--tw-text-opacity, 1));
}

.hover\:text-green-800:hover{
  --tw-text-opacity: 1;
  color: rgb(3 84 63 / var(--tw-text-opacity, 1));
}

.hover\:text-green-900:hover{
  --tw-text-opacity: 1;
  color: rgb(1 71 55 / var(--tw-text-opacity, 1));
}

.hover\:text-indigo-900:hover{
  --tw-text-opacity: 1;
  color: rgb(54 47 120 / var(--tw-text-opacity, 1));
}

.hover\:text-orange-900:hover{
  --tw-text-opacity: 1;
  color: rgb(119 29 29 / var(--tw-text-opacity, 1));
}

.hover\:text-purple-500:hover{
  --tw-text-opacity: 1;
  color: rgb(144 97 249 / var(--tw-text-opacity, 1));
}

.hover\:text-purple-600:hover{
  --tw-text-opacity: 1;
  color: rgb(126 58 242 / var(--tw-text-opacity, 1));
}

.hover\:text-purple-700:hover{
  --tw-text-opacity: 1;
  color: rgb(108 43 217 / var(--tw-text-opacity, 1));
}

.hover\:text-purple-800:hover{
  --tw-text-opacity: 1;
  color: rgb(85 33 181 / var(--tw-text-opacity, 1));
}

.hover\:text-purple-900:hover{
  --tw-text-opacity: 1;
  color: rgb(74 29 150 / var(--tw-text-opacity, 1));
}

.hover\:text-red-500:hover{
  --tw-text-opacity: 1;
  color: rgb(240 82 82 / var(--tw-text-opacity, 1));
}

.hover\:text-red-600:hover{
  --tw-text-opacity: 1;
  color: rgb(224 36 36 / var(--tw-text-opacity, 1));
}

.hover\:text-red-700:hover{
  --tw-text-opacity: 1;
  color: rgb(200 30 30 / var(--tw-text-opacity, 1));
}

.hover\:text-red-800:hover{
  --tw-text-opacity: 1;
  color: rgb(155 28 28 / var(--tw-text-opacity, 1));
}

.hover\:text-red-900:hover{
  --tw-text-opacity: 1;
  color: rgb(119 29 29 / var(--tw-text-opacity, 1));
}

.hover\:text-rose-500:hover{
  --tw-text-opacity: 1;
  color: rgb(244 63 94 / var(--tw-text-opacity, 1));
}

.hover\:text-rose-600:hover{
  --tw-text-opacity: 1;
  color: rgb(225 29 72 / var(--tw-text-opacity, 1));
}

.hover\:text-slate-600:hover{
  --tw-text-opacity: 1;
  color: rgb(71 85 105 / var(--tw-text-opacity, 1));
}

.hover\:text-slate-700:hover{
  --tw-text-opacity: 1;
  color: rgb(51 65 85 / var(--tw-text-opacity, 1));
}

.hover\:text-slate-800:hover{
  --tw-text-opacity: 1;
  color: rgb(30 41 59 / var(--tw-text-opacity, 1));
}

.hover\:text-slate-900:hover{
  --tw-text-opacity: 1;
  color: rgb(15 23 42 / var(--tw-text-opacity, 1));
}

.hover\:text-white:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.hover\:text-yellow-500:hover{
  --tw-text-opacity: 1;
  color: rgb(194 120 3 / var(--tw-text-opacity, 1));
}

.hover\:text-yellow-600:hover{
  --tw-text-opacity: 1;
  color: rgb(159 88 10 / var(--tw-text-opacity, 1));
}

.hover\:text-yellow-900:hover{
  --tw-text-opacity: 1;
  color: rgb(99 49 18 / var(--tw-text-opacity, 1));
}

.hover\:underline:hover{
  text-decoration-line: underline;
}

.hover\:no-underline:hover{
  text-decoration-line: none;
}

.hover\:opacity-100:hover{
  opacity: 1;
}

.hover\:opacity-95:hover{
  opacity: 0.95;
}

.hover\:shadow:hover{
  --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-2xl:hover{
  --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
  --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-lg:hover{
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-md:hover{
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-sm:hover{
  --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-xl:hover{
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.hover\:shadow-blue-100\/50:hover{
  --tw-shadow-color: rgb(225 239 254 / 0.5);
  --tw-shadow: var(--tw-shadow-colored);
}

.hover\:shadow-blue-200:hover{
  --tw-shadow-color: #C3DDFD;
  --tw-shadow: var(--tw-shadow-colored);
}

.hover\:shadow-blue-300:hover{
  --tw-shadow-color: #A4CAFE;
  --tw-shadow: var(--tw-shadow-colored);
}

.hover\:shadow-blue-500\/25:hover{
  --tw-shadow-color: rgb(63 131 248 / 0.25);
  --tw-shadow: var(--tw-shadow-colored);
}

.hover\:shadow-emerald-500\/30:hover{
  --tw-shadow-color: rgb(16 185 129 / 0.3);
  --tw-shadow: var(--tw-shadow-colored);
}

.hover\:shadow-green-300:hover{
  --tw-shadow-color: #84E1BC;
  --tw-shadow: var(--tw-shadow-colored);
}

.hover\:shadow-slate-200\/50:hover{
  --tw-shadow-color: rgb(226 232 240 / 0.5);
  --tw-shadow: var(--tw-shadow-colored);
}

.hover\:file\:bg-blue-100::file-selector-button:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(225 239 254 / var(--tw-bg-opacity, 1));
}

.focus\:z-10:focus{
  z-index: 10;
}

.focus\:border-amber-500:focus{
  --tw-border-opacity: 1;
  border-color: rgb(245 158 11 / var(--tw-border-opacity, 1));
}

.focus\:border-blue-400:focus{
  --tw-border-opacity: 1;
  border-color: rgb(118 169 250 / var(--tw-border-opacity, 1));
}

.focus\:border-blue-500:focus{
  --tw-border-opacity: 1;
  border-color: rgb(63 131 248 / var(--tw-border-opacity, 1));
}

.focus\:border-emerald-500:focus{
  --tw-border-opacity: 1;
  border-color: rgb(16 185 129 / var(--tw-border-opacity, 1));
}

.focus\:border-green-500:focus{
  --tw-border-opacity: 1;
  border-color: rgb(14 159 110 / var(--tw-border-opacity, 1));
}

.focus\:border-orange-500:focus{
  --tw-border-opacity: 1;
  border-color: rgb(255 90 31 / var(--tw-border-opacity, 1));
}

.focus\:border-pink-500:focus{
  --tw-border-opacity: 1;
  border-color: rgb(231 70 148 / var(--tw-border-opacity, 1));
}

.focus\:border-purple-500:focus{
  --tw-border-opacity: 1;
  border-color: rgb(144 97 249 / var(--tw-border-opacity, 1));
}

.focus\:border-red-500:focus{
  --tw-border-opacity: 1;
  border-color: rgb(240 82 82 / var(--tw-border-opacity, 1));
}

.focus\:border-red-600:focus{
  --tw-border-opacity: 1;
  border-color: rgb(224 36 36 / var(--tw-border-opacity, 1));
}

.focus\:border-transparent:focus{
  border-color: transparent;
}

.focus\:border-yellow-500:focus{
  --tw-border-opacity: 1;
  border-color: rgb(194 120 3 / var(--tw-border-opacity, 1));
}

.focus\:outline-none:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.focus\:ring-1:focus{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-2:focus{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-4:focus{
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
}

.focus\:ring-amber-100:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(254 243 199 / var(--tw-ring-opacity, 1));
}

.focus\:ring-amber-500:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(245 158 11 / var(--tw-ring-opacity, 1));
}

.focus\:ring-black:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(0 0 0 / var(--tw-ring-opacity, 1));
}

.focus\:ring-blue-100:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(225 239 254 / var(--tw-ring-opacity, 1));
}

.focus\:ring-blue-200:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(195 221 253 / var(--tw-ring-opacity, 1));
}

.focus\:ring-blue-200\/50:focus{
  --tw-ring-color: rgb(195 221 253 / 0.5);
}

.focus\:ring-blue-300:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(164 202 254 / var(--tw-ring-opacity, 1));
}

.focus\:ring-blue-400\/50:focus{
  --tw-ring-color: rgb(118 169 250 / 0.5);
}

.focus\:ring-blue-500:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(63 131 248 / var(--tw-ring-opacity, 1));
}

.focus\:ring-blue-500\/20:focus{
  --tw-ring-color: rgb(63 131 248 / 0.2);
}

.focus\:ring-emerald-500:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(16 185 129 / var(--tw-ring-opacity, 1));
}

.focus\:ring-gray-500:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity, 1));
}

.focus\:ring-green-100:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(222 247 236 / var(--tw-ring-opacity, 1));
}

.focus\:ring-green-500:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(14 159 110 / var(--tw-ring-opacity, 1));
}

.focus\:ring-orange-100:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(254 236 220 / var(--tw-ring-opacity, 1));
}

.focus\:ring-orange-500:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(255 90 31 / var(--tw-ring-opacity, 1));
}

.focus\:ring-pink-100:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(252 232 243 / var(--tw-ring-opacity, 1));
}

.focus\:ring-purple-100:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(237 235 254 / var(--tw-ring-opacity, 1));
}

.focus\:ring-purple-200\/50:focus{
  --tw-ring-color: rgb(220 215 254 / 0.5);
}

.focus\:ring-purple-500:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(144 97 249 / var(--tw-ring-opacity, 1));
}

.focus\:ring-red-100:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(253 232 232 / var(--tw-ring-opacity, 1));
}

.focus\:ring-red-200:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(251 213 213 / var(--tw-ring-opacity, 1));
}

.focus\:ring-red-200\/50:focus{
  --tw-ring-color: rgb(251 213 213 / 0.5);
}

.focus\:ring-red-500:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(240 82 82 / var(--tw-ring-opacity, 1));
}

.focus\:ring-ring:focus{
  --tw-ring-color: hsl(var(--ring));
}

.focus\:ring-yellow-100:focus{
  --tw-ring-opacity: 1;
  --tw-ring-color: rgb(253 246 178 / var(--tw-ring-opacity, 1));
}

.focus\:ring-offset-2:focus{
  --tw-ring-offset-width: 2px;
}

.active\:scale-95:active{
  --tw-scale-x: .95;
  --tw-scale-y: .95;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.active\:cursor-grabbing:active{
  cursor: grabbing;
}

.disabled\:cursor-not-allowed:disabled{
  cursor: not-allowed;
}

.disabled\:bg-blue-300:disabled{
  --tw-bg-opacity: 1;
  background-color: rgb(164 202 254 / var(--tw-bg-opacity, 1));
}

.disabled\:bg-blue-400:disabled{
  --tw-bg-opacity: 1;
  background-color: rgb(118 169 250 / var(--tw-bg-opacity, 1));
}

.disabled\:bg-gray-300:disabled{
  --tw-bg-opacity: 1;
  background-color: rgb(209 213 219 / var(--tw-bg-opacity, 1));
}

.disabled\:bg-gray-400:disabled{
  --tw-bg-opacity: 1;
  background-color: rgb(156 163 175 / var(--tw-bg-opacity, 1));
}

.disabled\:opacity-50:disabled{
  opacity: 0.5;
}

.disabled\:opacity-70:disabled{
  opacity: 0.7;
}

.disabled\:shadow-none:disabled{
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.disabled\:hover\:scale-100:hover:disabled{
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:visible{
  visibility: visible;
}

.group:hover .group-hover\:translate-x-1{
  --tw-translate-x: 0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:rotate-12{
  --tw-rotate: 12deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:rotate-90{
  --tw-rotate: 90deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-105{
  --tw-scale-x: 1.05;
  --tw-scale-y: 1.05;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-110{
  --tw-scale-x: 1.1;
  --tw-scale-y: 1.1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-125{
  --tw-scale-x: 1.25;
  --tw-scale-y: 1.25;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-150{
  --tw-scale-x: 1.5;
  --tw-scale-y: 1.5;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:scale-x-100{
  --tw-scale-x: 1;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.group:hover .group-hover\:bg-black\/10{
  background-color: rgb(0 0 0 / 0.1);
}

.group:hover .group-hover\:bg-blue-100{
  --tw-bg-opacity: 1;
  background-color: rgb(225 239 254 / var(--tw-bg-opacity, 1));
}

.group:hover .group-hover\:bg-blue-50{
  --tw-bg-opacity: 1;
  background-color: rgb(235 245 255 / var(--tw-bg-opacity, 1));
}

.group:hover .group-hover\:bg-green-100{
  --tw-bg-opacity: 1;
  background-color: rgb(222 247 236 / var(--tw-bg-opacity, 1));
}

.group:hover .group-hover\:bg-purple-100{
  --tw-bg-opacity: 1;
  background-color: rgb(237 235 254 / var(--tw-bg-opacity, 1));
}

.group:hover .group-hover\:bg-rose-100{
  --tw-bg-opacity: 1;
  background-color: rgb(255 228 230 / var(--tw-bg-opacity, 1));
}

.group:hover .group-hover\:text-amber-600{
  --tw-text-opacity: 1;
  color: rgb(217 119 6 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:text-blue-600{
  --tw-text-opacity: 1;
  color: rgb(28 100 242 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:text-emerald-600{
  --tw-text-opacity: 1;
  color: rgb(5 150 105 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:text-emerald-700{
  --tw-text-opacity: 1;
  color: rgb(4 120 87 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:text-gray-300{
  --tw-text-opacity: 1;
  color: rgb(209 213 219 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:text-gray-600{
  --tw-text-opacity: 1;
  color: rgb(75 85 99 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:text-gray-900{
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:text-green-600{
  --tw-text-opacity: 1;
  color: rgb(5 122 85 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:text-purple-600{
  --tw-text-opacity: 1;
  color: rgb(126 58 242 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:text-red-600{
  --tw-text-opacity: 1;
  color: rgb(224 36 36 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:text-slate-500{
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:text-slate-600{
  --tw-text-opacity: 1;
  color: rgb(71 85 105 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:text-slate-900{
  --tw-text-opacity: 1;
  color: rgb(15 23 42 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:text-yellow-600{
  --tw-text-opacity: 1;
  color: rgb(159 88 10 / var(--tw-text-opacity, 1));
}

.group:hover .group-hover\:opacity-100{
  opacity: 1;
}

.group:hover .group-hover\:opacity-60{
  opacity: 0.6;
}

.dark\:\!bg-gray-700:is(.dark *){
  --tw-bg-opacity: 1 !important;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1)) !important;
}

.dark\:bg-gray-700:is(.dark *){
  --tw-bg-opacity: 1;
  background-color: rgb(55 65 81 / var(--tw-bg-opacity, 1));
}

@media (min-width: 640px){

  .sm\:col-span-2{
    grid-column: span 2 / span 2;
  }

  .sm\:mx-auto{
    margin-left: auto;
    margin-right: auto;
  }

  .sm\:mt-0{
    margin-top: 0px;
  }

  .sm\:block{
    display: block;
  }

  .sm\:inline{
    display: inline;
  }

  .sm\:hidden{
    display: none;
  }

  .sm\:h-4{
    height: 1rem;
  }

  .sm\:h-\[220px\]{
    height: 220px;
  }

  .sm\:w-4{
    width: 1rem;
  }

  .sm\:w-48{
    width: 12rem;
  }

  .sm\:w-\[330px\]{
    width: 330px;
  }

  .sm\:w-auto{
    width: auto;
  }

  .sm\:w-full{
    width: 100%;
  }

  .sm\:max-w-md{
    max-width: 28rem;
  }

  .sm\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sm\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .sm\:flex-row{
    flex-direction: row;
  }

  .sm\:flex-col{
    flex-direction: column;
  }

  .sm\:items-end{
    align-items: flex-end;
  }

  .sm\:items-center{
    align-items: center;
  }

  .sm\:justify-between{
    justify-content: space-between;
  }

  .sm\:gap-6{
    gap: 1.5rem;
  }

  .sm\:space-x-1 > :not([hidden]) ~ :not([hidden]){
    --tw-space-x-reverse: 0;
    margin-right: calc(0.25rem * var(--tw-space-x-reverse));
    margin-left: calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));
  }

  .sm\:space-x-2 > :not([hidden]) ~ :not([hidden]){
    --tw-space-x-reverse: 0;
    margin-right: calc(0.5rem * var(--tw-space-x-reverse));
    margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
  }

  .sm\:space-x-3 > :not([hidden]) ~ :not([hidden]){
    --tw-space-x-reverse: 0;
    margin-right: calc(0.75rem * var(--tw-space-x-reverse));
    margin-left: calc(0.75rem * calc(1 - var(--tw-space-x-reverse)));
  }

  .sm\:space-x-4 > :not([hidden]) ~ :not([hidden]){
    --tw-space-x-reverse: 0;
    margin-right: calc(1rem * var(--tw-space-x-reverse));
    margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
  }

  .sm\:space-y-0 > :not([hidden]) ~ :not([hidden]){
    --tw-space-y-reverse: 0;
    margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(0px * var(--tw-space-y-reverse));
  }

  .sm\:rounded-lg{
    border-radius: 0.5rem;
  }

  .sm\:p-1\.5{
    padding: 0.375rem;
  }

  .sm\:p-6{
    padding: 1.5rem;
  }

  .sm\:px-10{
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  .sm\:px-4{
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .sm\:px-6{
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .sm\:py-3{
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
  }

  .sm\:pr-20{
    padding-right: 5rem;
  }

  .sm\:text-left{
    text-align: left;
  }

  .sm\:text-2xl{
    font-size: 1.5rem;
    line-height: 2rem;
  }

  .sm\:text-5xl{
    font-size: 3rem;
    line-height: 1;
  }

  .sm\:text-base{
    font-size: 1rem;
    line-height: 1.5rem;
  }

  .sm\:text-sm{
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
}

@media (min-width: 768px){

  .md\:col-span-1{
    grid-column: span 1 / span 1;
  }

  .md\:col-span-2{
    grid-column: span 2 / span 2;
  }

  .md\:col-span-3{
    grid-column: span 3 / span 3;
  }

  .md\:col-span-5{
    grid-column: span 5 / span 5;
  }

  .md\:col-span-7{
    grid-column: span 7 / span 7;
  }

  .md\:mb-0{
    margin-bottom: 0px;
  }

  .md\:mb-1{
    margin-bottom: 0.25rem;
  }

  .md\:mb-8{
    margin-bottom: 2rem;
  }

  .md\:mt-0{
    margin-top: 0px;
  }

  .md\:block{
    display: block;
  }

  .md\:inline{
    display: inline;
  }

  .md\:flex{
    display: flex;
  }

  .md\:grid{
    display: grid;
  }

  .md\:hidden{
    display: none;
  }

  .md\:h-12{
    height: 3rem;
  }

  .md\:h-14{
    height: 3.5rem;
  }

  .md\:h-28{
    height: 7rem;
  }

  .md\:h-4{
    height: 1rem;
  }

  .md\:h-5{
    height: 1.25rem;
  }

  .md\:h-6{
    height: 1.5rem;
  }

  .md\:h-64{
    height: 16rem;
  }

  .md\:h-8{
    height: 2rem;
  }

  .md\:h-\[18px\]{
    height: 18px;
  }

  .md\:h-\[22px\]{
    height: 22px;
  }

  .md\:h-\[500px\]{
    height: 500px;
  }

  .md\:h-auto{
    height: auto;
  }

  .md\:w-12{
    width: 3rem;
  }

  .md\:w-14{
    width: 3.5rem;
  }

  .md\:w-28{
    width: 7rem;
  }

  .md\:w-4{
    width: 1rem;
  }

  .md\:w-48{
    width: 12rem;
  }

  .md\:w-5{
    width: 1.25rem;
  }

  .md\:w-6{
    width: 1.5rem;
  }

  .md\:w-64{
    width: 16rem;
  }

  .md\:w-8{
    width: 2rem;
  }

  .md\:w-96{
    width: 24rem;
  }

  .md\:w-\[18px\]{
    width: 18px;
  }

  .md\:w-\[22px\]{
    width: 22px;
  }

  .md\:w-\[450px\]{
    width: 450px;
  }

  .md\:w-auto{
    width: auto;
  }

  .md\:flex-shrink-0{
    flex-shrink: 0;
  }

  .md\:translate-x-0{
    --tw-translate-x: 0px;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .md\:grid-cols-1{
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }

  .md\:grid-cols-12{
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }

  .md\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .md\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .md\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .md\:grid-cols-5{
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .md\:grid-cols-6{
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .md\:flex-row{
    flex-direction: row;
  }

  .md\:items-start{
    align-items: flex-start;
  }

  .md\:items-center{
    align-items: center;
  }

  .md\:justify-between{
    justify-content: space-between;
  }

  .md\:gap-2{
    gap: 0.5rem;
  }

  .md\:gap-3{
    gap: 0.75rem;
  }

  .md\:gap-4{
    gap: 1rem;
  }

  .md\:rounded-2xl{
    border-radius: 1rem;
  }

  .md\:rounded-3xl{
    border-radius: 1.5rem;
  }

  .md\:rounded-xl{
    border-radius: 0.75rem;
  }

  .md\:p-12{
    padding: 3rem;
  }

  .md\:p-3{
    padding: 0.75rem;
  }

  .md\:p-4{
    padding: 1rem;
  }

  .md\:p-6{
    padding: 1.5rem;
  }

  .md\:p-8{
    padding: 2rem;
  }

  .md\:px-10{
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }

  .md\:py-4{
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .md\:text-left{
    text-align: left;
  }

  .md\:text-right{
    text-align: right;
  }

  .md\:text-2xl{
    font-size: 1.5rem;
    line-height: 2rem;
  }

  .md\:text-3xl{
    font-size: 1.875rem;
    line-height: 2.25rem;
  }

  .md\:text-4xl{
    font-size: 2.25rem;
    line-height: 2.5rem;
  }

  .md\:text-5xl{
    font-size: 3rem;
    line-height: 1;
  }

  .md\:text-6xl{
    font-size: 3.75rem;
    line-height: 1;
  }

  .md\:text-7xl{
    font-size: 4.5rem;
    line-height: 1;
  }

  .md\:text-\[12rem\]{
    font-size: 12rem;
  }

  .md\:text-lg{
    font-size: 1.125rem;
    line-height: 1.75rem;
  }

  .md\:text-sm{
    font-size: 0.875rem;
    line-height: 1.25rem;
  }

  .md\:text-xl{
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}

@media (min-width: 1024px){

  .lg\:col-span-1{
    grid-column: span 1 / span 1;
  }

  .lg\:col-span-2{
    grid-column: span 2 / span 2;
  }

  .lg\:col-span-3{
    grid-column: span 3 / span 3;
  }

  .lg\:col-span-6{
    grid-column: span 6 / span 6;
  }

  .lg\:col-span-9{
    grid-column: span 9 / span 9;
  }

  .lg\:block{
    display: block;
  }

  .lg\:hidden{
    display: none;
  }

  .lg\:min-h-\[900px\]{
    min-height: 900px;
  }

  .lg\:w-1\/5{
    width: 20%;
  }

  .lg\:w-4\/5{
    width: 80%;
  }

  .lg\:w-\[280px\]{
    width: 280px;
  }

  .lg\:w-\[400px\]{
    width: 400px;
  }

  .lg\:w-\[450px\]{
    width: 450px;
  }

  .lg\:translate-x-0{
    --tw-translate-x: 0px;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .lg\:grid-cols-12{
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }

  .lg\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lg\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .lg\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .lg\:grid-cols-6{
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .lg\:grid-cols-7{
    grid-template-columns: repeat(7, minmax(0, 1fr));
  }

  .lg\:flex-row{
    flex-direction: row;
  }

  .lg\:items-center{
    align-items: center;
  }

  .lg\:p-8{
    padding: 2rem;
  }

  .lg\:px-8{
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .lg\:pl-80{
    padding-left: 20rem;
  }

  .lg\:pt-0{
    padding-top: 0px;
  }

  .lg\:text-3xl{
    font-size: 1.875rem;
    line-height: 2.25rem;
  }

  .lg\:text-5xl{
    font-size: 3rem;
    line-height: 1;
  }

  .lg\:text-6xl{
    font-size: 3.75rem;
    line-height: 1;
  }

  .lg\:text-7xl{
    font-size: 4.5rem;
    line-height: 1;
  }

  .lg\:text-xl{
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}

@media (min-width: 1280px){

  .xl\:col-span-1{
    grid-column: span 1 / span 1;
  }

  .xl\:col-span-3{
    grid-column: span 3 / span 3;
  }

  .xl\:block{
    display: block;
  }

  .xl\:grid-cols-2{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xl\:grid-cols-3{
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .xl\:grid-cols-4{
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .xl\:text-7xl{
    font-size: 4.5rem;
    line-height: 1;
  }
}
/* Essential Custom Styles for HomeLeafs Application */

/* Custom color for HomeLeafs branding */
.homeleafs-text {
  color: #c1e1c1;
}

/* Sidebar styling */
.sidebar {
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

/* Form border customization */
.border {
  --tw-border-opacity: 1;
  border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));
}

/* Profile card components */
.profile-cover {
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
  background-size: cover;
}

.avatar-xl {
  height: 6rem;
  width: 6rem;
  border-radius: 9999px;
}

.card-body {
  padding: 1rem;
}

/* Custom button styles */
.btn-gray-800 {
  border-radius: 0.5rem;
  --tw-bg-opacity: 1;
  background-color: rgb(31 41 55 / var(--tw-bg-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
.btn-gray-800:hover {
  opacity: 0.95;
}

.btn-secondary {
  border-radius: 0.5rem;
  --tw-bg-opacity: 1;
  background-color: rgb(63 131 248 / var(--tw-bg-opacity, 1));
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.btn-secondary:hover {
  opacity: 0.95;
}

/* Notification & Alert Section */
.list-group > :not([hidden]) ~ :not([hidden]) {
  --tw-divide-y-reverse: 0;
  border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
  border-bottom-width: calc(1px * var(--tw-divide-y-reverse));
  --tw-divide-opacity: 1;
  border-color: rgb(229 231 235 / var(--tw-divide-opacity, 1));
}

.list-group-item {
  border-bottom-width: 1px;
  padding-left: 0px;
  padding-right: 0px;
}

.form-switch {
  display: flex;
  justify-content: flex-end;
}

/* Toggle styling */
.form-check-input {
  border-radius: 9999px;
}

/* Utility classes for special layout needs */
.flex-items-center {
  display: flex;
  align-items: center;
}

.file-field {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Responsive text utilities */
.h3 {
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 700;
}

.fw-normal {
  font-weight: 400;
}

.text-gray {
  --tw-text-opacity: 1;
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
}

.text-dark {
  --tw-text-opacity: 1;
  color: rgb(17 24 39 / var(--tw-text-opacity, 1));
}

.small {
  font-size: 0.875rem;
  line-height: 1.25rem;
}

/* Layout utilities */
.d-inline-flex {
  display: inline-flex;
}

.align-items-center {
  align-items: center;
}

.d-md-block {
  display: block;
}

.justify-content-xl-center {
  justify-content: center;
}

/* Spacing utilities */
.me-2 {
  margin-right: 0.5rem;
}

.ms-xl-3 {
  margin-left: 0.75rem;
}

.mt-n7 {
  margin-top: -1.75rem;
}

/* Text alignment - removed circular dependency */

/* Border radius override for specific components */
.rounded-top {
  border-top-left-radius: 0.5rem;
  border-top-right-radius: 0.5rem;
}
