:root {
  /* Default (Light) Mode */
  --bg-color: #ffffff;
  --text-color: #213547;
}

[data-theme="dark"] {
  /* Dark Mode Overrides */
  --bg-color: #1a1a1a;
  --text-color: #e0e0e0;
}

body { 
background-color: var(--bg-color);
color: var(--text-color);
transition: background-color 0.3s, color 0.3s; /* Smooth transition */
font-family: sans-serif; line-height: 1.6; max-width: 1000px; margin: 20px auto; padding: 0 10px; }
h1 { color: #201F3C; }
#searchInput { width: 100%; padding: 12px; margin-bottom: 20px; border: 1px solid #ccc; border-radius: 4px; box-sizing: border-box; }
table { width: 100%; border-collapse: collapse; margin-top: 10px; margin-bottom: 30px; }
th, td { border: 1px solid #ddd; padding: 12px; text-align: left; }
th { background-color: #f4f4f4; cursor: pointer; }
th:hover { background-color: #e0e0e0; }
a { color: #0066cc; text-decoration: none; }
a:hover { text-decoration: underline; }


@media (max-width: 600px) {
    table, thead, tbody, th, td, tr { display: block; }
    thead tr { display: none; }
    tr { border: 1px solid #ccc; margin-bottom: 10px; }
    td { text-align: right; padding-left: 50%; position: relative; }
    td:before { content: attr(data-label); position: absolute; left: 10px; font-weight: bold; }
}
