/* styles
	#2a363b darkgrey
	#e84a5f darkpink
	#ff847c lightpink
	#1d8896 blue
	#ffebcd alt-light background

	normal-font rgba(0, 0, 0, .65)
	bold-font rgba(0, 0, 0, .8)
	light-font rgba(0, 0, 0, .5)
	v-light-font rgba(0, 0, 0, .3)

	white-font rgba(255, 255, 255, .9)
	light-white-font rgba(255, 255, 255, .8)
	error_text #e84a5f

	large font 1.2rem;
	small_font .8rem

	normal-background #f55f5
	alt-background #ddd
	card borders #ddd
	card background white

	border-radius 2px
	button spacing .2rem

	element max-width 60rem
	standard padding 30px

	standard button spacing .2rem

*/

/* fixes */
/*
	input::-moz-focus-inner{
*/
		/* fixes input elements having different height
		 * to same-styled a elements */
/*
		border: 0;
		padding: 0;
	}
	input[type=submit]{
		-webkit-appearance:none;
	}
*/

:root{
	--background-alt:#FAF9F6;
	--background-dark:#1B2430;
	--background-light:#FAF9F6;
	--content-width: 120rem;
	--content-narrow: 60rem;
	--content-medium: 80rem;
	--content-wide: 160rem;
	--content-horizontal-pad: 2rem;
	--content-vertical-pad: 5rem;
	--text-dark-normal:rgba(0, 0, 0, .7);
	--text-dark-light:rgba(0, 0, 0, .55);
	--text-light-normal:rgba(255, 255, 255, .85);
	--text-light-bold:white;
	--accent-color:#F08255;
	--box-shadow:rgba(149, 157, 165, 0.2) 0px 8px 24px;
	--box-shadow: rgba(100, 111, 124, 0.35) 0px 12px 32px;
	--box-shadow:rgba(0, 0, 0, 0.04) 0px 4px 12px,
	  rgba(0, 0, 0, 0.03) 0px 16px 32px;
	--box-shadow:rgba(80, 90, 100, 0.08) 0px 20px 48px;
	--border-radius-normal:5px;
	--border-radius-sm:2px;
	--section-margin:7rem;
	--card-backround:#FAF9F6;
	--card-border:1px solid rgba(0, 0, 0, .1);
	--card-padding:2rem;
}

/* page setup */
*{
	margin:0;
	padding:0;
	box-sizing:border-box;
	font-family: "Raleway", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	line-height:1.5em;
}
body {
  background: white;
  color: var(--text-dark-normal);
  margin: 0;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
	align-items:center;
}

main {
	flex:1;
	width:100%;
}

main > * {
	padding:0 1rem;
	width:100%;
	max-width:var(--content-width);
	margin:auto;
}
footer{
	padding:3rem 0;
	background:var(--background-dark);
}
footer div{
	padding:0 1rem;
	width:100%;
	max-width:var(--content-width);
	margin:2rem auto;
	color:var(--text-light-normal);
}
footer a{
	color:var(--accent-color);
}

.fullwidth {
	width:100%;
	max-width:100vw;
}

.fullwidth > * {
	max-width:var(--content-width);
	margin:auto;
}

.floatright {
	float:right;
}

.background-alt{
	border-top:1px solid rgba(0, 0, 0, .1);
	border-bottom:1px solid rgba(0, 0, 0, .1);
	background:var(--background-alt);
}

/* base styles */
button{
	border:none;
}
h2{
	font-size:1.8rem;
	font-weight:normal;
	margin-bottom:1rem;
}
h3{
	margin-bottom:1rem;
	font-weight:bold;
	font-size:1.2rem;
	line-height:2rem;
}
p{
	margin-bottom:1rem;
}
li{
	margin-bottom:.5rem;
}

header a{
	font-size:2rem;
	color:var(--text-dark-normal);
	text-decoration:none;
}
header div{
	margin:auto;
	max-width:var(--content-width);
	margin:2rem 0;
	color:var(--text-dark-normal);
	display:flex;
	justify-content:space-between;
}
hr{
	margin:2rem 0;
	background-color:rgba(0, 0, 0, .1);
	border:none;
	height:2px;
}

