*{border:0;margin:0;padding:0;box-sizing:border-box}
@font-face {
	font-family: 'icons';
	src: url('/fonts/icons/icomoon.eot');
	src: url('/fonts/icons/icomoon.eot#iefix') format('embedded-opentype'),
		url('/fonts/icons/icomoon.ttf') format('truetype'),
		url('/fonts/icons/icomoon.woff') format('woff'),
		url('/fonts/icons/icomoon.svg#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: local('Open Sans Light'), local('OpenSans-Light'), url(https://fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UN_r8OUuhp.woff2) format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v17/mem8YaGs126MiZpBA-UFVZ0b.woff2) format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root {
	--color-cycle-1: rgb(31,119,180);
	--color-cycle-2: rgb(255,127,14);
	--color-cycle-3: rgb(44,160,44);
	--color-cycle-4: rgb(214,39,40);
	--color-cycle-5: rgb(148,103,189);
	--color-cycle-6: rgb(140,86,75);
	--color-cycle-7: rgb(227,119,194);
	--color-cycle-8: rgb(127,127,127);
	--color-cycle-9: rgb(188,189,34);
	--color-cycle-10: rgb(23,190,207);
}
[data-icon]:before {
	display: inline-block;
	font-family: icons;
	content: attr(data-icon);
}
body {
	background: #f9f9f9;
}
body, input, select, textarea {
	font-family: Open Sans, sans-serif;
	font-size: 16px;
	line-height: 145%;
}
a {
	text-decoration: none;
	color: #00949c;
	cursor: pointer;
}
h1, h2, h3, h4 {
	font-weight: 300;
	margin-bottom: 0.6em;
	line-height: 1.3;
}
h4 {
	margin-bottom: 0.4em;
}
p {
	margin-bottom: 15px;
}
ol, ul {
	padding-left: 30px;
	margin-bottom: 15px;
}
sub {
	line-height: 0;
}
.wrap {
	max-width: 1268px;
	padding: 0 32px;
	margin: 0 auto;
}
.fleft {
	float: left !important;
}
.fright {
	float: right !important;
}
.space {
	margin-top: 5px;
}
.clear {
	clear: both;
}
.show {
	display: block !important;
}
.intro {
	font-size: 18px;
	line-height: 1.55;
	margin-bottom: 35px;
}
.intro p {
	margin: 0;
}
header {
	background: #111;
	padding: 8px 0;
	height: 48px;
	line-height: 32px;
}
header nav {
	position: relative;
}
header nav>a, header nav>span>a {
	position: relative;
	color: #fff;
	margin-left: 8px;
	font-size: 27px;
	float: left;
}
header a[data-notify]:after {
	content: attr(data-notify);
	color: #fff;
	position: absolute;
	font-size: 9px;
	top: 0;
	right: -6px;
	background: rgb(0, 180, 0);
	padding: 0px 4px 0;
	border-radius: 10px;
	line-height: 14px;
}
header a[data-notify="0"]:after {
	display: none;
}
a.logo {
	font-family: 'Open Sans';
	font-size: 18px;
	color: #fff;
	text-decoration: none;
	float: left;
}
.logo:before {
	float: left;
	font-size: 27px;
	margin-right: 7px;
}
.crumbs {
	float: left;
}
.menu {
	display: none;
	position: absolute;
	z-index: 200;
	font-size: 14px;
	line-height: 24px;
	background: #fff;
	box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1);
	width: 275px;
	right: 0;
	top: 36px;
	padding: 0;
}
.menu .tabs {
	background: #eee;
}
.menu .tabs>[data-tab] {
	padding: 3px 10px;
	color: #555;
	display: inline-block;
}
.menu .tabs>[data-tab].selected {
	background: #fff;
}
[data-tab-content] {
	display: none;
}
[data-tab-content].show + [data-tab-content].show {
	border-top: 1px solid #eee;
}
.resources-icon.connected {
	color: #74ea36;
}
.user-menu .item {
	display: block;
	padding: 7px 10px 5px;
}
.user-menu .disabled {
	background: #eee;
}
.user-menu .name:before {
	font-family: 'icons';
	font-size: 18px;
	float: left;
	margin-right: 4px;
}
.user-menu [data-connection_id] .name:before {
	content: 'n';
}
.user-menu [data-connection_id="local"] .name:before {
	content: 'L';
}
[data-module="resource"] {
	border-left: 4px solid #eee;
	border-bottom: 1px solid #fafafa;
}
[data-module="resource"][data-connection-state="0"] {
	border-left-color: #daa;
}
[data-module="resource"][data-connection-state="1"] {
	border-left-color: #aad;
}
[data-module="resource"][data-connection-state="2"] {
	border-left-color: #dda;
}
[data-module="resource"][data-connection-state="3"] {
	border-left-color: #ada;
}
[data-framework] {
	padding: 2px 5px;
	background: #eee;
	margin-right: 4px;
	color: #555;
}
[data-framework="js"] {
	background: #f7df1e;
	color: #000;
}
[data-framework="node.js"] {
	background: #23a133;
	color: #fff;
}
[data-framework="py"] {
	background: #306998;
	color: #fff;
}
[data-framework="R"] {
	color: #2468bb;
}
.user-menu .frameworks {
	margin: 4px 0px;
}
.user-menu [data-empty]:empty::before {
	padding: 30px 0;
	font-size: 16px;
}
.user-menu .jobs .details {
	float: left;
	width: 30%;
	color: #333;
	line-height: 22px;
}
[data-job] .progress {
	float: left;
	width: 70%;
	position: relative;
	color: #333;
	border: 1px solid #eee;
	background: #f7f7f7;
	line-height: 22px;
	height: 24px;
}
[data-job] .progress>div {
	height: 22px;
	position: absolute;
}
[data-job] .progress [data-progress] {
	background: rgba(74, 137, 191, 1);
}
[data-job] .progress [data-progress]:before {
	content: attr(data-progress);
	text-align: center;
	position: absolute;
	width: 100%;
	color: #fff;
	font-size: 14px;
	text-shadow: 1px 1px rgba(0, 0, 0, 0.5);
}
.user-menu .resources .details {
	float: left;
	width: 80%;
	color: #333;
	line-height: 22px;
}
.user-menu .resources .cost[data-cost="0"] {
	display: none;
}
.user-menu .resources .threads {
	float: right;
	width: 20%;
	text-align: center;
	background: #eee;
	font-size: 15px;
	padding: 4px;
}
.user-menu .state-change {
	padding: 3px 10px;
	background: #eee;
	font-size: 15px;
}
.user-menu .state-change a:before {
	margin-right: 6px;
	font-size: 18px;
	float: left;
}
.user-menu .state-change a {
	color: #333;
}
.user-menu .state-change a:hover {
	color: #666;
}
.user-menu .state-change[data-status="connected"] a {
	color: #497930;
}
.main {
	min-height: 600px;
	margin: 25px 0;
	display: inline-block;
	width: 100%;
}
.filtered-list {
	display: flex;
	flex-wrap: wrap;
}
.filters {
	flex: 1	
}
.filters input[type="text"], .filters select {
	border: 1px solid #ccc;
	padding: 3px 5px;
	font-size: 14px;
	background: #fff;
	width: 100%;
	height: 32px;
	border-radius: 2px;
	margin-bottom: 7px;
}
.model-list {
	flex: 4;
	margin-left: 35px;
}
.model-list>div {
	position: relative;
	overflow: hidden;
	margin-bottom: 20px;
	background: #fff;
	border: 1px solid #e7e7e7;
}
.model-list>div:nth-child(4n) {
	margin-right: 0;
}
.model-list>div .details {
	font-family: Open Sans, sans-serif;
	font-size: 13px;
	color: #333;
	padding: 7px 12px;
}
.model-list>div .details h3 {
	font-size: 15px;
	font-weight: 400;
	line-height: 24px;
}
.model-list>div .details h4 {
	font-size: 14px;
	color: #000;
}
.model-list>div .details p {
	margin-bottom: 5px;
}
a[data-tag] {
	display: inline-block;
	margin-right: 5px;
}
/*
a[data-tag]:before {
	display: inline-block;
	font-family: icons;
	border: 2px solid #555;
	padding: 2px;
	font-size: 24px;
	border-radius: 24px;
}
a[data-tag="type:ibm"]:before {
	content: '7';
}
a[data-tag="spatial:discrete"]:before {
	content: '5';
}
a[data-tag="spatial:continuous"]:before {
	content: '6';
}
a[data-tag="individuals:discrete"]:before {
	content: '3';
}
a[data-tag="type:popgen"]:before {
	content: '4';
}
*/
canvas.grid {
	position: absolute;
	z-index: 1;
}
canvas.dynamic {
	position: absolute;
	z-index: 2;
	background transparent;
}
[data-empty]:empty:before {
	content: attr(data-empty);
	display: block;
	padding: 100px 0;
	text-align: center;
	font-size: 20px;
	color: #888;
}
.narrate {
	font-size: 18px;
	line-height: 1.55;
	margin-bottom: 35px;
	background: #f7f7f7;
	padding: 7px 12px;
}
.narrate:empty {
	display: none;
}
.narrate p {
	margin: 0;
}
.plots {
	position: relative;
	padding: 15px 0;
	display: inline-block;
	width: 100%;
}
.plots .overlay {
	display: none;
	position: absolute;
	z-index: 1000;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	padding-top: 150px;
	text-align: center;
	font-size: 24px;
}
.plots.loading .group {
	filter: blur(3px);
}
.plots.loading .overlay {
	display: block;
}
.archived-plots {
	padding: 15px 0;
	display: none;
	width: 100%;
}
.plot {
	position: relative;
	float: left;
	width: 301px;
	margin: 0;
	padding: 0 14px 25px 30px;
}
.plot svg, .plot canvas {
	display: block;
}
polygon.proportion:hover {
	stroke: #f90;
	stroke-width: 2px;
}
.group, .draw_frame {
	display: inline-block;
	position: relative;
}
.plot [data-plot] {
	position: relative;
	border: 1px solid #b5b5b5;
	border-width: 0 0 1px 1px;
	background: #fff;
}
.plot:not(:last-child) {
	position: absolute;
	z-index: 0;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.plot:not(:first-child) [data-plot^="line"] {
	background: transparent;
}
.plot:not(:last-child) .header, .plot:not(:last-child) .axis-tick, .plot:not(:last-child) .axis-label {
	visibility: hidden;
}
.plot:not(:last-child) [data-plot="hist_2d"] {
	display: none;
}
.plot .legend a:nth-child(1):before {
	background: var(--color-cycle-1);
}
.plot .legend a:nth-child(2):before {
	background: var(--color-cycle-2);
}
.plot .legend a:nth-child(3):before {
	background: var(--color-cycle-3);
}
.plot .legend a:nth-child(4):before {
	background: var(--color-cycle-4);
}
.plot .legend a:nth-child(5):before {
	background: var(--color-cycle-5);
}
.plot .legend a:nth-child(6):before {
	background: var(--color-cycle-6);
}
.plot .legend a:nth-child(7):before {
	background: var(--color-cycle-7);
}
.plot .legend a:nth-child(8):before {
	background: var(--color-cycle-8);
}
.plot .legend a:nth-child(9):before {
	background: var(--color-cycle-9);
}
.plot .legend a:nth-child(10):before {
	background: var(--color-cycle-10);
}
.plot:nth-child(1) [data-plot^="line"] polyline {
	stroke: var(--color-cycle-1);
}
.plot:nth-child(2) [data-plot^="line"] polyline {
	stroke: var(--color-cycle-2);
}
.plot:nth-child(3) [data-plot^="line"] polyline {
	stroke: var(--color-cycle-3);
}
.plot:nth-child(4) [data-plot^="line"] polyline {
	stroke: var(--color-cycle-4);
}
.plot:nth-child(5) [data-plot^="line"] polyline {
	stroke: var(--color-cycle-5);
}
.plot:nth-child(6) [data-plot^="line"] polyline {
	stroke: var(--color-cycle-6);
}
.plot:nth-child(7) [data-plot^="line"] polyline {
	stroke: var(--color-cycle-7);
}
.plot:nth-child(8) [data-plot^="line"] polyline {
	stroke: var(--color-cycle-8);
}
.plot:nth-child(9) [data-plot^="line"] polyline {
	stroke: var(--color-cycle-9);
}
.plot:nth-child(10) [data-plot^="line"] polyline {
	stroke: var(--color-cycle-10);
}
.plot:nth-child(1) [data-plot^="line"] polygon {
	fill: var(--color-cycle-1);
}
.plot:nth-child(2) [data-plot^="line"] polygon {
	fill: var(--color-cycle-2);
}
.plot:nth-child(3) [data-plot^="line"] polygon {
	fill: var(--color-cycle-3);
}
.plot:nth-child(4) [data-plot^="line"] polygon {
	fill: var(--color-cycle-4);
}
.plot:nth-child(5) [data-plot^="line"] polygon {
	fill: var(--color-cycle-5);
}
.plot:nth-child(6) [data-plot^="line"] polygon {
	fill: var(--color-cycle-6);
}
.plot:nth-child(7) [data-plot^="line"] polygon {
	fill: var(--color-cycle-7);
}
.plot:nth-child(8) [data-plot^="line"] polygon {
	fill: var(--color-cycle-8);
}
.plot:nth-child(9) [data-plot^="line"] polygon {
	fill: var(--color-cycle-9);
}
.plot:nth-child(10) [data-plot^="line"] polygon {
	fill: var(--color-cycle-10);
}
.group.dragover {
	background: #ffe99b;
}
.plot .overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.1);
}
.plot .overlay .progress {
	float: none;
	top: 46%;
	margin: 0 auto;
}
.plot .menu-overlay {
	position: absolute;
	display: none;
	top: 5px;
	right: 5px;
}
.plot:hover .menu-overlay {
	display: block;
}
.plot .overlay a {
	color: #555;
	cursor: pointer;
	background: #eee;
	padding: 2px 5px;
	border-radius: 5px;
}
.plot .settings-menu, .plot .data-menu {
	font-size: 14px;
	background: #fff;
	width: 130px;
	right: 0;
}
.plot .header {
	height: 29px;
}
.plot .header .title a {
	font-size: 14px;
	padding: 3px 0;
	color: #333;
}
.plot .settings-menu a, .plot .data-menu a {
	display: block;
	cursor: pointer;
	padding: 3px 10px;
}
.plot .settings-menu a:hover, .plot .data-menu a {
	background: #f5f5f5;
}
.plot .legend-hover {
	top: 5px;
	right: -140px;
}
.plot .console {
	position: absolute;
	bottom: 0;
	right: 5px;
	z-index: 1;
	font-size: 12px;
	color: #666;
}
.plot .crosshair {
	display: none;
	position: absolute;
	opacity: 0.5;
	z-index: 10;
	width: 7px;
	height: 7px;
	border-radius: 10px;
	border: 1px solid #ba0000;
}
.plot .crosshair:before {
	content: '';
	position: absolute;
	width: 17px;
	height: 1px;
	background: #ba0000;
	left: -6px;
	top: 2px;
}
.plot .crosshair:after {
	content: '';
	position: absolute;
	width: 1px;
	height: 17px;
	background: #ba0000;
	left: 2px;
	top: -6px;
}
.plot .legend {
	position: absolute;
	z-index: 50;
	top: 35px;
	right: 15px;
	font-size: 12px;
	background: rgba(255,255,255);
	padding: 5px 7px;
	opacity: 0.6;
}
.plot .legend:hover {
	opacity: 1;
}
.plot .legend:empty {
	display: none;
}
.legend a {
	display: block;
	white-space: nowrap;
}
.plot .legend a:before {
	content: '';
	padding: 0 8px;
	background: #eee;
	margin-right: 5px;
}
.plot .axis-label {
	position: absolute;
	width: 100%;
	font-size: 13px;
	text-align: center;
}
.plot .axis-label.label-x {
	bottom: -25px;
}
.plot .axis-label.label-y {
	transform: rotate(-90deg);
	transform-origin: 0 100%;
	right: 4px;
	bottom: 0;
}
.plot .axis-tick {
	position: absolute;
	cursor: pointer;
	font-size: 14px;
	line-height: 1;
}
.axis-tick.editable:before {
	content: '';
	position: absolute;
	top: -3px;
	bottom: -3px;
	left: -3px;
	right: -3px;
	z-index: -1;
	color: #000;
	background: #edf4ff;
	border: 1px solid #d4e4ff;
	border-radius: 3px;
}
.plot .axis-tick input {
	width: 25px;
	text-align: right;
	padding: 0 2px;
	border: 1px solid #ddd;
	font-size: 12px;
}
.plot .axis-tick.ymax, .plot .axis-tick.ymin, .plot .axis-tick.min {
	right: 102%;
}
.plot .axis-tick.ymax {
	top: 0;
}
.plot .axis-tick.ymin {
	bottom: 0;
}
.plot .axis-tick.xmin, .plot .axis-tick.xmax, .plot .axis-tick.min {
	bottom: -20px;
}
.plot .axis-tick.xmax {
	right: 0;
}
.infobox {
	position: absolute;
	font-size: 12px;
	width: 200px;
	font-family: Open Sans;
	background: #f6f6f6;
	padding: 2px 7px;
}
[data-module="model"] {
	position: relative;
}
[data-module="model"] h2 {
	font-size: 20px;
	margin-bottom: 5px;
}
[data-module="model"] .authors {
	font-size: 14px;
}
[data-module="model"] .authors:empty {
	display: none;
}
[data-module="model"] .doi {
	font-size: 13px;
	margin: 10px 0;
}
[data-module="model"] .description {
	font-size: 14px;
	margin: 10px 0 15px;
}
.shorten .long {
	display: none;
}
.shorten.show .short {
	display: none;
}
.shorten.show .long {
	display: block;
}
.tabs {
	border-bottom: 2px solid #ddd;
	position: relative;
}
.tabs>[data-tab], [data-module="model"] .tabs>a {
	cursor: pointer;
	display: inline-block;
	font-size: 14px;
	position: relative;
	top: 2px;
	padding: 1px 8px;
	border-bottom: 2px solid #6dbbcd;
	color: #555;
}
.tabs>[data-tab]:hover, [data-module="model"] .tabs>a:hover {
	background: #eee;
}
.tabs>[data-action] {
	display: inline-block;
	padding: 5px 10px;
}
.menu .tabs>[data-tab].selected {
	background: #ddd;
	/* border-bottom-color: #ddd; */
}
.tabs>[data-tab][data-icon]:before, [data-module="model"] .tabs>a[data-action]:before {
	margin-right: 4px;
	font-size: 13px;
}
.tabs>[data-tab] [data-action="close"] {
	color: #555;
	font-size: 11px;
	margin-left: 5px;
}
.result-tab {
	right: 142px;
	top: 45px;
	font-size: 14px;
	width: 200px;
	box-shadow: none;
	padding: 7px 10px;
	background: #ffffd6;
	border: 1px solid #ffff99;
}
.result-tab:before {
	content: '';
	position: absolute;
	right: 2px;
	top: -20px;
	border: 10px solid transparent;
	border-bottom: 10px solid #ffff99;
}
.parameters-menu {
	right: -315px;
	top: 0;
	font-size: 14px;
	width: 300px;
}
.parameters-menu .button {
	margin-right: 5px;
}
.parameters-menu .form {
	padding: 10px 12px;
}
.parameters-menu:before {
	content: '';
	position: absolute;
	left: -20px;
	top: 6px;
	border: 10px solid transparent;
	border-right: 10px solid #eee;
}
.parameters-menu label {
	clear: both;
	width: 60%;
	float: left;
}
.parameters-menu .option {
	display: inline-block;
	width: 100%;
}
.parameters-menu .option label {
	cursor: pointer;
}
.parameters-menu .option .values {
	float: left;
	width: 40%;
	display: flex;
}
.parameters-menu input, .parameters-menu select {
	background: #eee;
	border: 1px solid #eee;
	font-size: 14px;
	padding: 2px 5px;
}
.parameters-menu input.range {
	display: none;
	border: 1px solid #ccc;
}
.parameters-menu .values input, .parameters-menu .values select {
	transition: 0.5s ease all;
	width: 100%;
	flex: 1;
}
.parameters-menu input.highlight {
	background: #ffe99b;
}
.parameters-menu .values input:focus {
	flex: 5;
}
.parameters-menu label input {
	width: 25px;
	margin-right: 8px;
	padding: 2px 8px;
}
.parameters-menu .option.selected label input {
	background: #ffe99b;
}
.parameters-menu .option.selected input.value {
	display: none;
}
.parameters-menu .option.selected input.range {
	display: inline;
}
.preset {
	display: flex;
	padding: 7px 10px;
	border-bottom: 1px solid #eee;
}
.preset a {
	flex: 1;
	padding-right: 15px;
}
.preset a:before {
	font-family: icons;
	margin-right: 5px;
}
.preset a[data-type="dynamics"]:before {
	content: 'g';
}
.preset a[data-type="grid"]:before {
	content: 'G';
}
.preset pre {
	flex: 1;
}
.center {
	width: 550px;
	margin: 0 auto;
	line-height: 30px;
}
.switch {
	font-size: 14px;
	font-weight: 400;
	margin: 0 15px;
}
.switch a.disabled {
	color: #666;
}
.wide-form p {
	display: inline-block;
	width: 100%;
	position: relative;
}
.wide-form input, .wide-form select, .wide-form textarea {
	border: 1px solid #ddd;
	background: #fafafa;
	padding: 2px 7px;
	width: 50%;
	font-size: 15px;
	float: left;
}
.wide-form .editor.hide {
	display: none;
}
.wide-form label {
	clear: left;
	float: left;
	line-height: 29px;
	font-size: 15px;
	width: 25%;
}
.wide-form .info {
	float: left;
	width: 25%;
	padding-left: 5%;
}
.wide-form .tabs select {
	width: 200px;
	margin-left: 5px;
}
.entry {
	display: flex;
	padding: 5px 7px;
	background: #fafafa;
	position: relative;
}
.entry.error {
	background: #fadada;
}
.entry>input, .entry>select, .entry>span {
	width: auto;
	float: none;
	flex: 1;
}
.entry>span {
	position: relative;
}
.entry>span>input {
	width: 100%;
}
.entry input, .entry select {
	font-size: 14px;
	border: 1px solid #eee;
	background: #fff;
}
.entry span [data-range] {
	display: none;
}
.entry .values {
	position: absolute;
	z-index: 100;
	width: 320px;
	right: 0;
	top: 29px;
	display: flex;
	flex-direction: column;
}
.entry .values .entry {
	background: #f0f0f0;
}
.entry .values.hidden {
	display: none;
}
.entry .toggle-values {
	display: block;
	padding: 3px 8px;
	font-size: 14px;
	background: #f0f0f0;
}
.entry a {
	color: #666;
	font-size: 14px;
	padding: 2px;
	margin-left: 5px;
	line-height: 20px;
}
.entry .values .entry input, .entry .values .entry input {
	width: 100%;
}
.section {
	background: #fff;
	margin-bottom: 25px;
}
.section .content {
	padding: 20px 15px 10px;
}
.section.hidden .content {
	display: none;
}
.section h3 {
	position: relative;
	padding: 8px 15px;
	margin: 0;
	line-height: 30px;
	font-size: 17px;
	border-bottom: 1px solid #ddd;
	background: #eee;
	cursor: pointer;
}
.section h3:before {
	position: absolute;
	content: '';
	bottom: -25px;
	left: 15px;
	border: 12px solid transparent;
	border-top: 12px solid #ddd;
}
.section h3:after {
	position: absolute;
	content: '';
	bottom: -24px;
	left: 15px;
	border: 12px solid transparent;
	border-top: 12px solid #eee;
}
.section h3 select {
	width: 200px;
	background: #fafafa;
	color: #555;
	font-size: 14px;
	border: 1px solid #ddd;
	padding: 4px;
}
.section.hidden h3:after {
	display: none;
}
.section.hidden h3:before {
	display: none;
}
.login-form p {
	display: inline-block;
	width: 100%;
}
.login-form input, .login-form select, .login-form textarea {
	border: 1px solid #ddd;
	padding: 2px 7px;
	width: 40%;
	float: left;
}
.login-form label {
	clear: left;
	float: left;
	width: 25%;
}
.login-form .info {
	float: left;
	width: 35%;
	padding-left: 5%;
}
.center .login-form input, .center .login-form label, .center .login-form select, .center .login-form textarea {
	width: 50%;
}
.search-container {
	position: relative;
}
.search-button {
	position: absolute;
	font-size: 16px;
	color: #aaa;
	right: 7px;
	top: 4px;
}
.search-results {
	position: absolute;
	z-index: 100;
	top: 30px;
	width: 500px;
	background: #f8f8f8;
	border: 1px solid #f0f0f0;
}
.search-results .result {
	padding: 3px 10px;
	font-size: 14px;
}
.search-results .journal {
	font-style: italic;
}
.search-results .meta {
	font-size: 13px;
}
.search-results .authors {
	color: #777;
	font-size: 13px;
}
.button {
	display: inline-block;
	background: #eee;
	line-height: 21px;
	font-size: 14px;
	font-weight: 400;
	padding: 4px 8px;
	border: 1px solid #ddd;
	color: #222;
}
.boring-button {
	display: inline-block;
	cursor: pointer;
	background: #eee;
	padding: 3px 8px;
	margin-right: 5px;
	border: 1px solid #ddd;
	color: #2d2d35;
	font-size: 14px;
}
.button.orange, .boring-button.orange {
	background: #fa0;
 	color: #fff;
	text-shadow: 1px 1px rgb(255, 255, 255, 0.2);
}
.boring-button.disabled {
	color: #999;
	cursor: not-allowed;
}
.center h2 {
	margin-bottom: 20px;
}
h2 a.tag {
	background: #eee;
	color: #555;
	border-radius: 5px;
	padding: 2px 5px;
	font-size: 16px;
}
.model-list [data-module="model"][data-type*="sandbox"] {
	background: repeating-linear-gradient(135deg,  #f9f9f9,  #f9f9f9 10px,  #fff 10px,  #fff 20px);
}
[data-category] {
	background: #eee;
	color: #555;
	border-radius: 5px;
	padding: 2px 5px;
	font-size: 14px;
	margin-left: 15px;
	color: #fff;
}
[data-category="education"] {
	background: #0a3;
}
[data-category="preprint"] {
	background: #f90;
}
[data-category="published"] {
	background: #6885db;
}
.form .error {
	padding: 10px 15px;
	margin-bottom: 15px;
	border: 1px solid #ba0000;
	background: #ba000033;
}
.form .error:empty {
	display: none;
}
.editor {
	position: relative;
}
.editor .code {
	position: relative;
}
.editor .error {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	padding: 10px 15px;
	background: #ffcccc;
}
.editor .error.green {
	background: #bbd7bb;
}
.editor .error.show:empty {
	display: none !important;
}
.editor textarea {
	width: 100%;
	min-width: 100%;
	max-width: 100%;
	height: 500px;
	outline: none;
	float: none;
	font-size: 14px;
	font-family: monospace;
	vertical-align: top;
	background: #fff;
	padding: 5px;
}
.editor textarea[name="code_display"] {
	line-height: 1.6;
	height: 700px;
}
.editor .comment {
	background: #f0f0f0;
	padding: 5px 10px;
	margin: 0;
	border: 1px solid #ccc;
	font-size: 14px;
	border-top: 0;
}
.editor .watermark {
	position: absolute;
	top: 5px;
	opacity: 0.5;
	right: 10px;
	font-size: 14px;
}
.editor .tabs>[data-tab] {
	background: #fff;
	padding: 4px 12px;
	border-bottom-width: 4px;
	top: 4px;
}
.editor .tabs>[data-tab].selected {
	background: #f0f0f0;
}
.editor .tabs>[data-tab][data-status="test-success"] {
	border-color: #00ba00;
}
.editor .tabs>[data-tab][data-status="test-fail"] {
	border-color: #ba0000;
}
.editor .tabs {
	border-bottom-width: 4px;
}
.toolbar {
	display: none;
	position: fixed;
	z-index: 1;
	bottom: 0;
	left: 0;
	right: 0;
	background: #fff;
	box-shadow: 0 -2px 5px #00000033;
	height: 32px;
	transition: height 0.5s ease;
}
.toolbar.dragover {
	background: #fff7ea;
}
.toolbar:hover {
	height: 86px;
	padding: 10px 0;
}
.toolbar:hover .plot {
	display: block;
}
.toolbar .plot {
	width: 56px;
	padding: 0;
	margin: 0 10px;
}
.toolbar .plot .header, .toolbar .plot .axis-tick, .toolbar .plot .axis-label {
	display: none;
}
.toolbar .plot svg {
	width: 56px;
	height: 56px;
}
footer {
	clear: both;
	padding-top: 40px;
}
footer p {
	margin: 0;
}
footer .col {
	font-size: 12px;
	float: left;
	width: 33.33%;
	padding-right: 3.33%;
	min-height: 1px;
}
footer .col>a {
	display: block;
}
@media (max-width: 1784px) {
	[data-module="model"] .parameters-menu {
		right: 0;
		top: 45px;
	}
	[data-module="model"] .parameters-menu:before {
		left: auto;
		right: 2px;
		top: -20px;
		border-right: 10px solid transparent;
		border-bottom: 10px solid #f7f7f7;
	}
}
/* PrismJS 1.26.0
https://prismjs.com/download.html#themes=prism&languages=clike+javascript+c+cpp+java+python+r&plugins=line-numbers */
code[class*=language-],pre[class*=language-]{color:#000;background:0 0;text-shadow:0 1px #fff;font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow:none;background:#b3d4fc}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#905}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#690}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color:#9a6e3a;background:hsla(0,0%,100%,.5)}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.class-name,.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}
pre[class*=language-].line-numbers{position:relative;padding-left:3.8em;counter-reset:linenumber}pre[class*=language-].line-numbers>code{position:relative;white-space:inherit}.line-numbers .line-numbers-rows{position:absolute;pointer-events:none;top:0;font-size:100%;left:-3.8em;top:-4px;width:3em;letter-spacing:-1px;border-right:1px solid #999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.line-numbers-rows>span{display:block;counter-increment:linenumber}.line-numbers-rows>span:before{content:counter(linenumber);color:#999;display:block;padding-right:.8em;text-align:right}
