/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

:root {

	--brand-green:#81a53e;
	--brand-green-dark:#506429;
	--brand-green-light:#b9d75f;
	--brand-purple:#7b3895;
	--brand-orange:#f38c16;

	--notice:#c8574b;
	--error:#c8574b;

}

@media all {

	/* ---------------- base ---------------- */

	html {
		height:100%;
	}
	
	body {
		margin:0;
		background-color:#eeeee8;
		color:#222;
		font-family:Raleway,sans-serif;
		font-size:16px;
		font-weight:500;
		line-height:130%;
	}
	
	p {
		margin:0.5em 0;
	}
	
	h1,h2,h3,h4 {
		line-height:105%;
		margin-top:0.75em;
		margin-bottom:0.5em;
	}
	
	h1 {
		font-size:2em;
	}
	
	h2 {
		font-size:1.8em;
	}
	
	h3 {
		font-size:1.6em;
	}
	
	h4 {
		font-size:1.2em;
	}
	
	a {
		color:var(--brand-green-dark);
	}
	
	p:first-child,
	h1:first-child,
	h2:first-child,
	h3:first-child,
	h4:first-child,
	h5:first-child {
		margin-top:0;
	}
	
	p:last-child,
	h1:last-child,
	h2:last-child,
	h3:last-child,
	h4:last-child,
	h5:last-child {
		margin-bottom:0;
	}

	.wip {
		font-size:1.2em;
		font-style:italic;
		line-height:120%;
		color:rgb(7, 164, 211);
	}

	.bg-blue-500 {
		background-color: var(--brand-green) !important;
	}

	.bg-blue-600 {
		background-color: var(--brand-green) !important;
	}

	/* ---------------- buttons ---------------- */

	.box_button {
		display:inline-flex;
		padding:16px 24px;
		background-color:var(--brand-green-dark);
		color:#fff;
		font-weight:700;
		line-height:110%;
		border:none;
		cursor:pointer;
		text-decoration:none;
		border-radius:4px;
	}
	
	.box_button:focus {
		outline:4px solid rgba(50,50,50,0.1);
	}
	
	.box_button.primary {
		
	}
	
	.box_button.subtle {
		background-color:#d0d0c3;
		color:#fff;
	}

	/* ---------------- header ---------------- */

	#header {
		position:relative;
		display:flex;
		align-items:center;
		height:96px;
		padding:0 24px;
		background-color:#fff;
		box-shadow:0 0 8px rgba(0,0,0,0.1);
	}
	
	#header .header_logo {
		display:flex;
		justify-content:space-between;
		align-items:center;
		width:100%;
	}
	
	#header .header_logo .logo {
		
	}
	
	#header .header_logo .logo img {
		width:auto;
		height:64px;
		vertical-align:middle;
	}
	
	#header .header_logo .nav_open {
		padding:8px;
		margin:0 -8px 0 0;
	}
	
	#header .header_logo .nav_open img {
		width:24px;
		height:auto;
	}
	
	#header .header_nav_bg {
		display:none;
		position:fixed;
		z-index:10;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:rgba(0,0,0,0.1);
	}
	
	#header.open .header_nav_bg {
		display:block;
	}
	
	#header .header_nav {
		display:none;
		position:fixed;
		z-index:20;
		top:0;
		right:0;
		bottom:0;
		width:75%;
		background-color:#fff;
		box-shadow:0 0 8px rgba(0,0,0,0.1);
		max-width:384px;
	}
	
	#header.open .header_nav {
		display:block;
	}
	
	#header .header_nav .top {
		display:flex;
		justify-content:flex-end;
		align-items:center;
		height:96px;
		padding:0 24px;
	}
	
	#header .header_nav .top .nav_close {
		padding:10px;
		margin:0 -8px 0 0;
	}
	
	#header .header_nav .top .nav_close img {
		width:20px;
		height:auto;
	}
	
	#header .header_nav .nav {
		padding:16px;
	}
	
	#header .header_nav .nav .nav_breaker{
		display: block;
		background: #c9c9c9;
		width: 1px;
		height: auto;
		margin: 0 15px;
	}

	#header .header_nav .nav .item {
		display:block;
		padding:8px;
		color:var(--brand-green-dark);
		text-decoration:none;
		font-size:16px;
		line-height:105%;
	}
	
	#header .header_nav .utilities {
		padding:0 16px 16px 16px;
	}
	
	#header .header_nav .utilities .item {
		display:flex;
		align-items:center;
		padding:8px;
		color:var(--brand-green-dark);
		text-decoration:none;
		font-size:16px;
		line-height:105%;
	}
	
	#header .header_nav .utilities .item .icon {
		width:16px;
		margin:0 8px 0 0;
	}
	
	#header .header_nav .utilities .item .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	#header .header_nav .utilities .item .text {
		
	}

	#header .header_nav .utilities .item.users{
		border-right: 1px solid #c9c9c9;
		padding-right: 15px;
		margin-right: 12px;
	}

	/* ---------------- footer ---------------- */

	#footer {
		background-color:#e6e6d8;
	}

	/* ---------------- basic structure ---------------- */

	.site_maxwidth {
		position:relative;
	}
	
	.panel_maxwidth {
		width:90%;
		max-width:1600px;
		margin:0 auto;
	}
	
	.panel_padding {
		padding:32px 0;
	}
	
	.page_headline {
		font-size:2.2em;
		color:var(--brand-green-dark);
	}
		
	.section_headline {
		color:var(--brand-green);
	}

	.section_headline.membership_status_headline{
		display: block;
		margin-bottom: -10px;
	}
		
	.page_subline {
		display:flex;
		flex-wrap:wrap;
		font-size:1.1em;
		line-height:110%;
		color:var(--brand-green);
		margin:16px 0;
	}
	
	.page_subline .item {
		color:var(--brand-green);
		margin:2px 0;
	}
	
	.page_subline .divider {
		margin:2px 8px;
		color:#999;
	}
	
	.page_intro {
		margin:0 0 2em 0;
	}
		
	.main_with_sidebar {
		position: relative;
		overflow: hidden;
		display:flex;
		flex-direction:column;
	}
	
	.main_with_sidebar .main {
		min-height:50vh;
	}
	
	.main_with_sidebar .sidebar {
		position: absolute;
		background-color:#eaeae1;
		padding: 0;
		position: absolute;
		right: 0;
		height: 100%;
		box-shadow: -5px 0 5px rgb(197 197 195 / 30%);
		transition-duration: .2s;
		width: 260px;
		right: -260px;
	}

	.main_with_sidebar .sidebar a.arrow{
		position: absolute;
		top: 25px;
		background-color: var(--brand-green-dark);
		height: 110px;
		width: 34px;
		left: -34px;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 10px 0 0 10px;
		transition-duration: .2s;
	}

	.main_with_sidebar .sidebar a.arrow:hover{
		background-color: #85936b;
		cursor: pointer !important;
	}

	.main_with_sidebar .sidebar a.arrow img{
		display: block;
		width: 10px;
		margin-bottom: 2px;
		height: auto;
		cursor: pointer !important;
	}

	.main_with_sidebar .sidebar .sidebar_priorities{
		padding: 40px 30px;
	}

	.main_with_sidebar.show_sidebar .sidebar{
		right: 0;
	}
	
	.main_panel {
		padding:24px;
		border-top:1px solid rgba(80,100,41,0.3);
	}
	
	.main_panel:first-child {
		border:none;
	}

	.field_group {
		border:1px solid rgba(80,100,41,0.3);
		padding:16px;
		margin:16px -16px;

		background-color: #f9f9f9;
		border-radius: 20px;
		margin: 20px 4%;
		border: none;
	}

	.field_group h2.section_headline{
		margin-bottom: 10px;
	}

	/* ---------------- account ---------------- */

	.account_form {
		
	}
	
	.account_form .row {
		display:flex;
		flex-direction:column;
		margin:0 -8px;
	}
	
	.account_form .row .col {
		margin:8px;
	}
	
	.account_form label {
		display:block;
		margin-bottom:4px;
	}
	
	.account_form label.checkbox {
		display:flex;
		align-items:center;
		margin:0;
		padding:4px 0;
	}
	
	.account_form label.checkbox input {
		margin-right:8px;
	}
	
	.account_form input[type='text'],
	.account_form input[type='email'],
	.account_form input[type='number'],
	.account_form input[type='password'] {
		box-sizing:border-box;
		width:100%;
		border:1px solid #ccc;
		border-bottom-width:2px;
		border-radius:4px;
		background-color:#fff;
		padding:0 12px;
		height:40px;
	}
	
	.account_form input[type='text']:focus,
	.account_form input[type='email']:focus,
	.account_form input[type='number']:focus,
	.account_form input[type='password']:focus {
		border-color:var(--brand-green-dark);
		outline:4px solid rgba(100,100,100,0.1);
		box-shadow:none;
	}
	
	.account_form input[type='text']:invalid:focus,
	.account_form input[type='email']:invalid:focus,
	.account_form input[type='number']:invalid:focus,
	.account_form input[type='password']:invalid:focus {
		border-bottom-color:var(--error);
	}
	
	.account_form .error_message {
		padding:16px;
		background-color:var(--error);
		color:#fff;
		font-weight:700;
		margin:8px 0;
	}
	
	.account_box {
		background-color:#f9f9f4;
		padding:16px 24px;
		max-width:768px;
		margin-bottom:16px;
	}
	
	.account_menu {
		
	}
	
	.account_menu .item {
		display:flex;
		padding:16px;
		background-color:#f5f5f5;
		margin:0 0 8px 0;
		text-decoration:none;
	}
	
	.account_menu .item .icon {
		display:flex;
		justify-content:center;
		align-items:center;
		flex:0 0 16px;
		margin:0 12px 0 0;
	}
	
	.account_menu .item .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.account_menu .item .label {
		font-size:1.1em;
		line-height:120%;
	}

	/* ---------------- editing ---------------- */

	.edit_form {
		
	}
	
	.edit_form .row {
		display:flex;
		flex-direction:column;
		margin:0 -8px;
	}
	
	.edit_form .row .col {
		margin:16px 8px;
	}
	
	.edit_form .row .col.tiny {
		min-width:64px;
		max-width:96px;
	}

	.edit_form .row .col.email-notif-preference h3{
		font-size: 16px;
		font-weight: 700;
		color: var(--brand-green-dark);
		margin: 0;
	}

	.edit_form .row .col.email-notif-preference p.s2{
		font-size: 14px;
		font-style: oblique;
		color: #9b9b9b;
		display: block;
		margin: .5em 0 0;
	}

	.edit_form .row .col.email-notif-preference p.s3{
		font-weight: 600;
		color: #808080;
	}

	.edit_form .row .col.mc-subscribe-status{
		cursor: not-allowed;
	}

	.edit_form .row .col.mc-subscribe-status h3{
		font-size: 16px;
		font-weight: 700;
		color: var(--brand-green-dark);
		margin: 0;
	}

	.edit_form .row .col.mc-subscribe-status p.s1{
		font-size: 14px;
		font-style: oblique;
		color: #9b9b9b;
	}

	.edit_form .row .col.mc-subscribe-status p.s2{
		display: flex;
		align-items: center;
		flex-wrap: nowrap;
	}

	.edit_form .row .col.mc-subscribe-status p.s2 img{
		display: block;
		object-fit: contain;
		width: 25px;
		height: 25px;
		margin-right: 10px;
	}

	.edit_form .row .col.mc-subscribe-status p.s2 span{
		font-weight: 600;
		color: #808080;
	}

	/* ---- edit field ---- */
	
	.edit_form .edit_field {
		position:relative;
		display:block;
	}
			
	.edit_form .edit_field .label {
		display:block;
		margin:0 0 4px 0;
		font-weight:700;
		color:var(--brand-green-dark);
	}

	.edit_form .edit_field .label.inline_status {
		display:flex;
		justify-content:space-between;
	}
	
	.edit_form .edit_field .field {
		display:flex;
		background-color:#fff;
		height:48px;
	}
		
	.edit_form .edit_field.focus .field {
		outline:2px solid rgba(0,0,0,0.25);
	}
	
	.edit_form .edit_field[data-status='saving'] .field {
		background-color:#fbfbf8;
	}
	
	.edit_form .edit_field .field .icon {
		display:flex;
		justify-content:center;
		align-items:center;
		width:40px;
		flex:0 0 40px;
	}
	
	.edit_form .edit_field .field .no_icon_spacer {
		width:16px;
		flex:0 0 16px;
	}
	
	.edit_form .edit_field .field .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.edit_form .edit_field .field .input {
		padding:0;
		background-color:transparent;
		border:none;
		width:100%;
		flex:1 1 auto;
		font-weight:500;
		line-height: 140%;
		font-family: sans-serif;
		color: #777777;
	}
	
	.edit_form .edit_field .field .input:focus {
		border:none;
		outline:none;
		box-shadow:none;
	}
	
	.edit_form .edit_field .status {
		display:flex;
		justify-content:center;
		align-items:center;
		position:relative;
		width:40px;
		flex:0 0 40px;
	}
	
	.edit_form .edit_field .status .status_icon {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	/* ---- textarea ---- */
	
	.edit_form .edit_field.textarea .field {
		position: relative;
		height: auto;
		min-height: 32px;
		max-height: 150px;
		padding:16px 0;
	}
	
	.edit_form .edit_field.textarea .field .input {
		resize:vertical;
		min-height: 30px;
		max-height: 300px;
		margin-right: 16px;
		line-height: 140%;
		font-family: sans-serif;
		color: #777777;
	}

	.edit_form .edit_field.textarea .field .status{
		position: absolute;
		right: 0;
	}
	
	.edit_form .edit_field.textarea.richtextarea .field {
		min-height:auto;
		padding:0;
	}
	
	.edit_form .edit_field.textarea.richtextarea .field .quill {
		width:100%;
	}
	
	.edit_form .edit_field.textarea.richtextarea .field .quill .ql-toolbar {
		border:none;
		padding:8px 0;
		border-bottom:1px solid #ddd;
	}
	
	.edit_form .edit_field.textarea.richtextarea .field .quill .ql-toolbar button.ql-active {
		background-color:#ddd;
	}
	
	.edit_form .edit_field.textarea.richtextarea .field .quill .ql-toolbar button:hover,
	.edit_form .edit_field.textarea.richtextarea .field .quill .ql-toolbar button.ql-active:hover{
		background-color:#eaeae7;
	}
	
	.edit_form .edit_field.textarea.richtextarea .field .quill .editor {
		width:100%;
		height:auto;
	}
	
	.edit_form .edit_field.textarea.richtextarea .field .quill .ql-container {
		border:none;
		padding:0;
	}
	
	.edit_form .edit_field.textarea.richtextarea .field .quill .ql-editor {
		padding:8px 0;
		height:auto;
		min-height:64px;
	}
	
	.edit_form .edit_field.textarea.richtextarea .field .input {
		display:none;
	}

	/* ---- checkboxes ---- */

	.edit_form .edit_checkboxes {
		position:relative;
		display:block;
	}
			
	.edit_form .edit_checkboxes .label {
		display:block;
		margin:0 0 4px 0;
		font-weight:700;
		color:var(--brand-green-dark);
	}

	.edit_form .edit_checkboxes .label.inline_status {
		display:flex;
		justify-content:space-between;
	}

	.edit_form .edit_checkboxes .status {
		display:flex;
		justify-content:center;
		align-items:center;
		position:relative;
		width:40px;
		flex:0 0 40px;
	}

	.edit_form .edit_checkboxes .status .status_icon {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		mix-blend-mode:multiply;
	}

	.edit_form .edit_checkboxes .checkboxes .checkbox {
		font-size: 14px;
		box-sizing:border-box;
		display:flex;
		align-items:center;
		padding:12px;
		background-color:#f7f7f1;
		line-height:110%;
		margin:0 0 8px 0;
	}

	.edit_form .edit_checkboxes .checkboxes .checkbox:active {
		box-shadow:inset 1px 1px 8px rgba(0,0,0,0.1);
	}

	.edit_form .edit_checkboxes .checkboxes .checkbox.checked {
		background-color:var(--brand-green);
		color:#fff;
		box-shadow:inset 1px 1px 8px rgba(0,0,0,0.1);
	}

	.edit_form .edit_checkboxes .checkboxes .checkbox .input {
		margin:0 8px 0 0;
	}

	/* ---- edit tags checkboxes ---- */

	.edit_form .edit_tags_checkboxes {
		position:relative;
		display:block;
	}
			
	.edit_form .edit_tags_checkboxes .label {
		display:block;
		margin:0 0 4px 0;
		font-weight:700;
		color:var(--brand-green-dark);
	}

	.edit_form .edit_tags_checkboxes .label.inline_status {
		display:flex;
		justify-content:space-between;
	}

	.edit_form .edit_tags_checkboxes .status {
		display:flex;
		justify-content:center;
		align-items:center;
		position:relative;
		width:40px;
		flex:0 0 40px;
	}

	.edit_form .edit_tags_checkboxes .status .status_icon {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		mix-blend-mode:multiply;
	}

	.edit_form .edit_tags_checkboxes .checkboxes .checkbox {
		box-sizing:border-box;
		display:flex;
		align-items:center;
		padding:12px;
		background-color:#f7f7f1;
		line-height:110%;
		margin:0 0 8px 0;
		font-size: 14px;
	}

	.edit_form .edit_tags_checkboxes .checkboxes .checkbox:active {
		box-shadow:inset 1px 1px 8px rgba(0,0,0,0.1);
	}

	.edit_form .edit_tags_checkboxes .checkboxes .checkbox.checked {
		background-color:var(--brand-green);
		color:#fff;
		box-shadow:inset 1px 1px 8px rgba(0,0,0,0.1);
	}

	.edit_form .edit_tags_checkboxes .checkboxes .checkbox .input {
		margin:0 8px 0 0;
	}

	.edit_form .edit_tags_checkboxes .checkboxes .new_checkbox {
		box-sizing:border-box;
		display:inline-flex;
		background-color:#f7f7f1;
		line-height:110%;
	}

	.edit_form .edit_tags_checkboxes .checkboxes .new_checkbox.focus {
		background-color:#fff;
	}

	.edit_form .edit_tags_checkboxes .checkboxes .new_checkbox .text {
		padding:12px 8px 12px 12px;
	}

	.edit_form .edit_tags_checkboxes .checkboxes .new_checkbox .input {

	}

	.edit_form .edit_tags_checkboxes .checkboxes .new_checkbox .input input[type='text'] {
		box-sizing:border-box;
		width:160px;
		height:100%;
		padding:0;
		border:none;
		background-color:transparent;
	}

	.edit_form .edit_tags_checkboxes .checkboxes .new_checkbox .input input[type='text']:focus {
		border:none;
		outline:none;
		box-shadow:none;
	}
	
	/* ---- contact history ---- */
	
	.contact_history_edit {
		text-align:right;
		margin:0 0 8px 0;
	}

	.contact_history_edit .button {
		display:inline-block;
		padding:8px;
		border:1px solid var(--brand-green);
		color:var(--brand-green);
		background-color:transparent;
		text-decoration:none;
		line-height:110%;
	}

	.contact_history {
		width:100%;
		border-collapse:collapse;
	}
	
	.contact_history.compact thead td {
		position:relative;
	}
	
	.contact_history thead {
		display:none;
	}
	
	.contact_history.compact thead {
		display:table-header-group;
	}
	
	.contact_history thead td .show_more {
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		left:0;
		display:flex;
		justify-content:center;
		align-items:center;
		background-color:var(--brand-green-dark);
		color:#fff;
		text-decoration:none;
	}
		
	.contact_history.compact tbody tr {
		display:table-row;
	}
	
	.contact_history.compact tbody tr:nth-last-child(n+6) {
		display:none;
	}
	
	.contact_history td {
		padding:8px;
		background-color:#fbfbf8;
		border-bottom:1px solid #d0d0c0;
		font-size: 16px;
		font-weight: 500;
        line-height: 140%;
		font-family: Raleway, sans-serif;
	}
	
	.contact_history tr:nth-child(2n) td {
		background-color:#f7f7f1;
	}
	
	.contact_history td.date {
		width:160px;
	}
	
	.contact_history td.notes {
		width:auto;
	}
	
	/* ---- edit entry link ---- */
	
	.edit_form .edit_entry_link,
	.edit_form .edit_author_link {
		
	}
	
	.edit_form .edit_entry_link .label,
	.edit_form .edit_author_link .label {
		display:block;
		margin:0 0 4px 0;
		font-weight:700;
		color:var(--brand-green-dark);
	}
	
	.edit_form .edit_entry_link .field,
	.edit_form .edit_author_link .field {
		display:flex;
		background-color:#fbfbf8;
		height:48px;
		border:1px solid transparent;
		overflow:hidden;
	}
	
	.edit_form .edit_entry_link.focus .field,
	.edit_form .edit_author_link.focus .field {
		outline:2px solid rgba(0,0,0,0.25);
	}
	
	.edit_form .edit_entry_link[data-status='saving'] .field,
	.edit_form .edit_author_link[data-status='saving'] .field {
		background-color:#eaeae1;
	}
	
	.edit_form .edit_entry_link .field .icon,
	.edit_form .edit_author_link .field .icon {
		display:flex;
		justify-content:center;
		align-items:center;
		width:40px;
		flex:0 0 40px;
	}
	
	.edit_form .edit_entry_link .field .no_icon_spacer,
	.edit_form .edit_author_link .field .no_icon_spacer {
		width:16px;
	}
	
	.edit_form .edit_entry_link .field .icon img,
	.edit_form .edit_author_link .field .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.edit_form .edit_entry_link .field .change,
	.edit_form .edit_author_link .field .change {
		display:flex;
		align-items:center;
		flex:1 1 auto;
		text-decoration:none;
		color:#222;
	}
	
	.edit_form .edit_entry_link .field .change .current,
	.edit_form .edit_author_link .field .change .current {
		display:block;
	}
	
	.edit_form .edit_entry_link .field .change .empty,
	.edit_form .edit_author_link .field .change .empty {
		display:none;
	}
	
	.edit_form .edit_entry_link .status,
	.edit_form .edit_author_link .status {
		display:flex;
		justify-content:center;
		align-items:center;
		position:relative;
		width:40px;
		flex:0 0 40px;
	}
	
	.edit_form .edit_entry_link .status .status_icon,
	.edit_form .edit_author_link .status .status_icon {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
		mix-blend-mode:multiply;
	}
	
	.edit_form .edit_entry_link .field .remove,
	.edit_form .edit_author_link .field .remove {
		display:flex;
		justify-content:center;
		align-items:center;
		width:40px;
		flex:0 0 40px;
		text-decoration:none;
		color:#222;
	}
	
	.edit_form .edit_entry_link .field .view,
	.edit_form .edit_author_link .field .view {
		display:flex;
		justify-content:center;
		align-items:center;
		width:40px;
		flex:0 0 40px;
		text-decoration:none;
		color:#222;
	}
	
	.edit_form .edit_entry_link .field .view img,
	.edit_form .edit_author_link .field .view img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.edit_form .edit_entry_link[data-has-value='0'] .field,
	.edit_form .edit_author_link[data-has-value='0'] .field {
		background-color:#eeeee8;
		border:1px dashed #666;
	}
	
	.edit_form .edit_entry_link[data-has-value='0'] .field .change,
	.edit_form .edit_author_link[data-has-value='0'] .field .change {
		color:#999;
		justify-content:center;
	}
	
	.edit_form .edit_entry_link[data-has-value='0'] .field .change .current,
	.edit_form .edit_author_link[data-has-value='0'] .field .change .current {
		display:none;
	}
	
	.edit_form .edit_entry_link[data-has-value='0'] .field .change .empty,
	.edit_form .edit_author_link[data-has-value='0'] .field .change .empty {
		display:block;
	}
	
	.edit_form .edit_entry_link[data-has-value='0'] .field .remove,
	.edit_form .edit_author_link[data-has-value='0'] .field .remove {
		display:none;
	}
	
	.edit_form .edit_entry_link[data-has-value='0'] .field .view,
	.edit_form .edit_author_link[data-has-value='0'] .field .view {
		display:none;
	}

	.membership_status {
		display:inline-flex;
		align-items:center;
		background-color:transparent;
		padding: 12px;
		/*margin-left: -12px;
		margin-bottom: -22px;*/
	}

	.membership_status .col_icon {
		display:flex;
		justify-content:center;
		align-items:center;
		width:24px;
		height:24px;
		border-radius:50%;
		background-color:rgba(0,0,0,0.1);
		margin-right:12px;
	}

	.membership_status .col_icon .icon {
		width:auto;
		height:auto;
		max-width:12px;
		max-height:12px;
	}

	.membership_status .col_text {
		
	}

	.membership_status[data-status='none'] .col_icon .icon {
		opacity:0.25;
	}

	.membership_status[data-status='none'] .col_text {
		opacity:0.25;
	}

	.membership_status[data-status='pending'] .col_icon {
		background-color:#e3c63e;
		background-color:#f0e2a0;
	}

	.membership_status[data-status='active'] .col_icon {
		background-color:#81a53e;
		background-color:#b4e161;
	}

	.membership_status[data-status='expired'] .col_icon {
		background-color:#9d3b31;
		background-color:#e88d84;
	}

	.membership_status[data-status='needsaction'] .col_icon {
		background-color: #ffd03c;
	}

	.membership_status[data-status='pending'] .col_icon .icon,
	.membership_status[data-status='active'] .col_icon .icon,
	.membership_status[data-status='expired'] .col_icon .icon {
		
	}

	.membership_status.large {
		
	}

	.membership_status.large .col_icon {
		width:32px;
		height:32px;
		margin-right:16px;
	}

	.membership_status.large .col_icon .icon {
		max-width:16px;
		max-height:16px;
	}

	.membership_status.large .col_text {
		font-size:1.2em;
		line-height:110%;
		font-weight:700;
	}

	.membership_status_notes p{
		font-size: 15px;
		max-width: 580px;
		line-height: 160%;
		color: var(--brand-green-dark);
	}

	/* ---------------- tables ---------------- */

	.table_wrap {
		width:100%;
		overflow-x:auto;
	}
	
	.table {
		width:100%;
		border-collapse:collapse;
		border-radius: 10px;
		overflow-x: auto; 
	}
	
	.table tr {
		position:relative;
	}
	
	.table a {
		text-decoration:none;
	}
	
	.table .link_text {
		display:inline-block;
		padding:12px;
		margin:0;
	}
	
	.table thead th,
	.table tbody td {
		position:relative;
		white-space:nowrap;
		text-align:left;
		font-size:0.9em;
		padding: 0;
	}
	
	.table thead th {
		position:relative;
		background-color:var(--brand-green-dark);
		color:#fff;
		font-weight:500;
		padding-right:24px;
	}


	.table thead th p{
		padding: 12px;
	}

	.table thead th:before {
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		left:0;
		display:block;
		content:'';
		background-color:#fff;
		opacity:0;
	}
	
	.table thead th.sorting:before {
		opacity:0.2;
	}
	
	.table thead th.sorting:after {
		position:absolute;
		display:block;
		content:'▼';
		font-size:0.5em;
		top:50%;
		right:16px;
		transform:translateY(-50%);
	}
	
	.table thead th.sorting.desc:after {
		content:'▲';
	}
	
	.table thead th.col_id {
		display: flex;
		align-items: center;
		justify-content: center;
		text-align:center;
		padding: 0;
		flex: 0 0 80px;
	}

	.table thead th.col_name {
		display: flex;
		align-items: center;
	}

	.table thead th.col_membership_status span,
	.table thead th.col_organisation_type span,
	.table thead th.col_membership_type span,
	.table thead th.col_membership_duration span,
	.table thead th.col_sent_date span,
	.table thead th.col_role span,
	.table thead th.col_organisation span,
	.table thead th.col_date.start span,
	.table thead th.col_date.expiry span{
		display: block;
		font-size: 12px;
		line-height: 100%;
		opacity: .5;
	}

	.table tbody td {
		background-color:#ffffff;
	}


	/*
	.table tbody td.col_membership_status{
		max-width: 110px;
	}
	.table tbody td.col_membership_type{
		max-width: 110px;
	}
	.table tbody td.col_role {
		max-width: 200px;
	}
	.table tbody td.col_organisation{
		max-width: 200px;
	}*/

	.table tbody tr{
		display: flex;
		flex-wrap: nowrap;
		width: 100%;
	}
	
	.table tbody td{
		display: flex;
		flex: auto;
		align-items: center;
	}

	.table tbody td p{
		padding: 12px;
		cursor: default;
	}
	
	.table tbody tr:nth-child(2n) td {
		background-color:#f7f7f1;
	}
	
	.table tbody td.col_id {
		padding: 0 !important;
		margin: 0 !important;
		justify-content: center;
		text-align: center;
		overflow: hidden;
		font-size: 12px;
		font-weight: 600;
		flex: 0 0 80px;
	}

	.table tbody td.col_id a {
		padding: 0 5px;
		margin: 0;
	}
	
	.table tbody td.col_id:before {
		position:absolute;
		display:block;
		content:'';
		top:0;
		bottom:0;
		left:0;
		width:4px;
		background-color:transparent;
	}
		
	.table tbody .col_spacer {
		width:100%;
	}

	/*-- table flexes --*/
	.table th,
	.table td{
		overflow: hidden;
	}
	
	.table .col_name{
		flex: 0 0 280px;
	}

	.table .col_organisation_type{
		flex: 0 0 160px;
	}

	.main_membership_application .table .col_organisation_type{
		flex: 0 0 160px;
	}

	.table .col_membership_status{
		flex: 0 0 140px;
	}

	.table .col_membership_type{
		flex: 0 0 140px;
	}

	.table .col_membership_duration{
		flex: 0 0 140px;
	}

	.table .col_sent_date{
		flex: 0 0 260px;
	}

	.table .col_sent_date .day_count{
		background-color: rgb(148, 206, 235);
		padding: 5px;
		border-radius: 10px;
		font-size: 12px;
		margin-left: 10px;
	}

	.table .col_membership_duration span.required{
		color: #d24545;
		font-size: 12px;
		font-weight: 600;
	}

	.table .col_role{
		flex: 0 0 140px;
	}

	.table .col_organisation{
		flex: 0 0 200px;
	}

	.table .col_action.view{
		flex: 0 0 100px;
	}

	.table .col_date{
		flex: 0 0 140px;
	}

	.main_membership_application .table .col_date{
		flex: 0 0 160px;
	}

	.table td.col_date.start{
		color: #fff;
		background: #81a63e;
	}

	.table td.col_date.expiry.soon{
		color: #000;
		background: #fbff00;
	}

	.table td.col_date.expiry{
		color: #fff;
		background: #d24545;
	}

	.table .col_action.view a{
		margin-left: auto;
		margin-right: 10px;
	}

	.table .col_action.approve{
		flex: 0 0 170px;
	}

	.table .col_action.approve a{
		margin-left: auto;
		margin-right: 10px;
	}

	.table .col_action.approve.duration-needed form{
		pointer-events: none !important;
	}
	.table .col_action.approve.duration-needed a{
		pointer-events: none !important;
		opacity: .2;
	}

	.table .col_action.approve.duration-needed:hover{
		cursor: not-allowed;
	}
	

	.table .col_view{
		justify-content: flex-end;
	}

	.table .col_view a{
		margin-right: 15px;
	}

	.table .col_action{
		justify-content: flex-end;
	}

	.table .col_action .hide-date-field{
		opacity: 0;
		pointer-events: none;
		height: 0;
		width: 0;
	}

	/**/

	.table .project_count {
		display:flex;
		align-items:center;
	}
	
	.table .project_count .number {
		font-weight:700;
	}
	
	.table .project_count .squares {
		display:flex;
		align-items:center;
		margin:0 0 0 8px;
	}
	
	.table .project_count .squares .square {
		box-sizing:border-box;
		width:8px;
		height:8px;
		border:1px solid #ddd;
		background-color:transparent;
		margin:0 1px 0 0;
	}
	
	.table .project_count .squares .square[data-filled='1'] {
		background-color:var(--brand-green);
		border-color:var(--brand-green);
	}
	
	.table .project_count .squares .square[data-filled='1'][data-index='1'] {
		background-color:#005384;
		border-color:#005384;
	}
	
	.table .project_count .squares .square[data-filled='1'][data-index='2'] {
		background-color:#0085c1;
		border-color:#0085c1;
	}
	
	.table .project_count .squares .square[data-filled='1'][data-index='3'] {
		background-color:#1fa3d5;
		border-color:#1fa3d5;
	}
	
	.table .project_count .squares .square[data-filled='1'][data-index='4'] {
		background-color:#56b0a2;
		border-color:#56b0a2;
	}
	
	.table .project_count .squares .square[data-filled='1'][data-index='5'] {
		background-color:#81b641;
		border-color:#81b641;
	}
	
	.table tbody tr[data-overdue='1'] td {
		background-color:#f3c6c1;
		color:#701b12;
	}
	
	.table tbody tr[data-overdue='1'] td a {
		color:#701b12;
	}
	
	.table tbody tr[data-completed='1'] td {
		background-color:#d0ddbb;
		color:#4f7219;
	}
	
	.table tbody tr[data-completed='1'] td a {
		color:#4f7219;
	}
	
	.table tbody tr[data-completed='0'] .action_complete {
		display:inline-block;
	}
	
	.table tbody tr[data-completed='1'] .action_complete {
		display:none;
	}
	
	.table tbody tr[data-completed='0'] .action_undo_complete {
		display:none;
	}
	
	.table tbody tr[data-completed='1'] .action_undo_complete {
		display:inline-block;
	}
	
	.table tbody tr[data-due-today='1'] td {
		
	}
	
	.table tbody tr[data-already-added='true'] {
		opacity:0.25;
	}
	
	.table tr.removing {
		opacity:0.25;
	}
	
	.table tr.placeholder {
		color:#666;
	}
	
	.table tr.placeholder em {
		color:#999;
	}
	
	.table tbody tr.loading:after {
		position:absolute;
		display:block;
		content:'';
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:rgba(255,255,255,0.25);
		animation-name:loading-bg-cycle;
		animation-duration:1s;
		animation-iteration-count:infinite;
		opacity:0.25;
	}

	.table tbody tr.hide{
		display: none;
	}
	
	.table .action_button {
		display:inline-block;
		padding: 5px 10px;
		color:var(--brand-green);
		border-radius:4px;
	}
	
	.table .action_remove {
		display:inline-block;
		padding:8px;
		margin:-8px;
		color:#9d3b31;
		border-radius:4px;
	}

	.table .col_roles {
		white-space:normal;
	}

	.table .role_item {
		display:inline-flex;
		align-items:center;
		padding:8px;
		margin:0;
		white-space:nowrap;
		line-height:110%;
	}

	.table .role_item .icon {
		display:flex;
		justify-content:center;
		align-items:center;
		width:16px;
		margin:0 8px 0 0;
	}

	.table .role_item .icon .img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.popup .table .col_action {
		display:none;
	}
		
	/* -------- */
	
	.table_actions {
		display:flex;
		margin:0 0 16px 0;
	}
	
	.table_actions .action {
		box-sizing:border-box;
		display:flex;
		justify-content:center;
		align-items:center;
		flex:0 0 48px;
		width:48px;
		height:40px;
		line-height:100%;
		text-decoration:none;
		background-color:#dfdfce;
		margin:0 8px 0 0;
		border-radius:8px;
	}
	
	.table_actions .action.hide {
		display:none;
	}
	
	.table_actions .action.action_new {
		background-color:#8eb453;
		color:#fff;
	}
	
	.table_actions .action .icon {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
			
	.table_actions .search_bar {
		display:none;
		background-color:#f5f5f5;
		border-radius:8px;
		overflow:hidden;
	}
	
	.table_actions .search_bar.focus {
		background-color:#fff;
	}
	
	.table_actions .search_bar.show {
		display:flex;
	}
	
	.table_actions .search_bar .icon {
		display:flex;
		justify-content:center;
		align-items:center;
		flex:0 0 32px;
		width:32px;
		height:40px;
		background-color:transparent;
	}
	
	.table_actions .search_bar.show .icon {
		animation-name:search-bar-icon-show;
		animation-duration:0.1s;
		animation-iteration-count:1;
	}
	
	.table_actions .search_bar .icon .img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.table_actions .search_bar .input {
		border:none;
		background-color:transparent;
		padding:0;
		width:0;
		flex:0 0 192px;
		width:192px;
	}
	
	.table_actions .search_bar.show .input {
		animation-name:search-bar-input-show;
		animation-duration:0.1s;
		animation-iteration-count:1;
	}
	
	.table_actions .search_bar .input:focus {
		outline:none;
		border:none;
		text-shadow:none;
	}
	
	.table_actions .search_bar .status {
		flex:0 0 32px;
		width:32px;
		height:40px;
		justify-content:center;
		align-items:center;
	}
	
	.table_actions .search_bar .status img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.table_actions .action_with_text {
		box-sizing:border-box;
		display:flex;
		align-items:center;
		flex:0 0 auto;
		padding:0 16px;
		height:40px;
		line-height:100%;
		text-decoration:none;
		background-color:#ddd;
		margin:0 8px 0 0;
		border-radius:8px;
	}
	
	.table_actions .action_with_text:active {
		box-shadow:inset 2px 2px 8px rgba(0,0,0,0.2);
	}
	
	.table_actions .action_with_text .icon {
		display:flex;
		justify-content:center;
		align-items:center;
		width:16px;
		margin:0 8px 0 0;
	}
	
	.table_actions .action_with_text .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.table_actions .action_with_text.action_new {
		background-color:var(--brand-green);
		color:#fff;
	}
	
	.table_actions .action_with_text.action_add {
		background-color:var(--brand-green);
		color:#fff;
	}
	
	.table_actions .action_with_text.action_copy {
		border:1px solid var(--brand-green-dark);
		background-color:transparent;
	}

	/* ---------------- breadcrumb ---------------- */

	.breadcrumb {
		display:flex;
		flex-wrap:wrap;
		color:#999;
		line-height:110%;
		margin:0 0 24px 0;
	}
	
	.breadcrumb .item {
		color:#999;
		margin:2px 0;
	}
	
	.breadcrumb .divider {
		margin:2px 8px;
	}

	/* ---------------- entry meta ---------------- */

	.entry_meta {
		color:var(--brand-green-dark);
		border-collapse:collapse;
	}
	
	.entry_meta td,
	.entry_meta th {
		text-align:left;
		padding:8px;
		border-top:1px solid #ddd;
		border-bottom:1px solid #ddd;
	}
	
	.entry_meta .col_label {
		text-align:left;
	}
	
	.entry_meta .col_value {
		text-align:right;
	}
	
	.entry_meta .col_value.mono {
		font-family:monospace;
	}
	
	.entry_meta .row_author .col_value {
		display:flex;
		justify-content:flex-end;
	}
	
	.entry_meta .user_replace {
		display:inline-block;
		padding:8px;
		text-decoration:none;
		border-radius:4px;
	}
	
	.entry_meta .row_author .col_value .user_link {
		margin-right:0;
	}
	
	.user_link {
		display:inline-flex;
		align-items:center;
		padding:8px;
		border:1px solid var(--brand-green-dark);
		color:var(--brand-green-dark);
		text-decoration:none;
		margin:0 8px;
		line-height:100%;
		border-radius:4px;
	}
	
	.user_link .icon {
		width:8px;
		height:auto;
		margin:0 8px 0 0;
	}

	.entry_meta_top td,
	.entry_meta_top th {
		border:none;
		padding:0 16px 0 0;
	}

	/* ---------------- site messages ---------------- */

	.site_messages {
		
	}
	
	.site_messages .site_message {
		display:block;
		padding:16px;
		text-align:center;
		background-color:#e8ddbc;
		border-bottom:1px solid #b59948;
		color:#b59948;
	}
	
	.site_messages .site_message[data-key='error'] {
		background-color:#f3c6c1;
		border-color:#701b12;
		color:#701b12;
	}

	/* ---------------- popups ---------------- */

	.popup {
		position:fixed;
		top:0;
		right:0;
		bottom:0;
		left:0;
		z-index:900;
		display:flex;
		justify-content:center;
		align-items:center;
		visibility:hidden;
		transition:visibility 0s 0.4s;
	}
	
	.popup .bg {
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		left:0;
		z-index:10;
		background-color:#222;
		opacity:0;
		transition:opacity 0.2s 0.2s;
	}
	
	.popup .box {
		box-sizing:border-box;
		position:relative;
		z-index:20;
		width:auto;
		height:auto;
		max-width:90%;
		max-height:90vh;
		margin:0 auto;
		padding:16px;
		background-color:#eeeee8;
		opacity:0;
		transition:opacity 0.2s 0s;
	}
	
	.popup.show {
		visibility:visible;
		transition:visibility 0s 0s;
	}
	
	.popup.show .bg {
		opacity:0.5;
		transition:opacity 0.2s 0s;
	}
	
	.popup.show .box {
		opacity:1;
		transition:opacity 0.2s 0.2s;
	}
	
	.popup.loading .box:after {
		position:absolute;
		content:'';
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#ccc;
		opacity:0.25;
		animation-name:loading-bg-cycle;
		animation-duration:1s;
		animation-iteration-count:infinite;
	}

	.popup[data-type='select_entry'] .box {
		width:100%;
		height:100%;
	}
	
	.popup .box .top {
		margin:0 0 16px 0;
	}
	
	.popup .box .mid {
		max-height:70vh;
		overflow-y:auto;
		overflow-x:visible;
	}
	
	.popup .box .mid .account_form {
		
	}
	
	.popup .box .mid .account_form .row {
		margin:0;
	}
	
	.popup .box .mid .account_form .col {
		margin:8px 0;
	}
		
	.popup .box .mid .entry_list {
		position:relative;
	}
	
	.popup .box .mid .entry_list.loading:after {
		position:absolute;
		display:block;
		content:'';
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#eaeae7;
		opacity:0.5;
	}
	
	.popup .box .mid .entry_list .entry_item {
		display:block;
		padding:16px;
		text-decoration:none;
		background-color:#f5f5f5;
	}
	
	.popup .box .mid .entry_list .entry_item:nth-child(2n) {
		background-color:#f7f7f1;
	}
	
	.popup .box .mid .entry_list .entry_item[data-already-added='true'] {
		opacity:0.25;
	}

	/* ---------------- sidebar ---------------- */

	.sidebar_headline {
		font-size:1.4em;
		line-height:110%;
		color:var(--brand-green-dark);
	}
	
	.sidebar_priorities {
		
	}
	
	.priority_summary {
		line-height:110%;
		margin:16px 0 0 0;
	}
	
	.priority_summary td {
		padding:8px 12px;
		border-bottom:8px solid #eaeae1;
		color:var(--brand-green-dark);
	}
	
	.priority_summary .number {
		background-color:#ddddd0;
		font-weight:700;
	}
	
	.priority_summary .number a {
		display:inline-block;
		color:#222;
		text-decoration:none;
		padding:8px 12px;
		margin:-8px -12px;
	}
	
	.priority_summary .text {
		
	}
	
	.priority_summary .text a {
		display:inline-block;
		color:#222;
		text-decoration:none;
		padding:8px 12px;
		margin:-8px -12px;
	}
	
	.priority_summary tr.red .number {
		background-color:#bb6b63;
		color:#fff;
	}
	
	.priority_summary tr.red .number a {
		color:#fff;
	}
		
	.priority_summary tr.red .text {
		color:#8c423b;
	}
	
	.priority_summary tr.red .text a {
		color:#8c423b;
	}
	
	.priority_summary tr.yellow .number {
		background-color:#d7c780;
		color:#fff;
	}
	
	.priority_summary tr.yellow .number a {
		color:#fff;
	}
		
	.priority_summary tr.yellow .text {
		color:#d7c780;
	}
	
	.priority_summary tr.yellow .text {
		color:#d7c780
	}
	
	.priority_summary tr.green .number {
		background-color:#729934;
		color:#fff;
	}
	
	.priority_summary tr.green .number a {
		color:#fff;
	}
		
	.priority_summary tr.green .text {
		color:#4f7219;
	}
	
	.priority_summary tr.green .text a {
		color:#4f7219;
	}

	/* ---------------- reports ---------------- */
	.main_report_page .main_contacts{
		box-shadow: -2px -12px 20px 0px rgb(0 0 0 / 40%)
	}

	.reports-tab-group{
		width: 350px;
		height: auto;
		background-color: #516429; 
	}

	.reports-tab-group > div{
		padding: 40px 10%;
	}

	.reports-tab-group h3{
		color: #fff;
		font-size: 20px;
	}
	

	.report_list_group {
		margin:0 0 24px 0;
	}
	
	.report_list_group .top {
		margin:0 0 16px 0;
	}
	
	.report_list {
		padding:0;
		margin:8px 0;
	}
	
	
	.report_list .item {
		list-style:none;
		margin:0 0 4px 0;
	}

	.report_list .item.coming_soon {
		opacity:0.5;
	}
	
	.report_list .item a {
		display:flex;
		text-decoration:none;
		color:var(--brand-green-dark);
		padding:20px;
		background-color:#f7f7f1;
		font-size: 15px;
		font-weight: 600;
		border-radius: 10px;
	}

	.report_list .item a.type2 .text{
		max-width: 150px;
	}
	
	.report_list .item a:active {
		box-shadow:inset 2px 2px 8px rgba(0,0,0,0.2);
	}
	
	.report_list .item .icon {
		display:flex;
		justify-content:center;
		align-items:center;
		flex:0 0 16px;
		width:16px;
		margin:0 12px 0 0;
	}
	
	.report_list .item .icon img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	
	.report_panel {
		
	}
	
	.report_filters {
		display:flex;
		flex-direction:column;
		margin:-8px;
		margin-bottom:16px;
	}
	
	.report_filters .col {
		margin:8px;
	}
	
	.report_filters .filter_field {
		
	}
	
	.report_filters .filter_field .label {
		
	}
	
	.report_filters .filter_field .field {
		position:relative;
		background-color:#eaeae1;
		border:1px solid #999;
		border-radius:8px;
		overflow:hidden;
	}
	
	.report_filters .filter_field .field .input {
		box-sizing:border-box;
		position:relative;
		z-index:10;
		border:none;
		width:100%;
		height:48px;
		padding:0 8px 0 40px;
	}
	
	.report_filters .filter_field .field .icon {
		position:absolute;
		display:flex;
		justify-content:center;
		align-items:center;
		z-index:20;
		top:0;
		bottom:0;
		left:0;
		width:32px;
	}
	
	.report_filters .filter_field .field .icon .img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.report_filters .col.col_actions {
		display:flex;
		justify-content:flex-end;
		align-items:flex-end;
		flex:1 1 auto;
	}
	
	.report_filters .action {
		display:inline-flex;
		align-items:center;
		height:50px;
		padding:0 16px;
		border-radius:8px;
		background-color: var(--brand-green-dark);
		color:#fff;
		text-decoration:none;
		transition-duration: .2s;
	}

	.report_filters .action:hover {
		background-color: var(--brand-green);
	}
	
	.report_filters .action img {
		width:16px;
		height:auto;
		max-width:16px;
		max-height:16px;
		margin:0 8px 0 0;
	}

	.report_filters .action:last-of-type{
		margin-left: 10px;
	}
	
	.report_results {
		
	}
	
	.report_table {
		border-collapse:collapse;
		width:100%;
	}
	
	.report_table thead th,
	.report_table tbody td {
		padding:8px 32px 8px 16px;
	}
	
	.report_table .link_text {
		padding:8px 16px;
		margin:-8px -16px;
	}
	
	.report_table thead th {
		position:relative;
		text-align:left;
		white-space:nowrap;
		cursor:pointer;
	}
	
	.report_table thead th.sorting:after {
		position:absolute;
		display:block;
		content:'▼';
		font-size:0.5em;
		top:50%;
		right:16px;
		transform:translateY(-50%);
	}
	
	.report_table thead th.sorting.desc:after {
		content:'▲';
	}
	
	.report_table tbody td {
		background-color:#fff;
		border-bottom:4px solid #eaeae7;
	}
		
	.report_table tbody .col_spacer {
		width:100%;
	}
	
	.report_table tbody .col_photo {
		padding-right:0;
	}
	
	.report_table tbody .col_photo .photo {
		display:block;
		width:32px;
		height:32px;
		border-radius:50%;
		overflow:hidden;
		background-color:#eaeae7;
	}
	
	[data-report-name='event-performance'] .report_table tbody .col_photo .photo {
		width:24px;
		height:24px;
	}
	
	.report_table tbody .col_photo .photo .img {
		object-fit:cover;
		width:100%;
		height:100%;
	}
	
	.report_table tbody .col_photo .photo .img[src=''] {
		display:none;
	}

	.report_table tbody .col_icon .icon {
		display:flex;
		justify-content:center;
		align-items:center;
		width:24px;
		height:24px;
	}

	.report_table tbody .col_icon .icon .img {
		width:auto;
		height:auto;
		max-width:16px;
		max-height:16px;
	}
	
	.report_table tbody .col_name {
		white-space:nowrap;
		font-weight:700;
	}

	.report_table tbody .col_date {
		white-space:nowrap;
	}
	
	.report_table tbody .report_score {
		display:flex;
		align-items:center;
	}
	
	.report_table tbody .report_score .number {
		font-weight:700;
		margin:0 8px 0 0;
		white-space:nowrap;
	}
	
	.report_table tbody .report_score .bar {
		position:relative;
		width:64px;
	}
	
	.report_table tbody .report_score .bar .inner {
		box-sizing:border-box;
		position:relative;
		width:100%;
		height:8px;
		background:rgb(18,82,128);
		background:linear-gradient(90deg, rgba(18,82,128,1) 0%, rgba(55,131,188,1) 25%, rgba(83,161,208,1) 50%, rgba(112,174,162,1) 75%, rgba(142,180,83,1) 100%);
	}
	
	.report_table tbody .report_score.event_attendance .bar .inner {
		
	}
		
	.report_table tbody .report_score .bar .left {
		box-sizing:border-box;
		position:absolute;
		top:0;
		bottom:0;
		left:0;
	}
	
	.report_table tbody .report_score .bar .right {
		box-sizing:border-box;
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		background-color:#eaeae7;
		border:1px solid #ccc;
	}

	.report_table th.col_name,
	.report_table td.col_name{
		max-width: 250px;
		overflow: hidden;
	}
	
	.report_meta {
		font-size:0.9em;
		line-height:130%;
		margin:32px 0 0 0;
	}
	
	.report_meta ul,
	.report_meta ol {
		padding:0 0 0 16px;
	}
	
	.report_meta ul li,
	.report_meta ol li {
		margin:8px 0;
		line-height:120%;
	}

	/* ---------------- send email ---------------- */

	#form_download_ics {
		margin-top:24px;
	}
	
	.send_email_form {
		display:flex;
		flex-direction:column;
		margin:16px 0 0 0;
	}
	
	.send_email_form .fields {
		position:relative;
	}
	
	.send_email_form .fields .overlay {
		position:absolute;
		display:none;
		top:0;
		right:0;
		bottom:0;
		left:0;
		background-color:#eeeee8;
		opacity:0.5;
	}
	
	.send_email_form[data-status='sending'] .fields .overlay,
	.send_email_form[data-status='sent'] .fields .overlay {
		display:block;
	}
	
	.send_email_form .messages {
		margin:8px 0 0 0;
	}
	
	.send_email_form .messages .message {
		display:none;
		padding:8px;
		background-color:#f5f5f5;
	}
	
	.send_email_form .messages .message.sent {
		background-color:#d0ddbb;
		color:#4f7219;
	}
	
	.send_email_form .messages .message.sending {
		background-color:#f3e5a6;
		color:#c9ad2c;
	}
	
	.send_email_form .messages .message.error {
		background-color:#f3c6c1;
		color:#701b12;
	}
	
	.send_email_form[data-status='sending'] .messages .message.sending {
		display:block;
	}
	
	.send_email_form[data-status='sent'] .messages .message.sent {
		display:block;
	}
	
	.send_email_form[data-status='error'] .messages .message.error {
		display:block;
	}

}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 480px) {

	/* ---------------- base ---------------- */

	/* ---------------- buttons ---------------- */

	/* ---------------- header ---------------- */

	#header {
		padding:0 32px;
	}
	
	#header .header_nav .top {
		padding:0 32px;
	}
	
	#header .header_nav .nav {
		padding:24px;
	}
	
	#header .header_nav .utilities {
		padding:0 24px 24px 24px;
	}

	/* ---------------- footer ---------------- */

	/* ---------------- basic structure ---------------- */

	.panel_padding {
		padding:48px 0;
	}
	
	.page_headline {
		font-size:2.4em;
	}
	
	.main_with_sidebar {
		
	}
	
	.main_with_sidebar .main {
		
	}
		

	.main_panel {
		padding:32px;
	}

	.field_group {
		padding:24px;
		margin:24px -24px;
	}

	/* ---------------- account ---------------- */

	.account_box {
		padding:24px 32px;
	}

	/* ---------------- editing ---------------- */

	/* ---------------- tables ---------------- */

	/* ---------------- breadcrumb ---------------- */

	/* ---------------- entry meta ---------------- */

	/* ---------------- site messages ---------------- */

	/* ---------------- popups ---------------- */

	.popup .box {
		padding:24px;
	}

	/* ---------------- sidebar ---------------- */

	/* ---------------- reports ---------------- */

	.report_list_group {
		margin-bottom:32px;
	}
	
	.report_list_group .top {
		margin-bottom:24px;
	}


	.report_filters {
		margin-bottom:24px;
	}

}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 768px) {

	/* ---------------- base ---------------- */

	/* ---------------- buttons ---------------- */

	.box_button {
		padding:16px 32px;
	}

	/* ---------------- basic structure ---------------- */

	.panel_padding {
		padding:64px 0;
	}
	
	.page_headline {
		font-size:2.6em;
	}
	
	.page_subline {
		font-size:1.2em;
	}


	
	.main_panel {
		padding:48px;
	}

	.field_group {
		padding:32px;
		margin:32px 0;
	}

	/* ---------------- account ---------------- */

	.account_form {
		
	}
	
	.account_form .row {
		flex-direction:row;
	}
	
	.account_form .row .col {
		flex:1 1 auto;
	}
	
	.account_form input[type='text'],
	.account_form input[type='email'],
	.account_form input[type='number'],
	.account_form input[type='password'] {
		padding:0 16px;
		height:48px;
	}
	
	.account_box {
		padding:32px 48px;
	}

	/* ---------------- editing ---------------- */

	.edit_form {
		
	}
	
	.edit_form .row {
		flex-direction:row;
	}
	
	.edit_form .row .col {
		flex:1 1 auto;
		width:100%;
	}

	.edit_form .edit_checkboxes .checkboxes{
		display: flex;
		flex-wrap: wrap;
	}

	.edit_form .edit_checkboxes .checkboxes .checkbox {
		flex: 0 0 24%;
		margin: .5%;

	}

	.edit_form .edit_tags_checkboxes .checkboxes .checkbox {
		display:inline-flex;
		margin:0 8px 8px 0;
	}

	/* ---------------- tables ---------------- */




	/* ---------------- breadcrumb ---------------- */

	/* ---------------- entry meta ---------------- */

	/* ---------------- site messages ---------------- */

	/* ---------------- popups ---------------- */

	.popup .box {
		padding:32px;
	}

	/* ---------------- sidebar ---------------- */

	/* ---------------- reports ---------------- */

	.report_list_group {
		margin-bottom:48px;
	}
	
	.report_list_group .top {
		margin-bottom:32px;
	}
		
	.report_list .item {
		margin-bottom:8px;
	}
	

	
	.report_list .item .icon {
		flex-basis:24px;
		width:24px;
		margin-right:16px;
	}
	


	
	.report_filters {
		flex-direction:row;
		flex-wrap:wrap;
		margin-bottom:32px;
	}
	
	.report_filters .col {
		flex:0 0 calc(33.333% - 16px);
	}
	
	.report_table thead th, 
	.report_table tbody td {
		padding:12px 32px 12px 16px;
	}
	
	.report_table tbody .report_score .bar {
		width:96px;
	}

}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1024px) {
	.page_headline {
		font-size:2.8em;
	}
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1024px) {

	/* ---------------- base ---------------- */

	/* ---------------- buttons ---------------- */

	.box_button:hover {
		background-color:var(--brand-green);
	}
	
	.box_button.subtle:hover {
		background-color:#d9d9cd;
	}

	/* ---------------- header ---------------- */

	#header {
		justify-content:space-between;
		align-items:center;
		height:128px;
		padding:0 48px;
	}
	
	#header .header_logo {
		width:auto;
		margin:0 32px 0 0;
	}
	
	#header .header_logo .nav_open {
		display:none;
	}
	
	#header .header_nav_bg {
		display:none;
	}
	
	#header.open .header_nav_bg {
		display:none;
	}
	
	#header .header_nav {
		position:relative;
		display:flex;
		justify-content:space-between;
		align-items:center;
		flex:1 1 auto;
		box-shadow:none;
		background-color:transparent;
		max-width:none;
	}
	
	#header.open .header_nav {
		display:flex;
	}
	
	#header .header_nav .top {
		display:none;
	}
	
	#header .header_nav .nav {
		display:flex;
		padding:0;
	}
	
	#header .header_nav .nav .item {
		position:relative;
		padding:8px 14px;
	}
	
	#header .header_nav .nav .item:after {
		position:absolute;
		display:block;
		content:'';
		right:24px;
		bottom:0;
		left:24px;
		height:2px;
		background-color:#fff;
	}
	
	#header .header_nav .nav .item:hover:after {
		background-color:#ccc;
	}
	
	#header .header_nav .nav .item.current:after {
		background-color:var(--brand-green);
	}	
	
	#header .header_nav .utilities {
		display:flex;
		padding:0;
		margin:0 0 0 32px;
	}
	
	#header .header_nav .utilities .item {
		
	}

	/* ---------------- footer ---------------- */

	/* ---------------- basic structure ---------------- */

	.panel_padding {
		padding:96px 0;
	}
	
	.page_headline {
		font-size:3em;
	}
	
	.page_intro {
		margin:0 0 3em 0;
	}
	
	.main_with_sidebar {
		flex-direction:row;
	}
	
	.main_with_sidebar .main {
		min-height:100vh;
		padding-bottom:50vh;
		width:0;
		flex:1 1 auto;
	}
		

	/* ---------------- account ---------------- */

	.account_form {
		
	}
	
	.account_box {
		margin-bottom:32px;
	}
	
	.account_menu .item {
		padding:24px;
		font-size:1.2em;
	}
	
	.account_menu .item:hover {
		background-color:#fff;
	}
	
	.account_menu .item .icon {
		margin-right:16px;
	}

	/* ---------------- editing ---------------- */

	.edit_form {
		
	}
	
	.edit_form .edit_field .field {
		height:64px;
	}

	.contact_history_edit .button:hover {
		background-color:var(--brand-green);
		color:#fff;
	}
	
	.contact_history thead td .show_more:hover {
		background-color:var(--brand-green);
	}
	
	.contact_history td {
		padding:16px;
	}
	
	.edit_form .edit_entry_link .field,
	.edit_form .edit_author_link .field {
		height:64px;
	}
	
	.edit_form .edit_entry_link[data-has-value='1'] .field.hover,
	.edit_form .edit_author_link[data-has-value='1'] .field.hover {
		background-color:#fff;
	}
	
	.edit_form .edit_entry_link[data-has-value='0'] .field.hover,
	.edit_form .edit_author_link[data-has-value='0'] .field.hover {
		background-color:#fbfbf8;
		border-color:#666;
	}
	
	.edit_form .edit_entry_link[data-has-value='1'] .field.active,
	.edit_form .edit_author_link[data-has-value='1'] .field.active {
		background-color:#fbfbf8;
	}
	
	.edit_form .edit_entry_link[data-has-value='0'] .field.active,
	.edit_form .edit_author_link[data-has-value='0'] .field.active {
		box-shadow:inset 2px 2px 8px rgba(0,0,0,0.1);
	}
	
	.edit_form .edit_entry_link .field .remove:hover,
	.edit_form .edit_author_link .field .remove:hover {
		background-color:#fff;
		color:#701b12;
	}
	
	.edit_form .edit_entry_link .field .remove:active,
	.edit_form .edit_author_link .field .remove:active {
		background-color:#eaeae1;
	}
	
	.edit_form .edit_entry_link .field .view:hover,
	.edit_form .edit_author_link .field .view:hover {
		background-color:#fff;
	}
	
	.edit_form .edit_entry_link .field .view:active,
	.edit_form .edit_entry_link .field .view:active {
		background-color:#eaeae1;
	}

	.edit_form .edit_checkboxes .checkboxes .checkbox {

	}

	.edit_form .edit_checkboxes .checkboxes .checkbox:not(.checked):hover {
		background-color:#fff;
	}

	.edit_form .edit_checkboxes .checkboxes .checkbox:not(.checked):hover:active {
		background-color:#eaeae1;
	}

	.edit_form .edit_checkboxes .checkboxes .checkbox.checked:hover {
		filter:brightness(1.05);
	}

	.edit_form .edit_tags_checkboxes .checkboxes .checkbox {
	}

	.edit_form .edit_tags_checkboxes .checkboxes .checkbox:not(.checked):hover {
		background-color:#fff;
	}

	.edit_form .edit_tags_checkboxes .checkboxes .checkbox:not(.checked):hover:active {
		background-color:#eaeae1;
	}

	.edit_form .edit_tags_checkboxes .checkboxes .checkbox.checked:hover {
		filter:brightness(1.05);
	}

	.edit_form .edit_tags_checkboxes .checkboxes .new_checkbox .text {
		padding:16px 8px 16px 16px;
	}

	/* ---------------- tables ---------------- */

	
	.table .link_text:hover {
		text-decoration:underline;
	}
	

	.table thead th{
		font-size:1em;
		padding: 0;
	}


	
	.table thead tr {
		display: flex;
		flex-wrap: nowrap;
		width: 100%;
	}
	
	.table thead th {
		cursor:pointer;
		flex: auto;

	}
	

	.table thead th:hover:before {
		opacity:0.3;
	}
	
	.table thead th:active {
		
	}

	.table thead th:active:before {
		opacity:0.1;
	}
		
	.table tbody:hover tr {
		
	}	
	
	.table tbody tr:hover {
		
	}
	
	.table tbody tr:hover td {
		background-color:#dbe7c8;
	}
		
	.table tbody tr:hover td.col_id:before {
		background-color:var(--brand-green);
	}
	
	.table_no_results {
		background-color:#e6e6d8;
		padding:16px;
		color:#666;
	}
	
	.table tbody tr[data-overdue='1']:hover td {
		background-color:var(--error);
		color:#fff;
	}
	
	.table tbody tr[data-overdue='1']:hover td a {
		color:#fff;
	}
	
	.table tbody tr[data-overdue='1']:hover td.col_id:before {
		background-color:#9d3b31;
	}
	
	.table tr[data-overdue='1'] .action_button:hover {
		background-color:#9d3b31;
	}
		
	.table tbody tr[data-completed='1']:hover td {
		background-color:#729934;
		color:#fff;
	}
	
	.table tbody tr[data-completed='1']:hover td a {
		color:#fff;
	}
	
	.table tbody tr[data-completed='1']:hover td.col_id:before {
		background-color:#4f7219;
	}
	
	.table tr[data-completed='1'] .action_button:hover {
		background-color:#4f7219;
	}
	
	.table tbody tr[data-due-today='1']:hover td {
		
	}
	
	.table tbody tr[data-due-today='1']:hover td a {
		
	}
		
	.table .action_button:hover {
		background-color:var(--brand-green);
		color:#fff;
	}
	
	.table .action_remove:hover {
		background-color:var(--error);
		color:#fff;
	}

	.table .role_item:hover {
		background-color:var(--brand-green-dark);
		color:#fff;
	}

	.table .role_item:hover .icon .img {
		filter:grayscale(1) invert(1) brightness(2);
	}
	
	.popup .table tr:hover {
		text-decoration:none;
		cursor:pointer;
	}
	
	.popup .table tr:hover a {
		text-decoration:none;
	}
	
	.popup .table tr:hover td.col_item_name a {
		text-decoration:underline;
	}
	
	.popup .table tr:active td.col_item_name {
		box-shadow:inset 2px 2px 16px rgba(0,0,0,0.2);
	}

	.table_actions {
		margin-bottom:24px;
	}
	
	.table_actions .action:hover {
		background-color:#e3e3d7;
	}
	
	.table_actions .action.action_new:hover {
		background-color:#9bc15e;
	}
	
	.table_actions .action_with_text.action_new:hover {
		background-color:#96c45e
	}
	
	.table_actions .action_with_text.action_add:hover {
		background-color:#96c45e
	}
	
	.table_actions .action_with_text.action_copy:hover {
		background-color:#96c45e
	}
	
	.table_actions .action:active {
		box-shadow:inset 2px 2px 8px rgba(0,0,0,0.15);
	}

	/* ---------------- breadcrumb ---------------- */

	.breadcrumb {
		
	}
	
	.breadcrumb a {
		text-decoration:none;
	}
	
	.breadcrumb a:hover {
		text-decoration:underline;
	}

	/* ---------------- entry meta ---------------- */

	.user_link:hover {
		background-color:#d4e3eb;
	}
	
	.user_link:active {
		box-shadow:inset 1px 1px 8px rgba(0,0,0,0.2);
	}
	
	.entry_meta .user_replace:hover {
		background-color:#fff;
	}
	
	.entry_meta .user_replace:active {
		background-color:#e6e6d8;
		box-shadow:inset 1px 1px 8px rgba(0,0,0,0.2);
	}

	/* ---------------- site messages ---------------- */

	/* ---------------- popups ---------------- */

	.popup .box .mid .entry_list .entry_item:not([data-already-added='true']):hover {
		background-color:var(--brand-green);
		color:#fff;
	}
	
	.popup .box .mid .entry_list .entry_item:active {
		background-color:var(--brand-green);
		color:#fff;
	}

	/* ---------------- sidebar ---------------- */

	/* ---------------- reports ---------------- */


	
	.report_list .item a:hover {
		background-color:#fff;
	}
	

	
	.report_filters {
		margin-bottom:48px;
	}
	

	
	.report_table thead th, 
	.report_table tbody td {
		padding:16px 32px 16px 16px;
	}
	
	.report_table .link_text {
		padding:16px;
		margin:-16px;
		text-decoration:none;
	}
	
	.report_table .link_text:hover {
		text-decoration:underline;
	}
	
	.report_table tbody .col_photo .photo {
		width:48px;
		height:48px;
	}
	
	.report_table tbody .report_score .bar {
		width:128px;
	}

}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media only screen and (min-width: 1600px) {

	.page_headline {
		font-size:3.2em;
	}

	.report_filters .col {
		flex:0 0 calc(25% - 16px);
	}

}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media print {
	
	body {
		background-color:#fff;
		color:#000;
		font-size:9pt;
	}
	
	a {
		color:#000;
	}
	
	#header {
		box-shadow:none;
	}
	
	#header .header_logo .nav_open {
		display:none;
	}
	
	.breadcrumb {
		display:none;
	}
	
	.main_with_sidebar .sidebar {
		display:none;
	}
	
	.reports-tab-group{
		display:none;
	}
	
	.report_filters {
		display:none;
	}
	
	.report_table thead th {
		border-bottom:1px solid #000;
	}
	
	.report_table tbody td {
		border-bottom:1px solid #000;
	}
		
	.report_table .link_text {
		text-decoration:none;
	}
	
	.report_table tbody .report_score .bar {
		border:1px solid #000;
	}
	
	.report_table tbody .report_score .bar .left {
		border-top:8px solid #000;
	}
	
	.report_table tbody .report_score .bar .right {
		
	}
	
	.report_table tbody .col_photo .photo {
		width:24px;
		height:24px;
		border:1px solid #000;
	}
	
	.report_table tbody .col_photo .photo .img {
		
	}
		
	.page_headline {
		color:#000;
	}
	
	.page_subline {
		color:#000;
	}
	
	.section_headline {
		color:#000;
	}
	
	.edit_form .row .col {
		margin:8px;
	}
	
	.edit_form .edit_field .label {
		color:#000;
	}
	
	.edit_form .edit_field .field {
		border:1px solid #000;
		height:40px;
	}
		
	.edit_form .edit_entry_link .field {
		border:1px solid #000;
		height:40px;
	}
	
	.table_actions {
		display:none;
	}
	
	.table thead th, 
	.table tbody td {
		white-space:normal;
		line-height:110%;
		border-bottom:1px solid #000;
		background-color:transparent;
		color:#000;
	}
	
	.table tbody tr:nth-child(2n) td {
		background-color:transparent;
	}
	
	.table thead .col_action,
	.table tbody .col_action {
		display:none;
	}
	
	.table .project_count .squares .square {
		border:1px solid #ccc;
	}
	
	.table .project_count .squares .square[data-filled='1'] {
		height:0;
		border:none;
		border-top:8px solid #000;
	}
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@keyframes search-bar-icon-show {
	
	0% {
		width:48px;
		flex-basis:48px;
	}
	
	100% {
		width:32px;
		flex-basis:32px;
	}
	
}

