/* Event Registration — public embed (v0.70.0). Inherits block-theme
   (Blockstar) tokens via theme.json CSS custom properties. */
.evreg-embed {
    max-width: var(--wp--style--global--content-size, 640px);
    margin: 1.5rem auto;
}
.evreg-embed__title { margin: 0 0 0.75rem; }
.evreg-embed__meta { margin: 0 0 0.75rem; font-weight: 600; }
/* EVREG-EDITLINK-001: the permission-gated organizer convenience link. The
   theme's default link color can fail WCAG AA on the page background, so the
   link opts into the plugin's accessible `#135e96` (6.84:1 on white); the
   `!important` mirrors the submit-CTA override that defeats the theme's
   link/button cascade. */
.evreg-embed__admin-actions { margin: 0 0 0.75rem; font-size: 0.875rem; }
.evreg-embed__edit-link { color: #135e96 !important; text-decoration: underline; }
.evreg-embed__edit-link:hover,
.evreg-embed__edit-link:focus { color: #0f4c7a !important; }
/* EVREG-LOCATION-001: the plain Google-Maps hyperlink on the public event
   page. Like the edit link above, the theme's default link color can fail
   WCAG AA on the page background, so the map link opts into the same
   accessible `#135e96` (6.84:1 on white) with an underline affordance. */
.evreg-embed__map-link { color: #135e96 !important; text-decoration: underline; }
.evreg-embed__map-link:hover,
.evreg-embed__map-link:focus { color: #0f4c7a !important; }
.evreg-embed__description { margin-bottom: 1rem; }
.evreg-embed__row { display: flex; flex-direction: column; gap: 0.25rem; margin-bottom: 1rem; }
.evreg-embed__row label { font-weight: 600; }
.evreg-embed__remember-optin {
    position: relative;
    flex-direction: row;
    align-items: center;
    gap: 0.4rem;
}
.evreg-embed__remember-hint {
    position: relative;
    display: inline-flex;
}
.evreg-embed__remember-hint-trigger {
    width: 1.35rem;
    height: 1.35rem;
    padding: 0;
    border: 1px solid #135e96;
    border-radius: 50%;
    background: #fff;
    color: #135e96;
    cursor: help;
    font: 700 0.8rem/1 sans-serif;
}
.evreg-embed__remember-tooltip {
    position: absolute;
    z-index: 10;
    top: calc(100% + 0.4rem);
    left: 50%;
    width: min(20rem, calc(100vw - 3rem));
    padding: 0.65rem 0.75rem;
    border-radius: 4px;
    background: #1d2327;
    color: #fff;
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.4;
    opacity: 0;
    pointer-events: none;
    transform: translateX(-50%);
    visibility: hidden;
}
.evreg-embed__remember-hint-trigger:hover + .evreg-embed__remember-tooltip,
.evreg-embed__remember-hint-trigger:focus + .evreg-embed__remember-tooltip {
    opacity: 1;
    visibility: visible;
}
.evreg-embed__req { color: #b32d2e; margin-left: 0.15rem; }
.evreg-embed input,
.evreg-embed textarea {
    padding: 0.5rem 0.6rem;
    border: 1px solid var(--wp--preset--color--contrast, var(--wp--preset--color--foreground, #888));
    border-radius: 4px;
    font: inherit;
}
.evreg-embed__actions { display: flex; align-items: center; gap: 0.75rem; flex-wrap: wrap; }
/* The management-editor actions (Save/Withdraw/Cancel) read as a single
 * decision row — three buttons wrapping onto two lines looks broken, so
 * keep them on one row, shrinking gap/padding first and only falling back
 * to horizontal scroll on very narrow viewports. */
.evreg-embed__actions--manage {
	flex-wrap: nowrap;
	gap: 0.5rem;
	overflow-x: auto;
}
.evreg-embed__actions--manage .wp-element-button {
	flex: 0 0 auto;
	white-space: nowrap;
	padding-left: 0.75rem;
	padding-right: 0.75rem;
}
/* EVREG-VERIFY-UX-001: two-step verify flow — identity step / verification
 * choice step and the single radio group. Display/flow only. */
.evreg-embed__verify-choice {
    border: 1px solid #ccced1;
    border-radius: 4px;
    padding: 0.75rem 1rem;
    margin: 0 0 1rem;
}

.evreg-embed__manage {
	margin-top: 1rem;
}

.evreg-embed__manage-row {
	display: block;
	width: 100%;
	margin: 0 0 .5rem;
	padding: .75rem;
	text-align: left;
}

.evreg-embed__field-error {
	display: block;
	color: #b32d2e;
}

[data-evreg-wizard-manage-withdraw-confirm] {
	margin-top: 1rem;
	padding: 1rem;
	border: 1px solid currentColor;
}
.evreg-embed__verify-choice-legend { font-weight: 600; padding: 0 0.25rem; }
.evreg-embed__verify-choice-option {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    margin: 0.35rem 0;
    font-weight: 400;
}
.evreg-embed__optout-help { color: #50575e; font-size: 0.9em; margin: 0.25rem 0 1rem; }

.evreg-embed__verify-guidance {
    margin: 0.75rem 0;
    padding-left: 1.25rem;
}
.evreg-embed__verify-guidance li + li { margin-top: 0.5rem;
}

.evreg-embed__new-member {
margin-top: 1rem;
}

.evreg-embed__new-member-error {
color: #b32d2e;
font-weight: 600;
}

.evreg-embed__member-review {
margin-bottom: 1.25rem;
padding: 1rem;
border: 1px solid #dcdcde;
border-radius: 4px;
}

.evreg-embed__member-review dl {
display: grid;
grid-template-columns: minmax(8rem, auto) 1fr;
gap: 0.35rem 1rem;
margin: 0;
}

.evreg-embed__member-review dt {
font-weight: 600;
}

.evreg-embed__member-review dd {
margin: 0; }
.evreg-embed__verify-resend,
.evreg-embed__verify-learn-more,
.evreg-embed__verify-optout {
    appearance: none;
    border: 0;
    background: transparent;
    color: #135e96;
    cursor: pointer;
    font: inherit;
    padding: 0;
    text-decoration: underline;
}
.evreg-embed__verify-resend:hover,
.evreg-embed__verify-resend:focus,
.evreg-embed__verify-learn-more:hover,
.evreg-embed__verify-learn-more:focus,
.evreg-embed__verify-optout:hover,
.evreg-embed__verify-optout:focus {
    color: #0f4c7a;
}
.evreg-embed__verify-optout-row { margin: 1rem 0 0; }
.evreg-embed__verify-resend[disabled] {
    color: #50575e;
    cursor: default;
    text-decoration: none;
}
.evreg-embed__registration-dialog {
    max-width: min(32rem, calc(100vw - 2rem));
    padding: 1.25rem;
    border: 1px solid #8c8f94;
    border-radius: 6px;
    color: #1d2327;
    background: #fff;
}
.evreg-embed__registration-dialog::backdrop {
    background: rgb(0 0 0 / 45%);
}
.evreg-embed__registration-dialog h4 {
    margin-top: 0;
}
.evreg-embed__registration-dialog ol {
    margin: 0 0 1rem;
    padding-left: 1.5rem;
}
.evreg-embed [data-evreg-wizard-step] {
    border-top: 1px solid #8c8f94;
    margin-top: 1rem;
    padding-top: 1rem;
}

.evreg-embed__submit {
    padding: 0.55rem 1.25rem;
    border: 0;
    border-radius: 4px;
    background: #135e96;
    color: #fff;
    cursor: pointer;
    font: inherit;
}
.evreg-embed__submit[disabled] { opacity: 0.6; cursor: default; }
/*
 * a11y hardening (EVREG-I18N-002 follow-up; WCAG 2.1 AA on the public CTA):
 * the submit control opts into the theme button shape via `wp-element-button`,
 * so a block theme's button colour preset (e.g. Twenty Twenty-Five's primary
 * orange, ~3.5:1 on white) overrides the plugin's accessible `#135e96` at equal
 * specificity + later source order. Re-assert the plugin's compliant colour at
 * higher specificity so the accessible CTA survives theme presets. Base colour
 * (#135e96 = 6.84:1) is validated by EmbedCtaContrastTest; the darker hover/
 * focus keeps contrast on interaction. `!important` is required because the
 * theme's button preset wins the cascade (WP global styles) over an ordinary
 * higher-specificity selector; it is scoped to the plugin's own CTA only.
 */
.evreg-embed__submit.wp-element-button {
    background: #135e96 !important;
    color: #fff !important;
}
.evreg-embed__submit.wp-element-button:hover,
.evreg-embed__submit.wp-element-button:focus {
    background: #0f4c7a !important;
    color: #fff !important;
}
.evreg-embed__message.is-error { color: #b32d2e; }
.evreg-embed__message.is-success { color: #1a7f37; }
.evreg-embed__success-page {
    padding: 1.5rem;
    border: 1px solid #dcdcde;
    border-radius: 6px;
    text-align: center;
}
.evreg-embed__success-page .evreg-embed__message {
    display: block;
    margin: 0 0 1.25rem;
    font-size: 1.25rem;
    font-weight: 600;
}
.evreg-embed__success-actions { margin: 0; }
.evreg-embed__success-return.wp-element-button {
    display: inline-block;
    background: #135e96 !important;
    color: #fff !important;
    text-decoration: none;
}
.evreg-embed__success-return.wp-element-button:hover,
.evreg-embed__success-return.wp-element-button:focus {
    background: #0f4c7a !important;
    color: #fff !important;
}
.evreg-embed--error,
.evreg-embed--notice { padding: 1rem; border: 1px dashed #888; border-radius: 4px; }
/* Honeypot: visually and functionally hidden from real users. */
.evreg-embed__hp {
    position: absolute !important;
    left: -9999px !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
