.rd-bot-book {
	background: #ffffff;
	color: #111827;
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", sans-serif;
	line-height: 1.7;
	font-size: 15px;
	/* padding: 2.5rem 2rem; */
	border-radius: 18px;
	/* box-shadow: 0 18px 50px rgba(15, 23, 42, 0.08), 0 0 0 1px rgba(148, 163, 184, 0.25); */
	/* max-width: 900px; */
	/* margin: 2rem auto; */
	box-sizing: border-box;
}

/* Basic text elements */
.rd-bot-book p {
	margin: 0 0 1rem;
	color: #111827;
}

.rd-bot-book p+p {
	margin-top: 0.25rem;
}

.rd-bot-book strong {
	font-weight: 600;
	color: #0f172a;
}

.rd-bot-book em {
	font-style: italic;
}

/* Links */
.rd-bot-book a {
	color: #2563eb;
	text-decoration: none;
	border-bottom: 1px dashed rgba(37, 99, 235, 0.65);
	transition: color 0.15s ease, border-color 0.15s ease, background-color 0.15s ease;
}

.rd-bot-book a:hover {
	color: #1d4ed8;
	border-bottom-style: solid;
	border-bottom-color: #1d4ed8;
	background-color: rgba(191, 219, 254, 0.4);
}

/* Headings */
.rd-bot-book h1,
.rd-bot-book h2,
.rd-bot-book h3,
.rd-bot-book h4,
.rd-bot-book h5,
.rd-bot-book h6 {
	font-weight: 600;
	color: #0f172a;
	margin: 1.5rem 0 0.75rem;
	line-height: 1.25;
	letter-spacing: 0.02em;
	scroll-margin-top: 5rem;
}

.rd-bot-book h1 {
	font-size: 1.9rem;
	margin-top: 0;
	margin-bottom: 1.25rem;
	text-transform: none;
	letter-spacing: 0.04em;
	position: relative;
}

.rd-bot-book h1::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -0.6rem;
	width: 72px;
	height: 2px;
	border-radius: 999px;
	background: linear-gradient(90deg, #2563eb, #a855f7);
	opacity: 0.85;
}

.rd-bot-book h2 {
	font-size: 1.4rem;
	margin-top: 2rem;
	border-bottom: 1px solid rgba(148, 163, 184, 0.5);
	padding-bottom: 0.3rem;
}

.rd-bot-book h3 {
	font-size: 1.15rem;
	color: #111827;
}

.rd-bot-book h4 {
	font-size: 0.95rem;
	/* text-transform: uppercase; */
	letter-spacing: 0.08em;
	color: #6b7280;
}

/* Horizontal rule */
.rd-bot-book hr {
	border: 0;
	border-top: 1px solid rgba(148, 163, 184, 0.6);
	margin: 2rem 0 1.5rem;
}

/* Lists */
.rd-bot-book ul,
.rd-bot-book ol {
	margin: 0 0 1rem 1.5rem;
	padding: 0;
}

.rd-bot-book ul {
	list-style: disc;
}

.rd-bot-book ol {
	list-style: decimal;
}

.rd-bot-book li {
	margin: 0.25rem 0;
}

.rd-bot-book li>ul,
.rd-bot-book li>ol {
	margin-top: 0.35rem;
}

/* Definition lists */
.rd-bot-book dl {
	margin: 0 0 1.25rem;
}

.rd-bot-book dt {
	font-weight: 600;
	color: #0f172a;
	margin-top: 0.6rem;
}

.rd-bot-book dd {
	margin-left: 1.2rem;
	margin-bottom: 0.3rem;
}

/* Blockquotes */
.rd-bot-book blockquote {
	margin: 1.25rem 0;
	padding: 0.75rem 1rem;
	border-left: 3px solid #2563eb;
	background: linear-gradient(90deg,
			rgba(239, 246, 255, 0.9),
			rgba(239, 246, 255, 0.6));
	border-radius: 0.6rem;
	color: #111827;
	font-style: normal;
}