@keyframes search-bar-input-show {
	
	0% {
		width:0;
		flex-basis:0;
	}
	
	100% {
		width:192px;
		flex-basis:192px;
	}
	
}

@keyframes loading-bg-cycle {
	
	0% {
		background-color:#ccc;
	}
	
	50% {
		background-color:#999;
	}
	
	100% {
		background-color:#ccc;
	}
	
}

/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */

@media (prefers-reduced-motion) {

}


/* ================================================================================================================================ */
/* == KLIK OVERRIDE ============================================================================================================================== */
/* ================================================================================================================================ */



/*-- Notes --*/
.main_panel.main_panel_notes{
	background-color: #f9f9f9;
	border-radius: 20px;
    margin: 20px 4%;
	border: none;
}

.main_panel.main_panel_notes .section_headline,
.main_panel.main_panel_notes .edit_form .edit_field .label{
	color: var(--brand-green-dark);
}

.main_panel.main_panel_notes .edit_form .edit_field.textarea .field,
.main_panel.main_panel_notes .edit_form .edit_field .field{
    background-color: white;
    box-shadow: 2px 2px 5px rgb(0 0 0 / 10%);
}

.main_panel.main_panel_notes .section_headline.interaction{
	border-top: 2px solid #e4e4e4;
	margin: 30px 0 -50px 0;
	padding-top: 30px;
}

