/* Rabor base layout — standalone theme shell */
:root {
	--rabor-color-text: #646464;
	--rabor-color-primary: #201c70;
	--rabor-color-accent: #f15921;
	--rabor-container: 1310px;
	--rabor-container-padding: 15px;
	--rabor-gap: 24px;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	/* Native smooth scroll on html makes continuous wheel scrolling feel laggy. */
	scroll-behavior: auto;
}

body.rabor-theme {
	margin: 0;
	font-family: "Yekan Bakh FaNum", Tahoma, sans-serif;
	font-size: 16px;
	line-height: 1.6;
	color: var(--rabor-color-text);
	background: #fff;
}

/* Site-wide button transitions */
.rabor-theme :is(
	.button,
	button:not([disabled]),
	input[type="submit"],
	input[type="button"],
	.fancy-btn,
	.rabor-topbar__btn,
	.rabor-header__search-submit,
	.rabor-header__account--pill,
	.rabor-header__cart-toggle,
	.rabor-mini-cart__close,
	.rabor-shop-filters-toggle,
	.rabor-scroll-top,
	.rabor-header__search-more,
	.rabor-blog-pagination .page-numbers,
	.rabor-main .wd-nav-tabs.products-tabs-title > li > a
) {
	transition:
		color 0.25s ease,
		background 0.25s ease,
		background-color 0.25s ease,
		border-color 0.25s ease,
		box-shadow 0.25s ease,
		transform 0.25s ease,
		opacity 0.25s ease,
		fill 0.25s ease;
}

.rabor-theme .fancy-btn .fancy,
.rabor-theme .fancy-btn .fancy-icon {
	transition:
		color 0.25s ease,
		background 0.25s ease,
		background-color 0.25s ease,
		fill 0.25s ease;
}

.rabor-site {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

.rabor-main {
	flex: 1 0 auto;
	width: 100%;
	position: relative;
	z-index: 1;
}

.rabor-container {
	width: 100%;
	max-width: var(--rabor-container);
	margin-inline: auto;
	padding-inline: var(--rabor-container-padding);
}

.rabor-content-area {
	padding-block: 1.5rem;
}

.rabor-content-area--front {
	padding-block: 0;
	overflow-x: clip;
}

.rabor-content-area--front .rabor-entry-content {
	max-width: 100%;
}

/* Grid used by theme shortcodes (replaces wd-grid-g in new code) */
.rabor-grid {
	display: grid;
	gap: var(--rabor-gap, 24px);
	grid-template-columns: repeat(var(--rabor-cols, 4), minmax(0, 1fr));
}

@media (max-width: 1024px) {
	.rabor-grid {
		grid-template-columns: repeat(var(--rabor-cols-md, 3), minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.rabor-grid {
		grid-template-columns: repeat(var(--rabor-cols-sm, 2), minmax(0, 1fr));
	}
}

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
	word-wrap: normal !important;
}

.screen-reader-text:focus,
.rabor-skip-link:focus {
	clip: auto !important;
	display: block;
	height: auto;
	width: auto;
	top: 5px;
	right: 5px;
	left: auto;
	z-index: 100000;
	padding: 15px 23px 14px;
	background-color: #f1f1f1;
	color: #201c70;
	font-size: 14px;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
}

/* ── Global mobile polish ── */
@media (max-width: 991px) {
	body.rabor-theme {
		overflow-x: clip;
	}

	.rabor-main,
	.rabor-content-area,
	.rabor-content-area--front,
	.rabor-content-area--elementor {
		overflow-x: clip;
		max-width: 100%;
	}

	.rabor-main .elementor,
	.rabor-main .e-con,
	.rabor-main .e-con-inner {
		max-width: 100%;
	}

	/* Woodmart sticky toolbar — disabled in theme but hide if markup remains */
	body.rabor-custom-shell .wd-toolbar {
		display: none !important;
	}
}

@media (max-width: 767px) {
	.rabor-container,
	.rabor-shop-elementor.elementor-2127,
	.rabor-main .elementor-2127 {
		padding-inline: 12px;
	}

	.rabor-content-area--blog .elementor-pagination .page-numbers,
	.rabor-blog-pagination .page-numbers {
		min-width: 38px;
		height: 38px;
		font-size: 0.85rem;
	}
}

/* ── Site-wide breadcrumb bar (rabor_render_global_breadcrumb_bar) ── */
.rabor-breadcrumb-bar {
	width: 100%;
	background: #f7f7fb;
	border-bottom: 1px solid #ececf3;
}

.rabor-breadcrumb-bar__inner {
	width: 100%;
	max-width: var(--rabor-container);
	margin-inline: auto;
	padding-block: 0.7rem;
	padding-inline: var(--rabor-container-padding);
}

/* Breadcrumb text/links inside the bar reuse the shared .rabor-breadcrumbs rules. */
.rabor-breadcrumb-bar .rabor-breadcrumbs,
.rabor-breadcrumb-bar .rank-math-breadcrumb {
	font-size: 0.8rem;
}

@media (max-width: 767px) {
	.rabor-breadcrumb-bar__inner {
		padding-block: 0.55rem;
	}
	.rabor-breadcrumb-bar .rabor-breadcrumbs,
	.rabor-breadcrumb-bar .rank-math-breadcrumb {
		font-size: 0.74rem;
	}
	/* Keep a long trail on one scrollable line rather than wrapping messily. */
	.rabor-breadcrumb-bar .rabor-breadcrumbs p,
	.rabor-breadcrumb-bar .rank-math-breadcrumb p {
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	.rabor-breadcrumb-bar .rabor-breadcrumbs p::-webkit-scrollbar,
	.rabor-breadcrumb-bar .rank-math-breadcrumb p::-webkit-scrollbar {
		display: none;
	}
	.rabor-breadcrumb-bar .rabor-breadcrumbs a,
	.rabor-breadcrumb-bar .rank-math-breadcrumb a,
	.rabor-breadcrumb-bar .rabor-breadcrumbs .last,
	.rabor-breadcrumb-bar .rank-math-breadcrumb .last {
		white-space: nowrap;
	}
}
