:root {
  --ink: #0f172a;
  --ink-soft: #334155;
  --cream: #f8fafc;
  --sand: #f1f5f9;
  --accent: #0ea5a4;
  --accent-deep: #0f766e;
  --gold: #d4a72c;
  --card: #ffffff;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Manrope", sans-serif;
  color: var(--ink);
  background:
    radial-gradient(circle at 15% 10%, rgba(14, 165, 164, 0.14), transparent 40%),
    radial-gradient(circle at 85% 0%, rgba(212, 167, 44, 0.16), transparent 36%),
    linear-gradient(120deg, var(--cream) 0%, var(--sand) 100%);
  overflow-x: hidden;
}

h1,
h2,
h3,
h4 {
  font-family: "Sora", sans-serif;
}

.reveal {
  opacity: 0;
  transform: translateY(14px);
  transition: opacity 0.65s ease, transform 0.65s ease;
}

.reveal-visible {
  opacity: 1;
  transform: translateY(0);
}

.glass {
  background: rgba(255, 255, 255, 0.75);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(148, 163, 184, 0.25);
}

.project-modal-backdrop {
  background: rgba(2, 6, 23, 0.7);
  backdrop-filter: blur(3px);
}

.theme-toggle-icon {
  display: inline-block;
  width: 1rem;
  text-align: center;
}

.dark body {
  color: #e2e8f0;
  background:
    radial-gradient(circle at 10% 0%, rgba(14, 165, 164, 0.2), transparent 35%),
    radial-gradient(circle at 100% 10%, rgba(250, 204, 21, 0.14), transparent 35%),
    linear-gradient(120deg, #020617 0%, #0f172a 100%);
}

.dark .glass {
  background: rgba(15, 23, 42, 0.75);
  border-color: rgba(71, 85, 105, 0.8);
}

.dark .bg-white {
  background-color: #0f172a !important;
}

.dark .bg-white\/70 {
  background-color: rgba(15, 23, 42, 0.72) !important;
}

.dark .text-slate-900 {
  color: #f8fafc !important;
}

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

.dark .text-slate-700,
.dark .text-slate-600,
.dark .text-slate-500 {
  color: #cbd5e1 !important;
}

.dark .text-slate-300 {
  color: #94a3b8 !important;
}

.dark .border-slate-200,
.dark .border-slate-300 {
  border-color: #334155 !important;
}

.dark .bg-slate-100 {
  background-color: #1e293b !important;
  color: #cbd5e1 !important;
}

.dark .bg-slate-50 {
  background-color: #172033 !important;
}

.dark .bg-slate-900 {
  background-color: #020617 !important;
}

.dark .hover\:bg-slate-100:hover {
  background-color: #1e293b !important;
}

.dark .bg-teal-100 {
  background-color: rgba(13, 148, 136, 0.18) !important;
  border-color: rgba(20, 184, 166, 0.4) !important;
}

.dark #heroRole {
  color: #99f6e4 !important;
  background-color: rgba(15, 118, 110, 0.34) !important;
  border-color: rgba(45, 212, 191, 0.5) !important;
}

.certificate-action-btn {
  background: #f8fafc;
  color: #0f172a;
  border: 1px solid #cbd5e1;
}

.certificate-action-btn:hover {
  background: #e2e8f0;
}

.dark .certificate-action-btn {
  background: #1e293b;
  color: #e2e8f0;
  border-color: #334155;
}

.dark .certificate-action-btn:hover {
  background: #334155;
}
