html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; }
.line-clamp-2 { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
input:focus, select:focus, textarea:focus, button:focus { outline: 2px solid #06b6d4; outline-offset: 1px; }

/* ===== Dark mode (Tailwind class strategy) =====
   We override the most common Tailwind utility classes used across the
   pages so that adding the `dark` class on <html> flips the whole site
   without us having to add `dark:` variants everywhere. */
html.dark { color-scheme: dark; }
html.dark body { background-color: #0b1220; color: #e2e8f0; }

/* surfaces */
html.dark .bg-white,
html.dark .bg-white\/95 { background-color: #111827 !important; }
html.dark .bg-white\/10 { background-color: rgba(255,255,255,0.05) !important; }
html.dark .bg-slate-50  { background-color: #0b1220 !important; }
html.dark .bg-slate-100 { background-color: #1f2937 !important; }
html.dark .bg-slate-200 { background-color: #334155 !important; }
html.dark .bg-cyan-50   { background-color: rgba(6,182,212,0.12) !important; }
html.dark .bg-green-50  { background-color: rgba(34,197,94,0.12) !important; }
html.dark .bg-amber-50  { background-color: rgba(245,158,11,0.14) !important; }
html.dark .bg-red-50    { background-color: rgba(239,68,68,0.14) !important; }

/* text */
html.dark .text-ink,
html.dark .text-slate-900 { color: #f1f5f9 !important; }
html.dark .text-slate-800 { color: #e2e8f0 !important; }
html.dark .text-slate-700 { color: #cbd5e1 !important; }
html.dark .text-slate-600 { color: #b6c0cf !important; }
html.dark .text-slate-500 { color: #94a3b8 !important; }
html.dark .text-slate-400 { color: #7c8a9c !important; }

/* borders */
html.dark .border-slate-100 { border-color: #1f2937 !important; }
html.dark .border-slate-200 { border-color: #334155 !important; }
html.dark .border-slate-300 { border-color: #475569 !important; }

/* hovers */
html.dark .hover\:bg-slate-100:hover { background-color: #1f2937 !important; }
html.dark .hover\:bg-slate-50:hover  { background-color: #1f2937 !important; }

/* form inputs */
html.dark input, html.dark select, html.dark textarea {
  background-color: #0b1220;
  color: #e2e8f0;
  border-color: #334155;
}
html.dark input::placeholder, html.dark textarea::placeholder { color: #64748b; }

/* keep the dark slate-900 footer/sidebar dark in both modes (no change needed) */
