@font-face {
	font-family: "Open Sans";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("/fonts/open-sans-latin-400-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, 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: 700;
	font-display: swap;
	src: url("/fonts/open-sans-latin-700-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Open Sans Condensed";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("/fonts/open-sans-condensed-latin-700-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Raleway";
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url("/fonts/raleway-latin-600-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Merriweather";
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url("/fonts/merriweather-latin-300-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Merriweather";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("/fonts/merriweather-latin-700-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Lato";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("/fonts/lato-latin-400-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Lato";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("/fonts/lato-latin-700-normal.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	--pageBackground: #ffffff;
	--pageBackgroundImage: none;
	--textColor: #1f2933;
	--linkColor: #1f4e79;
	--headingColor: var(--textColor);
	--bodyFont: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	--headingFont: var(--bodyFont);
	--navFont: var(--bodyFont);
	--contentWidth: 960px;
	--accentColor: #1f4e79;
	--accentTextColor: #ffffff;
	--headerBackground: #ffffff;
	--headerTextColor: #1f2933;
	--headerLinkColor: #1f4e79;
	--panelBackground: #eef4fa;
	--borderColor: #d0d7de;
	--footerTextColor: #4a5562;
	--sectionBackground: transparent;
	--sectionTextColor: var(--textColor);
	--sectionLinkColor: var(--linkColor);
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

body {
	margin: 0;
	font-family: var(--bodyFont);
	font-size: 1rem;
	line-height: 1.5;
	color: var(--textColor);
	background-color: var(--pageBackground);
	background-image: var(--pageBackgroundImage);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	background-attachment: fixed;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--headingFont);
	color: var(--headingColor);
}

#siteHeader :is(h1, h2, h3, h4, h5, h6),
#siteFooter :is(h1, h2, h3, h4, h5, h6) {
	color: inherit;
}

a {
	color: var(--linkColor);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
fieldset:focus-visible,
summary:focus-visible,
#siteMain:focus-visible,
.tableScroll:focus-visible {
	outline: 3px solid var(--accentColor);
	outline-offset: 2px;
}

button,
input,
select,
textarea {
	min-height: 24px;
	min-width: 24px;
	font: inherit;
}

button {
	padding: 6px 14px;
	border: 1px solid var(--accentColor);
	border-radius: 4px;
	color: var(--accentTextColor);
	background: var(--accentColor);
	cursor: pointer;
}

.skipLink {
	position: absolute;
	left: 8px;
	top: -48px;
	z-index: 10;
	padding: 8px 12px;
	color: var(--accentTextColor);
	background: var(--accentColor);
}

.skipLink:focus {
	top: 8px;
	outline: 3px solid #ffffff;
	outline-offset: 2px;
	box-shadow: 0 0 0 2px #1f2933;
}

#siteHeader {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 16px;
	padding: 12px 16px;
	font-weight: 600;
	color: #ffffff;
	background: #1f4e79;
}

.areaAdmin #siteHeader {
	background: #3d2c5c;
}

#siteHeader a {
	color: #ffffff;
}

#siteHeader a:focus-visible,
#siteHeader button:focus-visible {
	outline-color: #ffffff;
}

#siteName {
	margin-right: auto;
}

#adminNav ul {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

#adminNav a {
	display: inline-block;
	padding: 2px 0;
}

#signedInAs {
	font-weight: 400;
	overflow-wrap: anywhere;
}

#signOutForm {
	margin: 0;
}

#signOutForm button {
	border-color: #ffffff;
	background: transparent;
}

#staffBar {
	flex: 0 0 calc(100% + 32px);
	margin: -12px -16px 0;
	padding: 6px 16px;
	font-weight: 400;
	color: #1f2933;
	background: #fff3c4;
}

#staffBar a {
	color: #1f4e79;
}

#staffBar a:focus-visible {
	outline-color: #1f4e79;
}

#siteMain {
	max-width: var(--contentWidth);
	margin: 0 auto;
	padding: 16px;
	overflow-wrap: anywhere;
}

