/* doc directories */

html {
	scroll-behavior: auto;
	scroll-padding-top: 59px;
}

table.directory {
	/*border: 1px solid #ccc!important;*/
	table-layout: fixed;
	border-collapse: collapse;
}

.license {
	margin-top: 1em;
	margin-bottom: 0;
	padding-left: 0.5em;
	list-style-type: none;
}

hr.collection-hr {
	margin: 0;
	padding: 0;
}

b {
    font-weight: bold;
}

.doc-directory tr {
	padding-left: 1em!important;
	border-top: 1px solid #ccc!important;
	border-bottom: 1px solid #ccc!important;
}

.doc-directory td {
	padding: 0.25em 0.5em;
}
.directory-child td {
	padding-left: 2em!important;
}

.directory-child td+td {
	position: relative;
	left: -1.5em!important;
	padding-right: 0;
}

.doc-directory tr[aria-expanded=true] td.pkg-name:before {
	content: "\2193";
}
.doc-directory tr[aria-expanded=false] td.pkg-name:before {
	content: "\2192"!important;
}

.doc-directory tr[aria-hidden=true] {
	display: none;
}


/* doc page */

pre.doc-code {
	tab-size: 8;
	background-color: #f8f8f8;
	color: #202224;
	border: 1px solid #c6c8ca;
	border-radius: 0.25rem;
	padding: 0.625rem;
}
pre.doc-code a {
	font-family: Consolas,Liberation Mono,Menlo,monospace!important;
	text-decoration: none;
	color: #2179d8;
	font-weight: 800;
}

pre.doc-code a.code-procedure {
	color: #047919;
}

pre.doc-code span.comment {
	color: #888;
}
pre.doc-code span.doc-builtin {
	color: #ff5252;
	font-weight: 600;
}

pre.doc-code .keyword-type {
	color: #ff5252;
}
pre.doc-code .keyword {
	color: #ff5252;
}
pre.doc-code .directive {
	color: #05a;
}
pre.doc-code .string {
	color: #093;
}

.pkg-line-doc {
	color: #444;
	width: 100%;
}


.doc-source {
	display: inline;
	float: right;
}

.doc-source a {
	text-decoration: none;
	color: #666666;
	font-size: 0.75em;
}
.doc-source a:hover {
	text-decoration: underline;
}

a > .a-hidden {
	opacity: 0;
}
a:hover > .a-hidden {
	opacity: 100;
}
section.documentation {
	display: flex;
	flex-direction: column;
}

section.documentation h3 {
	font-size: calc(1.1rem + .2vw);
}

section.documentation h1,
section.documentation h2,
section.documentation h3,
section.documentation h4,
section.documentation h5 {
	margin-top: 0;
	padding-top: 1.5rem;
}

.pkg-index h3 {
	margin-top: 0  !important;
	padding-top: 0 !important;
}


.documentation .pkg-entity {
	padding-bottom: 0.75rem;
	border-bottom: 1px solid #d0d0d0;
}

.documentation .pkg-entity details pre {
	white-space: pre-wrap;
	word-break: keep-all;
	word-wrap: break-word;
}

details.doc-index > summary {
	font-size: 1.5rem;
}
details.doc-index ul {
	list-style-type: none;
}


details.odin-doc-toggle, details.doc-index {
	z-index: 100;
	position: relative;
}

details.odin-doc-toggle > summary.hideme span:before {
	content: "Expand description";
}
details.odin-doc-toggle[open] > summary.hideme span:before {
	content: "Close description";
	opacity: 0.8;
}

details.odin-doc-toggle[open] > summary.hideme {
	margin-bottom: 0.5em;
}

details.code-example > summary {
	font-weight: 700;
}

@media only screen and (max-width: 991px) {
	#pkg-sidebar {
		display: none;
	}
}

.full-width {
	max-width: calc(100% - 2em);
	margin: 0 1em;
}

h1.odin-package-header {
	margin-top: 1rem;
}

#pkg-sidebar {
	overflow-x: hidden;
}

#pkg-sidebar > div {
	overflow-x: auto;
}


#pkg-sidebar ul {
	list-style-type: none;
	padding: 0;
}

#pkg-sidebar li:not(:last-child) {
	margin-bottom: 0.25rem;
}


#pkg-sidebar li > ul {
	padding-left: 1.25rem;
}

#pkg-sidebar a.active {
	font-style: italic;
}

#TableOfContents {
	overflow-x: hidden;
}

#TableOfContents > ul {
	overflow-x: auto;
}

#algolia-search > .DocSearch {
	margin: 0.5em 0 -0.5em;
	width:  100%;
	height: 2.5rem;
	border-radius: 0.25rem;
}

.documentation .pkg-entity-hidden {
	display: none;
}

#pkg-overview pre {
	margin-left: 2.5rem;
}

