/*
	Text strings
	
	Resets
	Font-size and line-height
	
	Send screen width to javascript
	
	Width
	Flexbox
	Responsive classes
	
	Header
	Logo
	User Links
	Navigation
	Dropdown Navigation Menus
	Mobile navigation header
	Search
	
	Precontent blocks and padding
	Breadcrumb Navigation
	Social Icons
	
	Footer
	Mega Footer
	Countdown
	Guest Message
	Global Message
	Background Picker
	
	Headers
	ipsBox
	Buttons
	Data Lists
	Minimal and Responsive Layouts
	
	Forum Index
	Forum Index: Grid
	Forum Index: Fluid
	Forum Icons
	Sidebar and Widgets
	
	Topic List
	Topic View
	Comments
	Editor
	
	Inputs
	Select Menus
	Checkboxes
	Wizard
	
	Minor Elements
	Tabs
	Popup Menus
	Advanced Search
	Profiles
	Settings and ModCP Tables
	Blogs
	Calendar
	Leaderboard
	Gallery
	Downloads
	Pages
	Calendar
	Nexus
	Clubs
	Streams
	Inbox
	Promoted Content
	Announcements
	
	Pagination
	Bar Pagination
	Mini Pagination
	
	Message bar
	Block Manager
	2fa.css
	
	Wrapped styles for framework
	Wallpaper styles
	
	Bug Fixes
*/

/*
	----------------
	Modifier classes:
	.focus-transparent: correctly spaces elements for transparent ipsBox layouts
	.focus-wallpaper: adds backgrounds to certain elements for contrast against wallpaper backgrounds
	.focus-social-gradient: adds gradients to social icons
	.focus-guest-alert: enhances the visibility of the guest message widget
	.focus-topic-compact: merges individual posts into one box
	.focus-rep-inherit: force reputation to inherit mobile post header colour
	.focus-post-bar: wraps comment buttons within a bar
	.focus-post-buttons: converts comment controls into buttons
	.focus-post-row focus-post-bar: converts comment controls into a link row within a bar
	.focus-sticky-author: makes the author pane sticky on supported desktop browsers
	.focus-attached-dropdowns: arrow dropdown menus
	.focus-nav-right: align last dropdown menus to the right
	.user-links-sep: show separator instead of borders
	.user-links-b: add borders between userlinks
	.focus-fixed-header
	.focus-fixed-user
	.focus-fixed-nav
	----------------
*/



/*
	----------------
	- Text strings
	----------------
*/

.cForumList .ipsDataItem_unread .ipsDataItem_title:before, .cForumGrid_unread .ipsPhotoPanel h3 a:before {
	content: "NEW";
}

.focus-guestMessage h4:before{
	content: "Welcome to ";
}

.focus-picker{
	content: "Change background image";
}

.focus-timer-title:before{
	content: '{theme="countdown_title"}';
}

.focus-timer-done .focus-timer-title:before{
	content: '{theme="countdown_done"}';
}

.ipsCommentUnreadSeperator:before{
	content:"New content begins here";
}

.cTopic .cRatingColumn > .ipsList_reset:before{
	content: 'Vote below answer:';
}



/*
	----------------
	- CSS Variables
	----------------
*/

:root{
	--search-button-width: 36px;

  	--topic-avatar: 110px;
	--author-pane--width: calc(var(--topic-avatar) + 90px);	
	--item-controls-offset: calc(var(--author-pane--width) + var(--author-pane--border-width, 0px) + var(--post-content--padding, 0px));

	--subforum-display: grid;
	--subforum-min-width: 200px;
	--subforum-gap: 6px;
  
	--grid-gap: 15px;
	--grid-min: 250px;

	--footer-col-width: 190px;
}


/*
	----------------
	- Resets
	----------------
*/

.ipsDataList.ipsAreaBackground_reset,
.ipsAreaBackground .ipsAreaBackground,
.cForumList .ipsAreaBackground[data-role="forums"]{
	background: transparent;
}

.ipsAttachment_dropZone{
	background: {hextorgb="area_background_light" opacity="0.7"};
}

#elTwoFactorAuthentication > div{
	background-color: {theme="area_background_reset"};
}




/* Text colours */
.ipsType_pageTitle,
.ipsType_richText,
.ipsStreamItem_title,
a.ipsType_blendLinks:not( .ipsType_noUnderline ):hover, 
.ipsType_blendLinks:not( .ipsType_noUnderline ) a:not( .ipsType_noUnderline ):hover,
.ipsType_sectionTitle a,
.ipsType_sectionTitle .ipsType_light{
	color: inherit;
}

.ipsWidget_title a{
	color: inherit !important;
}

.ipsType_sectionHead,
#cAnnouncementSidebar h3,
.ipsPager_type,
.ipsPager .ipsPager_next a:after,
.ipsPager .ipsPager_prev a:after,
.ipsStreamItem_snippet .ipsType_richText{
	color: {theme="text_color"};
}

.ipsType_neutral {
	color: {hextorgb="text_color" opacity="0.7"};
}

#elTwoFactorAuthentication .ipsTabs .ipsTabs_item:not( .ipsTabs_activeItem ) {
	color: {hextorgb="text_color" opacity="0.6"};
}

.ipsType_noLinkStyling{ color: {theme="link"}; }
.ipsType_noLinkStyling:hover { color: {theme="link_hover"}; }

mark{
	background: {theme="mentions"};
	color: #fff !important;
}


/* Border colours */
.ipsDataItem,
.ipsDataList:not(.ipsGrid) .ipsDataItem:last-child,
.ipsDataList.ipsDataList_zebra > .ipsDataItem,
#elProfileActivityOverview .ipsStreamItem,
#elUserContent .ipsStreamItem,
#elSingleStatusUpdate .ipsStreamItem,
.ipsStream_snippetInfo,
html[dir="ltr"] .ipsWidget_horizontal .cNewestMember,
html[dir="rtl"] .ipsWidget_horizontal .cNewestMember{
	border-color: {hextorgb="text_color" opacity="0.15"};
}

html[dir="ltr"] .ipsStream_withTimeline .ipsStreamItem:after{
	border-right-color: {theme="area_background_reset"};
}
html[dir="rtl"] .ipsStream_withTimeline .ipsStreamItem:after{
	border-left-color: {theme="area_background_reset"};
}


/*
	----------------
	- Typography
	----------------
*/

/* Define global font size */
html {
	font-size: 62.5%;
}

body{
	font-size: 1.2rem;
	line-height: 1.8rem;
	font-family: {{if theme.body_font != 'default'}}"{theme='body_font'}", sans-serif{{else}} BlinkMacSystemFont,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif {{endif}};
    -moz-osx-font-smoothing: grayscale;
}

.fa{
	{prefix="transform" value="translate(0,0)"}
}

.fa.fa-flip-horizontal{
	{prefix="transform" value="scale(-1,1)"}
}

.ipsType_huge {
	font-size: 7.2rem;
}

.ipsType_veryLarge{
	font-size: 4.4rem;
}

.cCalendarNav .ipsType_pageTitle,
.ipsType_pageTitle.ipsType_largeTitle{
	font-size: 2.7rem;
}

.ipsDialog_title,
.ipsType_pageTitle{
	font-size: 2.2rem;
}

.ipsType_sectionHead,
.ipsStreamItem_title,
.cProfileRepScore_points,
.cPopularItem_stats{
	font-size: 2rem;
}

.ipsDataItem_statsLarge .ipsDataItem_stats_number,
.ipsApp .ipsField_primary,
.ipsApp .ipsField_primary.ipsField_autocomplete input,
.ipsApp .ipsFieldRow_primary input{
	font-size: 1.8rem;
}

.ipsStreamItem_titleSmall,
.cForumGrid_title{
	font-size: 1.7rem;
}

.ipsType_large,
#elMyClubsActivity .ipsStreamItem_title,
.cCmsDatabase_index h4.ipsDataItem_title,
.ipsAttachment_dropZone,
.ipsTable.ipsMatrix .ipsMatrix_subHeader,
.ipsForm_horizontal .ipsFieldRow_required:before,
.ipsForm_group > .ipsForm_groupTitle{
	font-size: 1.6rem;
}

.ipsStreamItem_snippet,
.ipsComposeArea_dummy{
	font-size: 1.5rem;
}

.ipsType_sectionHead.ipsType_large,
.ipsType_sectionHead.ipsType_normal,
.cCalendar_dayNumber,
.ipsAttachment_dropZoneSmall .ipsAttachment_supportDrag,
.ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_label,
.ipsFieldRow:not( .ipsFieldRow_checkbox ) .ipsFieldRow_title,
.ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_label,
.ipsForm_horizontal .ipsFieldRow > .ipsFieldRow_title{
	font-size: 1.4rem;
}

.ipsType_normal,
div[data-role="imageDescription"] .ipsType_medium,
.cForumList .ipsDataItem_title,
.ipsDataItem_title,
.ipsApp label:not( .ipsField_unlimited ), .ipsApp input, .ipsApp button, .ipsApp select, .ipsApp textarea{
	font-size: 1.3rem;
}
/* Originally 1.3rem */
.ipsType_medium,
.ipsTabs_item,
.ipsStreamItem_actionBlock,
.cToken,
.ipsTable th,
.ipsFieldRow_desc,
#elMyClubsActivity .ipsStreamItem_status,
.ipsStreamItem_status,
.ipsMenu .ipsDataItem_title,
.ipsTabs.ipsTabs_small .ipsTabs_item,
.ipsProgressBar_progress,
.cPopularItem_stats span{
	font-size: 1.2rem;
}

.ipsType_small,
.ipsType_minorHeading,
.ipsPager_type,
#elGalleryNav{
	font-size: 1.1rem;
}

.ipsFieldRow_required{
	font-size: 1rem;
}

.ipsStreamItem_snippet .ipsType_medium,
.ipsWidget .ipsDataItem_title{
	font-size: inherit;
}




/* Line-heights */

.ipsType_small:not( .ipsType_richText ){
	line-height: 1.6rem;
}
.ipsType_medium:not( .ipsType_richText ){
	line-height: 2rem;
}
.ipsType_normal:not( .ipsType_richText ){
	line-height: 2.1rem;
}
.ipsType_large:not( .ipsType_richText ){
	line-height: 2rem;
}
.ipsType_veryLarge {
	line-height: 5.2rem;
}
.ipsType_huge {
	line-height: 8rem;
}




/* buttons.css */
.ipsApp .ipsButton {
	font-size: 1.3rem;
}
.ipsApp .ipsButton_medium {
	font-size: 1.3rem;
	line-height: 3.8rem;
}

.ipsApp .ipsButton_large {
	font-size: 1.5rem;
	line-height: 4.2rem;
}

.ipsApp .ipsButton_veryLarge {
	font-size: 1.6rem;
	line-height: 4.6rem;
}

.ipsApp .ipsButton_small {
	font-size: 1.2rem;
	line-height: 3.4rem;
}

.ipsApp .ipsButton_verySmall {
	font-size: 1.2rem;
	line-height: 28px;
}

.ipsApp .ipsButton_veryVerySmall {
	font-size: 1rem;
	line-height: 2rem;
}

.ipsButtonRow li > a,
.ipsButtonRow li > button,
.ipsButtonRow li > span {
	line-height: 2.6rem;
	font-size: 1rem;
}



/* badges.css */
.ipsRepBadge{
	font-size: 1.1rem;
}

.ipsBadge, .ipsBadge.ipsBadge_normal {
	height: 1.7rem;
	line-height: 1.7rem;
	font-size: 1rem;
}

.ipsBadge.ipsBadge_medium {
	height: 1.8rem;
	line-height: 1.8rem;
	font-size: 1.1rem;
} 

.ipsBadge.ipsBadge_large {
	height: 2.3rem;
	line-height: 2.3rem;
	font-size: 1.3rem;
}


/* Text colours */
.ipsType_warning, .ipsType_negative, a.ipsType_negative, a.ipsType_negative:hover,
.cAnswerRate.ipsType_negative:hover {
	color: #c75050;
}

.ipsType_spammer {
	color: #990000;
}

.ipsType_issue {
	color: #d69625;
}

.ipsType_success, .ipsType_positive, a.ipsType_positive, a.ipsType_positive:hover,
.cAnswerRate.ipsType_positive:hover {
	color: #598f5b;
}

/* Text colours outside of .ipsBox */
.cGuestTeaser > .ipsType_pageTitle,
.cGuestTeaser > .ipsType_light,
#ipsLayout_mainArea > .ipsType_pageTitle,
#ipsLayout_mainArea > p,
#ipsLayout_mainArea > header[class='ipsSpacer_bottom'],
#elStreamUpdateMsg,
#ipsLayout_mainArea > .ipsType_richText:not(.ipsBox),
#ipsLayout_mainArea > .ipsType_normal:not(.ipsBox){
	
}

/*
	----------------
	- Send screen width to javascript
	----------------
*/

/* Desktop */
@media screen and (min-width:980px){
	body{
		min-width: 30px;
	}
}
/* Tablets and mobile */
@media screen and (max-width:979px){
	body{
		min-width: 20px;
	}
}
/* Mobiles */
@media screen and (max-width: 767px){
	body{
		min-width: 10px;
	}
}



/*
	----------------
	- Width
	----------------
*/

.ipsLayout_container{
	position: static;
	padding: 0;
}

/* Fixed width */
.ipsLayout_container,
.ipsLayout_minimal .ipsLayout_container{
	
	{{if theme.enable_fluid_width}}
		max-width: {theme="fluid_width_size"}%;
	{{else}}
		width: calc(100% - 50px);
		max-width: {theme="fixedWidth"}px;
	{{endif}}
	
}

	.ipsLayout_container .ipsLayout_container{
		width: auto;
		max-width: none;
		margin: 0;
	}

/* Overwrite custom.css width on tablets */
@media screen and (max-width:979px){
	.ipsApp .ipsLayout_container{
		width: auto;
		max-width: none;
	}
}



/*
	----------------
	- Flexbox
	----------------
*/

.flex,
.flex-inline {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}

.flex-inline {
	display: -webkit-inline-flex;
	display: inline-flex;
}

.flex-height {
	min-height: 100%;
}

/* Set defaults: elements only occupy necessary space */
.flex > *,
.flex-inline > * {
	-webkit-flex: 0 0 auto;
	flex: 0 0 auto;
}

.flex-aS {
	-webkit-align-items: flex-start;
	align-items: flex-start;
}

.flex-aC {
	-webkit-align-items: center;
	align-items: center;
}

.flex-aE {
	-webkit-align-items: flex-end;
	align-items: flex-end;
}

.flex-aF {
	-webkit-align-items: stretch;
	align-items: stretch;
}

.flex-jS {
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}

.flex-jC {
	-webkit-justify-content: center;
	justify-content: center;
}

.flex-jE {
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}

.flex-jA {
	-webkit-justify-content: space-around;
	justify-content: space-around;
}

.flex-jB {
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.flex-wrap {
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.flex-column{
	-webkit-flex-direction: column;
	flex-direction: column;
}

.flex00 {
	-webkit-flex: 0 0 auto;
	flex: 0 0 auto;
}

.flex10 {
	-webkit-flex: 1 0 auto;
	flex: 1 0 auto;
}

.flex11 {
	-webkit-flex: 1 1 auto;
	flex: 1 1 auto;
}

.flex01 {
	-webkit-flex: 0 1 auto;
	flex: 0 1 auto;
}

@media screen and (max-width:979px){
	
	.flex-block-t{ display: block; }

	.flex-column-t{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.flex-aS-t {
		-webkit-align-items: flex-start;
		align-items: flex-start;
	}
	
	.flex-aC-t {
		-webkit-align-items: center;
		align-items: center;
	}
	
	.flex-aE-t {
		-webkit-align-items: flex-end;
		align-items: flex-end;
	}
	
	.flex-aF-t {
		-webkit-align-items: stretch;
		align-items: stretch;
	}
	
	.flex-jS-t {
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
	}
	
	.flex-jC-t {
		-webkit-justify-content: center;
		justify-content: center;
	}
	
	.flex-jE-t {
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
	}
	
	.flex-jA-t {
		-webkit-justify-content: space-around;
		justify-content: space-around;
	}
	
	.flex-jB-t {
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	
	.flex00-t {
		-webkit-flex: 0 0 auto;
		flex: 0 0 auto;
	}
	
	.flex10-t {
		-webkit-flex: 1 0 auto;
		flex: 1 0 auto;
	}
	
	.flex11-t {
		-webkit-flex: 1 1 auto;
		flex: 1 1 auto;
	}
	
	.flex01-t {
		-webkit-flex: 0 1 auto;
		flex: 0 1 auto;
	}
	
}

@media screen and (max-width:767px){
	
	.flex-block-m{ display: block; }

	.flex-column-m{
		-webkit-flex-direction: column;
		flex-direction: column;
	}
	
	.flex-aS-m {
		-webkit-align-items: flex-start;
		align-items: flex-start;
	}
	
	.flex-aC-m {
		-webkit-align-items: center;
		align-items: center;
	}
	
	.flex-aE-m {
		-webkit-align-items: flex-end;
		align-items: flex-end;
	}
	
	.flex-aF-m {
		-webkit-align-items: stretch;
		align-items: stretch;
	}
	
	.flex-jS-m {
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
	}
	
	.flex-jC-m {
		-webkit-justify-content: center;
		justify-content: center;
	}
	
	.flex-jE-m {
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
	}
	
	.flex-jA-m {
		-webkit-justify-content: space-around;
		justify-content: space-around;
	}
	
	.flex-jB-m {
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	
	.flex00-m {
		-webkit-flex: 0 0 auto;
		flex: 0 0 auto;
	}
	
	.flex10-m {
		-webkit-flex: 1 0 auto;
		flex: 1 0 auto;
	}
	
	.flex11-m {
		-webkit-flex: 1 1 auto;
		flex: 1 1 auto;
	}
	
	.flex01-m {
		-webkit-flex: 0 1 auto;
		flex: 0 1 auto;
	}
	
}


/*
	----------------
	- css Grid and flexbox layouts
	----------------
*/

/* Flexbox layout */
@supports (display: flex){

	@media (min-width: 980px){

		#ipsLayout_contentArea,
		#ipsLayout_mainArea,
		#ipsLayout_sidebar{
			display: block;
			width: auto;
		}

		#ipsLayout_contentWrapper{
			display: flex;
			width: auto;
		}

		#ipsLayout_mainArea{
			flex: 1 1 100px;
		}

		#ipsLayout_sidebar{
			flex: 0 0 315px;
			min-width: 0;
			max-width: none;
		}
      
		#ipsLayout_sidebar.ipsLayout_sidebarUnused{
			flex-basis: 0px;
		}

		body.ipsLayout_sidebarUnused:not(.cWidgetsManaging) #ipsLayout_sidebar{
			display: none;
		}

		/* Flex layout: Convert data rows into flex */
		.ipsDataList{
			display: block;
			width: auto;
		}

		.ipsDataItem{
			display: flex;
			align-items: center;
			width: auto;
		}

			.ipsDataItem > *{
				flex: 0 0 auto;
			}
	  
			.ipsDataItem_main, .ipsDataItem_stats, .ipsDataItem_lastPoster, .ipsDataItem_generic, .ipsDataItem_modCheck, .ipsDataItem_icon,
			.ipsApp .cForumTopicTable .ipsDataItem_title > span:not(.ipsHide),
			.ipsApp .cForumTopicTable .ipsDataItem_title > span:not(.ipsHide){
				display: block;
			}

			.ipsDataList.ipsDataList_reducedSpacing .ipsDataItem_main,
			.ipsDataList.ipsDataList_reducedSpacing .ipsDataItem_stats,
			.ipsDataList.ipsDataList_reducedSpacing .ipsDataItem_lastPoster,
			.ipsDataList.ipsDataList_reducedSpacing .ipsDataItem_generic{
				display: block;
				align-self: flex-start;
			}

			/* Remove clearfix */
			.ipsDataItem::after{
				display: none;
			}

			.ipsDataItem_icon{
				width: auto;
				min-width: 0;
				max-width: none;
			}

			.ipsDataItem > *:only-child,
			.ipsDataItem_main,
			.ipsDataItem_generic{
				flex: 1 1 100%;
			}

			.ipsDataItem_size1,
			.ipsDataItem_size2,
			.ipsDataItem_size3,
			.ipsDataItem_size4,
			.ipsDataItem_size5,
			.ipsDataItem_size6,
			.ipsDataItem_size7,
			.ipsDataItem_size8,
			.ipsDataItem_size9,
			.ipsDataItem_size10{
				flex: 0 0 auto;
				/* width: auto; */
				/* The below code is to prevent profile fields from breaking */
				min-width: 0px;
				overflow: hidden;
				text-overflow: ellipsis;
			}

			.ipsDataItem > .ipsPos_top{
				align-self: flex-start;
			}


		/* Cater for padding in widgets */
		.ipsPad_half > .ipsDataList{
			margin: 0 -7px;
		}

		.ipsWidget_inner .ipsDataList .ipsDataItem{
			padding: 0px 6px;
		}

		#ipsfocus .ipsWidget .ipsDataItem_icon{
			padding: 12px 6px;
			align-self: flex-start;
		}

		/* Topic list icons */
		#ipsfocus .cTopicList .ipsDataItem_icon{
			min-width: 30px;
			text-align: center;
		}

		.ipsColumns{
			display: flex;
			width: auto;
			max-width: 100%;
		}

			.ipsColumn{
				display: block;
				flex: 0 0 auto;
			}

			.ipsColumn_fluid{
				flex: 1 1 auto;
			}

		#elNexusActions > li > a{
			display: flex;
			align-items: center;
			flex: 1 1 auto;
		}

		.ipsStreamItem_title{
			display: flex !important;
			align-items: center;
		}

			.ipsStreamItem_title > *{
				flex: 0 1 auto;
			}
      
			.ipsStreamItem_title .ipsContained{
				width: auto;
			}

			/* Fix alignment on member search results */
			.cStream_members .ipsStreamItem_title{
				display: block !important;
			}

		/* Neatly align last poster */
		/* Placed in the flex area due to IE11 issues */
		.ipsDataItem_lastPoster{
			line-height: 2rem;
			position: relative;
		}
		
			.ipsDataItem_lastPoster .ipsUserPhoto{
				top: 50%;
				position: absolute;
				margin: 0;
				transform: translateY(-50%);
			}

			html[dir='ltr'] .ipsDataItem_lastPoster .ipsUserPhoto{
				left: 0;
			}

			html[dir='rtl'] .ipsDataItem_lastPoster .ipsUserPhoto{
				right: 0;
				margin: 0;
			}
      
      /* Fix issues where Download thumbnails in table view are larger than the allocated width */
      /* Fix width of "Revoke this warning" cell */
      .cDownloadsCategoryTable .ipsDataItem_size3,
      form[data-role="moderationTools"] .ipsDataItem_generic.ipsDataItem_size3{
          width: auto;
      }

	}

}

@supports (display: grid){

	[data-ipsgrid-minitemsize="500"]{
		--grid-min: 400px;
	}

	[data-ipsgrid-minitemsize="400"]{
		--grid-min: 400px;
	}

	[data-ipsgrid-minitemsize="350"]{
		--grid-min: 350px;
	}

	[data-ipsgrid-minitemsize="300"]{
		--grid-min: 300px;
	}

	[data-ipsgrid-minitemsize="250"]{
		--grid-min: 250px;
	}

	[data-ipsgrid-minitemsize="230"]{
		--grid-min: 230px;
	}

	[data-ipsgrid-minitemsize="200"]{
		--grid-min: 200px;
	}

	[data-ipsgrid-minitemsize="170"]{
		--grid-min: 170px;
	}

	[data-ipsgrid-minitemsize="150"]{
		--grid-min: 150px;
	}

	[data-ipsgrid-minitemsize="100"]{
		--grid-min: 100px;
	}

	[data-ipsgrid-minitemsize="60"]{
		--grid-min: 60px;
	}

	[data-ipsgrid-minitemsize="40"]{
		--grid-min: 40px;
	}

	.ipsGrid{
		display: grid;
		grid-gap: var(--grid-gap);
		grid-template-columns: repeat(12, 1fr);
	}

		/* Forces truncated text to work */
		.ipsGrid > *{
			min-width: 0;
		}

	[data-ipsgrid-minitemsize]{
		--grid-fill: auto-fill;
		grid-template-columns: repeat(var(--grid-fill), minmax(calc(var(--grid-min) + var(--grid-gap)), 1fr));
	}
  
	.ipsGrid + .ipsGrid{
		margin-top: var(--grid-gap) !important;
	}

		.ipsGrid > [class*="ipsGrid_span"]{
			width: auto !important;
			margin: 0 !important;
			float: none !important;
			height: auto !important;
		}

		.ipsGrid::before,
		.ipsGrid::after{
			display: none;
		}

	.cPromotedImages{
		--grid-gap: 0px;
	}

	.ipsGrid:not([data-ipsgrid-minitemsize]) > .ipsGrid_span1{
		grid-column: span 1;
	}

	.ipsGrid:not([data-ipsgrid-minitemsize]) > .ipsGrid_span2{
		grid-column: span 2;
	}

	.ipsGrid:not([data-ipsgrid-minitemsize]) > .ipsGrid_span3{
		grid-column: span 3;
	}

	.ipsGrid:not([data-ipsgrid-minitemsize]) > .ipsGrid_span4{
		grid-column: span 4;
	}

	.ipsGrid:not([data-ipsgrid-minitemsize]) > .ipsGrid_span5{
		grid-column: span 5;
	}

	.ipsGrid:not([data-ipsgrid-minitemsize]) > .ipsGrid_span6{
		grid-column: span 6;
	}

	.ipsGrid:not([data-ipsgrid-minitemsize]) > .ipsGrid_span7{
		grid-column: span 7;
	}

	.ipsGrid:not([data-ipsgrid-minitemsize]) > .ipsGrid_span8{
		grid-column: span 8;
	}

	.ipsGrid:not([data-ipsgrid-minitemsize]) > .ipsGrid_span9{
		grid-column: span 9;
	}

	.ipsGrid:not([data-ipsgrid-minitemsize]) > .ipsGrid_span10{
		grid-column: span 10;
	}

	.ipsGrid:not([data-ipsgrid-minitemsize]) > .ipsGrid_span11{
		grid-column: span 11;
	}

	.ipsGrid:not([data-ipsgrid-minitemsize]) > .ipsGrid_span12,
	.ipsGrid:not([data-ipsgrid-minitemsize]) > :not([class*="ipsGrid_span"]){
		grid-column: span 12;
	}

	@media (max-width: 979px){
		.ipsGrid.ipsGrid_collapseTablet:not([data-ipsgrid-minitemsize]) > [class*="ipsGrid_span"]{
			grid-column: span 12;
		}
	}

	@media (max-width: 767px){
		.ipsGrid.ipsGrid_collapsePhone:not([data-ipsgrid-minitemsize]) > [class*="ipsGrid_span"]{
			grid-column: span 12;
		}
	}

	/* Ensure that grids don't span wider than the viewport on mobiles */
	@media (max-width: 550px){
		[data-ipsgrid-minitemsize="500"]{
			grid-template-columns: 1fr;
		}
	}

	@media (max-width: 450px){
		[data-ipsgrid-minitemsize="400"]{
			grid-template-columns: 1fr;
		}
	}

	@media (max-width: 400px){
		[data-ipsgrid-minitemsize="350"]{
			grid-template-columns: 1fr;
		}
	}

	@media (max-width: 350px){
		[data-ipsgrid-minitemsize="300"]{
			grid-template-columns: 1fr;
		}
	}

	/* Allow profile photos to wrap on clubs */
	.cClubCard .cClubCard_memberList{
		white-space: normal;
	}

	/* Profile actions on mobiles */
	@media (max-width: 767px){
		header[data-role='profileHeader'] .ipsGrid{
			display: grid !important;
		}
	}

	/* Profile followers */
	#elFollowers .ipsGrid{
		grid-template-columns: repeat(auto-fill, minmax(48px, 1fr));
		--grid-gap: 5px;
		padding: 5px;
		margin: 0px;
	}

	#elFollowers .ipsGrid > li{
		grid-column: initial;
	}
  
  	/* Fix gallery albums in Calendar events */
    .cGalleryMiniAlbum{
        --grid-min: 210px;
    }
		.cGalleryMiniAlbum > li::before{
			content: '';
			display: block;
			padding-bottom: 100%;
		}

	/* Fix 3rd party addon */
	.tthumbGridview .ipsGrid{
		grid-template-columns: repeat( auto-fit, minmax(140px, 1fr) );
		padding: 10px;
		--grid-gap: 10px;
	}

	@media (min-width: 980px){
		.tthumbGridview .ipsGrid{
			grid-template-columns: repeat(5,1fr);
		}
	}

}

/* Fix any issues caused by flexbox and grid */
.cGalleryPatchwork_list,
.cPromotedWidgetItem,
#elMyClubsActivity .ipsStreamItem_snippet .ipsColumns,
#chatcontent .ipsDataItem,
.ipsWidget_horizontal[data-blockid^="app_forums_postFeed_"] .ipsDataItem{
	display: block;
}

@media (min-width: 980px){
  .videoboxGridview .ipsDataItem{
    display: block;
  }
}



/*
	----------------
	- Responsive classes
	----------------
*/

@media screen and (min-width:980px){
	.hide-d{ display: none !important; }
}
@media screen and (max-width:979px){
	.hide-t{ display: none !important; }
}
@media screen and (max-width:767px){
	.hide-m{ display: none !important; }
}



/*
	----------------
	- Header
	----------------
*/

#ipsLayout_header{
	position: static;
	border: 0;
}

#ipsLayout_header header > .ipsLayout_container{
	min-height: 0;
}

#ipsLayout_header header{
	/* Reset header height */
	margin: 0;
	padding: 0;
	background: none;
}

.header-align,
.secondary-header-align{
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}




/*
	----------------
	- Fixed header positioning
	----------------
*/

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

	.focus-fixed-header #ipsLayout_header{
		position: relative;
		z-index: 100;
	}
	.focus-fixed-header .ipsSticky_top{
		transform: translateY({theme="logoheight"}px);
	}
	.focus-fixed-header a[id^="comment-"]{
		top: -{expression="theme.logoheight + 1"}px;
	}
	.focus-fixed-header .cPostRating_controls{
		top: {expression="theme.logoheight + 10"}px;
	}
	.focus-fixed-header.focus-sticky-author .cAuthorPane_info{
		top: {theme="logoheight"}px;
	}
	
	
	.focus-fixed-nav #ipsLayout_header{
		position: relative;
		z-index: 100;
	}
	.focus-fixed-nav .ipsSticky_top{
		transform: translateY({theme="navigationheight"}px);
	}
	.focus-fixed-nav a[id^="comment-"]{
		top: -{expression="theme.navigationheight + 1"}px;
	}
	.focus-fixed-nav .cPostRating_controls{
		top: {expression="theme.navigationheight + 10"}px;
	}
	.focus-fixed-nav.focus-sticky-author .cAuthorPane_info{
		top: {theme="navigationheight"}px;
	}
	
	
	.focus-fixed-user #ipsLayout_header{
		position: relative;
		z-index: 100;
	}
	.focus-fixed-user .ipsSticky_top{
		transform: translateY({theme="userheight"}px);
	}
	.focus-fixed-user a[id^="comment-"]{
		top: -{expression="theme.userheight + 1"}px;
	}
	.focus-fixed-user .cPostRating_controls{
		top: {expression="theme.userheight + 10"}px;
	}
	.focus-fixed-user.focus-sticky-author .cAuthorPane_info{
		top: {theme="userheight"}px;
	}
	
}


		
/*
	----------------
	- Logo
	----------------
*/

.logo-wrap{
	-webkit-flex: 0 1 auto;
	display: -webkit-flex;
	-webkit-justify-content: center;

	flex: 0 1 auto;
	display: flex;
	justify-content: center;
}

@media (max-width: 979px){
	.logo-wrap{
		-webkit-flex: 1 1 auto;
		flex: 1 1 auto;
	}
}

a.logo{
	color: {theme="logo_color"};
}

.logo{
	height: {theme="logoheight"}px;
	max-height: {theme="logoheight"}px;
	font-size: {theme="logosize"}px;
	line-height: 1;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	white-space: nowrap;
}

	.logo img{
		max-height: inherit;
		max-width: 100%;
	}

	.logo-name{
		display: block;
		line-height: 1;
	}
	
	.logo-slogan{
		font-size: 0.5em;
		line-height: 1;
		display: block;
		padding-top: 0.8em;
		color: {hextorgb="logo_color" opacity="0.7"};
	}



@media screen and (max-width: 979px){
	
	.logo{
		height: {theme="logoheightr"}px;
		max-height: {theme="logoheightr"}px;
		font-size: {theme="logosizer"}px;
		padding: 0 10px;
		-webkit-justify-content: center;
		justify-content: center;
		text-align: center;
	}
	
}

/* Bug fix for safari: Make sure wide logos don't extend beyond browser width */
#header .flex00,
#header .logo-wrap{ max-width: 100%; }


/*
	----------------
	- User links
	----------------
*/

.user-links{
	-webkit-flex: 0 0 auto;
	flex: 0 0 auto;
}

.ipsApp #elUserNav{
	line-height: {theme="userheight"}px;
	font-weight: bold;
}

#elUserNav{
	position: static;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}

#elUserNav strong{
	font-weight: inherit;
}

#elUserNav > li > a#elRegisterButton{
	color: inherit;
}

@media screen and (max-width:979px){
	.ipsApp .user-links{
		display: none;
	}
}

	#elUserNav > li{
		-webkit-flex: 0 0 auto;
		flex: 0 0 auto;
		margin: 0;
		background-clip: padding-box !important;
	}
	
	/* Force hidden class since it doesn't always apply */
	#elUserNav .ipsHide{ display: none !important; }
	
	
	/* Borders on list items */
	#elUserNav > li.elUserNav_sep{
		display: none;
	}
	
	#elUserNav > li{
		border: 1px solid transparent;
		border-width: 0px;
	}
	
	.user-links:not(.user-links-sep) #elUserNav > li{
		border-radius: 0px;
	}
	
		.user-links:not(.user-links-sep) #elUserNav > li:first-child{
			border-top-left-radius: inherit;
			border-bottom-left-radius: inherit;
		}
		
		.user-links:not(.user-links-sep) #elUserNav > li:last-child{
			border-top-right-radius: inherit;
			border-bottom-right-radius: inherit;
		}
	
	.user-links-b #elUserNav > li{
		border-width: 0 1px 0 0;
	}
	
	html[dir='rtl'] .user-links-b #elUserNav > li{
		border-width: 0 0 0 1px;
	}
	
		html[dir] .user-links-b #elUserNav > li:last-child{
			border-width: 0;
		}
	
	/* Display sep items and remove borders */
	.user-links-sep #elUserNav > li.elUserNav_sep{
		display: block;
		width: 2px;
		background: currentColor;
		opacity: 0.2;
		border-radius: 3px;
		height: {theme="userheight"}px;
	}
	.user-links-sep #elUserNav > li{
		border-width: 0;
	}
	
	
	/* Push cart to the end */
	#elCart_sep{ order: 10; }
	#elCart_container{ order: 11; }
		
	#elUserNav > li > a{	
		font-size: inherit;
		color: inherit;
		line-height: inherit;
		display: inline-block;
		padding: 0 12px;
		vertical-align: top;
	}

		#elUserNav > li > a.ipsUserPhoto{
			background: none;
			display: block;
			line-height: 1px;
			
			margin: 0;
			padding: 4px;
			
			{{if theme.rounded_photos}}
			border-radius: 50%;
			{{else}}
			border-radius: 0;
			{{endif}}
		}
		
			#elUserNav .ipsUserPhoto img{
				width: auto;
				height: {expression="theme.userheight - 8"}px;
				max-width: 100%;
				border-radius: inherit;
				vertical-align: top;
			}
			
				#elUserNav .ipsUserPhoto:before,
				#elUserNav .ipsUserPhoto:after{
					top: 4px; left: 4px; right: 4px; bottom: 4px;
				}
	
	.cUserNav_icon .fa{
		line-height: inherit;
		vertical-align: top;
	}
	
	#cUserLink .fa,
	#cCreate .fa{
		vertical-align: middle;
	}
	
	body.ipsApp #elUserNav .ipsNotificationCount{
		left: auto;
		right: -3px;
		top: -3px;
		border-radius: 3px;
	}
	
		html[dir='rtl'] #elUserNav .ipsNotificationCount{
			right: auto;
			left: -3px;
		}

/* Social sign in */
#elUserNav .cShareLink{
	line-height: 28px;
	vertical-align: middle;
	padding: 0;
	margin: 0 8px;
}

/* Modified icons */
.cNotifications .fa-bell:before{ content: "\f0ac"; }
.cInbox .fa-envelope:before{ content: "\f086"; }
.cReports .fa-warning:before{ content: "\f071"; }

/* Bug fix: Restore size of Sign in arrow if popups are disabled */
#elUserNav #elSignInLink .fa{ font-size: 14px; }


/* User link dropdown menu icons */
#elUserLink_menu a{ line-height: 16px; }
#elCreateNew_menu a{ line-height: 20px; }

#elUserLink_menu a:before,
#elCreateNew_menu a:before{
	content: '\f0c9';
	width: 22px;
	font-size: 14px;
	display: inline-block;
	font-family: 'FontAwesome';
	font-style: normal;
	font-weight: normal;
	vertical-align: top;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transform: translate(0,1px);
}

html[dir='rtl'] #elUserLink_menu a:before,
html[dir='rtl'] #elCreateNew_menu a:before{
	margin-right: 0;
	margin-left: 6px;
}

#elUserLink_menu li[data-menuItem='profile'] a:before {
	content:"\f007"
}
#elUserLink_menu li[data-menuItem='messages'] a:before {
	content:"\f01c"
}
#elUserLink_menu li[data-menuItem='promote'] a:before {
	content:"\f005"
}
#elUserLink_menu li[data-menuItem='manageFollowed'] a:before {
	content:"\f1d8"
}
#elUserLink_menu li[data-menuItem='attachments'] a:before {
	content:"\f0c6"
}
#elUserLink_menu li[data-menuItem='settings'] a:before {
	content:"\f013"
}
#elUserLink_menu li[data-menuItem='ignoredUsers'] a:before {
	content:"\f05e"
}
#elUserLink_menu li[data-menuItem='modcp'] a:before {
	content:"\f046"
}
#elUserLink_menu li[data-menuItem='admincp'] a:before {
	content:"\f023";
}
#elUserLink_menu li[data-menuItem='signout'] a:before {
	content:"\f08b";
	width: 18px;
}
#elCreateNew_menu a:before {
	content:"\f0fe"
}
#elCreateNew_menu a[href*="/forum/"]:before {
	content:"\f086"
}
#elCreateNew_menu a[href*="announcements"]:before {
	content:"\f0a1"
}
#elCreateNew_menu a[data-role="updateStatus"]:before {
	content:"\f086"
}
#elCreateNew_menu a[href*="/files/"]:before {
	content:"\f019"
}
#elCreateNew_menu a[href*="/gallery/"]:before {
	content:"\f03e"
}
#elCreateNew_menu a[href*="/blogs/"]:before {
	content:"\f02d"
}
#elCreateNew_menu a[href*="/calendar/"]:before {
	content:"\f073"
}
#elCreateNew_menu a[href*="/articles"]:before {
	content:"\f0f6"
}