.areaAdmin #siteMain {
	font-size: 0.875rem;
	font-weight: 400;
}

:where(.areaAdmin #siteMain) h1 {
	font-size: 2rem;
}

:where(.areaAdmin #siteMain) h2 {
	font-size: 1.5rem;
}

:where(.areaAdmin #siteMain) h3 {
	font-size: 1.17rem;
}

:where(.areaAdmin #siteMain) h4 {
	font-size: 1rem;
}

:where(.areaAdmin #siteMain) h5 {
	font-size: 0.83rem;
}

:where(.areaAdmin #siteMain) h6 {
	font-size: 0.67rem;
}

.areaAdmin #siteMain code,
.areaAdmin #siteMain pre {
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

#siteFooter {
	max-width: var(--contentWidth);
	margin: 0 auto;
	padding: 16px;
	border-top: 1px solid var(--borderColor);
	color: var(--footerTextColor);
}

.flashMessage {
	padding: 8px 12px;
	border-left: 4px solid var(--accentColor);
	background: var(--panelBackground);
}

.errorMessage {
	color: #b3261e;
}

.errorMessage a {
	color: inherit;
}

.errorDetail {
	padding: 12px;
	overflow-x: auto;
	white-space: pre-wrap;
	background: #eef1f4;
}

.formField label {
	display: block;
	font-weight: 600;
}

.formField input[type="text"],
.formField input[type="email"],
.formField input[type="password"],
.formField input[type="date"],
.formField input[type="tel"],
.formField input[type="url"],
.formField input[type="time"],
.formField textarea,
.formField select {
	width: 100%;
	max-width: 24rem;
	padding: 6px 8px;
	border: 1px solid #6b7785;
	border-radius: 4px;
	background: #ffffff;
}

.formField input[type="checkbox"] {
	vertical-align: middle;
}

.formField input[type="checkbox"] + label {
	display: inline;
	font-weight: 400;
}

.fieldHint {
	display: block;
	font-size: 0.875rem;
	color: #4a5560;
}

.formField input[type="file"] {
	max-width: 100%;
}

fieldset {
	margin: 0 0 16px;
	padding: 8px 16px;
	border: 1px solid var(--borderColor);
	border-radius: 4px;
}

legend {
	padding: 0 4px;
	font-weight: 600;
}

.adminAction {
	margin: 0 0 16px;
	padding-top: 8px;
	border-top: 1px solid var(--borderColor);
}

dl dt {
	font-weight: 600;
}

dl dd {
	margin: 0 0 8px;
}

.tableScroll {
	position: relative;
	max-width: 100%;
	overflow-x: auto;
	overflow-wrap: normal;
}

.tableScroll .infoButton {
	scroll-margin: 8px;
}

table {
	border-collapse: collapse;
	width: 100%;
}

caption {
	padding: 0 0 8px;
	font-weight: 600;
	text-align: left;
}

th,
td {
	padding: 6px 8px;
	border-bottom: 1px solid var(--borderColor);
	text-align: left;
	vertical-align: top;
}

thead th {
	border-bottom: 2px solid #4a5562;
}

.areaAdmin #siteMain .formField label,
.areaAdmin #siteMain legend,
.areaAdmin #siteMain dt,
.areaAdmin #siteMain caption,
.areaAdmin #siteMain th {
	font-weight: 400;
}

#auditPaging a {
	display: inline-block;
	padding: 2px 0;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation: none !important;
		transition: none !important;
		scroll-behavior: auto !important;
	}
}

img {
	max-width: 100%;
	height: auto;
}

.areaPublic #siteHeader {
	color: var(--headerTextColor);
	background: var(--headerBackground);
	border-bottom: 1px solid var(--borderColor);
}

.areaPublic #siteHeader a {
	color: var(--headerLinkColor);
}

.areaPublic #siteHeader a:focus-visible {
	outline-color: var(--headerLinkColor);
}

.areaPublic #staffBar a {
	color: #1f4e79;
}

