/**
 * Header alignment: Sign in / Sign Up to far right on desktop,
 * and optimized layout for mobile/tablet.
 * Loaded after Kadence header CSS so it takes effect.
 */

/* ---------- Desktop: push Sign in / Sign Up to far right of header row ---------- */
@media screen and (min-width: 1025px) {
	/* Classic Kadence header – row uses full width so right section can extend to edge */
	#masthead #main-header .site-main-header-wrap .site-header-row,
	#masthead #main-header .site-main-header-wrap .site-main-header-inner-wrap {
		width: 100%;
	}
	/* Right section: take remaining space and align content to end */
	#masthead #main-header .site-main-header-wrap .site-header-main-section-right,
	#masthead #main-header .site-main-header-wrap .site-header-main-section-right-center {
		justify-content: flex-end !important;
		flex: 1 1 0% !important;
		min-width: 0;
	}
	/* Push the button group to the right edge (works even if parent flex isn’t applied) */
	#masthead #main-header .site-main-header-wrap .site-header-main-section-right .header-button-wrap,
	#masthead #main-header .site-main-header-wrap .site-header-main-section-right-center .header-button-wrap,
	#masthead #main-header .site-main-header-wrap .site-header-main-section-right .header-navigation-wrap:last-child,
	#masthead #main-header .site-main-header-wrap .site-header-main-section-right-center .header-navigation-wrap:last-child {
		margin-left: auto !important;
	}
	#masthead #main-header .site-main-header-wrap .site-header-main-section-right .site-header-item:last-child,
	#masthead #main-header .site-main-header-wrap .site-header-main-section-right-center .site-header-item:last-child {
		margin-left: auto !important;
	}
	/* When Sign in/Sign up are menu items: push the menu container to the right */
	#masthead #main-header .site-main-header-wrap .site-header-main-section-right .primary-menu-container:last-child,
	#masthead #main-header .site-main-header-wrap .site-header-main-section-right .header-menu-container:last-child {
		margin-left: auto !important;
	}
}

@media screen and (min-width: 1025px) {
	/* Kadence Blocks header (used on front page) – first row, right column.
	   Blocks header has no #masthead; it lives inside #wrapper. */
	#wrapper .wp-block-kadence-header .wp-block-kadence-header-row:first-of-type .wp-block-kadence-header-column:last-child,
	#wrapper .wp-block-kadence-header .wp-block-kadence-header-row:first-of-type .wp-block-kadence-header-section:last-child,
	#wrapper .wp-block-kadence-header .wp-block-kadence-header-row:first-of-type .wp-block-kadence-header-column-center-right,
	#wrapper .wp-block-kadence-header .wp-block-kadence-header-row:first-of-type .kadence-header-row-inner > .wp-block-kadence-header-column:last-child,
	#wrapper .wp-block-kadence-header .kb-header-container .wp-block-kadence-header-row:first-of-type .kadence-header-row-inner > .wp-block-kadence-header-column:last-child,
	#wrapper .wp-block-kadence-header .kb-header-container .wp-block-kadence-header-row:first-of-type .wp-block-kadence-header-column-center-right {
		justify-content: flex-end !important;
		flex: 1 1 0% !important;
		min-width: 0;
		margin-left: auto !important;
	}
	/* Ensure the first row inner uses flex so the last column can grow and align right */
	#wrapper .wp-block-kadence-header .wp-block-kadence-header-row:first-of-type .kadence-header-row-inner,
	#wrapper .wp-block-kadence-header .kb-header-container .wp-block-kadence-header-row:first-of-type .kadence-header-row-inner {
		display: flex !important;
		flex-wrap: wrap;
		width: 100%;
	}
}

/* ---------- Mobile & tablet: Sign in / Sign Up layout and touch targets ---------- */
@media screen and (max-width: 1024px) {
	/* Kadence Blocks header (front page): right column on mobile – wrap and tap size */
	#wrapper .wp-block-kadence-header .wp-block-kadence-header-row:first-of-type .wp-block-kadence-header-column:last-child,
	#wrapper .wp-block-kadence-header .wp-block-kadence-header-row:first-of-type .wp-block-kadence-header-section:last-child,
	#wrapper .wp-block-kadence-header .wp-block-kadence-header-row:first-of-type .wp-block-kadence-header-column-center-right,
	#wrapper .wp-block-kadence-header .wp-block-kadence-header-row:first-of-type .kadence-header-row-inner > .wp-block-kadence-header-column:last-child {
		justify-content: flex-end;
		flex-wrap: wrap;
		gap: 0.5rem;
	}
	#wrapper .wp-block-kadence-header a.wp-block-kadence-singlebtn,
	#wrapper .wp-block-kadence-header .wp-block-kadence-navigation-link {
		min-height: 44px;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		padding: 0.5em 1em;
		box-sizing: border-box;
	}

	/* Classic header: mobile header bar – right section */
	#mobile-header .site-main-header-wrap .site-header-main-section-right,
	#mobile-header .site-main-header-wrap .site-header-main-section-right-center,
	#mobile-header .site-bottom-header-wrap .site-header-section-right,
	#mobile-header .site-bottom-header-wrap .site-header-section-right-center {
		justify-content: flex-end;
		flex-wrap: wrap;
		gap: 0.5rem;
	}
	/* Single header button in mobile header – comfortable tap size */
	#mobile-header .header-button-wrap,
	#mobile-header .mobile-header-button-wrap {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}
	#mobile-header .header-button,
	#mobile-header .mobile-header-button-wrap .mobile-header-button {
		min-height: 44px;
		padding: 0.5em 1em;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
	}
}

/* Mobile drawer (slide-out menu): style auth links / buttons for easy tap */
@media screen and (max-width: 1024px) {
	#mobile-drawer .header-button-wrap,
	#mobile-drawer .mobile-header-button-wrap {
		display: flex;
		flex-wrap: wrap;
		gap: 0.75rem;
		margin-top: 0.5rem;
		margin-bottom: 0.5rem;
	}
	#mobile-drawer .header-button-wrap .header-button,
	#mobile-drawer .mobile-header-button-wrap .mobile-header-button {
		min-height: 44px;
		padding: 0.6em 1.25em;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		flex: 1 1 auto;
		min-width: 120px;
		box-sizing: border-box;
	}
	/* If Sign in/Sign up are menu items in the drawer, ensure tap-friendly size */
	#mobile-drawer .main-navigation .menu-item a[href*="login"],
	#mobile-drawer .main-navigation .menu-item a[href*="register"],
	#mobile-drawer .main-navigation .menu-item a[href*="signin"],
	#mobile-drawer .main-navigation .menu-item a[href*="signup"] {
		min-height: 44px;
		display: inline-flex;
		align-items: center;
		padding: 0.5em 0.75em;
	}
}
