:root{
	--bg: #ffffff;
	--fg: #212529;
	--muted: #6c757d;
	--card-bg: #ffffff;
	--nav-bg: #f8f9fa;
	--link: #0d6efd;
}

.theme-dark{
	--bg: #0b0d0f;
	/* brighter, higher-contrast foreground for readability */
	--fg: #e6eef8;
	--muted: #9fb0c8;
	--card-bg: #0f1315;
	--nav-bg: #0c0f11;
	--link: #7fb4ff;
}

body { padding-bottom: 40px; background: var(--bg); color: var(--fg); }

/* Ensure common container elements inherit readable text color */
.container, .card, .alert, .navbar, .navbar-brand, .navbar-text, .btn, .card-body, .page-content {
	color: var(--fg);
}

.card { background: var(--card-bg); }

/* Navbar overrides to respect theme variables */
#main-navbar { background: var(--nav-bg) !important; }
#main-navbar .navbar-brand, #main-navbar .navbar-text, #main-navbar a { color: var(--fg) !important; }
#main-navbar .btn { color: var(--fg) !important; border-color: rgba(255,255,255,0.08); }

a { color: var(--link); }

/* Pre/code styles for improved contrast in dark mode */
pre, code, kbd, samp {
	color: var(--fg);
	background: rgba(255,255,255,0.02);
	padding: 0.15rem 0.25rem;
	border-radius: 3px;
}

/* make images responsive in content */
.card img, .container img { max-width: 100%; height: auto; }