.areaPublic #staffBar a:focus-visible {
	outline-color: #1f4e79;
}

#siteLogo {
	display: inline-block;
	margin-right: auto;
	line-height: 0;
}

#siteLogo img {
	display: block;
}

#siteNav {
	font-family: var(--navFont);
}

#siteNav ul {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

#siteNav a {
	display: inline-block;
	padding: 4px 0;
}

#siteNav a[aria-current="page"] {
	font-weight: 700;
	text-decoration: none;
	border-bottom: 3px solid var(--headerLinkColor);
}

.inlineFields {
	display: flex;
	flex-wrap: wrap;
	gap: 0 16px;
}

.visuallyHidden,
.hasCrumbs #siteMain h1 {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

.pageSection {
	margin: 0 0 24px;
	padding: 16px;
	color: var(--sectionTextColor);
	background: var(--sectionBackground);
}

.pageSection a {
	color: var(--sectionLinkColor);
}

.pageSection :is(h1, h2, h3, h4, h5, h6) {
	color: inherit;
}

textarea#body,
#yourText,
#revisionText {
	width: 100%;
	max-width: 100%;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 0.875rem;
	line-height: 1.4;
	tab-size: 3;
}

.textProblems {
	margin: 0 0 16px;
	padding: 8px 16px;
	border: 1px solid var(--borderColor);
	border-left: 4px solid #b3261e;
	border-radius: 4px;
}

.textProblems h2 {
	margin: 0 0 4px;
	font-size: 1.125rem;
}

.textProblems ul {
	margin: 0;
	padding-left: 20px;
}

.previewNotice {
	margin: 0 0 16px;
	padding: 8px 12px;
	border-left: 4px solid #8a5a00;
	color: #1f2933;
	background: #fff3c4;
}

.editorHelp {
	margin: 0 0 16px;
	padding: 8px 12px;
	border: 1px solid var(--borderColor);
	border-radius: 4px;
}

.editorHelp summary {
	font-weight: 400;
	cursor: pointer;
}

.statusForm {
	display: inline-block;
	margin: 0 12px 8px 0;
}

.tileGrid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(12rem, 100%), 1fr));
	gap: 12px;
	margin: 0 0 16px;
	padding: 0;
	list-style: none;
}

.imageTile {
	min-width: 0;
	padding: 8px;
	border: 1px solid var(--borderColor);
	border-radius: 4px;
}

.imageTile img {
	display: block;
	width: 100%;
	height: 8rem;
	margin: 0 0 6px;
	object-fit: contain;
	border-radius: 4px;
	background: #f3f4f6;
}

.imageTile a {
	display: block;
	min-height: 24px;
	font-size: 0.875rem;
	overflow-wrap: anywhere;
}

.tileMeta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 4px 8px;
	margin: 2px 0 0;
	font-size: 0.875rem;
	color: #4a5560;
}

.tileMeta .statePill {
	padding: 0 7px;
	font-size: inherit;
}

.usageList {
	margin: 0 0 16px;
}

.imagePreview {
	margin: 0 0 12px;
	padding: 8px;
	border: 1px solid var(--borderColor);
	border-radius: 4px;
	background: #f3f4f6;
}

.imagePreview img {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: 20rem;
	margin: 0 auto;
}

.copyBox {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 2px 6px;
	margin: 0 0 6px;
}

.copyBox .labelLine {
	flex: 1 1 100%;
}

.copyBox input[readonly] {
	flex: 1 1 8rem;
	min-width: 0;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 0.875rem;
}

.copyBox .copyButton {
	flex: none;
	min-height: 30px;
	padding: 2px 10px;
}

#copyStatus {
	min-height: 1.25rem;
	margin: 0;
	font-size: 0.875rem;
}

.panelUsage {
	flex: 1 1 100%;
	min-width: 0;
	font-size: 0.875rem;
	overflow-wrap: anywhere;
}

.panelLabel {
	display: block;
	font-weight: 400;
}

.panelUsage .usageList {
	margin: 4px 0 0;
	padding-left: 16px;
}