/* homepage.html */
#hero{
	background-image:linear-gradient(rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0.75)), url('marvin-meyer-SYTO3xs06fU-unsplash.jpg');
	background-size:cover;
	color:var(--text-light-normal);
	margin-bottom:3rem;
	padding-top:2rem;
	padding-bottom:1rem;
}
#hero > *{
	width:100%;
	max-width:var(--content-medium);
	margin:auto;
}
#hero h1{
	margin-top:2rem;
	line-height:4rem;
	font-size:3rem;
	font-weight:200;
	margin-bottom:3rem;
	word-spacing:.15em;
}
#hero-login{
	display:flex;
	justify-content:flex-end;
}
#hero-login form{
	font-size:.9rem;
	border-radius:var(--border-radius-sm);
	background:white;
	padding:1rem;
}
#hero-login-error{
	margin-top:.5rem;
	color:var(--accent-color);
	font-size:1rem;
}
#hero-login label{
	display:block;
	color:var(--text-dark-normal);
}
#hero-login label[for="id_password"]{
	margin-top:.5rem;
}
#hero-login input[type=text],
#hero-login input[type=password]{
	padding:.2rem;
	display:block;
	border:1px solid rgba(0, 0, 0, .25);
	width:100%;
}
#hero-login input[type=submit]{
	background:var(--accent-color);
	margin-left:1rem;
}
#process{
	display:flex;
	flex-direction:column;
	align-items:center;
}
#process > *{
	max-width:var(--content-narrow);
}
#process h2{
	text-align:center;
	margin-bottom:3rem;
}
#process ul{
	text-align:left;
	display:flex;
	gap:1rem;
	justify-content:space-between;
	margin-bottom:var(--section-margin);
	margin-left:0;
}
#process li{
	border-radius:var(--border-radius-normal);
	border:1px solid var(--accent-color);
	box-shadow:var(--box-shadow);
	max-width:40rem;
	flex:1;
	padding:0;
	padding-bottom:1rem;
	list-style:none;
	margin-left:0;
}
#process-list li h3{
	color:var(--text-light-normal);
	background:var(--accent-color);
	font-size:1.5em;
	text-align:left;
	margin:0;
	margin-bottom:2rem;
	padding:1.5rem;
	min-height:7rem;
}
#process-list p{
	padding:0 1.5rem;
	text-align:left;
}
@media(max-width:52rem){
	#process li h3{
		min-height:9.2rem;
	}
}
@media(max-width:40rem){
	#process ul{
		flex-direction:column;
	}
	#process li h3{
		min-height:initial;
	}
}
#dashboard{
	margin-bottom:var(--section-margin) 0;
	padding-bottom:var(--section-margin);
	display:flex;
	flex-direction:column;
	background:#E2E8F0;
}
#dashboard > *{
	margin:auto;
}
#dashboard h2,
#dashboard h3{
	text-align:center;
	line-height:2rem;
	font-size:1.5rem;
	margin:5rem auto;
}
#dashboard h3{
	margin-bottom:3rem;
}
#dashboard-info{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:2rem;
}
#dashboard img{
	width:100%;
	max-width:var(--content-narrow);
	border:2px solid rgba(0, 0, 0, .5);
	border-radius:var(--border-radius-normal);
	margin:auto;
	box-shadow:var(--box-shadow);
}
#dashboard ul{
	font-size:1.2rem;
	display: grid;
	grid-auto-rows:1fr;
	grid-template-columns: repeat(4, 1fr); /* Creates 2 equal columns */
	gap:1rem;
	width:100%;
	max-width:var(--content-narrow);
	
}
@media(max-width:40rem){
	#dashboard ul{
		grid-template-columns: repeat(2, 1fr); /* Creates 2 equal columns */
}
}
@media(max-width:30rem){
	#dashboard ul{
		grid-template-columns: repeat(1, 1fr); /* Creates 2 equal columns */
}
}
#dashboard ul li{
	font-size: 1.1rem;
	font-weight: 500;
	text-align: left;
	background:var(--background-dark);
	color:var(--text-light-bold);
	border-radius:var(--border-radius-normal);
	list-style:none;
	margin:0;
	padding:1rem 1.5rem;
}
#further_information{
	margin:5rem auto;
	max-width:var(--content-medium);
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	gap:5rem;
}
#overview ul{
	font-size:1.2rem;
	margin-bottom:2rem;
}
#overview ul:not(:last-child)::after{
	content:"";
	border-bottom:1px solid rgba(0, 0, 0, .6);
	width:100%;
	display:block;
	margin-top:2rem;
}
#overview li{
	margin-left:1rem;
}
#pricing{
	padding:var(--content-horizontal-pad);
	background:var(--accent-color);
	color:var(--text-light-normal);
	border-radius:var(--border-radius-normal) var(--border-radius-normal) 0 0;
	padding-bottom:5rem;
	position:relative;
	box-shadow:var(--box-shadow);
	min-width:28rem;
}
#pricing h2{
	color:var(--text-light-normal);
	color:var(--text-light-bold);
}
#pricing tr{
	border-bottom:1px solid rgba(255, 255, 255, .4);
	font-size:1.2rem;
}
#pricing tr:last-child{
	border-bottom:none;
}
#pricing th{
	font-weight:normal;
	color:var(--text-light-bold);
	padding:1rem 0;
	padding-right:1rem;
}
#pricing td{
	color:var(--text-light-bold);
	text-align:right;
}
#pricing::after{
	content:"";
	height:0;
	width:0;
	margin:0;
	border-bottom:0 solid transparent;
	border-left:14rem solid transparent;
	border-right:14rem solid transparent;
	border-top:3rem solid var(--accent-color);
	position:absolute;
	top:100%;
	left:0;
}
@media(max-width:60rem){
	#further_information{
		flex-direction:column;
	}
	#pricing{
		margin:0;
		border-radius:0;
		box-shadow:var(--box-shadow);
		min-width:initial;
		width:100%;
	}
	#pricing::after{
		display:none;
	}
	#pricing table{
		width:100%;
	}
	#pricing th{
		word-wrap:break-word;
	}
}






