/* ============================================================
   PsyData Labs — Homepage Custom CSS
   Fixes layout issues + modern dark theme
   ============================================================ */

/* --- GLOBAL THEME --- */
body {
  background: #0d1117 !important;
  color: #e6edf3 !important;
  font-family: "Inter", "SF Pro Display", sans-serif;
}

/* --- FIX: Prevent missing grid positions (like Coolify bug) --- */
.grid,
.grid > * {
  position: relative !important;
}

.grid > *[style*="grid-area:"] {
  /* Ensure grid-area is respected */
  display: block !important;
}

/* Prevent “Missingposition” fallback text */
.missing,
.missingposition,
[data-missing],
[data-position="missing"] {
  display: none !important;
}

/* --- CARDS --- */
.card {
  background: #11161d !important;
  border: 1px solid #1e2632 !important;
  border-radius: 12px !important;
  transition: transform 0.15s ease, border-color 0.2s ease;
}

.card:hover {
  transform: translateY(-2px);
  border-color: #3b82f6 !important;
}

/* --- HEADERS --- */
header {
  background: #0f141b !important;
  border-bottom: 1px solid #1f2937 !important;
}

/* --- SEARCH BAR --- */
.search input {
  background: #0f141b !important;
  border: 1px solid #1e2632 !important;
  color: #e6edf3 !important;
}

.search input:focus {
  border-color: #3b82f6 !important;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.3);
}

/* --- WIDGETS --- */
.widget {
  background: #11161d !important;
  border-radius: 10px !important;
  border: 1px solid #1e2632 !important;
}

/* --- BOOKMARKS --- */
.bookmark {
  background: #11161d !important;
  border-radius: 10px !important;
  border: 1px solid #1e2632 !important;
}

.bookmark:hover {
  border-color: #3b82f6 !important;
}

/* --- SCROLLBAR --- */
::-webkit-scrollbar {
  width: 8px;
}

::-webkit-scrollbar-thumb {
  background: #1f2937;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #374151;
}