#elUserLink_menu li[data-menuItem='admincp'] i {
	display:none;
}



/*
	----------------
	- Navigation
	----------------
*/

/* Loading and More classes */
.focus-nav-hidden{
	position: absolute !important;
	pointer-events: none;
	z-index: -1;
	right: 0;
	visibility: hidden;
}
	.focus-nav-hidden .ipsNavBar_secondary{
		display: none !important;
	}
	
.focus-nav-loading{ overflow: hidden; }

.focus-nav{
	-webkit-flex: 1 1 auto;
	flex: 1 1 auto;
}

/* Hide nav-bar on tablets */
@media screen and (max-width:979px){
	.ipsApp .nav-bar,
	.ipsApp .focus-nav{
		display: none;
	}
}

/* Reset defaults */
#ipsLayout_header nav{
	background: transparent;
	height: auto;
}

.ipsNavBar_primary{
	padding: 0;
	border-radius: 0;
	font-size: 0;
	top: auto;
}

	/* Align links */
	.ipsNavBar_primary{
		text-align: left;
	}
	
	html[dir='rtl'] .ipsNavBar_primary{
		text-align: right;
	}
	
		/* Align navigation links to the right */
		.focus-nav-right .ipsNavBar_primary{
			text-align: right;
		}
		
		html[dir='rtl'] .focus-nav-right .ipsNavBar_primary{
			text-align: left;
		}
		
		/* Revert text alignment for submenus */
		html[dir='ltr'] .ipsApp .ipsNavBar_primary .ipsNavBar_secondary,
		html[dir='ltr'] .ipsApp .ipsNavBar_primary .ipsMenu{
			text-align: left;
		}
		
		html[dir='rtl'] .ipsApp .ipsNavBar_primary .ipsNavBar_secondary,
		html[dir='rtl'] .ipsApp .ipsNavBar_primary .ipsMenu{
			text-align: right;
		}

.ipsNavBar_primary > ul{
	max-height: {theme="navigationheight"}px;
}

.ipsNavBar_primary > ul,
.ipsNavBar_secondary{
	list-style: none;
}
	
	html[dir="ltr"] .ipsNavBar_primary > ul > li,
	html[dir="ltr"] .ipsNavBar_secondary > li,
	html[dir="rtl"] .ipsNavBar_primary > ul > li,
	html[dir="rtl"] .ipsNavBar_secondary > li{
		float: none;
	}

	.ipsNavBar_primary > ul > li{
		vertical-align: top;
		background-clip: padding-box;
	}
	
	body.ipsApp .ipsNavBar_primary > ul > li > a{
		margin: 0;
	}
	
	.ipsNavBar_primary > ul > li > a{
		border-radius: 0;
		padding: 0px 20px;
		font-size: inherit;
		line-height: {theme="navigationheight"}px;
	}
	
	/* Reset link text and background */
	.ipsNavBar_primary > ul > li > a,
	.ipsNavBar_primary > ul > li.ipsNavBar_active > a,
	.ipsNavBar_primary > ul > li > a:hover{
		background: none;
		color: inherit;
	}
		
		/* Hover link */
		.ipsNavBar_primary > ul > li:hover > a{
			color: {theme="main_nav_font"};
		}
		
		/* Active link */
		.ipsNavBar_primary > ul > li[data-active] > a{
			color: {theme="main_nav_font"};
		}


/*
	----------------
	- Navigation icons
	----------------
*/

.ipsNavBar_primary a::before{
	content: "\f0f6";
	font-family: "FontAwesome";
	font-size: 14px;
	font-weight: normal;
	display: inline-block;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	{prefix="transform" value="translate(0,0)"}
	margin-right: 4px;
	opacity: 0.6;
	line-height: 1;
	vertical-align: middle;
}

	html[dir='rtl'] .ipsNavBar_primary a::before{
		margin-right: 0;
		margin-left: 4px;
	}

/* Remove from indented list */
.ipsNavBar_secondary .ipsNavBar_secondary > li > a::before{
	display: none;
}

.ipsNavBar_secondary > li > a::before{
	width: 16px;
}

.ipsNavBar_primary li > a.ipsNavBar_community_home::before{ content: "\f015" }
.ipsNavBar_primary li[data-navapp="nexus"] > a::before{ content: "\f07a" }
.ipsNavBar_primary li[data-navext="Support"] > a::before{ content: "\f1cd" }
.ipsNavBar_primary li[data-navapp="forums"] > a::before{ content: "\f086" }
.ipsNavBar_primary li[data-navapp="gallery"] > a::before{ content: "\f030" }
.ipsNavBar_primary li[data-navapp="downloads"] > a::before{ content: "\f019" }
.ipsNavBar_primary li[data-navapp="cms"] > a::before{ content: "\f15c" }
.ipsNavBar_primary li[data-navapp="blog"] > a::before{ content: "\f02d" }
.ipsNavBar_primary li[data-navapp="calendar"] > a::before{ content: "\f073" }
.ipsNavBar_primary li[data-navapp="chat"] > a::before{ content: "\f27a" }
.ipsNavBar_primary li[data-navext="StaffDirectory"] > a::before{ content: "\f007" }
.ipsNavBar_primary li[data-navext="OnlineUsers"] > a::before{ content: "\f0c0" }
.ipsNavBar_primary li[data-navext="Search"] > a::before{ content: "\f002" }
.ipsNavBar_primary li[data-navext="Guidelines"] > a::before{ content: "\f071" }
.ipsNavBar_primary li[data-navext="Leaderboard"] > a::before{ content: "\f091" }
.ipsNavBar_primary li[data-navext="Clubs"] > a::before{ content: "\f0c0" }
.ipsNavBar_primary li[data-navext="Promoted"] > a::before{ content: "\f14a" }
.ipsNavBar_primary li > a[href*="/discover/"]::before{ content: "\f0f6" }
.ipsNavBar_primary li[data-navext="AllActivity"] > a::before{ content: "\f0ac" }
.ipsNavBar_primary li[data-navext="YourActivityStreams"] > a::before{ content: "\f03a" }
.ipsNavBar_primary li[data-navext="YourActivityStreamsItem"] > a[href*='discover/unread']:before{ content: "\f0c5" }
.ipsNavBar_primary li[data-navext="YourActivityStreamsItem"] > a[href*='discover/content-started']:before{ content: "\f234" }
.ipsNavBar_primary #elBackHome:before{ content: "\f0a8" }
.ipsNavBar_primary #elNavigationMore > a::before,
.ipsNavBar_primary .focus-nav-more > a::before{ content: "\f0c9" }
/* Setting icons for default links may not work correctly if certain addons aren't installed */
#elNavSecondary_1 > a::before{ content: "\f03a" }
#elNavSecondary_2 > a::before{ content: "\f0a1" }

html[dir='ltr'] .nav-arrow > .fa-caret-down{ margin-left: 4px; }
html[dir='rtl'] .nav-arrow > .fa-caret-down{ margin-right: 4px; }

/* Hide arrow from dropdown child links since one already exists */
.ipsNavBar_secondary .nav-arrow > .fa-caret-down{
	display: none;
}


/*
	----------------
	- Dropdown Navigation Menus
	----------------
*/

	/* Hide secondary nav bar */
	.ipsNavBar_primary:not(.ipsNavBar_noSubBars) > ul:before,
	#ipsLayout_header nav.ipsNavBar_noSubBars:after{
		display: none;
	}

	.ipsNavBar_primary > ul > li{
		position: relative;
	}
	
	.ipsNavBar_primary > ul > li:hover{
		z-index: 1;
	}
	
		.ipsNavBar_secondary{
			background: currentColor;
			border-color: currentColor; /* Arrow */			
			
			min-width: 175px;
			border-radius: 0px 0px 3px 3px;
			display: block !important;
			top: 100%; left: 0; right: auto; bottom: auto;
			z-index: auto;
			height: auto;
			white-space: nowrap;
			pointer-events: none;
			
			transform-origin: 50% 0;
			opacity: 0;
			visibility: hidden;
			transition: all 0.2s ease-in-out 0s, visibility 0s linear 0.2s;
			
			top: calc(100% + 8px);
			border-radius: 3px;
			transform: translateY(6px);
			padding-top: 5px;
		}
		
		/* Hover */
		.ipsNavBar_primary > ul > li:hover .ipsNavBar_secondary{
			pointer-events: auto;

			visibility: visible;
			opacity: 1;
			transition-delay: 0s, 0s;
			
			transform: translateY(0);
		}
			
			/* Align last menu to the right if they exist, and for RTL */
			html[dir='rtl'] .ipsNavBar_secondary,
			.focus-nav-right .ipsNavBar_primary > ul > li:nth-last-of-type(1) > .ipsNavBar_secondary,
			.focus-nav-right .ipsNavBar_primary > ul > li:nth-last-of-type(2) > .ipsNavBar_secondary,
			.focus-nav-right .ipsNavBar_primary > ul > li:nth-last-of-type(3) > .ipsNavBar_secondary,
			.ipsNavBar_primary > ul > li.focus-nav-more > .ipsNavBar_secondary{
				right: 0;
				left: auto;
			}
			
			/* Above, but for RTL */
			html[dir="rtl"] .focus-nav-right .ipsNavBar_primary > ul > li:nth-last-of-type(1) > .ipsNavBar_secondary,
			html[dir="rtl"] .focus-nav-right .ipsNavBar_primary > ul > li:nth-last-of-type(2) > .ipsNavBar_secondary,
			html[dir="rtl"] .focus-nav-right .ipsNavBar_primary > ul > li:nth-last-of-type(3) > .ipsNavBar_secondary,
			html[dir='rtl'] .ipsNavBar_primary > ul > li.focus-nav-more > .ipsNavBar_secondary{
				right: auto;
				left: 0;
			}
		
		/* Dropdown menu arrow */
		.ipsNavBar_primary > ul > li > .ipsNavBar_secondary:before{
			content: "";
			position: absolute;
			top: -6px; left: 20px;
			border: 6px solid transparent;
			border-top: 0;
			border-bottom-color: currentColor;
		}
		
			html[dir='rtl'] .ipsNavBar_primary > ul > li > .ipsNavBar_secondary:before,	
			.focus-nav-right .ipsNavBar_primary > ul > li:nth-last-of-type(1) > .ipsNavBar_secondary:before,
			.focus-nav-right .ipsNavBar_primary > ul > li:nth-last-of-type(2) > .ipsNavBar_secondary:before,
			.focus-nav-right .ipsNavBar_primary > ul > li:nth-last-of-type(3) > .ipsNavBar_secondary:before,
			.ipsNavBar_primary > ul > li.focus-nav-more > .ipsNavBar_secondary:before{
				left: auto;
				right: 20px;
			}
			
			/* Above, but for RTL */
			html[dir='rtl'] .focus-nav-right .ipsNavBar_primary > ul > li:nth-last-of-type(1) > .ipsNavBar_secondary:before,
			html[dir='rtl'] .focus-nav-right .ipsNavBar_primary > ul > li:nth-last-of-type(2) > .ipsNavBar_secondary:before,
			html[dir='rtl'] .focus-nav-right .ipsNavBar_primary > ul > li:nth-last-of-type(3) > .ipsNavBar_secondary:before,
			html[dir='rtl'] .ipsNavBar_primary > ul > li.focus-nav-more > .ipsNavBar_secondary:before{
				right: auto;
				left: 20px;
			}
		
			/* Cover gap with pseudo element */
			.ipsNavBar_primary > ul > li > .ipsNavBar_secondary:after{
				content: "";
				position: absolute;
				top: -8px;
				left: 0; right: 0;
				height: 8px;
			}

		
		html .ipsApp .ipsNavBar_secondary > li{
			display: block;
			float: none;
		}
		
		/* Force hide More menu in dropdowns */
		html .ipsApp .ipsNavBar_secondary > li.ipsHide{
			display: none;
		}

		.ipsNavBar_secondary,
		.ipsNavBar_primary > ul > li .ipsMenu{
			font-size: 1.2rem;
		}
		
		.ipsNavBar_secondary > li > a{
			font-size: inherit;
			float: none;
			text-align: left;
			white-space: nowrap;
			line-height: 1.3;
		}

			html[dir='rtl'] .ipsNavBar_secondary > li > a{
				text-align: right;
			}
		
		html[dir='ltr'] .ipsNavBar_secondary > li > a{
			padding: 12px 24px 12px 12px;
		}
		
		html[dir='rtl'] .ipsNavBar_secondary > li > a{
			padding: 12px 12px 12px 24px;
		}
		
			.ipsNavBar_secondary > li > a:hover{
				color: {theme="main_nav_tab_font"};
			}
		
		.ipsNavBar_secondary li:last-of-type,
		.ipsNavBar_secondary li:last-of-type a:not(.ipsButton){
			border-bottom-left-radius: inherit;
			border-bottom-right-radius: inherit;
		}
			
			



/* Attached dropdown menus */
.focus-attached-dropdowns .ipsNavBar_secondary{
	transform: scaleY(0.7);
	top: auto;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
	padding: 0;
}

	.focus-attached-dropdowns .ipsNavBar_primary > ul > li:hover .ipsNavBar_secondary{
		transform: scaleY(1);
	}

	/* Hide dropdown arrow */
	.focus-attached-dropdowns .ipsNavBar_primary > ul > li > .ipsNavBar_secondary:before,
	.focus-attached-dropdowns .ipsNavBar_primary > ul > li > .ipsNavBar_secondary:after{
		display: none;
	}




/* Navigation on minimal pages */
.ipsNavBar_primary.ipsNavBar_noSubBars{
	padding: 0;
	margin: 0;
}
#ipsLayout_header nav.ipsNavBar_noSubBars,
.ipsLayout_minimal #ipsLayout_header nav{
	margin: 0;
}


/* Secondary menus in dropdowns */
.ipsNavBar_secondary .ipsNavBar_secondary{
	position: static !important;
	z-index: auto !important;
	color: {hextorgb="main_nav_tab_font" opacity="0.6"};
	transform: none;
	transition: none;
	opacity: 1;
	padding: 0;
	min-width: 0;
	max-width: none;
	width: inherit;
	border: 0;
	border-radius: 0;
	box-shadow: inset {hextorgb="main_nav_tab_font" opacity="0.08"} 0px 1px 0px, inset {hextorgb="main_nav_tab_font" opacity="0.08"} 0px -1px 0px;
	background: {hextorgb="main_nav_tab_font" opacity="0.04"};
}

	/* Push in links */
	html[dir='ltr'] .ipsNavBar_secondary .ipsNavBar_secondary > li > a{
		padding-left: 36px;
	}
	
	html[dir='rtl'] .ipsNavBar_secondary .ipsNavBar_secondary > li > a{
		padding-right: 36px;
	}
	
	/* Remove inherited font-weight from active, but apply to actual active link */
	.ipsNavBar_secondary .ipsNavBar_secondary > li a,
	.ipsNavBar_secondary .ipsMenu > li a{
		font-weight: normal;
	}
	
	.ipsNavBar_secondary .ipsNavBar_secondary > li[data-active] a{
		font-weight: bold;
	}

	.ipsNavBar_secondary [data-musheddropdown] > .ipsMenu_item > a{
		color: {hextorgb="main_nav_tab_font" opacity="0.6"};
	}
	
	.ipsNavBar_secondary [data-musheddropdown] > .ipsMenu_item > a:hover{
		color: {theme="main_nav_tab_font"};
		background-color: {hextorgb="main_nav_tab_font" opacity="0.05"} !important;
	}

	.ipsNavBar_primary .ipsMenu > li > a{
		color: inherit;
	}
	
		.ipsNavBar_primary .ipsMenu > li > a:before{
			display: none;
		}
	
	/* Align arrow icons inside .ipsNavBar_secondary parent links */
	.ipsNavBar_secondary > li > a .fa-caret-down{
		position: absolute;
		right: 10px;
		margin-top: 2px;
	}
	
	html[dir='rtl'] .ipsNavBar_secondary > li > a .fa-caret-down{
		right: auto;
		left: 10px;
	}
	
	/* Bug fix: Remove duplicate FA arrow on IPS dropdown links when their parent is inside the More menu */
	.ipsNavBar_secondary .ipsMenu_subItems .fa-caret-down{ display: none; }
	
	/* Bug fix: Assign correct colour to ipsButton in navigation dropdown menus */
	.ipsNavBar_secondary a.ipsButton_primary{
		background-color: {theme="primary_button"} !important;
	}
	.ipsNavBar_primary .ipsMenu > li > a.ipsButton_primary{
		color: {theme="primary_button_font"};
	}


/*
	----------------
	- Mobile navigation header
	----------------
*/

.mobile-nav-wrap{
	position: relative;
	z-index: 510;
}

@media (min-width: 980px){
	.mobile-nav-wrap{
		display: none;
	}
}

@media (max-width: 979px){
	#elMobileNav{
		display: flex !important;
	}
}

#elMobileNav{
	background: {theme="mobile_back"};
	position: relative;
	z-index: 10;
	justify-content: flex-end;
	align-items: center;
}

	#elMobileNav li{
		flex: 0 0 auto;
	}

	#elMobileNav #elMobileBreadcrumb{
		flex: 0 1 auto;
		position: relative;
		top: auto;
		left: auto;
		right: auto;
		margin-right: auto;
		margin-left: 20px;
		color: {hextorgb="mobile_back_font" opacity="0.25"};
		background-color: currentColor;
	}
		html[dir='rtl'] #elMobileNav #elMobileBreadcrumb{
			margin-left: auto;
			margin-right: 20px;
		}

		html[dir="ltr"] #elMobileBreadcrumb{ border-radius: 0px 3px 3px 0px; }
		html[dir="rtl"] #elMobileBreadcrumb{ border-radius: 3px 0px 0px 3px; }

		#elMobileBreadcrumb a{
			max-width: none;
			display: block;
		}

		#elMobileBreadcrumb:before{ color: inherit; }

		html[dir="ltr"] #elMobileBreadcrumb:before{
			border-color: transparent transparent currentColor currentColor;
		}

		html[dir="rtl"] #elMobileBreadcrumb:before{
			border-color: currentColor currentColor transparent transparent;
		}


	html[dir='ltr'] #elMobileBreadcrumb + li{
		margin-left: 10px;
	}

	html[dir='rtl'] #elMobileBreadcrumb + li{
		margin-right: 10px;
	}

	#elMobileNav li:not( #elMobileBreadcrumb ) a {
		color: {theme="mobile_back_font"};
		width: 40px;
		font-size: 20px;
	}


#elMobileNav .icon-newspaper{
	font-size: inherit;
	vertical-align: baseline;
}

	#elMobileNav .icon-newspaper:before{
		content: "\f15c";
	}





/* Modify button borders */
#elMobileDrawer .ipsButton:after{
	border-color: transparent;
	border-top-color: rgba(255,255,255,0.1);
}

.ipsDrawer_menu{
	background: #212121;
}
	.ipsDrawer_menu .ipsButton_light{
		background: rgba(255,255,255,0.1);
		color: #fff;
		border: 0;
	}
	
	.ipsDrawer_menu .cUserNav_icon a{ color: #eee; }
	
	
	
/*
	----------------
	- Search
	----------------
*/

.ipsfocus-search{
	width: 300px;
	height: {theme="searchheight"}px;
	line-height: {theme="searchheight"}px;
	-webkit-flex: 0 0 auto;
	flex: 0 0 auto;
	position: relative;
	z-index: 5;
}

	html[dir='ltr'] .ipsfocus-search{
		padding-left: 10px;
	}

	html[dir='rtl'] .ipsfocus-search{
		padding-right: 10px;
	}

/* Hide search from navigation bar due to custom location */
.ipsNavBar_primary #elSearchWrapper{
	display: none;
}

#elSearch{
	padding: 0;
}
	
	/* Border radius */
	#elSearch form{ border-radius: inherit; }
	
	/* Dimensions */
	#elSearch,
	#elSearch form,
	#elSearch input[type="search"],
	#elSearch button {
		height: inherit;
		line-height: inherit;
	}
	
	#elSearch form{
		position: relative;
	}
	
	/* Text colour */
	#elSearch input,
	#elSearch button{
		color: inherit;
	}
	
	/* Placeholder */
	#elSearch ::-webkit-input-placeholder { opacity: 0.8; color: inherit; }
	#elSearch :-ms-input-placeholder { opacity: 0.8; color: inherit; }
	#elSearch ::placeholder { opacity: 0.8; color: inherit; }

	/* Button */
	#elSearch button{
		cursor: pointer;
		line-height: inherit !important;
		padding: 0 10px;
		border: 0;
		background: none;
		border-radius: inherit;
		position: relative;
		min-width: 36px;
		min-width: var(--search-button-width);
	}

		html[dir='ltr'] #elSearch button{
			border-top-left-radius: 0;
			border-bottom-left-radius: 0;
		}

		html[dir='rtl'] #elSearch button{
			border-top-right-radius: 0;
			border-bottom-right-radius: 0;
		}

		#elSearch button::before{
			content: '';
			position: absolute; top: 0; left: 0; right: 0; bottom: 0;
			border-radius: inherit;
			background: currentColor;
			opacity: 0.05;
		}

			#elSearch button:hover::before{
				opacity: 0.1;
			}
	
		#elSearch button .fa{
			line-height: inherit;
			display: block;
		}

	/* Advanced search dropdown */
	#elSearchExpanded{
		padding: 0;
		line-height: 1.6;
		border: 0;
		top: 100%;
		left: 0;
		right: auto;
		margin-top: 8px;
		border-radius: 4px;
		width: 100%;
		width: calc(100% - var(--search-button-width));
		box-shadow: {hextorgb="text_color" opacity="0.25"} 0px 0px 0px 1px, 0px 1px 4px rgba(0,0,0,0.1), rgba(0,0,0,0.4) 0px 40px 50px;
		color: {theme="text_light"};
		background: {theme="area_background_reset"};
		border-color: {theme="area_background_reset"};
	}

		html[dir="rtl"] #elSearchExpanded{
			right: 0;
			left: auto;
		}

		/* Menu arrow */
		#elSearchExpanded:before,
		#elSearchExpanded:after{
			content: '';
			box-sizing: border-box;
			border: 6px solid transparent;
			position: absolute;
			top: -12px;
			left: 12px;
			border-bottom-color: inherit;
		}

			#elSearchExpanded:before{
				border-bottom-color: {hextorgb="text_color" opacity="0.25"};
				margin-top: -1px;
			}

		/* Title */
		#elSearchExpanded .ipsMenu_title{
			border: 0;
			border-radius: 0;
			background: none;
			color: {theme="text_dark"};
		}

			#elSearchExpanded .ipsMenu_title:not(:first-child){
				margin-top: 20px;
			}

		/* List wrapper */
		#elSearchExpanded .ipsSideMenu_list{
			margin: 0 !important;
			background: none;
			border: 0;
			padding: 0 8px;
		}

			#elSearchExpanded .ipsSideMenu_list:last-child{
				padding-bottom: 6px;
			}

			/* Inherit border radius */
			#elSearchExpanded .ipsSideMenu_list,
			#elSearchExpanded .ipsSideMenu_list > li,
			#elSearchExpanded .ipsSideMenu_item{
				border-radius: inherit;
			}

			/* Item */

				/* Hover */
				#elSearchExpanded .ipsSideMenu_item:not(.ipsSideMenu_itemActive):hover{
					background: {hextorgb="text_light" opacity="0.1"};
				}

				/* Active item */
				#elSearchExpanded .ipsSideMenu_itemActive{
					color: {theme="text_color"};
					background: {hextorgb="text_light" opacity="0.15"};
					font-weight: bold;
				}

				/* Item icon */
				#elSearchExpanded .ipsSideMenu_item::after{
					color: inherit;
				}

				#elSearchExpanded .ipsSideMenu_item:not(.ipsSideMenu_itemActive)::after{
					opacity: 0.3;
				}


/* Desktop search */
@media screen and (min-width:980px){
	
	#elSearch,
	#elSearch.cSearchExpanded{
		width: auto;
	}
	
	html[dir="ltr"] #elSearch,
	html[dir="rtl"] #elSearch{
		margin: 0;
	}
	
	#elSearch form{
		display: -webkit-flex;
		display: flex;
		-webkit-align-items: center;
		align-items: center;
		vertical-align: top;
	}
	
	#elSearch input[type="search"]{
		padding: 0;
		padding-left: 10px;
		position: relative;
		-webkit-flex: 1 1 auto;
		flex: 1 1 auto;
		width: 100%;
		z-index: auto;
		max-width: none;
	}

		html[dir="rtl"] #elSearch input[type="search"] {
			padding: 0px 10px 0px 0px;
		}

	#elSearch button{
		position: relative;
		-webkit-flex: 0 0 auto;
		flex: 0 0 auto;
	}
		
}



/* Mobile search */
.mobile-search-wrap{
	display: none;
	padding: 8px;
	position: absolute;
	top: 100%;
	left: 0; right: 0;
	z-index: 5;
	transform: translateY(-105%);
	opacity: 0;
	pointer-events: none;
	transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;

	background-color: {theme="mobile_back"};
	background-image: linear-gradient(to bottom, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0.1) 100%);
}

	.mobile-search #elSearch{
		height: 40px;
		line-height: 40px;
	}

@media screen and (max-width:979px){

	/* Show search only on mobiles, when activated */
	.mobile-search-wrap{
		display: block;
	}
		.show-mobile-search-wrap .mobile-search-wrap{
			opacity: 1;
			transform: translateY(0%);
			pointer-events: auto;
		}
	
	#elSearch{
		background: rgba(255,255,255,0.85);
		background-image: linear-gradient(to bottom, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0) 100%);
		box-shadow: rgba(0,0,0,0.1) 0px 1px 3px;
		color: #222;
		border-radius: 3px;
		float: none !important;
		display: block;
		width: 100%;
	}

		#elSearch form{
			display: flex;
		}
	
			#elSearch input[type="search"]{
				font-size: 1.6rem;
				width: auto;
				max-width: none;
				flex: 1 1 100%;
				position: static;
				padding: 0 12px;
			}
	
	/* Hide desktop search */
	.ipsfocus-search{
		display: none;
	}
	
}



/*
	----------------
	- Precontent blocks and padding
	----------------
*/

/* Remove default value */
#ipsLayout_mainArea{
  min-height: 0;
  max-width: 100%;
}

/* Add margins to break up pre-content divs */
.precontent-blocks > div,
#elLicenseKey{
	margin-bottom: 10px;
}


/* Configure content padding */
.content-padding{ padding: 10px; }

@media screen and (min-width:768px) and (max-width:979px){
	.ipsApp .content-padding{ padding: 10px; }
}

@media screen and (max-width:767px){
	.ipsApp .content-padding{ padding: 7px; }
}



/* Content padding */
@media screen and (min-width:980px){
	
	#ipsLayout_sidebar,
	html[dir="rtl"] #ipsLayout_sidebar{ padding: 12px; }
	html[dir="ltr"] #ipsLayout_contentWrapper #ipsLayout_sidebar.ipsLayout_sidebarright,
	html[dir="rtl"] #ipsLayout_contentWrapper #ipsLayout_sidebar.ipsLayout_sidebarleft{ padding-right: 0; }
	html[dir="ltr"] #ipsLayout_contentWrapper #ipsLayout_sidebar.ipsLayout_sidebarleft,
	html[dir="rtl"] #ipsLayout_contentWrapper #ipsLayout_sidebar.ipsLayout_sidebarright{ padding-left: 0; }
	#ipsLayout_mainArea{ padding-left: 0; padding-right: 0; }
	
	/* Remove top padding from content columns */
	#ipsLayout_mainArea,
    #ipsLayout_sidebar,
	html[dir="rtl"] #ipsLayout_sidebar,
	#ipsLayout_contentWrapper #ipsLayout_sidebar:first-child{
		padding-top: 0;
	}
	
	/* Configure column gutter */
	html[dir="ltr"] #ipsLayout_sidebar.ipsLayout_sidebarright,
	html[dir="rtl"] #ipsLayout_sidebar.ipsLayout_sidebarleft{
		padding-left: 15px;
	}
	
	html[dir="rtl"] #ipsLayout_sidebar.ipsLayout_sidebarright,
	html[dir="ltr"] #ipsLayout_sidebar.ipsLayout_sidebarleft{
		padding-right: 15px;
	}
	
}

@media screen and (max-width:979px){
	
	/* Remove background from sidebar */
	#ipsLayout_sidebar{
		background: none;
		margin: 0;
	}
	
	/* Let .content-padding control the left and right padding */
	#ipsLayout_mainArea,
	body.ipsApp #ipsLayout_sidebar.ipsLayout_sidebarright,
	body.ipsApp #ipsLayout_sidebar.ipsLayout_sidebarleft{
		padding-left: 0;
		padding-right: 0;
	}
	
	/* Remove top padding from sidebar in vertical layouts, otherwise it's doubled up due to the bottom padding on #ipsLayout_mainArea */
	#ipsLayout_mainArea + #ipsLayout_sidebar{
		padding-top: 0;
	}
	
	#ipsLayout_contentWrapper #ipsLayout_sidebar:first-child{
		padding: 0;
	}
	
	#ipsLayout_contentWrapper #ipsLayout_mainArea:first-child{
		padding-top: 0;
	}
}


		
/*
	----------------
	- Breadcrumb Navigation
	----------------
*/

/* Link angles */
.ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:before,
.ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:after{
	/* Highlight */
	color: rgba(255,255,255,1);
	/* Shadow */
	border-color: rgba(0,0,0,0.2);
}

/* Hover */
.ipsBreadcrumb > ul[data-role="breadcrumbList"] li:hover > a:before,
.ipsBreadcrumb > ul[data-role="breadcrumbList"] li:hover > a:after,
.ipsBreadcrumb .ipsList_inline li a:hover{
	background: rgba(255,255,255,0.4);
}

/* Active */
.ipsApp .ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:active:before,
.ipsApp .ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:active:after,
.ipsApp .ipsBreadcrumb .ipsList_inline li a:active{
	background: rgba(0,0,0,0.07);
}

/* Side links */
.ipsBreadcrumb .ipsList_inline li{
	border-color: rgba(0,0,0,0.06);
}


.ipsfocus-breadcrumb{
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}

.ipsApp .ipsBreadcrumb{
	line-height: {expression="theme.social_height"}px; /* Reduced for border */
	font-size: 11.5px;
	
	-webkit-flex: 1 1 auto;
	flex: 1 1 auto;
	font-weight: bold;
	border: 0;
	transition: none;
	overflow: hidden;
	margin: 0;
	padding: 0;
	opacity: 1;
	
	position: relative;
}

	.ipsBreadcrumb:before{
		content: '';
		position: absolute;
		top: 0; left: 0; right: 0; bottom: 0;
		z-index: 2;
		pointer-events: none;
		
		border-radius: inherit;
		border-color: inherit;
		border-style: solid;
		border-width: 0;
	}
	
	.ipsBreadcrumb ul,
	.ipsBreadcrumb #elRSS{
		position: relative;
	}
	
	.ipsApp .ipsBreadcrumb a {
		color: inherit;
		display: block;
		font-size: inherit;
		font-weight: inherit;
	}
		.ipsApp .ipsBreadcrumb a:hover{
			color: inherit;
		}

	/* Reset all list items */
	.ipsBreadcrumb > ul > li{
		line-height: inherit;
		height: auto;
		max-width: none;
		overflow: visible;
		color: inherit;
		font-weight: inherit;
		font-size: inherit;
	}
	
	.ipsBreadcrumb > ul[data-role="breadcrumbList"] > li:last-child{ opacity: 1; }
	
	.ipsBreadcrumb > ul[data-role="breadcrumbList"],
	.ipsBreadcrumb > ul[data-role="breadcrumbList"] li{
		margin: 0;
		padding: 0;
		list-style: none;
		color: inherit;
	}
	
	/* Breadcrumbs */
	.ipsBreadcrumb > ul[data-role="breadcrumbList"]{
		display: block;
		border-radius: inherit;
		overflow: hidden;
	}
	
		html[dir='ltr'] .ipsBreadcrumb > ul[data-role="breadcrumbList"] li{
	    	float: left;
	    	padding-left: 15px;
		}
		
		html[dir="rtl"] .ipsBreadcrumb > ul[data-role="breadcrumbList"] li{
			float: right;
			padding-right: 15px;
		}
		
			.ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a{
		    	padding: 0 15px;
		    	
		    	position: relative;
		    	z-index: 1;
			}
			
			html[dir='ltr'] .ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a{
				margin-left: -15px;
			}
			
			html[dir='rtl'] .ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a{
				margin-right: -15px;
			}
	
	/* Link angles */
	.ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:before,
	.ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:after{   	
		border-style: solid;
		border-width: 0px 1px 0px 0px;
    	box-shadow: inset currentColor -1px 0px 0px 0px;   	
    	content: '';
    	position: absolute;
    	height: 50%;
    	width: 100%;
    	right: 0;
    	z-index: -1;
    	box-sizing: border-box;
    	transform-origin: 100% 50%;
	}
	
	.ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:before{
    	top: 0;
    	transform: skewX(30deg);
    }
    
	.ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:after{
    	top: 50%;
    	transform: skewX(-30deg);
    }
    
    	html[dir='rtl'] .ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:before,
		html[dir='rtl'] .ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:after{
			right: auto;
			left: 0;
			border-width: 0px 0px 0px 1px;
			box-shadow: inset currentColor 1px 0px 0px 0px;
		}
    
    	html[dir='rtl'] .ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:before{
	    	transform: skewX(-30deg);
	    }
	    
	    html[dir='rtl'] .ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:after{
	    	transform: skewX(30deg);
	    }
	
	/* Active inset shadow */
	.ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:active:before,
	.ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:active:after{
		color: rgba(0,0,0,0.05);
	}
	
		.ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:active:before{
	    	box-shadow: inset currentColor -2px 1px 1px;
		}
		
		.ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:active:after{
	    	box-shadow: inset currentColor -2px -1px 1px;
		}
		
			html[dir='rtl'] .ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:active:before{
		    	box-shadow: inset currentColor 2px 1px 1px;
			}
			
			html[dir='rtl'] .ipsBreadcrumb > ul[data-role="breadcrumbList"] li > a:active:after{
		    	box-shadow: inset currentColor 2px -1px 1px;
			}
	
	/* First link */
	.ipsBreadcrumb > ul[data-role="breadcrumbList"] li:first-of-type > a:before,
	.ipsBreadcrumb > ul[data-role="breadcrumbList"] li:first-of-type > a:after{
		width: calc(100% + 20px);
	}
	
	/* Hide arrow icons */
	.ipsBreadcrumb > ul[data-role="breadcrumbList"] .fa{ display: none; }


	/* Side links */
	.ipsBreadcrumb .ipsList_inline li{
		margin: 0 !important;
		float: left;
		border-style: solid;
		border-width: 0px 0px 0px 1px;
	}
	
		html[dir="rtl"] .ipsBreadcrumb .ipsList_inline li{
			float: right;
			border-width: 0px 1px 0px 0px;
		}
	
			.ipsBreadcrumb .ipsList_inline li a{
				display: block;
				padding: 0 15px;
			}
	
				html[dir="ltr"] .ipsBreadcrumb_bottom .ipsBreadcrumb .ipsList_inline:not(:first-child) li:last-of-type{
					border-right-width: 1px;
				}
				
				html[dir="rtl"] .ipsBreadcrumb_bottom .ipsBreadcrumb .ipsList_inline:not(:first-child) li:last-of-type{
					border-left-width: 1px;
				}
				
/* Remove 'Mark site read' from top breadcrumb */
.ipsBreadcrumb_top .ipsList_inline li:nth-of-type(2):last-of-type{
	display: none;
}

	/* Tick icon */
	.ipsBreadcrumb > ul > li .fa:not(.fa-home){
		margin: 0;
	}
	
	html[dir='ltr'] .ipsBreadcrumb > ul > li .fa{
		margin-right: 3px;
	}
	
	html[dir='rtl'] .ipsBreadcrumb > ul > li .fa{
		margin-left: 3px;
	}


	
/* Unread content icon */
.icon-newspaper{
	display: inline-block;
	font-family: 'FontAwesome';
	vertical-align: middle;
	transform: translate(0,0);
	font-size: 14px;
}

	html[dir='ltr'] .ipsBreadcrumb .icon-newspaper{
		margin-right: 2px;
	}
	
	html[dir='rtl'] .ipsBreadcrumb .icon-newspaper{
		margin-left: 2px;
	}

	.icon-newspaper:before{
		content: '\f07c';
	}



/* RSS icon */	
#elRSS{
	margin: 0 !important;
	padding: 0 10px;
	height: {theme="social_height"}px;
	display: flex;
	align-items: center;
}	

	#elRSS .fa{
		background: #F28826;
		background-image: linear-gradient(to bottom, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 100%);
		color: #fff;
		box-shadow: inset rgba(0,0,0,0.1) 0px 0px 0px 1px;
		text-shadow: rgba(0,0,0,0.1) 0px -1px 0px;
		border-radius: 3px;
		width: 18px; height: 18px; line-height: 18px;
		text-align: center;
		font-size: 12px;
		vertical-align: top;
	}
	
		#elRSS .fa:before{
			content: '\f09e';
		}

	/* Add border for RSS icon */
	.ipsBreadcrumb #elRSS ~ .ipsPos_right li:last-of-type{
		border-width: 0px 1px;
	}



/*
	----------------
	- Social Icons
	----------------
*/
{{if theme.focus_social}}

