.finka-verification-page {
	margin: 0;
	background: #f6f6f4;
}

.finka-verification-page h1 {
	font-size: clamp(26px, 5vw, 38px);
	line-height: 1.16;
	margin: 0 0 20px;
}

.finka-verification-page .finka-status-body { text-align: left; }
body.finka-verification-page .finka-registration-card { max-width: 680px; }
body.finka-verification-page .finka-status-body { text-align: left; padding: clamp(24px, 5vw, 40px); }
body.finka-verification-page .finka-status-body p { max-width: none; }
body.finka-verification-page summary { cursor: pointer; padding: 10px 0; min-height: 44px; }
.finka-verification-page .finka-field { margin: 20px 0; }
.finka-verification-page [hidden] { display: none !important; }
.finka-verification-resend {
	border-top: 1px solid var(--finka-line);
	margin-top: 28px;
	padding-top: 20px;
}
.finka-verification-resend summary { cursor: pointer; min-height: 44px; }
.finka-verification-return { margin-top: 24px; }
.finka-privacy-note { font-size: 13px; line-height: 1.5; margin: 8px 0 20px; }

.finka-registration-shell {
	background: #f6f6f4;
	color: var(--finka-ink);
	font-family: var(--finka-font-body, system-ui, -apple-system, "Segoe UI", sans-serif);
	padding: clamp(24px, 6vw, 72px) 16px;
}

.finka-registration-brand {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .04em;
	margin: 0 0 6px;
}

.finka-registration-card {
	background: #fff;
	border: 1px solid var(--finka-line);
	border-radius: 12px;
	box-shadow: 0 18px 48px rgba(25, 27, 31, .07);
	margin: 0 auto;
	max-width: 760px;
	overflow: hidden;
}

.finka-panel-header {
	align-items: center;
	border-bottom: 1px solid #ececef;
	display: grid;
	font-size: 17px;
	font-weight: 700;
	gap: 12px;
	grid-template-columns: auto 1fr auto;
	padding: 16px 20px;
}

.finka-screen-number {
	align-items: center;
	background: var(--finka-red);
	border-radius: 7px;
	color: #fff;
	display: inline-flex;
	font-size: 14px;
	height: 32px;
	justify-content: center;
	width: 32px;
}

.finka-panel-icon {
	fill: none;
	height: 22px;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.8;
	width: 22px;
}

.finka-auth-body {
	padding: clamp(28px, 5vw, 48px);
}

.finka-registration-card h2 {
	font-size: clamp(26px, 4vw, 38px);
	line-height: 1.12;
	margin: 0 0 14px;
}

.finka-registration-eyebrow,
.finka-status-badge {
	color: var(--finka-red);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	margin: 0 0 10px;
	text-transform: uppercase;
}

.finka-registration-eyebrow {
	margin-bottom: 8px;
}

.finka-registration-intro,
.finka-status-note,
.finka-password-hint,
.finka-login-link {
	color: var(--finka-muted);
}

.finka-form-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 28px;
}