/* end of new homepage css */

a{
	text-decoration:none;
	color:var(--accent-color);
}

/* general */
/*
	html{
		font-size:15px;
		scroll-behavior:smooth;
		height:100%;
	}
	body{
		height:100%;
		font-family:'Trebuchet', sans-serif;
		font-weight:300;
		color:rgba(0,0,0,.65);
		padding:0 30px;
		box-sizing:border-box;
		margin:0 auto;
		background:#f5f5f5;
		line-height:1.4em;
		text-align:center;
		display:flex;
		flex-direction:column;
	}
	p{
		margin:0;
	}
	p + p{
		margin-top:1em;
	}
*/

/* headings */
	h1, h2, h3, h4, h5{
		margin-top:0;
		font-weight:normal;
		line-height:1.4em;
		margin-bottom:2rem;
	}
	h1{
		font-size:1.6rem;
	}
	h2{
		font-size:1.4rem;
	}
	header + h1{
		/* h1 elements for unauthorised users where there is no userbar */
		margin-top:5rem;
	}

/* tables */
table{
	border-collapse:separate;
	border-spacing:0;
}
th, td{
	text-align:left;
	font-weight:normal;
	padding:.5rem;
}
table.table-vertical th{
	padding-left:0;
}
table.table-vertical td:last-of-type{
	padding-right:0;
}
table + .btn{
	margin-top:1rem;
}
.info_table table{
	width:100%;
	margin-bottom:2rem;
}
.info_table th{
	border-bottom:1px solid rgba(0, 0, 0, 1);
}
.info_table td{
	border-bottom:1px dotted #ddd;
}
.info_table th,
.info_table td{
		padding:.5rem;
}
.info_table th:first-child,
.info_table td:first-child{
	padding-left:0;
}
.info_table th:last-child,
.info_table td:last-child{
	padding-right:0;
	text-align:right;
}

/* buttons */
	a{
		text-decoration: none;
		color:#1d8896;
		box-sizing:border-box;
	}
	table a{
		white-space:normal;
	}
	a:hover, input[type=submit]:hover{
		opacity:.7;
	}
	a:active, input[type=submit]:active{
		opacity:1;
		outline:0;
	}
	.btn, input[type=submit]{
		margin:0;
		font-size:.9rem;
		line-height:normal;
		background:var(--accent-color);
		color:rgba(255, 255, 255, .9);
		padding:8px 12px;
		border:none;
		border-radius:2px;
		display:inline-block;
		text-decoration:none;
	}
	a.large,
	input[type=submit].large,
	.landing_section input[type=submit],
	.landing_section .btn{
		font-size:1rem;
		font-family:'Comfortaa';
		padding:15px 20px;
	}
	.btn.alt, input.alt{
		background:#e84a5f;
	}
	.note{
		color:rgba(0, 0, 0, 0.5);
		font-size:.8rem;
	}
	/*
	ul, li{
		padding:0;
		margin:0;
		list-style:none;
	}
*/

