:root {
	--primary-green: #0a5640;
	--secondary-green: #073926;
	--yellow: #ffc72a;
}

.building-container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1em;
}

#appAdminLogin {
	padding-top: 100px;
	clear: both;
}

.building-selection {
	display: block;
	width: 30%;
	float: left;
}

.list-group-item+.list-group-item {
    border-top-width: 1px;
}

.hint {
	color: #555;
	font-size: 0.9em;
	padding-left: 1em;
}

.req {
	color: #f60;
}

.tiny {
	font-size: 0.8em;
}

ul.t-cayenne-tomany-display {
	/* this gets imported before ToManyViewer.css */
	max-height: none !important;
	overflow-y: visible;
	max-height: none;
	margin: 0 0 0 1em;
}

#rightCol ul li {
	margin-bottom: 0.5em;	
}

#typo3content {
	overflow: visible;
}

div[id^='alert']:empty + h3 {
        margin-top: 0;
}

#corrections {
        color: #000;
        background-color: #eee;
        padding: 1em 1em 1px 1em;
        margin-top: 1em;
}

#corrections a {
        text-decoration: underline;
}

#corrections a:link {
        color: #000;
}

/* Index */
#alphaLinks {
	margin: 1em 0;
	padding: 0;
	display: flex;
	flex-flow: row wrap;
}

#alphaLinks .ndsu-button {
	padding: 1em;
}

.building-container {
	margin: 1rem 0 0;
	display: grid;
	gap: 1em;
	grid-template-columns: 1fr;
	grid-template-rows: auto 1fr;
	grid-template-areas: "image"
				"description";
}

.building-container h4 + * {
	margin-bottom: 1rem;
}

.site-footer-container:last-child > a {
    color: rgba(255, 255, 255, 1);
    font-weight: 400;
    font-size: .875rem;
    text-decoration: none;
}

.site-footer-container:last-child > a:hover {
	color: rgba(255, 196, 37, 1);
	text-decoration: underline;
	text-decoration-color: rgba(255, 196, 37, 1);
}

#leftCol {
	grid-area: description;
}

#rightCol {
	grid-area: image;
}

#rightCol .image-caption {
	margin-top: 2rem;
}

@media screen and (min-width: 940px) {
	.building-container {
		margin: 2rem 0 0;
		display: grid;
		gap: 1em;
		grid-template-columns: 1fr 1fr;
		grid-template-areas: "description image";
	}
	#rightCol .building-img-wrapper {
		width: 100%;
		max-width: 50vw;
	}
}

#buildingList {
	margin-top: 1em;
	padding: 0;
}

#buildingList li p {
	color: #888;
	font-size: 0.8em;
	margin-bottom: 0;
}

/* Edit Department */
#departmentForm fieldset label {
	font-weight: normal;
	display: inline;
}

/* Manage Buildings
   Edit Buildings
   Manage Departments */
#addBuildingForm,
#building,
#departmentForm {
	outline: 1px solid #888;
	background-color: #ddd;
	padding: 5px;
}

#addBuildingForm input[type="text"],
#building input[type="text"],
#departmentForm input[type="text"] {
	width: 20em;
}

#addBuildingForm label,
#addBuildingForm legend,
#building label,
#building legend,
#departmentForm label,
#departmentForm legend {
	font-weight: bold;
}

#addBuildingForm label,
#building label,
#departmentForm label {
	display: inline-block;
	width: 8em;
}

#addBuildingForm fieldset label,
#building fieldset label,
#departmentForm fieldset label {
	font-weight: normal;
}

#addBuildingForm fieldset label.checkbox,
#building fieldset label.checkbox {
	display: inline;
}

.building-img-wrapper {
	aspect-ratio: 16 / 9;
	width: min(100vw - 1em, 600px);
}

.building-img {
	min-width: 100%;
	max-width: 100%;
	object-fit: contain;	
}

@media screen {
	#entryList .mobile-friendly:after {
		content: " " url(https://static.ndsu.edu/templates/images/mobile/icon-mobile-friendly.png);
	}
}

@media print {
	/* always (should probably migrate to ndsu-print.css) */
	.t-data-grid-pager a:after,
	.t-data-grid th a:after,
	a[href="#"]:after,
	/* just this app or maybe always? */
	td.delete a:after,
	td.edit a:after {
		content: "";
	}

	/* attempt to fit wide tables, always */
	.t-data-grid {
		width: 100%;
		table-layout: fixed;
	}
	.t-data-grid td,
	.t-data-grid th {
		word-wrap: break-word;
	}

	/* within this application, attempt to optimize the wide print */
	th.delete,
	td.delete,
	th.edit,
	td.edit {
		display: none;
	}
}