/*  
Styles for the Club side of Crossmember

*/

/***** CHARTS *****/
[id^="amchart"] {
	border: 3px #434343 solid;
}
#maincontent [id^="amchart"] a[title="JavaScript charts"],
#maincontent [id^="amchart"] a[title="Interactive JavaScript maps"] {
	color: #FFFFFF !important;
	opacity: 0 !important;
}
.amchartimg {
	border: 3px #434343 solid;
	width: 100%;
	height: 300px;
	text-align: center;
	vertical-align: middle;
	position: relative;
}
.amcharthelper {
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}
.amchartimg>img {
	width: 70%;
	display: inline-block;
/*	margin: 0 auto;*/
	vertical-align: middle;
}
.amchartimgtext {
 	position: absolute;
	top: 175px;
	left: 5px;
	font-weight: bold;
	font-size: 120%;
	margin: 0 auto;
	left: 0;
	right: 0;
}

.wire-nodata>p {
	font-weight: bold;
	font-size: 120%;
}


/*************************************/
/* CLUB MEMBERSHIP SYSTEM            */
/*************************************/


/*** Forms ***/
fieldset {
	margin-top: 20px;
}
fieldset legend {
	font-weight: bold;
}

form.qcf-form {border-width: 0px; box-shadow: none; -moz-box-shadow: none; -webkit-box-shadow: none;}
form:not([class*="elementor"]):not(.form-unstyled) {
	font-size: 18px;
	border-width: 2px;
	border-color: #AAAAAA;
	border-style: solid;
	border-radius: 15px;
	padding: 5px 55px 15px 40px;
	background-color: #FFFFF5;
	-webkit-box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
-moz-box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
}
.ui-dialog form {
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}
form select,
#selectmemberlists,
form input:not([type=radio]):not([type=checkbox]) {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-size: 18px;
	background-color: #FFFFFF;
	border: 2px solid;
	border-radius: 5px;
	border-color: #CCCCCC #EEEEEE #EEEEEE #CCCCCC;
	display: block;
	color: #888888;
	padding: 10px;
	width: 100%;
	line-height: 25px;
}
input.bigbox {
	-ms-transform: scale(2);
	-moz-transform: scale(2);
	-webkit-transform: scale(2);
	-o-transform: scale(2);
	padding: 10px;
}
#payments-select .radio {
	text-align: center;
}

#payments-select .radio>label {
	width: 100%;
	height: 60px;
}

#query-section form {
	padding: 5px 10px;
}
#query-section input:not([type=submit]) {
	width: 200px;
	padding: 5px;
}
#query-section input[type=submit] {
	padding: 5px 10px;
}
#query-section select {
	padding: 5px;
}

#bbpress-forums form input.ed_button {
	width: auto;
	display: inline-block;
}

form select {
	padding-bottom: 8px;		/* Needed to render the columns on Android */
}

form input[type="submit"]:hover,
form input[type="button"]:hover {
	cursor: pointer;
}
form select:focus,
form input:not([type=radio]):focus,
form textarea:focus {
	outline-style: outset;
	outline-width: 3px;
	outline-color: #AAAAAA;
}
form input[type=submit]:disabled,
form input[type=button]:disabled {
	background-color: #888888 !important;
}
form label {
	font-weight: bold;
	display: block;
}
form input[type=radio]:focus {
	outline: none !important;
	
}
form input[type=checkbox]:focus {
	outline: none !important;
	
}

.form-error {
	color: #CC2824;
}

.row {
	padding-bottom: 5px;
	padding-left: 5px;
	padding-right: 5px;

}

form input.required,
form select.required {
	-moz-box-shadow:    inset 0 0 5px #009900;
	-webkit-box-shadow: inset 0 0 5px #009900;
	box-shadow:         inset 0 0 5px #009900;
}
form input.error,
form select.error {
	-moz-box-shadow:    inset 0 0 5px #990000;
	-webkit-box-shadow: inset 0 0 5px #990000;
	box-shadow:         inset 0 0 5px #990000;
}
form label.error {
	color: #CC2824;
}
p.error {
	color: #CC2824;
}


#membershipfeediv p {
	font-size: 28px;
	font-weight: bold;
	color: #888888;
}
#member_num {
	background-color: #EEEEEE;
}
#formheadernum {
	float: left;
	clear: none;
}
#formheadername {
	float: right;
	clear: none;
}

button,
.ui-widget button {
	font-size: 11px;
	background-color: #BF411E;		/* Orange Blue */
	color: #FFFFFF;
	border-radius: 5px;
	padding: 4px 8px;
	text-decoration: none;
	outline: none;
}
button.cancelpopup {
	background: none;
	width: 100%;
	padding: 10px;
}
button.open-merge-workbench,
button.preview-merge,
button.commit-merge {
	background: none;
	width: 100%;
	padding: 10px;
	font-size: 18px;
}
button.cancelpopup:hover {
	background: none;
	cursor: pointer;
}
button:hover {
	background-color: #F27451;	/* 20% lighter */
	color: #FFFFFF;
	cursor: pointer;
}
textarea {
	width: 100%;
	max-width: 100%;
}