/* utility */
	.hidden{
		visibility:hidden;
	}

/* forms */
form th, form td{
	font-weight:normal;
	padding:5px 0;
	}
form > input[type=submit]{
	margin-top:1rem;
}
form label{
	padding-right:.5rem;
}
form input[type=password],
form input[type=email],
form input[type=text],
form select{
	padding:.25rem;
	font-size:1rem;
}
.form_instructions{
	margin-top:2rem;
}

/*
	form{
		margin:0;
		display:inline-block;
		text-align:right;
	}
	form p{
		margin:0;
		margin-bottom:1em;
	}
	form table{
		margin-bottom:5px;
	}
	form th, form td{
		font-weight:normal;
		padding:5px 0;
		text-align:right;
	}
	form th{
		padding:9px 0;
		vertical-align:bottom;
	}
	form label{
		font-size:.8rem;
		white-space:nowrap;
		padding-right:.2em;
	}
	form tr{
		border:none;
	}
	select{
		color:rgba(0, 0, 0, .65);
		font-size:.8rem;
		padding:1px;
	}
	input[type=text],
	input[type=email],
	input[type=password],
	.StripeElement,
	textarea{
		border:1px solid #ddd;
		padding:4px;
		border-radius:2px;
		margin:0;
		box-sizing:border-box;
		font-size:.8rem;
		color:rgba(0, 0, 0, .65);
		width:100%;
		max-width:11rem;
		background:white;
		caret-color:rgba(0, 0, 0, .65);
	}
	input[type=text]:focus,
	input[type=email]:focus,
	input[type=password]:focus,
	.StripeElement--focus,
	textarea:focus{
		border:1px solid rgba(0, 0, 0, .3);
		outline:0;
	}
	#card-errors,
	.errorlist{
		color:#e84a5f;
		font-size:.8rem;
	}
	.errorlist ul{
	}
	.errorlist li{
		text-align:right;
		max-width:14em;
		display:inline-block;
		margin-bottom:2px;
	}
	form h2{
		text-align:left;
		margin-top:1.5rem;
		margin-bottom:.5rem;
	}
	.form_wrapper{
		margin:0 -30px;
	}
	.form_wrapper form, .form_instructions{
		vertical-align:top;
		padding:30px;
	}
	.form_instructions{
		display:inline-block;
		max-width:28em;
		text-align:left;
		color:rgba(0, 0, 0, .5);
	}
	@media(max-width:20rem){
		form td,
		form th,
		form tr{
			display:block;
			text-align:left;
			padding:0;
		}
		form th{
			padding-top:5px;
		}
	}
	.auth_form input[type=text],
	.auth_form input[type=email],
	.auth_form input[type=password]{
		width:100%;
		max-width:15em;
	}
	.auth_form input[type=text],
	.auth_form input[type=email],
	.auth_form input[type=password],
	.auth_form label{
		font-size:1rem;
	}
*/


/* pagination */
	div.pagination{
		margin:1rem 0;
		text-align:right;
	}
	div.pagination span{
		background:var(--accent-color);
	}
	div.pagination .btn{
		font-size:.9rem;
		padding:6px 8px;
	}

/* base.html */
/*
	header{
		text-align:left;
		margin:0 -30px;
		padding:20px 30px 0px 30px;
		background:#e84a5f;
		box-sizing:border-box;
		display:flex;
		flex-wrap:wrap;
		align-items:flex-end;
	}
	header nav{
		text-align:right;
		margin-left:auto;
		position:relative;
		left:20px;
		padding-bottom:5px;
	}
	header a{
		vertical-align:middle;
		font-family:'Comfortaa';
		color:rgba(255, 255, 255, .9);
		font-size:1.8rem;
		text-decoration:none;
		line-height:2rem;
	}
	#home_link{
		padding-bottom:20px;
	}
	header a.btn{
		background:white;
		font-size:.8rem;
		color:rgba(0, 0, 0, .6);
		white-space:nowrap;
		margin-bottom:5px;
	}
*/