.styleAddBar,
.pageListBar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0 0 16px;
}

.styleAddBar input[type="text"],
.pageListBar input[type="text"] {
	flex: 1 1 12rem;
	min-width: 0;
}

.styleAddForm,
.pageAddForm {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
}

.styleAddForm select {
	width: 13rem;
	max-width: 100%;
}

.pageListBar select {
	flex: none;
	width: 170px;
	max-width: 100%;
}

.barSearchForm {
	display: flex;
	flex: 1 1 16rem;
	align-items: center;
	gap: 8px;
	min-width: 0;
	margin: 0;
}

.barSearchForm input[type="search"] {
	flex: 1 1 8rem;
	min-width: 0;
}

.pagerLine {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 4px 16px;
	margin: 0 0 16px;
	font-size: 0.875rem;
}

.pagerLine a + a {
	margin-left: 16px;
}

.dimCell {
	color: #4a5562;
}

.statePill {
	display: inline-block;
	padding: 1px 10px;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 0.875rem;
	white-space: nowrap;
}

.stateActive {
	color: #1e5a2e;
	background: #e6f4ea;
	border-color: #1e5a2e;
}

.stateOff {
	color: #3d4852;
	background: #eef0f2;
	border-color: #3d4852;
}

.stateDefault {
	color: #4a5562;
	background: transparent;
	border: 1px dashed #4a5562;
}

.stateFeatured {
	color: #1f4e79;
	background: #cfe3f7;
	border-color: #1f4e79;
}

.stateLocked {
	color: #6b3f00;
	background: #fdf0d5;
	border-color: #6b3f00;
}

.stateWarn {
	color: #6b3f00;
	background: #fdf0d5;
	border-color: #6b3f00;
}

.dimRow td {
	color: #4a5562;
}

.editLayout {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 16px;
	margin: 0 0 24px;
}

.editMain,
.editPanel {
	min-width: 0;
}

.editPanel {
	position: relative;
	border: 1px solid var(--borderColor);
	border-radius: 4px;
	background: var(--pageBackground);
}

.panelRow {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	padding: 8px 10px;
	border-top: 1px solid var(--borderColor);
}

.panelRow:first-child {
	border-top: 0;
}

.panelRow form,
.panelRow p {
	margin: 0;
}

.panelRow p + p {
	margin-top: 6px;
}

.editPanel .statusForm {
	display: inline-block;
	margin: 0;
}

.editPanel .formField {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
}

.editPanel .formField label {
	font-size: 0.875rem;
}

.editPanel .formField select {
	width: auto;
	max-width: 100%;
	min-width: 0;
	min-height: 30px;
	font-size: 0.875rem;
}

.editPanel .panelCheck {
	flex-wrap: nowrap;
	align-items: flex-start;
}

.editPanel .panelCheck label {
	flex: 1 1 0;
	min-width: 0;
}

.editPanel .panelRow button[type="submit"]:not(.linkButton) {
	padding: 5px 10px;
	font-size: 0.875rem;
}

.flagLine {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	margin: 0 0 6px;
}

.flagActions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 12px;
}

.panelFold {
	flex: 1 1 100%;
}

.panelFold summary {
	color: var(--linkColor);
	text-decoration: underline;
	cursor: pointer;
}

.panelFold .statusForm {
	display: block;
	margin: 8px 0 0;
}

.editPanel .infoTip.infoReady {
	display: contents;
}

.editPanel .infoTip.infoReady .infoBox {
	position: static;
	flex: 1 1 100%;
	width: auto;
	box-shadow: none;
}

.infoLine {
	display: block;
}

@media (min-width: 48rem) {
	.editLayout {
		grid-template-columns: minmax(0, 1fr) 230px;
	}

	.editPanel {
		position: sticky;
		top: 8px;
		align-self: start;
		max-height: calc(100vh - 16px);
		overflow-y: auto;
	}
}

.compactForm .inlineFields {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 0 12px;
}

.compactForm .formField {
	margin: 0 0 6px;
}