.foundmember {
	border-width: 2px;
/*	border-color: #AAAAAA;*/
	border-color: #CCCCCC #EEEEEE #EEEEEE #CCCCCC;
	border-style: solid;
	border-radius: 15px;
	padding: 15px 15px 15px 25px;
	margin: 5px;
	background-color: #FFFFF5;
	position: relative;
	-webkit-box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
-moz-box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
}
.foundvehicle {
	border-width: 2px;
/*	border-color: #AAAAAA;*/
	border-color: #CCCCCC #EEEEEE #EEEEEE #CCCCCC;
	border-style: solid;
	border-radius: 15px;
	padding: 15px 15px 15px 25px;
	margin: 5px;
	background-color: #FFFFF5;
	position: relative;
	-webkit-box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
-moz-box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
}
.viewfound {
	position: absolute;
	right: 20px;
	bottom: 10px;
	font-weight: bold;
}
.editfound {
	position: absolute;
	right: 60px;
	bottom: 10px;
	font-weight: bold;
}
.viewheader1 {
	font-size:120%;
	font-weight: bold;
}
.viewheader2 {
	float: right;
	font-size:120%;
	font-weight: bold;
}
.viewname {
	display: inline-block;
	width: 100%;
	text-align: center;
	font-weight: bold;
	font-size: 140%;
}
.history {
	font-size: 12px;
}

.googlemap {
	border-width: 2px;
/*	border-color: #AAAAAA;*/
	border-color: #CCCCCC #EEEEEE #EEEEEE #CCCCCC;
	border-style: solid;
	border-radius: 15px;
		-webkit-box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
-moz-box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
}


/* Sticky Box */


/********************* jQuery Dialog **********/
/* .ui-dialog .ui-dialog-titlebar-close span {
	margin-left: -8px;
	margin-top: -8px;
}
*/
.ui-dialog .ui-dialog-content {
	padding: 0px;
}
.ui-dialog.ui-widget-content {
	border: 0px;
	background: none;
}
.ui-dialog-titlebar.ui-widget-header {
	border: 0px;
	background: none;
}

/* Remove the X close button on dialog */
.no-close .ui-dialog-titlebar-close {
  display: none;
}

.dialogsmalltext {
	font-size: 14px;
}

/**** Checkbox Radio ***/
.ui-checkboxradio-label {
	padding: 5px 10px !important;

}
.ui-checkboxradio-checked.ui-visual-focus {
	box-shadow: none !important;
}

.foundmembershort {
	height: 340px;
}
.foundvehicleshort {
	height: 340px;
}

.viewbuttons {
	text-align: center;
}

.notice-box {
	background-color: #DDEEEE;
	border: 1px solid red;
	border-radius: 4px;
}
p.notice-box {
	margin-bottom: 13px;
}

/* cheque form */
.chq-memno,
.chq-type,
.chq-dates,
.chq-amount {
	font-size: 30px;
	font-weight: bold;
}

/***** Find Member - Member Lists ****/
#memberlisting,
.duplicate_reg,
.duplicate_reg_car {
	position: relative;
	font-size: 18px;
	border-width: 2px;
	border-color: #AAAAAA;
	border-style: solid;
	border-radius: 15px;
	padding: 5px 55px 15px 40px;
	background-color: #FFFFF5;
	-webkit-box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
-moz-box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
box-shadow: 4px 4px 6px 3px rgba(170,170,170,0.75);
}
.duplicate_reg_car {
  box-sizing: border-box;
}


#memberlistscroll {
	height: 500px;
	overflow-y: auto;
}
/******** Spinning Loader *************/
#loader,
#addressloader,
#detailsloader,
#membershiploader,
#commentsloader,
#personloader,
#paymentloader,
#memberlistloader,
#familyloader,
#carloader,
#carsearchloader,
#clubdutyloader,
#membersearchloader,
#dupregsearchloader,
#addmemberloader,
#mandatesearchloader {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  width: 150px;
  height: 150px;
  margin: -75px 0 0 -75px;
  border: 16px solid #f3f3f3;
  border-radius: 50%;
  border-top: 16px solid #000000;
  width: 120px;
  height: 120px;
  -webkit-animation: spin 2s linear infinite;
  animation: spin .75s linear infinite;
}
#memberlistloader {
	position: absolute;
	top: 200px;
}
#carloader {
	top: 25%;
}

@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/***** Sort Table *****/
table.sortable th:not(.sorttable_sorted):not(.sorttable_sorted_reverse):not(.sorttable_nosort):after { 
    content: " \25B4\25BE" 
}
table.sortable th:hover {
	cursor: pointer;
}

