/* LearnDash specific styles for Memberzone context */
.learndash-wrapper .ld-item-list.ld-lesson-list {
	margin-top: 0;
}

.ld-lesson-section-heading {
	white-space: normal;
}

.ld-item-title {
	white-space: normal;
}

.ld-item-active-container .ld-item-name,
.ld-item-active-container .ld-item-title,
.ld-item-active-container .ld-topic-title {
	font-weight: 600 !important;
}

:root {
	--learndash-accent-color: black;
}

/**
* Remove inner row padding, we have bm-row set on the learndash wrapper
*/
.learndash-wrapper .bm-row {
	padding: 0;
}

/** Misc typography */
.learndash-wrapper p {
	font-size: 1.25rem;
	line-height: 1.1.
}

.learndash-wrapper label {
	font-size: 1.125rem;
	line-height: 1.1;
}

/**
* Question seperator/spacing styles
*/

/** This is the wrapper around all the questions */
.learndash-wrapper .wpProQuiz_content ol.wpProQuiz_list {
	margin-top: 25px;
	margin-bottom: 50px;
}

/** Reset spacing to 0, we will control spacing outselves */
.learndash-wrapper .wpProQuiz_content .wpProQuiz_question {
	margin: 0 !important;
	padding: 0 !important;
}

.wpProQuiz_questionListItem:last-child {
	margin-bottom: 0 !important;
}

.wpProQuiz_list div:empty {
	display: none;
	/** Hide empty div with 20px margin*/
}

/**Define space between questions */
.wpProQuiz_list li.wpProQuiz_listItem {
	border-top: 1px black solid;
}

.wpProQuiz_list li.wpProQuiz_listItem:first-child {
	border-top: unset;
	padding-top: 0;
}

.wpProQuiz_list li.wpProQuiz_listItem {
	padding-bottom: 24px;
	padding-top: 30px;
}


.wpProQuiz_question_text {
	margin-bottom: 8px;
}

.wpProQuiz_question_text> :first-child {
	margin-top: 0;
}

body .learndash-wrapper .wpProQuiz_content .wpProQuiz_header {
	font-size: 20px;
	font-weight: 400;
}

/**
 * Assessment question (Likert scale) radio styles
 * This adds custom radio styles and a line between each item
 */
.wpProQuiz_listItem[data-type="assessment_answer"] {
	label {
		flex-direction: column;
		gap: 20px;
	}
}


body .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionList[data-type=assessment_answer] .wpProQuiz_questionListItem {
	padding-left: 0;
	padding-right: 0;
}

.wpProQuiz_listItem[data-type="assessment_answer"] label {
	padding-top: 40px;
	flex: 1;
	position: relative;
}

.wpProQuiz_listItem[data-type="assessment_answer"] label::before {
	content: "";
	display: block;
	width: 53px;
	height: 53px;
	min-width: 53px;
	border-radius: 50%;
	border: 3px solid #000;
	margin-top: 5px;
	/** Override styles added on view questions */
	left: unset!important;
	transform: unset!important;
	position: relative!important;
	margin-left: 0!important;
}

.wpProQuiz_listItem[data-type="assessment_answer"] label:has(input:checked)::before {
	border-color: var(--learndash-accent-color);
	background: radial-gradient(circle at center, var(--learndash-accent-color) 25%, transparent 26%);
}



.wpProQuiz_listItem[data-type="assessment_answer"] label:last-child::after {
	content: unset;
}

.wpProQuiz_listItem[data-type="assessment_answer"] input[type="radio"] {
	opacity: 0;
	position: absolute;
}

body .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionList[data-type=assessment_answer] label span {
	font-weight: 400;
}

.wpProQuiz_listItem[data-type="assessment_answer"] label:has(input:focus) span,
.wpProQuiz_listItem[data-type="assessment_answer"] label:has(input:checked) span {
	font-weight: 600 !important;
}