.main_panel.main_panel_notes .contact_history{
	margin-top: 30px;
}

.main_panel.main_panel_notes .contact_history thead td .show_more{
	background-color: var(--brand-green)
}


/*-- Entry Metadata --*/
.main_panel.main_panel_entry_metadata{
	background-color: #f9f9f9;
	border-radius: 20px;
    margin: 20px 4%;
	border: none;
}

/*-- Membership Application --*/
.main_membership_application .page_headline{

}

.main_membership_application .page_subline{
	color: var(--brand-green-dark);
    font-size: 16px;
    font-weight: 500;
    margin: 0 0 40px;
    padding: 0 0 12px;
    border-bottom: 1px solid var(--brand-green-dark);;
}


.main_membership_application #membership-application-tab-links{
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
	display: none;
}

.main_membership_application #membership-application-tab-links.active{
	display: flex;
}

.main_membership_application #membership-application-tab-links .ma_form{
	position: relative;
    flex: 0 0 31.33%;
    background-color: #fff;
    border-radius: 10px;
    word-break: break-word;
    margin: 0 1%;
	text-decoration: none;
}

.main_membership_application #membership-application-tab-links .ma_form img{
    display: block;
    width: 100%;
    height: 280px;
    object-fit: cover;
	border-radius: 10px 10px 0 0;
	transition-duration: .4s;
}