/* userbar */
	#userbar{
		text-align:justify;
		font-size:0rem;
		margin-top:20px;
		margin-bottom:30px;
	}
	#userbar::after{
		content:"";
		width:100%;
		display:inline-block;
	}
	#userbar div{
		display:inline-block;
		font-size:1rem;
		vertical-align:top;
	}
	#account_actions a{
		margin-left:1rem;
		text-align:right;
	}
	@media(max-width:40rem){
		#account_actions a{
			display:block;
		}
	}
	ul#messages{
		margin-bottom:10px;
		text-align:right;
		text-align:center;
	}
	#messages li{
		background:#ffebcd;
		color:rgba(0, 0, 0, .5);
		display:inline-block;
		border-radius:2px;
		font-size:.8rem;
		padding:8px 16px;
		border:1px solid #ddd;
		text-align:left;
	}
	#user_actions{
		margin-bottom:var(--section-margin);
		display:flex;
		gap:.2rem;
	}
	#user_actions a{
	}
	@media (max-width:40rem){
		#user_actions{
			display:flex;
			flex-wrap:wrap;
			justify-content:space-between;
		}
		#user_actions a{
			width:49.6%;
		}
	}
	@media (max-width:30rem){
		#user_actions a{
			width:100%;
		}
	}

/* user_home.html */
/*
	.card{
		text-align:left;
		max-width:60rem;
		margin:auto;
	}
	.card h2{
		padding:20px;
		color:rgba(255, 255, 255, .9);
		background:#2a363b;
		margin:0;
	}
	.card_content{
		background:white;
		border:1px solid;
		padding:20px;
	}
	.card_content p{
		max-width:40em;
	}
	.card_footer{
		padding-top:20px;
		font-size:0;
		text-align:justify;
		color:rgba(0, 0, 0, .5);
	}
	.card_footer > div, .card_footer a{
		font-size:1rem;
		display:inline-block;
	}
	.card_footer{
		line-height:2rem;
	}
	.card_footer::after{
		display:inline-block;
		width:100%;
		content:"";
	}
	.card_footer a{
		padding:15px 30px;
		margin-top:10px;
		background:#ff847c;
		line-height:1rem;
	}
	.card_footer div{
		text-align:left;
	}
	@media (min-width:45rem){
		.card{
			font-size:0;
			background:#2a363b;
		}
		.card > div, .card h2{
			display:inline-block;
			box-sizing:border-box;
			vertical-align:top;
		}
		.card > div{
			font-size:1rem;
			width:70%;
		}
		.card h2{
			width:30%;
		}
	}
*/

/* user_details_include.html */
/*
	#screening-user-details{
		text-align:right;
		margin:-10px auto 10px auto;
		max-width:50rem;
	}
*/

/* screening.html */
/*
	#screening-page-title{
		text-align:justify;
	}
	#screening-page-title::after{
		content:"";
		display:inline-block;
		width:100%;
	}
	#screening-page-title span{
		display:inline-block;
		text-align:left;
	}
	form#screening-form{
		display:block;
		margin:auto;
		max-width:50rem;
		padding:0;
	}
	form#screening-form table{
		width:100%;
		border-collapse:separate;
		border-spacing:0 10px;
	}
	form#screening-form td,
	form#screening-form th{
		vertical-align:top;
		background:white;
		color:rgba(0, 0, 0, .65);
		border:1px solid #2a363b;
		box-sizing:border-box;
		padding:20px;
		line-height:1.4rem;
		text-align:left;
	}
	form#screening-form tr{
		box-sizing:border-box;
	}
	form#screening-form td{
		border-left:0;
		text-align:left;
	}
	form#screening-form th{
		border-right:0;
	}
	form#screening-form th label{
		white-space:normal;
	}
	form#screening-form label{
		font-size:1rem;
	}
	form#screening-form li{
		list-style:none;
		margin-left:0;
	}
	form#screening-form ul,
	form#screening-form .errorlist li{
		white-space:nowrap;
	}
	@media(max-width:40rem){
		form#screening-form table{
			border-collapse:collapse;
		}
    form#screening-form table,
    form#screening-form thead,
    form#screening-form th,
    form#screening-form td,
    form#screening-form tr,
    form#screening-form label,
    form#screening-form ul,
    form#screening-form li {
        display:block;
				width:100%;
				border:0;
    }
    form#screening-form td{
			padding-top:0;
		}
		form#screening-form tr{
			background:white;
			margin-top:10px;
			border:1px solid #2a363b;
		}
	}

	form#screening-form input[type=submit]{
		padding:10px 20px;
	}
*/