.compactForm .formField label {
	margin: 0 0 2px;
	font-size: 0.875rem;
}

.compactForm .formField input[type="text"],
.compactForm .formField input[type="email"],
.compactForm .formField input[type="password"],
.compactForm .formField input[type="tel"],
.compactForm .formField input[type="url"],
.compactForm .formField input[type="date"],
.compactForm .formField input[type="time"],
.compactForm .formField input[type="number"],
.compactForm .formField input[type="color"],
.compactForm .formField input[type="file"],
.compactForm .formField select {
	max-width: 100%;
	min-height: 30px;
	padding: 2px 8px;
}

.formField input.readOnlyField {
	border: 1px dashed #6b7785;
	color: #4a5560;
	background: #f3f4f6;
}

.labelLine {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0 2px;
}

.infoTip {
	flex: 1 1 100%;
}

.infoTip.infoReady {
	position: relative;
	display: inline-block;
	flex: 0 0 auto;
	line-height: 1;
}

.infoBox {
	display: block;
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.4;
	color: #4a5560;
}

.infoTip.infoReady .infoBox {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 5;
	width: 14rem;
	padding: 8px 10px;
	border: 1px solid var(--borderColor);
	border-radius: 4px;
	color: var(--textColor);
	background: #ffffff;
	box-shadow: 0 2px 8px rgba(31, 41, 51, 0.2);
}

.infoTip.infoReady .infoBox.infoRight {
	left: auto;
	right: 0;
}

.infoIcon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	min-width: 24px;
	min-height: 24px;
	padding: 6px;
	border: 0;
	border-radius: 50%;
	color: #1f4e79;
	background: #cfe3f7;
	background-clip: content-box;
	font: italic 700 10px/1 Georgia, "Times New Roman", serif;
	vertical-align: middle;
	cursor: pointer;
}

.labelLine .infoIcon {
	margin: -3px 0;
}

@media (max-width: 39.99rem) {
	.labelLine {
		position: relative;
	}

	.labelLine .infoTip.infoReady {
		position: static;
	}

	.cardHead {
		position: relative;
	}

	.cardHead .infoTip.infoReady {
		position: static;
	}
}

.linkButton,
.infoLink {
	padding: 0;
	border: 0;
	color: var(--linkColor);
	background: none;
	text-decoration: underline;
}

.crumbBar {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 4px 16px;
	margin: 0 0 12px;
	font-size: 0.875rem;
}

.crumbs,
.crumbActions {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}

.crumbs li + li::before,
.crumbActions li + li::before {
	margin: 0 6px;
	color: #4a5562;
}

.crumbs li + li::before {
	content: "\203a";
	content: "\203a" / "";
}

.crumbActions li + li::before {
	content: "\00b7";
	content: "\00b7" / "";
}

.crumbs [aria-current="page"] {
	font-weight: 600;
}

.compactForm .formField textarea {
	display: block;
	max-width: 100%;
}

.charCount {
	margin: 2px 0 8px;
	font-size: 0.875rem;
	text-align: right;
	color: #4a5560;
}

@media (min-width: 40rem) {
	.compactForm .inlineFields {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.compactForm .inlineFieldsThree {
		grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, 0.7fr);
	}

	.compactForm .inlineFieldsThree.inlineFieldsLastWide {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.4fr);
	}
}

.card {
	margin: 0 0 12px;
	padding: 12px;
	border: 1px solid var(--borderColor);
	border-radius: 4px;
	background: var(--pageBackground);
}

.cardNarrow {
	max-width: 22rem;
}

.cardUpload {
	max-width: 26rem;
}

.cardHead {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 8px;
	margin: 0 0 8px;
}

.cardHead h2 {
	margin: 0;
	font-size: 1rem;
}

.cardHead > a {
	margin-left: auto;
}

.panelFacts {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 0 12px;
	margin: 0;
	font-size: 0.875rem;
	overflow-wrap: anywhere;
}

.panelFacts dt {
	position: relative;
	margin: 0;
	font-weight: 400;
	color: #4a5560;
}

