/**
 * PMPro on the civic public face. Cards, tables, forms, login, checkout.
 * Levels page uses body.pmpro-levels (no body.pmpro). Target both.
 */

:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_card,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_section,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_login_wrap {
	background: #141a18;
	border: 1px solid #2a3832;
	border-radius: 0;
	color: #e4e0d4;
	box-shadow: none;
}

:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_card_title,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_font-large,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_level_name_text,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) h2.pmpro_card_title {
	color: #e4e0d4;
	font-family: "IBM Plex Sans", system-ui, sans-serif;
	font-weight: 500;
}

:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_card_content,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_card_content p,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_section_content {
	color: #b7b3a8;
}

:is(body.pmpro, body.pmpro-levels) .pmpro_table,
:is(body.pmpro, body.pmpro-levels) .pmpro_levels_table {
	width: 100%;
	border-collapse: collapse;
	color: #e4e0d4;
}

:is(body.pmpro, body.pmpro-levels) .pmpro_table th,
:is(body.pmpro, body.pmpro-levels) .pmpro_table td {
	border-bottom: 1px solid #2a3832;
	padding: 0.75rem 0.6rem;
	background: transparent;
	color: #e4e0d4;
}

:is(body.pmpro, body.pmpro-levels) .pmpro_table thead th {
	font-family: "IBM Plex Mono", ui-monospace, monospace;
	font-size: 0.72rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #a7c4b5;
	font-weight: 500;
}

:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_btn,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_btn-select,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_btn-submit,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_btn-submit-checkout,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) input[type="submit"].pmpro_btn {
	background: #a7c4b5 !important;
	color: #0e1412 !important;
	border: 1px solid #8fb8a4 !important;
	border-radius: 2px !important;
	font-weight: 600 !important;
	box-shadow: none !important;
}

:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_btn:hover,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_btn-select:hover,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) input[type="submit"].pmpro_btn:hover {
	background: #c5ddd0 !important;
	color: #0e1412 !important;
}

:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_btn-plain,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) a.pmpro_btn-plain {
	background: transparent !important;
	color: #a7c4b5 !important;
	border-color: #2a3832 !important;
}

:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) input[type="text"],
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) input[type="email"],
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) input[type="password"],
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) input[type="tel"],
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) select,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) textarea {
	background: #0e1412;
	color: #e4e0d4;
	border: 1px solid #2a3832;
	border-radius: 2px;
}

:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) input:focus,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) select:focus,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) textarea:focus {
	outline: 2px solid #a7c4b5;
	outline-offset: 1px;
	border-color: #a7c4b5;
}

:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) label,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_form_label {
	color: #e4e0d4;
}

:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_form_hint,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .pmpro_asterisk,
:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) .lite {
	color: #b7b3a8;
}

:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) a:not(.pmpro_btn) {
	color: #a7c4b5;
}

:is(body.pmpro, body.pmpro-levels, body.pmpro-login, body.pmpro-checkout, body.pmpro-account) a:not(.pmpro_btn):hover {
	color: #d4c9a0;
}

body.pmpro-levels .pmpro_card_content > p:first-of-type {
	display: none !important;
}

body.col-surface-internal.pmpro .pmpro_card,
body.col-surface-internal.pmpro .pmpro_section {
	border-color: rgba(201, 162, 39, 0.28);
	background: linear-gradient(165deg, rgba(17, 20, 18, 0.95), rgba(11, 61, 46, 0.28));
}

body.col-surface-internal.pmpro .pmpro_btn,
body.col-surface-internal.pmpro input[type="submit"].pmpro_btn {
	background: #c9a227 !important;
	border-color: #c9a227 !important;
	color: #0a0c0b !important;
}
