@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');

:root {
    --primary: #4f46e5;
    --secondary: #10b981;
    --dark: #1e293b;
    --light: #f8fafc;
    --gray: #64748b;
}

body {
    font-family: 'Poppins', sans-serif;
    scroll-behavior: smooth;
}

.gradient-text {
    background: linear-gradient(90deg, var(--primary), var(--secondary));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.navbar-active {
    color: var(--primary) !important;
}

.project-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.timeline-item:not(:last-child) {
    padding-bottom: 2rem;
}

.timeline-item::after {
    content: "";
    position: absolute;
    left: 7px;
    top: 20px;
    height: 100%;
    width: 2px;
    background: #e2e8f0;
}

.skill-bar {
    height: 8px;
    border-radius: 4px;
    background: #e2e8f0;
}

.skill-progress {
    height: 100%;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--primary), var(--secondary));
}

body.dark {
    background-color: #18181b !important;
    color: #f3f4f6 !important;
}

body.dark .bg-white {
    background-color: #23232a !important;
}

body.dark .bg-gray-50 {
    background-color: #18181b !important;
}

body.dark .text-gray-700,
body.dark .text-gray-600 {
    color: #d1d5db !important;
}

body.dark .text-slate-800 {
    color: #f3f4f6 !important;
}

body.dark .border-gray-200 {
    border-color: #444 !important;
}

body.dark .bg-indigo-50 {
    background-color: #312e81 !important;
    color: #a5b4fc !important;
}

body.dark .bg-emerald-100 {
    background-color: #064e3b !important;
    color: #6ee7b7 !important;
}

body.dark .bg-amber-100 {
    background-color: #78350f !important;
    color: #fde68a !important;
}

body.dark .bg-fuchsia-500 {
    background-color: #a21caf !important;
}

body.dark .bg-indigo-100 {
    background-color: #3730a3 !important;
    color: #a5b4fc !important;
}

body.dark .bg-gray-100 {
    background-color: #27272a !important;
    color: #f3f4f6 !important;
}

body.dark .bg-indigo-900 {
    background-color: #18181b !important;
}

body.dark .shadow-md,
body.dark .shadow-sm,
body.dark .shadow-lg {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.7) !important;
}