#pkg-index.hidden {
	display: none;
}

.odin-main > article {
	padding-top: 0 !important;
}
.odin-article h1 {
	padding-top: 3rem !important;
}

.odin-search-wrapper {
	position: relative;
	margin-top: 1rem;
}

.odin-search-shortcut {
	display: flex;
	align-items: center;
	column-gap: 0.25rem;
	position: absolute;
	top: 50%;
	right: 0.5rem;
	transform: translateY(-50%);
	z-index: 1001;
	user-select: none;
	pointer-events: none;
	font-size: 0.75rem;
	background-color: white;
	opacity: 0.5;
}

.os-linux .odin-search-shortcut {
	display: flex;
}

.odin-search-key {
	display: flex;
	justify-content: center;
	align-items: center;
	min-width: 30px;
	height: 30px;
	padding: 0.25rem;
	border: 1px solid rgba(0,0,0,0.2);
	border-radius: 0.25rem;
}

.key-macos, .key-windows, .odin-search-or {
	display: none;
}

.os-macos .key-macos,
.os-macos .odin-search-or {
	display: flex;
}

.os-windows .key-windows,
.os-windows .odin-search-or,
.os-linux .key-windows,
.os-linux .odin-search-or {
	display: flex;
}

#odin-search {
	position: relative!important;
	z-index: 1000;
	width: 100%;
	height: 3rem;
	font-size: 1.5rem;
	border: 1px solid #888;
	padding-left:  0.5rem;
	padding-right: 0.5rem;
	border-radius: 0.25rem;
}

.os-ios #odin-search,
.os-android #odin-search {
	padding-right: 0.5rem !important;
}

.os-macos #odin-search {
	padding-right: 6rem;
}

.os-windows #odin-search,
.os-linux #odin-search {
	padding-right: 6.5rem;
}

.os-ios .odin-search-shortcut,
.os-android .odin-search-shortcut {
	display: none;
}

#odin-search-results {
	padding-left: 0;
}


#odin-search-results li {
	list-style: none;
	padding: 0.5rem 1.0rem;
	display: flex;
	justify-content: space-between;
}

#odin-search-results li:nth-child(odd) {
	background-color: #f8f8f8;
}

#odin-search-results li.selected {
	border: 2px solid #333;
	border-radius: 0.25rem;
	background-color: #d5e5f6;
}


#odin-search-results li .kind {
	color: #666;
	font-style: italic;
}



/* Table borders  */
.doc-directory tr {
	border: none !important;
}
.doc-directory td:not(:first-child) {
	/*border-top: 1px solid #ccc !important;
	border-bottom: 1px solid #ccc !important;*/
}
.doc-directory {
	line-height:  1.6em;
	color: var(--bs-gray-700);
}
/* Table shading */
.doc-directory tr:nth-child(even) {
	background-color: #f8f8f8;
}

.pkg-breadcrumb {
	padding-top: 1rem;
}

.doc-list {
    display: list-item;
    margin-left: 1.5em;
}


#odin-search-info {
	display: flex;
	flex-wrap: wrap;
	z-index: 100;
	position: relative;
}

#odin-search-time, #odin-search-options {
	flex: 50%;
}

#odin-search-options {
	margin-left: auto;
	text-align: right;
}

@media (max-width: 720px) {
	#odin-search-time, #odin-search-options {
		flex: 100%;
	}
}

.dark-mode .doc-directory tr,
.dark-mode .doc-directory td {
	color: var(--bs-light);
}

.dark-mode .doc-directory tr:nth-child(even) {
	background-color: var(--dark-border);
}


.dark-mode #odin-search-results li {
	color: var(--bs-light);
}

.dark-mode #odin-search-results li:nth-child(odd) {
	background-color: var(--dark-border)!important;
}


.dark-mode #odin-search {
	background-color: var(--dark-background) !important;
	border-color: var(--dark-border) !important;
	color: var(--bs-light) !important;
}

.dark-mode .odin-search-shortcut {
	background-color: var(--dark-border) !important;
	color: var(--bs-light) !important;
}


.dark-mode pre.doc-code {
	background-color: var(--dark-code);
	color: var(--bs-light);
	border-color: var(--dark-border);
}
.dark-mode pre.doc-code a {
	color: #2179d8;
}

.dark-mode pre.doc-code a.code-procedure {
	color: #42b557;
}

.dark-mode pre.doc-code span.comment {
	color: #888;
}
.dark-mode pre.doc-code span.doc-builtin {
	color: #ff5252;
}

.dark-mode pre.doc-code .keyword-type {
	color: #ff5252;
}
.dark-mode pre.doc-code .keyword {
	color: #ff5252;
}
.dark-mode pre.doc-code .directive {
	color: #05a;
}
.dark-mode pre.doc-code .string {
	color: #0a5;
}