.finka-field {
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.finka-field label {
	font-size: 14px;
	font-weight: 700;
}

.finka-field input {
	background: #fff;
	border: 1px solid #c9cbd0;
	border-radius: 6px;
	box-sizing: border-box;
	color: var(--finka-ink);
	font: inherit;
	min-height: 44px;
	padding: 10px 12px;
	width: 100%;
}

.finka-field input[aria-invalid="true"] {
	border-color: var(--finka-red);
}

.finka-field-error {
	color: #9c171c;
	font-size: 13px;
	line-height: 1.35;
}

.finka-field input:focus,
.finka-consent input:focus,
.finka-primary-button:focus,
.finka-registration-card a:focus {
	outline: 3px solid var(--finka-focus);
	outline-offset: 2px;
}

.finka-consent {
	align-items: flex-start;
	display: flex;
	font-size: 14px;
	gap: 10px;
	line-height: 1.45;
	margin: 22px 0;
}

.finka-consent input {
	margin-top: 3px;
}

.finka-registration-card a {
	color: var(--finka-red-dark);
}

.finka-primary-button {
	background: var(--finka-red);
	border: 0;
	border-radius: 6px;
	box-sizing: border-box;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: 16px;
	font-weight: 700;
	min-height: 48px;
	padding: 13px 24px;
	text-align: center;
	text-decoration: none;
	width: 100%;
}

.finka-primary-button:hover {
	background: var(--finka-red-dark);
	color: #fff;
}

.finka-form-alert {
	background: #fff2f2;
	border-left: 4px solid var(--finka-red);
	border-radius: 4px;
	margin: 20px 0;
	padding: 14px 16px;
}

.finka-form-alert ul {
	margin-bottom: 0;
}

.finka-status-card {
	max-width: 620px;
}

.finka-status-body {
	padding: clamp(36px, 7vw, 64px) clamp(24px, 6vw, 56px);
	text-align: center;
}

.finka-status-mark {
	align-items: center;
	background: #fff0f0;
	border-radius: 50%;
	color: var(--finka-red);
	display: inline-flex;
	font-size: 30px;
	font-weight: 700;
	height: 64px;
	justify-content: center;
	margin-bottom: 18px;
	width: 64px;
}

.finka-status-card .finka-button-link {
	margin-top: 20px;
	max-width: 320px;
}

.finka-access-shell .finka-status-body {
	min-height: 180px;
}

.finka-access-success h2 {
	color: #18854b;
}

.finka-access-pending h2 {
	color: #a45b00;
}

.finka-access-denied h2 {
	color: var(--finka-red-dark);
}

.finka-learning-card {
	max-width: 860px;
}

.finka-learning-body {
	padding: clamp(24px, 5vw, 48px);
}

.finka-learning-eyebrow,
.finka-shared-badge {
	color: var(--finka-red);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.finka-direction-grid {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
	margin: 24px 0;
}

.finka-direction-card,
.finka-shared-lesson {
	background: #fff;
	border: 1px solid #e4e6eb;
	border-radius: 10px;
	padding: 20px;
}

.finka-direction-card h3,
.finka-shared-lesson h3 {
	margin: 0 0 6px;
}

.finka-direction-card p,
.finka-shared-lesson p {
	color: #687080;
	margin: 0;
}

.finka-direction-locked {
	background: #f7f7f8;
}

.finka-direction-available,
.finka-shared-completed {
	border-color: #b8dfc8;
}

.finka-shared-required {
	border-left: 4px solid var(--finka-red);
}

.finka-registration-card :focus-visible {
	outline: 3px solid var(--finka-focus);
	outline-offset: 3px;
}

@media (max-width: 640px) {
	.finka-form-grid {
		grid-template-columns: 1fr;
	}

	.finka-registration-card {
		border-radius: 8px;
	}

	.finka-auth-body {
		padding: 26px 18px;
	}

	.finka-panel-header {
		font-size: 15px;
		padding: 14px 16px;
	}
}

.finka-registration-shell .finka-form-group{min-width:0;border:0;border-top:1px solid var(--finka-line);padding:1.25rem 0 0;margin:1.75rem 0}
.finka-registration-shell .finka-form-group legend{padding-right:.75rem;font-weight:700;color:var(--finka-ink)}
.finka-registration-shell .finka-form-group .finka-form-grid{margin-top:.5rem}
.finka-registration-shell .finka-primary-button[aria-disabled=true]{opacity:.65;cursor:wait}
.finka-registration-shell .finka-consent{padding:.75rem 0;min-height:44px}
.finka-registration-shell .finka-consent input{flex-shrink:0;width:18px;height:18px;accent-color:var(--finka-red)}
.finka-registration-shell .finka-field input{font-size:16px}
.finka-registration-shell .finka-form-alert:focus{outline:3px solid var(--finka-focus);outline-offset:3px}
/* Premium form: existing names, validation, consent and POST contract unchanged. */
.finka-registration-page :is(.entry-title,.elementor-page-title,.elementor-widget-theme-post-title){display:none}
.finka-registration-shell{max-width:1080px;margin:2rem auto;margin-top:max(2rem,var(--finka-layout-clearance,0px));padding:0;color:var(--finka-ink)}
.finka-registration-shell .finka-registration-card{max-width:none;width:100%;border-radius:16px;border:1px solid var(--finka-line);box-shadow:var(--finka-shadow);overflow:hidden;background:#fff}
.finka-registration-shell .finka-panel-header{padding:1.25rem 1.75rem;border-bottom:1px solid var(--finka-line);font-size:1rem;color:var(--finka-ink)}
.finka-registration-shell .finka-panel-header h1{margin:0;padding:0;font:inherit;line-height:1.4;letter-spacing:normal;color:inherit}
.finka-registration-shell .finka-screen-number{background:var(--finka-red);border-radius:7px}
.finka-registration-shell .finka-auth-body{padding:clamp(1.25rem,4vw,3rem);text-align:left}
.finka-registration-shell .finka-auth-heading{display:grid;grid-template-columns:minmax(0,1fr) 34%;gap:2rem;align-items:center;margin-bottom:2rem}
.finka-registration-shell .finka-auth-heading picture{aspect-ratio:1672/940;border-radius:12px}
.finka-registration-shell .finka-auth-heading picture img{object-fit:contain}
.finka-registration-shell .finka-registration-brand{margin-bottom:1rem;text-align:left}
.finka-registration-shell .finka-registration-brand::after{content:none}
.finka-registration-shell h2{font-size:clamp(1.75rem,4vw,2.5rem);line-height:1.15;letter-spacing:-.03em;text-align:left;color:var(--finka-ink);margin:.5rem 0 .8rem}
.finka-registration-shell .finka-registration-intro{color:var(--finka-muted);max-width:55ch;line-height:1.6;text-align:left;margin:.75rem 0 0}
.finka-registration-shell .finka-form-grid{gap:1.25rem 1.5rem}
.finka-registration-shell .finka-form-grid>.finka-field:last-child:nth-child(odd){grid-column:1/-1}
.finka-registration-shell .finka-field{margin:0;min-width:0}
.finka-registration-shell .finka-field label{font-weight:500;font-size:.9rem;margin-bottom:.45rem;color:var(--finka-ink)}
.finka-registration-shell .finka-field input{width:100%;min-height:50px;border:1px solid #ccd0d6;border-radius:7px;background:#fff;color:var(--finka-ink);padding:.8rem .9rem;box-shadow:none}
.finka-registration-shell .finka-field input:focus{border-color:var(--finka-ink)}
.finka-registration-shell .finka-form-group{margin:2rem 0 1rem;padding-top:1rem}
.finka-registration-shell .finka-form-group legend{font-size:1.15rem}
.finka-registration-shell .finka-primary-button{width:auto;min-width:220px;max-width:100%;min-height:48px;padding:.8rem 1.5rem;background:var(--finka-red);border:1px solid var(--finka-red);border-radius:7px;color:#fff;font-weight:700}
.finka-registration-shell .finka-primary-button:hover{background:var(--finka-red-dark);border-color:var(--finka-red-dark)}
.finka-registration-shell .finka-consent{align-items:flex-start;text-align:left;color:var(--finka-muted);line-height:1.6}
.finka-registration-shell .finka-consent a{color:var(--finka-red)}
.finka-registration-shell .finka-login-link{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--finka-line);text-align:left;font-size:.9rem;color:var(--finka-muted)}
.finka-registration-shell .finka-login-action{display:inline-flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem 1.25rem;box-sizing:border-box;min-height:48px;max-width:100%;padding:.75rem 1rem;border:1px solid var(--finka-line);border-radius:7px;text-decoration:none;line-height:1.4;color:var(--finka-muted);background:#fff;cursor:pointer}
.finka-registration-shell .finka-login-action strong{color:var(--finka-red-dark);white-space:nowrap}
.finka-registration-shell .finka-login-action:hover{border-color:var(--finka-red);background:#fff7f7}
.finka-registration-shell .finka-status-card{max-width:720px;margin:auto}
.finka-registration-shell .finka-status-body{text-align:center;padding:clamp(2rem,6vw,4rem)}
.finka-registration-shell .finka-status-body h2{text-align:center}
.finka-registration-shell .finka-status-mark{width:80px;height:80px;background:#eaf7ee;color:var(--finka-success);font-size:2.2rem}
.finka-registration-shell .finka-status-note{font-size:.9rem;color:var(--finka-muted)}
.finka-registration-shell .finka-status-badge{background:var(--finka-soft);color:var(--finka-muted);border-radius:100px;padding:.4rem .8rem;display:inline-block;font-size:.85rem}
.finka-registration-shell .finka-form-alert{padding:1rem 1.25rem;border-radius:8px;background:#fff3f4;color:var(--finka-error);line-height:1.5}
@media(max-width:767px){.finka-registration-shell{margin:1rem auto}.finka-registration-shell .finka-auth-heading{grid-template-columns:1fr;gap:1rem}.finka-registration-shell .finka-auth-heading picture{display:none}.finka-registration-shell .finka-registration-brand{margin-bottom:1rem}.finka-registration-shell .finka-primary-button{width:100%}.finka-registration-shell .finka-panel-header{padding:1rem}.finka-registration-shell .finka-auth-body{padding:1.25rem}}
@media(max-width:767px){.finka-registration-shell{margin-top:max(1rem,var(--finka-layout-clearance,0px))}}
@media(max-width:767px){.finka-registration-shell .finka-login-action{width:100%}}

.finka-registration-shell .finka-password-control{position:relative;min-width:0;width:100%}
.finka-registration-shell .finka-password-control input{padding-right:3.5rem}
.finka-registration-shell .finka-password-control input::-ms-reveal{display:none}
.finka-registration-shell .finka-password-toggle{position:absolute;top:50%;right:3px;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;margin:0;border:0;border-radius:5px;background:transparent;color:var(--finka-muted);box-shadow:none;cursor:pointer;line-height:1}
.finka-registration-shell .finka-password-toggle[hidden]{display:none!important}
.finka-registration-shell .finka-password-toggle:hover,.finka-registration-shell .finka-password-toggle[aria-pressed=true]{background:#fff0f1;color:var(--finka-red-dark)}
.finka-registration-shell .finka-password-toggle:focus-visible{outline:3px solid var(--finka-focus);outline-offset:1px}
.finka-registration-shell .finka-password-toggle svg{display:block;flex:none;width:22px;height:22px;fill:none;stroke:currentColor}
.finka-registration-shell .finka-password-slash{display:none}
.finka-registration-shell .finka-password-toggle[aria-pressed=true] .finka-password-slash{display:block}
.finka-registration-shell .finka-privacy-note{display:block;max-width:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--finka-muted);font-size:.875rem;line-height:1.6;white-space:normal;overflow:visible}
.finka-registration-shell .finka-privacy-note a.finka-privacy-link{display:inline;width:auto;height:auto;padding:.25em 0;border:0;background:none;box-shadow:none;color:#b20a12!important;-webkit-text-fill-color:currentColor!important;font:inherit;font-weight:500;text-decoration:underline;text-underline-offset:.2em;white-space:normal;overflow-wrap:anywhere;opacity:1;visibility:visible}
.finka-registration-shell .finka-privacy-note a.finka-privacy-link:hover{color:#87070d!important;text-decoration-thickness:2px}
.finka-registration-shell .finka-privacy-link-hint{font-size:.9em}

.finka-registration-shell{background:transparent}
.finka-registration-status-page :is(.entry-title,.elementor-page-title,.elementor-widget-theme-post-title){display:none}
.finka-registration-shell .finka-status-body .finka-status-mark{display:flex;margin:0 auto 1rem;align-items:center;justify-content:center}
.finka-registration-shell .finka-status-body .finka-status-badge{max-width:100%;margin:0 auto 1.25rem;letter-spacing:.03em}
.finka-registration-shell .finka-status-body ol{max-width:34rem;margin:1.25rem auto;padding-left:1.5rem;text-align:left}
.finka-registration-shell .finka-status-body li{padding-left:.25rem;margin:.5rem 0}
.finka-registration-shell .finka-status-body .finka-button-link{color:#fff;text-decoration:none;white-space:normal}

/* One readable consent sequence; native required validation and document links stay intact. */
.finka-registration-shell .finka-registration-agreement{display:grid;gap:8px;min-width:0;margin:24px 0}
.finka-registration-shell .finka-registration-agreement .finka-consent{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;min-height:44px;margin:0;padding:10px 0;line-height:1.5;font-size:14px;cursor:pointer}
.finka-registration-shell .finka-registration-agreement .finka-consent input{box-sizing:border-box;display:block;align-self:start;flex:none;width:20px;height:20px;min-width:20px;min-height:20px;margin:1px 0 0;padding:0;accent-color:var(--finka-red)}
.finka-registration-shell .finka-registration-agreement .finka-consent>span{min-width:0}
.finka-registration-shell .finka-registration-agreement .finka-consent a{display:inline;padding:0;border:0;background:transparent;box-shadow:none;font:inherit;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.finka-registration-shell .finka-registration-agreement .finka-privacy-note{padding-left:30px}
.finka-registration-shell .finka-registration-agreement .finka-field-error{margin:0;padding-left:30px}
.finka-registration-shell .finka-registration-agreement input[aria-invalid=true]{outline:2px solid var(--finka-error);outline-offset:2px}