@media print {
	header nav {
		display: none;
	}
	
	.noprint {
		display: none;
	}
}

/*************/
/* REPORTS   */
/*************/
#query-section input,
#query-section label {
	display: block;
}

/* Report Tables */
#report-results td,
#report-results th,
.results-table td,
.results-table th {
	padding: 5px;
}
#report-results th,
.results-table th {
    background-color: #434343;
    color: white;
}
#report-results tr:hover,
.results-table tr:hover {
	background-color: #CCCCCC;
}
#membersvehicles tr:hover {
	background-color: #CCCCCC;
}

/****************************/
/*** SETUP PAGE AND TABS    */
/****************************/

.setup-nav-tab {
    float: none;
    border: 1px solid #ccc;
    border-bottom: none;
    margin-left: .5em;
    padding: 5px 10px;
    font-size: 14px;
    line-height: 24px;
    background: #e5e5e5;
    color: #555;
}

.setup-nav-tab-active,
.setup-nav-tab-active:focus,
.setup-nav-tab-active:focus:active,
.setup-nav-tab-active:hover {
    border-bottom: 1px solid #f1f1f1;
    background: #ffffff;
    color: #000;
}

.setup-nav-tab-wrapper,
.tabwrapper h2.setup-nav-tab-wrapper,
h1.setup-nav-tab-wrapper {
	display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    border-bottom: 1px solid #ccc;
    margin: 0;
    padding-top: 9px;
    padding-bottom: 0;
    line-height: inherit;
}
.setup-nav-tab-wrapper:not(.wp-clearfix):after {
    content: "";
    display: table;
    clear: both;
}
.setup-nav-tab-active {
    margin-bottom: -1px;
    color: #444;
}

#feestable {
	table-layout: fixed;
	width: 100%;
	font-size: 16px;
}

#feestable td,
#feestable td>input {
	font-size: 16px;
}

#feestable th {
	font-weight: bold;
}

/***********************/
/* ACTIVITIES	       */
#report-results button[id^="activitydone"].activitydone {
	background-color: #C1C1C1 !important;		/*Greyed out */
	color: #FFFFFF !important;
}
#report-results button[id^="vehicleactivitydone"].activitydone {
	background-color: #C1C1C1 !important;		/*Greyed out */
	color: #FFFFFF !important;
}

/****************************************/
/*   VEHICLE OWNER REQUEST CANCELLATION */
div.my-vehicle-requests button[id^="cancelownership"].ownershipcancelled {
	background-color: #C1C1C1 !important;		/*Greyed out */
	color: #FFFFFF !important;
}

/******************************************/
/* General Tables - e.g. in Vehicles Page */
/******************************************/
.generaltable td,
.generaltable th {
	padding: 5px;
}
.generaltable th {
    font-weight: bold;
}
.generaltable tr:hover {
/*	background-color: #CCCCCC; */
}

/*****************************/
/* contact email message     */
/*****************************/
button[id^=contact_emailsend] {
	margin-bottom: 20px;
	margin-top: 10px;
	font-size: 50%;
}

/*****************************/
/* 2FA COLOUR TAGS FOR USERS */
/*****************************/
.tfa-tag {
	color: white;
	font-size: 50%;
}
.tfa-on {
	background-color: green;
	
}
.tfa-off {
	background-color: #CC2900;
}

/*****************/
/* TOOLTIPS      */
/*****************/

i.tooltip {
  position: relative;
  display: inline;
  font-size: 80%;
}
i.tooltip span {
  position: absolute;
  width:260px;
  left: -200px;
  color: #434343;
  background: #FFFFFF;
  border: 2px solid #434343;
/*  height: 30px;*/
/*  line-height: 30px;*/
  font-family: verdana;
  font-size: 120%;
  padding: 5px 5px;
  text-align: center;
  visibility: hidden;
  border-radius: 6px;
  box-shadow: 4px 4px 5px #AAAAAA;
  
  opacity: 0;
  transition: opacity .5s;
}
i.tooltip span:before {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -12px;
  width: 0; height: 0;
  border-top: 12px solid #434343;
  border-right: 12px solid transparent;
  border-left: 12px solid transparent;
}
i.tooltip span:after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -8px;
  width: 0; height: 0;
  border-top: 8px solid #FFFFFF;
  border-right: 8px solid transparent;
  border-left: 8px solid transparent;
}
i:hover.tooltip span {
  visibility: visible;
  opacity: 1;
  bottom: 30px;
  left: 50%;
  margin-left: -130px;
  z-index: 999;
}