body .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionList[data-type=assessment_answer] label {
	flex-direction: row;
	margin-bottom: 42px;
}

body .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionList[data-type=assessment_answer] .wpProQuiz_questionListItem p {
	display: flex;
	flex-direction: column;
}

.wpProQuiz_listItem[data-type="assessment_answer"] label::after {
	content: "";
	display: block;
	width: 4px;
	height: 48px;
	background: black;
	position: absolute;
	top: 100%;
	left: 25px;
}

/* Hide the empty action item when we've added a last step button so flex items are centered correctly */
.ld-content-action.ld-empty:has(+ .ld-content-action.ld-content-action--last-step) {
	display: none;
}

@media (min-width: 767px) {
	.wpProQuiz_listItem[data-type="assessment_answer"] label::after {
		content: "";
		display: block;
		width: calc(100% - 19px);
		height: 4px;
		background: black;
		position: absolute;
		top: -44px;
		left: calc(50% + 14px);
	}

	body .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionList[data-type=assessment_answer] label {
		flex-direction: column;
		margin-bottom: 0;
	}

	.wpProQuiz_listItem[data-type="assessment_answer"] label::before {
		position: absolute!important;
		top: -60px!important;/** Override default LD*/
		width: 28px;
		height: 28px;
		min-width: unset;
	}

	body .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionList[data-type=assessment_answer] .wpProQuiz_questionListItem p {
		width: 100%;
		flex-direction: row;
		justify-content: space-between;
		padding-top: 50px;
		padding-left: 0;
		padding-right: 0;
	}

	body .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionList[data-type=assessment_answer] label span {
		max-width: 125px;
		/** This a magic number, chosen to wrap the neither agree or disagree option */
	}

	.wpProQuiz_listItem[data-type="assessment_answer"] label {
		text-align: center;
		text-wrap: balance;
	}
}

/**
 * End Assessment answer styles
 */

/**
 * Single answer styles
 */
.wpProQuiz_listItem[data-type="single"] input[type="radio"] {
	position: absolute;
	opacity: 0;
}

.wpProQuiz_listItem[data-type="single"] label {
	padding-left: 62px !important;
}

.wpProQuiz_listItem[data-type="single"] label::before {
	content: ""!important;
	border: 4px solid black;
	height: 38px;
	width: 38px;
	border-radius: 50%;
	position: absolute;
	display: block;
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
}

.wpProQuiz_listItem[data-type="single"] label:has(input:checked)::after {
	content: "";
	background-color: black;
	height: 12px;
	width: 12px;
	border-radius: 50%;
}

.wpProQuiz_listItem[data-type="single"] label:has(input:checked)::before {
	border-color: var(--learndash-accent-color);
	background: radial-gradient(circle at center, var(--learndash-accent-color) 25%, transparent 26%);
}


/**
 * Multiple answer styles
 */
.wpProQuiz_listItem[data-type="multiple"] input[type="checkbox"] {
	position: absolute;
	opacity: 0;
}

.wpProQuiz_listItem[data-type="multiple"] label {
	padding-left: 62px !important;
}

.wpProQuiz_listItem[data-type="multiple"] label::before {
	content: ""!important;
	border: 4px solid black;
	height: 35px;
	width: 35px;
	position: absolute;
	display: block;
	top: 50%;
	transform: translateY(-50%);
	left: 10px!important;
	margin-left: 0 !important;
}

.wpProQuiz_listItem[data-type="multiple"] label:has(input:checked)::before {
	border-color: var(--learndash-accent-color);
}

.wpProQuiz_listItem[data-type="multiple"] label:has(input:checked)::after {
	content: "";
	position: absolute;
	width: 11px;
	height: 20px;
	border: solid var(--learndash-accent-color);
	border-width: 0 4px 4px 0;
	transform: rotate(45deg) translateY(-50%);
	top: calc(50% - 5px);
	left: 15px;
}

/**
 * Sort answer styles
 */