.rd-bot-book blockquote p:last-child {
	margin-bottom: 0;
}

/* Images & figures */
.rd-bot-book img {
	max-width: 100%;
	height: auto;
	border-radius: 0.75rem;
	display: block;
	margin: 1.25rem auto;
	box-shadow:
		0 16px 35px rgba(15, 23, 42, 0.16),
		0 0 0 1px rgba(148, 163, 184, 0.4);
}

.rd-bot-book figure {
	margin: 1.5rem 0;
	text-align: center;
}

.rd-bot-book figcaption {
	margin-top: 0.5rem;
	font-size: 0.8rem;
	color: #6b7280;
}

/* Inline code (non-highlighted) */
.rd-bot-book code:not(.hljs) {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
		"Liberation Mono", "Courier New", monospace;
	font-size: 0.85em;
	background: #f3f4f6;
	color: #b45309;
	padding: 0.15rem 0.35rem;
	border-radius: 0.35rem;
	border: 1px solid rgba(209, 213, 219, 0.9);
}

/* Code blocks – layout only; Monokai .hljs handles colors/background */
.rd-bot-book pre {
	margin: 1.25rem 0;
	overflow-x: auto;
	border-radius: 0.75rem;
	background: transparent;
	/* allow .hljs background to show */
}

/* Non-highlighted code blocks */
.rd-bot-book pre code:not(.hljs) {
	display: block;
	padding: 0.9rem 1rem;
	background: #0b1120;
	color: #e5e7eb;
	border-radius: 0.75rem;
}

/* Tables */
.rd-bot-book table {
	width: 100%;
	border-collapse: collapse;
	margin: 1.25rem 0;
	font-size: 0.9rem;
	background: #f9fafb;
	border-radius: 0.75rem;
	overflow: hidden;
	box-shadow: 0 0 0 1px rgba(209, 213, 219, 0.9);
}

.rd-bot-book thead {
	background: #e5e7eb;
}

.rd-bot-book th,
.rd-bot-book td {
	padding: 0.65rem 0.75rem;
	text-align: left;
	border-bottom: 1px solid rgba(209, 213, 219, 0.9);
}

.rd-bot-book th {
	font-weight: 600;
	color: #111827;
}

.rd-bot-book tbody tr:nth-child(odd) {
	background: #f9fafb;
}

.rd-bot-book tbody tr:nth-child(even) {
	background: #f3f4f6;
}

.rd-bot-book tbody tr:hover {
	background: #e0f2fe;
}

/* KBD / keyboard keys */
.rd-bot-book kbd {
	display: inline-block;
	padding: 0.1rem 0.4rem;
	margin: 0 0.08rem;
	border-radius: 0.4rem;
	border: 1px solid rgba(156, 163, 175, 0.9);
	background: #f9fafb;
	box-shadow: inset 0 -1px 0 rgba(229, 231, 235, 0.9);
	font-size: 0.75rem;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

/* Lists inside tables, blockquotes, etc. */
.rd-bot-book blockquote ul,
.rd-bot-book blockquote ol,
.rd-bot-book td ul,
.rd-bot-book td ol {
	margin-left: 1.2rem;
}

/* Small text / notes */
.rd-bot-book small {
	font-size: 0.8rem;
	color: #6b7280;
}

/* Utility: subtle badges for inline labels */
.rd-bot-book .rb-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	padding: 0 0.45rem;
	border-radius: 999px;
	font-size: 0.7rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	background: #eef2ff;
	border: 1px solid rgba(129, 140, 248, 0.7);
	color: #3730a3;
}



/* Responsive tweaks */
@media (max-width: 768px) {
	.rd-bot-book {
		padding: 1.75rem 1.25rem;
		border-radius: 12px;
		font-size: 14px;
	}

	.rd-bot-book h1 {
		font-size: 1.6rem;
	}

	.rd-bot-book h2 {
		font-size: 1.3rem;
	}
}