i.tooltipbottom {
  position: relative;
  display: inline;
}
i.tooltipbottom span {
  position: absolute;
  width:260px;
  color: #434343;
  background: #FFFFFF;
  border: 2px solid #434343;
/*  height: 30px; */
  line-height: 20px; 
  font-family: verdana;
  font-size: 85%;
  padding: 5px 5px;
  text-align: center;
  visibility: hidden;
  border-radius: 6px;
  box-shadow: 4px 4px 5px #AAAAAA;
}
i.tooltipbottom span:before {
  content: '';
  position: absolute;
  bottom: 100%;
  left: 50%;
  margin-left: -12px;
  width: 0; height: 0;
  border-bottom: 12px solid #434343;
  border-right: 12px solid transparent;
  border-left: 12px solid transparent;
}
i.tooltipbottom span:after {
  content: '';
  position: absolute;
  bottom: 100%;
  left: 50%;
  margin-left: -8px;
  width: 0; height: 0;
  border-bottom: 8px solid #FFFFFF;
  border-right: 8px solid transparent;
  border-left: 8px solid transparent;
}
i:hover.tooltipbottom span {
  visibility: visible;
  opacity: 1;
  top: 30px;
  left: 50%;
  margin-left: -150px;
  z-index: 999;
}


i.tooltipright {
  position: relative;
  display: inline;
}
i.tooltipright span {
  position: absolute;
  width:260px;
  color: #434343;
  background: #FFFFFF;
  border: 2px solid #434343;
/*  height: 30px; */
  line-height: 20px;
  line-height: 20px; 
  font-family: verdana;
  font-size: 85%;
  padding: 5px 5px;
  text-align: center;
  visibility: hidden;
  border-radius: 6px;
  box-shadow: 4px 4px 5px #AAAAAA;
}
i.tooltipright span:before {
  content: '';
  position: absolute;
  top: 50%;
  right: 100%;
  margin-top: -12px;
  width: 0; height: 0;
  border-right: 12px solid #434343;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
}
i.tooltipright span:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 100%;
  margin-top: -8px;
  width: 0; height: 0;
  border-right: 8px solid #FFFFFF;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
}
i:hover.tooltipright span {
  visibility: visible;
  opacity: 1;
  left: 100%;
  top: 50%;
  margin-top: -70px;
  margin-left: 15px;
  z-index: 999;
}


i.tooltipleft {
  position: relative;
  display: inline;
}
i.tooltipleft span {
  position: absolute;
  width:260px;
  color: #434343;
  background: #FFFFFF;
  border: 2px solid #434343;
/*  height: 30px; */
  line-height: 20px;
  line-height: 20px; 
  font-family: verdana;
  font-size: 85%;
  padding: 5px 5px;
  text-align: center;
  visibility: hidden;
  border-radius: 6px;
  box-shadow: 4px 4px 5px #AAAAAA;
}
i.tooltipleft span:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -12px;
  width: 0; height: 0;
  border-left: 12px solid #434343;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
}
i.tooltipleft span:after {
  content: '';
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -8px;
  width: 0; height: 0;
  border-left: 8px solid #FFFFFF;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
}
i:hover.tooltipleft span {
  visibility: visible;
  opacity: 1;
  right: 100%;
  top: 50%;
  margin-top: -70px;
  margin-left: 15px;
  z-index: 999;
}


/* On Focus Tooltips - For INPUT elements */
.on-focus {
	width: 100%;
	position: relative;
}
.focustooltip{
	color: #232323;
	background-color: #EFEFEF;
	text-shadow: none;
	font-size: .8em;
	visibility: hidden;
/*	display: none;*/
	-webkit-border-radius: 7px; 
	-moz-border-radius: 7px; 
	-o-border-radius: 7px; 
	border-radius: 7px;
	border: 2px solid #CC2824;
	text-align: center;
	width: 86%;
	opacity: 0;
	z-index: 999;
	padding: 3px 8px;	
	position: absolute;
	cursor: default;
	-webkit-transition: all 240ms ease-in-out;
	-moz-transition: all 240ms ease-in-out;
	-ms-transition: all 240ms ease-in-out;
	-o-transition: all 240ms ease-in-out;
	transition: all 240ms ease-in-out;
	
	top: auto;
	bottom: 115%;
	left: 7%;
	margin-bottom: auto;
}
.on-focus input:focus + .focustooltip{
	visibility: visible;
/*	display: block;*/
	opacity: 1;
	-webkit-transition: all 240ms ease-in-out;
	-moz-transition: all 240ms ease-in-out;
	-ms-transition: all 240ms ease-in-out;
	-o-transition: all 240ms ease-in-out;
	transition: all 240ms ease-in-out;		
}


/***Membership Type Table */
table.membership_type {
	table-layout: fixed;
	width: 100%;
}
table.membership_type th {
	font-size: 85%;
}

/*** MOT History Table ******/
#mothistory-div {
	height: 350px;
	overflow: auto;
}
.mothistory {
	table-layout: fixed;
	width: 100%;
	font-size: 85%;
}
.mothistory th{
	font-weight: bold;
}
.mothistory tr.motcomment {
	font-size: 80%;
}

