/*
 * PowerLand Design System - RDX-09A forms and utility layer.
 * Presentation only: field names, IDs, nonces, validation, CAPTCHA and AJAX stay unchanged.
 */

body.powerland-ui-v2 :where(
	.wpqa-add-question-template,
	.wpqa-edit-question-template,
	.wpqa-add-post-template,
	.wpqa-edit-post-template,
	.wpqa-add-category-template,
	.wpqa-default-template,
	.wpqa-checkout-template,
	.wpqa-search-template,
	.page-section,
	.main-search,
	.no-results
) {
	border: 1px solid var(--pl-color-border-subtle);
	border-radius: var(--pl-radius-lg);
	color: var(--pl-color-text-primary);
	background: var(--pl-color-bg-surface);
	box-shadow: var(--pl-shadow-1);
}

body.powerland-ui-v2 :where(.page-section, .wpqa-default-template) {
	padding: var(--pl-space-6);
}

body.powerland-ui-v2 :where(.page-section, .wpqa_form) :where(.post-title-2, .section-title) {
	color: var(--pl-color-text-primary);
	font-family: var(--pl-font-family-sans);
	font-weight: var(--pl-font-weight-extra-bold);
	line-height: var(--pl-line-height-heading);
}

body.powerland-ui-v2 .wpqa_form {
	color: var(--pl-color-text-secondary);
}

body.powerland-ui-v2 .wpqa_form :where(label, .main-label) {
	color: var(--pl-color-text-primary);
	font-family: var(--pl-font-family-sans);
	font-weight: var(--pl-font-weight-bold);
	line-height: var(--pl-line-height-body);
}

body.powerland-ui-v2 .wpqa_form :where(.form-description, .wpqa_checkbox_span, .wpqa_captcha_span) {
	color: var(--pl-color-text-muted);
	line-height: var(--pl-line-height-body);
}

body.powerland-ui-v2 :where(
	.wpqa_form,
	.wpqa_textarea,
	.answers-form,
	.post-contact,
	.main-search,
	.no-results
) :where(
	input[type="text"],
	input[type="password"],
	input[type="email"],
	input[type="url"],
	input[type="search"],
	input[type="tel"],
	input[type="number"],
	input[type="date"],
	input[type="time"],
	input[type="datetime-local"],
	textarea,
	select
) {
	min-block-size: var(--pl-control-height-md);
	border: 1px solid var(--pl-color-border-subtle);
	border-radius: var(--pl-radius-md);
	color: var(--pl-color-text-primary);
	background: var(--pl-color-bg-surface);
	font-family: var(--pl-font-family-sans);
	line-height: var(--pl-line-height-body);
	transition:
		border-color var(--pl-duration-fast) var(--pl-ease-standard),
		box-shadow var(--pl-duration-fast) var(--pl-ease-standard),
		background-color var(--pl-duration-fast) var(--pl-ease-standard);
}

body.powerland-ui-v2 :where(
	.wpqa_form,
	.wpqa_textarea,
	.answers-form,
	.post-contact,
	.main-search,
	.no-results
) :where(
	input[type="text"],
	input[type="password"],
	input[type="email"],
	input[type="url"],
	input[type="search"],
	input[type="tel"],
	input[type="number"],
	input[type="date"],
	input[type="time"],
	input[type="datetime-local"],
	textarea,
	select
):hover {
	border-color: var(--pl-color-border-strong);
}

body.powerland-ui-v2 :where(
	.wpqa_form,
	.wpqa_textarea,
	.answers-form,
	.post-contact,
	.main-search,
	.no-results
) :where(
	input[type="text"],
	input[type="password"],
	input[type="email"],
	input[type="url"],
	input[type="search"],
	input[type="tel"],
	input[type="number"],
	input[type="date"],
	input[type="time"],
	input[type="datetime-local"],
	textarea,
	select
):focus {
	border-color: var(--pl-color-focus);
	outline: 0;
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--pl-color-focus) 18%, transparent);
}

body.powerland-ui-v2 :where(
	.wpqa_form,
	.wpqa_textarea,
	.answers-form,
	.post-contact
) :where(input, textarea, select)::placeholder {
	color: var(--pl-color-text-muted);
	opacity: 0.8;
}

body.powerland-ui-v2 :where(.wpqa_form, .answers-form) textarea {
	min-block-size: 9rem;
	resize: vertical;
}

body.powerland-ui-v2 .select2-container--default .select2-selection--single {
	min-block-size: var(--pl-control-height-md);
	border: 1px solid var(--pl-color-border-subtle);
	border-radius: var(--pl-radius-md);
	color: var(--pl-color-text-primary);
	background: var(--pl-color-bg-surface);
}

body.powerland-ui-v2 .select2-container--default .select2-selection--single .select2-selection__rendered {
	color: var(--pl-color-text-primary);
	line-height: var(--pl-control-height-md);
}

body.powerland-ui-v2 :where(.select2-dropdown, .select2-container--default .select2-search--dropdown .select2-search__field) {
	border-color: var(--pl-color-border-subtle);
	border-radius: var(--pl-radius-md);
	background: var(--pl-color-bg-surface);
}

