/**
 * Zakuplaner GUS Brand Layer
 *
 * Aligns registration-related custom views with WoodMart storefront design.
 */

:root {
	--zkg-primary: rgb(34, 41, 54);
	--zkg-primary-hover: rgb(25, 30, 40);
	--zkg-secondary: rgb(232, 60, 117);
	--zkg-secondary-hover: rgb(206, 41, 96);
	--zkg-title: var(--wd-title-color, #1f2937);
	--zkg-text: var(--wd-text-color, #6b7280);
	--zkg-border: var(--wd-border-color, #e5e7eb);
	--zkg-bg: var(--wd-body-bg, #f8fafc);
	--zkg-surface: #ffffff;
	--zkg-radius: 12px;
	--zkg-radius-sm: 8px;
	--zkg-font: var(--wd-text-font, inherit);
	--zkg-button-radius: 5px;
	--zkg-button-font: "Exo 2", sans-serif;
}

.zakuplaner-registration-form,
.zakuplaner-tr {
	font-family: var(--zkg-font);
	color: var(--zkg-title);
}

.zakuplaner-registration-form,
.zakuplaner-tr__card {
	border: 1px solid var(--zkg-border);
	border-radius: var(--zkg-radius);
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.07);
}

.zakuplaner-registration-form h2,
.zakuplaner-tr__title,
.zakuplaner-tr-step-title {
	color: var(--zkg-title);
}

.zakuplaner-tr__subtitle,
.zakuplaner-tr__footer,
.zakuplaner-tr__privacy,
.zakuplaner-tr-facility-label {
	color: var(--zkg-text);
}

.zakuplaner-registration-form .input-text,
.zakuplaner-tr-input {
	border-color: var(--zkg-border);
	border-radius: var(--zkg-radius-sm);
}

.zakuplaner-registration-form .input-text:focus,
.zakuplaner-tr-input:focus {
	border-color: var(--zkg-primary);
	box-shadow: 0 0 0 2px color-mix(in srgb, var(--zkg-primary) 16%, #ffffff);
	outline: none;
}

.btn-register,
.zakuplaner-tr-button,
.zakuplaner-registration-form .button,
.zakuplaner-registration-form .generate-password-btn {
	border-radius: var(--zkg-button-radius) !important;
	font-family: var(--zkg-button-font) !important;
}

.btn-register,
.zakuplaner-tr-button.button-primary,
.zakuplaner-registration-form .button.button-primary {
	background: var(--zkg-secondary) !important;
	border-color: var(--zkg-secondary) !important;
	color: #ffffff !important;
	font-weight: 700 !important;
}

.btn-register:hover,
.zakuplaner-tr-button.button-primary:hover,
.zakuplaner-registration-form .button.button-primary:hover {
	background: var(--zkg-secondary-hover) !important;
	border-color: var(--zkg-secondary-hover) !important;
}

.zakuplaner-tr-button--secondary,
.zakuplaner-registration-form .button:not(.button-primary),
.zakuplaner-registration-form .generate-password-btn {
	background: var(--zkg-primary) !important;
	border-color: var(--zkg-primary) !important;
	color: #ffffff !important;
	font-weight: 700 !important;
}

.zakuplaner-tr-button--secondary:hover,
.zakuplaner-registration-form .button:not(.button-primary):hover,
.zakuplaner-registration-form .generate-password-btn:hover {
	background: var(--zkg-primary-hover) !important;
	border-color: var(--zkg-primary-hover) !important;
	color: #ffffff !important;
}

.registration-error,
.zakuplaner-tr-message.is-error {
	border-radius: var(--zkg-radius-sm);
}

.registration-success,
.zakuplaner-tr-message.is-success {
	border-radius: var(--zkg-radius-sm);
}

/* Account details grouping (organ vs placowka). */
.zakuplaner-account-form .zakuplaner-account-form-group {
	margin: 0 0 24px;
	padding: 16px 18px;
	border: 1px solid var(--zkg-border);
	border-radius: var(--zkg-radius-sm);
	background: #ffffff;
}

.zakuplaner-account-form .zakuplaner-account-form-group h3 {
	margin: 0 0 12px;
	font-size: 1.05rem;
	color: var(--zkg-title);
}