/************** GDPR */
[id$="gdpr-consent"] {
	font-size: 80%;
	text-align: left;
}

/************ Boxed Text */
li.boxed-text-text {
	list-style-type: none;
}
div.boxed-text-outerbox {
	height: 380px;
}


/************ MEMBER LIVE SEARCH ************/
.found-person-selected {
	background-color: #888888;
	color: #FFFFFF;
	font-weight: bold;
}
#find-person-found table tr:hover {
	cursor: pointer;
}
#find-person-found {
	max-height: 200px;
	overflow: auto;
}
#find-person-found table {
	table-layout: fixed;
	width: 100%;
	font-size: 85%;
	text-align: left;
}

/************** Direct Debit Promotion ****************/
#promote-dd {
	border: 1px solid black;
	border-radius: 8px;
	background-color: #DDEEEE;
	text-align: center;
	padding: 0 10px;
}
#promote-dd p {
	margin: 8px;
}
#promote-dd-more {
	margin: 0 10px;
}
#promote-dd-tell-more {
	text-align: left;
}
#promote-dd-tell-more>ul>li {
	margin: 10px 5px;;
}
#promote-dd-tell-more ul {
	list-style-position: inside;
	margin-left: 10px;
	font-weight: normal;
}

/******************** Go Cardless Notice Bar *******************/
#gc-notice-bar{
	background: #343838;
	color: #fff;
	font-size:16px;
	top: 0px;
	left: 0px;
	width: 100% !important;
	padding: 10px 0px;
	text-align: center;
}
#gc-notice-bar a {
	color: #ffffff;
	border-bottom: 1px dotted;
}
#gc-notice-bar a:hover {
	border-bottom: 1px solid;
}
#gc-notice-bar:empty {
	display: none;
}

/*************** Go Cardless Matching *******/

#report-results button[id^="changeowner-"].gc_matchingdisabled,
 #report-results button[id^="matchreset-"].gc_matchingdisabled,
 #report-results button[id^="matchdelete-"].gc_matchingdisabled {
	background-color: #C1C1C1 !important;		/*Greyed out */
	color: #FFFFFF !important;
}


/****************apply button **************/
#applygocardless {
	font-weight: bold;
}


/*************** FIX CHECKBOXRADIO AUTO JUMPING TO THE TOP *****************/
#membershipform .radio input.ui-checkboxradio,
#renewdialogform .radio input.ui-checkboxradio,
#rejoindialogform .radio input.ui-checkboxradio,
#repaydialogform .radio input.ui-checkboxradio {
	display: none;
}


/***************** GDPR **************************/

/******* PREVIEW DIALOG BOX *********/
/* Only style the preview dialog container and its content */
.ui-dialog[aria-describedby="gdpr-preview-dialog"],
.ui-dialog[aria-describedby="gdpr-preview-dialog"] .ui-dialog-content {
  background: #fff;
  text-align: left;
  padding: 10px;
}

.ui-dialog[aria-describedby="gdpr-preview-dialog"] .ui-dialog-titlebar.ui-widget-header {
  background: #fff;
}

.ui-dialog[aria-describedby="gdpr-preview-dialog"] {
  border: 1px solid #ddd;
  border-radius: 8px;
  box-shadow: 0 12px 40px rgba(0,0,0,.2);
}

/* Only dim the page for the preview dialog */
body.gdpr-preview-open .ui-widget-overlay {
  background: rgba(0,0,0,.4);
}



.gdpr-inline {
	display:inline-flex;
	align-items:center;
	gap:8px;
	margin:6px 0;
}
.gdpr-text {
	width:100%;
	max-width:100%;
	box-sizing:border-box;
}

.gdpr-policy textarea {
	white-space: pre-line;
}

/* Make the member record nicely tiled for the layout of GDPR Answers */
/* Start a new row every two tiles (float grids) */
.gdpr-policy .col-6:nth-child(odd) { clear: left; }

/* Card styling + equal heights if the column stretches */
.gdpr-pref {
	/*background:#f9fbfc;*/ 
	border:1px solid #e6eef2; 
	border-radius:8px; 
	padding:10px; 
	height:100%; 
}

/* Tidy text */
.gdpr-pref__value { white-space: pre-wrap; word-break: break-word; }
.gdpr-pref__label { margin-bottom: 2px; }

/* open/close of the GDPR section in MailOut */
/* Bigger chevron + smooth rotate when expanded */
.cm-collapsible-header::-webkit-details-marker { display: none; }
.cm-collapsible-header::marker { content: ""; }
.cm-collapsible .caret svg { transition: transform .15s ease; }
.cm-collapsible[open] .caret svg { transform: rotate(90deg); }
/* Make the whole summary row feel clickable */
.cm-collapsible > summary.cm-collapsible-header {
  cursor: pointer;
}