.wpProQuiz_listItem[data-type="sort_answer"] .ld-sortable__item--sort_answer {
	background-color: #D9D9D9;
	border: unset;
	margin-bottom: 26px;
}

.wpProQuiz_listItem[data-type="sort_answer"] .ld-sortable__item--sort_answer:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}

.wpProQuiz_listItem[data-type="sort_answer"] .ld-sortable__item--sort_answer.gu-transit,
.wpProQuiz_listItem[data-type="sort_answer"] .ld-sortable__item--sort_answer:focus-within {
	background: var(--learndash-accent-color);
}

body .wpProQuiz_listItem[data-type="sort_answer"] .ld-sortable__item--sort_answer svg {
	height: 30px;
}

body .wpProQuiz_listItem[data-type="sort_answer"] .wpProQuiz_sortable {
	padding-top: 6px;
	padding-bottom: 6px;
}

/** This covers the drag-n-drop SVG and the up/down arrows */
.wpProQuiz_listItem[data-type="sort_answer"] .ld-sortable__item--sort_answer svg {
	background: none !important;
}

body .ld-sortable__item--sort_answer .ld-sortable__item-move-container {
	padding: 0;
}

/** 
* Target touch only devices to hide the drag and drop handle, as it doesn't work well/at all
*
* Hover none : The hover CSS media feature can be used to test whether the user's primary input mechanism can hover over elements.
* Pointer coarse : The primary input is a pointing device of limited accuracy, such as a finger on a touchscreen. 
*/
@media (hover: none) and (pointer: coarse) {
    .ld-sortable__item--sort_answer .ld-sortable__item-handle .ld-svgicon__drag{
		display: none!important;
	}
}

/** If a quiz has autostart, hide this button to prevent it briefly appearing */
.bm-ld-quiz-autostart-enabled input.wpProQuiz_button[name="startQuiz"] {
	display: none !important;
}

body .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label.is-selected,
.learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) label:focus-within {
	border-color: transparent;
}

/**
* Button styles
*/
body .learndash-wrapper .wpProQuiz_content .wpProQuiz_button {
	font-size: 1.125rem;
	margin-top: 40px;
	text-align: center;
}

/**
* Hide empty breadcrumb list
*/
ol.ld-breadcrumbs-segments:empty {
	display: none!important;
}

/**
* Underline links in LearnDash wrappers
*/
.learndash-wrapper:not(.ld-registration__outer-wrapper):not(.learndash-wrapper--modern) .bm-row a:not(.button):not(.screen-reader-shortcut) {
    text-decoration: underline;
}

/** Move labels for correct/incorrect to center */
body .learndash-wrapper .wpProQuiz_content .wpProQuiz_questionListItem:not(.ld-sortable__item) .ld-quiz-question-item__status {
	top: 26px;
}

/** Style toggle tabs (student/correct) on sort questions */
.wpProQuiz_content li.wpProQuiz_listItem div.wpProQuiz_questionList_containers input {
    background-color: #3A5F60;
}
.wpProQuiz_content li.wpProQuiz_listItem div.wpProQuiz_questionList_containers input:hover,
.wpProQuiz_content li.wpProQuiz_listItem div.wpProQuiz_questionList_containers input:focus{
	background-color: color-mix(in hsl, #3A5F60 95%, black 5%);
}

/** Set sort questions to be same height as question (height depends on icon) and ensure both student/correct have the same height */
.wpProQuiz_questionListItem.ld-sortable__item.ld-sortable__item--sort_answer.ui-sortable-handle.wpProQuiz_answerIncorrect {
    min-height: 62px;
}
.wpProQuiz_questionListItem.ld-sortable__item.ld-sortable__item--sort_answer.ui-sortable-handle.wpProQuiz_answerCorrect {
    min-height: 62px;
}
/** Center label on resized sort questions */
.ld-sortable__item-status-container {
    margin-top: 20px !important;
}