/*
Theme Name: Bambo Plast Child
Theme URI: https://bamboplast.ir
Description: قالب فرزند اختصاصی «بامبو پلاست» — راست‌چین (RTL)، فارسی/عربی، بهینه‌شده برای فروشگاه نایلکس و نایلون. بر پایه قالب Blocksy.
Author: Bambo Plast
Author URI: https://bamboplast.ir
Template: blocksy
Version: 1.0.0
Text Domain: bamboplast
Tags: rtl-language-support, e-commerce, woocommerce
*/

/* ==========================================================================
   متغیرهای برند بامبو پلاست
   ========================================================================== */
:root {
	--bp-green: #1B5E3A;
	--bp-green-light: #7CB342;
	--bp-gold: #C9A227;
	--bp-bark: #143A25;
	--bp-bg: #f6f8f6;
	--bp-surface: #ffffff;
	--bp-border: #e2e8e2;
	--bp-text: #1f2a24;
	--bp-muted: #6b7c72;
	--bp-radius: 14px;
	--bp-radius-lg: 20px;
	--bp-shadow: 0 6px 20px rgba(20, 58, 37, 0.08);
	--bp-shadow-lg: 0 14px 40px rgba(20, 58, 37, 0.14);
	--bp-font: "Vazirmatn", "IRANSans", Tahoma, sans-serif;
}

/* ==========================================================================
   پایه و راست‌چین
   ========================================================================== */
html,
body {
	font-family: var(--bp-font);
	direction: rtl;
	text-align: right;
	color: var(--bp-text);
	background: var(--bp-bg);
}

body {
	line-height: 1.9;
}

a {
	color: var(--bp-green);
	transition: color 0.15s ease;
}

a:hover {
	color: var(--bp-green-light);
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--bp-font);
	font-weight: 700;
	color: var(--bp-bark);
}

/* ==========================================================================
   دکمه‌ها
   ========================================================================== */
.button,
button,
input[type="submit"],
.wp-block-button__link {
	font-family: var(--bp-font);
	border-radius: 10px;
	font-weight: 600;
	transition: all 0.18s ease;
}

.button,
button,
input[type="submit"] {
	background: var(--bp-green);
	color: #fff;
	border: none;
	padding: 12px 24px;
}

.button:hover,
button:hover,
input[type="submit"]:hover {
	background: var(--bp-bark);
	color: #fff;
}

.bp-btn-gold,
.button.bp-gold {
	background: var(--bp-gold);
	color: #2b2205;
}

.bp-btn-gold:hover {
	background: #b8931f;
}

/* ==========================================================================
   هدر
   ========================================================================== */
.bp-site-header {
	background: var(--bp-surface);
	box-shadow: 0 2px 12px rgba(20, 58, 37, 0.06);
	position: sticky;
	top: 0;
	z-index: 100;
}

.bp-topbar {
	background: linear-gradient(135deg, var(--bp-green) 0%, var(--bp-bark) 100%);
	color: #fff;
	font-size: 13px;
	padding: 8px 0;
}

.bp-topbar a {
	color: rgba(255, 255, 255, 0.9);
}

.bp-topbar-inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
}

.bp-main-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 16px 0;
}

.bp-logo {
	display: flex;
	align-items: center;
	gap: 12px;
	text-decoration: none;
}

.bp-logo img {
	height: 52px;
	width: auto;
}

.bp-logo-text {
	display: flex;
	flex-direction: column;
}

.bp-logo-text strong {
	font-size: 20px;
	color: var(--bp-green);
	line-height: 1.3;
}

.bp-logo-text span {
	font-size: 12px;
	color: var(--bp-muted);
}

.bp-header-actions {
	display: flex;
	align-items: center;
	gap: 10px;
}

.bp-icon-btn {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--bp-bg);
	color: var(--bp-green);
	text-decoration: none;
	font-size: 18px;
}

.bp-icon-btn:hover {
	background: var(--bp-green);
	color: #fff;
}