/* Optional: ensure the text itself also shows the hand cursor */
.cm-collapsible > summary.cm-collapsible-header h4 {
  cursor: pointer;
}


/******* MEMBERSHIP CARDS ****************/
.cm-card-actions {
	display:flex; 
	flex-wrap:wrap; 
	align-items:center; 
	justify-content:center; 
	gap:12px;
}
.cm-card-actions form {
	display:inline-flex !important;
	width:auto !important;
	max-width: max-content !important; /* shrink to fit */
	flex:0 0 auto !important;
	margin:0 !important;
	padding:0 !important;             /* remove padding from the form */
	box-sizing:border-box;
	border-width: 0px;
	box-shadow: none;
	-webkit-box-shadow: none;
}
.cm-card-actions input[type=submit] {
	width:auto !important;
	white-space:nowrap;
	padding:5px 55px 15px 40px;       /* move your padding here */
}



/*GDPR PREFERENCES in Admin Setup */
/* Grid: two columns, equal row heights */
.gdpr-defs-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;                /* space between cards */
  align-items: stretch;     /* make cards in the same row equal height */
}

/* Grid item wrapper (replaces old col-6/col-m-6) */
.gdpr-defs-grid > .gdpr-cell {
  display: flex;            /* lets the card stretch to full equal height */
  min-width: 0;             /* prevents overflow from long content */
}

/* Card styling */
.definition-card {
  border: 1px solid #cfd8e3;           /* was #e6eef2 */
  box-shadow: 0 1px 2px rgba(16,24,40,.06);
  border-radius: 10px;                  /* a touch rounder */
  transition: box-shadow .18s ease, border-color .18s ease, transform .18s ease;
  
  
  background: #fff;
  padding: 10px;

  width: 100%;
  height: 100%;
  box-sizing: border-box;

  /* enable pinned footer + equal interior spacing */
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.definition-card:hover,
.definition-card:focus-within {
  border-color: #94a3b8;               /* slate-ish */
  box-shadow: 0 4px 12px rgba(16,24,40,.12);
  transform: translateY(-1px);
}

/* 3) Subtle accent stripe on the left (helps scanning) */
.definition-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  border-radius: 10px 0 0 10px;
  background: linear-gradient(180deg, #4f46e5 0%, #22c55e 100%); /* indigo → green */
  opacity: .18;                         /* keep it subtle */
  pointer-events: none;
}
.definition-card { position: relative; } /* needed for ::before */


/* Inputs tidy (readonly/disabled) */
.definition-card input[readonly],
.definition-card select[disabled] {
  background: #f9fbfc;
  border: 1px solid #dde7ee;
  border-radius: 4px;
  padding: 6px 8px;
  width: 100%;
  box-sizing: border-box;
}

/* Labels */
.definition-card .def-label {
  font-size: 12px;
  color: #556;
  margin-bottom: -2px;
}

/* Tagline row (tag + copy button) */
.definition-card .def-tagline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  order: 98;
  margin-top: auto;            /* pushes tagline (and what follows) to bottom */
  padding-top: 8px;
  border-top: 1px dashed #e5e7eb;
}

.gdpr-tag {
  font-family: monospace;
  background: #f3f6f9;
  border: 1px dashed #cbd6e2;
  padding: 3px 6px;
  border-radius: 4px;
}

/* Footer pinned to bottom for consistent alignment */
.definition-card .def-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  order: 99;
  margin-top: 8px;             /* small spacing from tagline */
  padding-top: 8px;
  border-top: 1px solid #eee;
}

.definition-card .def-created {
  flex: 1 1 auto;
  text-align: right;
  font-size: 12px;
  color: #666;
  line-height: 1.2;
  word-break: break-word;
}

.definition-card .def-actions { flex: 0 0 auto; }

/* One column on small screens */
@media (max-width: 768px) {
  .gdpr-defs-grid { grid-template-columns: 1fr; }
}


/* Format the GDPR Reports so the boxes are the same size */
/* Container can be the section itself or a wrapper you add around the forms */
/* Tile look & consistent feel */
/* Grid container */
#gdpr_reports .gdpr-tiles,
#regions_reports .gdpr-tiles{
  display:flex;
  flex-wrap:wrap;
  gap:12px;              /* nice breathing room */
}

/* Each tile */
#gdpr_reports .gdpr-tiles .gdpr-tile,
#regions_reports .gdpr-tiles .gdpr-tile{
  /* neutralize any float from col-* grid for these forms */
  float:none;
  box-sizing:border-box;

  /* 3-up on desktop, 2-up on medium (your col-m-6 intent), 1-up on small */
  flex:1 1 calc(33.333% - 12px);
  max-width:calc(33.333% - 12px);
  display:flex;
  flex-direction:column;
  padding:12px;
  border:1px solid #ddd;
  border-radius:8px;
  background:#fff;
}

