.pa-alert-form-wrapper {
	--pa-ink: #14171f;
	--pa-ink-soft: #5b5f6b;
	--pa-line: #eceef2;
	--pa-paper: #ffffff;
	--pa-cream: #fff9ec;
	--pa-yellow: #ffc61a;
	--pa-yellow-deep: #e8ad00;
	--pa-bg-soft: #fafafa;

	max-width: 480px;
	margin: 20px 0;
	padding: 24px;
	border: 1px solid var(--pa-line);
	border-radius: 16px;
	background: var(--pa-paper);
	box-shadow: 0 20px 45px -30px rgba(20, 23, 31, .25);
	font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
	color: var(--pa-ink);
}

.pa-alert-form-wrapper::before {
	content: 'Alertas de vaga';
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 5px 12px;
	border-radius: 999px;
	background: var(--pa-bg-soft);
	border: 1px solid var(--pa-line);
	font-size: 12px;
	font-weight: 700;
	color: var(--pa-ink-soft);
	margin-bottom: 14px;
}

.pa-alert-row {
	margin-bottom: 14px;
}

.pa-alert-row label {
	display: block;
	font-weight: 600;
	margin-bottom: 5px;
	font-size: 13.5px;
	color: var(--pa-ink);
}

.pa-alert-row input,
.pa-alert-row select {
	box-sizing: border-box;
	width: 100%;
	padding: 11px 14px;
	border: 1px solid var(--pa-line);
	border-radius: 10px;
	font-size: 14.5px;
	font-family: inherit;
	background: var(--pa-paper);
	color: var(--pa-ink);
	transition: border-color .15s ease;
}

.pa-alert-row input:focus,
.pa-alert-row select:focus {
	outline: none;
	border-color: var(--pa-yellow-deep);
}

.pa-alert-submit {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--pa-ink);
	color: #fff;
	border: none;
	padding: 13px 24px;
	border-radius: 999px;
	cursor: pointer;
	font-family: inherit;
	font-weight: 700;
	font-size: 14.5px;
	box-shadow: 0 10px 24px -12px rgba(20, 23, 31, .45);
	transition: transform .15s ease, background .15s ease;
}

.pa-alert-submit:hover {
	background: #2a2e3a;
	transform: translateY(-1px);
}

.pa-alert-submit:disabled {
	opacity: 0.6;
	cursor: default;
	transform: none;
}

.pa-alert-message {
	margin-top: 14px;
	padding: 11px 14px;
	border-radius: 10px;
	font-size: 13.5px;
}

.pa-alert-message.success {
	background: #e9f7ee;
	color: #1c8a4b;
}

.pa-alert-message.error {
	background: #fdeceb;
	color: #b3261e;
}

/* v2.0: Sino flutuante + modal */
.pa-alert-bell {
	--pa-ink: #14171f; --pa-line: #eceef2; --pa-yellow: #ffc61a; --pa-yellow-deep: #e8ad00;

	position: fixed; bottom: 24px; left: 24px; z-index: 9998;
	display: flex; align-items: center; gap: 8px;
	background: var(--pa-ink); color: #fff; border: none; border-radius: 999px;
	padding: 14px 18px; font-size: 20px; cursor: pointer; font-family: 'Plus Jakarta Sans', sans-serif;
	box-shadow: 0 14px 30px -10px rgba(20,23,31,.5);
	transition: transform .2s ease, background .2s ease;
}
.pa-alert-bell:hover { background: #2a2e3a; transform: translateY(-2px); }
.pa-alert-bell-label { font-size: 13.5px; font-weight: 700; }

@media (max-width: 480px) {
	.pa-alert-bell-label { display: none; }
	.pa-alert-bell { padding: 14px; bottom: 16px; left: 16px; }
}

.pa-alert-modal {
	position: fixed; inset: 0; background: rgba(20,23,31,.55); z-index: 9999;
	display: flex; align-items: center; justify-content: center; padding: 20px;
	font-family: 'Plus Jakarta Sans', sans-serif;
	box-sizing: border-box;
}
.pa-alert-modal-inner {
	box-sizing: border-box;
	background: #fff; border-radius: 18px; padding: 30px; max-width: 460px; width: 100%;
	max-height: 90vh; overflow-y: auto; -webkit-overflow-scrolling: touch; position: relative;
	box-shadow: 0 30px 60px -20px rgba(20,23,31,.4);
}
.pa-alert-modal-inner h3 {
	font-family: 'Sora', sans-serif; font-weight: 800; letter-spacing: -0.01em;
	font-size: 21px; margin: 0 40px 4px 0; color: #14171f;
}
.pa-alert-modal-hint { font-size: 13.5px; color: #5b5f6b; margin: 0 0 18px; }
.pa-alert-modal-close {
	position: absolute; top: 18px; right: 18px; background: #fafafa; border: 1px solid #eceef2;
	width: 32px; height: 32px; min-width: 32px; border-radius: 50%; font-size: 18px; cursor: pointer; color: #14171f; line-height: 1;
	flex-shrink: 0;
}

@media (max-width: 480px) {
	.pa-alert-modal { padding: 12px; }
	.pa-alert-modal-inner { padding: 22px 18px; border-radius: 14px; max-height: 95vh; }
	.pa-alert-modal-inner h3 { font-size: 19px; margin-right: 36px; }
	.pa-alert-modal-close { top: 14px; right: 14px; }
}
