/*
StaDocGen Custom Page Styling
Ben Norton
Last Modified: 202411060


Units
0.8rem 12.8px
0.9rem 14.4px
1.0rem 16px
1.2rem 19.2px
1.2rem
1.5rem 24px
*/

.custom-bg-color {
	background-color: #80C283 !important;
}
.custom-text-color {
	color: #80C283 !important;
}
.btn-outline-primary {
    color: #80C283;
    border-color: #80C283;
	font-weight: 500;
}
.btn-outline-primary:hover,
.btn-outline-primary:focus {
	background-color: #80C283;
	color: #FFFFFF;
	font-weight: 500;
}
.th-collapser i.fa {
	background: transparent;
	color: #80C283;
	font-size: 18px;
	margin-left: 10px;
}
td.indicator-td {
	color: #80C283;
	text-align: center;
}
table.table-sssom tbody tr th.col-w-4:hover {
	background-color: #80C283;
	color: #FFFFFF;
}
th.popover-container .popover .popover-header {
	background-color: #80C283;
	color: #FFFFFF;
}


/* Smooth Scrolling */
html,body {
	scroll-behavior: smooth;
}
@media screen and (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

body,
.container,
.row,
table thead th,
table tbody tr,
ul li,
p,
h1,
h2,
h3,
h4,
a,
span {
	font-family: Roboto, sans-serif;
}
.content-header-wrapper table tr td:first-of-type {
	width: 35%;
}
main.wrapper .container.content h1 {
	color: rgb(17, 24, 39);
}
main.wrapper .container.content h2 {
	font-size: 2rem;
	margin: 2rem 0 1rem 0;
}
main.wrapper .container.content h3 {
	font-size: 1.6rem;
	margin: 1.6rem 0 .8rem 0;
}
main.wrapper.home-content .container.content h4 {
	font-size: 1.4rem;
	margin: 1.6rem 0 .4rem 0;
}
	/* Typography */
p span.signature {
	font-family: 'Marck Script', cursive;
	color: rgba(100,100,100);
	font-size: 24px;
}
a {
	color: #1172A6;
}
a:hover,
a:focus {
	color: #0E608C;
}
li.navbar-item a.nav-link {
	padding-bottom: 0.25rem;
}
.navbar-dark .navbar-nav a.nav-link.nav-link-active {
	color: #FFFFFF;
	text-decoration: none;
	border-bottom: 2px solid #FFFFFF;
}
ul.resources-list li a,
p a {
	text-decoration: underline;
}
.ref-wrapper ul {
	list-style-type: none;
	margin-left: 0;
	padding-left: 0;
}
.ref-wrapper ul li {
	line-height: 1.4;
	font-size: 1rem;
	padding-bottom: 10px;
}
body > footer {
	color: #FFFFFF;
	border-top-color: #FFFFFF;
}
/* Table Adjustments ------------------------------- */
main .container.content table {
	width: 100%;
}
table.table-terms thead tr {
	background-color: rgba(230,230,230,.8);
}

table.quick-reference tbody tr th {
	width: 10%;
}
table tbody tr:hover,
table tbody tr:focus {
	background-color: rgba(243,244,246,.3);
}
table thead > tr > th {
	font-size: 1.0rem;
	font-weight: 400;
}
table thead > tr > th span {
	font-weight: 700;
}
table tbody > tr > th {
	width: 15%;
	font-size: 0.9rem;
	text-align: right;
    font-weight: 600;
    white-space: nowrap;
}
table tbody > tr > td {
	vertical-align: baseline;
	font-size: 0.9rem;
	padding: 7px 10px;
}
table tbody tr:nth-child(even) {
	background-color: rgba(230,230,230,0.3);
}
.content-header-wrapper table tbody tr:nth-child(even) {
	background-color: rgba(230, 230, 230, 0.3);
}
thead tr.class a,
thead tr th.class a,
tbody tr.class a,
tbody tr td.class a {
	color: rgba(102,10,16,1);
}

caption.property,
thead tr th.property,
tbody tr td.property {
	color: rgba(4, 130, 37, 0.8);
}
caption.class,
thead tr th.class,
tbody tr td.class {
	color: rgba(102, 14, 17, 0.8);
}

caption.deprecated,
thead tr th.deprecated,
tbody tr td.deprecated {
	color: rgb(85, 85, 85);
	font-style: italic;
}
thead tr th span.title {
	letter-spacing: 0.02em;
}
table tbody tr td ul.td-list {
	list-style-type: none;
	padding-left: 0;
	margin-left: 0;
}
table tbody tr td ul.td-list li {
	display: inline-block;
	float: left;
	margin-right: 10px;
	line-height: 1.8;
}
table tbody tr td ul.td-list li span {
	padding: 0.2em 0.4em;
	margin: 0;
	font-size: 85%;
	white-space: break-spaces;
	background-color: rgba(230, 230, 230, 1);
	border-radius: 6px;
	font-family: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace;
	font-size: 0.9rem;
}
table tbody tr.skos-tr,
table tbody tr.skos-tr td {
	position: relative;
}
table tbody tr.skos-tr td span.w-50 {
	display: inline;
	width: 50%;
	position: relative;
}
table tbody tr.skos-tr td span:first-of-type {
	margin-right: 0;
	padding-right: 15px;
	border-right: 2px solid rgb(66, 72, 82);
}
table tbody tr.skos-tr td span.skos-term {
	margin-left: 0;
	padding-left: 15px;
}
main .container.content table.table-terms {
	margin-bottom: 0;
}
.term-table-wrapper {
	margin-bottom: 1.2rem;
}
/* DC Table (Adopted from Dublin Core */
table.dc-table {
	font-size: 0.8rem;
}
table tr th.w-18 {
	width: 18%;
}
table tr th.w-26 {
	width: 26%;
}

/* RDF Badges ---------------------- */
.badge.badge-class {
	background-color: #FFFFFF;
	color: rgb(33, 37, 41);
	font-weight: 500;
}
.badge.badge-property {
	line-height: 1.2rem;
	background-color: #FFFFFF;
	color: rgb(33, 37, 41);
	font-weight: 500;
}


/* List Adjustments ----------------------------- */
.list-2-col {
	-moz-column-count: 2;
	column-count: 2;
	-webkit-column-count: 2;
    -moz-column-gap: 24px;
	column-gap: 24px;
	-webkit-column-gap: 24px;
}

.list-3-col {
	-moz-column-count: 3;
	column-count: 3;
	-webkit-column-count: 3;
    -moz-column-gap: 16px;
	column-gap: 16px;
	-webkit-column-gap: 16px;
}
.list-4-col {
	-moz-column-count: 4;
	column-count: 4;
	-webkit-column-count: 4;
    -moz-column-gap: 12px;
	column-gap: 12px;
	-webkit-column-gap: 12px;
}

main.wrapper ol,
main.wrapper ul {
	padding-left: 15px;
}
main.wrapper ul {
	list-style-type: disc;
	margin-top: 1.25em;
	margin-bottom: 1.25em;
	padding-left: 15px;
}
main.wrapper ul {
	list-style-type: disc;
	margin-top: 0;
	margin-bottom: 1.25em;
	padding-left: 15px;
}
main.wrapper ul li {
	margin: .5em 0;
	padding-left: .375em;
}
main.wrapper.home-content ul li {
	margin: 0;
	line-height: 1.5;
}
ul.resources-list,
ul.term-list,
ul.cls-list {
	list-style-type: none;
	padding-left: 0;
}
main.wrapper ol {
    list-style-type: decimal;
	list-style-position: outside;
}
main.wrapper ol li {
	padding-left: .4em;
    margin-top: .5em;
    margin-bottom: .5em;
}
ol li::marker {
	color: rgb(107, 114, 128);
	font-weight: 400;
}
ol li:first-child {
	margin-top: 1.2em;
}
ol li:last-child {
	margin-bottom: 1.2em;
}
/* Class Sets -------------------- */

.class-set-wrapper h5,
.term-set-by-class-wrapper h5 {
	margin-bottom: 5px;
	font-size: 18px;
	font-weight: 600;
}
.class-set-wrapper,
.term-set-by-class-wrapper {
	padding: 1rem 0 0 0;
	border-bottom: 1px solid rgb(150,150,150);
}
/* Buttons */
a.class {
	color: #660A10;
}
a.property {
	color: #09591D;
}
.btn.class {
	color: #660A10;
    border-color: #660A10;
}
.btn.property {
	color: #09591D;
    border-color: #09591D;
}


main.wrapper .toc ul {
	list-style-type: none;
	padding-left: 0;
}

.content table.table-terms td:first-of-type{
	width:120px
}

table.table-sssom>:not(:first-child),
table.table-sssom thead,
table.table-sssom tbody {
	border: none;
}

table.table-sssom thead th {
	font-size: 0.9rem;
	text-align: right;
	border-bottom: none;
}
table.table-sssom thead th a {
	font-weight: 500;
}
table.table-sssom tbody tr td {
	border-top: 1px solid rgb(222, 226, 230);
	border-bottom: 1px solid rgb(222, 226, 230);
}
table.table-sssom tbody tr.hide-table-padding td.hide-td {
	width: 0%;
}
/* Collapse Tables ----------------------------------------- */
/* chevron up f077
chevron down f078

 */

table.table-sssom thead th .fa:before,
table.table-sssom tbody [data-bs-toggle="collapse"] .indicator-td .fa:before {
	font-family: "Font Awesome 5 Free";
	content: "\f0d7";
}
table.table-sssom tbody [data-bs-toggle="collapse"].collapsed .indicator-td .fa:before,
[data-bs-toggle="collapse"].collapsed .fa:before {
	font-family: "Font Awesome 5 Free";
	content: "\f0d8";
}
table.table-sssom tbody [data-bs-toggle="collapse"] .indicator-td .fa:after {
	content: 'Hide';
	font-family: "Roboto", sans-serif;
	color: rgb(33, 37, 41);
	font-weight: 400;
	padding-left: 10px;
}
table.table-sssom tbody [data-bs-toggle="collapse"].collapsed .indicator-td .fa:after {
	content: 'Show';
	font-weight: 400;
	padding-left: 10px;
}



table.table-sssom thead tr th {
	padding: 0;
	text-align: left;
}
a.th-collapser {
	display: block;
	width: 100%;
	height: 100%;
	text-align: left;
	margin: 0;
	padding: 6px;
	font-weight: 600;
	color: #212529;
	transition: .5s all;
}
a.th-collapser:hover {
	text-decoration: underline;
	background: rgba(230,230,230,0.4);
}

span.skos-th-label {
	display: inline-block;
	text-align: left;
}
table.table-sssom tr.hide-table-padding td {
  padding: 0;
}
table.table-sssom tbody > tr > th {
	text-align: left;
}

table.table-sssom .expand-button {
	position: relative;
}
table.table-sssom .accordion-toggle .expand-button:after {
    position: absolute;
    left:.75rem;
    top: 50%;
    transform: translate(0, -50%);
    content: '-';
}
table.table-sssom .accordion-toggle.collapsed .expand-button:after {
	content: '+';
}
/* Nested Table */
.inner-table-grid .row {
	font-size: 0.75rem;
}
.inner-table-grid .row span.label {
	display: inline-block;
	position: relative;
	width: 40%;
	text-align: right;
	border-right: 2px solid #DCDCDC;
	padding-right: 4px;
}
table.nested-table tbody tr td {
	padding: 4px 4px 4px 8px;
}
table.nested-table tbody tr td:first-of-type {
	padding: 0 0.5rem;
}



/* Footer --------------------------------------------- */

.footer-logo {
	max-width: 150px;
	height: auto;
}
.list-inline-item .footer-logo {
	height: 40px;
	width: auto;
}
body > footer p {
	color: #FFFFFF;
}
body > footer p a {
	color: rgb(160,140,230);
}
/* Testing Collapse */

table.table-sssom tbody tr th {
	text-align: left;
	font-size: 0.8rem;
	font-weight: 500;
	padding: .25rem .25rem;
}
table.table-sssom tbody tr td.indicator-td {
	width: 4%;
	border: none;
	text-align: center;
	cursor: pointer;
}

table.table-sssom tbody tr th.col-w-16  {
	width: 16%;
}
table.table-sssom tbody tr th.col-w-25 {
	width: 28%;
}
table.table-sssom tbody tr th.col-w-55 {
	width: 52%;
}
table.table-sssom tbody table.nested-table {
	border-top: 2px solid rgba(100,100,100,0.5);
	border-top: 2px solid rgba(100,100,100,0.5);
	border-left: none;
	border-right: none;
	height: 0;
	padding: 0;
}
table.table-sssom tbody table.nested-table tbody tr th {
	width: 15%;
	padding: 4px 8px 4px 0;
	border-top: 1px solid rgb(222, 226, 230);
	border-bottom: 1px solid rgb(222, 226, 230);
}
table.table-sssom tbody table.nested-table tbody tr td {
	width: 85%;
	padding: 4px 8px;
}
table.table-sssom tbody table.nested-table tbody tr th,
table.table-sssom tbody table.nested-table tbody tr td {
	font-size: 14px;
}
table.table-sssom tbody table.nested-table tbody tr th {
	padding-left: 8px;
	border-bottom: none;
}

th.popover-container .popover .popover-header,
th.popover-container .popover .popover-body {
	font-size: 14px;
}
table.table-sssom-nested th i.fa-question-circle {
	font-size: 12px;
	cursor: pointer;
}
span.close:hover {
	text-decoration: underline;
}
span.close,
.popover a.close,
.popover .close,
.popover .btn-close {
	cursor: pointer;
	float: right;
	color: #FFFFFF;
}

/* Mermaid Diagram ----------------------------------- */
[id^="mermaid"] {
}
.diagram-wrapper {
	position: relative;
	border: 2px solid rgba(230,230,230,1);
	margin: 10px 0;
	padding: 10px;
}
.diagram-wrapper button {
	position: absolute;
	right: 5px;
	top: 5px;
}
.diagram-wrapper svg[id^="mermaid"] .node rect.title-state {
	fill: rgba(86,13,89,0.9) !important;
	stroke: rgba(220,220,220,0.8) !important;
}
.diagram-wrapper svg[id^="mermaid"] g.label .classTitle span.nodeLabel {
	font-weight: 600;
	font-size: 1.2rem;
}
.diagram-wrapper svg[id^="mermaid"] g.label span.nodeLabel {
	color: #FFFFFF !important;
	font-weight: 400;
}
.diagram-wrapper svg[id^="mermaid"] line.divider {
	stroke: rgba(250,250,250,0.5) !important;
}
/* Responsives ----------------- */
@media only screen and (max-width: 767px) {
	main {
		max-width: 100%;
		width: 100%;
		padding: 0;
		margin: 0;
		overflow-x: hidden;
	}
	.list-3-col,
	.list-4-col {
		-moz-column-count: 2;
		column-count: 2;
		-webkit-column-count: 2;
		-moz-column-gap: 12px;
		column-gap: 12px;
		-webkit-column-gap: 12px;
	}
	table.table-sssom thead th:not(:first-child) {
        display: none;
    }
    table.table-sssom td {
        display: block;
    }
	table.table-sssom thead tr th {
		text-align: left;
		border-bottom: 1px solid rgb(222, 226, 230);
	}
	table tbody tr.skos-tr td span.w-50,
	tr.skos-tr td span,
	table.table-sssom tbody tr td.col-1,
	table.table-sssom tbody tr td.col-2,
	table.table-sssom tbody tr td.col-3 {
		border: none;
		width: 100%;
		text-align: left;
	}

	table tbody tr.skos-tr td span.w-50,
	tr.skos-tr td span {
		width: 100%;
		padding-left: 0;
		line-height: 2;
		border-right: none !important
	}
	.logo-wrapper {
		display: none;
	}
	table.table-sssom tbody tr.nested-thead-tr th:not(:first-child) {
        display: none;
    }
	table.table-sssom tbody td,
	table.table-sssom tbody th {
		display: block;
    }
	table.table-sssom tbody td[data-th]:before  {
        content: attr(data-th);
		display: inline-block;
		font-weight: 600;
		padding-right:8px;
    }
	table.table-sssom-nested tbody,
	table.table-sssom-nested tbody tr {
		width: 100%;
	}
	table.table-sssom tbody table.nested-table tbody tr td,
	table.table-sssom tbody table.nested-table tbody tr th {
		display: inline-block;
	}
	table.table-sssom tbody table.nested-table tbody tr th {
		paddin-right: 0;
		padding-left: 10px;
		width: 24%;
	}
	table.table-sssom tbody table.nested-table tbody tr td {
		width: 72%;
		padding-right: 0;
		padding-left: 0;
	}
	tbody tr.nested-thead-tr {
		height: 0;
		display: none;
	}
	i.fa.fa-question-circle.doc-help-tip {
		display: none;
	}
	table.table-sssom tbody [data-bs-toggle="collapse"].collapsed .indicator-td,
	table.table-sssom tbody [data-bs-toggle="collapse"] .indicator-td {
		width: 80%;
		display: inline-block;
	}
	table.table-sssom tbody [data-bs-toggle="collapse"] .indicator-td {
		text-align: left;
	}
	table.table-sssom tbody [data-bs-toggle="collapse"] .indicator-td .fa:after {
		content: 'Hide Additional Details';
	}
	table.table-sssom tbody [data-bs-toggle="collapse"].collapsed .indicator-td .fa:after {
		content: 'Show Additional Details';
	}


}


@media only screen and (max-width: 480px) {

	main .container.content {
		max-width: 100%;
		width: 100%;
		padding: 0 10px;
		margin: 0;
		overflow-x: inherit;
	}
	.list-2-col,
	.list-3-col,
	.list-4-col {
		-moz-column-count: 1;
		column-count: 1;
		-webkit-column-count: 1;
		-moz-column-gap: 0px;
		column-gap: 0px;
		-webkit-column-gap: 0px;
	}
}

/* Mermaid E-R Diagrams --------------------------------------------------- */
/* Alt Colors
Original:#043B58;
Red: #8C3515
Green: #235900
Green 2: #006653
Purple: #80C283
*/
/* Fullscreen */
.mermaid {
	background-color: #FFFFFF;
}
.toggle-fullscreen-btn {
	top: 10px;
	right: 10px;
	border: 0;
	padding: 0;
	background: none;
	cursor: pointer;
	outline: none;
}
.toggle-fullscreen-svg {
	display: block;
	height: auto;
}
.toggle-fullscreen-svg path {
	transform-box: view-box;
	transform-origin: 12px 12px;
	fill: none;
	stroke: rgb(150,150,151);
	stroke-width: 3;
	transition: .15s;
}
.toggle-fullscreen-btn:hover path:nth-child(1),
.toggle-fullscreen-btn:focus path:nth-child(1) {
	transform: translate(-2px, -2px);
}
.toggle-fullscreen-btn:hover path:nth-child(2),
.toggle-fullscreen-btn:focus path:nth-child(2) {
	transform: translate(2px, -2px);
}
.toggle-fullscreen-btn:hover path:nth-child(3),
.toggle-fullscreen-btn:focus path:nth-child(3) {
	transform: translate(2px, 2px);
}
.toggle-fullscreen-btn:hover path:nth-child(4),
.toggle-fullscreen-btn:focus path:nth-child(4) {
	transform: translate(-2px, 2px);
}
.toggle-fullscreen-btn:not(.on) .icon-fullscreen-leave {
	display: none;
}
.toggle-fullscreen-btn.on .icon-fullscreen-enter {
	display: none;
}


