* { -webkit-tap-highlight-color: transparent; }

body {
  font-feature-settings: 'cv11', 'ss01';
  letter-spacing: -0.01em;
}

.login-bg {
  background:
    radial-gradient(ellipse 800px 600px at 50% 0%, rgba(124, 58, 237, 0.18), transparent 70%),
    radial-gradient(ellipse 600px 400px at 50% 100%, rgba(168, 85, 247, 0.08), transparent 60%),
    #0a0a0a;
}

::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #2a2a2a; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #3a3a3a; }

.tab-content { display: none; }
.tab-content.active { display: block; }

.modal-backdrop {
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.stat-card {
  background: linear-gradient(180deg, #161616 0%, #131313 100%);
  border: 1px solid #1f1f1f;
}

.gradient-text {
  background: linear-gradient(135deg, #a855f7 0%, #c084fc 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.btn-primary {
  background: linear-gradient(135deg, #7c3aed 0%, #a855f7 100%);
  transition: all 0.2s;
  color: white;
}
.btn-primary:hover {
  background: linear-gradient(135deg, #6d28d9 0%, #9333ea 100%);
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(124, 58, 237, 0.35);
}

.nav-item {
  color: #a0a0a0;
  transition: all 0.15s;
  border-left: 2px solid transparent;
}
.nav-item:hover {
  background: rgba(255, 255, 255, 0.03);
  color: #fff;
}
.nav-item.active {
  background: linear-gradient(90deg, rgba(124, 58, 237, 0.18) 0%, rgba(168, 85, 247, 0.04) 100%);
  border-left-color: #a855f7;
  color: #fff;
}

table tbody tr {
  transition: background 0.15s;
}
table tbody tr:hover {
  background: rgba(255, 255, 255, 0.02);
}

.fade-in {
  animation: fadeIn 0.25s ease-out;
}
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

select, input, textarea {
  color-scheme: dark;
}

.progress-bar {
  height: 6px;
  background: #1f1f1f;
  border-radius: 3px;
  overflow: hidden;
}
.progress-bar-fill {
  height: 100%;
  background: linear-gradient(90deg, #7c3aed, #a855f7);
  transition: width 0.5s ease;
  border-radius: 3px;
}

input[type="date"]::-webkit-calendar-picker-indicator {
  filter: invert(0.6);
  cursor: pointer;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type="number"] { -moz-appearance: textfield; }
