/**
 * FBM UI Core – Button-/Modal-Brücken für FBM-Plugins
 * Ergänzt fbm-ui-buttons.css; semantische Farben auf Legacy-Klassen / data-Attribute.
 *
 * @package FBM_UI_Core
 */

/* --- Einheitliche Rundung (Plugin-Brücken & Profil) --- */
.fbm-calendar-submit-btn,
.fbm-calendar-contact-create-save,
#fbm-journal-sort-mode-save,
.fbm-journal-btn--primary#fbm-journal-sort-mode-save,
.fbm-ds-modal-container .fbm-ds-btn-primary,
#fbm-ds-pause-submit,
#fbm-ds-completion-submit,
.fbm-ds-contact-create-save,
[data-fbmp-step-next],
[data-fbmp-banner-crop-apply],
[data-fbmp-avatar-crop-apply],
[data-inkmsg="modal-submit"],
.fbm-rm-actions .btn-primary,
.fbm-rm-actions .fbm-btn.btn-primary,
.fbm-rm-actions button.btn-primary,
button.fbm-btn.fbm-btn-primary[name="fbm_update_settings"],
.fbm-tutorial-next,
.fbm-tutorial-finish,
#fbmp-share-qr-open,
.fbmp-profile-button--primary,
.fbmp-profile-button:not(.fbmp-profile-button-secondary):not(.fbmp-title-image-btn):not(.fbmp-avatar-btn):not(.fbmp-share-qr-modal-close-icon),
.fbmp-share-qr-modal-footer .fbmp-share-qr-modal-close,
.fbmp-share-qr-modal-footer .fbm-ui-modal-close-btn,
.fbm-legacy-counter-reject {
	border-radius: var(--fbm-ui-btn-radius, 8px) !important;
}

/* fbm-tool-invoices-v5 */
.fbm-form-actions .fbm-btn,
.fbm-ui-modal-footer .fbm-btn,
.fbm-invoice-modal-footer .fbm-btn,
.fbm-new-contact-choice-actions .fbm-btn,
.fbm-h4h-contact-choice-footer .fbm-btn,
.fbm-contact-qr-modal-footer .fbm-btn {
	border-radius: var(--fbm-ui-btn-radius, 8px) !important;
}

/* --- Erfolg (grün): Speichern, Weiter, OK, Primäraktion --- */
.fbm-calendar-submit-btn,
.fbm-calendar-contact-create-save,
#fbm-journal-sort-mode-save,
.fbm-journal-btn--primary#fbm-journal-sort-mode-save,
.fbm-ds-modal-container .fbm-ds-btn-primary,
#fbm-ds-pause-submit,
#fbm-ds-completion-submit,
.fbm-ds-contact-create-save,
[data-fbmp-step-next],
[data-fbmp-banner-crop-apply],
[data-fbmp-avatar-crop-apply],
[data-inkmsg="modal-submit"],
.fbm-rm-actions .btn-primary,
.fbm-rm-actions .fbm-btn.btn-primary,
.fbm-rm-actions button.btn-primary,
button.fbm-btn.fbm-btn-primary[name="fbm_update_settings"],
.fbm-tutorial-next,
.fbm-tutorial-finish {
	background: var(--fbm-ui-btn-success) !important;
	border: 2px solid var(--fbm-ui-btn-success) !important;
	color: var(--fbm-ui-btn-success-text) !important;
}

.fbm-calendar-submit-btn:hover:not(:disabled),
.fbm-calendar-contact-create-save:hover:not(:disabled),
#fbm-journal-sort-mode-save:hover:not(:disabled),
.fbm-ds-modal-container .fbm-ds-btn-primary:hover:not(:disabled),
#fbm-ds-pause-submit:hover:not(:disabled),
#fbm-ds-completion-submit:hover:not(:disabled),
[data-fbmp-step-next]:hover:not(:disabled),
[data-fbmp-banner-crop-apply]:hover:not(:disabled),
[data-fbmp-avatar-crop-apply]:hover:not(:disabled),
[data-inkmsg="modal-submit"]:hover:not(:disabled),
.fbm-rm-actions .btn-primary:hover:not(:disabled),
.fbm-rm-actions .fbm-btn.btn-primary:hover:not(:disabled),
.fbm-rm-actions button.btn-primary:hover:not(:disabled),
button.fbm-btn.fbm-btn-primary[name="fbm_update_settings"]:hover:not(:disabled),
.fbm-tutorial-next:hover:not(:disabled),
.fbm-tutorial-finish:hover:not(:disabled) {
	background: var(--fbm-ui-btn-success-hover) !important;
	border-color: var(--fbm-ui-btn-success-hover) !important;
	color: var(--fbm-ui-btn-success-text) !important;
}