body.powerland-ui-v2 .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
	color: var(--pl-color-text-on-brand);
	background: var(--pl-color-brand-primary);
}

body.powerland-ui-v2 :where(.wpqa_checkbox, .wpqa_radio) input {
	accent-color: var(--pl-color-brand-primary);
}

body.powerland-ui-v2 :where(.wpqa_checkbox_span, .wpqa_radio_p label, .rememberme) {
	color: var(--pl-color-text-secondary);
}

body.powerland-ui-v2 .wpqa_form .required {
	color: var(--pl-color-danger);
}

body.powerland-ui-v2 :where(.fileinputs, .fakefile) {
	border-radius: var(--pl-radius-md);
}

body.powerland-ui-v2 .fileinputs {
	border: 1px dashed var(--pl-color-border-strong);
	background: var(--pl-color-bg-subtle);
}

body.powerland-ui-v2 .fileinputs:focus-within {
	border-color: var(--pl-color-focus);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--pl-color-focus) 18%, transparent);
}

body.powerland-ui-v2 .fileinputs span {
	border-radius: var(--pl-radius-sm);
	color: var(--pl-color-text-on-brand);
	background: var(--pl-color-brand-primary);
}

body.powerland-ui-v2 .wp-editor-container {
	border: 1px solid var(--pl-color-border-subtle);
	border-radius: var(--pl-radius-md);
	background: var(--pl-color-bg-surface);
}

body.powerland-ui-v2 :where(.wpqa_form, .answers-form, .post-contact) :where(
	input[type="submit"],
	button[type="submit"],
	.button-default,
	.button-default-2,
	.button-default-3
) {
	min-block-size: var(--pl-control-height-md);
	border-radius: var(--pl-radius-md);
	font-family: var(--pl-font-family-sans);
	font-weight: var(--pl-font-weight-bold);
	transition:
		transform var(--pl-duration-fast) var(--pl-ease-standard),
		box-shadow var(--pl-duration-fast) var(--pl-ease-standard),
		background-color var(--pl-duration-fast) var(--pl-ease-standard);
}

body.powerland-ui-v2 :where(.wpqa_form, .answers-form, .post-contact) :where(
	input[type="submit"],
	button[type="submit"],
	.button-default,
	.button-default-2,
	.button-default-3
):hover {
	transform: translateY(-1px);
	box-shadow: var(--pl-shadow-2);
}

body.powerland-ui-v2 :where(.wpqa_form, .answers-form, .post-contact) :where(
	input[type="submit"],
	button[type="submit"],
	.button-default,
	.button-default-2,
	.button-default-3
):active {
	transform: translateY(0);
}

body.powerland-ui-v2 :where(.wpqa_error, .wpqa_success, .alert-message) {
	border: 1px solid currentColor;
	border-radius: var(--pl-radius-md);
	padding: var(--pl-space-4);
	font-weight: var(--pl-font-weight-medium);
	letter-spacing: 0;
	text-align: start;
}

body.powerland-ui-v2 .alert-message {
	color: var(--pl-color-info);
	background: color-mix(in srgb, var(--pl-color-info) 10%, var(--pl-color-bg-surface));
}

body.powerland-ui-v2 :where(.alert-message.warning) {
	color: var(--pl-color-warning);
	background: color-mix(in srgb, var(--pl-color-warning) 12%, var(--pl-color-bg-surface));
}

body.powerland-ui-v2 :where(.wpqa_success, .alert-message.success) {
	color: var(--pl-color-success);
	background: color-mix(in srgb, var(--pl-color-success) 10%, var(--pl-color-bg-surface));
}

body.powerland-ui-v2 :where(.wpqa_error, .alert-message.error) {
	color: var(--pl-color-danger);
	background: color-mix(in srgb, var(--pl-color-danger) 10%, var(--pl-color-bg-surface));
}

body.powerland-ui-v2 :where(.wpqa_error, .wpqa_success, .alert-message) :where(p, a, i) {
	color: inherit;
}

body.powerland-ui-v2 .accordion .accordion-content {
	overflow: hidden;
	border: 1px solid var(--pl-color-border-subtle);
	border-radius: var(--pl-radius-md);
	padding: 0;
	background: var(--pl-color-bg-surface);
	box-shadow: var(--pl-shadow-0);
}

body.powerland-ui-v2 .accordion .accordion-title {
	min-block-size: var(--pl-control-height-lg);
	margin: 0;
	padding-block: var(--pl-space-4);
	padding-inline: var(--pl-space-5);
	color: var(--pl-color-text-primary);
	font-size: var(--pl-font-size-300);
	font-weight: var(--pl-font-weight-bold);
	line-height: var(--pl-line-height-heading);
}

body.powerland-ui-v2 .accordion .accordion-title:hover {
	color: var(--pl-color-link-hover);
	background: var(--pl-color-bg-subtle);
}

body.powerland-ui-v2 .accordion .accordion-title i {
	border-radius: var(--pl-radius-pill);
	color: var(--pl-color-brand-primary);
	background: color-mix(in srgb, var(--pl-color-brand-primary) 10%, transparent);
}