.ipsfocus_social{
	color: #fff;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;

	-webkit-flex: 0 0 auto;
	flex: 0 0 auto;
	margin: 0;
	padding: 0;
	list-style: none;
}

	.ipsfocus_social.iconButtons a{
		width: {theme="social_height"}px;
		height: {theme="social_height"}px;
	}
	
	.ipsfocus_social li{
	    line-height: {theme="social_height"}px;
	    flex: 0 0 auto;
	    margin: 0;
		padding: 0;
		list-style: none;
	    padding-left: 4px;
	    text-align: center;
	    text-shadow: rgba(0,0,0,0.3) 0px -1px 0px;
	}
	
	html[dir="rtl"] .ipsfocus_social li{
		padding-left: 0;
		padding-right: 4px;
	}
	
	.ipsfocus_social a{
	    color: inherit;
	    background: #444444;
		box-shadow: rgba(0,0,0,0.1) 0px 1px 3px;
	    border-radius: 3px;
	    padding: 0 12px 0 44px;
	    display: block;
	    text-decoration: none;
	    outline: none;
	    position: relative;
	}
	
	.ipsfocus_social a:active{
		box-shadow: inset rgba(0,0,0,0.4) 0px 1px 3px;
		top: 1px;
	}
	
	.ipsfocus_social a:before{
	    content: "\f1e0";
	    background: rgba(255,255,255,0.18);
	    box-shadow: inset rgba(255,255,255,0.15) -1px 0px 0px 0px, rgba(0,0,0,0.1) 1px 0px 0px 0px;
	    border-radius: inherit;
	    position: absolute;
	    top: 1px; left: 1px; bottom: 1px;
	    width: 32px;
	    text-align: center;
		font-family: "FontAwesome";
		font-size: 16px;
		font-weight: normal;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		{prefix="transform" value="translate(0,0)"}
		pointer-events: none;
	}
	
		html[dir='ltr'] .ipsfocus_social a:before{
			border-top-right-radius: 0;
			border-bottom-right-radius: 0;
		}
		
		html[dir='rtl'] .ipsfocus_social a:before{
			border-top-left-radius: 0;
			border-bottom-left-radius: 0;
		}
	
	.ipsfocus_social a:after{
		border: 1px solid rgba(0,0,0,0.2);
		box-shadow: inset rgba(255,255,255,0.15) 0px 1px 0px;
		content: '';
		position: absolute;
		top: 0; left: 0; right: 0; bottom: 0;
		pointer-events: none;
		border-radius: inherit;
	}
	
		.ipsfocus_social a:hover:after{
			background: rgba(255,255,255,0.2);
		}
		
		.ipsfocus_social a:active:after{
			background: rgba(0,0,0,0.1);
		}
	
	.ipsfocus_social.iconButtons a{
	    padding: 0;
	    overflow: hidden;
	    text-indent: 120%;
	}
	
	.ipsfocus_social.iconButtons a:before{
	    background: none;
	    text-indent: 0;
	    left: 0;
	    width: 100%;
	    box-shadow: none;
	}
	
	.ipsfocus_social.textButtons a{ padding: 0 12px; }
	.ipsfocus_social.textButtons a:before{ display: none; }

	/* Footer icons for mobile */
	#ipsLayout_footer .ipsfocus_social{
		-webkit-justify-content: center;
		justify-content: center;
	}
	
		#ipsLayout_footer .ipsfocus_social li{
			margin: 0 3px;
			padding: 0;
		}
		
		#ipsLayout_footer .ipsfocus_social a{
			color: inherit;
		}
		
	{{if theme.footer_text == "#ffffff"}}
		
		#ipsLayout_footer .ipsfocus_social a:after{
			border-width: 0;
		}
	
	{{endif}}
		
		@media screen and (max-width:979px){
			#ipsLayout_footer .ipsfocus_social{
				margin: 10px 0;
			}
		}

