/* -*- mode: css; indent-tabs-mode: t; css-indent-offset: 8 -*- */
/* style.css -- HotCRP CSS styles */
/* Peteramati and HotCRP are Copyright (c) 2006-2019 Eddie Kohler and Regents of the UC */
/* See LICENSE for open-source distribution terms */

/* generic styles */
html {
	box-sizing: border-box;
}
*, *:before, *:after {
	box-sizing: inherit;
}
p, pre {
	margin-top: 0;
}
table, tr, td, th {
	padding: 0;
	border-spacing: 0;
	border: 0 none;
	border-collapse: collapse;
	empty-cells: show;
}
table {
	line-height: inherit;
}
.p {
	margin-bottom: 1em;
}
tr, textarea, select {
	vertical-align: baseline;
}
textarea.ta1 {
	appearance: textfield;
	-webkit-appearance: textfield;
	-moz-appearance: textfield;
	display: inline-block;
	resize: none;
	vertical-align: -10px !important;
	margin-bottom: 2px;
	white-space: nowrap;
}
input, textarea, select, button, .btn {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.35;
}
dl {
	margin: 0 0 1em;
}
dt {
	font-weight: bolder;
}
dd {
	margin: 0 0 0.5em;
}
dl.dd {
	margin-bottom: 0.5em;
}
a > img {
	border: none;
}
input[type=text], input[type=email], input[type=password], input[type=date],
input[type=search], textarea {
	border: 1px solid silver;
	padding: 3px 5px;
	font-size: 100%;
}
fieldset {
	border-radius: 3px;
	border-style: solid;
	border-color: #aaa;
	border-width: 1px;
}
ul.x {
	margin: 0 0 1em;
	padding-left: 0 !important;
	list-style-type: none;
}
ul.x > li {
	margin: 0 0 0.25em;
}
ul.x > li:last-child {
	margin-bottom: 0;
}
.group-only {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 none !important;
}


/* page background */
html, .text-default {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto",
		"Helvetica Neue", Arial, sans-serif,
		"Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
	line-height: 1.4;
}
.text-serif {
	font-family: serif;
}
code, kbd, pre, samp, .text-monospace {
	font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	font-size: 90%;
}
select, button {
	color: #222222;
}
body {
	color: #333333;
	background-color: white;
	margin: 0;
}

/* header */
#header {
}
#header_right {
	padding: 8px 24px 0;
	font-size: smaller;
	text-align: right;
	float: right;
}
#usertime, .usertime {
	padding-top: 1px;
	font-size: smaller;
}
#maindeadline {
	padding-top: 1px;
}
#header_left_conf {
	float: left;
	padding: 0.2em 0.8em 0.3em 24px;
	border-bottom: 2px solid #dfa5b2;
	border-right: 1px solid #dfa5b2;
	color: white;
	background-color: #1f1f4a;
}
#header_left_page {
	float: left;
	padding: 0.2em 0 0 0.8em;
}
h1 {
	display: inline;
	font-size: 144%;
	margin: 0;
}
h3 {
	font-size: 115%;
	margin-top: 0;
	margin-bottom: 1rem;
}
.pset-title {
	font-weight: 900;
}
.hdr-actions {
	display: inline-block;
	margin-left: 1.5rem;
	font-size: 1rem;
	font-weight: normal;
}

/* Tab bar */
#header_left a {
	font-weight: normal;
	text-decoration: none;
}
#header_left a:hover {
	text-decoration: underline;
}
td.spanner {
	width: 100%;
}


/* generic horizontal styles */

/* links
   * a.qh: color inherit/link
   * a.noq: color inherit/inherit
   * a.ulh: underline inherit/link
   * a.noul: underline inherit/inherit
   * a.q: color inherit/link + underline inherit/link (a.qh.ulh)
   * a.qo: color inherit/link + underline inherit/inherit (a.qh.noul)
   * u.x: underline when in a:hover */
:link, :visited, .link {
	color: #004daa;
}
.track:visited, .xtrack:visited .link {
	color: #660099;
}

a.qh, a.noq, a.noq:hover, a.q, a.qo, a.btn, a.btn:hover,
.is-error a, .is-warning a, .is-success a, .is-note a,
.is-warning-note a, .is-urgent-note a,
button.q, button.qo {
	color: inherit;
	-webkit-text-decoration-color: inherit;
	text-decoration-color: inherit;
}
a:hover, a.track:hover, a:hover .link, a.xtrack:hover .link,
button.link:hover, button.q:hover, button.qo:hover {
	color: #c45500;
	-webkit-text-decoration-color: #c45500;
	text-decoration-color: #c45500;
}
a:active, a.track:active, a:active .link, a.xtrack:active .link,
button.link:active, button.q:active, button.qo:active {
	color: red;
	-webkit-text-decoration-color: red;
	text-decoration-color: red;
}
a.btn {
	cursor: default;
}
.noul, .noul:hover,
a.ulh, a.q, a.qo, a.btn, a.btn:hover,
u.x {
	text-decoration: inherit;
}
.ul,
a.ulh:hover, a.q:hover,
button.link, button.q:hover,
a:hover u.x {
	text-decoration: underline;
}

.strut {
	display: inline-block;
	line-height: 1.8;
}
span.barsep {
	opacity: 0.8;
	padding: 0 0.5em;
}
a > img {
	border: none;
}
span.sep {
	padding-right: 1em;
}
span.lgsep {
	padding-right: 2em;
}
.nw, .nb {
	white-space: nowrap;
}
.pw {
	white-space: pre-wrap;
	overflow-wrap: break-word;
}
span.nb {
	display: inline-block; /* why? */
	text-indent: 0;
}
.childfold, .js-foldup {
	cursor: pointer;
}
a.btn {
	cursor: default;
}
.wait, body.wait input, body.wait button {
	cursor: wait !important;
}
.checki {
	padding-left: 1.3125em;
}
label.checki {
	display: block;
}
.checkc {
	display: inline-block;
	margin-left: -1.3125em;
	width: 1.3125em;
	white-space: nowrap;
}
.checkc > input {
	margin-left: 0;
	padding-left: 0;
}
.entryg, .entryi {
	margin-bottom: 0.5em;
}
.entryi {
	display: flex;
	align-items: baseline;
}
.entryi > label {
	width: 8rem;
	margin-right: 1rem;
	text-align: right;
	flex: 0 0 auto;
}
.entryi.medium > label {
	width: 12rem;
}
.entryi.wide > label {
	width: 19rem;
}
.entryi > .entry {
	flex: 1 1 auto;
}
.entry > textarea:first-child {
	vertical-align: top;
}
.checki, .entryi, .entryg {
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid;
}
.fullw {
	width: 100%;
}
.n {
	font-weight: normal !important;
}
.dim {
	color: #777777;
}
.small {
	font-size: smaller;
}
.font-weight-bold {
	font-weight: bold;
}
.font-style-italic {
	font-style: italic;
}

/* generic vertical styles */
.lg { /* large gap */
	margin: 1.5em 0;
}
.mg { /* medium gap */
	margin: 1em 0;
}
.g { /* small gap */
	margin: 0.65em 0;
}
.ug { /* microgap */
	margin: 0.35em 0;
}
.c, .clear {
	clear: both;
}
.clearfix:after, .pst:after, .submission_modes:after,
.revet:after, .cmteditinfo:after, .aa:after, .aab:after {
	clear: both;
	content: "";
	display: block;
}
form {
	margin-bottom: 0;
	display: inline;
}
.bg-none {
	background-color: transparent !important;
}
.invisible {
	visibility: hidden !important;
}
.d-inline {
	display: inline !important;
}
.d-inline-block {
	display: inline-block !important;
}
.d-flex {
	display: flex !important;
}
.flex-wrap {
	flex-wrap: wrap !important;
}
.float-left {
	float: left !important;
}
.align-top {
	vertical-align: top !important;
}
.align-items-stretch {
	align-items: stretch !important;
}
.align-items-center {
	align-items: center !important;
}
.align-items-baseline {
	align-items: baseline !important;
}
.align-self-center {
	align-self: center !important;
}
.align-self-start {
	align-self: flex-start !important;
}
.mt-0 {
	margin-top: 0 !important;
}
.mt-1 {
	margin-top: 0.25em !important;
	margin-top: 0.25rem !important;
}
.mt-2 {
	margin-top: 0.5em !important;
	margin-top: 0.5rem !important;
}
.mt-3 {
	margin-top: 1em !important;
	margin-top: 1rem !important;
}
.mt-4 {
	margin-top: 1.5em !important;
	margin-top: 1.5rem !important;
}
.mb-0 {
	margin-bottom: 0 !important;
}
.mb-1 {
	margin-bottom: 0.25em !important;
	margin-bottom: 0.25rem !important;
}
.mb-2 {
	margin-bottom: 0.5em !important;
	margin-bottom: 0.5rem !important;
}
.mb-3 {
	margin-bottom: 1em !important;
	margin-bottom: 1rem !important;
}
.mb-4 {
	margin-bottom: 1.5em !important;
	margin-bottom: 1.5rem !important;
}
.ml-0 {
	margin-left: 0 !important;
}
.ml-1 {
	margin-left: 0.25em !important;
	margin-left: 0.25rem !important;
}
.ml-2 {
	margin-left: 0.5em !important;
	margin-left: 0.5rem !important;
}
.ml-3 {
	margin-left: 1em !important;
	margin-left: 1rem !important;
}
.ml-4 {
	margin-left: 1.5em !important;
	margin-left: 1.5rem !important;
}
.ml-5 {
	margin-left: 2.25em !important;
	margin-left: 2.25rem !important;
}
.ml-7 {
	margin-left: 5em !important;
	margin-left: 5rem !important;
}
.mr-1 {
	margin-right: 0.25em !important;
	margin-right: 0.25rem !important;
}
.mr-2 {
	margin-right: 0.5em !important;
	margin-right: 0.5rem !important;
}
.mr-3 {
	margin-right: 1em !important;
	margin-right: 1rem !important;
}
.mr-4 {
	margin-right: 1.5em !important;
	margin-right: 1.5rem !important;
}
.mr-7 {
	margin-right: 5em !important;
	margin-right: 5rem !important;
}
.nomargin {
	margin: 0 !important;
}
.pr-3 {
	padding-right: 1em !important;
	padding-right: 1rem !important;
}
.pr-4 {
	padding-right: 1.5em !important;
	padding-right: 1.5rem !important;
}
.pr-5 {
	padding-right: 2.25em !important;
	padding-right: 2.25rem !important;
}
.order-100 {
	order: 100 !important;
}
.order-99 {
	order: 99 !important;
}
.flex-grow-1 {
	flex-grow: 1 !important;
}
.justify-content-between {
	justify-content: between !important;
}
.grid-gap-2 {
	grid-gap: 0.5rem !important;
}

ol.upper-alpha {
	list-style-type: upper-alpha;
}

.gridlist-m, .gridlist-s {
	display: grid;
	padding-left: 0;
	gap: 1rem;
}
.gridlist-m > li, .gridlist-s > li {
	list-style-type: none;
}
@media (min-width: 50em) {
.gridlist-m {
	grid-template-columns: repeat(2, 1fr);
}
}
@media (min-width: 50em) {
.gridlist-s {
	grid-template-columns: repeat(3, 1fr);
}
}
@media (min-width: 30em) and (max-width: 50em) {
.gridlist-s {
	grid-template-columns: repeat(2, 1fr);
}
}


/* body */
div.body {
	margin: 0 24px; /* see also width on .pa-filediff, .gtable-container */
	position: relative;
	z-index: 3;
}
body#paper_view div.body, body#paper_edit div.body,
body#review div.body, body#comment div.body, body#contactauthors div.body,
body#assign div.body, body#offrev div.body {
	margin: 0 22px 0 12px;
}
body#account div.body, body#settings div.body {
	margin: 0;
}

body#paper_view, body#paper_edit,
body#review, body#comment, body#contactauthors,
body#assign {
	background: #f0f0f0;
}
body#paper_view div#prebody, body#paper_edit div#prebody,
body#review div#prebody, body#comment div#prebody, body#contactauthors div#prebody,
body#assign div#prebody {
	background: white;
}

div#initialmsgs > div {
	margin: 0 12px 0.5em;
}
body#paper_view div#initialmsgspacer,
body#paper_edit div#initialmsgspacer,
body#review div#initialmsgspacer,
body#comment div#initialmsgspacer,
body#contactauthors div#initialmsgspacer,
body#assign div#initialmsgspacer {
	margin: 0;
	padding: 2.5ex 0 0;
}

table.manyassign {
	margin-top: 0.75em;
}
div#mailref, pre.email, tt.email {
	font-size: smaller;
}


/* general */
table, tr, td {
	padding: 0;
	border-spacing: 0;
	border: 0 none;
	border-collapse: collapse;
	empty-cells: show;
}


/* footer */
#footer {
	margin-top: 0.5em;
	padding: 0 12px 3px 12px;
	clear: both;
}
#footer_crp {
	float: right;
	font-size: 69%;
	background: #d8deef;
	padding: 0.2em 0.5em;
}