/* medium screens */
@media (max-width: 900px){
  #gdpr_reports .gdpr-tiles .gdpr-tile,
  #regions_reports .gdpr-tiles .gdpr-tile{
    flex:1 1 calc(50% - 12px);
    max-width:calc(50% - 12px);
  }
}

/* small screens */
@media (max-width: 600px){
  #gdpr_reports .gdpr-tiles .gdpr-tile,
  #regions_reports .gdpr-tiles .gdpr-tile{
    flex:1 1 100%;
    max-width:100%;
  }
}

/* Push CTA to bottom */
#gdpr_reports .gdpr-tile .cta,
#regions_reports .gdpr-tile .cta{ 
	margin-top:auto; 
}

/* Keep the DSAR inline field compact */
#gdpr_reports .gdpr-inline-field{
  display:flex;
  align-items:center;
  gap:8px;
  padding-right:12px;
}
#gdpr_reports .gdpr-inline-field label{
  margin:0;
  white-space:nowrap;
  /* don't let label gobble space */
  flex:0 0 auto;
}
#gdpr_reports .gdpr-inline-field input[type="text"]{
  /* flex drives size, not width */
  width:auto;                 /* avoid width:100% globals */
  flex:1 1 45%;               /* preferred ~45% of the row */
  min-width:85px;            /* never smaller */
  max-width:260px;            /* never larger */
  box-sizing:border-box;
}
#gdpr_reports .gdpr-tile h4,
#regions_reports .gdpr-tile h4{ 
	margin:0 0 6px; 
}
#gdpr_reports .gdpr-tile p,
#regions_reports .gdpr-tile p{ 
	margin:0 0 8px; 
}

/* stack on small screens */
@media (max-width:600px){
  #gdpr_reports .gdpr-inline-field{
    flex-direction:column;
    align-items:stretch;
    padding-right:0;
  }
  #gdpr_reports .gdpr-inline-field input[type="text"]{
    flex:auto;
    min-width:0;
    max-width:100%;
    width:100%;
  }
}


/* Force left-aligned, inline radios in GDPR tiles */
#gdpr_reports .gdpr-tile fieldset {
  margin: 8px 0 0;
  padding: 0;
  border: 0;
}

#gdpr_reports .gdpr-tile fieldset legend {
  margin: 0 0 6px;
  padding: 0;
}

#gdpr_reports .gdpr-tile fieldset label {
  /* kill any global float/width/margins */
  float: none !important;
  width: auto !important;
  margin: 4px 0 !important;
  padding: 0 !important;
  text-align: left !important;

  /* align radio + text on one row */
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
}

#gdpr_reports .gdpr-tile fieldset input[type="radio"] {
  flex: 0 0 auto;
  margin: 0 !important;      /* remove weird offsets */
  transform: none !important;/* just in case a theme nudges it */
  accent-color: #BF411E;
}

/* Undo the generic 200px width for radios/checkboxes in GDPR tiles */
#gdpr_reports .gdpr-tile fieldset input[type="radio"],
#gdpr_reports .gdpr-tile fieldset input[type="checkbox"] {
  width: auto !important;
  padding: 0 !important;
  box-sizing: content-box; /* avoid padding affecting hit area */
  vertical-align: middle;  /* keeps dot aligned with text */
}

#gdpr_reports .gdpr-tile fieldset label { cursor: pointer; }


/*****************************************************************/
/*
 * VEHICLE MERGING	
 *
 */
 .cm-car-card__title { 
	font-weight:600; 
	font-size:18px; 
	text-decoration: underline;
	text-align:center;
}


/*************************************************************/
/* Vehicle Add Forms - Disable Fields if Ownership Requested */
.cm-disable-on-ownership-request[disabled],
.cm-disable-on-ownership-request:disabled {
	opacity: 0.55;
	cursor: not-allowed;
	background-color: #f5f5f5;
}

textarea.cm-disable-on-ownership-request[disabled],
textarea.cm-disable-on-ownership-request:disabled,
select.cm-disable-on-ownership-request[disabled],
select.cm-disable-on-ownership-request:disabled,
input.cm-disable-on-ownership-request[disabled],
input.cm-disable-on-ownership-request:disabled {
	color: #666;
	-webkit-text-fill-color: #666;
}

/* registrar add vehicle form */

#registraraddvehicleform::after {
	content: "";
	display: table;
	clear: both;
}


/********************************************************************/
/*  Member Record Region Layout - Esp for Proximity					*/

.cm-proximity-member-record .inside {
	padding-top: 14px;
}

.cm-proximity-assignment-summary {
	margin-bottom: 18px;
}

.cm-proximity-assignment-table {
	max-width: 520px !important;
	border-radius: 10px;
	overflow: hidden;
}

.cm-proximity-assignment-table th {
	width: 140px;
	white-space: nowrap;
}

.cm-proximity-assigned-region-meetings {
	margin-top: 8px;
}

