html.dark {
  color-scheme: dark;
}
html.dark body {
  background-color: #0f172a; 
  color: #e5e7eb; 
}
html:not(.dark) body { background-color: #ffffff !important; color: #0f172a; }
html:not(.dark) .bg-white { background-color: #ffffff !important; }
html:not(.dark) .bg-white\/90 { background-color: rgba(255,255,255,0.90) !important; }
html:not(.dark) .bg-gray-100 { background-color: #f3f4f6 !important; }
html.dark .text-gray-900, 
html.dark .text-gray-800 { color: #e5e7eb !important; }
html.dark .text-gray-700 { color: #e2e8f0 !important; }
html.dark .text-gray-600 { color: #cbd5e1 !important; }
html.dark .text-gray-500 { color: #94a3b8 !important; }
html.dark .bg-white { background-color: #111827 !important; }
html.dark .bg-gray-50 { background-color: #0f172a !important; }
html.dark .bg-gray-100 { background-color: #0b1220 !important; }
html.dark .bg-slate-50 { background-color: #0f172a !important; }
html.dark .bg-slate-100 { background-color: #0b1220 !important; }
html.dark .border-gray-100 { border-color: #374151 !important; }
html.dark .border-gray-200 { border-color: #374151 !important; }
html.dark .border-gray-300 { border-color: #4b5563 !important; }
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; }
html.dark .bg-white\/90 { background-color: rgba(17, 24, 39, 0.90) !important; }
html.dark .bg-white\/80 { background-color: rgba(17, 24, 39, 0.80) !important; }
html.dark .bg-white\/70 { background-color: rgba(17, 24, 39, 0.70) !important; }
html.dark .bg-white\/60 { background-color: rgba(17, 24, 39, 0.60) !important; }
html.dark .bg-white\/10 { background-color: rgba(255, 255, 255, 0.10) !important; }
html.dark .text-slate-900,
html.dark .text-slate-800,
html.dark .text-slate-700 { color: #e2e8f0 !important; }
html.dark .text-slate-600 { color: #cbd5e1 !important; }
html.dark .text-slate-500 { color: #94a3b8 !important; }
html.dark ::-webkit-scrollbar-track { background: #0b1220; }
html.dark ::-webkit-scrollbar-thumb { background: #334155; }
html.dark ::-webkit-scrollbar-thumb:hover { background: #475569; }
html.dark #page-home header .absolute.bg-gradient-to-b.from-white\/20 { opacity: 0.1; }
html.dark #page-home .bg-gray-100 { background-color: #0b1220 !important; }
html:not(.dark) .logo-chip { background-color: transparent !important; }
html.dark .logo-chip { background-color: transparent !important; }
html.dark .header {
  background-color: rgba(17, 24, 39, 0.85) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom-color: #334155 !important;
}
html.dark .card-item {
  background-color: #0f172a !important;
  border-color: #334155 !important;
  box-shadow: 0 1px 3px 0 rgba(0,0,0,0.4) !important;
}
html.dark .nav-item { border-left-color: transparent; }
html.dark .nav-item.active {
  border-left-color: #22d3ee !important; 
  background-color: rgba(8, 145, 178, 0.1) !important;
  color: #67e8f9 !important;
}
html.dark .nav-pill { border-color: #334155 !important; }
html.dark .nav-pill.active {
  border-color: #1d4ed8 !important; 
}
html.dark #page-footer {
  background-color: rgba(17, 24, 39, 0.85) !important;
  border-top-color: #334155 !important;
  color: #cbd5e1 !important;
}
html.dark .table-wrapper {
  background: #0f172a !important;
  border-color: #334155 !important;
  box-shadow: 0 2px 6px rgba(2, 6, 23, 0.6) !important;
}
html.dark .styled-table th,
html.dark .styled-table td { border-bottom-color: #334155 !important; }
html.dark .styled-table thead th {
  background: linear-gradient(180deg, #0b1220, #111827) !important;
  color: #e5e7eb !important;
}
html.dark .styled-table tbody tr { background-color: #0f172a !important; }
html.dark .styled-table tbody tr:nth-child(even) { background-color: #0b1220 !important; }
html.dark .styled-table tbody tr:hover { background-color: #111827 !important; }
html.dark .question-number {
  background-color: #0b1220 !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
html.dark .question-number.ragu {
  background-color: #1f2937 !important;
  border-color: #f59e0b !important;
  color: #fbbf24 !important;
}
html.dark .option-button {
  border-color: #334155 !important;
  background-color: #0b1220 !important;
}
html.dark .option-button:hover {
  border-color: #2563eb !important;
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.35) !important;
}
html.dark .modal-backdrop { background-color: rgba(2, 6, 23, 0.75) !important; }
html.dark .modal-content { background-color: #0f172a !important; color: #e5e7eb !important; }
html.dark .soft-bg {
  background:
    radial-gradient(circle at 10% 20%, rgba(14, 165, 233, 0.25), transparent 40%),
    radial-gradient(circle at 90% 80%, rgba(139, 92, 246, 0.20), transparent 40%) !important;
  opacity: 0.35 !important;
}
html.dark .ad-banner-box {
  background: #0b1220 !important;
  border-color: #334155 !important;
  box-shadow: 0 8px 22px rgba(2, 6, 23, 0.5) !important;
}
.elev-card {
  background: #ffffff;
  border: 1px solid rgba(226, 232, 240, 0.7); 
  box-shadow: 0 10px 20px -12px rgba(2, 6, 23, 0.15), 0 6px 12px -8px rgba(2, 6, 23, 0.08);
}
html.dark .elev-card {
  background: #0f172a; 
  border-color: #334155; 
  box-shadow: 0 14px 28px -18px rgba(2, 6, 23, 0.65), 0 8px 12px -10px rgba(2, 6, 23, 0.55);
}
.modal .modal-content {
  box-shadow: 0 24px 60px -10px rgba(2,6,23,0.25), 0 10px 25px -10px rgba(2,6,23,0.15);
}
html.dark .modal .modal-content {
  box-shadow: 0 28px 70px -10px rgba(2,6,23,0.55), 0 12px 30px -10px rgba(2,6,23,0.45);
}
#notification-dropdown .dropdown-content {
  backdrop-filter: saturate(1.1) blur(8px);
  -webkit-backdrop-filter: saturate(1.1) blur(8px);
}
html.dark #notification-dropdown .dropdown-content {
  background-color: rgba(17, 24, 39, 0.92) !important;
  border-color: #334155 !important;
}
html.dark #notification-dot { background-color: #ef4444 !important; color: #fff !important; }

/* Global button pointer cursor (mandatory) */
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
[role="button"],
.btn,
.button,
a.btn,
a.button {
  cursor: pointer !important;
}
