/* Modern iOS Glassmorphism & Micro-animations */
@layer base {
  * {
    -webkit-tap-highlight-color: transparent;
  }
}

body {
  font-family: 'Tajawal', -apple-system, BlinkMacSystemFont, sans-serif;
  touch-action: manipulation;
  user-select: none;
}

/* Light Mode Overrides */
html:not(.dark) body {
  background-color: #F2F2F7;
  color: #1C1C1E;
}

html:not(.dark) .bg-zinc-950 {
  background-color: #FFFFFF;
  border-color: #E5E5EA;
  color: #1C1C1E;
}

html:not(.dark) .bg-zinc-900 {
  background-color: #FFFFFF;
  border-color: #E5E5EA;
  color: #1C1C1E;
}

html:not(.dark) .bg-zinc-800 {
  background-color: #E5E5EA;
  color: #1C1C1E;
}

html:not(.dark) .border-zinc-800 {
  border-color: #E5E5EA !important;
}

html:not(.dark) .border-zinc-700 {
  border-color: #D1D1D6 !important;
}

html:not(.dark) .text-white {
  color: #1C1C1E !important;
}

html:not(.dark) .text-zinc-200,
html:not(.dark) .text-zinc-300 {
  color: #2C2C2E !important;
}

html:not(.dark) .text-zinc-400,
html:not(.dark) .text-zinc-500 {
  color: #8E8E93 !important;
}

html:not(.dark) .nav-tab.active-tab {
  background-color: #FFFFFF;
  color: #4F46E5 !important;
}

/* Custom Scrollbars */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  background: rgba(120, 120, 128, 0.3);
  border-radius: 9999px;
}
::-webkit-scrollbar-thumb:hover {
  background: rgba(120, 120, 128, 0.5);
}

/* Tab active animation */
.nav-tab.active-tab {
  background-color: #27272A;
  color: #FFFFFF;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

/* Keyframes */
@keyframes slideUp {
  from {
    transform: translateY(100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes scaleIn {
  from {
    transform: scale(0.95);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}

.animate-slide-up {
  animation: slideUp 0.28s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.animate-scale-in {
  animation: scaleIn 0.22s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Table inline editable cells */
.editable-cell {
  position: relative;
  cursor: pointer;
  transition: background-color 0.15s ease;
  min-height: 44px;
}

.editable-cell:hover {
  background-color: rgba(99, 102, 241, 0.08);
}

.editable-cell:active {
  background-color: rgba(99, 102, 241, 0.15);
}

/* Quick preset chips horizontal scrollbar hide */
.scrollbar-none::-webkit-scrollbar {
  display: none;
}
.scrollbar-none {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.editable-cell.is-editing input,
.editable-cell.is-editing select {
  width: 100%;
  padding: 4px 6px;
  background-color: #09090b;
  border: 1px solid #6366f1;
  border-radius: 6px;
  color: #ffffff;
  outline: none;
  font-size: inherit;
  font-family: inherit;
}

html:not(.dark) .editable-cell.is-editing input,
html:not(.dark) .editable-cell.is-editing select {
  background-color: #ffffff;
  color: #1c1c1e;
}

/* Selected Payment Method */
.pay-method-btn.active-method {
  background-color: #4F46E5 !important;
  border-color: #6366f1 !important;
  color: #ffffff !important;
}

/* Selected Category Picker Tile */
.cat-picker-item.selected {
  border-color: #6366f1 !important;
  background-color: rgba(99, 102, 241, 0.15) !important;
}