.main_membership_application #membership-application-tab-links .ma_form .content{
    padding: 40px 40px 90px 40px;
}

.main_membership_application #membership-application-tab-links .ma_form .content h4{
	margin-bottom: 15px;
}

.main_membership_application #membership-application-tab-links .ma_form .content p{
	max-width: 200px;
}

.main_membership_application #membership-application-tab-links .ma_form .button{
	margin-top: 20px;
	position: absolute;
    bottom: 40px;
}

.main_membership_application #membership-application-tab-links .ma_form:hover img{
	filter: opacity(.8);
}

.main_membership_application #membership-application-tab-links .ma_form:hover .button{
	text-decoration: underline;
}


/**/
.main_membership_application .ma-tabs-switcher a{
    background-color: #dfdfce;
    color: #2d3a16;
    padding: 10px 18px;
    display: inline-flex;
    border-radius: 8px;
    font-size: 14px;
	margin-right: 0;
	transition-duration: .2s;
}

.main_membership_application .ma-tabs-switcher a:hover{
    background-color: #e3e3d7;
	cursor: pointer;
}

.main_membership_application .ma-tabs-switcher a.active{
	color: #fff;
    background-color: var(--brand-green);
}

.main_membership_application .ma-tabs-switcher a.active:hover{
    background-color: #96c45e;
}