body.powerland-ui-v2 .accordion .accordion-inner {
	margin: 0;
	border-block-start: 1px solid var(--pl-color-border-subtle);
	padding-block: var(--pl-space-4) var(--pl-space-5);
	padding-inline: var(--pl-space-5);
	color: var(--pl-color-text-secondary);
	font-size: var(--pl-font-size-300);
	line-height: var(--pl-line-height-body);
}

body.powerland-ui-v2 .main-search {
	padding: var(--pl-space-5);
}

body.powerland-ui-v2 .main-search :where(input[type="search"], input[type="text"]) {
	inline-size: 100%;
}

body.powerland-ui-v2 .main-search div.search-results {
	overflow: hidden;
	border: 1px solid var(--pl-color-border-subtle);
	border-radius: var(--pl-radius-md);
	background: var(--pl-color-bg-surface);
	box-shadow: var(--pl-shadow-3);
}

body.powerland-ui-v2 .no-results {
	padding-block: clamp(var(--pl-space-10), 8vw, var(--pl-space-20));
	padding-inline: var(--pl-space-6);
	text-align: center;
}

body.powerland-ui-v2 .no-results > h2 {
	margin-block-end: var(--pl-space-5);
	color: var(--pl-color-brand-primary);
	font-size: clamp(var(--pl-font-size-800), 18vw, 10rem);
	line-height: 0.9;
}

body.powerland-ui-v2 .no-results > h3 {
	color: var(--pl-color-text-primary);
	font-size: clamp(var(--pl-font-size-500), 4vw, var(--pl-font-size-700));
	line-height: var(--pl-line-height-heading);
}

body.powerland-ui-v2 .no-results p {
	color: var(--pl-color-text-secondary);
	line-height: var(--pl-line-height-body);
}

body.powerland-ui-v2 .discy-login-wrap .login-forms-col :where(.panel-login, .panel-signup, .panel-password),
body.powerland-ui-v2 :where(.wpqa-login-template, .wpqa-signup-template, .wpqa-lost-password-template) {
	border: 1px solid var(--pl-color-border-subtle);
	border-radius: var(--pl-radius-xl);
	padding: var(--pl-space-6);
	color: var(--pl-color-text-primary);
	background: var(--pl-color-bg-surface);
	box-shadow: var(--pl-shadow-3);
}

body.powerland-ui-v2 .discy-login-wrap .login-text-col :where(h1, h2, h3) {
	color: var(--pl-color-text-on-brand);
	font-family: var(--pl-font-family-sans);
	font-size: clamp(var(--pl-font-size-700), 5vw, var(--pl-font-size-display));
	font-weight: var(--pl-font-weight-extra-bold);
	line-height: var(--pl-line-height-heading);
}

body.powerland-ui-v2 .discy-login-wrap .login-text-col p {
	color: color-mix(in srgb, var(--pl-color-text-on-brand) 82%, transparent);
	font-size: var(--pl-font-size-300);
	line-height: var(--pl-line-height-body);
}

body.powerland-ui-v2 .panel-pop {
	border: 1px solid var(--pl-color-border-subtle);
	border-radius: var(--pl-radius-xl);
	color: var(--pl-color-text-primary);
	background: var(--pl-color-bg-surface);
	box-shadow: var(--pl-shadow-3);
}

body.powerland-ui-v2 :where(.pop-header, .pop-footer) {
	border-color: var(--pl-color-border-subtle);
}

body.powerland-ui-v2 .pop-header {
	color: var(--pl-color-text-on-brand);
	background: var(--pl-color-brand-ink);
}

body.powerland-ui-v2 :where(.lost-password, .lost-password-login, .wpqa-login-already a) {
	color: var(--pl-color-link);
}

body.powerland-ui-v2 :where(.lost-password, .lost-password-login, .wpqa-login-already a):hover {
	color: var(--pl-color-link-hover);
}

@media (max-width: 767px) {
	body.powerland-ui-v2 :where(.page-section, .wpqa-default-template, .main-search, .no-results) {
		border-radius: var(--pl-radius-md);
		padding: var(--pl-space-4);
	}

	body.powerland-ui-v2 .discy-login-wrap .login-forms-col :where(.panel-login, .panel-signup, .panel-password),
	body.powerland-ui-v2 :where(.wpqa-login-template, .wpqa-signup-template, .wpqa-lost-password-template) {
		border-radius: var(--pl-radius-lg);
		padding: var(--pl-space-5);
	}

	body.powerland-ui-v2 .no-results input {
		inline-size: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.powerland-ui-v2 :where(.wpqa_form, .answers-form, .post-contact) :where(
		input[type="submit"],
		button[type="submit"],
		.button-default,
		.button-default-2,
		.button-default-3
	) {
		transition: none;
	}

	body.powerland-ui-v2 :where(.wpqa_form, .answers-form, .post-contact) :where(
		input[type="submit"],
		button[type="submit"],
		.button-default,
		.button-default-2,
		.button-default-3
	):hover {
		transform: none;
	}
}