.bp-cart-count {
	position: absolute;
	top: -4px;
	left: -4px;
	background: var(--bp-gold);
	color: #2b2205;
	font-size: 11px;
	font-weight: 700;
	min-width: 20px;
	height: 20px;
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* ==========================================================================
   ناوبری
   ========================================================================== */
.bp-nav {
	background: var(--bp-surface);
	border-top: 1px solid var(--bp-border);
}

.bp-nav ul {
	display: flex;
	gap: 4px;
	list-style: none;
	margin: 0;
	padding: 0;
	flex-wrap: wrap;
}

.bp-nav a {
	display: block;
	padding: 14px 18px;
	font-weight: 600;
	color: var(--bp-text);
	text-decoration: none;
	border-bottom: 3px solid transparent;
}

.bp-nav a:hover,
.bp-nav .current-menu-item > a {
	color: var(--bp-green);
	border-bottom-color: var(--bp-green);
}

/* ==========================================================================
   بنر اصلی
   ========================================================================== */
.bp-hero {
	position: relative;
	background: linear-gradient(135deg, var(--bp-green) 0%, var(--bp-bark) 100%);
	color: #fff;
	border-radius: var(--bp-radius-lg);
	padding: 56px 40px;
	margin: 24px 0;
	overflow: hidden;
}

.bp-hero::after {
	content: "🌿";
	position: absolute;
	left: -20px;
	bottom: -30px;
	font-size: 200px;
	opacity: 0.08;
}

.bp-hero h1 {
	color: #fff;
	font-size: 38px;
	margin: 0 0 16px;
	line-height: 1.4;
}

.bp-hero p {
	font-size: 17px;
	color: rgba(255, 255, 255, 0.88);
	max-width: 620px;
	margin: 0 0 26px;
}

.bp-hero-actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

.bp-hero .bp-btn-outline {
	color: #fff;
	border-color: rgba(255, 255, 255, 0.6);
}

.bp-hero .bp-btn-outline:hover {
	background: #fff;
	color: var(--bp-green);
}

/* ==========================================================================
   کارت‌ها و بخش‌ها
   ========================================================================== */
.bp-section {
	margin: 44px 0;
}

.bp-section-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 24px;
	gap: 16px;
}

.bp-section-head h2 {
	font-size: 26px;
	margin: 0;
	position: relative;
	padding-right: 18px;
}

.bp-section-head h2::before {
	content: "";
	position: absolute;
	right: 0;
	top: 6px;
	bottom: 6px;
	width: 5px;
	border-radius: 3px;
	background: linear-gradient(var(--bp-green), var(--bp-green-light));
}

.bp-section-head a {
	font-weight: 600;
	text-decoration: none;
}

/* ==========================================================================
   شبکه محصولات
   ========================================================================== */
.bp-products-grid,
ul.products {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}

ul.products li.product {
	background: var(--bp-surface);
	border: 1px solid var(--bp-border);
	border-radius: var(--bp-radius);
	overflow: hidden;
	padding: 0;
	margin: 0;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

ul.products li.product:hover {
	box-shadow: var(--bp-shadow-lg);
	transform: translateY(-4px);
}

ul.products li.product img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

ul.products li.product .woocommerce-loop-product__title {
	font-size: 15px;
	font-weight: 700;
	padding: 12px 14px 4px;
	color: var(--bp-text);
}

ul.products li.product .price {
	color: var(--bp-green);
	font-weight: 700;
	font-size: 16px;
	padding: 0 14px;
}

ul.products li.product .button {
	margin: 12px 14px 16px;
	display: block;
	text-align: center;
}

/* ==========================================================================
   صفحه محصول
   ========================================================================== */
.single-product div.product {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	margin: 32px 0;
}

@media (max-width: 860px) {
	.single-product div.product {
		grid-template-columns: 1fr;
	}
}

.single-product .product_title {
	font-size: 30px;
	margin-bottom: 12px;
}

.single-product .price {
	color: var(--bp-green);
	font-size: 26px;
	font-weight: 700;
}

.single-product .woocommerce-product-details__short-description {
	color: var(--bp-muted);
	margin: 16px 0;
}

.bp-product-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 18px 0;
}

.bp-product-meta .bp-meta-item {
	background: var(--bp-bg);
	border-radius: 10px;
	padding: 8px 14px;
	font-size: 13px;
	color: var(--bp-bark);
}

/* ==========================================================================
   سبد خرید و تسویه
   ========================================================================== */
.woocommerce-cart table.cart,
.woocommerce-checkout-review-order-table {
	background: var(--bp-surface);
	border-radius: var(--bp-radius);
	overflow: hidden;
}

.woocommerce-cart table.cart th,
.woocommerce-checkout-review-order-table th {
	background: var(--bp-bg);
	text-align: right;
}

.woocommerce-cart .cart_totals,
.woocommerce-checkout #order_review {
	background: var(--bp-surface);
	border: 1px solid var(--bp-border);
	border-radius: var(--bp-radius);
	padding: 20px;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	border: 1px solid var(--bp-border);
	border-radius: 10px;
	padding: 11px 14px;
	font-family: var(--bp-font);
}

/* ==========================================================================
   حساب کاربری
   ========================================================================== */
.woocommerce-MyAccount-navigation ul {
	list-style: none;
	padding: 0;
	margin: 0;
	background: var(--bp-surface);
	border-radius: var(--bp-radius);
	overflow: hidden;
	border: 1px solid var(--bp-border);
}

.woocommerce-MyAccount-navigation li a {
	display: block;
	padding: 13px 18px;
	text-decoration: none;
	color: var(--bp-text);
	border-bottom: 1px solid var(--bp-border);
	font-weight: 600;
}

.woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-MyAccount-navigation li a:hover {
	background: var(--bp-bg);
	color: var(--bp-green);
}

/* ==========================================================================
   فوتر
   ========================================================================== */
.bp-site-footer {
	background: var(--bp-bark);
	color: rgba(255, 255, 255, 0.82);
	margin-top: 60px;
	padding: 48px 0 20px;
}