.main_membership_application .ma-tab{
	display: none;
	margin: 30px 0;
	/*
	padding: 50px;
    border: 1px solid #516429;
	border-radius: 8px;
	*/
}

.main_membership_application .ma-tab.active{
	display: block;
}

/*-- Membership Form --*/
.main_membership_application_form h1.membership-form-page-title{
	font-weight: 300;
    text-align: center;
    margin: 20px 0 60px;
	color: var(--brand-green-dark);
}

.main_membership_application_form form{
    background-color: #f9f9f9;
    border-radius: 20px;
    padding: 30px 10%;
	margin-top: 40px;
}

.main_membership_application_form form h2.fui-title{
	display: none;
}

.main_membership_application_form form h2.fui-heading{
	color: var(--brand-green);

}

.main_membership_application_form form .membership-app-hea-space-above h2{
	margin-top: 30px;
}

.main_membership_application_form form .membership-app-sub-note h5{
	margin: -15px 0 15px;
	color: var(--brand-green);
}

.main_membership_application_form form button[type="submit"]{
	background-color: var(--brand-green);
	border: none;
}

.main_membership_application_form form button[type="submit"]:hover{
	background-color: var(--brand-green-light);
}

@media(min-width: 768px){
	.main_membership_application_form form{
		padding: 50px;
	}
}