.cm-proximity-hub-cards {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin: 8px 0 0 0;
}

.cm-proximity-hub-card {
	background: #fffdf7;
	border: 1px solid #d9d9d9;
	border-radius: 12px;
	box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.08);
	padding: 14px 16px;
	max-width: none;
	width: 100%;
	flex: 1 1 100%;
}

.cm-proximity-hub-card-title {
	font-size: 17px;
	font-weight: 600;
	margin-bottom: 8px;
	line-height: 1.35;
	color: #222;
}

.cm-proximity-hub-card-meta {
	font-size: 15px;
	line-height: 1.55;
	color: #333;
}

.cm-proximity-hub-card-meta div + div {
	margin-top: 4px;
}

.cm-proximity-other-nearest-toggle {
	margin-top: 16px !important;
}

.cm-proximity-nearest-hubs-results {
	margin-top: 12px;
}

.cm-proximity-nearest-hubs-results table {
	max-width: 900px !important;
}

@media (max-width: 700px) {
	.cm-proximity-hub-cards {
		display: block;
	}

	.cm-proximity-hub-card {
		max-width: none;
		min-width: 0;
		margin-bottom: 12px;
	}
}


/* Other nearby meetings */
.cm-proximity-nearest-hubs-results {
	margin-top: 14px;
	padding: 12px 14px 14px 14px;
	background: #f8f8f8;
	border: 1px solid #dddddd;
	border-radius: 12px;
}

.cm-proximity-nearest-hubs-results h4 {
	margin: 0 0 12px 0 !important;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.35;
	color: #222;
}

.cm-proximity-nearest-hubs-results table {
	width: auto !important;
	max-width: 900px !important;
/*	table-layout: auto;*/
	font-size: 14px;
	border-collapse: separate;
	border-spacing: 0;
}

.cm-proximity-nearest-hubs-results thead th {
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.2px;
	white-space: nowrap;
	padding: 8px 6px;
}

.cm-proximity-nearest-hubs-results tbody td {
	padding: 8px 6px;
	vertical-align: top;
}

.cm-proximity-nearest-hubs-results thead th + th,
.cm-proximity-nearest-hubs-results tbody td + td {
	padding-left: 6px;
	padding-right: 6px;
}

.cm-proximity-nearest-hubs-results tbody tr:hover td {
	background: #fcfcfc;
}

.cm-proximity-nearest-hubs-results table {
	width: 100%;
	table-layout: fixed;
}

.cm-proximity-nearest-hubs-results th:nth-child(1),
.cm-proximity-nearest-hubs-results td:nth-child(1) {
	width: 42%;
}

.cm-proximity-nearest-hubs-results th:nth-child(2),
.cm-proximity-nearest-hubs-results td:nth-child(2) {
	width: 18%;
}

.cm-proximity-nearest-hubs-results th:nth-child(3),
.cm-proximity-nearest-hubs-results td:nth-child(3) {
	width: 22%;
}

.cm-proximity-nearest-hubs-results th:nth-child(4),
.cm-proximity-nearest-hubs-results td:nth-child(4) {
	width: 18%;
	white-space: nowrap;
}

@media (max-width: 700px) {
	.cm-proximity-nearest-hubs-results {
		padding: 10px;
	}

	.cm-proximity-nearest-hubs-results table {
		font-size: 13px;
	}

	.cm-proximity-nearest-hubs-results thead th,
	.cm-proximity-nearest-hubs-results tbody td {
		padding: 8px 10px;
	}
}

.cm-proximity-rebuild-warning {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.35rem 0.6rem;
	margin: 0 0 1rem;
	padding: 0.75rem 0.9rem;
	border: 1px solid #d63638;
	border-left-width: 5px;
	border-radius: 4px;
	background: #fbeaea;
	color: #3c434a;
	font-size: 0.9rem;
	line-height: 1.4;
}

.cm-proximity-rebuild-warning strong:first-child {
	color: #8a1f21;
}



/************************************************************/
/*  NEW FORM STYLING - CROSSMEMBER FLASH OF ORANGE ON FORM  */
/************************************************************/
/* Crossmember brand flash */
.cm-form-flash,
.cm-form-flash--compact {
	position: relative;
	overflow: hidden;
}

.cm-form-flash[hidden],
.cm-form-flash--compact[hidden] {
	display: none;
}

.cm-form-flash::before,
.cm-form-flash--compact::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	background: #bf411e;
	clip-path: polygon(0 0, 38% 0, 76% 100%, 38% 100%);
	opacity: 0.5;
	pointer-events: none;
}

.cm-form-flash::before {
	width: 15em;
	height: 4.5em;
}

.cm-form-flash--compact::before {
	width: 10em;
	height: 3em;
}

.cm-form-flash > *,
.cm-form-flash--compact > * {
	position: relative;
	z-index: 1;
}