.bp-site-footer h3 {
	color: #fff;
	font-size: 16px;
	margin-bottom: 16px;
}

.bp-site-footer a {
	color: rgba(255, 255, 255, 0.78);
	text-decoration: none;
}

.bp-site-footer a:hover {
	color: var(--bp-gold);
}

.bp-footer-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 30px;
}

.bp-footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	margin-top: 34px;
	padding-top: 18px;
	text-align: center;
	font-size: 13px;
	color: rgba(255, 255, 255, 0.6);
}

/* ==========================================================================
   واکنش‌گرا
   ========================================================================== */
@media (max-width: 768px) {
	.bp-hero {
		padding: 36px 22px;
	}

	.bp-hero h1 {
		font-size: 27px;
	}

	.bp-main-header {
		flex-wrap: wrap;
	}

	.bp-nav ul {
		overflow-x: auto;
		flex-wrap: nowrap;
	}
}

/* ==========================================================================
   سبد خرید
   ========================================================================== */
.bp-cart-wrap { display: grid; gap: 24px; }
.woocommerce-cart-form__contents { width: 100%; border-collapse: collapse; background: var(--bp-surface); border-radius: var(--bp-radius-lg); overflow: hidden; box-shadow: var(--bp-shadow); }
.woocommerce-cart-form__contents th { background: var(--bp-bark); color: #fff; padding: 14px; font-weight: 600; }
.woocommerce-cart-form__contents td { padding: 16px 14px; border-bottom: 1px solid var(--bp-border); vertical-align: middle; }
.woocommerce-cart-form__contents .product-thumbnail img { width: 72px; height: 72px; object-fit: cover; border-radius: 12px; }
.woocommerce-cart-form__contents .product-remove a { color: #c0392b; font-size: 22px; text-decoration: none; }
.cart-collaterals { background: var(--bp-surface); border-radius: var(--bp-radius-lg); box-shadow: var(--bp-shadow); padding: 24px; }
.cart-collaterals .cart_totals h2 { margin-top: 0; }
.bp-update-cart { background: var(--bp-green-light) !important; }

/* ==========================================================================
   احراز هویت (ورود/ثبت‌نام)
   ========================================================================== */
.bp-auth { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; max-width: 900px; margin: 0 auto; }
.bp-auth-card { background: var(--bp-surface); border-radius: var(--bp-radius-lg); box-shadow: var(--bp-shadow); padding: 32px; }
.bp-auth-title { margin-top: 0; color: var(--bp-green); }
.bp-auth-sub { color: var(--bp-muted); }
.bp-auth-register { background: linear-gradient(160deg, var(--bp-green) 0%, var(--bp-bark) 100%); color: #fff; }
.bp-auth-register h3 { color: #fff; }
.bp-auth-benefits { list-style: none; padding: 0; }
.bp-auth-benefits li { padding: 6px 0; }
.bp-otp-form .form-row { margin-bottom: 16px; }
.bp-otp-form label { display: block; font-weight: 600; margin-bottom: 6px; }
.bp-otp-form input.input-text { width: 100%; padding: 12px 14px; border: 1px solid var(--bp-border); border-radius: 10px; font-family: var(--bp-font); }
.bp-auth-note { font-size: 13px; color: var(--bp-muted); }

/* ==========================================================================
   ناوبری حساب کاربری
   ========================================================================== */
.bp-account-nav ul { list-style: none; padding: 0; margin: 0; background: var(--bp-surface); border-radius: var(--bp-radius-lg); box-shadow: var(--bp-shadow); overflow: hidden; }
.bp-account-nav li a { display: flex; align-items: center; gap: 10px; padding: 14px 18px; color: var(--bp-text); text-decoration: none; border-bottom: 1px solid var(--bp-border); }
.bp-account-nav li.is-active a, .bp-account-nav li a:hover { background: var(--bp-green); color: #fff; }
.bp-nav-ico { font-size: 18px; }
.bp-account-nav-withdraw a { color: var(--bp-gold); font-weight: 700; }

/* ==========================================================================
   کیف پول و پنل‌ها
   ========================================================================== */
.bp-wallet-panel, .bp-visitor-panel, .bp-seller-panel { display: grid; gap: 20px; }
.bp-withdraw-form { background: var(--bp-surface); border: 1px dashed var(--bp-green-light); border-radius: var(--bp-radius); padding: 20px; }
.bp-withdraw-form .form-row { margin-bottom: 12px; }
.bp-withdraw-form input { width: 100%; padding: 10px 12px; border: 1px solid var(--bp-border); border-radius: 8px; font-family: var(--bp-font); }
.bp-muted { color: var(--bp-muted); }
.bp-empty { text-align: center; }

@media (max-width: 860px) {
	.bp-auth { grid-template-columns: 1fr; }
	.woocommerce-cart-form__contents thead { display: none; }
	.woocommerce-cart-form__contents td { display: block; text-align: left; }
	.woocommerce-cart-form__contents td::before { content: attr(data-title); display: block; font-weight: 700; margin-bottom: 6px; }
}
