:root {
  /* Light Mode */
  --bg-primary: #f8fafc; /* Slate 50 */
  --bg-secondary: #ffffff; /* White */
  --bg-tertiary: #f1f5f9; /* Slate 100 */
  --text-primary: #0f172a; /* Slate 900 */
  --text-secondary: #64748b; /* Slate 500 */
  --border-color: #e2e8f0; /* Slate 200 */
  --accent-color: #2563eb; /* Blue 600 */
  --accent-light: #eff6ff; /* Blue 50 */
  --accent-hover: #1d4ed8; /* Blue 700 */
}

html.dark {

  --bg-primary: #0f172a; /* Slate 900 */
  --bg-secondary: #1e293b; /* Slate 800 */
  --bg-tertiary: #334155; /* Slate 700 */
  --text-primary: #f8fafc; /* Slate 50 */
  --text-secondary: #94a3b8; /* Slate 400 */
  --border-color: #334155; /* Slate 700 */
  --accent-color: #60a5fa; /* Blue 400 */
  --accent-light: #1e3a8a; /* Blue 900 */
  --accent-hover: #3b82f6; /* Blue 500 */
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

html,
body {
  height: 100%;
  width: 100%;
}

body {
  font-family:
    "Inter",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
}

::-webkit-scrollbar {
  width: 8px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: var(--border-color);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--text-secondary);
}


.material-symbols-outlined {
  font-variation-settings:
    "FILL" 0,
    "wght" 400,
    "GRAD" 0,
    "opsz" 24;
}

.material-symbols-outlined[style*="FILL"] {
  font-variation-settings:
    "FILL" 1,
    "wght" 400,
    "GRAD" 0,
    "opsz" 24;
}

body {
  background-color: var(--bg-primary);
  color: var(--text-primary);
  transition:
    background-color 0.3s ease,
    color 0.3s ease;
}

.card-light {
  background-color: var(--bg-secondary);
  border-color: var(--border-color);
  color: var(--text-primary);
}

.text-secondary {
  color: var(--text-secondary);
}

button,
a {
  color: inherit;
  transition: all 0.2s ease;
}

input,
textarea,
select {
  background-color: var(--bg-tertiary);
  border-color: var(--border-color);
  color: var(--text-primary);
}

@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.animate-slideIn {
  animation: slideIn 0.3s ease-out;
  bottom: 24px;
  left: 0;
  width: 100%;
  padding: 15px 0;
  color: #f7f7f7;
  text-align: center;
  text-shadow: 1px 1px 2px #000000;
  z-index: 10;
}

footer p {
  margin: 0;
}
