/* Escopo restrito aos formularios: o WPCode continua independente do tema. */
.moinho-snippet-integrado {
	position: relative;
	isolation: isolate;
	padding-block: var(--moinho-space-lg);
	color: var(--moinho-surface-fg);
}
.moinho-snippet-integrado--moinho_recruta {
	padding-inline: var(--moinho-container-padding);
}
html:has(.moinho-snippet-integrado .mb-wrap),
body.moinho-formulario-integrado:has(.mb-wrap) {
	background: var(--moinho-surface-bg) !important;
	overflow-x: clip !important;
}
.moinho-snippet-integrado .mb-wrap {
	--font: var(--moinho-font-body);
	--accent: var(--moinho-color-primary-readable);
	left: auto !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 !important;
}
.moinho-snippet-integrado .mb-wrap .mb-shell {
	min-height: 0;
	padding-block: var(--moinho-space-lg) !important;
}
.moinho-snippet-integrado .mb-wrap .mb-bg {
	position: absolute;
}
.moinho-snippet-integrado .mb-wrap .mb-theme {
	display: none;
}
.moinho-snippet-integrado .mr-wrap {
	font-family: var(--moinho-font-body);
	--mr-primary: var(--moinho-color-primary-readable) !important;
	--mr-bg: var(--moinho-surface-bg) !important;
	--mr-bg-solid: var(--moinho-surface-bg) !important;
	--mr-surface: var(--moinho-card-bg) !important;
	--mr-ink: var(--moinho-surface-fg) !important;
	--mr-mut: var(--moinho-surface-fg-muted) !important;
	--mr-line: var(--moinho-surface-border) !important;
	--mr-line-soft: var(--moinho-surface-border) !important;
}
.moinho-snippet-integrado .mr-wrap :is(h1, h2, h3) {
	font-family: var(--moinho-font-display);
	color: var(--mr-ink);
}
.moinho-snippet-integrado [hidden] {
	display: none !important;
}
.moinho-snippet-integrado .mr-wrap { --mr-ring: var(--moinho-color-brand-glow); }
.moinho-snippet-integrado .mr-form { background: var(--moinho-card-bg); border-radius: var(--moinho-radius-panel); padding: var(--moinho-space-lg); box-shadow: none; }
.moinho-snippet-integrado .mr-form::before { height: 1px; background: linear-gradient(90deg, transparent, var(--mr-primary), var(--moinho-color-secondary), transparent); }
.moinho-snippet-integrado .mr-head { text-align: left; margin-bottom: var(--moinho-space-lg); }
.moinho-snippet-integrado .mr-head::before { content: 'CARREIRAS NA MOINHO'; display: block; margin-bottom: var(--moinho-space-sm); font-size: .875rem; font-weight: 600; letter-spacing: .12em; color: var(--mr-primary); }
.moinho-snippet-integrado .mr-wrap .mr-title { font-weight: 600; line-height: 1.1; margin-bottom: var(--moinho-space-sm); }
.moinho-snippet-integrado .mr-wrap .mr-sub { max-width: 48ch; line-height: 1.6; }
.moinho-snippet-integrado .mr-progress { margin-block: var(--moinho-space-md) var(--moinho-space-lg); }
.moinho-snippet-integrado .mr-progress-bar span { background: linear-gradient(90deg, var(--mr-primary), var(--moinho-color-secondary)); }
.moinho-snippet-integrado .mr-wrap .mr-steps { gap: var(--moinho-space-3xs); counter-reset: recruitment; }
.moinho-snippet-integrado .mr-wrap .mr-steps li { border-radius: var(--moinho-radius-sm); padding-block: var(--moinho-space-2xs); font-size: .8125rem; }
.moinho-snippet-integrado .mr-steps li::before { counter-increment: recruitment; content: counter(recruitment) '. '; }
.moinho-snippet-integrado .mr-wrap .mr-steps li.is-active { background: var(--moinho-color-brand-glow); }
.moinho-snippet-integrado .mr-wrap .mr-field :is(input[type=text], input[type=email], input[type=tel], textarea) { background: var(--moinho-surface-bg); border-radius: var(--moinho-radius-md); font-size: 1rem; }
.moinho-snippet-integrado .mr-wrap .mr-choice { background: var(--moinho-surface-bg); border-radius: var(--moinho-radius-md); padding: var(--moinho-space-sm); }
.moinho-snippet-integrado .mr-wrap .mr-choice:has(input:checked) { background: var(--moinho-color-brand-glow); border-color: var(--mr-primary); box-shadow: none; }
.moinho-snippet-integrado .mr-nav { border-top: 1px solid var(--mr-line); padding-top: var(--moinho-space-md); gap: var(--moinho-space-xs); }
.moinho-snippet-integrado .mr-wrap .mr-btn { font-family: var(--moinho-font-body); font-size: 1rem; font-weight: 500; border-radius: var(--moinho-button-radius); padding: var(--moinho-button-padding-block) var(--moinho-button-padding-inline); min-height: 48px; touch-action: manipulation; transition: transform var(--moinho-duration-fast), background-color var(--moinho-duration-fast); }
.moinho-snippet-integrado .mr-wrap :is(.mr-next, .mr-submit) { color: var(--moinho-surface-fg); border: 1px solid transparent; background: linear-gradient(var(--moinho-surface-bg), var(--moinho-surface-bg)) padding-box, linear-gradient(120deg, var(--mr-primary), var(--moinho-color-secondary)) border-box; box-shadow: inset 0 0 0 1px var(--mr-line); }
.moinho-snippet-integrado .mr-wrap .mr-prev { color: var(--mr-ink); border: 1px solid var(--mr-line); }
.moinho-snippet-integrado .mr-wrap .mr-btn:hover { transform: translateY(-1px); filter: none; }
.moinho-snippet-integrado .mr-wrap .mr-btn:active { transform: scale(.98); }
.moinho-snippet-integrado .mr-wrap :is(button, input, textarea):focus-visible { outline: 2px solid var(--mr-primary); outline-offset: 3px; }
.moinho-snippet-integrado .mr-drop { border-radius: var(--moinho-radius-lg); background: var(--moinho-surface-bg); padding: var(--moinho-space-lg); }
.moinho-snippet-integrado .mr-drop-ico { display: grid; place-items: center; border-radius: var(--moinho-radius-md); background: var(--moinho-color-brand-glow); padding: var(--moinho-space-sm); }
.moinho-snippet-integrado .mr-step:has(.mr-file:focus-visible) .mr-drop { outline: 2px solid var(--mr-primary); outline-offset: 3px; }
@media (max-width: 35rem) {
 .moinho-snippet-integrado .mr-form { padding: var(--moinho-space-sm); }
 .moinho-snippet-integrado .mr-wrap .mr-btn { padding-inline: var(--moinho-space-sm); }
}
.moinho-snippet-integrado .mr-wrap .mr-form,
.moinho-snippet-integrado .mr-wrap :is(input, textarea, button, p, li) { font-family: var(--moinho-font-body); }

/* O snippet conserva seus controles; o tema compartilha o brilho animado. */
.moinho .moinho-snippet-integrado .mr-wrap .mr-btn {
 --shiny-bg: var(--moinho-surface-bg);
 --shiny-highlight: var(--moinho-color-secondary);
 --shiny-shine: var(--moinho-branco);
 isolation: isolate; position: relative; overflow: hidden;
 animation: moinho-shiny-angle 3s linear infinite;
 background: linear-gradient(var(--shiny-bg), var(--shiny-bg)) padding-box,
 conic-gradient(from var(--shiny-angle), transparent, var(--shiny-highlight) 5%, var(--shiny-shine) 10%, var(--shiny-highlight) 15%, transparent 20%) border-box;
}
.moinho .mr-btn .mr-label { position: relative; z-index: 1; }
.moinho .moinho-snippet-integrado .mr-wrap .mr-btn:is(:disabled, [aria-disabled="true"]) { animation: none; }