.ipsfocus_social a[href*='discordapp.com']:before,
.ipsfocus_social a[href*='discord.gg']:before{
	content: '';
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAAA5CAYAAACh6qw/AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyNpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQwIDc5LjE2MDQ1MSwgMjAxNy8wNS8wNi0wMTowODoyMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjU5RTI0Qjc5MDk0QjExRTg5N0M0QjMxNUU3NzU3MTQ4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjU5RTI0QjdBMDk0QjExRTg5N0M0QjMxNUU3NzU3MTQ4Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NTlFMjRCNzcwOTRCMTFFODk3QzRCMzE1RTc3NTcxNDgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NTlFMjRCNzgwOTRCMTFFODk3QzRCMzE1RTc3NTcxNDgiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7dniwbAAAGOUlEQVR42uycf2wURRTH5862KoVSMNBeEQjWUgq2Iv2BfyBVoifGRPxB8AeIIVYTf0RjlISoIP4AjSbERLERDDEqaEz4oSlItUaQGBUkqa0opAVBpAVRamypgNXz+9x3sJ3u3u3Oznot3W/yCUtvd97su9mdmfdmLhSLxYRPCoMKcAkoAUVgKsgA1eB+zfZWgiqwm2kBjeA7sBP86cdNpmkubyCIgmuZ0dLne8Fm8IkP9/IHaAbjGLOOgFq2+zH4RZfRkKYWOAncCWaDYdJn34D1YC3Y46DVZoFz+NhcuRD4G5wExxOUUQhmgZnc8mV1gjXgHbA11Q6cBuaD6dLfqdDV4CXQIH2WCyIgj1toATMKZIMh7MCQyYEh/pcceIJb0EHQxF9KMx83S7aKwQJwG38hsr4ES8BGZQ+QAxUoBjWxnuoAz0jnjgRzwBugEZyK+aefwXrwMLhUqsci0G5z3edgioov3F5ALfZ5iwqQUx41nVcEXgANsdSqBawCFaa6PQY6bc6nc7P9cuBksMfC6HNgOBgMHgf7Yr1Tv4JlYDQYxU+KlY6CG3Q7MN/C0GcgCirB6ljf0iYwnev/qc05USe+cdqJbAGVfNwFtoGvuJe7XvRd1XInR/dxBRhg+qyVOzrPvXCx1JN2cS+YJ84e7QM5IFP6++3gPa8OXAduEv1T9eAyLw68iGcP/VlX8SvMduSfSA+IQE+otkCa9B/mmUF/Fz2JP7ptgXMD553WgyotcDsoD3x3OpqT66YF5gXO66YcDtM5dmDQefTUQ24e4Z/AyMBn3UShtEFyZNuqBU4InGcpilHe4uQRvjvwVcKRSdJH+ABHhwP1VBcP7TrsWmBB4LyEoiTc1ESP8NWBj5Lq5kQOnBn4J6lmmP1mfgdSOvF3cSYDplMUuNwBjnEPT4P0KRrL/wd8CL4VRn44H0wGpT45kRYL7PrvyBSejvoQOt8MSmzC4Vdqyp+8D8bY2LgRHPbhvqqsciKLNBtZ4SCnMATs9WDjVQc2KOG1X/O9bbDKiWyVexgPojUpJQ7PpWEBJcSHurSxSTjPx1ACf78fwYX4yzAdlGk04GYw3gaeVrBR5eJcGtu+rDm4MNbswPGie0bKi5q4w3Cjt8FfLs6nrGCrSxvLNXck5WYHTtRY8AaFa6gVbndx/loFG/SaaNF4n+PNDizUWLDqu6bNxbkdijZOaLzPfPkR1jkm8/s6VRs6V5OWmR1YpLHgEsXr3DwFFyrayNbcAiM0jKG1eoc0zkDaFIYkY4SxOsCpaE3gOJc2LhfGekCdqgxzBEbn9I3GdXNcXrNQobW6HbMu8WFKNzbMYxrdel04T4leA+Yp2FjD83cnuksYq2l1K5ccGPGh4AH8uCRbgEQBhRpFGyPYRrIv6g7wpk9BhQg58AKfCqfH7AdhJKVlG5Tpf5EHxBkex2LfCyPUnmXx2QphrNX2S4OoE3kNB/f5HEPr4IEszTbOE8aSOd1q4zFoFzuzUPivujSfHmFZAzXPduw6r/97KcqwsMs5aKDuGhpWHJSeAr+dZc5QmSeHvQxjPhA2yx36mBp4mNOqcG0aOTBd4ULqOW8VRmCReti3+qDjOrkBTGJKlfyAXni3x/D2vRzeLgDv9oEtDi28tyUe8v/IQ1ntgjeVeNU6U4Ui4Cne1tWbVAfuMdWzPMHWL6daGC9sqYYKHuM9ceaEDm1mWQ6aUuS0evAsmGiqUxp4RUPZtXJWrlpTpXeAGRbZsTLeXkUt4YhPDqMU5kbet1co2c8ET2podaRtdjuVloFHNL2kaad4NffWh6TP4rMRCkpO4NAUZbmGg8FJpnc0bm0XZ7a80lSOEur1fHxSOr+Co0NzuWyvog3j18X/Y7U6iwytEsZ6OF2a53BCfz5PwyJs3xx5DpnGa+TA4w7m4l9onusvFfK2B5tkNPWoWzQ9Vs1ghOK+ZC9k8ntKh2gFxTSV3Zq0hOGgB8NtICsFzjOz00P9aQP5YpDuZbtrBo/1VCpSmmLnCd5A7bbTOsAdTo6u7a5x0b4x2ngYdRAums1R494gWk3VmOQcmsrVCeMHMmqcBlm8/OhEGVeMetGLRfdf66CKLO5lU7dZ3AmcK4wtbEc5kbWL+dqiB0+qfwUYAA41z4ekJFz3AAAAAElFTkSuQmCC);
	background-size: 50% auto;
	background-repeat: no-repeat;
	background-position: 50% 50%;
}
.ipsfocus_social a[href*='discordapp.com'],
.ipsfocus_social a[href*='discord.gg']{ background: #7289da; }
.ipsfocus_social a[href*='dropbox.com']:before{ content: "\f16b"; }
.ipsfocus_social a[href*='dropbox.com']{ background: #007fe5; }
.focus-social-gradient .ipsfocus_social a[href*='dropbox.com']{ background-image: linear-gradient(to bottom, #0097ea 0%, #007fe5 100%); }
.ipsfocus_social a[href*='mailto:']:before{ content: "\f01c"; }
.ipsfocus_social a[href*='mailto:']{ background: #444444; }
.focus-social-gradient .ipsfocus_social a[href*='mailto:']{ background-image: linear-gradient(to bottom, #515151 0%, #444444 100%); }
.ipsfocus_social a[href*='facebook.com']:before{ content: "\f09a"; }
.ipsfocus_social a[href*='facebook.com']{ background: #304c87; }
.focus-social-gradient .ipsfocus_social a[href*='facebook.com']{ background-image: linear-gradient(to bottom, #4c71b0 0%, #304c87 100%); }
.ipsfocus_social a[href*='flickr.com']:before{ content: "\f16e"; }
.ipsfocus_social a[href*='flickr.com']{ background: #fe2997; }
.focus-social-gradient .ipsfocus_social a[href*='flickr.com']{ background-image: linear-gradient(to bottom, #fd30aa 0%, #e41c84 100%); }
.ipsfocus_social a[href*='google.com']:before{ content: "\f0d5"; }
.ipsfocus_social a[href*='google.com']{ background: #df6b39; }
.focus-social-gradient .ipsfocus_social a[href*='google.com']{ background-image: linear-gradient(to bottom, #e47d43 0%, #d95332 100%); }
.ipsfocus_social a[href*='instagram.com']:before{ content: "\f16d"; }
.ipsfocus_social a[href*='instagram.com']{ background: #de416a; }
.focus-social-gradient .ipsfocus_social a[href*='instagram.com']{ background-image: linear-gradient(to bottom left, #9035c0 0%, #d62f87 35%, #e85a42 65%, #feda7c 100%); }
.ipsfocus_social a[href*='linkedin.com']:before{ content: "\f0e1"; }
.ipsfocus_social a[href*='linkedin.com']{ background: #0073b2; }
.focus-social-gradient .ipsfocus_social a[href*='linkedin.com']{ background-image: linear-gradient(to bottom, #008bc0 0%, #0073b2 100%); }
.ipsfocus_social a[href*='paypal.com']:before, .ipsfocus_social a[href*='paypal.me']:before{ content: "\f1ed"; }
.ipsfocus_social a[href*='paypal.com'], .ipsfocus_social a[href*='paypal.me']{ background: #253b80; }
.focus-social-gradient .ipsfocus_social a[href*='paypal.com']{ background-image: linear-gradient(to bottom, #253b80 0%, #203370 100%); }
.ipsfocus_social a[href*='pinterest.com']:before{ content: "\f0d2"; }
.ipsfocus_social a[href*='pinterest.com']{ background: #cd1d1f; }
.focus-social-gradient .ipsfocus_social a[href*='pinterest.com']{ background-image: linear-gradient(to bottom, #d62124 0%, #c0181a 100%); }
.ipsfocus_social a[href*='reddit.com']:before{ content: "\f1a1"; }
.ipsfocus_social a[href*='reddit.com']{ background: #609acf; }
.focus-social-gradient .ipsfocus_social a[href*='reddit.com']{ background-image: linear-gradient(to bottom, #72add8 0%, #609acf 100%); }
.ipsfocus_social a[href$='.rss']:before{ content: "\f09e"; }
.ipsfocus_social a[href$='.rss']{ background: #ff9641; }
.focus-social-gradient .ipsfocus_social a[href$='.rss']{ background-image: linear-gradient(to bottom, #ff9641 0%, #ff8543 100%); }
.ipsfocus_social a[href*='skype.com']:before{ content: "\f17e"; }
.ipsfocus_social a[href*='skype.com']{ background: #00b0f0; }
.focus-social-gradient .ipsfocus_social a[href*='skype.com']{ background-image: linear-gradient(to bottom, #00bff3 0%, #00b0f0 100%); }
.ipsfocus_social a[href*='soundcloud.com']:before{ content: "\f1be"; }
.ipsfocus_social a[href*='soundcloud.com']{ background: #ff6900; }
.focus-social-gradient .ipsfocus_social a[href*='soundcloud.com']{ background-image: linear-gradient(to bottom, #ff6900 0%, #ff4400 100%); }
.ipsfocus_social a[href*='spotify.com']:before{ content: "\f1bc"; }
.ipsfocus_social a[href*='spotify.com']{ background: #84b301; }
.focus-social-gradient .ipsfocus_social a[href*='spotify.com']{ background-image: linear-gradient(to bottom, #add411 0%, #84b301 100%); }
.ipsfocus_social a[href*='steampowered.com']:before,
.ipsfocus_social a[href*='steamcommunity.com']:before{ content: "\f1b6"; }
.ipsfocus_social a[href*='steampowered.com'],
.ipsfocus_social a[href*='steamcommunity.com']{ background: #457498; }
.focus-social-gradient .ipsfocus_social a[href*='steampowered.com']{ background-image: linear-gradient(to bottom, #457498 0%, #3b688a 100%); }
.ipsfocus_social a[href*='stripe.com']:before{ content: "\f1f5"; }
.ipsfocus_social a[href*='stripe.com']{ background: #58aada; }
.focus-social-gradient .ipsfocus_social a[href*='stripe.com']{ background-image: linear-gradient(to bottom, #58aada 0%, #519dca 100%); }
.ipsfocus_social a[href*='teamspeak.com']:before{ content: "\f130"; }
.ipsfocus_social a[href*='teamspeak.com']{ background: #8190b1; }
.focus-social-gradient .ipsfocus_social a[href*='teamspeak.com']{ background-image: linear-gradient(to bottom, #8190b1 0%, #7686a8 100%); }
.ipsfocus_social a[href*='tumblr.com']:before{ content: "\f173"; }
.ipsfocus_social a[href*='tumblr.com']{ background: #539fcc; }
.focus-social-gradient .ipsfocus_social a[href*='tumblr.com']{ background-image: linear-gradient(to bottom, #62b1d6 0%, #539fcc 100%); }
.ipsfocus_social a[href*='twitch.tv']:before{ content: "\f1e8"; }
.ipsfocus_social a[href*='twitch.tv']{ background: #6441a5; }
.focus-social-gradient .ipsfocus_social a[href*='twitch.tv']{ background-image: linear-gradient(to bottom, #6441a5 0%, #593993 100%); }
.ipsfocus_social a[href*='twitter.com']:before{ content: "\f099"; }
.ipsfocus_social a[href*='twitter.com']{ background: #0097d3; }
.focus-social-gradient .ipsfocus_social a[href*='twitter.com']{ background-image: linear-gradient(to bottom, #00b9f0 0%, #0097d3 100%); }
.ipsfocus_social a[href*='vimeo.com']:before{ content: "\f194"; }
.ipsfocus_social a[href*='vimeo.com']{ background: #1bb5ea; }
.focus-social-gradient .ipsfocus_social a[href*='vimeo.com']{ background-image: linear-gradient(to bottom, #20c1eb 0%, #1a8fb8 100%); }
.ipsfocus_social a[href*='youtube.com']:before{ content: "\f16a"; }
.ipsfocus_social a[href*='youtube.com']{ background: #cc332d; }
.focus-social-gradient .ipsfocus_social a[href*='youtube.com']{ background-image: linear-gradient(to bottom, #d43c34 0%, #a92621 100%); }

{{endif}}



/*
	----------------
	- Footer
	----------------
*/

#ipsLayout_footer{
	color: {theme="footer_text"};
	margin: 0;
	padding: 20px 0;
	font-size: 1.2rem;
}

#elFooterLinks{
	margin: 0;
}

@media screen and (min-width:980px){
	#ipsLayout_footer .ipsLayout_container{
		display: -webkit-flex;
		-webkit-justify-content: space-between;
		-webkit-align-items: center;
		
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
		
	#ipsLayout_footer #elCopyright{
		text-align: right;
		margin: 0;
	}
	.ipsfocusCopyright{
		text-align: left;
	}
		html[dir='rtl'] .ipsfocusCopyright{
			text-align: right;
		}
		
	html[dir='ltr'] #elFooterLinks{ text-align: left; }
	html[dir='rtl'] #elFooterLinks{ text-align: right; }
}
	
	#elFooterLinks,
	#ipsLayout_footer a,
	#ipsLayout_footer p,
	#ipsLayout_footer #elCopyright{
		font-size: inherit;
	}
	
	
	
/* ipsfocus Copyright */
#elFooterLinks .ipsfocusCopyright{
	display: block;
	margin: 0;
}

	.ipsfocusCopyright a{
		border-bottom: 1px solid {hextorgb="footer_text" opacity="0.4"};
	}
	
		.ipsfocusCopyright a:hover{
			border-bottom-color: {hextorgb="footer_text" opacity="0.7"};
		}

	#elFooterLinks .ipsfocusCopyright,
	#elCopyright_userLine{
		margin-bottom: 4px;
	}

/* Remove site copyright if left empty */	
#elCopyright_userLine:empty{
	display: none;
}



/*
	----------------
	- Mega Footer
	----------------
*/
{{if theme.footer_enable}}

.ipsfocus_megaFooter{
	background: {theme="area_background_reset"};
	border: 1px solid {hextorgb="text_color" opacity="0.15"};
	border-width: 1px 0 0 0;
}

	.footerCols{
		display: flex;
		padding: 24px 12px;
	}
	
		.footerCol{
			flex: 1 1 10px;
			padding: 0 12px;
		}

@supports (display: grid){
	.footerCols{
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(var(--footer-col-width), 1fr));
		grid-gap: 40px;
		gap: 40px;
		padding: 24px;
	}

	.footerCol{
		padding: 0px;
	}
}

{{if !theme.footer_mobile}}
	@media screen and (max-width:979px){
		/* Hide on mobiles */
		.ipsfocus_megaFooter{ display: none; }
	}
{{endif}}

	.ipsfocus_megaFooter h4{
		display: block;
		margin: 0;
		padding-bottom: 1.15em;
		font-size: 1.3rem;
		font-weight: bold;
	}
	
	.ipsfocus_megaFooter p{
		margin: 0;
		margin-bottom: 0.8em;
	}
	
	.ipsfocus_megaFooter .footerLinks,
	.ipsfocus_megaFooter .footerLinks li{
		margin: 0;
		padding: 0;
		display: block;
		list-style: none;
	}
	
	.ipsfocus_megaFooter .footerLinks a{
		line-height: 25px;
		display: inline-block;
	}
{{endif}}



{{if theme.countdown_enable}}
/*
	----------------
	- Countdown
	----------------
*/

@keyframes countdown-fade {
	from {
	    opacity: 0;
		transform: translateY(-5px);
	}
    to {
	    opacity: 1;
	    transform: translateY(0);
	}
}

.focus-timer-wrap{
	animation: countdown-fade 0.3s;
	animation-delay: 0.1s;
	animation-fill-mode: both;
	
	font-size: 18px;
	min-height: calc(1.25em + 1.7em + 30px);
	padding: 15px 10px;	
	
	text-align: center;
	display: -webkit-flex;
	-webkit-flex-direction: column;
	-webkit-align-items: center;
	-webkit-justify-content: center;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

	.focus-timer-title{
		font-size: 1.25em;
		line-height: 1;
	}
	
	.focus-timer{
		line-height: 1em;
		min-height: 1em;
		margin-top: 0.7em;
		opacity: 0.8;
	}
	
		.focus-timer-done .focus-timer{
			display: none;
		}
		
		.focus-timer-faint{
			opacity: 0.6;
		}

[data-timer-text='day and']::before{
	content: 'day and';
}

[data-timer-text='days and']::before{
	content: 'days and';
}

[data-timer-text='week,']::before{
	content: 'week,';
}

[data-timer-text='weeks,']::before{
	content: 'weeks,';
}

{{endif}}


/*
	----------------
	- Guest message
	----------------
*/

/* Force hide the message for members since it sometimes shows (cache problem maybe?) */
.focus-member .ipsWidget[data-blockid*="guestSignUp"]:not(.ui-sortable-handle){
	display: none;
}

/* Reset defaults */
.ipsWidget[data-blockid*="guestSignUp"] .ipsWidget_inner,
.ipsWidget[data-blockid*="guestSignUp"] .ipsAreaBackground_light{
	padding: 0;
}
.ipsWidget[data-blockid*="guestSignUp"] .ipsAreaBackground_light{
	background: none;
}


/* border */
.ipsWidget[data-blockid*="guestSignUp"],
.guest-widget-footer{
	border: 1px solid {hextorgb="text_color" opacity="0.3"};
}

	/* internal header and buttons */
	.guest-widget-header,
	.guest-widget-footer,
	.ipsWidget[data-blockid*="guestSignUp"] a.ipsButton:not(.ipsSocial){
		background-color: {theme="area_background"};
	}

/* Guest message wrap */
.ipsWidget[data-blockid*="guestSignUp"]{	
    border-radius: 4px;
	box-shadow: none;
	padding: 6px;
	overflow: hidden; /* Clip corners to create border-radius on children */
}
	
	/* Header */
	.guest-widget-header{
	    box-shadow: inset rgba(0,0,0,0.25) 0px 1px 3px, rgba(255,255,255,0.5) 0px 1px 0px;
	    border-radius: 4px;
	    color: inherit;
	    padding: 14px;
	    font-size: 1.3rem;
	    line-height: 1.4;
	    font-weight: bold;
	    margin: 0;
	    display: block;
	}
	
	/* Text */
	.ipsWidget[data-blockid*="guestSignUp"] .ipsType_richText{
		margin: 0;
		padding: 14px;
	}
	
	/* Footer */
	.guest-widget-footer{
		background-image: linear-gradient(to bottom, rgba(255,255,255,0.7) 0%, rgba(255,255,255,0.7) 100%);
		border-width: 1px 0 0 0;
		line-height: 32px;
		
		padding: 4px;
		margin: 0 -6px -6px -6px;
	}

		.guest-widget-footer ul{
			list-style: none;
			margin: 0;
			padding: 0;
			display: flex;
			align-items: center;
			flex-wrap: wrap;
		}
	
			.guest-widget-footer li{
				margin: 5px;
				flex: 0 0 auto;
			}

			.ipsWidget_vertical .guest-widget-footer li{
				flex: 1 0 auto;
			}

			.guest-widget-footer .ipsButton{
				float: none;
				display: block;
			}
	
	/* Social buttons in guest message */
	.ipsWidget[data-blockid*="guestSignUp"] a.ipsButton:not(.ipsSocial){
	    border: 0 solid currentcolor;
	    
	    border-radius: 3px;
	    color: inherit;
	    padding: 0 14px 0 46px;
	    line-height: inherit;
	    font-weight: bold;
	    position: relative;
	}
	
		/* Hover */
		.ipsWidget[data-blockid*="guestSignUp"] a.ipsButton:not(.ipsSocial):hover{
		    background-image: linear-gradient(to bottom, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.08) 100%);
		}
		
		/* Active */
		.ipsWidget[data-blockid*="guestSignUp"] a.ipsButton:not(.ipsSocial):active{
		    background-image: linear-gradient(to bottom, rgba(0,0,0,0.05) 0%, rgba(0,0,0,0.05) 100%);
		    transform: translateY(1px);
		}
	
		/* Register / sign in icons */
		.ipsWidget[data-blockid*="guestSignUp"] a.ipsButton:not(.ipsSocial)::before{
			background: rgba(255,255,255,0.2);
		    border-radius: 3px 0px 0px 3px;
		    content: "\f084";
		    position: absolute;
		    top: 0; left: 0; bottom: 0;
		    width: 32px;
		    text-align: center;
			font-family: "FontAwesome";
			font-size: 14px;
			font-weight: normal;
			-webkit-font-smoothing: antialiased;
			-moz-osx-font-smoothing: grayscale;
			{prefix="transform" value="translate(0,0)"}
			pointer-events: none;
		}
		
			/* Register icon */
			.ipsWidget[data-blockid*="guestSignUp"] a.ipsButton[href*='/register/']:not(.ipsSocial)::before{
				content: "\f067";
			}

			/* Button border */
			.ipsWidget[data-blockid*="guestSignUp"] a.ipsButton:not(.ipsSocial)::after{
				border-width: 1px;
				top: 0; right: 0; bottom: 0; left: 0;
				opacity: 0.7;
			}
	
	/* Social buttons */
	.ipsWidget[data-blockid*="guestSignUp"] .ipsSocial{
		min-width: 0;
		max-width: none;
		width: auto;
		line-height: 32px;
		vertical-align: top;
		display: inline-flex;
		align-items: center;
	}

		/* Border */
		.ipsWidget[data-blockid*="guestSignUp"] .ipsSocial:after{
			border-width: 1px;
			border-style: solid;
			top: 0; left: 0; right: 0; bottom: 0;
		}
	
		.ipsWidget[data-blockid*="guestSignUp"] .ipsSocial_text{
			padding: 0 10px;
		}
	

/* Alert colours */
.focus-guest-alert .ipsWidget[data-blockid*="guestSignUp"],
.focus-guest-alert .guest-widget-footer{
	border-color: #f0cea1;
}

/* background and color */
.focus-guest-alert .ipsWidget[data-blockid*="guestSignUp"]{
	background-color: #fcefe0 !important;
	color: #9A6200;
}

	/* internal header and buttons */
	.focus-guest-alert .guest-widget-header,
	.focus-guest-alert .guest-widget-footer,
	.focus-guest-alert .ipsWidget[data-blockid*="guestSignUp"] a.ipsButton:not(.ipsSocial){
		background-color: #EFAF5B;
	}

/*
	----------------
	- Global Message
	----------------
*/
{{if theme.global_enable}}

.ipsfocus-globalMessage:not(.displayGlobalMessage){
	display: none;
}

	html[dir='ltr'] .ipsfocus-globalMessage{
		padding-right: 50px;
	}
	
	html[dir='rtl'] .ipsfocus-globalMessage{
		padding-left: 50px;
	}

	.ipsfocus-globalMessage p{
		margin: 0 0 0.7em 0;
	}
	
	.ipsfocus-globalMessage .ipsMessage,
	.ipsfocus-globalMessage p:last-of-type{
		margin: 0;
	}
	
	.ipsfocus-globalDismiss{
		background: rgba(0,0,0,0.4);
		color: #fff;
		width: 30px;
		height: 30px;
		border-radius: 30px;
		border: 0;
		font-size: 14px;
		display: flex;
		align-items: center;
		justify-content: center;
		position: absolute;
		right: 9px;
		top: 9px;
		cursor: pointer;
	}
	
	html[dir='rtl'] .ipsfocus-globalDismiss{
		right: auto;
		left: 9px;
	}
	
		.ipsfocus-globalDismiss:before{
			content: "\f00d";
		    font-family: "FontAwesome";
			-webkit-font-smoothing: antialiased;
			-moz-osx-font-smoothing: grayscale;
			{prefix="transform" value="translate(0,0)"}
		}
{{endif}}



/*
	----------------
	- Background Picker
	----------------
*/
{{if theme.focus_picker}}

.focus-pickerWrap{ display: none; }

	.focus-picker{
		display: -webkit-flex;
		-webkit-align-items: center;
		-webkit-justify-content: space-between;
		
		display: flex;
		align-items: center;
		justify-content: space-between;
		
		margin: 0 -5px;
	}

	.focus-picker span{
		-webkit-flex: 1 1 10px;
		flex: 1 1 10px;
		
		display: block;
		position: relative;
		
		background-size: cover;
		background-position: 50% 0% ;
		
		border-radius: 3px;
		box-shadow: inset rgba(0,0,0,0.1) 0px 5px 10px, inset rgba(0,0,0,0.25) 0px 1px 2px;
		color: #fff;
		font-size: 1.45rem;
		text-shadow: rgba(0,0,0,0.3) 0px 2px 3px;		
		
		-moz-user-select: none;
		-webkit-user-select: none;
		-ms-user-select: none;
		user-select: none;
		margin-bottom: 5px;
		height: 160px;
		margin: 0 5px;
		text-align: center;
		cursor: pointer;
	}
	
	.focus-picker .ipsfocus_bg1{
		background-color: {theme="picker_c1"};
		{{if theme.picker_i1}}background-image: url('{theme="picker_i1"}');{{endif}}
	}
	
	.focus-picker .ipsfocus_bg2{
		background-color: {theme="picker_c2"};
		{{if theme.picker_i2}}background-image: url('{theme="picker_i2"}');{{endif}}
	}
	
	.focus-picker .ipsfocus_bg3{
		background-color: {theme="picker_c3"};
		{{if theme.picker_i3}}background-image: url('{theme="picker_i3"}');{{endif}}
	}
	
	.focus-picker .ipsfocus_bg4{
		background-color: {theme="picker_c4"};
		{{if theme.picker_i4}}background-image: url('{theme="picker_i4"}');{{endif}}
	}
	
	.focus-picker .ipsfocus_bg5{
		background-color: {theme="picker_c5"};
		{{if theme.picker_i5}}background-image: url('{theme="picker_i5"}');{{endif}}
	}
	
	.focus-picker .ipsfocus_bg6{
		background-color: {theme="picker_c6"};
		{{if theme.picker_i6}}background-image: url('{theme="picker_i6"}');{{endif}}
	}
/*
	.focus-picker span:nth-of-type({expression="theme.focus_picker_number + 1"}),
	.focus-picker span:nth-of-type({expression="theme.focus_picker_number + 2"}),
	.focus-picker span:nth-of-type({expression="theme.focus_picker_number + 3"}),
	.focus-picker span:nth-of-type({expression="theme.focus_picker_number + 4"}){
		display: none;
	}
*/

	.focus-picker span:nth-of-type(n + {expression="theme.focus_picker_number + 1"}){
		display: none;
	}

	.focus-picker span:before{
		content: '';
		background: rgba(255,255,255,0.2);
		position: absolute;
		top: 0; left: 0; right: 0; bottom: 0;
		border-radius: inherit;
		
		transition: all 0.2s ease-in-out;
		opacity: 0;
	}
	
	.focus-picker span:after{
		display: -webkit-flex;
		-webkit-align-items: center;
		-webkit-justify-content: center;
		
		display: flex;
		align-items: center;
		justify-content: center;
		
	    content: "\f0fe";
		font-family: "FontAwesome";
		font-size: 72px;
		line-height: 1;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		
		position: absolute;
		top: 0; left: 0; right: 0; bottom: 0;
		
		transform: translateY(20px);
		transition: all 0.2s ease-in-out;
		opacity: 0;
	}
	
	@media screen and (min-width: 980px){
		.focus-picker span:hover:before{
			opacity: 1;
		}
		.focus-picker span:hover:after{
			transform: translateY(0);
			opacity: 0.8;
		}
	}
	
	@media screen and (max-width:979px){
		
		{{if theme.picker_mobile}}
			.ipsfocus-toggleBgPicker{ display: none !important; }
		{{endif}}
		
		.focus-picker span{
			height: 100px;
		}
		.focus-picker span:before,
		.focus-picker span:after{
			display: none;
		}
	}

.ipsfocus-toggleBgPicker{
	cursor: pointer;
}

{{endif}}




/*
	----------------
	- Headers: typography.css
	----------------
*/

.ipsPageHeader{
	margin-top: 0;
	padding: 15px;
	background: {theme="area_background_reset"};
}

/* Maintitle */
.ipsType_sectionTitle{
	border: 0;
	border-radius: 0;
	text-transform: none;
	line-height: 2rem;
}

	.ipsType_sectionTitle .ipsType_light{
		opacity: 0.7;
	}

.ipsType_pageTitle,
.ipsType_sectionTitle,
.ipsType_secondaryTitle,
.ipsType_sectionHead,
.ipsType_minorHeading {
	{{if theme.headline_font != 'default'}}
	font-family: "{theme='headline_font'}";
	{{else}}
	font-family: inherit;
	{{endif}}
}


/*
	----------------
	- .ipsBox
	----------------
*/

.ipsBox{
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

/* Internal boxes */
html .ipsApp .ipsBox:not(.ipsWidget) .ipsBox,
html .ipsApp .ipsTabs_panels .ipsBox,
html .ipsApp .ipsDialog > div .ipsBox {
    border: 1px solid {hextorgb="text_color" opacity="0.2"};
    background: {hextorgb="text_color" opacity="0.03"};
    box-shadow: rgba(0,0,0,0.07) 0px 1px 5px;
    border-radius: 3px;
    background-clip: padding-box !important;
}

html .ipsApp .ipsBox .ipsAreaBackground .ipsBox{
	background-color: {theme="area_background_reset"};
}
	
	/* Internal headers */
	html .ipsApp .ipsBox .ipsBox .ipsWidget_title,
	html .ipsApp .ipsTabs_panels .ipsBox .ipsWidget_title,
	html .ipsApp .ipsBox .ipsBox .ipsType_sectionTitle,
	html .ipsApp .ipsTabs_panels .ipsBox .ipsType_sectionTitle{
	    background: {theme="tab_background"};
	    color: #fff;
	    border: 1px solid {hextorgb="text_color" opacity="0.8"};
	    text-shadow: none;
	    font-family: inherit;
	    text-transform: none;
	    box-shadow: none;
	    text-shadow: none;
	    margin: 5px 5px 0 5px;
	    border-radius: 3px;
	    font-size: 1.3rem;
	    font-weight: bold;
	    padding: 9px 12px;
	}
	
	/* Push in pagination, eg. Club Members */
	html .ipsApp .ipsBox .ipsBox .ipsButtonBar,
	html .ipsApp .ipsTabs_panels .ipsBox .ipsButtonBar{
		margin: 5px;
		border-radius: 3px;
	}
	
	/* Force internal background colour on grid backgrounds, eg. Club Members */ 
	html .ipsApp .ipsBox .ipsBox > .ipsAreaBackground,
	html .ipsApp .ipsTabs_panels .ipsBox > .ipsAreaBackground{
		background: transparent;
	}


/* Without padding, content hits the side borders */
.ipsBox_alt{
	padding: 15px;
}

/* Remove styles from child ipsBox_alt's */
.ipsBox_alt .ipsBox_alt{
	background: none;
	border: 0;
	box-shadow: none;
	padding: 0;
}


/*
	----------------
	- Buttons
	----------------
*/

	/* Remove defaults since the pseudo element handles borders and hover */

	/* Remove hover */
	.ipsApp .ipsButton:not( .ipsButton_noHover ):hover {
		background-image: none;
	}

	/* Remove active */
	.ipsApp .ipsButton:active,
	.ipsApp .ipsButton_active {
		box-shadow: none;
		background-image: none;
	}
	

/* Overwrite defaults: Make sure all buttons have a transparent border */
.ipsApp .ipsButton,
.ipsApp .ipsToolList .ipsButton_link,
.ipsApp .ipsButton_link.ipsButton_link_secondary,
.ipsApp .ipsButton_link,
.ipsApp .ipsButton:active,
.ipsApp .ipsButton_active{
	border: 1px solid transparent;
}



/* Create pseudo element for border and hover */	
.ipsButton{
	position: relative;
}

.ipsApp .ipsButton{
	transition: none;
}

.ipsApp .ipsCoverPhoto_button{
	position: absolute;
}

/* The overflow: hidden; needs to be unfortunately removed otherwise the pseudo element isn't shown */
.ipsApp .ipsButton_fullWidth{
	overflow: visible;
}

	.ipsButton:after{
		content: '';
		position: absolute;
		top: -1px; left: -1px; right: -1px; bottom: -1px;
		border-width: inherit;
		border-style: inherit;
		border-color: rgba(0,0,0,0.2);
		border-radius: inherit;
		pointer-events: none;
	}
	
		/* Hover */
		.ipsButton:hover:after{
			background: rgba(255,255,255,0.1);
		}
		
		/* Active */
		.ipsApp .ipsButton:active:after,
		.ipsApp .ipsButton_active:after {
			background: rgba(0,0,0,0.1);
		}


/* Active nudge */
.ipsButton:active {
	transform: translateY(1px);
}

	/* Remove active nudge */
	.ipsComment_controls .ipsButton:active,
	.ipsButton_split .ipsButton:active,
	.ipsMenu .ipsButton_link:active{
		transform: none;
	}


/* Light button */
.ipsApp .ipsButton_light:after {
	border-color: {hextorgb="light_button_font" opacity="0.25"};
}

	.ipsApp .ipsButton_light:hover:after {
		border-color: {hextorgb="light_button_font" opacity="0.4"};
	}
	
	.ipsApp .ipsButton_light:active:after {
		background: rgba(0,0,0,0.05);
	}
	


/* Very light */
.ipsApp .ipsButton_veryLight:after {
	border-color: {hextorgb="very_light_button_font" opacity="0.25"};
}

	.ipsApp .ipsButton_veryLight:hover:after {
		border-color: {hextorgb="very_light_button_font" opacity="0.4"};
	}
	
	.ipsApp .ipsButton_veryLight:active:after {
		background: rgba(0,0,0,0.05);
	}



/* Link buttons */	
.ipsApp .ipsButton_link:after{
	border-color: currentColor;
	opacity: 0.5;
}

	.ipsApp .ipsButton_link:hover:after{
		background: none;
		opacity: 0.8;
	}
	
	.ipsApp .ipsButton_link:active:after {
		background: none;
		opacity: 1;
	}

	/* Link buttons next to Topic button */	
	.ipsApp .ipsToolList .ipsButton_link:after{
		display: none;
	}	
	


/* Icons on reply and new topic buttons */
.ipsButton_important[href='#replyForm']::before,
.ipsButton_important[href$='do=add']::before,
.ipsButton_important[href$='startTopic/']::before{
	content: '\f086';
	font-family: 'FontAwesome';
	font-weight: normal;
	display: inline-block;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transform: translate(0,0);
	margin-right: 8px;
	line-height: 1px;
}

html[dir='rtl'] .ipsButton_important[href='#replyForm']::before,
html[dir='rtl'] .ipsButton_important[href$='do=add']::before,
html[dir='rtl'] .ipsButton_important[href$='startTopic/']::before{
	margin-right: 0;
	margin-left: 8px;
}



/* Follow and promote button */	
.ipsApp .ipsButton_link.ipsFollow,
.ipsApp .ipsButton_link.ipsPromote {
	background: {theme="very_light_button"};
	color: {theme="very_light_button_font"};
}

	.ipsApp .ipsButton_link.ipsFollow:after,
	.ipsApp .ipsButton_link.ipsPromote:after{
		border-color: currentColor;
		opacity: 0.3;
	}
	
	.ipsApp .ipsButton_link.ipsFollow:hover:after,
	.ipsApp .ipsButton_link.ipsPromote:hover:after{
		border-color: currentColor;
		opacity: 0.6;
	}


/* Remove border for certain buttons */
#elProfileHeader .ipsButton:after,
#ipsMultiQuoter .ipsButton:after,
#elProfileStats .ipsButton:after{
	border: 0;
}



	
	

/* Bolder font on certain buttons */
.ipsToolList .ipsButton,
.ipsButton_primary{
	font-weight: bold;
}


/* New topic button */
.ipsToolList.ipsToolList_horizontal > li.ipsToolList_primaryAction .ipsButton:not(.ipsButton_link){
	min-width: 0;
	font-weight: bold;
}



/* Split */
.ipsButton_split{
	border-radius: 3px;
	position: relative;
	z-index: 1;
}
	
	html[dir="ltr"] ul.ipsButton_split > li:first-child,
	html[dir="ltr"] .ipsButton_split > .ipsButton:first-child,
	html[dir="ltr"] .ipsButton_split > li:first-child > .ipsButton,
	html[dir="rtl"] ul.ipsButton_split > li:last-child,
	html[dir="rtl"] .ipsButton_split > .ipsButton:last-child,
	html[dir="rtl"] .ipsButton_split > li:last-child > .ipsButton{
		border-top-left-radius: inherit;
		border-bottom-left-radius: inherit;
	}
	
	html[dir="ltr"] ul.ipsButton_split > li:last-child,
	html[dir="ltr"] .ipsButton_split > .ipsButton:last-child,
	html[dir="ltr"] .ipsButton_split > li:last-child > .ipsButton,
	html[dir="rtl"] ul.ipsButton_split > li:first-child,
	html[dir="rtl"] .ipsButton_split > .ipsButton:first-child,
	html[dir="rtl"] .ipsButton_split > li:first-child > .ipsButton{
		border-top-right-radius: inherit;
		border-bottom-right-radius: inherit;
	}

html[dir='ltr'] .ipsButton_split .ipsButton{
	margin-left: -1px;
}

html[dir='rtl'] .ipsButton_split .ipsButton{
	margin-right: -1px;
}

/* Fluid buttons */
.ipsButton_split .ipsButton.ipsButton_link{
	background: {theme="area_background_reset"};
	border: 1px solid transparent !important;
	position: relative;
	z-index: 0;
}

	.ipsButton_split .ipsButton.ipsButton_link:hover{
		z-index: 1;
	}
	
	.ipsButton_split .ipsButton.ipsButton_link:after{
		display: block;
	}

	.ipsButton_split .ipsButton.ipsButton_primary{
		border-color: transparent !important;
		position: relative;
		z-index: 2;
	}





/* Bug fix: Remove hover effect from certain buttons */
.ipsButton_link:hover,
.ipsApp .ipsButton_overlaid:hover{
	background-image: none !important;
}


/* Change URL button on new article page */
.ipsForm button.ipsButton:not(.ipsButton_link)[data-ipschange]{
	background: {theme="normal_button"};
	border-color: transparent;
	color: {theme="normal_button_font"};
}


/* Add tag button in topic view */
.ipsTags_edit .ipsButton_veryVerySmall{
	height: auto;
	margin-top: 0;
	vertical-align: top;
	font-size: 10px;
	line-height: 16px;
}




/* Follow button */
.ipsApp .ipsFollow{
	padding: 0;
}

.ipsApp .ipsFollow,
.ipsApp .ipsFollow > a:only-child{
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
}


html .ipsApp .ipsFollow > a:not(.ipsCommentCount),
html .ipsApp .ipsFollow > span:not(.ipsCommentCount),
html .ipsApp .ipsFollow > a > span:not(.ipsCommentCount){
	left: auto;
	right: auto;
	padding: 0 15px;
}


/* Required for guest follow buttons */
.ipsApp .ipsFollow > a:only-child{
	display: flex;
}

	.ipsFollow > *:first-child{
		flex: 1 1 auto;
	}
	
	.ipsFollow > *:last-child{
		flex: 0 0 auto;
	}




.ipsFollow .ipsCommentCount{
	color: inherit;
	background: transparent;
	line-height: 12px;
}

.ipsFollow > .ipsCommentCount{
	border-radius: inherit;
}

html[dir='ltr'] .ipsFollow .ipsCommentCount{
	margin: 0 3px 0 0;
}

html[dir='rtl'] .ipsFollow .ipsCommentCount{
	margin: 0 0 0 3px;
}

	.ipsButton_primary .ipsCommentCount{
		background: transparent;
	}
	
	/* Pseudo background for comment count */
	.ipsFollow .ipsCommentCount:before{
		content: '';
		position: absolute;
		top: 0; left: 0; right: 0; bottom: 0;
		border-radius: inherit;
		background: currentcolor;
		opacity: 0.15;
		pointer-events: none;
	}

@media screen and (max-width:767px){
	.ipsApp .ipsFollow{
		display: flex !important;
	}
}

/* Bug fix: Remove cursor effect since not all areas of the button can be clicked */
.ipsApp .ipsButton.ipsFollow:hover{
	cursor: auto;
}

.ipsFollow .ipsCommentCount::after{
	display: none;
}







/*
	----------------
	- Data Lists
	----------------
*/

.ipsApp .ipsDataItem_new, .ipsApp .ipsDataItem_success {
	background-color: #e9f2e8;
}

.ipsApp .ipsDataItem_warning {
	background-color: {theme="moderated_light"};
}

.ipsApp .ipsDataItem_error {
	background-color: {theme="moderated"};
}

.ipsApp .ipsDataItem_info {
	background-color: {theme="selected"};
}

.ipsApp .ipsDataItem_status,
.ipsDataList_readStatus .ipsDataItem:not( .ipsDataItem_unread ):not( .ipsDataItem_selected ):not( .ipsModerated ) {
	background: {theme="area_background_light"};
}

/* Remove zebra stripes */
.ipsDataList.ipsDataList_zebra .ipsDataItem:not( .ipsDataItem_selected ):not( .ipsModerated ):not( .ipsDataItem_new ):not( .ipsDataItem_success ):not( .ipsDataItem_warning ):not( .ipsDataItem_error ):not( .ipsDataItem_info ):not( .ipsDataItem_status ):nth-child(even) {
	background-color: transparent;
}
/* If zebra stripes are removed, borders should be added */
.ipsDataList.ipsDataList_zebra > .ipsDataItem{ border-bottom-width: 1px; border-bottom-style: solid; }

.ipsDataList_large .ipsDataItem{
	border-bottom-width: 1px;
}



/*
	----------------
	- Minimal and Responsive Layouts
	----------------
*/

/* Show search, user panel, mobile navigation, etc on minimal pages for a more consistent layout */
#ipsfocus #elMobileNav,
#ipsfocus .ipsApp #elUserNav{
	display: flex !important;
}

#ipsfocus #elSearch{
	display: block !important;
}

/* Ensure breadcrumbs are shown on minimal pages, on desktops only */
@media (min-width: 980px){
	#ipsfocus .ipsBreadcrumb{
		display: block !important;
	}
}

/* Responsive */
@media screen and (max-width:979px){
	.ipsApp .user-links,
	.ipsApp .nav-bar,
	.ipsApp .ipsfocus-breadcrumb{
		display: none;
	}
}

/* Minimal */
/*
.ipsApp.ipsLayout_minimal .user-links,
.ipsApp.ipsLayout_minimal .ipsfocus-search,
.ipsApp.ipsLayout_minimal .ipsfocus-breadcrumb, */
.ipsLayout_minimal .hide-minimal{
	display: none;
}

.ipsLayout_minimal #ipsLayout_mainArea{
	padding: 0;
}
/*
	.ipsLayout_minimal .ipsNavBar_primary > a,
	.ipsApp .ipsNavBar_primary #elBackHome{
		padding: 0 20px;
		color: inherit;
		font-size: 1.2rem;
		line-height: {theme="navigationheight"}px;
		font-weight: bold;
		display: inline-block;
	}
*/
	.ipsLayout_minimal .ipsNavBar_primary:after{ display: none; }


/* .ipsLayout_minimal .content-padding, */
.ipsLayout_minimal #ipsLayout_contentArea{
	max-width: 1000px;
	margin: 0 auto;
}
	
/*
	----------------
	- Forum Index
	----------------
*/

/* Pageheader alignment */
body[data-pagemodule="forums"][data-pagecontroller="index"] .ipsPageHeader{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

	body[data-pagemodule="forums"][data-pagecontroller="index"] .ipsPageHeader > *{
		flex: 0 1 auto;
	}

	body[data-pagemodule="forums"][data-pagecontroller="index"] .ipsPageHeader .ipsToolList{
		order: 2;
		margin: 0;
	}
	
	body[data-pagemodule="forums"][data-pagecontroller="index"] .ipsPageHeader:after{
		display: none;
	}
	
	/* Make sure icons in buttons are clear */
	body[data-pagemodule="forums"][data-pagecontroller="index"] .ipsPageHeader .ipsButton_split .fa{
		font-size: 14px;
	}
	
	/* Bug fix */
	.ipsPageHeader ul.ipsButton_split{
		vertical-align: top;
	}
	/* Align header correctly if only one category exists, like a fresh installation */
	body[data-pagemodule="forums"][data-pagecontroller="index"] .ipsPageHeader > *:only-child{ width: 100%; }



/* Collapse icon */
.cForumToggle{
	line-height: 20px;
	text-align: center;
}

.cForumToggle:after{
	content: '\f146';
	font-size: 14px;
	display: inline-block;
	vertical-align: top;
}

	.cForumRow_hidden .cForumToggle:after{
		content: '\f0fe';
	}



/* Remove border from last forum */
.cForumList .cForumRow .ipsDataList li:last-of-type{
	border-bottom: 0;
}



/* Bold forum names */
.cForumRow .ipsDataItem_title{
	margin-bottom: 0;
}
	.cForumRow .ipsDataItem_title a{
		font-weight: bold;
	}
	
/* NEW badge */
.cForumList .ipsDataItem_unread .ipsDataItem_title:before,
.cForumGrid_unread .ipsPhotoPanel h3 a:before {
	color: #fff;
	background: #ed7a16;
	display: inline-block;
	font-size: 0.9rem;
	line-height: 2;
	border-radius: 3px;
	padding: 0 4px;
	margin-right: 4px;
	vertical-align: middle;
}

	html[dir='rtl'] .cForumList .ipsDataItem_unread .ipsDataItem_title:before,
	html[dir='rtl'] .cForumGrid_unread .ipsPhotoPanel h3 a:before{
		margin-left: 4px;
		margin-right: 0;
	}



/* Space apart elements in main column */
.cForumList .ipsDataItem_main > *:not(:first-child){
	margin-top: 5px;
}



/* Remove empty descriptions */
.cForumRow .ipsDataItem_meta:empty{
	display: none;
}


/*
	----------------
	- Subforums
	----------------
*/

/* Remove subforum stem image */
html .ipsApp .ipsDataItem_subList {
	padding: 0px !important;
	background: none !important;
}
	
	.ipsDataItem_subList > li{
		margin: 0 !important;
	}

	.ipsDataItem_subList a{
		display: inline-block;
		white-space: nowrap;
		max-width: 100%;
		overflow: hidden;
		text-overflow: ellipsis;
		vertical-align: top;
	}

	/* Space out subforums if grid isn't supported */
	html[dir='ltr'] .ipsDataItem_subList a{
		margin-right: 20px;
	}

	html[dir='rtl'] .ipsDataItem_subList a{
		margin-left: 20px;
	}

	/* Remove gap created by icon on unread forum */
	.ipsDataItem_subList .ipsItemStatus_tiny{
		margin-right: -0.3em;
	}

	/* Add plus icon */
	.ipsDataItem_subList a:before{
		content: "\f18e";
		font-family: "FontAwesome";
		font-size: 14px;
		font-weight: normal;
		display: inline-block;
		margin-right: 4px;
		text-rendering: auto;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
		transform: translate(0,0);
		vertical-align: top;
	}

	html[dir='rtl'] .ipsDataItem_subList a::before{
		margin-left: 4px;
		margin-right: 0;
	}

	/* Remove comma's */
	.ipsDataItem_subList li a::after{
		display: none;
	}

	/* Place subforums into grid for browsers which support it */
	@supports (display: grid){
		.ipsDataItem_subList{
			display: var(--subforum-display);
			grid-gap: var(--subforum-gap);
			grid-template-columns: repeat(auto-fill, minmax(var(--subforum-min-width), 1fr));
		}
	}

	/* Remove subforum dot for new content */
	.ipsDataItem_subList .fa-circle{ display: none; }


/* Bug fix - Forum stats */
.ipsDataItem_stats dl{ margin: 0; }



/* Bold unread topic titles */
.cForumRow.ipsDataItem_unread .ipsDataItem_lastPoster li:nth-of-type(2) {
    font-weight: bold;
}



@media screen and (min-width:980px){
	
	/* Neaten up padding if forum icons dont have a background */
	html[dir='ltr'] .cForumList .ipsDataItem_main{
		{{if theme.ficon_trans}}
		padding-left: 0;
		{{else}}
		padding-left: 5px;
		{{endif}}
		padding-right: 0;
	}
	
	html[dir='rtl'] .cForumList .ipsDataItem_main{
		{{if theme.ficon_trans}}
		padding-right: 0;
		{{else}}
		padding-right: 5px;
		{{endif}}
		padding-left: 0;
	}
	
	/* Align forum stats to the side on desktop */
	html[dir='ltr'] .cForumList .ipsDataItem_statsLarge{
		text-align: right;
		padding-left: 0;
		padding-right: 20px;
	}
	html[dir='rtl'] .cForumList .ipsDataItem_statsLarge{
		text-align: left;
		padding-right: 0;
		padding-left: 20px;
	}
		
}



/* Show latest topic title on tablets and mobiles */
@media screen and (max-width:979px){
	
	/* Flex for mobiles */
	.cForumRow.ipsDataItem{
		display: -webkit-flex;
		-webkit-align-items: flex-start;
		-webkit-flex-wrap: wrap;

		display: flex;
		align-items: flex-start;
		flex-wrap: wrap;
	}
	
	
	
	/* Forum icons and stats */
	.cForumRow .ipsDataItem_icon{
		-webkit-flex: 0 0 auto;
		flex: 0 0 auto;
		transform: translateY(5px);
	}
	
		/* Add space after icon */
		html[dir='ltr'] .cForumRow.ipsDataItem .ipsDataItem_icon{
			margin-right: 10px;
		}
		
		html[dir='rtl'] .cForumRow.ipsDataItem .ipsDataItem_icon{
			margin-left: 10px;
		}
	
	
	
	/* Main */
	.cForumRow .ipsDataItem_main{
		-webkit-flex: 0 0 auto;
		flex: 0 0 auto;
		width: calc(100% - {theme="ficon_widthr"}px - 10px);
		padding: 0 !important;
		margin: 0 !important;
	}
	
		.cForumRow .ipsDataItem_title{
			display: block;
			max-width: calc(100% - 80px);
		}

	
	
	/* Stats */
	.ipsApp .cForumList .ipsDataItem_icon:not(.ipsResponsive_hidePhone):not(.ipsResponsive_hideTablet) + .ipsDataItem_main + .ipsDataItem_stats{
		position: absolute;
		top: 15px;
		right: 12px;
		
		margin: 0;
		
		display: -webkit-flex;
		-webkit-align-items: center;
		-webkit-justify-content: flex-end;

		display: flex;
		align-items: center;
		justify-content: flex-end;
	}
	
	.cForumRow .ipsDataItem_statsLarge .ipsDataItem_stats_number{
		font-size: inherit;
	}
	
	html[dir='rtl'] .cForumList .ipsDataItem_icon:not(.ipsResponsive_hidePhone):not(.ipsResponsive_hideTablet) + .ipsDataItem_main + .ipsDataItem_stats{
		right: auto;
		left: 12px;
	}
	
		html[dir='ltr'] .ipsApp .cForumList .ipsDataItem_icon:not(.ipsResponsive_hidePhone):not(.ipsResponsive_hideTablet) + .ipsDataItem_main + .ipsDataItem_stats > *{
			margin: 0;
		}
		
		html[dir='rtl'] .ipsApp .cForumList .ipsDataItem_icon:not(.ipsResponsive_hidePhone):not(.ipsResponsive_hideTablet) + .ipsDataItem_main + .ipsDataItem_stats > *{
			margin: 0;
		}



	/* Convert latest post to a row */
	.ipsApp .cForumList .ipsDataItem_lastPoster.ipsDataItem_withPhoto{
		position: static;
		height: auto;
		width: 100%;
		line-height: 22px;
	}
	
		.ipsApp .cForumList .ipsDataItem_lastPoster.ipsDataItem_withPhoto li{
			margin-top: 10px;
		}
	
		html[dir='ltr'] .ipsApp .cForumList .ipsDataItem_lastPoster.ipsDataItem_withPhoto{
			padding-left: calc({theme="ficon_widthr"}px + 10px);
		}
		
		html[dir='rtl'] .ipsApp .cForumList .ipsDataItem_lastPoster.ipsDataItem_withPhoto{
			padding-right: calc({theme="ficon_widthr"}px + 10px);
		}
			
	
	
	/* Fix float issue with rtl */
	html[dir="rtl"] .ipsDataItem_lastPoster .ipsUserPhoto{
		float: none;
	}
	
	/* Resize avatar and align text vertically in row */
	.cForumList .ipsUserPhoto_tiny img{
		width: 22px;
		height: 22px;
	}
	
		.cForumList .ipsDataItem_lastPoster.ipsDataItem_withPhoto li{
			display: inline-block;
			line-height: inherit;
		}
		
			html[dir='ltr'] .cForumList .ipsDataItem_lastPoster.ipsDataItem_withPhoto li:nth-of-type(1){
				padding-right: 6px;
			}
			
			html[dir='rtl'] .cForumList .ipsDataItem_lastPoster.ipsDataItem_withPhoto li:nth-of-type(1){
				padding-left: 6px;
			}
			
			.cForumList .ipsDataItem_lastPoster.ipsDataItem_withPhoto li:nth-of-type(3){
				display: none;
			}
		
		.cForumList .ipsDataItem_lastPoster.ipsDataItem_withPhoto .ipsContained{
			display: inline;
			width: auto;
			table-layout: auto;
		}
		
		.cForumList .ipsDataItem_lastPoster.ipsDataItem_withPhoto li:last-child time {
		    display: inline-block;
		    width: auto;
		    overflow: visible;
		    font-size: 0;
		}
		
		.cForumList .ipsDataItem_lastPoster.ipsDataItem_withPhoto li:last-child time:before{
			font-size: 1.1rem;
			content: "- ";
		}
		
		.cForumList .ipsDataItem_lastPoster.ipsDataItem_withPhoto li:last-child time:after{
			position: relative;
			top: auto; left: auto; right: auto;
			text-align: inherit;
			font-size: 1.1rem;
			content: attr(data-short);
		}
	
}

/* Large screens: Move last poster info onto two lines */
@media screen and (min-width:1201px){
	
	html[dir="ltr"] .ipsDataItem_lastPoster.ipsDataItem_withPhoto{
		padding-left: 46px;
	}
	html[dir="rtl"] .ipsDataItem_lastPoster.ipsDataItem_withPhoto{
		padding-right: 46px;
	}
	
	html[dir="ltr"] .ipsDataItem_lastPoster.ipsDataItem_withPhoto li,
	html[dir="rtl"] .ipsDataItem_lastPoster.ipsDataItem_withPhoto li{
		margin: 0;
	}
	
	.ipsDataItem_lastPoster.ipsDataItem_withPhoto li.ipsType_blendLinks,
	.ipsDataItem_lastPoster.ipsDataItem_withPhoto li.ipsType_light{
		display: inline-block;
	}
	
	.ipsDataItem_lastPoster.ipsDataItem_withPhoto li.ipsType_blendLinks:after{
		content: ',';
	}
	
}



/*
	----------------
	- Forum Index: Grid
	----------------
*/

.cForumGrid{
	border-color: {hextorgb="text_color" opacity="0.15"};
	background-clip: padding-box !important;
	background: {theme="area_background_light"};
}

.cForumGrid .cForumGrid_forumInfo{
	border-color: {hextorgb="text_color" opacity="0.1"};
}

/* Align icon and forum name */
.cForumGrid_forumInfo{
	display: -webkit-flex !important;
	-webkit-align-items: center;
	display: flex !important;
	align-items: center;
}

	.cForumGrid_forumInfo > span{
		-webkit-flex: 0 0 auto;
		flex: 0 0 auto;
		float: none;
	}
	
	.cForumGrid_forumInfo.ipsPhotoPanel_mini > div{
		-webkit-flex: 1 1 auto;
		flex: 1 1 auto;
		overflow: hidden;
	}

	html[dir="ltr"] .cForumGrid_forumInfo.ipsPhotoPanel_mini > div{
		margin-left: 15px;
	}
	html[dir="rtl"] .cForumGrid_forumInfo.ipsPhotoPanel_mini > div{
		margin-right: 15px;
	}


/*
	----------------
	- Forum Index: Fluid
	----------------
*/

#elContextualTools{
	padding: 0;
	margin: 0;
	margin-bottom: 15px;
}

	#elContextualTools.ipsSticky {
		padding: 0;
	}

.cForumMiniList_wrapper{
	padding: 15px 15px 5px 15px;
}

	.cForumMiniList_multiRoot{
		margin: 0;
	}

	.cForumMiniList.cForumMiniList_multiRoot > li > a{
		color: {theme="text_dark"};
		margin: 0;
	}
	
	.ipsApp .cForumMiniList .cForumMiniList .cForumMiniList{
		margin-bottom: 0;
	}
	
	html[dir="ltr"] .ipsSideMenu_item + .cForumMiniList,
	html[dir="rtl"] .ipsSideMenu_item + .cForumMiniList{
		border: 0;
	}
	
	html[dir='ltr'] .cForumMiniList .ipsSideMenu_item + .ipsSideMenu_list .ipsSideMenu_item{
		padding: 6px 10px 6px 6px;
	}
	
	html[dir='rtl'] .cForumMiniList .ipsSideMenu_item + .ipsSideMenu_list .ipsSideMenu_item{
		padding: 6px 6px 6px 10px;
	}

	.cForumMiniList .cForumMiniList_blob{
		background: {theme="text_color"};
		color: #fff;
		top: auto;
	}
	
	html[dir="ltr"] .cForumMiniList .cForumMiniList_blob{
		margin-right: 8px;
	}
	
	html[dir="rtl"] .cForumMiniList .cForumMiniList_blob{
		margin-left: 8px;
	}
	
		.cForumMiniList .cForumMiniList_blob > span{
			background: {theme="area_background_reset"};
		}

	.cForumMiniList.cForumMiniList_multiRoot > li > a.cForumMiniList_selected {
		background: {hextorgb="area_background" opacity="0.5"};
		border-top-left-radius: inherit;
		border-top-right-radius: inherit;
	}
	.cForumMiniList_categorySelected {
		background: {theme="area_background_light"};
		border-radius: 3px;
	}
	
	.ipsType_small.cForumMiniList_count{
		line-height: 18px;
	}

/* Remove border radius on pseudo avatar if round corners are disabled */
{{if !theme.rounded_photos}}
	.cForumFluidTable .ipsDataItem_loading > div > span:last-child:after {
		border-radius: 0;
	}
{{endif}}

/* Loading colours */
@-webkit-keyframes dummy_anim {
  0% { background-color: {hextorgb="area_background" opacity="0.6"}; }
  50% { background-color: {hextorgb="area_background" opacity="0.9"}; }
  99% { background-color: {hextorgb="area_background" opacity="0.6"}; }
}
@-moz-keyframes dummy_anim {
  0% { background-color: {hextorgb="area_background" opacity="0.6"}; }
  50% { background-color: {hextorgb="area_background" opacity="0.9"}; }
  99% { background-color: {hextorgb="area_background" opacity="0.6"}; }
}
@-ms-keyframes dummy_anim {
  0% { background-color: {hextorgb="area_background" opacity="0.6"}; }
  50% { background-color: {hextorgb="area_background" opacity="0.9"}; }
  99% { background-color: {hextorgb="area_background" opacity="0.6"}; }
}
@-o-keyframes dummy_anim {
  0% { background-color: {hextorgb="area_background" opacity="0.6"}; }
  50% { background-color: {hextorgb="area_background" opacity="0.9"}; }
  99% { background-color: {hextorgb="area_background" opacity="0.6"}; }
}
@keyframes dummy_anim {
  0% { background-color: {hextorgb="area_background" opacity="0.6"}; }
  50% { background-color: {hextorgb="area_background" opacity="0.9"}; }
  99% { background-color: {hextorgb="area_background" opacity="0.6"}; }
}


/*
	----------------
	- Forum Icons
	----------------
*/

/* Icon structure */
.ipsItemStatus.ipsItemStatus_large{
	border-radius: {theme="ficon_radius"}px;
	font-size: {theme="ficon_size"}px;
	color: {theme="ficon_color"};
	
	width: {theme="ficon_width"}px;
	height: {theme="ficon_height"}px;
	
	display: -webkit-flex;
	-webkit-justify-content: center;
	-webkit-align-items: center;

	display: flex;
	justify-content: center;
	align-items: center;
}



/* Background */
.ipsItemStatus.ipsItemStatus_large,
.ipsItemStatus.ipsItemStatus_large.ipsItemStatus_read{
{{if theme.ficon_trans}}
	background-color: transparent;
{{else}}
	background: {theme="item_status"};
{{endif}}
}


/* Feature colour icons */
{{if theme.ficon_trans}}

	/* Remove feature colour if transparent setting is enabled */
	.ipsItemStatus_large[style]{
		background-color: transparent !important;
	}
	
{{else}}

	/* If the icon has a feature colour background, force the icon colour setting for the .fa icon */
	.ipsItemStatus_large[style] .fa{
		color: {theme="ficon_color"};
	}
	
{{endif}}



/* Faint 'read' icons, if a 'read' icon isn't uploaded */
{{if !theme.ficon_image}}
.focus-member .ipsItemStatus.ipsItemStatus_large.ipsItemStatus_read,
{{endif}}
.focus-member .ipsItemStatus_custom.ipsItemStatus_read{
	opacity: 0.3;
	filter: grayscale(1);
}

/* Make icons full visibility for guests */
.focus-guest .ipsItemStatus.ipsItemStatus_read{
	opacity: 1;
}




@media screen and (max-width:979px){
	.ipsDataItem_icon .ipsItemStatus.ipsItemStatus_large{
		font-size: {theme="ficon_sizer"}px;
		border-radius: calc({theme="ficon_radius"}px * 0.65); /* Smaller border radius */
		width: inherit;
		line-height: 1;
	}
}



/* Unread icon */
.ipsItemStatus_large .fa-comments:before{
	content: '\{theme="ficon_unread"}';
}
/* Read icon */
.ipsItemStatus_large.ipsItemStatus_read .fa-comments:before{
	content: '\{theme="ficon_read"}';
}



/* Let icon determine column width */
.ipsDataList_large .ipsDataItem_icon{
	/*
	min-width: {theme="ficon_width"}px;
	width: {theme="ficon_width"}px;
	max-width: {theme="ficon_width"}px;
	*/
	min-width: {theme="ficon_width"}px;
	
	padding: 10px;
	text-align: center;
	box-sizing: content-box;
}

/* Dimensions of forum icons */
.ipsItemStatus_custom,
.cForumRow .ipsItemStatus_custom{
	max-width: {theme="ficon_width"}px;
}

/* Responsive dimensions */
@media (max-width: 979px){
	.ipsDataList_large .ipsDataItem_icon{
		min-width: {theme="ficon_widthr"}px;
		width: {theme="ficon_widthr"}px;
		max-width: {theme="ficon_widthr"}px;
		
		padding: 0 !important;
	}
	.ipsItemStatus_custom,
	.cForumRow .ipsItemStatus_custom{
		max-width: {theme="ficon_widthr"}px;
	}
	.ipsDataItem_icon .ipsItemStatus.ipsItemStatus_large{
		height: {theme="ficon_heightr"}px;
	}
}



{{if theme.ficon_imagenew}}

	/* To use images as forum icons */
	.ipsItemStatus.ipsItemStatus_large .fa{
		display: none;
	}
	
	.ipsApp .ipsItemStatus.ipsItemStatus_large,
	.ipsApp .ipsItemStatus.ipsItemStatus_large.ipsItemStatus_read{
		/* Overwrite inline style background */
		background-color: transparent !important;
		
		background: url('{theme="ficon_imagenew"}') no-repeat 50% 50%;
		background-size: contain;
		
		border-radius: 0;
		box-shadow: none;
		border: 0;
	}
	
	{{if theme.ficon_image}}
	.ipsApp .ipsItemStatus.ipsItemStatus_large.ipsItemStatus_read{
		background-image: url('{theme="ficon_image"}');
	}
	{{endif}}

{{endif}}


/* Fix alignment of tooltip */
.ipsDataItem_icon a[data-action="markAsRead"]{
	display: block;
}



/*
	----------------
	- Sidebar and Widgets
	----------------
*/

#ipsLayout_sidebar{
	overflow: visible;
}

/* Comment count in widgets */
.ipsCommentCount,
.ipsCommentCount.ipsFaded {
	background: {theme="comment_count"};
	border-color: {theme="comment_count"};
	color: {theme="comment_count_font"};
}

	.ipsCommentCount_hot {
		background: {theme="featured"};
		border-color: {theme="featured"};
	}
		
	html[dir="ltr"] .ipsCommentCount:after,
	html[dir="ltr"] .ipsCommentCount.ipsFaded:after,
	html[dir="ltr"] .ipsCommentCount_hot:after { border-right-color: inherit; }
	html[dir="rtl"] .ipsCommentCount:after,
	html[dir="rtl"] .ipsCommentCount.ipsFaded:after,
	html[dir="rtl"].ipsCommentCount_hot:after { border-left-color: inherit; }

	.cWidgetComments{
		position: relative;
	}

	html[dir="ltr"] .ipsWidget .ipsDataItem_main.cWidgetComments{
		padding-right: 30px;
	}

	html[dir="rtl"] .ipsWidget .ipsDataItem_main.cWidgetComments{
		padding-left: 30px;
	}
	
		.cWidgetComments .ipsCommentCount{
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			margin: 0 !important;
		}
		
		html[dir='ltr'] .cWidgetComments .ipsCommentCount{ right: 5px; }
		html[dir='rtl'] .cWidgetComments .ipsCommentCount{ left: 5px; }
		


/* Widgets */

.ipsWidget.ipsWidget_vertical .ipsWidget_title,
.ipsWidget.ipsWidget_horizontal .ipsWidget_title{
	border-radius: 0;
	border-top-left-radius: inherit;
	border-top-right-radius: inherit;
	text-transform: none;
	{{if theme.headline_font != 'default'}}
	font-family: "{theme='headline_font'}";
	{{else}}
	font-family: inherit;
	{{endif}}
}

	/* Widget content */
		.ipsWidget.ipsWidget_horizontal .ipsTabs_panel {
			background: {theme="area_background_reset"};
		}

	html[dir="ltr"] .ipsWidget_columns > [class*="ipsGrid"] {
		border-right-color: {hextorgb="text_color" opacity="0.12"};
	}
	html[dir="rtl"] .ipsWidget_columns > [class*="ipsGrid"] {
		border-left-color: {hextorgb="text_color" opacity="0.12"};
	}
	
	.ipsWidget.ipsWidget_primary {
		background: {theme="secondary_title"};
	}
	
		.ipsWidget.ipsWidget_primary h3 {
			color: {theme="secondary_title_font"};
		}
		
/* Member stats */
@media screen and (max-width:979px){
	.ipsWidget_horizontal[data-blockid*="app_core_stats"] .ipsGrid_span4{
		padding-top: 8px;
		padding-bottom: 8px;
		border-bottom: 1px solid {hextorgb="text_color" opacity="0.15"};
	}
	
	.ipsWidget_horizontal[data-blockid*="app_core_stats"] .ipsGrid_span4:last-of-type{
		border: 0;
	}
}

/* Widget icons */
.ipsWidget_title::before{
	font-family: 'FontAwesome';
	font-style: normal;
	font-weight: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transform: translate(0,0);
	margin-right: 7px;
	margin-left: -3px;
	opacity: 0.7;
	display: inline-block;
	line-height: 1px;
}

	html[dir='rtl'] .ipsWidget_title::before{
		margin-left: 7px;
		margin-right: -3px;
	}

	.ipsWidget[data-blockid^="app_blog_blogs_"] .ipsWidget_title::before{ content: '\f02d'; }
	.ipsWidget[data-blockid^="app_blog_blogCommentFeed"] .ipsWidget_title::before{ content: '\f02e'; }
	.ipsWidget[data-blockid^="app_blog_entryFeed"] .ipsWidget_title::before{ content: '\f02d'; }
	.ipsWidget[data-blockid^="app_blog_blogStatistics"] .ipsWidget_title::before{ content: '\f200'; }
	.ipsWidget[data-blockid^="app_calendar_todaysBirthdays"] .ipsWidget_title::before{ content: '\f1fd'; }
	.ipsWidget[data-blockid^="app_calendar_upcomingEvents"] .ipsWidget_title::before{ content: '\f073'; }
	.ipsWidget[data-blockid^="app_calendar_recentReviews"] .ipsWidget_title::before{ content: '\f274'; }
	.ipsWidget[data-blockid^="app_core_stats"] .ipsWidget_title::before{ content: '\f080'; }
	.ipsWidget[data-blockid^="app_core_whosOnline"] .ipsWidget_title::before{ content: '\f007'; }
	.ipsWidget[data-blockid^="app_core_recentStatusUpdates"] .ipsWidget_title::before{ content: '\f086'; }
	.ipsWidget[data-blockid^="app_core_topContributors"] .ipsWidget_title::before{ content: '\f234'; }
	.ipsWidget[data-blockid^="app_core_activeUsers"] .ipsWidget_title::before{ content: '\f0c0'; }
	.ipsWidget[data-blockid^="app_core_clubs"] .ipsWidget_title::before{ content: '\f2bb'; }
	.ipsWidget[data-blockid^="app_core_promoted"] .ipsWidget_title::before{ content: '\f005'; }
	.ipsWidget[data-blockid^="app_core_members"] .ipsWidget_title::before{ content: '\f007'; }
	.ipsWidget[data-blockid^="app_core_newsletter"] .ipsWidget_title::before{ content: '\f003'; }
	.ipsWidget[data-blockid^="app_downloads_downloadsReviewFeed"] .ipsWidget_title::before{ content: '\f040'; }
	.ipsWidget[data-blockid^="app_downloads_downloadsCommentFeed"] .ipsWidget_title::before{ content: '\f0e6'; }
	.ipsWidget[data-blockid^="app_downloads_fileFeed"] .ipsWidget_title::before{ content: '\f019'; }
	.ipsWidget[data-blockid^="app_downloads_topDownloads"] .ipsWidget_title::before{ content: '\f091'; }
	.ipsWidget[data-blockid^="app_downloads_downloadStats"] .ipsWidget_title::before{ content: '\f200'; }
	.ipsWidget[data-blockid^="app_downloads_topSubmitters"] .ipsWidget_title::before{ content: '\f091'; }
	.ipsWidget[data-blockid^="app_forums_topicFeed"] .ipsWidget_title::before{ content: '\f03a'; }
	.ipsWidget[data-blockid^="app_forums_forumStatistics"] .ipsWidget_title::before{ content: '\f201'; }
	.ipsWidget[data-blockid^="app_forums_poll"] .ipsWidget_title::before{ content: '\f200'; }
	.ipsWidget[data-blockid^="app_forums_postFeed"] .ipsWidget_title::before{ content: '\f086'; }
	.ipsWidget[data-blockid^="app_forums_hotTopics"] .ipsWidget_title::before{ content: '\f005'; }
	.ipsWidget[data-blockid^="app_gallery_galleryStats"] .ipsWidget_title::before{ content: '\f200'; }
	.ipsWidget[data-blockid^="app_gallery_albums"] .ipsWidget_title::before{ content: '\f02d'; }
	.ipsWidget[data-blockid^="app_gallery_imageFeed"] .ipsWidget_title::before{ content: '\f03e'; }
	.ipsWidget[data-blockid^="app_gallery_recentComments"] .ipsWidget_title::before{ content: '\f0e6'; }
	.ipsWidget[data-blockid^="app_gallery_recentImageReviews"] .ipsWidget_title::before{ content: '\f040'; }
	.ipsWidget[data-blockid^="app_nexus_donations"] .ipsWidget_title::before{ content: '\f155'; }
	.ipsWidget[data-blockid^="app_nexus_subscriptions"] .ipsWidget_title::before{ content: '\f0d6'; }
		
/* Fixes */
.ipsWidget_title .ipsType_light{
	color: inherit;
	opacity: 0.6;
	line-height: inherit;
}

html[dir='ltr'] .cWidgetComments .ipsBadge{ margin-right: 5px; }
html[dir='rtl'] .cWidgetComments .ipsBadge{ margin-left: 5px; }


	
/*
	----------------
	- Topic List
	----------------
*/

/* Rules */
a[data-ipsdialog-content="#elForumRules"],
a[data-ipsdialog-content="#elCategoryRules"]{
	display: block;
	padding: 15px;
	margin-bottom: 10px;

	color: {theme="link"};
	background: {theme="area_background_light"};
	border: 2px solid {hextorgb="text_color" opacity="0.3"};
	border-width: 2px 0px;
}

	/* Force primary background in pop-up */
	.ipsDialog #elForumRules{
		background-color: transparent;
	}

/* Add extra space between topic stats and avatar */
@media screen and (min-width:980px){
	html[dir='ltr'] .cTopicList .ipsDataItem_stats{
		padding-right: 25px;
	}
	html[dir='rtl'] .cTopicList .ipsDataItem_stats{
		padding-left: 25px;
	}
}

/* Better alignment of forum title, topic title, prefix, tags and pagination */
@media screen and (min-width:768px){
	.cForumTopicTable .ipsDataItem_title{
		display: flex !important;
		align-items: center;
	}
	
	.cForumTopicTable .ipsDataItem_title .ipsContained{
		flex: 1 1 auto;
		display: block !important;
	}
	
		.cForumTopicTable .ipsDataItem_title .ipsBadge.ipsBadge_small,
		.cForumTopicTable .ipsTag_prefix,
		.cForumTopicTable .ipsPagination.ipsPagination_mini{
			vertical-align: top;
			position: relative;
			top: 2px;
		}
		
		.cForumTopicTable .ipsTag_prefix{
			top: 1px;
		}
		
		.cForumTopicTable .ipsDataItem_title > .ipsType_break > a,
		.cForumTopicTable .ipsDataItem_meta .ipsTags_inline{
			display: inline-block;
		}

	/* Neaten alignment of status icons and prefixes */
	html[dir='ltr'] .cForumTopicTable .ipsDataItem_title > .ipsType_break > span,
	html[dir='ltr'] .cForumTopicTable .ipsDataItem_title > .ipsType_break > a,
	html[dir='ltr'] .cForumTopicTable .ipsDataItem .ipsDataItem_main .ipsContained > i{
		padding-right: 0;
		margin-right: 5px;
		display: inline-block;
	}
	
	html[dir='rtl'] .cForumTopicTable .ipsDataItem_title > .ipsType_break > span,
	html[dir='rtl'] .cForumTopicTable .ipsDataItem_title > .ipsType_break > a,
	html[dir='rtl'] .cForumTopicTable .ipsDataItem .ipsDataItem_main .ipsContained > i{
		padding-right: 0;
		margin-left: 5px;
		display: inline-block;
	}

}

/* Topic icons */
.ipsItemStatus:not( .ipsItemStatus_large ),
.ipsItemStatus.ipsItemStatus_read:not(.ipsItemStatus_large){
	color: {theme="link"};
}

/*
.cTopicList .ipsDataItem_icon{
	vertical-align: middle !important;
}
.ipsItemStatus.ipsItemStatus_read:not(.ipsItemStatus_large){
	color: inherit;
}
*/
	.cTopicList .ipsItemStatus.ipsItemStatus_read{
		opacity: 0.25;
	}
	.cTopicList .ipsItemStatus .fa-star:before{
		content: '\f086';
	}
	.cTopicList .ipsItemStatus .fa-circle:before{
		content: '\f0e6';
	}





/*
	----------------
	- Topic View
	----------------
*/

/* Font size and line height in posts and editor */
.ipsComment_content .ipsType_richText,
.ipsApp .cke_contents{
	font-size: 1.4rem;
	line-height: 1.6;
}


/* Hold to edit title */
.ipsType_pageTitle [data-role="editableTitle"]:hover,
.ipsType_pageTitle[data-role="editableTitle"]:hover{
	background: {hextorgb="text_color" opacity="0.2"};
}


/* Button and rating alignment */
.focus-button-alignment{
	margin: 15px 0;
}

/* The clearfix class is required for a 3rd party hook */
.focus-button-alignment.ipsClearfix:after{
	display: none;
}

@media screen and (min-width:768px){
	.focus-button-alignment{
		display: flex;
		align-items: center;
	}
	
		.focus-button-alignment > *{
			flex: 0 0 auto;
		}
		
		html[dir='ltr'] .focus-button-alignment .ipsToolList{
			margin: 0 0 0 auto;
		}
		
		html[dir='rtl'] .focus-button-alignment .ipsToolList{
			margin: 0 auto 0 0;
		}
}



/* Rating */
.focus-rating{
	color: {theme="link_button"};
}
	.focus-rating .ipsType_light{
		color: inherit;
	}

	.ipsRating .ipsRating_half .fa-star-half.fa-flip-horizontal,
	.ipsRating .ipsRating_off .fa-star-o,
	.ipsRating .ipsRating_off .fa-star {
		color: {hextorgb="link_button" opacity="0.7"};
	}



/* Reply area */
.focus-transparent .cTopicPostArea.ipsBox{
	background: none !important;
	padding-left: 0;
	padding-right: 0;
	border: 0;
	box-shadow: none;
}

#ipsfocus [data-role="replyArea"]{
	background: {theme="area_background_reset"};
	box-shadow: none;
	border-width: 0px;
	border-radius: 3px;
}

#comments [data-role="replyArea"]{
	background: none;
	padding: 0;
}



/* Compact view */
.focus-topic-compact .focus-topic .cPost.ipsBox{
	margin-bottom: 0;
	box-shadow: none;
	background: none;
	border: 0;
	border-radius: 0;
}

	/* Remove background, border and box-shadow from highlighted and popular posts */
	.focus-topic-compact .focus-topic .ipsComment_highlighted:not(.ipsBox_transparent):not(.ipsModerated):not(.ipsComment_selected):not(.ipsComment_popular),
	.focus-topic-compact .ipsComment.ipsBox.ipsComment_popular:not(.ipsModerated):not(.ipsComment_selected){
		box-shadow: none;
		border: 0;
		background-color: transparent;
	}

/* Reduce space between posts if transparent class is used, since 15px looks too large */
.focus-transparent:not(.focus-topic-compact) .cTopic .ipsComment{
	margin-bottom: 8px;
}


/* Inherit border-radius for post headers and button bar */
.cPost:before,
.cAuthorPane_mobile,
.focus-topic-compact .focus-topic .cPost:first-of-type{
	border-top-left-radius: inherit;
	border-top-right-radius: inherit;
}

.focus-topic-compact .focus-topic form,
.cPost .ipsColumn,
.cPost .ipsComment_content,
.cPost .cPost_contentWrap{
	border-radius: inherit;
}

.focus-topic-compact .focus-topic .cPost:last-of-type,
.cPost .ipsItemControls{
	border-bottom-left-radius: inherit;
	border-bottom-right-radius: inherit;
}


/* Post layout */

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

	.cPost:before{
		background: {theme="secondary_title"};
		height: {theme="post_header_height"}px;
		content: '';
		display: block;
		position: absolute;
		z-index: 1;
		top: 0; left: 0; right: 0;
		box-sizing: border-box;
	}
	
	.cPost .cAuthorPane .cAuthorPane_author,
	.cPost .ipsComment_meta{
		line-height: {theme="post_header_height"}px;
		color: {theme="secondary_title_font"};
	}

	/* Place text on top of .cPost::before */
	.cAuthorPane_author,
	.cPost .ipsComment_meta{
	  position: relative;
	  z-index: 2;
	}
	
		/* Place column beneath post header */
		.cPost .cRatingColumn{
			position: static;
		}
		
		/* Push solve content below header and make sure corners dont poke out from rounded post headers */
		.cRatingColumn{
			padding-top: {expression="theme.post_header_height + 15"}px !important;
			border: 1px solid {hextorgb="text_color" opacity="0.08"};
			border-width: 0 1px 0 0;
		}
		
		html[dir='rtl'] .cRatingColumn{
			border-width: 0 0 0 1px;
		}
		
		/* Align username */
		.cPost .cAuthorPane{
			padding-top: 0 !important;
		}

			.cPost .cAuthorPane .cAuthorPane_author{
				font-size: 1.4rem;
				margin-bottom: 0;
				white-space: nowrap;
			}
			
			.cAuthorPane_author strong{
				font-weight: bold;
			}
			
			/* User info */
			.cAuthorPane_info{ padding-top: 18px; }
			
			/* Sticky author pane */
			.focus-sticky-author .cAuthorPane_info{
				position: -webkit-sticky;
				position: sticky;
				top: 0;
			}
			
		/* Align date */
		body.ipsApp .cPost .ipsComment_meta{
			padding-top: 0;
			padding-bottom: 0;
			font-size: 1.2rem;
		}
		
			.cPost .cAuthorPane .cAuthorPane_author a,
			.cPost .ipsComment_meta a,
			.cPost .ipsComment_meta .ipsType_light{
				color: inherit !important;
			}
			
		body.ipsApp .cPost .cPost_contentWrap{
			padding-top: 18px;
			padding-bottom: 10px;
		}
		
		.ipsComment_tools > li{
			vertical-align: top;
		}
	
	/* Flex layout */
	
	.ipsApp .cPost:not(.ipsHide){
		display: -webkit-flex;
		display: flex;
	}
	
	.cPost .cAuthorPane{
		-webkit-flex: 0 0 auto;
		flex: 0 0 auto;
	}

	
	.cPost > .ipsColumn_fluid{
		-webkit-flex: 1 1 auto;
		display: -webkit-flex;
		flex: 1 1 auto;
		display: flex;
		/* IE 11 fix */
		width: 300px;
	}
	
	/* Push bar to the bottom if enabled */
	.focus-post-bar .cPost{
		-webkit-align-items: stretch;
		align-items: stretch;
	}
	
	.focus-post-bar .cPost .ipsComment_content{
		display: -webkit-flex;
		-webkit-flex-direction: column;
		display: flex;
		flex-direction: column;
		/* IE 11 fix */
		width: 100%;
	}
	
	.focus-post-bar .cPost .ipsComment_meta{
		-webkit-flex: 0 0 auto;
		flex: 0 0 auto;
	}
	
	.focus-post-bar .cPost .cPost_contentWrap{
		display: -webkit-flex;
		-webkit-flex-direction: column;
		-webkit-justify-content: space-between;
		-webkit-flex: 1 1 auto;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		flex: 1 1 auto;
	}
	
	.focus-post-bar .cPost [data-role="commentContent"]{
		margin-bottom: auto;
		padding-bottom: 10px;
	}
	
	/* Larger avatars */
	.cTopic .ipsUserPhoto_large img,
	.cTopic img.ipsUserPhoto_large,
	.cTopic .ipsUserPhoto_large:after{
		width: 110px;
		height: 110px;
		width: var(--topic-avatar);
		height: var(--topic-avatar);
		{{if theme.rounded_photos}}
		border-radius: 50%;
		{{endif}}
	}



	@supports (--css: variables){

		.cPost .cAuthorPane{
			width: var(--author-pane--width);
			background: var(--author-pane--background, transparent);
		}

		/* Add padding to content area if a border or background is added to the author pane */
		html[dir='ltr'] .cPost .ipsComment_content{
			padding-left: var(--post-content--padding, 0px);
			border: 0px solid var(--author-pane--border-color, rgba(0,0,0,0.1));
			border-width: 0px 0px 0px var(--author-pane--border-width, 0px);
		}

		html[dir='rtl'] .cPost .ipsComment_content{
			padding-right: var(--post-content--padding, 0px);
			border-width: 0px var(--author-pane--border-width, 0px) 0px 0px;
		}

	}

}

@media screen and (max-width: 767px){
	
	/* Post header */
	#ipsLayout_body .cAuthorPane_mobile{
		background-color: {theme="secondary_title"};
	}
	
	.cPost .cAuthorPane_mobile{
		color: {theme="secondary_title_font"};
		padding: 10px !important;
	}
	
		/* Force the reputation to inhert header colour for better contrast */
		.focus-rep-inherit .cAuthorPane_mobile .ipsRepBadge{
			color: inherit !important;
		}
	
	.cPost.ipsComment .cAuthorPane{
		height: 60px;
	}
	
	/* Avatar */
	html[dir="ltr"] .cPost.ipsComment .cAuthorPane_photo{ left: 9px; }
	html[dir="rtl"] .cPost.ipsComment .cAuthorPane_photo{ right: 9px; }
	
	.cPost.ipsComment .cAuthorPane_photo{
		top: 50%;
		margin-top: -20px;
	}
	
		.cAuthorPane_photo .ipsUserPhoto{
			margin: 0;
		}
	
	/* Username */
	html[dir="ltr"] .cPost.ipsComment .cAuthorPane_author{ margin-left: 50px; }
	html[dir="rtl"] .cPost.ipsComment .cAuthorPane_author{ margin-right: 50px; }
	
	.cPost .cAuthorPane_mobile .cAuthorPane_author {
		margin-top: 0;
		margin-bottom: 0;
	    line-height: 20px;
	    max-height: 20px;
		display: block !important;
	}
	
		.cPost .cAuthorPane_mobile .cAuthorPane_author > a{
			font-size: 14px;
			line-height: inherit;
		}
		
		.cPost .cAuthorPane_mobile .cAuthorPane_author > a,
		.cPost .cAuthorPane_mobile .cAuthorPane_author > span{
			display: inline-block !important;
			vertical-align: top;
		}
		
		.cAuthorPane_mobile .ipsRepBadge{
			vertical-align: top;
		}
	
		#ipsLayout_body .cAuthorPane_mobile *,
		#ipsLayout_body .cPost .ipsComment_meta .ipsType_light{
			color: inherit;
		}
	
	html[dir] .cPost .ipsComment_meta{
		line-height: 20px;
		color: {theme="secondary_title_font"};
		top: -30px;
		padding: 0 1px;
	}
	
		.cPost .ipsComment_meta .ipsComment_tools > li{
			vertical-align: top;
		}
	
		/* Prevent wrapping to multiple lines */
		.cPost .ipsComment_meta > .ipsType_reset:not(.ipsPos_right){
			overflow: hidden;
			white-space: nowrap;
			text-overflow: ellipsis;
		}
	
	
	
	/* Fix padding */
	body.ipsApp .cPost .cPost_contentWrap{
		padding-left: 0;
		padding-right: 0;
	}
	
	/* Fix margin */
	.cPost .ipsColumn{
		margin-bottom: 0 !important;
	}

}

/* Hide comment controls in posts if there are no buttons or react options */
.ipsItemControls.iIC-no-buttons.iIC-no-react{
	display: none;
}

/* Neatly pad comment controls when there are no reactions */
.cPost .ipsComment_controls{
	padding: 7px 0;
}

/* Ignored post options bar */
.ipsComment.ipsComment_ignored{
	padding-bottom: 15px;
}
.focus-topic-compact .ipsComment.ipsComment_ignored{
	padding-top: 15px;
	border-top: 1px solid {hextorgb="text_color" opacity="0.15"};
}


/* Force moderated colours */
.cPost.ipsModerated{
	background-color: {theme="moderated"} !important;
}

.cPost.ipsModerated:before,
.cPost.ipsModerated .cAuthorPane_mobile{
	background-color: {theme="moderated_text"} !important;
}

.focus-post-bar .cPost.ipsModerated .ipsItemControls{
	background: {theme="moderated"} !important;
}

	.cPost.ipsModerated .cAuthorPane .cAuthorPane_author,
	.ipsApp .cPost.ipsModerated .ipsComment_meta,
	.cPost.ipsModerated .cAuthorPane_mobile{
		color: {theme="moderated"};
	}
	.focus-post-row .cPost.ipsModerated .ipsComment_controls{
		color: {theme="moderated_text"};
	}

/* Selected colours */
.ipsComment.cPost.ipsComment_selected{
	background: {theme="selected"} !important;
}





/*
	----------------
	Comment controls: bar
	----------------
*/

.ipsItemControls,
html[dir="ltr"] .ipsReact_blurb:not(.ipsHide) + .ipsReact_types,
html[dir="rtl"] .ipsReact_blurb:not(.ipsHide) + .ipsReact_types{
	border-color: {hextorgb="text_color" opacity="0.1"};
}

html[dir="rtl"] .ipsReact_blurb,
html[dir="ltr"] .ipsReact_blurb:not(.ipsHide) + .ipsReact_types{ margin-left: 5px; }
html[dir="ltr"] .ipsReact_blurb,
html[dir="rtl"] .ipsReact_blurb:not(.ipsHide) + .ipsReact_types{ margin-right: 5px; }

.focus-post-bar .cTopic .ipsItemControls{
	background: {theme="area_background_light"};
	border-color: {hextorgb="text_color" opacity="0.13"};
	border-style: solid;
	border-width: 1px 0 0 0;
	color: {theme="text_color"};
}

@media screen and (min-width:768px){
	
	.cTopic .ipsItemControls{
		padding: 1px;
	}
	
	.focus-post-bar .cTopic .ipsItemControls{
		width: auto;
		margin-bottom: -10px;
		order: 1;
	}
	
		html[dir='ltr'].focus-post-bar .cTopic .ipsItemControls{
			margin-left: -200px;
			margin-right: -15px;
			padding-left: 200px;
			margin-left: calc(var(--item-controls-offset) * -1);
			padding-left: var(--item-controls-offset);
		}
		
		html[dir='rtl'].focus-post-bar .cTopic .ipsItemControls{
			margin-right: -200px;
			margin-left: -15px;
			padding-right: 200px;
			margin-right: calc(var(--item-controls-offset) * -1);
			padding-right: var(--item-controls-offset);
		}
	
	.focus-post-bar .cTopic .cAuthorPane_info:after{
		content: '';
		display: block;
		height: 44px;
	}

}

@media screen and (max-width:767px){
	
	.cPost .ipsItemControls{
		margin-bottom: 0;
		padding: 5px 0;
	}
	
	.focus-post-bar .cPost .ipsItemControls{
		margin-left: -10px;
		margin-right: -10px;
		width: auto;
		padding: 5px;
	}
	
}


/*
	----------------
	Comment controls: buttons
	----------------
*/

.focus-post-buttons .cTopic .ipsComment_controls{
	color: {theme="normal_button_font"};
	
	padding: 5px 0;
	line-height: 2.8rem;
	font-weight: bold;
	font-size: 0;
}

	.focus-post-buttons .cTopic .ipsComment_controls > li{
		font-size: 1.2rem;
		vertical-align: top;
	}

	html[dir="ltr"].focus-post-buttons  .cTopic .ipsComment_controls > li{
		margin-right: 5px;
	}
	
	html[dir="rtl"].focus-post-buttons  .cTopic .ipsComment_controls > li{
		margin-left: 5px;
	}

		.focus-post-buttons .cTopic .ipsComment_controls a,
		.focus-post-buttons .cTopic .ipsComment_controls .ipsButton{
			border-radius: 3px;
			text-shadow: rgba(0,0,0,0.2) 0px 1px 1px;
			background-color: {theme="normal_button"};
			border-color: rgba(0,0,0,0.2);
			
			font-size: inherit;
			font-weight: inherit;
			color: inherit;
			margin: 0;
			padding: 0 0.8em;
			line-height: inherit;
			display: block;
			border-width: 0px;
			border-style: solid;
			text-shadow: inherit;
			vertical-align: top;
			position: relative;
		}
			
			.focus-post-buttons .cTopic .ipsComment_controls a:after,
			.focus-post-buttons .cTopic .ipsComment_controls .ipsButton:after{
				content: '';
				position: absolute;
				top: 0; left: 0; right: 0; bottom: 0;
				border-width: 1px;
				border-style: inherit;
				border-color: inherit;
				border-radius: inherit;
				pointer-events: none;
			}
			
				/* Hover */
				.focus-post-buttons .cTopic .ipsComment_controls a:hover:after,
				.focus-post-buttons .cTopic .ipsComment_controls .ipsButton:hover:after{
					background: rgba(255,255,255,0.2);
				}
				
				/* Active */
				.focus-post-buttons .cTopic .ipsComment_controls a:active,
				.focus-post-buttons .cTopic .ipsComment_controls .ipsButton:active {
					transform: translateY(1px);
				}
				
				.focus-post-buttons .cTopic .ipsComment_controls a:active:after,
				.focus-post-buttons .cTopic .ipsComment_controls .ipsButton:active:after {
					background: rgba(0,0,0,0.1);
				}
			
		
			
/*
	----------------
	Comment controls: button row
	----------------
*/

.focus-post-row .cTopic .ipsItemControls{
	padding: 0;
}

.focus-post-row .cTopic .ipsComment_controls{
	color: {theme="link"};
	border-width: 0 0 0 1px;
	border-style: solid;
	border-color: {hextorgb="text_color" opacity="0.13"};
	
	padding: 0;
	line-height: 44px;
	font-weight: bold;
	font-size: 0;
}

html[dir='rtl'].focus-post-row .cTopic .ipsComment_controls{
	border-width: 0 1px 0 0;
}

@media screen and (max-width:767px){
	.focus-post-row .cTopic .ipsComment_controls,
	html[dir='rtl'].focus-post-row .cTopic .ipsComment_controls{
		border-width: 0;
	}
}

	.focus-post-row .cTopic .ipsComment_controls > li{
		font-size: 1.2rem;
		vertical-align: top;
		margin: 0;
		border-width: 0 1px 0 0;
		border-style: solid;
		border-color: inherit;
	}
	
	html[dir='rtl'].focus-post-row .cTopic .ipsComment_controls > li{
		border-width: 0 0 0 1px;
	}

		.focus-post-row .cTopic .ipsComment_controls a,
		.focus-post-row .cTopic .ipsComment_controls .ipsButton{
			background: none;
			
			font-size: inherit;
			font-weight: inherit;
			color: inherit;
			margin: 0;
			padding: 0 1em;
			line-height: inherit;
			display: block;
			border: 0;
			text-shadow: inherit;
			vertical-align: top;
			box-shadow: none;
		}
		
			.focus-post-row .cTopic .ipsComment_controls a:hover,
			.focus-post-row .cTopic .ipsComment_controls .ipsButton:hover{
				color: inherit;
				background: {hextorgb="text_color" opacity="0.06"};
			}
			
			/* Remove pseudo border */
			.focus-post-row .cTopic .ipsComment_controls .ipsButton:after{
				display: none;
			}



/*
	----------------
	- Reactions bar
	----------------
*/

.ipsReact{
	font-size: 1.2rem;
}

/* Initial icon */
.ipsReact_button {
	filter: grayscale(100%);
	background-clip: padding-box !important;
}

	.ipsReact_button img{
		max-width: 30px;
		max-height: 30px;
	}

	/* Hover */
	body.ipsApp_noTouch .ipsReact_types:hover .ipsReact_button,
	body:not( .ipsApp_noTouch ) .ipsReact_types.ipsReact_types_active .ipsReact_button {
		border-color: {hextorgb="text_color" opacity="0.2"};
		background: {theme="area_background_light"};
		box-shadow: none;
		
		transform: none;
	}
	
	/* List of icons */
	.ipsReact_types ul{
		background: {theme="area_background_dark"};
		border: 0;
	}
	
	/* When a reaction option is hovered */
	.ipsReact_types ul a{
		transform-origin: 50% 50%;
	}
	
		.ipsReact_types ul a:hover {
			transform: scale(1);
		}

/* Wrap excess reactions */
.ipsReact_reactions{ flex-wrap: wrap; }

/* You reacted to this.. */
.ipsReact_blurb{
	display: flex;
	align-items: center;
	
	padding: 5px 0;
}

	.ipsReact_reactions + .ipsReact_overview{
		margin: 0 10px;
		order: -1;
	}
	
	.ipsReact_reactCount {
		border-color: {hextorgb="text_color" opacity="0.2"};
		background: {theme="area_background_reset"};
		background-clip: padding-box;
	}
	
		.ipsReact_reactCount > a,
		.ipsReact_reactCount > span{
			display: flex;
			align-items: center;
		}
		
		.ipsReact_reactCount > span{
			padding: 0 !important;
			margin: 0 !important;
			background: none !important;
		}
		
			.ipsReact_reactCount span:first-child{
				padding: 0 3px;
				line-height: 18px;
			}
			
				.ipsReact_reactCount img{
					vertical-align: top;
				}
			
			html[dir] .ipsReact_reactCount span:last-child {
				background: {hextorgb="text_color" opacity="0.1"};
				color: {theme="text_color"};
				margin: 0;
				line-height: 24px;
			}

.ipsReact_unreact{
	background: {theme="area_background_dark"};
}

/* Reaction ring when clicked */
a.ipsReact_reaction:after {
	box-shadow: inset 0 0 0 35px {hextorgb="text_color" opacity="0"};
}
@-webkit-keyframes reaction-click-ring {
	0% {
		opacity: 1;
		-webkit-transform: scale3d(0.4, 0.4, 1);
		transform: scale3d(0.4, 0.4, 1);
	}
	40% {
		box-shadow: inset 0 0 0 2px {hextorgb="text_color" opacity="0.8"};
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
		opacity: 0.8;
	}
	100% {
		box-shadow: inset 0 0 0 2px {hextorgb="text_color" opacity="0.8"};
		opacity: 0;
		-webkit-transform: scale3d(1.2, 1.2, 1);
		transform: scale3d(1.2, 1.2, 1);
	}
}

@keyframes reaction-click-ring {
	0% {
		opacity: 1;
		transform: scale3d(0.4, 0.4, 1);
	}
	40% {
		box-shadow: inset 0 0 0 2px {hextorgb="text_color" opacity="0.8"};
		transform: scale3d(1, 1, 1);
		opacity: 0.8;
	}
	100% {
		box-shadow: inset 0 0 0 2px {hextorgb="text_color" opacity="0.8"};
		opacity: 0;
		transform: scale3d(1.2, 1.2, 1);
	}
}


@media screen and (max-width:979px){
	
	/* Bug fix: remove horizontal scrollbar */
	html[dir="ltr"] .ipsReact_unreact{
		right: -6px;
	}
	html[dir="rtl"] .ipsReact_unreact{
		left: -6px;
	}
	a.ipsReact_reaction::after{
		width: 40px;
		height: 40px;
	}
		html[dir="ltr"] a.ipsReact_reaction::after{
			margin: -20px 0 0 -20px;
		}
		html[dir="rtl"] a.ipsReact_reaction::after{
			margin: -20px -20px 0 0;
		}
	
}



/* Popular flag */
@media screen and (max-width:767px){
	.cPost.ipsComment.ipsComment_popular .ipsComment_popularFlag{
		top: -66px;
	}
}

/* Share links and pinned badges */
.cShareLink, .ipsBadge.ipsBadge_icon, .ipsBadge.ipsBadge_icon.ipsBadge_small{ border-radius: 3px; }

/* Pips */
.ipsPip{
	color: {theme="text_color"};
}

/* Signatures */
div[data-role="memberSignature"] .ipsType_richText{
	font-size: 1.2rem;
	padding-bottom: 5px;
}

	/* Remove signature padding if the comment controls bar exists */
	.focus-ccbar div[data-role="memberSignature"] .ipsType_richText,
	.focus-ccrow div[data-role="memberSignature"] .ipsType_richText{
		padding-bottom: 0;
	}
	
	/* Remove extra spacing if comment controls bar doesn't exist */
	html:not(.focus-ccbar):not(.focus-ccrow) div[data-role="memberSignature"] .ipsHr{
		margin-top: 0;
	}
	
	div[data-role="memberSignature"] a{
		color: inherit;
	}

/* Moderated */
.ipsBox.ipsModerated {
	border-color: {theme="moderated_text"};
}
.cPost.ipsModerated .cAuthorPane,
.cPost.ipsModerated .ipsComment_content{
	background-color: transparent;
}



/* Quote, code and embed */
.ipsQuote,
.ipsCode,
.ipsSpoiler, .ipsStyle_spoiler{
	background: {theme="area_background_light"};
	background-clip: padding-box !important;
	border-color: {hextorgb="area_background_dark" opacity="0.3"} !important;
	color: {theme="text_color"};
	border-radius: 3px;
}
/* .ipsQuote, .ipsSpoiler, .ipsStyle_spoiler{
	box-shadow: inset rgba(0,0,0,0.05) 0px 0px 5px;
}*/

body.ipsApp .ipsQuote{
	border-width: 1px;
}

	.ipsQuote .ipsQuote{
		background: none;
		margin-bottom: 8px;
	}

{{if intval( settings.editor_paragraph_padding ) === 0}}
.ipsQuote{
	margin: 10px 0;
	padding-bottom: 10px;
}
.ipsQuote_closed{
	margin-bottom: -10px;
}
.ipsQuote_open{
	margin-bottom: 10px;
}
.ipsSpoiler_contents{
	padding: 10px 0;
}
{{endif}}

.ipsQuote_citation,
.ipsSpoiler_header,
.ipsEmbedded_headerArea{
	background: {theme="area_background_dark"};
	color: #fff;
	
	font-size: inherit;
	border-radius: inherit;
	margin: 5px -10px;
}

	.ipsSpoiler .ipsSpoiler_header a,
	.ipsStyle_spoiler .ipsSpoiler_header a,
	.ipsSpoiler_header.ipsSpoiler_open [data-action="toggleSpoiler"]::before,
	.ipsQuote .ipsQuote_citation a,
	.ipsQuote_citation.ipsQuote_open [data-action="toggleQuote"]::before{
		color: inherit;
	}
	
	.ipsSpoiler_header.ipsSpoiler_open [data-action="toggleSpoiler"]::before{
		opacity: 0.5;
	}
	
	.ipsQuote_citation a[data-action="toggleQuote"]{
		font-weight: normal;
	}

/* Embedded content */
iframe[data-embedContent]{
	background: {hextorgb="text_color" opacity="0.1"};
	border-color: {hextorgb="text_color" opacity="0.3"};
	min-height: 0;
	border-radius: 3px;
}

iframe.ipsEmbed_finishedLoading[data-embedContent]{
	background-color: {hextorgb="text_color" opacity="0.1"};
	border-color: {hextorgb="text_color" opacity="0.3"};
}

	.ipsRichEmbed{
		padding: 5px;
	}
	
	.ipsRichEmbed_header,
	.ipsRichEmbed_moreInfo,
	.ipsApp .ipsRichEmbed_stats.ipsSpacer_top,
	.ipsRichEmbed_originalItem{
		border-color: {hextorgb="text_color" opacity="0.15"};
	}
	
	.ipsRichEmbed_header{
		background: {theme="area_background_dark"};
		color: #fff;
		border-radius: 3px;
		border: 0;
	}
	
	.ipsRichEmbed_originalItem{
		background-clip: padding-box;
	}
	
	.ipsRichEmbed_author{
		color: inherit;
		opacity: 0.6;
	}

	.ipsRichEmbed_openItem{
		color: inherit;
		opacity: 0.3;
	}

	.ipsEmbedded_headerArea{
		border: 0;
	}

	.ipsLayout_noBackground .ipsEmbedded_content{
		background: transparent;
	}

	.ipsEmbedded_stats{ border-color: {hextorgb="text_color" opacity="0.08"}; } 

.ipsEmbedded_withImage .ipsEmbedded_image{
	border: 0;
	box-shadow: inset {hextorgb="text_color" opacity="0.3"} 0px 0px 0px 2px;
}



body[data-role="internalEmbed"] {
    background: {theme="area_background_light"};
}
body.unloaded #ipsEmbedLoading {
    border-color: {hextorgb="text_color" opacity="0.15"};
    background: {theme="area_background_light"};
}

@-webkit-keyframes dummy_anim {
    0% { background-color: {hextorgb="text_color" opacity="0.6"}; }
    50% { background-color: {hextorgb="text_color" opacity="0.5"}; }
    99% { background-color: {hextorgb="text_color" opacity="0.6"}; }
}
@-moz-keyframes dummy_anim {
    0% { background-color: {hextorgb="text_color" opacity="0.6"}; }
    50% { background-color: {hextorgb="text_color" opacity="0.5"}; }
    99% { background-color: {hextorgb="text_color" opacity="0.6"}; }
}
@-ms-keyframes dummy_anim {
    0% { background-color: {hextorgb="text_color" opacity="0.6"}; }
    50% { background-color: {hextorgb="text_color" opacity="0.5"}; }
    99% { background-color: {hextorgb="text_color" opacity="0.6"}; }
}
@-o-keyframes dummy_anim {
    0% { background-color: {hextorgb="text_color" opacity="0.6"}; }
    50% { background-color: {hextorgb="text_color" opacity="0.5"}; }
    99% { background-color: {hextorgb="text_color" opacity="0.6"}; }
}
@keyframes dummy_anim {
    0% { background-color: {hextorgb="text_color" opacity="0.6"}; }
    50% { background-color: {hextorgb="text_color" opacity="0.5"}; }
    99% { background-color: {hextorgb="text_color" opacity="0.6"}; }
}



/* Polls */
.cPollVoteBar{
	background: {hextorgb="poll_bar" opacity="0.15"};
	box-shadow: inset {hextorgb="poll_bar" opacity="0.25"} 0px 0px 0px 1px;
}

	/* Text on 0 percentage */
	.cPollVoteBar > span::after{
		color: {theme="poll_bar"};
	}

/* Fix alignment of poll widget icon */
.ipsWidget[data-blockid^="app_forums_poll_"] .ipsWidget_title .ipsType_break{
	display: inline;
}

/* Vertically align buttons in poll widget so they don't wrap poorly */
.ipsWidget_vertical[data-blockid^="app_forums_poll_"] .ipsToolList{
    display: block;
    float: none;
}

	.ipsWidget_vertical[data-blockid^="app_forums_poll_"] .ipsToolList > li{
			float: none !important;
			margin: 0 0 5px 0 !important;
			text-align: center;
	}


/*
	----------------
	- Questions
	----------------
*/

/* Force .ipsBox background */
.focus-answers > .ipsAreaBackground{
	background: transparent;
	padding: 0;
}

/* Question title alignment */
html[dir='ltr'] .cRatingColumn_question{
	padding-left: 0 !important;
}
html[dir='rtl'] .cRatingColumn_question{
	padding-right: 0 !important;
}
.cRatingColumn_question + .ipsColumn_fluid{
	align-self: center;
}

/* Mark as answer */
.cRatingColumn{
	color: {theme="text_color"};
}

.cRatingColumn.ipsAreaBackground{
	background: none;
}
	
	.cAnswerRate:not(.ipsType_positive):not(.ipsType_negative),
	.cAnswerRate:hover:not(.ipsType_positive):not(.ipsType_negative),
	span.cAnswerRate:not(.ipsType_positive):not(.ipsType_negative),
	span.cAnswerRate:hover:not(.ipsType_positive):not(.ipsType_negative){
		color: inherit;
	}
	
	/* Green column */
	.cRatingColumn_on{
		background: #b2d599;
		color: #51873f;
	}


	
	/* Mark as best answer */
	.cBestAnswerIndicator {
		background: #51873f;
		border-radius: 3px;
		margin: 0;
	}
		.cBestAnswerIndicator .fa-check:before{
			content: '\f091';
		}
		.cBestAnswerIndicator_off{
			background: {hextorgb="text_color" opacity="0.5"};
		}
		.cBestAnswerIndicator_off:hover {
			background: {hextorgb="text_color" opacity="0.65"};
		}
		
		

	/* Vote arrows and number */
	.cAnswerRate,
	.cAnswerRating{
		width: 36px;
		line-height: 36px;
		font-size: 18px;
	}
	
	/* Arrow size */
	.cAnswerRate{
		font-size: 30px;
	}
	
	
		/* Align icon in center */
		.cAnswerRate > .fa{
			line-height: inherit;
			vertical-align: top;
		}
			
			.cAnswerRate > .fa:before{
				display: block;
			}
		
		/* Reset defaults */
		html[dir="ltr"] .cAnswerRate,
		html[dir="rtl"] .cAnswerRate{
			left: 0;
			right: 0;
		}

		.cAnswerRating,
		.cAnswerRate.cAnswerRate_up{
			margin: 0;
		}
		
		.cAnswerRating{
			position: relative;
		}
		
		.cAnswerRating:before,
		.cAnswerRate:before{
			content: '';
			position: absolute;
			top: 0; left: 0; right: 0; bottom: 0;
			border-radius: 3px;
			background: currentcolor;
			opacity: 0.15;
		}
		
		.cAnswerRating:before{
			opacity: 0.06;
		}

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

	/* Sticky icons */
	.cPostRating_controls{
		position: -webkit-sticky;
		position: sticky;
		top: 10px;
		padding-bottom: 10px;
	}
	
	.cRatingColumn{
		box-sizing: content-box;
		width: 36px;
	}
	
		.cRatingColumn li:not(:last-of-type){
			margin-bottom: 6px;
		}
		
	/* Hide vote text on desktop */
	.cTopic .cRatingColumn > .ipsList_reset:before{
		display: none;
	}
	
}

@media screen and (max-width: 767px){
	
	/* .ipsPageHeader rating */
	.cRatingColumn_question{
		box-sizing: content-box;
		width: 36px;
		padding: 0 !important;
	}
	
		.cRatingColumn_question li:not(:last-of-type){
			margin-bottom: 6px;
		}
	
	/* Place vote strip inside post */
	.ipsApp .focus-answers .cPostQuestion{
		display: flex;
		flex-direction: column;
	}
	
		.focus-answers .cPostQuestion .cRatingColumn ~ .cAuthorPane_mobile{
			order: -2;
		}
		
		.focus-answers .cPostQuestion .cRatingColumn{
			order: -1;
			border-bottom: 1px dashed {hextorgb="text_color" opacity="0.3"};
		}
		
		.focus-answers .cPostQuestion .cRatingColumn ~ .ipsColumn .ipsComment_meta{
			margin-top: -41px;
		}
	
	/* Vote as answer */
	.cPost .cRatingColumn{
		padding: 5px !important;
		margin-bottom: 0 !important;
	}
	
	/* Icon alignment */
	.cTopic .cRatingColumn > .ipsList_reset{
		display: flex;
		align-items: center;
	}
	
		/* Vote pseudo text */
		.cTopic .cRatingColumn > .ipsList_reset:before{
			font-weight: bold;
			text-transform: uppercase;
			font-size: 1rem;
		}
		
		/* Mobile icon size: important is required to overwrite :hover on the trophy icon */
		.cPost .cRatingColumn .cAnswerRate,
		.cPost .cRatingColumn .cAnswerRating,
		.cPost .cRatingColumn .cBestAnswerIndicator{
			width: 30px;
			line-height: 30px !important;
			height: auto;
		}
		
		/* Arrow size */
		.cPost .cRatingColumn .cAnswerRate{
			font-size: 30px;
		}
		
		/* Count size */
		.cPost .cRatingColumn .cAnswerRating{
			font-size: 14px;

			margin: 0;
			width: auto;
			padding: 0 10px;
		}
		
		/* Bug fix */
		.cPost .cRatingColumn .cAnswerRate.cAnswerRate_up{
			top: auto;
		}
	
		html[dir='ltr'] .cTopic .cRatingColumn > .ipsList_reset li:not(:nth-last-of-type(4)){
			padding-left: 5px;
		}
		
		html[dir='rtl'] .cTopic .cRatingColumn > .ipsList_reset li:not(:nth-last-of-type(4)){
			padding-right: 5px;
		}
		
		html[dir='ltr'] .cTopic .cRatingColumn > .ipsList_reset li:nth-last-of-type(4){
			margin-left: auto;
			order: 1;
		}
		
		html[dir='rtl'] .cTopic .cRatingColumn > .ipsList_reset li:nth-last-of-type(4){
			margin-right: auto;
		}
	
}


/*
	----------------
	- Comments: comments.css
	- Comments should have no border, box-shadow or background (unless moderated or selected)
	----------------
*/


/* This wraps comments and adds the .ipsBox styling */
#comments{
	padding: 15px;
}

	#comments > .ipsPad:not(.ipsBox),
	#comments > .ipsPad:not(.ipsAreaBackground){
		padding: 0;
	}

	/* Correctly align multi-mod without floats */
	#comments > .ipsButtonRow{
		display: flex;
		justify-content: flex-end;
		float: none;
	}

	/* Remove .ipsBox styles from #comments if they're already wrapped in box styles */
	.ipsTabs_panels #comments,
	.ipsBox > #comments{
		border-width: 0;
		box-shadow: none;
		background: none;
	}

	.ipsTabs_panels #comments{
    	padding: 0;
    }

.ipsComment{
	background-color: {theme="area_background_reset"};
}

	/* Remove background from comments if they're wrapped in a box already */
	.ipsBox .ipsComment{
		background-color: transparent;
	}

/* Selected */
.ipsComment:not(.cPost).ipsComment_selected{
	box-shadow: none;
	background: {theme="selected"} !important;
	border: 0;
}

.ipsComment.ipsComment_ignored{
	color: {hextorgb="text_color" opacity="0.4"};
}


	/* Reduce space between comments */
	.ipsComment:not(.cPost){
		margin: 0;
	}
	
	.ipsComment:not(.cPost) .ipsComment_header + .ipsPad{
		padding-bottom: 0;
	}


/* Comment headers */
.ipsApp .ipsComment .ipsComment_header{
	background: {theme="secondary_title"};
	color: {theme="secondary_title_font"};
	border: 0;
	box-shadow: inset {hextorgb="text_color" opacity="0.1"} 0px 0px 0px 1px, rgba(0,0,0,0.1) 0px 1px 4px;
	border-radius: 3px;
	/* Clear floated avatar */
	overflow: hidden;
}
	
	/* Make selected comment headers use normal text colour */
	.ipsApp .ipsComment.ipsComment_selected .ipsComment_header{
		background-color: {theme="selected"} !important;
		color: {theme="text_dark"};
	}
	
	.ipsComment_header a{
		color: inherit;
	}

	.ipsComment_header .ipsComment_author{
		margin: 0;
	}
		
	.ipsComment_header .ipsType_light{
		color: inherit;
		opacity: 0.7;
	}

/* Highlighted comments: Remove background and shadow since the header is styled */
.ipsComment_highlighted:not(.ipsBox_transparent):not(.ipsModerated):not(.ipsComment_selected):not(.ipsComment_popular):not(.cPost),
.ipsComment_highlighted.ipsBox:not(.ipsBox_transparent):not(.ipsModerated):not(.ipsComment_selected):not(.ipsComment_popular):not(.cPost),
.ipsComment_highlighted:not(.ipsBox_transparent):not(.ipsModerated):not(.ipsComment_selected):not(.ipsComment_popular):not(.cPost) .ipsAreaBackground_reset{
	background-color: transparent;
	border: 0;
	box-shadow: none;
}

/* Moderated comments */
.ipsComment.ipsModerated:not(.cPost){
	background: transparent;
}

	.ipsApp .ipsComment.ipsModerated .ipsComment_header{
		background-color: {theme="moderated_text"};
		color: {theme="moderated"};
	}

		.ipsModerated .ipsComment_header * {
		    color: {theme="moderated"};
		}


/* Popular post ribbon */
.ipsComment.ipsComment_popular .ipsComment_popularFlag{
	color: {theme="featured"};
	background: currentColor;
}

	.ipsComment.ipsComment_popular .ipsComment_popularFlag:after{
		border-top-color: currentColor;
	}

	.ipsComment.ipsComment_popular .ipsComment_popularFlag .fa{
		color: #fff;
	}


/* New posts bar */
.ipsCommentUnreadSeperator{
	color: {theme="normal_button_font"};
	background: {theme="normal_button"};
	
	height: 0.6em;
	margin: 1.4em 0;
	border: 0;
	border-radius: 2px;
	text-align: center;
	font-weight: bold;
	font-size: 10px;
	position: relative;
}

	.ipsCommentUnreadSeperator:before{
		padding: 0 1.6em;
		line-height: 2.4em;
		border-radius: inherit;
		background: inherit;
		white-space: nowrap;
		position: absolute;
		left: 50%;
		top: 50%;
		{prefix="transform" value="translate(-50%,-50%)"}
	}


/* Popular comment headers */
.ipsComment:not( .ipsModerated ):not( .ipsComment_selected ).ipsComment_popular .ipsComment_header {
	border: 0;
}

.ipsModerated .ipsAreaBackground_light,
.ipsModerated .ipsAreaBackground_reset{
	background: transparent;
}


/* Highlighted content */
.ipsComment_highlighted{
	--ipsComment_highlighted--background: {theme="post_highlight_border"};
	--ipsComment_highlighted--border: {theme="post_highlight_border"};
	--ipsComment_highlighted--shadow: 0px 2px 10px {hextorgb="post_highlight_border" opacity="0.4"};
	--ipsComment_highlighted--color: {theme="post_highlight"};
}

/* Post header background */
#ipsfocus .cPost.ipsComment_highlighted:not(.ipsComment_selected):not(.ipsModerated):before,
#ipsfocus .cPost.ipsComment_highlighted.ipsComment:not(.ipsComment_selected):not(.ipsModerated) .cAuthorPane_mobile,
#ipsfocus .ipsComment_highlighted.ipsComment:not(.ipsComment_selected):not(.ipsModerated) .ipsComment_header{
	background-color: {theme="post_highlight_border"};
	background-color: var(--ipsComment_highlighted--background);
}

	/* Post header text */
	#ipsfocus .cPost.ipsComment_highlighted:not(.ipsComment_selected):not(.ipsModerated) .cAuthorPane .cAuthorPane_author,
	#ipsfocus .cPost.ipsComment_highlighted:not(.ipsComment_selected):not(.ipsModerated) .ipsComment_meta,
	#ipsfocus .cPost.ipsComment_highlighted:not(.ipsComment_selected):not(.ipsModerated) .cAuthorPane_mobile,
	#ipsfocus .ipsComment_highlighted.ipsComment:not(.ipsComment_selected):not(.ipsModerated) .ipsComment_header{
		color: {theme="post_highlight"};
		color: var(--ipsComment_highlighted--color);
	}

	/* Post border */
	.ipsComment_highlighted:not(.ipsBox_transparent):not(.ipsModerated):not(.ipsComment_selected):not(.ipsComment_popular){
		border-color: var(--ipsComment_highlighted--border);
		box-shadow: var(--ipsComment_highlighted--shadow);
	}


/* Post controls */
.ipsComment:not(.cPost) .ipsItemControls {
	padding: 10px 0;
}

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

	.ipsComment:not(.cPost) .ipsItemControls {
		margin-left: -15px;
		margin-right: -15px;
		width: auto;
	}

}	

/*
	----------------
	- Editor
	----------------
*/

.ipsApp textarea.cke_source,
html .cke_wysiwyg_frame, html .cke_wysiwyg_div{
	background-color: {theme="area_background_reset"};
}

/* Bar background */
.cke .cke_top,
.ipsComposeArea div[data-ipseditor-toollist] .ipsAreaBackground_light{
	background: rgba(255,255,255,0.4);
}

.cke .cke_top{
	border-bottom: 1px solid {hextorgb="focus_editor_color" opacity="0.25"};
}

div[data-ipseditor]{
	border: 1px solid {hextorgb="focus_editor_color" opacity="0.25"};
}



/* Editor border color. Border is required for inherited arrow */
.ipsComposeArea_editor,
.ipsComposeArea_unavailable .ipsComposeArea_editor{
	background: {theme="focus_editor"};
	border-color: {theme="focus_editor"};
	color: {theme="focus_editor_color"};
}
.ipsComposeArea_withPhoto .ipsComposeArea_editor:before{ border-width: 12px; top: 18px; }
html[dir="ltr"] .ipsComposeArea_withPhoto .ipsComposeArea_editor:before,
html[dir="ltr"] .ipsComposeArea_unavailable.ipsComposeArea_withPhoto .ipsComposeArea_editor:before{ border-right-color: inherit; }
html[dir="rtl"] .ipsComposeArea_withPhoto .ipsComposeArea_editor:before,
html[dir="rtl"] .ipsComposeArea_unavailable.ipsComposeArea_withPhoto .ipsComposeArea_editor:before{ border-left-color: inherit; }



/* Minor fixes */
.ipsApp .ipsComposeArea_editor{
	padding: 0;
}

.ipsApp .ipsComposeArea_withPhoto .ipsComposeArea_editor{
	padding: 4px;
}

.ipsApp .ipsComposeArea_formControl label:not(.ipsField_unlimited){
	font-size: 1.3rem;
}

.ipsComposeArea_editor label[for="check_auto_follow_toggle"]{
	line-height: 22px;
	display: inline-block;
}

/* Remove defaults */
.ipsApp .cke_inner{
	background: transparent;
}
.ipsApp .cke_chrome{
	box-shadow: none;
}



/* Editor text color */
.ipsApp .cke_contents,
.ipsComposeArea_dummy{
	color: {theme="text_color"};
}

.ipsComposeArea_dummy{
	background-color: {theme="area_background_reset"};
}



.ipsApp .cke_reset_all, .ipsApp .cke_reset_all *, .ipsApp .cke_reset_all a, .ipsApp .cke_reset_all textarea, .ipsComposeArea_attachments a{
	color: inherit;
}

.ipsApp a.cke_button_off:hover,
.ipsApp a.cke_button_off:focus,
.ipsApp a.cke_button_off:active,
.ipsApp a.cke_button_disabled:hover,
.ipsApp a.cke_button_disabled:focus,
.ipsApp a.cke_button_disabled:active{
	background: {hextorgb="focus_editor_color" opacity="0.1"};
}

.ipsApp .cke_toolbar_separator,
.ipsApp a.cke_button_on{
	background: {hextorgb="focus_editor_color" opacity="0.18"};
}

.ipsApp a.cke_combo_button{
	border-color: {hextorgb="focus_editor_color" opacity="0.25"};
	background: {hextorgb="focus_editor_color" opacity="0.08"};
	box-shadow: none;
}

	.ipsApp .cke_combo_off a.cke_combo_button:hover,
	.ipsApp .cke_combo_off a.cke_combo_button:focus{
		background: {hextorgb="focus_editor_color" opacity="0.1"};
	}
	
	.ipsApp .cke_combo_off a.cke_combo_button:active,
	.ipsApp .cke_combo_on a.cke_combo_button {
	    border-color: {hextorgb="focus_editor_color" opacity="0.4"};
	    box-shadow: 0 1px 5px rgba(0,0,0,0.1) inset;
	    background: {hextorgb="focus_editor_color" opacity="0.1"};
	}
	
	.ipsApp .cke_combo_on a.cke_combo_button:hover,
	.ipsApp .cke_combo_on a.cke_combo_button:focus,
	.ipsApp .cke_combo_on a.cke_combo_button:active{
		box-shadow: 0 1px 5px rgba(0,0,0,0.1) inset;
	}

.ipsApp .cke_button_arrow{ margin-top: 18px; }

.ipsApp .cke_button_label,
.ipsApp .cke_combo_text{
	text-shadow: none;
}

/* Dropdown arrow */
.ipsApp .cke_combo_arrow,
.ipsApp .cke_button_arrow{
	border-top-color: currentColor;
}



/* Editor icons */
.cke_button_icon:before{
	width: 16px; height: 16px; line-height: 16px;
	font-size: 14px;
	text-align: center;
	display: inline-block;
	font-family: 'FontAwesome';
	font-style: normal;
	font-weight: normal;
	vertical-align: top;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transform: translate(0,0);
}

.ipsApp .cke_toolbox .cke_toolbar .cke_button__bgcolor_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__bold_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__bulletedlist_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__copy_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__cut_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__indent_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipscode_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipsemoticon_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipslink_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipspage_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipspreview_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipsquote_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipsspoiler_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__italic_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__justifyblock_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__justifycenter_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__justifyleft_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__justifyright_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__numberedlist_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__outdent_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__paste_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__redo_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__removeformat_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__source_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__strike_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__subscript_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__superscript_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__textcolor_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__underline_icon,
.ipsApp .cke_toolbox .cke_toolbar .cke_button__undo_icon{
	background: none !important;
}

.ipsApp .cke_toolbox .cke_toolbar .cke_button__bgcolor_icon:before{ content: '\f15c'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__bold_icon:before{ content: '\f032'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__bulletedlist_icon:before{ content: '\f0ca'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__copy_icon:before{ content: '\f0c5'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__cut_icon:before{ content: '\f0c4'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__indent_icon:before{ content: '\f03c'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipscode_icon:before{ content: '\f121'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipsemoticon_icon:before{ content: '\f118'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipslink_icon:before{ content: '\f0c1'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipspage_icon:before{ content: '\f0f6'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipspreview_icon:before{ content: '\f0f6'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipsquote_icon:before{ content: '\f10e'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__ipsspoiler_icon:before{ content: '\f06e'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__italic_icon:before{ content: '\f033'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__justifyblock_icon:before{ content: '\f039'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__justifycenter_icon:before{ content: '\f037'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__justifyleft_icon:before{ content: '\f036'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__justifyright_icon:before{ content: '\f038'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__numberedlist_icon:before{ content: '\f0cb'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__outdent_icon:before{ content: '\f03b'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__paste_icon:before{ content: '\f0ea'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__redo_icon:before{ content: '\f01e'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__removeformat_icon:before{ content: '\f12d'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__source_icon:before{ content: '\f1c9'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__strike_icon:before{ content: '\f0cc'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__subscript_icon:before{ content: '\f12c'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__superscript_icon:before{ content: '\f12b'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__textcolor_icon:before{ content: '\f1fc'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__underline_icon:before{ content: '\f0cd'; }
.ipsApp .cke_toolbox .cke_toolbar .cke_button__undo_icon:before{ content: '\f0e2'; }


/* Insert other media button */
.ipsApp .ipsComposeArea_dropZone .ipsButton_light{
	background: #000;
	color: #fff;
	opacity: 0.6;
}

.ipsApp .ipsComposeArea_dropZone .ipsButton_light:hover,
.ipsAttach_selection:hover{ opacity: 1; }

	.ipsApp .ipsComposeArea_dropZone .ipsButton_light:after{
		display: none;
	}



/* Drag drop attachments */
.ipsAttachment_dropZone.ipsDragging{
	background: transparent;
	border-color: {theme="text_color"};
}

.ipsComposeArea_dropZone.ipsDragging{
	background: transparent;
	border-color: {theme="focus_editor_color"};
}

/* Inset into post */
.ipsAttach_selection{
	color: #fff !important;
}



/* Submit row */
.ipsComposeArea [data-ipsEditor] + [data-ipsEditor-toolList]{
	padding-bottom: 7px;
}

/* Pasted content link */
.ipsComposeArea_editorPaste a{
	color: inherit;
}

	
/*
	----------------
	- Inputs
	----------------
*/

/* Bug fix: Force colour instead of browser default */
input,
textarea{
	color: {theme="text_color"};
}

.ipsApp .ipsField_autocomplete, .ipsApp textarea, .ipsApp input[type="text"], .ipsApp input[type="password"],
.ipsApp input[type="datetime"], .ipsApp input[type="datetime-local"], .ipsApp input[type="date"],
.ipsApp input[type="month"], .ipsApp input[type="time"], .ipsApp input[type="week"], 
.ipsApp input[type="number"], .ipsApp input[type="email"], .ipsApp input[type="url"],
.ipsApp input[type="search"], .ipsApp input[type="tel"],
.ipsApp .ipsToolbox input, .ipsApp .ipsToolbox select, .ipsApp .ipsToolbox textarea {
	background-color: {theme="area_background_reset"};
	background-image: linear-gradient(to bottom, {hextorgb="text_color" opacity="0.05"} 0%, {hextorgb="text_color" opacity="0.05"} 100%);
	border-color: {hextorgb="text_color" opacity="0.35"};
	box-shadow: inset {hextorgb="text_color" opacity="0.12"} 0px 1px 3px;
}
.CodeMirror,
html[dir="rtl"] .ipsApp .ipsField_autocomplete,
html[dir="rtl"] .ipsApp textarea,
html[dir="rtl"] .ipsApp input[type="text"],
html[dir="rtl"] .ipsApp input[type="password"],
html[dir="rtl"] .ipsApp input[type="datetime"],
html[dir="rtl"] .ipsApp input[type="datetime-local"],
html[dir="rtl"] .ipsApp input[type="date"],
html[dir="rtl"] .ipsApp input[type="month"],
html[dir="rtl"] .ipsApp input[type="time"],
html[dir="rtl"] .ipsApp input[type="week"], 
html[dir="rtl"] .ipsApp input[type="number"],
html[dir="rtl"] .ipsApp input[type="email"],
html[dir="rtl"] .ipsApp input[type="url"],
html[dir="rtl"] .ipsApp input[type="search"],
html[dir="rtl"] .ipsApp input[type="tel"] {
	border-color: {hextorgb="text_color" opacity="0.35"};
}

.ipsApp textarea:focus, .ipsApp input[type="text"]:focus, .ipsApp input[type="password"]:focus,
.ipsApp input[type="datetime"]:focus, .ipsApp input[type="datetime-local"]:focus,
.ipsApp input[type="date"]:focus, .ipsApp input[type="month"]:focus, .ipsApp input[type="time"]:focus,
.ipsApp input[type="week"]:focus, .ipsApp input[type="number"]:focus, .ipsApp input[type="email"]:focus,
.ipsApp input[type="url"]:focus, .ipsApp input[type="search"]:focus, .ipsApp input[type="tel"]:focus,
.ipsApp input[type="color"]:focus {
	border-color: {hextorgb="text_color" opacity="0.45"};
	box-shadow: inset {hextorgb="text_color" opacity="0.12"} 0px 1px 3px;
}

.ipsApp textarea[disabled], .ipsApp input[type="text"][disabled], .ipsApp input[type="password"][disabled],
.ipsApp input[type="datetime"][disabled], .ipsApp input[type="datetime-local"][disabled],
.ipsApp input[type="date"][disabled], .ipsApp input[type="month"][disabled], .ipsApp input[type="time"][disabled],
.ipsApp input[type="week"][disabled], .ipsApp input[type="number"][disabled], .ipsApp input[type="email"][disabled],
.ipsApp input[type="url"][disabled], .ipsApp input[type="search"][disabled], .ipsApp input[type="tel"][disabled],
.ipsApp input[type="color"][disabled] {
	background-color: {theme="area_background_reset"};
}



/*
	----------------
	- Select menus
	----------------
*/

.ipsSelectTree{
	background-color: {theme="area_background_reset"};
	background-image: linear-gradient(to bottom, {hextorgb="text_color" opacity="0.05"} 0%, {hextorgb="text_color" opacity="0.05"} 100%);
	border-color: {hextorgb="text_color" opacity="0.35"};
	box-shadow: inset {hextorgb="text_color" opacity="0.12"} 0px 1px 3px;
	color: {theme="text_color"};
}

	.ipsSelectTree_placeholder{
		color: {hextorgb="text_color" opacity="0.5"};
	}
	
	.ipsSelectTree_expand{
		color: inherit;
	}
	
	.ipsSelectTree_active,
	.ipsSelectTree_nodes{
		border-color: {hextorgb="text_color" opacity="0.4"};
	}
	
	.ipsSelectTree_nodes{
		background-color: {theme="area_background_reset"};
		background-image: linear-gradient(to bottom, {hextorgb="text_color" opacity="0.05"} 0%, {hextorgb="text_color" opacity="0.1"} 100%);
	}
	
	.ipsSelectTree_nodes [data-role="nodeList"]{
		background: {theme="area_background_reset"};
		border-color: {hextorgb="text_color" opacity="0.2"};
	}
	
		.ipsSelectTree_nodes [data-role="nodeList"] li,
		html[dir="ltr"] .ipsSelectTree_nodes [data-role="nodeList"] li [data-role="childWrapper"],
		html[dir="rtl"] .ipsSelectTree_nodes [data-role="nodeList"] li [data-role="childWrapper"],
		.ipsSelectTree_nodes [data-role="nodeList"] li [data-role="childWrapper"]{
			border-color: {hextorgb="text_color" opacity="0.1"};
		}
			
			/* Hover */
			.ipsSelectTree_nodes [data-role="nodeList"] li .ipsSelectTree_item:hover:not(.ipsSelectTree_itemDisabled):not(.ipsSelectTree_selected){
				background: {theme="area_background_reset"};
				background-image: linear-gradient(to bottom, {hextorgb="text_color" opacity="0.08"} 0%, {hextorgb="text_color" opacity="0.08"} 100%);
			}
			
			/* Active */
			.ipsSelectTree_selected{
				background: {theme="area_background_dark"};
				color: #fff;
			}
				/* Active tick */
				.ipsSelectTree_selected::after {
					color: inherit;
				}

.ipsApp select{
	background-color: {theme="area_background_reset"};
	border-color: {hextorgb="text_color" opacity="0.35"};
	color: {theme="text_color"};
}
			
	.ipsApp select:not([multiple]){
		background-image: url( "{resource="select_dropdown.png" app="core" location="global"}" ), linear-gradient(to bottom, {hextorgb="text_color" opacity="0.05"} 0%, {hextorgb="text_color" opacity="0.1"} 100%);
	}
	
	html[dir="rtl"] .ipsApp select:not( [multiple] ) {
		background-image: url( "{resource="select_dropdown_rtl.png" app="core" location="global"}" ), linear-gradient(to bottom, {hextorgb="text_color" opacity="0.05"} 0%, {hextorgb="text_color" opacity="0.1"} 100%);
	}

	.ui-datepicker-title select, .ui-datepicker-title option{
		color: {theme="text_color"};
	}



/*
	----------------
	- Checkboxes
	----------------
*/

	.ipsCustomInput > span {
		border-color: {theme="text_color"};
		background: {theme="area_background_reset"};
	}

	/* Hover */
	.ipsCustomInput input:hover:not( :disabled ) + span {
		border-color: {theme="link"};
	}

		.ipsCustomInput input:not( :checked ):disabled + span {
			background: {theme="area_background_reset"};
		}

		.ipsCustomInput input:checked:disabled + span {
			background: {theme="area_background_reset"};
			border-color: {theme="text_color"};
		}

			.ipsCustomInput input[type="checkbox"]:checked:disabled + span:after {
				color: {theme="text_color"};
			}

			.ipsCustomInput input[type="radio"]:checked:disabled + span:after {
				background-color: {theme="text_color"};
			}

	/* Active styles */
	.ipsCustomInput input:active:not( :checked ):not( :disabled ) + span,
	.ipsCustomInput input:active:checked:not( :disabled ) + span {
		background: {theme="area_background_reset"};
		background-image: linear-gradient(to bottom, {hextorgb="link" opacity="0.2"} 0%, {hextorgb="link" opacity="0.2"} 100%);
	}

	/* Checked styles */
	.ipsCustomInput input:checked + span {
		border-color: {theme="link"};
	}

	.ipsCustomInput input[type="checkbox"]:checked + span:after {
		color: {theme="link"};
	}

	.ipsCustomInput input[type="radio"]:checked + span:after {
		background: {theme="link"};
	}
	
	.ipsApp .ipsToggle:focus,
	.ipsApp .ipsCustomInput input:focus + span {
		border-color: {theme="link"};
		box-shadow: 0px 1px 5px rgba(0,0,0,0.3);
	}
	
	.ipsToggle,
	.ipsApp .ipsToggle:focus{
		border-color: {hextorgb="text_color" opacity="0.25"};
	}



/*
	----------------
	- Wizard
	----------------
*/

.ipsWizard:before{
	content: '';
	display: table;
}

	.ipsWizard .ipsStepBar{
		margin: 10px 10px 0 10px;
	}
	
	.ipsWizard .ipsAreaBackground{
		background: {theme="area_background_light"};
	}
	
	.ipsWizard .ipsAreaBackground:not(.ipsToolList){
		background: transparent;
	}

.ipsStepBar{
	background: {theme="area_background"};
	border-radius: 3px;
	position: relative;
	width: auto;
	display: block;
}

	.ipsStepBar:before{
		content: '';
		position: absolute;
		top: 0; left: 0; right: 0; bottom: 0;
		border: 1px solid {hextorgb="text_color" opacity="0.2"};
		border-radius: inherit;
		pointer-events: none;
		z-index: 2;
	}

/* Remove wizard image */
.ipsStepBar > .ipsStep > a,
.ipsStepBar > .ipsStep > span,
.ipsStepBar > .ipsStep + .ipsStep.ipsStep_active:after {
	background-image: none !important;
}

/* css Steps */
.ipsStepBar > .ipsStep:before,
.ipsStepBar > .ipsStep:after,
.ipsStepBar > .ipsStep + .ipsStep.ipsStep_active::after{
	content: '';
	display: block;
	height: 28px;
	width: auto;
	position: absolute;
	top: 0;
	left: 0 !important;
	right: 0 !important;
	border: 1px solid {hextorgb="text_color" opacity="0.4"};
	border-width: 0 1px 0 0;
	transform-origin: 0% 50%;
	transform: skewX(30deg);
	pointer-events: none;
}
	
	/* Bottom half */
	.ipsStepBar > .ipsStep:after,
	.ipsStepBar > .ipsStep + .ipsStep.ipsStep_active::after{
		transform: skewX(-30deg);
		top: auto;
		bottom: 0;
	}
	
	/* If first item is active, extend its width */
	.ipsStepBar > .ipsStep:first-child:before,
	.ipsStepBar > .ipsStep:first-child:after{
		width: calc(100% + 40px);
	}
	
		html[dir='ltr'] .ipsStepBar > .ipsStep:first-child:before,
		html[dir='ltr'] .ipsStepBar > .ipsStep:first-child:after{
			left: auto !important;
		}
		
		html[dir='rtl'] .ipsStepBar > .ipsStep:first-child:before,
		html[dir='rtl'] .ipsStepBar > .ipsStep:first-child:after{
			right: auto !important;
		}

	/* RTL */
	html[dir='rtl'] .ipsStepBar > .ipsStep:before,
	html[dir='rtl'] .ipsStepBar > .ipsStep:after,
	html[dir='rtl'] .ipsStepBar > .ipsStep + .ipsStep.ipsStep_active::after{
		border-width: 0 0 0 1px;
		transform: skewX(-30deg);
	}
	
		html[dir='rtl'] .ipsStepBar > .ipsStep:after,
		html[dir='rtl'] .ipsStepBar > .ipsStep + .ipsStep.ipsStep_active::after{
			transform: skewX(30deg);
		}
	
	/* Active step */
	html[dir='ltr'] .ipsStepBar > .ipsStep.ipsStep_active{
		margin-left: -1px;
	}
	html[dir='rtl'] .ipsStepBar > .ipsStep.ipsStep_active{
		margin-right: -1px;
	}
	
	.ipsStepBar > .ipsStep.ipsStep_active::before,
	.ipsStepBar > .ipsStep.ipsStep_active::after,
	.ipsStepBar > .ipsStep + .ipsStep.ipsStep_active::after{
		background: {theme="area_background_dark"};
		border-width: 0 1px;
	}



.ipsStepBar > .ipsStep > a,
.ipsStepBar > .ipsStep > span{
	background-color: transparent;
	height: 56px;
	min-width: 0;
	padding: 11px 24px !important;
	z-index: 1;
}

.ipsStepBar > .ipsStep.ipsStep_active > a,
.ipsStepBar > .ipsStep.ipsStep_active > span {
	color: #fff;
}



/*
	----------------
	- Minor Elements
	----------------
*/

/* Social sign-in buttons */
.ipsSocial{
	padding: 0 !important;
}

/* Add blur behind modals */
.ipsModal{
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}

/* Guest block at the bottom of topics */
.cGuestTeaser{ padding-left: 0; padding-right: 0; }

@media screen and (max-width: 979px) {
	.cGuestTeaser .ipsGrid_span6{
		align-items: center;
	}
}

/* Member cards: Viewing members of a club */
.ipsMemberCard {
	background: {theme="area_background_light"};
	border-color: {hextorgb="text_color" opacity="0.3"};
}

/* Avatars */
.ipsUserPhoto {
	background-color: transparent;
	{{if !theme.rounded_photos}}
	border-radius: 0;
	{{endif}}
}

a.ipsUserPhoto{
	color: inherit;
}

	.ipsUserPhoto img{
		border-radius: inherit;
	}

	.ipsUserPhoto:before,
	.ipsUserPhoto:after {
		content: "";
	    display: block;
	    box-sizing: border-box;
	    pointer-events: none;
	    position: absolute;
		left: 0px;
		top: 0px;
		right: 0px;
		bottom: 0px;
		width: auto; height: auto;
		border-radius: inherit;
	}
	
	.ipsUserPhoto:before{
		box-shadow: rgba(0,0,0,0.1) 0px 3px 8px;
	}
	
	.ipsUserPhoto:after{
		border: 1px solid currentColor;
		opacity: 0.3;
	}

img[src*="default_photo"]{
	background: {theme="button_bar"};
	background-image: linear-gradient(to bottom, {hextorgb="pagination_active" opacity="0.12"} 0%, {hextorgb="pagination_active" opacity="0.12"} 100%);
}

/* Thumbnail background */
.ipsNoThumb,
.ipsImageAttach_thumb{
	background-color: {theme="area_background_dark"};
}

.ipsImageAttach_thumb{
	border-color: {hextorgb="text_color" opacity="0.12"};
}

/* Photo thumbs */
.ipsThumb{
	border: 0;
	box-shadow: inset {hextorgb="text_color" opacity="0.25"} 0px 0px 0px 1px;
}

/* Attached images in posts */
.ipsImage_thumbnailed{
	border-color: {hextorgb="text_color" opacity="0.3"};
}

	/* Default bug fix: Prevent large images on mobiles from creating horizontal scrollbar on mobiles */
	.cPost div[data-role="commentContent"] img.ipsImage_thumbnailed{
		max-width: 100%;
	}



/* Sticky */
.ipsSticky{
	background: {theme="area_background_light"};
}

	.ipsSticky.ipsSticky_top,
	.ipsSticky.ipsSticky_bottom{
		border-color: {hextorgb="text_color" opacity="0.1"};
	}



hr.ipsHr{
	border-color: {hextorgb="text_color" opacity="0.08"};
}




/* Scrollbars */
.ipsScrollbar::-webkit-scrollbar-thumb { 
	background-color: {hextorgb="text_color" opacity="0.4"};
}
	.ipsScrollbar.ipsScrollbar_light::-webkit-scrollbar-thumb { 
		background-color: {hextorgb="area_background_reset" opacity="0.4"};
	}

.ipsScrollbar::-webkit-scrollbar-track-piece { 
	background-color: {hextorgb="text_color" opacity="0.08"};
}

	.ipsScrollbar.ipsScrollbar_light::-webkit-scrollbar-track-piece { 
		background-color: {hextorgb="area_background_reset" opacity="0.08"};
	}


/* Tooltips */
.ipsTooltip {
	background: rgba(10,10,10,0.8);
	border-color: rgba(10,10,10,0.8);
}
	.ipsTooltip.ipsTooltip_top:after { border-top-color: inherit; }
	.ipsTooltip.ipsTooltip_bottom:after { border-bottom-color: inherit; }



/* Create new topic lock time */
.cCreateTopic_date i{
	top: 7px;
}

/* "Cancel" text on new topic page */
.ipsTabs_content_form + .ipsAreaBackground{ color: {theme="primary_button"}; }




/* Tags */
.cToken,
.cToken.cToken_selected,
.ipsTags .ipsTag,
.ipsTags .ipsTag:hover {
	background: {theme="tag"};
	border-color: {theme="tag"};
}

.ipsTags .ipsTag:hover{
	opacity: 0.8;
}

	html[dir="ltr"] .ipsTags .ipsTag::before,
	html[dir="ltr"] .ipsTags .ipsTag:hover::before {
		border-bottom-color: inherit;
		border-left-color: inherit;
	}
	
	html[dir="rtl"] .ipsTags .ipsTag::before,
	html[dir="rtl"] .ipsTags .ipsTag:hover::before {
		border-top-color: inherit;
		border-right-color: inherit;
	}
	
	.ipsTags .ipsTag:after, .ipsTag_prefix:after{ background: {theme="area_background_reset"}; }
	
	/* Remove tag */
	html[dir="ltr"] .ipsTag_remove{ right: 3px; }
	html[dir="rtl"] .ipsTag_remove{ left: 3px; }
	.ipsTag_remove{ background: rgba(0,0,0,0.1); }
	.ipsTag_remove:hover{ background: rgba(0,0,0,0.2); }

/* Autocomplete tokens */
.cToken.cToken_selected{
	box-shadow: inset rgba(0,0,0,0.3) 0px 100px 0px;
}



/*
	----------------
	- Tabs
	----------------
*/

/* Large tabs */
.ipsTabs{
	color: #fff;
}

	/* Tab colours */
	.ipsTabs_item,
	.ipsTabs_item .ipsType_light,
	.ipsTabs_item.ipsTabs_itemDisabled,
	.ipsTabs_item:hover:not(.ipsTabs_activeItem){
		color: inherit;
	}
	
		.ipsTabs_item .ipsType_light{
			opacity: 0.6;
		}

	
	.ipsTabs_item{
		border-radius: 2px 2px 0 0;
		font-weight: bold;
		/* background: rgba(255,255,255,0.1); */
	}
	
	.ipsTabs_item:hover:not(.ipsTabs_activeItem){
		/* background: rgba(255,255,255,0.2); */
	}
	
	
	/* Active */
	.ipsTabs_activeItem{
		background-color: {theme="area_background_reset"};
	}
	
		.ipsTabs_activeItem,
		.ipsTabs_activeItem:hover{
			color: {theme="text_color"};
		}
	
	
	.ipsTabs.ipsTabs_contained{
		border-color: {hextorgb="text_color" opacity="0.2"};
		padding: 3px;
		padding-bottom: 0;
	}

	.ipsTabs_panels.ipsTabs_contained {
		border-color: {hextorgb="text_color" opacity="0.2"};
	}
	
	.ipsTabs_panels{
		background-color: {theme="area_background_reset"};
	}
	
		/* Make background transparent since there's already one on .ipsTabs_panels */
		.ipsTabs_panel{
			background-color: transparent;
		}	
	


/* Mini tabs */
.ipsWidget .ipsTabs_small{
	color: {hextorgb="text_color" opacity="0.7"};
}

.ipsWidget .ipsTabs_small .ipsTabs_item:not( .ipsTabs_activeItem ) {
	color: inherit;
	border-bottom: 2px solid {hextorgb="text_color" opacity="0.1"};
	background: none;
}

	/* Hover */
	.ipsWidget .ipsTabs_small .ipsTabs_item:not( .ipsTabs_activeItem ):hover{
		color: {theme="text_color"};
		border-color: {hextorgb="text_color" opacity="0.2"};
	}

	/* Active */
	.ipsWidget .ipsTabs_small .ipsTabs_activeItem{
		color: {theme="link"};
		border-bottom: 2px solid {theme="link"};
		background: none;
	}



@media screen and (max-width:767px){

	.ipsTabs{
		color: {theme="text_color"};
	}

	a.ipsTabs_activeItem{
		font-size: 1.3rem;
		text-decoration: underline;
	}
	.ipsTabs_item:not(.ipsTabs_activeItem){
		color: inherit !important;
	}
	
	.ipsTabs {
		border-top: 0;
	}
	
	.ipsTabs [data-action="expandTabs"],
	.ipsTabs.ipsTabs_small [data-action="expandTabs"] {
		color: inherit;
		/* Place arrow beneath mobile nav menu */
		z-index: 1;
		/* Fix alignment */
		margin: 0;
		top: 0;
		line-height: 38px;
		padding-top: 10px;
	}
	
	.ipsTabs.ipsTabs_small [data-action="expandTabs"]{
		padding-top: 0;
		line-height: 32px;
	}
	
		.ipsTabs.ipsTabs_small [data-action="expandTabs"] .fa{
			line-height: inherit;
			vertical-align: top;
		}
	
	.ipsTabs:target,
	.ipsTabs.ipsTabs_showMenu{
		height: 48px;
		/* Other elements with a z-index of 1000 were showing on top */
		z-index: 1010;
	}
	
	.ipsTabs.ipsTabs_small:target,
	.ipsTabs.ipsTabs_small.ipsTabs_showMenu{
		height: 32px;
	}
	
		.ipsTabs:target [role="tablist"],
		.ipsTabs.ipsTabs_showMenu [role="tablist"] {
			background: {theme="area_background_reset"};
			
			/* Fix alignment */
			left: 10px;
			right: 10px;
			top: 10px;
		}

}



/*
	----------------
	- Popup Menus
	----------------
*/

.ipsAlert{
	background: {theme="area_background_reset"};
}

.ipsMenu,
.ipsHovercard,
.ipsHovercard_loading {
	background: {theme="area_background_reset"};
	border-color: {theme="area_background_reset"};
	border-width: 0;
}

.ipsMenu,
.ipsHovercard{
	box-shadow: {hextorgb="text_color" opacity="0.25"} 0px 0px 0px 1px, 0px 7px 10px rgba(0,0,0,0.1), 0px 5px 20px rgba(0,0,0,0.1);
}

	.ipsMenu,
	.ipsSideMenu_title,
	.ipsMenu_title,
	.ipsMenu_item > a,
	.ipsMenu_item > span,
	.ipsMenu_item > a:not(.ipsMenu_itemInline), .ipsMenu_item > span:not(.ipsMenu_itemInline){
		color: {theme="text_color"};
	}
	.ipsMenu_itemDisabled > a,
	.ipsMenu_itemDisabled > span{
		color: {hextorgb="text_color" opacity="0.6"};
	}
	.ipsMenu_title{
		background: {hextorgb="text_color" opacity="0.08"};
		font-weight: bold;
	}
	/* Hover */
	ul:not(.ipsMenu_keyNav) .ipsMenu_item:not(.ipsMenu_itemClicked):not(.ipsMenu_itemDisabled) a:not(.ipsMenu_itemInline):hover, .ipsMenu_item[data-selected] a, .ipsMenu_item[data-selected] span, .ipsMenu_item.ipsMenu_hover{
		background-color: {hextorgb="text_color" opacity="0.05"};
	}
	
	.ipsMenu_sep{
		border-color: {hextorgb="text_color" opacity="0.1"};
	}
	
	.ipsMenu.ipsMenu_topLeft:before,
	.ipsMenu.ipsMenu_topRight:before,
	.ipsMenu.ipsMenu_topCenter:before,
	.ipsHovercard_stemTop .ipsHovercard_stem:before,
	.ipsHovercard_loading:after{
		border-top-color: {hextorgb="text_color" opacity="0.25"};
	}
	.ipsMenu.ipsMenu_bottomRight:before,
	.ipsMenu.ipsMenu_bottomLeft:before,
	.ipsMenu.ipsMenu_bottomCenter:before,
	.ipsHovercard_stemBottom .ipsHovercard_stem:before{
		border-bottom-color: {hextorgb="text_color" opacity="0.25"};
	}
	
	/* Register password hint */
	.ipsHovercard[data-role="advicePopup"].cStem_ltr .ipsHovercard_stem {
		border-right-color: inherit;
	}
		.ipsHovercard[data-role="advicePopup"].cStem_ltr .ipsHovercard_stem:before {
			border-right-color: {hextorgb="text_color" opacity="0.25"};
		}
		
	.ipsHovercard[data-role="advicePopup"].cStem_rtl .ipsHovercard_stem {
		border-left-color: inherit;
	}
		.ipsHovercard[data-role="advicePopup"].cStem_rtl .ipsHovercard_stem:before {
			border-left-color: {hextorgb="text_color" opacity="0.25"};
		}
		
	.ipsHovercard[data-role="advicePopup"].cStem_above .ipsHovercard_stem {
		border-top-color: inherit;
	}
		.ipsHovercard[data-role="advicePopup"].cStem_above .ipsHovercard_stem:before {
			border-top-color: {hextorgb="text_color" opacity="0.25"};
		}
	
	.ipsMenu.ipsMenu_topLeft:after,
	.ipsMenu.ipsMenu_topRight:after,
	.ipsMenu.ipsMenu_topCenter:after,
	.ipsHovercard_stemTop .ipsHovercard_stem { border-top-color: inherit; }
	.ipsMenu.ipsMenu_bottomRight:after,
	.ipsMenu.ipsMenu_bottomLeft:after,
	.ipsMenu.ipsMenu_bottomCenter:after,
	.ipsHovercard_stemBottom .ipsHovercard_stem { border-bottom-color: inherit; }
	
	.ipsMenu:not( .ipsMenu_noStem ):after { 	border-width: 9px; }
	.ipsMenu:not( .ipsMenu_noStem ):before { 	border-width: 10px; }
	.ipsMenu.ipsMenu_topCenter:after { 			margin-left: -9px; }
	.ipsMenu.ipsMenu_topCenter:before { 		margin-left: -10px; }
	.ipsMenu.ipsMenu_bottomCenter:after { 		margin-left: -9px; }
	.ipsMenu.ipsMenu_bottomCenter:before { 		margin-left: -10px; }
	
	.ipsMenu_headerBar, .ipsMenu_footerBar {
		background: linear-gradient(to bottom, {theme="area_background_reset"} 0%, {theme="area_background_light"} 100%);
	}
	
	.ipsMenu_headerBar,
	.ipsMenu_footerBar {
		border-color: {hextorgb="text_color" opacity="0.15"};
	}
	
	.ipsMenu_itemCount, .ipsSideMenu_itemCount {
		background: {theme="area_background_light"};
		color: {theme="text_color"};
	}
		
		.ipsMenu_item:not( .ipsMenu_itemClicked ) a:hover .ipsMenu_itemCount,
		.ipsMenu_item:not( .ipsMenu_itemClicked ) button:hover .ipsMenu_itemCount {
			background: {theme="area_background_light"};
		}
	
		.ipsSideMenu_itemActive .ipsSideMenu_itemCount {
			background: {hextorgb="text_color" opacity="0.2"};
			color: {theme="text_color"};
		}
	
	.ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) a:before,
	.ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) > span:before,
	.ipsMenu_selectable .ipsMenu_item:not( .ipsMenu_itemNonSelect ) button:before {
		color: {hextorgb="text_color" opacity="0.1"};
	}
	
.ipsAutocompleteMenu {
	background: {theme="area_background_reset"};
}

	.ipsAutocompleteMenu_item[data-selected] {
		background: {theme="selected"};
	}

	.ipsSideMenu_item{
		border-radius: 3px;
	}

	.ipsSideMenu_item:not(.ipsSideMenu_itemActive) a:hover, a.ipsSideMenu_item:not(.ipsSideMenu_itemActive):hover, span.ipsSideMenu_item:not(.ipsSideMenu_itemActive):hover {
		background: {theme="area_background_light"};
	}
	
	.ipsSideMenu_withChecks .ipsSideMenu_item a:after,
	.ipsSideMenu_withChecks a.ipsSideMenu_item:after,
	.ipsSideMenu_withChecks span.ipsSideMenu_item:after,
	.ipsSideMenu_withRadios .ipsSideMenu_item a:after,
	.ipsSideMenu_withRadios a.ipsSideMenu_item:after,
	.ipsSideMenu_withRadios span.ipsSideMenu_item:after{
		color: {hextorgb="text_color" opacity="0.2"};
		line-height: 20px;
	}
	
.ipsSideMenu_itemActive a, a.ipsSideMenu_itemActive,
.ipsSideMenu_withChecks .ipsSideMenu_item > input[type="checkbox"]:checked ~ a,
.ipsSideMenu_withRadios .ipsSideMenu_item > input[type="radio"]:checked ~ a {
	background: {theme="area_background_dark"};
	/* color: #fff; */
}

	.ipsSideMenu_withChecks .ipsSideMenu_itemActive a:after,
	.ipsSideMenu_withChecks a.ipsSideMenu_itemActive:after,
	.ipsSideMenu_withChecks span.ipsSideMenu_itemActive:after,
	.ipsSideMenu_withRadios .ipsSideMenu_itemActive a:after,
	.ipsSideMenu_withRadios a.ipsSideMenu_itemActive:after,
	.ipsSideMenu_withRadios span.ipsSideMenu_itemActive:after,
	.ipsSideMenu_withChecks .ipsSideMenu_item > input[type="checkbox"]:checked ~ a:after,
	.ipsSideMenu_withChecks .ipsSideMenu_item > input[type="checkbox"]:checked ~ span:not(.ipsSideMenu_noCheck):after,
	.ipsSideMenu_withRadios .ipsSideMenu_item > input[type="radio"]:checked ~ a:after,
	.ipsSideMenu_withRadios .ipsSideMenu_item > input[type="radio"]:checked ~ span:not(.ipsSideMenu_noCheck):after {
		color: inherit;
	}

.ipsSideMenu_itemDisabled a, a.ipsSideMenu_itemDisabled {
	color: {hextorgb="text_color" opacity="0.6"};
}

html[dir="ltr"] .ipsSideMenu_item + .ipsSideMenu_list,
html[dir="rtl"] .ipsSideMenu_item + .ipsSideMenu_list {
	border-color: {hextorgb="text_color" opacity="0.3"};
}

.ipsSideMenu_subTitle{
	background: {hextorgb="text_color" opacity="0.08"};
	border-radius: 3px;
}

/* Side menus such as Settings */
.ipsSideMenu_item a, a.ipsSideMenu_item{
	border-radius: 3px;
}

	/* Fix blurry icons */
	.ipsSideMenu_item .fa:first-child {
		font-size: 14px;
		width: 20px;
		text-align: inherit;
		transform: translate(0,0);
	}


/* responsive - menus.css */
@media screen and (max-width: 767px) {
	
	.ipsSideMenu {
		border-color: {hextorgb="text_color" opacity="0.1"};
	}

	.ipsSideMenu .ipsSideMenu_mainTitle a {
		color: {theme="text_color"};
	}
	
	.ipsSideMenu.ipsSideMenu_open .ipsSideMenu_mainTitle a,
	.ipsSideMenu:target .ipsSideMenu_mainTitle a {
		background: {theme="area_background_dark"};
	}

	.ipsSideMenu.ipsSideMenu_open,
	.ipsSideMenu:target {
		background: {theme="area_background_reset"};
	}

	.ipsSideMenu.ipsSideMenu_open .ipsSideMenu_title,
	.ipsSideMenu:target .ipsSideMenu_title {
		background: {theme="area_background_light"};
	}
	
}



/* Popup boxes (submit content) */
.ipsDialog > div{
	background: {theme="area_background_reset"};
}

	.ipsDialog_title,
	a.ipsDialog_close{
		color: {theme="text_color"};
	}
	
	.ipsDialog .ipsDialog_loading{
		background-color: {theme="area_background_reset"};
		color: {theme="text_color"};
	}
	
		.ipsLoading::before{
			color: inherit;
		}



/* Date picker */
.ui-datepicker{
	background: {theme="area_background_reset"};
}

	.ui-datepicker-header{
		background: {theme="area_background_dark"};
		border-bottom-color: {theme="area_background_dark"};
	}
	
	.ui-datepicker th{
		background: {hextorgb="text_color" opacity="0.15"};
	}
	
	.ui-datepicker-today{
		background: {hextorgb="text_color" opacity="0.15"};
	}
	
	.ui-datepicker td a:hover,
	.ui-datepicker-current-day{
		background: {hextorgb="text_color" opacity="0.1"};
	}



/*
	----------------
	- Advanced Search
	----------------
*/

#elSearchFilters{
	background: none;
	padding: 0;
}

.cSearchMainBar{
	padding: 25px;
	background: {theme="area_background_dark"};
	color: rgba(255,255,255,0.5);
	border-radius: 3px;
	position: relative;
}

	.cSearchMainBar a{
		color: #fff;
	}

	.cSearchPretendButton{
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}

		.cSearchMainBar .ipsType_huge.fa{
			color: rgba(255,255,255,0.8);
			margin: 0;
		}
	
	#elMainSearchInput{
		border: 0;
		box-shadow: none;
	}
	
	@media screen and (min-width: 768px){
		#elMainSearchInput{
			padding: 18px !important;
		}
	}
	
	.cSearchMainBar hr.ipsHr{
		display: none;
	}
	
	#elSearchSubmit{
		margin-top: -44px;
	}

/*
	----------------
	- Profiles
	----------------
*/

/* Outjog profile header so it overlaps borders */
header[data-role="profileHeader"]{
	position: relative;
	margin: -1px -1px 0 -1px;
}

@media (min-width: 980px){
	html[dir='ltr'] #elProfileTabs{
		margin-right: -1px;
	}
	html[dir='rtl'] #elProfileTabs{
		margin-left: -1px;
	}
}

header[data-role="profileHeader"],
#elProfileHeader,
#elProfileHeader .ipsCoverPhoto_container{
	border-top-left-radius: inherit;
	border-top-right-radius: inherit;
}

@media screen and (max-width:979px){

	/* Cover Photos */
    .ipsCoverPhoto_photo {
        object-fit: cover;
        height: 100%;
        top: 0 !important;
    }

    /* Fix header alignment with rtl */
    html[dir='rtl'] .cProfileHeader_name{
		float: none;
	}

}


/* Cover photo: Follow and message buttons */
#elProfileHeader .ipsButton_primary{
	background: rgba(255,255,255,0.8);
	color: #222;
	box-shadow: rgba(0,0,0,0.3) 0px 0px 0px 1px;
}


/* Profile stats */
#elProfileStats{
	background: #111;
	font-size: 1.5rem;
	/* Stops main content from squashing up if these links overflow */
	overflow: hidden;
}

	body.ipsApp #elProfileStats > ul:last-child > li{
		border-color: rgba(255,255,255,0.2);
	}
	
	#elProfileStats .ipsType_minorHeading{
		color: inherit;
		opacity: 0.6;
	}
	
	/* Unblur icon */
	#elProfileStats .ipsButton .fa{
		font-size: 14px;
	}
	
	
	
/* Profile Columns */
#elProfileInfoColumn{
	background: {theme="area_background_light"};
	border-right: 1px solid {hextorgb="text_color" opacity="0.15"};
}

	html[dir="rtl"] #elProfileInfoColumn{
		border-left: 1px solid {hextorgb="text_color" opacity="0.15"};
		border-right: 0;
	}
	
	/* Make elProfileInfoColumn handle background colour */
	#elProfileInfoColumn > .ipsAreaBackground_light{
		background: transparent;
	}


@media screen and (max-width:979px){
	
	#elProfileInfoColumn{
		margin: 0;
		border: 0;
	}
	
	#elProfileInfoColumn + .ipsColumn{
		margin: 0;
	}
	
}


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

/* Profile name and group */	
#elProfileHeader {
    text-shadow: none;
    font-size: 14px;
}

	.cProfileHeader_name{
		padding-top: 0;
		padding-bottom: 0;
	}

}

@media screen and (max-width:767px){
	
	/* Profile Columns - remove margin on tablets */
	html[dir="ltr"] .cProfileHeader_name,
	html[dir="rtl"] .cProfileHeader_name{
		margin: 0;
	}
	
	/* Realign profile stats */
	#elProfileStats{
		text-align: center;
		padding: 0 !important;
	}
	
	#elProfileStats ul {
		text-align: center;
		float: none;
		display: flex;
		align-items: center;
		flex-wrap: wrap;
	}
	
		#elProfileStats > ul > li {
			padding: 12px 0 !important;
			margin: 0 !important;
			width: 50%;
			
			flex: 1 1 auto;
		}

		html[dir="ltr"] #elProfileStats > ul:last-child > li:last-child,
		html[dir="ltr"] #elProfileStats > ul:last-child > li:last-child,
		html[dir="ltr"] #elProfileStats > ul:last-child > li:nth-of-type(even),
		html[dir="rtl"] #elProfileStats > ul:last-child > li:nth-of-type(even){
			border-right: 0;
			border-left: 0;
		}
		
		#elProfileStats > ul:last-child > li:not(:nth-child(1)):not(:nth-child(2)){
			border-top-width: 1px;
			border-top-style: solid;
		}

}

/* Make sure username stays white on-hover on popup cards */
.cUserHovercard .ipsPageHead_special a{
	color: inherit !important;
}

/* Form row section (Edit profile) */
.ipsFieldRow_section {
	background: {theme="area_background_light"};
	color: {theme="text_color"};
}

/* Neater reputation */
.cProfileSidebarBlock .cProfileRepScore{
	margin: -1px;
	border: 1px solid {hextorgb="text_color" opacity="0.3"};
}

.cProfileRepScore .ipsType_minorHeading{
  color: inherit;
}

/* Complete profile */
.ipsBox[data-controller="core.front.core.profileCompletion"]{
	margin-bottom: 15px;
}

/* Remove background from Activity area */
#elUserContent .ipsBox .ipsAreaBackground_reset:not(.ipsModerated){
	background-color: transparent;
}


/*
	----------------
	- Settings and ModCP Tables
	----------------
*/

.ipsTable th {
	background: {theme="area_background_dark"};
	color: #fff;
}

.ipsTable td {
	border-color: {hextorgb="text_color" opacity="0.03"};
}

.ipsTable_zebra tbody tr:nth-child( even ):not(.ipsTable_highlight),
.ipsTable_zebra tbody tr:nth-child(2n):not(.ipsTable_highlight):not(.ipsModerated){
	background: {theme="area_background_light"};
}

	.ipsTable_zebra tbody tr:nth-child( even ):not(.ipsTable_highlight) td {
		border-color: {hextorgb="text_color" opacity="0.03"};
	}
	
.ipsTable tr[data-tableClickTarget]:hover {
	background: {theme="area_background"} !important;
}

.ipsTable_highlight {
	background: {theme="selected"};
}

	.ipsTable_highlight .ipsCommentCount {
		background-color: {theme="area_background_dark"};
		color: #fff;
	}

	html[dir="ltr"] .ipsTable_highlight .ipsCommentCount:after {
		border-color: transparent {theme="area_background_dark"} transparent transparent;
	}
	html[dir="rtl"] .ipsTable_highlight .ipsCommentCount:after {
		border-color: transparent transparent transparent {theme="area_background_dark"};
	}

.ipsTable_sortable:hover {
	background: rgba(0,0,0,0.06);
}

.ipsTable_sortable .ipsTable_sortIcon:after {
	color: inherit;
}

.ipsTable_sortable.ipsTable_sortableActive {
	background: {theme="area_background_dark"};
	background-image: linear-gradient(to bottom, rgba(255,255,255,0.2) 0%, rgba(255,255,255,0.2) 100%);
}

	.ipsTable_sortable.ipsTable_sortableActive .ipsTable_sortIcon:after {
		color: inherit;
	}
	
.ipsTable.ipsMatrix thead th {
	background: {theme="area_background_dark"};
}

.ipsTable.ipsMatrix .ipsMatrix_subHeader {
	background: {theme="area_background_light"};
	color: {theme="text_color"};
}

.ipsTable.ipsMatrix .ipsMatrix_error {
	background: {theme="moderated"};
}

.ipsTable.ipsMatrix .ipsMatrix_highlighted {
	background: {theme="selected"};
}


/*
	----------------
	- Blogs
	----------------
*/

/* Fix columns on tablets */
@media (max-width: 979px){
	.cBlog_grid .cBlog_grid_item{
		flex: 1 0 100%;
	}
}

/* Index page summary */
.cBlog_grid .cBlog_grid_item__snippet{
	font-family: inherit;
}

@media (min-width: 980px){
	.cBlog_grid .cBlog_grid_row--primary .cBlog_grid_item__title{
		font-size: 26px;
	}
}

/* Force ipsBox background */
.cBlogList{
	background: none;
}

	.cBlogList .ipsDataItem{
		margin: 0;
	}
	
	html[dir="ltr"] .cBlogInfo,
	html[dir="rtl"] .cBlogInfo{
		border-color: {hextorgb="text_color" opacity="0.1"};
	}

@media screen and (min-width:768px){
	.cBlogInfo_content{
		min-height: 80px;
	}
}

/* More gradient */
.cBlogInfo_content::after{
	pointer-events: none;
	background-image: linear-gradient(to bottom, {hextorgb="area_background_reset" opacity="0"} 0%, {hextorgb="area_background_reset" opacity="1"} 100%);
}

.cBlogView_entry{
	border-bottom-color: {hextorgb="text_color" opacity="0.25"};
}

/* Remove the maintitle from the Blog index page on the Wrapped framework since it's not possible to add the box variables */
[data-pageapp="blog"][data-pagecontroller="browse"] .ipsHeaderButtons ~ .ipsBox .ipsType_sectionTitle{
	display: none;
}



/*
	----------------
	- Leaderboard
	----------------
*/

.cPastLeaders_cell:after{
	color: inherit;
	opacity: 0.2;
}

.cPopularItem_stats{
	color: {theme="text_light"};
}

	.cPopularItem_stats a{
		color: inherit;
	}
	
html[dir="ltr"] .cPopularItem > div:first-child,
html[dir="rtl"] .cPopularItem > div:first-child,
html[dir="ltr"] .cPopularItem > div:last-child,
html[dir="rtl"] .cPopularItem > div:last-child,
.cPastLeaders_title::before {
	border-color: {hextorgb="text_color" opacity="0.1"};
}


.cPastLeaders_title span{
	background: {theme="area_background_reset"};
}

/* Revert flex layout */
.cTopMembers_member .ipsStreamItem_title{
	display: block !important;
}

/* Add margin below Top Members title */
#ipsTabs_elTabBar_elTabmembers_panel .ipsType_sectionHead{
	margin-bottom: 1em;
}



/*
	----------------
	- Gallery
	----------------
*/

/* Upload images: Choose album */
.cGalleryChooseAlbum_listItem {
	background: {theme="area_background"};
	border-color: {hextorgb="text_color" opacity="0.15"};
}

	a.cGalleryChooseAlbum_listItem{
		color: inherit;
	}

	.cGalleryChooseAlbum_listItem:not([data-disabled]):after {
		color: inherit;
	}

	.cGalleryChooseAlbum_listItem:not([data-disabled]):hover {
		border-color: {hextorgb="text_color" opacity="0.3"};
	}

/* Slideshow wrap */
#elGalleryHeader{
	margin: 0 0 15px 0;
}

.cGalleryCats .cGalleryTrimmedImage{
	background-color: {theme="area_background_dark"};
}


/* Redesigned album thumbnails */

	/* Remove default */
	.cGalleryCats > .ipsGrid{
		margin: 0;
	}

.cGalleryCats .cGalleryTrimmedImage{
	box-shadow: inset {hextorgb="text_color" opacity="0.15"} 0px 0px 0px 1px, rgba(0,0,0,0.15) 0px 3px 8px;
	min-height: 220px;
	border-radius: 3px;
	text-align: center;
}

	.cGalleryCat > a::before{
		background: linear-gradient(to top,
			rgba(0,0,0,1) 0%,
			rgba(0,0,0,0.738) 19%,
			rgba(0,0,0,0.541) 34%,
			rgba(0,0,0,0.382) 47%,
			rgba(0,0,0,0.278) 56.5%,
			rgba(0,0,0,0.194) 65%,
			rgba(0,0,0,0.126) 73%,
			rgba(0,0,0,0.075) 80.2%,
			rgba(0,0,0,0.042) 86.1%,
			rgba(0,0,0,0.021) 91%,
			rgba(0,0,0,0.008) 95.2%,
			rgba(0,0,0,0.002) 98.2%,
			rgba(0,0,0,0) 100%);
		height: 140px;
		opacity: 0.75;
		
	}
	
	.cGalleryCat .ipsType_sectionHead,
	.cGalleryCat .cGalleryCat_info{
		text-shadow: 0px 1px 2px rgba(0,0,0,0.4);
	}
	
	.cGalleryCat .ipsType_sectionHead{
		width: calc(100% - 14px);
		bottom: 30px;
	}
	
	.cGalleryCat .cGalleryCat_info{
		display: flex;
		align-items: center;
		justify-content: center;
		bottom: 10px;
	}
	
		.cGalleryCat .cGalleryCat_info > li{
			margin: 0 8px !important;
			white-space: nowrap;
			flex: 0 0 auto;
		}
	
		.cGalleryCat .cGalleryCat_info > li:first-child{
			position: static;
			overflow: hidden;
			text-overflow: ellipsis;
			flex: 1 1 auto;
		}
		
		.cGalleryCat .cGalleryCat_info > li:empty{
			display: none;
		}

/* Masonry */
.cGalleryPatchwork_item{
	border-radius: 3px;
	text-shadow: rgba(0,0,0,0.7) 0px 1px 3px;
}

	/* Remove hover effect */
	.cGalleryPatchwork_item:hover {
	    transform: none;
	    z-index: auto;
	}
	
	/* Border */
	.cGalleryPatchwork_item:after{
		content: '';
		position: absolute;
		top: 0; left: 0; right: 0; bottom: 0;
		border: 1px solid {hextorgb="text_color" opacity="0.1"};
		pointer-events: none;
		border-radius: inherit;
	}
	
	.cGalleryPatchwork_item > a:before{
		content: '';
		position: absolute;
		top: 0; left: 0; right: 0;
		height: 120px;
		max-height: 100%;
		pointer-events: none;
		z-index: 1;
		background: linear-gradient(to bottom,
			rgba(0,0,0,1) 0%,
			rgba(0,0,0,0.738) 19%,
			rgba(0,0,0,0.541) 34%,
			rgba(0,0,0,0.382) 47%,
			rgba(0,0,0,0.278) 56.5%,
			rgba(0,0,0,0.194) 65%,
			rgba(0,0,0,0.126) 73%,
			rgba(0,0,0,0.075) 80.2%,
			rgba(0,0,0,0.042) 86.1%,
			rgba(0,0,0,0.021) 91%,
			rgba(0,0,0,0.008) 95.2%,
			rgba(0,0,0,0.002) 98.2%,
			rgba(0,0,0,0) 100%);
		transition: all ease-in-out 0.2s;
		opacity: 0.7;
	}
	
		.cGalleryPatchwork_item > a:hover:before{
			opacity: 0.1;
		}
	
	/* Neatly align avatar and image name */
	.cGalleryPatchwork_item .ipsPhotoPanel{
		background: none;
		display: flex;
		align-items: center;
			
		line-height: 17px;
		height: auto;
		padding: 7px !important;
	}
	
		.cGalleryPatchwork_item .ipsUserPhoto_mini{
			width: 30px;
			height: 30px;
		}
	
		html[dir="ltr"] .cGalleryPatchwork_item .ipsPhotoPanel.ipsPhotoPanel_mini > div{
			margin-left: 7px;
		}
		
		html[dir="rtl"] .cGalleryPatchwork_item .ipsPhotoPanel.ipsPhotoPanel_mini > div{
			margin-right: 7px;
		}
		
		.cGalleryPatchwork_item .ipsPhotoPanel,
		.cGalleryPatchwork_comments{
			z-index: 2;
			/* transition: all ease-in-out 0.2s; */
		}
		/*
		.cGalleryPatchwork_item > a:hover .ipsPhotoPanel,
		.cGalleryPatchwork_item > a:hover .cGalleryPatchwork_comments{
			opacity: 0.3;
		} */
		
		.cGalleryPatchwork_item [data-role="moderation"]{
			z-index: 3;
		}



/* Lightbox */

.elGalleryImage .ipsButton.ipsButton_link{
	color: #fff;
}

	.elGalleryImage .ipsPromote .ipsPromote_icon{
		background: rgba(255,255,255,0.2);
	}

	[data-role="toggleFullscreen"]::before{
		font-family: FontAwesome;
		content: "\f065";
	}

.cGalleryLightbox_info{
	background: {theme="area_background_reset"};
}

	.cGalleryLightbox_info .ipsComposeArea [data-ipsEditor] + [data-ipsEditor-toolList]{
		padding-bottom: 7px;
	}

	.cGalleryLightbox_info .cGalleryExif{
		margin-bottom: 5px;
	}

	.cGalleryLightbox_info #comments{
		background: none;
		box-shadow: none;
		border: 0;
		border-radius: 0;
	}

	/* Pagination spacing */
	.cGalleryLightbox_info  .ipsPagination ~ .ipsPagination{
		margin: 0 0 10px 0 ;
	}


/* Large image slider */
#elGalleryImage{
	background: transparent;
}

	.cGalleryViewImage img{
		box-shadow: 0px 5px 20px rgba(0,0,0,0.2);
	}
	
	.cGalleryViewImage:after{
		content: '';
		position: absolute;
		top: 0; left: 0; right: 0; bottom: 0;
		pointer-events: none;
		border: 1px solid {hextorgb="text_color" opacity="0.15"};
	}
	
	/* To remove the image shadow.. */
	/*
	.cGalleryViewImage img{ box-shadow: none; }
	.cGalleryViewImage:after{ display: none; }
	*/
	
	

	#elGalleryImageNav a{
		background: {hextorgb="text_color" opacity="0.18"};
		border-radius: 3px;
		padding: 0;
		line-height: 60px;
		width: 60px;
		font-size: 40px;
		text-align: center;
	}
	
		#elGalleryImageNav a:hover{
			background: {hextorgb="text_color" opacity="0.4"};
		}
	
		html[dir="ltr"] #elGalleryImageNav_prev,
		html[dir="rtl"] #elGalleryImageNav_next {
			left: 5px;
		}
		html[dir="rtl"] #elGalleryImageNav_prev,
		html[dir="ltr"] #elGalleryImageNav_next {
			right: 5px;
		}
		
		#elGalleryImageNav .fa,
		#elGalleryImageNav .fa:before{
			display: block;
			line-height: inherit;
		}
		
		
	/* Thumbnail navigation */
	#elGalleryNav{
		background: {theme="area_background_light"};
		color: {theme="text_light"};
		border: 1px solid {hextorgb="text_color" opacity="0.1"};
		border-width: 1px 0 0 0;
		border-bottom-left-radius: inherit;
		border-bottom-right-radius: inherit;
		padding-top: 20px;
		padding-bottom: 20px;
	}
	
		#elGalleryNav a[data-action]{
			color: {theme="text_color"};
			width: 26px;
			display: block;
		}
	
			#elGalleryNav .fa{
				display: block;
				line-height: inherit;
			}
	
		/* Bug fix due to poor HTML. A div is within a paragraph */
		#elGalleryNav p{
			margin: 0;
		}
		#elGalleryNav .ipsType_reset{
			margin-top: 10px;
		}

		/* Bug fix for alignment */
		#elGalleryNav li{
			vertical-align: top;
		}
		
		.cGalleryAlbumSlider li{
			width: 46px;
			height: 46px;
			margin: 2px;
			border: 0;
			border-radius: 3px;
			position: relative;
		}
		
			.cGalleryAlbumSlider li a{
				border: 1px solid {hextorgb="text_color" opacity="0.3"};
				border-radius: inherit;
			}
			
				.cGalleryAlbumSlider li a:hover{
					background: rgba(255,255,255,0.12);
				}
		
			/* Active thumb in slider */
			.cGalleryAlbumSlider li.cGalleryAlbumSlider_active a{
				border: 2px solid {hextorgb="text_color" opacity="0.9"};
			}
			
			/* Placeholder thumbs */
			.cGalleryAlbumSlider .ipsAreaBackground{
				background: {hextorgb="text_color" opacity="0.15"};
			}

/* Bug fix: The br which spaces info and comments is removed during ajax navigation between images */
#elGalleryHeader + section[data-role="imageInfo"]{
	margin-bottom: 15px;
}



/* Submit images */
.cGallerySteps > li:before {
	color: #fff;
	background: {theme="text_color"};
}

	.cGallerySteps > li span,
	.cGallerySteps > li a {
		color: {theme="text_color"};
	}

	.cGallerySteps > li span:before,
	.cGallerySteps > li span:after,
	.cGallerySteps > li a:before,
	.cGallerySteps > li a:after {
		background: {theme="text_color"};
	}

	/* Done steps */
	.cGallerySteps > li.cGallerySteps_done:before,
	.cGallerySteps > li.cGallerySteps_done span:after,
	.cGallerySteps > li.cGallerySteps_done + li span:before,
	.cGallerySteps > li.cGallerySteps_done a:after,
	.cGallerySteps > li.cGallerySteps_done + li a:before,
	.cGallerySteps > li.cGallerySteps_active:before {
		background: #5a895c;
	}

	.cGallerySteps > li.cGallerySteps_done span,
	.cGallerySteps > li.cGallerySteps_active span,
	.cGallerySteps > li.cGallerySteps_done a,
	.cGallerySteps > li.cGallerySteps_active a {
		color: #5a895c;
	}



/* Step 1: Choose album */
	#elGallerySubmit_albumChooser > li > div {
		border-color: {hextorgb="text_color" opacity="0.1"};
	}

	#elGallerySubmit_albumChooser > li > div:hover {
		background: {theme="area_background_light"};
	}

	#elGallerySubmit_albumChooser > li > input[type="radio"]:checked + div {
		background: {theme="step_background"};
	}

		#elGallerySubmit_albumChooser > li > input[type="radio"]:checked + div:before,
		#elGallerySubmit_albumChooser > li > input[type="radio"]:checked + div .ipsType_light {
			color: inherit;
		}

.cGallerySubmit_albumImage {
	background-color: rgba(0,0,0,0.3);
}

/* Step 2: Upload files */
.cGallerySubmit_uploadImages .ipsAttachment_dropZone:not( .ipsDragging ) {
	border-color: {theme="area_background_light"};
}

/* Step 3: Image info */
.cGallerySubmit_strip {
	background: {theme="area_background_dark"};
}

.cGallerySubmit_bottomBar {
	border-color: {hextorgb="text_color" opacity="0.1"};
}

		.cGallerySubmit_strip li:not( .cGallerySubmit_current ) :hover {
			border-color: {hextorgb="selected" opacity="0.75"};
		}

	.cGallerySubmit_strip .cGalleryTrimmedImage {
		background-clip: padding-box;
	}

	.cGallerySubmit_strip .cGallerySubmit_current .cGalleryTrimmedImage {
		border-color: {theme="selected"};
	}

			html[dir="ltr"] .cGallerySubmit_strip .cGallerySubmit_current:after {
				border-color: transparent transparent transparent {theme="selected"};
			}
			html[dir="rtl"] .cGallerySubmit_strip .cGallerySubmit_current:after {
				border-color: transparent {theme="selected"} transparent transparent;
			}

.ipsApp button.cGallerySubmit_button {
	color: {theme="text_color"};
}

/* Bug fix: prevents images from wrapping too early */
.cGalleryPatchwork_row{ width: calc(100% + 1px) !important; }

/* Bug fix: Remove margin from gallery reviews in Clubs */
[data-role="imageComments"] .ipsTabs_panels.ipsTabs_contained .ipsTabs_panel{
	margin: 0;
}

/* Bug fix: Neatly align the layout when the "Show as large previews" option is selected */
.cGalleryLargeList .ipsContained_container{
  margin-top: 10px;
}

.cGalleryLargeList .ipsContained_container,
.cGalleryLargeList .ipsContained_container > span:not(.ipsHide){
  display: inline-block !important;
}

.ipsApp .cGalleryLargeList{
  padding: 15px;
  padding-bottom: 0.1px;
}

.cGalleryLargeList .ipsBox{
  margin-bottom: 15px;
}

.cGalleryRowsList .ipsDataItem > .ipsPos_top{
	align-self: center;
}

/*
	----------------
	- Downloads
	----------------
*/

/* Make spacing consistent */
html[dir="ltr"] .cDownloadsCarouselItem,
html[dir="rtl"] .cDownloadsCarouselItem{
	margin: 0px !important;
}

#elDownloadsSubmit_progress.ipsSticky{
	background-color: {theme="area_background"};
}

/* Upload file */
.ipsProgressBar{
	background-color: {hextorgb="poll_bar" opacity="0.3"};
	background-image: linear-gradient(to bottom, {hextorgb="poll_bar" opacity="0.4"} 0%, {hextorgb="poll_bar" opacity="0.3"} 100%);
}

.ipsProgressBar_progress,
.ipsProgressBar.ipsProgressBar_animated .ipsProgressBar_progress{
	background-color: {theme="poll_bar"};
}

#elDownloadsSubmit .ipsAttachment_dropZone{
	background-color: {theme="area_background_reset"};
	border-color: {hextorgb="text_color" opacity="0.3"};
}



/*
	----------------
	- Pages
	----------------
*/

.cCmsCategoryFeaturedEntry,
.cCmsCategoryFeaturedEntry .cCmsRecord_image,
.cmsCategory2col .ipsGrid_span6:nth-of-type(1),
.cmsCategory3col .ipsGrid_span4:nth-of-type(1),
.cmsCategory3col .ipsGrid_span4:nth-of-type(2) {
	border-color: {hextorgb="text_color" opacity="0.15"};
}



/*
	----------------
	- Calendar
	----------------
*/

/* Calendar widget */
.ipsWidget .ipsCalendarDate{ background: {theme="area_background_light"}; }

/* Make text easier to read */
.cCalendar_birthdays{
	color: inherit;
}

/* Remove ipsBox styles from .cCalendar and .ipsPager since they're already applied by .ipsBox_alt */
.cCalendar.ipsBox,
.cCalendarNav.ipsPager{
	box-shadow: none;
	border: 0;
	border-radius: 0;
}

.cCalendar.ipsBox,
.cCalendarNav.ipsPager:not(.ipsSticky){
	background: none !important;
}

/* Navigation bar */
.cCalendarNav{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.cCalendarNav:before,
.cCalendarNav:after{
	display: none;
}

	html[dir="ltr"] .cCalendarNav > [class*="ipsGrid_span"],
	html[dir="rtl"] .cCalendarNav > [class*="ipsGrid_span"]{
		margin: 0;
	}
	
	.cCalendarNav .ipsType_pageTitle{
		margin-top: 0;
	}

@media screen and (max-width:767px){
	
	.cCalendarNav{
		flex-wrap: wrap;
	}
	
	.cCalendarNav .ipsType_center{
		order: 1;
		width: 100%;
	}
	
	.cCalendarNav .ipsType_left{
		order: 2;
		width: 45% !important;
	}
	
	.cCalendarNav .ipsType_right{
		order: 3;
		width: 45% !important;
	}
	
}

.cCalendar{
	background-color: {theme="area_background_reset"};
}

.cCalendar td {
	border-color: {hextorgb="text_color" opacity="0.1"};
}

.cCalendar td.cCalendar_nonDate {
	background: {hextorgb="text_color" opacity="0.06"};
}

.cCalendar td.cCalendar_today, .cCalendarWeek div.cCalendar_today {
	background: {theme="area_background_dark"};
}
	.cCalendarWeek div.cCalendar_today h2.ipsType_sectionHead {
		color: inherit;
	}

	a.cEvents_style_blank, .cEvents_style_blank a, .cCalendarIcon.cEvents_style_blank {
		border-color: {hextorgb="text_color" opacity="0.15"};
	}

#elEventHeader_details {
	background: {theme="area_background_dark"};
}

.cCalendarDay > .ipsDataItem {
	border-bottom-color: {hextorgb="text_color" opacity="0.2"};
}

.ipsDataItem.cCalendarDay_allDay {
	border-bottom-color: {theme="text_color"};
}

.ipsButton.cCalendar_miniAddEvent{
	line-height: 1.4rem;
	height: auto;
}

.ipsCalendarDate{
	background: {hextorgb="text_color" opacity="0.05"};
	border-color: {hextorgb="text_color" opacity="0.2"};
}

	.ipsCalendarDate_month{
		color: {hextorgb="text_color" opacity="0.8"};
	}

@media screen and (max-width: 767px) {
	.cCalendar .cCalendar_hasEvents .cCalendar_dayNumber {
		border-color: {hextorgb="text_color" opacity="0.12"};
		background: {hextorgb="text_color" opacity="0.04"};
	}

		.cCalendar .cCalendar_hasEvents.cCalendar_today .cCalendar_dayNumber {
			background: rgba(255,255,255,0.4);
			border-color: rgba(255,255,255,0.3);
		}

		.cCalendar td.cCalendar_today .cCalendar_dayNumber {
			background: transparent;
			border-color: transparent;
			color: inherit;
		}
}



/*
	----------------
	- Nexus
	----------------
*/

.cNexusCategoryBlock{
	min-height: 220px;
}

.cNexusCategoryBlock a{
	box-shadow: inset {hextorgb="text_color" opacity="0.15"} 0px 0px 0px 1px, rgba(0,0,0,0.15) 0px 3px 8px;
	min-height: 220px;
	border-radius: 3px;
	text-align: center;
}

	.cNexusCategoryBlock > a::before{
		background: linear-gradient(to top,
			rgba(0,0,0,1) 0%,
			rgba(0,0,0,0.738) 19%,
			rgba(0,0,0,0.541) 34%,
			rgba(0,0,0,0.382) 47%,
			rgba(0,0,0,0.278) 56.5%,
			rgba(0,0,0,0.194) 65%,
			rgba(0,0,0,0.126) 73%,
			rgba(0,0,0,0.075) 80.2%,
			rgba(0,0,0,0.042) 86.1%,
			rgba(0,0,0,0.021) 91%,
			rgba(0,0,0,0.008) 95.2%,
			rgba(0,0,0,0.002) 98.2%,
			rgba(0,0,0,0) 100%);
		height: 140px;
		opacity: 0.75;
		border-bottom-left-radius: inherit;
		border-bottom-right-radius: inherit;
	}
	
	.cNexusCategoryBlock .ipsType_sectionHead{
		text-shadow: 0px 1px 2px rgba(0,0,0,0.4);
		width: calc(100% - 14px);
		bottom: 20px;
	}
	
@media screen and (max-width:767px){
	.cNexusCategoryBlock,
	.cNexusCategoryBlock a,
	.cNexusCategoryBlock > a::before{
		min-height: 130px;
		height: 130px;
	}
}

@supports ( object-fit: cover ) {
	
	.cNexusCarousel.cNexusCategory_grid .cNexusProduct_image img,
	.cNexusProduct_images .ipsImage{
		object-fit: cover;
		width: 100%;
		height: 100%;
	}
		
}

a.cNexusProduct_image{
	color: inherit;
	position: relative;
  	/* Required for the pseudo element to work correctly */
  	display: inline-block;
}

.cNexusProduct_image:after{
	content: '';
	position: absolute;
	top: 0; left: 0; right: 0; bottom: 0;
	border: 1px solid currentColor;
	opacity: 0.3;
}


/* Manage Purchases thumb */
.cNexusPurchaseList .cNexusPurchaseList_image,
.cNexusPurchase .cNexusPurchase_image {
	background-color: {theme="area_background_dark"};
	border-color: {theme="area_background"};
}


html[dir="ltr"] .cNexusCheckout_returning,
html[dir="ltr"] .cNexusCheckout_review > .ipsColumn:first-child,
html[dir="rtl"] .cNexusCheckout_returning,
html[dir="rtl"] .cNexusCheckout_review > .ipsColumn:first-child {
	border-color: {hextorgb="text_color" opacity="0.1"};
}

.cNexusMenuCart_totalRow,
.cNexusCheckout_subtotal {
	border-color: {hextorgb="text_color" opacity="0.5"};
}

.cDonateProgressBar {
	background: {hextorgb="poll_bar" opacity="0.15"};
	box-shadow: inset {hextorgb="poll_bar" opacity="0.25"} 0px 0px 0px 1px;
}
	
.cDonateProgressBar_progress {
	background: {theme="poll_bar"};
}

.cNexusPrice s {
	color: {theme="text_light"};
}

.cPayment {
	border-color: {hextorgb="text_color" opacity="0.1"};
	background-color: {theme="area_background_light"};
}

/* Overwrite the internal box background-color */
.cNexusSupportMessage{
  background-color: {theme="area_background_reset"} !important;
}

.cNexusSupportMessage_purchase .cNexusPurchase_image {
	background-color: {theme="area_background_reset"};
	border-color: {theme="area_background_light"};
}
/*
	.cNexusSupportMessage_m .cNexusSupportMessage_author,
	.cNexusSupportMessage_a .cNexusSupportMessage_author,
	.cNexusSupportMessage_s .cNexusSupportMessage_author,
	.cNexusSupportMessage_e .cNexusSupportMessage_author,
	.cNexusSupportMessage_h .cNexusSupportMessage_author {
		background: {theme="area_background_reset"};
	}
*/
.cNexusOrderBadge {
	background: #666;
}

.cNexusSupportMessage_replyArea{
	background: {theme="area_background_reset"};
}

#elNexusActions > li > a:hover{
	background: {hextorgb="link_hover" opacity="0.1"};
}

/* Remove border from sub categories in side navigation */
#elCategories_menu .ipsSideMenu_list{
	border: 0;
}

/* Make thumbnails fill containers */
.cNexusProduct_image img, .cNexusProduct_image .ipsNoThumb{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* 0 support tickets */
.cNexusActionBadge_off{
	background: {theme="area_background_dark"};
}

/* Invoices - overwrite styles where ipsAreaBackground exists inside ipsBox */
.cNexusInvoiceView > .ipsAreaBackground_light,
.cNexusInvoiceView ~ .ipsColumns .ipsBox > .ipsPad.ipsAreaBackground_light,
.cNexusInvoiceView ~ .ipsBox > .ipsPad.ipsAreaBackground_light{
	background: none;
}

.cNexusInvoiceView ~ .ipsColumns .ipsDataList.ipsBox.ipsPad,
.cNexusInvoiceView ~ .ipsBox .ipsDataList.ipsBox.ipsPad{
	padding: 0;
	background: none;
	border: 0;
	box-shadow: none;
}

/*
	----------------
	- Clubs
	----------------
*/

#elClubHeader{
	margin: 0 0 10px 0;
	position: relative;
	border-radius: 3px;
}

	#elClubHeader .ipsCoverPhoto,
	#elClubHeader .ipsCoverPhoto_container{
		border-top-left-radius: inherit;
		border-top-right-radius: inherit;
	}
	
	#elClubControls{
		background: {theme="tab_background"};
		border-bottom-left-radius: inherit;
		border-bottom-right-radius: inherit;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}

		#elClubControls .ipsTabs{
			min-height: 58px;
			padding: 10px;
		}

		#elClubControls .ipsTabs_item{
			line-height: 38px;
			margin-top: 0;
			border-radius: 2px;
		}

		#elClubControls .ipsButton_split{
			order: 2;
			flex: 0 0 auto;
			margin: 0px;
			margin-right: 14px;
		}

			html[dir='rtl'] #elClubControls .ipsButton_split{
				margin: 0;
				margin-left: 14px;
			}

			#elClubControls .ipsButton::after{
				border: 0;
			}

		#elClubControls #tabs_club{
			flex: 1 0 auto;
		}

	#elClubHeader .ipsCoverPhoto_button{
		z-index: 1;
	}
	
	#elClubHeader:after{
		content: '';
		pointer-events: none;
		position: absolute;
		top: 0; left: 0; right: 0; bottom: 0;
		border-radius: inherit;
		border: 1px solid {hextorgb="text_color" opacity="0.3"};
	}

/* Remove ipsAreaBackground from ipsBox on Club pages */
#elClubHeader ~ .ipsBox .ipsAreaBackground.ipsGrid{
  background: none;
}

@media (min-width: 768px){
	#tabs_club ul[role='tablist']{
		display: flex;
	}

		#elClubControls .ipsTabs_item{
			margin: 1px 2px 1px 0px;
		}

		#elClubControls .ipsTabs_activeItem{
			position: relative;
		}
		
			#elClubControls .ipsTabs_activeItem:after{
				content: '';
				position: absolute;
				bottom: 0; left: 50%; margin-left: -4px;
				width: 8px; height: 8px;
				border: 4px solid transparent;
				border-bottom-color: {theme="tab_background"};
				pointer-events: none;
				box-sizing: border-box;
			}
}