/* manager_home.html */
#manager_search input[type=text],
#manager_search select{
	padding:.2rem;
	font-size:1rem;
	color:var(--text-dark-normal);
	width:100%;
}
#manager_search table,
#manager_search a,
#manager_search input[type=submit]{
	vertical-align:middle;
	margin-top:0; /* override default form > input top margin */
}
#manager_search table{
	display:inline-block;
	margin-right:.5rem;
}
#manager_search tr{
	display:inline-block;
}
#manager_search th{
	padding-left:0;
}
#manager_search tr:not(:first-child){
	margin-left:1rem;
}
@media(max-width:65rem){
	#manager_search table{
		margin-bottom:1rem;
	}
	#manager_search table,
	#manager_search tr{
		display:block;
	}
	#manager_search tr:not(:first-child){
		margin-left:0rem;
	}
	#manager_search th{
		width:5rem;
	}
	#manager_search input[type=text],
	#manager_search select{
		width:15rem;
	}
}
@media(max-width:27rem){
	#manager_search tr,
	#manager_search th,
	#manager_search td{
		display:block;
	}
}
@media(max-width:35rem){
	#manager_table th,
	#manager_table thead{
		display:none;
	}
	#manager_table tr,
	#manager_table td{
		display:block;
		text-align:left;
	}
	#manager_table tr{
		border:var(--card-border);
		padding:var(--card-padding);
		background:var(--card-background);
		margin-bottom:1rem;
	}
	#manager_table td:last-of-type,
	#manager_table td:first-of-type{
		border-bottom:none;
	}
	#manager_table td{
		text-align:right;
	}
	#manager_table td:first-of-type{
		text-align:left;
	}
	#manager_table td::before{
		content: attr(data-label);
		position:absolute;
		left:3rem;
		width:10rem;
		text-align:left;
}

#manager_intro{
	display:inline-flex;
	max-width:90rem;
	justify-content:center;
	margin:1rem -2rem 4rem -2rem;
}
.manager_intro_section{
	background:white;
	border:1px solid #2a363b;
	display:flex;
	flex-direction:column;
	align-items:left;
	padding-bottom:20px;
	margin:1rem 2rem;
}
.manager_intro_section a{
	margin-top:auto;
	margin-left:auto;
	margin-right:20px;
}
#manager_intro h2{
	width:100%;
	text-align:left;
	box-sizing:border-box;
	background:#2a363b;
	color:white;
	padding:10px 20px;
	font-size:1.2rem;
}
#manager_intro p{
	max-width:30rem;
	text-align:left;
	font-size:.8rem;
	padding-left:20px;
	padding-right:20px;
}
.manager_intro_section p:last-of-type{
	margin-bottom:20px;
}
@media(max-width:50rem){
	#manager_intro{
		flex-wrap:wrap;
	}
}
#manager_intro_table{
	display:block;
	margin:6rem auto;
	max-width:40rem;
	text-align:left;
	color:rgba(0, 0, 0, .5);
	line-height:2em;
}
#manager_intro_table a{
	text-decoration:underline;
	text-underline-position:under;
}