/* --- Zurück / Überspringen (blau) --- */
.fbm-calendar-btn-secondary.fbm-calendar-nav-back,
.fbm-rm-actions .btn-secondary,
.fbm-rm-actions .fbm-btn.btn-secondary,
.fbm-rm-actions button.btn-secondary,
.fbm-rm-actions .btn-tertiary,
.fbm-rm-actions .fbm-btn.btn-tertiary,
.fbm-rm-actions button.btn-tertiary,
.inkmsg-back-btn,
.inkmsg-btn.inkmsg-back-btn,
[data-inkmsg="thread-back"] {
	background: var(--inkmsg-primary, var(--ink-user-accent, var(--fbm-ui-btn-nav))) !important;
	border: 2px solid var(--inkmsg-primary, var(--ink-user-accent, var(--fbm-ui-btn-nav))) !important;
	color: var(--inkmsg-on-accent, var(--ink-user-on-accent, var(--fbm-ui-btn-nav-text))) !important;
}

.fbm-calendar-btn-secondary.fbm-calendar-nav-back:hover:not(:disabled),
.fbm-rm-actions .btn-secondary:hover:not(:disabled),
.fbm-rm-actions .fbm-btn.btn-secondary:hover:not(:disabled),
.fbm-rm-actions button.btn-secondary:hover:not(:disabled),
#fbm-ds-completion-dismiss:hover:not(:disabled),
.fbm-rm-actions .btn-tertiary:hover:not(:disabled),
.fbm-rm-actions .fbm-btn.btn-tertiary:hover:not(:disabled),
.fbm-rm-actions button.btn-tertiary:hover:not(:disabled),
.inkmsg-back-btn:hover:not(:disabled),
.inkmsg-btn.inkmsg-back-btn:hover:not(:disabled) {
	background: var(--inkmsg-primary-hover, var(--ink-user-accent-hover, var(--fbm-ui-btn-nav-hover))) !important;
	border-color: var(--inkmsg-primary-hover, var(--ink-user-accent-hover, var(--fbm-ui-btn-nav-hover))) !important;
	color: var(--inkmsg-on-accent, var(--ink-user-on-accent, var(--fbm-ui-btn-nav-text))) !important;
}

/* --- Abbrechen / Schließen (rot) --- */
.fbm-calendar-btn-secondary.fbm-calendar-contact-create-cancel,
.fbm-calendar-btn-secondary.fbm-calendar-contact-qr-scan-cancel,
#fbm-journal-sort-mode-cancel,
.fbm-journal-btn--ghost#fbm-journal-sort-mode-cancel,
.fbm-ds-modal-close,
.fbm-ds-modal-container .fbm-ds-btn-secondary.fbm-ds-modal-cancel,
#fbm-ds-pause-cancel,
.fbm-ds-contact-create-cancel,
[data-fbm-org-dissolve-close],
[data-fbmp-banner-crop-cancel],
[data-fbmp-avatar-crop-cancel],
button[data-fbm-legacy-modal-close],
.fbm-legacy-action-modal__close,
[data-inkmsg="modal-cancel"],
[data-inkmsg="term-offer-cancel"],
[data-inkmsg="modal-close"],
.fbm-rm-actions .btn-danger,
.fbm-rm-actions .fbm-btn.btn-danger,
.fbm-tutorial-modal-close,
.fbmp-banner-crop-modal__close,
.fbmp-avatar-crop-modal__close,
body.fbm-rm-onboarding-active .fbm-custom-footer-section .fbm-custom-nav-link {
	background: var(--fbm-ui-btn-cancel) !important;
	border: 2px solid var(--fbm-ui-btn-cancel) !important;
	color: var(--fbm-ui-btn-cancel-text) !important;
}