@media (max-width: 767px){
	/* Bug fix to place icon on top of border and align correctly */
	#elClubHeader .cClubIcon{
		z-index: 1;
		top: 10px;
	}
	#elClubHeader .ipsCoverPhoto{
		padding-top: 60px;
	}


	#tabs_club li{
		float: none;
	}
	html[dir='ltr'] #elClubControls .ipsButton_split{
		margin-right: 10px;
	}
	html[dir='rtl'] #elClubControls .ipsButton_split{
		margin-left: 10px;
	}
	#elClubHeader .ipsCoverPhoto{
		height: auto;
	}
}






.ipsMemberCard .ipsMemberCard_photo{
	margin: 0;
}

/* Newsletter */
.ipsWidget[data-blockid^="app_core_newsletter"] .ipsWidget_inner{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

	.ipsWidget[data-blockid^="app_core_newsletter"] .ipsPos_right{
		flex: 0 0 auto;
		padding-top: 0;
		padding-bottom: 0;
	}

	html[dir='ltr'] .ipsWidget[data-blockid^="app_core_newsletter"] .ipsPos_right{
		padding-left: 0;
	}

	html[dir='rtl'] .ipsWidget[data-blockid^="app_core_newsletter"] .ipsPos_right{
		padding-right: 0;
	}

	.ipsWidget[data-blockid^="app_core_newsletter"]  p{
		flex: 1 1 auto;
		width: 1%;
	}

	.ipsWidget[data-blockid^="app_core_newsletter"]  p:empty{ display: none; }

	.ipsWidget[data-blockid^="app_core_newsletter"] .ipsButton{
		margin-top: 15px;
	}

/* Correctly align side widgets */
.ipsWidget.ipsWidget_vertical:first-child{
	margin-top: 0;
}



/*
	----------------
	- Streams
	----------------
*/

/* Make description lighter */
.ipsStreamItem_status{ color: {theme="text_light"}; }

/* Stream "Content type" cog icon */
.cStreamForm_list li a.ipsSideMenu_item.ipsSideMenu_itemActive + .cStreamForm_menu,
.cStreamForm_list li a.ipsSideMenu_item:not( .ipsSideMenu_itemActive ):hover + .cStreamForm_menu {
	background: {hextorgb="text_color" opacity="0.2"};
}

/* Fix Stream filters when a backdrop filter is applied to .ipsBox */
div[data-controller="core.front.streams.form"]{
	position: relative;
}

/* Stream background */
div[data-role="streamBody"] .ipsBox_alt{
	background: {theme="area_background_light"} !important;
}

/* Filter */
.cStreamFilter{
	background: {theme="area_background_reset"};
	border-color: {hextorgb="text_color" opacity="0.2"};
}

.ipsBox .cStreamFilter{
	background: transparent;
	border-color: transparent;
}

	.cStreamFilter > li > a{
		border-color: {hextorgb="text_color" opacity="0.2"};
	}
	
	.cStreamFilter a{
		color: {hextorgb="text_color" opacity="0.7"};
	}
	
	.cStreamFilter h3{
		color: {theme="text_color"};
	}
	
	.cStreamFilter > li > a.cStreamFilter_active{
		background: {theme="area_background_dark"};
	}
	
	.cStreamFilter p em{
		opacity: 0.8;
	}

html[dir="ltr"] .ipsStreamItem.ipsStreamItem_condensed .ipsStreamItem_stats,
html[dir="rtl"] .ipsStreamItem.ipsStreamItem_condensed .ipsStreamItem_stats{
	border-color: {hextorgb="text_color" opacity="0.2"};
}

.ipsStream .ipsStreamItem_contentType{
	background: {theme="area_background_reset"};
}

.ipsStreamItem.ipsStreamItem_contentBlock{
	border-color: {hextorgb="text_color" opacity="0.15"};
}

	/* Add background to certain results such as reactions */
	.ipsStreamItem.ipsStreamItem_actionBlock{
		background: {theme="area_background_reset"};
		border: 1px solid {hextorgb="text_color" opacity="0.15"};
		border-radius: 3px;
		padding: 10px !important;
	}

html[dir="ltr"] .ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_contentBlock:before{
	border-right-color: {hextorgb="text_color" opacity="0.15"};
}

html[dir="rtl"] .ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_contentBlock:before{
	border-left-color: {hextorgb="text_color" opacity="0.15"};
}

html[dir="ltr"] .ipsStream_snippetInfo,
html[dir="rtl"] .ipsStream_snippetInfo{
	border-width: 0;
}

/*
	----------------
	- Inbox
	----------------
*/

/* Space out Options bar and Message title when viewing a message */
#elMessageViewer .ipsBox_alt:first-child{
	margin-bottom: 10px;
}

