/* Sidebar light theme — scoped to docs layout only */

.docs-sidebar {
	background-color: #fff;
	border-right: 1px solid #d4d4d4;
	font-family: Verdana, Arial, sans-serif;
	font-size: 13px;
	line-height: 1.45;
	color: #0d0d0d;
}

/* Top accent stripe — matches header > h1:before in FlexsimHelpStandard */
.docs-sidebar::before {
	content: '';
	display: block;
	height: 4px;
	border-top: 8px solid #1a1a1a;
	background-color: #a8a8a8;
	flex-shrink: 0;
}

/* RailWorks logo — top of sidebar, above navigation */
.sidebar-brand--railworks {
	flex-shrink: 0;
	padding: 18px 16px 16px;
	border-bottom: 1px solid #e8e8e8;
	text-align: center;
}

.sidebar-brand--railworks a {
	display: block;
	line-height: 0;
	text-decoration: none;
}

.sidebar-brand--railworks img {
	display: block;
	max-width: 100%;
	width: 100%;
	height: auto;
	max-height: 48px;
	margin: 0 auto;
	object-fit: contain;
	object-position: center;
}

/* FlexSim logo — footer of sidebar */
.sidebar-brand--flexsim {
	flex-shrink: 0;
	padding: 14px 20px 18px;
	border-top: 1px solid #e8e8e8;
	background-color: #fafafa;
	text-align: center;
}

.sidebar-brand--flexsim img {
	display: block;
	max-width: 140px;
	width: 100%;
	height: auto;
	margin: 0 auto;
}

.docs-sidebar .topnav {
	margin: 0;
	padding: 12px 12px 16px 8px;
	max-width: none;
	font-family: Verdana, Arial, sans-serif;
}

.docs-sidebar .topnav li {
	margin: 0;
}

.docs-sidebar .topnav li a {
	font-size: 13px;
	line-height: 1.35;
	min-height: 28px;
	padding: 5px 10px 5px 22px;
	color: #0d0d0d;
	border-radius: 3px;
	text-decoration: none;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.docs-sidebar .topnav ul {
	margin: 0 0 4px 0;
	padding: 0;
	margin-left: 14px;
	border-left: 1px solid #e8e8e8;
}

.docs-sidebar .topnav ul li a:hover {
	background-color: #f0f0f0;
	color: #0d0d0d;
}

.docs-sidebar .topnav ul li.selected > a:only-child {
	background-color: #f5f5f5;
	color: #0d0d0d;
	border-left: 3px solid #1a1a1a;
	margin-left: -1px;
	padding-left: 19px;
	font-weight: bold;
}

/* Section headers (items with children) */
.docs-sidebar .topnav li > a:not(:only-child) {
	font-family: Arial, Verdana, sans-serif;
	font-size: 11px;
	font-weight: bold;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	color: #1a1a1a;
	margin-top: 10px;
	padding-top: 8px;
	padding-bottom: 4px;
}

.docs-sidebar .topnav li > a:not(:only-child):first-child,
.docs-sidebar .topnav > li:first-child > a:not(:only-child) {
	margin-top: 0;
}

.docs-sidebar .topnav li > a:not(:only-child):hover {
	background-color: #1a1a1a;
	color: #fff;
}

.docs-sidebar .topnav li.selected > a:not(:only-child) {
	color: #0d0d0d;
}

.docs-sidebar .topnav li > a:before {
	color: #a8a8a8;
	line-height: 28px;
	height: 28px;
	left: 4px;
}

.docs-sidebar .topnav li > a:not(:only-child):hover:before {
	color: #fff;
}

.docs-sidebar .topnav li.selected > a:not(:only-child):before {
	color: #1a1a1a;
}

.docs-sidebar .topnav li > a:not(:only-child):hover:before,
.docs-sidebar .topnav li.selected > a:not(:only-child):hover:before {
	color: #fff;
}

/* Scrollbar (WebKit) — navigation area only */
.sidebar-nav::-webkit-scrollbar {
	width: 6px;
}

.sidebar-nav::-webkit-scrollbar-track {
	background: transparent;
}

.sidebar-nav::-webkit-scrollbar-thumb {
	background-color: #c8c8c8;
	border-radius: 3px;
}

.sidebar-nav::-webkit-scrollbar-thumb:hover {
	background-color: #a8a8a8;
}

@media (hover: none) {
	.docs-sidebar .topnav a:hover {
		background-color: inherit !important;
		color: inherit !important;
	}

	.docs-sidebar .topnav li > a:not(:only-child):hover:before {
		color: #a8a8a8;
	}
}
