/* Custom overrides for better UI feel */
html, body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
::selection { background: #bfdbfe; color: #0f172a; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 10px; border: 2px solid #f1f5f9; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }
a, button { transition: background-color .15s ease, color .15s ease, border-color .15s ease, box-shadow .15s ease, opacity .15s ease; }
input, select, textarea { outline: none; }
input:focus, select:focus, textarea:focus { box-shadow: 0 0 0 3px rgba(59,130,246,.3); border-color: #60a5fa; }
#sidebar { box-shadow: 0 10px 25px rgba(2,6,23,.35); }
[data-lucide] { width: 20px; height: 20px; }

.spinner { border: 2px solid #cbd5e1; border-top-color: #2563eb; border-radius: 50%; animation: spin .8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

/* Dark mode overrides */
.dark body { background-color: #0f172a; color: #e2e8f0; }
.dark .bg-white { background-color: #0b1220 !important; }
.dark .bg-slate-50 { background-color: #0b1324 !important; }
.dark .border-slate-200 { border-color: #1f2937 !important; }
.dark .text-slate-800 { color: #e2e8f0 !important; }
.dark .text-slate-700 { color: #cbd5e1 !important; }
.dark .text-slate-600 { color: #94a3b8 !important; }
.dark .text-slate-500 { color: #94a3b8 !important; }
.dark #sidebarOverlay { background-color: rgba(0,0,0,.6); }
.dark header { background-color: #0b1324; border-color: #1f2937; }
.dark .shadow-sm { box-shadow: 0 1px 3px rgba(0,0,0,.6), 0 1px 2px rgba(0,0,0,.4); }