/* Remove side border from inbox list items. Not sure what its purpose is, but it causes a visible border on the last item */
html[dir="ltr"] .cMessage,
html[dir="rtl"] .cMessage{
	border-right-width: 0;
	border-left-width: 0;
}

html[dir="ltr"] .cMessage_members > ol > li,
html[dir="rtl"] .cMessage_members > ol > li{
	border-color: {hextorgb="text_color" opacity="0.4"};
}

/* Add a background to titles since they aren't in a box */
.focus-transparent #elMessageViewer .ipsType_pageTitle{
	padding: 10px 20px;
	border-radius: 3px;
	background: {theme="area_background_reset"};
}

@media screen and (min-width:980px){
	.focus-transparent #elMessageViewer .ipsType_pageTitle{
		display: inline-block;
	}
}

@media screen and (max-width: 979px){
	.focus-transparent #elMessageViewer .ipsType_pageTitle{
		clear: both;
		margin-top: 20px;
		display: block;
	}
}





/*
	----------------
	- Promoted Content
	----------------
*/

/* Stop long titles from overflowing */
.cPromotedTitle{
	overflow-wrap: break-word;
}

.cPromotedImages {
	border-color: transparent;
}

.cPromoteDialog_icon {
	box-shadow: inset {hextorgb="text_color" opacity="0.1"} 0px 0px 0px 1px;
}

	.cPromoteCount:not( .ipsType_issue ):not( .ipsType_negative ) {
		color: {theme="text_color"};
	}
	
	.cPromote_attachImage [data-role="preview"]{
		background-clip: padding-box;
	}
	
		.cPromote_attachImageSelected [data-role="preview"] {
			border-color: {theme="text_color"};
		}

