.dudepw-gate {
	margin: 2rem 0;
	padding: 1.5rem;
	border: 1px solid #d0d0d0;
	background: #fafafa;
}

.dudepw-gate--card {
	border-radius: 12px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
	border-color: transparent;
}

.dudepw-gate--minimal {
	background: transparent;
	border: 0;
	border-top: 1px solid #d0d0d0;
	padding-left: 0;
	padding-right: 0;
}

.dudepw-gate--banner {
	display: block;
	text-align: center;
	padding: 2rem 1.5rem;
}

.dudepw-gate--banner .dudepw-gate__inner {
	max-width: 28rem;
	margin: 0 auto;
}

.dudepw-gate__headline {
	margin: 0 0 0.5rem;
	font-size: 1.25rem;
}

.dudepw-gate__description,
.dudepw-gate__price {
	margin: 0 0 0.75rem;
}

.dudepw-gate__button,
.dudepw-recovery-form button {
	cursor: pointer;
	padding: 0.6rem 1.1rem;
	border: 0;
	background: #1d2327;
	color: #fff;
}

.dudepw-gate__button:disabled {
	opacity: 0.6;
	cursor: wait;
}

.dudepw-gate__status,
.dudepw-recovery-status {
	margin-top: 0.75rem;
	font-size: 0.95rem;
}

.dudepw-gate__recovery {
	margin-top: 1.25rem;
}

.dudepw-recovery-form {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.5rem;
}

.dudepw-recovery-form input[type="email"] {
	flex: 1 1 12rem;
	min-width: 0;
	padding: 0.5rem;
}

.dudepw-return {
	margin: 1rem 0 1.5rem;
	padding: 1rem 1.25rem;
	border-left: 4px solid #2271b1;
	background: #f0f6fc;
}

.dudepw-return--cancel {
	border-left-color: #dba617;
	background: #fcf9e8;
}

.dudepw-return__local {
	margin: 0.75rem 0;
}

.dudepw-return__local .description {
	display: block;
	color: #646970;
}

.dudepw-return__actions {
	margin: 0.75rem 0;
}

.dudepw-return__confirm {
	cursor: pointer;
	padding: 0.6rem 1.1rem;
	border: 0;
	background: #2271b1;
	color: #fff;
}

.dudepw-return__confirm:disabled {
	opacity: 0.6;
	cursor: wait;
}

.dudepw-return__confirm-message {
	margin-top: 0.5rem;
}

.dudepw-break-editor {
	padding: 1rem;
	border: 2px dashed #c3c4c7;
	background: #f6f7f7;
	text-align: center;
}