/* infoboxes */
div.info, div.warning, div.confirm, div.merror {
	background: #eeeeff url(../images/info45.png) 10px 10px no-repeat;
	padding: 0.5em 0.5em 0.5em 65px;
	border: 1px solid #ccccee;
	margin: 0.5em 0;
	min-height: 45px;
}
div.help {
	padding: 0.5em;
	border: 1px solid #cccccc;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	max-width: 100em;
	background: #f8f8f8;
}
div.confirm {
	background: #eeffee url(../images/info45.png) 10px 10px no-repeat;
	border: 1px solid #cceecc;
}
div.warning {
	background: #ffffdd url(../images/info45.png) 10px 10px no-repeat;
	border: 1px solid #ddddcc;
}
div.merror {
	background: #ffeeee url(../images/stophand45.png) 10px 10px no-repeat;
	border: 2px solid #ee2222;
}
div.merror > p:first-child, div.info > p:first-child, div.warning > p:first-child, div.confirm > p:first-child, div.help > p:first-child {
	margin-top: 0;
}
div.merror p, div.info p, div.warning p, div.confirm p, div.help p {
	margin-top: 0.75em;
	margin-bottom: 0;
}
.msg, .msgs-reset > .msg {
	margin: 0.5rem 0 1rem;
	font-weight: normal;
	font-style: normal;
	border-width: 1px;
	border-style: solid;
	border-radius: 4px;
	padding: 0.5em 0.5em 0.5em 1.5em;
}
.msg + .msg {
	margin-top: -0.5rem;
}
.msg > div {
	max-width: 800px;
}
.msg > p {
	margin-bottom: 0.3em;
	max-width: 800px;
}
.msg > p:last-child {
	margin-bottom: 0;
}
.msg {
	border-color: #ccccee;
	background: border-box url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1IiBoZWlnaHQ9IjUiPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9IiNkMmRhZGQiIC8+PHBvbHlsaW5lIHBvaW50cz0iLTEuNzkyOTcsNSwzLjIwNzAzLDAsNSwwLC0wLDUiIGZpbGw9IiM5MDlhYTUiIC8+PHBvbHlsaW5lIHBvaW50cz0iMy4yMDcwMyw1LDguMjA3MDMsMCwxMCwwLDUsNSIgZmlsbD0iIzkwOWFhNSIgLz48L3N2Zz4K) left repeat-y,
		border-box #fbfbff;
}
.msg.msg-confirm {
	border-color: #cceecc;
	background: border-box url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1IiBoZWlnaHQ9IjUiPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9IiNjOWZjYzkiIC8+PHBvbHlsaW5lIHBvaW50cz0iLTEuNzkyOTcsNSwzLjIwNzAzLDAsNSwwLC0wLDUiIGZpbGw9IiM1NWE4NTUiIC8+PHBvbHlsaW5lIHBvaW50cz0iMy4yMDcwMyw1LDguMjA3MDMsMCwxMCwwLDUsNSIgZmlsbD0iIzU1YTg1NSIgLz48L3N2Zz4K) left repeat-y,
		border-box #eeffee;
}
.msg.msg-warning {
	border-color: #ddddcc;
	background: border-box url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2IiBoZWlnaHQ9IjYiPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9IiNmZjAiIC8+PHBvbHlsaW5lIHBvaW50cz0iLTMsNiwzLDAsNiwwLDAsNiIgZmlsbD0iIzY5NjkwMyIgLz48cG9seWxpbmUgcG9pbnRzPSIzLDYsOSwwLDEyLDAsNiw2IiBmaWxsPSIjNjk2OTAzIiAvPjwvc3ZnPg==) left repeat-y,
		border-box #ffffdd;
}
.msg.msg-error {
	border-color: #ee0000;
	background: border-box url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2IiBoZWlnaHQ9IjEyIj48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSIjZjAwIiAvPjxwb2x5bGluZSBwb2ludHM9Ii02LDEyLDYsMCwxMiwwLDAsMTIiIGZpbGw9IiM0MDAiIC8+PHBvbHlsaW5lIHBvaW50cz0iNiwxMiwxOCwwLDI0LDAsMTIsMTIiIGZpbGw9IiM0MDAiIC8+PC9zdmc+) left repeat-y,
		border-box #ffeeee;
}
.msgs-small-inline {
	margin: 0.25rem 0 0;
}
.msgs-small-inline > .msg {
	width: fit-content;
	margin: 0 1rem 0.25rem 0;
	padding: 0.25em 0.5em 0.25em 1em;
}

.btn-licon {
	padding: 1px 4px;
	font-size: 120%;
}
.icon-markdown {
	display: inline-block;
	content: url("data:image/svg+xml,%3Csvg viewBox='0 0 162 73' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 70V2h20l20 25L64 2h20v68H64V31L44 56 24 31v39zm125 0L99 37h20V2h20v35h20z' fill='%23333'/%3E%3C/svg%3E");
	width: 1.553em;
	height: 0.7em;
}
.icon-markdown.filter-gray {
	display: inline-block;
	content: url("data:image/svg+xml,%3Csvg viewBox='0 0 162 73' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 70V2h20l20 25L64 2h20v68H64V31L44 56 24 31v39zm125 0L99 37h20V2h20v35h20z' fill='%23888'/%3E%3C/svg%3E");
	width: 1.553em;
	height: 0.7em;
}
.icon-download {
	display: inline-block;
	content: url("data:image/svg+xml,%3Csvg width='32' height='32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.7 3.5h3.6L18 17l5.5-6.5 3 3-10 9-10-9 3-3L15 17z' fill='%23333'/%3E%3Cpath d='M31 23.3c0 2.7-2 4.2-4 4.2H5c-2 0-4-1.5-4-4V18h2.5v5c0 1.5 1 2 2.5 2h20c1.5 0 2.5-.5 2.5-2v-5H31v5.3z' fill='%23333'/%3E%3C/svg%3E");
	width: 1em;
	height: 1em;
	vertical-align: -0.1em;
}


div.xinfo, div.xconfirm, div.xwarning, div.xmerror {
	padding: 0.5em;
	margin: 4px 0;
	font-weight: normal;
	font-style: normal;
}
div.xinfo {
	background: #eeeeff;
	border: 1px solid #ccccee;
}
div.xconfirm {
	background: #eeffee;
	border: 1px solid #cceecc;
}
div.xwarning {
	background: #ffffdd;
	border: 1px solid #ddddcc;
}
div.xmerror {
	background: #ffeeee;
	border: 1px solid #eecccc;
}
span.confirm {
	font-style: italic;
	color: #006600;
}
span.merror {
	font-style: italic;
	color: #660000;
}
span.hastitle {
	border-bottom: 1px dotted #777777;
}
div.multimessage > div {
	margin-top: 0.5em;
}
div.multimessage > div:first-child {
	margin-top: 0;
}


/* Tab links, as in search form */
#searchform, #contactsform, #offlineform {
	margin: 0 auto;
	position: relative;
}
#searchform #foldredisplay,
#searchform #formuladefinitions,
#contactsform .tld2 {
	font-size: smaller;
}


table.center {
	margin-left: auto;
	margin-right: auto;
}
table.pltable {
	line-height: 125%;
}
body#revpref table.pltable, body#accounts table.ppltable {
	margin: 0 auto;
}


/* Main */
.homegrp {
	margin: 0.8em 0 0;
}
#homelist h4, #homerev h4, #homeau h4,
#homeaccount h4, #homeactivity h4 {
	display: inline;
}
#homelist h4 {
	color: #8b3030;
}
#homerev h4, #homeactivity h4, a.homeactivity {
	color: #1b1ba4;
}
#homeau h4 {
	color: #823e78;
}
.homeside {
	float: right;
	position: relative;
	width: 18em;
}
.homeinside {
	background-color: #fffdf0;
	border: 1px solid #b2a584 /*#9999cc*/;
	padding: 0.5em 1em 0.75em 0.75em;
	margin: 0 0 0.5em 1em;
}
#homeaccount {
	margin: 1em 0 0;
}
.homeside ul {
	margin: 0;
	padding: 0 0 0 2em;
	list-style-type: none;
}
hr.home {
	margin: 0.8em 0;
	border: 0;
	height: 1px;
	color: #d8deff; /* for IE6 */
	background-color: #d8deff;
}
span.deadline {
	font-style: italic;
}
strong.overdue, strong.err {
	color: red;
}
span.impending {
	color: red;
	font-weight: bold;
}
span.impending a {
	color: red;
}
#homeadmin {
	margin: 0 -24px;
	padding: 5px 24px;
	background-color: #fffdf0;
	border-top: 1px solid #b2a584;
	border-bottom: 1px solid #b2a584;
}
.home-pset-links {
	margin: 0 -24px 1rem;
	padding: 8px 24px;
	background-color: #dffdf0;
	border-top: 1px solid #b2a584;
	border-bottom: 1px solid #b2a584;
}

/* buttons */
span.expander {
	display: inline-block;
	padding-right: 0.25em;
	opacity: 0.65;
	-webkit-text-decoration-line: none;
	text-decoration-line: none;
	text-indent: 0;
}

a.tbtn {
	display: inline-block;
	padding: 2px 4px;
	border-radius: 5px;
	-webkit-text-decoration-line: none;
	text-decoration-line: none;
	color: white;
	background: #63639c;
}
a.tbtn:hover {
	background: #5a5a8c;
	color: white;
}
a.tbtn-on {
	background: #4444cc;
}
a.tbtn-on:hover {
	background: #2c2ca0;
}
a.tbtn-here {
	background: #cc4444;
}
a.tbtn-here:hover {
	background: #a02c2c;
}
a.closebtn {
	display: inline-block;
	padding: 2px 4px;
	margin-left: 0.75em;
	-webkit-text-decoration-line: none;
	text-decoration-line: none;
	border: 1px solid black;
	color: black;
	line-height: .85;
	border-radius: 0;
}