.panelFacts dd {
	min-width: 0;
	margin: 0 0 8px;
}

.panelFacts .infoTip.infoReady {
	position: static;
}

.panelFacts .infoIcon {
	margin: -3px 0;
}

@media (min-width: 40rem) {
	.card .panelFacts {
		grid-template-columns: 9rem minmax(0, 1fr);
		gap: 6px 12px;
	}

	.card .panelFacts dd {
		margin: 0;
	}
}

.actionRow {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 8px;
	margin: 8px 0 0;
	font-size: 0.875rem;
}

.actionRow button {
	padding: 5px 10px;
}

.checkGrid fieldset {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

.checkGrid legend {
	float: left;
	margin: 0 4px 2px 0;
	padding: 0;
	font-size: 0.875rem;
}

.checkRow {
	display: flex;
	flex-wrap: wrap;
	clear: both;
	gap: 6px 16px;
}

.checkGrid .formField {
	margin: 0;
	overflow-wrap: anywhere;
}

.checkGrid .formField label {
	margin: 0;
	font-size: 0.875rem;
}

.panelRow .panelFacts {
	flex: 1 1 100%;
	min-width: 0;
	margin-top: 2px;
}

.panelRow .panelFacts dd:last-child {
	margin-bottom: 0;
}

.panelFold .adminAction {
	margin: 8px 0 0;
	padding: 0;
	border: 0;
}

.panelFold .adminAction .formField {
	flex-wrap: nowrap;
	align-items: flex-start;
	margin: 0 0 6px;
}

.panelFold .adminAction .formField label {
	flex: 1 1 0;
	min-width: 0;
}

.ipCell {
	min-width: 8rem;
	max-width: 10rem;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	font-size: 0.875rem;
	overflow-wrap: anywhere;
}

.filterRow {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 8px 12px;
	margin: 0 0 12px;
}

.filterRow .formField {
	margin: 0;
}

.filterRow .formField label {
	margin: 0 0 2px;
	font-size: 0.875rem;
	font-weight: 400;
}

.filterRow .formField input[type="date"],
.filterRow .formField select {
	width: auto;
	max-width: 100%;
	min-height: 30px;
	padding: 2px 8px;
}

.filterRow .filterActions {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 30px;
	margin: 0;
}

.filterRow .filterActions button {
	min-height: 30px;
	padding: 2px 12px;
}

.auditScroll {
	padding-bottom: 9.5rem;
}

#auditTable td:first-child {
	white-space: nowrap;
}

#auditTable .infoTip.infoReady .infoBox {
	left: auto;
	right: 0;
	overflow-wrap: anywhere;
}

.tableScroll + .pagerLine {
	margin-top: 8px;
}

.statTiles {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 12px;
	margin: 0 0 16px;
	padding: 0;
	list-style: none;
}

.statTile {
	min-width: 0;
	margin: 0;
	padding: 10px 12px;
	border: 1px solid var(--borderColor);
	border-radius: 4px;
	overflow-wrap: anywhere;
}

.statNumber {
	display: block;
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.2;
}

.statLabel {
	display: block;
	font-size: 0.875rem;
	color: #4a5562;
}

.statSub {
	display: block;
	margin-top: 4px;
	font-size: 0.875rem;
	color: #4a5562;
}

.dashColumns {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 0 16px;
}

.ruledList {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 0.875rem;
}

.ruledList li {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 4px 12px;
	margin: 0;
	padding: 6px 0;
	border-bottom: 1px solid var(--borderColor);
	overflow-wrap: anywhere;
}

.ruledList li:last-child {
	border-bottom: 0;
}

@media (min-width: 30rem) {
	.statTiles {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 48rem) {
	.statTiles {
		grid-template-columns: none;
		grid-auto-flow: column;
		grid-auto-columns: minmax(0, 1fr);
	}

	.dashColumns {
		grid-template-columns: minmax(0, 1fr) 18.75rem;
	}
}

[hidden] {
	display: none;
}
