@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,600');
@import url('http://fonts.googleapis.com/css?family=Inconsolata');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,100..700;1,100..700&display=swap');
H1                         { left:12px; font-weight:bold; font-size:1.2em; top:20px; text-align:left; }
H2                         { margin:1em 0 0.75em 0; font-weight:bold; font-size:1.2em; text-align:left; }
H3                         { border-right:gray 1px solid; border-top:gray 1px solid; margin-top:6px; padding:6px 6px 6px 6px; margin:6px 0px 6px 0px; font:bold 8pt Verdana; border-left:gray 1px solid; border-bottom:gray 1px solid; background-color:#cecfce; text-align:left; }
H2.groupheader             { border-top:1px solid #ccc; }
DIV.footer                 { font-style:italic; }
DIV.directory              { margin:0px 0px 0px 0px; font:8pt Verdana; }
DIV.directory DIV          { display:none; margin:0px; }
DIV.directory P            { margin:0px; white-space:nowrap; }
DIV.directory A            { font-weight:normal; }
DIV.directory H3           { font:10pt Verdana; margin-top:6px; }
DIV.tabs,
DIV.tabs2                  { background-color:#4080d0; font-weight:bold; font-size:1em; color:#ffffff; padding:1px 0 1px 0; width:100%; text-align:center; margin-bottom:1px; }
DIV.tabs  UL,
DIV.tabs2 UL               { display:inline; }
DIV.tabs  LI,
DIV.tabs2 LI               { display:inline; padding:0.1em 1em 0.1em 1em; }
DIV.tabs  LI.current,
DIV.tabs2 LI.current       { color:#4080d0; background-color:#eef; }
DIV.tabs  LI.current A,
DIV.tabs2 LI.current A     { color:#4080d0; }
DIV.tabs  A,
DIV.tabs2 A                { color:#ffffff; text-decoration:none; }
DIV.tabs  A:hover,
DIV.tabs2 A:hover          { color:#ddd; text-decoration:underline; }
DIV.title                  { font-size:1.7em; margin-top:1em; padding:0.5em 1em 0.5em 1em; background-color:#f0f0f0; border-top:1px solid #ccc; border-bottom:1px solid #ccc;}
DIV.contents               { padding:0 2em 1em 2em; }
DIV.fragment               { border:1px solid #3B62DA; white-space:normal; font-size:0.9em; font-weight:400; line-height:70%; width:90%; margin:-1em 0 1.5em 0; padding:4px; letter-spacing: 0.5px; font-family: "Roboto Mono", monospace; }
DIV.fragment DIV.line      { padding:0; margin:0; }
DIV.memitem                { padding:0; margin:0 0 2em 0; border:1px solid #ddd; background-color:#f8f8f8;}
DIV.memproto               { font-size:13px; padding:0px; margin:7px; border:1px solid #2461aa; background-color:#f0f0ff; }
DIV.memdoc                 { padding:0 0 0 1em; margin:0; }

TABLE.directory            { font-size:13px; }
TABLE.directory TD         { vertical-align:middle; border:1px solid #ddd; background-color:#f8f8f8; }

/* The next two lines are a messy hack to make the images in the Class List align correctly */
TABLE.directory IMG        { margin-bottom:-7px; }
TABLE.directory TD         { padding-top:2px; padding-bottom:5px; }

TABLE.memberdecls          { font-size:13px; }
TABLE.mlabels              { font-size:13px; width:90%; margin:0px; padding:5px; }
TABLE.memname              { font-size:13px; margin:0px; padding:5px; }
TD.memname                 { white-space:nowrap; font-weight:bold; }
TABLE.params TD            { font-size:13px; padding-right:1em; }
TABLE.params TD.paramdir   { }
TABLE.params TD.paramname  { font-weight:bold; color:#602020; }
TABLE.params TD.paramtype  { }
DIV.memdoc DL.return       { padding-bottom:1em; }
DIV.memdoc DL.return DD    { font-size:0.8em; }
DIV.memdoc DL.see          { padding-bottom:1em; }
DIV.memdoc DL.see    DD    { font-size:0.8em; }
span.keyword               { color:#007961; }
span.keywordtype           { color:#b13600; }
span.keywordflow           { color:#b13600; }
span.comment               { color:#328131; }
span.preprocessor          { color:#806020; }
span.stringliteral         { color:#002080; }
span.charliteral           { color:#008080; }
TD.mdescLeft               { border-right:#e0e0e0 1px; border-top:#e0e0e0 1px; padding-left:8px; margin:0px; border-left:#e0e0e0 1px; border-bottom:#e0e0e0 1px; font-family:Verdana; }
TD.mdescRight              { border-right:#e0e0e0 1px; padding-right:8px; border-top:#e0e0e0 1px; padding-left:4px; padding-bottom:0px; margin:0px; border-left:#e0e0e0 1px; border-bottom:#e0e0e0 1px; font-family:Verdana; }
TD.memItemLeft             { border-right:#e0e0e0 1px; padding:1px 0 0 8px; border-top:#e0e0e0 1px solid; letter-spacing:0.5px; font-weight:bold; margin:4px; border-bottom:#e0e0e0 1px; font-family:"Roboto Mono", monospace; }
TD.memItemRight            { border-right:#e0e0e0 1px; padding:1px 0 0 8px; border-top:#e0e0e0 1px solid; letter-spacing:0.5px; font-weight:bold; margin:4px; border-bottom:#e0e0e0 1px; font-family:"Roboto Mono", monospace; }

CODE      { padding-left:6px; color:#000063; }
CAPTION   { font-weight:bold; }
TABLE     { margin:6px 6px 6px 6px; }
A         { color:#0000AA; text-decoration:none; }
A:visited { text-decoration:none; }
A:hover   { text-decoration:underline; }
A.el      { font-weight:bold; font-style:normal; font-variant:normal; }
A.elRef   { font-weight:bold; }
A.code    { font-weight:bold; text-decoration:none; }
A.codeRef { font-weight:normal; color:#4444ee; }
DIV.banner { padding-right:2px; border-top:#9c9a9c 1px solid; padding-left:6px; padding-bottom:2px; width:100%; padding-top:2px; border-bottom:0px; height:40px; background-color:#9ccfff; text-align:left; font-style:italic; font-size:8pt; } 
TD.title { left:14px; font-weight:bold; font-size:2em; text-align:left; color:#000000; }
DL.el { margin-left:-1cm; }
DIV.ah { margin-top:3px; font-weight:bold; margin-bottom:3px; color:#ffffff; background-color:black; }
DIV.groupHeader { margin-top:12px; font-weight:bold; margin-bottom:6px; margin-left:16px; }
DIV.groupText { margin-left:16px; font-style:italic; }
BODY { margin:0; background:white; line-height:1.5em; font:15px 'Open Sans', Arial, Verdana, sans-serif; }
TD.indexkey { background-color:#eeeeff; font-weight:bold; padding-right:10px; padding-top:2px; padding-left:10px; padding-bottom:2px; margin-left:0px; margin-right:0px; margin-top:2px; margin-bottom:2px }
TD.indexvalue { background-color:#eeeeff; font-style:italic; padding-right:10px; padding-top:2px; padding-left:10px; padding-bottom:2px; margin-left:0px; margin-right:0px; margin-top:2px; margin-bottom:2px; }


/* ===========================================
	 Spwrawsm stylings
	 Author: Danijel Grabez
	===========================================*/


html {
	--ok-body-color:#f7f7f7; 
	--ok-main-color: #4f3ada; /* #7565E2 - old purple */
	--ok-link-color: #3B62DA;
	--ok-link-color--visited:#AC34FF;
	--ok-header-color: #989DA3;
	--ok-contents-background-color: #fff;
	--ok-text-color: #000000;
	--ok-table-bg-color: #f5f8fb;
	--ok-table-border-color: #dadada;
	--ok-memproto-bg-color: #e5f0f7;
	
}

html.dark-mode {
	--ok-body-color: #121212;  /* #090d16 - old black */ /* #1a1b1f - test black */
	--ok-main-color: #4f3ada; /* #7565E2 - old purple */
	--ok-link-color: #5A8DFF;
	--ok-link-color--visited: #BA64F5;
	--ok-header-color: #fafafa;
	--ok-contents-background-color: #2b2b2b;
	--ok-text-color: #ffffff;
	--ok-table-bg-color: #111111;
	--ok-table-border-color: #7a7a7a;
	--ok-code-string-literal-color: #7EC699;
	--ok-title-header-bg-color: #181818;
	--ok-memproto-bg-color: #1a1a1a;

}

/*Defaults*/
body {
	background: var(--ok-body-color);
} 

body, table, div, p, dl, div.title, #projectname, #projectnumber, p.reference, p.definition {
	font-family: 'Open Sans', Arial, Verdana, sans-serif;
}

p {
	line-height: 1.5;
	margin-top: 0;
	color: var(--ok-text-color);
}

b {font-weight: 600;}

A,
A.el {
	color: var(--ok-link-color);
	transition: .3s all ease-in-out;
}

A:hover,
A.el:hover,
A:focus,
A.el:focus {
	color: var(--ok-link-color);
	text-decoration: none;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0; 
}

ul li {
	line-height: 1.5;
}

/*Code element stylings*/
code,
kbd,
pre,
samp {
  font-family: "Roboto Mono", monospace;
  letter-spacing: 0.5px;
}

/*Inline code*/
code {
  padding: 2px 4px;
  color: var(--ok-link-color);
  background-color: #dadada;
  border-radius: 2px;
}

/*Blocks of code*/
pre {
  display: block;
  padding: 8px 10px;
  margin: 0 0 15px;
  font-size: ;
  line-height: 1.5;
  word-break: break-all;
  word-wrap: break-word;
  color: var(--ok-link-color);
  background-color: #f5f8fb;
  border: 1px solid #dadada;
  border-radius: 2px;
}
	/*Account for some code outputs that place code tags in pre tags*/
	pre code {
	  padding: 0;
	  font-size: inherit;
	  color: inherit;
	  white-space: pre-wrap;
	  background-color: transparent;
	  border-radius: 0;
	}

/*Page header*/
#top table {
	width: 100%;
	max-width: 1250px;
	margin-top: 0px;
	margin-bottom: 0px;
	margin-left: auto;
	margin-right: auto;
}

#projectname {
	color:  var(--ok-header-color);
	font-weight: 300;
	font-size: 27px;
	margin-left: 20px;
	text-align: right;
}

#titlearea {
	border: 0;
}

div.header {
	background-image: none;
	background-color: transparent;
	margin:  0px;
	border-bottom: none;
}

@media screen and (max-width: 1300px) {
	#top table {
		max-width: 1050px;
	}
}

@media screen and (max-width: 1100px) {
	#top table {
		max-width: 950px;
	}
}

@media screen and (max-width: 900px) {
	#top table {
		margin-left: 15px;
	}
}

	#top table td:first-child {
		width: 200px !important;
	}

		#top table img {
			width: 200px;
			height: auto;
		}

		TD.title {
			color: #999;
			font-weight: 300;
			font-size: 1.7em;
		}

/*Page title*/

#titlearea tr {
	height: auto !important;
}

div.headertitle { 
	padding: 0;
}

.headertitle .title {
	border: 0;
	background: none;
	text-align: center;
	font-size: 28px;
	font-weight: 400;
} 

	DIV.title {
		margin: 0 auto;
	}




/*New Nav*/
#main-nav {
	background: var(--ok-main-color);
	margin-bottom: 30px;
}

#main-menu {
	background: none;
	padding: 0;
	text-align: left;
		width: 100%;
	max-width: 1250px;
	margin-left: auto;
	margin-right: auto;
	display: block;
}

@media screen and (max-width: 1300px) {
	#main-menu {
		max-width: 1050px;
	}
}

@media screen and (max-width: 1100px) {
	#main-menu {
		max-width: 950px;
	}
}

.sm-dox a, 
.sm-dox a:focus, 
.sm-dox a:active,  
.sm-dox a.highlighted {
	background: none;
	color: #fff;
	text-shadow: none;
	font-family: 'Open Sans', Arial, Verdana, sans-serif;
	font-size: 13px;
}

.sm-dox a:hover {
	color: rgba(0,0,0,.7);
	background: none;
	text-shadow: none;
	font-family: 'Open Sans', Arial, Verdana, sans-serif;
	font-size: 13px;
}

.sm-dox a span.sub-arrow {
	border-color: #fff transparent transparent transparent;
	transition: .3s all ease-in-out;
}

.sm-dox a:hover span.sub-arrow {
	border-color: rgba(0,0,0,.4) transparent transparent transparent;
}

/*sub nav*/
.sm-dox ul {
	border: 0;
	box-shadow: 0 0px 2px rgba(168, 168, 168, 0.61);
}

.sm-dox ul a {
	font-size: 13px !important;
}

.sm-dox ul a:hover {
	font-size: 13px;
	background: var(--ok-main-color);
	text-shadow: none;
}
@media screen and (max-width: 768px) {
	.sm-dox ul a.has-submenu 
	.sm-dox ul a.has-submenu a {
		
	}

	.sm-dox ul a, 
	.sm-dox ul a:focus, 
	.sm-dox ul a:hover, 
	.sm-dox ul a:active {
		background: rgba(255,255,255,0.5);
	}
}

/*Navpath*/
.navpath {
	margin-top: -30px;
	line-height: 1.5;
	background: var(--ok-main-color);
	border-top: 1px solid rgba(0,0,0,.1);

}

.navpath ul {
	max-width: 100%;
	width: 1250px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
	padding-left: 0;
	background: none;
	border: 0;
	height: auto;
	line-height: 1.5;
}

.navpath .navelem {
	float: none;
	display: inline-block;
	background: none;
}

.navpath .navelem:after {
	content: "▶";
	position: relative;
	right: -15px;
	color: #fff;
	font-size: 8px;
}
.navpath .navelem:last-child:after {
	content: '';
}

.navpath li.navelem a {
	font-family: 'Open Sans', Arial, Verdana, sans-serif;
	height: auto;
	padding: 8px 0;
	display: inline-block;
	font-size: 13px;
	text-shadow: none;
	color: #fff;
}
.navpath li.navelem a:hover {
	color: rgba(0,0,0,.4);
}

@media screen and (max-width: 1300px) {
	.navpath ul {
		max-width: 1050px;
	}
}

@media screen and (max-width: 1100px) {
	.navpath ul {
		max-width: 950px;
	}
}

/*Summary*/
div.summary {
	float: none;
	text-align: left;
	width: 100%;
	max-width: 1230px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
	background: #fff;
	padding: 5px 15px;
	color: #ccc;
	font-weight: 600;
	margin-top: -30px;
	border-radius: 0 0 3px 3px;
	box-shadow: 0 1px 2px rgba(168, 168, 168, 0.61);
}

div.summary a {
	font-size: 13px;
}

@media screen and (max-width: 1300px) {
	div.summary {
		max-width: 1030px;
	}
}

@media screen and (max-width: 1100px) {
	div.summary {
		max-width: 930px;
	}
}

@media screen and (max-width: 1100px) {
	div.summary {
		padding-left: 15px;
		padding-right: 15px;
	}
}

@media screen and (max-width: 950px) {
	div.summary {
		padding-left: 10px;
		padding-right: 10px;
	}
}


/*Page content*/
DIV.contents {
	max-width: 1200px;
	margin: 15px auto 50px;
	padding: 50px 30px;
	background: var(--ok-contents-background-color);
  border-radius: 5px;
  box-shadow: 0 1px 2px rgba(168, 168, 168, 0.61);
  position: relative;
}

@media screen and (max-width: 1300px) {
	DIV.contents {
		max-width: 1000px;
	}
}

@media screen and (max-width: 1100px) {
	DIV.contents {
		max-width: 900px;
	}
}

/*Content triangle*/
DIV.contents:after, 
DIV.contents:before {
	top: -1px;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;

}
DIV.contents:after {
	border-color: rgba(247, 247, 247, 0);
	border-top-color: var(--ok-body-color);
	border-width: 30px;
	margin-left: -30px;
}
DIV.contents:before {
	border-color: rgba(240, 240, 240, 0);
	border-top-color: rgba(168, 168, 168, 0.2);
	border-width: 31px;
	margin-left: -31px;
}

.contents a:visited {
	color: var(--ok-link-color--visited);
}

/*Group Header*/
H2.groupheader {
	font-family: 'Open Sans', Arial, Verdana, sans-serif;
	border-top: 1px solid #dadada;
	border-bottom: 1px solid #dadada;
	margin-left: -30px;
	margin-right: -30px;
	padding: 20px 30px 20px;
	font-weight: 600;
	background: #fbfaef;
	text-align: center;
	color: #343434;
}

/*h3*/
.contents H3 {
	margin-left: -30px;
	margin-right: -30px;
	padding-left: 30px;
	padding-right: 30px;
	border-right: 0;
	border-left: 0;
	border-top: 1px solid #dadada;
	border-bottom: 1px solid #dadada;
  font-weight: 600;
  background: #fbfaef;
}


/*Page footer*/
body > center  {
	margin: 30px 0;
}
body > center small {
	color: #999;
}


/*Page specific elements*/

H2.memtitle {
	display: inline-block;
	margin: 1em 0 0;
	padding: 0.5em .8em .5em .5em;
  font-weight: bold;
  font-size: 1.2em;
  text-align: left;
  background: #f5f8fb;
  border: 1px solid #ddd;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  border-bottom: 0;
  position: relative;
  z-index: 2;
  top: 1px;
}

DIV.memitem {
	background-color: #f5f8fb;
	border-radius: 3px;
	border-top-left-radius: 0;
}

DIV.memdoc {
	border: 0;
	box-shadow: none;
	background: #f5f8fb;
}

DIV.memitem code {
	background: #e5f0f7;
}

	DIV.memproto {
		border: 1px solid var(--ok-link-color);
    background-color: #e5f0f7;
    border-radius: 3px;
    box-shadow: none;
	}

	td.mlabels-right {
		vertical-align: middle;
	}

/*Memberdecls*/
TABLE.memberdecls {
	width: 100%;
	margin: 0;
}

.memberdecls .groupheader {  }

TD.memItemRight,
TD.memItemLeft {
	padding: 8px 10px 0;
	line-height: 1.5;
	letter-spacing: 0.5px;
	font-family: "Roboto Mono", monospace;
}

TD.mdescRight {
	padding: 8px 10px;
	line-height: 1.5;
}

TD.memItemLeft {
	border-color: #ccc;
}

@media screen and (min-width: 900px) {
	TD.memItemLeft {
		width: 200px;
	}
}

/*Fragments*/
DIV.fragment {
	line-height: 1.5;
	max-width: 100%;
	border-radius: 3px;
	padding: 8px 10px;
}

DIV.fragment div.line {
	text-indent: 0;
}

DIV.fragment {
	a.code {
		color: var(--ok-link-color);
	}
}

/*Params*/
dl dt,
dl dd {
  line-height: 1.8;
}

dl dt {
  font-weight: 600;
  margin-bottom: 5px;
}

dl dd {
  margin-left: 30px; /*Undo browser default*/
}

table.params {
	margin: 0;
}

table.mlabels {
	padding: 0;
}

/*Directory */
TABLE.directory {
	width: 100%;
	border-collapse: collapse;
}

TABLE.directory {
	border: 1px solid var(--ok-table-border-color);
	font-family: 'Open Sans', Arial, Verdana, sans-serif;
	margin: 0;
}

TABLE.directory TD {
	border: 0;
	padding-left: 10px;
	padding-right: 10px;
	background-color: var(--ok-table-bg-color);
	border-right: 1px solid var(--ok-table-border-color);
}

/*.directory td.entry {
	white-space: normal;
}
*/
TABLE.directory TR TD:last-child {
	border-right: 0;
}

span.mlabel {
	background-color: var(--ok-main-color);
	border: 0;
	text-transform: uppercase;
	font-size: 9px;
	letter-spacing: .03em;
	font-weight: 600;
}

TABLE.directory TR {
	border: 1px solid var(--ok-table-border-color);
}

div.directory {
	font-family: 'Open Sans', Arial, Verdana, sans-serif;
	border: none;
}

.directory .icon {
	background: var(--ok-main-color);
}

.directory .arrow {
	color: var(--ok-main-color);
}

/* TABLE.directory TD {
	background-color: #f5f8fb;
} */


/* Index */
div.qindex, div.navtab {
	border: 1px solid var(--ok-link-color);
	background: #f5f8fb;
	padding-top: 5px;
	padding-bottom: 5px;
}

DIV.ah {
	font-family: 'Open Sans', Arial, Verdana, sans-serif;
	background: #333;
	border: 0;
	box-shadow: none;
	border-radius: 3px;
}

div.classindex dl.even,
div.classindex dl.odd {
    background-color: transparent !important;
}

/* Deprecated List */
dl.reflist dt {
	box-shadow: none;
	margin-bottom: 0;
}
dl.reflist dd {
	background-image: none;
	box-shadow: none;
}

/* dark mode specific style */
.dark-mode {
	div.summary {
        background: var(--ok-table-bg-color);
        border-bottom: 1px solid var(--ok-table-border-color);
        box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
        
        a {
            color: var(--ok-link-color);
            
            &:hover {
                color: var(--ok-link-color);
                opacity: 0.8;
            }
        }
    }

	.sm-dox a:hover {
        color: #c5c5c5 !important; /* Keep text white on hover */
        opacity: 0.8; /* slight transparency for hover effect */
    }

	#titlearea {
		background-color: var(--ok-body-color);
	}

	#projectlogo {
		content: url("logo_tiny_dark-mode.png");
	}

	.textblock, td.desc, li {
		color: var(--ok-text-color);
	}

	.qindex {
		background-color: var(--ok-table-bg-color);
	}

	.contents h3 {
		background: var(--ok-table-bg-color);
		color: var(--ok-text-color);
	}

	.headertitle .title {
		color: #fafafa;
	}

	h2 {
		&.groupheader {
			background: var(--ok-title-header-bg-color);
			color: var(--ok-header-color);
			border: none;
		}
		&.memtitle{ 
			background: var(--ok-title-header-bg-color);
			color: var(--ok-header-color);
			border-color: var(--ok-table-border-color);
		}

	}

	div.memitem {
		background: var(--ok-table-bg-color);

		code {
			background: var(--ok-contents-background-color);
		}
	}

	div.memdoc {
		background: var(--ok-table-bg-color);
	}

	div.memproto {
		background: var(--ok-memproto-bg-color);
	}

	div.fragment {
		background:  var(--ok-body-color);
		border:1px solid var(--ok-link-color);
	}

	span.comment {
		color: #46a441;
	}

	span.keywordtype {
		color: #4ec9b0;
	}

	span.preprocessor,
	.paramname em,
	span.keywordflow  { 
		color:#dcdb9a; 
	}

	TABLE.params TD.paramname {
		color: #44BD84;
	}

	TD.memItemLeft {
		border-color: var(--ok-table-border-color);
	}

	TD.memItemRight {
		border-top: 1px solid var(--ok-table-border-color);
	}

	DIV.memitem {
		border-color: var(--ok-table-border-color);
	}

	span.stringliteral {
        color: #7EC699 !important;
    }

	div.classindex dl.even,
    div.classindex dl.odd {
        background-color: #111111 !important;
    }

	table.directory tbody tr:nth-child(odd) { 
		td {
			background-color: #202020;
		}
	}

	table.markdownTable {
        tr.markdownTableRowEven {
            background-color: #2b2b2b; /* lighter row */
        }
        tr.markdownTableRowOdd {
            background-color: #202020; /* darker row */
        }
        th.markdownTableHeadNone {
            background-color: var(--ok-main-color);
            color: var(--ok-text-color);
        }
    }
    
    table.directory tbody {
        tr:nth-child(even) td {
            background-color: #2b2b2b; /* lighter row */
        }
        tr:nth-child(odd) td {
            background-color: #202020; /* darker row */
        }
    }
    
    table.doxtable {
        tr:nth-child(even) {
            background-color: #2b2b2b; /* lighter row */
        }
        tr:nth-child(odd) {
            background-color: #202020; /* darker row */
        }
    }
}

table.markdownTable {
  border-collapse: collapse;
  width: 100%;
  margin: 15px 0;
  border: 1px solid var(--ok-table-border-color) !important;
}

table.markdownTable td, 
table.markdownTable th {
  border: 1px solid var(--ok-table-border-color) !important;
  padding: 8px 12px;
  text-align: left;
}

table.markdownTable th.markdownTableHeadNone {
  background-color: var(--ok-main-color);
  color: white;
  font-weight: 600;
}

/* Zebra striping using Doxygen's built-in classes */
table.markdownTable tr.markdownTableRowEven {
  background-color: #f9f9f9;
}

table.markdownTable tr.markdownTableRowOdd {
  background-color: #ffffff;
}

table.markdownTable, 
table.markdownTable * {
  border-color: var(--ok-table-border-color) !important;
}

/* Ensure proper spacing in the contents div */
.contents table.markdownTable {
  margin: 20px 0;
}

/* Make sure the zebra striping is visible */
table.markdownTable tr.markdownTableRowEven td,
table.markdownTable tr.markdownTableRowOdd td {
  background-color: inherit;
}

#main-menu > li:last-child {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    height: auto !important;
    margin-right: 1em !important;
    padding: 0 !important;
}

/* Override MSearchBox styling */
#MSearchBox {
    display: inline-block !important;
    white-space: nowrap !important;
    background: rgba(255, 255, 255, 0.15) !important;
    border-radius: 18px !important;
    box-shadow: none !important;
    z-index: 102 !important;
    padding: 4px 8px !important;
    margin: 4px 0 !important;
    vertical-align: middle !important;
}

/* Override the left container */
#MSearchBox .left {
    display: inline-block !important;
    vertical-align: middle !important;
    height: auto !important;
}

/* Override the search field */
#MSearchField {
    display: inline-block !important;
    vertical-align: middle !important;
    width: 160px !important;
    height: 20px !important;
    margin: 0 0.5em !important;
    padding: 2px 8px !important;
    line-height: 20px !important;
    border: none !important;
    color: #fff !important;
    outline: none !important;
    font-family: 'Open Sans', Arial, sans-serif !important;
    font-size: 13px !important;
    border-radius: 0px !important;
    background: none !important;
    transition: width 0.3s ease !important;
}

#MSearchField::placeholder {
    color: rgba(255, 255, 255, 0.7) !important;
}

#MSearchField:focus {
    width: 200px !important;
    color: #fff !important;
}

/* Hide unnecessary elements */
#MSearchSelect {
    display: none !important;
}

#MSearchSelectExt {
    display: none !important;
}

/* Override the right container */
#MSearchBox {
    display: inline-block !important;
    white-space: nowrap !important;
    background: rgba(255, 255, 255, 0.15) !important;
    border-radius: 18px !important;
    box-shadow: none !important;
    z-index: 102 !important;
    padding: 4px 8px !important;
    margin: 5px 0 !important;
    vertical-align: middle !important;
	position: relative !important;
}

/* Override search results window */
#MSearchResultsWindow {
    margin-top: 10px !important;
    margin-left: 130px !important;
}

/* Dark mode overrides */
.dark-mode #MSearchBox {
    background: rgba(255, 255, 255, 0.1) !important;
}

.dark-mode #MSearchField {
    color: #f0f0f0 !important;
}

.dark-mode #MSearchField::placeholder {
    color: rgba(255, 255, 255, 0.5) !important;
}

.dark-mode #MSearchResultsWindow {
    background-color: #161b22 !important;
    border-color: #30363d !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
}

/* Override search results styling */
.SRPage {
    margin: 5px !important;
}

.SREntry {
    padding: 6px 10px !important;
    font-size: 13px !important;
    transition: background-color 0.2s ease !important;
}

.SREntry:hover {
    background-color: rgba(79, 58, 218, 0.1) !important;
}

.dark-mode .SREntry:hover {
    background-color: rgba(79, 58, 218, 0.2) !important;
}

/* Fix search status messages */
.SRStatus {
    padding: 10px !important;
    font-size: 12px !important;
    color: #666 !important;
}

.dark-mode .SRStatus {
    color: #999 !important;
}

/* Ensure the search button is visible */
#MSearchBox span.search::before {
    content: "🔍";
    font-size: 14px;
    color: rgba(255, 255, 255, 0.8);
}