#form_promote_media .ipsAttachment_dropZone.ipsAttachment_dropZoneSmall {
	border-color: {hextorgb="text_color" opacity="0.3"};
}

	html[dir="ltr"] #form_promote_social_content_facebook .ipsFieldRow_content,
	html[dir="ltr"] #form_promote_social_content_twitter .ipsFieldRow_content,
	html[dir="ltr"] #form_promote_social_content_internal .ipsFieldRow_content,
	html[dir="rtl"] #form_promote_social_content_facebook .ipsFieldRow_content,
	html[dir="rtl"] #form_promote_social_content_twitter .ipsFieldRow_content,
	html[dir="rtl"] #form_promote_social_content_internal .ipsFieldRow_content {
		background: transparent;
	}

	#form_promote_social_content_facebook .ipsFieldRow_desc,
	#form_promote_social_content_twitter .ipsFieldRow_desc,
	#form_promote_social_content_internal .ipsFieldRow_desc {
		border-color: {hextorgb="text_color" opacity="0.1"};
	}

/* Neater carousel */
.cPromotedWidgetItem > .ipsPad_half{
	padding: 15px;
}

	.cPromotedWidgetItem .ipsPhotoPanel{
		margin-top: 20px;
	}

	.cPromotedWidgetItem h2{
		margin-bottom: 10px;
	}


