motayeb/style.css
Kazem Alghasi c06ab0b8a2 feat(theme): implement full UI redesign and WooCommerce integration
Implement a complete overhaul of the theme templates to match the
Kolli UI design, including enhanced WooCommerce support, dark mode
functionality, and improved responsive layouts.

- Redesign core templates: front-page, archive, single, and product pages
- Implement dynamic WooCommerce templates for shop, single product, and checkout
- Add comprehensive asset structure including fonts, images, and custom CSS/JS
- Integrate Tailwind CSS via CDN with custom configuration for brand colors
- Add dark mode support with local storage persistence
- Refactor functions.php for better theme setup and script enqueuing
- Implement custom product meta fields for ingredients and health benefits
- Add responsive design improvements and custom animations
2026-08-18 02:28:57 +03:30

1723 lines
34 KiB
CSS

/*
Theme Name: مطیب
Theme URI: https://www.git.vernahost.ir/gitmodir110/motayeb
Author: تیم توسعه مطیب
Author URI: https://www.git.vernahost.ir/gitmodir110/motayeb
Description: تم فروشگاهی اختصاصی برای محصولات ارگانیک و طبیعی - طعم واقعی طبیعت
Version: 1.0.0
License: GPL v2 or later
Text Domain: motayeb
Domain Path: /languages
*/
/* ============================================
استایل‌های پایه (Base Styles)
============================================ */
/* Reset & Normalize */
*,
*::before,
*::after {
margin: 0;
padding: 0;
box-sizing: border-box;
}
/* ============================================
تعریف فونت وزیر (میزبانی محلی)
============================================ */
@font-face {
font-family: 'Vazirmatn';
src: url('assets/fonts/Vazirmatn-Regular.woff2') format('woff2');
font-weight: normal;
font-style: normal;
font-display: swap; /* باعث می‌شود متن سریعاً با فونت پیش‌فرض نشان داده شود و بعد جایگزین شود */
}
@font-face {
font-family: 'Vazirmatn';
src: url('assets/fonts/Vazirmatn-Bold.woff2') format('woff2');
font-weight: bold;
font-style: normal;
font-display: swap;
}
/* Variables */
:root {
--primary-color: #2d7d46;
--primary-dark: #1e5a30;
--secondary-color: #f5a623;
--text-color: #333333;
--bg-color: #ffffff;
--light-bg: #f9f9f9;
--border-color: #e0e0e0;
--font-family: 'IRANSans', 'Tahoma', sans-serif;
--transition: all 0.3s ease;
}
/* Dark Mode Variables */
body.dark-mode {
--primary-color: #3a9d5a;
--primary-dark: #2d7d46;
--text-color: #f0f0f0;
--bg-color: #1a1a1a;
--light-bg: #2a2a2a;
--border-color: #444444;
}
/* Base */
html {
direction: rtl;
scroll-behavior: smooth;
}
body {
font-family: var(--font-family);
color: var(--text-color);
background-color: var(--bg-color);
line-height: 1.6;
transition: var(--transition);
}
a {
color: var(--primary-color);
text-decoration: none;
transition: var(--transition);
}
a:hover {
color: var(--primary-dark);
}
.container {
max-width: 1200px;
margin: 0 auto;
padding: 0 15px;
}
/* ============================================
هدر (Header)
============================================ */
.site-header {
background: var(--bg-color);
border-bottom: 1px solid var(--border-color);
padding: 15px 0;
position: sticky;
top: 0;
z-index: 1000;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
transition: var(--transition);
}
.header-inner {
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
gap: 15px;
}
.logo img {
max-height: 60px;
width: auto;
}
/* منو */
.main-menu ul {
list-style: none;
display: flex;
gap: 25px;
}
.main-menu a {
font-weight: 500;
font-size: 16px;
padding: 8px 0;
position: relative;
}
.main-menu a::after {
content: '';
position: absolute;
bottom: 0;
right: 0;
width: 0;
height: 2px;
background: var(--primary-color);
transition: var(--transition);
}
.main-menu a:hover::after {
width: 100%;
}
/* ============================================
بخش هیرو (Hero)
============================================ */
.hero {
background: linear-gradient(135deg, var(--primary-color), var(--primary-dark));
color: #fff;
padding: 80px 0;
text-align: center;
}
.hero h1 {
font-size: 48px;
margin-bottom: 20px;
}
.hero p {
font-size: 20px;
opacity: 0.9;
max-width: 700px;
margin: 0 auto 30px;
}
.btn {
display: inline-block;
padding: 14px 35px;
background: var(--secondary-color);
color: #fff;
border-radius: 50px;
font-weight: bold;
transition: var(--transition);
border: none;
cursor: pointer;
}
.btn:hover {
background: #d4911e;
transform: translateY(-2px);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}
/* ============================================
فوتر (Footer)
============================================ */
.site-footer {
background: var(--primary-dark);
color: #fff;
padding: 50px 0 20px;
}
.footer-widgets {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 30px;
margin-bottom: 30px;
}
.footer-widget-title {
color: var(--secondary-color);
margin-bottom: 15px;
}
.footer-bottom {
border-top: 1px solid rgba(255, 255, 255, 0.1);
padding-top: 20px;
text-align: center;
font-size: 14px;
opacity: 0.8;
}
/* ============================================
واکنش‌گرایی (Responsive)
============================================ */
@media (max-width: 768px) {
.header-inner {
flex-direction: column;
align-items: center;
}
.main-menu ul {
flex-wrap: wrap;
justify-content: center;
gap: 15px;
}
.hero h1 {
font-size: 32px;
}
.hero p {
font-size: 16px;
}
.footer-widgets {
grid-template-columns: 1fr;
}
}
/* ============================================
بخش آمار (Stats)
============================================ */
.stats {
padding: 60px 0;
background: var(--light-bg);
}
.stats-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 30px;
text-align: center;
}
.stat-item {
padding: 20px;
}
.stat-number {
display: block;
font-size: 40px;
font-weight: bold;
color: var(--primary-color);
margin-bottom: 5px;
}
.stat-label {
font-size: 16px;
color: var(--text-color);
opacity: 0.8;
}
/* ============================================
بخش اعتمادسازی (Trust)
============================================ */
.trust-section {
padding: 40px 0;
background: var(--bg-color);
border-top: 1px solid var(--border-color);
border-bottom: 1px solid var(--border-color);
}
.trust-badges {
display: flex;
justify-content: center;
gap: 50px;
flex-wrap: wrap;
}
.trust-badge {
display: flex;
align-items: center;
gap: 10px;
font-size: 16px;
}
.badge-icon {
font-size: 28px;
}
/* ============================================
بخش دسته‌بندی محصولات (Categories)
============================================ */
.categories-section {
padding: 60px 0;
background: var(--light-bg);
}
.section-title {
text-align: center;
font-size: 32px;
color: var(--primary-color);
margin-bottom: 40px;
}
.category-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
gap: 25px;
}
.category-item {
background: var(--bg-color);
border-radius: 12px;
overflow: hidden;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06);
transition: var(--transition);
}
.category-item:hover {
transform: translateY(-5px);
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
}
.category-item a {
display: block;
color: inherit;
}
.category-item img {
width: 100%;
height: 200px;
object-fit: cover;
}
.category-info {
padding: 15px 20px;
text-align: center;
}
.category-name {
font-size: 18px;
margin-bottom: 5px;
color: var(--text-color);
}
.category-count {
font-size: 14px;
color: var(--primary-color);
opacity: 0.8;
}
/* ============================================
استایل‌های هدر و ابزارها
============================================ */
.header-tools {
display: flex;
align-items: center;
gap: 15px;
}
.header-tools a,
.header-tools button {
background: none;
border: none;
font-size: 22px;
cursor: pointer;
color: var(--text-color);
transition: var(--transition);
position: relative;
}
.header-tools a:hover,
.header-tools button:hover {
color: var(--primary-color);
}
.cart-wrapper {
position: relative;
}
.cart-count {
position: absolute;
top: -8px;
right: -10px;
background: var(--secondary-color);
color: #fff;
font-size: 12px;
width: 20px;
height: 20px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-weight: bold;
}
/* دراپ‌داون سبد خرید */
.cart-dropdown {
display: none;
position: absolute;
top: 40px;
left: 0;
width: 320px;
background: var(--bg-color);
border: 1px solid var(--border-color);
border-radius: 10px;
padding: 15px;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
z-index: 100;
}
.cart-wrapper:hover .cart-dropdown {
display: block;
}
.empty-cart {
text-align: center;
color: var(--text-color);
padding: 20px 0;
}
.cart-items {
list-style: none;
max-height: 300px;
overflow-y: auto;
}
.cart-item {
display: flex;
align-items: center;
gap: 10px;
padding: 10px 0;
border-bottom: 1px solid var(--border-color);
}
.cart-item img {
width: 50px;
height: 50px;
object-fit: cover;
border-radius: 5px;
}
.cart-item .product-name {
flex: 1;
font-size: 14px;
}
.cart-item .product-price {
font-weight: bold;
color: var(--primary-color);
}
.cart-total {
padding: 15px 0;
text-align: center;
font-size: 18px;
border-top: 2px solid var(--border-color);
}
.cart-actions {
display: flex;
gap: 10px;
}
.cart-actions .button {
flex: 1;
text-align: center;
padding: 10px;
border-radius: 5px;
font-size: 14px;
}
.cart-actions .view-cart {
background: var(--light-bg);
color: var(--text-color);
}
.cart-actions .checkout {
background: var(--primary-color);
color: #fff;
}
.cart-actions .checkout:hover {
background: var(--primary-dark);
}
/* ============================================
بخش جستجو (Search)
============================================ */
.search-section {
margin-top: 15px;
padding-top: 15px;
border-top: 1px solid var(--border-color);
}
.search-form {
display: flex;
gap: 10px;
max-width: 600px;
margin: 0 auto;
}
.search-field {
flex: 1;
padding: 12px 18px;
border: 2px solid var(--border-color);
border-radius: 50px;
font-size: 16px;
background: var(--bg-color);
color: var(--text-color);
transition: var(--transition);
}
.search-field:focus {
border-color: var(--primary-color);
outline: none;
}
.search-submit {
padding: 12px 25px;
background: var(--primary-color);
color: #fff;
border: none;
border-radius: 50px;
cursor: pointer;
font-size: 18px;
transition: var(--transition);
}
.search-submit:hover {
background: var(--primary-dark);
}
.search-suggestions {
text-align: center;
margin-top: 10px;
font-size: 14px;
}
.suggestion-label {
opacity: 0.7;
}
.suggestion-tag {
display: inline-block;
margin: 0 5px;
padding: 3px 12px;
background: var(--light-bg);
border-radius: 20px;
color: var(--text-color);
transition: var(--transition);
}
.suggestion-tag:hover {
background: var(--primary-color);
color: #fff;
}
/* ============================================
واکنش‌گرایی (Responsive)
============================================ */
@media (max-width: 768px) {
.stats-grid {
grid-template-columns: 1fr;
gap: 15px;
}
.trust-badges {
flex-direction: column;
align-items: center;
gap: 15px;
}
.category-grid {
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
gap: 15px;
}
.header-inner {
flex-wrap: wrap;
gap: 10px;
}
.header-tools {
gap: 10px;
}
.search-section {
margin-top: 10px;
}
.search-form {
flex-direction: column;
}
.search-submit {
width: 100%;
}
.cart-dropdown {
width: 280px;
left: -50px;
}
.hero h1 {
font-size: 28px;
}
.section-title {
font-size: 24px;
}
}
/* ============================================
بخش هیرو با تصویر پس‌زمینه
============================================ */
.hero {
background-size: cover;
background-position: center;
background-repeat: no-repeat;
min-height: 550px;
display: flex;
align-items: center;
position: relative;
}
.hero-overlay {
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.5);
display: flex;
align-items: center;
}
.hero-content {
max-width: 700px;
color: #fff;
}
.hero-content h1 {
font-size: 52px;
font-weight: 700;
margin-bottom: 20px;
color: #fff;
}
.hero-content p {
font-size: 20px;
opacity: 0.9;
margin-bottom: 30px;
line-height: 1.8;
}
.hero-buttons {
display: flex;
gap: 15px;
flex-wrap: wrap;
}
.btn-primary {
background: var(--secondary-color);
color: #fff;
padding: 14px 35px;
border-radius: 50px;
font-weight: bold;
transition: var(--transition);
}
.btn-primary:hover {
background: #d4911e;
transform: translateY(-2px);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}
.btn-secondary {
background: transparent;
color: #fff;
padding: 14px 35px;
border: 2px solid #fff;
border-radius: 50px;
font-weight: bold;
transition: var(--transition);
}
.btn-secondary:hover {
background: #fff;
color: var(--primary-color);
}
.btn-outline {
display: inline-block;
padding: 12px 30px;
border: 2px solid var(--primary-color);
color: var(--primary-color);
border-radius: 50px;
font-weight: bold;
transition: var(--transition);
}
.btn-outline:hover {
background: var(--primary-color);
color: #fff;
}
/* ============================================
بخش محصولات (Products Grid)
============================================ */
.bestsellers-section,
.new-products-section {
padding: 70px 0;
background: var(--bg-color);
}
.new-products-section {
background: var(--light-bg);
}
.products-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
gap: 30px;
margin-top: 30px;
}
.product-card {
background: var(--bg-color);
border: 1px solid var(--border-color);
border-radius: 12px;
overflow: hidden;
transition: var(--transition);
position: relative;
}
.product-card:hover {
transform: translateY(-8px);
box-shadow: 0 12px 35px rgba(0, 0, 0, 0.1);
}
.product-card .product-link {
display: block;
color: inherit;
}
.product-card img {
width: 100%;
height: 260px;
object-fit: cover;
}
.product-info {
padding: 15px 20px 10px;
}
.product-title {
font-size: 16px;
font-weight: 500;
margin-bottom: 5px;
color: var(--text-color);
}
.product-rating {
display: flex;
align-items: center;
gap: 5px;
margin-bottom: 8px;
}
.product-rating .star-rating {
margin: 0;
font-size: 14px;
}
.rating-count {
font-size: 13px;
color: #777;
}
.product-price {
font-size: 18px;
font-weight: bold;
color: var(--primary-color);
}
.product-actions {
padding: 0 20px 20px;
}
.product-actions .button {
display: inline-block;
width: 100%;
text-align: center;
padding: 10px;
background: var(--primary-color);
color: #fff;
border-radius: 50px;
font-size: 14px;
transition: var(--transition);
}
.product-actions .button:hover {
background: var(--primary-dark);
}
/* ============================================
بخش دسته‌بندی‌ها (Categories)
============================================ */
.categories-section {
padding: 70px 0;
background: var(--light-bg);
}
.categories-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
gap: 25px;
margin-top: 30px;
}
.category-card {
background: var(--bg-color);
border-radius: 12px;
overflow: hidden;
transition: var(--transition);
border: 1px solid var(--border-color);
}
.category-card:hover {
transform: translateY(-5px);
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}
.category-card .category-link {
display: block;
color: inherit;
}
.category-card img {
width: 100%;
height: 180px;
object-fit: cover;
}
.category-details {
padding: 15px 20px 20px;
}
.category-name {
font-size: 18px;
font-weight: 600;
margin-bottom: 5px;
color: var(--text-color);
}
.category-count {
font-size: 14px;
color: var(--primary-color);
display: inline-block;
margin-bottom: 10px;
}
.sub-categories {
list-style: none;
padding: 0;
margin: 0;
}
.sub-categories li {
padding: 3px 0;
font-size: 14px;
}
.sub-categories a {
color: var(--text-color);
opacity: 0.8;
transition: var(--transition);
}
.sub-categories a:hover {
color: var(--primary-color);
opacity: 1;
}
/* ============================================
بخش اعتمادسازی و آمار (Trust & Stats)
============================================ */
.trust-stats-section {
padding: 50px 0;
background: var(--bg-color);
border-top: 1px solid var(--border-color);
border-bottom: 1px solid var(--border-color);
}
.trust-stats-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
align-items: center;
}
.stats-column {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
text-align: center;
}
.stat-item .stat-number {
font-size: 36px;
font-weight: bold;
color: var(--primary-color);
}
.stat-item .stat-label {
font-size: 14px;
color: var(--text-color);
opacity: 0.8;
display: block;
}
.trust-column {
display: flex;
flex-direction: column;
gap: 15px;
}
.trust-badge {
display: flex;
align-items: center;
gap: 12px;
font-size: 16px;
padding: 10px 15px;
background: var(--light-bg);
border-radius: 8px;
}
.trust-badge .badge-icon {
font-size: 28px;
}
/* ============================================
بخش ویژگی‌ها (Features)
============================================ */
.features-section {
padding: 70px 0;
background: var(--bg-color);
}
.features-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
gap: 30px;
margin-top: 30px;
}
.feature-item {
text-align: center;
padding: 25px 15px;
background: var(--light-bg);
border-radius: 12px;
transition: var(--transition);
}
.feature-item:hover {
transform: translateY(-5px);
box-shadow: 0 5px 20px rgba(0, 0, 0, 0.06);
}
.feature-icon {
font-size: 48px;
margin-bottom: 15px;
}
.feature-item h3 {
font-size: 18px;
margin-bottom: 10px;
color: var(--text-color);
}
.feature-item p {
font-size: 14px;
color: var(--text-color);
opacity: 0.7;
line-height: 1.7;
}
/* ============================================
بخش وبلاگ (Blog)
============================================ */
.blog-section {
padding: 70px 0;
background: var(--light-bg);
}
.blog-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
gap: 30px;
margin-top: 30px;
}
.blog-card {
background: var(--bg-color);
border-radius: 12px;
overflow: hidden;
transition: var(--transition);
border: 1px solid var(--border-color);
}
.blog-card:hover {
transform: translateY(-5px);
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}
.blog-card .blog-link {
display: block;
color: inherit;
}
.blog-card img {
width: 100%;
height: 200px;
object-fit: cover;
}
.blog-info {
padding: 15px 20px 20px;
}
.blog-date {
font-size: 13px;
color: #777;
display: block;
margin-bottom: 8px;
}
.blog-title {
font-size: 18px;
font-weight: 600;
margin-bottom: 10px;
color: var(--text-color);
}
.blog-excerpt {
font-size: 14px;
color: var(--text-color);
opacity: 0.8;
line-height: 1.7;
margin-bottom: 12px;
}
.blog-read-more {
font-size: 14px;
font-weight: bold;
color: var(--primary-color);
transition: var(--transition);
}
.blog-read-more:hover {
color: var(--primary-dark);
}
/* ============================================
بخش‌های عمومی
============================================ */
.section-title {
text-align: center;
font-size: 32px;
font-weight: 700;
color: var(--primary-color);
margin-bottom: 10px;
position: relative;
}
.section-title::after {
content: '';
display: block;
width: 60px;
height: 3px;
background: var(--secondary-color);
margin: 10px auto 0;
border-radius: 5px;
}
.section-footer {
text-align: center;
margin-top: 35px;
}
/* ============================================
واکنش‌گرایی (Responsive)
============================================ */
@media (max-width: 992px) {
.trust-stats-grid {
grid-template-columns: 1fr;
gap: 30px;
}
.stats-column {
grid-template-columns: repeat(3, 1fr);
}
}
@media (max-width: 768px) {
.hero-content h1 {
font-size: 32px;
}
.hero-content p {
font-size: 16px;
}
.products-grid {
grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
gap: 20px;
}
.categories-grid {
grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
gap: 15px;
}
.features-grid {
grid-template-columns: 1fr 1fr;
}
.blog-grid {
grid-template-columns: 1fr;
}
.stats-column {
grid-template-columns: 1fr;
gap: 10px;
}
.trust-column {
align-items: center;
}
.section-title {
font-size: 24px;
}
.hero-buttons {
flex-direction: column;
align-items: flex-start;
}
.hero-buttons .btn {
width: 100%;
text-align: center;
}
}
@media (max-width: 480px) {
.features-grid {
grid-template-columns: 1fr;
}
.products-grid {
grid-template-columns: 1fr 1fr;
gap: 15px;
}
.product-card img {
height: 180px;
}
.product-title {
font-size: 14px;
}
.product-price {
font-size: 15px;
}
}
/* ============================================
استایل‌های اختصاصی برای ووکامرس
============================================ */
/* ستون‌های محصول در آرشیو */
.woocommerce-loop-product__title {
font-size: 16px;
font-weight: 600;
margin-bottom: 4px;
}
/* دکمه افزودن به سبد در کارت */
.product-card .button {
width: 100%;
text-align: center;
padding: 8px 0;
background: #2D5F3F;
color: #fff;
border-radius: 50px;
font-size: 13px;
font-weight: 500;
transition: all 0.3s ease;
}
.product-card .button:hover {
background: #1e5a30;
}
/* صفحه محصول */
.zoom-lens {
cursor: zoom-in;
}
.gallery-thumb.active {
border-color: #2D5F3F;
}
.dark .gallery-thumb.active {
border-color: #6fb88a;
}
/* تب‌ها */
.tab-btn.tab-active {
color: #2D5F3F;
border-bottom-color: #2D5F3F;
}
.dark .tab-btn.tab-active {
color: #6fb88a;
border-bottom-color: #6fb88a;
}
/* صفحه حساب کاربری */
.checkout-step.active {
background: #2D5F3F;
color: white;
}
.dark .checkout-step.active {
background: #6fb88a;
color: #1A1D23;
}
/* صفحه‌بندی */
.page-numbers {
display: inline-flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
border-radius: 12px;
background: #fff;
border: 1px solid #EBE3D5;
color: #8B5A3C;
font-size: 14px;
font-weight: 500;
transition: all 0.3s ease;
}
.dark .page-numbers {
background: #22262E;
border-color: #2E333D;
color: #E8E6E3;
}
.page-numbers.current {
background: #2D5F3F;
border-color: #2D5F3F;
color: #fff;
}
.dark .page-numbers.current {
background: #6fb88a;
border-color: #6fb88a;
color: #1A1D23;
}
.page-numbers:hover:not(.current) {
background: #F5F0E8;
}
.dark .page-numbers:hover:not(.current) {
background: #2E333D;
}
/* فرم‌ها */
.woocommerce form .form-row input,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea {
width: 100%;
padding: 10px 14px;
background: #F5F0E8;
border: 1px solid #EBE3D5;
border-radius: 12px;
font-size: 14px;
color: #8B5A3C;
transition: all 0.3s ease;
}
.dark .woocommerce form .form-row input,
.dark .woocommerce form .form-row select,
.dark .woocommerce form .form-row textarea {
background: #1A1D23;
border-color: #2E333D;
color: #E8E6E3;
}
.woocommerce form .form-row input:focus,
.woocommerce form .form-row select:focus,
.woocommerce form .form-row textarea:focus {
border-color: #2D5F3F;
outline: none;
}
.dark .woocommerce form .form-row input:focus,
.dark .woocommerce form .form-row select:focus,
.dark .woocommerce form .form-row textarea:focus {
border-color: #6fb88a;
}
/* استایل محتوای ترکیبات */
.tab-ingredients-content ul {
list-style: disc;
padding-right: 1.5rem;
margin-top: 0.5rem;
margin-bottom: 0.5rem;
}
.tab-ingredients-content ul li {
margin-bottom: 0.25rem;
}
.tab-ingredients-content strong {
color: #2D5F3F;
font-weight: 700;
}
.dark .tab-ingredients-content strong {
color: #6fb88a;
}
/* ============================================
استایل‌های فرم نظرات (مطابق UI)
============================================ */
/* پنهان کردن رادیو باتن‌های پیش‌فرض */
.comment-form-rating input[type="radio"] {
display: none;
}
/* ظرف ستاره‌ها */
.comment-form-rating .stars {
display: flex;
flex-direction: row-reverse;
gap: 8px;
justify-content: flex-end;
margin: 10px 0;
}
/* برچسب‌های ستاره */
.comment-form-rating .stars label {
font-size: 28px;
color: #D4A574; /* رنگ خاکستری (ستاره خالی) */
cursor: pointer;
transition: color 0.2s ease, transform 0.2s ease;
line-height: 1;
}
.comment-form-rating .stars label:hover,
.comment-form-rating .stars label:hover ~ label,
.comment-form-rating .stars input:checked ~ label {
color: #F5A623; /* رنگ طلایی (ستاره پر) */
transform: scale(1.1);
}
/* حالت دارک مود */
.dark .comment-form-rating .stars label {
color: #4a4a4a;
}
.dark .comment-form-rating .stars label:hover,
.dark .comment-form-rating .stars label:hover ~ label,
.dark .comment-form-rating .stars input:checked ~ label {
color: #F5A623;
}
/* استایل فرم نظر */
.comment-respond {
background: #fff;
padding: 25px 30px;
border-radius: 16px;
border: 1px solid #EBE3D5;
margin-top: 30px;
}
.dark .comment-respond {
background: #22262E;
border-color: #2E333D;
}
.comment-respond .comment-reply-title {
font-size: 20px;
font-weight: 700;
margin-bottom: 15px;
display: block;
}
.comment-respond .comment-form-comment textarea {
width: 100%;
padding: 12px 16px;
border: 2px solid #EBE3D5;
border-radius: 12px;
background: #FDFBF7;
font-size: 14px;
transition: border-color 0.3s ease;
min-height: 120px;
}
.dark .comment-respond .comment-form-comment textarea {
background: #1A1D23;
border-color: #2E333D;
color: #E8E6E3;
}
.comment-respond .comment-form-comment textarea:focus {
border-color: #2D5F3F;
outline: none;
}
.dark .comment-respond .comment-form-comment textarea:focus {
border-color: #6fb88a;
}
.comment-respond .form-submit input[type="submit"] {
padding: 12px 35px;
background: #2D5F3F;
color: #fff;
border: none;
border-radius: 50px;
font-weight: 600;
font-size: 14px;
cursor: pointer;
transition: all 0.3s ease;
}
.comment-respond .form-submit input[type="submit"]:hover {
background: #1e5a30;
transform: translateY(-2px);
box-shadow: 0 4px 15px rgba(45, 95, 63, 0.3);
}
.dark .comment-respond .form-submit input[type="submit"]:hover {
background: #6fb88a;
}
/* استایل نظرات موجود */
.comment-list {
list-style: none;
padding: 0;
margin: 20px 0;
}
.comment-list .comment {
background: #FDFBF7;
border-radius: 16px;
padding: 20px 25px;
margin-bottom: 15px;
border: 1px solid #EBE3D5;
}
.dark .comment-list .comment {
background: #22262E;
border-color: #2E333D;
}
.comment-list .comment .comment-meta {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 10px;
flex-wrap: wrap;
gap: 10px;
}
.comment-list .comment .comment-author {
display: flex;
align-items: center;
gap: 10px;
}
.comment-list .comment .comment-author .avatar {
width: 40px;
height: 40px;
border-radius: 50%;
background: #D4A574;
}
.comment-list .comment .comment-author .fn {
font-weight: 700;
font-size: 15px;
color: #2D5F3F;
}
.dark .comment-list .comment .comment-author .fn {
color: #6fb88a;
}
.comment-list .comment .comment-metadata {
font-size: 12px;
color: #A99478;
}
.dark .comment-list .comment .comment-metadata {
color: #9CA3AF;
}
.comment-list .comment .comment-content {
font-size: 14px;
color: #8B5A3C;
line-height: 1.7;
}
.dark .comment-list .comment .comment-content {
color: #E8E6E3;
}
.comment-list .comment .star-rating {
font-size: 14px;
color: #F5A623;
margin-bottom: 5px;
}
/* ============================================
استایل ستاره‌های فرم نظر (فیلد پیش‌فرض ووکامرس)
============================================ */
/* پنهان کردن رادیو باتن‌های پیش‌فرض */
.comment-form-rating input[type="radio"] {
display: none !important;
}
/* ظرف ستاره‌ها - ووکامرس از .stars استفاده می‌کند */
.comment-form-rating .stars {
display: flex;
flex-direction: row-reverse;
justify-content: flex-end;
gap: 8px;
margin: 10px 0;
padding: 0;
border: none;
}
/* برچسب‌های ستاره (ووکامرس از <a> استفاده می‌کند) */
.comment-form-rating .stars a {
font-size: 28px;
color: #D4A574 !important; /* رنگ خاکستری (ستاره خالی) */
cursor: pointer;
transition: color 0.2s ease, transform 0.2s ease;
line-height: 1;
text-decoration: none !important;
border: none !important;
background: none !important;
}
.comment-form-rating .stars a:hover,
.comment-form-rating .stars a:hover ~ a,
.comment-form-rating .stars a.active {
color: #F5A623 !important; /* رنگ طلایی (ستاره پر) */
transform: scale(1.1);
}
/* حالت دارک مود */
.dark .comment-form-rating .stars a {
color: #555 !important;
}
.dark .comment-form-rating .stars a:hover,
.dark .comment-form-rating .stars a:hover ~ a,
.dark .comment-form-rating .stars a.active {
color: #F5A623 !important;
}
/* پنهان کردن توضیحات اضافی ووکامرس (اختیاری) */
.comment-form-rating .stars + .clear {
display: none;
}
/* استایل فرم نظر */
.comment-respond {
background: #fff;
padding: 25px 30px;
border-radius: 16px;
border: 1px solid #EBE3D5;
margin-top: 30px;
}
.dark .comment-respond {
background: #22262E;
border-color: #2E333D;
}
.comment-respond .comment-reply-title {
font-size: 20px;
font-weight: 700;
margin-bottom: 15px;
display: block;
}
.comment-respond .comment-form-comment textarea {
width: 100%;
padding: 12px 16px;
border: 2px solid #EBE3D5;
border-radius: 12px;
background: #FDFBF7;
font-size: 14px;
transition: border-color 0.3s ease;
min-height: 120px;
}
.dark .comment-respond .comment-form-comment textarea {
background: #1A1D23;
border-color: #2E333D;
color: #E8E6E3;
}
.comment-respond .comment-form-comment textarea:focus {
border-color: #2D5F3F;
outline: none;
}
.dark .comment-respond .comment-form-comment textarea:focus {
border-color: #6fb88a;
}
.comment-respond .form-submit input[type="submit"] {
padding: 12px 35px;
background: #2D5F3F;
color: #fff;
border: none;
border-radius: 50px;
font-weight: 600;
font-size: 14px;
cursor: pointer;
transition: all 0.3s ease;
}
.comment-respond .form-submit input[type="submit"]:hover {
background: #1e5a30;
transform: translateY(-2px);
box-shadow: 0 4px 15px rgba(45, 95, 63, 0.3);
}
.dark .comment-respond .form-submit input[type="submit"]:hover {
background: #6fb88a;
}
/* استایل نظرات موجود */
.comment-list {
list-style: none;
padding: 0;
margin: 20px 0;
}
.comment-list .comment {
background: #FDFBF7;
border-radius: 16px;
padding: 20px 25px;
margin-bottom: 15px;
border: 1px solid #EBE3D5;
}
.dark .comment-list .comment {
background: #22262E;
border-color: #2E333D;
}
.comment-list .comment .comment-meta {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 10px;
flex-wrap: wrap;
gap: 10px;
}
.comment-list .comment .comment-author {
display: flex;
align-items: center;
gap: 10px;
}
.comment-list .comment .comment-author .avatar {
width: 40px;
height: 40px;
border-radius: 50%;
background: #D4A574;
}
.comment-list .comment .comment-author .fn {
font-weight: 700;
font-size: 15px;
color: #2D5F3F;
}
.dark .comment-list .comment .comment-author .fn {
color: #6fb88a;
}
.comment-list .comment .comment-metadata {
font-size: 12px;
color: #A99478;
}
.dark .comment-list .comment .comment-metadata {
color: #9CA3AF;
}
.comment-list .comment .comment-content {
font-size: 14px;
color: #8B5A3C;
line-height: 1.7;
}
.dark .comment-list .comment .comment-content {
color: #E8E6E3;
}
.comment-list .comment .star-rating {
font-size: 14px;
color: #F5A623;
margin-bottom: 5px;
display: block;
unicode-bidi: bidi-override;
direction: ltr;
}
.comment-list .comment .star-rating::before {
content: '★★★★★';
color: #D4A574;
}
.comment-list .comment .star-rating span {
display: inline-block;
position: relative;
height: 100%;
overflow: hidden;
top: 0;
left: 0;
right: 0;
bottom: 0;
color: #F5A623;
}
.comment-list .comment .star-rating span::before {
content: '★★★★★';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
color: #F5A623;
overflow: hidden;
}