/*-- Membership - Members by Organisation type --*/
#select-organisation-type{
	border-radius: 5px;
	font-weight: 600;
	font-size: 14px;
    color: #516429;
    padding: 12px;
}

.table_wrap_organisation_type{
	display: none;
	margin: 100px 0;
}

.table_wrap_organisation_type.active{
	display: block;
}	

.table_wrap_organisation_type h4{
	color: #516429;
}
/*-- END OF Membership - Members by Organisation type --*/


/*-- Membership - Members by custsom order --*/
.main_report_custom .report_filters .col label p{
	font-size: 12px;
	margin: 0 0 5px;
}

.main_report_custom .report_filters .col label p span{
	display: block;
    font-weight: 600;
    margin: -6px 0 0;
	font-size: 16px;
    color: #516429;
}


.main_report_custom .report_filters .col{
	max-width: 200px;
}

.main_report_custom .report_filters .col .field{
	padding-right: 6px;
	background: #fff;
}

/*-- --*/
.main_report_custom .report_table[data-entry="People"] tbody tr:not([data-entry="People"]),
.main_report_custom .report_table[data-entry="Organisation"] tbody tr:not([data-entry="Organisation"]){
	display: none;
}

/*-- --*/
.main_report_custom .report_table[data-membership-type="Person"] tbody tr:not([data-membership-type="Individual"]),
.main_report_custom .report_table[data-membership-type="Group"] tbody tr:not([data-membership-type="Group"]),
.main_report_custom .report_table[data-membership-type="Associate"] tbody tr:not([data-membership-type="Associate"]),
.main_report_custom .report_table[data-membership-type="None"] tbody tr:not([data-membership-type="None"]){
	display: none;
}