/* Promote button alignment */
.ipsApp .ipsPromote{
	padding: 0 !important;
	display: inline-flex;
}

	.ipsPromote .ipsPromoteText{
		padding: 0 15px;
		flex: 1 0 auto;
	}
	
	html[dir] .ipsApp .ipsPromote.ipsButton a{
        margin: 0;
        padding: 0;
    }
	
	html[dir='rtl'] .ipsPageHeader .ipsPromote {
	    margin-right: 0;
	    margin-left: 10px;
	}
	
	.ipsPromote .ipsPromote_icon{
		flex: 0 0 auto;
		color: inherit;
		margin: 0;
		background: {hextorgb="very_light_button_font" opacity="0.15"};
	}
	
	.ipsPromote .ipsPromote_icon:first-child{
		border-top-left-radius: inherit;
		border-bottom-left-radius: inherit;
	}
	
	html[dir='rtl'] .ipsPromote .ipsPromote_icon:first-child{
		border-top-right-radius: inherit;
		border-bottom-right-radius: inherit;
	}

@media screen and (max-width:767px){
	/* Not sure if there are side-effects, but this makes the pseudo border align correctly */
	.ipsPromote{
		display: flex !important;
	}
}

/*
	----------------
	- Announcements
	----------------
*/

.cAnnouncementsFloat{
	left: 0;
}

html[dir='rtl'] .cAnnouncementContentTop.ipsMessage{
	padding: 0;
}

.focus-fixed-nav .cAnnouncementsFloat,
.focus-fixed-header .cAnnouncementsFloat,
.focus-static-announcements .cAnnouncementsFloat{
	position: static;
}

	.focus-fixed-nav body[style*='margin-top'],
	.focus-fixed-header body[style*='margin-top'],
	.focus-static-announcements body[style*='margin-top']{
		margin-top: 0 !important;
	}

#cAnnouncementSidebar{
	padding-bottom: 1px;
	min-width: 0;
}

.cAnnouncementIcon{
	background: {theme="area_background_dark"};
}
	
/*
	----------------
	- Pagination
	----------------
*/

.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_page a,
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_next a,
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_prev a,
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_first a,
.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_last a {
	background: {hextorgb="link" opacity="0.1"};
	color: {theme="link"};
	vertical-align: top;
	{prefix="transition" value="none"}
}

	.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_page a:hover,
	.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_next a:hover,
	.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_prev a:hover,
	.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_first a:hover,
	.ipsPagination:not( .ipsPagination_mini ) .ipsPagination_last a:hover{
		background: {hextorgb="link" opacity="0.2"};
	}

	.ipsApp .ipsPagination .ipsPagination_page.ipsPagination_active a {
		background: {theme="link"};
		color: {theme="area_background_reset"};
		border-color: {theme="link"};
	}

	.ipsPagination .ipsPagination_page a {
		text-shadow: none;
	}

.ipsButtonRow li > a,
.ipsButtonRow li > button,
.ipsButtonRow li > span {
	background: transparent;
	color: inherit;
}

	/* Active */
	.ipsButtonRow li > a.ipsButtonRow_active,
	.ipsButtonRow li > button.ipsButtonRow_active {
		background-color: {theme="button_bar"};
		border-color: {theme="button_bar"};
		color: {theme="pagination_active"};
	}

	.ipsAreaBackground_light .ipsButtonRow li > a:not( .ipsButtonRow_active ),
	.ipsAreaBackground_light .ipsButtonRow li > button:not( .ipsButtonRow_active ),
	.ipsAreaBackground_light .ipsButtonRow li > span:not( .ipsButtonRow_active ) {
		background: {hextorgb="text_color" opacity="0.1"};
	}



/*
	----------------
	- Bar Pagination
	----------------
*/

/* Pagination bar */
.ipsButtonBar{
	color: {theme="pagination_active"};
	border: 0;
	border-radius: 3px;
	box-shadow: none;
}

	/* Inherit border radius when possible */
	.ipsBox .ipsButtonBar{
		border-radius: 0;
	}
	
	.ipsBox > .ipsButtonBar:first-child,
	.ipsBox > .ipsType_sectionTitle.ipsHide + .ipsButtonBar{
		border-top-left-radius: inherit;
		border-top-right-radius: inherit;
	}
	
	.ipsBox .ipsButtonBar:last-child{
		border-bottom-left-radius: inherit;
		border-bottom-right-radius: inherit;
	}
	
	.ipsBox .ipsType_sectionTitle:not(.ipsHide) + .ipsButtonBar{
		border-radius: 0;
	}

.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_page a,
.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_next a,
.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_prev a,
.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_first a,
.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_last a,
.ipsButtonBar .ipsButtonRow li > a,
.ipsButtonBar .ipsButtonRow li > button,
.ipsButtonBar .ipsButtonRow li > span {
	background: {hextorgb="pagination_active" opacity="0.2"};
	color: inherit;
}

.ipsButtonBar .ipsPagination .ipsPagination_pageJump a {
	color: inherit;
}

	.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_page:not(.ipsPagination_active) a:hover,
	.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_next a:hover,
	.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_prev a:hover,
	.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_first a:hover,
	.ipsApp .ipsButtonBar .ipsPagination .ipsPagination_last a:hover,
	.ipsButtonBar .ipsButtonRow li > a:hover,
	.ipsButtonBar .ipsButtonRow li > button:hover,
	.ipsButtonBar .ipsButtonRow li > span:hover {
		background: {hextorgb="pagination_active" opacity="0.4"};
	}

/* Active page */
.ipsButtonBar .ipsPagination .ipsPagination_page.ipsPagination_active a,
.ipsButtonBar .ipsButtonRow li > a.ipsButtonRow_active,
.ipsButtonBar .ipsButtonRow li > button.ipsButtonRow_active{
	background: {theme="pagination_active"};
	border-color: {theme="pagination_active"};
	color: {theme="button_bar"};
}


/* Add spacer between pagination and sort button on mobiles */
@media (max-width: 767px){
  .ipsPagination + .ipsButtonRow{
    margin-top: 3px;
  }
}


/*
	----------------
	- Mini Pagination
	----------------
*/

.ipsPagination.ipsPagination_mini{
	transition: all 0.12s linear;
	display: inline-block;
}

.ipsPagination.ipsPagination_mini a{
	color: {theme="pagination_active"};
	background: {theme="button_bar"};
}

	.ipsPagination.ipsPagination_mini a:hover{
		background-image: linear-gradient(to bottom, {hextorgb="pagination_active" opacity="0.15"} 0%, {hextorgb="pagination_active" opacity="0.15"} 100%);
	}

.ipsPagination .ipsPagination_page a{
	text-shadow: none;
}

	.ipsPagination li:not(.ipsPagination_pageJump):not(.ipsPagination_mini) .fa{
		font-size: inherit;
		top: 0;
	}



/*
	----------------
	- Message bar
	----------------
*/

.ipsMessage{
	color: #fff;
	box-shadow: inset rgba(0,0,0,0.2) 0px 2px 0px 0px, inset rgba(0,0,0,0.2) 0px -2px 0px 0px;
	text-shadow: none;
	border-radius: 0;
}

.ipsMessage_error {
	background: #b52b38;
}

.ipsMessage_success {
	background: #63aa4e;
}

.ipsMessage_warning {
	background: #ca9751;
}

.ipsMessage_info,
.ipsMessage_information {
	background: {theme="area_background_dark"};
}

.ipsMessage_general {
	background: {theme="area_background_dark"};
}

	.ipsMessage_general a.ipsButton{
		background: rgba(255,255,255,0.25);
	}

.ipsMessage a.ipsUserPhoto{
	border: 0;
}

.ipsApp .ipsMessage a:not(.ipsButton) {
	color: currentColor;
	border-color: currentColor;
}

.ipsMessage a.ipsButton:not(.ipsButton_link){
	background: none;
	color: currentColor;
}

	.ipsMessage a.ipsButton:not(.ipsButton_link):after{
		background: currentColor;
		opacity: 0.25;
		border-color: transparent;
	}
	
		.ipsMessage a.ipsButton:not(.ipsButton_link):hover:after{
			opacity: 0.35;
		}

	html[dir] .ipsMessage .ipsButton_link{
		color: currentColor;
	}



/*
	----------------
	- Block Manager
	----------------
*/

/* Manage widgets button */
#elWidgetControls{
	background: rgba(20,20,20,0.8);
	border-color: rgba(0,0,0,0.3);
	color: #fff;
}

	html[dir='ltr'] #elWidgetControls:after{
		border-left-width: 0;
	}
	
	html[dir='rtl'] #elWidgetControls:after{
		border-right-width: 0;
	}

#elSidebarManager{
	background: rgba(20,20,20,0.85);
}

	.ipsApp .ipsToolbox .ipsToolbox_sectionTitle{
		background: rgba(255,255,255,0.2);
		border-radius: 3px;
		color: #fff;
	}
	
	.cSidebarManager_block{
		background: rgba(255,255,255,0.15);
		border-radius: 3px;
	}

#elSidebarManager .ipsType_light{ color: #eee; }
	
/* Placeholder */
.cWidgetContainer.cWidgetContainer_managing{
	background-color: {hextorgb="text_color" opacity="0.15"};
}

	.cWidgetContainer.cWidgetContainer_managing::before{
		border-color: {theme="text_color"};
	}
	
	.cSidebarBlock_managing{
		background: {hextorgb="area_background_reset" opacity="0.6"};
		border-color: {theme="text_color"};
	}
	
	.cSidebarBlock_managing h4,
	.cSidebarBlock_managing [data-action="removeBlock"]{
		background: rgba(0,0,0,0.8);
	}
	
	/* On drag */
	.cSidebarManager_placeholder{
		background: {theme="area_background_dark"};
	}



/*
	----------------
	- Focus transparent
	----------------
*/

.focus-transparent .cForumMiniList_wrapper,
.focus-transparent .cGalleryCats{
	padding: 0;
}

.focus-transparent .ipsPageHeader,
.focus-transparent .cGalleryPatchwork_index,
.focus-transparent .cForumRow .ipsPad[data-role="forums"]{
	padding-left: 0;
	padding-right: 0;
}

.focus-transparent #elGalleryNav,
.focus-transparent.focus-post-bar .cTopic .ipsItemControls{
	border-width: 1px;
	border-radius: 3px;
}

@media screen and (min-width: 768px){
	
	.focus-transparent .focus-answers .cRatingColumn{
		border-width: 0px 1px 1px 1px;
	}
	
	html[dir='ltr'].focus-transparent.focus-post-bar .focus-answers .cPostQuestion .ipsItemControls{
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
		border-left-width: 0;
	}
	
	html[dir='rtl'].focus-transparent.focus-post-bar .focus-answers .cPostQuestion .ipsItemControls{
		border-top-right-radius: 0;
		border-bottom-right-radius: 0;
		border-right-width: 0;
	}
}

.focus-transparent .ipsComment_highlighted:not(.ipsBox_transparent):not(.ipsModerated):not(.ipsComment_selected):not(.ipsComment_popular),
.focus-transparent .ipsComment_highlighted.ipsBox:not(.ipsBox_transparent):not(.ipsModerated):not(.ipsComment_selected):not(.ipsComment_popular){
	background: transparent;
	border: 0;
	box-shadow: none;
}

.focus-transparent .ipsComment.cPost.ipsComment_selected{
	box-shadow: none;
	border: 0;
}



/*
	----------------
	- Wrapped styles
	----------------
*/

/* Force removal of .ipsBox styles if .ipsfocusBox is added */
.ipsfocusReset{
	box-shadow: none !important;
	background: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	padding: 0 !important;
}

/* If ipsfocusBox exists inside ipsBox, remove all styles */
.ipsBox:not(.ipsfocusReset) .ipsfocusBox,
.ipsBox:not(.ipsfocusReset) .ipsfocusBox-inner,
.ipsBox:not(.ipsfocusReset) .ipsSideMenu{
	background: none;
	box-shadow: none;
	border-radius: 0;
	padding: 0;
	border: 0;
	margin: 0;
}



/*
	----------------
	- Wallpaper styles
	----------------
*/

.focus-wallpaper .ipsStreamItem.ipsStreamItem_contentBlock,
.focus-wallpaper .ipsStreamItem.ipsStreamItem_actionBlock{
	background-clip: padding-box;
}

.focus-wallpaper .ipsApp #elStreamUpdateMsg{
	padding: 0 4px 0 20px;
	border-radius: 3px;
	margin-right: 10px;
	background: {hextorgb="area_background_reset" opacity="0.9"};
}

	html[dir='rtl'].focus-wallpaper .ipsApp #elStreamUpdateMsg{
		padding: 0 20px 0 4px;
		margin: 0 0 0 10px;
	}

.focus-wallpaper .ipsToolList > li > .ipsButton_link,
.focus-wallpaper .focus-rating{
	background: {hextorgb="area_background_reset" opacity="0.75"};
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}

.focus-wallpaper .focus-rating,
.focus-wallpaper .ipsToolList > li > .ipsButton_link{
	color: {theme="text_color"};
}

.focus-wallpaper .focus-rating{
	border-radius: 3px;
	padding: 5px 10px;
}


/*
	----------------
	- Meta editor
	----------------
*/

.ipsApp .ipsToolbox input, .ipsApp .ipsToolbox select, .ipsApp .ipsToolbox textarea{
    background-color: rgba(0,0,0,0.6);
    border-color: rgba(0,0,0,0.6);
    box-shadow: none;
    color: #fff;
}

    .ipsApp .ipsToolbox select{
        background-position: right center;
        background-size: 18px 9px, 100% 100%;
        background-repeat: no-repeat, repeat;
    }


/*
	----------------
	- ipsBox_alt bug fixes
	----------------
*/

.cLogin_single .ipsBox{
	background: none !important;
	box-shadow: none;
	border: 0;
	border-radius: 0;
}



/*
	----------------
	- Reduce z-index
	- Everything should be less than 10
	----------------
*/

.ipsNavBar_primary{
	z-index: 10;
}

.ipsComment.ipsComment_popular .ipsComment_popularFlag,
.ipsReact{
	z-index: 5;
}

div[data-controller="core.front.streams.form"] {
	z-index: 3;
}

.ipsPagination .ipsPagination_pageJump,
header[data-role="profileHeader"],
.cClubCard_status,
#elEditProfile,
#elProfileHeader .ipsUserPhoto,
.ipsStream .ipsStreamItem_contentType,
.ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_contentBlock:before{
	z-index: 1;
}

.ipsStream_withTimeline .ipsStreamItem::after{
	z-index: 2;
}


/*
	----------------
	- Bug Fixes
	----------------
*/

/* Fix subscription widget */
/* Fix Application Forms form */
/* Fix VideoBox rating alignment */
/* Fix Random Products widget */
.ipsWidget[data-blockid^="app_nexus_subscriptions_"] .ipsDataItem,
body[data-pageapp="applicationform"] .ipsType_sectionHead + .ipsDataItem,
.videoboxGridview .ipsDataItem,
.ipsWidget_vertical[data-blockid*="_randomProducts_"] .ipsDataItem{
	display: block;
}

/* Fix network status table */
[data-pagecontroller="networkStatus"] #ipsLayout_mainArea > .ipsList_reset > li{
	display: flex;
}

/* Stop post buttons and reactions from wrapping on tablets or above. Happens when numerous people react to a post. */
@media (min-width: 768px){
	.ipsItemControls{
		flex-wrap: nowrap;
	}
	.ipsReact_reactions{
		flex: 0 0 auto;
	}
	.ipsItemControls_left{
		flex: 0 1 auto;
	}
}

/* Fix 3rd party addon: Grouped profile fields */
.ipsMenu[id^="elPFDrop_"]{
	width: 300px;
}

	.ipsMenu[id^="elPFDrop_"] .ipsDataItem{
		width: 100%;
		display: block;
	}

/* Prevent text from touching the sides of browser windows in the Guest terms */
#elGuestTerms{
	padding: 15px;
}

/* Make Pages Supergrid compatible with css grid */
@supports (display:grid){

	.ipsApp .SG_wrapper,
	.ipsApp .SG_category_container{
		padding-bottom: 15px;
	}
  
  	@media (min-width: 768px){
  		.ipsGrid .SG_record_left {
			margin-top: 15px !important;
		}
	  	.ipsGrid .SG_record_right_with_image{
			margin-top: -50px !important;
		}
	}
	
}

/* Add padding to settings page */
#elSettingsTabs{
	padding: 10px;
}

/* Forum stats box - fix collapsed margin */
.ipsWidget[data-blockid*="app_forums_forumStatistics"] .ipsWidget_inner{
	padding-bottom: 1px;
}

/* Restrict size of group icon */
.cProfileSidebarBlock img{ max-width: 100%; }
/* .. but don't apply to profile photos */
.cProfileSidebarBlock .ipsUserPhoto img{ max-width: none; }


/* Make sure Calendar dropdown menu appears over backdrop-filter content */
@supports ( (-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px)) ) {
	#elCalendarsHeader{ z-index: 1; }
}

/* RTL alignment for license key close button */
html[dir='rtl'] #elLicenseKey [data-role="closeMessage"]{
	right: auto; left: 15px;
}

/* Make line-height consistent with buttons */
.ipsApp #elStreamUpdateMsg{
	line-height: 22px;
}

/* Align activity stream dots */
html[dir="ltr"] .ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_actionBlock:after{ left: -37px; }
html[dir="rtl"] .ipsStream_withTimeline .ipsStreamItem.ipsStreamItem_actionBlock:after{ right: -37px; }

/* Make .ipsType_light inherit button color */
.ipsButton .ipsType_light{
	color: inherit;
	opacity: 0.7;
}

/* Increase padding on Members widget so it matches ipsPad */
.ipsWidget_horizontal[data-blockid^="app_core_members_"] .ipsPad_half{
	padding: 15px;
}

	@media screen and (max-width: 767px){
		.ipsWidget_horizontal[data-blockid^="app_core_members_"] .ipsPad_half{
			padding: 7px;
		}
	}

/* Recaptcha input */
.ipsApp .recaptchatable *{
	color: {theme="text_color"};
}

/* Fix enhanced user panel */
@media (max-width: 768px){
	.euip_InfoPanel{
		margin: 0;
	}
	.cPost.ipsComment .euip_PanelWidth{
		height: auto;
	}
}

/* Nexus index: Space apart consecutive .ipsBox's */
section.ipsSpacer_top .ipsBox + .ipsBox{
	margin-top: 15px;
}

/* Re-colour close button for mobile navigation */
.ipsDrawer_close{
	background: {theme="area_background_dark"};
}
	.ipsDrawer_close:hover{
		color: #fff;
	}

/* Fix alignment of scroll-to-post */
a[id^="comment-"] {
    position: relative;
    display: block;
    height: 0;
}

/* Fix collapsed opacity */
.cForumRow_hidden{
	opacity: 0.5;
}
	.cForumRow_hidden .cForumTitle{
		opacity: 1;
	}

/* Neatly space header and footer widget boxes */
.cWidgetContainer[data-widgetArea="header"]{
	margin: 0;
}

	.cWidgetContainer[data-widgetArea="header"] .ipsWidget{
		margin-bottom: 15px;
	}
	
	/* Increase spacing between widgets to match column spacing */
	.cWidgetContainer[data-widgetArea="footer"],
	.ipsWidget.ipsWidget_horizontal:not(.ipsWidgetHide) + .ipsWidget{
		margin-top: 15px;
	}

/* Fix Android scroll bar on notifications list */
@media screen and (max-width: 767px){
	#elFullNotifications_menu{ box-shadow: none; }
}

/* Remove border from theme selection */
#elNavTheme_menu .ipsButton_link,
#elNavLang_menu .ipsButton_link{
	border: 0;
	border-radius: 0;
}

	#elNavTheme_menu .ipsMenu_item:hover,
	#elNavLang_menu .ipsMenu_item:hover{
		background: {hextorgb="link_button" opacity="0.1"};
	}

/* Correctly align ipsPager */
.ipsPager .ipsPager_noDesc .ipsPager_type{
	margin-top: 0;
}
.ipsPager .ipsPager_next a::after,
.ipsPager .ipsPager_prev a::after{
	line-height: 1;
	top: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	transform: translateY(-6%);
}

/* Force mentions to have white text in all areas like widgets or signatures */
a[data-mentionid]{ color: #fff !important; }

/* Remove transitions */
.ipsComment_controls .ipsButton,
.cForumTitle,
.ipsBreadcrumb,
.ipsItemStatus.ipsItemStatus_large{
	transition: none;
}

/* Align the latest user on mobiles */
@media screen and (max-width:767px){
	.ipsWidget_horizontal[data-blockid*="app_core_stats"] .cNewestMember{
		border: 0 !important;
	}
	.ipsWidget_horizontal[data-blockid*="app_core_stats"] .ipsType_center{
		text-align: left;
		padding-left: 15px;
		padding-right: 15px;
	}
}

/* Remove margins on ipsPageHeader children, due to padding on parent element */
.ipsPageHeader .ipsSpacer_bottom:last-child{
	margin: 0;
}

/* Align labels on Advanced search page */
.ipsApp label:not(.ipsField_unlimited){
	vertical-align: top;
}

/* Make inputs inherit font */
.ipsApp label:not(.ipsField_unlimited), .ipsApp input, .ipsApp button, .ipsApp select, .ipsApp textarea{
	font-family: inherit;
}

/* Profile leaderboard win */
.cProfileSidebarBlock[class*='ipsLeaderboard_trophy'] a{
	color: inherit !important;
}

/* Space apart consecutive select boxes, eg. in the date picker */
.ipsApp select + select{
  margin-left: 3px;
}

/* css checkboxes */
.ipsCustomInput{
	vertical-align: middle;
}
	.ipsCustomInput input{
		position: absolute;
		top: 0; left: 0;
		width: 100%; height: 100%;
	}
	
	.ipsField_fieldList .ipsCustomInput input[type="radio"],
	.ipsField_fieldList .ipsCustomInput input[type="checkbox"]{
		float: none;
		margin: 0;
	}

/* Fix no thumbs in Inset Existing Attachment list */
.ipsImageAttach_thumb .ipsNoThumb{
	height: 150px;
	width: auto;
}

.ipsAttachment_fileList .ipsNoThumb:after{
	line-height: 150px;
	top: 0;
	margin-top: 0;
}

/* Make sure backgrounds are removed from embedded items */
body[data-role="externalEmbed"],
body[data-role="internalEmbed"]{
	background: none !important;
  	padding: 0 !important;
}

/* Support the recent topics hook */
#recentTopicsWrapper .ipsDataItem:not(.ipsDataItem_unread) .ipsDataItem_title a{ font-weight: normal; }

/* Fix hard-coded color of empty class */
.ipsEmpty{ color: {theme="text_light"}; }

/* Long titles break in calendar widget */
.ipsWidget[data-blockid*="app_calendar_recentReviews"] .ipsTruncate.ipsTruncate_line{ white-space: normal; }

/* Revert mood widget to block */
.mood-profile .ipsDataItem{
  display: block;
}

  /* .. and reassign its padding */
  .mood-profile .ipsDataList .ipsDataItem{
    padding: 10px 0px;
  }

/* Remove margin from Update warning since it shows even if it contains no content */
.precontent-blocks .cNotificationList{ margin: 0; }
.cNotificationList > *{ margin-bottom: 10px; }

/* 4.4 theme by ipsfocus.com */
:root{
	--ipsfocus-version: '4.4.2.0';
}