/*! تدوین شبکه — Woodmart child final polish. Loaded last. */
:root{--tv-p:#1366d6;--tv-p2:#0a3d91;--tv-ink:#0f172a;--tv-mut:#64748b;--tv-line:#e5eaf3;--tv-soft:#f4f7fc;--tv-star:#f59e0b;--tv-r:14px;--tv-sh:0 10px 30px -14px rgba(15,23,42,.22)}

/* ============ 1. RTL / LTR hygiene ============ */
html[dir="rtl"] body{overflow-x:hidden}
.main-page-wrapper,.website-wrapper{overflow-x:clip}
input[type=email],input[type=tel],input[type=url],input[type=number],input.input-text[name*="phone"],input.input-text[name*="email"],input[name*="postcode"]{direction:ltr;text-align:right}
input[type=email]::placeholder,input[type=tel]::placeholder{direction:rtl}
.price bdi,.amount bdi,.woocommerce-Price-amount bdi{unicode-bidi:isolate}
html{scroll-padding-top:120px}
.entry-content,.post-single-page,.site-content{min-width:0}
.entry-content img,.entry-content iframe,.entry-content video,.entry-content table{max-width:100%}
.entry-content table{display:block;overflow-x:auto;width:100%}

/* ============ 2. Headings: never crushed, never huge ============ */
h1,h2,h3,h4,h5,h6,.title,.wd-entities-title{line-height:1.6}
.title-wrapper .title,.wd-el-title .title,.element-title .title{line-height:1.55!important;font-size:clamp(20px,2.4vw,30px)}
.elementor-element-ae86de8 .title-wrapper .title,.elementor-element-ae86de8 .title{font-size:clamp(22px,2.6vw,30px)!important;line-height:1.6!important}
.elementor-element-ae86de8 .title-after_title,.elementor-element-ae86de8 .title-after_title p{font-size:14px!important;line-height:1.9!important}
.elementor-element-9d5db0c .title{font-size:clamp(22px,3vw,34px)!important;line-height:1.55!important}
.elementor-element-ae86de8 .wd-button-wrapper .btn{font-size:13px;padding:8px 16px}

/* ============ 3. Main menu: always one line, shrinks gracefully, then hamburger ============ */
.whb-header .wd-nav-main,.whb-header .wd-nav-main>li{flex-wrap:nowrap}
.whb-header .wd-nav-main{white-space:nowrap}
.whb-header .wd-nav-main>li>a{white-space:nowrap;font-size:var(--tv-nav-fs,14px);padding-inline:var(--tv-nav-px,12px);letter-spacing:0}
.whb-header .wd-nav-main>li>a .nav-link-text{white-space:nowrap}
.whb-header .wd-header-nav{min-width:0;flex:1 1 auto}
@media (min-width:1025px) and (max-width:1399px){.whb-header .wd-nav-main>li>a{font-size:var(--tv-nav-fs,13px);padding-inline:var(--tv-nav-px,9px)}}
@media (min-width:1025px) and (max-width:1199px){.whb-header .wd-nav-main>li>a{font-size:var(--tv-nav-fs,12px);padding-inline:var(--tv-nav-px,6px)}}
.whb-header .wd-nav-main .tv-more{position:relative}
.whb-header .wd-nav-main .tv-more>ul{position:absolute;top:100%;inset-inline-end:0;min-width:200px;background:#fff;border-radius:12px;box-shadow:var(--tv-sh);padding:8px;display:none;z-index:50;list-style:none;margin:0}
.whb-header .wd-nav-main .tv-more:hover>ul,.whb-header .wd-nav-main .tv-more:focus-within>ul{display:block}
.whb-header .wd-nav-main .tv-more>ul a{display:block;padding:8px 12px;border-radius:8px;white-space:nowrap}
.whb-header .wd-nav-main .tv-more>ul a:hover{background:var(--tv-soft)}

/* ============ 4. Star ratings: SVG, fixed pixel size (em units broke when font-size was 0) ============ */
.star-rating,.woocommerce .star-rating,.wd-rating .star-rating{--tv-s:16px;position:relative;display:inline-block;width:calc(var(--tv-s)*5);height:var(--tv-s);line-height:1;overflow:hidden;font-size:0!important;color:transparent!important;vertical-align:middle;direction:ltr;font-family:inherit!important}
.star-rating::before{content:""!important;position:absolute;inset:0;width:100%!important;height:100%;float:none!important;font-size:0!important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23c5cedd' d='M12 2l3.1 6.3 6.9 1-5 4.9 1.2 6.9L12 17.8 5.8 21.1 7 14.2 2 9.3l6.9-1z'/%3E%3C/svg%3E") repeat-x 0 50%/var(--tv-s) var(--tv-s)}
.star-rating span{position:absolute;top:0;bottom:0;left:0;height:100%;overflow:hidden;font-size:0!important;color:transparent!important;padding:0!important;display:block}
.star-rating span::before{content:""!important;position:absolute;top:0;bottom:0;left:0;width:calc(var(--tv-s)*5)!important;height:100%;float:none!important;font-size:0!important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23f59e0b' d='M12 2l3.1 6.3 6.9 1-5 4.9 1.2 6.9L12 17.8 5.8 21.1 7 14.2 2 9.3l6.9-1z'/%3E%3C/svg%3E") repeat-x 0 50%/var(--tv-s) var(--tv-s)}
body.rtl .star-rating{direction:rtl}
body.rtl .star-rating::before{background-position:100% 50%}
body.rtl .star-rating span{left:auto;right:0}
body.rtl .star-rating span::before{left:auto;right:0;background-position:100% 50%}
.woocommerce-product-rating .star-rating,.wd-product .star-rating{--tv-s:15px}
/* review form picker */
.comment-form-rating p.stars,.comment-form-rating .stars{display:block;margin:6px 0 0}
.comment-form-rating p.stars span{display:inline-flex;gap:3px;direction:ltr}
body.rtl .comment-form-rating p.stars span{direction:rtl}
.comment-form-rating p.stars a{position:relative;display:inline-block;width:26px;height:26px;font-size:0!important;text-indent:-9999px;overflow:hidden;line-height:1}
.comment-form-rating p.stars a::before{content:""!important;position:absolute;inset:0;width:100%;height:100%;text-indent:0;font-size:0!important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23c5cedd' d='M12 2l3.1 6.3 6.9 1-5 4.9 1.2 6.9L12 17.8 5.8 21.1 7 14.2 2 9.3l6.9-1z'/%3E%3C/svg%3E") center/100% 100% no-repeat}
.comment-form-rating p.stars:hover a::before,.comment-form-rating p.stars.selected a::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23f59e0b' d='M12 2l3.1 6.3 6.9 1-5 4.9 1.2 6.9L12 17.8 5.8 21.1 7 14.2 2 9.3l6.9-1z'/%3E%3C/svg%3E")}
.comment-form-rating p.stars a:hover~a::before,.comment-form-rating p.stars.selected a.active~a::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23c5cedd' d='M12 2l3.1 6.3 6.9 1-5 4.9 1.2 6.9L12 17.8 5.8 21.1 7 14.2 2 9.3l6.9-1z'/%3E%3C/svg%3E")}
/* review criteria rows ("ارزش خرید / دوام / سرعت ارسال") */
.wd-reviews-criteria .star-rating,.comment-form-rating-criteria .star-rating{--tv-s:18px}

/* ============ 5. Blog carousel / cards: equal height, calm titles ============ */
.wd-blog-holder .post-title,.wd-post .post-title,.blog-design-carousel .post-title,.wd-blog-holder .wd-entities-title{font-size:15px!important;line-height:1.75!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:3.5em;margin-bottom:8px}
.wd-carousel-wrap{align-items:stretch}
.wd-carousel-item{height:auto}
.wd-carousel-item>.wd-post,.wd-carousel-item .blog-post-loop{height:100%;display:flex;flex-direction:column}
.wd-carousel-item .article-inner,.wd-post .article-inner{height:100%;display:flex;flex-direction:column}
.wd-post .post-img-wrapper,.wd-post .entry-thumbnail,.blog-post-loop .post-img-wrapper{aspect-ratio:16/10;overflow:hidden}
.wd-post .post-img-wrapper img,.blog-post-loop .post-img-wrapper img{width:100%;height:100%;object-fit:cover}
.wd-post .post-excerpt,.wd-post .entry-content{font-size:13.5px;line-height:1.9}
/* recent posts widget (thumbnail list) */
.woodmart-recent-posts-list li{display:flex;gap:12px;align-items:center;padding:10px 0}
.woodmart-recent-posts-list .recent-posts-thumbnail{flex:0 0 72px;width:72px;border-radius:10px;overflow:hidden}
.woodmart-recent-posts-list .recent-posts-thumbnail img{width:72px;height:56px;object-fit:cover;display:block}
.woodmart-recent-posts-list .recent-posts-info{min-width:0}
.woodmart-recent-posts-list .wd-entities-title,.woodmart-recent-posts-list .wd-entities-title a{font-size:13px!important;line-height:1.7!important;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.woodmart-recent-posts-list .recent-posts-time,.woodmart-recent-posts-list .recent-posts-comment{font-size:11.5px;color:var(--tv-mut)}

/* ============ 6. Single post: calm header, contained image, harmony with Content Studio themes ============ */
.post-single-page{max-width:100%}
.post-single-page .meta-post-categories{margin-bottom:10px}
.post-single-page .meta-post-categories a{display:inline-block;padding:3px 12px;border-radius:999px;background:#e8f0ff;color:var(--tv-p)!important;font-size:12.5px;line-height:1.8;margin:0 0 4px 6px}
.post-single-page .post-title,.post-single-page h1.title{font-size:clamp(21px,2.6vw,30px)!important;line-height:1.6!important;font-weight:800;margin:0 0 12px;overflow-wrap:anywhere}
.post-single-page .entry-meta{font-size:13px;color:var(--tv-mut);margin-bottom:16px}
.post-single-page .entry-header{margin-bottom:18px}
.post-single-page .entry-thumbnail,.post-single-page .post-img-wrapper{max-width:100%;border-radius:16px;overflow:hidden;box-shadow:var(--tv-sh)}
.post-single-page .entry-thumbnail img{display:block;width:100%;max-width:100%;max-height:360px;object-fit:cover;height:auto}
.post-single-page .entry-content{font-size:15.5px;line-height:2.05}
.post-single-page .entry-content p{margin-bottom:1.1em}
.post-single-page .entry-content p,.post-single-page .entry-content li{text-align:justify}
.scs-article{width:100%!important;max-width:100%!important;margin-inline:0!important}
.wd-single-footer{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;margin:26px 0}

/* ============ 7. Breadcrumbs ============ */
.tv-crumb-bar{background:var(--tv-soft);border-bottom:1px solid var(--tv-line);padding:10px 0}
.tv-breadcrumbs ol{display:flex;flex-wrap:wrap;gap:4px 8px;list-style:none;margin:0;padding:0;font-size:13px;color:var(--tv-mut);line-height:1.8}
.tv-breadcrumbs li{display:inline-flex;align-items:center;gap:8px}
.tv-breadcrumbs li+li::before{content:"‹";color:#a7b2c6;font-size:16px;line-height:1}
.tv-breadcrumbs a{color:var(--tv-p2)}
.tv-breadcrumbs a:hover{color:var(--tv-p)}
.tv-breadcrumbs li[aria-current] span{color:var(--tv-ink);font-weight:600;max-width:60ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ============ 8. Rating + share card ============ */
.tv-rate-share{margin:28px 0;padding:18px 20px;border-radius:18px;background:linear-gradient(135deg,#0b2a5b,#1366d6);color:#fff;display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:space-between;box-shadow:var(--tv-sh)}
.tv-rate-head{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}
.tv-rate-head strong{font-size:16px;font-weight:700;color:#fff}
.tv-rate-sum{font-size:12.5px;color:#cfe0ff}
.tv-stars{display:inline-flex;gap:4px;direction:ltr}
body.rtl .tv-stars{direction:rtl}
.tv-star{background:none;border:0;padding:2px;cursor:pointer;line-height:0;color:rgba(255,255,255,.35);transition:transform .15s,color .15s}
.tv-star svg{fill:currentColor;display:block}
.tv-star:hover,.tv-star.on{color:#fbbf24;transform:translateY(-2px)}
.tv-stars.tv-filled .tv-star.base{color:#fbbf24}
.tv-rate-msg{font-size:12.5px;color:#bbf7d0;min-height:1.5em}
.tv-share{display:flex;flex-direction:column;gap:8px}
.tv-share-title{font-size:13px;color:#cfe0ff}
.tv-share-list{display:flex;flex-wrap:wrap;gap:8px}
.tv-share-btn{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 13px;border:0;border-radius:11px;background:rgba(255,255,255,.14);color:#fff!important;font-size:12.5px;line-height:1;cursor:pointer;text-decoration:none!important;transition:background-color .2s,transform .2s}
.tv-share-btn:hover{background:#fff;color:#0b2a5b!important;transform:translateY(-2px)}
.tv-share-btn.done{background:#22c55e}
@media(max-width:600px){.tv-rate-share{padding:16px}.tv-share-btn span{display:none}.tv-share-btn{width:40px;padding:0;justify-content:center}.tv-share-btn.is-copy span{display:inline}.tv-share-btn.is-copy{width:auto;padding:0 12px}}

/* ============ 9. Tags ============ */
.single-meta-tags,.tagcloud,.product_meta .tagged_as{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.single-meta-tags .tags-title{font-weight:700;font-size:13.5px}
.single-meta-tags .tags-list{display:flex;flex-wrap:wrap;gap:8px}
.single-meta-tags .tags-list a,.tagcloud a,.product_meta .tagged_as a{display:inline-flex;align-items:center;gap:5px;padding:5px 14px;border-radius:999px;background:#eef4ff;border:1px solid #dbe7ff;color:#1b4fbf!important;font-size:13px!important;line-height:1.7;text-decoration:none;transition:background-color .2s,color .2s,transform .2s}
.single-meta-tags .tags-list a::before,.tagcloud a::before{content:"#";opacity:.55}
.single-meta-tags .tags-list a:hover,.tagcloud a:hover,.product_meta .tagged_as a:hover{background:var(--tv-p);border-color:var(--tv-p);color:#fff!important;transform:translateY(-1px)}

/* ============ 10. Recent comments widget ============ */
.tv-recent-comments{list-style:none;margin:0;padding:0}
.tv-recent-comments li{display:flex;gap:12px;padding:12px 0;border-bottom:1px dashed var(--tv-line)}
.tv-recent-comments li:last-child{border-bottom:0}
.tv-rc-av img{width:44px;height:44px;border-radius:50%;display:block}
.tv-rc-body{min-width:0;font-size:13px;line-height:1.8}
.tv-rc-name{font-weight:700;margin-inline-end:8px}
.tv-rc-date{color:var(--tv-mut);font-size:11.5px}
.tv-rc-text{margin:2px 0;color:#334155;text-align:justify}
.tv-rc-post{color:var(--tv-p);font-size:12.5px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}

/* ============ 11. My Account ============ */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:270px minmax(0,1fr);gap:24px;align-items:start}
.woocommerce-account .woocommerce-MyAccount-navigation{background:#fff;border:1px solid var(--tv-line);border-radius:18px;box-shadow:var(--tv-sh);padding:12px;position:sticky;top:110px}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}
.woocommerce-MyAccount-navigation li a{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:12px;color:#1e293b;font-size:14px;font-weight:600;transition:background-color .2s,color .2s}
.woocommerce-MyAccount-navigation li a::before{content:"•";color:#a7b2c6;font-size:20px;line-height:1}
.woocommerce-MyAccount-navigation li a:hover{background:var(--tv-soft)}
.woocommerce-MyAccount-navigation li.is-active a{background:linear-gradient(135deg,var(--tv-p),var(--tv-p2));color:#fff}
.woocommerce-MyAccount-navigation li.is-active a::before{color:#fff}
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a{color:#dc2626}
.woocommerce-MyAccount-content{background:transparent;min-width:0}
.woocommerce-MyAccount-content>p:first-child:not(.tv-muted){display:none}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error{margin-bottom:16px}
.tv-dash{display:grid;gap:18px}
.tv-welcome{display:flex;gap:16px;align-items:center;padding:22px;border-radius:20px;color:#fff;background:linear-gradient(135deg,#0b2a5b,#1366d6);box-shadow:var(--tv-sh)}
.tv-welcome h3{margin:0 0 4px;color:#fff;font-size:19px}
.tv-welcome p{margin:0;color:#cfe0ff;font-size:13.5px;line-height:1.9}
.tv-av img{width:72px;height:72px;border-radius:50%;border:3px solid rgba(255,255,255,.7);display:block}
.tv-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.tv-stat{background:#fff;border:1px solid var(--tv-line);border-radius:16px;padding:14px;text-align:center;box-shadow:var(--tv-sh)}
.tv-stat b{display:block;font-size:19px;color:var(--tv-p2);line-height:1.6}
.tv-stat span{font-size:12.5px;color:var(--tv-mut)}
.tv-quick{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.tv-q{display:flex;flex-direction:column;align-items:center;gap:6px;padding:16px 10px;border-radius:16px;background:#fff;border:1px solid var(--tv-line);color:#1e293b;font-weight:600;font-size:13.5px;text-align:center;transition:transform .2s,box-shadow .2s,border-color .2s}
.tv-q i{font-style:normal;font-size:24px;line-height:1}
.tv-q:hover{transform:translateY(-3px);box-shadow:var(--tv-sh);border-color:#b9cdf5}
.tv-card{background:#fff;border:1px solid var(--tv-line);border-radius:18px;padding:18px 20px;box-shadow:var(--tv-sh);margin-bottom:18px;overflow-x:auto}
.tv-card h4{margin:0 0 12px;font-size:16px;font-weight:800;color:var(--tv-ink)}
.tv-muted{color:var(--tv-mut);font-size:13.5px}
.tv-table{width:100%;border-collapse:collapse;font-size:13.5px}
.tv-table th{background:var(--tv-soft);color:#334155;font-weight:700;padding:10px 12px;text-align:right;white-space:nowrap}
.tv-table td{padding:11px 12px;border-bottom:1px solid var(--tv-line);vertical-align:middle}
.tv-table tr:last-child td{border-bottom:0}
.tv-badge{display:inline-block;padding:2px 11px;border-radius:999px;font-size:12px;line-height:1.8;background:#e2e8f0;color:#334155;white-space:nowrap}
.tv-badge.is-completed{background:#dcfce7;color:#166534}.tv-badge.is-processing{background:#dbeafe;color:#1e40af}.tv-badge.is-on-hold,.tv-badge.is-pending{background:#fef3c7;color:#92400e}.tv-badge.is-cancelled,.tv-badge.is-failed,.tv-badge.is-refunded{background:#fee2e2;color:#991b1b}
.tv-btn{display:inline-block;padding:6px 14px;border-radius:10px;background:var(--tv-soft);border:1px solid var(--tv-line);color:var(--tv-p2)!important;font-size:12.5px;font-weight:600;cursor:pointer;text-decoration:none}
.tv-btn:hover{background:var(--tv-p);border-color:var(--tv-p);color:#fff!important}
.tv-btn-primary{background:var(--tv-p);border-color:var(--tv-p);color:#fff!important;padding:9px 22px}
.tv-form{display:grid;gap:14px;max-width:560px}
.tv-form label{display:grid;gap:6px;font-size:13.5px;font-weight:600}
.tv-form select,.tv-form input[type=file],.tv-form textarea{width:100%;border:1px solid var(--tv-line);border-radius:12px;padding:10px 12px;background:#fff;font-weight:400}
.tv-timeline{list-style:none;margin:0;padding:0 18px 0 0;border-right:2px solid #dbe7ff}
.tv-timeline li{position:relative;padding:8px 14px 8px 0;font-size:13.5px;line-height:1.9}
.tv-timeline li::before{content:"";position:absolute;right:-26px;top:16px;width:12px;height:12px;border-radius:50%;background:#fff;border:3px solid var(--tv-p)}
.tv-pcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.tv-pcard{display:flex;flex-direction:column;gap:6px;padding:10px;border:1px solid var(--tv-line);border-radius:14px;background:#fff;color:#1e293b;transition:transform .2s,box-shadow .2s}
.tv-pcard:hover{transform:translateY(-3px);box-shadow:var(--tv-sh)}
.tv-pcard-img img{width:100%;height:120px;object-fit:contain;border-radius:10px;background:#f8fafc}
.tv-pcard-t{font-size:12.5px;font-weight:600;line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:3.4em}
.tv-pcard-p{font-size:13px;color:var(--tv-p2);font-weight:700}
/* forms inside My Account: addresses, details, login */
.woocommerce-account .woocommerce form .form-row input.input-text,.woocommerce-account .woocommerce form .form-row select,.woocommerce-account .woocommerce form .form-row textarea{border-radius:12px;min-height:46px}
.woocommerce-account .woocommerce-Addresses{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.woocommerce-account .woocommerce-Address{background:#fff;border:1px solid var(--tv-line);border-radius:18px;padding:18px;box-shadow:var(--tv-sh)}
.woocommerce-account .woocommerce-Address-title h3{font-size:16px;margin:0 0 8px}
.woocommerce-account:not(.logged-in) .woocommerce,.woocommerce-account .woocommerce:has(.woocommerce-form-login){display:block}
@media(max-width:900px){.woocommerce-account .woocommerce{grid-template-columns:1fr}.woocommerce-account .woocommerce-MyAccount-navigation{position:static}.woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:6px}.woocommerce-MyAccount-navigation li a{padding:8px 12px;font-size:13px}.tv-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ============ 12. Cart ============ */
.woocommerce-cart .woocommerce{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}
.woocommerce-cart .woocommerce-notices-wrapper,.woocommerce-cart .cart-empty,.woocommerce-cart .return-to-shop{grid-column:1/-1}
.woocommerce-cart-form{background:#fff;border:1px solid var(--tv-line);border-radius:18px;box-shadow:var(--tv-sh);padding:6px 16px;overflow-x:auto}
.woocommerce-cart-form .shop_table{border:0;margin:0}
.woocommerce-cart-form .shop_table th{background:var(--tv-soft);font-size:13px}
.woocommerce-cart-form .shop_table td{vertical-align:middle;padding:14px 10px}
.woocommerce-cart-form .product-thumbnail img{width:72px;border-radius:10px}
.woocommerce-cart-form .product-name a{font-weight:700;font-size:14px;line-height:1.8}
.woocommerce-cart-form .actions{padding:14px 0 6px}
.woocommerce-cart-form .coupon{display:flex;gap:8px;flex-wrap:wrap}
.cart-collaterals{width:100%!important;float:none!important}
.cart_totals{background:#fff;border:1px solid var(--tv-line);border-radius:18px;box-shadow:var(--tv-sh);padding:18px 20px;position:sticky;top:110px}
.cart_totals h2{font-size:17px;margin:0 0 10px}
.cart_totals .shop_table{border:0}
.cart_totals .checkout-button{display:block;width:100%;border-radius:14px;min-height:50px;font-size:15px;font-weight:700;background:linear-gradient(135deg,var(--tv-p),var(--tv-p2))!important;color:#fff!important}
@media(max-width:900px){.woocommerce-cart .woocommerce{grid-template-columns:1fr}.cart_totals{position:static}}

/* ============ 13. Checkout ============ */
.woocommerce-checkout .woocommerce-checkout{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:24px;align-items:start}
.woocommerce-checkout #customer_details{background:#fff;border:1px solid var(--tv-line);border-radius:18px;box-shadow:var(--tv-sh);padding:20px 22px;float:none!important;width:100%!important}
.woocommerce-checkout #customer_details .col-1,.woocommerce-checkout #customer_details .col-2{float:none!important;width:100%!important;max-width:100%!important;padding:0!important}
.woocommerce-checkout #order_review_heading{display:none}
.woocommerce-checkout #order_review{background:#fff;border:1px solid var(--tv-line);border-radius:18px;box-shadow:var(--tv-sh);padding:18px 20px;position:sticky;top:110px;float:none!important;width:100%!important}
.woocommerce-checkout #order_review::before{content:"سفارش شما";display:block;font-weight:800;font-size:17px;margin-bottom:10px}
.woocommerce-checkout h3{font-size:17px;font-weight:800;margin:0 0 14px}
.woocommerce-checkout .form-row{margin-bottom:14px}
.woocommerce-checkout .form-row label{font-size:13px;font-weight:600;margin-bottom:5px}
.woocommerce-checkout input.input-text,.woocommerce-checkout select,.woocommerce-checkout textarea,.woocommerce-checkout .select2-selection{border-radius:12px!important;min-height:46px}
.woocommerce-checkout #payment{background:var(--tv-soft);border-radius:14px;padding:12px}
.woocommerce-checkout #payment ul.payment_methods{border:0;padding:0}
.woocommerce-checkout #payment .payment_box{border-radius:10px;background:#fff}
.woocommerce-checkout #place_order{display:block;width:100%;border-radius:14px;min-height:52px;font-size:15.5px;font-weight:800;background:linear-gradient(135deg,var(--tv-p),var(--tv-p2))!important;color:#fff!important}
.woocommerce-checkout .woocommerce-form-coupon-toggle,.woocommerce-checkout .woocommerce-form-login-toggle{grid-column:1/-1}
.woocommerce-checkout .woocommerce-info{border-radius:14px}
.woocommerce-order-received .woocommerce-order{background:#fff;border:1px solid var(--tv-line);border-radius:18px;box-shadow:var(--tv-sh);padding:22px}
@media(max-width:900px){.woocommerce-checkout .woocommerce-checkout{grid-template-columns:1fr}.woocommerce-checkout #order_review{position:static}}

/* ============ 14. Wishlist page ============ */
.wd-wishlist-content .wd-empty-page-text,.wd-wishlist-content .wd-empty-page,.woocommerce-wishlist .wd-empty-page{text-align:center;padding:50px 20px;background:linear-gradient(180deg,var(--tv-soft),#fff);border-radius:20px;border:1px dashed #cdd9ee}
.wd-wishlist-content .wd-empty-page-text,.wd-wishlist-content .wd-empty-page *{text-align:center}
.wd-wishlist-content .return-to-shop,.wd-wishlist-content .wd-empty-page .btn{display:inline-block;margin-top:14px}
.wd-wishlist-content .wd-wishlist-head h4,.wd-wishlist-content .title{text-align:center}

/* ============ 15. Footer: contact cards (light background), aligned columns ============ */
/* --- الف) کانتینر اصلی: حذف فضای اضافی و تنظیم گرید --- */
.elementor-element-df2c24e {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important; /* حذف پدینگ اضافی کانتینر */
    margin: 0 !important;  /* حذف مارجین اضافی کانتینر */
    min-height: 0 !important; /* جلوگیری از ارتفاع اجباری */
}
.elementor-element-df2c24e > .e-con-inner,
.elementor-element-df2c24e:not(:has(> .e-con-inner)) {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
    align-items: stretch !important; /* برگشت به stretch برای هم‌اندازه شدن کارت‌ها */
    justify-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    min-height: 0 !important;
}
.elementor-element-bc2cc36,
.elementor-element-9082648 {
    display: contents !important;
}

/* --- ب) کارت‌ها: هم‌اندازه، بدون کشیدگی بی‌رویه، متناسب --- */
.elementor-element-2fa95d5,
.elementor-element-98893f9,
.elementor-element-8faa9ce,
.elementor-element-75c72bd {
    background: #fff !important;
    border: 1px solid var(--tv-line) !important;
    border-radius: 16px !important;
    box-shadow: 0 12px 28px -18px rgba(15,23,42,.28);
    padding: 12px 14px !important; /* پدینگ کمتر برای جمع‌وجورتر شدن */
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important; /* محتوا در وسط عمودی */
    gap: 8px;
    height: 100% !important; /* پر کردن ارتفاع سلول گرید (هم‌اندازه) */
    min-height: 80px !important; /* حداقل ارتفاع برای ظاهر بهتر */
    max-height: 140px !important; /* سقف ارتفاع برای جلوگیری از کشیدگی بی‌رویه */
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    transition: transform .2s, box-shadow .2s;
}
.elementor-element-2fa95d5:hover,
.elementor-element-98893f9:hover,
.elementor-element-8faa9ce:hover,
.elementor-element-75c72bd:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 34px -18px rgba(19,102,214,.35);
}
.elementor-element-2fa95d5 .info-box-wrapper,
.elementor-element-98893f9 .info-box-wrapper,
.elementor-element-8faa9ce .info-box-wrapper,
.elementor-element-75c72bd .info-box-wrapper {
    width: 100%;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-width: 0 !important;
    flex-wrap: nowrap !important;
}
.elementor-element-2fa95d5 .info-box-icon,
.elementor-element-98893f9 .info-box-icon,
.elementor-element-8faa9ce .info-box-icon,
.elementor-element-75c72bd .info-box-icon {
    flex: 0 0 28px !important;
    width: 28px !important;
    height: 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.elementor-element-2fa95d5 .info-box-icon img,
.elementor-element-98893f9 .info-box-icon img,
.elementor-element-8faa9ce .info-box-icon img,
.elementor-element-75c72bd .info-box-icon img {
    width: 28px !important;
    height: 28px !important;
    object-fit: contain !important;
}
.elementor-element-2fa95d5 .info-box-title,
.elementor-element-98893f9 .info-box-title,
.elementor-element-8faa9ce .info-box-title,
.elementor-element-75c72bd .info-box-title {
    font-size: 13px !important;
    font-weight: 800;
    line-height: 1.5;
    color: var(--tv-ink);
    margin: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
/* متن‌های داخل کارت‌ها */
.elementor-element-2fa95d5 .wd-text-block *,
.elementor-element-98893f9 .wd-text-block *,
.elementor-element-8faa9ce .wd-text-block *,
.elementor-element-75c72bd .wd-text-block * {
    font-size: 12px !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}
.elementor-element-98893f9 .wd-text-block *,
.elementor-element-8faa9ce .wd-text-block *,
.elementor-element-75c72bd .wd-text-block * {
    font-weight: 700;
    color: var(--tv-p2) !important;
    direction: ltr;
    unicode-bidi: isolate;
    letter-spacing: .1px;
}
.elementor-element-98893f9 .wd-text-block,
.elementor-element-8faa9ce .wd-text-block,
.elementor-element-75c72bd .wd-text-block {
    text-align: right;
    width: 100%;
}
.elementor-element-2fa95d5 .wd-text-block p { color: #475569 !important; font-weight: 500; }
.elementor-element-2fa95d5 .info-box-link,
.elementor-element-98893f9 .info-box-link,
.elementor-element-8faa9ce .info-box-link,
.elementor-element-75c72bd .info-box-link { pointer-events: none; }

/* --- ج) ریسپانسیو --- */
@media(max-width: 1024px) {
    .elementor-element-df2c24e > .e-con-inner,
    .elementor-element-df2c24e:not(:has(> .e-con-inner)) {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
@media(max-width: 600px) {
    .elementor-element-df2c24e > .e-con-inner,
    .elementor-element-df2c24e:not(:has(> .e-con-inner)) {
        grid-template-columns: 1fr !important;
    }
}

/* ============ 16. /club/ forms ============ */
.elementor-element-17141ad{padding:34px 0}
.elementor-element-17141ad>.elementor-container{gap:24px;align-items:stretch;flex-wrap:wrap}
.elementor-element-17141ad .elementor-column{flex:1 1 380px;min-width:300px}
.elementor-element-17141ad .elementor-column-wrap,.elementor-element-17141ad .elementor-widget-wrap{background:#fff;border:1px solid var(--tv-line);border-radius:20px;box-shadow:var(--tv-sh);padding:26px 26px 22px!important}
.elementor-element-17141ad .elementor-heading-title{font-size:20px!important;line-height:1.7!important;font-weight:800;text-align:center;margin-bottom:6px}
.elementor-element-17141ad .elementor-heading-title::after{content:"";display:block;width:54px;height:4px;border-radius:4px;margin:8px auto 4px;background:linear-gradient(90deg,var(--tv-p),var(--tv-star))}
.elementor-element-17141ad .elementor-form{margin-top:12px}
.elementor-element-17141ad .elementor-field-group{margin-bottom:12px}
.elementor-element-17141ad .elementor-field-label{font-size:13px;font-weight:600;margin-bottom:5px;color:#334155}
.elementor-element-17141ad .elementor-field-textual{border-radius:12px;border:1px solid var(--tv-line);padding:11px 14px;font-size:14px;background:#f8fafc;transition:border-color .2s,box-shadow .2s}
.elementor-element-17141ad .elementor-field-textual:focus{border-color:var(--tv-p);box-shadow:0 0 0 3px rgba(19,102,214,.12);background:#fff}
.elementor-element-17141ad .elementor-field-type-radio .elementor-field-option,.elementor-element-17141ad .elementor-field-type-checkbox .elementor-field-option{display:inline-flex;align-items:center;gap:6px;margin-inline-end:14px}
.elementor-element-17141ad .elementor-button{width:100%;border-radius:12px;min-height:48px;font-size:15px;font-weight:700;background:linear-gradient(135deg,var(--tv-p),var(--tv-p2))}
@media(max-width:767px){.elementor-element-17141ad .elementor-column-wrap,.elementor-element-17141ad .elementor-widget-wrap{padding:20px 16px!important}}

/* ============ 17. Category / product badges & counts ============ */
.product-category .wd-entities-title mark.count,.wd-cat-count,mark.count{background:transparent;color:var(--tv-mut);font-size:12px;font-weight:400}
.product-label.onsale,.product-labels .onsale{border-radius:999px;font-size:12px;padding:2px 10px;line-height:1.8}

/* ============ 18. Page / post spacing, sticky vertical menu safety ============ */
body:not(.home) .site-content{padding-inline:clamp(12px,2vw,26px)}
body:not(.home) .main-page-wrapper>.container,body:not(.home) .main-page-wrapper>.container-fluid{padding-inline:clamp(12px,2vw,26px)}
body.wd-sticky-nav-enabled .container{max-width:min(var(--wd-container-w,1222px),calc(100vw - var(--wd-sticky-nav-w,60px) - var(--wd-scroll-w,0px) - 8px))}
body.wd-sticky-nav-enabled .main-page-wrapper{min-width:0}
.single-post .post-single-page,.single-post article.post,.page .entry-content,.woocommerce-page .entry-content{padding-block:6px}
.post-single-page .entry-header,.post-single-page .entry-meta{padding-inline:2px}
.post-single-page .entry-content>*,.page .entry-content>*{max-width:100%}
.post-single-page .entry-content{padding-inline:2px}
.single-post .main-sidebar,.single-post .sidebar-container{padding-inline:clamp(6px,1vw,14px)}
.comments-area,#comments,#respond{margin-top:28px;padding-inline:2px}
.wd-sticky-nav{box-shadow:-6px 0 20px -12px rgba(15,23,42,.25)}