.fbm-calendar-btn-secondary.fbm-calendar-contact-create-cancel:hover:not(:disabled),
.fbm-calendar-btn-secondary.fbm-calendar-contact-qr-scan-cancel:hover:not(:disabled),
#fbm-journal-sort-mode-cancel:hover:not(:disabled),
.fbm-ds-modal-close:hover,
.fbm-ds-modal-container .fbm-ds-btn-secondary.fbm-ds-modal-cancel:hover:not(:disabled),
#fbm-ds-pause-cancel:hover:not(:disabled),
[data-fbm-org-dissolve-close]:hover,
[data-fbmp-banner-crop-cancel]:hover,
[data-fbmp-avatar-crop-cancel]:hover,
button[data-fbm-legacy-modal-close]:hover,
.fbm-legacy-action-modal__close:hover,
[data-inkmsg="modal-cancel"]:hover:not(:disabled),
[data-inkmsg="term-offer-cancel"]:hover:not(:disabled),
.fbm-rm-actions .btn-danger:hover:not(:disabled),
.fbm-tutorial-modal-close:hover,
body.fbm-rm-onboarding-active .fbm-custom-footer-section .fbm-custom-nav-link:hover {
	background: var(--fbm-ui-btn-cancel-hover) !important;
	border-color: var(--fbm-ui-btn-cancel-hover) !important;
	color: var(--fbm-ui-btn-cancel-text) !important;
}

/* Schließen-X ohne Button-Fläche (einheitlich mit .fbm-ui-modal-close) */
.fbm-ui-modal-close,
.fbm-bm-modal-close,
.fbm-ds-modal-close,
.fbm-tutorial-modal-close,
.fbmp-banner-crop-modal__close,
.fbmp-avatar-crop-modal__close,
.fbm-legacy-action-modal__close,
.fbmp-share-qr-modal-close-icon,
[data-inkmsg="modal-close"] {
	background: transparent !important;
	border: none !important;
	color: var(--fbm-ui-btn-cancel) !important;
	box-sizing: border-box;
	width: 2rem;
	height: 2rem;
	min-width: 2rem;
	padding: 0;
	font-size: 2rem;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--fbm-ui-btn-radius, 8px) !important;
	cursor: pointer;
}

.fbm-ui-modal-close:hover,
.fbm-bm-modal-close:hover,
.fbm-ds-modal-close:hover,
.fbm-tutorial-modal-close:hover,
.fbmp-banner-crop-modal__close:hover,
.fbmp-avatar-crop-modal__close:hover,
.fbm-legacy-action-modal__close:hover,
.fbmp-share-qr-modal-close-icon:hover,
[data-inkmsg="modal-close"]:hover {
	background: rgba(220, 38, 38, 0.08) !important;
	color: var(--fbm-ui-btn-cancel-hover) !important;
	box-shadow: none !important;
	transform: none !important;
}

