/* ==========================================================================
   BizFlowHub App Custom Styles & Branding
   ========================================================================== */

/* Navbar Brand & App Logo Overrides */
.navbar-brand img,
.navbar-brand .app-logo,
.app-logo {
	content: url("/assets/bizflowhub_app/images/logo.png") !important;
	max-height: 28px !important;
	width: auto !important;
	object-fit: contain !important;
}

/* Desk Navbar Brand alignment */
.navbar-brand {
	display: inline-flex !important;
	align-items: center !important;
}

/* Hide Frappe powered footer elements across Desk and Portal */
.footer-powered,
.powered-by-frappe,
.frappe-footer,
.desk-footer,
[data-state*="powered-by"] {
	display: none !important;
	visibility: hidden !important;
}

/* ==========================================================================
   Global Announcement Banner - Light & Dark Theme Custom Variables
   ========================================================================== */

:root,
[data-theme="light"] {
	/* Info Variant (Light) */
	--bizflowhub-banner-bg-info: var(--alert-bg-info, #ebf8ff);
	--bizflowhub-banner-text-info: var(--alert-text-info, #2b6cb0);
	--bizflowhub-banner-border-info: rgba(49, 130, 206, 0.35);

	/* Warning Variant (Light) */
	--bizflowhub-banner-bg-warning: var(--alert-bg-warning, #fffaf0);
	--bizflowhub-banner-text-warning: var(--alert-text-warning, #c05621);
	--bizflowhub-banner-border-warning: rgba(221, 107, 32, 0.35);

	/* Danger Variant (Light) */
	--bizflowhub-banner-bg-danger: var(--alert-bg-danger, #fff5f5);
	--bizflowhub-banner-text-danger: var(--alert-text-danger, #c53030);
	--bizflowhub-banner-border-danger: rgba(229, 62, 62, 0.35);

	/* Success Variant (Light) */
	--bizflowhub-banner-bg-success: var(--alert-bg-success, #f0fff4);
	--bizflowhub-banner-text-success: var(--alert-text-success, #2f855a);
	--bizflowhub-banner-border-success: rgba(56, 161, 105, 0.35);
}

[data-theme="dark"] {
	/* Info Variant (Dark) */
	--bizflowhub-banner-bg-info: var(--alert-bg-info, rgba(43, 108, 176, 0.28));
	--bizflowhub-banner-text-info: var(--alert-text-info, #90cdf4);
	--bizflowhub-banner-border-info: rgba(99, 179, 237, 0.35);

	/* Warning Variant (Dark) */
	--bizflowhub-banner-bg-warning: var(--alert-bg-warning, rgba(192, 86, 33, 0.28));
	--bizflowhub-banner-text-warning: var(--alert-text-warning, #fbd38d);
	--bizflowhub-banner-border-warning: rgba(237, 137, 54, 0.35);

	/* Danger Variant (Dark) */
	--bizflowhub-banner-bg-danger: var(--alert-bg-danger, rgba(197, 48, 48, 0.28));
	--bizflowhub-banner-text-danger: var(--alert-text-danger, #feb2b2);
	--bizflowhub-banner-border-danger: rgba(245, 101, 101, 0.35);

	/* Success Variant (Dark) */
	--bizflowhub-banner-bg-success: var(--alert-bg-success, rgba(47, 133, 90, 0.28));
	--bizflowhub-banner-text-success: var(--alert-text-success, #9ae6b4);
	--bizflowhub-banner-border-success: rgba(72, 187, 120, 0.35);
}

@media (prefers-color-scheme: dark) {
	body:not([data-theme="light"]):not([data-theme-mode="light"]) {
		--bizflowhub-banner-bg-info: var(--alert-bg-info, rgba(43, 108, 176, 0.28));
		--bizflowhub-banner-text-info: var(--alert-text-info, #90cdf4);
		--bizflowhub-banner-border-info: rgba(99, 179, 237, 0.35);

		--bizflowhub-banner-bg-warning: var(--alert-bg-warning, rgba(192, 86, 33, 0.28));
		--bizflowhub-banner-text-warning: var(--alert-text-warning, #fbd38d);
		--bizflowhub-banner-border-warning: rgba(237, 137, 54, 0.35);

		--bizflowhub-banner-bg-danger: var(--alert-bg-danger, rgba(197, 48, 48, 0.28));
		--bizflowhub-banner-text-danger: var(--alert-text-danger, #feb2b2);
		--bizflowhub-banner-border-danger: rgba(245, 101, 101, 0.35);

		--bizflowhub-banner-bg-success: var(--alert-bg-success, rgba(47, 133, 90, 0.28));
		--bizflowhub-banner-text-success: var(--alert-text-success, #9ae6b4);
		--bizflowhub-banner-border-success: rgba(72, 187, 120, 0.35);
	}
}

/* ==========================================================================
   Announcement Banner Component Styles (Non-dismissible)
   ========================================================================== */

#bizflowhub-announcement-banner {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 9px 18px;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.45;
	border-bottom: 1px solid transparent;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
	z-index: 1020;
	position: relative;
	box-sizing: border-box;
}

#bizflowhub-announcement-banner .bizflowhub-banner-content {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 1;
	justify-content: center;
	text-align: center;
	overflow: hidden;
}

#bizflowhub-announcement-banner .bizflowhub-banner-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

#bizflowhub-announcement-banner .bizflowhub-banner-icon svg {
	width: 16px;
	height: 16px;
	stroke: currentColor;
}

#bizflowhub-announcement-banner .bizflowhub-banner-text {
	word-break: break-word;
	letter-spacing: 0.15px;
}

/* Variant classes */
#bizflowhub-announcement-banner.bizflowhub-banner-info {
	background-color: var(--bizflowhub-banner-bg-info);
	color: var(--bizflowhub-banner-text-info);
	border-color: var(--bizflowhub-banner-border-info);
}

#bizflowhub-announcement-banner.bizflowhub-banner-warning {
	background-color: var(--bizflowhub-banner-bg-warning);
	color: var(--bizflowhub-banner-text-warning);
	border-color: var(--bizflowhub-banner-border-warning);
}

#bizflowhub-announcement-banner.bizflowhub-banner-danger {
	background-color: var(--bizflowhub-banner-bg-danger);
	color: var(--bizflowhub-banner-text-danger);
	border-color: var(--bizflowhub-banner-border-danger);
}

#bizflowhub-announcement-banner.bizflowhub-banner-success {
	background-color: var(--bizflowhub-banner-bg-success);
	color: var(--bizflowhub-banner-text-success);
	border-color: var(--bizflowhub-banner-border-success);
}