/*-- --*/
.main_report_custom .report_table[data-membership-status="Pending"] tbody tr:not([data-membership-status="Pending"]),
.main_report_custom .report_table[data-membership-status="Active"] tbody tr:not([data-membership-status="Active"]),
.main_report_custom .report_table[data-membership-status="Expired"] tbody tr:not([data-membership-status="Expired"]),
.main_report_custom .report_table[data-membership-status="Rejected"] tbody tr:not([data-membership-status="Rejected"]),
.main_report_custom .report_table[data-membership-status="None"] tbody tr:not([data-membership-status="None"]),
.main_report_custom .report_table[data-membership-status="Needs Approval"] tbody tr:not([data-membership-status="Needs Approval"]){	
	display: none;
}

.main_report_custom .report_table[data-membership-status="Active (Expiring this EOFY)"] tbody tr:not([data-membership-status="Active"]),
.main_report_custom .report_table[data-membership-status="Active (Expiring this EOFY)"] tbody tr:not([data-membership-expiring-eofy="expiringEOFY"]){
	display: none;
}

.main_report_custom .report_table[data-membership-type="Person"] tbody tr:not([data-membership-type="Individual"]),
.main_report_custom .report_table[data-membership-type="Group"] tbody tr:not([data-membership-type="Group"]),
.main_report_custom .report_table[data-membership-type="Associate"] tbody tr:not([data-membership-type="Associate"]),
.main_report_custom .report_table[data-membership-type="None"] tbody tr:not([data-membership-type="None"]){
	display: none;
}

