.lcs-cr-form-wrap {
	--lcs-cr-accent: var(--e-global-color-primary, #1f5f8b);
	--lcs-cr-accent-contrast: #fff;
	--lcs-cr-surface: #171d26;
	--lcs-cr-surface-raised: #202936;
	--lcs-cr-field-background: #10161e;
	--lcs-cr-border: #384454;
	--lcs-cr-text: #f4f7fb;
	--lcs-cr-muted: #aab4c3;
	--lcs-cr-error: #ffb4bb;
	--lcs-cr-success: #86efac;
	background: var(--lcs-cr-surface);
	border: 1px solid var(--lcs-cr-border);
	border-radius: 10px;
	color: var(--lcs-cr-text);
	font: inherit;
	padding: clamp(1rem, 3vw, 2rem);
}

.lcs-cr-form { display: grid; gap: 1rem; }
.lcs-cr-grid { display: grid; gap: 1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.lcs-cr-form label { color: var(--lcs-cr-text); display: grid; font-weight: 600; gap: .4rem; }
.lcs-cr-form label > span[aria-hidden="true"] { color: #ff7b72; }

.lcs-cr-form input,
.lcs-cr-form textarea,
.lcs-cr-form select {
	background: var(--lcs-cr-field-background);
	border: 1px solid var(--lcs-cr-border);
	border-radius: 6px;
	color: var(--lcs-cr-text);
	font: inherit;
	min-height: 44px;
	padding: .75rem;
	transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
	width: 100%;
}

.lcs-cr-form textarea { min-height: 84px; resize: vertical; }
.lcs-cr-form input::placeholder,
.lcs-cr-form textarea::placeholder { color: var(--lcs-cr-muted); opacity: .8; }
.lcs-cr-form input:hover,
.lcs-cr-form textarea:hover,
.lcs-cr-form select:hover { border-color: #536377; }
.lcs-cr-form input:focus,
.lcs-cr-form textarea:focus,
.lcs-cr-form select:focus { border-color: var(--lcs-cr-accent); box-shadow: 0 0 0 2px color-mix(in srgb, var(--lcs-cr-accent) 35%, transparent); outline: 0; }

.lcs-cr-consent {
	align-items: flex-start;
	background: var(--lcs-cr-field-background);
	border: 1px solid var(--lcs-cr-border);
	border-radius: 7px;
	cursor: pointer;
	display: flex !important;
	font-weight: 400 !important;
	gap: .7rem !important;
	line-height: 1.45;
	padding: .8rem .9rem;
	transition: border-color .15s ease, background-color .15s ease;
}

.lcs-cr-consent:hover { background: var(--lcs-cr-surface-raised); border-color: #536377; }
.lcs-cr-consent:focus-within { border-color: var(--lcs-cr-accent); box-shadow: 0 0 0 2px color-mix(in srgb, var(--lcs-cr-accent) 35%, transparent); }
.lcs-cr-consent input[type="checkbox"] { accent-color: var(--lcs-cr-accent); cursor: pointer; flex: 0 0 auto; height: 20px; margin: .05rem 0 0; min-height: 0; padding: 0; width: 20px; }
.lcs-cr-consent a { color: #69b7ff; font-weight: 700; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.lcs-cr-consent a:hover,
.lcs-cr-consent a:focus { color: #a8d6ff; }

.lcs-cr-submit {
	background: var(--lcs-cr-accent);
	border: 0;
	border-radius: 6px;
	color: var(--lcs-cr-accent-contrast);
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	justify-self: start;
	padding: .8rem 1.3rem;
	transition: filter .15s ease, transform .15s ease;
}

.lcs-cr-submit:hover,
.lcs-cr-submit:focus { filter: brightness(1.15); }
.lcs-cr-submit:active { transform: translateY(1px); }
.lcs-cr-submit[disabled] { cursor: wait; opacity: .65; }

.lcs-cr-availability,
.lcs-cr-notice { background: var(--lcs-cr-surface-raised); border: 1px solid var(--lcs-cr-border); border-radius: 7px; color: var(--lcs-cr-muted); margin: 0 0 1rem; padding: .85rem 1rem; }
.lcs-cr-success { background: #123522; border-color: #267a4a; color: var(--lcs-cr-success); }
.lcs-cr-error { background: #3a171b; border-color: #8f353d; color: var(--lcs-cr-error); }
.lcs-cr-honeypot { height: 1px !important; left: -10000px !important; overflow: hidden !important; position: absolute !important; width: 1px !important; }

@media (max-width: 640px) {
	.lcs-cr-grid { grid-template-columns: 1fr; }
	.lcs-cr-form-wrap { padding: 1rem; }
	.lcs-cr-submit { width: 100%; }
}