/* user_detail.html */
div#user_detail{
	display:flex;
	gap:1rem;
	align-items:flex-start;
}
.card {
	background:var(--card-background);
	border:1px solid rgba(0, 0, 0, .1);
	border-radius: var(--border-radius-normal);
	padding: 2rem;
	width:100%;
	max-width: 35rem;
}
.card_action{
	margin-top:1rem;
	display:flex;
	justify-content:flex-end;
}
.card_downloads{
	display:flex;
	justify-content:space-between;
}
/* The container card wrapper */
.document-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #FFFFFF; /* Pure white interior card to pop against the off-white background */
	border: 1px solid #EAE7E1;   /* Subtle border matching your existing theme lines */
	border-radius: 6px;         /* Smooth modern corners */
	padding: 12px 16px;
	margin-top: 14px;           /* Gives spacing underneath your "Documents" header */
	box-sizing: border-box;
}
/* Grouping the Icon and Filename together */
.document-info {
	display: flex;
	align-items: center;
	gap: 10px;                  /* Clean gap between the file icon and the text label */
	min-width: 0;               /* Critical CSS safety feature to prevent filename text overflow issues */
}
/* The File Icon styling */
.file-icon {
	width: 18px;
	height: 18px;
	color: #7A7571;             /* Muted gray-brown tone matching your label hierarchy */
	flex-shrink: 0;             /* Forces icon to stay its exact size and never squash */
}
/* The Text Link Filename */
.document-name {
	color: #4A4745;             /* Your dashboard warm charcoal font color */
	font-size: 0.95rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;    /* Safely truncates name if user uploads a massive file title */
}
/* The Outlined Action Button */
.download-btn-secondary {
	color: #FF7A45;             /* Your platform core accent orange */
	border: 1px solid #FF7A45;   /* Clean matching outline border */
	background: transparent;
	padding: 6px 14px;
	border-radius: 4px;
	font-size: 0.85rem;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color 0.15s ease, color 0.15s ease; /* Fluid hover transition */
}
/* Interactive Hover effect to reverse the values */
.download-btn-secondary:hover {
	background-color: #FF7A45;   /* Fills solid with brand orange on mouse-over */
	color: #FFFFFF;             /* Flips text contrast back to white */
}
.card li{
	list-style:none;
	margin-left:0;
}
.card th{
	font-weight:bold;
	padding:0;
	font-size:.9rem;
}
.card td{
	padding:0;
	padding-left:1rem;
}
.card tr:not(last-of-type) td,
.card tr:not(last-of-type) th{
	padding-bottom:.5rem;
}
div#user_detail_status{
	width:100%;
	flex-grow:1;
}
.status_label{
	font-weight:bold;
}
#user_status{
	font-size:1.2rem;
	margin-bottom:1rem;
}
#user_detail_actions time{
	font-weight:bold;
	margin-right:1rem;
}

/* result.html + report_responses.html */
/*
	#report{
		max-width:50rem;
		margin:auto;
		text-align:left;
	}
	#report_actions{
		display:block;
		text-align:right;
		margin:5px 0;
	}
	#report_actions form{
		padding:0;
		margin:0;
	}
	#report_actions input, #report_actions a{
		margin:5px 0;
		line-height:normal;
		padding:12px 16px;
		box-sizing:border-box;
		display:inline-block;
		background:#ff847c;
		font-size:.8rem;
		border-radius:2px;
		color:rgba(255, 255, 255, .9);
	}
	#report table#student_info{
		width:initial;
	}
	#report th{
		font-size:1rem;
	}
	#report h2:first-of-type{
		margin-top:0;
	}
	h2.section_header{
		background:#2a363b;
		padding:10px 20px;
		color:rgba(255, 255, 255, .9);
		font-size:1rem;
		margin-bottom:0;
	}
	#report h2{
		background:#2a363b;
		padding:12px 20px;
		color:rgba(255, 255, 255, .9);
		font-size:1.2rem;
		margin-bottom:0;
		margin-top:1rem;
	}
	#report li{
		list-style:disc outside none;
	}
	div.report_section{
		background:white;
		border:1px solid #2a363b;
		padding:20px;
	}
	div.report_section ul{
		margin:1rem 2rem;
	}
	#report div.report_section li li{
		list-style:circle;
	}
	div.report_strategies{
		margin:-20px;
		margin-top:40px;
		padding:20px;
		padding-top:20px;
		border-top:1px solid #ddd;
		background:#eee;
		color:rgba(0, 0, 0, .60);
	}
	.responses td,
	.responses th{
		background:white;
		color:rgba(0, 0, 0, .65);
		padding:10px 20px;
	}
	.responses td{
		width:6em;
		vertical-align:bottom;
	}
	.responses tr:last-of-type td,
	.responses tr:last-of-type th{
		padding-bottom:20px;
	}
	.responses tr:first-of-type td,
	.responses tr:first-of-type th{
		padding-top:20px;
	}
	.responses tr{
		border:1px solid #2a363b;
		border-bottom:1px solid #ddd;
		border-top:0;
	}
	.responses tr:last-child{
		border-bottom:1px solid #2a363b;
	}
*/

/* report_start.html */
/*
	#report_overview{
		text-align:left;
		margin:auto;
		margin-bottom:2rem;
		max-width:35rem;
	}
	#report_overview p{
		columns:2 30rem;
	}
	#report_overview ul{
		display:block;
	}
	#report_overview li{
		list-style:disc;
		margin:1em 2em;
	}
*/