.main_report_custom .report_table tr.landscape-hidden {
	display: none !important;
}


/* ================================================================================================================================ */
/* ================================================================================================================================ */
/* ================================================================================================================================ */


.main_payment_form form {
	background-color: #f9f9f9;
	border-radius: 20px;
	padding: 50px;
	margin-top: 40px;
}

.main_payment_form h1.membership-form-page-title {
	font-weight: 300;
	text-align: center;
	margin: 20px 0 60px;
	color: var(--brand-green-dark);
}

.main_payment_form h2.page_headline {
	color: var(--brand-green);
	font-size: 1.8em;
}


.main_payment_form select {
	padding: 0;
	background-color: transparent;
	border: none;
	width: 100%;
	flex: 1 1 auto;
	font-weight: 500;
	line-height: 140%;
	font-family: sans-serif;
	color: #777777;
	margin: 25px 0;
}




/*-------- STEP PROGRESS BAR --------*/
.step-wizard-list{
    background: #fff;
    box-shadow: 0 15px 25px rgba(0,0,0,0.1);
    color: var(--brand-green-dark);
    list-style-type: none;
    border-radius: 20px;
    display: flex;
    padding: 20px 10px;
    position: relative;
    z-index: 10;
}

.step-wizard-item{
    padding: 0 20px;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -ms-flex-positive:1;
    flex-grow: 1;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    text-align: center;
    min-width: 25px;
    position: relative;
}
.step-wizard-item + .step-wizard-item:after{
    content: "";
    position: absolute;
    left: 0;
    top: 19px;
    background: var(--brand-green-dark);
    width: 100%;
    height: 2px;
    transform: translateX(-50%);
    z-index: -10;
}
.progress-count{
    height: 40px;
    width:40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-weight: 600;
    margin: 0 auto;
    position: relative;
    z-index:10;
    color: transparent;
}
.progress-count:after{
    content: "";
    height: 40px;
    width: 40px;
    background: var(--brand-green-dark);
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    z-index: -10;
}
.progress-count:before{
    content: "";
    height: 10px;
    width: 20px;
    border-left: 3px solid #fff;
    border-bottom: 3px solid #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -60%) rotate(-45deg);
    transform-origin: center center;
}
.progress-label{
    font-size: 14px;
    font-weight: 600;
    margin-top: 10px;
}
.current-item .progress-count:before,
.current-item ~ .step-wizard-item .progress-count:before{
    display: none;
}
.current-item ~ .step-wizard-item .progress-count:after{
    height:10px;
    width:10px;
}
.current-item ~ .step-wizard-item .progress-label{
    opacity: 0.5;
}
.current-item .progress-count:after{
    background: #fff;
    border: 2px solid var(--brand-green-dark);
}
.current-item .progress-count{
    color: var(--brand-green-dark);
}