/*
 * Lucoze Branding Overrides
 * Color Palette:
 *   Primary:   #c15f3c (terracotta)
 *   Primary Hover: #a8502f
 *   Secondary: #b1ada1 (warm gray)
 *   Light:     #f4f3ee (off-white)
 *   White:     #ffffff
 */

/* ── Global theme — override Frappe's primary color ── */
:root {
	--primary: #c15f3c !important;
	--primary-color: #c15f3c !important;
	--btn-primary: #c15f3c !important;
	--btn-primary-dark: #a8502f !important;
}

/* Primary buttons */
.btn-primary,
.btn-primary-dark,
.btn-login {
	background-color: #c15f3c !important;
	border-color: #c15f3c !important;
	color: #fff !important;
}

.btn-primary:hover,
.btn-primary-dark:hover,
.btn-login:hover {
	background-color: #a8502f !important;
	border-color: #a8502f !important;
}

.btn-primary:focus,
.btn-login:focus {
	box-shadow: 0 0 0 0.2rem rgba(193, 95, 60, 0.25) !important;
}

/* Links */
a.text-muted:hover,
.page-card a:hover,
.login-content a {
	color: #c15f3c !important;
}

/* Login page specific */
.page-card .btn-login {
	background-color: #c15f3c !important;
}

.page-card .btn-login-with-email-link {
	border-color: #c15f3c !important;
	color: #c15f3c !important;
}

.page-card .btn-login-with-email-link:hover {
	background-color: #c15f3c0d;
}

/* Sidebar active item */
.body-sidebar .standard-sidebar-item.selected,
.body-sidebar .standard-sidebar-item.active {
	color: #c15f3c;
}

.body-sidebar .standard-sidebar-item.selected .sidebar-item-icon,
.body-sidebar .standard-sidebar-item.active .sidebar-item-icon {
	color: #c15f3c;
}

/* Progress bars and toggles */
.progress-bar {
	background-color: #c15f3c;
}

/* Frappe control focus */
.frappe-control .form-control:focus {
	border-color: #c15f3c;
	box-shadow: 0 0 0 0.2rem rgba(193, 95, 60, 0.15);
}

/* Tags and badges */
.badge-primary {
	background-color: #c15f3c;
}

/* ── Login page ── */

/* Login page spacing — when subtitle is removed by JS */

/* ── Desktop Icon color overrides ── */

/* Override ERPNext blue icon containers */
.icon-container[style*="background-color: #0289F71A"],
.icon-container[style*="background-color: #0289f71a"] {
	background-color: #c15f3c1a !important;
}

.icon-container svg[style*="color: #0289F7"],
.icon-container svg[style*="color: #0289f7"] {
	color: #c15f3c !important;
}

/* Override HRMS teal icon containers */
.icon-container[style*="background-color: #29CD421A"],
.icon-container[style*="background-color: #29cd421a"],
.icon-container[style*="background-color: #00BCD41A"],
.icon-container[style*="background-color: #00bcd41a"] {
	background-color: #c15f3c1a !important;
}

.icon-container svg[style*="color: #29CD42"],
.icon-container svg[style*="color: #29cd42"],
.icon-container svg[style*="color: #00BCD4"],
.icon-container svg[style*="color: #00bcd4"] {
	color: #c15f3c !important;
}

/* Override gray icon containers */
.icon-container[style*="background-color: #7B808A1A"],
.icon-container[style*="background-color: #7b808a1a"] {
	background-color: #b1ada11a !important;
}

.icon-container svg[style*="color: #7B808A"],
.icon-container svg[style*="color: #7b808a"] {
	color: #b1ada1 !important;
}

/* ── Solid desktop icon style overrides ── */

.icon-container[style*="background-color: #0289F7"],
.icon-container[style*="background-color: #0289f7"] {
	background-color: #c15f3c !important;
}

.icon-container[style*="background-color: #29CD42"],
.icon-container[style*="background-color: #29cd42"],
.icon-container[style*="background-color: #00BCD4"],
.icon-container[style*="background-color: #00bcd4"] {
	background-color: #c15f3c !important;
}

.icon-container[style*="background-color: #7B808A"],
.icon-container[style*="background-color: #7b808a"] {
	background-color: #b1ada1 !important;
}

/* ── Sidebar header icon ── */

.header-logo-container {
	background-color: #c15f3c1a !important;
}

.header-logo-container svg {
	color: #c15f3c !important;
}

/* ── Onboarding Checklist Widget ── */
.lucoze-onboarding {
	background: #fff;
	border: 1px solid var(--border-color, #e0dfda);
	border-radius: 8px;
	padding: 20px;
	margin-bottom: 20px;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}

.lucoze-onboarding__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 12px;
}

.lucoze-onboarding__title {
	font-size: 15px;
	font-weight: 600;
	color: var(--text-color, #2c2c2c);
}

.lucoze-onboarding__wave {
	font-size: 18px;
}

.lucoze-onboarding__dismiss {
	background: none;
	border: 1px solid var(--border-color, #e0dfda);
	border-radius: 4px;
	cursor: pointer;
	font-size: 16px;
	color: var(--text-muted, #6b6b6b);
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.lucoze-onboarding__dismiss:hover {
	background: var(--bg-light-gray, #f4f3ee);
}

.lucoze-onboarding__progress {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 16px;
}

.lucoze-onboarding__progress-bar {
	flex: 1;
	height: 6px;
	background: var(--bg-light-gray, #f0f0f0);
	border-radius: 3px;
	overflow: hidden;
}

.lucoze-onboarding__progress-fill {
	height: 100%;
	background: #c15f3c;
	border-radius: 3px;
	transition: width 0.3s ease;
}

.lucoze-onboarding__progress-text {
	font-size: 12px;
	color: var(--text-muted, #6b6b6b);
	white-space: nowrap;
}

.lucoze-onboarding__steps {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.lucoze-onboarding__step {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 8px 0;
}

.lucoze-onboarding__step-icon {
	flex-shrink: 0;
	padding-top: 2px;
}

.lucoze-onboarding__step-content {
	flex: 1;
	min-width: 0;
}

.lucoze-onboarding__step-name {
	font-size: 13px;
	font-weight: 600;
	color: var(--text-color, #2c2c2c);
}

.lucoze-onboarding__step-name--done {
	color: var(--text-muted, #6b6b6b);
	text-decoration: line-through;
}

.lucoze-onboarding__step-desc {
	font-size: 12px;
	color: var(--text-muted, #6b6b6b);
	margin-top: 2px;
}

.lucoze-onboarding__step-action {
	flex-shrink: 0;
	padding-top: 2px;
}

/* ── Login page — logo at top-left ── */
.lucoze-login-logo {
	position: fixed;
	top: 24px;
	left: 32px;
	max-height: 36px;
	z-index: 10;
}

/* Report tier lock badges */
.lucoze-report-badge {
	display: inline-block;
	margin-left: 8px;
	padding: 1px 6px;
	border-radius: 10px;
	font-size: 9px;
	font-weight: 700;
	color: #fff;
	background: #7C5CFC;
	vertical-align: middle;
	letter-spacing: 0.5px;
}