.select {
	display: inline-block;
	position: relative;
}
.select > select, .select > select > option {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.select > select {
	padding: 2px 1.5em 3px 7px;
	font-family: inherit;
	font-size: 100%;
	width: 100%;
}
.select > select::-ms-expand {
	display: none;
}
.select:after {
	content: "";
	width: 0.5em;
	height: 0.5em;
	position: absolute;
	line-height: 1;
	margin-top: auto;
	margin-bottom: auto;
	top: 0.15em;
	bottom: 0;
	right: 0.5em;
	pointer-events: none;
	border-left: 0.3em solid transparent;
	border-right: 0.3em solid transparent;
	border-top: 0.5em solid black;
	opacity: 0.6;
}
button, .btn {
	padding: 2px 7px 3px;
	margin: 0;
}
select, button, .btn, button.btn-t:hover {
	display: inline-block;
	text-indent: 0;
	border-width: 1px;
	border-style: solid;
	border-color: #b5b5b5;
	border-radius: 4px;
	background: white;
	background-image: linear-gradient(#fcfcfc, #f0f0f0);
	white-space: nowrap;
}
button.btn-t {
	border-width: 1px;
	border-style: solid;
	border-color: rgba(181, 181, 181, 0);
	background: none;
	padding: 2px 2px 3px;
}
.btnbox > .btn-t, .tabbox > .btn-t {
	border-width: 1px;
}
.btn-licon {
	padding: 1px 4px;
	font-size: 120%;
}
button:hover, .btn:hover, select:hover {
	border-color: #a5a5a5;
	background-image: linear-gradient(#f5f5f5, #e8e8e8);
}
button:active, .btn:active {
	border-color: #aaaaaa;
	background-image: linear-gradient(#c3c3c3, #d3d3d3);
}
button:hover, button:focus, button:active, button:focus-within,
.btn:hover, .btn:focus, .btn:active, .btn:focus-within {
	z-index: 1;
}
.btn-default,
.btn-primary {
	border-color: #6b73b5;
	background: #8089d1;
	background-image: linear-gradient(#9ca3d6, #8089d1);
	color: white;
}
.btn-default:hover, .btn-default:active,
.btn-primary:hover, .btn-primary:active {
	border-color: #505799;
	background-image: linear-gradient(#8089d1, #6b73b5);
}
.btn-success {
	border-color: #007f00;
	background: #00ba00;
	background-image: linear-gradient(#00ba00, #00a500);
	color: white;
}
.btn-success:hover, .btn-success:active {
	border-color: #005f00;
	background-image: linear-gradient(#00a200, #007f00);
}
.alert .btn-default,
.alert .btn-primary,
.alert .btn-alertable,
.btn-highlight,
.btn-danger {
	border-color: #cc0000;
	background: #ff0000;
	background-image: linear-gradient(#ff4040, #ff0000);
	color: white;
}
.alert .btn-default:hover, .alert .btn-default:active,
.alert .btn-primary:hover, .alert .btn-primary:active,
.alert .btn-alertable:hover, .alert .btn-alertable:active,
.btn-danger:hover, .btn-danger:active,
.btn-highlight:hover, .btn-highlight:active {
	border-color: #b00000;
	background-image: linear-gradient(#ee0000, #cc0000);
}
button:disabled, button:disabled:hover,
.btn:disabled, .btn:disabled:hover,
.btn-default:disabled, .btn-default:disabled:hover,
.btn-success:disabled, .btn-success:disabled:hover,
.btn-primary:disabled, .btn-primary:disabled:hover,
.alert .btn-default:disabled, .alert .btn-default:disabled:hover,
.alert .btn-primary:disabled, .alert .btn-primary:disabled:hover,
.alert .btn-alertable:disabled, .alert .btn-alertable:disabled:hover,
.btn-highlight:disabled, .alert .btn-highlight:disabled:hover,
button.disabled, button.disabled:hover {
	color: rgba(102, 102, 102, 0.5);
	border-color: #c5c5c5;
	background: rgba(222, 222, 222, 0.5);
}
.filter-gray, button:disabled .filter-gray-if-disabled {
	filter: grayscale(80%);
	color: #888;
}
button.link, button.q, button.qo {
	font-weight: inherit;
	font-style: inherit;
	padding: 0;
	border-style: none;
	background: initial;
	cursor: pointer;
}
button.link:hover, button.q:hover, button.qo:hover {
	background: initial;
	cursor: pointer;
}
button.link:disabled, button.q:disabled, button.qo:disabled,
button.link:disabled:hover, button.q:disabled:hover, button.qo:disabled:hover,
button.disabled, button.disabled:hover {
	cursor: default;
}

.pa-runstop {
	margin-left: 0.5em;
}
.aabig button, .aabig .btn {
	padding: 4px 9px 4px;
	min-height: 31px;
}
.aabig .btn-licon {
	padding: 1px 7px 1px;
}
.aab {
	margin: 2em 0 0.7em;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.aab:first-child {
	margin-top: 0;
}
.aab:last-child {
	margin-bottom: 0;
}
.aabut {
	margin-right: 1em;
	text-align: center;
	line-height: 2;
}
.aabutr {
	margin-left: 1em;
	line-height: 2;
}
.aabut > .hint {
	margin-top: -0.25em;
}
.btnp > button, .btnp > .btn, .btnp > .btnbox {
	margin-right: 0.75em;
}
.btnp > button:last-child, .btnp > .btn:last-child, .btnp > .btnbox:last-child {
	margin-right: 0;
}
.btnbox {
	display: inline-flex;
	align-items: stretch;
}
.btnbox > button, .btnbox > .btn, .btnbox > .btn-t {
	margin: 0;
	flex: 0 1 auto;
}
.btnbox > button, .btnbox > .btn,
.nav-pills > button, .nav-pills > .btn {
	border-radius: 0;
	border-left-width: 0;
}
.btnbox > button:first-child, .btnbox > .btn:first-child,
.nav-pills > button:first-child, .nav-pills > .btn:first-child {
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
	border-left-width: 1px;
}
.btnbox > button:last-child, .btnbox > .btn:last-child,
.nav-pills > button:last-child, .nav-pills > .btn:last-child {
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
}
.nav-pills {
	display: flex;
	margin-bottom: 1.5rem;
}
.nav-pills > * {
	flex-basis: 0;
	flex-grow: 1;
}
.licon {
	fill: currentColor;
	vertical-align: -0.0625em;
}
button > .licon, .btn > .licon {
	vertical-align: -0.15em;
}
.licon-s {
	vertical-align: -0.05em;
	stroke: currentColor;
	fill: none;
	stroke-width: 2px;
	stroke-linejoin: round;
	stroke-linecap: round;
}

/* Action area */
.aa {
	padding: 0.3em;
	margin: 0.5em 0;
	background: #f2f2f2;
	border-radius: 5px;
}
.aa:first-child {
	margin-top: 0;
}
.aa:last-child {
	margin-bottom: 0;
}


/* Ajax checks */
span.ajaxcheck, span.ajaxcheck_good, span.ajaxcheck_bad {
	display: inline-block;
}
.ajaxcheck, .ajaxcheck_good, .ajaxcheck_bad {
	width: 8px;
	height: 9px;
}
.ajaxcheck_good, .ajaxcheck_bad {
	background-image: url(../images/sprite.png?2);
}
.ajaxcheck_good {
	background-position: -52px 0;
}
.ajaxcheck_bad {
	background-position: -52px -10px;
}


/* Normal captions and entries */
tr.last > td.entry {
	padding: 1px 0;
}
td.entry, th.entry {
	padding: 2px 1em 4px 0.5em;
}
tr.last > td.entry {
	padding: 0 1em 0 0.5em;
}


/* Other types of captions and entries */
table.paper, table.settings {
	width: 100%;
	position: relative;
}
div.relative {
	position: relative;
}
tr, textarea, select {
	vertical-align: baseline;
}
td.textarea, td.top {
	vertical-align: top;
}
th.l, td.l {
	text-align: left;
}
th.r, td.r {
	text-align: right;
}
th.c, td.c {
	text-align: center;
}
td.rcaption {
	text-align: right;
	padding: 3px 0.5em 3px 0;
	font-weight: bold;
}
td.rxcaption {
	text-align: right;
	padding: 3px 0.5em 3px 0;
}
td.srcaption {
	text-align: right;
	padding: 3px 0.75em;
	font-weight: bold;
}
td.sentry {
	padding: 3px 0.75em;
}
td.lcaption {
	padding: 3px 1em 3px 0;
	font-weight: bold;
}
td.lxcaption {
	padding: 2px 1em 2px 0;
}
td.mcaption {
	text-align: right;
	padding-right: 1em;
}
table.review, table.comment {
	margin-top: 0.5em;
}
td.leftentry {
	width: 18em;
}
td.lentry {
	padding: 2px 0.5em 2px 0;
}
td.rentry {
	padding: 2px 0;
	text-align: right;
}
td.rpentry {
	padding: 2px 0.5em 2px 0;
	text-align: right;
}
td.llentry {
	padding: 0 0.75em;
}
td.hint {
	padding: 0 0.5em;
}
div.hint {
	margin-bottom: 0.5ex;
}
td.hint, div.hint, span.hint, p.hint {
	font-weight: normal;
	font-style: normal;
	color: #555555;
}
td.hint, div.hint, span.hint, p.hint, a.hint {
	font-size: smaller;
}
td.caption span.hint {
	font-weight: normal;
}
div#aumg td.hint, table.paper td.hint {
	width: 25%;
}


/* settings */
table.settings td h3 {
	background: #eff1ff;
	margin-bottom: 0.5em;
	padding: 0 4px;
}
table#foldtag_color th {
	text-align: left;
	font-size: smaller;
	padding-right: 1em;
}


/* help pages */
ul.compact {
	margin-top: 0.5em;
	margin-bottom: 0;
	padding-left: 1em;
}


/* vertically arranged forms */
.f-i, .f-checkbox, .f-m {
	margin-bottom: 1.25em;
}
label.f-c, .f-i > label {
	display: table;
}
.f-c, .f-i > label {
	margin-bottom: 0.3em;
	font-weight: 500;
}
.f-c.n, .f-i > label.n {
	font-weight: normal;
}
.f-h, .f-hx, .field-d {
	font-size: 92%;
}
.f-h {
	margin-top: 0.25rem;
	margin-bottom: 0.25rem;
}
.f-h .feedback-list {
	font-size: 100%;
}


.feedback, .feedback-group {
	font-size: 92%;
}
.feedback-list {
	margin: 0 0 0.3rem;
	padding-left: 0 !important;
	list-style-type: none;
	font-size: 92%;
}
.feedback, .feedback-list, .field-d {
	max-width: 720px;
	margin-bottom: 0.3rem;
}
.msg .feedback-list {
	max-width: initial;
}
.feedback-list > li {
	margin-bottom: 0.3rem;
}
.feedback-list > li:last-child {
	margin-bottom: 0;
}
.feedback-list + input.has-error,
.feedback-list + input.has-warning {
	margin-top: -0.3rem;
}

.is-diagnostic.is-error::before, .feedback.is-error::before,
.is-diagnostic.is-warning::before, .feedback.is-warning::before,
.is-diagnostic.is-success::before, .feedback.is-success::before,
.is-diagnostic.is-note::before, .feedback.is-note::before,
.is-diagnostic.is-warning-note::before, .feedback.is-warning-note::before,
.is-diagnostic.is-urgent-note::before, .feedback.is-urgent-note::before {
	display: inline-block;
	text-indent: 0;
	vertical-align: -0.1em;
	padding-right: 0.2em;
	width: 1.1em;
	height: 0.9em;
}
.error-mark, .warning-mark, .success-mark, .note-mark,
.urgent-note-mark, .warning-note-mark {
	display: inline-block;
	text-indent: 0;
	vertical-align: -0.075em;
	width: 0.9em;
	height: 0.9em;
}
.is-diagnostic.is-error::before, .feedback.is-error::before,
.error-mark {
	content: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle style='fill:none;stroke:%23e00;stroke-width:2.5px' cx='16' cy='16' r='14.5' /%3E%3Cpath d='M21.1 8.3L23.6 10.9L18.5 15.9L23.6 21L21.1 23.6L16 18.5L10.9 23.6L8.4 21L13.5 15.9L8.4 10.9L10.9 8.3L16 13.4Z' style='fill:%23e00' /%3E%3C/svg%3E");
}
.is-diagnostic.is-warning::before, .feedback.is-warning::before,
.warning-mark {
	content: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle style='fill:none;stroke-width:2.5px;stroke:%23c07700' cx='16' cy='16' r='14.5' /%3E%3Ccircle style='fill:%23c07700' cx='16' cy='23' r='2.5' /%3E%3Cpolygon style='fill:%23c07700' points='15 19 13.5 6.5 18.5 6.5 17 19' /%3E%3C/svg%3E");
}
.is-diagnostic.is-success::before, .feedback.is-success::before,
.success-mark {
	content: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle style='fill:none;stroke-width:2.5px;stroke:%2300bb00' cx='16' cy='16' r='14.5' /%3E%3Cpolygon style='fill:%2300bb00' points='6 18 8.5 15 13.5 20 22 8.5 25 11 14 25' /%3E%3C/svg%3E");
}
.is-diagnostic.is-note::before, .feedback.is-note::before,
.note-mark {
	content: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='16' cy='16' r='14.5' fill='none' stroke-width='2.5' stroke='%23337'/%3E%3Cpath d='M7 17.8v-3.6l13.5.3L14 9l3-3 9 10-9 10-3-3 6.5-5.5z' fill='%23337'/%3E%3C/svg%3E");
}
.is-diagnostic.is-urgent-note::before, .feedback.is-urgent-note::before,
.urgent-note-mark {
	content: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='16' cy='16' r='14.5' fill='none' stroke-width='2.5' stroke='%23e00'/%3E%3Cpath d='M7 17.8v-3.6l13.5.3L14 9l3-3 9 10-9 10-3-3 6.5-5.5z' fill='%23e00'/%3E%3C/svg%3E");
	content: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle style='fill:none;stroke-width:2.5px;stroke:%23e00' cx='16' cy='16' r='14.5' /%3E%3Ccircle style='fill:%23e00' cx='16' cy='23' r='2.5' /%3E%3Cpolygon style='fill:%23e00' points='15 19 13.5 6.5 18.5 6.5 17 19' /%3E%3C/svg%3E");
}
.is-diagnostic.is-warning-note::before, .feedback.is-warning-note::before,
.warning-note-mark {
	content: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='16' cy='16' r='14.5' fill='none' stroke-width='2.5' stroke='%23c07700'/%3E%3Cpath d='M7 17.8v-3.6l13.5.3L14 9l3-3 9 10-9 10-3-3 6.5-5.5z' fill='%23c07700'/%3E%3C/svg%3E");
}


td.pad, th.pad, div.pad {
	padding-right: 1em;
}
td.padb, th.padb, div.padb {
	padding-right: 2em;
}
td.padl, th.padl, div.padl {
	padding-left: 1em;
}
td.padlb, th.padlb, div.padlb {
	padding-left: 2em;
}

.has-error > .f-c,
.has-error > label,
.has-error > .settings-itemheading,
label.has-error,
h3.has-error,
.is-error {
	color: #ee0000;
}
.has-error input[type=text],
.has-error input[type=email],
.has-error input[type=password],
.has-error input[type=date],
.has-error input[type=search],
.has-error textarea,
.has-error select,
input[type=text].has-error,
input[type=email].has-error,
input[type=password].has-error,
input[type=date].has-error,
input[type=search].has-error,
textarea.has-error,
select.has-error {
	border: 1px solid red;
}
.has-warning > .f-c,
.has-warning > label,
.has-warning > .settings-itemheading,
label.has-warning,
h3.has-warning,
.is-warning {
	color: #c07700;
}
.has-warning input[type=text],
.has-warning input[type=email],
.has-warning input[type=password],
.has-warning input[type=date],
.has-warning input[type=search],
.has-warning textarea,
.has-warning select,
input[type=text].has-warning,
input[type=email].has-warning,
input[type=password].has-warning,
input[type=date].has-warning,
input[type=search].has-warning,
textarea.has-warning,
select.has-warning {
	border: 1px solid #855c04;
}

.msg-context, .msg-inform {
	margin-left: 2rem;
}
.msg-context {
	font-size: smaller;
	white-space: pre-wrap;
}
li:last-child > .msg-context:last-child {
	padding-bottom: 0.3rem;
}
.context-mark {
	text-decoration-line: underline;
	text-decoration-style: wavy;
	text-underline-position: under;
}
.context-mark.short {
	text-decoration-style: dashed;
}
.context-caret-mark {
	position: relative;
}
.context-caret-mark::before {
	content: "^";
	position: absolute;
	left: -0.35em;
	bottom: -1.85ex;
	font-weight: bold;
}
.context-mark.context-caret-mark::before {
	bottom: -2.5ex;
}

div.helpside {
	float: right;
	width: 20%;
	position: relative;
}
div.helpinside {
	background-color: #eeeeff;
	border: 1px solid #ccccee;
	padding: 0.5em 1em 0.75em 0.75em;
	max-height: 24em;
	overflow: auto;
	margin: 0.75em 0.1em 0.5em 1em;
	font-size: smaller;
}

img.dlimg, img.dlimgsp, img.placthook {
	position: relative;
	bottom: -6px;
}
img.dlimg, img.placthook {
	margin-top: -6px;
}
img.dlimgsp {
	margin-top: -2px;
}
img.placthook {
	width: 12px;
	height: 12px;
	background-image: url(../images/sprite.png?2);
	background-position: -40px 0;
}
img.sdlimg {
	position: relative;
	bottom: -4px;
	margin-top: -4px;
}
img.elimg {
	position: relative;
	bottom: -3px;
	margin-top: -20px;
}
img.check {
	padding-left: 0.4em;
}

span.textlite {
	border: solid 1px #aaaadd;
	padding: 0 4px;
	background: #fcfcfc;
}
input.textlite-tt, textarea.tt {
	font-family: monospace;
}
.papertext {
	width: 96%;
}
.reviewtext, div#popup_ref textarea {
	width: 99%;
}
.reviewtext {
	max-width: 42em;
}
textarea[name=comment] {
	min-height: 5em;
}

table.floatleft {
	float: left;
	margin: 0;
}
.float-right {
	float: right;
}

h2 {
	font-size: larger;
	margin-top: 0;
	margin-bottom: 0.5rem;
}

span.author, span.conflict {
	font-weight: bold;
	color: #ff0000;
}
pre.entryexample {
	padding: 0.5em;
	background: #eeeeee;
	display: table-cell;
}
pre.email {
	margin: 0;
}

td.rpad {
	padding-right: 2em;
}
div.pcconfaff {
	font-size: 69%;
}

.multicol-2 {
	columns: 15rem 2;
}
.multicol-3 {
	columns: 15rem 3;
}

tr.pt_topics td.entry, tr.pt_actions td,
td.plholder, tr.rev_actions td.entry, tr.pt_reviews td.entry,
tr.pt_conflict_ass td.entry, tr.propass td.entry {
	vertical-align: top;
}

.pctbname, .pctbname-1, .pctbname-2, .pctbname-3,
.pctbname0, .pctbname1, .pctbname2, .pctbname3, .pctbname4 {
	padding-right: 1em;
}
.pctbname-1, .pctbname-2, .pctbname-3 {
	color: gray;
}
.pctbname3, .pctbname4 {
	font-weight: bold;
}
.pctbnrev {
	font-size: 69%;
	padding-bottom: 2px;
	padding-right: 1em;
}
.pctbass {
	padding-right: 0.45em;
	white-space: nowrap;
}
.pctbconfsel {
	padding-right: 1em;
	font-size: smaller;
	white-space: nowrap;
}
.pctbconfselector {
	font-size: 69%;
}
.pctbl {
	padding-left: 7px;
}
.pctbcolleft, .pctbcolmid {
	vertical-align: top;
}
.pctbcolmid {
	border-left: 1px dotted #cec1ff;
}

/* review type/assignment blocks */
.rt4, .rt4n, .rt3, .rt3n, .rt2, .rt2n, .rt1, .rt1n, .rt0, .rt-1, .rt-2, .rt-3 {
	display: inline-block;
	width: 0.75em;
	height: 0.75em;
	line-height: 0.75em;
	border-width: 1px;
	position: relative;
	bottom: -0.1em;
}
.rt4, .rt4n, .rt3, .rt3n, .rt2, .rt2n {
	background-color: #ffffbb;
}
.rt4n, .rt3n, .rt2n, .rt1n {
	color: red;
	border: 1px solid red;
}
.rt4, .rt3, .rt2, .rt1 {
	color: black;
	border: 1px solid black;
}
.rt4, .rt4n, .rt3, .rt3n, .rt-1, .rt-2 {
	font-weight: bold;
}
.rt-1, .rt-2, .rt-3 {
	color: gray;
	border: 1px solid gray;
}
.rti {
	display: table-cell;
	position: absolute;
	width: 100%;
	height: 100%;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto",
		"Helvetica Neue", Arial, sans-serif,
		"Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
	font-size: 70%;
	text-align: center;
}

img.prev, img.next {
	background-image: url(../images/sprite.png?2);
	width: 8px;
	height: 9px;
}
img.prev {
	background-position: -32px 0;
}
img.next {
	background-position: -10px 0;
}

img.checksum12, img.timestamp12 {
	background-image: url(../images/sprite.png?2);
	width: 12px;
	height: 12px;
}
img.checksum12 {
	background-position: -28px -11px;
}
img.timestamp12 {
	background-position: -40px -11px;
}

table.topicinterest tr td.ti_interest, table.topicinterest tr th {
	padding-right: 1px;
	white-space: nowrap;
	font-size: smaller;
	text-align: center;
}
table.topicinterest tr td.ti_topic {
	padding-right: 0.5em;
}
span.revround {
	font-size: 69%;
	font-style: italic;
	/* border-bottom: 1px dotted #777777; */
}


span.pstat {
	font-weight: bold;
	white-space: nowrap;
}
tr.rs_heading td {
	font-size: smaller;
	font-weight: bold;
}
tr.rs_rev td.rs_id, tr.rs_rev td.rs_num {
	font-weight: normal;
	color: black;
}
tr.rs_rev td {
	font-weight: bold;
	color: red;
}
span.pstat_with {
	color: #333333;
}
span.pstat_sub {
	color: #823e78;
}
span.pstat_decno {
	color: #9f0000;
}
span.pstat_decyes {
	color: #259f00;
}

span.auaff {
	color: #666666;
}

table.pt_buttons td.ptb_explain {
	padding: 0 1em 0 0;
	text-align: center;
	font-size: smaller;
}
table.pt_buttons td.ptb_button {
	padding: 0 1em 0 0;
}

/* paper list tables geometry */
.pltable_full_ctr {
	padding: 0.75em 0.5em;
}
.pltable_full {
	width: 100%;
	position: relative;
}

.plsortable:hover {
	text-decoration: underline;
	cursor: pointer;
}
.plsortactive:after {
	content: "\25bc";
	font-size: 90%;
	opacity: 0.5;
}
.plsortactive.plsortreverse:after {
	content: "\25b2";
	font-size: 90%;
	opacity: 0.5;
}

div.plsplit_col {
	padding-right: 1.5em;
}
div.plsplit_col_ctr {
	margin-right: -1.5em;
}
div.plsplit_col_ctr_ctr {
	overflow-x: hidden;
}

/* other list tables */
table.altable {
	width: 100%;
	position: relative;
}
#plact {
	margin-top: 2px;
	float: left;
}
#plactr {
	padding-top: 2px;
	padding-left: 1em;
	float: right;
}
img.b {
	vertical-align: text-bottom;
}
img.bm {
	vertical-align: middle;
	position: relative;
	bottom: 1px;
}
img.bmabs {
	position: absolute;
	bottom: -2px;
}
span.pcrole {
	font-weight: bold;
	font-size: smaller;
}

/* paper list tables geometry */
.pltable_full_ctr {
	padding: 0.75em 0.5em;
}
.pltable_full {
	width: 100%;
	position: relative;
}

div.plsplit_col {
	padding-right: 1.5em;
}
div.plsplit_col_ctr {
	margin-right: -1.5em;
}
div.plsplit_col_ctr_ctr {
	overflow-x: hidden;
}

td.plheading {
	text-align: center;
	font-weight: bold;
	padding: 0.5ex 0 0.2ex;
	background: #f0f0f0;
}
span.plheading_count {
	font-weight: normal;
	font-size: smaller;
	color: #555555;
}
td.plheading_blank {
	height: 0.7ex;
	background: #f0f0f0;
}
td.plheading_middle {
	border-top: 1px solid #cccccc;
}

th.pl {
	vertical-align: bottom;
	font-size: smaller;
	text-align: left;
	line-height: 125%;
}

tr.plx {
	font-size: 85%;
	line-height: 135%;
}
tr.plx h6 {
	display: inline;
	font-size: inherit;
	font-weight: normal;
	font-style: italic;
	padding-right: 0.25em;
	color: #555;
}

/* paper list tables */
th.pl {
	padding: 2px 0.4em 2px 0;
}
td.pl {
	padding: 2px 0.4em 2px 0;
}
th.pl:first-child, td.pl:first-child {
	padding-left: 0.4em;
}

td.pl.pl_title, td.pl.pl_text, td.pl.pls {
	padding-right: 1em;
}

td.pl.plboldsp, td.pl.plsp {
	padding-right: 2em;
}

td.pl.pls:last-child {
	padding-right: 0.4em;
}

th.plc, th.pl_id, th.pl_sel, th.pl_confselector,
th.pl_revstat, th.pl_topicscore, th.pl_desirability,
th.pl_score, th.pl_tag, th.pl_tagval, th.pl_formula {
	text-align: center;
}

th.plr {
	text-align: right;
}

td.plr, td.pl_id, td.pl_sel,
td.pl_revpref, td.pl_topicscore, td.pl_desirability,
td.pl_tag, td.pl_tagval, td.pl_formula {
	text-align: right;
}

td.plc, td.pl_revstat, td.pl_confselector, td.pl_score {
	text-align: center;
}

td.pl_id, td.pl_sel, td.pl_confselector,
td.pl_assrev, td.pl_editrevpref,
td.pl_score, td.pl_tag, td.pl_tagval, td.pl_edittagval, td.pl_formula {
	white-space: nowrap;
}

td.plboldsp {
	font-weight: bold;
}

td.plred {
	color: #ff0000;
}
td.plgreen {
	color: #00cc00;
}

span.dragtaghandle {
	display: inline-block;
	position: relative;
	bottom: -0.25em;
	background-color: #999999;
	margin-left: .25em;
	width: 11px;
	height: 1.3em;
	cursor: move;
	background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAAXNSR0IArs4c6QAAADtJREFUCNdjOHz4zs/Dh+9cYEADTAwMDF8YGBj4Dh++gypha6sizMDAoMSADyAby4Qm94WBgYEPn04GAD/XFLwv6x9HAAAAAElFTkSuQmCC') repeat;
}

span.match {
	color: #ff6600;
	font-weight: bold;
}

div.bigod, p.bigod, div.merror div.parseerr p, div.warning div.parseerr p,
div.confirm div.parseerr p {
	margin: 0;
	padding: 0 0 0 3em;
	text-indent: -3em;
}
div.bigid {
	padding: 0 0 0 3em;
}
span.lineno {
	font-style: italic;
	font-size: smaller;
}

div.merror pre {
	padding: 0.5em;
	background: #fff2f2;
	border: 1px dashed #eecccc;
}

hr {
	margin: 1em 0;
	border: 0 none;
	height: 1px;
	color: #9999cc; /* for IE6 */
	background-color: #9999cc;
}
hr.c {
	margin: 0;
	border: 0 none;
	height: 0;
	clear: both;
}
div.msgpg { /* message-paper gap */
	margin: 2ex 0;
}

.assignpc_pcsel {
	font-size: smaller;
	background: #fcf6e3;
	border: 2px solid #ccc1a3;
	padding: 1em 1em 0.25em;
	margin: 0 0 1.5em;
}


span.autblentry {
	margin-right: 0.75em;
	white-space: nowrap;
}
span.autblentry_long {
	margin-right: 0.75em;
}

div.plist_form {
	margin-top: 1ex;
}


span.rev_num {
	font-size: larger;
	font-weight: bold;
	color: red;
}

span.reviewer, span.reviewstatus {
	padding-right: 1em;
}
span.rstat {
	font-size: smaller;
}

td.setrev_shortName {
	padding-right: 0.25em;
}
td.setrev_shortName input {
	font-weight: bold;
}

tbody.pltable_colored > tr.pl {
	border-top: 1px solid rgba(0, 0, 0, 0.05);
}
tbody.pltable_colored > tr:first-child {
	border-top: 0 none;
}
tbody.pltable > tr:last-child > td {
	padding-bottom: 2px;
}
.k0, .k0.kfade > td, .k0.kfade > th {
	background-color: white;
}
.k0.kfade > td:last-child, .k0.kfade > th:last-child {
	background: linear-gradient(to left, rgba(255, 255, 255, 0), white 10px, white);
}
.k1, .k1.kfade > td, tbody.pltable_alternate > tr:nth-child(even) {
	background-color: #f1f8fc;
}
.k1.kfade > td:last-child {
	background: linear-gradient(to left, rgba(241, 248, 252, 0), #f1f8fc 10px, #f1f8fc);
}
.k0.kfade, .k1.kfade {
	background: none;
}
tbody.pltable_colored > tr.k1, tfoot.pltable_colored > tr.k1 {
	background-color: inherit;
}
tr.redtag, tr.orangetag, tr.yellowtag, tr.greentag, tr.bluetag,
tr.purpletag, tr.graytag, tr.whitetag {
	background-attachment: fixed;
}
tr.redtag > td, tr.orangetag > td, tr.yellowtag > td, tr.greentag > td,
tr.bluetag > td, tr.purpletag > td, tr.graytag > td, tr.whitetag > td {
	background-color: inherit;
}
.redtag, .redtag.psc {
	background-color: #ffd8d8;
}
.redtag div.pst {
	background-color: #f8d0d0;
}
.orangetag, .orangetag.psc {
	background-color: #fdebcc;
}
.orangetag div.pst {
	background-color: #f2debb;
}
.yellowtag, .yellowtag.psc {
	background-color: #fdffcb;
}
.yellowtag div.pst {
	background-color: #f0eeb4;
}
.greentag, .greentag.psc {
	background-color: #d8ffd8;
}
.greentag div.pst {
	background-color: #c4f2c4;
}
.bluetag, .bluetag.psc {
	background-color: #d8d8ff;
}
.bluetag div.pst {
	background-color: #ccccf2;
}
.purpletag, .purpletag.psc {
	background-color: #f2d8f8;
}
.purpletag div.pst {
	background-color: #eac7f2;
}
.graytag, .graytag.psc {
	background-color: #e2e2e2;
}
.graytag div.pst {
	background-color: #d9d9d9;
}
.whitetag, .whitetag.psc {
	background-color: #ffffff;
}
.whitetag div.pst, .whitetag div.pst {
	background-color: #f8f8f8;
}
.boldtag, tr.pl.boldtag > td.pl_id, tr.pl.boldtag > td.pl_title {
	font-weight: bold;
}
tr.pl.boldtag, tr.plx.boldtag {
	font-weight: inherit;
}
.italictag, tr.pl.italictag > td.pl_id, tr.pl.italictag > td.pl_title {
	font-style: italic;
}
tr.pl.italictag, tr.plx.italictag {
	font-style: inherit;
}
.bigtag, tr.pl.bigtag > td.pl_id, tr.pl.bigtag > td.pl_title {
	font-size: 140%;
}
.bigtag .pst {
	font-size: 71.4%;
}
tr.pl.bigtag, tr.plx.bigtag {
	font-size: inherit;
}
.smalltag, tr.pl.smalltag > td.pl_id, tr.pl.smalltag > td.pl_title {
	font-size: 80%;
}
.smalltag .pst {
	font-size: 125%;
}
tr.pl.smalltag, tr.plx.smalltag {
	font-size: inherit;
}
.dimtag, .dimtag a {
	color: gray;
}

.redtag.orangetag, .redtag.orangetag.psc {
	background-image: url(../images/tag_red_orange.png);
	background-color: transparent;
}
.redtag.yellowtag, .redtag.yellowtag.psc {
	background-image: url(../images/tag_red_yellow.png);
	background-color: transparent;
}
.redtag.greentag, .redtag.greentag.psc {
	background-image: url(../images/tag_red_green.png);
	background-color: transparent;
}
.redtag.bluetag, .redtag.bluetag.psc {
	background-image: url(../images/tag_red_blue.png);
	background-color: transparent;
}
.redtag.purpletag, .redtag.purpletag.psc {
	background-image: url(../images/tag_red_purple.png);
	background-color: transparent;
}
.redtag.graytag, .redtag.graytag.psc {
	background-image: url(../images/tag_red_gray.png);
	background-color: transparent;
}
.redtag.whitetag, .redtag.whitetag.psc {
	background-image: url(../images/tag_red_white.png);
	background-color: transparent;
}
.orangetag.yellowtag, .orangetag.yellowtag.psc {
	background-image: url(../images/tag_orange_yellow.png);
	background-color: transparent;
}
.orangetag.greentag, .orangetag.greentag.psc {
	background-image: url(../images/tag_orange_green.png);
	background-color: transparent;
}
.orangetag.bluetag, .orangetag.bluetag.psc {
	background-image: url(../images/tag_orange_blue.png);
	background-color: transparent;
}
.orangetag.purpletag, .orangetag.purpletag.psc {
	background-image: url(../images/tag_orange_purple.png);
	background-color: transparent;
}
.orangetag.graytag, .orangetag.graytag.psc {
	background-image: url(../images/tag_orange_gray.png);
	background-color: transparent;
}
.orangetag.whitetag, .orangetag.whitetag.psc {
	background-image: url(../images/tag_orange_white.png);
	background-color: transparent;
}
.yellowtag.greentag, .yellowtag.greentag.psc {
	background-image: url(../images/tag_yellow_green.png);
	background-color: transparent;
}
.yellowtag.bluetag, .yellowtag.bluetag.psc {
	background-image: url(../images/tag_yellow_blue.png);
	background-color: transparent;
}
.yellowtag.purpletag, .yellowtag.purpletag.psc {
	background-image: url(../images/tag_yellow_purple.png);
	background-color: transparent;
}
.yellowtag.graytag, .yellowtag.graytag.psc {
	background-image: url(../images/tag_yellow_gray.png);
	background-color: transparent;
}
.yellowtag.whitetag, .yellowtag.whitetag.psc {
	background-image: url(../images/tag_yellow_white.png);
	background-color: transparent;
}
.greentag.bluetag, .greentag.bluetag.psc {
	background-image: url(../images/tag_green_blue.png);
	background-color: transparent;
}
.greentag.purpletag, .greentag.purpletag.psc {
	background-image: url(../images/tag_green_purple.png);
	background-color: transparent;
}
.greentag.graytag, .greentag.graytag.psc {
	background-image: url(../images/tag_green_gray.png);
	background-color: transparent;
}
.greentag.whitetag, .greentag.whitetag.psc {
	background-image: url(../images/tag_green_white.png);
	background-color: transparent;
}
.bluetag.purpletag, .bluetag.purpletag.psc {
	background-image: url(../images/tag_blue_purple.png);
	background-color: transparent;
}
.bluetag.graytag, .bluetag.graytag.psc {
	background-image: url(../images/tag_blue_gray.png);
	background-color: transparent;
}
.bluetag.whitetag, .bluetag.whitetag.psc {
	background-image: url(../images/tag_blue_white.png);
	background-color: transparent;
}
.purpletag.graytag, .purpletag.graytag.psc {
	background-image: url(../images/tag_purple_gray.png);
	background-color: transparent;
}
.purpletag.whitetag, .purpletag.whitetag.psc {
	background-image: url(../images/tag_purple_white.png);
	background-color: transparent;
}
.graytag.whitetag, .graytag.whitetag.psc {
	background-image: url(../images/tag_gray_white.png);
	background-color: transparent;
}

.graytext {
	color: #999999;
}

body#offline td#upload {
	padding-left: 3em;
}

span.contactpulldown {
	position: absolute;
}
span.contactpulldown select {
	vertical-align: top;
}

/* paper strip */
#papstriptagsedit {
	font-size: 8.7pt;
}
.pste {
	margin: 4px 0;
}
.pavfn, .pavfn a.q, .psfn, .psfn a.q, .revfn {
	color: #666666;
}
div.pst span.hint {
	padding-left: 1em;
}
.pstedit {
	display: inline-block;
	float: right;
	padding-left: 1em;
	font-size: smaller;
	color: #555555;
	white-space: nowrap;
	position: relative;
	bottom: -2px;
}
.foldo .pstedit.fn {
	display: none;
}
.psteditimg {
	display: inline-block;
	position: relative;
	width: 15px;
}
.pshint {
	font-size: smaller;
	color: #555555;
}
.psv {
	padding-top: 2px;
}
.od, .odname {
	margin: 0 0 0 1.5em;
	text-indent: -1.5em;
}
.xd {
	margin: 0.5em 0 0.5em 1.5em;
	text-indent: -1.5em;
}
.xd:first-child {
	margin-top: 0;
}
.xd:last-child {
	margin-bottom: 0;
}
#foldtags_d {
	margin: 0;
	width: 96%;
}
#foldlead_d, #foldshepherd_d, #folddecision_d, #foldmanager_d {
	width: 99%;
}

/* bubbles */
.bubble {
	position: absolute;
	visibility: hidden;
	left: 0;
	top: 0;
	z-index: 1000;
	display: table-cell;
	padding: 2px 8px;
	border-radius: 4px;
	background-color: rgba(246, 244, 189, 0.88);
	border: 1px solid #b8af25;
}
.bubble > .bubcontent {
	margin: 4px 0;
}
.bubble.gray {
	background-color: rgba(246, 246, 246, 0.88);
	border: 1px solid #b8b8b8;
}
.bubble.edittagbubble {
	background-color: #222233;
	border-width: 0;
	color: white;
	font-size: smaller;
}
.bubble.edittagbubble.sametag {
	background-color: #444466;
}
.bubble.errorbubble {
	max-width: 20em;
	background-color: rgba(255, 238, 238, 0.88);
	border: 2px solid red;
	font-size: smaller;
}
.bubble.tooltip, .bubble.graphtip {
	background-color: rgba(44, 44, 66, 0.95);
	color: #ffffff;
	border: 0 none;
	font-size: 75%;
	line-height: 1.25;
}
.bubble.tooltip {
	margin: 0 8px;
}
.bubble.tooltip .tagcolorspan, .bubble.graphtip .tagcolorspan {
	color: #2c2c33;
}
.bubble.suggest {
	background-color: rgba(250, 250, 255, 0.95);
	color: #333333;
	border: 1px solid #dddddd;
	box-shadow: 0 0 5px rgba(0,0,0,0.1);
	font-size: 12px;
	line-height: 16px;
	margin: 4px 8px;
	padding: 2px 2px;
	border-radius: 3px;
}
.bubble.suggest > .bubcontent {
	margin: 0;
}
.bubble.tooltip > .bubcontent {
	max-width: 560px;
	overflow-x: auto;
}
.bubtail {
	position: absolute;
	border-style: solid;
	border-width: 0;
	width: 12px;
	height: 6px;
}
.bubtail.tooltip {
	width: 8px;
	height: 4px;
}
.bubtail.suggest {
	width: 0;
	height: 0;
}
.bubcontent > p {
	max-width: 280px;
}
.bubcontent > p:first-child {
	margin-top: 0;
}
.bubcontent > p:last-child {
	margin-bottom: 0;
}

.tooltipmenu > div {
	margin: 4px 0;
}
.tooltipmenu a.ttmenu {
	color: white;
}

/* paper */
div.pg {
	margin-top: 1em;
}
div.pg:first-child {
	margin-top: 0;
}
div.pgsm {
	margin-top: 0.5em;
}

.words {
	color: #555555;
}
div.aabut .words {
	padding-top: 2px;
}
.wordsclose {
	color: #cc0000;
}
.wordsover {
	font-weight: bold;
	color: #cc0000;
}

/* mail */
.mail {
	background-color: #e6e1cf;
	margin: 8px 0;
	padding: 8px 12px 2px;
	border-radius: 5px;
	display: table;
}
.mhx {
	padding: 0 1em;
}
.mhn, .mhnp {
	text-align: right;
	font-weight: bold;
}
.mhnp, .mhdd, .mhdp {
	padding: 2px 4px;
}
td.mhcb {
	padding-right: 0.5em;
}
.mhb {
	padding: 4px;
}
.mhb pre {
	background-color: #ffffff;
	padding: 4px 8px;
}
.mhdp {
	font-size: smaller;
	font-family: monospace;
}
.mhpad {
	padding: 4px;
}


/* peteramati */
.pa-list-links {
	float: right;
	color: gray;
	font-weight: 500;
}
.pa-p {
	display: flex;
	align-items: baseline;
	align-content: space-between;
	justify-content: flex-end;
	flex-wrap: wrap;
	margin-bottom: 0.5rem;
}
.pa-pt {
	min-width: 168px;
	padding-right: 12px;
	flex-grow: 1;
	font-weight: bold;
}
.pa-pt > p:first-child:last-child {
	margin-bottom: 0;
}
.pa-grade-earlier::after {
	content: "←";
	font-size: 82.5%;
	vertical-align: sub;
	color: #449999;
}
.pa-grade-latest::after {
	content: "→";
	font-size: 82.5%;
	vertical-align: sub;
	color: #cc9966;
}
.pa-pdesc {
	width: 100%;
	margin-bottom: 0.25rem;
	color: #555;
	font-size: 93.75%;
}
.pa-pdesc.pa-ptop {
	margin-top: -0.5rem;
	margin-bottom: 0.5rem;
}
.pa-pdesc > p:last-child,
.pa-pv > p:last-child {
	margin-bottom: 0;
}
.pa-dr-last > p:last-child {
	margin-bottom: 0.25rem;
}
.pa-pv, .pa-pvnote {
	min-width: 168px;
	width: calc(100% - 168px);
}
.pa-ans.e > .pa-textv {
	min-width: 32px;
	width: calc(100% - 32px);
}
.pa-ans > .pa-pv {
	padding-left: 4px;
	background-color: #f0fff0;
}
.pa-ans.e > .pa-pv,
.pa-ans > .pa-pv.bg-none {
	padding-left: 0;
	background-color: inherit;
}
.pa-ans > .pa-pv > textarea {
	background-color: #f0fff0;
}
.pa-pv.pa-grade-changed:after {
	content: " ✶";
	color: blue;
}
.pa-pv.pa-grade-error:after {
	content: " \274C\FE0E"
}
.pa-ps .pa-p {
	justify-content: flex-start;
}
.pa-ps .pa-pt {
	min-width: initial;
	width: 100%;
}
.pa-ps .pa-pv, .pa-ps .pa-pvnote {
	min-width: initial;
	width: auto;
}
.pa-gsection {
	margin-bottom: 2.5rem;
}
.pa-gsection:last-child {
	margin-bottom: 0;
}
.pa-p-section > label.pa-pt {
	font-size: larger;
}
.pa-preview-border {
	max-width: 800px;
	border-top: 1px dashed black;
	margin-top: 0.25rem;
	margin-bottom: 0.25rem;
}
.pa-preview-notice {
	max-width: 800px;
	font-size: 65%;
	font-style: italic;
	text-align: right;
	margin-bottom: 0.125rem;
}
.pa-pv > textarea {
	vertical-align: top;
}
.pa-textv {
	align-self: flex-start;
}
.pa-textv > textarea {
	width: 100%;
}
.pa-p + .pa-ans {
	margin-top: 1rem;
}
.pa-p > .pa-pv > .pa-preview-notice,
.pa-p > .pa-pv > textarea,
.pa-p > .pa-pv > .pa-preview > .pa-preview-border {
	max-width: 664px;
}
.pa-p.pa-ans > .pa-pv > .pa-preview-notice,
.pa-p.pa-ans > .pa-pv > textarea,
.pa-p.pa-ans > .pa-pv > .pa-preview > .pa-preview-border {
	max-width: 800px;
}
.pa-filenav-list {
	font-size: smaller;
	list-style-type: none;
	padding-left: 0;
	margin: 0;
}

.pa-gradelist {
	margin: 1.5rem 0;
}
.pa-gradelist:first-child {
	margin-top: 0;
}
.pa-plist {
	margin-bottom: 1rem;
}
.pa-grp-hidden {
	background-color: #f3f3f3;
	color: #888888;
	margin-left: -24px;
	margin-right: -24px;
	padding: 0.5rem 24px;
}
.pa-p-hidden {
	color: #888888;
}
.pa-p-hidden > .pa-pt::before {
	content: "\1f512\fe0e";
}
.pa-gradelist.is-main {
	margin-left: -1.5rem;
	margin-right: -1.5rem;
}
.is-main > .pa-p, .is-main > .pa-ptop {
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}
.is-mainsb > .pa-p, .is-mainsb > .pa-ptop {
	padding-left: 1.5rem;
}
.pa-gradelist.is-modal {
	margin-left: -1rem;
	margin-right: -1rem;
}
.is-modal > .pa-p, .is-modal > .pa-ptop {
	padding-left: 1rem;
	padding-right: 1rem;
}
.pa-scores-hidden > .pa-score {
	color: #888888;
}
.pa-inf:first-child, .pa-inf-error:first-child, .pa-gradeabovemax {
	padding-top: 4px;
}
.pa-inf-error, .pa-gradeabovemax {
	font-weight: bold;
	color: red;
}
.pa-inf-error:before, .pa-gradeabovemax:before {
	content: "\26a0 ";
}
.pa-inf {
	font-size: smaller;
}
.pa-inf-alert {
	color: white;
	background: red;
}
.pa-timermark-sticky {
	position: sticky;
	margin-left: auto;
	margin-right: 1rem;
	top: 4px;
	z-index: 2;
}
.pa-timermark-alert {
	position: absolute;
	right: 16px;
	padding: 2px 6px;
	border-radius: 4px;
	display: table;
	font-variant-numeric: tabular-nums;
}
.pa-commit-selector {
	font-variant-numeric: tabular-nums;
}
.pa-timermark-alert.urgent {
	color: red;
	font-weight: bold;
	background: yellow;
}

.gtable-section {
	margin-bottom: 1rem;
	margin-top: 1rem;
}
.gtable-section + .gtable-section {
	border-top: 1px solid silver;
	padding-top: 1rem;
}
.gtable-section-header {
	display: flex;
	align-items: baseline;
	margin-bottom: 1rem;
}
.gtable-section-header > h3 {
	display: inline-block;
	margin-bottom: 0;
}

.gtable, .gtable-left-pin, .gtable-top-pin {
	font-size: 75%;
	line-height: 1.5;
}
tr.gt > td, tr.gt > th {
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	height: 1.125rem;
}
tr.gtrow-partner {
	font-size: smaller;
}
tr.gtrow-partner > td, tr.gtrow-partner > th {
	height: 1rem;
}
.gtable-container-0 {
	margin-right: -24px;
	margin-bottom: 0.75rem;
	position: relative;
}
.gtable-container-1 {
	display: flex;
}
.gtable-container-headers {
	position: sticky;
	top: 0;
	z-index: 2;
	padding-right: 24px;
	overflow: hidden;
}
.gtable-container-gutter {
	padding-right: 16px;
}
.gtable-gutter-content {
	position: sticky;
	top: 1rem;
	bottom: 0;
	display: grid;
	grid-template-columns: 1fr;
}
.gtable-gutter-pset {
	margin-top: 1rem;
	margin-left: 0.5rem;
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	white-space: nowrap;
}
.gtable-container-2 {
	padding-right: 24px;
	padding-bottom: 8px;
	overflow: scroll;
	position: relative;
	z-index: 1;
}
.gtable-fixed {
	table-layout: fixed;
}
.gtable-container-left-pin {
	position: sticky;
	left: 0;
	z-index: 2;
}
.gtable-left-pin {
	position: absolute;
	left: 0;
	transition: opacity 0.25s ease;
	opacity: 1;
}
.gtable-left-pin.new {
	opacity: 0;
}
.gtable-top-pin {
	z-index: 1;
	left: 0;
	top: 0;
}
.gtable-headrow {
	font-size: smaller;
	color: #7777aa;
}
.gt-dropped {
	text-decoration: line-through;
}
.gt-checkbox, .gt-extension, .gt-year, .gt-notes {
	text-align: center;
	width: 2rem;
}
th.gt-checkbox > input {
	/*transform: scale(90%);*/
	width: 1em;
}
.gt-rownumber {
	text-align: right;
	font-variant-numeric: tabular-nums;
}
.gt-username {
	font-weight: bold;
}
.gt-user, .gt-username, .gt-name, .gt-grader,
.gt-grade, .gt-rograde, .gt-ngrades, .gt-total,
.gt-conversation, .gt-repo, .gt-pset, .gt-at, .gt-latehours {
	padding-right: 0.75rem;
}
.gt-grade, .gt-rograde, .gt-total, .gt-ngrades {
	font-variant-numeric: tabular-nums;
}
td.gt-grade {
	cursor: default;
}
td.gt-grade:hover {
	outline: rgba(0, 77, 170, 0.3) auto 2px;
}
.gt-grade.update, .gt-rograde.update {
	transition: none;
	background-color: yellow;
}
.gt-grade, .gt-rograde {
	transition: background-color 3s ease-out;
	background-color: transparent;
}
.gtrow-partner > .gt-username, .gtrow-partner > .gt-user {
	padding-left: 1em;
}
.gt-total, .gt-ngrades {
	font-weight: bold;
}
.gt-highlight {
	color: red;
}
.gt-anonymous .gt-name, .gt-anonymous .gt-year {
	display: none;
}
.gt-at {
	white-space: nowrap;
}
h3.gdialog-userids {
	margin-top: -0.5rem;
	font-size: 1rem;
}

.pa-sticky, .pa-fileref {
	position: sticky;
	z-index: 1;
	top: 0;
	padding-top: 4px;
	padding-bottom: 4px;
	display: flex;
	align-items: baseline;
	background: white;
}
.pa-fileref-context {
	font-weight: 500;
	padding-right: 0.3rem;
}
.pa-fileref {
	padding-left: 24px;
	padding-right: 24px;
	margin: 0 0 0.5rem -24px;
}
@media print {
.pa-fileref {
	position: static !important;
}
}

.pa-filediff {
	margin-bottom: 1.5rem;
}
.pa-pv > .pa-filediff,
.pa-filediff.need-load {
	margin-bottom: 0;
}
@media screen and (min-width: 800px) {
.pa-filediff {
	 margin-left: 32px;
}
.pa-pv > .pa-filediff {
	margin-left: 0;
}
.pa-gradebox {
	position: relative;
	left: -1rem;
}
}

.pa-dl {
	display: flex;
	max-width: 100%;
}
.pa-da, .pa-db {
	text-align: right;
	color: rgba(0, 0, 0, 0.3);
	padding-left: 0.5em;
	user-select: none;
	flex: 0 0 content;
}
.pa-dhlm {
	padding-left: 0.5em;
}
.pa-da {
	min-width: 3em;
	width: 3em;
	padding-right: 0.5em;
}
.pa-db {
	min-width: 3.5em;
	width: 3.5em;
	padding-right: 1em;
}
.pa-da::before, .pa-db::before {
	content: attr(data-landmark);
}
.pa-dd {
	flex: 1 1 auto;
	max-width: calc(100% - 6.5em);
	white-space: pre-wrap;
	overflow-wrap: break-word;
}
.pa-line-digits-4 .pa-da {
	min-width: 3.5em;
	width: 3.5em;
}
.pa-line-digits-4 .pa-db {
	min-width: 4em;
	width: 4em;
}
.pa-line-digits-4 .pa-dd {
	max-width: calc(100% - 7.5em);
}
.pa-line-digits-5 .pa-da {
	min-width: 4.25em;
	width: 4.25em;
}
.pa-line-digits-5 .pa-db {
	min-width: 4.75em;
	width: 4.75em;
}
.pa-line-digits-5 .pa-dd {
	max-width: calc(100% - 9em);
}
@media print {
.pa-dd {
	padding-left: 1.5em;
}
.pa-gi > .pa-dd::before {
	content: "+";
	font-weight: bold;
	display: inline-block;
	color: #005500;
	width: 1.5em;
	margin-left: -1.5em;
}
.pa-gd > .pa-dd::before {
	content: "-";
	font-weight: bold;
	display: inline-block;
	color: #550000;
	width: 1.5em;
	margin-left: -1.5em;
}
.no-print {
	display: none !important;
}
}
.pa-line-highlight {
	animation: 1600ms 1 pa-line-highlight;
}
@keyframes pa-line-highlight {
	from, 12.5%, 25% {
		background-color: #ffff00;
	}
	6.25%, 18.75% {
		background-color: #ffff0000;
	}
}

.pa-dr {
	overflow-wrap: break-word;
}
.pa-dr h1, .pa-dr h2, .pa-dr h3, .pa-dr h4, .pa-dr h5, .pa-dr h6 {
	display: block;
	margin-top: 0;
	margin-bottom: 1rem;
}
.pa-dr pre, .pa-dr code {
	white-space: pre-wrap;
	overflow-wrap: break-word;
}
.pa-dr pre, .pa-dr blockquote, .pa-dr ol, .pa-dr ul {
	margin-top: 0;
}
.pa-dr pre.partial {
	margin-bottom: 0;
}
.pa-dr > p,
.pa-dr > h1, .pa-dr > h2, .pa-dr > h3, .pa-dr > h4, .pa-dr > h5, .pa-dr > h6,
.pa-dr > ul, .pa-dr > ol {
	max-width: 800px;
}
.pa-dr blockquote {
	border-left: 0.2em solid rgba(128, 192, 200, 0.8);
	padding-left: 0.8em;
}
.pa-dr > blockquote {
	margin-left: 32px;
	max-width: 768px;
}
.pa-dr p.image-container {
	max-width: 95%;
}
.pa-dr img, img.pa-dr {
	max-width: 100%;
	max-height: 80vh;
}
.pa-dr table {
	border: 1px solid silver;
	border-collapse: collapse;
	margin-bottom: 1rem;
}
.pa-dr td, .pa-dr th {
	padding: 0.5em;
	border: 1px solid silver;
}
.pa-dr.pa-note > *:last-child {
	margin-bottom: 0;
}

.pa-hide-description .pa-pdesc,
.pa-hide-description .pa-hidden-description {
	display: none;
}
.pa-with-sidebar {
	display: flex;
	flex-direction: row-reverse;
	align-items: flex-start;
}
.is-main.pa-with-sidebar {
	margin-right: 1.5rem;
}
.pa-with-sidebar > .pa-dg {
	flex: 1 1 auto;
	max-width: 82.5%;
}
.pa-sidebar {
	min-width: 180px;
	max-height: 100vh;
	width: 17.5%;
	flex: 0 0 17.5%;
	padding-left: 1em;
	position: sticky;
	top: 0;
	overflow-y: auto;
}
.pa-sidebar > .pa-gradebox {
	left: 0;
	display: block;
	padding-right: 0.8rem;
	font-size: 90%;
}
.pa-sidebar > .pa-gradebox:first-child {
	margin-top: 2.125rem;
}
@media screen and (max-width: 1024px), print {
.pa-sidebar {
	display: none;
}
.pa-with-sidebar > .pa-dg {
	max-width: 100%;
}
}

@media print {
.pa-dg.pa-with-fixed {
	break-after: page;		
}
}

@media screen and (min-width: 1024px) {
.pa-no-sidebar {
	display: none;
}
}
.pa-notebox {
	flex: 1 1 auto;
	max-width: 100%;
	padding: 0.8rem 1rem 0.8rem 6.5rem;
	background: #f3d1fc;
	background:
	    left top / 100% 5px no-repeat linear-gradient(180deg, rgba(180,120,180,0.2), rgba(0,0,0,0)),
	    linear-gradient(90deg, rgba(238,192,242,0) 5.4em, rgba(238,192,242,1) 5.5em, rgba(243,209,252,1) 95%, rgba(238,192,242,1) 100%) right top,
            4.7em center / 0.8em 0.8em repeat-y linear-gradient(125deg, rgba(227,163,227,0) 0.7em, rgba(227,163,227,1) 0.8em, rgba(238,192,242,1) 1em),
            4.7em center / 0.8em 0.8em repeat-y linear-gradient(55deg, rgba(227,163,227,0) 0.7em, rgba(227,163,227,1) 0.8em, rgba(238,192,242,1) 1em);
}
.garrett .pa-notebox {
	background: transparent;
	overflow: hidden;
	position: relative;
	color: black;
}
.garrett .pa-notebox:before {
	content: "";
	width: 250vmax;
	height: 250vmax;
	position: absolute;
	left: calc(5em - 125vmax);
	top: calc(50% - 125vmax);
	background:
	    conic-gradient(from 0 at 50% 50%, red, orange, yellow, green, #ddddff, #993399, red);
	animation: 9000ms infinite linear garrett-notebox;
	z-index: -1;
}
@keyframes garrett-notebox {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}
.pa-note-suggestions {
	font-size: smaller;
	max-height: 60vh;
	overflow-y: auto;
	margin-left: -0.5rem;
	margin-top: -0.5rem;
	padding-left: 0.5rem;
	padding-top: 0.5rem;
}
.pa-note-suggestion {
	display: flex;
	align-items: baseline;
	margin-bottom: 0.25rem;
	gap: 0.5rem;
}
.pa-search-suggestions {
	margin-left: 0;
	font-size: smaller !important;
}
.pa-use-suggestion.taken {
	background-image: linear-gradient(#ffe3fa, #f5d3f0);
}
.pa-use-suggestion.taken:hover, .pa-use-suggestion.taken:hover {
	background-image: linear-gradient(#f2d3f5, #edcef0);
}
code, .pa-da, .pa-db, .pa-dd, .pa-dcx,
.pa-noteref, .pa-gradeboxref, .pa-warnbox {
	font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	line-height: 1.65;
	font-size: 87.5%;
}
.pa-note {
	font-family: Charter, Georgia, serif;
	font-variant-numeric: lining-nums;
	line-height: 1.35;
}
.format0, .format4 {
	white-space: pre-wrap;
}
.format2 {
	font-family: Menlo, "Liberation Mono", Consolas, Courier, monospace;
	line-height: 1.5;
	white-space: pre-wrap;
}
.pa-scores-hidden-marker {
	content: "\1f512\fe0e";
}
.pa-scores-hidden .pa-gradenote-marker::before {
	content: "\1f512\fe0e";
	width: 2rem;
	float: left;
}
.pa-scores-hidden .pa-gradenote {
	color: #555;
}
.pa-noteref {
	font-size: smaller;
}
.pa-dnonl:after {
	content: "⏎̸";
}
.pa-dcx {
	color: rgba(0, 0, 0, 0.5);
}
.pa-gx {
	background-color: #f3f3ff;
}
.pa-gd, .pa-gdsamp {
	background-color: #ffdddd;
	-webkit-print-color-adjust: exact;
	print-color-adjust: exact;
}
.pa-gi, .pa-gisamp {
	background-color: #ddffdd;
	-webkit-print-color-adjust: exact;
	print-color-adjust: exact;
}
.pa-hide-left .pa-gd {
	display: none;
}
.pa-hide-left .pa-gi {
	background-color: #f0fff0;
}
.live .pa-gi:hover, .pa-dl.live {
	background-color: #f8eec7;
}
.pa-gx:hover {
	background-color: #e8e8f8;
}
.pa-note-entry {
	width: 99%;
	height: 5em;
}
.pa-noteform {
	display: block;
	padding: 1ex 0;
	position: relative;
}
.pa-save-message {
	padding-left: 1em;
	font-style: italic;
}
.pa-save-message.compact {
	display: inline-block;
}
.pa-sidebar .pa-save-message.compact {
	padding-left: 0;
	margin-right: -1em;
}
.ajaxsave61 {
	padding-left: 1em;
	font-size: smaller;
	font-style: italic;
}
.pa-gradediffers {
	padding-left: 1em;
	font-size: smaller;
	color: red;
}
.pa-gradeboxref {
	padding-left: 1em;
	font-size: smaller;
	line-height: inherit;
}
.pa-gradeboxref > a {
	color: #777777;
}
.pa-notes-grade {
	display: block;
	text-decoration: inherit;
	font-size: smaller;
	color: #999999;
}
.pa-notes-grade:hover {
	color: #c45500;
	text-decoration: underline;
}
.foldarrow {
	display: inline-block;
	text-indent: 0;
	font-size: 80%;
	padding-right: 0.25em;
	width: 1em;
	opacity: 0.65;
}
.foldarrow::after {
	content: url("data:image/svg+xml,%3Csvg viewBox='0 0 64 64' width='10' height='10' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'%3E%3Cpath d='M4 4L60 32L4 60z' fill='%23000099' /%3E%3C/svg%3E");
}
.foldarrow.isopen::after {
	content: url("data:image/svg+xml,%3Csvg viewBox='0 0 64 64' width='10' height='10' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'%3E%3Cpath d='M4 4L32 60L60 4z' fill='%23000099' /%3E%3C/svg%3E");
}
.gradesready {
	color: #009900;
	text-decoration: none;
}
.gradesmissing {
	color: #990000;
	text-decoration: none;
}
.pa-flag-open {
	color: #ff3300;
}
.pa-note-links, .pa-note-aa, .pa-note-author {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto",
		"Helvetica Neue", Arial, sans-serif,
		"Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
	font-style: normal;
}
.pa-note-links {
	float: right;
	font-size: smaller;
	text-transform: uppercase;
	font-weight: bold;
	padding-left: 1em;
}
.pa-note-links > a {
	color: #7777aa;
	text-decoration: none;
}
.pa-note-links > a:hover {
	text-decoration: underline;
}
.pa-note-author, .pa-note-gradecontrib {
	float: right;
	font-size: smaller;
	padding-left: 1em;
	color: #7777aa;
}
.pa-gradebox {
	display: inline-block;
	border: 1px solid #d0d4e8;
	border-radius: 4px;
	background: #f8fcff;
	padding: 0.65rem 168px 0.65rem 0.8rem;
}
.pa-gradebox.pa-gradelist {
	padding-bottom: 0.3rem;
}
.pa-gradebox.pa-filenavbox {
	padding-top: 0;
	padding-bottom: 0;
	max-height: 25vh;
	overflow: auto;
	background: #f8f8f8;
}
.pa-filenav-list {
	margin-top: 0.65rem;
	margin-bottom: 0.65rem;
	text-overflow: ellipsis;
}
.pa-gradebox > .pa-p {
	margin-left: 0;
}
.pa-gradebox .pa-pv, .pa-gradebox .pa-pvnote {
	width: auto;
}
.pa-warnbox {
	flex: 1 1 auto;
	max-width: 100%;
	padding: 0.8em 1em 0.8em 6.5em;
	background: #f2ecef;
	background:
	    left top / 100% 5px no-repeat linear-gradient(180deg, rgba(120,80,120,0.1), rgba(0,0,0,0)),
	    left bottom / 100% 5px no-repeat linear-gradient(0deg, rgba(120,80,120,0.1), rgba(0,0,0,0)),
	    linear-gradient(90deg, rgba(242,236,239,0) 5.4em, rgba(242,236,239,1) 5.5em, rgba(242,236,239,1) 100%) right top,
	    4.7em center / 0.8em 0.8em repeat-y linear-gradient(115deg, rgba(222,220,221,0) 0.7em, rgba(222,220,221,1) 0.8em, rgba(242,236,239,1) 1em),
	    4.7em center / 0.8em 0.8em repeat-y linear-gradient(65deg, rgba(222,220,221,0) 0.7em, rgba(222,220,221,1) 0.8em, rgba(242,236,239,1) 1em);
}
.pa-warncontent {
	font-size: smaller;
	white-space: pre-wrap;
	color: #440000;
}
.pa-flagger, .pa-flagger-grade, .pa-flagger-nograde {
	font-weight: 500;
}
.pa-flagger {
	background: #ffffee;
}
.pa-flagger-grade, .pa-flagger-gradelock {
	background: #eeffee;
}
.pa-flagger-nograde {
	background: #ffeeee;
}
.pa-flagger-grade:hover, .pa-flagger-grade:active,
.pa-flagger-gradelock:hover, .pa-flagger-gradelock:active {
	border-color: #005f00;
	background-image: linear-gradient(#ddeedd, #d0eed0);
}
.pa-flagger-grade.active, .pa-flagger-gradelock.active {
	border-color: #007f00;
	background: #00ba00;
	background-image: linear-gradient(#00ba00, #00a500);
	color: white;
}
.pa-flagger-nograde.active {
	border-color: #cc0000;
	background: #ff0000;
	background-image: linear-gradient(#ff4040, #ff0000);
	color: white;
}
.pa-runner, .pa-runconfig {
	font-size: 9pt;
	font-weight: 500;
}
.pa-run {
	background-color: #000022;
	color: #d5f8e5;
	font-size: 85%;
	overflow: auto;
	height: 32em;
	margin-bottom: 1.5rem;
}
.pa-runoutlist {
	margin-top: 1.5rem;
}
.pa-run-short {
	height: auto;
	max-height: 32em;
}
.pa-run-xterm-js {
	height: auto;
}
.pa-run a.pa-goto:hover {
	color: #228822;
}
.pa-runtime {
	color: #88aa88;
	font-style: italic;
}
.pa-runpre {
	padding: 1.5rem 0 1.5rem 32px;
	margin: 0;
}
.pa-runcursor:after {
	color: #66ee66;
	background-color: #66ee66;
	display: inline-block;
	animation: 900ms infinite pa-runcursor-flash;
	content: " ";
}
@keyframes pa-runcursor-flash {
	from, 55%, to {
		opacity: 1;
	}
	22%, 33% {
		opacity: 0;
	}
}
.pa-rl-continues:after {
	content: "…\A";
}
.pa-runrange {
	background: #333333;
	padding: 0.25rem 2rem;
	margin: 0;
	display: flex;
	align-items: center;
}
.pa-runrange-play {
	background: none;
	padding: 0;
	border: 0 none;
	font-size: larger;
}
.pa-runrange-range {
	min-width: 12rem;
	max-width: 80em;
	flex: 1 0 auto;
}
.pa-runrange-play {
	margin-right: 0.5rem;
}
.pa-runrange-play:after {
	content: "⏸️";
	font-family: "Apple Color Emoji", "Segoe UI Emoji",
		-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto",
		"Helvetica Neue", Arial, sans-serif;
}
.pa-runrange-play.paused:after {
	content: "\25b6\fe0f";
}
.pa-runrange-time {
	display: inline-block;
	min-width: 9ch;
	text-align: right;
	font-variant-numeric: tabular-nums;
}
.pa-runrange-speed {
	width: 10ch;
}
.pa-runrange-speed-slow {
	padding-left: 2rem;
	padding-right: 0.25rem;
}
.pa-runrange-speed-fast {
	padding-left: 0.5rem;
}
.pa-viewoptions {
	display: inline-block;
	margin-left: 2em;
}

.pa-pinnable {
	max-width: 800px;
	border: 1px solid lightgray;
	border-radius: 4px;
	padding: 4px 8px;
	position: relative;
	margin-bottom: 1rem;
}
.pa-pinnable > * {
	margin-bottom: 0;
}
.pa-pinnable.pinned {
	background-color: #f8f8f8;
	cursor: move;
}
.pa-pinnable.pinned:hover {
	border-color: mediumslateblue;
}
.pa-pinnable-fixed {
	z-index: 4;
}
.pa-pinnable-pin {
	font-size: smaller;
	padding: 2px 2px;
	background: none;
	border: none;
	position: absolute;
	top: 0;
	right: 0;
}
.pa-pinnable.pinned > .pa-pinnable-pin {
	background: #aab0ff;
}
.pa-pinnable-title {
	font-size: 65%;
	background-color: #aab0ff;
	color: black;
	font-weight: 500;
	margin: 2px -8px -4px -8px;
	padding: 2px 8px;
	border-bottom-left-radius: 3px;
	border-bottom-right-radius: 3px;
}
.pa-pinnable-title > p {
	margin: 0;
}

.pa-gradewidth {
	min-width: 3rem;
	padding-right: 6px;
	margin-right: 0.5rem;
	display: inline-block;
}
input.pa-gradewidth, textarea.pa-gradewidth {
	width: 6rem;
}
.has-editable-scores span.pa-gradewidth {
	min-width: 6rem;
}
.pa-sidebar .pa-gradewidth {
	width: 5rem;
}
.pa-gradevalue {
	margin-left: 0;
}
.pa-total span.pa-gradevalue {
	font-weight: bold;
}
.pa-gradeholder {
	display: inline-block;
	position: relative;
	width: 8em;
}
.pa-gradedesc {
	font-size: smaller;
	color: #999999;
	display: inline-block;
	min-width: 3em;
}

.pa-gg-axis {
	font-size: 0.8rem;
	pointer-events: none;
}
.pa-gg-xaxis {
	text-anchor: middle;
}
.pa-gg-yaxis {
	text-anchor: end;
}
.pa-gg-anno-total {
	stroke: #ccddff;
	stroke-width: 3;
}
.pa-gg-anno-name {
	font-size: 0.8rem;
}
.pa-gg-mark {
	stroke: #ffffff;
	stroke-width: 1;
}
.hl-main {
	stroke-width: 2;
	fill: #ff5522;
	color: #ff5522;
}
.pa-gg-hover-mark {
	stroke: #ffffff;
	stroke-width: 1.5;
	fill: #ff5522;
	stroke-linejoin: bevel;
}
.pa-gg-hover-box {
	fill: rgba(0, 0, 0, 0.8);
}
.pa-gg-hover-text {
	fill: white;
}
.hl-h00 {
	fill: #424cff;
	color: #424cff;
}
.hl-h01 {
	fill: #6ea6ff;
	color: #6ea6ff;
}
.hl-h02 {
	fill: #4ea812;
	color: #4ea812;
}
.hl-h03 {
	fill: #507027;
	color: #507027;
}
.hl-h04 {
	fill: #1b600b;
	color: #1b600b;
}
.pa-gg-cdf, .pa-gg-pdf {
	stroke: #222222;
	stroke-width: 2.5;
}
.pa-gg-cutoff {
	stroke-dasharray: 4;
}
.pa-gg-has-hl > .pa-gg-cdf, .pa-gg-has-hl > .pa-gg-pdf {
	stroke: #22222222;
}
.pa-gg-cdf.pa-gg-noextra, .pa-gg-pdf.pa-gg-noextra {
	stroke: #bb7777;
}
.pa-gg-cdf.pa-gg-filtered, .pa-gg-pdf.pa-gg-filtered {
	stroke: #ff7777;
}
.pa-gg-has-hl > .pa-gg-cdf.pa-gg-noextra, .pa-gg-has-hl > .pa-gg-pdf-noextra {
	stroke: #bb777722;
}
.all .pa-gg-pdf, .all .pa-gg-noextra, .all .pa-gg-extension {
	stroke-width: 1.5;
}
.pa-gg-cdf.pa-gg-extension, .pa-gg-pdf.pa-gg-extension {
	stroke: #222288;
}
.pa-gg-has-hl > .pa-gg-cdf.pa-gg-extension, .pa-gg-has-hl > .pa-gg-pdf-extension {
	stroke: #22228822;
}
.pa-gg-cdfhl {
	stroke: #ff0000;
	stroke-width: 3;
}

.pa-grade-statistics {
	position: relative;
	float: right;
	padding-left: 1rem;
	padding-bottom: 0.5rem;
}
.pa-grade-statistics.pa-grp-hidden {
	margin-left: 0;
	padding-left: 1rem;
}
.pa-grgraph > .title {
	text-align: center;
	margin: 0 auto 1rem;
}
.pa-grgraph-subtype {
	font-weight: normal;
	font-size: smaller;
	display: inline-block;
	padding-left: 0.333em;
}
.pa-grgraph > .statistics {
	width: fit-content;
	font-size: 90%;
	margin: 1rem auto 0;
}
.js-grgraph-flip.prev {
	float: left;
	padding-right: 1rem;
}
.js-grgraph-flip.next {
	float: right;
	padding-left: 1rem;
}

.d-grid-1, .pa-grade-overview {
	display: grid;
	grid-template-columns: 1fr;
	position: relative;
}
.pa-grade-overview-users {
	position: relative;
	overflow: scroll;
	min-height: 25vh;
}
#pa-overview-table {
	position: absolute;
}
.pa-gradegrid {
	display: grid;
	grid-template-columns: 1fr;
	grid-auto-rows: auto;
	grid-gap: 1rem 1rem;
}
.pa-gradegrid > .pa-grgraph {
	padding: 0.25rem 0.5rem;
}
.pa-gradegrid > .pa-grgraph > .pa-plot {
	height: 20vh;
}
.pa-gradegrid > .pa-grgraph.pa-grp-hidden {
	margin: 0;
}
@media screen and (min-width: 600px) {
.pa-grade-overview {
	grid-template-columns: minmax(250px, 30vw) auto;
}
.pa-gradegrid {
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}
}

.need-lineno {
	white-space: pre-wrap;
}
.need-lineno > .has-lineno {
	align-items: baseline;
}
.has-lineno::before {
	content: attr(data-lineno);
	opacity: 0.5;
	font-size: smaller;
	text-align: right;
	width: 3.5rem;
	padding-right: 1.5rem;
	display: inline-block;
	vertical-align: baseline;
}

.plot {
	display: block;
	font: 10px system-ui,sans-serif;
	max-width: 100%;
	height: auto;
	height: intrinsic;
}

/* ANSI escapes */
.ansib {
	font-weight: bold;
}
.ansii {
	font-style: italic;
}
.ansiu {
	text-decoration: underline;
}
.ansis {
	text-decoration: line-through;
}

.ansifg0 {
	color: #000000;
}
.ansifg1 {
	color: #c23621;
}
.ansifg2 {
	color: #25bc24;
}
.ansifg3 {
	color: #adad27;
}
.ansifg4 {
	color: #492ee1;
}
.ansifg5 {
	color: #d338d3;
}
.ansifg6 {
	color: #33bbc8;
}
.ansifg7 {
	color: #cbcccd;
}

.ansifg0.ansib, .ansifg8 {
	color: #818383;
}
.ansifg1.ansib, .ansifg9 {
	color: #fc391f;
}
.ansifg2.ansib, .ansifg10 {
	color: #31e722;
}
.ansifg3.ansib, .ansifg11 {
	color: #eaec23;
}
.ansifg4.ansib, .ansifg12 {
	color: #5833ff;
}
.ansifg5.ansib, .ansifg13 {
	color: #f935f8;
}
.ansifg6.ansib, .ansifg14 {
	color: #14f0f0;
}
.ansifg7.ansib, .ansifg15 {
	color: #e9ebeb;
}

.ansibg0 {
	background-color: #000000;
}
.ansibg1 {
	background-color: #c23621;
}
.ansibg2 {
	background-color: #25bc24;
}
.ansibg3 {
	background-color: #adad27;
}
.ansibg4 {
	background-color: #492ee1;
}
.ansibg5 {
	background-color: #d338d3;
}
.ansibg6 {
	background-color: #33bbc8;
}
.ansibg7 {
	background-color: #cbcccd;
}

.ansibg0.ansib, .ansibg8 {
	background-color: #818383;
}
.ansibg1.ansib, .ansibg9 {
	background-color: #fc391f;
}
.ansibg2.ansib, .ansibg10 {
	background-color: #31e722;
}
.ansibg3.ansib, .ansibg11 {
	background-color: #eaec23;
}
.ansibg4.ansib, .ansibg12 {
	background-color: #5833ff;
}
.ansibg5.ansib, .ansibg13 {
	background-color: #f935f8;
}
.ansibg6.ansib, .ansibg14 {
	background-color: #14f0f0;
}
.ansibg7.ansib, .ansibg15 {
	background-color: #e9ebeb;
}

.cR {
	background-color: #ffd8d8;
}
.cO {
	background-color: #fdebcc;
}
.cY {
	background-color: #fdffcb;
}
.cG {
	background-color: #d8ffd8;
}
.cB {
	background-color: #d8d8ff;
}
.cP {
	background-color: #f2d8f8;
}
.cA {
	background-color: #e2e2e2;
}


.pa-face {
	margin-right: 12px;
	margin-bottom: 8px;
	height: 160px;
}
.pa-smallface {
	margin-right: 12px;
	margin-bottom: 8px;
	height: 96px;
}
.pa-tinyface {
	margin-right: 12px;
	height: 64px;
}
.pa-facebook {
	display: flex;
	flex-flow: row wrap;
	margin-right: -1rem;
	margin-bottom: -2rem;
}
.pa-facebook-entry {
	word-wrap: break-word;
	width: 200px;
	margin-right: 1rem;
	margin-bottom: 2rem;
}
.pa-facebook-entry > h2 {
	font-size: normal;
}

/* folding */
.foldc .fx, .foldo .fn,
.foldc .fx0, .foldo .fn0,
.fold1c .fx1, .fold1o .fn1,
.fold2c .fx2, .fold2o .fn2,
.fold3c .fx3, .fold3o .fn3,
.fold4c .fx4, .fold4o .fn4,
.fold5c .fx5, .fold5o .fn5,
.fold6c .fx6, .fold6o .fn6,
.fold7c .fx7, .fold7o .fn7,
.fold8c .fx8, .fold8o .fn8,
.fold9c .fx9, .fold9o .fn9,
.fold10c .fx10, .fold10o .fn10,
.fold11c .fx11, .fold11o .fn11,
.fold12c .fx12, .fold12o .fn12,
.fold13c .fx13, .fold13o .fn13,
.fold14c .fx14, .fold14o .fn14,
.fold15c .fx15, .fold15o .fn15,
.fold16c .fx16, .fold16o .fn16,
.fold17c .fx17, .fold17o .fn17,
.fold18c .fx18, .fold18o .fn18,
.fold19c .fx19, .fold19o .fn19,
.fold20c .fx20, .fold20o .fn20,
.fold21c .fx21, .fold21o .fn21,
.fold22c .fx22, .fold22o .fn22,
.fold23c .fx23, .fold23o .fn23,
.fold24c .fx24, .fold24o .fn24,
.fold25c .fx25, .fold25o .fn25,
.fold26c .fx26, .fold26o .fn26,
.fold27c .fx27, .fold27o .fn27,
.fold28c .fx28, .fold28o .fn28,
.fold29c .fx29, .fold29o .fn29,
.fold30c .fx30, .fold30o .fn30,
.fold31c .fx31, .fold31o .fn31,
.fold32c .fx32, .fold32o .fn32,
.fold50c .fx50, .fold50o .fn50,
.fold51c .fx51, .fold51o .fn51,
.fold52c .fx52, .fold52o .fn52,
.fold53c .fx53, .fold53o .fn53,
.fold54c .fx54, .fold54o .fn54,
.fold55c .fx55, .fold55o .fn55,
.fold56c .fx56, .fold56o .fn56,
.fold57c .fx57, .fold57o .fn57,
.fold58c .fx58, .fold58o .fn58,
.fold59c .fx59, .fold59o .fn59,
.fold60c .fx60, .fold60o .fn60,
.fold61c .fx61, .fold61o .fn61,
.fold99c .fx99, .fold99o .fn99 {
	display: none;
}
.hidden, [hidden] {
	display: none !important;
}
.pseudohidden {
	overflow: visible !important;
	height: 0 !important;
	width: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	padding: 0 !important;
	display: block !important;
}

/* score help */
a.help {
	font-size: smaller;
	font-weight: normal;
	position: relative;
	bottom: 0.5em;
}

/* popup dialogs */
.modal-open {
	overflow: hidden;
}
.modal {
	background-color: rgba(0, 0, 0, 0.4);
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 14;
}
.modal.transparent {
	background-color: transparent;
	z-index: 10;
}
.modal-open .modal {
	overflow-x: hidden;
	overflow-y: auto;
}
.modal-dialog {
	position: relative;
	min-width: 15em;
	max-width: 32em;
	z-index: 16;
	pointer-events: none;
}
.modal-dialog-wide {
	max-width: 80vw;
}
.modal-dialog-centered {
	margin: 5vh auto;
	position: relative;
	display: flex;
	justify-content: center;
}
.modal-content {
	border: 1px solid rgba(0, 0, 0, 0.6);
	border-radius: 4px;
	box-shadow: 0 3px 12px rgba(0, 0, 0, 0.3);
	padding: 0.75em 1em;
	background: #fbfbfa;
	pointer-events: auto;
}
.modal-dialog-wide > .modal-content {
	min-width: max(15em,40vw);
}

.popup-actions {
	margin-top: 1em;
}
.popup-actions > .btn, .popup-actions > button {
	float: right;
	margin-left: 1em;
}
.popup-actions > .btnl, .popup-actions > button.btnl {
	float: left;
	margin-left: 0;
	margin-right: 1em;
}

.dropmenu-details {
	display: inline-block;
	position: relative;
}
.dropmenu-details > summary {
	display: inline-block;
	list-style-type: none;
}
.dropmenu-details > summary::-webkit-details-marker {
	display: none;
}
.dropmenu-container {
	font-size: 0.875rem;
	text-align: initial;
	text-indent: initial;
	position: absolute;
	background: white;
	color: #333333;
	border: 1px solid silver;
	border-radius: 8px;
	z-index: 12;
	cursor: default;
	box-shadow: 0px 1.5px 5px 1px rgba(0, 0, 0, 0.2);
	/* can be overridden by .dropmenu-sw */
	left: 0;
	right: auto;
	top: 120%;
}
.dropmenu-container::before, .dropmenu-container::after {
	position: absolute;
	display: inline-block;
	content: "";
}
.dropmenu-container::before {
	border: 8px solid transparent;
	border-bottom-color: silver;
	/* can be overridden by .dropmenu-sw */
	top: -16px;
	left: 9px;
	right: auto;
}
.dropmenu-container::after {
	border: 7px solid transparent;
	border-bottom-color: white;
	/* can be overridden by .dropmenu-sw */
	top: -14px;
	left: 10px;
	right: auto;
}
.dropmenu {
	margin: 0.5rem 0;
	padding-left: 0 !important;
	list-style-type: none;
	width: max-content;
	max-height: 90vh;
	overflow-y: auto;
}
.dropmenu-draghandle {
	left: -12px;
}
.dropmenu-sw {
	right: 0;
	left: auto;
	top: 120%;
}
.dropmenu-sw::before {
	top: -16px;
	right: 9px;
	left: auto;
}
.dropmenu-sw::after {
	top: -14px;
	right: 10px;
	left: auto;
}
.dropmenu a, .dropmenu .link {
	color: inherit !important;
	text-decoration: none;
}
.dropmenu > li {
	padding: 0.25em 2em 0.25em 1em;
}
.dropmenu > li.has-link,
.dropmenu > li.has-quiet-link {
	cursor: pointer;
}
.dropmenu.dropmenu-hovering > li:focus-within {
	background-color: inherit;
	color: inherit;
}
.dropmenu > li:focus-within,
.dropmenu-hovering > li.has-link:hover {
	background-color: #004daa;
	color: white;
}
.dropmenu > li.separator {
	margin: 0.35em 0;
	padding: 0;
	border-bottom: 1px solid silver;
}

@keyframes spinner {
	to {transform: rotate(360deg);}
}
.spinner {
	display: inline-block;
	width: 0.8em;
	height: 0.8em;
	position: relative;
	bottom: -0.1em;
	animation: spinner 0.8s linear infinite;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 64 64' xmlns='http://www.w3.org/2000/svg' style='position:absolute;top:0;vertical-align:0'%3E%3Cpath d='M64.5,32.5C64.1,20.8 57.7,10.7 48.3,5.1C43.6,2.5 38.2,1.1 32.5,1.1C36.4,1.3 34.4,1.2 32.5,1.3C21.5,1.8 11.7,8 6.5,17.3C4.9,20.2 3.8,23.5 3.2,26.9C4,23.9 3.6,26.3 3.4,28.7C3.3,30 3.3,31.2 3.4,32.5C4.1,42.4 9.8,51.5 18.8,56.1C20,56.7 21.3,57.2 22.6,57.6C21.3,57 20.2,56.4 19.1,55.6C11.2,50.4 6.9,41.4 7.6,32.5C7.7,31.4 7.8,30.4 8,29.3C8.4,27.4 9.1,25.4 10,23.6C9.3,25.2 10.4,22.7 11.9,20.5C16.2,13.4 24.1,9.1 32.5,9.7C33.9,9.8 35.3,10 36.7,10.3C36.6,9.9 40.4,11.1 43.7,13.1C50.5,16.9 54.9,24.2 54.5,32.5A5,6 0,0,0 64.5,32.5z' fill='%23888' /%3E%3C/svg%3E");
}
.savesuccess::before {
	content: "\2713";
	color: #00bb00;
}
@keyframes fadeout {
	to {opacity: 0;}
}
.fadeout {
	opacity: 0;
	transition: opacity .6s 3s;
}