/* --- Modal-Backdrop Blur (Legacy-Overlays) --- */
.fbm-ds-modal-overlay.active,
.fbm-tutorial-modal-backdrop,
.fbmp-banner-crop-modal__backdrop,
.fbmp-avatar-crop-modal__backdrop,
.fbm-org-dissolve-modal__backdrop,
.fbmp-share-qr-modal-backdrop,
.fbm-legacy-action-modal__backdrop {
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

/* --- fbm-premium-profile: Profilseite & Kontakt-QR-Modal --- */

/* Primäraktionen (grün): teilen, annehmen, antrag senden */
#fbmp-share-qr-open,
.fbmp-profile-button--primary,
.fbmp-profile-legacy-counter__actions .fbm-legacy-counter-accept {
	background: var(--fbm-ui-btn-success) !important;
	border: 2px solid var(--fbm-ui-btn-success) !important;
	color: var(--fbm-ui-btn-success-text) !important;
}

#fbmp-share-qr-open:hover:not(:disabled),
.fbmp-profile-button--primary:hover:not(:disabled),
.fbmp-profile-legacy-counter__actions .fbm-legacy-counter-accept:hover:not(:disabled) {
	background: var(--fbm-ui-btn-success-hover) !important;
	border-color: var(--fbm-ui-btn-success-hover) !important;
	color: var(--fbm-ui-btn-success-text) !important;
}

/* Navigation: Profil bearbeiten, Nachricht senden — Nutzer-Akzent; in Dark/Gold weiße Schrift */
.fbmp-profile-card-identity .fbmp-profile-action a.fbmp-profile-button:not(.fbmp-profile-button-secondary) {
	background: var(--ink-user-accent, var(--fbm-ui-btn-nav)) !important;
	border: 2px solid var(--ink-user-accent, var(--fbm-ui-btn-nav)) !important;
	color: var(--ink-user-on-accent, var(--fbm-ui-btn-nav-text)) !important;
	-webkit-text-fill-color: var(--ink-user-on-accent, var(--fbm-ui-btn-nav-text)) !important;
}

.fbmp-profile-card-identity .fbmp-profile-action a.fbmp-profile-button:not(.fbmp-profile-button-secondary):hover,
.fbmp-profile-card-identity .fbmp-profile-action a.fbmp-profile-button:not(.fbmp-profile-button-secondary):focus {
	background: var(--ink-user-accent-hover, var(--fbm-ui-btn-nav-hover)) !important;
	border-color: var(--ink-user-accent-hover, var(--fbm-ui-btn-nav-hover)) !important;
	color: var(--ink-user-on-accent, var(--fbm-ui-btn-nav-text)) !important;
	-webkit-text-fill-color: var(--ink-user-on-accent, var(--fbm-ui-btn-nav-text)) !important;
}

html[data-theme="dark-mode"] .fbmp-profile-card-identity .fbmp-profile-action a.fbmp-profile-button:not(.fbmp-profile-button-secondary),
body.fbm-user-accent-gold .fbmp-profile-card-identity .fbmp-profile-action a.fbmp-profile-button:not(.fbmp-profile-button-secondary) {
	background: transparent !important;
	border-color: var(--ink-user-accent, var(--fbm-ui-btn-nav)) !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark-mode"] .fbmp-profile-card-identity .fbmp-profile-action a.fbmp-profile-button:not(.fbmp-profile-button-secondary):hover,
html[data-theme="dark-mode"] .fbmp-profile-card-identity .fbmp-profile-action a.fbmp-profile-button:not(.fbmp-profile-button-secondary):focus,
body.fbm-user-accent-gold .fbmp-profile-card-identity .fbmp-profile-action a.fbmp-profile-button:not(.fbmp-profile-button-secondary):hover,
body.fbm-user-accent-gold .fbmp-profile-card-identity .fbmp-profile-action a.fbmp-profile-button:not(.fbmp-profile-button-secondary):focus {
	background: color-mix(in srgb, var(--ink-user-accent, #faca18) 18%, transparent) !important;
	border-color: var(--ink-user-accent-hover, var(--ink-user-accent, #faca18)) !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
}

/* Abbrechen / Schließen (rot): QR-Modal, Ablehnen */
.fbmp-share-qr-modal-footer .fbmp-share-qr-modal-close,
.fbm-legacy-counter-reject {
	background: var(--fbm-ui-btn-cancel) !important;
	border: 2px solid var(--fbm-ui-btn-cancel) !important;
	color: var(--fbm-ui-btn-cancel-text) !important;
}

.fbmp-share-qr-modal-footer .fbmp-share-qr-modal-close:hover,
.fbm-legacy-counter-reject:hover:not(:disabled) {
	background: var(--fbm-ui-btn-cancel-hover) !important;
	border-color: var(--fbm-ui-btn-cancel-hover) !important;
	color: var(--fbm-ui-btn-cancel-text) !important;
}

/* --- fbm-tool-invoices-v5: Kontakte, Honorarnoten, Wizard --- */

/* Grün: Speichern, Weiter, Senden, Zuweisen, Annehmen */
#fbm-assign-groups-submit,
#fbm-transfer-admin-submit:not(:disabled),
#fbm-create-publish,
#fbm-save-publish,
#fbm-org-send-invites,
#fbm-new-contact-choice-qr,
#fbm-new-contact-choice-manual.fbm-btn--success,
#fbm-org-profile-link,
#fbm-h4h-save-and-request,
.fbm-accept-group-invitation,
.fbm-send-message-submit,
.fbm-ui-modal-footer button[type="submit"].fbm-btn,
.fbm-invoice-modal-footer button[type="submit"].fbm-btn,
.fbm-form-actions button[type="submit"].fbm-btn--success,
.fbm-form-actions .fbm-btn--success {
	background: var(--fbm-ui-btn-success) !important;
	border: 2px solid var(--fbm-ui-btn-success) !important;
	color: var(--fbm-ui-btn-success-text) !important;
}

#fbm-assign-groups-submit:hover:not(:disabled),
#fbm-transfer-admin-submit:hover:not(:disabled),
#fbm-create-publish:hover:not(:disabled),
#fbm-save-publish:hover:not(:disabled),
#fbm-org-send-invites:hover:not(:disabled),
#fbm-new-contact-choice-qr:hover:not(:disabled),
#fbm-new-contact-choice-manual.fbm-btn--success:hover:not(:disabled),
#fbm-h4h-save-and-request:hover:not(:disabled),
.fbm-accept-group-invitation:hover:not(:disabled),
.fbm-send-message-submit:hover:not(:disabled),
.fbm-ui-modal-footer button[type="submit"].fbm-btn:hover:not(:disabled),
.fbm-invoice-modal-footer button[type="submit"].fbm-btn:hover:not(:disabled),
.fbm-form-actions button[type="submit"].fbm-btn--success:hover:not(:disabled),
.fbm-form-actions .fbm-btn--success:hover:not(:disabled) {
	background: var(--fbm-ui-btn-success-hover) !important;
	border-color: var(--fbm-ui-btn-success-hover) !important;
	color: var(--fbm-ui-btn-success-text) !important;
}

/* Blau: Zurück, Überspringen, Entwurf, QR-Scan öffnen */
#fbm-create-draft,
#fbm-save-draft,
#fbm-contact-qr-scan-btn,
#fbm-org-add-invite-row,
#fbm-new-contact-choice-manual.fbm-btn--back,
#fbm-h4h-save-only,
#add-einsatz-btn,
.fbm-transfer-admin-skip,
.fbm-org-wizard-skip-profile,
.fbm-org-wizard-skip-invites,
.fbm-form-actions .fbm-btn--back,
.fbm-form-actions .fbm-btn--skip {
	background: var(--fbm-ui-btn-nav) !important;
	border: 2px solid var(--fbm-ui-btn-nav) !important;
	color: var(--fbm-ui-btn-nav-text) !important;
}

#fbm-create-draft:hover:not(:disabled),
#fbm-save-draft:hover:not(:disabled),
#fbm-contact-qr-scan-btn:hover:not(:disabled),
#fbm-org-add-invite-row:hover:not(:disabled),
#fbm-new-contact-choice-manual.fbm-btn--back:hover:not(:disabled),
#fbm-h4h-save-only:hover:not(:disabled),
#add-einsatz-btn:hover:not(:disabled),
.fbm-transfer-admin-skip:hover:not(:disabled),
.fbm-org-wizard-skip-profile:hover:not(:disabled),
.fbm-org-wizard-skip-invites:hover:not(:disabled),
.fbm-form-actions .fbm-btn--back:hover:not(:disabled),
.fbm-form-actions .fbm-btn--skip:hover:not(:disabled) {
	background: var(--fbm-ui-btn-nav-hover) !important;
	border-color: var(--fbm-ui-btn-nav-hover) !important;
	color: var(--fbm-ui-btn-nav-text) !important;
}

/* Rot: Abbrechen, Schließen, Ablehnen */
#cancel-edit-btn,
#cancel-inklusionet-btn,
.fbm-assign-groups-cancel,
#fbm-new-contact-choice-cancel,
#fbm-h4h-modal-cancel,
#fbm-cancel-btn,
#fbm-group-cancel-btn,
#fbm-group-private-cancel-btn,
.fbm-reject-group-invitation,
.fbm-send-message-cancel,
.fbm-form-actions .fbm-btn--cancel,
.fbm-new-contact-choice-actions .fbm-btn--cancel,
.fbm-contact-qr-modal-footer .fbm-btn--cancel {
	background: var(--fbm-ui-btn-cancel) !important;
	border: 2px solid var(--fbm-ui-btn-cancel) !important;
	color: var(--fbm-ui-btn-cancel-text) !important;
}

#cancel-edit-btn:hover,
#cancel-inklusionet-btn:hover,
.fbm-assign-groups-cancel:hover,
#fbm-new-contact-choice-cancel:hover,
#fbm-h4h-modal-cancel:hover,
#fbm-cancel-btn:hover,
#fbm-group-cancel-btn:hover,
#fbm-group-private-cancel-btn:hover,
.fbm-reject-group-invitation:hover:not(:disabled),
.fbm-send-message-cancel:hover,
.fbm-form-actions .fbm-btn--cancel:hover,
.fbm-new-contact-choice-actions .fbm-btn--cancel:hover,
.fbm-contact-qr-modal-footer .fbm-btn--cancel:hover {
	background: var(--fbm-ui-btn-cancel-hover) !important;
	border-color: var(--fbm-ui-btn-cancel-hover) !important;
	color: var(--fbm-ui-btn-cancel-text) !important;
}
