copyable-field {
	display: inline-block;
	margin-top: 10px;
	margin-bottom: 10px;
}

message-box.fixed {
	position: fixed;
	bottom: 1em;
	left: 5%;
	width: 90%;
	z-index: 999;
}

div.textblock {
	border: 1px dashed #aaa;
	padding: .5em;
	background: #f3f3f3;
	width: 95%;
	margin-left: 2.5%;
	margin-bottom: 2em;
}

h4 {
	margin-top: 1em;
}

span.badvalue {
	color: red;
	font-weight: bold;
}

span.goodvalue {
	color: green;
}

a.removelink {
	font-size: 150%;
	color: red;
	text-decoration: none;
	font-weight: bold;
}

button.icon-button {
	padding: 5px;
	border-radius: .3em;
	border: 1px solid #c6c7c8;
	background: #eee;
	transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
	margin: 0.1em;
	overflow: hidden;
}

button.icon-button:hover {
	background: #d3d4d5
}

button.icon-button-green {
	color: #27ae60;
}

button.icon-button-red {
	color: #e74c3c;
}

span.eqmark {
	font-size: 150%;
	font-weight: bold;
	padding: .2em;
	display: inline-block;
}

span.eq {
	color: #27ae60;
}

span.neq {
	color: #c0392b;
}

tr.row-selected-unconfirmed > td {
	background: #f1c40f;
}

tr.row-selected-confirmed > td {
	background: #42c282;
}

tr.row-unavailable > td {
	background: #aaa;
	color: #444;
}

summary {
	cursor: pointer;
	font-weight: bold;
	color: #024893;
}

table.data-table td,th {
	overflow: hidden;
	text-overflow: ellipsis;
}

table.data-table td:hover,th:hover {
	overflow: auto;
	text-overflow: inherit;
}

table.table-fixed {
	table-layout: fixed;
}

div.container {
	max-width: calc(min(100%, 1500px));
}

div.assessment ~ div.assessment {
	margin-top: 6em;
}

div.heading:not(:first-of-type) {
	margin-top: 4em;
}

p.theta-markdown ul, p.theta-markdown pre {
	margin-bottom: 0px;
}

p.theta-markdown pre {
	margin-left: 25px;
	border-radius: 3px;
	border: 1px dashed gray;
	padding: 10px;
}

svg.icon {
	width: 24px;
	height: 24px;
	stroke: currentColor;
	fill: none;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

svg.icon-red {
	color: #e74c3c;
}

svg.icon-green {
	color: #27ae60;
}

svg.icon-yellow {
	color: #f1c40f;
}


/* Hamburger menu */
.menu {
	position: relative;
}

.menu-button {
	background: none;
	border: none;
	cursor: pointer;
	font-size: 1.6rem;
	color: #555;
	padding: 4px;
	border-radius: 6px;
	transition: background-color 0.2s, color 0.2s;
	width: 1.5em;
	height: 1.5em;
	display: flex;
	justify-content: center;
	align-items: center;
}

.menu-button:hover {
	background-color: rgba(0, 0, 0, 0.05);
	color: #111;
}

.menu-content {
	display: none;
	position: absolute;
	top: 32px;
	right: 0;
	background-color: #fff;
	border: 1px solid #ddd;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0,0,0,0.05);
	z-index: 100;
	min-width: 270px;
}

.menu-content a {
	display: block;
	padding: 10px 14px;
	text-decoration: none;
	color: #333;
	font-size: 0.95rem;
}

.menu-content a:hover {
	background-color: #f6f6f6;
}

.menu:hover .menu-content {
	display: block;
}

.filterbox {
	border: 1px solid #dee2e6;
	border-radius: 0.75rem;
	background: #ffffff;
	box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.06);
	margin-bottom: 1.5rem;
	overflow: hidden;
}

.filterbox .header {
	background: linear-gradient(135deg, #0d6efd, #0b5ed7);
	color: #ffffff;
	font-weight: 600;
	font-size: 1rem;
	padding: 0.75rem 1rem;
	letter-spacing: 0.01em;
}

.filterbox .filter {
	padding: 1rem;
	background: #f8f9fa;
}

.filterbox .message {
	padding: 0.75rem 1rem;
	background: #ffffff;
	border-top: 1px solid #dee2e6;
	color: #495057;
	font-size: 0.95rem;
	line-height: 1.4;
}