/* enquiry_form.html */
/*
	#enquiry_form_short{
		width:initial;
	}
	.no_contact_error li{
		max-width:20em;
		text-align:right;
	}
	.enquiry_message_label{
		text-align:left;
		padding:0;
		padding-top:1rem;
		text-align:right;
	}
	textarea#id_message{
		width:100%;
		max-width:20rem;
	}
	#enquiry_section img{
		display:block;
		margin:auto;
		width:100%;
		max-width:30rem;
		margin-top:3rem;
		box-sizing:border-box;
		padding:0 30px;
	}
*/

/* enquiry_sent.html */
/*
	#enquiry-img{
		margin:auto;
		background:#ff847c;
		padding:.7rem;
		box-sizing:border-box;
		width:70%;
		max-width:10rem;
		border-radius:50%;
		margin-bottom:3rem;
	}
	#enquiry-img::after{
		background-image:url('/static/landing_images/undraw_mail_cg1t.svg');
		content:"";
		display:block;
		height:0;
		padding-top:100%;
		background-size:cover;
	}
	.enquiry_text{
		margin:auto;
		margin-bottom:2rem;
		max-width:30rem;
		text-align:left;
	}
*/

/* pricing.html */
/*
	.pricing_info{
		width:100%;
		max-width:35rem;
		display:inline-block;
		margin-bottom:50px;
		vertical-align:top;
		padding:0 30px;
		box-sizing:border-box;
	}
	.pricing_info table{
		margin:auto;
		width:100%;;
		max-width:30em;
		min-width:0;
	}
	.pricing_info h2{
		color:rgba(0, 0, 0, .5);
		font-size:1.2rem;
	}
	#pricing_info_button{
		display:block;
		margin:auto;
		max-width:min-content;
		white-space:nowrap;
	}
*/

/* terms.html */
/*
	#terms_text{
		max-width:50em;
		text-align:left;
		margin:auto;
		font-size:.8rem;
	}
	#terms_text h2{
		font-family:'Trebuchet', sans-serif;
		font-size:1.2rem;
		margin-top:1em;
		margin-bottom:.5em;
		font-weight:normal;
	}
	#terms_text ul{
		margin-left:2rem;
		margin-bottom:.5rem;
	}
	#terms_text li{
		list-style:disc;
	}
	#terms_text p{
		margin:.5rem auto;
	}
*/

/* user_sign_up.html */
/*
	#payment_note{
		text-align:right;
		margin-top:1rem;
	}
	.StripeElement{
		max-width:inherit;
	}
	#payment_instructions,
	#payment-form{
		vertical-align:top;
	}
	#payment_instructions{
		border:1px solid #2a363b;
		padding:0;
		margin:30px;
	}
	#payment_instructions ul,
	#payment_instructions p{
		background:white;
		color:rgba(0, 0, 0, .6);
		margin:0;
		padding:1rem;
	}
	#payment_instructions ul{
		padding-left:2rem;
	}
	#payment_instructions li:not(:last-child){
		margin-bottom:1rem;
	}
	#payment_instructions li strong{
		color:#e84a5f;
		font-weight:normal;
	}
	#payment_instructions p{
		font-size:.8rem;
		color:rgba(0, 0, 0, .5);
		padding-top:0;
	}
	#payment_images{
		font-size:0;
		line-height:0;
	}
	#payment_images img{
		display:inline-block;
		max-width:3rem;
		margin:0;
	}
	#screener-title{
		background:#2a363b;
		color:white;
		padding:1rem;
		font-size:1.2rem;
		font-family:'Comfortaa';
	}
	#price{
		margin-top:2rem;
		font-size:2rem;
		text-align:right;
	}
	#payment-form h2{
		margin:0;
		margin-bottom:3rem;
		color:rgba(0, 0, 0, .5);
	}
	#payment-form_label{
		text-align:left;
		display:block;
	}
	#payment-form ul.errorlist.nonfield{
		display:none;
	}
	#payment-form .form-error, #card-errors{
		margin-top:.4rem;
	}
*/

/* user_welcome.html */
/*
#welcome_image{
	width:100%;
	max-width:20rem;
	margin-bottom:4rem;
}
#welcome_message{
	max-width:30em;
	margin:auto;
}
#welcome_link{
	margin-top:2rem;
}*/

/* login.html */
/*
#login{
	margin-bottom:2rem;
}*/

/* user_confirm_delete.html */
/*
.confirm_delete{
	margin-bottom:2rem;
}*/

/* institution_form.html */
/*
#manager_list_form tr:nth-of-type(3n+3):not(:last-of-type){
	border-bottom:1px solid #ddd;
*/
}
