
img:is([sizes=auto i],[sizes^="auto," i]){contain-intrinsic-size:3000px 1500px}
/*# sourceURL=wp-img-auto-sizes-contain-inline-css */


:root{--wp-block-synced-color:#7a00df;--wp-block-synced-color--rgb:122,0,223;--wp-bound-block-color:var(--wp-block-synced-color);--wp-editor-canvas-background:#ddd;--wp-admin-theme-color:#007cba;--wp-admin-theme-color--rgb:0,124,186;--wp-admin-theme-color-darker-10:#006ba1;--wp-admin-theme-color-darker-10--rgb:0,107,160.5;--wp-admin-theme-color-darker-20:#005a87;--wp-admin-theme-color-darker-20--rgb:0,90,135;--wp-admin-border-width-focus:2px}@media (min-resolution:192dpi){:root{--wp-admin-border-width-focus:1.5px}}.wp-element-button{cursor:pointer}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}:root .has-text-align-center{text-align:center}:root .has-text-align-left{text-align:left}:root .has-text-align-right{text-align:right}.has-fit-text{white-space:nowrap!important}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-break:normal!important}.screen-reader-text:focus{background-color:#ddd;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style^=border-color],[style*=";border-color"],[style*="; border-color"]){border-style:solid}html :where([style^=border-top-color],[style*=";border-top-color"],[style*="; border-top-color"]){border-top-style:solid}html :where([style^=border-right-color],[style*=";border-right-color"],[style*="; border-right-color"]){border-right-style:solid}html :where([style^=border-bottom-color],[style*=";border-bottom-color"],[style*="; border-bottom-color"]){border-bottom-style:solid}html :where([style^=border-left-color],[style*=";border-left-color"],[style*="; border-left-color"]){border-left-style:solid}html :where([style^=border-width],[style*=";border-width"],[style*="; border-width"]){border-style:solid}html :where([style^=border-top-width],[style*=";border-top-width"],[style*="; border-top-width"]){border-top-style:solid}html :where([style^=border-right-width],[style*=";border-right-width"],[style*="; border-right-width"]){border-right-style:solid}html :where([style^=border-bottom-width],[style*=";border-bottom-width"],[style*="; border-bottom-width"]){border-bottom-style:solid}html :where([style^=border-left-width],[style*=";border-left-width"],[style*="; border-left-width"]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}:where(figure){margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}
/*# sourceURL=/wp-includes/css/dist/block-library/common.min.css */

@font-face{font-family:star;src:url("https://gs.sitesazan.net/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.woff2") format("woff2"),url("https://gs.sitesazan.net/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.woff") format("woff"),url("https://gs.sitesazan.net/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.ttf") format("truetype");font-weight:400;font-style:normal}@font-face{font-family:WooCommerce;src:url("https://gs.sitesazan.net/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.woff2") format("woff2"),url("https://gs.sitesazan.net/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.woff") format("woff"),url("https://gs.sitesazan.net/wp-content/plugins/woocommerce/assets/fonts/WooCommerce.ttf") format("truetype");font-weight:400;font-style:normal}:root{--woocommerce:#720eec;--wc-green:#007518;--wc-red:#a00;--wc-orange:#ffba00;--wc-blue:#2ea2cc;--wc-primary:#720eec;--wc-primary-text:#fcfbfe;--wc-secondary:#e9e6ed;--wc-secondary-text:#515151;--wc-highlight:#958e09;--wc-highligh-text:white;--wc-content-bg:#fff;--wc-subtext:#767676;--wc-form-border-color:rgba(32, 7, 7, 0.8);--wc-form-border-radius:4px;--wc-form-border-width:1px;--wc-destructive:#cc1818;--wc-card-border-radius:8px}.woocommerce-account .wp-block-post-title,.woocommerce-account main .woocommerce,.woocommerce-cart .wp-block-post-title,.woocommerce-cart main .woocommerce,.woocommerce-checkout .wp-block-post-title,.woocommerce-checkout main .woocommerce{max-width:1000px}.clear{clear:both}.woocommerce a.button.disabled,.woocommerce a.button.disabled:hover,.woocommerce a.button:disabled,.woocommerce a.button:disabled:hover,.woocommerce a.button:disabled[disabled],.woocommerce a.button:disabled[disabled]:hover,.woocommerce button.button.disabled,.woocommerce button.button.disabled:hover,.woocommerce button.button:disabled,.woocommerce button.button:disabled:hover,.woocommerce button.button:disabled[disabled],.woocommerce button.button:disabled[disabled]:hover{opacity:.5}.woocommerce #respond input#submit:hover,.woocommerce a.button.alt:hover,.woocommerce input.button:hover{opacity:.9}.woocommerce #respond input#submit.disabled,.woocommerce #respond input#submit.disabled:hover,.woocommerce #respond input#submit:disabled,.woocommerce #respond input#submit:disabled:hover,.woocommerce #respond input#submit:disabled[disabled],.woocommerce #respond input#submit:disabled[disabled]:hover,.woocommerce a.button.alt.disabled,.woocommerce a.button.alt.disabled:hover,.woocommerce a.button.alt:disabled,.woocommerce a.button.alt:disabled:hover,.woocommerce a.button.alt:disabled[disabled],.woocommerce a.button.alt:disabled[disabled]:hover,.woocommerce input.button.disabled,.woocommerce input.button.disabled:hover,.woocommerce input.button:disabled,.woocommerce input.button:disabled:hover,.woocommerce input.button:disabled[disabled],.woocommerce input.button:disabled[disabled]:hover{opacity:.5}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1.2em}.woocommerce div.product::after{content:"";display:block;clear:both}.woocommerce div.product div.summary>*{margin-bottom:var(--wp--style--block-gap)}.woocommerce div.product .woocommerce-tabs ul.tabs li.active::before{box-shadow:-2px 2px 0 var(--wp--preset--color--background,#fff)}.woocommerce div.product .woocommerce-tabs ul.tabs li.active::after{box-shadow:2px 2px 0 var(--wp--preset--color--background,#fff)}.woocommerce div.product form.cart div.quantity{float:none;vertical-align:middle}.woocommerce div.product form.cart div.quantity .qty{margin-left:.5em}.woocommerce div.product form.cart button.single_add_to_cart_button,.woocommerce div.product form.cart button[name=add-to-cart]{display:inline-block;float:none;margin-top:0;margin-bottom:0;vertical-align:middle;word-break:normal}.woocommerce div.product form.cart .variations td,.woocommerce div.product form.cart .variations th{word-break:normal}.woocommerce div.product .related.products{margin-top:5em}.woocommerce .woocommerce-Reviews #comments{margin-bottom:var(--wp--style--block-gap)}.woocommerce .woocommerce-Reviews .commentlist{box-sizing:border-box}.woocommerce .woocommerce-Reviews .comment-reply-title{font-size:var(--wp--preset--font-size--medium);font-weight:700}.woocommerce .price bdi,.woocommerce .price ins,.woocommerce .wc-block-components-product-price bdi,.woocommerce .wc-block-components-product-price ins,.woocommerce .woocommerce-grouped-product-list-item__price bdi,.woocommerce .woocommerce-grouped-product-list-item__price ins{text-decoration:none}.woocommerce span.onsale{background-color:var(--wp--preset--color--foreground,#958e09);color:var(--wp--preset--color--background,#fff)}.woocommerce table.variations{display:block}.woocommerce table.variations tr td,.woocommerce table.variations tr th{padding-bottom:var(--wp--style--block-gap);text-align:right}.woocommerce table.variations tr th{padding-left:1em}.woocommerce table.variations tr td select{height:3em;padding:.9em 1.1em;font-size:var(--wp--preset--font-size--small)}.woocommerce div.product form.cart table.variations td select{min-width:70%}.woocommerce div.product form.cart table.variations td,.woocommerce div.product form.cart table.variations th{vertical-align:middle}.woocommerce .single_variation_wrap .woocommerce-variation{margin-bottom:var(--wp--style--block-gap)}a.added_to_cart{display:block;margin-top:1em}.woocommerce-page .input-text,.woocommerce-page .select2-container,.woocommerce-page select{font-size:var(--wp--preset--font-size--small)}.woocommerce-page label{margin-bottom:.7em}.woocommerce form .form-row{margin-bottom:1em}.woocommerce form textarea{min-height:100px}.woocommerce-page table.shop_table{width:70%;border-collapse:collapse}@media only screen and (max-width:768px){.woocommerce-page table.shop_table{width:100%}}.woocommerce-page table.shop_table td,.woocommerce-page table.shop_table th{padding:1em}.woocommerce-page table.shop_table_responsive{width:100%}.woocommerce-page .woocommerce-cart-form .product-remove{width:1em}.woocommerce-page .woocommerce-cart-form .product-thumbnail{width:120px}.woocommerce-page .woocommerce-cart-form .product-thumbnail a img{width:117px}.woocommerce-page .woocommerce-cart-form .coupon{display:flex;align-items:center;flex-wrap:wrap}.woocommerce-page .woocommerce-cart-form #coupon_code{width:auto;margin-left:.8em;height:50px;font-size:var(--wp--preset--font-size--small);padding:0 1.1em}@media only screen and (max-width:768px){.woocommerce-page .woocommerce-cart-form .product-remove{width:auto}.woocommerce-page .woocommerce-cart-form #coupon_code{width:50%;margin-left:0}}.woocommerce-page .cart-collaterals h2{font-size:var(--wp--preset--font-size--medium)}.woocommerce-page .woocommerce-form-coupon .button{min-height:50px}.woocommerce-page .woocommerce-column__title,.woocommerce-page .woocommerce-customer-details h2,.woocommerce-page .woocommerce-thankyou-order-received{font-size:var(--wp--preset--font-size--large);font-weight:300}.woocommerce-page ul.woocommerce-order-overview{display:flex;width:100%;padding-right:0;font-size:var(--wp--preset--font-size--small)}@media only screen and (max-width:768px){.woocommerce-page ul.woocommerce-order-overview{flex-direction:column}}.woocommerce-page ul.woocommerce-order-overview li{flex-grow:1;margin-bottom:1em;border:none;display:inline;text-transform:uppercase}.woocommerce-page ul.woocommerce-order-overview li strong{text-transform:none;display:block}.woocommerce-page .woocommerce-customer-details address{box-sizing:border-box;width:70%;padding:1em;border-width:1px;border-radius:0}.woocommerce-account .woocommerce-MyAccount-navigation ul{margin:0 0 2em;padding:0}.woocommerce-account .woocommerce-MyAccount-navigation li{list-style:none;padding:1em 0}@media only screen and (max-width:768px){.woocommerce-account .woocommerce-MyAccount-navigation li{padding:.35em 0}}.woocommerce-account .woocommerce-MyAccount-navigation li:first-child{padding-top:0}.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{text-decoration:underline}.woocommerce-account .woocommerce-MyAccount-navigation li a{text-decoration:none}.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{text-decoration:underline}.woocommerce-account .woocommerce-MyAccount-content p.form-row-first,.woocommerce-account .woocommerce-MyAccount-content p.form-row-last,.woocommerce-account .woocommerce-MyAccount-content>p:first-of-type{margin-block-start:0}.woocommerce-account .woocommerce-customer-details address,.woocommerce-account table.shop_table.order_details{width:100%}.woocommerce-account .addresses .title .edit{display:block;margin-bottom:1em}.woocommerce-account.woocommerce-edit-address .woocommerce-MyAccount-content form>h3{margin-block-start:0}.woocommerce-account .woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-actions::before{display:none}.woocommerce-account .woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-actions a{display:block;margin-bottom:1em;text-align:center}.woocommerce-page form .form-row input.input-text,.woocommerce-page form .form-row select,.woocommerce-page form .form-row textarea.input-text{font-size:var(--wp--preset--font-size--small);padding:.9rem 1.1rem}.woocommerce-page form .form-row select{background-position:calc(100% - (100% - 1.1rem)) 50%}.woocommerce-page form .form-row label{margin-bottom:.7em}.woocommerce-page form .form-row .select2-container .select2-selection--single .select2-selection__rendered{padding:.9rem 1.1rem}.woocommerce-page form .form-row .select2-container .select2-selection--single .select2-selection__arrow{left:1.1em}.woocommerce-page .select2-container .select2-search--dropdown{padding:0 1.1rem .5rem}.woocommerce-page .select2-container .select2-search--dropdown .select2-search__field{padding:.5rem;font-size:var(--wp--preset--font-size--small)}.woocommerce-page .select2-container .select2-results__option{padding:.5rem 1.1rem}.woocommerce-store-notice,p.demo_store{background:var(--wp--preset--color--foreground,#720eec);bottom:0;color:var(--wp--preset--color--background,#fcfbfe);position:fixed;top:auto!important}.woocommerce-store-notice a,p.demo_store a{color:var(--wp--preset--color--background,#fcfbfe)}.woocommerce .product-category mark.count{background-color:transparent}

:root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--base: #FFFFFF;--wp--preset--color--contrast: #111111;--wp--preset--color--accent-1: #FFEE58;--wp--preset--color--accent-2: #F6CFF4;--wp--preset--color--accent-3: #503AA8;--wp--preset--color--accent-4: #686868;--wp--preset--color--accent-5: #FBFAF3;--wp--preset--color--accent-6: color-mix(in srgb, currentColor 20%, transparent);--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgb(6,147,227) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgb(252,185,0) 0%,rgb(255,105,0) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgb(255,105,0) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 0.875rem;--wp--preset--font-size--medium: clamp(1rem, 1rem + ((1vw - 0.2rem) * 0.196), 1.125rem);--wp--preset--font-size--large: clamp(1.125rem, 1.125rem + ((1vw - 0.2rem) * 0.392), 1.375rem);--wp--preset--font-size--x-large: clamp(1.75rem, 1.75rem + ((1vw - 0.2rem) * 0.392), 2rem);--wp--preset--font-size--xx-large: clamp(2.15rem, 2.15rem + ((1vw - 0.2rem) * 1.333), 3rem);--wp--preset--font-family--manrope: Manrope, sans-serif;--wp--preset--font-family--fira-code: "Fira Code", monospace;--wp--preset--spacing--20: 10px;--wp--preset--spacing--30: 20px;--wp--preset--spacing--40: 30px;--wp--preset--spacing--50: clamp(30px, 5vw, 50px);--wp--preset--spacing--60: clamp(30px, 7vw, 70px);--wp--preset--spacing--70: clamp(50px, 7vw, 90px);--wp--preset--spacing--80: clamp(70px, 10vw, 140px);--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgb(255, 255, 255), 6px 6px rgb(0, 0, 0);--wp--preset--shadow--crisp: 6px 6px 0px rgb(0, 0, 0);}.wp-block-button{--wp--preset--dimension--25: 25%;--wp--preset--dimension--50: 50%;--wp--preset--dimension--75: 75%;--wp--preset--dimension--100: 100%;}:root { --wp--style--global--content-size: 645px;--wp--style--global--wide-size: 1340px; }:where(body) { margin: 0; }.wp-site-blocks { padding-top: var(--wp--style--root--padding-top); padding-bottom: var(--wp--style--root--padding-bottom); }.has-global-padding { padding-right: var(--wp--style--root--padding-right); padding-left: var(--wp--style--root--padding-left); }.has-global-padding > .alignfull { margin-right: calc(var(--wp--style--root--padding-right) * -1); margin-left: calc(var(--wp--style--root--padding-left) * -1); }.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull)) { padding-right: 0; padding-left: 0; }.has-global-padding :where(:not(.alignfull.is-layout-flow) > .has-global-padding:not(.wp-block-block, .alignfull)) > .alignfull { margin-left: 0; margin-right: 0; }.wp-site-blocks > .alignleft { float: left; margin-right: 2em; }.wp-site-blocks > .alignright { float: right; margin-left: 2em; }.wp-site-blocks > .aligncenter { justify-content: center; margin-left: auto; margin-right: auto; }:where(.wp-site-blocks) > * { margin-block-start: 1.2rem; margin-block-end: 0; }:where(.wp-site-blocks) > :first-child { margin-block-start: 0; }:where(.wp-site-blocks) > :last-child { margin-block-end: 0; }:root { --wp--style--block-gap: 1.2rem; }:root :where(.is-layout-flow) > :first-child{margin-block-start: 0;}:root :where(.is-layout-flow) > :last-child{margin-block-end: 0;}:root :where(.is-layout-flow) > *{margin-block-start: 1.2rem;margin-block-end: 0;}:root :where(.is-layout-constrained) > :first-child{margin-block-start: 0;}:root :where(.is-layout-constrained) > :last-child{margin-block-end: 0;}:root :where(.is-layout-constrained) > *{margin-block-start: 1.2rem;margin-block-end: 0;}:root :where(.is-layout-flex){gap: 1.2rem;}:root :where(.is-layout-grid){gap: 1.2rem;}.is-layout-flow > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-flow > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-flow > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignleft{float: left;margin-inline-start: 0;margin-inline-end: 2em;}.is-layout-constrained > .alignright{float: right;margin-inline-start: 2em;margin-inline-end: 0;}.is-layout-constrained > .aligncenter{margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width: var(--wp--style--global--content-size);margin-left: auto !important;margin-right: auto !important;}.is-layout-constrained > .alignwide{max-width: var(--wp--style--global--wide-size);}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}body{background-color: var(--wp--preset--color--base);color: var(--wp--preset--color--contrast);font-family: var(--wp--preset--font-family--manrope);font-size: var(--wp--preset--font-size--large);font-weight: 300;letter-spacing: -0.1px;line-height: 1.4;--wp--style--root--padding-top: 0px;--wp--style--root--padding-right: var(--wp--preset--spacing--50);--wp--style--root--padding-bottom: 0px;--wp--style--root--padding-left: var(--wp--preset--spacing--50);}a:where(:not(.wp-element-button)){color: currentColor;}:root :where(a:where(:not(.wp-element-button)):hover){text-decoration: none;}h1, h2, h3, h4, h5, h6{font-weight: 400;letter-spacing: -0.1px;line-height: 1.125;}h1{font-size: var(--wp--preset--font-size--xx-large);}h2{font-size: var(--wp--preset--font-size--x-large);}h3{font-size: var(--wp--preset--font-size--large);}h4{font-size: var(--wp--preset--font-size--medium);}h5{font-size: var(--wp--preset--font-size--small);letter-spacing: 0.5px;}h6{font-size: var(--wp--preset--font-size--small);font-weight: 700;letter-spacing: 1.4px;text-transform: uppercase;}:root :where(.wp-element-button, .wp-block-button__link){background-color: var(--wp--preset--color--contrast);border-width: 0;color: var(--wp--preset--color--base);font-family: inherit;font-size: var(--wp--preset--font-size--medium);font-style: inherit;font-weight: inherit;letter-spacing: inherit;line-height: inherit;padding-top: 1rem;padding-right: 2.25rem;padding-bottom: 1rem;padding-left: 2.25rem;text-decoration: none;text-transform: inherit;}:root :where(.wp-element-button:hover, .wp-block-button__link:hover){background-color: color-mix(in srgb, var(--wp--preset--color--contrast) 85%, transparent);border-color: transparent;color: var(--wp--preset--color--base);}:root :where(.wp-element-button:focus, .wp-block-button__link:focus){outline-color: var(--wp--preset--color--accent-4);outline-offset: 2px;}:root :where(.wp-element-caption, .wp-block-audio figcaption, .wp-block-embed figcaption, .wp-block-gallery figcaption, .wp-block-image figcaption, .wp-block-table figcaption, .wp-block-video figcaption){font-size: var(--wp--preset--font-size--small);line-height: 1.4;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-base-color{color: var(--wp--preset--color--base) !important;}.has-contrast-color{color: var(--wp--preset--color--contrast) !important;}.has-accent-1-color{color: var(--wp--preset--color--accent-1) !important;}.has-accent-2-color{color: var(--wp--preset--color--accent-2) !important;}.has-accent-3-color{color: var(--wp--preset--color--accent-3) !important;}.has-accent-4-color{color: var(--wp--preset--color--accent-4) !important;}.has-accent-5-color{color: var(--wp--preset--color--accent-5) !important;}.has-accent-6-color{color: var(--wp--preset--color--accent-6) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-base-background-color{background-color: var(--wp--preset--color--base) !important;}.has-contrast-background-color{background-color: var(--wp--preset--color--contrast) !important;}.has-accent-1-background-color{background-color: var(--wp--preset--color--accent-1) !important;}.has-accent-2-background-color{background-color: var(--wp--preset--color--accent-2) !important;}.has-accent-3-background-color{background-color: var(--wp--preset--color--accent-3) !important;}.has-accent-4-background-color{background-color: var(--wp--preset--color--accent-4) !important;}.has-accent-5-background-color{background-color: var(--wp--preset--color--accent-5) !important;}.has-accent-6-background-color{background-color: var(--wp--preset--color--accent-6) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-base-border-color{border-color: var(--wp--preset--color--base) !important;}.has-contrast-border-color{border-color: var(--wp--preset--color--contrast) !important;}.has-accent-1-border-color{border-color: var(--wp--preset--color--accent-1) !important;}.has-accent-2-border-color{border-color: var(--wp--preset--color--accent-2) !important;}.has-accent-3-border-color{border-color: var(--wp--preset--color--accent-3) !important;}.has-accent-4-border-color{border-color: var(--wp--preset--color--accent-4) !important;}.has-accent-5-border-color{border-color: var(--wp--preset--color--accent-5) !important;}.has-accent-6-border-color{border-color: var(--wp--preset--color--accent-6) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;}.has-xx-large-font-size{font-size: var(--wp--preset--font-size--xx-large) !important;}.has-manrope-font-family{font-family: var(--wp--preset--font-family--manrope) !important;}.has-fira-code-font-family{font-family: var(--wp--preset--font-family--fira-code) !important;}
/*# sourceURL=global-styles-inline-css */


.woocommerce form .form-row .required { visibility: visible; }
/*# sourceURL=woocommerce-inline-inline-css */


a{text-decoration-thickness:1px!important;text-underline-offset:.1em}:where(.wp-site-blocks :focus){outline-width:2px;outline-style:solid}.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child){margin-bottom:3px}.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content{outline-offset:4px}.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content{outline-offset:0}blockquote,caption,figcaption,h1,h2,h3,h4,h5,h6,p{text-wrap:pretty}.more-link{display:block}:where(pre){overflow-x:auto}
/*# sourceURL=https://gs.sitesazan.net/wp-content/themes/twentytwentyfive/style.min.css */







.gs-shop-body .gs-sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}


.gs-shop-body,
.gs-shop-body * {
	box-sizing: border-box;
}

.gs-shop-body {
	margin: 0;
	padding: 0;
	background: var(--gs-bg-card);
}



.gs-shop-body :where(h1, h2, h3, h4, h5, h6) {
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: normal;
	line-height: inherit;
	margin: 0;
}
.gs-shop-body :where(p) {
	margin: 0;
}
.gs-shop-body :where(ul, ol) {
	margin: 0;
	padding: 0;
	list-style: none;
}
.gs-shop-body :where(figure) {
	margin: 0;
}


:root {
	--gs-primary: #ef4056;
	--gs-primary-hover: #d63851;
	--gs-primary-light: #f87188;
	--gs-discount-2: #ffe09c;
	--gs-discount: #d32f2f;
	--gs-secondary: #19bfd3;
	--gs-accent: #f08000;
	--gs-blue: #1672dd;
	--gs-green: #00a049;
	--gs-text-dark: #0c0c0c;
	--gs-text: #3f4064;
	--gs-text-secondary: #62666d;
	--gs-text-light: #81858b;
	--gs-text-white: #fff;	
	--gs-text-muted: #c0c2c5;
	--gs-text-on-primary: #ffffff;
	--gs-text-on-accent: #ffffff;
	--gs-text-on-secondary: #ffffff;
	--gs-price: #23254e;
	--gs-bg: #f0f0f1;
	--gs-bg-card: #ffffff;
	--gs-bg-alt: #fafafa;
	--gs-bg-tint: #f0f0f1;
	--gs-border: #f0f0f1;
	--gs-border-dark: #e6e6e6;
	--gs-border-strong: #d0d0d1;
	--gs-radius: 16px;
	--gs-radius-sm: 8px;
	--gs-radius-lg: 16px;
	--gs-transition: 0.2s ease;
	--gs-gradient-primary: linear-gradient(135deg, var(--gs-primary) 0%, var(--gs-primary-light) 100%);
	--gs-gradient-primary-hover: linear-gradient(135deg, var(--gs-primary-hover) 0%, var(--gs-primary) 100%);
	--gs-gradient-accent: linear-gradient(to left, var(--gs-accent), var(--gs-primary));
	--gs-gradient-success: linear-gradient(90deg, var(--gs-secondary), var(--gs-green));
	--gs-gradient-card: linear-gradient(135deg, var(--gs-bg-card) 0%, var(--gs-bg-alt) 100%);
	--gs-gradient-sidebar: linear-gradient(225deg, var(--gs-primary) 0%, var(--gs-primary-light) 100%);
	/* Semantic / State Colors */
	--gs-success: #00a049;
	--gs-success-bg: #eef9ee;
	--gs-success-strong: #008036;
	--gs-danger: #ef4056;
	--gs-danger-bg: #fef0f1;
	--gs-danger-strong: #d63851;
	--gs-primary-bg: #fff5f6;
	--gs-primary-bg-hover: #ffeaec;
	--gs-warning: #f08000;
	--gs-warning-bg: #fef3c7;
	--gs-warning-strong: #c99038;
	--gs-info: #1672dd;
	--gs-info-bg: #e8f1fc;
	--gs-star: #f08000;
	/* Semantic aliases for component theming */
	--gs-link: var(--gs-secondary);
	--gs-link-hover: var(--gs-primary);
}


.gs-shop-body {
	font-size: 12px !important;
	line-height: 1.6;
	color: var(--gs-text-dark) !important;
	font-family: 'IRANYekan', 'Vazirmatn', sans-serif !important;
	font-weight: 600;
	background: var(--gs-bg-card) !important;
}





.gs-shop-body,
.gs-shop-body body {
	font-family: 'IRANYekan', 'Vazirmatn', Tahoma, sans-serif;
	font-feature-settings: "ss01", "ss02", "ss03";
	font-variation-settings: normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	direction: rtl;
}


.gs-shop-body h1 {
	font-size: 1.5rem;
	font-weight: 800;
	line-height: 2.25rem;
	color: var(--gs-text);
	letter-spacing: -0.02em;
}

.gs-shop-body h2 {
	font-size: 1.25rem;
	font-weight: 800;
	line-height: 2rem;
	color: var(--gs-text);
	letter-spacing: -0.01em;
}

.gs-shop-body h3 {
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.75rem;
	color: var(--gs-text);
}

.gs-shop-body h4 {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.625rem;
	color: var(--gs-text);
}

.gs-shop-body h5,
.gs-shop-body h6 {
	font-size: 0.9375rem;
	font-weight: 700;
	line-height: 1.5rem;
	color: var(--gs-text);
}


.gs-shop-body .text-xs {
	font-size: 0.6875rem;
	font-weight: 600;
	line-height: 1rem;
}

.gs-shop-body .text-sm {
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.375rem;
}

.gs-shop-body .text-base {
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.625rem;
}

.gs-shop-body .text-lg {
	font-size: 1.0625rem;
	font-weight: 600;
	line-height: 1.75rem;
}

.gs-shop-body .text-xl {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 2rem;
}

.gs-shop-body .text-2xl {
	font-size: 1.5rem;
	font-weight: 800;
	line-height: 2.25rem;
}



.gs-shop-body .gs-price,
.gs-shop-body .gs-price-old,
.gs-shop-body .gs-product-card__price-new,
.gs-shop-body .gs-product-card__price-old,
.gs-shop-body .gs-flash-sale__price-new,
.gs-shop-body .gs-flash-sale__price-old,
.gs-shop-body .gs-price-current,
.gs-shop-body .gs-flash-sale__timer-num,
.gs-shop-body .gs-flash-sale__timer-sep {
	font-family: 'IRANYekan', 'Vazirmatn', sans-serif;
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum";
}
.gs-shop-body .woocommerce-Price-amount,
.gs-shop-body .woocommerce-Price-amount bdi {
	font-family: 'IRANYekan', 'Vazirmatn', sans-serif;
}
.gs-shop-body .woocommerce-Price-currencySymbol {
	font-family: 'IRANYekan', 'Vazirmatn', sans-serif;
}

.gs-shop-body .gs-price {
	font-size: 1.0625rem;
	font-weight: 800;
	color: var(--gs-text);
	line-height: 1.75rem;
}

.gs-shop-body .gs-price-old {
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--gs-text-light);
	text-decoration: line-through;
}


/* Limited Sales — Product Card Top Bar */
.gs-shop-body .gs-product-card {
	position: relative;
}
.gs-shop-body .gs-product-card__limited-bar {
	position: absolute;
	top: 0;
	left: 0;
	height: 5px;
	background: var(--gs-green, var(--gs-green));
	border-radius: 0 0 6px 0;
	z-index: 5;
	transition: width 0.4s ease;
	min-width: 16px;
	box-shadow: 0 1px 4px rgba(0,0,0,.15);
	overflow: hidden;
}
/* Shimmer light traveling across the limited bar */
.gs-shop-body .gs-product-card__limited-bar::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(
		90deg,
		transparent 0%,
		transparent 30%,
		rgba(255, 255, 255, 0.7) 50%,
		transparent 70%,
		transparent 100%
	);
	background-size: 200% 100%;
	animation: gs-limited-shimmer 2.5s ease-in-out infinite;
}
@keyframes gs-limited-shimmer {
	0%   { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}
.gs-shop-body .gs-product-card__limited-tooltip {
	position: absolute;
	top: 7px;
	left: 0;
	background: var(--gs-green, var(--gs-green));
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	padding: 3px 10px;
	border-radius: 0 0 8px 0;
	white-space: nowrap;
	opacity: 0;
	transform: translateY(-4px);
	transition: opacity 0.2s, transform 0.2s;
	pointer-events: none;
}
.gs-shop-body .gs-product-card:hover .gs-product-card__limited-tooltip {
	opacity: 1;
	transform: translateY(0);
}


/* Limited Sales — Product Detail Page Bar */
.gs-shop-body .gs-limited-sales-bar {
	margin: 12px 0;
	padding: 12px 14px;
	background: var(--gs-danger-bg);
	border: 1px solid var(--gs-danger-bg);
	border-radius: 10px;
}
.gs-shop-body .gs-limited-sales-bar__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 8px;
}
.gs-shop-body .gs-limited-sales-bar__label {
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-primary);
	display: flex;
	align-items: center;
	gap: 6px;
}
.gs-shop-body .gs-limited-sales-bar__label::before {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	background: var(--gs-primary);
	border-radius: 50%;
	animation: gs-limited-pulse 1.5s ease-in-out infinite;
}
@keyframes gs-limited-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50% { opacity: 0.5; transform: scale(1.3); }
}
.gs-shop-body .gs-limited-sales-bar__percent {
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-primary);
}
.gs-shop-body .gs-limited-sales-bar__track {
	height: 8px;
	background: var(--gs-danger-bg);
	border-radius: 4px;
	overflow: hidden;
}
.gs-shop-body .gs-limited-sales-bar__fill {
	height: 100%;
	background: var(--gs-primary);
	border-radius: 4px;
	transition: width 0.6s ease;
}


.gs-shop-body .gs-product-card__title {
	font-size: 0.8125rem;
	font-weight: 700;
	line-height: 1.5rem;
	color: var(--gs-text);
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	
	font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
	font-variant-numeric: lining-nums;
	-webkit-font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
	-moz-font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
}


.gs-shop-body .gs-product-card__brand {
	font-size: 0.6875rem;
	font-weight: 600;
	color: var(--gs-text-light);
}


.gs-shop-body {
	font-variant-numeric: lining-nums tabular-nums;
}


.gs-shop-body a {
	color: inherit;
	text-decoration: none;
	transition: color var(--gs-transition);
}

.gs-shop-body a:hover {
	color: #fff;
}


.gs-shop-body .gs-btn,
.gs-shop-body .gs-btn-primary,
.gs-shop-body .gs-btn-outline,
.gs-shop-body .gs-btn-lg,
.gs-shop-body .gs-btn-sm {
	font-family: 'IRANYekan', 'Vazirmatn', Tahoma, sans-serif;
	font-weight: 600;
	letter-spacing: 0;
}

.gs-shop-body .gs-btn-primary {
	font-weight: 700;
	color: #fff !important;
}
.gs-shop-body .gs-btn-primary:hover {
	color: var(--gs-border-dark) !important;
}


.gs-shop-body input[type="text"],
.gs-shop-body input[type="email"],
.gs-shop-body input[type="password"],
.gs-shop-body input[type="number"],
.gs-shop-body input[type="tel"],
.gs-shop-body input[type="search"],
.gs-shop-body input[type="url"],
.gs-shop-body textarea,
.gs-shop-body select {
	font-family: 'IRANYekan', 'Vazirmatn', Tahoma, sans-serif;
}

/* Prevent iOS auto-zoom on input focus (requires font-size >= 16px on mobile) */
@media (max-width: 1024px) {
	.gs-shop-body .woocommerce-form-row input,
	.gs-shop-body .woocommerce-form-row textarea,
	.gs-shop-body .woocommerce-form-row select,
	.gs-shop-body .form-row input,
	.gs-shop-body .form-row textarea,
	.gs-shop-body .form-row select,
	.gs-shop-body .gs-form-input,
	.gs-shop-body .gs-checkout-email-field__input,
	.gs-shop-body #billing_email,
	.gs-shop-body .checkout_coupon input,
	.gs-shop-body .woocommerce-EditAccountForm input,
	.gs-shop-body .woocommerce-Address input {
		font-size: 12px !important;
	}
}

/* placeholder */
.gs-shop-body input::placeholder,
.gs-shop-body textarea::placeholder {
	font-weight: 600;
	color: var(--gs-text-light);
}


.gs-shop-body table {
	font-variant-numeric: tabular-nums;
}

.gs-shop-body table td,
.gs-shop-body table th {
	font-size: 0.8125rem;
	line-height: 1.5rem;
}


.gs-shop-body .gs-badge-primary,
.gs-shop-body .gs-badge-secondary,
.gs-shop-body .gs-badge-success {
	display: inline-flex;
	align-items: center;
	border-radius: 9999px;
	padding: 0.125rem 0.625rem;
	font-size: 0.6875rem;
	font-weight: 700;
	line-height: 1rem;
	border: 1px solid transparent;
}
.gs-shop-body .gs-badge-primary {
	background: var(--gs-primary-light, #fef0f1);
	color: #fff;
}
.gs-shop-body .gs-badge-secondary {
	background: var(--gs-bg-hover, #f0f0f1);
	color: var(--gs-text-muted, #8c8c8c);
}

.gs-shop-body .gs-badge-warning {
	display: inline-flex;
	align-items: center;
	border-radius: 9999px;
	padding: 0.125rem 0.625rem;
	font-size: 0.75rem;
	font-weight: 700;
	background: var(--gs-warning-bg);
	color: var(--gs-accent);
	border: 1px solid transparent;
}
.gs-shop-body .gs-badge-info {
	display: inline-flex;
	align-items: center;
	border-radius: 9999px;
	padding: 0.125rem 0.625rem;
	font-size: 0.75rem;
	font-weight: 700;
	background: #dbeafe;
	color: #1e40af;
	border: 1px solid transparent;
}
.gs-shop-body .gs-badge-success {
	background: var(--gs-success-bg);
	color: #166534;
}
.gs-shop-body .gs-badge-error {
	display: inline-flex;
	align-items: center;
	border-radius: 9999px;
	padding: 0.125rem 0.625rem;
	font-size: 0.75rem;
	font-weight: 700;
	background: var(--gs-danger-bg);
	color: #991b1b;
	border: 1px solid transparent;
}


.gs-shop-body .gs-tabs-trigger {
	font-size: 0.9375rem;
	font-weight: 700;
}

/* breadcrumb */
.gs-shop-body nav[aria-label="breadcrumb"] {
	font-size: 0.75rem;
	font-weight: 600;
}






.gs-shop-body .gs-back-btn {
	background: none;
	border: none;
	padding: 4px;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
}


.gs-shop-body #gs-auth-identifier,
.gs-shop-body #gs-auth-login input[type="password"],
.gs-shop-body #gs-auth-register input[type="password"],
.gs-shop-body #gs-auth-register input[type="text"] {
	height: 3rem;
	font-size: 0.9375rem;
}


.gs-shop-body .gs-input:focus {
	border-color: var(--gs-primary);
	box-shadow: 0 0 0 3px rgba(239, 64, 86, 0.1);
	outline: none;
}


.gs-shop-body #gs-auth-continue {
	position: relative;
	overflow: hidden;
}

.gs-shop-body #gs-auth-continue:active {
	transform: scale(0.98);
}


.gs-shop-body .gs-card {
	background: var(--gs-bg-card);
	border-radius: var(--gs-radius);
	box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 12px rgba(0,0,0,0.03);
}


.gs-shop-body #gs-auth-error {
	font-size: 0.75rem;
	font-weight: 600;
}


.gs-shop-body input[type="checkbox"] {
	cursor: pointer;
	accent-color: var(--gs-primary);
}


.gs-shop-body #gs-auth-login a,
.gs-shop-body #gs-auth-register a,
.gs-shop-body #gs-auth-step1 a {
	font-weight: 600;
}


.gs-shop-body #gs-auth-step1 p,
.gs-shop-body #gs-auth-login p,
.gs-shop-body #gs-auth-register p {
	line-height: 1.75rem;
}


@keyframes gs-fade-in {
	from { opacity: 0; transform: translateY(10px); }
	to { opacity: 1; transform: translateY(0); }
}

.gs-fade-in {
	animation: gs-fade-in 0.3s ease;
}


.gs-loader {
	display: inline-block;
	width: 20px;
	height: 20px;
	border: 2px solid var(--gs-border);
	border-top-color: var(--gs-primary);
	border-radius: 50%;
	animation: gs-spin 0.8s linear infinite;
}

@keyframes gs-spin {
	to { transform: rotate(360deg); }
}

/* ===== Toast — glassmorphism card with colored icon, theme palette ===== */
.gs-toast {
	position: fixed;
	top: 20px;
	right: 20px;
	left: auto;
	display: flex;
	align-items: flex-start;
	gap: 9px;
	/* Glassmorphism — translucent background with blur */
	background: rgba(255, 255, 255, 0.72) !important;
	background-color: rgba(255, 255, 255, 0.72) !important;
	backdrop-filter: blur(16px) saturate(180%);
	-webkit-backdrop-filter: blur(16px) saturate(180%);
	color: #1a1a1a !important;
	padding: 10px 12px;
	border-radius: 14px;
	box-shadow:
		0 10px 40px rgba(0, 0, 0, 0.12),
		0 4px 12px rgba(0, 0, 0, 0.06),
		inset 0 1px 0 rgba(255, 255, 255, 0.5);
	border: 1px solid rgba(255, 255, 255, 0.45);
	z-index: 999999;
	font-size: 11px;
	font-weight: 500;
	line-height: 1.5;
	max-width: 340px;
	cursor: pointer;
	opacity: 0;
	transform: translateX(40px) scale(0.94);
	transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1), transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
	overflow: hidden;
}
.gs-toast--shown {
	opacity: 1;
	transform: translateX(0) scale(1);
}
.gs-toast--leaving {
	opacity: 0;
	transform: translateX(40px) scale(0.94);
}

/* Colored accent bar on the right edge (RTL) */
.gs-toast::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 3px;
	border-radius: 0 14px 14px 0;
}

/* Icon — circular badge with type color (glassy) */
.gs-toast__icon {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 0;
}
.gs-toast__icon svg {
	display: block;
}

/* Text */
.gs-toast__text {
	flex: 1;
	min-width: 0;
	padding-top: 4px;
	white-space: pre-line;
	color: #1a1a1a;
}

/* Close button */
.gs-toast__close {
	flex-shrink: 0;
	border: none;
	background: transparent;
	cursor: pointer;
	color: #666;
	width: 22px;
	height: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	padding: 0;
	margin-top: 3px;
	transition: background 0.15s, color 0.15s;
}
.gs-toast__close:hover {
	background: rgba(0, 0, 0, 0.06);
	color: #1a1a1a;
}
.gs-toast__close svg {
	display: block;
}

/* ===== Type variants — using theme palette ===== */

/* Success — green */
.gs-toast--success::before { background: var(--gs-success, #00a049); }
.gs-toast--success .gs-toast__icon {
	background: rgba(0, 160, 73, 0.12);
	color: var(--gs-success, #00a049);
}

/* Error / danger — primary red */
.gs-toast--error::before { background: var(--gs-danger, #ef4056); }
.gs-toast--error .gs-toast__icon {
	background: rgba(239, 64, 86, 0.12);
	color: var(--gs-danger, #ef4056);
}

/* Warning — accent orange */
.gs-toast--warning::before { background: var(--gs-warning, #f08000); }
.gs-toast--warning .gs-toast__icon {
	background: rgba(240, 128, 0, 0.12);
	color: var(--gs-warning, #f08000);
}

/* Info — blue */
.gs-toast--info::before { background: var(--gs-info, #1672dd); }
.gs-toast--info .gs-toast__icon {
	background: rgba(22, 114, 221, 0.12);
	color: var(--gs-info, #1672dd);
}

/* Default (no type) — secondary cyan */
.gs-toast--default::before { background: var(--gs-secondary, #19bfd3); }
.gs-toast--default .gs-toast__icon {
	background: rgba(25, 191, 211, 0.12);
	color: var(--gs-secondary, #19bfd3);
}

/* Mobile */
@media (max-width: 640px) {
	.gs-toast {
		top: 10px;
		right: 10px;
		left: 10px;
		max-width: none;
		font-size: 10.5px;
		padding: 9px 10px;
		gap: 7px;
		border-radius: 12px;
	}
	.gs-toast__icon {
		width: 24px;
		height: 24px;
	}
	.gs-toast__icon svg {
		width: 14px;
		height: 14px;
	}
	.gs-toast::before {
		border-radius: 0 12px 12px 0;
	}
}






/* ===== Top Promo Banner (replaces topbar) ===== */
.gs-shop-body .gs-top-banner {
	width: 100%;
	display: block;
	background: rgba(0, 0, 0, 0.04);
}
.gs-shop-body .gs-top-banner__device {
	display: none;
}
.gs-shop-body .gs-top-banner__device--desktop {
	display: block;
}
.gs-shop-body .gs-top-banner__link {
	display: block;
	width: 100%;
}
.gs-shop-body .gs-top-banner__img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}
/* Tablet: 481px - 1024px */
@media (min-width: 481px) and (max-width: 1024px) {
	.gs-shop-body .gs-top-banner__device--desktop {
		display: none;
	}
	.gs-shop-body .gs-top-banner__device--tablet {
		display: block;
	}
}
/* Mobile: <= 768px */
@media (max-width: 768px) {
	.gs-shop-body .gs-top-banner__device--desktop {
		display: none;
	}
	.gs-shop-body .gs-top-banner__device--tablet {
		display: none;
	}
	.gs-shop-body .gs-top-banner__device--mobile {
		display: block;
	}
}

.gs-shop-body .gs-topbar {
	background: rgba(0, 0, 0, 0.04);
	color: var(--gs-text);
	font-size: 12px;
}
.gs-shop-body .gs-topbar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 40px;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 20px;
}
.gs-shop-body .gs-topbar__left {
	display: flex;
	align-items: center;
	gap: 12px;
}
.gs-shop-body .gs-topbar__right {
	display: flex;
	align-items: center;
	gap: 16px;
}
.gs-shop-body .gs-topbar__link {
	color: var(--gs-text);
	text-decoration: none;
	font-size: 12px;
	font-weight: 500;
	transition: color 0.2s;
}
.gs-shop-body .gs-topbar__link:hover { color: var(--gs-primary); }
.gs-shop-body .gs-topbar__link--sm { display: none; }
@media (min-width: 640px) {
	.gs-shop-body .gs-topbar__link--sm { display: inline; }
	.gs-shop-body .gs-topbar__sep--sm { display: inline; }
}
.gs-shop-body .gs-topbar__sep { color: rgba(0,0,0,0.2); }
.gs-shop-body .gs-topbar__sep--sm { display: none; }
.gs-shop-body .gs-topbar__location {
	display: flex;
	align-items: center;
	gap: 4px;
	background: none;
	border: none;
	color: var(--gs-text);
	cursor: pointer;
	font-size: 12px;
	font-family: inherit;
}
.gs-shop-body .gs-topbar__icon { width: 16px; height: 16px; }


.gs-shop-body .gs-header {
	background: var(--gs-bg-card);
	position: sticky;
	top: 0;
	z-index: 50;
	box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}
.gs-shop-body .gs-header__main {
	display: flex;
	align-items: center;
	gap: 16px;
	height: 68px;
	padding: 8px 20px;
	max-width: 1400px;
	margin: 0 auto;
}
.gs-shop-body .gs-header__logo {
	display: flex;
	align-items: center;
	gap: 2px;
	text-decoration: none;
	flex-shrink: 0;
}
.gs-shop-body .gs-header__logo-img {
	max-height: 60px;
	max-width: 200px;
	width: auto;
	height: auto;
	object-fit: contain;
}
.gs-shop-body .gs-header__logo-red {
	font-size: 24px;
	font-weight: 900;
	color: var(--gs-primary);
}
.gs-shop-body .gs-header__logo-cyan {
	font-size: 24px;
	font-weight: 900;
	color: var(--gs-secondary);
}


.gs-shop-body .gs-header__search-wrap {
	flex: 1;
	max-width: 640px;
	margin: 0 auto;
	position: relative;
}
.gs-shop-body .gs-search-box {
	display: flex;
	align-items: center;
	background: var(--gs-border);
	border-radius: 9999px;
	height: 44px;
	overflow: hidden;
	transition: box-shadow 0.2s, background 0.2s;
}
.gs-shop-body .gs-search-box:focus-within {
	box-shadow: 0 0 0 2px rgba(239, 64, 86, 0.15);
	background: var(--gs-bg-card);
}
.gs-shop-body .gs-search-input {
	flex: 1;
	border: none;
	background: transparent;
	padding: 0 16px;
	font-size: 16px;
	color: var(--gs-text);
	outline: none;
	font-family: inherit;
	height: 100%;
}
.gs-shop-body .gs-search-input::placeholder {
	color: var(--gs-text-light);
	font-size: 13px;
}
.gs-shop-body .gs-search-btn {
	border: none;
	background: transparent;
	padding: 8px 16px;
	cursor: pointer;
	color: var(--gs-text-light);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	min-width: 36px;
	min-height: 36px;
}
.gs-shop-body .gs-search-btn svg {
	width: 20px;
	height: 20px;
	display: block;
	flex-shrink: 0;
}
/* ===== Search Panel (Anchored Overlay — Digikala style) ===== */
/* The panel is portaled to <body> by JS (escapes .gs-header's stacking context).
   On desktop/tablet it is a single unified card positioned (via JS) exactly AT
   the header search box: the panel's own input row overlays the header search
   box, and the results flow below it — matching Digikala's anchored container.
   On mobile (≤480px) it becomes a fullscreen white overlay with its own
   input row + back button at the top. */

/* Scrim covers the entire viewport, above everything except the header + panel */
.gs-shop-body .gs-search-scrim {
	position: fixed;
	inset: 0;
	z-index: 9000;
	background: rgba(0, 0, 0, 0.45);
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.2s ease, visibility 0s 0.2s;
}
.gs-shop-body .gs-search-scrim--active {
	opacity: 1;
	visibility: visible;
	transition: opacity 0.2s ease;
}

/* Header (logo, search box, actions) stays above the scrim — fully bright */
.gs-shop-body.gs-search-active .gs-header {
	z-index: 9005;
}
/* Category nav row dims along with the rest of the page */
.gs-shop-body.gs-search-active .gs-catnav {
	opacity: 0.35;
	pointer-events: none;
	transition: opacity 0.2s ease;
}

/* Prevent background scroll while search is open (JS locks <html>/<body> overflow) */
.gs-shop-body.gs-search-active {
	overflow: hidden;
	overscroll-behavior: none;
}

/* Floating dropdown card — position/width set inline via JS (desktop/tablet) */
.gs-shop-body .gs-search-panel {
	position: fixed;
	z-index: 9010;
	background: var(--gs-bg-card, #fff);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 16px;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.18);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-6px);
	transform-origin: top center;
	transition: opacity 0.18s ease, transform 0.18s ease, visibility 0s 0.18s;
	pointer-events: none;
}
.gs-shop-body .gs-search-panel--active {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	transition: opacity 0.18s ease, transform 0.18s ease;
	pointer-events: auto;
}

/* Input row inside panel — always visible; on desktop it overlays the header
   search box (same height/pill style), on mobile it is the fullscreen top bar */
.gs-shop-body .gs-search-panel__input-row {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	gap: 4px;
	padding: 8px;
}
/* Back button — hidden on desktop, shown on mobile fullscreen */
.gs-shop-body .gs-search-panel__back {
	display: none;
	border: none;
	background: transparent;
	cursor: pointer;
	color: var(--gs-text, #1a1a1a);
	padding: 8px;
	flex-shrink: 0;
	border-radius: 8px;
	align-items: center;
	justify-content: center;
	transition: background 0.15s;
}
.gs-shop-body .gs-search-panel__back:active {
	background: var(--gs-bg-hover, #f7f7f8);
}
/* Panel search form — same pill as the header search box (44px) */
.gs-shop-body .gs-search-panel__form {
	display: flex;
	align-items: center;
	gap: 8px;
	background: var(--gs-border, #f0f0f1);
	border-radius: 9999px;
	height: 44px;
	padding: 0 16px;
	transition: box-shadow 0.2s, background 0.2s;
	flex: 1;
	min-width: 0;
}
.gs-shop-body .gs-search-panel__form:focus-within {
	box-shadow: 0 0 0 2px rgba(239, 64, 86, 0.15);
	background: var(--gs-bg-hover, #f7f7f8);
}
.gs-shop-body .gs-search-panel__input-icon {
	color: var(--gs-text-muted, #8c8c8c);
	flex-shrink: 0;
}
.gs-shop-body .gs-search-panel__input {
	flex: 1;
	border: none;
	background: transparent;
	font-size: 16px;
	font-family: inherit;
	color: var(--gs-text, #1a1a1a);
	outline: none;
	padding: 8px 4px;
	min-width: 0;
}
.gs-shop-body .gs-search-panel__input::placeholder {
	color: var(--gs-text-muted, #8c8c8c);
	font-size: 13px;
}
.gs-shop-body .gs-search-panel__submit {
	border: none;
	background: transparent;
	cursor: pointer;
	color: var(--gs-text-muted, #8c8c8c);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	min-width: 36px;
	min-height: 36px;
	padding: 8px;
}
.gs-shop-body .gs-search-panel__submit svg {
	width: 20px;
	height: 20px;
	display: block;
}

/* Results area (scrollable) */
.gs-shop-body .gs-search-panel__results {
	flex: 1 1 auto;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
	border-top: 1px solid var(--gs-border, #f0f0f1);
}

/* Panel content (recent + trending) */
.gs-shop-body .gs-search-panel__content {
	flex-shrink: 0;
}
.gs-shop-body .gs-search-panel__section {
	padding: 16px 18px;
	border-bottom: 1px solid var(--gs-border, #f0f0f1);
}
.gs-shop-body .gs-search-panel__section:last-child {
	border-bottom: none;
}
.gs-shop-body .gs-search-panel__section-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
}
.gs-shop-body .gs-search-panel__section-title {
	font-size: 14px;
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
}
.gs-shop-body .gs-search-panel__clear-btn {
	border: none;
	background: transparent;
	color: var(--gs-text-muted, #8c8c8c);
	font-size: 12px;
	cursor: pointer;
	padding: 4px 8px;
	border-radius: 6px;
	transition: background 0.15s, color 0.15s;
	font-family: inherit;
}
.gs-shop-body .gs-search-panel__clear-btn:hover {
	background: var(--gs-bg-hover, #f7f7f8);
	color: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-search-panel__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

/* Chip — capsule, no icon (recent) or trend icon on right (trending) */
.gs-shop-body .gs-search-panel__chip {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 14px;
	border-radius: 9999px;
	background: var(--gs-bg-hover, #f7f7f8);
	border: 1px solid var(--gs-border, #f0f0f1);
	font-size: 13px;
	font-weight: 500;
	color: var(--gs-text, #1a1a1a);
	text-decoration: none;
	transition: background 0.15s, border-color 0.15s, color 0.15s;
	cursor: pointer;
	white-space: nowrap;
}
.gs-shop-body .gs-search-panel__chip:hover {
	background: var(--gs-primary-light, #fef0f1);
	border-color: var(--gs-primary, #ef4056);
}
/* Trending: icon on the right side */
.gs-shop-body .gs-search-panel__chip--trend svg {
	color: var(--gs-primary, #ef4056);
	flex-shrink: 0;
	order: 2;
}
.gs-shop-body .gs-search-panel__chip--trend span {
	order: 1;
}
/* Recent: no icon, muted color, with remove button */
.gs-shop-body .gs-search-panel__chip--recent {
	color: var(--gs-text-muted, #8c8c8c);
}
.gs-shop-body .gs-search-panel__chip--recent:hover {
	color: var(--gs-text, #1a1a1a);
}
.gs-shop-body .gs-search-panel__chip-remove {
	margin-right: -4px;
	padding: 2px;
	border: none;
	background: transparent;
	cursor: pointer;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0.5;
	transition: opacity 0.15s, background 0.15s;
	color: var(--gs-text-muted, #8c8c8c);
}
.gs-shop-body .gs-search-panel__chip-remove:hover {
	opacity: 1;
	background: var(--gs-border, #f0f0f1);
}

/* Autocomplete results (when typing) — replaces default content */
.gs-shop-body .gs-search-panel__autocomplete {
	display: none;
	overflow-y: auto;
	flex: 1 1 auto;
}
.gs-shop-body .gs-search-panel__autocomplete--active {
	display: block;
}

/* Ad banner stuck to bottom of panel */
.gs-shop-body .gs-search-panel__ad {
	flex-shrink: 0;
	border-top: 1px solid var(--gs-border, #f0f0f1);
	padding: 8px;
	background: var(--gs-bg, #fafafa);
}
.gs-shop-body .gs-search-panel__ad-link {
	display: block;
	text-decoration: none;
}
.gs-shop-body .gs-search-panel__ad-img {
	display: block;
	width: 100%;
	height: 80px;
	object-fit: cover;
	border-radius: 8px;
}

/* Reuse existing .gs-srch-* autocomplete styles inside panel */
.gs-shop-body .gs-search-panel__autocomplete .gs-srch-section {
	padding: 12px 16px 6px;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
	background: transparent;
	border-bottom: none;
}
.gs-shop-body .gs-search-panel__autocomplete .gs-srch-empty {
	padding: 24px 16px;
	text-align: center;
	color: var(--gs-text-muted, #8c8c8c);
	font-size: 14px;
}
.gs-shop-body .gs-search-panel__autocomplete .gs-srch-seeall {
	display: block;
	padding: 12px 16px;
	text-align: center;
	font-size: 14px;
	font-weight: 600;
	color: var(--gs-primary, #ef4056);
	text-decoration: none;
	border-top: 1px solid var(--gs-border, #f0f0f1);
	transition: background 0.15s;
}
.gs-shop-body .gs-search-panel__autocomplete .gs-srch-seeall:hover {
	background: var(--gs-bg-hover, #f7f7f8);
}
.gs-shop-body .gs-search-panel__autocomplete .gs-srch-skeleton {
	padding: 8px 16px;
}

/* Tablet (≤1024px): slightly tighter spacing, still a floating rounded card */
@media (max-width: 1024px) {
	.gs-shop-body .gs-search-panel__section {
		padding: 12px 14px;
	}
	.gs-shop-body .gs-search-panel__chip {
		padding: 6px 12px;
		font-size: 12px;
	}
	.gs-shop-body .gs-search-panel__ad-img {
		height: 64px;
	}
}

/* Mobile fullscreen (≤480px) — Digikala-style fullscreen search */
@media (max-width: 480px) {
	/* Panel becomes fullscreen (inline top/left/width cleared by JS at this breakpoint) */
	.gs-shop-body .gs-search-panel {
		top: 0 !important;
		right: 0 !important;
		left: 0 !important;
		bottom: auto !important;
		width: 100% !important;
		max-width: 100%;
		max-height: none !important;
		height: 100dvh;
		border-radius: 0;
		border: none;
		box-shadow: none;
		/* Glassmorphism — slightly less translucent for better readability */
		background: rgba(255, 255, 255, 0.88);
		backdrop-filter: blur(10px) saturate(140%);
		-webkit-backdrop-filter: blur(10px) saturate(140%);
		transform: translateY(100%);
		transform-origin: bottom center;
		transition: transform 0.25s ease;
	}
	.gs-shop-body .gs-search-panel--active {
		transform: translateY(0);
	}
	/* Input row = top bar with back button */
	.gs-shop-body .gs-search-panel__input-row {
		padding: 4px;
		border-bottom: 1px solid rgba(0, 0, 0, 0.06);
		background: transparent;
	}
	.gs-shop-body .gs-search-panel__back {
		display: flex;
	}
	.gs-shop-body .gs-search-panel__form {
		height: 40px;
		padding: 0 12px;
		background: rgba(255, 255, 255, 0.6);
		border: 1px solid rgba(0, 0, 0, 0.08);
	}
	.gs-shop-body .gs-search-panel__form:focus-within {
		border-color: var(--gs-primary, #ef4056);
		background: rgba(255, 255, 255, 0.8);
		box-shadow: none;
	}
	.gs-shop-body .gs-search-panel__input {
		font-size: 16px;
	}
	.gs-shop-body .gs-search-panel__input::placeholder {
		font-size: 13px;
	}
	.gs-shop-body .gs-search-panel__section {
		padding: 10px 12px;
	}
	/* Results area fills remaining screen */
	.gs-shop-body .gs-search-panel__results {
		border-top: none;
		flex: 1 1 auto;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}
	/* Hide header search box on mobile fullscreen (panel has its own input) */
	.gs-shop-body.gs-search-active .gs-search-box {
		visibility: hidden;
	}
	/* Keep scrim visible on mobile for glassmorphism effect (lighter) */
	.gs-shop-body.gs-search-active .gs-search-scrim {
		opacity: 1;
		visibility: visible;
		background: rgba(0, 0, 0, 0.25);
	}
}

/* Section header */
.gs-shop-body .gs-srch-section {
	padding: 10px 16px 6px;
	font-size: 0.6875rem;
	font-weight: 800;
	color: var(--gs-text-light);
	text-transform: none;
	letter-spacing: 0;
	background: var(--gs-bg-alt);
	border-bottom: 1px solid var(--gs-border);
}

/* Suggestion item */
.gs-shop-body .gs-srch-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 16px;
	text-decoration: none;
	color: var(--gs-text);
	transition: background 0.12s;
	border-bottom: 1px solid var(--gs-bg-alt);
}
.gs-shop-body .gs-srch-item:last-child {
	border-bottom: none;
}
.gs-shop-body .gs-srch-item:hover,
.gs-shop-body .gs-srch-item--active {
	background: var(--gs-bg-alt);
}

/* Thumbnail / icon */
.gs-shop-body .gs-srch-item__thumb {
	width: 40px;
	height: 40px;
	border-radius: 8px;
	overflow: hidden;
	background: var(--gs-border);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.gs-shop-body .gs-srch-item__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.gs-shop-body .gs-srch-item__icon {
	font-size: 1.25rem;
	line-height: 1;
}

/* Body */
.gs-shop-body .gs-srch-item__body {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.gs-shop-body .gs-srch-item__title {
	font-size: 0.8125rem;
	font-weight: 700;
	color: var(--gs-text-dark);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	
	font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
	font-variant-numeric: lining-nums;
	-webkit-font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
	-moz-font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
}
.gs-shop-body .gs-srch-item__meta {
	font-size: 0.6875rem;
	color: var(--gs-text-light);
	font-weight: 600;
}

/* Price column */
.gs-shop-body .gs-srch-item__price {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
	flex-shrink: 0;
}
.gs-shop-body .gs-srch-item__price-val {
	font-size: 0.8125rem;
	font-weight: 800;
	color: var(--gs-price);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}
.gs-shop-body .gs-srch-item__price-val b,
.gs-shop-body .gs-srch-item__price-val .woocommerce-Price-amount {
	font-weight: 800;
}

/* Stock badge */
.gs-shop-body .gs-srch-item__badge {
	font-size: 0.625rem;
	font-weight: 700;
	padding: 1px 6px;
	border-radius: 4px;
}
.gs-shop-body .gs-srch-item__badge--out {
	background: var(--gs-danger-bg);
	color: var(--gs-primary);
}

/* Arrow for categories */
.gs-shop-body .gs-srch-item__arrow {
	color: var(--gs-text-muted);
	flex-shrink: 0;
	transform: scaleX(-1);
}

/* Loading state */
.gs-shop-body .gs-srch-loading {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 16px;
	font-size: 0.8125rem;
	color: var(--gs-text-light);
	justify-content: center;
}
.gs-shop-body .gs-srch-spinner {
	animation: gsSrchSpin 0.8s linear infinite;
	color: var(--gs-primary);
}
@keyframes gsSrchSpin {
	to { transform: rotate(360deg); }
}

/* Empty state */
.gs-shop-body .gs-srch-empty {
	padding: 20px 16px;
	font-size: 0.8125rem;
	color: var(--gs-text-light);
	text-align: center;
}

/* See all results */
.gs-shop-body .gs-srch-seeall {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 12px 16px;
	font-size: 0.8125rem;
	font-weight: 800;
	color: var(--gs-primary);
	text-decoration: none;
	border-top: 1px solid var(--gs-border);
	background: var(--gs-bg-alt);
	border-radius: 0 0 12px 12px;
	transition: background 0.12s;
}
.gs-shop-body .gs-srch-seeall:hover {
	background: var(--gs-border);
}
.gs-shop-body .gs-srch-seeall svg {
	transform: scaleX(-1);
}

/* ===== Search Product Cards Grid ===== */
.gs-shop-body .gs-srch-grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 8px;
	padding: 8px 12px;
}
.gs-shop-body .gs-srch-card {
	display: flex;
	flex-direction: column;
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border);
	border-radius: 8px;
	overflow: hidden;
	text-decoration: none;
	transition: all 0.2s;
}
.gs-shop-body .gs-srch-card:hover {
	border-color: var(--gs-text-muted);
	box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}
.gs-shop-body .gs-srch-card__image {
	width: 100%;
	aspect-ratio: 1;
	background: var(--gs-bg-alt);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	position: relative;
}
.gs-shop-body .gs-srch-card__img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 6px;
}
.gs-shop-body .gs-srch-card__placeholder {
	font-size: 28px;
	opacity: 0.3;
}
.gs-shop-body .gs-srch-card__badge {
	position: absolute;
	top: 4px;
	right: 4px;
	background: var(--gs-danger-bg);
	color: var(--gs-primary);
	font-size: 0.625rem;
	font-weight: 700;
	padding: 2px 6px;
	border-radius: 4px;
}
.gs-shop-body .gs-srch-card__body {
	padding: 8px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}
.gs-shop-body .gs-srch-card__title {
	font-size: 0.75rem;
	font-weight: 700;
	color: var(--gs-text);
	line-height: 1.5;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 33px;
	text-align: center;
	width: 100%;
}
.gs-shop-body .gs-srch-card__price {
	font-size: 0.6875rem;
	font-weight: 800;
	color: var(--gs-price);
	background: var(--gs-border);
	border-radius: 9999px;
	padding: 3px 10px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
	text-align: center;
}

/* Responsive */
@media (max-width: 768px) {
	

	/* Mobile: show search results as single-column list, not grid */
	.gs-shop-body .gs-srch-grid {
		grid-template-columns: 1fr;
		gap: 0;
		padding: 0;
	}
	/* Convert cards to list items on mobile */
	.gs-shop-body .gs-srch-card {
		flex-direction: row;
		align-items: center;
		gap: 10px;
		padding: 10px 14px;
		border: none;
		border-bottom: 1px solid var(--gs-border);
		border-radius: 0;
	}
	.gs-shop-body .gs-srch-card:hover {
		box-shadow: none;
		background: var(--gs-bg-alt);
	}
	.gs-shop-body .gs-srch-card__image {
		width: 44px;
		height: 44px;
		aspect-ratio: auto;
		flex-shrink: 0;
		border-radius: 8px;
	}
	.gs-shop-body .gs-srch-card__img {
		padding: 2px;
	}
	.gs-shop-body .gs-srch-card__badge {
		top: 2px;
		right: 2px;
	}
	.gs-shop-body .gs-srch-card__body {
		flex: 1;
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
		padding: 0;
		min-width: 0;
	}
	.gs-shop-body .gs-srch-card__title {
		font-size: 0.8125rem;
		text-align: right;
		-webkit-line-clamp: 1;
		line-clamp: 1;
		min-height: 0;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		width: 100%;
	}
	.gs-shop-body .gs-srch-card__price {
		font-size: 0.75rem;
		padding: 2px 8px;
	}
	
	.gs-shop-body .gs-srch-item {
		padding: 8px 14px;
		gap: 10px;
	}
	.gs-shop-body .gs-srch-item__thumb {
		width: 36px;
		height: 36px;
	}
	.gs-shop-body .gs-srch-item__title {
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.gs-shop-body .gs-srch-section {
		padding: 8px 14px 4px;
	}
}
@media (max-width: 480px) {
	
	.gs-shop-body .gs-srch-card {
		padding: 8px 12px;
		gap: 8px;
	}
	.gs-shop-body .gs-srch-card__image {
		width: 40px;
		height: 40px;
	}
	.gs-shop-body .gs-srch-card__title {
		font-size: 0.75rem;
	}
	.gs-shop-body .gs-srch-card__price {
		font-size: 0.6875rem;
	}
	
	.gs-shop-body .gs-srch-item {
		gap: 8px;
		padding: 6px 12px;
	}
	.gs-shop-body .gs-srch-item__thumb {
		width: 32px;
		height: 32px;
	}
	.gs-shop-body .gs-srch-item__title {
		font-size: 0.75rem;
	}
	.gs-shop-body .gs-srch-item__meta {
		font-size: 0.625rem;
	}
	.gs-shop-body .gs-srch-item__price-val {
		font-size: 0.75rem;
	}
	.gs-shop-body .gs-srch-section {
		padding: 6px 12px 3px;
		font-size: 0.625rem;
	}
	.gs-shop-body .gs-srch-seeall {
		padding: 10px 12px;
		font-size: 0.75rem;
	}
}


.gs-shop-body .gs-header__actions {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
}
@media (min-width: 640px) {
	.gs-shop-body .gs-header__actions { gap: 12px; }
}
.gs-shop-body .gs-header__action {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 2px;
	color: var(--gs-text);
	text-decoration: none;
	padding: 0;
	transition: color 0.2s;
	position: relative;
	width: 40px;
	height: 40px;
	border-radius: 8px;
}
.gs-shop-body .gs-header__action:hover {
	color: var(--gs-primary);
	background: var(--gs-border);
}
.gs-shop-body .gs-header__action-icon { width: 24px; height: 24px; flex-shrink: 0; }
.gs-shop-body .gs-header__action-label { font-size: 10px; display: none; }
@media (min-width: 640px) {
	.gs-shop-body .gs-header__action-label { display: inline; }
	.gs-shop-body .gs-header__action {
		width: auto;
		height: auto;
		padding: 8px 12px;
	}
}

.gs-shop-body .gs-header__action--login {
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	padding: 8px 16px;
	height: 40px;
	width: auto;
	font-size: 12px;
	font-weight: 800;
	color: var(--gs-text-dark);
	flex-direction: row;
	align-items: center;
	gap: 6px;
	background: transparent;
	line-height: 1;
}
.gs-shop-body .gs-header__action--login:hover {
	color: var(--gs-text-dark);
	background: var(--gs-border);
}
.gs-shop-body .gs-header__action--login .gs-header__action-label {
	display: inline;
	font-size: 12px;
	font-weight: 800;
}

/* Professional account button */
.gs-shop-body .gs-header__account {
	display: flex;
	align-items: center;
	gap: 10px;
	height: 40px;
	padding: 4px 4px 4px 4px;
	border-radius: 10px;
	border: 1px solid var(--gs-border-dark, #e0e0e2);
	background: transparent;
	text-decoration: none;
	color: var(--gs-text-dark, #1a1a1a);
	transition: all 0.2s ease;
	cursor: pointer;
}
.gs-shop-body .gs-header__account:hover {
	border-color: var(--gs-primary);
	background: var(--gs-primary);
}
.gs-shop-body .gs-header__account:hover .gs-header__account-label {
	color: rgba(255,255,255,0.8);
}
.gs-shop-body .gs-header__account:hover .gs-header__account-name {
	color: #fff;
}
.gs-shop-body .gs-header__account:hover .gs-header__account-arrow {
	color: rgba(255,255,255,0.9);
}
.gs-shop-body .gs-header__account-avatar {
	width: 32px;
	height: 32px;
	border-radius: 8px;
	background: linear-gradient(135deg, var(--gs-primary) 0%, var(--gs-primary-light, #2E6A70) 100%);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 15px;
	font-weight: 800;
	flex-shrink: 0;
	line-height: 1;
	padding-bottom: 5px;
}
.gs-shop-body .gs-header__account-info {
	display: flex;
	flex-direction: column;
	justify-content: center;
	line-height: 1.3;
}
.gs-shop-body .gs-header__account-label {
	font-size: 10px;
	color: var(--gs-text-muted, #8c8c8c);
	font-weight: 600;
}
.gs-shop-body .gs-header__account-name {
	font-size: 13px;
	color: var(--gs-text-dark, #1a1a1a);
	font-weight: 800;
	max-width: 100px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.gs-shop-body .gs-header__account-arrow {
	width: 16px;
	height: 16px;
	color: var(--gs-text-muted, #8c8c8c);
	flex-shrink: 0;
	transition: transform 0.2s ease;
}
.gs-shop-body .gs-header__account:hover .gs-header__account-arrow {
	transform: rotate(180deg);
}
/* Guest state */
.gs-shop-body .gs-header__account--guest {
	padding: 4px 14px;
}
.gs-shop-body .gs-header__account--guest:hover {
	background: var(--gs-primary);
	border-color: var(--gs-primary);
}
.gs-shop-body .gs-header__account--guest:hover .gs-header__account-label,
.gs-shop-body .gs-header__account--guest:hover .gs-header__account-icon {
	color: #fff;
}
.gs-shop-body .gs-header__account-icon {
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--gs-text-dark, #1a1a1a);
	flex-shrink: 0;
}
.gs-shop-body .gs-header__account-icon svg {
	width: 22px;
	height: 22px;
}
.gs-shop-body .gs-header__account--guest .gs-header__account-label {
	font-size: 13px;
	font-weight: 800;
	color: var(--gs-text-dark, #1a1a1a);
}
@media (max-width: 639px) {
	.gs-shop-body .gs-header__account-info { display: none; }
	.gs-shop-body .gs-header__account { padding: 4px; gap: 0; }
	.gs-shop-body .gs-header__account-arrow { display: none; }
}

.gs-shop-body .gs-header__action--icon {
	width: 40px;
	height: 40px;
	border-radius: 8px;
	padding: 0;
}
.gs-shop-body .gs-header__action--icon .gs-header__action-label {
	display: none;
}
.gs-shop-body .gs-cart-badge {
	position: absolute;
	top: -4px;
	left: -4px;
	background: var(--gs-primary);
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	border-radius: 50%;
	min-width: 18px;
	height: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 4px;
}
.gs-shop-body .gs-cart-badge--hidden { display: none; }


.gs-shop-body .gs-catnav {
	border-top: 1px solid var(--gs-border);
}
.gs-shop-body .gs-catnav__list {
	display: flex;
	align-items: center;
	gap: 4px;
	height: 40px;
	overflow: visible;
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 12px;
}
.gs-shop-body .gs-catnav__item { flex-shrink: 0; position: relative; }
.gs-shop-body .gs-catnav__link {
	display: block;
	padding: 0 12px;
	line-height: 40px;
	color: var(--gs-text-secondary);
	text-decoration: none;
	font-weight: 700;
	transition: color 0.2s;
}
.gs-shop-body .gs-catnav__link:hover { color: var(--gs-primary); }
.gs-shop-body .gs-catnav__mega-trigger {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 0 12px;
	height: 40px;
	border: none;
	background: transparent;
	font-weight: 800;
	color: var(--gs-text);
	cursor: pointer;
	transition: color 0.2s;
	font-family: inherit;
	font-size: 13px;
}
.gs-shop-body .gs-catnav__mega-trigger:hover { color: var(--gs-primary); }
.gs-shop-body .gs-catnav__mega-icon { width: 20px; height: 20px; }


.gs-shop-body .gs-mega-menu__mobile-header { display: none; }
.gs-shop-body .gs-mega-menu__sub-header { display: none; }
.gs-shop-body .gs-mega-menu__quick-links { display: none; }



.gs-shop-body .gs-mega-menu {
	position: fixed;
	top: 149px;
	right: 50%;
	transform: translateX(50%) translateY(-12px) scale(0.98);
	z-index: 100;
	width: 1120px;
	max-width: calc(100vw - 40px);
	background: var(--gs-bg-card);
	border-radius: 0 0 8px 8px;
	box-shadow: 0 4px 24px rgba(0,0,0,0.12);
	display: flex;
	flex-direction: row;
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.25s ease, transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0.25s;
}
.gs-shop-body .gs-mega-menu--open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateX(50%) translateY(0) scale(1);
	transition: opacity 0.25s ease, transform 0.25s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s;
}


.gs-shop-body .gs-mega-backdrop {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0);
	z-index: 90;
	pointer-events: none;
	transition: background 0.3s ease;
}
.gs-shop-body .gs-mega-backdrop--active {
	background: rgba(0, 0, 0, 0.35);
	pointer-events: auto;
}


.gs-shop-body .gs-mega-menu__main-item {
	opacity: 0;
	transform: translateX(10px);
	transition: opacity 0.3s ease, transform 0.3s ease, background 0.15s, color 0.15s;
}


.gs-shop-body .gs-mega-menu__sub-link {
	opacity: 0;
	transform: translateY(6px);
	transition: opacity 0.3s ease, transform 0.3s ease, color 0.15s;
}
.gs-shop-body .gs-mega-menu--open .gs-mega-menu__sub-link {
	opacity: 1;
	transform: translateY(0);
}


.gs-shop-body .gs-mega-menu__sub-panel {
	transition: opacity 0.2s ease;
}
.gs-shop-body .gs-mega-menu__sub-panel--active {
	animation: gsMegaFadeIn 0.3s ease;
}
@keyframes gsMegaFadeIn {
	from { opacity: 0; transform: translateX(-12px); }
	to { opacity: 1; transform: translateX(0); }
}


.gs-shop-body .gs-mega-menu__main-list {
	flex: 0 0 199px;
	display: flex;
	flex-direction: column;
	overflow-y: auto;
	border-left: 1px solid var(--gs-border);
	padding: 0;
}
.gs-shop-body .gs-mega-menu__main-item {
	display: block;
	width: 100%;
	cursor: pointer;
}
.gs-shop-body .gs-mega-menu__main-link {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 0 12px;
	height: 44px;
	text-decoration: none;
	color: var(--gs-text);
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
	width: 100%;
	box-sizing: border-box;
	transition: background 0.15s, color 0.15s;
}
.gs-shop-body .gs-mega-menu__main-item:hover .gs-mega-menu__main-link,
.gs-shop-body .gs-mega-menu__main-item--active .gs-mega-menu__main-link {
	background: var(--gs-border);
	color: var(--gs-primary);
}
.gs-shop-body .gs-mega-menu--open .gs-mega-menu__main-item {
	opacity: 1;
	transform: translateX(0);
}
.gs-shop-body .gs-mega-menu__main-icon {
	font-size: 18px;
	flex-shrink: 0;
	width: 24px;
	text-align: center;
}
.gs-shop-body .gs-mega-menu__main-label {
	flex: 1;
	overflow: hidden;
	text-overflow: ellipsis;
}
.gs-shop-body .gs-mega-menu__main-arrow {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	color: var(--gs-text-muted);
}


.gs-shop-body .gs-mega-menu__sub-container {
	flex: 1 1 auto;
	padding: 20px;
	overflow-y: auto;
	position: relative;
}
.gs-shop-body .gs-mega-menu__sub-panel {
	display: none;
	flex-direction: row;
	gap: 0;
	width: 100%;
	height: 100%;
}
.gs-shop-body .gs-mega-menu__sub-panel--active { display: flex; }


.gs-shop-body .gs-mega-menu__sub-col {
	flex: 1 1 220px;
	max-width: 220px;
	display: flex;
	flex-direction: column;
	padding: 0 8px;
}


.gs-shop-body .gs-mega-menu__sub-link {
	display: block;
	padding: 8px 12px;
	text-decoration: none;
	font-size: 12px;
	font-weight: 600;
	color: var(--gs-text-light);
	transition: color 0.15s, background 0.15s;
	line-height: 1.6;
	/*border-radius: 6px;*/
	width: 100%;
	box-sizing: border-box;
}
.gs-shop-body .gs-mega-menu__sub-link:hover {
	color: var(--gs-primary);
	background: var(--gs-bg-alt);
}


.gs-shop-body .gs-mega-menu__sub-link--header {
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin-top: 8px;
	padding: 8px 12px;
}
.gs-shop-body .gs-mega-menu__sub-link--header:first-child { margin-top: 0; }
.gs-shop-body .gs-mega-menu__sub-link--header:hover {
	color: var(--gs-primary);
	background: transparent;
}


.gs-shop-body .gs-mega-menu__sub-link--all {
	font-size: 12px;
	font-weight: 800;
	color: #0d4485;
	margin-bottom: 8px;
	padding: 8px 12px 8px 12px;
	border-bottom: 1px solid var(--gs-border);
	border-radius: 6px 6px 0 0;
}
.gs-shop-body .gs-mega-menu__sub-link--all:hover {
	color: var(--gs-primary);
	background: transparent;
}


.gs-shop-body .gs-container {
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 20px;
}






.gs-shop-body .gs-breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	padding: 16px 0;
	margin-bottom: 3px;
	font-size: 12px;
	font-weight: 600;
}
.gs-shop-body .gs-breadcrumb__link {
	color: var(--gs-text-light);
	text-decoration: none;
	transition: color 0.2s;
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
}
.gs-shop-body .gs-breadcrumb__link:hover { color: var(--gs-primary); }
.gs-shop-body .gs-breadcrumb__sep {
	color: var(--gs-text-muted);
	margin: 0 12px;
}
.gs-shop-body .gs-breadcrumb__current {
	color: var(--gs-text-light);
	font-weight: 600;
	max-width: 300px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;

	font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
	font-variant-numeric: lining-nums;
	-webkit-font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
	-moz-font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
}
/* Mobile: breadcrumb horizontal scroll instead of wrapping */
@media (max-width: 768px) {
	.gs-shop-body .gs-breadcrumb {
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		-ms-overflow-style: none;
		padding: 10px 0;
		margin-bottom: 4px;
	}
	.gs-shop-body .gs-breadcrumb::-webkit-scrollbar {
		display: none;
	}
	.gs-shop-body .gs-breadcrumb__current {
		max-width: none;
		flex-shrink: 0;
	}
}


.gs-shop-body .gs-product-layout {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	gap: 16px;
	margin-bottom: 16px;
}

@media (max-width: 1280px) {
	.gs-shop-body .gs-product-layout { flex-direction: column; }
}
@media (max-width: 1024px) {
	.gs-shop-body .gs-product-layout { flex-direction: column; }
}


.gs-shop-body .gs-product-gallery {
	flex: 0 0 auto;
	width: 504px;
	max-width: 504px;
	min-width: 0;
	display: flex;
	overflow: hidden;
}
@media (max-width: 1280px) {
	.gs-shop-body .gs-product-gallery { width: 100%; max-width: 504px; margin: 0 auto; }
}
@media (max-width: 1024px) {
	.gs-shop-body .gs-product-gallery { width: 100%; max-width: 100%; }
}


.gs-shop-body .gs-gallery-wrapper {
	display: flex;
	gap: 6px;
	position: relative;
	flex: 1 1 auto;
	min-width: 0;
	max-width: 100%;
}

/* ===== PDP Action Sidebar (vertical icons) ===== */
.gs-shop-body .gs-pdp-actions {
	display: flex;
	flex-direction: column;
	gap: 16px;
	align-items: center;
	padding: 16px 8px;
	flex-shrink: 0;
}


.gs-shop-body .gs-pdp-action {
	position: relative;
	width: 40px;
	height: 40px;
	border: none;
	background: transparent;
	cursor: pointer;
	color: var(--gs-text-secondary);
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	transition: all 0.15s ease;
	padding: 0;
}
.gs-shop-body .gs-pdp-action:hover {
	background: var(--gs-border);
	color: var(--gs-text);
}
.gs-shop-body .gs-pdp-action svg {
	width: 24px;
	height: 24px;
}
.gs-shop-body .gs-pdp-action[data-active="1"] {
	color: var(--gs-primary);
}
.gs-shop-body .gs-pdp-action[data-active="1"] svg {
	fill: var(--gs-primary);
	fill-opacity: 0.1;
}
.gs-shop-body .gs-pdp-action__tooltip {
	position: absolute;
	right: calc(100% + 8px);
	top: 50%;
	transform: translateY(-50%);
	background: var(--gs-text);
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	padding: 4px 10px;
	border-radius: 6px;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.15s ease;
	z-index: 30;
}
.gs-shop-body .gs-pdp-action__tooltip::after {
	content: '';
	position: absolute;
	left: 100%;
	top: 50%;
	transform: translateY(-50%);
	border: 5px solid transparent;
	border-right-color: var(--gs-text);
}
.gs-shop-body .gs-pdp-action:hover .gs-pdp-action__tooltip {
	opacity: 1;
}

/* Responsive — actions become horizontal on mobile */
@media (max-width: 1024px) {
	.gs-shop-body .gs-gallery-wrapper {
		flex-direction: column-reverse;
	}
	.gs-shop-body .gs-pdp-actions {
		flex-direction: row;
		justify-content: center;
		gap: 20px;
		padding: 8px 0;
	}
	.gs-shop-body .gs-pdp-action__tooltip {
		right: 50%;
		top: calc(100% + 6px);
		transform: translateX(50%);
	}
	.gs-shop-body .gs-pdp-action__tooltip::after {
		left: 50%;
		top: 100%;
		transform: translateX(-50%);
		border: 5px solid transparent;
		border-bottom-color: var(--gs-text);
		border-right-color: transparent;
	}
}

.gs-shop-body .gs-gallery-card {
	background: var(--gs-bg-card);
	border-radius: 8px;
	padding: 16px;
	border: 1px solid var(--gs-border);
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
}
.gs-shop-body .gs-gallery-main {
	position: relative;
	width: 100%;
	max-width: 100%;
	aspect-ratio: 1;
	background: var(--gs-bg-card);
	border-radius: 8px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 12px;
	box-sizing: border-box;
}
.gs-shop-body .gs-gallery-main__img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	cursor: pointer;
	transition: transform 0.3s;
	display: block;
}
.gs-shop-body .gs-gallery-main__img:hover { transform: scale(1.05); }
.gs-shop-body .gs-gallery-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}
.gs-shop-body .gs-gallery-badge {
	position: absolute;
	top: 12px;
	left: 12px;
	background: var(--gs-discount);
	color: var(--gs-text-dark);
	border-radius: 16px;
	padding: 4px 8px;
	text-align: center;
	line-height: 1.3;
	font-size: 12px;
	font-weight: 600;
}
.gs-shop-body .gs-gallery-badge__percent {
	display: inline;
	font-size: 12px;
	font-weight: 600;
}


.gs-shop-body .gs-gallery-thumbs-wrap {
	display: flex;
	align-items: center;
	gap: 4px;
	width: 100%;
	min-width: 0;
	max-width: 100%;
}
.gs-shop-body .gs-gallery-thumbs-nav {
	flex: 0 0 auto;
	width: 28px;
	height: 28px;
	border: 1px solid var(--gs-border);
	border-radius: 50%;
	background: var(--gs-bg-card);
	color: var(--gs-text-muted);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.2s;
	padding: 0;
}
.gs-shop-body .gs-gallery-thumbs-nav:hover {
	background: var(--gs-primary);
	color: #fff;
	border-color: var(--gs-primary);
}
.gs-shop-body .gs-gallery-thumbs-nav:disabled {
	opacity: 0.3;
	cursor: not-allowed;
}
.gs-shop-body .gs-gallery-thumbs-nav--hidden {
	display: none;
}
.gs-shop-body .gs-gallery-thumbs {
	display: flex;
	flex-wrap: nowrap;
	gap: 8px;
	overflow-x: auto;
	overflow-y: hidden;
	padding: 4px 0;
	flex: 1 1 auto;
	min-width: 0;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	scroll-behavior: smooth;
}
.gs-shop-body .gs-gallery-thumbs::-webkit-scrollbar { display: none; }
.gs-shop-body .gs-gallery-thumb {
	flex: 0 0 72px;
	width: 72px;
	height: 72px;
	border: 2px solid transparent;
	border-radius: 8px;
	overflow: hidden;
	cursor: pointer;
	background: var(--gs-border);
	transition: border-color 0.2s;
	padding: 0;
}
.gs-shop-body .gs-gallery-thumb--active { border-color: var(--gs-primary); }
.gs-shop-body .gs-gallery-thumb:hover { border-color: var(--gs-text-muted); }
.gs-shop-body .gs-gallery-thumb__img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 2px;
    border-radius: 7px;
}


.gs-shop-body .gs-product-main {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: row;
	align-items: stretch;
	gap: 16px;
}

@media (max-width: 1280px) {
	.gs-shop-body .gs-product-main { flex-direction: row; }
}
@media (max-width: 768px) {
	.gs-shop-body .gs-product-main { flex-direction: column; }
}


.gs-shop-body .gs-product-info {
	flex: 1 1 auto;
	min-width: 0;
	background: var(--gs-bg-card);
	border-radius: 8px;
	padding: 10px;
	border: 1px solid var(--gs-border);
}

/* Title — h1: 16px/700/var(--gs-text-dark) */
.gs-shop-body .gs-product-title {
	font-size: 16px;
	font-weight: 700;
	color: var(--gs-text-dark);
	margin: 0 0 8px;
	line-height: 2;
	font-family: inherit;
	font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
	font-variant-numeric: lining-nums;
	-webkit-font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
	-moz-font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
}

/* Rating */
.gs-shop-body .gs-product-rating {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	margin-bottom: 16px;
}
.gs-shop-body .gs-rating-stars {
	color: var(--gs-star);
	font-size: 14px;
	letter-spacing: 1px;
}
.gs-shop-body .gs-rating-stars--sm { font-size: 12px; }
.gs-shop-body .gs-rating-count {
	color: var(--gs-text-light);
	font-size: 12px;
}
.gs-shop-body .gs-rating-link {
	color: var(--gs-secondary);
	font-size: 12px;
	text-decoration: none;
}
.gs-shop-body .gs-rating-link:hover { text-decoration: underline; }

/* Divider */
.gs-shop-body .gs-divider {
	height: 1px;
	background: var(--gs-border);
	margin: 16px 0;
	border: none;
}


.gs-shop-body .gs-price-block {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}
.gs-shop-body .gs-price-old {
	font-size: 12px;
	color: var(--gs-text-muted);
	text-decoration: line-through;
	font-weight: 600;
}
.gs-shop-body .gs-price-old--sm { font-size: 11px; }
.gs-shop-body .gs-price-discount-badge {
	background: var(--gs-discount);
	color: var(--gs-text-dark);
	font-size: 12px;
	font-weight: 600;
	padding: 2px 6px;
	border-radius: 16px;
}
.gs-shop-body .gs-price-current {
	font-size: 19px;
	font-weight: 800;
	color: var(--gs-price);
	font-variant-numeric: tabular-nums;
}
.gs-shop-body .gs-price-current .woocommerce-Price-amount {
	font-size: 19px;
	font-weight: 800;
	color: var(--gs-price);
}
.gs-shop-body .gs-price-label {
	font-size: 12px;
	color: var(--gs-text-light);
	font-weight: 600;
}

/* Short Description */
.gs-shop-body .gs-product-shortdesc {
	font-size: 14px;
	color: var(--gs-text-light);
	line-height: 2;
}

.gs-shop-body .gs-color-dot {
	display: inline-block;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	border: 1px solid var(--gs-border-dark);
	vertical-align: middle;
}
.gs-shop-body .gs-color-dot--sm { width: 12px; height: 12px; }

/* ===== Variant Selectors — Modern Professional Style ===== */
.gs-shop-body .gs-variant-section {
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding: 4px 0;
}
.gs-shop-body .gs-variant-attr {
	display: flex;
	flex-direction: column;
}
.gs-shop-body .gs-variant-attr__header {
	display: flex;
	align-items: baseline;
	gap: 8px;
	margin-bottom: 14px;
}
.gs-shop-body .gs-variant-attr__label {
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text-dark);
	letter-spacing: -0.2px;
}
.gs-shop-body .gs-variant-attr__selected {
	font-size: 12px;
	font-weight: 600;
	color: var(--gs-primary);
	background: rgba(239, 64, 86, 0.08);
	padding: 2px 10px;
	border-radius: 6px;
	transition: all 0.2s;
}

/* ===== Color Swatches — Premium Circular ===== */
.gs-shop-body .gs-color-swatches {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}
.gs-shop-body .gs-color-swatch {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	border: 2px solid var(--gs-border);
	cursor: pointer;
	position: relative;
	transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.2s, box-shadow 0.2s;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background-clip: padding-box;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.gs-shop-body .gs-color-swatch:hover {
	border-color: var(--gs-text-muted);
	transform: scale(1.1);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.gs-shop-body .gs-color-swatch--active {
	border-color: var(--gs-primary);
	border-width: 3px;
	box-shadow: 0 2px 8px rgba(239, 64, 86, 0.25);
	transform: scale(1.05);
}
.gs-shop-body .gs-color-swatch--active:hover {
	transform: scale(1.12);
}
.gs-shop-body .gs-color-swatch__check {
	width: 20px;
	height: 20px;
	color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.3));
}
.gs-shop-body .gs-color-swatch__check--dark { color: var(--gs-text-dark); }

/* ===== Size Boxes — Modern Pill ===== */
.gs-shop-body .gs-size-boxes {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.gs-shop-body .gs-size-box {
	min-width: 48px;
	height: 44px;
	padding: 0 16px;
	border: 2px solid var(--gs-border);
	border-radius: 10px;
	background: var(--gs-bg-card);
	cursor: pointer;
	font-size: 14px;
	font-weight: 700;
	color: var(--gs-text);
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}
.gs-shop-body .gs-size-box:hover {
	border-color: var(--gs-text-muted);
	transform: translateY(-1px);
	box-shadow: 0 3px 8px rgba(0, 0, 0, 0.08);
}
.gs-shop-body .gs-size-box--active {
	border-color: var(--gs-primary);
	color: var(--gs-primary);
	background: rgba(239, 64, 86, 0.06);
	box-shadow: 0 2px 8px rgba(239, 64, 86, 0.15);
}

/* ===== Option Buttons — Sleek Modern ===== */
.gs-shop-body .gs-option-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.gs-shop-body .gs-option-btn {
    padding: 5px 10px 2px 10px;
    border: 2px solid var(--gs-border);
    border-radius: 10px;
    background: var(--gs-bg-card);
    cursor: pointer;
    font-size: 12px;
	font-weight: 700;
	color: var(--gs-text);
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}
.gs-shop-body .gs-option-btn:hover {
	border-color: var(--gs-text-muted);
	transform: translateY(-1px);
	box-shadow: 0 3px 8px rgba(0, 0, 0, 0.08);
}
.gs-shop-body .gs-option-btn--active {
	border-color: var(--gs-primary);
	color: var(--gs-primary);
	background: rgba(239, 64, 86, 0.06);
	box-shadow: 0 2px 8px rgba(239, 64, 86, 0.15);
}
.gs-shop-body .gs-option-btn--active::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 50%;
	transform: translateX(-50%);
	width: 30%;
	height: 2px;
	background: var(--gs-primary);
	border-radius: 2px;
}

/* ===== Disabled Variant Options — No hover/click feedback ===== */
.gs-shop-body .gs-color-swatch:disabled,
.gs-shop-body .gs-size-box:disabled,
.gs-shop-body .gs-option-btn:disabled {
	opacity: 0.35;
	cursor: not-allowed;
	pointer-events: none;
	transform: none !important;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
	border-color: var(--gs-border) !important;
}
.gs-shop-body .gs-color-swatch:disabled:hover,
.gs-shop-body .gs-size-box:disabled:hover,
.gs-shop-body .gs-option-btn:disabled:hover {
	transform: none !important;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
	border-color: var(--gs-border) !important;
}

/* ===== Variant Status — Stock Badge ===== */
.gs-shop-body .gs-variant-status {
	font-size: 13px;
	min-height: 24px;
	margin-top: 4px;
}
.gs-shop-body .gs-stock-msg {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 11px;
	font-weight: 600;
	padding: 6px 14px;
	border-radius: 8px;
}
.gs-shop-body .gs-stock-msg--in {
	color: #0a7d4b;
	background: rgba(10, 125, 75, 0.08);
}
.gs-shop-body .gs-stock-msg--error {
	color: var(--gs-primary);
	background: rgba(239, 64, 86, 0.08);
}

/* Quantity */
.gs-shop-body .gs-quantity {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}
.gs-shop-body .gs-quantity__label {
	font-size: 14px;
	font-weight: 700;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-quantity__controls {
	display: inline-flex;
	align-items: center;
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	overflow: hidden;
}
.gs-shop-body .gs-quantity__btn {
	width: 36px;
	height: 36px;
	border: none;
	background: var(--gs-border);
	color: var(--gs-text);
	font-size: 18px;
	cursor: pointer;
	transition: background 0.2s;
}
.gs-shop-body .gs-quantity__btn:hover { background: var(--gs-border-dark); }
.gs-shop-body .gs-quantity__input {
	width: 48px;
	height: 36px;
	border: none;
	border-left: 1px solid var(--gs-border-dark);
	border-right: 1px solid var(--gs-border-dark);
	text-align: center;
	font-size: 14px;
	font-weight: 700;
	color: var(--gs-text-dark);
	background: var(--gs-bg-card);
	outline: none;
}

/* Add to Cart — bg var(--gs-primary), 12px/700/white, radius 8px, h:40px */
.gs-shop-body .gs-cart-form {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 16px;
}
.gs-shop-body .gs-add-to-cart-btn {
	width: 100%;
	height: 40px;
	background: var(--gs-primary);
	color: #fff;
	border: none;
	border-radius: 8px;
	font-size: 12px;
	font-weight: 800;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	transition: all 0.2s;
	padding: 8px 16px;
	font-family: inherit;
}
.gs-shop-body .gs-add-to-cart-btn:hover { background: var(--gs-primary-hover); }
.gs-shop-body .gs-add-to-cart-btn:active { transform: scale(0.98); }
.gs-shop-body .gs-add-to-cart-btn:disabled {
	background: var(--gs-text-muted);
	cursor: not-allowed;
}
.gs-shop-body .gs-add-to-cart-btn__icon { width: 20px; height: 20px; }
.gs-shop-body .gs-out-of-stock {
	width: 100%;
	padding: 10px;
	background: var(--gs-border);
	color: var(--gs-text-light);
	text-align: center;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 700;
}
.gs-shop-body .gs-notify-stock-btn {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 10px 16px;
	margin-top: 10px;
	background: var(--gs-primary, var(--gs-text));
	color: #fff;
	border: none;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	transition: opacity 0.2s, background 0.2s;
}
.gs-shop-body .gs-notify-stock-btn:hover {
	opacity: 0.9;
}
.gs-shop-body .gs-notify-stock-btn[data-active="1"] {
	background: var(--gs-green);
}

/* Action Buttons */
.gs-shop-body .gs-product-actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin-top: 16px;
}
.gs-shop-body .gs-action-btn {
	height: 40px;
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	background: var(--gs-bg-card);
	color: var(--gs-text);
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	transition: all 0.2s;
	font-family: inherit;
}
.gs-shop-body .gs-action-btn:hover { border-color: var(--gs-primary); color: var(--gs-primary); }
.gs-shop-body .gs-action-btn__icon { width: 18px; height: 18px; }


.gs-shop-body .gs-product-sidebar {
	flex: 0 0 333px;
	display: flex;
}
@media (max-width: 1280px) {
	.gs-shop-body .gs-product-sidebar { flex: 0 0 300px; }
}
@media (max-width: 768px) {
	.gs-shop-body .gs-product-sidebar { flex: 1 1 auto; width: 100%; }
}
.gs-shop-body .gs-buy-box {
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border-dark);
	border-radius: 12px;
	overflow: visible;
	position: sticky;
	top: 180px;
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
}
@media (max-width: 768px) {
	.gs-shop-body .gs-buy-box { position: static; }
}

/* Seller section */
.gs-shop-body .gs-buy-box__seller {
	padding: 16px 20px;
	border-bottom: 1px solid var(--gs-border);
	border-radius: 12px 12px 0 0;
}
.gs-shop-body .gs-buy-box__seller-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
}
.gs-shop-body .gs-buy-box__seller-title {
	font-size: 15px;
	font-weight: 700;
	color: var(--gs-text);
	margin: 0;
}
.gs-shop-body .gs-buy-box__seller-info {
	display: flex;
	align-items: center;
	gap: 12px;
}
.gs-shop-body .gs-buy-box__seller-avatar {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--gs-secondary);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--gs-text-on-secondary);
	flex-shrink: 0;
}
.gs-shop-body .gs-buy-box__seller-avatar svg {
	width: 16px;
	height: 16px;
}
.gs-shop-body .gs-buy-box__seller-detail {
	flex: 1;
}
.gs-shop-body .gs-buy-box__seller-name {
	font-size: 14px;
	font-weight: 600;
	color: var(--gs-text);
	margin: 0 0 4px;
}
.gs-shop-body .gs-buy-box__seller-performance {
	display: flex;
	align-items: center;
	gap: 4px;
	font-size: 13px;
}
.gs-shop-body .gs-buy-box__seller-perf-label {
	color: var(--gs-text-light);
}
.gs-shop-body .gs-buy-box__seller-perf-value {
	color: var(--gs-green);
	font-weight: 600;
}

/* Price section */
.gs-shop-body .gs-buy-box__price-section {
	padding: 16px 20px;
	border-bottom: 1px solid var(--gs-border);
}
.gs-shop-body .gs-buy-box__price {
	margin-bottom: 16px;
}

/* ===== Price Loading Spinner (3-dot bounce) ===== */
.gs-price-spinner {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
	padding: 8px 0;
	min-height: 36px;
}
.gs-price-spinner__dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--gs-primary, #ef4056);
	animation: gs-price-bounce 1.2s infinite ease-in-out;
}
.gs-price-spinner__dot:nth-child(2) { animation-delay: 0.15s; }
.gs-price-spinner__dot:nth-child(3) { animation-delay: 0.3s; }
@keyframes gs-price-bounce {
	0%, 80%, 100% { transform: scale(0.6); opacity: 0.4; }
	40% { transform: scale(1); opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
	.gs-price-spinner__dot { animation: none; opacity: 0.6; }
}
.gs-shop-body .gs-buy-box__price-row {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	margin-bottom: 4px;
}
.gs-shop-body .gs-buy-box__old-price {
	font-size: 13px;
	color: var(--gs-text-muted);
	text-decoration: line-through;
}
.gs-shop-body .gs-buy-box__old-price .woocommerce-Price-amount {
	font-size: 13px;
	color: var(--gs-text-muted);
}
.gs-shop-body .gs-buy-box__discount {
	background: var(--gs-danger);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	padding: 2px 8px;
	border-radius: 6px;
	line-height: 1.4;
}
.gs-shop-body .gs-buy-box__current-price {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 4px;
}
.gs-shop-body .gs-buy-box__current-price-value {
	font-size: 20px;
	font-weight: 800;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-buy-box__current-price-value .woocommerce-Price-amount {
	font-size: 20px;
	font-weight: 800;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-buy-box__toman-icon {
	width: 16px;
	height: 16px;
	color: var(--gs-text-dark);
}

/* Add to cart button */
.gs-shop-body .gs-add-to-cart-btn {
	width: 100%;
	height: 48px;
	background: var(--gs-primary);
	color: #fff;
	border: none;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s;
	font-family: 'Vazirmatn', Tahoma, sans-serif;
}
.gs-shop-body .gs-add-to-cart-btn:hover { background: var(--gs-secondary); }
.gs-shop-body .gs-add-to-cart-btn:active { transform: scale(0.98); }
.gs-shop-body .gs-add-to-cart-btn:disabled {
	background: var(--gs-text-muted);
	cursor: not-allowed;
}
.gs-shop-body .gs-out-of-stock {
	width: 100%;
	padding: 12px;
	background: var(--gs-border);
	color: var(--gs-text-light);
	text-align: center;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 700;
}

/* Buy box sections (warranty, shipping, digiclub) */
.gs-shop-body .gs-buy-box__section {
	padding: 10px 12px;
	border-bottom: 1px solid var(--gs-border);
}
.gs-shop-body .gs-buy-box__section-row {
	display: flex;
	align-items: center;
	gap: 12px;
}
.gs-shop-body .gs-buy-box__section-icon {
	width: 24px;
	height: 24px;
	color: var(--gs-text);
	flex-shrink: 0;
}
.gs-shop-body .gs-buy-box__section-icon--club {
	color: var(--gs-accent);
	width: 20px;
	height: 20px;
}
.gs-shop-body .gs-buy-box__section-text {
	font-size: 14px;
	font-weight: 600;
	color: var(--gs-text);
}

/* Shipping section */
.gs-shop-body .gs-buy-box__section-header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}
.gs-shop-body .gs-buy-box__section-title {
	font-size: 14px;
	font-weight: 600;
	color: var(--gs-text);
}
.gs-shop-body .gs-buy-box__shipping-list {
	list-style: none;
	margin: 0;
	padding: 0;
}
.gs-shop-body .gs-buy-box__shipping-item {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 4px 0;
	position: relative;
}
.gs-shop-body .gs-buy-box__shipping-bullet {
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: var(--gs-text-muted);
	flex-shrink: 0;
	margin-right: 9px;
}
.gs-shop-body .gs-buy-box__shipping-icon {
	width: 16px;
	height: 16px;
	color: var(--gs-secondary);
	flex-shrink: 0;
}
.gs-shop-body .gs-buy-box__shipping-text {
	font-size: 13px;
	color: var(--gs-text-light);
}
.gs-shop-body .gs-buy-box__shipping-sub {
	color: var(--gs-text);
	font-weight: 600;
}
.gs-shop-body .gs-buy-box__shipping-sep {
	color: var(--gs-text-muted);
	margin: 0 2px;
}
/* ===== Checkout Delivery Time Picker ===== */
.gs-shop-body .gs-checkout-delivery {
	border: 1px solid var(--gs-border, var(--gs-border-dark));
	border-radius: 12px;
	overflow: hidden;
	transition: border-color 0.3s, box-shadow 0.3s;
}
.gs-shop-body .gs-checkout-delivery.gs-delivery-error,
.gs-shop-body .gs-express-checkout.gs-delivery-error {
	border-color: var(--gs-discount, #d32f2f) !important;
	box-shadow: 0 0 0 3px rgba(211, 47, 47, 0.15) !important;
	animation: gs-delivery-shake 0.4s ease;
}
@keyframes gs-delivery-shake {
	0%, 100% { transform: translateX(0); }
	25% { transform: translateX(-6px); }
	75% { transform: translateX(6px); }
}
.gs-shop-body .gs-checkout-delivery__header {
	padding: 14px 20px;
	border-bottom: 1px solid var(--gs-border, var(--gs-border));
}
.gs-shop-body .gs-checkout-delivery__title {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 15px;
	font-weight: 700;
	color: var(--gs-text-dark, var(--gs-text-dark));
	margin: 0;
}
.gs-shop-body .gs-checkout-delivery__title svg {
	color: var(--gs-primary, var(--gs-primary));
}
.gs-shop-body .gs-checkout-delivery__body {
	padding: 16px 20px;
}
.gs-shop-body .gs-delivery-btn {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 16px;
	background: var(--gs-bg-card, var(--gs-bg-card));
	border: 1px solid var(--gs-primary, var(--gs-primary));
	border-radius: 8px;
	color: var(--gs-primary, var(--gs-primary));
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.2s;
}
.gs-shop-body .gs-delivery-btn:hover {
	background: color-mix(in srgb, var(--gs-primary, var(--gs-primary)) 5%, var(--gs-bg-card));
}

/* Delivery summary */
.gs-shop-body .gs-delivery-summary {
	margin-top: 12px;
	padding: 12px 16px;
	background: color-mix(in srgb, var(--gs-green, var(--gs-green)) 5%, var(--gs-bg-card));
	border: 1px solid color-mix(in srgb, var(--gs-green, var(--gs-green)) 20%, transparent);
	border-radius: 8px;
}
.gs-shop-body .gs-delivery-summary__row {
	display: flex;
	gap: 8px;
	font-size: 13px;
	margin-bottom: 4px;
}
.gs-shop-body .gs-delivery-summary__row:last-child {
	margin-bottom: 0;
}
.gs-shop-body .gs-delivery-summary__label {
	color: var(--gs-text-secondary, var(--gs-text-secondary));
	font-weight: 500;
	min-width: 50px;
}
.gs-shop-body .gs-delivery-summary__value {
	color: var(--gs-text-dark, var(--gs-text-dark));
	font-weight: 700;
}

/* Delivery modal */
.gs-shop-body .gs-delivery-modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
}
.gs-shop-body .gs-delivery-modal__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
}
.gs-shop-body .gs-delivery-modal__content {
	position: relative;
	background: var(--gs-bg-card);
	border-radius: 12px;
	width: 90%;
	max-width: 420px;
	max-height: 90vh;
	overflow-y: auto;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
}
.gs-shop-body .gs-delivery-modal__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 20px;
	border-bottom: 1px solid var(--gs-border, var(--gs-border));
}
.gs-shop-body .gs-delivery-modal__header h4 {
	margin: 0;
	font-size: 15px;
	font-weight: 700;
	color: var(--gs-text-dark, var(--gs-text-dark));
}
.gs-shop-body .gs-delivery-modal__close {
	background: none;
	border: none;
	font-size: 24px;
	color: var(--gs-text-light, var(--gs-text-light));
	cursor: pointer;
	padding: 0;
	line-height: 1;
}
.gs-shop-body .gs-delivery-modal__close:hover {
	color: var(--gs-text-dark, var(--gs-text-dark));
}

/* Calendar */
.gs-shop-body .gs-delivery-step {
	padding: 20px;
	position: relative;
}
.gs-shop-body .gs-delivery-calendar__loading,
.gs-shop-body .gs-delivery-calendar__error {
	text-align: center;
	padding: 40px 0;
	color: var(--gs-text-light, var(--gs-text-light));
	font-size: 13px;
}
.gs-shop-body .gs-delivery-cal__month-name {
	text-align: center;
	font-size: 15px;
	font-weight: 700;
	color: var(--gs-text-dark, var(--gs-text-dark));
	margin-bottom: 16px;
}
.gs-shop-body .gs-delivery-cal__weekdays {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 2px;
	margin-bottom: 8px;
}
.gs-shop-body .gs-delivery-cal__weekday {
	text-align: center;
	font-size: 11px;
	font-weight: 600;
	color: var(--gs-text-light, var(--gs-text-light));
	padding: 4px 0;
}
.gs-shop-body .gs-delivery-cal__days {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 2px;
}
.gs-shop-body .gs-delivery-cal__day {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1;
	font-size: 13px;
	font-weight: 500;
	border-radius: 8px;
	border: none;
	background: none;
	padding: 0;
	cursor: default;
}
.gs-shop-body .gs-delivery-cal__day--empty {
	visibility: hidden;
}
.gs-shop-body .gs-delivery-cal__day--outside {
	color: var(--gs-text-muted, var(--gs-text-muted));
}
.gs-shop-body .gs-delivery-cal__day--disabled {
	color: var(--gs-text-muted, var(--gs-text-muted));
	background: var(--gs-bg-muted, var(--gs-bg-alt));
	cursor: not-allowed;
}
.gs-shop-body .gs-delivery-cal__day--friday {
	color: var(--gs-text-light, var(--gs-text-light));
}
.gs-shop-body .gs-delivery-cal__day--available {
	color: var(--gs-text-dark, var(--gs-text-dark));
	background: color-mix(in srgb, var(--gs-primary, var(--gs-primary)) 8%, var(--gs-bg-card));
	cursor: pointer;
	transition: all 0.15s;
	font-weight: 600;
}
.gs-shop-body .gs-delivery-cal__day--available:hover {
	background: var(--gs-primary, var(--gs-primary));
	color: #fff;
	transform: scale(1.05);
}

/* Calendar nav buttons */
.gs-shop-body .gs-delivery-nav {
	position: absolute;
	top: 20px;
	background: var(--gs-bg-card, var(--gs-bg-card));
	border: 1px solid var(--gs-border, var(--gs-border-dark));
	border-radius: 6px;
	padding: 6px;
	cursor: pointer;
	color: var(--gs-text-secondary, var(--gs-text-secondary));
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s;
}
.gs-shop-body .gs-delivery-nav:hover:not(:disabled) {
	border-color: var(--gs-primary, var(--gs-primary));
	color: var(--gs-primary, var(--gs-primary));
}
.gs-shop-body .gs-delivery-nav:disabled {
	opacity: 0.4;
	cursor: not-allowed;
}
.gs-shop-body .gs-delivery-nav--prev {
	right: 20px;
}
.gs-shop-body .gs-delivery-nav--next {
	left: 20px;
}

/* Calendar legend */
.gs-shop-body .gs-delivery-cal__legend {
	display: flex;
	gap: 16px;
	justify-content: center;
	margin-top: 16px;
	padding-top: 12px;
	border-top: 1px solid var(--gs-border, var(--gs-border));
}
.gs-shop-body .gs-delivery-cal__legend-item {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 11px;
	color: var(--gs-text-light, var(--gs-text-light));
}
.gs-shop-body .gs-delivery-cal__legend-box {
	width: 14px;
	height: 14px;
	border-radius: 4px;
}
.gs-shop-body .gs-delivery-cal__legend-box--available {
	background: color-mix(in srgb, var(--gs-primary, var(--gs-primary)) 8%, var(--gs-bg-card));
	border: 1px solid color-mix(in srgb, var(--gs-primary, var(--gs-primary)) 20%, transparent);
}
.gs-shop-body .gs-delivery-cal__legend-box--disabled {
	background: var(--gs-bg-muted, var(--gs-bg-alt));
}

/* Time slots */
.gs-shop-body .gs-delivery-slots-header {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	margin-bottom: 16px;
	position: relative;
}
.gs-shop-body .gs-delivery-back {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	gap: 4px;
	background: none;
	border: none;
	color: var(--gs-text-secondary, var(--gs-text-secondary));
	font-size: 12px;
	cursor: pointer;
	padding: 4px 8px;
	position: absolute;
	left: 0;
}
.gs-shop-body .gs-delivery-back:hover {
	color: var(--gs-primary, var(--gs-primary));
}
.gs-shop-body .gs-delivery-slots-date {
	font-size: 14px;
	font-weight: 700;
	color: var(--gs-text-dark, var(--gs-text-dark));
}
.gs-shop-body .gs-delivery-slots {
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.gs-shop-body .gs-delivery-slot {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 14px 16px;
	background: var(--gs-bg-card, var(--gs-bg-card));
	border: 1px solid var(--gs-border, var(--gs-border-dark));
	border-radius: 8px;
	cursor: pointer;
	transition: all 0.2s;
}
.gs-shop-body .gs-delivery-slot:hover {
	border-color: var(--gs-primary, var(--gs-primary));
	background: color-mix(in srgb, var(--gs-primary, var(--gs-primary)) 4%, var(--gs-bg-card));
}
.gs-shop-body .gs-delivery-slot--selected {
	border-color: var(--gs-primary, var(--gs-primary));
	background: color-mix(in srgb, var(--gs-primary, var(--gs-primary)) 8%, var(--gs-bg-card));
	border-width: 2px;
}
.gs-shop-body .gs-delivery-slot__time {
	font-size: 14px;
	font-weight: 600;
	color: var(--gs-text-dark, var(--gs-text-dark));
}
.gs-shop-body .gs-delivery-slots__loading,
.gs-shop-body .gs-delivery-slots__error {
	text-align: center;
	padding: 24px 0;
	color: var(--gs-text-light, var(--gs-text-light));
	font-size: 13px;
}

/* Mobile */
@media (max-width: 768px) {
	.gs-shop-body .gs-delivery-modal__content {
		width: 95%;
		max-height: 85vh;
	}
	.gs-shop-body .gs-delivery-cal__day {
		font-size: 12px;
	}
	.gs-shop-body .gs-delivery-cal__weekday {
		font-size: 10px;
	}
}

/* ===== Shipping Join (vertical group, daisyUI-style) ===== */
.gs-shop-body .gs-shipping-section {
	padding: 10px 12px;
	/*border-radius: 0 0 12px 12px;*/
}
.gs-shop-body .gs-shipping-join {
	display: flex;
	flex-direction: column;
	margin-top: 10px;
	border: 1px solid var(--gs-border-dark, var(--gs-border-dark));
	border-radius: 8px;
	overflow: hidden;
}
.gs-shop-body .gs-shipping-join__item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 12px;
    min-height: 35px;
    background: var(--gs-bg-card, var(--gs-bg-card));
    border-bottom: 1px solid var(--gs-border, var(--gs-border));
    transition: background 0.2s;

}
.gs-shop-body .gs-shipping-join__item:last-child {
	border-bottom: none;
}
.gs-shop-body .gs-shipping-join__item:hover {
	background: color-mix(in srgb, var(--gs-primary, var(--gs-primary)) 4%, var(--gs-bg-card));
}
.gs-shop-body .gs-shipping-join__num {
	width: 22px;
	height: 22px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 700;
	color: var(--gs-primary, var(--gs-primary));
	background: color-mix(in srgb, var(--gs-primary, var(--gs-primary)) 10%, transparent);
	border-radius: 50%;
}
.gs-shop-body .gs-shipping-join__name {
	font-size: 11px;
	font-weight: 600;
	color: var(--gs-text-dark, var(--gs-text-dark));
	white-space: nowrap;
}
.gs-shop-body .gs-shipping-join__badge {
	font-size: 10px;
	font-weight: 600;
	color: var(--gs-primary, var(--gs-primary));
	background: color-mix(in srgb, var(--gs-primary, var(--gs-primary)) 10%, transparent);
	padding: 1px 7px;
	border-radius: 4px;
	white-space: nowrap;
}
.gs-shop-body .gs-shipping-join__price {
	margin-right: auto;
	font-size: 12px;
	font-weight: 600;
	color: var(--gs-text-light, var(--gs-text-light));
	white-space: nowrap;
	text-align: left;
}
.gs-shop-body .gs-shipping-join__price--calculated {
	color: var(--gs-primary, var(--gs-primary));
	font-weight: 700;
}
.gs-shop-body .gs-shipping-join__price--free {
	color: var(--gs-green, var(--gs-green));
	font-weight: 700;
}
.gs-shop-body .gs-shipping-join__price--loading {
	color: var(--gs-text-muted, var(--gs-text-muted));
}
.gs-shop-body .gs-shipping-join__price--loading::after {
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	border: 2px solid var(--gs-text-muted, var(--gs-text-muted));
	border-top-color: transparent;
	border-radius: 50%;
	animation: gs-spin 0.8s linear infinite;
	margin-right: 4px;
	vertical-align: middle;
}
.gs-shop-body .gs-shipping-section__note {
	font-size: 11px;
	color: var(--gs-text-light, var(--gs-text-light));
	margin-top: 8px;
	text-align: center;
}
@keyframes gs-spin {
	to { transform: rotate(360deg); }
}
@media (max-width: 768px) {
	.gs-shop-body .gs-shipping-join__item {
		padding: 6px 10px;
		min-height: 34px;
	}
	.gs-shop-body .gs-shipping-join__name {
		font-size: 12px;
	}
	.gs-shop-body .gs-shipping-join__price {
		font-size: 11px;
	}
}

/* Price monitor link */
.gs-shop-body .gs-buy-box__price-monitor {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 20px;
	text-decoration: none;
	transition: background 0.2s;
	border-radius: 0 0 12px 12px;
	margin-top: auto;
}
.gs-shop-body .gs-buy-box__price-monitor:hover {
	background: var(--gs-bg-alt);
}
.gs-shop-body .gs-buy-box__price-monitor-inner {
	display: flex;
	align-items: center;
	gap: 8px;
}
.gs-shop-body .gs-buy-box__price-monitor-inner svg {
	color: var(--gs-text-light);
	flex-shrink: 0;
}
.gs-shop-body .gs-buy-box__price-monitor-inner span {
	font-size: 13px;
	color: #616161;
}
.gs-shop-body .gs-buy-box__chevron {
	width: 20px;
	height: 20px;
	color: var(--gs-text-muted);
}

/* ===== Product Code Pin (clipped to buy box corner) ===== */
.gs-shop-body .gs-buy-box {
	position: sticky;
	top: 180px;
}
.gs-shop-body .gs-product-code-pin {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 3px 9px 4px 9px;
    background: var(--gs-bg-alt);
    color: var(--gs-primary);
    font-size: 10px;
    font-weight: 700;
    border-bottom-left-radius: 13px;
    /* box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.12); */
    border-top-right-radius: 11px;
}
.gs-shop-body .gs-product-code-pin::before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--gs-accent);
	flex-shrink: 0;
}
.gs-shop-body .gs-product-code-pin__value {
	direction: ltr;
	unicode-bidi: embed;
	font-family: Tahoma, Arial, sans-serif;
	font-variant-numeric: lining-nums;
	letter-spacing: 0.5px;
	user-select: all;
}
@media (max-width: 768px) {
	.gs-shop-body .gs-product-code-pin {
		font-size: 10px;
		padding: 3px 8px 3px 10px;
	}
}

/* ===== Brand Link ===== */
.gs-shop-body .gs-brand-link {
	font-size: 12px;
	color: var(--gs-text-light);
	margin-bottom: 4px;
}
.gs-shop-body .gs-brand-link__a {
	color: var(--gs-text-light);
	text-decoration: none;
}
.gs-shop-body .gs-brand-link__a:hover { color: var(--gs-primary); }
.gs-shop-body .gs-brand-link__sep {
	margin: 0 4px;
	color: var(--gs-text-muted);
}

/* ===== Color Row ===== */
.gs-shop-body .gs-color-row {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 16px;
	font-size: 14px;
}
.gs-shop-body .gs-color-row__label {
	font-weight: 800;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-color-row__value {
	color: var(--gs-text-light);
	font-weight: 600;
}
.gs-shop-body .gs-color-swatch--lg {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	border: 1px solid var(--gs-border-dark);
	flex-shrink: 0;
	cursor: pointer;
}

.gs-shop-body .gs-color-tooltip {
	position: relative;
	display: inline-flex;
	align-items: center;
}
.gs-shop-body .gs-color-tooltip__text {
	visibility: hidden;
	opacity: 0;
	position: absolute;
	bottom: calc(100% + 6px);
	right: 50%;
	transform: translateX(50%);
	background: var(--gs-text);
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	padding: 4px 10px;
	border-radius: 6px;
	white-space: nowrap;
	pointer-events: none;
	transition: opacity 0.15s, visibility 0.15s;
	z-index: 20;
}
.gs-shop-body .gs-color-tooltip__text::after {
	content: "";
	position: absolute;
	top: 100%;
	right: 50%;
	transform: translateX(50%);
	border: 4px solid transparent;
	border-top-color: var(--gs-text);
}
.gs-shop-body .gs-color-tooltip:hover .gs-color-tooltip__text {
	visibility: visible;
	opacity: 1;
}

/* ===== Product Add-ons Section (insurance, warranty, gift wrap, …) ===== */
.gs-shop-body .gs-addons-section {
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 8px;
	padding: 4px 12px;
	margin-bottom: 5px;
	background: var(--gs-bg-card, #fff);
}
.gs-shop-body .gs-addon-row {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	font-size: 13px;
	color: var(--gs-text, #3f4064);
	padding: 10px 0;
	border-bottom: 1px solid var(--gs-border, #f0f0f1);
}
.gs-shop-body .gs-addon-row:last-child {
	border-bottom: none;
}
.gs-shop-body .gs-addon-icon {
	font-size: 18px;
	flex-shrink: 0;
}
.gs-shop-body .gs-addon-title {
	flex: 1;
	min-width: 0;
	font-size: 13px;
	color: var(--gs-text, #3f4064);
}
.gs-shop-body .gs-addon-price {
	display: flex;
	align-items: center;
	gap: 6px;
}
.gs-shop-body .gs-addon-discount {
	background: var(--gs-discount, #d32f2f);
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	padding: 2px 6px;
	border-radius: 16px;
}
.gs-shop-body .gs-addon-old {
	font-size: 11px;
	color: var(--gs-text-muted, #c0c2c5);
	text-decoration: line-through;
}
.gs-shop-body .gs-addon-current {
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-text-dark, #0c0c0c);
}
/* Mobile: stack prices vertically in a column */
@media (max-width: 768px) {
	.gs-shop-body .gs-addon-price {
		flex-direction: column;
		align-items: flex-end;
		gap: 2px;
	}
	.gs-shop-body .gs-addon-old {
		font-size: 10px;
	}
	.gs-shop-body .gs-addon-current {
		font-size: 13px;
	}
	.gs-shop-body .gs-addon-discount {
		font-size: 10px;
		padding: 1px 5px;
	}
}

/* Add-on checkbox */
.gs-shop-body .gs-addon-check {
	position: relative;
	display: inline-flex;
	align-items: center;
	cursor: pointer;
	flex-shrink: 0;
}
.gs-shop-body .gs-addon-check input[type="checkbox"] {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}
.gs-shop-body .gs-addon-check-custom {
	width: 20px;
	height: 20px;
	border: 2px solid var(--gs-border-dark, #e6e6e6);
	border-radius: 6px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s;
	background: var(--gs-bg-card, #fff);
}
.gs-shop-body .gs-addon-check-custom::after {
	content: "";
	width: 6px;
	height: 10px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg) scale(0);
	transition: transform 0.2s;
	margin-top: -2px;
}
.gs-shop-body .gs-addon-check input:checked + .gs-addon-check-custom {
	background: var(--gs-primary, #ef4056);
	border-color: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-addon-check input:checked + .gs-addon-check-custom::after {
	transform: rotate(45deg) scale(1);
}
.gs-shop-body .gs-addon-check input:focus + .gs-addon-check-custom {
	box-shadow: 0 0 0 3px rgba(239, 64, 86, 0.15);
}

/* ===== Return Policy ===== */
.gs-shop-body .gs-return-policy {
	font-size: 12px;
	color: var(--gs-text-light, var(--gs-text-light));
	line-height: 1.8;
padding: 7px 0;
    margin-bottom: 5px;
}
.gs-shop-body .gs-return-policy__cat-link {
	color: var(--gs-text, var(--gs-text));
	text-decoration: none;
	border-bottom: 1px dashed var(--gs-text-muted, var(--gs-text-muted));
	transition: color 0.2s, border-color 0.2s;
}
.gs-shop-body .gs-return-policy__cat-link:hover {
	color: var(--gs-primary, var(--gs-primary));
	border-bottom-color: var(--gs-primary, var(--gs-primary));
}

/* ===== Plus Banner ===== */
.gs-shop-body .gs-plus-banner {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
	padding: 12px 16px;
	background: var(--gs-border);
	border-radius: 8px;
	margin-bottom: 16px;
}
.gs-shop-body .gs-plus-banner__item {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	color: var(--gs-text);
}
.gs-shop-body .gs-plus-banner__icon { color: var(--gs-primary); }
.gs-shop-body .gs-plus-banner__buy {
	margin-right: auto;
	color: var(--gs-primary);
	font-size: 12px;
	font-weight: 800;
	text-decoration: none;
}


.gs-shop-body .gs-key-features {
	padding: 12px 0;
}
.gs-shop-body .gs-key-features__title {
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0 0 10px;
}
.gs-shop-body .gs-key-features__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 8px;
}
.gs-shop-body .gs-key-features__card {
	background: var(--gs-border);
	border-radius: 6px;
	padding: 8px 10px;
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}
/* Hide features beyond the 6th (2 rows × 3 cols) on all screen sizes */
.gs-shop-body .gs-key-features__card--mobile-hide { display: none; }
.gs-shop-body .gs-key-features__card-label {
	font-size: 10px;
	color: var(--gs-text-light);
	margin: 0;
	line-height: 1.3;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.gs-shop-body .gs-key-features__card-value {
	font-size: 12px;
	font-weight: 700;
	color: var(--gs-text);
	margin: 0;
	line-height: 1.5;
	display: flex;
	align-items: center;
	gap: 4px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.gs-shop-body .gs-key-features__footer {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-top: 16px;
}
.gs-shop-body .gs-key-features__hr {
	border: none;
	border-top: 1px solid var(--gs-border);
	flex: 1;
	margin: 0;
}
.gs-shop-body .gs-key-features__more-btn {
	display: flex;
	align-items: center;
	gap: 4px;
	background: transparent;
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	padding: 8px 16px;
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-text-dark);
	cursor: pointer;
	white-space: nowrap;
	transition: border-color 0.15s;
	font-family: inherit;
}
.gs-shop-body .gs-key-features__more-btn:hover {
	border-color: var(--gs-primary);
	color: var(--gs-primary);
}
.gs-shop-body .gs-key-features__more-btn svg {
	color: currentColor;
	flex-shrink: 0;
}

@media (max-width: 1024px) {
	.gs-shop-body .gs-key-features__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.gs-shop-body .gs-key-features__grid {
		grid-template-columns: 1fr;
	}
	.gs-shop-body .gs-key-features__title {
		font-size: 13px;
	}
	.gs-shop-body .gs-key-features__card-label {
		font-size: 10px;
	}
	.gs-shop-body .gs-key-features__card-value {
		font-size: 11px;
	}
}



.gs-shop-body .gs-tabs-with-mini {
	display: flex;
	gap: 16px;
	align-items: flex-start;
	margin-bottom: 16px;
}
.gs-shop-body .gs-tabs-section--with-mini {
	flex: 1 1 auto;
	min-width: 0;
	margin-bottom: 0;
	order: 1;
}
.gs-shop-body .gs-mini-buy-box {
	flex: 0 0 333px;
	width: 333px;
	position: sticky;
	top: 100px;
	z-index: 40;
	order: 2;
}
@media (max-width: 1280px) {
	.gs-shop-body .gs-mini-buy-box { flex: 0 0 300px; width: 300px; }
}
.gs-shop-body .gs-mini-buy-box__inner {
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: var(--gs-radius, 16px);
	padding: 16px;
	position: relative;
	overflow: hidden;
	box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 12px rgba(0,0,0,0.03);
	/* ===== Aura (rotating light border) ===== */
	--gs-aura-angle: 0deg;
	--gs-aura-size: 2px;
	--gs-aura-speed: 4s;
	--gs-aura-color: var(--gs-discount, #ef4056);
}
.gs-shop-body .gs-mini-buy-box__inner > * {
	position: relative;
	z-index: 2;
}
/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
	.gs-shop-body .gs-mini-buy-box__inner::before {
		animation: none;
	}
}
/* Header */
.gs-shop-body .gs-mini-buy-box__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom: 12px;
	margin-bottom: 12px;
	border-bottom: 1px solid var(--gs-border-dark);
}
.gs-shop-body .gs-mini-buy-box__badge {
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--gs-danger);
	font-size: 13px;
	font-weight: 700;
}
.gs-shop-body .gs-mini-buy-box__badge svg {
	color: var(--gs-danger);
}
.gs-shop-body .gs-mini-buy-box__timer {
	display: flex;
	align-items: center;
	gap: 2px;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-secondary);
	direction: ltr;
}
.gs-shop-body .gs-mini-buy-box__timer-box {
	min-width: 22px;
	text-align: center;
}
.gs-shop-body .gs-mini-buy-box__timer-sep {
	color: var(--gs-secondary);
}
/* Product info */
.gs-shop-body .gs-mini-buy-box__product {
	display: flex;
	gap: 16px;
	padding-bottom: 12px;
	margin-bottom: 12px;
	border-bottom: 1px solid var(--gs-border-dark);
}
.gs-shop-body .gs-mini-buy-box__image-link {
	flex-shrink: 0;
	width: 80px;
	height: 80px;
	border-radius: 8px;
	overflow: hidden;
	background: var(--gs-bg-card);
}
.gs-shop-body .gs-mini-buy-box__img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.gs-shop-body .gs-mini-buy-box__info {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.gs-shop-body .gs-mini-buy-box__title {
	font-size: 11px;
	font-weight: 600;
	color: var(--gs-text);
	text-decoration: none;
	line-height: 1.5;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin-bottom: 8px;
}
.gs-shop-body .gs-mini-buy-box__title:hover {
	color: var(--gs-secondary);
}
.gs-shop-body .gs-mini-buy-box__color-row {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: auto;
}
.gs-shop-body .gs-mini-buy-box__color-dot {
	width: 14px;
	height: 14px;
	border-radius: 50%;
	border: 1px solid var(--gs-border-dark);
	flex-shrink: 0;
}
.gs-shop-body .gs-mini-buy-box__color-name {
	font-size: 12px;
	color: var(--gs-text-light);
}
/* Info rows (seller, warranty, stock) */
.gs-shop-body .gs-mini-buy-box__row {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 8px;
}
.gs-shop-body .gs-mini-buy-box__seller-avatar {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--gs-secondary);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--gs-text-on-secondary);
	flex-shrink: 0;
}
.gs-shop-body .gs-mini-buy-box__seller-avatar svg {
	width: 14px;
	height: 14px;
}
.gs-shop-body .gs-mini-buy-box__row-icon {
	width: 18px;
	height: 18px;
	color: var(--gs-text);
	flex-shrink: 0;
}
.gs-shop-body .gs-mini-buy-box__row-text {
	font-size: 13px;
	color: var(--gs-text);
}
/* Footer: price + add to cart */
.gs-shop-body .gs-mini-buy-box__footer {
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid var(--gs-border-dark);
}
.gs-shop-body .gs-mini-buy-box__price-row {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	margin-bottom: 4px;
}
.gs-shop-body .gs-mini-buy-box__old-price {
	font-size: 12px;
	color: var(--gs-text-muted);
	text-decoration: line-through;
}
.gs-shop-body .gs-mini-buy-box__old-price .woocommerce-Price-amount {
	font-size: 12px;
	color: var(--gs-text-muted);
}
.gs-shop-body .gs-mini-buy-box__discount {
	background: var(--gs-danger);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	padding: 2px 8px;
	border-radius: 6px;
	line-height: 1.4;
}
.gs-shop-body .gs-mini-buy-box__current-price {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 4px;
	margin-bottom: 12px;
}
.gs-shop-body .gs-mini-buy-box__price-value {
	font-size: 18px;
	font-weight: 800;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-mini-buy-box__price-value .woocommerce-Price-amount {
	font-size: 18px;
	font-weight: 800;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-mini-buy-box__toman {
	width: 14px;
	height: 14px;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-mini-buy-box__cart-btn {
	width: 100%;
	height: 44px;
	background: var(--gs-primary);
	color: #fff;
	border: none;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s;
	font-family: 'Vazirmatn', Tahoma, sans-serif;
}
.gs-shop-body .gs-mini-buy-box__cart-btn:hover { background: var(--gs-primary-hover); }
.gs-shop-body .gs-mini-buy-box__cart-btn:active { transform: scale(0.98); }
.gs-shop-body .gs-mini-buy-box__cart-btn--disabled {
	background: var(--gs-text-muted);
	cursor: not-allowed;
}
/* Mobile: hide mini buy box, tabs full width */
@media (max-width: 1024px) {
	.gs-shop-body .gs-mini-buy-box { display: none; }
	.gs-shop-body .gs-tabs-with-mini { flex-direction: column; align-items: stretch; }
	.gs-shop-body .gs-tabs-section--with-mini { margin-bottom: 16px; width: 100%; }
}

@media (max-width: 640px) {
	.gs-shop-body .gs-tab-trigger {
		padding: 12px 14px;
		font-size: 13px;
		gap: 6px;
	}
	.gs-shop-body .gs-tab-trigger__icon {
		width: 18px;
		height: 18px;
	}
	.gs-shop-body .gs-tab-trigger__badge {
		min-width: 18px;
		height: 18px;
		font-size: 10px;
	}
}

.gs-shop-body .gs-tabs-section {
	background: var(--gs-bg-card) !important;
	border-radius: 8px;
	border: 1px solid var(--gs-border);
	margin-bottom: 16px;
}
.gs-shop-body .gs-tabs-list {
	display: flex;
	justify-content: flex-start;
	border-bottom: 1px solid var(--gs-border);
	overflow-x: auto;
	overflow-y: hidden;
	-ms-overflow-style: none;
	scrollbar-width: none;
	background: var(--gs-bg-card) !important;
	gap: 0;
}
.gs-shop-body .gs-tabs-list::-webkit-scrollbar { display: none; }

.gs-shop-body .gs-tab-trigger {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 20px;
	border: none !important;
	border-bottom: 1px solid transparent !important;
	margin-bottom: -1px;
	background: transparent !important;
	font-size: 14px;
	font-weight: 700;
	color: var(--gs-text-light);
	cursor: pointer;
	transition: color 0.2s, border-color 0.2s, background 0.2s;
	white-space: nowrap;
	position: relative;
	border-radius: 8px 8px 0 0;
}
.gs-shop-body .gs-tab-trigger__icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	opacity: 0.5;
	transition: opacity 0.2s;
}
.gs-shop-body .gs-tab-trigger__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	border-radius: 9999px;
	background: var(--gs-border);
	color: var(--gs-text-secondary);
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
}
.gs-shop-body .gs-tab-trigger:hover {
	color: var(--gs-text);
	background: var(--gs-bg-alt);
}
.gs-shop-body .gs-tab-trigger:hover .gs-tab-trigger__icon { opacity: 0.8; }
.gs-shop-body .gs-tab-trigger--active {
	color: var(--gs-primary);
	border-bottom: 1px solid var(--gs-primary) !important;
	background: var(--gs-bg-card) !important;
	font-weight: 800;
}
.gs-shop-body .gs-tab-trigger--active .gs-tab-trigger__icon { opacity: 1; }
.gs-shop-body .gs-tab-trigger--active .gs-tab-trigger__badge {
	background: var(--gs-primary);
	color: #fff;
}
.gs-shop-body .gs-tabs-content {
	display: none;
	padding: 16px;
}
.gs-shop-body .gs-tabs-content--active { display: block; }


.gs-shop-body .gs-tab-body--description {
	padding: 0;
}

/* Short description — highlighted intro box */
.gs-shop-body .gs-product-short-desc {
	font-size: 12px;
	line-height: 2;
	color: inherit;
	margin-bottom: 18px;
	padding: 12px 18px;
	background: var(--gs-bg-alt);
	border-right: 3px solid var(--gs-discount, var(--gs-primary));
	border-radius: 0 12px 12px 0;
	text-align: justify;
	display: flex;
	align-items: center;
	min-height: 48px;
}
.gs-shop-body .gs-product-short-desc p {
	margin: 0 !important;
	line-height: 2;
}

/* Full description container */
.gs-shop-body .gs-product-full-desc {
	font-size: 13px;
	line-height: 2;
	color: inherit;
	text-align: justify;
}

/* Paragraphs */
.gs-shop-body .gs-product-full-desc p {
	margin: 0 0 14px;
	line-height: 2;
	text-align: justify;
	text-justify: inter-word;
}

/* Headings — styled as section dividers */
.gs-shop-body .gs-product-full-desc h1,
.gs-shop-body .gs-product-full-desc h2,
.gs-shop-body .gs-product-full-desc h3,
.gs-shop-body .gs-product-full-desc h4,
.gs-shop-body .gs-product-full-desc h5,
.gs-shop-body .gs-product-full-desc h6 {
	font-size: 15px;
	font-weight: 700;
	color: var(--gs-text-dark);
	margin: 22px 0 10px;
	line-height: 1.6;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--gs-bg-alt);
	position: relative;
}
.gs-shop-body .gs-product-full-desc h1 {
	font-size: 16px;
	font-weight: 800;
}
.gs-shop-body .gs-product-full-desc h2 {
	font-size: 15px;
	font-weight: 800;
}
.gs-shop-body .gs-product-full-desc h2::before,
.gs-shop-body .gs-product-full-desc h3::before {
	content: "";
	display: inline-block;
	width: 4px;
	height: 18px;
	background: var(--gs-discount, var(--gs-primary));
	border-radius: 2px;
	margin-left: 8px;
	vertical-align: middle;
}
.gs-shop-body .gs-product-full-desc h3 {
	font-size: 15px;
}
.gs-shop-body .gs-product-full-desc h4 {
	font-size: 14px;
	font-weight: 700;
}
.gs-shop-body .gs-product-full-desc h5 {
	font-size: 13px;
	font-weight: 700;
}
.gs-shop-body .gs-product-full-desc h6 {
	font-size: 12px;
	font-weight: 700;
}

/* Lists */
.gs-shop-body .gs-product-full-desc ul,
.gs-shop-body .gs-product-full-desc ol {
	margin: 12px 0 16px;
	padding-right: 24px;
	line-height: 2;
}
.gs-shop-body .gs-product-full-desc li {
	margin-bottom: 6px;
	text-align: justify;
}
.gs-shop-body .gs-product-full-desc ul li {
	list-style: none;
	position: relative;
	padding-right: 16px;
}
.gs-shop-body .gs-product-full-desc ul li::before {
	content: "";
	position: absolute;
	right: 0;
	top: 12px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--gs-discount, var(--gs-primary));
}
.gs-shop-body .gs-product-full-desc ol li {
	padding-right: 4px;
}

/* Images in description */
.gs-shop-body .gs-product-full-desc img {
	max-width: 100%;
	height: auto;
	border-radius: 12px;
	margin: 16px 0;
	display: block;
}

/* Tables in description */
.gs-shop-body .gs-product-full-desc table {
	width: 100%;
	border-collapse: collapse;
	margin: 16px 0;
	font-size: 13px;
}
.gs-shop-body .gs-product-full-desc table th,
.gs-shop-body .gs-product-full-desc table td {
	border: 1px solid var(--gs-bg-alt);
	padding: 10px 14px;
	text-align: right;
}
.gs-shop-body .gs-product-full-desc table th {
	background: var(--gs-bg-alt);
	font-weight: 700;
	color: var(--gs-text-dark);
}

/* Strong/bold */
.gs-shop-body .gs-product-full-desc strong,
.gs-shop-body .gs-product-full-desc b {
	font-weight: 700;
	color: var(--gs-text-dark);
}

/* Links */
.gs-shop-body .gs-product-full-desc a {
	color: var(--gs-secondary, var(--gs-secondary));
	text-decoration: none;
}
.gs-shop-body .gs-product-full-desc a:hover {
	text-decoration: underline;
}

/* Blockquote */
.gs-shop-body .gs-product-full-desc blockquote {
	margin: 16px 0;
	padding: 12px 20px;
	background: var(--gs-bg-alt);
	border-right: 3px solid var(--gs-secondary, var(--gs-secondary));
	border-radius: 0 8px 8px 0;
	color: var(--gs-text);
	font-style: italic;
}

/* Tab section title: 15px/700/var(--gs-text-dark) */
.gs-shop-body .gs-tab-section-title {
	font-size: 15px;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0 0 12px;
}
.gs-shop-body .gs-tab-body {
	font-size: 13px;
	color: var(--gs-text);
	line-height: 1.8;
}
.gs-shop-body .gs-tab-body p { margin: 0 0 12px; }

/* ===== Description tab — responsive typography ===== */
@media (max-width: 1024px) {
	.gs-shop-body .gs-product-short-desc {
		font-size: 13px;
		line-height: 1.9;
	}
	.gs-shop-body .gs-product-full-desc {
		font-size: 13px;
		line-height: 1.9;
	}
	.gs-shop-body .gs-product-full-desc p {
		font-size: 13px;
		line-height: 1.9;
	}
	.gs-shop-body .gs-product-full-desc h1 { font-size: 15px; }
	.gs-shop-body .gs-product-full-desc h2 { font-size: 14px; }
	.gs-shop-body .gs-product-full-desc h3 { font-size: 14px; }
	.gs-shop-body .gs-product-full-desc h4 { font-size: 13px; }
	.gs-shop-body .gs-product-full-desc h5 { font-size: 12px; }
	.gs-shop-body .gs-product-full-desc h6 { font-size: 12px; }
	.gs-shop-body .gs-product-full-desc ul,
	.gs-shop-body .gs-product-full-desc ol {
		line-height: 1.9;
	}
}
.gs-shop-body .gs-empty-state {
	color: var(--gs-text-muted, #8c8c8c);
	text-align: center;
	padding: 40px 20px;
	font-size: 14px;
	background: var(--gs-bg-card, #fafafa);
	border-radius: 12px;
	border: 1px dashed var(--gs-border, #f0f0f1);
	margin-bottom: 16px;
}
.gs-shop-body .gs-link {
	color: var(--gs-secondary);
	text-decoration: none;
}
.gs-shop-body .gs-link:hover { text-decoration: underline; }


.gs-shop-body .gs-spec-group { margin-bottom: 24px; }
.gs-shop-body .gs-spec-group:last-child { margin-bottom: 0; }
.gs-shop-body .gs-spec-group__title {
	font-size: 15px;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0 0 12px;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--gs-border);
}
.gs-shop-body .gs-spec-table {
	width: 100%;
	border-collapse: collapse;
}
.gs-shop-body .gs-spec-row { transition: background 0.2s; }
.gs-shop-body .gs-spec-row--hidden { display: none; }
.gs-shop-body .gs-spec-cell {
	padding: 12px 16px;
	font-size: 13px;
	vertical-align: middle;
	border-bottom: 1px solid var(--gs-border);
}
.gs-shop-body .gs-spec-cell--label {
	width: 33%;
	font-weight: 700;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-spec-cell--value { color: var(--gs-text-light); }
.gs-shop-body .gs-spec-row--alt .gs-spec-cell { background: var(--gs-bg-alt); }
.gs-shop-body .gs-spec-more {
	display: block;
	width: 100%;
	padding: 12px;
	border: none;
	border-top: 1px solid var(--gs-border);
	background: transparent;
	color: var(--gs-secondary);
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	text-align: center;
	font-family: inherit;
}
.gs-shop-body .gs-spec-more:hover { background: var(--gs-border); }


.gs-shop-body .gs-review-sortbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 20px;
	padding: 12px 16px;
	border-bottom: 1px solid var(--gs-border);
	border-radius: 8px;
}
.gs-shop-body .gs-review-sort {
	display: flex;
	align-items: center;
	gap: 8px;
}
.gs-shop-body .gs-review-sort__label {
	font-size: 13px;
	color: var(--gs-text-light);
}
.gs-shop-body .gs-review-sort__select {
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	padding: 6px 12px;
	font-size: 13px;
	color: var(--gs-text);
	background: var(--gs-bg-card);
	font-family: inherit;
	outline: none;
}
/* ===== AI Review Summary (Digikala-style) ===== */
.gs-shop-body .gs-ai-summary {
	padding: 16px 0;
	margin-bottom: 5px;
}
.gs-shop-body .gs-ai-summary__header {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 0;
}
.gs-shop-body .gs-ai-summary__icon {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: #fff;
	position: relative;
	overflow: hidden;
	background: #000;
	box-shadow: 0 0 12px rgba(0, 0, 0, 0.15);
}
/* Siri-like flowing orb — multi-color conic gradient that rotates */
.gs-shop-body .gs-ai-summary__icon::before {
	content: "";
	position: absolute;
	inset: -20%;
	border-radius: 50%;
	background: conic-gradient(
		from 0deg,
		var(--gs-primary, #ef4056),
		var(--gs-secondary, #19bfd3),
		var(--gs-accent, #f08000),
		var(--gs-blue, #1672dd),
		var(--gs-primary, #ef4056)
	);
	filter: blur(8px);
	animation: gs-ai-orb-spin 4s linear infinite;
}
/* Inner dark core for contrast with white robot icon */
.gs-shop-body .gs-ai-summary__icon::after {
	content: "";
	position: absolute;
	inset: 3px;
	border-radius: 50%;
	background: radial-gradient(circle at 35% 35%, #2a2a3e, #0a0a14);
	animation: gs-ai-orb-breathe 3s ease-in-out infinite;
}
.gs-shop-body .gs-ai-summary__icon svg {
	position: relative;
	z-index: 2;
	filter: drop-shadow(0 0 4px rgba(255, 255, 255, 0.4));
	animation: gs-ai-orb-float 3s ease-in-out infinite;
}
/* Orb spin: rotating conic gradient colors */
@keyframes gs-ai-orb-spin {
	from { transform: rotate(0deg); }
	to { transform: rotate(360deg); }
}
/* Breathing core: subtle scale pulse */
@keyframes gs-ai-orb-breathe {
	0%, 100% { transform: scale(1); opacity: 0.95; }
	50% { transform: scale(0.92); opacity: 1; }
}
/* Floating robot icon: gentle up-down */
@keyframes gs-ai-orb-float {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-2px); }
}
.gs-shop-body .gs-ai-summary__headtext {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.gs-shop-body .gs-ai-summary__title {
	font-size: 16px;
	font-weight: 800;
	color: var(--gs-discount, #1a1a1a);
	margin: 0;
	line-height: 1.3;
}
.gs-shop-body .gs-ai-summary__subtitle {
	font-size: 11px;
	font-weight: 600;
	color: var(--gs-text-muted, #8c8c8c);
}
.gs-shop-body .gs-ai-summary__body {
	min-height: 40px;
}
/* Bubble with tail */
.gs-shop-body .gs-ai-summary__bubble {
	position: relative;
	margin-top: 8px;
}
.gs-shop-body .gs-ai-summary__bubble-tail {
	position: absolute;
	top: -8px;
	right: 20px;
	width: 22px;
	height: 16px;
	background: var(--gs-bg-alt, #f7f7f8);
	clip-path: polygon(0 100%, 50% 0, 100% 100%);
	z-index: 1;
}
.gs-shop-body .gs-ai-summary__bubble-body {
	background: var(--gs-bg-alt, #f7f7f8);
	border-radius: 12px;
	padding: 16px;
	position: relative;
}
/* Summary text with ellipsis */
.gs-shop-body .gs-ai-summary__text-wrap {
	position: relative;
}
.gs-shop-body .gs-ai-summary__text {
	font-size: 14px;
	line-height: 2;
	color: var(--gs-text, #1a1a1a);
	margin: 0;
	white-space: pre-wrap;
}
.gs-shop-body .gs-ai-summary__text--collapsed {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.gs-shop-body .gs-ai-summary__text--expanded {
	display: block;
}
.gs-shop-body .gs-ai-summary__more {
	display: inline-flex;
	align-items: center;
	cursor: pointer;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
	text-decoration: underline;
	text-underline-offset: 4px;
	margin-top: 8px;
	user-select: none;
}
.gs-shop-body .gs-ai-summary__more:hover {
	color: var(--gs-primary, #ef4056);
}
/* Pros/cons tags */
.gs-shop-body .gs-ai-summary__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 12px;
}
.gs-shop-body .gs-ai-summary__tag {
	display: flex;
	align-items: center;
	gap: 4px;
	padding: 4px 8px;
	border: 1px solid var(--gs-border, #e0e0e0);
	border-radius: 8px;
	font-size: 12px;
	font-weight: 600;
	white-space: nowrap;
}
.gs-shop-body .gs-ai-summary__tag--pro {
	color: var(--gs-green, #00a049);
}
.gs-shop-body .gs-ai-summary__tag--con {
	color: var(--gs-discount, #d32f2f);
}
.gs-shop-body .gs-ai-summary__tag svg {
	flex-shrink: 0;
}
/* Disclaimer */
.gs-shop-body .gs-ai-summary__disclaimer {
	font-size: 11px;
	color: var(--gs-text-muted, #8c8c8c);
	margin-top: 10px;
}
/* Feedback row */
.gs-shop-body .gs-ai-summary__feedback {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 12px;
	padding-bottom: 16px;
}
.gs-shop-body .gs-ai-summary__feedback-q {
	font-size: 12px;
	font-weight: 600;
	color: var(--gs-text, #1a1a1a);
}
.gs-shop-body .gs-ai-summary__feedback-btns {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-right: auto;
}
.gs-shop-body .gs-ai-summary__vote {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: none;
	background: var(--gs-bg-alt, #f0f0f1);
	color: var(--gs-text-muted, #8c8c8c);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: all 0.2s;
}
.gs-shop-body .gs-ai-summary__vote:hover {
	background: var(--gs-primary-light, #fef0f1);
	color: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-ai-summary__vote--active {
	background: var(--gs-primary-light, #fef0f1);
	color: var(--gs-primary, #ef4056);
}
/* Divider */
.gs-shop-body .gs-ai-summary__divider {
	border-bottom: 1px solid var(--gs-border, #f0f0f1);
	margin-bottom: 16px;
}
/* Loading skeleton */
.gs-shop-body .gs-ai-summary__loading {
	padding: 4px 0;
}
.gs-shop-body .gs-ai-summary__loading .gs-msg-skeleton {
	height: 12px;
	margin-bottom: 8px;
	border-radius: 4px;
}
/* AI Summary — demo mode (no API key) */
.gs-shop-body .gs-ai-summary__text--demo {
	display: block;
	color: var(--gs-text-dark, #8c8c8c);
	padding: 8px 12px;
	background: rgba(0, 0, 0, 0.03);
	border-radius: 8px;
	border: 1px dashed var(--gs-border, #e0e0e0);
}
/* Mobile */
@media (max-width: 768px) {
	.gs-shop-body .gs-ai-summary {
		padding: 8px 0;
		margin-bottom: 4px;
	}
	.gs-shop-body .gs-ai-summary__header {
		gap: 6px;
		padding: 4px 0;
	}
	.gs-shop-body .gs-ai-summary__icon {
		width: 36px;
		height: 36px;
	}
	.gs-shop-body .gs-ai-summary__icon svg {
		width: 16px;
		height: 16px;
	}
	.gs-shop-body .gs-ai-summary__title {
		font-size: 13px;
	}
	.gs-shop-body .gs-ai-summary__subtitle {
		font-size: 10px;
	}
	.gs-shop-body .gs-ai-summary__text {
		font-size: 12px;
		line-height: 1.7;
	}
	.gs-shop-body .gs-ai-summary__text--demo {
		font-size: 11px;
        padding: 6px 10px;
        line-height: 2.7;
	}
	.gs-shop-body .gs-ai-summary__bubble-body {
		padding: 10px;
	}
	.gs-shop-body .gs-ai-summary__bubble-tail {
		width: 16px;
		height: 12px;
		right: 16px;
		top: -6px;
	}
	.gs-shop-body .gs-ai-summary__more {
		font-size: 11px;
		margin-top: 6px;
	}
	.gs-shop-body .gs-ai-summary__tags {
		gap: 4px;
		margin-top: 8px;
	}
	.gs-shop-body .gs-ai-summary__tag {
		font-size: 11px;
		padding: 3px 6px;
	}
	.gs-shop-body .gs-ai-summary__disclaimer {
		font-size: 10px;
		margin-top: 8px;
	}
	.gs-shop-body .gs-ai-summary__feedback {
		flex-wrap: wrap;
		gap: 8px;
		margin-top: 8px;
		padding-bottom: 8px;
	}
	.gs-shop-body .gs-ai-summary__feedback-q {
		font-size: 12px;
	}
	.gs-shop-body .gs-ai-summary__vote {
		width: 30px;
		height: 30px;
	}
	.gs-shop-body .gs-ai-summary__divider {
		margin-bottom: 10px;
	}
}

.gs-shop-body .gs-review-count {
	font-size: 13px;
	font-weight: 800;
	color: var(--gs-text-dark, #1a1a1a);
	margin-bottom: 16px;
	padding-bottom: 12px;
	border-bottom: 2px solid var(--gs-border, #f0f0f1);
}
.gs-shop-body .gs-review {
	display: flex;
	gap: 16px;
	padding: 20px 0;
	border-bottom: 1px solid var(--gs-border);
}
.gs-shop-body .gs-review:last-child { border-bottom: none; }
.gs-shop-body .gs-review__avatar {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: var(--gs-primary-light, #fef0f1);
	color: var(--gs-primary, #ef4056);
	font-weight: 800;
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.gs-shop-body .gs-review__body { flex: 1; }
.gs-shop-body .gs-review__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 8px;
	flex-wrap: wrap;
	gap: 8px;
}
.gs-shop-body .gs-review__user {
	display: flex;
	align-items: center;
	gap: 8px;
}
.gs-shop-body .gs-review__name {
	font-size: 13px;
	font-weight: 800;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-review__buyer {
	font-size: 10px;
	color: #fff;
	background: var(--gs-secondary);
	padding: 2px 8px;
	border-radius: 16px;
	font-weight: 600;
}
.gs-shop-body .gs-review__date {
	font-size: 11px;
	color: var(--gs-text-light);
}
.gs-shop-body .gs-review__rating { margin-bottom: 6px; }
.gs-shop-body .gs-review__text {
	font-size: 12px;
	color: var(--gs-text);
	line-height: 1.7;
	margin: 0;
}
.gs-shop-body .gs-review-form {
	margin-top: 28px;
	padding: 24px;
	background: var(--gs-bg, #fff);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 16px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}
.gs-shop-body .gs-review-form--guest {
	text-align: center;
	padding: 32px 24px;
}
.gs-shop-body .gs-review-form__header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 4px;
}
.gs-shop-body .gs-review-form__icon {
	width: 40px;
	height: 40px;
	border-radius: 12px;
	background: var(--gs-primary-light, #fef0f1);
	color: var(--gs-primary, #ef4056);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.gs-shop-body .gs-review-form__icon svg {
	width: 22px;
	height: 22px;
	color: #fff;
}
.gs-shop-body .gs-review-form__title {
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-text-dark, #1a1a1a);
	margin: 0;
}
.gs-shop-body .gs-review-form__subtitle {
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
	margin: 0 0 20px;
}
.gs-shop-body .gs-review-form__field {
	margin-bottom: 18px;
}
.gs-shop-body .gs-review-form__label {
	display: block;
	font-size: 12px;
	font-weight: 700;
	color: var(--gs-text-dark, #1a1a1a);
	margin-bottom: 8px;
}
.gs-shop-body .gs-review-form__input,
.gs-shop-body .gs-review-form__textarea {
	width: 100%;
	padding: 10px 12px;
	border: 1.5px solid var(--gs-border, #f0f0f1);
	border-radius: 10px;
	font-size: 13px;
	color: var(--gs-text, #1a1a1a);
	background: var(--gs-bg, #fff);
	transition: border-color 0.2s, box-shadow 0.2s;
	font-family: inherit;
	resize: vertical;
	box-sizing: border-box;
}
.gs-shop-body .gs-review-form__input:focus,
.gs-shop-body .gs-review-form__textarea:focus {
	outline: none;
	border-color: var(--gs-primary, #ef4056);
	box-shadow: 0 0 0 3px var(--gs-primary-light, #fef0f1);
}
.gs-shop-body .gs-review-form__input::placeholder,
.gs-shop-body .gs-review-form__textarea::placeholder {
	color: var(--gs-text-muted, #8c8c8c);
}
.gs-shop-body .gs-review-form__counter {
	display: block;
	text-align: left;
	font-size: 11px;
	color: var(--gs-text-muted, #8c8c8c);
	margin-top: 6px;
	transition: color 0.2s;
}
.gs-shop-body .gs-review-form__counter--near-limit {
	color: var(--gs-accent, #f08000);
	font-weight: 600;
}

/* ===== Star Picker ===== */
.gs-shop-body .gs-star-picker {
	display: flex;
	align-items: center;
	gap: 4px;
}
.gs-shop-body .gs-star-picker__star {
	background: none;
	border: none;
	cursor: pointer;
	padding: 2px;
	color: var(--gs-border, #e0e0e0);
	transition: color 0.15s, transform 0.15s;
	line-height: 0;
}
.gs-shop-body .gs-star-picker__star svg {
	width: 28px;
	height: 28px;
}
.gs-shop-body .gs-star-picker__star:hover {
	transform: scale(1.15);
}
.gs-shop-body .gs-star-picker__star--active {
	color: var(--gs-accent, #f08000);
}
.gs-shop-body .gs-star-picker__label {
	font-size: 14px;
	font-weight: 700;
	color: var(--gs-text-dark, #1a1a1a);
	margin-right: 10px;
	min-width: 60px;
}

/* ===== Anonymous toggle (custom switch) ===== */
.gs-shop-body .gs-review-form__anon {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	margin-bottom: 18px;
	user-select: none;
}
.gs-shop-body .gs-review-form__anon input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}
.gs-shop-body .gs-review-form__anon-toggle {
	width: 42px;
	height: 24px;
	border-radius: 12px;
	background: var(--gs-border, #e0e0e0);
	position: relative;
	transition: background 0.2s;
	flex-shrink: 0;
}
.gs-shop-body .gs-review-form__anon-toggle::after {
	content: '';
	position: absolute;
	top: 3px;
	right: 3px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 3px rgba(0,0,0,0.2);
	transition: transform 0.2s;
}
.gs-shop-body .gs-review-form__anon input:checked + .gs-review-form__anon-toggle {
	background: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-review-form__anon input:checked + .gs-review-form__anon-toggle::after {
	transform: translateX(-18px);
}
.gs-shop-body .gs-review-form__anon-text {
	font-size: 13px;
	margin-left: 10px;
	color: var(--gs-text-muted, #8c8c8c);
}

/* ===== Submit button ===== */
.gs-shop-body .gs-review-form__submit {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 18px;
	background: var(--gs-primary, #ef4056);
	color: #fff;
	border: none;
	border-radius: 8px;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	transition: background 0.2s, transform 0.1s;
	font-family: inherit;
}
.gs-shop-body .gs-review-form__submit:hover {
	background: var(--gs-primary-dark, #d63548);
}
.gs-shop-body .gs-review-form__submit:active {
	transform: scale(0.97);
}
.gs-shop-body .gs-review-form__submit:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}
.gs-shop-body .gs-review-form__submit svg {
	width: 15px;
	height: 15px;
}
.gs-shop-body .gs-review-form__login-btn {
	display: inline-block;
	padding: 12px 32px;
	background: var(--gs-primary, #ef4056);
	color: #fff;
	border-radius: 10px;
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
	transition: background 0.2s;
	margin-top: 8px;
}
.gs-shop-body .gs-review-form__login-btn:hover {
	background: var(--gs-primary-dark, #d63548);
}
.gs-shop-body .gs-review-form__msg {
	display: block;
	margin-top: 12px;
	font-size: 13px;
	min-height: 18px;
	font-weight: 600;
}

/* ===== Review card (modernized) ===== */
.gs-shop-body .gs-review {
	display: flex;
	gap: 14px;
	padding: 20px;
	margin-bottom: 12px;
	background: var(--gs-bg, #fff);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 14px;
	transition: box-shadow 0.2s;
}
.gs-shop-body .gs-review:hover {
	box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}
.gs-shop-body .gs-review:last-child { margin-bottom: 0; }
.gs-shop-body .gs-review__avatar {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: var(--gs-primary-light, #fef0f1);
	color: var(--gs-primary, #ef4056);
	font-weight: 800;
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	border: 2px solid var(--gs-bg, #fff);
	box-shadow: 0 0 0 1px var(--gs-border, #f0f0f1);
}
.gs-shop-body .gs-review__body { flex: 1; min-width: 0; }
.gs-shop-body .gs-review__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 6px;
	flex-wrap: wrap;
	gap: 6px;
}
.gs-shop-body .gs-review__user {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}
.gs-shop-body .gs-review__name {
	font-size: 13px;
	font-weight: 800;
	color: var(--gs-text-dark, #1a1a1a);
}
.gs-shop-body .gs-review__buyer {
	font-size: 10px;
	color: #fff;
	background: linear-gradient(135deg, var(--gs-secondary, #19bfd3), var(--gs-blue, #1672dd));
	padding: 3px 10px;
	border-radius: 20px;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	gap: 4px;
}
.gs-shop-body .gs-review__buyer::before {
	content: '✓';
	font-size: 9px;
}
.gs-shop-body .gs-review__anon {
	font-size: 11px;
	color: var(--gs-text-muted, #8c8c8c);
	font-weight: 600;
}
.gs-shop-body .gs-review__date {
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
}
.gs-shop-body .gs-review__title {
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text-dark, #1a1a1a);
	margin: 8px 0 4px;
}
.gs-shop-body .gs-review__text {
	font-size: 13px;
	color: var(--gs-text, #1a1a1a);
	line-height: 1.8;
	margin: 0;
}
.gs-shop-body .gs-review__votes {
	display: flex;
	gap: 8px;
	margin-top: 12px;
}
.gs-shop-body .gs-review__vote {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: var(--gs-bg-card, #fafafa);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 8px;
	padding: 6px 12px;
	cursor: pointer;
	font-size: 13px;
	color: var(--gs-text-muted, #8c8c8c);
	transition: all 0.15s;
	font-family: inherit;
}
.gs-shop-body .gs-review__vote svg {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
}
/* Like hover — green */
.gs-shop-body .gs-review__vote[data-vote="like"]:hover:not(:disabled) {
	background: var(--gs-primary-light, #fef0f1);
	border-color: var(--gs-green, #00a049);
	color: var(--gs-green, #00a049);
}
/* Dislike hover — red/gray */
.gs-shop-body .gs-review__vote[data-vote="dislike"]:hover:not(:disabled) {
	background: var(--gs-bg-hover, #f7f7f8);
	border-color: var(--gs-text-muted, #8c8c8c);
	color: var(--gs-text, #1a1a1a);
}
.gs-shop-body .gs-review__vote:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}
/* Like active — green */
.gs-shop-body .gs-review__vote[data-vote="like"].gs-review__vote--active {
	background: var(--gs-green, #00a049);
	border-color: var(--gs-green, #00a049);
	color: #fff;
	font-weight: 700;
}
/* Dislike active — dark gray/red */
.gs-shop-body .gs-review__vote[data-vote="dislike"].gs-review__vote--active {
	background: var(--gs-text, #1a1a1a);
	border-color: var(--gs-text, #1a1a1a);
	color: #fff;
	font-weight: 700;
}
.gs-shop-body .gs-review__actions {
	display: flex;
	gap: 6px;
	margin-top: 10px;
}
.gs-shop-body .gs-review__edit-btn,
.gs-shop-body .gs-review__delete-btn {
	background: none;
	border: 1px solid transparent;
	border-radius: 6px;
	cursor: pointer;
	font-size: 12px;
	padding: 4px 10px;
	font-family: inherit;
	transition: all 0.15s;
}
.gs-shop-body .gs-review__edit-btn {
	color: var(--gs-blue, #1672dd);
}
.gs-shop-body .gs-review__edit-btn:hover {
	background: rgba(22,114,221,0.08);
}
.gs-shop-body .gs-review__delete-btn {
	color: var(--gs-discount, #d32f2f);
}
.gs-shop-body .gs-review__delete-btn:hover {
	background: rgba(211,47,47,0.08);
}
.gs-shop-body .gs-review-load-more {
	display: block;
	margin: 20px auto 0;
	padding: 10px 28px;
	background: var(--gs-bg, #fff);
	border: 1.5px solid var(--gs-border, #f0f0f1);
	border-radius: 10px;
	cursor: pointer;
	color: var(--gs-text, #1a1a1a);
	font-size: 13px;
	font-weight: 600;
	transition: all 0.2s;
	font-family: inherit;
}
.gs-shop-body .gs-review-load-more:hover {
	border-color: var(--gs-primary, #ef4056);
	color: var(--gs-primary, #ef4056);
}

/* ===== Question form (modernized) ===== */
.gs-shop-body .gs-question-form {
	padding: 24px;
	background: var(--gs-bg, #fff);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 16px;
	margin-bottom: 20px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}
.gs-shop-body .gs-question-form--guest {
	text-align: center;
	padding: 32px 24px;
}
.gs-shop-body .gs-question-form__header {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 18px;
}
.gs-shop-body .gs-question-form__icon {
	width: 40px;
	height: 40px;
	border-radius: 12px;
	background: rgba(25,191,211,0.1);
	color: var(--gs-secondary, #19bfd3);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.gs-shop-body .gs-question-form__icon svg {
	width: 22px;
	height: 22px;
}
.gs-shop-body .gs-question-form__title {
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-text-dark, #1a1a1a);
	margin: 0;
}
.gs-shop-body .gs-question-form__subtitle {
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
	margin: 2px 0 0;
}
.gs-shop-body .gs-question-form__field {
	margin-bottom: 16px;
	position: relative;
}
.gs-shop-body .gs-question-form__textarea {
	width: 100%;
	padding: 10px 12px;
	border: 1.5px solid var(--gs-border, #f0f0f1);
	border-radius: 10px;
	font-size: 13px;
	color: var(--gs-text, #1a1a1a);
	background: var(--gs-bg, #fff);
	transition: border-color 0.2s, box-shadow 0.2s;
	font-family: inherit;
	resize: vertical;
	box-sizing: border-box;
}
.gs-shop-body .gs-question-form__textarea:focus {
	outline: none;
	border-color: var(--gs-primary, #ef4056);
	box-shadow: 0 0 0 3px var(--gs-primary-light, #fef0f1);
}
.gs-shop-body .gs-question-form__textarea::placeholder {
	color: var(--gs-text-muted, #8c8c8c);
}
.gs-shop-body .gs-question-form__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
}
.gs-shop-body .gs-review-form__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
}
.gs-shop-body .gs-question-form__submit {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 18px;
	background: var(--gs-primary, #ef4056);
	color: #fff;
	border: none;
	border-radius: 8px;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	transition: background 0.2s, transform 0.1s;
	font-family: inherit;
}
.gs-shop-body .gs-question-form__submit:hover {
	background: var(--gs-primary-dark, #d63548);
}
.gs-shop-body .gs-question-form__submit:active {
	transform: scale(0.97);
}
.gs-shop-body .gs-question-form__submit:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}
.gs-shop-body .gs-question-form__submit svg {
	width: 15px;
	height: 15px;
}
.gs-shop-body .gs-question-form__msg {
	display: block;
	margin-top: 12px;
	font-size: 13px;
	min-height: 18px;
	font-weight: 600;
}
.gs-shop-body .gs-question-list { margin-top: 20px; }

/* ===== Question items (modernized) ===== */
.gs-shop-body .gs-question-item {
	padding: 18px 20px;
	margin-bottom: 12px;
	background: var(--gs-bg, #fff);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 14px;
	transition: box-shadow 0.2s;
}
.gs-shop-body .gs-question-item:hover {
	box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}
.gs-shop-body .gs-question-item:last-child {
	margin-bottom: 0;
}
.gs-shop-body .gs-question-item__q {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}
.gs-shop-body .gs-question-item__icon {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	border-radius: 8px;
	background: var(--gs-primary-light, #fef0f1);
	color: var(--gs-primary, #ef4056);
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	font-size: 13px;
}
.gs-shop-body .gs-question-item__text {
	font-size: 13px;
	color: var(--gs-text-dark, #1a1a1a);
	font-weight: 700;
	line-height: 1.6;
}
.gs-shop-body .gs-question-item__answers {
	margin: 12px 0 8px 38px;
	padding: 14px 16px;
	background: linear-gradient(135deg, rgba(0,160,73,0.04), rgba(0,160,73,0.08));
	border-radius: 12px;
	border-right: 3px solid var(--gs-green, #00a049);
}
.gs-shop-body .gs-question-item__a {
	display: flex;
	gap: 8px;
	font-size: 13px;
	color: var(--gs-text, #1a1a1a);
	line-height: 1.7;
}
.gs-shop-body .gs-question-item__a-icon {
	color: var(--gs-green, #00a049);
	font-weight: 700;
	flex-shrink: 0;
	font-size: 13px;
}
.gs-shop-body .gs-question-item__a-text {
	flex: 1;
}
.gs-shop-body .gs-question-item__meta {
	display: flex;
	gap: 12px;
	margin-top: 10px;
	margin-right: 38px;
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
}

/* ===== Responsive — Reviews & Questions ===== */

/* ---- Tablet (≤ 1024px) ---- */
@media (max-width: 1024px) {
	/* AI summary */
	.gs-shop-body .gs-ai-summary__title { font-size: 15px; }
	.gs-shop-body .gs-ai-summary__text { font-size: 13px; line-height: 1.9; }
	.gs-shop-body .gs-ai-summary__bubble-body { padding: 14px; }
	/* Review form */
	.gs-shop-body .gs-review-form,
	.gs-shop-body .gs-question-form { padding: 20px; }
	.gs-shop-body .gs-review-form__title,
	.gs-shop-body .gs-question-form__title { font-size: 13.5px; }
	/* Review card */
	.gs-shop-body .gs-review { padding: 18px 16px; }
	.gs-shop-body .gs-review__text { font-size: 12.5px; }
	/* Question item */
	.gs-shop-body .gs-question-item { padding: 16px 18px; }
	.gs-shop-body .gs-question-item__text { font-size: 12.5px; }
	.gs-shop-body .gs-question-item__a { font-size: 12.5px; }
}

/* ---- Mobile (≤ 768px) ---- */
@media (max-width: 768px) {
	/* Sortbar */
	.gs-shop-body .gs-review-sortbar {
		flex-wrap: wrap;
		gap: 8px;
		padding: 10px 12px;
	}
	.gs-shop-body .gs-review-sort__label { font-size: 12px; }
	.gs-shop-body .gs-review-sort__select {
		padding: 5px 10px;
		font-size: 12px;
	}
	/* AI summary */
	.gs-shop-body .gs-ai-summary { padding: 8px 0; margin-bottom: 4px; }
	.gs-shop-body .gs-ai-summary__header { gap: 6px; padding: 4px 0; }
	.gs-shop-body .gs-ai-summary__icon { width: 36px; height: 36px; }
	.gs-shop-body .gs-ai-summary__icon svg { width: 16px; height: 16px; }
	.gs-shop-body .gs-ai-summary__title { font-size: 13px; }
	.gs-shop-body .gs-ai-summary__subtitle { font-size: 10px; }
	.gs-shop-body .gs-ai-summary__text { font-size: 12px; line-height: 1.7; }
	.gs-shop-body .gs-ai-summary__text--demo { font-size: 11px; padding: 6px 10px; line-height: 2.7; }
	.gs-shop-body .gs-ai-summary__bubble-body { padding: 10px; }
	.gs-shop-body .gs-ai-summary__bubble-tail { width: 16px; height: 12px; right: 16px; top: -6px; }
	.gs-shop-body .gs-ai-summary__more { font-size: 11px; margin-top: 6px; }
	.gs-shop-body .gs-ai-summary__tags { gap: 4px; margin-top: 8px; }
	.gs-shop-body .gs-ai-summary__tag { font-size: 11px; padding: 3px 6px; }
	.gs-shop-body .gs-ai-summary__disclaimer { font-size: 10px; margin-top: 8px; }
	.gs-shop-body .gs-ai-summary__feedback { flex-wrap: wrap; gap: 8px; margin-top: 8px; padding-bottom: 8px; }
	.gs-shop-body .gs-ai-summary__feedback-q { font-size: 12px; }
	.gs-shop-body .gs-ai-summary__vote { width: 30px; height: 30px; }
	.gs-shop-body .gs-ai-summary__divider { margin-bottom: 10px; }
	/* Empty state */
	.gs-shop-body .gs-empty-state { font-size: 12px; padding: 20px 12px; }
	/* Review count */
	.gs-shop-body .gs-review-count { font-size: 12px; margin-bottom: 12px; padding-bottom: 10px; }
	/* Review form */
	.gs-shop-body .gs-review-form,
	.gs-shop-body .gs-question-form { padding: 18px 16px; }
	.gs-shop-body .gs-review-form--guest,
	.gs-shop-body .gs-question-form--guest { padding: 24px 16px; }
	.gs-shop-body .gs-review-form__header { gap: 10px; margin-bottom: 4px; }
	.gs-shop-body .gs-review-form__icon { width: 36px; height: 36px; border-radius: 10px; }
	.gs-shop-body .gs-review-form__icon svg { width: 20px; height: 20px; }
	.gs-shop-body .gs-review-form__title,
	.gs-shop-body .gs-question-form__title { font-size: 13px; }
	.gs-shop-body .gs-review-form__subtitle,
	.gs-shop-body .gs-question-form__subtitle { font-size: 11px; margin-bottom: 16px; }
	.gs-shop-body .gs-review-form__field { margin-bottom: 14px; }
	.gs-shop-body .gs-review-form__label { font-size: 11px; margin-bottom: 6px; }
	.gs-shop-body .gs-review-form__input,
	.gs-shop-body .gs-review-form__textarea,
	.gs-shop-body .gs-question-form__textarea {
		padding: 9px 11px;
		font-size: 12px;
		border-radius: 9px;
	}
	.gs-shop-body .gs-review-form__counter { font-size: 10px; margin-top: 5px; }
	/* Star picker */
	.gs-shop-body .gs-star-picker { gap: 3px; }
	.gs-shop-body .gs-star-picker__star svg { width: 24px; height: 24px; }
	.gs-shop-body .gs-star-picker__label { font-size: 12px; margin-right: 6px; min-width: 50px; }
	/* Anonymous toggle */
	.gs-shop-body .gs-review-form__anon { gap: 8px; margin-bottom: 14px; }
	.gs-shop-body .gs-review-form__anon-toggle { width: 38px; height: 22px; }
	.gs-shop-body .gs-review-form__anon-toggle::after { width: 16px; height: 16px; top: 3px; right: 3px; }
	.gs-shop-body .gs-review-form__anon input:checked + .gs-review-form__anon-toggle::after { transform: translateX(-16px); }
	.gs-shop-body .gs-review-form__anon-text { font-size: 12px; margin-left: 6px; }
	/* Submit buttons */
	.gs-shop-body .gs-review-form__submit,
	.gs-shop-body .gs-question-form__submit {
		padding: 8px 16px;
		font-size: 12px;
	}
	.gs-shop-body .gs-review-form__submit svg,
	.gs-shop-body .gs-question-form__submit svg { width: 14px; height: 14px; }
	.gs-shop-body .gs-review-form__login-btn { padding: 10px 28px; font-size: 14px; }
	.gs-shop-body .gs-review-form__msg,
	.gs-shop-body .gs-question-form__msg { font-size: 12px; margin-top: 10px; }
	/* Form footers — stacked */
	.gs-shop-body .gs-review-form__footer,
	.gs-shop-body .gs-question-form__footer {
		flex-direction: column;
		align-items: stretch;
		gap: 10px;
	}
	.gs-shop-body .gs-review-form__submit,
	.gs-shop-body .gs-question-form__submit { justify-content: center; }
	/* Question form header */
	.gs-shop-body .gs-question-form__header { gap: 10px; margin-bottom: 14px; }
	.gs-shop-body .gs-question-form__icon { width: 36px; height: 36px; border-radius: 10px; }
	.gs-shop-body .gs-question-form__icon svg { width: 20px; height: 20px; }
	/* Review card */
	.gs-shop-body .gs-review { padding: 14px 12px; gap: 10px; }
	.gs-shop-body .gs-review__avatar { width: 36px; height: 36px; font-size: 13px; }
	.gs-shop-body .gs-review__header {
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
		margin-bottom: 4px;
	}
	.gs-shop-body .gs-review__user { gap: 6px; }
	.gs-shop-body .gs-review__name { font-size: 12px; }
	.gs-shop-body .gs-review__buyer { font-size: 9px; padding: 2px 8px; }
	.gs-shop-body .gs-review__anon { font-size: 10px; }
	.gs-shop-body .gs-review__date { font-size: 10px; }
	.gs-shop-body .gs-review__title { font-size: 12px; margin: 6px 0 3px; }
	.gs-shop-body .gs-review__text { font-size: 12px; line-height: 1.7; }
	.gs-shop-body .gs-review__rating { margin-bottom: 4px; }
	.gs-shop-body .gs-review__votes { gap: 6px; margin-top: 10px; }
	.gs-shop-body .gs-review__vote {
		padding: 5px 10px;
		font-size: 12px;
		gap: 4px;
	}
	.gs-shop-body .gs-review__vote svg { width: 14px; height: 14px; }
	.gs-shop-body .gs-review__actions { gap: 5px; margin-top: 8px; }
	.gs-shop-body .gs-review__edit-btn,
	.gs-shop-body .gs-review__delete-btn { font-size: 11px; padding: 3px 8px; }
	/* Load more */
	.gs-shop-body .gs-review-load-more {
		margin-top: 16px;
		padding: 9px 24px;
		font-size: 12px;
	}
	/* Question list */
	.gs-shop-body .gs-question-list { margin-top: 16px; }
	.gs-shop-body .gs-question-item { padding: 14px 14px; }
	.gs-shop-body .gs-question-item__q { gap: 8px; }
	.gs-shop-body .gs-question-item__icon { width: 24px; height: 24px; font-size: 12px; border-radius: 7px; }
	.gs-shop-body .gs-question-item__text { font-size: 12px; line-height: 1.55; }
	.gs-shop-body .gs-question-item__answers {
		margin: 10px 0 6px 0;
		padding: 12px 14px;
	}
	.gs-shop-body .gs-question-item__a { font-size: 12px; gap: 6px; line-height: 1.65; }
	.gs-shop-body .gs-question-item__a-icon { font-size: 12px; }
	.gs-shop-body .gs-question-item__meta {
		margin-top: 8px;
		margin-right: 0;
		gap: 10px;
		font-size: 11px;
	}
}

/* ---- Small mobile (≤ 640px) ---- */
@media (max-width: 640px) {
	/* AI summary */
	.gs-shop-body .gs-ai-summary__title { font-size: 12px; }
	.gs-shop-body .gs-ai-summary__subtitle { font-size: 9px; }
	.gs-shop-body .gs-ai-summary__text { font-size: 11.5px; line-height: 1.65; }
	.gs-shop-body .gs-ai-summary__text--demo { font-size: 10.5px; padding: 5px 8px; line-height: 2.4; }
	.gs-shop-body .gs-ai-summary__bubble-body { padding: 9px 10px; }
	.gs-shop-body .gs-ai-summary__bubble-tail { right: 12px; }
	.gs-shop-body .gs-ai-summary__tag { font-size: 10px; padding: 2px 5px; }
	.gs-shop-body .gs-ai-summary__disclaimer { font-size: 9px; }
	.gs-shop-body .gs-ai-summary__feedback-q { font-size: 11px; }
	/* Sortbar */
	.gs-shop-body .gs-review-sortbar { padding: 8px 10px; }
	.gs-shop-body .gs-review-sort__select { padding: 4px 8px; font-size: 11px; }
	/* Review form */
	.gs-shop-body .gs-review-form,
	.gs-shop-body .gs-question-form { padding: 14px 12px; border-radius: 12px; }
	.gs-shop-body .gs-review-form--guest,
	.gs-shop-body .gs-question-form--guest { padding: 20px 12px; }
	.gs-shop-body .gs-review-form__header { gap: 8px; }
	.gs-shop-body .gs-review-form__icon { width: 32px; height: 32px; border-radius: 9px; }
	.gs-shop-body .gs-review-form__icon svg { width: 18px; height: 18px; }
	.gs-shop-body .gs-review-form__title,
	.gs-shop-body .gs-question-form__title { font-size: 12.5px; }
	.gs-shop-body .gs-review-form__subtitle,
	.gs-shop-body .gs-question-form__subtitle { font-size: 10.5px; margin-bottom: 14px; }
	.gs-shop-body .gs-review-form__field { margin-bottom: 12px; }
	.gs-shop-body .gs-review-form__label { font-size: 10.5px; margin-bottom: 5px; }
	.gs-shop-body .gs-review-form__input,
	.gs-shop-body .gs-review-form__textarea,
	.gs-shop-body .gs-question-form__textarea {
		padding: 8px 10px;
		font-size: 11.5px;
		border-radius: 8px;
	}
	.gs-shop-body .gs-review-form__counter { font-size: 9.5px; margin-top: 4px; }
	/* Star picker */
	.gs-shop-body .gs-star-picker { gap: 2px; }
	.gs-shop-body .gs-star-picker__star svg { width: 22px; height: 22px; }
	.gs-shop-body .gs-star-picker__label { font-size: 11px; min-width: 44px; }
	/* Anonymous toggle */
	.gs-shop-body .gs-review-form__anon { gap: 7px; margin-bottom: 12px; }
	.gs-shop-body .gs-review-form__anon-toggle { width: 34px; height: 20px; }
	.gs-shop-body .gs-review-form__anon-toggle::after { width: 14px; height: 14px; top: 3px; right: 3px; }
	.gs-shop-body .gs-review-form__anon input:checked + .gs-review-form__anon-toggle::after { transform: translateX(-14px); }
	.gs-shop-body .gs-review-form__anon-text { font-size: 11px; }
	/* Submit buttons */
	.gs-shop-body .gs-review-form__submit,
	.gs-shop-body .gs-question-form__submit {
		padding: 7px 14px;
		font-size: 11.5px;
	}
	.gs-shop-body .gs-review-form__submit svg,
	.gs-shop-body .gs-question-form__submit svg { width: 13px; height: 13px; }
	.gs-shop-body .gs-review-form__login-btn { padding: 9px 24px; font-size: 13px; }
	.gs-shop-body .gs-review-form__msg,
	.gs-shop-body .gs-question-form__msg { font-size: 11px; margin-top: 8px; }
	/* Question form header */
	.gs-shop-body .gs-question-form__icon { width: 32px; height: 32px; border-radius: 9px; }
	.gs-shop-body .gs-question-form__icon svg { width: 18px; height: 18px; }
	/* Review card */
	.gs-shop-body .gs-review { padding: 12px 10px; gap: 8px; border-radius: 12px; }
	.gs-shop-body .gs-review__avatar { width: 32px; height: 32px; font-size: 12px; }
	.gs-shop-body .gs-review__name { font-size: 11.5px; }
	.gs-shop-body .gs-review__buyer { font-size: 8.5px; padding: 2px 7px; }
	.gs-shop-body .gs-review__date { font-size: 9.5px; }
	.gs-shop-body .gs-review__title { font-size: 11.5px; margin: 5px 0 3px; }
	.gs-shop-body .gs-review__text { font-size: 11.5px; line-height: 1.65; }
	.gs-shop-body .gs-review__vote { padding: 4px 8px; font-size: 11px; gap: 3px; }
	.gs-shop-body .gs-review__vote svg { width: 13px; height: 13px; }
	.gs-shop-body .gs-review__edit-btn,
	.gs-shop-body .gs-review__delete-btn { font-size: 10px; padding: 3px 7px; }
	/* Load more */
	.gs-shop-body .gs-review-load-more {
		margin-top: 14px;
		padding: 8px 20px;
		font-size: 11px;
		border-radius: 8px;
	}
	/* Question item */
	.gs-shop-body .gs-question-item { padding: 12px 12px; border-radius: 12px; }
	.gs-shop-body .gs-question-item__icon { width: 22px; height: 22px; font-size: 11px; }
	.gs-shop-body .gs-question-item__text { font-size: 11.5px; line-height: 1.5; }
	.gs-shop-body .gs-question-item__answers { padding: 10px 12px; }
	.gs-shop-body .gs-question-item__a { font-size: 11.5px; line-height: 1.6; }
	.gs-shop-body .gs-question-item__meta { font-size: 10px; gap: 8px; }
}

/* ---- Tiny mobile (≤ 480px) ---- */
@media (max-width: 480px) {
	/* AI summary */
	.gs-shop-body .gs-ai-summary__header { gap: 5px; }
	.gs-shop-body .gs-ai-summary__icon { width: 32px; height: 32px; }
	.gs-shop-body .gs-ai-summary__icon svg { width: 14px; height: 14px; }
	.gs-shop-body .gs-ai-summary__title { font-size: 11px; }
	.gs-shop-body .gs-ai-summary__subtitle { font-size: 8.5px; }
	.gs-shop-body .gs-ai-summary__text { font-size: 11px; line-height: 1.6; }
	.gs-shop-body .gs-ai-summary__text--demo { font-size: 10px; padding: 4px 7px; line-height: 2.2; }
	.gs-shop-body .gs-ai-summary__bubble-body { padding: 8px 9px; }
	.gs-shop-body .gs-ai-summary__bubble-tail { width: 12px; height: 10px; right: 10px; top: -5px; }
	.gs-shop-body .gs-ai-summary__more { font-size: 10px; margin-top: 5px; }
	.gs-shop-body .gs-ai-summary__tag { font-size: 9px; padding: 2px 4px; }
	.gs-shop-body .gs-ai-summary__disclaimer { font-size: 8.5px; margin-top: 6px; }
	.gs-shop-body .gs-ai-summary__feedback { gap: 6px; margin-top: 6px; padding-bottom: 6px; }
	.gs-shop-body .gs-ai-summary__feedback-q { font-size: 10px; }
	.gs-shop-body .gs-ai-summary__vote { width: 26px; height: 26px; }
	.gs-shop-body .gs-ai-summary__divider { margin-bottom: 8px; }
	/* Sortbar */
	.gs-shop-body .gs-review-sortbar { padding: 6px 8px; }
	.gs-shop-body .gs-review-sort__label { font-size: 11px; }
	.gs-shop-body .gs-review-sort__select { padding: 4px 7px; font-size: 10.5px; }
	/* Empty state */
	.gs-shop-body .gs-empty-state { font-size: 11px; padding: 16px 8px; }
	/* Review count */
	.gs-shop-body .gs-review-count { font-size: 11px; margin-bottom: 10px; padding-bottom: 8px; }
	/* Review form */
	.gs-shop-body .gs-review-form,
	.gs-shop-body .gs-question-form { padding: 12px 10px; border-radius: 10px; }
	.gs-shop-body .gs-review-form--guest,
	.gs-shop-body .gs-question-form--guest { padding: 16px 10px; }
	.gs-shop-body .gs-review-form__icon,
	.gs-shop-body .gs-question-form__icon { width: 28px; height: 28px; border-radius: 8px; }
	.gs-shop-body .gs-review-form__icon svg,
	.gs-shop-body .gs-question-form__icon svg { width: 16px; height: 16px; }
	.gs-shop-body .gs-review-form__title,
	.gs-shop-body .gs-question-form__title { font-size: 12px; }
	.gs-shop-body .gs-review-form__subtitle,
	.gs-shop-body .gs-question-form__subtitle { font-size: 10px; margin-bottom: 12px; }
	.gs-shop-body .gs-review-form__field { margin-bottom: 10px; }
	.gs-shop-body .gs-review-form__label { font-size: 10px; margin-bottom: 4px; }
	.gs-shop-body .gs-review-form__input,
	.gs-shop-body .gs-review-form__textarea,
	.gs-shop-body .gs-question-form__textarea {
		padding: 7px 9px;
		font-size: 11px;
		border-radius: 7px;
	}
	.gs-shop-body .gs-review-form__counter { font-size: 9px; margin-top: 3px; }
	/* Star picker */
	.gs-shop-body .gs-star-picker { gap: 1px; }
	.gs-shop-body .gs-star-picker__star { padding: 1px; }
	.gs-shop-body .gs-star-picker__star svg { width: 20px; height: 20px; }
	.gs-shop-body .gs-star-picker__label { font-size: 10px; min-width: 40px; margin-right: 4px; }
	/* Anonymous toggle */
	.gs-shop-body .gs-review-form__anon { gap: 6px; margin-bottom: 10px; }
	.gs-shop-body .gs-review-form__anon-toggle { width: 32px; height: 18px; }
	.gs-shop-body .gs-review-form__anon-toggle::after { width: 12px; height: 12px; top: 3px; right: 3px; }
	.gs-shop-body .gs-review-form__anon input:checked + .gs-review-form__anon-toggle::after { transform: translateX(-14px); }
	.gs-shop-body .gs-review-form__anon-text { font-size: 10px; }
	/* Submit buttons */
	.gs-shop-body .gs-review-form__submit,
	.gs-shop-body .gs-question-form__submit {
		padding: 6px 12px;
		font-size: 11px;
		gap: 4px;
	}
	.gs-shop-body .gs-review-form__submit svg,
	.gs-shop-body .gs-question-form__submit svg { width: 12px; height: 12px; }
	.gs-shop-body .gs-review-form__login-btn { padding: 8px 20px; font-size: 12px; }
	.gs-shop-body .gs-review-form__msg,
	.gs-shop-body .gs-question-form__msg { font-size: 10px; margin-top: 6px; }
	/* Review card */
	.gs-shop-body .gs-review { padding: 10px 8px; gap: 6px; border-radius: 10px; }
	.gs-shop-body .gs-review__avatar { width: 28px; height: 28px; font-size: 11px; }
	.gs-shop-body .gs-review__name { font-size: 11px; }
	.gs-shop-body .gs-review__buyer { font-size: 8px; padding: 1px 6px; }
	.gs-shop-body .gs-review__date { font-size: 9px; }
	.gs-shop-body .gs-review__title { font-size: 11px; margin: 4px 0 2px; }
	.gs-shop-body .gs-review__text { font-size: 11px; line-height: 1.6; }
	.gs-shop-body .gs-review__votes { gap: 5px; margin-top: 8px; }
	.gs-shop-body .gs-review__vote { padding: 4px 7px; font-size: 10px; gap: 3px; }
	.gs-shop-body .gs-review__vote svg { width: 12px; height: 12px; }
	.gs-shop-body .gs-review__actions { gap: 4px; margin-top: 6px; }
	.gs-shop-body .gs-review__edit-btn,
	.gs-shop-body .gs-review__delete-btn { font-size: 9px; padding: 2px 6px; }
	/* Load more */
	.gs-shop-body .gs-review-load-more {
		margin-top: 12px;
		padding: 7px 18px;
		font-size: 10.5px;
		border-radius: 7px;
	}
	/* Question item */
	.gs-shop-body .gs-question-item { padding: 10px 10px; border-radius: 10px; }
	.gs-shop-body .gs-question-item__q { gap: 6px; }
	.gs-shop-body .gs-question-item__icon { width: 20px; height: 20px; font-size: 10px; border-radius: 6px; }
	.gs-shop-body .gs-question-item__text { font-size: 11px; line-height: 1.5; }
	.gs-shop-body .gs-question-item__answers { padding: 8px 10px; margin: 8px 0 4px 0; }
	.gs-shop-body .gs-question-item__a { font-size: 11px; line-height: 1.55; gap: 5px; }
	.gs-shop-body .gs-question-item__a-icon { font-size: 11px; }
	.gs-shop-body .gs-question-item__meta { font-size: 9px; gap: 6px; margin-top: 6px; }
}

/* ===== Account panel: reviews & questions ===== */
.gs-account-rq__tabs {
	display: flex;
	gap: 4px;
	border-bottom: 2px solid var(--gs-border, #f0f0f1);
	margin-bottom: 20px;
}
.gs-account-rq__tab {
	padding: 10px 20px;
	font-size: 15px;
	font-weight: 700;
	color: var(--gs-text-muted, #8c8c8c);
	text-decoration: none;
	border-bottom: 2px solid transparent;
	margin-bottom: -2px;
	transition: color 0.15s, border-color 0.15s;
}
.gs-account-rq__tab:hover {
	color: var(--gs-text, #1a1a1a);
}
.gs-account-rq__tab--active {
	color: var(--gs-primary, #ef4056);
	border-bottom-color: var(--gs-primary, #ef4056);
}
.gs-account-rq__content {
	min-height: 200px;
}
@media (max-width: 768px) {
	.gs-account-rq__tab {
		padding: 8px 14px;
		font-size: 14px;
	}
}

.gs-account-card {
	background: #fff;
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 12px;
	padding: 16px;
	margin-bottom: 12px;
}
.gs-account-card__header {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 12px;
}
.gs-account-card__img {
	width: 48px;
	height: 48px;
	border-radius: 8px;
	object-fit: cover;
	flex-shrink: 0;
}
.gs-account-card__info {
	flex: 1;
	min-width: 0;
}
.gs-account-card__product {
	display: block;
	font-size: 14px;
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
	text-decoration: none;
	margin-bottom: 4px;
}
.gs-account-card__product:hover {
	color: var(--gs-primary, #ef4056);
}
.gs-account-card__date {
	display: block;
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
	margin-top: 4px;
}
.gs-account-card__status {
	flex-shrink: 0;
}
.gs-account-card__title {
	font-size: 14px;
	font-weight: 700;
	margin: 0 0 8px;
}
.gs-account-card__text {
	font-size: 14px;
	color: var(--gs-text, #1a1a1a);
	line-height: 1.6;
	margin: 0 0 12px;
}
.gs-account-card__footer {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 13px;
	color: var(--gs-text-muted, #8c8c8c);
}
.gs-account-card__votes {
	font-size: 13px;
}
.gs-account-card__actions {
	display: flex;
	gap: 8px;
}
.gs-account-card__edit,
.gs-account-card__delete {
	background: none;
	border: none;
	cursor: pointer;
	font-size: 13px;
	padding: 2px 6px;
}
.gs-account-card__edit {
	color: var(--gs-blue, #1672dd);
}
.gs-account-card__delete {
	color: var(--gs-discount, #d32f2f);
}

/* ===== Status badges ===== */
.gs-status-badge {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 12px;
	font-size: 12px;
	font-weight: 600;
}
.gs-status-badge--approved {
	background: #e6f4ea;
	color: var(--gs-green, #00a049);
}
.gs-status-badge--pending {
	background: #fff4e0;
	color: var(--gs-accent, #f08000);
}
.gs-status-badge--rejected {
	background: #fce8e8;
	color: var(--gs-discount, #d32f2f);
}

/* ===== Load more button (account) ===== */
.gs-load-more {
	display: block;
	margin: 16px auto;
	padding: 8px 24px;
	background: var(--gs-bg-card, #fafafa);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 8px;
	cursor: pointer;
	color: var(--gs-text, #1a1a1a);
	font-size: 14px;
}

/* ===== Admin filter tabs ===== */
.gs-admin-filter-tabs {
	display: flex;
	gap: 8px;
	margin-bottom: 16px;
}
.gs-admin-filter-tab {
	padding: 6px 16px;
	border: 1px solid #ddd;
	border-radius: 6px;
	background: #fff;
	cursor: pointer;
	font-size: 13px;
}
.gs-admin-filter-tab--active {
	background: var(--gs-primary, #ef4056);
	color: #fff;
	border-color: var(--gs-primary, #ef4056);
}
.gs-admin-actions {
	white-space: nowrap;
}
.gs-admin-answer-input {
	max-width: 200px;
}

/* ===== Skeleton loading ===== */
.gs-msg-skeleton,
.gs-reviews-loading .gs-msg-skeleton,
.gs-questions-loading .gs-msg-skeleton {
	height: 80px;
	border-radius: 12px;
	margin-bottom: 12px;
	background: linear-gradient(90deg, var(--gs-border, #f0f0f1) 25%, var(--gs-bg-hover, #f7f7f8) 50%, var(--gs-border, #f0f0f1) 75%);
	background-size: 200% 100%;
	animation: gs-skeleton-shimmer 1.5s infinite;
}
@keyframes gs-skeleton-shimmer {
	0% { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}

/* ===== Responsive ===== */
@media (max-width: 768px) {
	.gs-shop-body .gs-review__header {
		flex-direction: column;
		gap: 4px;
	}
	.gs-shop-body .gs-review__votes {
		flex-wrap: wrap;
	}
	.gs-account-card__header {
		flex-direction: column;
	}
	.gs-account-card__status {
		align-self: flex-start;
	}
	.gs-admin-filter-tabs {
		flex-wrap: wrap;
	}
}

/* ===== Best Price ===== */
.gs-shop-body .gs-best-price {
	font-size: 12px;
	color: var(--gs-green);
	font-weight: 600;
	margin-bottom: 12px;
	display: flex;
	align-items: center;
	gap: 4px;
}

/* ===== Sticky Bottom Bar ===== */
/* ===== Sticky Bottom Bar — Glassmorphism ===== */
.gs-shop-body .gs-sticky-bar {
	position: fixed;
	bottom: 6px;
	left: 12px;
	right: 12px;
	z-index: 45;
	transform: translateY(calc(100% + 24px));
	transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
	/* Glassmorphism container — transparent, no background here */
}
.gs-shop-body .gs-sticky-bar--visible {
	transform: translateY(0);
}
.gs-shop-body .gs-sticky-bar__inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 10px 20px;
	display: flex;
	align-items: center;
	gap: 16px;
	/* Glassmorphism — more transparent for stronger glass effect */
	background: rgba(255, 255, 255, 0.45);
	backdrop-filter: blur(12px) saturate(160%);
	-webkit-backdrop-filter: blur(16px) saturate(160%);
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 16px;
	box-shadow:
		0 10px 40px rgba(0, 0, 0, 0.14),
		0 4px 12px rgba(0, 0, 0, 0.06),
		inset 0 1px 0 rgba(255, 255, 255, 0.4);
}

/* Dark mode / earthy theme support */
.gs-shop-body[data-gs-theme="dark"] .gs-sticky-bar__inner,
:root[data-gs-theme="dark"] .gs-sticky-bar__inner {
	background: rgba(30, 30, 35, 0.65);
	border-color: rgba(255, 255, 255, 0.12);
	box-shadow:
		0 8px 32px rgba(0, 0, 0, 0.4),
		inset 0 1px 0 rgba(255, 255, 255, 0.08);
}
.gs-shop-body .gs-sticky-bar__product {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 8px;
	min-width: 0;
	flex: 1;
}
.gs-shop-body .gs-sticky-bar__title {
	font-size: 13px;
	font-weight: 800;
	color: var(--gs-text-dark, #0c0c0c);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	line-height: 1.5;
}
.gs-shop-body .gs-sticky-bar__color-swatch {
	width: 20px !important;
	height: 20px !important;
	border-radius: 50%;
	border: 2px solid var(--gs-border-dark);
	flex-shrink: 0;
	display: inline-block;
	box-sizing: border-box;
}
.gs-shop-body .gs-sticky-bar__variant-info {
	font-size: 11px;
	color: var(--gs-text-light, #8c8c8c);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 120px;
}
.gs-shop-body .gs-sticky-bar__seller {
	font-size: 11px;
	color: var(--gs-text-light);
	white-space: nowrap;
}
.gs-shop-body .gs-sticky-bar__price-block {
	display: flex;
	align-items: center;
	gap: 8px;
}
.gs-shop-body .gs-sticky-bar__old {
	font-size: 11px;
	color: var(--gs-text-muted);
	text-decoration: line-through;
}
.gs-shop-body .gs-sticky-bar__discount {
	background: var(--gs-discount);
	color: var(--gs-text-dark);
	font-size: 11px;
	font-weight: 600;
	padding: 2px 6px;
	border-radius: 16px;
}
.gs-shop-body .gs-sticky-bar__price {
	font-size: 16px;
	font-weight: 800;
	color: var(--gs-price, #2b2b2b);
}
.gs-shop-body .gs-sticky-bar__btn {
	background: var(--gs-primary, #ef4056);
	color: #fff;
	border: none;
	border-radius: 12px;
	padding: 10px 24px;
	font-size: 13px;
	font-weight: 800;
	cursor: pointer;
	font-family: inherit;
	white-space: nowrap;
	box-shadow: 0 2px 8px rgba(238, 56, 78, 0.3);
	transition: transform 0.15s, box-shadow 0.2s, background 0.2s;
}
.gs-shop-body .gs-sticky-bar__btn:hover {
	background: var(--gs-primary-hover, #d63a4d);
	transform: translateY(-1px);
	box-shadow: 0 4px 14px rgba(238, 56, 78, 0.4);
}
.gs-shop-body .gs-sticky-bar__btn:active {
	transform: translateY(0);
	box-shadow: 0 2px 6px rgba(238, 56, 78, 0.3);
}


/* ===== Mobile: above bottom nav, glass pill ===== */
@media (max-width: 768px) {
	.gs-shop-body .gs-sticky-bar {
		bottom: 68px; /* above bottom nav (~56px) + gap */
		left: 8px;
		right: 8px;
		box-sizing: border-box;
	}
	.gs-shop-body .gs-sticky-bar__inner {
		padding: 8px 10px;
		gap: 8px;
		border-radius: 14px;
		box-sizing: border-box;
		max-width: 100%;
		overflow: hidden;
	}

	.gs-shop-body .gs-sticky-bar__product {
		display: none;
	}

	.gs-shop-body .gs-sticky-bar__price-block {
		flex: 1 1 auto;
		min-width: 0;
		justify-content: flex-end;
		overflow: hidden;
	}
	.gs-shop-body .gs-sticky-bar__price {
		font-size: 14px;
		white-space: nowrap;
	}
	.gs-shop-body .gs-sticky-bar__old {
		font-size: 10px;
		white-space: nowrap;
	}

	.gs-shop-body .gs-sticky-bar__btn {
		padding: 10px 14px;
		font-size: 12px;
		flex-shrink: 0;
		border-radius: 10px;
		white-space: nowrap;
	}
	.gs-shop-body .gs-sticky-bar__color-swatch {
		width: 18px !important;
		height: 18px !important;
	}
}

/* ===== Back to Top ===== */
.gs-shop-body .gs-back-top {
	position: fixed;
	bottom: 80px;
	left: 20px;
	background: var(--gs-bg-card, #fafafa);
	border: 1px solid var(--gs-border-dark, #e0e0e0);
	border-radius: 50%;
	width: 40px;
	height: 40px;
	font-size: 12px;
	color: var(--gs-text, #1a1a1a);
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(0,0,0,0.08);
	z-index: 30;
	display: none;
	font-family: inherit;
	transition: bottom 0.3s;
}
.gs-shop-body .gs-back-top:hover { border-color: var(--gs-primary); color: var(--gs-primary); }


.gs-shop-body .gs-lazy-placeholder {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 60px 20px;
	color: var(--gs-text-light);
	font-size: 13px;
}
.gs-shop-body .gs-lazy-spinner {
	width: 32px;
	height: 32px;
	border: 3px solid var(--gs-border);
	border-top-color: var(--gs-primary);
	border-radius: 50%;
	animation: gs-spin 0.8s linear infinite;
}
@keyframes gs-spin {
	to { transform: rotate(360deg); }
}


/* ===== Brands — Base styles (layout is dynamic via PHP) ===== */
.gs-shop-body .gs-brands-scroll {
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scrollbar-color: var(--gs-border-dark) transparent;
	padding-bottom: 4px;
}
.gs-shop-body .gs-brands-scroll::-webkit-scrollbar {
	height: 6px;
}
.gs-shop-body .gs-brands-scroll::-webkit-scrollbar-track {
	background: transparent;
}
.gs-shop-body .gs-brands-scroll::-webkit-scrollbar-thumb {
	background: var(--gs-border-dark);
	border-radius: 3px;
}
.gs-shop-body .gs-brand-card {
	background: var(--gs-bg-card);
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--gs-border);
	border-radius: 8px;
	padding: 8px 7px;
	transition: border-color 0.2s, box-shadow 0.2s;
	text-decoration: none;
	overflow: hidden;
}
.gs-shop-body .gs-brand-card:hover {
	border-color: var(--gs-text-muted);
	box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}
.gs-shop-body .gs-brand-card__img {
	max-width: 100%;
	max-height: 48px;
	object-fit: contain;
}
.gs-shop-body .gs-brand-card__name {
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-text);
}

/* ===== Related Tags — daisyUI badge style ===== */
.gs-shop-body .gs-tags-section {
	background: var(--gs-bg-card);
	border-radius: 8px;
	border: 1px solid var(--gs-border);
	padding: 20px 24px;
	margin-bottom: 16px;
}
.gs-shop-body .gs-tags-section__title {
	font-size: 16px;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0 0 16px;
}
.gs-shop-body .gs-tags-list {
	display: flex;
	flex-wrap: nowrap;
	gap: 8px;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	padding-bottom: 4px;
}
.gs-shop-body .gs-tags-list .gs-badge {
	flex-shrink: 0;
	white-space: nowrap;
}
.gs-shop-body .gs-tags-list::-webkit-scrollbar {
	height: 4px;
}
.gs-shop-body .gs-tags-list::-webkit-scrollbar-track {
	background: transparent;
}
.gs-shop-body .gs-tags-list::-webkit-scrollbar-thumb {
	background: var(--gs-border);
	border-radius: 2px;
}
/* daisyUI badge — outline variant */
.gs-shop-body .gs-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.25rem;
	height: 1.5rem;
	padding: 0 0.75rem;
	border-radius: 1.9rem;
	font-size: 0.8125rem;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
	text-decoration: none;
	transition: background-color 0.15s, color 0.15s, border-color 0.15s;
}
.gs-shop-body .gs-badge--outline {
	border: 1px solid var(--gs-border-dark);
	background: transparent;
	color: var(--gs-text);
}
.gs-shop-body .gs-badge--outline:hover {
	background: var(--gs-border);
	border-color: var(--gs-text-muted);
	color: var(--gs-text-dark);
}

/* Related Products */
.gs-shop-body .gs-related-section {
	background: var(--gs-bg-card);
	border-radius: 8px;
	border: 1px solid var(--gs-border);
	padding: 16px;
	margin-bottom: 16px;
}
.gs-shop-body .gs-related-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 16px;
}
.gs-shop-body .gs-related-title {
	font-size: 16px;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0;
}
.gs-shop-body .gs-related-link {
	font-size: 13px;
	color: var(--gs-secondary);
	text-decoration: none;
}
.gs-shop-body .gs-related-link:hover { text-decoration: underline; }
.gs-shop-body .gs-related-grid {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 12px;
}
@media (max-width: 1024px) {
	.gs-shop-body .gs-related-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 640px) {
	.gs-shop-body .gs-related-grid { grid-template-columns: repeat(2, 1fr); }
}

/* Product Card */
.gs-shop-body .gs-product-card {
	display: block;
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border);
	border-radius: 8px;
	overflow: hidden;
	text-decoration: none;
	transition: all 0.2s;
	flex: 0 0 calc(100% / 6);
	max-width: calc(100% / 6);
	box-sizing: border-box;
}

.gs-shop-body .gs-related-grid .gs-product-card,
.gs-shop-body .grid .gs-product-card,
.gs-shop-body .gs-products-grid .gs-product-card {
	flex: none;
	max-width: none;
	width: 100%;
}

/* Product listing grid (fallback for AJAX-rendered products) */
.gs-shop-body .gs-products-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
}
@media (min-width: 768px) {
	.gs-shop-body .gs-products-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media (min-width: 1024px) {
	.gs-shop-body .gs-products-grid {
		grid-template-columns: repeat(4, 1fr);
	}
}
.gs-shop-body .gs-product-card:hover {
	border-color: var(--gs-text-muted);
	box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}


.gs-shop-body .gs-product-carousel {
	position: relative;
	display: flex;
	align-items: center;
}
.gs-shop-body .gs-product-carousel__viewport {
	overflow: hidden;
	flex: 1;
	padding: 2px;
	margin: -2px;
}
/* Mobile: switch to native scroll so vertical page scroll works alongside */
@media (max-width: 768px) {
	.gs-shop-body .gs-product-carousel__viewport {
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		padding: 2px;
	}
	.gs-shop-body .gs-product-carousel__viewport::-webkit-scrollbar {
		display: none;
	}
	.gs-shop-body .gs-product-carousel__track {
		transform: none !important;
		transition: none !important;
	}
	.gs-shop-body .gs-product-carousel__nav {
		display: none !important;
	}
}
.gs-shop-body .gs-product-carousel__track {
	display: flex;
	gap: 8px;
	transition: transform 0.4s ease;
	will-change: transform;
}
.gs-shop-body .gs-product-carousel__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border-dark);
	box-shadow: 0 2px 8px rgba(0,0,0,0.08);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: var(--gs-text);
	transition: all 0.2s;
	padding: 0;
}
.gs-shop-body .gs-product-carousel__nav:hover {
	background: var(--gs-border);
	box-shadow: 0 4px 12px rgba(0,0,0,0.12);
}
.gs-shop-body .gs-product-carousel__nav svg {
	width: 20px;
	height: 20px;
}
.gs-shop-body .gs-product-carousel__nav--prev {
	right: -8px;
}
.gs-shop-body .gs-product-carousel__nav--next {
	left: -8px;
}
@media (max-width: 1280px) {
	.gs-shop-body .gs-product-card {
		flex: 0 0 calc(100% / 5);
		max-width: calc(100% / 5);
	}
}
@media (max-width: 1024px) {
	.gs-shop-body .gs-product-card {
		flex: 0 0 calc(100% / 4);
		max-width: calc(100% / 4);
	}
}
@media (max-width: 768px) {
	.gs-shop-body .gs-product-card {
		flex: 0 0 calc(100% / 3);
		max-width: calc(100% / 3);
	}
	.gs-shop-body .gs-product-carousel__nav { width: 32px; height: 32px; }
}
@media (max-width: 480px) {
	.gs-shop-body .gs-product-card {
		flex: 0 0 calc(100% / 2);
		max-width: calc(100% / 2);
	}
	.gs-shop-body .gs-product-carousel__nav { display: none; }
	
	.gs-shop-body .gs-product-card__body { padding: 8px; }
	.gs-shop-body .gs-product-card__title {
		font-size: 11px;
		line-height: 1.5;
		margin-bottom: 6px;
		min-height: 33px;
	}
	.gs-shop-body .gs-product-card__rating {
		font-size: 10px;
		margin-bottom: 6px;
		gap: 3px;
	}
	.gs-shop-body .gs-product-card__reviews { font-size: 9px; }
	.gs-shop-body .gs-product-card__price-new {
		font-size: 15px;
	}
	.gs-shop-body .gs-product-card__price-new .woocommerce-Price-currencySymbol {
		font-size: 10px;
	}
	.gs-shop-body .gs-product-card__price-old {
		font-size: 10px;
	}
	.gs-shop-body .gs-product-card__price-old .woocommerce-Price-currencySymbol {
		font-size: 8px;
	}
	.gs-shop-body .gs-product-card__discount-badge {
		font-size: 10px;
		padding: 3px 6px;
	}
	.gs-shop-body .gs-product-card__discount {
		font-size: 10px;
		padding: 3px 6px;
	}
}
@media (max-width: 768px) and (min-width: 481px) {
	
	.gs-shop-body .gs-product-card__title {
		font-size: 12px;
		line-height: 1.5;
	}
	.gs-shop-body .gs-product-card__price-new {
		font-size: 17px;
	}
	.gs-shop-body .gs-product-card__price-new .woocommerce-Price-currencySymbol {
		font-size: 11px;
	}
	.gs-shop-body .gs-product-card__price-old {
		font-size: 11px;
	}
}
.gs-shop-body .gs-product-card__image {
	width: 100%;
	aspect-ratio: 1;
	background: var(--gs-border);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}
.gs-shop-body .gs-product-card__img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 8px;
	background-color: var(--gs-bg-card);
}
.gs-shop-body .gs-product-card__placeholder {
	font-size: 32px;
	opacity: 0.3;
}
.gs-shop-body .gs-product-card__body { padding: 12px; }
.gs-shop-body .gs-product-card__title {
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text);
	margin: 0 0 8px;
	line-height: 1.6;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 42px;
}
.gs-shop-body .gs-product-card__rating {
	display: flex;
	align-items: center;
	gap: 4px;
	margin-bottom: 8px;
	font-size: 12px;
}
.gs-shop-body .gs-product-card__stars {
	color: var(--gs-star);
}
.gs-shop-body .gs-product-card__reviews {
	color: var(--gs-text-light);
	font-size: 11px;
}
.gs-shop-body .gs-product-card__price {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 6px;
}
.gs-shop-body .gs-product-card__discount-badge {
	background: var(--gs-discount);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	padding: 4px 8px;
	border-radius: 6px;
	display: inline-block;
	line-height: 1;
	flex-shrink: 0;
}
.gs-shop-body .gs-product-card__price-col {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
}
.gs-shop-body .gs-product-card__price-old {
	font-size: 12px;
	font-weight: 500;
	color: var(--gs-text-muted);
	text-decoration: line-through;
	line-height: 1.4;
}
.gs-shop-body .gs-product-card__price-old .woocommerce-Price-currencySymbol {
	font-size: 10px;
}
.gs-shop-body .gs-product-card__price-new {
	font-size: 19px;
	font-weight: 800;
	color: var(--gs-price);
	line-height: 1.3;
}
.gs-shop-body .gs-product-card__price-new .woocommerce-Price-currencySymbol {
	font-size: 13px;
	font-weight: 500;
	margin-right: 2px;
}
.gs-shop-body .gs-product-card__discount {
	position: absolute;
	top: 8px;
	right: 8px;
	background: var(--gs-discount);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	padding: 4px 8px;
	border-radius: 6px;
	line-height: 1;
}
.gs-shop-body .gs-product-card__image {
	position: relative;
}

/* Lightbox */
.gs-shop-body .gs-lightbox {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10000;
	overflow: hidden;
}
.gs-shop-body .gs-lightbox--open {
	display: block;
	animation: gs-lb-fade-in 0.3s ease-out;
}
@keyframes gs-lb-fade-in {
	from { opacity: 0; }
	to { opacity: 1; }
}
.gs-shop-body .gs-lightbox__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.92);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
}
.gs-shop-body .gs-lightbox__stage {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	touch-action: none;
	z-index: 1;
}
.gs-shop-body .gs-lightbox__img {
	max-width: 90%;
	max-height: 90%;
	object-fit: contain;
	transform-origin: center center;
	transition: transform 0.15s ease-out, opacity 0.2s ease;
	will-change: transform;
	user-select: none;
	-webkit-user-drag: none;
	animation: gs-lb-img-in 0.4s ease-out;
	z-index: 1;
	pointer-events: none;
}
@keyframes gs-lb-img-in {
	from { opacity: 0; transform: scale(0.85); }
	to { opacity: 1; transform: scale(1); }
}
.gs-shop-body .gs-lightbox__close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.1);
	border: none;
	border-radius: 50%;
	color: #fff;
	cursor: pointer;
	z-index: 10010;
	transition: background 0.2s;
}
.gs-shop-body .gs-lightbox__close:hover {
	background: rgba(255, 255, 255, 0.25);
}
.gs-shop-body .gs-lightbox__close svg {
	width: 24px;
	height: 24px;
}

/* Lightbox controls (zoom) */
.gs-shop-body .gs-lightbox__controls {
	position: absolute;
	bottom: 24px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	gap: 8px;
	background: rgba(255, 255, 255, 0.1);
	border-radius: 12px;
	padding: 6px;
	z-index: 10010;
	animation: gs-lb-controls-in 0.4s ease-out 0.1s both;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}
@keyframes gs-lb-controls-in {
	from { opacity: 0; transform: translateX(-50%) translateY(20px); }
	to { opacity: 1; transform: translateX(-50%) translateY(0); }
}
.gs-shop-body .gs-lightbox__btn {
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: none;
	border-radius: 8px;
	color: #fff;
	cursor: pointer;
	transition: background 0.2s;
}
.gs-shop-body .gs-lightbox__btn:hover {
	background: rgba(255, 255, 255, 0.15);
}
.gs-shop-body .gs-lightbox__btn svg {
	width: 22px;
	height: 22px;
}
.gs-shop-body .gs-lightbox__zoom-level {
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	min-width: 56px;
	text-align: center;
	font-family: inherit;
}

/* Lightbox navigation arrows */
.gs-shop-body .gs-lightbox__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 48px;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.1);
	border: none;
	border-radius: 50%;
	color: #fff;
	cursor: pointer;
	z-index: 10010;
	transition: background 0.2s;
}
.gs-shop-body .gs-lightbox__nav:hover {
	background: rgba(255, 255, 255, 0.25);
}
.gs-shop-body .gs-lightbox__nav svg {
	width: 26px;
	height: 26px;
}
.gs-shop-body .gs-lightbox__nav--prev {
	right: 16px;
}
.gs-shop-body .gs-lightbox__nav--next {
	left: 16px;
}

/* Gallery spinner */
.gs-gallery-main__spinner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 36px;
	height: 36px;
	border: 3px solid rgba(0, 0, 0, 0.1);
	border-top-color: var(--gs-primary);
	border-radius: 50%;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.2s;
	z-index: 5;
}
.gs-gallery-main__spinner--active {
	opacity: 1;
	animation: gs-gallery-spin 0.8s linear infinite;
}
@keyframes gs-gallery-spin {
	to { transform: translate(-50%, -50%) rotate(360deg); }
}

/* Gallery main image transition */
.gs-gallery-main__img {
	transition: opacity 0.3s ease;
}

/* Mobile: smaller lightbox controls */
@media (max-width: 768px) {
	.gs-shop-body .gs-lightbox__img {
		max-width: 100%;
		max-height: 100%;
	}
	.gs-shop-body .gs-lightbox__close {
		top: 12px;
		right: 12px;
		width: 40px;
		height: 40px;
	}
	.gs-shop-body .gs-lightbox__controls {
		bottom: 16px;
		padding: 4px;
		gap: 4px;
	}
	.gs-shop-body .gs-lightbox__btn {
		width: 36px;
		height: 36px;
	}
	.gs-shop-body .gs-lightbox__nav {
		width: 40px;
		height: 40px;
	}
	.gs-shop-body .gs-lightbox__nav--prev { right: 8px; }
	.gs-shop-body .gs-lightbox__nav--next { left: 8px; }
}





/* Product listing card */
.gs-shop-body .gs-listing-card {
	background: var(--gs-bg-card);
	border-radius: 8px;
	border: 1px solid var(--gs-border);
	overflow: hidden;
	text-decoration: none;
	display: flex;
	flex-direction: column;
	transition: all 0.2s;
	padding: 8px;
}
.gs-shop-body .gs-listing-card:hover {
	border-color: var(--gs-text-muted);
	box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}
.gs-shop-body .gs-listing-card__image {
	width: 100%;
	aspect-ratio: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	margin-bottom: 8px;
}
.gs-shop-body .gs-listing-card__img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 8px;
}
.gs-shop-body .gs-listing-card__title {
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-text);
	margin: 0 0 8px;
	line-height: 1.6;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 42px;
}
.gs-shop-body .gs-listing-card__price {
	display: flex;
	align-items: center;
	gap: 6px;
	flex-wrap: wrap;
	margin-top: auto;
}
.gs-shop-body .gs-listing-card__discount {
	background: var(--gs-discount);
	color: var(--gs-text-dark);
	font-size: 11px;
	font-weight: 600;
	padding: 2px 6px;
	border-radius: 16px;
}


/* ===== Hero Slider — Base styles (height/fit is dynamic via PHP) ===== */
.gs-shop-body .gs-hero-slider-section {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-top: 0;
	margin-bottom: 0;
}
.gs-shop-body .gs-hero-slider {
	position: relative;
	width: 100%;
	height: 400px;
	overflow: hidden;
	background: var(--gs-border);
}
.gs-shop-body .gs-hero-slider__viewport {
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.gs-shop-body .gs-hero-slider__wrapper {
	display: flex;
	height: 100%;
	transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	will-change: transform;
}
.gs-shop-body .gs-hero-slider__slide {
	flex: 0 0 100%;
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
}
.gs-shop-body .gs-hero-slider__link {
	display: block;
	width: 100%;
	height: 100%;
}
.gs-shop-body .gs-hero-slider__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 0;
}
.gs-shop-body .gs-hero-slider__arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.9);
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 10;
	transition: all 0.2s;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	color: var(--gs-text);
}
.gs-shop-body .gs-hero-slider__arrow:hover {
	background: var(--gs-bg-card);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	color: var(--gs-primary);
}
.gs-shop-body .gs-hero-slider__arrow svg {
	width: 24px;
	height: 24px;
}
.gs-shop-body .gs-hero-slider__arrow--prev {
	right: 12px;
}
.gs-shop-body .gs-hero-slider__arrow--next {
	left: 12px;
}
.gs-shop-body .gs-hero-slider__dots {
	position: absolute;
	bottom: 16px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	gap: 6px;
	z-index: 10;
}
.gs-shop-body .gs-hero-slider__dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.5);
	border: none;
	cursor: pointer;
	transition: all 0.3s;
	padding: 0;
	/* Enlarge touch target to 24px minimum (WCAG) without changing visual size */
	box-sizing: content-box;
	min-width: 8px;
	min-height: 8px;
	position: relative;
}
.gs-shop-body .gs-hero-slider__dot::before {
	content: '';
	position: absolute;
	inset: -8px;
}
.gs-shop-body .gs-hero-slider__dot--active {
	background: var(--gs-bg-card);
	width: 20px;
	border-radius: 4px;
}

/* Hero Slider — Responsive arrow/dot sizing (height is dynamic) */
@media (min-width: 2560px) {
	.gs-shop-body .gs-hero-slider__arrow { width: 52px; height: 52px; }
	.gs-shop-body .gs-hero-slider__arrow svg { width: 28px; height: 28px; }
	.gs-shop-body .gs-hero-slider__arrow--prev { right: 24px; }
	.gs-shop-body .gs-hero-slider__arrow--next { left: 24px; }
	.gs-shop-body .gs-hero-slider__dot { width: 10px; height: 10px; }
	.gs-shop-body .gs-hero-slider__dot--active { width: 28px; }
}
@media (min-width: 768px) and (max-width: 1023px) {
	.gs-shop-body .gs-hero-slider__arrow { width: 38px; height: 38px; }
	.gs-shop-body .gs-hero-slider__arrow svg { width: 20px; height: 20px; }
}
@media (max-width: 767px) {
	.gs-shop-body .gs-hero-slider-section {
		width: calc(100% + 32px);
		margin-left: -16px;
		margin-right: -16px;
	}
	.gs-shop-body .gs-hero-slider__arrow { width: 32px; height: 32px; }
	.gs-shop-body .gs-hero-slider__arrow svg { width: 18px; height: 18px; }
	.gs-shop-body .gs-hero-slider__arrow--prev { right: 8px; }
	.gs-shop-body .gs-hero-slider__arrow--next { left: 8px; }
	.gs-shop-body .gs-hero-slider__dots { bottom: 8px; }
}
@media (max-width: 480px) {
	.gs-shop-body .gs-hero-slider-section {
		width: calc(100% + 24px);
		margin-left: -12px;
		margin-right: -12px;
	}
	.gs-shop-body .gs-hero-slider__arrow { width: 28px; height: 28px; }
	.gs-shop-body .gs-hero-slider__arrow svg { width: 16px; height: 16px; }
	.gs-shop-body .gs-hero-slider__dots { bottom: 6px; gap: 4px; }
	.gs-shop-body .gs-hero-slider__dot { width: 6px; height: 6px; }
	.gs-shop-body .gs-hero-slider__dot--active { width: 16px; }
}


.gs-shop-body .gs-mobile-bottomnav {
	display: none;
}
@media (max-width: 1024px) {
	.gs-shop-body .gs-mobile-bottomnav {
		display: flex;
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		width: 100%;
		height: 56px;
		background: var(--gs-bg-card);
		box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.06);
		z-index: 1000;
		justify-content: space-around;
		align-items: center;
		padding: 0;
		border-top: 1px solid var(--gs-border);
	}
	.gs-shop-body .gs-mobile-bottomnav__item {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 2px;
		flex: 1;
		height: 100%;
		text-decoration: none;
		color: #616268;
		font-size: 10px;
		font-weight: 600;
		padding: 4px 0;
		transition: color 0.15s;
	}
	.gs-shop-body .gs-mobile-bottomnav__item:active,
	.gs-shop-body .gs-mobile-bottomnav__item:hover {
		color: var(--gs-primary);
	}
	.gs-shop-body .gs-mobile-bottomnav__icon {
		width: 24px;
		height: 24px;
		flex-shrink: 0;
	}
	.gs-shop-body .gs-mobile-bottomnav__label {
		font-size: 10px;
		line-height: 1;
	}
	.gs-shop-body .gs-mobile-bottomnav__item--bell {
		position: relative;
	}
	.gs-shop-body .gs-mobile-bottomnav__item--bell .gs-cart-badge {
		position: absolute;
		top: 2px;
		left: 50%;
		margin-left: 6px;
		min-width: 16px;
		height: 16px;
		padding: 0 4px;
		border-radius: 8px;
		font-size: 9px;
		z-index: 2;
	}
	
	.gs-shop-body .gs-app-wrap {
		padding-bottom: 56px;
	}
}


@media (max-width: 1024px) {
	.gs-shop-body .gs-topbar {
		display: none;
	}
}


@media (max-width: 1024px) {
	.gs-shop-body .gs-header {
		padding: 8px 12px;
	}
	.gs-shop-body .gs-header__main {
		flex-wrap: nowrap;
		gap: 8px;
		align-items: center;
	}
	.gs-shop-body .gs-header__logo {
		font-size: 18px;
		flex-shrink: 0;
		order: 1;
	}
	.gs-shop-body .gs-header__logo-img {
		max-height: 32px;
		max-width: 120px;
	}
	
	.gs-shop-body .gs-header__search-wrap {
		order: 2;
		flex: 1 1 auto;
		min-width: 0;
	}
	.gs-shop-body .gs-search-box {
		height: 40px;
	}
	.gs-shop-body .gs-search-input {
		font-size: 16px;
		padding: 0 10px;
	}
	.gs-shop-body .gs-search-input::placeholder {
		font-size: 12px;
	}
	.gs-shop-body .gs-search-btn {
		padding: 6px 10px;
		min-width: 32px;
		min-height: 32px;
	}
	.gs-shop-body .gs-search-btn svg {
		width: 18px !important;
		height: 18px !important;
	}
	
	.gs-shop-body .gs-header__actions {
		order: 3;
		gap: 4px;
		flex-shrink: 0;
	}
	
	.gs-shop-body .gs-header__action--login,
	.gs-shop-body .gs-header__action--icon:not(.gs-header__action--cart) {
		display: none;
	}
	.gs-shop-body .gs-header__action-label {
		display: none;
	}
	.gs-shop-body .gs-header__action {
		flex-direction: column;
		gap: 2px;
	}
	.gs-shop-body .gs-header__action-icon {
		width: 24px;
		height: 24px;
	}
}

@media (max-width: 480px) {
	.gs-shop-body .gs-header__main {
		gap: 6px;
	}
	.gs-shop-body .gs-header__logo {
		font-size: 16px;
	}
	.gs-shop-body .gs-header__action-icon {
		width: 22px;
		height: 22px;
	}
	.gs-shop-body .gs-search-input {
		font-size: 16px;
		padding: 0 8px;
	}
	.gs-shop-body .gs-search-input::placeholder {
		font-size: 11px;
	}
	.gs-shop-body .gs-search-btn {
		padding: 6px 8px;
		min-width: 28px;
		min-height: 28px;
	}
	.gs-shop-body .gs-search-btn svg {
		width: 16px !important;
		height: 16px !important;
	}
}



@media (max-width: 1024px) {
	.gs-shop-body .gs-catnav {
		display: none;
	}
}


@media (max-width: 1024px) {

	.gs-shop-body .gs-mega-backdrop {
		z-index: 999;
	}
	.gs-shop-body .gs-mega-backdrop--active {
		background: rgba(0, 0, 0, 0.5);
	}

	/* ===== Two-pane master-detail layout (Digikala-style) ===== */
	.gs-shop-body .gs-mega-menu {
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		left: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		height: 100dvh !important;
		max-height: 100dvh !important;
		flex-direction: column !important;
		border-radius: 0 !important;
		box-shadow: none !important;
		z-index: 1001 !important;
		transform: translateY(100%) !important;
		transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
		opacity: 1 !important;
		visibility: visible !important;
		overflow: hidden !important;
	}
	.gs-shop-body .gs-mega-menu--open {
		transform: translateY(0) !important;
	}

	/* Header bar */
	.gs-shop-body .gs-mega-menu__mobile-header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 7px 13px 6px 5px;
		background: var(--gs-primary);
		color: #fff;
		font-size: 13px;
		font-weight: 800;
		flex-shrink: 0;
		z-index: 2;
	}
	.gs-shop-body .gs-mega-menu__mobile-close {
		background: none;
		border: none;
		color: #fff;
		cursor: pointer;
		padding: 4px;
		display: flex;
		align-items: center;
	}
	.gs-shop-body .gs-mega-menu__mobile-close svg {
		width: 22px;
		height: 22px;
	}

	/* Quick links row (شگفت‌انگیزها, سوپرمارکت, …) — mobile only */
	.gs-shop-body .gs-mega-menu__quick-links {
		display: flex;
		gap: 8px;
		padding: 10px 12px;
		overflow-x: auto;
		overflow-y: hidden;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
		background: var(--gs-bg, #fff);
		border-bottom: 1px solid var(--gs-border, #f0f0f1);
		flex-shrink: 0;
	}
	.gs-shop-body .gs-mega-menu__quick-links::-webkit-scrollbar {
		display: none;
	}
	.gs-shop-body .gs-mega-menu__quick-link {
		flex-shrink: 0;
		white-space: nowrap;
		padding: 6px 14px;
		font-size: 12px;
		font-weight: 700;
		color: var(--gs-text, #1a1a1a);
		background: var(--gs-bg-hover, #f7f7f8);
		border-radius: 8px;
		text-decoration: none;
		transition: background 0.15s ease, color 0.15s ease;
	}
	.gs-shop-body .gs-mega-menu__quick-link:hover,
	.gs-shop-body .gs-mega-menu__quick-link:active {
		background: var(--gs-primary, #ef4056);
		color: #fff;
	}

	/* Two-pane container: rail (right) + detail (left) */
	.gs-shop-body .gs-mega-menu__body {
		flex: 1 1 auto;
		display: flex;
		flex-direction: row;
		overflow: hidden;
		min-height: 0;
	}
	.gs-shop-body .gs-mega-menu__main-list {
		flex: 0 0 88px;
		width: 88px;
		max-height: none;
		overflow-y: auto;
		overflow-x: hidden;
		overscroll-behavior: contain;
		border-left: 1px solid var(--gs-border);
		border-bottom: none;
		background: var(--gs-bg-alt);
		-webkit-overflow-scrolling: touch;
		padding-bottom: env(safe-area-inset-bottom);
	}

	/* Rail items: icon on top, label below (column) */
	.gs-shop-body .gs-mega-menu__main-item {
		cursor: pointer;
		opacity: 1 !important;
		transform: none !important;
	}
	.gs-shop-body .gs-mega-menu__main-item--active {
		background: var(--gs-bg-card);
	}
	.gs-shop-body .gs-mega-menu__main-link {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 4px;
		height: auto;
		min-height: 76px;
		font-size: 10px;
		font-weight: 600;
		padding: 10px 4px;
		text-align: center;
		line-height: 1.3;
		color: var(--gs-text);
		border-bottom: 1px solid var(--gs-border);
		white-space: normal !important;
	}
	.gs-shop-body .gs-mega-menu__main-item--active .gs-mega-menu__main-link {
		color: var(--gs-primary);
		font-weight: 700;
	}
	.gs-shop-body .gs-mega-menu__main-icon {
		width: 28px;
		font-size: 22px;
		text-align: center;
	}
	.gs-shop-body .gs-mega-menu__main-label {
		white-space: normal !important;
		overflow: visible !important;
		text-overflow: clip !important;
		overflow-wrap: anywhere;
		word-break: normal;
		line-height: 1.35;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		line-clamp: 2;
		overflow: hidden;
	}
	.gs-shop-body .gs-mega-menu__main-arrow {
		display: none;
	}

	/* Detail pane: fills remaining width, always visible */
	.gs-shop-body .gs-mega-menu__sub-container {
		position: relative;
		top: auto;
		right: auto;
		left: auto;
		bottom: auto;
		flex: 1 1 auto;
		min-width: 0;
		padding: 0;
		overflow-y: auto;
		overscroll-behavior: contain;
		background: var(--gs-bg-card);
		transform: none;
		transition: none;
		z-index: auto;
		-webkit-overflow-scrolling: touch;
		padding-bottom: env(safe-area-inset-bottom);
	}
	.gs-shop-body .gs-mega-menu__sub-container--open {
		transform: none;
	}

	/* Hide the sub-header (back button) — not needed in two-pane */
	.gs-shop-body .gs-mega-menu__sub-header {
		display: none;
	}

	/* Sub-panel: single column list — NO height:100%, NO flex stretch */
	.gs-shop-body .gs-mega-menu__sub-panel {
		flex-direction: column;
		padding: 8px 16px 16px;
		display: none;
		height: auto !important;
	}
	.gs-shop-body .gs-mega-menu__sub-panel--active {
		display: flex;
	}
	.gs-shop-body .gs-mega-menu__sub-col {
		flex: 0 0 auto !important;
		max-width: 100%;
		padding: 0;
		margin-bottom: 0;
	}
	.gs-shop-body .gs-mega-menu__sub-link {
		font-size: 13px;
		padding: 12px 0;
		line-height: 1.5;
		border-bottom: 1px solid var(--gs-border);
		opacity: 1 !important;
		transform: none !important;
	}
	/* Header items: bold but NO red border — Digikala-style flat list */
	.gs-shop-body .gs-mega-menu__sub-link--header {
		font-size: 13px;
		font-weight: 700;
		padding: 12px 0;
		border-bottom: 1px solid var(--gs-border);
		margin-bottom: 0;
		color: var(--gs-text);
	}
	.gs-shop-body .gs-mega-menu__sub-link--all {
		font-size: 13px;
		font-weight: 700;
		color: var(--gs-secondary);
		padding: 14px 0;
		border-bottom: 1px solid var(--gs-border-dark);
	}
}

/* ===== Desktop mega-menu: body wrapper is transparent — children behave as direct children of mega-menu ===== */
@media (min-width: 1025px) {
	.gs-shop-body .gs-mega-menu__body {
		display: contents;
	}
}

@media (max-width: 480px) {
	.gs-shop-body .gs-mega-menu__main-list {
		flex: 0 0 76px;
		width: 76px;
	}
	.gs-shop-body .gs-mega-menu__main-link {
		min-height: 68px;
		font-size: 9px;
	}
	.gs-shop-body .gs-mega-menu__main-icon {
		width: 24px;
		font-size: 20px;
	}
	.gs-shop-body .gs-mega-menu__sub-link {
		font-size: 12px;
		padding: 10px 0;
	}
	.gs-shop-body .gs-mega-menu__sub-link--header {
		font-size: 13px;
	}
	.gs-shop-body .gs-mega-menu__sub-panel {
		padding: 8px 12px 16px;
	}
}


@media (max-width: 1024px) {
	.gs-shop-body .gs-container {
		max-width: 100%;
		padding-left: 10px;
		padding-right: 10px;
	}
}
@media (max-width: 480px) {
	.gs-shop-body .gs-container {
		padding-left: 12px;
		padding-right:12px;
	}
}




.gs-shop-body {
	overflow-x: clip;
	max-width: 100vw;
}
.gs-shop-body .gs-topbar,
.gs-shop-body main {
	max-width: 100%;
	overflow-x: clip;
}




.gs-shop-body .gs-below-slider-section {
	margin-top: 0;
	margin-bottom: 16px;
}
.gs-shop-body .gs-below-slider-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	justify-content: space-between;
	padding: 16px 12px;
	background: transparent;
	border-radius: 0;
	box-shadow: none;
}
.gs-shop-body .gs-below-slider-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	text-decoration: none;
	color: var(--gs-text);
	transition: transform 0.15s;
	width: 72px;
	flex-shrink: 0;
}
.gs-shop-body .gs-below-slider-item:hover {
	transform: translateY(-2px);
}
.gs-shop-body .gs-below-slider-item__icon {
	width: 52px;
	height: 52px;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}
.gs-shop-body .gs-below-slider-item__svg {
	width: 28px;
	height: 28px;
	color: var(--gs-text);
}
.gs-shop-body .gs-below-slider-item__emoji {
	font-size: 24px;
	line-height: 1;
}
.gs-shop-body .gs-below-slider-item__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.gs-shop-body .gs-below-slider-item__label {
	font-size: 11px;
	font-weight: 600;
	text-align: center;
	line-height: 1.3;
	max-width: 72px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	word-break: break-word;
}
.gs-shop-body .gs-below-slider-item--more {
	background: none;
	border: none;
	cursor: pointer;
	font-family: inherit;
}
.gs-shop-body .gs-below-slider-item--more .gs-below-slider-item__icon {
	background: var(--gs-border);
	color: var(--gs-text-light);
}
.gs-shop-body .gs-below-slider-item--more svg {
	width: 24px;
	height: 24px;
}


.gs-shop-body .gs-wide-links-overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.5);
	z-index: 2000;
	align-items: center;
	justify-content: center;
	padding: 20px;
}
.gs-shop-body .gs-wide-links-overlay--active {
	display: flex;
}
.gs-shop-body .gs-wide-links-modal {
	background: var(--gs-bg-card);
	border-radius: 12px;
	max-width: 900px;
	width: 100%;
	max-height: 80vh;
	overflow-y: auto;
	padding: 20px;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
}
.gs-shop-body .gs-wide-links-modal__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 16px;
}
.gs-shop-body .gs-wide-links-modal__header h3 {
	font-size: 18px;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0;
}
.gs-shop-body .gs-wide-links-modal__close {
	background: none;
	border: none;
	cursor: pointer;
	padding: 4px;
	color: var(--gs-text-light);
	display: flex;
	align-items: center;
	justify-content: center;
}
.gs-shop-body .gs-wide-links-modal__close svg {
	width: 24px;
	height: 24px;
}
.gs-shop-body .gs-wide-links-modal__close:hover {
	color: var(--gs-primary);
}
.gs-shop-body .gs-wide-links-modal__body {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
}
.gs-shop-body .gs-wide-link {
	display: block;
	border-radius: 8px;
	overflow: hidden;
	transition: opacity 0.15s;
}
.gs-shop-body .gs-wide-link:hover {
	opacity: 0.85;
}
.gs-shop-body .gs-wide-link__img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 8px;
}


@media (max-width: 1024px) {
	.gs-shop-body .gs-below-slider-grid {
		gap: 4px;
		padding: 8px;
		overflow-x: auto;
		flex-wrap: nowrap;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
		justify-content: flex-start;
	}
	.gs-shop-body .gs-below-slider-grid::-webkit-scrollbar {
		display: none;
	}
	.gs-shop-body .gs-below-slider-item {
		width: calc((100% - 12px) / 4);
		flex-shrink: 0;
		max-width: 90px;
	}
	.gs-shop-body .gs-below-slider-item__icon {
		width: 48px;
		height: 48px;
	}
	.gs-shop-body .gs-below-slider-item__emoji {
		font-size: 22px;
	}
	.gs-shop-body .gs-below-slider-item__label {
		font-size: 10px;
		max-width: 100%;
	}
}

@media (max-width: 480px) {
	.gs-shop-body .gs-below-slider-item {
		width: calc((100% - 9px) / 4);
		max-width: 80px;
	}
	.gs-shop-body .gs-below-slider-item__icon {
		width: 44px;
		height: 44px;
		border-radius: 10px;
	}
	.gs-shop-body .gs-below-slider-item__emoji {
		font-size: 20px;
	}
	.gs-shop-body .gs-below-slider-item__label {
		font-size: 10px;
		max-width: 100%;
	}
	.gs-shop-body .gs-wide-links-modal__body {
		grid-template-columns: 1fr;
	}
}


.gs-shop-body .gs-flash-sale-section {
	margin-bottom: 16px;
}
.gs-shop-body .gs-flash-sale {
	display: flex;
	background: var(--gs-primary);
	color: var(--gs-text-on-primary);
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);

	/* ===== Aura (daisyUI-style rotating light border) ===== */
	--gs-aura-angle: 0deg;
	--gs-aura-size: 4px;
	--gs-aura-speed: 8s;
	--gs-aura-color: var(--gs-accent, #f08000);
	position: relative;
}
/* Mobile: thinner border, faster spin (default style) */
@media (max-width: 767px) {
	.gs-shop-body .gs-flash-sale {
		--gs-aura-size: 2px;
		--gs-aura-speed: 4s;
	}
}
/* Rotating light border — small arc, like a comet traveling around the edge */
.gs-shop-body .gs-flash-sale.gs-aura::before,
.gs-shop-body .gs-mini-buy-box__inner.gs-aura::before {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	padding: var(--gs-aura-size);
	background: conic-gradient(
		from var(--gs-aura-angle),
		transparent 260deg,
		var(--gs-aura-color) 320deg,
		transparent 360deg
	);
	-webkit-mask:
		linear-gradient(#000 0 0) content-box,
		linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	opacity: 1;
	pointer-events: none;
	z-index: 3;
	animation: gs-aura-spin var(--gs-aura-speed) linear infinite;
}
/* Soft glow behind the border */
.gs-shop-body .gs-flash-sale.gs-aura::after,
.gs-shop-body .gs-mini-buy-box__inner.gs-aura::after {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	padding: var(--gs-aura-size);
	background: conic-gradient(
		from var(--gs-aura-angle),
		transparent 260deg,
		var(--gs-aura-color) 320deg,
		transparent 360deg
	);
	-webkit-mask:
		linear-gradient(#000 0 0) content-box,
		linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	filter: blur(4px);
	opacity: 0.6;
	pointer-events: none;
	z-index: 3;
	animation: gs-aura-spin var(--gs-aura-speed) linear infinite;
}
@property --gs-aura-angle {
	syntax: '<angle>';
	initial-value: 0deg;
	inherits: false;
}
@keyframes gs-aura-spin {
	to { --gs-aura-angle: 360deg; }
}
/* Fallback for browsers without @property support */
@supports not (background: conic-gradient(from 0deg, red, blue)) {
	.gs-shop-body .gs-flash-sale.gs-aura::before,
	.gs-shop-body .gs-flash-sale.gs-aura::after,
	.gs-shop-body .gs-mini-buy-box__inner.gs-aura::before,
	.gs-shop-body .gs-mini-buy-box__inner.gs-aura::after {
		animation: none;
		background: linear-gradient(90deg, transparent, var(--gs-aura-color), transparent);
	}
}
/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
	.gs-shop-body .gs-flash-sale.gs-aura::before,
	.gs-shop-body .gs-flash-sale.gs-aura::after,
	.gs-shop-body .gs-mini-buy-box__inner.gs-aura::before,
	.gs-shop-body .gs-mini-buy-box__inner.gs-aura::after {
		animation: none;
	}
}

/* --- Sidebar (desktop: vertical left, mobile: horizontal header) --- */
.gs-shop-body .gs-flash-sale__sidebar {
	flex: 0 0 170px;
	background: transparent;
	color: #fff;
	padding: 20px 16px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	text-align: center;
	gap: 16px;
}
.gs-shop-body .gs-flash-sale__brand {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
}
.gs-shop-body .gs-flash-sale__icon {
	width: 56px;
	height: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.gs-shop-body .gs-flash-sale__icon svg {
	width: 48px;
	height: 48px;
	color: #fff;
}
.gs-shop-body .gs-flash-sale__title {
	font-size: 15px;
	font-weight: 900;
	line-height: 1.4;
	margin: 0;
	color: #fff;
}
.gs-shop-body .gs-flash-sale__timer-wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
}
.gs-shop-body .gs-flash-sale__timer-label {
	font-size: 11px;
	opacity: 0.9;
}
.gs-shop-body .gs-flash-sale__timer {
	display: flex;
	align-items: center;
	gap: 3px;
	font-family: 'IRANYekan', 'Vazirmatn', monospace;
	direction: ltr;
}
.gs-shop-body .gs-flash-sale__timer-box {
	background: var(--gs-bg-card);
	color: var(--gs-text);
	font-size: 16px;
	font-weight: 700;
	padding: 3px 6px;
	border-radius: 4px;
	min-width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}
.gs-shop-body .gs-flash-sale__timer-sep {
	font-size: 16px;
	font-weight: 700;
	color: #fff;
}
.gs-shop-body .gs-flash-sale__view-all {
	display: flex;
	align-items: center;
	gap: 4px;
	font-size: 12px;
	color: #fff;
	background: rgba(255, 255, 255, 0.15);
	text-decoration: none;
	border: 1px solid rgba(255, 255, 255, 0.3);
	padding: 6px 14px;
	border-radius: 8px;
	font-weight: 600;
	transition: background 0.2s;
}
.gs-shop-body .gs-flash-sale__view-all:hover {
	background: rgba(255, 255, 255, 0.25);
}
.gs-shop-body .gs-flash-sale__view-all svg {
	width: 16px;
	height: 16px;
}


/* --- Carousel --- */
.gs-shop-body .gs-flash-sale__carousel {
	flex: 1;
	position: relative;
	display: flex;
	align-items: stretch;
	overflow: hidden;
	min-width: 0;
	padding: 16px 0;
}
.gs-shop-body .gs-flash-sale__viewport {
	overflow: hidden;
	flex: 1;
	min-width: 0;
	box-sizing: border-box;
}
.gs-shop-body .gs-flash-sale__track {
	display: flex;
	gap: 4px;
	transition: transform 0.4s ease;
	will-change: transform;
	padding: 0;
}


/* --- Product Card (Digikala-style: fixed width, border, white bg) --- */
.gs-shop-body .gs-flash-sale__card {
	flex: 0 0 168px;
	min-width: 168px;
	max-width: 168px;
	display: flex;
	flex-direction: column;
	background: var(--gs-bg-card);
	text-decoration: none;
	color: inherit;
	border-radius: 0;
	overflow: hidden;
	transition: box-shadow 0.2s;
	box-sizing: border-box;
}
.gs-shop-body .gs-flash-sale__card:first-child {
	border-radius: 0 0px 0px 0px; /* top-right flat in RTL */
}
.gs-shop-body .gs-flash-sale__card:hover {
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
	z-index: 1;
}
.gs-shop-body .gs-flash-sale__card-image {
	width: 100%;
	aspect-ratio: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 8px;
	overflow: hidden;
	position: relative;
	background: var(--gs-bg-alt);
}
.gs-shop-body .gs-flash-sale__card-img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}
.gs-shop-body .gs-flash-sale__card-placeholder {
	font-size: 48px;
	opacity: 0.3;
}
.gs-shop-body .gs-flash-sale__card-info {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 4px 8px 8px;
	flex: 1;
}
.gs-shop-body .gs-flash-sale__card-title {
	font-size: 12px;
	font-weight: 500;
	line-height: 1.5;
	color: var(--gs-text);
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 36px;
}
.gs-shop-body .gs-flash-sale__card-price {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 4px;
	margin-top: auto;
}
.gs-shop-body .gs-flash-sale__price-top {
	display: flex;
	align-items: center;
	gap: 6px;
}
.gs-shop-body .gs-flash-sale__discount-badge {
	background: var(--gs-discount);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	padding: 2px 6px;
	border-radius: 4px;
	line-height: 1.4;
	flex-shrink: 0;
}
.gs-shop-body .gs-flash-sale__price-old {
	font-size: 11px;
	font-weight: 400;
	color: var(--gs-text-muted);
	text-decoration: line-through;
	line-height: 1.4;
}
.gs-shop-body .gs-flash-sale__price-bottom {
	display: flex;
	align-items: center;
	gap: 2px;
}
.gs-shop-body .gs-flash-sale__price-new {
	font-size: 16px;
	font-weight: 800;
	color: var(--gs-price);
	line-height: 1.3;
}
.gs-shop-body .gs-flash-sale__price-new .woocommerce-Price-currencySymbol {
	font-size: 11px;
	font-weight: 500;
	margin-right: 2px;
}


/* --- View All Card (last item in track) --- */
.gs-shop-body .gs-flash-sale__view-card {
	flex: 0 0 140px;
	min-width: 140px;
	max-width: 140px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: var(--gs-bg-card);
	text-decoration: none;
	color: var(--gs-text);
	border-radius: 0px 0 0px 0px; /* top-left flat in RTL */
	transition: background 0.2s;
}
.gs-shop-body .gs-flash-sale__view-card:hover {
	background: var(--gs-bg-alt);
}
.gs-shop-body .gs-flash-sale__view-card-icon {
	width: 48px;
	height: 48px;
	border: 2px solid var(--gs-text);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.gs-shop-body .gs-flash-sale__view-card-icon svg {
	width: 24px;
	height: 24px;
	color: var(--gs-text);
}
.gs-shop-body .gs-flash-sale__view-card-text {
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-text);
}


/* --- Nav Buttons --- */
.gs-shop-body .gs-flash-sale__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--gs-bg-card);
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	box-shadow: 0 1px 6px rgba(0, 0, 0, 0.15);
	transition: all 0.2s;
}
.gs-shop-body .gs-flash-sale__nav:hover {
	background: var(--gs-border);
}
.gs-shop-body .gs-flash-sale__nav[style*="pointer-events: none"],
.gs-shop-body .gs-flash-sale__nav--disabled {
	opacity: 0.3;
	cursor: default;
}
.gs-shop-body .gs-flash-sale__nav svg {
	width: 20px;
	height: 20px;
	color: var(--gs-text);
}
.gs-shop-body .gs-flash-sale__nav--prev {
	right: 4px;
}
.gs-shop-body .gs-flash-sale__nav--next {
	left: 4px;
}


.gs-shop-body .gs-special-offers-section {
	margin-bottom: 16px;
}
.gs-shop-body .gs-special-offers {
	background: var(--gs-bg-card);
	border-radius: var(--gs-radius);
	border-width: 1px;
	padding: 16px;
	box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 12px rgba(0,0,0,0.03);
}
.gs-shop-body .gs-special-offers__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 16px;
}
.gs-shop-body .gs-special-offers__title,
.gs-shop-body .gs-section-title {
	font-size: 16px;
	font-weight: 900;
	color: var(--gs-text, var(--gs-text));
	margin: 0;
}
.gs-shop-body .gs-special-offers__more {
	font-size: 12px;
	/*color: var(--gs-secondary, var(--gs-secondary));*/
	text-decoration: none;
}
.gs-shop-body .gs-special-offers__more:hover {
	text-decoration: underline;
}
.gs-shop-body .gs-special-offers-carousel {
	position: relative;
	display: flex;
	align-items: center;
}
.gs-shop-body .gs-special-offers-carousel__viewport {
	overflow: hidden;
	flex: 1;
	padding: 2px;
	margin: -2px;
}
.gs-shop-body .gs-special-offers-carousel__track {
	display: flex;
	gap: 12px;
	transition: transform 0.4s ease;
	will-change: transform;
}
.gs-shop-body .gs-special-offers-carousel__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 5;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border-dark);
	box-shadow: 0 2px 8px rgba(0,0,0,0.08);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: var(--gs-text);
	transition: all 0.2s;
	padding: 0;
}
.gs-shop-body .gs-special-offers-carousel__nav:hover {
	background: var(--gs-border);
	box-shadow: 0 4px 12px rgba(0,0,0,0.12);
}
.gs-shop-body .gs-special-offers-carousel__nav svg {
	width: 18px;
	height: 18px;
}
.gs-shop-body .gs-special-offers-carousel__nav--prev {
	right: -10px;
}
.gs-shop-body .gs-special-offers-carousel__nav--next {
	left: -10px;
}
.gs-shop-body .gs-special-offer-cat {
	flex: 0 0 calc((100% - 8 * 12px) / 9);
	max-width: calc((100% - 8 * 12px) / 9);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	text-decoration: none;
	color: inherit;
	padding: 12px 8px;
	border-radius: 8px;
	transition: background 0.2s;
	box-sizing: border-box;
}
.gs-shop-body .gs-special-offer-cat:hover {
	background: var(--gs-bg, var(--gs-border));
}
.gs-shop-body .gs-special-offer-cat:hover .gs-special-offer-cat__img {
	transform: scale(1.05);
}
.gs-shop-body .gs-special-offer-cat:hover .gs-special-offer-cat__name {
	color: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-special-offer-cat__img {
	width: 100%;
	max-width: 120px;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: 12px;
	background: var(--gs-bg-card, #fff);
	/*border: 1px solid var(--gs-border, #f0f0f1);*/
	transition: transform 0.2s ease;
}
.gs-shop-body .gs-special-offer-cat__placeholder {
	width: 100%;
	max-width: 120px;
	aspect-ratio: 1 / 1;
	border-radius: 12px;
	background: var(--gs-bg, var(--gs-border));
	display: flex;
	align-items: center;
	justify-content: center;
}
.gs-shop-body .gs-special-offer-cat__placeholder svg {
	width: 32px;
	height: 32px;
	color: var(--gs-text-light, var(--gs-text-light));
}
.gs-shop-body .gs-special-offer-cat__name {
	font-size: 11px;
	font-weight: 600;
	color: var(--gs-text, var(--gs-text));
	text-align: center;
	line-height: 1.4;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* ===== Special Offers Responsive ===== */
@media (max-width: 1280px) {
	.gs-shop-body .gs-special-offer-cat {
		flex: 0 0 calc((100% - 6 * 12px) / 7);
		max-width: calc((100% - 6 * 12px) / 7);
	}
}
@media (max-width: 1024px) {
	.gs-shop-body .gs-special-offer-cat {
		flex: 0 0 calc((100% - 5 * 12px) / 6);
		max-width: calc((100% - 5 * 12px) / 6);
	}
}
@media (max-width: 768px) {
	.gs-shop-body .gs-special-offer-cat {
		flex: 0 0 calc((100% - 4 * 12px) / 5);
		max-width: calc((100% - 4 * 12px) / 5);
	}
	.gs-shop-body .gs-special-offer-cat__img,
	.gs-shop-body .gs-special-offer-cat__placeholder {
		max-width: 80px;
	}
	.gs-shop-body .gs-special-offers-carousel__nav { display: none; }
	/* Mobile: native horizontal scroll */
	.gs-shop-body .gs-special-offers-carousel__viewport {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	.gs-shop-body .gs-special-offers-carousel__viewport::-webkit-scrollbar {
		display: none;
	}
	.gs-shop-body .gs-special-offers-carousel__track {
		transform: none !important;
		transition: none !important;
	}
}
@media (max-width: 480px) {
	.gs-shop-body .gs-special-offer-cat {
		flex: 0 0 calc((100% - 3 * 12px) / 4);
		max-width: calc((100% - 3 * 12px) / 4);
	}
	.gs-shop-body .gs-special-offer-cat__img,
	.gs-shop-body .gs-special-offer-cat__placeholder {
		max-width: 68px;
	}
	.gs-shop-body .gs-special-offer-cat__name {
		font-size: 10px;
	}
	.gs-shop-body .gs-special-offers-carousel__nav { display: none; }
	/* On mobile, use native scroll */
	.gs-shop-body .gs-special-offers-carousel__viewport {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	.gs-shop-body .gs-special-offers-carousel__viewport::-webkit-scrollbar {
		display: none;
	}
	.gs-shop-body .gs-special-offers-carousel__track {
		transition: none;
	}
}


/* ===== Banners 2 & 3 — Base styles (layout is dynamic via PHP) ===== */
.gs-shop-body .gs-banners-2-section,
.gs-shop-body .gs-banners-3-section {
	margin-bottom: 16px;
}
.gs-shop-body .gs-banners-2-grid,
.gs-shop-body .gs-banners-3-grid {
	display: grid;
	gap: 12px;
}
.gs-shop-body .gs-banners-2-item,
.gs-shop-body .gs-banners-3-item {
	display: block;
	border-radius: 8px;
	overflow: hidden;
	transition: box-shadow 0.2s, transform 0.2s;
}
.gs-shop-body .gs-banners-2-item:hover,
.gs-shop-body .gs-banners-3-item:hover {
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
	transform: translateY(-1px);
}
.gs-shop-body .gs-banners-2-img,
.gs-shop-body .gs-banners-3-img {
	width: 100%;
	height: 100%;
	display: block;
	border-radius: 8px;
}
/* Grid wrapper for slider arrows */
.gs-shop-body .gs-banners-2-grid-wrapper,
.gs-shop-body .gs-banners-3-grid-wrapper {
	position: relative;
}

/* ===== Flash Sale Responsive ===== */
@media (max-width: 1280px) {
	.gs-shop-body .gs-flash-sale__card {
		flex: 0 0 152px;
		min-width: 152px;
		max-width: 152px;
	}
}
@media (max-width: 1024px) {
	.gs-shop-body .gs-flash-sale__sidebar {
		flex: 0 0 140px;
		padding: 16px 12px;
	}
	.gs-shop-body .gs-flash-sale__title {
		font-size: 13px;
	}
	.gs-shop-body .gs-flash-sale__card {
		flex: 0 0 140px;
		min-width: 140px;
		max-width: 140px;
	}
}
@media (max-width: 768px) {
	.gs-shop-body .gs-flash-sale__sidebar {
		flex: 0 0 120px;
		padding: 12px 8px;
		gap: 12px;
	}
	.gs-shop-body .gs-flash-sale__icon {
		width: 40px;
		height: 40px;
	}
	.gs-shop-body .gs-flash-sale__icon svg {
		width: 32px;
		height: 32px;
	}
	.gs-shop-body .gs-flash-sale__title {
		font-size: 11px;
	}
	.gs-shop-body .gs-flash-sale__timer-box {
		font-size: 14px;
		min-width: 24px;
		height: 24px;
		padding: 2px 4px;
	}
	.gs-shop-body .gs-flash-sale__view-all {
		font-size: 10px;
		padding: 4px 10px;
	}
	.gs-shop-body .gs-flash-sale__card {
		flex: 0 0 130px;
		min-width: 130px;
		max-width: 130px;
	}
	.gs-shop-body .gs-flash-sale__card-title {
		font-size: 11px;
		min-height: 32px;
	}
	.gs-shop-body .gs-flash-sale__price-new {
		font-size: 14px;
	}
	.gs-shop-body .gs-flash-sale__price-old {
		font-size: 10px;
	}
	.gs-shop-body .gs-flash-sale__discount-badge {
		font-size: 10px;
		padding: 2px 5px;
	}
	.gs-shop-body .gs-flash-sale__view-card {
		flex: 0 0 120px;
		min-width: 120px;
		max-width: 120px;
	}
}

/* ===== Mobile (≤768px): Digikala-style full-width horizontal scroll ===== */
@media (max-width: 768px) {
	.gs-shop-body .gs-flash-sale {
		flex-direction: column;
		border-radius: 10px;
	}
	/* Sidebar becomes horizontal header */
	.gs-shop-body .gs-flash-sale__sidebar {
		flex: 0 0 auto;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		padding: 12px 16px;
		gap: 8px;
	}
	.gs-shop-body .gs-flash-sale__brand {
		flex-direction: row;
		gap: 8px;
	}
	.gs-shop-body .gs-flash-sale__icon {
		width: 28px;
		height: 28px;
	}
	.gs-shop-body .gs-flash-sale__icon svg {
		width: 24px;
		height: 24px;
	}
	.gs-shop-body .gs-flash-sale__title {
		font-size: 11px;
	}
	.gs-shop-body .gs-flash-sale__timer-wrap {
		flex-direction: row;
		gap: 4px;
	}
	.gs-shop-body .gs-flash-sale__timer-label {
		display: none;
	}
	.gs-shop-body .gs-flash-sale__timer-box {
		font-size: 12px;
		min-width: 24px;
		height: 24px;
		padding: 2px 3px;
		border-radius: 3px;
	}
	.gs-shop-body .gs-flash-sale__timer-sep {
		font-size: 12px;
	}
	/* "همه" link in header (not button) */
	.gs-shop-body .gs-flash-sale__view-all {
		font-size: 11px;
		padding: 4px 8px;
		border: none;
		background: transparent;
	}
	.gs-shop-body .gs-flash-sale__view-all:hover {
		background: transparent;
		opacity: 0.8;
	}

	/* --- Native horizontal scroll, partial cards visible --- */
	.gs-shop-body .gs-flash-sale__carousel {
		overflow: visible;
		padding: 0;
	}
	.gs-shop-body .gs-flash-sale__viewport {
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		-ms-overflow-style: none;
	}
	.gs-shop-body .gs-flash-sale__viewport::-webkit-scrollbar {
		display: none;
	}
	.gs-shop-body .gs-flash-sale__viewport::-webkit-scrollbar-thumb {
		display: none;
	}
	.gs-shop-body .gs-flash-sale__track {
		transform: none !important;
		transition: none !important;
		direction: rtl;
		gap: 2px;
	}
	/* Card: ~130px, show partial next card */
	.gs-shop-body .gs-flash-sale__card {
		flex: 0 0 130px;
		min-width: 130px;
		max-width: 130px;
	}
	.gs-shop-body .gs-flash-sale__card:first-child {
		border-radius: 0 0px 0px 0px; /* top-right flat in RTL */
	}
	.gs-shop-body .gs-flash-sale__card-image {
		padding: 6px;
	}
	.gs-shop-body .gs-flash-sale__card-info {
		padding: 4px 6px 6px;
	}
	.gs-shop-body .gs-flash-sale__card-title {
		font-size: 10px;
		min-height: 28px;
		line-height: 1.4;
	}
	.gs-shop-body .gs-flash-sale__price-new {
		font-size: 13px;
	}
	.gs-shop-body .gs-flash-sale__price-new .woocommerce-Price-currencySymbol {
		font-size: 9px;
	}
	.gs-shop-body .gs-flash-sale__price-old {
		font-size: 10px;
	}
	.gs-shop-body .gs-flash-sale__discount-badge {
		font-size: 10px;
		padding: 1px 4px;
	}
	.gs-shop-body .gs-flash-sale__view-card {
		flex: 0 0 120px;
		min-width: 120px;
		max-width: 120px;
		border-radius: 0px 0 0px 0px; /* top-left flat in RTL */
	}
	.gs-shop-body .gs-flash-sale__view-card-icon {
		width: 40px;
		height: 40px;
	}
	.gs-shop-body .gs-flash-sale__view-card-icon svg {
		width: 20px;
		height: 20px;
	}
	.gs-shop-body .gs-flash-sale__view-card-text {
		font-size: 11px;
	}
	.gs-shop-body .gs-flash-sale__nav {
		display: none;
	}
}


.gs-shop-body .gs-footer {
	background: var(--gs-bg-card);
	border-top: 1px solid var(--gs-border);
	margin-top: 24px;
	padding: 0;
	font-size: 13px;
	color: var(--gs-text);
}

.gs-shop-body .gs-footer__container {
    padding: 12px 20px 0;
    max-width: 1440px;
    margin: 0 auto;
}

.gs-shop-body .gs-footer__top {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 32px;
	padding-bottom: 32px;
}

.gs-shop-body .gs-footer__col {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.gs-shop-body .gs-footer__col-title {
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-text);
	margin: 0 0 4px;
}

.gs-shop-body .gs-footer__link-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.gs-shop-body .gs-footer__link {
	font-size: 12px;
	color: var(--gs-text-light);
	text-decoration: none;
	transition: color 0.2s;
}

.gs-shop-body .gs-footer__link:hover {
	color: var(--gs-primary, var(--gs-primary));
}


.gs-shop-body .gs-footer__col--newsletter {
	gap: 12px;
}

.gs-shop-body .gs-footer__newsletter-desc {
	font-size: 12px;
	color: var(--gs-text-light);
	margin: 0;
	line-height: 1.6;
}

.gs-shop-body .gs-footer__newsletter-form {
	display: flex;
	gap: 8px;
	margin-top: 4px;
}

.gs-shop-body .gs-footer__newsletter-input {
	flex: 1;
	height: 38px;
	padding: 0 12px;
	border: 1px solid #e0e0e1;
	border-radius: 8px;
	font-size: 12px;
	background: var(--gs-bg-alt);
	color: var(--gs-text);
	outline: none;
	transition: border-color 0.2s;
}
.gs-shop-body .gs-footer__newsletter-input::placeholder {
	font-size: 12px;
	color: var(--gs-text-light);
}

.gs-shop-body .gs-footer__newsletter-input:focus {
	border-color: var(--gs-primary, var(--gs-primary));
	background: var(--gs-bg-card);
}

.gs-shop-body .gs-footer__newsletter-btn {
	height: 38px;
	padding: 0 16px;
	border: none;
	border-radius: 8px;
	background: var(--gs-primary, var(--gs-primary));
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	cursor: pointer;
	transition: opacity 0.2s;
}

.gs-shop-body .gs-footer__newsletter-btn:hover {
	opacity: 0.9;
}
.gs-shop-body .gs-footer__newsletter-btn:disabled {
	opacity: 0.6;
	cursor: not-allowed;
}
.gs-shop-body .gs-footer__newsletter-msg {
	display: none;
	margin-top: 8px;
	font-size: 12px;
	font-weight: 600;
	padding: 6px 10px;
	border-radius: 6px;
}
.gs-shop-body .gs-footer__newsletter-msg--success {
	background: rgba(0, 160, 73, 0.1);
	color: var(--gs-green, #00a049);
}
.gs-shop-body .gs-footer__newsletter-msg--error {
	background: rgba(239, 64, 86, 0.1);
	color: var(--gs-primary, #ef4056);
}


.gs-shop-body .gs-footer__social {
	display: flex;
	gap: 8px;
	margin-top: 8px;
}

.gs-shop-body .gs-footer__social-link {
	width: 36px;
	height: 36px;
	border-radius: 8px;
	background: var(--gs-bg-alt);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--gs-text-light);
	transition: all 0.2s;
}

.gs-shop-body .gs-footer__social-link:hover {
	background: var(--gs-primary, var(--gs-primary));
	color: #fff;
}


.gs-shop-body .gs-footer__features {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 10px 0 40px 0px;
	/*border-top: 1px solid var(--gs-border);*/
}

.gs-shop-body .gs-footer__feature {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	text-decoration: none;
	flex: 1;
	min-width: 0;
	padding: 12px 4px;
	transition: opacity 0.2s;
}

.gs-shop-body .gs-footer__feature:hover {
	opacity: 0.7;
}

.gs-shop-body .gs-footer__feature-img {
	width: 80px;
	height: 80px;
	object-fit: contain;
	margin-bottom: 8px;
}

.gs-shop-body .gs-footer__feature-icon {
	width: 120px;
	height: 120px;
	margin-bottom: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--gs-text);
	background: var(--gs-bg-alt);
	border-radius: 50%;
}

.gs-shop-body .gs-footer__feature-text {
	font-size: 12px;
	color: var(--gs-text);
	line-height: 1.5;
}

@media (max-width: 640px) {
	.gs-shop-body .gs-footer__features {
		gap: 12px;
	}
	.gs-shop-body .gs-footer__feature {
		min-width: 100px;
		padding: 8px 4px;
	}
	.gs-shop-body .gs-footer__feature-img,
	.gs-shop-body .gs-footer__feature-icon {
		width: 90px;
		height: 90px;
	}
	.gs-shop-body .gs-footer__feature-text {
		font-size: 11px;
	}
}


.gs-shop-body .gs-footer__badges {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 12px;
	padding: 24px 0;
}

.gs-shop-body .gs-footer__badge {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 14px;
	background: var(--gs-bg-alt, #fafafa);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 12px;
	text-decoration: none;
	transition: all 0.2s;
	min-width: 0;
}

.gs-shop-body .gs-footer__badge:hover {
	background: var(--gs-bg-hover, #f7f7f8);
	border-color: var(--gs-text-muted, #8c8c8c);
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}

.gs-shop-body .gs-footer__badge-img {
	width: 40px;
	height: 40px;
	object-fit: contain;
	border-radius: 8px;
	flex-shrink: 0;
}

.gs-shop-body .gs-footer__badge-icon {
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--gs-bg-card, #fff);
	border-radius: 8px;
	color: var(--gs-text, #1a1a1a);
	flex-shrink: 0;
}

.gs-shop-body .gs-footer__badge-text {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.gs-shop-body .gs-footer__badge-title {
	font-size: 12px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.gs-shop-body .gs-footer__badge-sub {
	font-size: 11px;
	color: var(--gs-text-muted, #8c8c8c);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Installment payment badge variants */
.gs-shop-body .gs-footer__badge--snappay .gs-footer__badge-icon {
	background: rgba(0, 142, 250, 0.1);
	color: #008efa;
}
.gs-shop-body .gs-footer__badge--digipay .gs-footer__badge-icon {
	background: rgba(1, 64, 255, 0.1);
	color: #0140ff;
}
.gs-shop-body .gs-footer__badge--torobpay .gs-footer__badge-icon {
	background: rgba(156, 230, 105, 0.15);
	color: #6db800;
}


.gs-shop-body .gs-footer__bottom {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 20px 0;
}

.gs-shop-body .gs-footer__copyright {
	font-size: 12px;
	color: var(--gs-text-light);
	margin: 0;
}

.gs-shop-body .gs-footer__powered {
	font-size: 12px;
	color: var(--gs-text-light);
	margin: 0;
}

/* Responsive */
@media (max-width: 1024px) {
	.gs-shop-body .gs-footer__top {
		grid-template-columns: repeat(3, 1fr);
		gap: 24px;
	}
	.gs-shop-body .gs-footer__container {
		padding: 12px 16px 0;
	}
}

@media (max-width: 768px) {
	.gs-shop-body .gs-footer__top {
		grid-template-columns: repeat(3, 1fr);
		gap: 20px;
	}
	.gs-shop-body .gs-footer__col {
		align-items: center;
		text-align: center;
	}
	.gs-shop-body .gs-footer__link-list {
		align-items: center;
	}
	.gs-shop-body .gs-footer__col--newsletter {
		grid-column: 1 / -1;
		align-items: center !important;
		text-align: center !important;
	}
	.gs-shop-body .gs-footer__col--newsletter .gs-footer__col-title,
	.gs-shop-body .gs-footer__col--newsletter .gs-footer__newsletter-desc {
		text-align: center;
	}
	.gs-shop-body .gs-footer__newsletter-form {
		justify-content: center;
	}
	.gs-shop-body .gs-footer__social {
		justify-content: center !important;
	}
}

@media (max-width: 640px) {
	.gs-shop-body .gs-footer__top {
		grid-template-columns: repeat(3, 1fr);
		gap: 16px;
	}

	.gs-shop-body .gs-footer__container {
		padding: 12px 12px 0;
	}

	.gs-shop-body .gs-footer__col {
		align-items: center;
		text-align: center;
	}
	.gs-shop-body .gs-footer__link-list {
		align-items: center;
	}
	.gs-shop-body .gs-footer__col--newsletter {
		grid-column: 1 / -1;
		align-items: center !important;
		text-align: center !important;
	}
	.gs-shop-body .gs-footer__col--newsletter .gs-footer__col-title,
	.gs-shop-body .gs-footer__col--newsletter .gs-footer__newsletter-desc {
		text-align: center;
	}
	.gs-shop-body .gs-footer__newsletter-form {
		justify-content: center;
	}
	.gs-shop-body .gs-footer__social {
		justify-content: center !important;
	}

	.gs-shop-body .gs-footer__badges {
		grid-template-columns: repeat(3, 1fr);
		gap: 10px;
	}

	.gs-shop-body .gs-footer__badge {
		padding: 10px 12px;
	}

	.gs-shop-body .gs-footer__bottom {
		flex-direction: column;
		text-align: center;
	}

	/* Reserve space for the fixed mobile bottom nav (56px height). */
	.gs-shop-body .gs-footer {
		padding-bottom: 56px;
	}
}


.gs-shop-body .gs-cat-toolbar {
	background: var(--gs-bg-card);
	border-radius: 8px;
	border: 1px solid var(--gs-border-dark);
	padding: 8px 16px;
	margin-bottom: 12px;
}
.gs-shop-body .gs-cat-sortbar {
	display: flex;
	align-items: center;
	gap: 4px;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}
.gs-shop-body .gs-cat-sortbar::-webkit-scrollbar {
	display: none;
}
.gs-shop-body .gs-cat-sortbar__filter-icon {
	color: var(--gs-text, #1a1a1a);
	flex-shrink: 0;
	margin-left: 4px;
}
.gs-shop-body .gs-cat-sortbar__items {
	display: flex;
	align-items: center;
	gap: 2px;
	flex-shrink: 0;
}
.gs-shop-body .gs-cat-sortbar__item {
	display: inline-block;
	padding: 6px 8px;
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-text-light);
	text-decoration: none;
	border-radius: 6px;
	cursor: pointer;
	transition: color 0.15s, background 0.15s;
	white-space: nowrap;
}
.gs-shop-body .gs-cat-sortbar__item:hover {
	color: var(--gs-text);
	background: var(--gs-border);
}
.gs-shop-body .gs-cat-sortbar__item--active {
	color: var(--gs-primary);
	font-weight: 800;
}
.gs-shop-body .gs-cat-sortbar__count {
	margin-right: auto;
	font-size: 13px;
	color: var(--gs-text-light, #8c8c8c);
	white-space: nowrap;
	flex-shrink: 0;
}

/* Quick filter toggles in sortbar */
.gs-shop-body .gs-cat-sortbar__toggles {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-right: 4px;
	flex-shrink: 0;
}
.gs-shop-body .gs-cat-sortbar__toggle {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 5px 11px;
	font-size: 12px;
	font-weight: 600;
	color: var(--gs-text-light, #8c8c8c);
	background: var(--gs-bg-hover, #f7f7f8);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 8px;
	cursor: pointer;
	white-space: nowrap;
	transition: all 0.15s;
	user-select: none;
}
.gs-shop-body .gs-cat-sortbar__toggle input {
	display: none;
}
.gs-shop-body .gs-cat-sortbar__toggle svg {
	flex-shrink: 0;
	opacity: 0.6;
}
.gs-shop-body .gs-cat-sortbar__toggle:hover {
	border-color: var(--gs-text-muted, #8c8c8c);
	color: var(--gs-text-light, #8c8c8c);
}
.gs-shop-body .gs-cat-sortbar__toggle--active {
	color: #fff;
	background: var(--gs-primary, #ef4056);
	border-color: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-cat-sortbar__toggle--active svg {
	opacity: 1;
	color: #fff;
	stroke: #fff;
}

/* Mobile: compact toggles in mobile bar */
@media (max-width: 1024px) {
	.gs-shop-body .gs-cat-sortbar__toggles {
		gap: 4px;
	}
	.gs-shop-body .gs-cat-sortbar__toggle {
		padding: 4px 8px;
		font-size: 11px;
		gap: 4px;
	}
	.gs-shop-body .gs-cat-sortbar__toggle span {
		display: none;
	}
	.gs-shop-body .gs-cat-sortbar__toggle svg {
		width: 16px;
		height: 16px;
	}
	/* Mobile bar toggles (icon-only, same height as select/filter btn) */
	.gs-shop-body .gs-cat-mobile-bar__toggles {
		display: flex;
		align-items: center;
		gap: 4px;
		flex-shrink: 0;
	}
	.gs-shop-body .gs-cat-sortbar__toggle--icon {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 38px;
		height: 38px;
		padding: 0;
		border-radius: 8px;
		position: relative;
	}
	/* Tooltip on hover/long-press */
	.gs-shop-body .gs-cat-sortbar__toggle--icon::after {
		content: attr(data-tooltip);
		position: absolute;
		bottom: calc(100% + 6px);
		left: 50%;
		transform: translateX(-50%);
		background: var(--gs-text-dark, #0c0c0c);
		color: #fff;
		font-size: 11px;
		font-weight: 600;
		padding: 4px 10px;
		border-radius: 6px;
		white-space: nowrap;
		opacity: 0;
		pointer-events: none;
		transition: opacity 0.2s;
		z-index: 50;
	}
	.gs-shop-body .gs-cat-sortbar__toggle--icon::before {
		content: '';
		position: absolute;
		bottom: calc(100% + 2px);
		left: 50%;
		transform: translateX(-50%);
		border: 4px solid transparent;
		border-top-color: var(--gs-text-dark, #0c0c0c);
		opacity: 0;
		transition: opacity 0.2s;
	}
	.gs-shop-body .gs-cat-sortbar__toggle--icon:hover::after,
	.gs-shop-body .gs-cat-sortbar__toggle--icon:hover::before,
	.gs-shop-body .gs-cat-sortbar__toggle--icon:active::after,
	.gs-shop-body .gs-cat-sortbar__toggle--icon:active::before {
		opacity: 1;
	}
}
@media (min-width: 1025px) {
	.gs-shop-body .gs-cat-mobile-bar__toggles {
		display: none;
	}
}


.gs-shop-body .gs-cat-mobile-bar {
	display: flex;
	align-items: center;
	gap: 8px;
}
.gs-shop-body .gs-cat-mobile-bar__filter-btn {
	display: flex;
	align-items: center;
	gap: 6px;
	height: 38px;
	padding: 0 14px;
	background: var(--gs-bg-card, #fafafa);
	border: 1px solid var(--gs-border-dark, #e0e0e0);
	border-radius: 8px;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
	cursor: pointer;
	transition: border-color 0.15s, color 0.15s;
	white-space: nowrap;
}
.gs-shop-body .gs-cat-mobile-bar__filter-btn:hover {
	border-color: var(--gs-primary);
	color: var(--gs-primary);
}
.gs-shop-body .gs-cat-mobile-bar__filter-btn svg {
	flex-shrink: 0;
}
.gs-shop-body .gs-cat-mobile-bar__select {
	flex: 1;
	min-width: 0;
	height: 38px;
	padding: 0 12px;
	background: var(--gs-bg-card, #fafafa);
	border: 1px solid var(--gs-border-dark, #e0e0e0);
	border-radius: 8px;
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-text, #1a1a1a);
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2381858b' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: left 12px center;
	padding-left: 32px;
}


.gs-shop-body .gs-cat-filter-sheet {
	position: fixed;
	inset: 0;
	z-index: 9999;
	visibility: hidden;
	opacity: 0;
	transition: opacity 0.25s, visibility 0.25s;
	overscroll-behavior: contain;
	margin: 0 !important;
}
.gs-shop-body .gs-cat-filter-sheet__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.5);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.gs-shop-body .gs-cat-filter-sheet__panel {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	max-height: 85vh;
	max-height: 85dvh;
	background: var(--gs-bg-card);
	border-radius: 16px 16px 0 0;
	display: flex;
	flex-direction: column;
	transform: translateY(100%);
	transition: transform 0.3s ease-out;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	padding-bottom: env(safe-area-inset-bottom);
}
.gs-shop-body .gs-cat-filter-sheet--open {
	visibility: visible;
	opacity: 1;
}
.gs-shop-body .gs-cat-filter-sheet--open .gs-cat-filter-sheet__panel {
	transform: translateY(0);
}
.gs-shop-body .gs-cat-filter-sheet__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px;
	border-bottom: 1px solid var(--gs-border);
	flex-shrink: 0;
}
.gs-shop-body .gs-cat-filter-sheet__title {
	font-size: 16px;
	font-weight: 800;
	color: var(--gs-text);
}
.gs-shop-body .gs-cat-filter-sheet__close {
	background: none;
	border: none;
	padding: 4px;
	cursor: pointer;
	color: var(--gs-text-light);
	display: flex;
	align-items: center;
	justify-content: center;
}
.gs-shop-body .gs-cat-filter-sheet__close:hover {
	color: var(--gs-primary);
}
.gs-shop-body .gs-cat-filter-sheet__body {
	padding: 0 16px;
	overflow-y: auto;
	flex: 1;
	-webkit-overflow-scrolling: touch;
}
.gs-shop-body .gs-cat-filter-sheet__footer {
	padding: 12px 16px;
	border-top: 1px solid var(--gs-border);
	flex-shrink: 0;
}
.gs-shop-body .gs-cat-filter-sheet__footer .gs-cat-clear-all-btn {
	margin-top: 0;
}


@media (min-width: 1024px) {
	.gs-shop-body .gs-cat-mobile-bar { display: none; }
	.gs-shop-body .gs-cat-filter-sheet { display: none; }
}

@media (max-width: 1023px) {
	.gs-shop-body .gs-cat-sortbar { display: none; }
}


/* ===== Professional Filter Sidebar ===== */
.gs-shop-body .gs-cat-sidebar {
	padding: 0 !important;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.gs-shop-body .gs-cat-sidebar__header {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 16px 20px;
	font-size: 15px;
	font-weight: 800;
	color: var(--gs-text, var(--gs-text-dark));
	border-bottom: 1px solid var(--gs-border, var(--gs-border));
	flex-shrink: 0;
	background: var(--gs-bg-card, var(--gs-bg-alt));
}
.gs-shop-body .gs-cat-sidebar__header-icon {
	color: var(--gs-primary, var(--gs-primary));
	flex-shrink: 0;
}
.gs-shop-body .gs-cat-sidebar__body {
	flex: 1 1 auto;
	overflow-y: auto;
	overscroll-behavior: contain;
	padding: 0;
	scrollbar-width: thin;
	scrollbar-color: #ddd transparent;
}
.gs-shop-body .gs-cat-sidebar__body::-webkit-scrollbar { width: 4px; }
.gs-shop-body .gs-cat-sidebar__body::-webkit-scrollbar-thumb { background: #ddd; border-radius: 2px; }
.gs-shop-body .gs-cat-sidebar__body::-webkit-scrollbar-track { background: transparent; }

/* --- Filter Section --- */
.gs-filter-section {
	padding: 10px 12px;
	margin: 6px;
	background: var(--gs-bg, var(--gs-bg-card));
	border-radius: 10px;
	border: 1px solid var(--gs-border, var(--gs-border));
}
.gs-filter-section__title {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text, var(--gs-text-dark));
	margin: 0 0 12px;
	padding: 0;
}
.gs-filter-section__title svg {
	color: var(--gs-text-muted, var(--gs-text-light));
	flex-shrink: 0;
}
.gs-filter-section__items {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

/* --- Filter Accordion (details/summary) --- */
.gs-filter-accordion {
	padding: 10px 12px;
	margin: 6px;
	background: transparent;
	border-radius: 10px;
	border: 1px solid var(--gs-border, var(--gs-border));
}
.gs-filter-accordion__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 6px;
	cursor: pointer;
	list-style: none;
	user-select: none;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text, var(--gs-text-dark));
	transition: color 0.15s;
}
.gs-filter-accordion__header::-webkit-details-marker { display: none; }
.gs-filter-accordion__header:hover { color: var(--gs-primary, var(--gs-primary)); }
.gs-filter-accordion__title {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.4;
}
.gs-filter-accordion__title svg {
	color: var(--gs-text-muted, var(--gs-text-light));
	flex-shrink: 0;
}
.gs-filter-accordion__chevron {
	width: 16px;
	height: 16px;
	color: var(--gs-text-muted, var(--gs-text-light));
	flex-shrink: 0;
	transition: transform 0.2s ease;
}
.gs-filter-accordion[open] .gs-filter-accordion__chevron {
	transform: rotate(180deg);
}
.gs-filter-accordion__body {
	padding: 10px 0 4px;
}

/* --- Toggle (in_stock, fast_shipping) --- */
.gs-filter-toggle {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 10px;
	cursor: pointer;
	border-radius: 8px;
	transition: background 0.15s;
}
.gs-filter-toggle:hover { background: var(--gs-bg-hover, var(--gs-bg-alt)); }
.gs-filter-toggle input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}
.gs-filter-toggle__box {
	width: 18px;
	height: 18px;
	border: 1.5px solid var(--gs-text-muted);
	border-radius: 5px;
	flex-shrink: 0;
	position: relative;
	transition: all 0.15s;
	background: var(--gs-bg-card);
}
.gs-filter-toggle__box::after {
	content: '';
	position: absolute;
	top: 2px;
	right: 5px;
	width: 5px;
	height: 9px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg) scale(0);
	transition: transform 0.15s;
}
.gs-filter-toggle--green input:checked + .gs-filter-toggle__box {
	background: var(--gs-green, var(--gs-green));
	border-color: var(--gs-green, var(--gs-green));
}
.gs-filter-toggle--blue input:checked + .gs-filter-toggle__box {
	background: var(--gs-secondary, var(--gs-secondary));
	border-color: var(--gs-secondary, var(--gs-secondary));
}
.gs-filter-toggle input:checked + .gs-filter-toggle__box::after {
	transform: rotate(45deg) scale(1);
}
.gs-filter-toggle__label {
	font-size: 13px;
	color: var(--gs-text-secondary);
	transition: color 0.15s;
	line-height: 1.4;
}
.gs-filter-toggle input:checked ~ .gs-filter-toggle__label {
	color: var(--gs-text-dark);
	font-weight: 600;
}

/* --- Checkbox (brands, attributes) --- */
.gs-filter-check {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 7px 10px;
	cursor: pointer;
	border-radius: 8px;
	transition: background 0.15s;
}
.gs-filter-check:hover { background: var(--gs-bg-hover, var(--gs-bg-alt)); }
.gs-filter-check input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}
.gs-filter-check__box {
	width: 16px;
	height: 16px;
	border: 1.5px solid var(--gs-text-muted);
	border-radius: 4px;
	flex-shrink: 0;
	position: relative;
	transition: all 0.15s;
	background: var(--gs-bg-card);
}
.gs-filter-check__box::after {
	content: '';
	position: absolute;
	top: 2px;
	right: 4px;
	width: 4px;
	height: 8px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg) scale(0);
	transition: transform 0.15s;
}
.gs-filter-check input:checked + .gs-filter-check__box {
	background: var(--gs-primary, var(--gs-primary));
	border-color: var(--gs-primary, var(--gs-primary));
}
.gs-filter-check input:checked + .gs-filter-check__box::after {
	transform: rotate(45deg) scale(1);
}
.gs-filter-check__label {
	font-size: 12px;
	color: var(--gs-text-secondary);
	flex: 1;
	line-height: 1.4;
	transition: color 0.15s;
}
.gs-filter-check input:checked ~ .gs-filter-check__label {
	color: var(--gs-text-dark);
	font-weight: 600;
}
.gs-filter-check__count {
	font-size: 10px;
	color: var(--gs-text-light);
	flex-shrink: 0;
	font-variant-numeric: tabular-nums;
}

/* --- Scrollable list --- */
.gs-filter-scroll {
	max-height: 200px;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: #ddd transparent;
	padding-left: 4px;
}
.gs-filter-scroll::-webkit-scrollbar { width: 3px; }
.gs-filter-scroll::-webkit-scrollbar-thumb { background: #ddd; border-radius: 2px; }
.gs-filter-scroll::-webkit-scrollbar-track { background: transparent; }

/* --- Color Swatches --- */
.gs-filter-swatches {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.gs-filter-swatch { cursor: pointer; }
.gs-filter-swatch input { display: none; }
.gs-filter-swatch__color {
	display: inline-block;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	border: 1.5px solid var(--gs-border-dark);
	transition: all 0.15s;
}
.gs-filter-swatch input:checked + .gs-filter-swatch__color {
	border-color: var(--gs-primary, var(--gs-primary));
	box-shadow: 0 0 0 2px rgba(239, 64, 86, 0.2);
}

/* --- Chips (size, RAM, storage) --- */
.gs-filter-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}
.gs-filter-chip { cursor: pointer; }
.gs-filter-chip input { display: none; }
.gs-filter-chip span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.25rem;
	height: 30px;
	padding: 0 10px;
	font-size: 11px;
	font-weight: 600;
	border-radius: 8px;
	border: 1px solid var(--gs-border-dark);
	color: var(--gs-text-secondary);
	cursor: pointer;
	transition: all 0.15s;
	background: var(--gs-bg-card);
}
.gs-filter-chip span:hover {
	border-color: var(--gs-text-muted);
	color: var(--gs-text-dark);
}
.gs-filter-chip input:checked + span {
	background: var(--gs-primary-light, var(--gs-danger-bg));
	color: var(--gs-primary, var(--gs-primary));
	border-color: var(--gs-primary, var(--gs-primary));
	font-weight: 700;
}

/* --- Range Inputs --- */
.gs-filter-range {
	display: flex;
	align-items: center;
	gap: 8px;
}
.gs-filter-range__input {
	flex: 1;
	width: 100%;
	padding: 8px 6px;
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	font-size: 11px;
	text-align: center;
	color: var(--gs-text-dark);
	background: var(--gs-bg-card);
	transition: border-color 0.15s;
}
.gs-filter-range__input:focus {
	border-color: var(--gs-primary, var(--gs-primary));
	outline: none;
}
.gs-filter-range__sep {
	font-size: 11px;
	color: var(--gs-text-light);
	flex-shrink: 0;
}
.gs-filter-range__unit {
	font-size: 10px;
	color: var(--gs-text-light);
	margin: 6px 0 0;
}

/* --- Loading placeholder --- */
.gs-filter-loading {
	color: var(--gs-text-light);
	font-size: 12px;
	padding: 20px;
	text-align: center;
	margin: 0;
}


.gs-shop-body .gs-cat-fieldset {
	border: none;
	border-top: 2px solid var(--gs-primary, var(--gs-primary));
	padding: 0;
	margin: 0 0 16px;
	text-align: center;
}
.gs-shop-body .gs-cat-fieldset__legend {
	display: inline-block;
	padding: 0 12px;
	margin: 0 auto;
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-primary);
	letter-spacing: -0.2px;
}


.gs-shop-body .gs-cat-check {
	width: 18px;
	height: 18px;
	cursor: pointer;
	border-radius: 4px;
	accent-color: var(--gs-green, var(--gs-green));
}
.gs-shop-body .gs-cat-check--green {
	accent-color: var(--gs-green, var(--gs-green));
}
.gs-shop-body .gs-cat-check--blue {
	accent-color: var(--gs-secondary, var(--gs-secondary));
}

/* ===== Catalog Dynamic Filters — Digikala-style Accordion ===== */
.gs-shop-body .gs-cat-sidebar {
	position: sticky;
	top: 120px;
	max-height: calc(100vh - 136px);
	overflow: hidden;
	z-index: 10;
}

.gs-cat-filters-wrap {
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border-dark);
	border-radius: 16px;
	padding: 0;
	overflow: hidden;
}

/* Inside sidebar: transparent wrapper — accordions have their own card style */
.gs-shop-body .gs-cat-sidebar .gs-cat-filters-wrap {
	border: none;
	border-radius: 0;
	background: transparent;
	padding: 0;
	overflow: visible;
}

/* Accordion — matches .gs-filter-accordion style */
.gs-cat-accordion {
	padding: 10px 12px;
	margin: 6px;
	background: transparent;
	border-radius: 10px;
	border: 1px solid var(--gs-border, var(--gs-border));
}
.gs-cat-accordion:last-child { border-bottom: 1px solid var(--gs-border, var(--gs-border)); }

.gs-cat-accordion__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 6px;
	cursor: pointer;
	list-style: none;
	user-select: none;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text, var(--gs-text-dark));
	transition: color 0.15s;
}
.gs-cat-accordion__header::-webkit-details-marker { display: none; }
.gs-cat-accordion__header:hover { color: var(--gs-primary, var(--gs-primary)); }
.gs-cat-accordion[open] .gs-cat-accordion__header {
	color: var(--gs-text, var(--gs-text-dark));
}

.gs-cat-accordion__title {
	font-size: 13px;
	font-weight: 700;
	line-height: 1.4;
}

.gs-cat-accordion__chevron {
	width: 16px;
	height: 16px;
	color: var(--gs-text-muted, var(--gs-text-light));
	flex-shrink: 0;
	transition: transform 0.2s ease;
}
.gs-cat-accordion[open] .gs-cat-accordion__chevron {
	transform: rotate(180deg);
}

.gs-cat-accordion__body {
	padding: 10px 0 4px;
}

/* ===== Color Swatches ===== */
.gs-cat-swatches {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}
.gs-cat-swatch {
	display: flex;
	align-items: center;
	gap: 6px;
	cursor: pointer;
	padding: 4px 8px 4px 4px;
	border-radius: 8px;
	transition: background 0.15s;
}
.gs-cat-swatch:hover { background: var(--gs-bg-alt); }
.gs-cat-swatch input { display: none; }
.gs-cat-swatch__color {
	display: inline-block;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	border: 1.5px solid var(--gs-border-dark);
	flex-shrink: 0;
	transition: all 0.15s;
}
.gs-cat-swatch__label {
	font-size: 11px;
	color: var(--gs-text-secondary);
	white-space: nowrap;
}
.gs-cat-swatch input:checked + .gs-cat-swatch__color {
	border-color: var(--gs-primary, var(--gs-primary));
	box-shadow: 0 0 0 2px rgba(239, 64, 86, 0.2);
}
.gs-cat-swatch input:checked ~ .gs-cat-swatch__label {
	color: var(--gs-primary, var(--gs-primary));
	font-weight: 700;
}

/* ===== Chips (size, RAM, storage) ===== */
.gs-cat-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}
.gs-cat-chip {
	cursor: pointer;
}
.gs-cat-chip input { display: none; }
.gs-cat-chip span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2rem;
	height: 30px;
	padding: 0 10px;
	font-size: 11px;
	font-weight: 600;
	border-radius: 8px;
	border: 1px solid var(--gs-border-dark);
	color: var(--gs-text-secondary);
	cursor: pointer;
	transition: all 0.15s;
	background: var(--gs-bg-card);
}
.gs-cat-chip span:hover {
	border-color: var(--gs-text-muted);
	color: var(--gs-text-dark);
}
.gs-cat-chip input:checked + span {
	background: var(--gs-primary-light, var(--gs-danger-bg));
	color: var(--gs-primary, var(--gs-primary));
	border-color: var(--gs-primary, var(--gs-primary));
	font-weight: 700;
}

/* ===== Checkbox List (brands, etc.) ===== */
.gs-cat-checkbox-list {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.gs-cat-checkbox-list--collapsible .gs-cat-checkbox--hidden {
	display: none;
}
.gs-cat-checkbox-list--expanded .gs-cat-checkbox--hidden {
	display: flex;
}

.gs-cat-checkbox {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px 4px;
	cursor: pointer;
	border-radius: 6px;
	transition: background 0.15s;
}
.gs-cat-checkbox:hover { background: var(--gs-bg-alt); }
.gs-cat-checkbox input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}
.gs-cat-checkbox__box {
	width: 16px;
	height: 16px;
	border: 1.5px solid var(--gs-text-muted);
	border-radius: 4px;
	flex-shrink: 0;
	position: relative;
	transition: all 0.15s;
	background: var(--gs-bg-card);
}
.gs-cat-checkbox__box::after {
	content: '';
	position: absolute;
	top: 2px;
	left: 5px;
	width: 4px;
	height: 8px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg) scale(0);
	transition: transform 0.15s;
}
.gs-cat-checkbox input:checked + .gs-cat-checkbox__box {
	background: var(--gs-primary, var(--gs-primary));
	border-color: var(--gs-primary, var(--gs-primary));
}
.gs-cat-checkbox input:checked + .gs-cat-checkbox__box::after {
	transform: rotate(45deg) scale(1);
}
.gs-cat-checkbox__label {
	font-size: 12px;
	color: var(--gs-text-secondary);
	flex: 1;
	line-height: 1.4;
}
.gs-cat-checkbox input:checked ~ .gs-cat-checkbox__label {
	color: var(--gs-text-dark);
	font-weight: 600;
}
.gs-cat-checkbox__count {
	font-size: 10px;
	color: var(--gs-text-light);
	flex-shrink: 0;
}

/* Show more button */
.gs-cat-show-more {
	display: block;
	width: 100%;
	padding: 8px 0;
	margin-top: 4px;
	background: none;
	border: none;
	border-top: 1px dashed var(--gs-border-dark);
	font-size: 11px;
	color: var(--gs-secondary, var(--gs-secondary));
	cursor: pointer;
	transition: color 0.15s;
}
.gs-cat-show-more:hover { color: #0fb8cc; }

/* ===== Range Inputs ===== */
.gs-cat-range__inputs {
	display: flex;
	align-items: center;
	gap: 6px;
}
.gs-cat-range__inputs input {
	flex: 1;
	width: 100%;
	padding: 7px 6px;
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	font-size: 11px;
	text-align: center;
	color: var(--gs-text-dark);
	background: var(--gs-bg-card);
	transition: border-color 0.15s;
}
.gs-cat-range__inputs input:focus {
	outline: none;
	border-color: var(--gs-primary);
}
.gs-cat-range__inputs input::placeholder { color: #b0b0b0; }
.gs-cat-range__sep {
	font-size: 11px;
	color: var(--gs-text-light);
	flex-shrink: 0;
}
.gs-cat-range__unit {
	font-size: 10px;
	color: var(--gs-text-light);
	margin: 6px 0 0;
}
.gs-cat-range__apply {
	margin-top: 8px;
	width: 100%;
	padding: 7px 12px;
	background: var(--gs-bg-alt);
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	font-size: 11px;
	font-weight: 600;
	color: var(--gs-text-dark);
	cursor: pointer;
	transition: all 0.15s;
}
.gs-cat-range__apply:hover {
	background: var(--gs-primary);
	color: #fff;
	border-color: var(--gs-primary);
}

/* ===== Price Range (Dual Slider) ===== */
.gs-cat-price-section {
	padding: 12px 0 16px;
	border-bottom: 1px solid #eee;
	margin-bottom: 4px;
}
/* Inside accordion: no border/padding — accordion provides the card style */
.gs-filter-accordion__body .gs-cat-price-range {
	margin-top: 0;
}
.gs-shop-body .gs-cat-price-section__title {
	font-size: 13px !important;
	font-weight: 700;
	color: var(--gs-text);
	margin: 0 0 8px;
}
.gs-cat-price-range {
	position: relative;
	height: 64px;
	padding: 0 8px;
	margin-top: 4px;
}
.gs-cat-price-range__track {
	position: absolute;
	top: 20px;
	left: 8px;
	right: 8px;
	height: 4px;
	background: var(--gs-border-dark);
	border-radius: 2px;
}
.gs-cat-price-range__fill {
	position: absolute;
	top: 0;
	right: 0;
	left: auto;
	height: 100%;
	width: 100%;
	background: var(--gs-primary);
	border-radius: 2px;
}
.gs-cat-price-range__slider {
	position: absolute;
	top: 10px;
	left: 0;
	width: calc(100% - 16px);
	margin: 0 8px;
	height: 24px;
	background: none;
	pointer-events: none;
	-webkit-appearance: none;
	appearance: none;
	outline: none;
}
.gs-cat-price-range__slider::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	pointer-events: auto;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: var(--gs-bg-card);
	border: 2px solid var(--gs-primary);
	cursor: pointer;
	box-shadow: 0 1px 4px rgba(0,0,0,0.2);
	transition: transform 0.15s;
	margin-top: -8px;
}
.gs-cat-price-range__slider--min::-webkit-slider-thumb {
	border-color: var(--gs-warning);
}
.gs-cat-price-range__slider--max::-webkit-slider-thumb {
	border-color: var(--gs-primary);
}
.gs-cat-price-range__slider::-webkit-slider-thumb:hover {
	transform: scale(1.15);
}
.gs-cat-price-range__slider::-moz-range-thumb {
	pointer-events: auto;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: var(--gs-bg-card);
	border: 2px solid var(--gs-primary);
	cursor: pointer;
	box-shadow: 0 1px 4px rgba(0,0,0,0.2);
}
.gs-cat-price-range__slider--min::-moz-range-thumb {
	border-color: var(--gs-warning);
}
.gs-cat-price-range__slider--max::-moz-range-thumb {
	border-color: var(--gs-primary);
}
.gs-cat-price-range__slider::-webkit-slider-runnable-track {
	background: transparent;
	border: none;
	height: 4px;
}
.gs-cat-price-range__slider::-moz-range-track {
	background: transparent;
	border: none;
	height: 4px;
}

.gs-cat-price-range__slider.range {
	--range-fill: 0;
	--range-thumb: var(--gs-primary);
	--range-bg: transparent;
}

/* Static side labels ("از" on right, "تا" on left) next to the track */
.gs-cat-price-range__thumb-label {
	position: absolute;
	top: 14px;
	font-size: 10px;
	font-weight: 700;
	pointer-events: none;
	white-space: nowrap;
	z-index: 3;
}
.gs-cat-price-range__thumb-label--min {
	color: var(--gs-warning);
	right: 0;
	left: auto;
}
.gs-cat-price-range__thumb-label--max {
	color: var(--gs-primary);
	left: 0;
	right: auto;
}

.gs-cat-price-range__labels {
	position: absolute;
	top: 38px;
	left: 8px;
	right: 8px;
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	color: #666;
}

/* Larger touch targets on mobile */
@media (max-width: 768px) {
	.gs-shop-body .gs-cat-price-range__slider {
		top: 8px;
		height: 28px;
	}
	.gs-shop-body .gs-cat-price-range__slider::-webkit-slider-thumb {
		width: 26px;
		height: 26px;
		border-width: 3px;
		margin-top: -11px;
	}
	.gs-shop-body .gs-cat-price-range__slider::-moz-range-thumb {
		width: 26px;
		height: 26px;
		border-width: 3px;
	}
	.gs-shop-body .gs-cat-price-range__thumb-label {
		top: 6px;
		font-size: 11px;
	}
	.gs-shop-body .gs-cat-price-range__labels {
		top: 44px;
		font-size: 11px;
	}
}

/* Apply price button */
.gs-cat-price-apply-btn {
	display: inline-block;
	margin-top: 6px;
	padding: 4px 12px;
	font-size: 11px;
	font-weight: 700;
	color: #fff;
	background: var(--gs-accent, var(--gs-warning));
	border: none;
	border-radius: 5px;
	cursor: pointer;
	transition: opacity 0.2s;
}
.gs-cat-price-apply-btn:hover {
	opacity: 0.85;
}
.gs-cat-price-apply-btn:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}
.gs-cat-price-range__label {
	white-space: nowrap;
}
.gs-cat-price-range__label--min { color: var(--gs-warning); font-weight: 700; }
.gs-cat-price-range__label--max { color: var(--gs-primary); font-weight: 700; }

/* ===== Toggle (boolean) ===== */
.gs-cat-toggle {
	display: flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
}
.gs-cat-toggle input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}
.gs-cat-toggle__track {
	width: 36px;
	height: 20px;
	border-radius: 10px;
	background: var(--gs-border-dark);
	position: relative;
	transition: background 0.2s;
	flex-shrink: 0;
}
.gs-cat-toggle__thumb {
	position: absolute;
	top: 2px;
	left: 2px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: var(--gs-bg-card);
	box-shadow: 0 1px 3px rgba(0,0,0,0.15);
	transition: transform 0.2s;
}
.gs-cat-toggle input:checked + .gs-cat-toggle__track {
	background: var(--gs-primary);
}
.gs-cat-toggle input:checked + .gs-cat-toggle__track .gs-cat-toggle__thumb {
	transform: translateX(16px);
}
.gs-cat-toggle__label {
	font-size: 12px;
	color: var(--gs-text-secondary);
}

/* ===== No filters / Clear ===== */
.gs-cat-no-filters {
	color: var(--gs-text-light);
	font-size: 12px;
	text-align: center;
	padding: 24px 0;
}

.gs-cat-filter-clear {
	display: inline-block;
	padding: 6px 14px;
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	font-size: 11px;
	font-weight: 600;
	color: var(--gs-text-secondary);
	cursor: pointer;
	text-decoration: none;
	transition: all 0.15s;
}
.gs-cat-filter-clear:hover {
	border-color: var(--gs-primary);
	color: var(--gs-primary);
	background: var(--gs-danger-bg);
}


.gs-shop-body .gs-cat-clear-all-btn {
	display: block;
	width: 100%;
	margin: 0;
	padding: 12px 20px;
	background: var(--gs-primary);
	border: none;
	border-radius: 0;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	cursor: pointer;
	text-align: center;
	flex-shrink: 0;
	transition: opacity 0.15s, box-shadow 0.15s;
}
.gs-shop-body .gs-cat-clear-all-btn:hover {
	opacity: 0.9;
	box-shadow: 0 2px 8px rgba(238, 56, 78, 0.3);
}

/* ===== Sidebar Footer: Apply + Clear buttons ===== */
.gs-shop-body .gs-cat-sidebar__footer {
	display: flex;
	align-items: stretch;
	gap: 8px;
	padding: 12px 16px;
	border-top: 1px solid var(--gs-border, #f0f0f1);
	background: var(--gs-bg, #fff);
	flex-shrink: 0;
}
.gs-shop-body .gs-cat-apply-btn {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 44px;
	padding: 0 16px;
	background: var(--gs-primary, #ef4056);
	color: #fff;
	border: none;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 700;
	font-family: 'Vazirmatn', Tahoma, sans-serif;
	cursor: pointer;
	transition: background 0.2s, transform 0.1s, box-shadow 0.2s;
}
.gs-shop-body .gs-cat-apply-btn:hover {
	background: var(--gs-primary-hover, #d63851);
	box-shadow: 0 4px 12px rgba(238, 56, 78, 0.25);
}
.gs-shop-body .gs-cat-apply-btn:active {
	transform: scale(0.98);
}
/* Dirty state: pulse to indicate unsaved filter changes */
.gs-shop-body .gs-cat-apply-btn--dirty {
	animation: gs-apply-pulse 1.5s ease-in-out infinite;
}
@keyframes gs-apply-pulse {
	0%, 100% { box-shadow: 0 0 0 0 rgba(238, 56, 78, 0.4); }
	50% { box-shadow: 0 0 0 6px rgba(238, 56, 78, 0); }
}

/* Small clear-all button (trash icon) */
.gs-shop-body .gs-cat-clear-small {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	height: 44px;
	padding: 0 14px;
	background: transparent;
	color: var(--gs-text-muted, #8c8c8c);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 10px;
	font-size: 12px;
	font-weight: 600;
	font-family: 'Vazirmatn', Tahoma, sans-serif;
	cursor: pointer;
	transition: all 0.2s;
	flex-shrink: 0;
}
.gs-shop-body .gs-cat-clear-small:hover {
	color: var(--gs-text, #1a1a1a);
	border-color: var(--gs-text-muted, #8c8c8c);
	background: var(--gs-bg-hover, #f7f7f8);
}
.gs-shop-body .gs-cat-clear-small:active {
	transform: scale(0.96);
}

/* Mobile filter sheet footer */
.gs-shop-body .gs-cat-filter-sheet__footer {
	display: flex;
	align-items: stretch;
	gap: 8px;
	padding: 12px 16px;
	border-top: 1px solid var(--gs-border, #f0f0f1);
	background: var(--gs-bg, #fff);
}
.gs-shop-body .gs-cat-filter-sheet__footer .gs-cat-clear-small {
	flex-shrink: 0;
}
.gs-shop-body .gs-cat-filter-sheet__footer .gs-cat-apply-btn {
	flex: 1;
}

/* Active filter chips */
.gs-shop-body .gs-active-filter-chip {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 10px;
	font-size: 12px;
	border-radius: 9999px;
	background: var(--gs-bg-hover, var(--gs-border));
	color: var(--gs-text, var(--gs-text));
	text-decoration: none;
	transition: background 0.15s;
}
.gs-shop-body .gs-active-filter-chip:hover {
	background: var(--gs-border, var(--gs-border-dark));
}
.gs-shop-body .gs-active-filter-chip svg {
	flex-shrink: 0;
	color: var(--gs-text-muted, var(--gs-text-light));
}

#gs-catalog-results.gs-loading {
	opacity: 0.5;
	pointer-events: none;
}

.gs-no-products {
	padding: 48px 20px;
	text-align: center;
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border-dark);
	border-radius: 12px;
}
.gs-no-products p { color: var(--gs-text-light); font-size: 13px; }

/* Pagination — daisyUI join style */
.gs-pagination {
	display: flex;
	justify-content: center;
	gap: 0;
	padding: 24px 0;
}
.gs-pagination__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	padding: 0 10px;
	border: 1px solid var(--gs-border-dark);
	border-radius: 0;
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--gs-text);
	background: var(--gs-bg-card);
	cursor: pointer;
	transition: all 0.15s;
	text-decoration: none;
	line-height: 1;
}

.gs-pagination__btn:first-child {
	border-radius: 0 8px 8px 0;
}

.gs-pagination__btn:last-child {
	border-radius: 8px 0 0 8px;
}

.gs-pagination__btn + .gs-pagination__btn {
	border-right: 0;
}
.gs-pagination__btn:hover {
	background: var(--gs-border);
	color: var(--gs-primary);
}
.gs-pagination__btn--active,
.gs-shop-body .gs-pagination__btn--active {
	background: var(--gs-primary);
	color: #fff !important;
	border-color: var(--gs-primary);
}
.gs-pagination__btn--active:hover,
.gs-shop-body .gs-pagination__btn--active:hover {
	background: #d63851;
	color: #fff !important;
}
.gs-pagination__btn--disabled {
	color: var(--gs-text-muted);
	cursor: default;
	background: var(--gs-bg-card);
}
.gs-pagination__btn--disabled:hover {
	background: var(--gs-bg-card);
	color: var(--gs-text-muted);
}
.gs-pagination__btn--nav {
	font-size: 1rem;
	font-weight: 800;
}

/* ===== Mobile: Filters as bottom sheet ===== */
@media (max-width: 1023px) {
	.gs-cat-filters-wrap {
		border-radius: 0;
		border: none;
	}
}


.gs-shop-body .gs-auth-page {
	min-height: calc(100vh - 280px);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px 16px;
	position: relative;
	overflow: hidden;
}
.gs-shop-body .gs-auth-container {
	position: relative;
	z-index: 2;
}

/* ===== CLS prevention — images ===== */
.gs-shop-body .gs-top-banner__img {
	aspect-ratio: 30 / 1;
}
.gs-shop-body .gs-footer__badge-img,
.gs-shop-body .gs-footer__feature-img {
	aspect-ratio: 1 / 1;
}
.gs-shop-body .gs-auth-card {
	position: relative;
	z-index: 3;
	background: rgba(255, 255, 255, 0.96);
	backdrop-filter: blur(4px);
}
.gs-shop-body .gs-auth-container {
	width: 100%;
	max-width: 420px;
}
.gs-shop-body .gs-auth-notice {
	display: flex;
	align-items: center;
	gap: 8px;
	background: var(--gs-warning-bg, #fff8e1);
	color: var(--gs-warning-text, #8a6d00);
	border: 1px solid var(--gs-warning-border, #ffe082);
	border-radius: 10px;
	padding: 10px 14px;
	margin-bottom: 12px;
	font-size: 13px;
	font-weight: 600;
}
.gs-shop-body .gs-auth-notice svg {
	flex-shrink: 0;
}
.gs-shop-body .gs-auth-card {
	background: var(--gs-bg-card);
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
	border: 1px solid var(--gs-border);
}
.gs-shop-body .gs-auth-card__header {
	background: var(--gs-bg-card);
	padding: 14px 24px 10px;
	text-align: center;
	color: var(--gs-primary);
	border-bottom: 1px solid var(--gs-border);
}
.gs-shop-body .gs-auth-card__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 2px;
	margin-bottom: 4px;
}
.gs-shop-body .gs-auth-card__logo-img {
	max-height: 56px;
	max-width: 180px;
	width: auto;
	height: auto;
	object-fit: contain;
}
.gs-shop-body .gs-auth-card__logo .gs-header__logo-red {
	font-size: 24px;
	font-weight: 900;
	color: var(--gs-primary);
}
.gs-shop-body .gs-auth-card__logo .gs-header__logo-cyan {
	font-size: 24px;
	font-weight: 900;
	color: var(--gs-secondary);
}
.gs-shop-body .gs-auth-card__subtitle {
	font-size: 12px;
	color: var(--gs-primary);
}
.gs-shop-body .gs-auth-card__body {
	padding: 14px 24px;
}
.gs-shop-body .gs-auth-card__footer {
	padding: 10px 24px;
	background: var(--gs-bg-alt);
	border-top: 1px solid var(--gs-border);
	text-align: center;
}
.gs-shop-body .gs-auth-card__footer p {
	font-size: 11px;
	color: var(--gs-text-light);
	line-height: 1.6;
	margin: 0;
}

/* Steps */
.gs-shop-body .gs-auth-step {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.gs-shop-body .gs-auth-step__title {
	font-size: 18px;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0;
}
.gs-shop-body .gs-auth-step__desc {
	font-size: 12px;
	color: var(--gs-text-light);
	line-height: 1.7;
	margin: 0;
}
.gs-shop-body .gs-auth-step__header {
	display: flex;
	align-items: center;
	gap: 8px;
}
.gs-shop-body .gs-auth-back {
	background: none;
	border: none;
	padding: 4px;
	cursor: pointer;
	color: var(--gs-text-light);
	display: flex;
	align-items: center;
	transition: color 0.2s;
}
.gs-shop-body .gs-auth-back:hover {
	color: var(--gs-text-dark);
}

/* Identifier box (shows selected phone/email) */
.gs-shop-body .gs-auth-identifier-box {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	background: var(--gs-bg-alt);
	border-radius: 8px;
	font-size: 13px;
	color: var(--gs-text);
	font-weight: 600;
}

/* Fields */
.gs-shop-body .gs-auth-field {
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.gs-shop-body .gs-auth-field__label {
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-text);
}
.gs-shop-body .gs-auth-field__input-wrap {
	position: relative;
	display: flex;
	align-items: center;
}
.gs-shop-body .gs-auth-field__icon {
	position: absolute;
	right: 12px;
	color: var(--gs-text-light);
	pointer-events: none;
	flex-shrink: 0;
}
.gs-shop-body .gs-auth-field__input {
	width: 100%;
	padding: 12px 40px 12px 12px;
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	font-size: 14px;
	color: var(--gs-text-dark);
	background: var(--gs-bg-card);
	transition: border-color 0.2s, box-shadow 0.2s;
	box-sizing: border-box;
	font-family: inherit;
	outline: none;
}
.gs-shop-body .gs-auth-field__input::placeholder {
	color: var(--gs-text-light);
}
.gs-shop-body .gs-auth-field__input:focus {
	border-color: var(--gs-primary);
	box-shadow: 0 0 0 3px rgba(239, 64, 86, 0.1);
}
.gs-shop-body .gs-auth-field__input--error {
	border-color: var(--gs-primary);
}
.gs-shop-body .gs-auth-field__toggle {
	position: absolute;
	left: 8px;
	background: none;
	border: none;
	padding: 4px;
	cursor: pointer;
	color: var(--gs-text-light);
	display: flex;
	align-items: center;
	transition: color 0.2s;
}
.gs-shop-body .gs-auth-field__toggle:hover {
	color: var(--gs-text);
}
.gs-shop-body .gs-auth-field__toggle--active {
	color: var(--gs-primary);
}
.gs-shop-body .gs-auth-field__error {
	font-size: 12px;
	color: var(--gs-primary);
	margin: 0;
	line-height: 1.5;
}

/* Password strength */
.gs-shop-body .gs-auth-pw-strength {
	display: flex;
	align-items: center;
	gap: 4px;
	margin-top: 4px;
}
.gs-shop-body .gs-auth-pw-bar {
	width: 24px;
	height: 3px;
	border-radius: 2px;
	background: var(--gs-border-dark);
	transition: background 0.2s;
}
.gs-shop-body .gs-auth-pw-bar[data-level="1"] { background: var(--gs-danger); }
.gs-shop-body .gs-auth-pw-bar[data-level="2"] { background: var(--gs-warning); }
.gs-shop-body .gs-auth-pw-bar[data-level="3"] { background: var(--gs-green); }
.gs-shop-body .gs-auth-pw-label {
	font-size: 11px;
	color: var(--gs-text-light);
	margin-right: 4px;
}
.gs-shop-body .gs-auth-pw-label[data-level="1"] { color: var(--gs-danger); }
.gs-shop-body .gs-auth-pw-label[data-level="2"] { color: var(--gs-warning); }
.gs-shop-body .gs-auth-pw-label[data-level="3"] { color: var(--gs-green); }

/* Buttons */
.gs-shop-body .gs-auth-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	padding: 14px 24px;
	border: none;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 800;
	cursor: pointer;
	transition: all 0.2s;
	font-family: inherit;
}
.gs-shop-body .gs-auth-btn--primary {
	background: var(--gs-primary);
	color: #fff;
}
.gs-shop-body .gs-auth-btn--primary:hover:not(:disabled) {
	background: var(--gs-primary-hover);
}
.gs-shop-body .gs-auth-btn--primary:disabled {
	background: var(--gs-primary);
	opacity: 0.6;
	cursor: not-allowed;
}
.gs-shop-body .gs-auth-spinner {
	animation: gs-auth-spin 0.8s linear infinite;
}
@keyframes gs-auth-spin {
	from { transform: rotate(0deg); }
	to { transform: rotate(360deg); }
}

/* Divider */
.gs-shop-body .gs-auth-divider {
	position: relative;
	text-align: center;
	padding: 8px 0;
}
.gs-shop-body .gs-auth-divider::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	height: 1px;
	background: var(--gs-border-dark);
}
.gs-shop-body .gs-auth-divider span {
	position: relative;
	background: var(--gs-bg-card);
	padding: 0 12px;
	font-size: 12px;
	color: var(--gs-text-light);
}

/* OTP Inputs */
.gs-shop-body .gs-otp-inputs {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 16px 0;
	direction: ltr;
}
.gs-shop-body .gs-otp-input {
	width: 44px;
	height: 52px;
	text-align: center;
	font-size: 1.5rem;
	font-weight: 800;
	font-family: 'IRANYekan', 'Vazirmatn', Tahoma, sans-serif;
	border: 2px solid var(--gs-border-dark);
	border-radius: 10px;
	background: var(--gs-bg-card);
	color: var(--gs-text-dark);
	transition: all 0.15s ease;
	outline: none;
}
.gs-shop-body .gs-otp-input:focus {
	border-color: var(--gs-primary);
	box-shadow: 0 0 0 3px rgba(239, 64, 86, 0.1);
}
.gs-shop-body .gs-otp-input::-webkit-inner-spin-button,
.gs-shop-body .gs-otp-input::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
.gs-shop-body .gs-otp-sep {
	font-size: 1.25rem;
	color: var(--gs-text-muted);
	font-weight: 800;
}
.gs-shop-body .gs-otp-dev-hint {
	background: var(--gs-warning-bg);
	border: 1px solid var(--gs-warning-bg);
	border-radius: 8px;
	padding: 8px 12px;
	font-size: 0.75rem;
	color: var(--gs-accent);
	text-align: center;
	margin-bottom: 12px;
	direction: ltr;
}
.gs-shop-body .gs-otp-resend {
	text-align: center;
	margin-top: 16px;
	font-size: 0.8125rem;
	color: var(--gs-text-light);
}
.gs-shop-body .gs-auth-terms {
	font-size: 0.75rem;
	color: var(--gs-text-light);
	text-align: center;
	margin-top: 12px;
	line-height: 1.6;
}
.gs-shop-body .gs-auth-terms a {
	color: var(--gs-primary);
	text-decoration: none;
}

/* OTP Mobile */
@media (max-width: 480px) {
	.gs-shop-body .gs-otp-input {

		width: 45px;
        font-family:'Vazirmatn', Tahoma, sans-serif !important;
        height: 45px;
        font-size: 1.25rem;
	}
	.gs-shop-body .gs-otp-inputs {
		gap: 4px;
	}
}

/* Links */
.gs-shop-body .gs-auth-links {
	text-align: center;
}
.gs-shop-body .gs-auth-link {
	font-size: 12px;
	color: var(--gs-secondary);
	text-decoration: none;
	cursor: pointer;
	background: none;
	border: none;
	font-family: inherit;
	padding: 0;
}
.gs-shop-body .gs-auth-link:hover {
	text-decoration: underline;
}

/* Checkbox */
.gs-shop-body .gs-auth-checkbox {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 12px;
	color: var(--gs-text-light);
	cursor: pointer;
}
.gs-shop-body .gs-auth-checkbox input[type="checkbox"] {
	width: 16px;
	height: 16px;
	border-radius: 4px;
	accent-color: var(--gs-primary);
	cursor: pointer;
	flex-shrink: 0;
}
.gs-shop-body .gs-auth-checkbox--terms {
	align-items: flex-start;
	line-height: 1.7;
}
.gs-shop-body .gs-auth-checkbox--terms input[type="checkbox"] {
	margin-top: 2px;
}

/* Switch links */
.gs-shop-body .gs-auth-switch {
	text-align: center;
	margin: 0;
}
.gs-shop-body .gs-auth-forgot {
	text-align: center;
	margin: 0;
}

/* Errors box */
.gs-shop-body .gs-auth-errors {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 12px;
	background: var(--gs-danger-bg);
	border: 1px solid var(--gs-danger-bg);
	border-radius: 8px;
	margin-bottom: 16px;
}
.gs-shop-body .gs-auth-error {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	color: var(--gs-primary);
}

/* Back to shop link */
.gs-shop-body .gs-auth-back-link {
	text-align: center;
	margin-top: 16px;
}
.gs-shop-body .gs-auth-back-link a {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 12px;
	color: var(--gs-text-light);
	text-decoration: none;
	transition: color 0.2s;
}
.gs-shop-body .gs-auth-back-link a:hover {
	color: var(--gs-secondary);
}

/* Form */
.gs-shop-body .gs-auth-form {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

/* Mobile */
@media (max-width: 480px) {
	.gs-shop-body .gs-auth-page {
		padding: 12px 12px;
		min-height: calc(100vh - 300px);
	}
	.gs-shop-body .gs-auth-card__body {
		padding: 12px 16px;
	}
	.gs-shop-body .gs-auth-card__header {
		padding: 12px 16px 8px;
	}
	.gs-shop-body .gs-auth-card__logo-img {
		max-height: 40px;
		max-width: 130px;
	}
	.gs-shop-body .gs-auth-card__logo .gs-header__logo-red,
	.gs-shop-body .gs-auth-card__logo .gs-header__logo-cyan {
		font-size: 20px;
	}
}

/* ===== Addresses — daisyUI-style cards ===== */
.gs-shop-body .gs-addr-section {
	max-width: 100%;
}
.gs-shop-body .gs-addr-section__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 20px;
	gap: 12px;
	flex-wrap: wrap;
}
.gs-shop-body .gs-addr-section__title {
	font-size: 1.25rem;
	font-weight: 900;
	color: var(--gs-foreground, var(--gs-text-dark));
	letter-spacing: -0.3px;
}

/* Grid of address cards */
.gs-shop-body .gs-addr-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	gap: 16px;
}

/* Empty state */
.gs-shop-body .gs-addr-empty {
	grid-column: 1 / -1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 16px;
	padding: 48px 24px;
	background: var(--gs-bg-card);
	border: 2px dashed var(--gs-border-dark);
	border-radius: 16px;
	text-align: center;
}
.gs-shop-body .gs-addr-empty__icon {
	color: var(--gs-text-light);
}
.gs-shop-body .gs-addr-empty__text {
	font-size: 0.95rem;
	color: var(--gs-text-secondary);
}

/* Address card — daisyUI-style */
.gs-shop-body .gs-addr-card {
	position: relative;
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border-dark);
	border-radius: 16px;
	padding: 20px 20px 12px;
	transition: all 0.2s ease;
	display: flex;
	flex-direction: column;
	gap: 12px;
	overflow: hidden;
}
.gs-shop-body .gs-addr-card:hover {
	border-color: var(--gs-border-dark);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}
.gs-shop-body .gs-addr-card--default {
	border-color: var(--gs-primary);
	border-width: 2px;
	padding: 19px 19px 11px;
}
.gs-shop-body .gs-addr-card--default::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 4px;
	background: var(--gs-primary);
}

/* Badge on card */
.gs-shop-body .gs-addr-card .gs-badge {
	position: absolute;
	top: 12px;
	left: 12px;
}

/* Card body */
.gs-shop-body .gs-addr-card__body {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding-top: 4px;
}
.gs-shop-body .gs-addr-card__title {
	font-size: 1rem;
	font-weight: 800;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-addr-card__name {
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--gs-text);
}
.gs-shop-body .gs-addr-card__row {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-size: 0.8125rem;
	color: var(--gs-text-secondary);
	line-height: 1.6;
}
.gs-shop-body .gs-addr-card__row svg {
	flex-shrink: 0;
	margin-top: 3px;
	color: var(--gs-text-light);
}

/* Card actions */
.gs-shop-body .gs-addr-card__actions {
	display: flex;
	align-items: center;
	gap: 4px;
	padding-top: 8px;
	border-top: 1px solid var(--gs-bg-alt);
	margin-top: auto;
}

/* ===== Buttons — daisyUI-style ===== */
.gs-shop-body .gs-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	font-family: 'IRANYekan', 'Vazirmatn', Tahoma, sans-serif;
	font-size: 12px;
	font-weight: 700;
	padding: 10px 20px;
	border-radius: 10px;
	border: none;
	cursor: pointer;
	transition: all 0.15s ease;
	text-decoration: none;
	white-space: nowrap;
	line-height: 1.4;
}
.gs-shop-body .gs-btn:disabled {
	opacity: 0.5;
	cursor: not-allowed;
}
.gs-shop-body .gs-btn--primary {
	background: var(--gs-primary);
	color: #fff;
}
.gs-shop-body .gs-btn--primary:hover:not(:disabled) {
	background: #d63852;
	box-shadow: 0 2px 8px rgba(239, 64, 86, 0.3);
}
.gs-shop-body .gs-btn--ghost {
	background: transparent;
	color: var(--gs-text-secondary);
	padding: 8px 12px;
}
.gs-shop-body .gs-btn--ghost:hover:not(:disabled) {
	background: var(--gs-bg-alt);
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-btn--ghost.gs-btn--danger {
	color: var(--gs-danger);
}
.gs-shop-body .gs-btn--ghost.gs-btn--danger:hover:not(:disabled) {
	background: var(--gs-danger-bg);
	color: var(--gs-danger);
}
.gs-shop-body .gs-btn--sm {
	padding: 8px 14px;
	font-size: 12px;
}
.gs-shop-body .gs-btn--xs {
	padding: 6px 10px;
	font-size: 0.75rem;
	border-radius: 8px;
}

/* ===== Badges — daisyUI-style ===== */
.gs-shop-body .gs-badge {
	display: inline-flex;
	align-items: center;
	font-size: 0.6875rem;
	font-weight: 800;
	padding: 3px 10px;
	border-radius: 999px;
	line-height: 1.4;
}
.gs-shop-body .gs-badge--primary {
	background: var(--gs-primary);
	color: #fff;
}
.gs-shop-body .gs-badge--sm {
	font-size: 0.625rem;
	padding: 2px 8px;
}

/* ===== Modal — daisyUI-style ===== */
.gs-shop-body .gs-modal {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
}
.gs-shop-body .gs-modal__backdrop {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(2px);
	animation: gs-fade-in 0.15s ease;
}
.gs-shop-body .gs-modal__dialog {
	position: relative;
	background: var(--gs-bg-card);
	border-radius: 20px;
	width: 100%;
	max-width: 560px;
	max-height: 90vh;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
	animation: gs-slide-up 0.2s ease;
}
.gs-shop-body .gs-modal__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px 24px;
	border-bottom: 1px solid var(--gs-bg-alt);
}
.gs-shop-body .gs-modal__title {
	font-size: 1.0rem;
	font-weight: 900;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-modal__close {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 8px;
	border: none;
	background: transparent;
	color: var(--gs-text-secondary);
	cursor: pointer;
	transition: all 0.15s ease;
}
.gs-shop-body .gs-modal__close:hover {
	background: var(--gs-bg-alt);
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-modal__body {
	padding: 24px;
	overflow-y: auto;
	flex: 1;
}
.gs-shop-body .gs-modal__footer {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	padding: 10px 24px;
	border-top: 1px solid var(--gs-bg-alt);
	background: var(--gs-bg-alt);
}

@keyframes gs-fade-in {
	from { opacity: 0; }
	to { opacity: 1; }
}
@keyframes gs-slide-up {
	from { opacity: 0; transform: translateY(20px); }
	to { opacity: 1; transform: translateY(0); }
}

/* ===== Form — daisyUI-style ===== */
.gs-shop-body .gs-form-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}
.gs-shop-body .gs-form-field {
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.gs-shop-body .gs-form-field--full {
	grid-column: 1 / -1;
}
.gs-shop-body .gs-form-label {
	font-size: 0.8125rem;
	font-weight: 700;
	color: var(--gs-text);
}
.gs-shop-body .gs-form-input,
.gs-shop-body .gs-form-select,
.gs-shop-body .gs-form-textarea {
	width: 100%;
	padding: 10px 14px;
	border: 1px solid var(--gs-border-dark);
	border-radius: 10px;
	font-family: 'IRANYekan', 'Vazirmatn', Tahoma, sans-serif;
	font-size: 12px;
	color: var(--gs-text-dark);
	background: var(--gs-bg-card);
	transition: all 0.15s ease;
	outline: none;
}
.gs-shop-body .gs-form-textarea {
	resize: vertical;
	min-height: 72px;
}
.gs-shop-body .gs-form-input:focus,
.gs-shop-body .gs-form-select:focus,
.gs-shop-body .gs-form-textarea:focus {
	border-color: var(--gs-primary);
	box-shadow: 0 0 0 3px rgba(239, 64, 86, 0.1);
}
.gs-shop-body .gs-form-input::placeholder,
.gs-shop-body .gs-form-textarea::placeholder {
	color: var(--gs-text-light);
}
.gs-shop-body .gs-form-checkbox {
	display: flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	font-size: 12px;
	color: var(--gs-text);
}
.gs-shop-body .gs-form-checkbox input {
	width: 18px;
	height: 18px;
	accent-color: var(--gs-primary);
	cursor: pointer;
}
.gs-shop-body .gs-form-error {
	margin-top: 12px;
	padding: 10px 14px;
	background: var(--gs-danger-bg);
	border: 1px solid var(--gs-danger-bg);
	border-radius: 10px;
	font-size: 0.8125rem;
	color: var(--gs-danger);
	font-weight: 600;
}

/* ===== Spinner ===== */
.gs-shop-body .gs-spinner {
	animation: gs-spin 0.8s linear infinite;
}
@keyframes gs-spin {
	from { transform: rotate(0deg); }
	to { transform: rotate(360deg); }
}

/* ===== Account sidebar navigation ===== */
/* ===== Account Sidebar ===== */
.gs-shop-body .gs-side-card {
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-bg-alt);
	border-radius: 16px;
	padding: 20px;
	position: sticky;
	top: 16px;
	display: flex;
	flex-direction: column;
	gap: 20px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

/* Profile Header */
.gs-shop-body .gs-side-profile {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 18px 16px;
	border-radius: 14px;
	background: linear-gradient(135deg, var(--gs-bg-card, #fafafa), var(--gs-bg, #fff));
	border: 1px solid var(--gs-border, #f0f0f1);
	margin-bottom: 16px;
	position: relative;
	overflow: hidden;
}
.gs-shop-body .gs-side-profile::after {
	content: '';
	position: absolute;
	top: -30px;
	left: -30px;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	background: radial-gradient(circle, var(--gs-primary, #ef4056) 0%, transparent 70%);
	opacity: 0.05;
	pointer-events: none;
}
.gs-shop-body .gs-side-profile__avatar {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--gs-primary, #ef4056), #ff6b7a);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.35rem;
	font-weight: 800;
	flex-shrink: 0;
	position: relative;
	box-shadow: 0 4px 14px rgba(239, 64, 86, 0.3);
	overflow: visible;
	transition: transform 0.2s ease;
}
.gs-shop-body .gs-side-profile__avatar:hover {
	transform: scale(1.05);
}
.gs-shop-body .gs-side-profile__avatar--male {
	background: linear-gradient(135deg, var(--gs-blue, #1672dd), #4a9eff);
	box-shadow: 0 4px 14px rgba(22, 114, 221, 0.3);
}
.gs-shop-body .gs-side-profile__avatar--female {
	background: linear-gradient(135deg, var(--gs-accent, #f08000), #ffa940);
	box-shadow: 0 4px 14px rgba(240, 128, 0, 0.3);
}
.gs-shop-body .gs-side-profile__avatar-icon {
	width: 34px;
	height: 34px;
	fill: rgba(255, 255, 255, 0.95);
}
.gs-shop-body .gs-side-profile__status {
	position: absolute;
	bottom: -1px;
	left: -1px;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: var(--gs-green, #00a049);
	border: 2.5px solid var(--gs-bg, #fff);
	box-shadow: 0 0 0 1px var(--gs-green, #00a049);
	z-index: 2;
}
.gs-shop-body .gs-side-profile__status::after {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: var(--gs-green, #00a049);
	animation: gs-profile-status-pulse 2s ease-in-out infinite;
}
@keyframes gs-profile-status-pulse {
	0%, 100% { opacity: 0; transform: scale(1); }
	50% { opacity: 0.4; transform: scale(1.8); }
}
.gs-shop-body .gs-side-profile__info {
	min-width: 0;
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 3px;
}
.gs-shop-body .gs-side-profile__name {
	font-size: 15px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 1.4;
}
.gs-shop-body .gs-side-profile__phone {
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
	font-weight: 600;
	display: flex;
	align-items: center;
	gap: 5px;
	font-variant-numeric: tabular-nums;
}
.gs-shop-body .gs-side-profile__phone::before {
	content: '';
	display: inline-block;
	width: 11px;
	height: 11px;
	flex-shrink: 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238c8c8c' stroke-width='2'%3E%3Cpath d='M22 16.92v3a2 2 0 01-2.18 2 19.79 19.79 0 01-8.63-3.07 19.5 19.5 0 01-6-6 19.79 19.79 0 01-3.07-8.67A2 2 0 014.11 2h3a2 2 0 012 1.72 12.84 12.84 0 00.7 2.81 2 2 0 01-.45 2.11L8.09 9.91a16 16 0 006 6l1.27-1.27a2 2 0 012.11-.45 12.84 12.84 0 002.81.7A2 2 0 0122 16.92z' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

/* Mobile */
@media (max-width: 480px) {
	.gs-shop-body .gs-side-profile {
		padding: 14px 12px;
		gap: 12px;
	}
	.gs-shop-body .gs-side-profile__avatar {
		width: 48px;
		height: 48px;
	}
	.gs-shop-body .gs-side-profile__avatar-icon {
		width: 28px;
		height: 28px;
	}
	.gs-shop-body .gs-side-profile__name {
		font-size: 14px;
	}
}

/* Navigation */
.gs-shop-body .gs-side-nav {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
/* Desktop: hide trigger, show panel inline */
.gs-shop-body .gs-side-nav__trigger {
	display: none;
}
.gs-shop-body .gs-side-nav__panel {
	display: flex;
	flex-direction: column;
	gap: 0;
}
.gs-shop-body .gs-side-nav__group {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.gs-shop-body .gs-side-nav__group + .gs-side-nav__group {
	margin-top: 6px;
}
.gs-shop-body .gs-side-nav__label {
	font-size: 0.7rem;
	font-weight: 700;
	color: #b0b6bc;
	padding: 6px 12px 4px;
	text-transform: none;
	letter-spacing: 0;
}
.gs-shop-body .gs-side-nav__link {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 12px;
	border-radius: 10px;
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--gs-text-secondary);
	transition: all 0.15s ease;
	text-decoration: none;
	position: relative;
}
.gs-shop-body .gs-side-nav__icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	color: #b0b6bc;
	transition: color 0.15s ease;
}
.gs-shop-body .gs-side-nav__text {
	flex: 1;
}
.gs-shop-body .gs-side-nav__badge {
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	border-radius: 10px;
	background: var(--gs-bg-alt);
	color: var(--gs-text-secondary);
	font-size: 0.7rem;
	font-weight: 800;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.15s ease;
}
.gs-shop-body .gs-side-nav__badge--unread {
	background: var(--gs-primary);
	color: #fff;
}
.gs-shop-body .gs-side-nav__link:hover {
	background: var(--gs-bg-alt);
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-side-nav__link:hover .gs-side-nav__icon {
	color: var(--gs-text-secondary);
}
.gs-shop-body .gs-side-nav__link--active {
	background: var(--gs-bg-alt);
	color: var(--gs-primary);
	font-weight: 800;
}
.gs-shop-body .gs-side-nav__link--active .gs-side-nav__icon {
	color: var(--gs-primary);
}
.gs-shop-body .gs-side-nav__link--active .gs-side-nav__badge {
	background: var(--gs-primary);
	color: #fff;
}
.gs-shop-body .gs-side-nav__link--active::before {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 3px;
	height: 60%;
	background: var(--gs-primary);
	border-radius: 4px 0 0 4px;
}
.gs-shop-body .gs-side-nav__divider {
	height: 1px;
	background: var(--gs-bg-alt);
	margin: 4px 0;
}
.gs-shop-body .gs-side-nav__link--danger {
	color: var(--gs-danger);
}
.gs-shop-body .gs-side-nav__link--danger .gs-side-nav__icon {
	color: var(--gs-danger);
}
.gs-shop-body .gs-side-nav__link--danger:hover {
	background: var(--gs-danger-bg);
	color: var(--gs-danger);
}
.gs-shop-body .gs-side-nav__link--danger:hover .gs-side-nav__icon {
	color: var(--gs-danger);
}

/* Support Footer */
.gs-shop-body .gs-side-support {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px;
	background: var(--gs-bg-alt);
	border-radius: 10px;
	margin-top: auto;
}
.gs-shop-body .gs-side-support__icon {
	width: 32px;
	height: 32px;
	color: var(--gs-text-secondary);
	flex-shrink: 0;
}
.gs-shop-body .gs-side-support__title {
	font-size: 0.8rem;
	font-weight: 800;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-side-support__desc {
	font-size: 0.7rem;
	color: var(--gs-text-light);
	font-weight: 600;
	margin-top: 1px;
}

/* ===== Account sidebar — mobile horizontal tabs ===== */
@media (max-width: 1023px) {
	/* Fix: grid items default min-width:auto causes overflow.
	   Set min-width:0 so children can shrink properly. */
	.gs-shop-body .grid.lg\:grid-cols-4 > * {
		min-width: 0;
	}
	/* Sidebar card: compact, not sticky */
	.gs-shop-body .gs-side-card {
		position: static;
		padding: 12px;
		gap: 12px;
		border-radius: 12px;
	}
	/* Profile header: smaller */
	.gs-shop-body .gs-side-profile {
		padding-bottom: 10px;
		gap: 10px;
	}
	.gs-shop-body .gs-side-profile__avatar {
		width: 40px;
		height: 40px;
		font-size: 1rem;
	}
	.gs-shop-body .gs-side-profile__avatar-icon {
		width: 24px;
		height: 24px;
	}
	/* Navigation: dropdown menu on mobile */
	.gs-shop-body .gs-side-nav {
		position: relative;
		flex-direction: column;
		gap: 0;
	}
	/* Dropdown trigger button (shows active item) */
	.gs-shop-body .gs-side-nav__trigger {
		display: flex !important;
		align-items: center;
		gap: 10px;
		padding: 12px 14px;
		border-radius: 10px;
		background: var(--gs-bg-alt);
		font-size: 0.85rem;
		font-weight: 700;
		color: var(--gs-primary);
		cursor: pointer;
		border: none;
		width: 100%;
		font-family: inherit;
		text-align: right;
		transition: background 0.15s ease;
	}
	.gs-shop-body .gs-side-nav__trigger:hover {
		background: var(--gs-bg-hover, #eef0f2);
	}
	.gs-shop-body .gs-side-nav__trigger .gs-side-nav__icon {
		width: 20px;
		height: 20px;
		color: var(--gs-primary);
		flex-shrink: 0;
	}
	.gs-shop-body .gs-side-nav__trigger-text {
		flex: 1;
	}
	.gs-shop-body .gs-side-nav__trigger-chevron {
		width: 20px;
		height: 20px;
		color: var(--gs-text-muted);
		transition: transform 0.25s ease;
		flex-shrink: 0;
	}
	.gs-shop-body .gs-side-nav--open .gs-side-nav__trigger-chevron {
		transform: rotate(180deg);
	}
	/* Dropdown panel: hidden by default, shown when open */
	.gs-shop-body .gs-side-nav__panel {
		display: none !important;
		flex-direction: column;
		gap: 2px;
		margin-top: 4px;
		padding: 8px;
		border-radius: 12px;
		background: var(--gs-bg-card);
		border: 1px solid var(--gs-border);
		box-shadow: 0 4px 16px rgba(0,0,0,0.06);
	}
	.gs-shop-body .gs-side-nav--open .gs-side-nav__panel {
		display: flex !important;
	}
	/* Group labels: visible in dropdown */
	.gs-shop-body .gs-side-nav__label {
		font-size: 0.7rem;
		font-weight: 700;
		color: var(--gs-text-muted);
		padding: 8px 12px 4px;
	}
	.gs-shop-body .gs-side-nav__group {
		flex-direction: column;
		gap: 2px;
	}
	.gs-shop-body .gs-side-nav__group + .gs-side-nav__group {
		margin-top: 4px;
	}
	/* Links: full-width rows in dropdown */
	.gs-shop-body .gs-side-nav__link {
		flex-direction: row;
		padding: 10px 12px;
		border-radius: 8px;
		font-size: 0.82rem;
		gap: 10px;
		white-space: nowrap;
		background: transparent;
	}
	.gs-shop-body .gs-side-nav__link:hover {
		background: var(--gs-bg-alt);
	}
	.gs-shop-body .gs-side-nav__icon {
		width: 18px;
		height: 18px;
	}
	/* Active link: subtle highlight (not the trigger) */
	.gs-shop-body .gs-side-nav__link--active {
		background: var(--gs-primary-bg, #fef0f1);
		color: var(--gs-primary);
		font-weight: 700;
	}
	.gs-shop-body .gs-side-nav__link--active .gs-side-nav__icon {
		color: var(--gs-primary);
	}
	.gs-shop-body .gs-side-nav__link--active .gs-side-nav__badge {
		background: var(--gs-primary);
		color: #fff;
	}
	.gs-shop-body .gs-side-nav__link--active::before {
		display: none;
	}
	/* Divider: horizontal */
	.gs-shop-body .gs-side-nav__divider {
		height: 1px;
		width: 100%;
		margin: 4px 0;
		flex-shrink: 0;
	}
	/* Danger link */
	.gs-shop-body .gs-side-nav__link--danger {
		background: transparent;
	}
	.gs-shop-body .gs-side-nav__link--danger:hover {
		background: var(--gs-danger-bg);
	}
	/* Support: hidden on mobile (takes too much space) */
	.gs-shop-body .gs-side-support {
		display: none;
	}
}

/* Mobile — form grid single column */
@media (max-width: 480px) {
	.gs-shop-body .gs-form-grid {
		grid-template-columns: 1fr;
	}
	.gs-shop-body .gs-addr-grid {
		grid-template-columns: 1fr;
	}
	.gs-shop-body .gs-modal__dialog {
		max-width: 100%;
		border-radius: 16px;
	}
}

/* ===== Address map button + result ===== */
.gs-shop-body .gs-form-textarea-wrap {
	position: relative;
}
.gs-shop-body .gs-addr-map-row {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 8px;
	flex-wrap: wrap;
}
.gs-shop-body .gs-addr-map-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;

    border: 1px solid #e0e0e1;
    border-radius: 8px;
    font-size: 12px;
    background: var(--gs-bg-alt);
    color: var(--gs-text);
    outline: none;
    transition: border-color 0.2s;
	flex-shrink: 0;
}
.gs-shop-body .gs-addr-map-btn:hover {
	border-color: var(--gs-primary);
	background: var(--gs-primary-bg);
}
.gs-shop-body .gs-addr-map-result {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.75rem;
	color: var(--gs-text-secondary);
	background: var(--gs-success-bg);
	border: 1px solid var(--gs-success-bg);
	border-radius: 8px;
	padding: 6px 10px;
}
.gs-shop-body .gs-addr-map-result svg {
	color: var(--gs-green);
	flex-shrink: 0;
}

/* ===== Map modal ===== */
.gs-shop-body .gs-modal--map {
	z-index: 10000;
}
.gs-shop-body .gs-modal__dialog--map {
	max-width: 720px;
	max-height: 90vh;
}
.gs-shop-body .gs-map-toolbar {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 20px;
	border-bottom: 1px solid var(--gs-bg-alt);
	flex-wrap: wrap;
}
.gs-shop-body .gs-map-status {
	font-size: 0.8125rem;
	color: var(--gs-text-secondary);
	flex: 1;
	min-width: 200px;
}
.gs-shop-body .gs-map-container {
	width: 100%;
	height: 400px;
	background: var(--gs-border-dark);
}

/* Leaflet overrides for RTL */
.gs-shop-body .leaflet-container {
	font-family: 'IRANYekan', 'Vazirmatn', Tahoma, sans-serif;
	font-size: 12px;
}
.gs-shop-body .leaflet-control-zoom {
	direction: ltr;
}

@media (max-width: 480px) {
	.gs-shop-body .gs-modal__dialog--map {
		max-width: 100%;
		max-height: 95vh;
	}
	.gs-shop-body .gs-map-container {
		height: 300px;
	}
	.gs-shop-body .gs-addr-map-btn {
		width: 100%;
		justify-content: center;
	}
}

/* ===== Cart Page — Professional Design ===== */

/* Header */
.gs-shop-body .gs-cart-header {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 24px;
	display: none;
}


.gs-shop-body .gs-cart-notices {
	margin-bottom: 16px;
	display: none;
}
.gs-shop-body .gs-cart-notices .woocommerce-error,
.gs-shop-body .gs-cart-notices .woocommerce-message,
.gs-shop-body .gs-cart-notices .woocommerce-info,
.gs-shop-body .gs-cart-notices .wc-block-components-notice-banner {
	list-style: none;
	padding: 12px 16px;
	border-radius: 8px;
	font-size: 0.8125rem;
	font-weight: 600;
	margin: 0 0 8px;
	display: flex;
	align-items: flex-start;
	gap: 8px;
}
.gs-shop-body .gs-cart-notices .woocommerce-error,
.gs-shop-body .gs-cart-notices .wc-block-components-notice-banner.is-error {
	background: #fef0f0;
	color: var(--gs-discount);
	border: 1px solid #fdd8d8;
}
.gs-shop-body .gs-cart-notices .woocommerce-message,
.gs-shop-body .gs-cart-notices .wc-block-components-notice-banner.is-success {
	background: #f0f9f0;
	color: var(--gs-green);
	border: 1px solid #c8e6c9;
}
.gs-shop-body .gs-cart-notices .woocommerce-info,
.gs-shop-body .gs-cart-notices .wc-block-components-notice-banner.is-info {
	background: #e3f2fd;
	color: #1565c0;
	border: 1px solid #bbdefb;
}
.gs-shop-body .gs-cart-notices .woocommerce-error li,
.gs-shop-body .gs-cart-notices .woocommerce-message li,
.gs-shop-body .gs-cart-notices .woocommerce-info li {
	list-style: none;
}
.gs-shop-body .gs-cart-notices .wc-block-components-notice-banner__content {
	flex: 1;
}
.gs-shop-body .gs-cart-notices .wc-block-components-notice-banner svg {
	flex-shrink: 0;
	margin-top: 2px;
}
.gs-shop-body .gs-cart-header__icon {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: var(--gs-primary);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
}
.gs-shop-body .gs-cart-header__text {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.gs-shop-body .gs-cart-header__title {
	font-size: 1.5rem;
	font-weight: 900;
	color: var(--gs-text-dark);
	margin: 0;
	line-height: 1.3;
}
.gs-shop-body .gs-cart-header__count {
	font-size: 0.8125rem;
	color: var(--gs-text-light);
	font-weight: 600;
}

/* Layout */
.gs-shop-body .gs-cart-layout {
	display: grid;
	grid-template-columns: 1fr 340px;
	gap: 20px;
	align-items: start;
}
.gs-shop-body .gs-cart-items {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

/* Toolbar */
.gs-shop-body .gs-cart-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: var(--gs-bg-card);
	border-radius: var(--gs-radius);
	padding: 12px 16px;
	border: 1px solid var(--gs-border);
}
.gs-shop-body .gs-cart-checkbox {
	display: flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--gs-text);
}
.gs-shop-body .gs-cart-checkbox input {
	width: 18px;
	height: 18px;
	accent-color: var(--gs-primary);
	cursor: pointer;
}
.gs-shop-body .gs-cart-toolbar__btn {
	display: flex;
	align-items: center;
	gap: 6px;
	background: none;
	border: none;
	color: var(--gs-text-light);
	font-size: 0.8125rem;
	font-weight: 600;
	cursor: pointer;
	padding: 6px 10px;
	border-radius: 8px;
	transition: var(--gs-transition);
	font-family: inherit;
}
.gs-shop-body .gs-cart-toolbar__btn:hover {
	color: var(--gs-primary);
	background: rgba(239, 64, 86, 0.06);
}

/* Cart Item */
.gs-shop-body .gs-cart-item {
	display: grid;
	grid-template-columns: 28px 96px 1fr auto auto 36px;
	align-items: center;
	gap: 16px;
	background: var(--gs-bg-card);
	border-radius: var(--gs-radius);
	padding: 16px;
	border: 1px solid var(--gs-border);
	transition: var(--gs-transition);
}
.gs-shop-body .gs-cart-item:hover {
	border-color: var(--gs-border-dark);
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
}

/* Checkbox */
.gs-shop-body .gs-cart-item__check {
	display: flex;
	align-items: center;
	justify-content: center;
}
.gs-shop-body .gs-cart-item__check input {
	width: 18px;
	height: 18px;
	accent-color: var(--gs-primary);
	cursor: pointer;
}

/* Image */
.gs-shop-body .gs-cart-item__img {
	display: block;
	width: 96px;
	height: 96px;
	border-radius: 12px;
	overflow: hidden;
	background: var(--gs-bg-alt);
	border: 1px solid var(--gs-border);
}
.gs-shop-body .gs-cart-item__img-el {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* Info */
.gs-shop-body .gs-cart-item__info {
	min-width: 0;
}
.gs-shop-body .gs-cart-item__name {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-size: 0.75rem;
	font-weight: 600;
	color: var(--gs-text-dark);
	line-height: 1.4;
	text-decoration: none;
	transition: var(--gs-transition);
	
	font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
	font-variant-numeric: lining-nums;
	-webkit-font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
	-moz-font-feature-settings: "ss01" off, "ss02" off, "lnum" on;
}
.gs-shop-body .gs-cart-item__name:hover {
	color: var(--gs-primary);
}
.gs-shop-body .gs-cart-item__variant-info {
	font-size: 0.6875rem;
	color: var(--gs-text-muted, #8c8c8c);
	margin-top: 9px;
	line-height: 1.4;
}
/* Add-on breakdown in cart item */
.gs-shop-body .gs-cart-item__addons {
	margin-top: 8px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.gs-shop-body .gs-cart-item__addon-row {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.75rem;
	color: var(--gs-text-secondary, #6b6f7b);
	background: var(--gs-bg-alt, #fafafa);
	border-radius: 8px;
	padding: 6px 10px;
	border: 1px solid var(--gs-border, #f0f0f1);
}
.gs-shop-body .gs-cart-item__addon-icon {
	flex-shrink: 0;
	font-size: 0.875rem;
	line-height: 1;
}
.gs-shop-body .gs-cart-item__addon-title {
	flex: 1;
	min-width: 0;
	font-weight: 500;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.gs-shop-body .gs-cart-item__addon-price {
	flex-shrink: 0;
	font-weight: 600;
	color: var(--gs-text, #3f4064);
}
.gs-shop-body .gs-cart-item__addon-price .woocommerce-Price-amount {
	font-size: 0.75rem;
}
.gs-shop-body .gs-cart-item__discount {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 8px;
}
.gs-shop-body .gs-cart-item__discount-badge {
	background: var(--gs-discount);
	color: var(--gs-text-dark);
	font-size: 0.6875rem;
	font-weight: 800;
	padding: 2px 8px;
	border-radius: 6px;
	line-height: 1.4;
}
.gs-shop-body .gs-cart-item__price-old {
	font-size: 0.75rem;
	color: var(--gs-text-muted);
	text-decoration: line-through;
}

/* Mobile row (hidden on desktop) */
.gs-shop-body .gs-cart-item__mobile-row {
	display: none;
}

/* Quantity */
.gs-shop-body .gs-cart-item__qty-wrap {
	display: flex;
	align-items: center;
}
.gs-shop-body .gs-cart-qty {
	display: flex;
	align-items: center;
	gap: 0;
	border: 1.5px solid var(--gs-border-dark);
	border-radius: 10px;
	overflow: hidden;
	background: var(--gs-bg-card);
}
.gs-shop-body .gs-cart-qty__btn {
	width: 25px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: none;
	background: none;
	cursor: pointer;
	color: var(--gs-text-secondary);
	transition: var(--gs-transition);
	font-family: inherit;
}
.gs-shop-body .gs-cart-qty__btn:hover {
	background: rgba(239, 64, 86, 0.06);
	color: var(--gs-primary);
}
.gs-shop-body .gs-cart-qty__btn:active {
	transform: scale(0.92);
}
.gs-shop-body .gs-cart-qty__val {
	min-width: 28px;
	text-align: center;
	font-size: 0.875rem;
	font-weight: 800;
	color: var(--gs-text-dark);
	font-variant-numeric: tabular-nums;
}

/* Desktop price column */
.gs-shop-body .gs-cart-item__price-col {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
	min-width: 100px;
}
.gs-shop-body .gs-cart-item__price-old-d {
	font-size: 0.75rem;
	color: var(--gs-text-muted);
	text-decoration: line-through;
}
.gs-shop-body .gs-cart-item__price-final {
	font-size: 1rem;
	font-weight: 900;
	color: var(--gs-text-dark);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}
.gs-shop-body .gs-cart-item__price-final b,
.gs-shop-body .gs-cart-item__price-final .woocommerce-Price-amount {
	font-weight: 900;
}

/* Remove button */
.gs-shop-body .gs-cart-item__remove {
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: none;
	background: none;
	color: var(--gs-text-muted);
	cursor: pointer;
	border-radius: 10px;
	transition: var(--gs-transition);
}
.gs-shop-body .gs-cart-item__remove:hover {
	color: var(--gs-primary);
	background: rgba(239, 64, 86, 0.08);
}

/* Continue shopping link */
.gs-shop-body .gs-cart-continue {
display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--gs-text-secondary);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    padding: 6px 4px 5px 9px;
    border-radius: 10px;
    transition: var(--gs-transition);
    align-self: flex-start;
    border: 1px dashed var(--gs-discount);
}
.gs-shop-body .gs-cart-continue:hover {
	color: var(--gs-primary);
	background: rgba(239, 64, 86, 0.04);
}
.gs-shop-body .gs-cart-continue svg {
	transform: scaleX(-1);
}

/* ===== Summary ===== */
.gs-shop-body .gs-cart-summary {
	position: sticky;
	top: 20px;
}
.gs-shop-body .gs-cart-summary__card {
	background: var(--gs-bg-card);
	border-radius: var(--gs-radius);
	border: 1px solid var(--gs-border);
	padding: 20px;
	display: flex;
	flex-direction: column;
	gap: 16px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.03);
}
.gs-shop-body .gs-cart-summary__title {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 1.0625rem;
	font-weight: 900;
	color: var(--gs-text-dark);
	margin: 0;
}
.gs-shop-body .gs-cart-summary__title svg {
	color: var(--gs-green);
}
.gs-shop-body .gs-cart-summary__rows {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.gs-shop-body .gs-cart-summary__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 0.8125rem;
	color: var(--gs-text);
	font-weight: 600;
}
.gs-shop-body .gs-cart-summary__row span:first-child {
	display: flex;
	align-items: center;
	gap: 6px;
}
.gs-shop-body .gs-cart-summary__row span:last-child {
	font-weight: 800;
	color: var(--gs-text-dark);
	font-variant-numeric: tabular-nums;
}
.gs-shop-body .gs-cart-summary__row--discount {
	color: var(--gs-green);
}
.gs-shop-body .gs-cart-summary__row--discount span:last-child {
	color: var(--gs-green);
}
.gs-shop-body .gs-cart-summary__row--coupon span:first-child {
	color: var(--gs-green);
}
.gs-shop-body .gs-cart-summary__row--coupon span:last-child {
	color: var(--gs-green);
	font-weight: 800;
}
.gs-shop-body .gs-cart-coupon-chip {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	background: rgba(0, 160, 73, 0.08);
	padding: 3px 10px;
	border-radius: 8px;
	font-size: 0.75rem;
}
.gs-shop-body .gs-cart-summary__row--muted {
	color: var(--gs-text-secondary);
	font-size: 11px;
}
.gs-shop-body .gs-cart-summary__row--muted span:last-child {
	color: var(--gs-discount);
	font-weight: 700;
}

/* Coupon form */
.gs-shop-body .gs-cart-coupon-form {
	display: flex;
	gap: 8px;
}
.gs-shop-body .gs-cart-coupon-input {
	flex: 1;
	border: 1.5px solid var(--gs-border-dark);
	border-radius: 10px;
	padding: 10px 14px;
	font-size: 0.8125rem;
	font-family: inherit;
	background: var(--gs-bg-card);
	transition: var(--gs-transition);
}
.gs-shop-body .gs-cart-coupon-input:focus {
	outline: none;
	border-color: var(--gs-primary);
	box-shadow: 0 0 0 3px rgba(239, 64, 86, 0.1);
}
.gs-shop-body .gs-cart-coupon-btn {
	border: none;
	background: var(--gs-bg);
	color: var(--gs-text);
	font-size: 0.8125rem;
	font-weight: 800;
	padding: 10px 18px;
	border-radius: 10px;
	cursor: pointer;
	transition: var(--gs-transition);
	font-family: inherit;
}
.gs-shop-body .gs-cart-coupon-btn:hover {
	background: var(--gs-border-dark);
}

/* Divider */
.gs-shop-body .gs-cart-summary__divider {
	height: 1px;
	background: var(--gs-border);
	margin: 0;
}

/* Total */
.gs-shop-body .gs-cart-summary__total {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.gs-shop-body .gs-cart-summary__total-val {
	font-size: 17px !important;
	font-weight: 900;
	color: var(--gs-primary);
	font-variant-numeric: tabular-nums;
}
.gs-shop-body .gs-cart-summary__total-val b,
.gs-shop-body .gs-cart-summary__total-val .woocommerce-Price-amount,
.gs-shop-body .gs-cart-summary__total-val .woocommerce-Price-amount bdi {
	font-weight: 900;
	font-size: inherit;
}

/* Checkout button */
.gs-shop-body .gs-cart-checkout-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: var(--gs-primary);
	color: #fff;
	font-size: 1rem;
	font-weight: 800;
	padding: 14px 20px;
	border-radius: 12px;
	text-decoration: none;
	transition: var(--gs-transition);
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
}
.gs-shop-body .gs-cart-checkout-btn:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(239, 64, 86, 0.35);
	color: #fff;
}
.gs-shop-body .gs-cart-checkout-btn:active {
	transform: translateY(0);
}
.gs-shop-body .gs-cart-checkout-btn svg {
	transform: scaleX(-1);
}

/* Back link */
.gs-shop-body .gs-cart-back-link {
	text-align: center;
	font-size: 0.8125rem;
	color: var(--gs-text-light);
	text-decoration: none;
	transition: var(--gs-transition);
	display: none;
}
.gs-shop-body .gs-cart-back-link:hover {
	color: var(--gs-primary);
}

/* ===== Empty Cart ===== */
.gs-shop-body .gs-cart-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 60px 20px;
	max-width: 420px;
	margin: 40px auto;
	background: var(--gs-bg-card);
	border-radius: var(--gs-radius);
	border: 1px solid var(--gs-border);
}
.gs-shop-body .gs-cart-empty__icon {
	color: var(--gs-text-muted);
	margin-bottom: 20px;
}
.gs-shop-body .gs-cart-empty__title {
	font-size: 1.25rem;
	font-weight: 900;
	color: var(--gs-text-dark);
	margin: 0 0 8px;
}
.gs-shop-body .gs-cart-empty__text {
	font-size: 0.875rem;
	color: var(--gs-text-light);
	margin: 0 0 24px;
}
.gs-shop-body .gs-cart-empty__btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--gs-primary);
	color: #fff;
	font-size: 0.9375rem;
	font-weight: 800;
	padding: 12px 32px;
	border-radius: 12px;
	text-decoration: none;
	transition: var(--gs-transition);
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
}
.gs-shop-body .gs-cart-empty__btn:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
	color: #fff;
	background: var(--gs-primary-hover);
}

/* ===== Responsive ===== */
@media (max-width: 1024px) {
	.gs-shop-body .gs-cart-layout {
		grid-template-columns: 1fr;
	}
	.gs-shop-body .gs-cart-summary {
		position: static;
	}
}
@media (max-width: 768px) {
	.gs-shop-body .gs-cart-item {
		grid-template-columns: 28px 80px 1fr 32px;
		grid-template-areas:
			"check img info remove"
			"check img mobile mobile";
		gap: 12px;
		padding: 12px;
	}
	.gs-shop-body .gs-cart-item__check { grid-area: check; align-self: start; }
	.gs-shop-body .gs-cart-item__img { grid-area: img; width: 80px; height: 80px; }
	.gs-shop-body .gs-cart-item__info { grid-area: info; }
	.gs-shop-body .gs-cart-item__qty-wrap { display: none; }
	.gs-shop-body .gs-cart-item__price-col { display: none; }
	.gs-shop-body .gs-cart-item__remove { grid-area: remove; align-self: start; }
	.gs-shop-body .gs-cart-item__mobile-row {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		grid-area: mobile;
		margin-top: 8px;
	}
	.gs-shop-body .gs-cart-item__total {
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		gap: 2px;
	}
	.gs-shop-body .gs-cart-item__total-label {
		font-size: 0.6875rem;
		color: var(--gs-text-light);
	}
	.gs-shop-body .gs-cart-item__total-val {
		font-size: 0.9375rem;
		font-weight: 900;
		color: var(--gs-text-dark);
	}
	.gs-shop-body .gs-cart-item__total-val b,
	.gs-shop-body .gs-cart-item__total-val .woocommerce-Price-amount {
		font-weight: 900;
	}
	.gs-shop-body .gs-cart-header__icon {
		width: 44px;
		height: 44px;
		border-radius: 12px;
	}
	.gs-shop-body .gs-cart-header__icon svg {
		width: 22px;
		height: 22px;
	}
	.gs-shop-body .gs-cart-header__title {
		font-size: 1.25rem;
	}
}
@media (max-width: 480px) {
	.gs-shop-body .gs-cart-item {
		grid-template-columns: 24px 64px 1fr 28px;
	}
	.gs-shop-body .gs-cart-item__img {
		width: 64px;
		height: 64px;
	}
	.gs-shop-body .gs-cart-summary__card {
		padding: 16px;
	}
}

/* ===== Checkout Page — Professional Layout ===== */

/* Checkout notices — error/success/info messages */
.gs-shop-body .woocommerce-NoticeGroup,
.gs-shop-body .gs-checkout-main .woocommerce-error,
.gs-shop-body .gs-checkout-main .woocommerce-message,
.gs-shop-body .gs-checkout-main .woocommerce-info,
.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner {
	list-style: none;
	padding: 16px 20px;
	border-radius: 12px;
	font-size: 0.9375rem;
	font-weight: 700;
	margin: 0 0 12px;
	display: flex;
	align-items: flex-start;
	gap: 10px;
	line-height: 1.6;
}
.gs-shop-body .gs-checkout-main .woocommerce-error,
.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner.is-error {
	background: var(--gs-danger-bg);
	color: var(--gs-danger);
	border: 2px solid var(--gs-danger-bg);
}
.gs-shop-body .gs-checkout-main .woocommerce-message,
.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner.is-success {
	background: var(--gs-success-bg);
	color: var(--gs-green);
	border: 2px solid var(--gs-success-bg);
}
.gs-shop-body .gs-checkout-main .woocommerce-info,
.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner.is-info {
	background: var(--gs-info-bg);
	color: var(--gs-blue);
	border: 2px solid var(--gs-info-bg);
}
.gs-shop-body .gs-checkout-main .woocommerce-error li,
.gs-shop-body .gs-checkout-main .woocommerce-message li,
.gs-shop-body .gs-checkout-main .woocommerce-info li {
	list-style: none;
}
.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner__content {
	flex: 1;
}
.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner svg {
	flex-shrink: 0;
	margin-top: 3px;
	width: 22px;
	height: 22px;
}

/* Checkout notices — mobile responsive */
@media (max-width: 768px) {
	.gs-shop-body .woocommerce-NoticeGroup,
	.gs-shop-body .gs-checkout-main .woocommerce-error,
	.gs-shop-body .gs-checkout-main .woocommerce-message,
	.gs-shop-body .gs-checkout-main .woocommerce-info,
	.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner {
		font-size: 0.8125rem;
		padding: 12px 14px;
		border-radius: 10px;
		gap: 8px;
		width: 100%;
		box-sizing: border-box;
	}
	.gs-shop-body .woocommerce-NoticeGroup {
		width: 100%;
	}
	.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner svg {
		width: 18px;
		height: 18px;
	}
}
@media (max-width: 480px) {
	.gs-shop-body .gs-checkout-main .woocommerce-error,
	.gs-shop-body .gs-checkout-main .woocommerce-message,
	.gs-shop-body .gs-checkout-main .woocommerce-info,
	.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner {
		font-size: 0.75rem;
		padding: 10px 12px;
		line-height: 1.5;
		font-weight: 600;
	}
	.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner svg {
		width: 16px;
		height: 16px;
	}
}

/* ===== Checkout — Modern Redesign ===== */

/* Layout: 2-column grid — main left, summary right */
.gs-shop-body .gs-checkout-layout {
	display: grid;
	grid-template-columns: 1fr 360px;
	gap: 24px;
	align-items: start;
	padding: 5px 0 48px;
	min-width: 0;
	max-width: 100%;
}

/* Step badge (numbered sections) */
.gs-shop-body .gs-checkout-step-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--gs-primary, var(--gs-primary));
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	flex-shrink: 0;
}

/* Main column */
.gs-shop-body .gs-checkout-main {
	display: flex;
	flex-direction: column;
	gap: 16px;
	min-width: 0;
	max-width: 100%;
	overflow: hidden;
}
.gs-shop-body .gs-checkout-main > form.checkout {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin: 0;
	min-width: 0;
	max-width: 100%;
	overflow: hidden;
}
/* Hide non-visual elements that create extra flex gaps */
.gs-shop-body .gs-checkout-main > form.checkout > script,
.gs-shop-body .gs-checkout-main > form.checkout > wc-order-attribution-inputs,
.gs-shop-body .gs-checkout-main > form.checkout > .woocommerce-hidden-fields,
.gs-shop-body .gs-checkout-main > form.checkout > style,
.gs-shop-body .gs-checkout-main > .woocommerce-notices-wrapper:empty,
.gs-shop-body .gs-checkout-main > .woocommerce-notices-wrapper {
	display: none !important;
}

/* Login notice */
.gs-shop-body .gs-checkout-login-notice {
	display: flex;
	align-items: center;
	gap: 10px;
	background: var(--gs-info-bg);
	border: 1px solid var(--gs-info-bg);
	border-radius: 14px;
	padding: 14px 18px;
	color: var(--gs-info);
	font-size: 13px;
	font-weight: 600;
}
.gs-shop-body .gs-checkout-login-notice svg {
	flex-shrink: 0;
	color: #0891b2;
}
.gs-shop-body .gs-checkout-login-btn {
	margin-right: auto;
	background: #0891b2;
	color: #fff;
	padding: 8px 18px;
	border-radius: 10px;
	font-size: 12px;
	font-weight: 800;
	text-decoration: none;
	white-space: nowrap;
	transition: all 0.2s;
}
.gs-shop-body .gs-checkout-login-btn:hover {
	background: #0e7490;
}

/* ===== Checkout Coupon Form ===== */
.gs-shop-body .woocommerce-form-coupon-toggle {
	margin: 0 !important;
	display: none !important;
}
.gs-shop-body .woocommerce-form-coupon-toggle .wc-block-components-notice-banner {
	background: none !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: none !important;
	color: inherit !important;
	display: block !important;
}
.gs-shop-body .woocommerce-form-coupon-toggle .wc-block-components-notice-banner svg {
	display: none !important;
}
.gs-shop-body .woocommerce-form-coupon-toggle .wc-block-components-notice-banner__content {
	padding: 0 !important;
}
.gs-shop-body .gs-coupon-toggle-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-primary, var(--gs-primary));
	text-decoration: none;
	cursor: pointer;
	padding: 8px 16px;
	border-radius: 10px;
	border: 1px dashed var(--gs-primary-bg);
	background: var(--gs-primary-bg);
	transition: all 0.2s;
}
.gs-shop-body .gs-coupon-toggle-link:hover {
	background: var(--gs-primary-bg-hover);
	border-color: var(--gs-primary-light);
	border-style: solid;
}
.gs-shop-body .checkout_coupon.woocommerce-form-coupon {
	display: flex;
	align-items: center;
	gap: 10px;
	background: #fbf8f4;
	border: 1px solid #e5e3dc;
	border-radius: 14px;
	padding: 14px 18px;
	margin: 0;
}
.gs-shop-body .checkout_coupon .form-row {
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
}
.gs-shop-body .checkout_coupon .form-row-first {
	flex: 1 1 auto;
}
.gs-shop-body .checkout_coupon .form-row-last {
	flex: 0 0 auto;
}
.gs-shop-body .checkout_coupon .clear {
	display: none;
}
.gs-shop-body .checkout_coupon label {
	display: none;
}
.gs-shop-body .checkout_coupon input[type="text"] {
	width: 100%;
	border: 1px solid #e5e3dc;
	border-radius: 10px;
	padding: 10px 14px;
	font-size: 13px;
	font-weight: 600;
	font-family: inherit;
	background: var(--gs-bg-card);
	color: var(--gs-text-dark);
	outline: none;
	transition: border-color 0.15s, box-shadow 0.15s;
}
.gs-shop-body .checkout_coupon input[type="text"]:focus {
	border-color: var(--gs-primary, var(--gs-primary));
	box-shadow: 0 0 0 3px rgba(239, 64, 86, 0.1);
}
.gs-shop-body .checkout_coupon input[type="text"]::placeholder {
	color: var(--gs-text-light);
	font-weight: 500;
}
.gs-shop-body .checkout_coupon button[type="submit"] {
	background: var(--gs-primary, var(--gs-primary));
	color: #fff;
	border: none;
	border-radius: 10px;
	padding: 10px 22px;
	font-size: 13px;
	font-weight: 700;
	font-family: inherit;
	cursor: pointer;
	white-space: nowrap;
	transition: all 0.2s;
}
.gs-shop-body .checkout_coupon button[type="submit"]:hover {
	background: var(--gs-primary-hover, #d6354c);
}
.gs-shop-body .checkout_coupon button[type="submit"]:active {
	transform: scale(0.97);
}

/* Pending order notice */
.gs-shop-body .gs-checkout-pending-notice {
	display: flex;
	align-items: center;
	gap: 10px;
	background: var(--gs-warning-bg);
	border: 1px solid var(--gs-warning-bg);
	border-radius: 14px;
	padding: 14px 18px;
	color: var(--gs-accent);
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 16px;
	flex-wrap: wrap;
}
.gs-shop-body .gs-checkout-pending-notice svg {
	flex-shrink: 0;
	color: var(--gs-accent);
}
.gs-shop-body .gs-checkout-pending-btn {
	padding: 7px 16px;
	border-radius: 10px;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	transition: all 0.2s;
}
.gs-shop-body .gs-checkout-pending-btn--pay {
	background: var(--gs-accent);
	color: var(--gs-text-on-accent);
}
.gs-shop-body .gs-checkout-pending-btn--pay:hover {
	background: var(--gs-accent);
}
.gs-shop-body .gs-checkout-pending-btn--cancel {
	background: var(--gs-border);
	color: var(--gs-text-light);
}
.gs-shop-body .gs-checkout-pending-btn--cancel:hover {
	background: var(--gs-border-dark);
	color: var(--gs-text);
}

/* ===== Address Selector ===== */
.gs-shop-body .gs-checkout-addresses {
	background: var(--gs-bg-card);
	border-radius: 16px;
	padding: 24px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
	border: 1px solid var(--gs-border);
	overflow: hidden;
	transition: box-shadow 0.2s;
}
.gs-shop-body .gs-checkout-addresses:hover {
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
}

.gs-shop-body .gs-checkout-addresses__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 18px;
}
.gs-shop-body .gs-checkout-addresses__title {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 16px;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0;
}
.gs-shop-body .gs-checkout-addresses__title svg {
	color: var(--gs-primary, var(--gs-primary));
}
.gs-shop-body .gs-checkout-addresses__add {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 12px;
	font-weight: 700;
	color: var(--gs-primary, var(--gs-primary));
	text-decoration: none;
	padding: 7px 14px;
	border-radius: 10px;
	border: 1px solid var(--gs-primary-bg);
	background: var(--gs-primary-bg);
	transition: all 0.2s;
	white-space: nowrap;
}
.gs-shop-body .gs-checkout-addresses__add:hover {
	background: var(--gs-primary-bg-hover);
	border-color: var(--gs-primary-light);
}

/* Empty state */
.gs-shop-body .gs-checkout-addresses__empty {
	text-align: center;
	padding: 28px 16px;
}
.gs-shop-body .gs-checkout-addresses__empty p {
	color: var(--gs-text-secondary);
	font-size: 14px;
	margin-bottom: 12px;
}

/* Guest form */
.gs-shop-body .gs-checkout-guest-form {
	padding-top: 4px;
}
.gs-shop-body .gs-checkout-guest-form .gs-form-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}
.gs-shop-body .gs-checkout-guest-form .gs-form-field--full {
	grid-column: 1 / -1;
}
.gs-shop-body .gs-checkout-guest-form .gs-form-label {
	display: block;
	font-size: 12px;
	font-weight: 700;
	color: var(--gs-text);
	margin-bottom: 6px;
}
.gs-shop-body .gs-checkout-guest-form .gs-form-input,
.gs-shop-body .gs-checkout-guest-form .gs-form-textarea {
	width: 100%;
	padding: 11px 14px;
	border: 2px solid var(--gs-border-dark);
	border-radius: 10px;
	font-size: 13px;
	font-family: inherit;
	transition: border-color 0.15s, box-shadow 0.15s;
	box-sizing: border-box;
}
.gs-shop-body .gs-checkout-guest-form .gs-form-input:focus,
.gs-shop-body .gs-checkout-guest-form .gs-form-textarea:focus {
	outline: none;
	border-color: var(--gs-primary, var(--gs-primary));
	box-shadow: 0 0 0 3px rgba(239, 64, 86, 0.08);
}
.gs-shop-body .gs-checkout-guest-form .gs-form-textarea {
	resize: vertical;
	min-height: 64px;
}
.gs-shop-body .gs-checkout-guest-form__login-hint {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 14px;
	padding: 10px 14px;
	background: var(--gs-info-bg);
	border: 1px solid #bae6fd;
	border-radius: 10px;
	font-size: 11px;
	color: #0369a1;
}
.gs-shop-body .gs-checkout-guest-form__login-hint svg {
	flex-shrink: 0;
	color: #0284c7;
}
.gs-shop-body .gs-checkout-guest-form__login-hint a {
	color: var(--gs-primary, var(--gs-primary));
	font-weight: 800;
	text-decoration: none;
}

/* Horizontal scroll container */
.gs-shop-body .gs-checkout-addresses__scroll {
	display: flex;
	gap: 12px;
	overflow-x: auto;
	overflow-y: hidden;
	padding-bottom: 8px;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scrollbar-color: var(--gs-border-dark) transparent;
}
.gs-shop-body .gs-checkout-addresses__scroll::-webkit-scrollbar {
	height: 5px;
}
.gs-shop-body .gs-checkout-addresses__scroll::-webkit-scrollbar-track {
	background: transparent;
}
.gs-shop-body .gs-checkout-addresses__scroll::-webkit-scrollbar-thumb {
	background: var(--gs-border-dark);
	border-radius: 3px;
}
.gs-shop-body .gs-checkout-addresses__scroll::-webkit-scrollbar-thumb:hover {
	background: var(--gs-text-light);
}

/* Address card (selectable) — checkout context */
.gs-shop-body .gs-checkout-addresses .gs-addr-card {
	position: relative;
	background: var(--gs-bg-card);
	border: 2px solid var(--gs-border-dark);
	border-radius: 14px;
	padding: 16px 18px;
	cursor: pointer;
	transition: all 0.2s ease;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	min-width: 280px;
	max-width: 320px;
	flex-shrink: 0;
	scroll-snap-align: start;
	margin: 0;
	overflow: hidden;
}
.gs-shop-body .gs-checkout-addresses .gs-addr-card:hover {
	border-color: var(--gs-discount);
}
.gs-shop-body .gs-checkout-addresses .gs-addr-card--selected {
	border-color: var(--gs-primary);
	background: var(--gs-primary-bg);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
}

/* Radio indicator */
.gs-shop-body .gs-checkout-addresses .gs-addr-card input[type="radio"] {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.gs-shop-body .gs-checkout-addresses .gs-addr-card__radio {
	width: 22px;
	height: 22px;
	border-radius: 50%;
	border: 2px solid var(--gs-border-dark);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	margin-top: 2px;
	transition: all 0.2s;
}
.gs-shop-body .gs-checkout-addresses .gs-addr-card__radio svg {
	opacity: 0;
	color: #fff;
	transition: opacity 0.2s;
}
.gs-shop-body .gs-checkout-addresses .gs-addr-card--selected .gs-addr-card__radio {
	background: var(--gs-primary, var(--gs-primary));
	border-color: var(--gs-primary, var(--gs-primary));
}
.gs-shop-body .gs-checkout-addresses .gs-addr-card--selected .gs-addr-card__radio svg {
	opacity: 1;
}

/* Card body */
.gs-shop-body .gs-checkout-addresses .gs-addr-card__body {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.gs-shop-body .gs-checkout-addresses .gs-addr-card__title {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-checkout-addresses .gs-addr-card__badge {
	font-size: 10px;
    font-weight: 600;
    color: var(--gs-primary, var(--gs-primary));
    background: var(--gs-primary-bg);
    padding: 1px 6px;
    border-radius: 6px;
    border: 1px solid var(--gs-primary);
}
.gs-shop-body .gs-checkout-addresses .gs-addr-card__name {
    font-size: 13px;
    font-weight: 800;
    color: var(--gs-text, #1a1a1a);
}
.gs-shop-body .gs-checkout-addresses .gs-addr-card__addr {
	font-size: 11px;
	color: var(--gs-text-secondary);
	line-height: 1.6;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.gs-shop-body .gs-checkout-addresses .gs-addr-card__meta {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 6px;
	padding-top: 8px;
	border-top: 1px solid var(--gs-bg-alt);
}
.gs-shop-body .gs-checkout-addresses .gs-addr-card__phone,
.gs-shop-body .gs-checkout-addresses .gs-addr-card__postal {
	font-size: 12px;
	color: var(--gs-text-light);
	display: flex;
	align-items: center;
	gap: 4px;
	direction: ltr;
}

/* Hidden WooCommerce fields */
.gs-shop-body .gs-checkout-hidden-fields {
	display: none !important;
}
.gs-shop-body .gs-hidden-field {
	display: none !important;
}

/* Email field (guest checkout) */
.gs-shop-body .gs-checkout-email-field {
	background: var(--gs-bg-card);
	border-radius: 16px;
	padding: 18px 22px;
	border: 1px solid var(--gs-border);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}
.gs-shop-body .gs-checkout-email-field__label {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text);
	margin-bottom: 10px;
}
.gs-shop-body .gs-checkout-email-field__label svg {
	color: var(--gs-text-secondary);
}
.gs-shop-body .gs-checkout-email-field__input {
	width: 100%;
	padding: 11px 16px;
	border: 2px solid var(--gs-border-dark);
	border-radius: 10px;
	font-size: 13px;
	font-family: inherit;
	transition: border-color 0.15s, box-shadow 0.15s;
	direction: ltr;
	text-align: left;
	box-sizing: border-box;
}
.gs-shop-body .gs-checkout-email-field__input:focus {
	outline: none;
	border-color: var(--gs-primary, var(--gs-primary));
	box-shadow: 0 0 0 3px rgba(239, 64, 86, 0.08);
}

/* ===== Delivery Section ===== */
.gs-shop-body .gs-checkout-delivery {
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border);
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
	transition: box-shadow 0.2s;
}
.gs-shop-body .gs-checkout-delivery:hover {
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
}
.gs-shop-body .gs-checkout-delivery__header {
	padding: 18px 22px;
	border-bottom: 1px solid var(--gs-bg-alt);
}
.gs-shop-body .gs-checkout-delivery__title {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 16px;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0;
}
.gs-shop-body .gs-checkout-delivery__title svg {
	color: var(--gs-primary, var(--gs-primary));
}
.gs-shop-body .gs-checkout-delivery__body {
	padding: 18px 22px;
}

/* Payment review section */
.gs-shop-body .gs-checkout-review {
	background: var(--gs-bg-card);
	border-radius: 16px;
	padding: 24px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
	border: 1px solid var(--gs-border);
	overflow: hidden;
	transition: box-shadow 0.2s;
}
.gs-shop-body .gs-checkout-review:hover {
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
}
.gs-shop-body .gs-checkout-review__title {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 16px;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0 0 18px;
}
.gs-shop-body .gs-checkout-review__title svg {
	color: var(--gs-primary, var(--gs-primary));
}

/* Payment wrapper */
.gs-shop-body .gs-checkout-payment-wrap {
	margin: 0;
}

/* ===== Installment Payment (Checkout) ===== */
.gs-shop-body .gs-installment-payment {
	margin-top: 16px;
	border-top: 1px dashed var(--gs-border, #f0f0f1);
	padding-top: 16px;
}
.gs-shop-body .gs-installment-toggle {
	display: flex;
	align-items: center;
	gap: 8px;
	width: 100%;
	padding: 14px 18px;
	background: var(--gs-bg-card, #fafafa);
	border: 1.5px solid var(--gs-border, #f0f0f1);
	border-radius: 12px;
	cursor: pointer;
	font-size: 15px;
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
	transition: all 0.2s;
	font-family: inherit;
}
.gs-shop-body .gs-installment-toggle:hover {
	border-color: var(--gs-accent, #f08000);
	background: rgba(240, 128, 0, 0.04);
}
.gs-shop-body .gs-installment-toggle--active {
	border-color: var(--gs-accent, #f08000);
	background: rgba(240, 128, 0, 0.06);
	color: var(--gs-accent, #f08000);
}
.gs-shop-body .gs-installment-toggle__chevron {
	margin-right: auto;
	transition: transform 0.2s;
}
.gs-shop-body .gs-installment-toggle--active .gs-installment-toggle__chevron {
	transform: rotate(180deg);
}
.gs-shop-body .gs-installment-options {
	margin-top: 12px;
	padding: 16px;
	background: var(--gs-bg-card, #fafafa);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 12px;
	animation: gs-fade-in 0.2s ease;
}
@keyframes gs-fade-in {
	from { opacity: 0; transform: translateY(-8px); }
	to { opacity: 1; transform: translateY(0); }
}
.gs-shop-body .gs-installment-options__desc {
	font-size: 13px;
	color: var(--gs-text-muted, #8c8c8c);
	margin: 0 0 14px;
}
.gs-shop-body .gs-installment-options__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
}
.gs-shop-body .gs-installment-option {
	cursor: pointer;
	display: block;
}
.gs-shop-body .gs-installment-option__radio {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}
.gs-shop-body .gs-installment-option__card {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px;
	background: #fff;
	border: 1.5px solid var(--gs-border, #f0f0f1);
	border-radius: 12px;
	transition: all 0.2s;
	position: relative;
}
.gs-shop-body .gs-installment-option__card:hover {
	border-color: var(--gs-text-muted, #8c8c8c);
	box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.gs-shop-body .gs-installment-option__icon {
	width: 44px;
	height: 44px;
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.gs-shop-body .gs-installment-option--snappay .gs-installment-option__icon {
	background: rgba(0, 142, 250, 0.1);
	color: #008efa;
}
.gs-shop-body .gs-installment-option--snappay.gs-installment-option--selected .gs-installment-option__card {
	border-color: #008efa;
	background: rgba(0, 142, 250, 0.03);
}
.gs-shop-body .gs-installment-option--digipay .gs-installment-option__icon {
	background: rgba(1, 64, 255, 0.1);
	color: #0140ff;
}
.gs-shop-body .gs-installment-option--digipay.gs-installment-option--selected .gs-installment-option__card {
	border-color: #0140ff;
	background: rgba(1, 64, 255, 0.03);
}
.gs-shop-body .gs-installment-option--torobpay .gs-installment-option__icon {
	background: rgba(156, 230, 105, 0.15);
	color: #6db800;
}
.gs-shop-body .gs-installment-option--torobpay.gs-installment-option--selected .gs-installment-option__card {
	border-color: #6db800;
	background: rgba(156, 230, 105, 0.05);
}
.gs-shop-body .gs-installment-option__info {
	flex: 1;
	min-width: 0;
}
.gs-shop-body .gs-installment-option__name {
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-text-dark, #1a1a1a);
}
.gs-shop-body .gs-installment-option__desc {
	font-size: 11px;
	color: var(--gs-text-muted, #8c8c8c);
	margin-top: 2px;
}
.gs-shop-body .gs-installment-option__check {
	width: 22px;
	height: 22px;
	border-radius: 50%;
	border: 2px solid var(--gs-border, #f0f0f1);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: all 0.2s;
	color: transparent;
}
.gs-shop-body .gs-installment-option--selected .gs-installment-option__check {
	border-color: currentColor;
	color: inherit;
}
.gs-shop-body .gs-installment-option--snappay.gs-installment-option--selected .gs-installment-option__check {
	color: #008efa;
}
.gs-shop-body .gs-installment-option--digipay.gs-installment-option--selected .gs-installment-option__check {
	color: #0140ff;
}
.gs-shop-body .gs-installment-option--torobpay.gs-installment-option--selected .gs-installment-option__check {
	color: #6db800;
}
.gs-shop-body .gs-installment-notice {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 14px;
	padding: 10px 14px;
	background: rgba(240, 128, 0, 0.08);
	border-radius: 8px;
	font-size: 12px;
	color: var(--gs-accent, #f08000);
	font-weight: 600;
}
.gs-shop-body .gs-installment-notice svg {
	flex-shrink: 0;
}
/* Responsive installment options */
@media (max-width: 768px) {
	.gs-shop-body .gs-installment-options__grid {
		grid-template-columns: 1fr;
	}
}

/* Payment methods — selectable card grid */
.gs-shop-body .gs-checkout-review ul.wc_payment_methods {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 12px;
}
.gs-shop-body .gs-checkout-review ul.wc_payment_methods li {
	position: relative;
	background: var(--gs-bg-card);
	border: 2px solid var(--gs-border-dark);
	border-radius: 14px;
	padding: 16px 14px;
	transition: all 0.2s;
	margin: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	text-align: center;
}
.gs-shop-body .gs-checkout-review ul.wc_payment_methods li:hover {
	border-color: var(--gs-border-dark);
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06);
}
/* Selected state */
.gs-shop-body .gs-checkout-review ul.wc_payment_methods li:has(input[type="radio"]:checked) {
	border-color: var(--gs-primary);
	background: var(--gs-primary-bg);
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
}
/* Hide raw radio — use custom indicator */
.gs-shop-body .gs-checkout-review ul.wc_payment_methods li input[type="radio"] {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
/* Custom check indicator (top-left corner) */
.gs-shop-body .gs-checkout-review ul.wc_payment_methods li::before {
	content: '';
	position: absolute;
	top: 8px;
	left: 8px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	border: 2px solid var(--gs-border-dark);
	background: var(--gs-bg-card);
	transition: all 0.2s;
}
.gs-shop-body .gs-checkout-review ul.wc_payment_methods li:has(input[type="radio"]:checked)::before {
	background: var(--gs-primary, var(--gs-primary));
	border-color: var(--gs-primary, var(--gs-primary));
	box-shadow: 0 0 0 3px rgba(239, 64, 86, 0.15);
}
.gs-shop-body .gs-checkout-review ul.wc_payment_methods li:has(input[type="radio"]:checked)::after {
	content: '';
	position: absolute;
	top: 14px;
	left: 14px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--gs-bg-card);
}
/* Label — clickable card area */
.gs-shop-body .gs-checkout-review ul.wc_payment_methods li label {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text-dark);
	width: 100%;
}
/* Logo image — fixed size */
.gs-shop-body .gs-checkout-review ul.wc_payment_methods li label img {
	width: 72px;
	height: 36px;
	object-fit: contain;
	border-radius: 6px;
}
/* No-image fallback — styled badge */
.gs-shop-body .gs-checkout-review ul.wc_payment_methods li label:not(:has(img))::before {
	content: '';
	display: block;
	width: 72px;
	height: 36px;
	border-radius: 6px;
	background: var(--gs-bg-alt);
	border: 1px solid var(--gs-border-dark);
}
/* Description box — hidden in card layout */
.gs-shop-body .gs-checkout-review ul.wc_payment_methods li .payment_box {
	display: none !important;
}

/* Place order button — premium CTA */
.gs-shop-body .gs-checkout-review #place_order {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	background: var(--gs-primary);
	color: #fff;
	font-family: 'IRANYekan', 'Vazirmatn', Tahoma, sans-serif;
	font-size: 15px;
	font-weight: 800;
	padding: 16px 24px;
	border-radius: 12px;
	border: none;
	cursor: pointer;
	transition: all 0.25s;
	margin-top: 18px;
	box-shadow: 0 6px 20px rgba(239, 64, 86, 0.25);
}
.gs-shop-body .gs-checkout-review #place_order:hover {
	box-shadow: 0 8px 28px rgba(239, 64, 86, 0.35);
}
.gs-shop-body .gs-checkout-review #place_order:active {
	transform: translateY(0);
}
.gs-shop-body .gs-checkout-review #place_order:disabled {
	opacity: 0.6;
	cursor: not-allowed;
	transform: none;
}

/* WooCommerce terms wrapper */
.gs-shop-body .gs-checkout-review .woocommerce-terms-and-conditions-wrapper {
	font-size: 12px;
	color: var(--gs-text-secondary);
	margin-top: 14px;
	padding: 12px 14px;
	background: var(--gs-bg-alt);
	border-radius: 10px;
}
.gs-shop-body .gs-checkout-review .woocommerce-terms-and-conditions-wrapper:empty,
.gs-shop-body .gs-checkout-review .woocommerce-privacy-policy-text:empty {
	display: none;
}
.gs-shop-body .gs-checkout-review .woocommerce-terms-and-conditions-wrapper:not(:has(> *:not(.woocommerce-privacy-policy-text):not(:empty))) {
	display: none;
}
.gs-shop-body .gs-checkout-review .woocommerce-terms-and-conditions-wrapper a {
	color: var(--gs-primary, var(--gs-primary));
	text-decoration: none;
}

/* ===== Order Summary (right column) ===== */
.gs-shop-body .gs-checkout-summary {
	background: var(--gs-bg-card);
	border-radius: 16px;
	padding: 24px;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05);
	border: 1px solid var(--gs-border);
	position: sticky;
	top: 90px;
	max-height: calc(100vh - 90px - 16px);
	overflow-y: auto;
	display: flex;
	flex-direction: column;
	gap: 16px;
	min-width: 0;
	scrollbar-width: thin;
	scrollbar-color: var(--gs-border-dark) transparent;
}
.gs-shop-body .gs-checkout-summary::-webkit-scrollbar {
	width: 4px;
}
.gs-shop-body .gs-checkout-summary::-webkit-scrollbar-track {
	background: transparent;
}
.gs-shop-body .gs-checkout-summary::-webkit-scrollbar-thumb {
	background: var(--gs-border-dark);
	border-radius: 2px;
}

.gs-shop-body .gs-checkout-summary__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.gs-shop-body .gs-checkout-summary__title {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 16px;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0;
}
.gs-shop-body .gs-checkout-summary__title svg {
	color: var(--gs-primary, var(--gs-primary));
}
.gs-shop-body .gs-checkout-summary__edit {
	font-size: 12px;
	font-weight: 700;
	color: var(--gs-text-secondary);
	text-decoration: none;
	transition: color 0.15s;
	display: inline-flex;
	align-items: center;
	gap: 4px;
}
.gs-shop-body .gs-checkout-summary__edit:hover {
	color: var(--gs-primary, var(--gs-primary));
}

/* Items list — always hidden, shown in popup via toggle */
.gs-shop-body .gs-checkout-summary__items {
	display: none;
}
.gs-shop-body .gs-checkout-summary__items::-webkit-scrollbar {
	width: 4px;
}
.gs-shop-body .gs-checkout-summary__items::-webkit-scrollbar-thumb {
	background: var(--gs-border-dark);
	border-radius: 2px;
}

.gs-shop-body .gs-checkout-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 8px 0;
}
.gs-shop-body .gs-checkout-item__img {
	width: 48px;
	height: 48px;
	border-radius: 10px;
	overflow: hidden;
	background: var(--gs-bg-alt);
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
.gs-shop-body .gs-checkout-item__img-tag {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.gs-shop-body .gs-checkout-item__info {
	flex: 1;
	min-width: 0;
}
.gs-shop-body .gs-checkout-item__name {
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text-dark);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.gs-shop-body .gs-checkout-item__qty {
	font-size: 11px;
	color: var(--gs-text-light);
	margin-top: 3px;
}
.gs-shop-body .gs-checkout-item__price {
	font-size: 13px;
	font-weight: 800;
	color: var(--gs-text-dark);
	flex-shrink: 0;
	white-space: nowrap;
}

/* Divider */
.gs-shop-body .gs-checkout-summary__divider {
	height: 1px;
	background: var(--gs-border);
	margin: 0;
}

/* Totals */
.gs-shop-body .gs-checkout-summary__totals {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.gs-shop-body .gs-checkout-summary__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 13px;
	color: var(--gs-text-secondary);
}
.gs-shop-body .gs-checkout-summary__row span:last-child {
	font-weight: 700;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-checkout-summary__row--discount span:last-child {
	color: var(--gs-green);
}
.gs-shop-body .gs-checkout-summary__shipping {
	color: var(--gs-text-secondary) !important;
	font-weight: 600 !important;
}

/* Payable — highlighted */
.gs-shop-body .gs-checkout-summary__payable {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 16px;
	background: var(--gs-primary-bg);
	border-radius: 12px;
	border: 1px solid var(--gs-primary-bg);
}
.gs-shop-body .gs-checkout-summary__payable span:first-child {
	font-size: 13px;
	color: var(--gs-text-secondary);
	font-weight: 600;
}
.gs-shop-body .gs-checkout-summary__payable-val {
	font-size: 20px;
	font-weight: 900;
	color: var(--gs-primary, var(--gs-primary));
}

/* Free shipping badge */
.gs-shop-body .gs-free-shipping-badge {
	display: inline-flex;
	align-items: center;
	padding: 3px 10px;
	border-radius: 8px;
	background: var(--gs-success-bg);
	color: var(--gs-green);
	font-size: 12px;
	font-weight: 800;
	border: 1px solid var(--gs-success-bg);
}

/* Free shipping progress bar */
.gs-shop-body .gs-free-ship-progress {
	margin-top: 4px;
	padding: 14px 16px;
	background: var(--gs-success-bg);
	border: 1px solid var(--gs-success-bg);
	border-radius: 12px;
}
.gs-shop-body .gs-free-ship-progress__done {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-green);
}
.gs-shop-body .gs-free-ship-progress__done svg {
	flex-shrink: 0;
}
.gs-shop-body .gs-free-ship-progress__text {
	font-size: 12px;
	font-weight: 600;
	color: #15803d;
	margin-bottom: 8px;
	line-height: 1.5;
}
.gs-shop-body .gs-free-ship-progress__bar {
	height: 8px;
	background: var(--gs-success-bg);
	border-radius: 4px;
	overflow: hidden;
}
.gs-shop-body .gs-free-ship-progress__fill {
	height: 100%;
	background: var(--gs-green);
	border-radius: 4px;
	transition: width 0.4s ease;
}

/* Empty cart message */
.gs-shop-body .gs-checkout-summary__empty {
	text-align: center;
	color: var(--gs-text-light);
	font-size: 13px;
	padding: 20px 0;
}

/* ===== WooCommerce Notices (errors, messages) ===== */
.gs-shop-body .gs-checkout-main .woocommerce-error,
.gs-shop-body .gs-checkout-main .woocommerce-message,
.gs-shop-body .gs-checkout-main .woocommerce-info,
.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner {
	list-style: none;
	padding: 14px 18px;
	border-radius: 12px;
	font-size: 13px;
	font-weight: 700;
	margin: 0 0 12px;
	display: flex;
	align-items: flex-start;
	gap: 10px;
	line-height: 1.6;
}
.gs-shop-body .gs-checkout-main .woocommerce-error,
.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner.is-error {
	background: var(--gs-danger-bg);
	color: var(--gs-danger);
	border: 1px solid var(--gs-danger-bg);
}
.gs-shop-body .gs-checkout-main .woocommerce-message,
.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner.is-success {
	background: var(--gs-success-bg);
	color: var(--gs-green);
	border: 1px solid var(--gs-success-bg);
}
.gs-shop-body .gs-checkout-main .woocommerce-info,
.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner.is-info {
	background: var(--gs-info-bg);
	color: var(--gs-blue);
	border: 1px solid var(--gs-info-bg);
}
.gs-shop-body .gs-checkout-main .woocommerce-error li,
.gs-shop-body .gs-checkout-main .woocommerce-message li,
.gs-shop-body .gs-checkout-main .woocommerce-info li {
	list-style: none;
}
.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner__content {
	flex: 1;
}
.gs-shop-body .gs-checkout-main .wc-block-components-notice-banner svg {
	flex-shrink: 0;
	margin-top: 2px;
	width: 20px;
	height: 20px;
}

/* ===== Responsive ===== */
@media (max-width: 1024px) {
	.gs-shop-body .gs-checkout-layout {
		grid-template-columns: 1fr;
	}
	.gs-shop-body .gs-checkout-summary {
		position: static;
		max-height: none;
		overflow-y: visible;
	}
}

/* Mobile: summary at TOP, items collapsible, payable sticky */
@media (max-width: 768px) {
	.gs-shop-body .gs-checkout-layout {
		gap: 14px;
		padding: 8px 0 24px;
	}
	/* Move summary to the top on mobile */
	.gs-shop-body .gs-checkout-summary {
		order: -1;
		padding: 16px 16px 0;
		border-radius: 14px 14px 0 0;
		border-bottom: 1px solid var(--gs-border);
	}
	.gs-shop-body .gs-checkout-main {
		gap: 14px;
	}
	.gs-shop-body .gs-checkout-addresses,
	.gs-shop-body .gs-checkout-review {
		padding: 18px 16px;
		border-radius: 14px;
	}
	.gs-shop-body .gs-checkout-delivery__header,
	.gs-shop-body .gs-checkout-delivery__body {
		padding: 16px;
	}
	.gs-shop-body .gs-checkout-addresses .gs-addr-card {
		min-width: 250px;
		padding: 14px 16px;
	}
	/* Mobile: stack address cards vertically — one per row */
	.gs-shop-body .gs-checkout-addresses__scroll {
		flex-direction: column;
		overflow-x: hidden;
		scroll-snap-type: y mandatory;
	}
	.gs-shop-body .gs-checkout-addresses .gs-addr-card {
		min-width: 0;
		max-width: none;
		width: 100%;
		scroll-snap-align: start;
	}
	.gs-shop-body .gs-checkout-review #place_order {
		font-size: 14px;
		padding: 14px 18px;
	}
	/* Items hidden on mobile too — shown in popup */
	.gs-shop-body .gs-checkout-summary__items {
		display: none;
	}
	/* Compact header on mobile */
	.gs-shop-body .gs-checkout-summary__header {
		margin-bottom: 0;
	}
	/* Payable — sticky at top of viewport on mobile */
	.gs-shop-body .gs-checkout-summary__payable {
		position: sticky;
		top: 0;
		z-index: 50;
		margin: 0 -16px;
		padding: 12px 16px;
		border-radius: 0;
		background: var(--gs-bg-card);
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
	}
}

/* Toggle button — always visible (opens popup on all screen sizes) */
.gs-shop-body .gs-checkout-summary__toggle {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 100%;
	padding: 10px;
	background: var(--gs-bg-alt, #fafafa);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 10px;
	color: var(--gs-text-secondary, #62666d);
	font-size: 13px;
	font-weight: 600;
	font-family: inherit;
	cursor: pointer;
	transition: all 0.15s;
	margin-bottom: 12px;
}
.gs-shop-body .gs-checkout-summary__toggle:hover {
	color: var(--gs-primary, #ef4056);
	border-color: var(--gs-primary-light, #fef0f1);
}
.gs-shop-body .gs-checkout-summary__toggle-icon {
	display: none;
}

@media (max-width: 480px) {
	.gs-shop-body .gs-checkout-layout {
		gap: 12px;
		padding: 4px 0 16px;
	}
	.gs-shop-body .gs-checkout-main {
		gap: 12px;
	}
	.gs-shop-body .gs-checkout-addresses,
	.gs-shop-body .gs-checkout-review,
	.gs-shop-body .gs-checkout-summary {
		padding: 16px 14px;
		border-radius: 12px;
	}
	.gs-shop-body .gs-checkout-addresses__header {
		margin-bottom: 14px;
	}
	.gs-shop-body .gs-checkout-addresses__title {
		font-size: 14px;
	}
	.gs-shop-body .gs-checkout-addresses__add {
		font-size: 11px;
		padding: 6px 12px;
	}
	.gs-shop-body .gs-checkout-addresses .gs-addr-card {
		min-width: 0;
		max-width: none;
		width: 100%;
		padding: 12px 14px;
		gap: 10px;
	}
	.gs-shop-body .gs-checkout-addresses .gs-addr-card__title {
		font-size: 15px;
        color: var(--gs-discount);
	}
	.gs-shop-body .gs-checkout-addresses .gs-addr-card__addr {
		font-size: 11px;
	}
	.gs-shop-body .gs-checkout-guest-form .gs-form-grid {
		grid-template-columns: 1fr;
	}
	.gs-shop-body .gs-checkout-review__title {
		font-size: 14px;
		margin-bottom: 14px;
	}
	.gs-shop-body .gs-checkout-review ul.wc_payment_methods {
		grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
		gap: 10px;
	}
	.gs-shop-body .gs-checkout-review ul.wc_payment_methods li {
		padding: 14px 10px;
	}
	.gs-shop-body .gs-checkout-review ul.wc_payment_methods li label {
		font-size: 12px;
	}
	.gs-shop-body .gs-checkout-review ul.wc_payment_methods li label img {
		width: 60px;
		height: 30px;
	}
	.gs-shop-body .gs-checkout-review #place_order {
		font-size: 13px;
		padding: 14px 16px;
	}
	.gs-shop-body .gs-checkout-summary__title {
		font-size: 14px;
	}
	.gs-shop-body .gs-checkout-summary__payable-val {
		font-size: 18px;
	}
	.gs-shop-body .gs-checkout-summary__payable {
		margin: 0 -14px;
		padding: 10px 14px;
    background: var(--gs-bg-alt, #fafafa);
    border: 1px dotted var(--gs-border, #f0f0f1);
    color: var(--gs-text-secondary, #62666d);
    font-size: 13px;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
    transition: all 0.15s;
	}
	.gs-shop-body .gs-checkout-item__img {
		width: 42px;
		height: 42px;
	}
	.gs-shop-body .gs-checkout-item__name {
		font-size: 12px;
	}
	.gs-shop-body .gs-checkout-item__price {
		font-size: 12px;
	}
	.gs-shop-body .gs-checkout-step-badge {
		width: 22px;
		height: 22px;
		font-size: 11px;
	}
}
/* Welcome Banner */
.gs-shop-body .gs-dash-banner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 24px 28px;
	background: var(--gs-primary);
	border-radius: 16px;
	color: #fff;
	overflow: hidden;
	position: relative;
}
.gs-shop-body .gs-dash-banner__content {
	flex: 1;
	z-index: 1;
}
.gs-shop-body .gs-dash-banner__title {
	font-size: 1.25rem;
	font-weight: 900;
	margin: 0 0 6px;
	color: #fff;
}
.gs-shop-body .gs-dash-banner__desc {
	font-size: 0.8125rem;
	color: rgba(255, 255, 255, 0.9);
	margin: 0;
}
.gs-shop-body .gs-dash-banner__icon {
	opacity: 0.25;
	flex-shrink: 0;
	color: #fff;
}

/* Profile Completion Notice */
.gs-shop-body .gs-profile-notice {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 16px 20px;
	background: var(--gs-warning-bg);
	border: 1px solid var(--gs-warning);
	border-radius: 14px;
}
.gs-shop-body .gs-profile-notice__icon {
	width: 48px;
	height: 48px;
	border-radius: 12px;
	background: var(--gs-bg-card);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--gs-warning);
	flex-shrink: 0;
}
.gs-shop-body .gs-profile-notice__content {
	flex: 1;
}
.gs-shop-body .gs-profile-notice__title {
	font-size: 0.9375rem;
	font-weight: 800;
	color: var(--gs-accent);
	margin: 0 0 4px;
}
.gs-shop-body .gs-profile-notice__desc {
	font-size: 0.8125rem;
	color: #78350f;
	margin: 0;
	line-height: 1.6;
}
.gs-shop-body .gs-profile-notice .gs-btn {
	flex-shrink: 0;
}

/* Profile Form */
.gs-shop-body .gs-profile-form-card {
	padding: 24px;
}
.gs-shop-body .gs-profile-form__header {
	margin-bottom: 20px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--gs-bg-alt);
}
.gs-shop-body .gs-profile-form__title {
	font-size: 1.125rem;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0 0 6px;
}
.gs-shop-body .gs-profile-form__desc {
	font-size: 0.8125rem;
	color: var(--gs-text-secondary);
	margin: 0;
}
.gs-shop-body .gs-profile-form__footer {
	margin-top: 20px;
	padding-top: 16px;
	border-top: 1px solid var(--gs-bg-alt);
	display: flex;
	justify-content: flex-start;
}
.gs-shop-body .gs-form-hint {
	font-size: 0.6875rem;
	color: var(--gs-text-light);
	margin: 4px 0 0;
	line-height: 1.5;
}
/* Radio group (gender, etc.) */
.gs-shop-body .gs-form-radio-group {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}
.gs-shop-body .gs-form-radio {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	padding: 10px 16px;
	border: 1.5px solid var(--gs-border, #f0f0f1);
	border-radius: 10px;
	background: var(--gs-bg, #fff);
	transition: all 0.15s ease;
	user-select: none;
}
.gs-shop-body .gs-form-radio:hover {
	border-color: var(--gs-primary, #ef4056);
	background: var(--gs-primary-light, #fef0f1);
}
.gs-shop-body .gs-form-radio input[type="radio"] {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}
.gs-shop-body .gs-form-radio__mark {
	width: 20px;
	height: 20px;
	border: 2px solid var(--gs-border, #e0e0e0);
	border-radius: 50%;
	flex-shrink: 0;
	position: relative;
	transition: all 0.15s ease;
}
.gs-shop-body .gs-form-radio__mark::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(0);
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--gs-primary, #ef4056);
	transition: transform 0.15s ease;
}
.gs-shop-body .gs-form-radio input[type="radio"]:checked + .gs-form-radio__mark {
	border-color: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-form-radio input[type="radio"]:checked + .gs-form-radio__mark::after {
	transform: translate(-50%, -50%) scale(1);
}
.gs-shop-body .gs-form-radio input[type="radio"]:checked ~ .gs-form-radio__text {
	color: var(--gs-primary, #ef4056);
	font-weight: 700;
}
.gs-shop-body .gs-form-radio input[type="radio"]:focus-visible + .gs-form-radio__mark {
	box-shadow: 0 0 0 3px var(--gs-primary-light, #fef0f1);
}
.gs-shop-body .gs-form-radio__text {
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--gs-text, #1a1a1a);
	transition: color 0.15s ease;
}
.gs-shop-body .gs-form-input[readonly] {
	background: var(--gs-bg-alt);
	color: var(--gs-text-secondary);
	cursor: not-allowed;
}

/* Stats Grid */
.gs-shop-body .gs-dash-stats {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 16px;
}
.gs-shop-body .gs-dash-stat {
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border-dark);
	border-radius: 14px;
	padding: 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 8px;
	transition: all 0.2s ease;
}
.gs-shop-body .gs-dash-stat:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}
.gs-shop-body .gs-dash-stat__icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.gs-shop-body .gs-dash-stat--primary .gs-dash-stat__icon {
	background: var(--gs-danger-bg);
	color: var(--gs-primary);
}
.gs-shop-body .gs-dash-stat--success .gs-dash-stat__icon {
	background: var(--gs-success-bg);
	color: var(--gs-green);
}
.gs-shop-body .gs-dash-stat--info .gs-dash-stat__icon {
	background: #dbeafe;
	color: var(--gs-blue);
}
.gs-shop-body .gs-dash-stat--warning .gs-dash-stat__icon {
	background: var(--gs-warning-bg);
	color: #d97706;
}
.gs-shop-body .gs-dash-stat__value {
	font-size: 1.5rem;
	font-weight: 900;
	color: var(--gs-text-dark);
	line-height: 1.2;
}
.gs-shop-body .gs-dash-stat__label {
	font-size: 0.75rem;
	color: var(--gs-text-secondary);
	font-weight: 600;
}

/* Dashboard Row (chart + quick actions) */
.gs-shop-body .gs-dash-row {
	display: grid;
	grid-template-columns: 2fr 1fr;
	gap: 16px;
}

/* Chart */
.gs-shop-body .gs-dash-chart {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 8px;
	height: 180px;
	padding-top: 20px;
}
.gs-shop-body .gs-dash-chart__col {
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 1;
	height: 100%;
	gap: 6px;
}
.gs-shop-body .gs-dash-chart__bar-wrap {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	width: 100%;
	position: relative;
}
.gs-shop-body .gs-dash-chart__value {
	font-size: 0.6875rem;
	font-weight: 800;
	color: var(--gs-text-secondary);
	margin-bottom: 4px;
}
.gs-shop-body .gs-dash-chart__bar {
	width: 100%;
	max-width: 36px;
	background: var(--gs-primary);
	border-radius: 6px 6px 0 0;
	transition: height 0.4s ease;
	min-height: 4px;
}
.gs-shop-body .gs-dash-chart__col:hover .gs-dash-chart__bar {
	background: var(--gs-accent);
}
.gs-shop-body .gs-dash-chart__label {
	font-size: 0.6875rem;
	color: var(--gs-text-light);
	font-weight: 700;
}

/* Quick Actions */
.gs-shop-body .gs-dash-quick__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}
.gs-shop-body .gs-dash-quick__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 16px 8px;
	border: 1px solid var(--gs-border-dark);
	border-radius: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	color: #4b5563;
	transition: all 0.15s ease;
	text-decoration: none;
}
.gs-shop-body .gs-dash-quick__item:hover {
	border-color: var(--gs-primary);
	color: var(--gs-primary);
	background: var(--gs-danger-bg);
}
.gs-shop-body .gs-dash-quick__item svg {
	color: var(--gs-text-light);
	transition: color 0.15s ease;
}
.gs-shop-body .gs-dash-quick__item:hover svg {
	color: var(--gs-primary);
}

/* Lists Row */
.gs-shop-body .gs-dash-row--lists {
	grid-template-columns: 1fr 1fr;
}

/* Mini Product Grid */
.gs-shop-body .gs-dash-mini-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
}
.gs-shop-body .gs-dash-mini-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	text-decoration: none;
	transition: transform 0.15s ease;
}
.gs-shop-body .gs-dash-mini-card:hover {
	transform: translateY(-2px);
}
.gs-shop-body .gs-dash-mini-card__img {
	width: 100%;
	aspect-ratio: 1;
	border: 1px solid var(--gs-border-dark);
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	background: var(--gs-bg-alt);
}
.gs-shop-body .gs-dash-mini-card__img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 4px;
}
.gs-shop-body .gs-dash-mini-card__img span {
	font-size: 1.5rem;
}
.gs-shop-body .gs-dash-mini-card__name {
	font-size: 0.625rem;
	color: #4b5563;
	text-align: center;
	line-height: 1.3;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Empty Mini State */
.gs-shop-body .gs-dash-empty-mini {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 24px 0;
	text-align: center;
}
.gs-shop-body .gs-dash-empty-mini span {
	font-size: 0.75rem;
	color: var(--gs-text-light);
}

/* Recent Orders List — production quality */
.gs-shop-body .gs-dash-orders-card {
	overflow: hidden;
}
.gs-shop-body .gs-dash-orders-card__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 20px;
	border-bottom: 1px solid var(--gs-border, #f0f0f1);
}
.gs-shop-body .gs-dash-orders-card__title {
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
	margin: 0;
}
.gs-shop-body .gs-dash-orders-card__link {
	font-size: 0.75rem;
	color: var(--gs-secondary, #19bfd3);
	text-decoration: none;
	transition: opacity 0.15s ease;
}
.gs-shop-body .gs-dash-orders-card__link:hover {
	opacity: 0.8;
	text-decoration: underline;
}
.gs-shop-body .gs-dash-orders {
	display: flex;
	flex-direction: column;
}

/* Each order row */
.gs-shop-body .gs-dash-order {
	border-bottom: 1px solid var(--gs-border, #f0f0f1);
	transition: background 0.15s ease;
}
.gs-shop-body .gs-dash-order:last-child {
	border-bottom: 0;
}
.gs-shop-body .gs-dash-order:hover {
	background: var(--gs-bg-hover, #f7f7f8);
}
.gs-shop-body .gs-dash-order__main {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 20px;
	text-decoration: none;
	color: inherit;
}

/* Thumbnails cluster */
.gs-shop-body .gs-dash-order__thumbs {
	display: flex;
	align-items: center;
	flex-shrink: 0;
}
.gs-shop-body .gs-dash-order__thumb {
	width: 44px;
	height: 44px;
	border-radius: 10px;
	object-fit: cover;
	border: 2px solid var(--gs-bg, #fff);
	margin-right: -12px;
	background: var(--gs-bg-alt, #fafafa);
	box-shadow: 0 1px 4px rgba(0,0,0,0.06);
}
.gs-shop-body .gs-dash-order__thumb:first-child {
	margin-right: 0;
}
.gs-shop-body .gs-dash-order__thumb-more {
	width: 44px;
	height: 44px;
	border-radius: 10px;
	background: var(--gs-bg-hover, #f0f0f1);
	border: 2px solid var(--gs-bg, #fff);
	margin-right: -12px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.6875rem;
	font-weight: 700;
	color: var(--gs-text-muted, #8c8c8c);
	flex-shrink: 0;
}

/* Info block */
.gs-shop-body .gs-dash-order__info {
	display: flex;
	flex-direction: column;
	gap: 4px;
	flex: 1 1 auto;
	min-width: 0;
}
.gs-shop-body .gs-dash-order__header {
	display: flex;
	align-items: center;
	gap: 6px;
}
.gs-shop-body .gs-dash-order__num {
	font-weight: 700;
	font-size: 0.8125rem;
	color: var(--gs-text, #1a1a1a);
	white-space: nowrap;
}
.gs-shop-body .gs-dash-order__dot {
	color: var(--gs-text-muted, #d0d0d0);
	font-size: 0.75rem;
	flex-shrink: 0;
}
.gs-shop-body .gs-dash-order__date {
	font-size: 0.6875rem;
	color: var(--gs-text-muted, #8c8c8c);
	white-space: nowrap;
}
.gs-shop-body .gs-dash-order__items {
	font-size: 0.75rem;
	color: var(--gs-text-muted, #8c8c8c);
	line-height: 1.5;
	margin: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

/* Meta: badge + total grouped together */
.gs-shop-body .gs-dash-order__meta {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-shrink: 0;
}
.gs-shop-body .gs-dash-order__badge {
	white-space: nowrap;
}
.gs-shop-body .gs-dash-order__total {
	font-weight: 700;
	font-size: 0.8125rem;
	color: var(--gs-text, #1a1a1a);
	white-space: nowrap;
}
.gs-shop-body .gs-dash-order__arrow {
	color: var(--gs-text-muted, #c0c0c0);
	flex-shrink: 0;
	transition: color 0.15s ease, transform 0.15s ease;
	display: none;
}
.gs-shop-body .gs-dash-order:hover .gs-dash-order__arrow {
	color: var(--gs-primary, #ef4056);
	transform: translateX(-2px);
}

/* Payable actions */
.gs-shop-body .gs-dash-order__pay {
	flex-shrink: 0;
}
.gs-shop-body .gs-dash-order__actions {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
	padding: 0 20px 14px;
}
.gs-shop-body .gs-dash-order__timer {
	font-size: 0.75rem;
	font-weight: 700;
	color: var(--gs-primary, #ef4056);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

/* ===== Pending Order Countdown Timer ===== */
.gs-shop-body .gs-pending-timer {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 16px;
	background: var(--gs-bg-alt);
	border-bottom: 1px solid var(--gs-accent);
	color: var(--gs-accent);
	font-size: 0.8125rem;
	line-height: 1.5;
}
.gs-shop-body .gs-pending-timer--expired {
	background: var(--gs-danger-bg);
	border-bottom-color: var(--gs-danger-bg);
	color: var(--gs-danger);
}
.gs-shop-body .gs-pending-timer__icon {
	flex-shrink: 0;
	color: var(--gs-accent);
}
.gs-shop-body .gs-pending-timer--expired .gs-pending-timer__icon {
	color: var(--gs-danger);
}
.gs-shop-body .gs-pending-timer__text {
	flex: 1 1 auto;
}
.gs-shop-body .gs-pending-timer__countdown {
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	color: var(--gs-accent);
	padding: 1px 6px;
	background: var(--gs-bg-card);
	border-radius: 4px;
	border: 1px solid var(--gs-accent);
}
.gs-shop-body .gs-pending-timer__countdown--inline {
	display: inline-block;
	margin: 0 2px;
}
.gs-shop-body .gs-pending-timer__countdown--urgent {
	color: #fff;
	background: var(--gs-danger);
	border-color: var(--gs-danger);
	animation: gs-timer-pulse 1s ease-in-out infinite;
}
.gs-shop-body .gs-pending-timer__countdown--expired {
	color: #fff;
	background: var(--gs-danger);
	border-color: var(--gs-danger);
	animation: none;
}
@keyframes gs-timer-pulse {
	0%, 100% { opacity: 1; }
	50% { opacity: 0.7; }
}
.gs-shop-body .gs-dash-order__pay {
	flex-shrink: 0;
}
.gs-shop-body .gs-dash-order__actions {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
}
.gs-shop-body .gs-dash-order__timer {
	font-size: 0.75rem;
	font-weight: 700;
	color: var(--gs-primary);
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

/* ===== Pending Order Countdown Timer ===== */
@media (max-width: 1024px) {
	.gs-shop-body .gs-dash-stats {
		grid-template-columns: repeat(2, 1fr);
	}
	.gs-shop-body .gs-dash-row {
		grid-template-columns: 1fr;
	}
	.gs-shop-body .gs-dash-row--lists {
		grid-template-columns: 1fr;
	}
}
@media (max-width: 640px) {
	.gs-shop-body .gs-dash-banner {
		padding: 18px 20px;
	}
	.gs-shop-body .gs-dash-banner__title {
		font-size: 1.0625rem;
	}
	.gs-shop-body .gs-dash-banner__icon {
		display: none;
	}
	.gs-shop-body .gs-profile-notice {
		flex-direction: column;
		text-align: center;
		gap: 12px;
	}
	.gs-shop-body .gs-profile-notice .gs-btn {
		width: 100%;
		justify-content: center;
	}
	.gs-shop-body .gs-form-grid {
		grid-template-columns: 1fr;
	}
	.gs-shop-body .gs-dash-stats {
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}
	.gs-shop-body .gs-dash-stat {
		padding: 14px 10px;
	}
	.gs-shop-body .gs-dash-stat__value {
		font-size: 1.25rem;
	}
	.gs-shop-body .gs-dash-quick__grid {
		grid-template-columns: 1fr 1fr;
	}
	.gs-shop-body .gs-dash-mini-grid {
		grid-template-columns: 1fr 1fr;
	}
	.gs-shop-body .gs-dash-orders-card__header {
		padding: 14px 16px;
	}
	.gs-shop-body .gs-dash-order__main {
		flex-wrap: wrap;
		gap: 10px 12px;
		padding: 12px 16px;
	}
	.gs-shop-body .gs-dash-order__thumb,
	.gs-shop-body .gs-dash-order__thumb-more {
		width: 36px;
		height: 36px;
		border-radius: 8px;
		margin-right: -10px;
		font-size: 0.625rem;
	}
	.gs-shop-body .gs-dash-order__info {
		flex: 1 1 calc(100% - 48px);
		min-width: 0;
	}
	.gs-shop-body .gs-dash-order__items {
		white-space: normal;
		overflow: visible;
		text-overflow: clip;
	}
	/* Meta wraps to second row, badge right, total+arrow left */
	.gs-shop-body .gs-dash-order__meta {
		width: 100%;
		justify-content: space-between;
		padding-top: 2px;
	}
	.gs-shop-body .gs-dash-order__total {
		font-size: 0.75rem;
	}
	.gs-shop-body .gs-dash-order__actions {
		padding: 0 16px 12px;
	}
}




.gs-shop-body .gs-delivery-card {
	background: var(--gs-blue);
	border-radius: 16px;
	padding: 24px;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 16px;
	position: relative;
	overflow: hidden;
}
.gs-shop-body .gs-delivery-card::before {
	content: '';
	position: absolute;
	top: -30px;
	left: -30px;
	width: 120px;
	height: 120px;
	background: rgba(255, 255, 255, 0.08);
	border-radius: 50%;
}
.gs-shop-body .gs-delivery-card::after {
	content: '';
	position: absolute;
	bottom: -40px;
	right: -20px;
	width: 100px;
	height: 100px;
	background: rgba(255, 255, 255, 0.06);
	border-radius: 50%;
}
.gs-shop-body .gs-delivery-card__header {
	display: flex;
	align-items: center;
	gap: 14px;
	flex: 1;
	min-width: 200px;
	z-index: 1;
}
.gs-shop-body .gs-delivery-card__icon {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.15);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	display: none;
}
.gs-shop-body .gs-delivery-card__title {
	font-size: 1rem;
	font-weight: 900;
	margin: 0 0 4px;
	color: #fff;
}
.gs-shop-body .gs-delivery-card__desc {
	font-size: 0.75rem;
	color: rgba(255, 255, 255, 0.85);
	margin: 0;
	line-height: 1.4;
}
.gs-shop-body .gs-delivery-card__code {
	font-size: 2rem;
	font-weight: 900;
	letter-spacing: 0.15em;
	font-family: 'IRANYekan', 'Vazirmatn', Tahoma, sans-serif;
	background: rgba(255, 255, 255, 0.15);
	padding: 10px 24px;
	border-radius: 12px;
	border: 2px dashed rgba(255, 255, 255, 0.4);
	z-index: 1;
	direction: ltr;
}

/* Responsive delivery card */
@media (max-width: 640px) {
	.gs-shop-body .gs-delivery-card {
		flex-direction: column;
		text-align: center;
		padding: 20px 16px;
	}
	.gs-shop-body .gs-delivery-card__header {
		justify-content: center;
	}
	.gs-shop-body .gs-delivery-card__code {
		font-size: 1.5rem;
		padding: 8px 18px;
	}
}

/* ===== Alert (daisyUI-style) ===== */
.gs-shop-body .gs-alert {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 14px 16px;
	border-radius: 12px;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.5;
	position: relative;
	animation: gsAlertSlide 0.3s ease-out;
}
@keyframes gsAlertSlide {
	from { opacity: 0; transform: translateY(-8px); }
	to   { opacity: 1; transform: translateY(0); }
}
.gs-shop-body .gs-alert__icon {
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	margin-top: 1px;
}
.gs-shop-body .gs-alert__content {
	flex: 1;
	min-width: 0;
}
.gs-shop-body .gs-alert__close {
	flex-shrink: 0;
	background: none;
	border: none;
	cursor: pointer;
	color: inherit;
	opacity: 0.5;
	padding: 2px;
	transition: opacity 0.15s ease;
}
.gs-shop-body .gs-alert__close:hover {
	opacity: 1;
}
.gs-shop-body .gs-alert__close svg {
	width: 18px;
	height: 18px;
}

/* Success */
.gs-shop-body .gs-alert--success {
	background: #ecfdf5;
	color: #065f46;
	border: 1px solid #a7f3d0;
}
.gs-shop-body .gs-alert--success .gs-alert__icon { color: #10b981; }

/* Error */
.gs-shop-body .gs-alert--error {
	background: var(--gs-danger-bg);
	color: #991b1b;
	border: 1px solid var(--gs-danger-bg);
}
.gs-shop-body .gs-alert--error .gs-alert__icon { color: var(--gs-danger); }

/* Warning */
.gs-shop-body .gs-alert--warning {
	background: var(--gs-warning-bg);
	color: var(--gs-accent);
	border: 1px solid var(--gs-warning-bg);
}
.gs-shop-body .gs-alert--warning .gs-alert__icon { color: var(--gs-warning); }

/* Info */
.gs-shop-body .gs-alert--info {
	background: var(--gs-info-bg);
	color: #1e40af;
	border: 1px solid var(--gs-info-bg);
}
.gs-shop-body .gs-alert--info .gs-alert__icon { color: #3b82f6; }

/* Notice (WCommerce default) */
.gs-shop-body .gs-alert--notice {
	background: var(--gs-info-bg);
	color: #0c4a6e;
	border: 1px solid #bae6fd;
}
.gs-shop-body .gs-alert--notice .gs-alert__icon { color: #0ea5e9; }

.gs-shop-body .gs-alert-stack {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-bottom: 16px;
}

/* ===== Compare Page ===== */
.gs-shop-body .gs-compare-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 16px 0 24px;
}
.gs-shop-body .gs-compare-header__title {
	display: flex;
	align-items: center;
	gap: 8px;
}
.gs-shop-body .gs-compare-header__text {
	font-size: 20px;
	font-weight: 700;
	color: var(--gs-text);
	margin: 0;
}
.gs-shop-body .gs-compare-header__add {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 16px;
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	color: var(--gs-secondary);
	text-decoration: none;
	font-size: 13px;
	font-weight: 600;
	transition: all 0.2s;
}
.gs-shop-body .gs-compare-header__add:hover {
	border-color: var(--gs-secondary);
	background: var(--gs-info-bg);
}
.gs-shop-body .gs-compare-header__add svg {
	width: 18px;
	height: 18px;
}

/* Table */
.gs-shop-body .gs-compare-table-wrap {
	background: var(--gs-bg-card);
	border-radius: 12px;
	border: 1px solid var(--gs-border);
	overflow: hidden;
}
.gs-shop-body .gs-compare-scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.gs-shop-body .gs-compare-table {
	width: 100%;
	border-collapse: collapse;
	min-width: 600px;
}
.gs-shop-body .gs-compare-table__corner {
	width: 140px;
	min-width: 140px;
	background: var(--gs-bg-alt);
	border-bottom: 1px solid var(--gs-border);
}

/* ===== Compare Number Badges (mobile only) ===== */
.gs-shop-body .gs-compare-badge {
	display: none;
}
/* Badge in product header (mobile) */
.gs-shop-body .gs-compare-mobile__product .gs-compare-badge {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
}
/* Badge in spec value (mobile) */
.gs-shop-body .gs-compare-mobile__spec-value {
	display: flex;
	flex-direction: column;
	align-items: center;
}

/* Badge colors — distinct color per product number */
.gs-shop-body .gs-compare-badge--1 { background: #ef4056; }
.gs-shop-body .gs-compare-badge--2 { background: #19bfd3; }
.gs-shop-body .gs-compare-badge--3 { background: #f59e0b; }
.gs-shop-body .gs-compare-badge--4 { background: #8b5cf6; }
.gs-shop-body .gs-compare-badge--5 { background: #10b981; }
.gs-shop-body .gs-compare-badge--6 { background: #f97316; }
.gs-shop-body .gs-compare-badge--7 { background: #3b82f6; }
.gs-shop-body .gs-compare-badge--8 { background: #ec4899; }

@media (max-width: 768px) {
	.gs-shop-body .gs-compare-badge {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 22px;
		height: 22px;
		border-radius: 50%;
		font-size: 11px;
		font-weight: 700;
		color: #fff;
		flex-shrink: 0;
		line-height: 1;
	}
	.gs-shop-body .gs-compare-badge--cell {
		width: 18px;
		height: 18px;
		font-size: 10px;
		margin-bottom: 4px;
	}
}
.gs-shop-body .gs-compare-table__product-head {
	vertical-align: top;
	padding: 16px 12px;
	border-bottom: 1px solid var(--gs-border);
	border-left: 1px solid var(--gs-border);
	min-width: 200px;
}
.gs-shop-body .gs-compare-table__product-head:last-child {
	border-left: 1px solid var(--gs-border);
}

/* Product card in header */
.gs-shop-body .gs-compare-product {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 8px;
	position: relative;
}
.gs-shop-body .gs-compare-product__remove {
	position: absolute;
	top: -4px;
	left: -4px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	border: none;
	background: var(--gs-border);
	color: var(--gs-text-light);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s;
	padding: 0;
}
.gs-shop-body .gs-compare-product__remove:hover {
	background: var(--gs-danger);
	color: #fff;
}
.gs-shop-body .gs-compare-product__remove svg {
	width: 14px;
	height: 14px;
}
.gs-shop-body .gs-compare-product__image-link {
	display: block;
	width: 120px;
	height: 120px;
	border-radius: 8px;
	overflow: hidden;
	position: relative;
	background: var(--gs-bg-alt);
}
.gs-shop-body .gs-compare-product__img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.gs-shop-body .gs-compare-product__title {
	font-size: 13px;
	font-weight: 600;
	line-height: 1.5;
	margin: 0;
	max-height: 60px;
	overflow: hidden;
}
.gs-shop-body .gs-compare-product__title a {
	color: var(--gs-text);
	text-decoration: none;
}
.gs-shop-body .gs-compare-product__title a:hover {
	color: var(--gs-secondary);
}
.gs-shop-body .gs-compare-product__code {
	font-size: 11px;
	color: #b0b2b8;
	direction: ltr;
	unicode-bidi: embed;
	font-family: Tahoma, Arial, sans-serif;
	font-variant-numeric: lining-nums;
	margin-top: 2px;
}
.gs-shop-body .gs-compare-product__discount {
	margin: 4px 0;
}
.gs-shop-body .gs-compare-product__discount-badge {
	position: absolute;
	top: 6px;
	right: 6px;
	padding: 2px 8px;
	background: var(--gs-danger);
	color: #fff;
	border-radius: 4px;
	font-size: 12px;
	font-weight: 700;
	z-index: 1;
}
.gs-shop-body .gs-compare-product__price {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
}
.gs-shop-body .gs-compare-product__price-old {
	font-size: 12px;
	color: var(--gs-text-muted);
	text-decoration: line-through;
}
.gs-shop-body .gs-compare-product__price-now {
	font-size: 15px;
	font-weight: 700;
	color: var(--gs-text);
}
.gs-shop-body .gs-compare-product__price-unit {
	font-size: 11px;
	font-weight: 400;
	color: var(--gs-text-light);
}
.gs-shop-body .gs-compare-product__stock {
	font-size: 12px;
	font-weight: 600;
	padding: 4px 0;
}
.gs-shop-body .gs-compare-product__stock--in {
	color: var(--gs-green);
}
.gs-shop-body .gs-compare-product__stock--out {
	color: var(--gs-danger);
}
.gs-shop-body .gs-compare-product__cart {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 20px;
	border: none;
	border-radius: 8px;
	background: var(--gs-secondary);
	color: var(--gs-text-on-secondary);
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.2s;
	font-family: 'Vazirmatn', Tahoma, sans-serif;
}
.gs-shop-body .gs-compare-product__cart:hover {
	background: var(--gs-secondary);
}
.gs-shop-body .gs-compare-product__cart svg {
	width: 16px;
	height: 16px;
}

/* Table rows */
.gs-shop-body .gs-compare-table__row--alt {
	background: var(--gs-bg-alt);
}
.gs-shop-body .gs-compare-table__label {
	padding: 14px 16px;
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-text-light);
	text-align: right;
	white-space: nowrap;
	border-bottom: 1px solid var(--gs-border);
}
.gs-shop-body .gs-compare-table__cell {
	padding: 14px 12px;
	font-size: 13px;
	color: var(--gs-text);
	text-align: center;
	border-bottom: 1px solid var(--gs-border);
	border-left: 1px solid var(--gs-border);
	vertical-align: middle;
}
.gs-shop-body .gs-compare-table__cell:last-child {
	border-left: 1px solid var(--gs-border);
}
.gs-shop-body .gs-compare-na {
	color: var(--gs-text-muted);
}
.gs-shop-body .gs-compare-price {
	font-weight: 700;
	color: var(--gs-text);
}
.gs-shop-body .gs-compare-stock {
	font-size: 12px;
	font-weight: 600;
	padding: 2px 8px;
	border-radius: 4px;
}
.gs-shop-body .gs-compare-stock--in {
	color: var(--gs-green);
	background: rgba(76, 175, 80, 0.08);
}
.gs-shop-body .gs-compare-stock--out {
	color: var(--gs-danger);
	background: rgba(230, 18, 61, 0.08);
}
.gs-shop-body .gs-compare-rating {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
}
.gs-shop-body .gs-compare-rating__stars {
	color: var(--gs-star);
	font-size: 14px;
	letter-spacing: 1px;
}
.gs-shop-body .gs-compare-rating__text {
	font-size: 11px;
	color: var(--gs-text-light);
}
.gs-shop-body .gs-compare-attr-color {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}
.gs-shop-body .gs-compare-color-dot {
	width: 14px;
	height: 14px;
	border-radius: 50%;
	border: 1px solid var(--gs-border-dark);
	display: inline-block;
}

/* Bottom actions */
.gs-shop-body .gs-compare-actions {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 24px 0;
	flex-wrap: wrap;
}
.gs-shop-body .gs-compare-actions__add {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 16px;
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	color: var(--gs-secondary);
	text-decoration: none;
	font-size: 13px;
	font-weight: 600;
	transition: all 0.2s;
}
.gs-shop-body .gs-compare-actions__add:hover {
	border-color: var(--gs-secondary);
	background: var(--gs-info-bg);
}
.gs-shop-body .gs-compare-actions__add svg {
	width: 18px;
	height: 18px;
}
.gs-shop-body .gs-compare-actions__clear {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 16px;
	border: 1px solid var(--gs-danger);
	border-radius: 8px;
	background: transparent;
	color: var(--gs-danger);
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	transition: all 0.2s;
	font-family: 'Vazirmatn', Tahoma, sans-serif;
}
.gs-shop-body .gs-compare-actions__clear:hover {
	background: var(--gs-danger);
	color: #fff;
}
.gs-shop-body .gs-compare-actions__clear svg {
	width: 18px;
	height: 18px;
}

/* Empty state */
.gs-shop-body .gs-compare-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 80px 20px;
	text-align: center;
}
.gs-shop-body .gs-compare-empty__icon {
	width: 80px;
	height: 80px;
	color: #d0d2d6;
	margin-bottom: 20px;
}
.gs-shop-body .gs-compare-empty__icon svg {
	width: 100%;
	height: 100%;
}
.gs-shop-body .gs-compare-empty__title {
	font-size: 18px;
	font-weight: 700;
	color: var(--gs-text);
	margin: 0 0 8px;
}
.gs-shop-body .gs-compare-empty__desc {
	font-size: 14px;
	color: var(--gs-text-light);
	max-width: 400px;
	margin: 0 0 24px;
	line-height: 1.6;
}
.gs-shop-body .gs-compare-empty__btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 10px 24px;
	border: none;
	border-radius: 8px;
	background: var(--gs-secondary);
	color: var(--gs-text-on-secondary);
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
	transition: all 0.2s;
}
.gs-shop-body .gs-compare-empty__btn:hover {
	background: var(--gs-secondary);
}

/* ===== Mobile Card Layout (Digikala-style) ===== */
.gs-shop-body .gs-compare-mobile { display: none; }

/* Sticky product cards grid */
.gs-shop-body .gs-compare-mobile__products {
	position: sticky;
	top: 0;
	z-index: 10;
	background: var(--gs-bg-card);
	border-bottom: 1px solid var(--gs-border);
	padding: 12px 0;
}
.gs-shop-body .gs-compare-mobile__products-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 4px;
	margin: 0 16px;
}
.gs-shop-body .gs-compare-mobile__product {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	position: relative;
	padding: 8px 4px;
}
.gs-shop-body .gs-compare-mobile__product-close {
	position: absolute;
	top: 0;
	right: 0;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	border: none;
	background: var(--gs-border);
	color: var(--gs-text-light);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	z-index: 1;
}
.gs-shop-body .gs-compare-mobile__product-close:hover {
	background: var(--gs-danger);
	color: #fff;
}
.gs-shop-body .gs-compare-mobile__product-close svg {
	width: 12px;
	height: 12px;
}
.gs-shop-body .gs-compare-mobile__product-img-link {
	display: block;
	width: 100px;
	height: 100px;
	border-radius: 8px;
	overflow: hidden;
	background: var(--gs-bg-alt);
	margin-bottom: 8px;
}
.gs-shop-body .gs-compare-mobile__product-img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.gs-shop-body .gs-compare-mobile__product-title {
	font-size: 12px;
	font-weight: 600;
	line-height: 1.5;
	margin: 0 0 6px;
	max-height: 36px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.gs-shop-body .gs-compare-mobile__product-title a {
	color: var(--gs-text);
	text-decoration: none;
}
.gs-shop-body .gs-compare-mobile__product-rating {
	display: flex;
	align-items: center;
	gap: 4px;
	margin-bottom: 4px;
}
.gs-shop-body .gs-compare-mobile__product-rating span {
	font-size: 12px;
	font-weight: 600;
	color: var(--gs-text);
}
.gs-shop-body .gs-compare-mobile__product-price {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
}
.gs-shop-body .gs-compare-mobile__product-price-old {
	font-size: 11px;
	color: var(--gs-text-muted);
	text-decoration: line-through;
}
.gs-shop-body .gs-compare-mobile__product-price-now {
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text);
}
.gs-shop-body .gs-compare-mobile__product-price-unit {
	font-size: 10px;
	font-weight: 400;
	color: var(--gs-text-light);
}

/* Specs sections */
.gs-shop-body .gs-compare-mobile__specs {
	margin: 0 16px;
}
.gs-shop-body .gs-compare-mobile__specs-title {
	font-size: 14px;
	font-weight: 700;
	color: var(--gs-text);
	margin: 16px 0 12px;
}
.gs-shop-body .gs-compare-mobile__spec-row {
	padding: 12px 0;
	border-bottom: 1px solid var(--gs-border);
}
.gs-shop-body .gs-compare-mobile__spec-row:last-child {
	border-bottom: none;
}
.gs-shop-body .gs-compare-mobile__spec-label {
	font-size: 12px;
	font-weight: 600;
	color: var(--gs-text-light);
	margin: 0 0 8px;
}
.gs-shop-body .gs-compare-mobile__spec-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 4px;
}
.gs-shop-body .gs-compare-mobile__spec-value {
	font-size: 12px;
	color: var(--gs-text);
	line-height: 1.6;
	padding: 4px 0;
	text-align: center;
	word-break: break-word;
}

@media (max-width: 768px) {
	/* Hide table, show mobile card layout */
	.gs-shop-body .gs-compare-table-wrap { display: none; }
	.gs-shop-body .gs-compare-mobile { display: block; }
	.gs-shop-body .gs-compare-header {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* ===== Compare Search Modal ===== */
.gs-shop-body .gs-compare-modal {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 9999;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding: 60px 20px;
}
.gs-shop-body .gs-compare-modal__overlay {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.5);
}
.gs-shop-body .gs-compare-modal__box {
	position: relative;
	width: 100%;
	max-width: 560px;
	background: var(--gs-bg-card);
	border-radius: 12px;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15);
	overflow: hidden;
	max-height: 80vh;
	display: flex;
	flex-direction: column;
}
.gs-shop-body .gs-compare-modal__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 20px;
	border-bottom: 1px solid var(--gs-border);
}
.gs-shop-body .gs-compare-modal__title {
	font-size: 16px;
	font-weight: 700;
	color: var(--gs-text);
	margin: 0;
}
.gs-shop-body .gs-compare-modal__close {
	width: 32px;
	height: 32px;
	border: none;
	background: transparent;
	cursor: pointer;
	color: var(--gs-text-light);
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	transition: all 0.2s;
	padding: 0;
}
.gs-shop-body .gs-compare-modal__close:hover {
	background: var(--gs-border);
	color: var(--gs-text);
}
.gs-shop-body .gs-compare-modal__close svg {
	width: 20px;
	height: 20px;
}
.gs-shop-body .gs-compare-modal__search {
	position: relative;
	padding: 16px 20px;
	border-bottom: 1px solid var(--gs-border);
}
.gs-shop-body .gs-compare-modal__search-icon {
	position: absolute;
	right: 32px;
	top: 50%;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	color: var(--gs-text-light);
	pointer-events: none;
}
.gs-shop-body .gs-compare-modal__input {
	width: 100%;
	height: 44px;
	padding: 0 44px 0 16px;
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	font-size: 14px;
	font-family: 'Vazirmatn', Tahoma, sans-serif;
	color: var(--gs-text);
	background: var(--gs-bg-alt);
	transition: all 0.2s;
}
.gs-shop-body .gs-compare-modal__input:focus {
	outline: none;
	border-color: var(--gs-secondary);
	background: var(--gs-bg-card);
}
.gs-shop-body .gs-compare-modal__body {
	flex: 1;
	overflow-y: auto;
	padding: 8px;
}
/* Search result item */
.gs-shop-body .gs-compare-search-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 12px;
	border-radius: 8px;
	cursor: pointer;
	transition: background 0.15s;
}
.gs-shop-body .gs-compare-search-item:hover {
	background: var(--gs-info-bg);
}
.gs-shop-body .gs-compare-search-item__img {
	width: 56px;
	height: 56px;
	border-radius: 8px;
	object-fit: contain;
	background: var(--gs-bg-alt);
	flex-shrink: 0;
}
.gs-shop-body .gs-compare-search-item__info {
	flex: 1;
	min-width: 0;
}
.gs-shop-body .gs-compare-search-item__title {
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-text);
	line-height: 1.5;
	margin: 0 0 4px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.gs-shop-body .gs-compare-search-item__code {
	font-size: 11px;
	color: #b0b2b8;
	direction: ltr;
	unicode-bidi: embed;
	font-family: Tahoma, Arial, sans-serif;
	font-variant-numeric: lining-nums;
}
.gs-shop-body .gs-compare-search-item__add {
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	background: var(--gs-bg-card);
	color: var(--gs-secondary);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s;
	padding: 0;
}
.gs-shop-body .gs-compare-search-item__add:hover {
	background: var(--gs-secondary);
	color: var(--gs-text-on-secondary);
	border-color: var(--gs-secondary);
}
.gs-shop-body .gs-compare-search-item__add svg {
	width: 18px;
	height: 18px;
}
.gs-shop-body .gs-compare-search-item__add--added {
	background: var(--gs-green);
	color: var(--gs-text-on-secondary);
	border-color: var(--gs-green);
	cursor: default;
}
.gs-shop-body .gs-compare-search-item__price {
	font-size: 12px;
	color: var(--gs-text-light);
	margin-top: 2px;
}
.gs-shop-body .gs-compare-search-empty {
	text-align: center;
	padding: 40px 20px;
	color: var(--gs-text-light);
	font-size: 14px;
}
.gs-shop-body .gs-compare-search-suggestion-label {
	padding: 8px 12px 4px;
	font-size: 12px;
	color: var(--gs-text-light);
	font-weight: 600;
}
.gs-shop-body .gs-compare-search-loading {
	text-align: center;
	padding: 30px;
	color: var(--gs-text-light);
	font-size: 13px;
}

/* ===== Wishlist Page ===== */
.gs-shop-body .gs-wishlist-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
	margin-bottom: 16px;
}
.gs-shop-body .gs-wishlist-header__count {
	display: inline-flex;
	align-items: center;
	padding: 6px 14px;
	background: var(--gs-border);
	border-radius: 9999px;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text);
}
.gs-shop-body .gs-wishlist-header__link {
	font-size: 13px;
	color: var(--gs-secondary);
	text-decoration: none;
	font-weight: 600;
}
.gs-shop-body .gs-wishlist-header__link:hover {
	text-decoration: underline;
}


.gs-shop-body .gs-wishlist-card {
	position: relative;
	display: flex;
	flex-direction: column;
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	overflow: hidden;
	text-decoration: none;
	transition: border-color 0.2s, box-shadow 0.2s;
}
.gs-shop-body .gs-wishlist-card:hover {
	border-color: var(--gs-text-muted);
	box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}
.gs-shop-body .gs-wishlist-remove {
	position: absolute;
	top: 8px;
	left: 8px;
	z-index: 10;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: rgba(255,255,255,0.95);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--gs-primary);
	box-shadow: 0 1px 4px rgba(0,0,0,0.1);
	transition: background 0.15s, color 0.15s;
}
.gs-shop-body .gs-wishlist-remove:hover {
	background: var(--gs-primary);
	color: #fff;
}


.gs-shop-body .gs-wishlist-card__actions {
	padding: 0 12px 12px;
	margin-top: auto;
}
.gs-shop-body .gs-wishlist-card__btn {
	width: 100%;
	justify-content: center;
}

/* Empty state — full flex layout (with icon) */
.gs-shop-body .gs-empty-state--with-icon {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 64px 16px;
	text-align: center;
}
.gs-shop-body .gs-empty-state__icon {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: rgba(239, 64, 86, 0.1);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 40px;
	margin-bottom: 20px;
}
.gs-shop-body .gs-empty-state__title {
	font-size: 18px;
	font-weight: 700;
	color: var(--gs-text);
	margin: 0 0 8px;
}
.gs-shop-body .gs-empty-state__desc {
	font-size: 13px;
	color: var(--gs-text-light);
	line-height: 1.8;
	margin: 0 0 24px;
	max-width: 360px;
}
.gs-shop-body .gs-empty-state__btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

/* ===== Global WooCommerce Notices (added to cart, etc.) ===== */
.gs-shop-body .woocommerce-message,
.gs-shop-body .woocommerce-info,
.gs-shop-body .woocommerce-error {
	border: none !important;
	background: transparent !important;
	padding: 0 !important;
	margin: 0 0 12px !important;
	list-style: none !important;
	box-shadow: none !important;
}
.gs-shop-body .woocommerce-message::before,
.gs-shop-body .woocommerce-info::before,
.gs-shop-body .woocommerce-error::before {
	display: none !important;
}
.gs-shop-body .woocommerce-message .button,
.gs-shop-body .woocommerce-message .wc-forward,
.gs-shop-body .woocommerce-info .button,
.gs-shop-body .woocommerce-info .wc-forward {
	display: none !important;
}

/* ===== Custom Add to Cart Message ===== */
.gs-shop-body .gs-cart-added-msg {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 16px;
	background: #f0f9f0;
	border: 1px solid #c8e6c9;
	border-radius: 8px;
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-green);
	margin-bottom: 12px;
	flex-wrap: wrap;
}
.gs-shop-body .gs-cart-added-msg svg {
	flex-shrink: 0;
	color: var(--gs-green);
}
.gs-shop-body .gs-cart-added-msg__text {
	flex: 1;
	min-width: 0;
}
.gs-shop-body .gs-cart-added-msg__link {
	color: var(--gs-secondary);
	text-decoration: none;
	font-weight: 700;
	font-size: 12px;
	white-space: nowrap;
}
.gs-shop-body .gs-cart-added-msg__link:hover {
	text-decoration: underline;
}


.gs-shop-body .gs-alert__link {
	color: var(--gs-secondary);
	text-decoration: none;
	font-weight: 700;
	font-size: 12px;
	white-space: nowrap;
	margin-right: 4px;
}
.gs-shop-body .gs-alert__link:hover {
	text-decoration: underline;
}

/* ===== Bank Cards Page ===== */
.gs-shop-body .gs-bank-cards-page {
	max-width: 800px;
}
.gs-shop-body .gs-bank-cards-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 20px;
}
.gs-shop-body .gs-bank-cards-header h2 {
	font-size: 18px;
	font-weight: 800;
	color: var(--gs-text);
	margin: 0;
}

/* Top notice */
.gs-shop-body .gs-bank-cards-notice {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	background: var(--gs-primary-light, #fef0f1);
	border: 1px solid var(--gs-border);
	border-radius: 10px;
	padding: 12px 16px;
	margin-bottom: 20px;
}
.gs-shop-body .gs-bank-cards-notice svg {
	color: var(--gs-discount-2, #ef4056);
	flex-shrink: 0;
	margin-top: 1px;
}
.gs-shop-body .gs-bank-cards-notice p {
	margin: 0;
	font-size: 13px;
	line-height: 1.6;
	color: #fff;
}

/* Form */
.gs-shop-body .gs-bank-card-form-wrap {
	margin-bottom: 24px;
}
.gs-shop-body .gs-bank-card-form {
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border-dark);
	border-radius: 12px;
	padding: 24px;
}
.gs-shop-body .gs-bank-card-form h3 {
	font-size: 16px;
	font-weight: 700;
	color: var(--gs-text);
	margin: 0 0 16px;
}
.gs-shop-body .gs-bank-card-form__notice {
	display: flex;
	gap: 10px;
	background: #fff8e1;
	border: 1px solid #ffe082;
	border-radius: 8px;
	padding: 12px 16px;
	margin-bottom: 20px;
}
.gs-shop-body .gs-bank-card-form__notice svg {
	flex-shrink: 0;
	color: #f57c00;
	margin-top: 2px;
}
.gs-shop-body .gs-bank-card-form__notice p {
	margin: 0 0 4px;
	font-size: 12px;
	color: #5d4037;
	line-height: 1.6;
}
.gs-shop-body .gs-bank-card-form__notice p:last-child {
	margin-bottom: 0;
}
.gs-shop-body .gs-bank-card-form__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px;
	margin-bottom: 20px;
}
.gs-shop-body .gs-bank-card-form .gs-form-field {
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.gs-shop-body .gs-bank-card-form .gs-form-field label {
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-text);
}
.gs-shop-body .gs-bank-card-form .gs-form-field input {
	padding: 10px 12px;
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	font-size: 14px;
	font-family: inherit;
	outline: none;
	transition: border-color 0.15s;
}
.gs-shop-body .gs-bank-card-form .gs-form-field input:focus {
	border-color: var(--gs-secondary);
}
.gs-shop-body .gs-required {
	color: var(--gs-primary);
}
.gs-shop-body .gs-bank-card-form__actions {
	display: flex;
	gap: 12px;
}

/* Card List */
.gs-shop-body .gs-bank-cards-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
	gap: 20px;
}
.gs-shop-body .gs-bank-cards-empty {
	grid-column: 1 / -1;
	text-align: center;
	padding: 48px 16px;
	color: var(--gs-text-light);
}
.gs-shop-body .gs-bank-cards-empty__icon {
	font-size: 48px;
	margin-bottom: 12px;
}

/* Bank Card Visual */
.gs-shop-body .gs-bank-card-visual {
	position: relative;
}
.gs-shop-body .gs-bank-card-visual__inner {
	background: var(--card-color, #37474f);
	border-radius: 16px;
	padding: 20px 24px;
	color: #fff;
	min-height: 230px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	position: relative;
	overflow: hidden;
	box-shadow: 0 4px 16px rgba(0,0,0,0.15);
	transition: transform 0.2s, box-shadow 0.2s;
}
.gs-shop-body .gs-bank-card-visual:hover .gs-bank-card-visual__inner {
	transform: translateY(-4px);
	box-shadow: 0 8px 24px rgba(0,0,0,0.2);
}
.gs-shop-body .gs-bank-card-visual--default .gs-bank-card-visual__inner {
	box-shadow: 0 4px 16px rgba(239, 64, 86, 0.3);
}
/* Decorative circle */
.gs-shop-body .gs-bank-card-visual__inner::before {
	content: '';
	position: absolute;
	top: -40px;
	left: -40px;
	width: 120px;
	height: 120px;
	border-radius: 50%;
	background: rgba(255,255,255,0.08);
}
.gs-shop-body .gs-bank-card-visual__inner::after {
	content: '';
	position: absolute;
	bottom: -60px;
	right: -30px;
	width: 140px;
	height: 140px;
	border-radius: 50%;
	background: rgba(255,255,255,0.05);
}
.gs-shop-body .gs-bank-card-visual__top {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	z-index: 1;
}
.gs-shop-body .gs-bank-card-visual__bank {
	font-size: 14px;
	font-weight: 700;
	opacity: 0.95;
}
.gs-shop-body .gs-bank-card-visual__badge {
	background: rgba(255,255,255,0.25);
	padding: 3px 10px;
	border-radius: 9999px;
	font-size: 10px;
	font-weight: 700;
}
.gs-shop-body .gs-bank-card-visual__chip {
	position: relative;
	z-index: 1;
	margin: 8px 0;
}
.gs-shop-body .gs-bank-card-visual__number {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 2px;
	font-family: 'Courier New', monospace;
	position: relative;
	z-index: 1;
	direction: ltr;
	text-align: left;
}
.gs-shop-body .gs-bank-card-visual__bottom {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	position: relative;
	z-index: 1;
}
.gs-shop-body .gs-bank-card-visual__label {
	font-size: 9px;
	opacity: 0.7;
	display: block;
	margin-bottom: 2px;
}
.gs-shop-body .gs-bank-card-visual__name {
	font-size: 13px;
	font-weight: 600;
}
.gs-shop-body .gs-bank-card-visual__status {
	font-size: 10px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 9999px;
}
.gs-shop-body .gs-bank-card-visual__status--approved {
	background: rgba(76, 175, 80, 0.3);
	color: #fff;
}
.gs-shop-body .gs-bank-card-visual__status--pending {
	background: rgba(255, 193, 7, 0.3);
	color: #fff;
}
.gs-shop-body .gs-bank-card-visual__status--rejected {
	background: rgba(244, 67, 54, 0.3);
	color: #fff;
}
.gs-shop-body .gs-bank-card-visual__actions {
	display: flex;
	gap: 8px;
	margin-top: 10px;
}
.gs-shop-body .gs-bank-card-action {
	flex: 1;
	padding: 8px 12px;
	border: 1px solid var(--gs-border-dark);
	background: var(--gs-bg-card);
	border-radius: 8px;
	font-size: 12px;
	font-weight: 600;
	color: var(--gs-text);
	cursor: pointer;
	transition: all 0.15s;
}
.gs-shop-body .gs-bank-card-action--default:hover {
	background: var(--gs-secondary);
	color: var(--gs-text-on-secondary);
	border-color: var(--gs-secondary);
}
.gs-shop-body .gs-bank-card-action--remove:hover {
	background: var(--gs-primary);
	color: #fff;
	border-color: var(--gs-primary);
}

/* Responsive */
@media (max-width: 640px) {
	.gs-shop-body .gs-bank-card-form__grid {
		grid-template-columns: 1fr;
	}
	.gs-shop-body .gs-bank-cards-list {
		grid-template-columns: 1fr;
	}
	.gs-shop-body .gs-bank-card-visual__number {
		font-size: 15px;
		letter-spacing: 1px;
	}
}


.gs-price-chart-overlay {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.5);
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	animation: gs-chart-fadein 0.2s ease;
}
@keyframes gs-chart-fadein {
	from { opacity: 0; }
	to { opacity: 1; }
}
.gs-price-chart-modal {
	background: var(--gs-bg-card);
	border-radius: 16px;
	width: 840px;
	max-width: 95vw;
	max-height: 90vh;
	overflow: hidden;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
	display: flex;
	flex-direction: column;
	animation: gs-chart-slideup 0.3s ease;
	font-family: 'Vazirmatn', Tahoma, sans-serif;
}
@keyframes gs-chart-slideup {
	from { transform: translateY(30px); opacity: 0; }
	to { transform: translateY(0); opacity: 1; }
}
.gs-price-chart-modal__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 24px;
	border-bottom: 1px solid var(--gs-border);
	flex-shrink: 0;
}
.gs-price-chart-modal__title-wrap {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.gs-price-chart-modal__title {
	font-size: 18px;
	font-weight: 800;
	color: var(--gs-text);
	margin: 0;
}
.gs-price-chart-modal__subtitle {
	font-size: 13px;
	color: var(--gs-text-light);
}
.gs-price-chart-modal__close {
	width: 36px;
	height: 36px;
	border: none;
	background: transparent;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	transition: background 0.2s;
}
.gs-price-chart-modal__close:hover {
	background: var(--gs-border);
}
.gs-price-chart-modal__close svg {
	width: 24px;
	height: 24px;
	color: var(--gs-text);
}
.gs-price-chart-modal__body {
	padding: 20px 24px;
	overflow-y: auto;
	flex: 1;
}
.gs-price-chart-modal__loading {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 60px 0;
	color: var(--gs-text-light);
}
.gs-price-chart-spinner {
	width: 40px;
	height: 40px;
	border: 3px solid var(--gs-border);
	border-top-color: var(--gs-secondary);
	border-radius: 50%;
	animation: gs-chart-spin 0.8s linear infinite;
}
@keyframes gs-chart-spin {
	to { transform: rotate(360deg); }
}
.gs-price-chart-modal__chart-wrap {
	position: relative;
	width: 100%;
	overflow: visible;
}
#gs-price-chart-canvas {
	display: block;
	width: 100%;
	height: 400px;
}
.gs-price-chart-tooltip {
	position: absolute;
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border-dark);
	border-radius: 8px;
	padding: 8px 12px;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
	z-index: 10;
	pointer-events: none;
	font-size: 10px;
	max-width: 160px;
}
.gs-chart-tooltip-date {
	color: var(--gs-text-light);
	margin-bottom: 4px;
}
.gs-chart-tooltip-price {
	font-weight: 800;
	color: var(--gs-text);
	font-size: 10px;
}
.gs-chart-tooltip-discount {
	color: var(--gs-primary);
	font-size: 11px;
	margin-top: 2px;
}
.gs-chart-tooltip-stock {
	color: var(--gs-secondary);
	font-size: 11px;
	margin-top: 2px;
}
.gs-chart-tooltip-stock--out {
	color: #ccc;
}
.gs-price-chart-modal__legend {
	display: flex;
	align-items: center;
	gap: 24px;
	padding: 16px 0 8px;
	flex-wrap: wrap;
}
.gs-price-chart-legend-item {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 11px;
	color: var(--gs-text-light);
}
.gs-price-chart-legend-dot {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	border: 2px solid;
}
.gs-price-chart-legend-dot--available {
	border-color: var(--gs-secondary);
	background: var(--gs-secondary);
}
.gs-price-chart-legend-dot--discount {
	border-color: var(--gs-discount, #ef4056);
	background: var(--gs-discount, #ef4056);
}
.gs-price-chart-legend-dot--unavailable {
	border-color: #ccc;
	background: #ccc;
}
.gs-price-chart-legend-line {
	width: 20px;
	height: 3px;
	border-radius: 2px;
}
.gs-price-chart-legend-line--discount {
	background: var(--gs-border-dark);
	border-top: 1px dashed #999;
	height: 0;
	border-bottom: 2px dashed var(--gs-border-dark);
}
.gs-price-chart-modal__stats {
	display: flex;
	gap: 24px;
	padding: 16px 0;
	border-top: 1px solid var(--gs-border);
	margin-top: 8px;
}
.gs-price-chart-stat-item {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.gs-price-chart-stat-label {
	font-size: 11px;
	color: var(--gs-text-light);
}
.gs-price-chart-stat-value {
	font-size: 10px;
	font-weight: 800;
	color: var(--gs-text);
}
.gs-price-chart-stat-value--low {
	color: var(--gs-green);
}

/* Responsive */
@media (max-width: 768px) {
	.gs-price-chart-modal {
		width: 95vw;
		max-height: 85vh;
		border-radius: 12px;
	}
	.gs-price-chart-modal__header {
		padding: 12px 16px;
	}
	.gs-price-chart-modal__body {
		padding: 12px 16px;
	}
	.gs-price-chart-modal__stats {
		gap: 12px;
		flex-wrap: wrap;
	}
	.gs-price-chart-modal__legend {
		gap: 12px;
	}
}

/* ===== Flash Sale Banner on Product Detail ===== */
.gs-shop-body .gs-pdp-flash-banner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 16px;
	margin: -16px -16px 12px -16px;
	background-color: color-mix(in srgb, var(--gs-primary, var(--gs-primary)) 8%, transparent);
	border-radius: 8px 8px 0 0;
	border-bottom: 1px solid color-mix(in srgb, var(--gs-primary, var(--gs-primary)) 12%, transparent);
}
.gs-pdp-flash-banner__left {
	display: flex;
	align-items: center;
	gap: 8px;
}
.gs-pdp-flash-banner__icon {
	width: 20px;
	height: 20px;
	color: var(--gs-primary, var(--gs-primary));
	flex-shrink: 0;
}
.gs-pdp-flash-banner__title {
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-primary, var(--gs-primary));
	white-space: nowrap;
}
.gs-pdp-flash-banner__right {
	display: flex;
	align-items: center;
	gap: 6px;
}
.gs-pdp-flash-banner__timer {
	font-size: 14px;
	font-weight: 700;
	color: var(--gs-primary, var(--gs-primary));
	font-family: 'IRANYekan', 'Vazirmatn', monospace;
	direction: ltr;
	min-width: 70px;
	text-align: left;
}
.gs-pdp-flash-banner__clock {
	width: 16px;
	height: 16px;
	color: var(--gs-primary, var(--gs-primary));
	flex-shrink: 0;
}

/* ===== Brands Carousel Nav Buttons ===== */
.gs-shop-body .gs-brands-carousel {
	position: relative;
}
.gs-shop-body .gs-brands-carousel__nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border-dark);
	box-shadow: 0 2px 8px rgba(0,0,0,0.08);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: var(--gs-text);
	transition: all 0.2s;
	padding: 0;
}
.gs-shop-body .gs-brands-carousel__nav:hover {
	background: var(--gs-border);
	box-shadow: 0 4px 12px rgba(0,0,0,0.12);
}
.gs-shop-body .gs-brands-carousel__nav:disabled,
.gs-shop-body .gs-brands-carousel__nav[data-disabled="1"] {
	opacity: 0.35;
	pointer-events: none;
}
.gs-shop-body .gs-brands-carousel__nav svg {
	width: 20px;
	height: 20px;
	pointer-events: none;
}
.gs-shop-body .gs-brands-carousel__nav--prev {
	right: 2px;
}
.gs-shop-body .gs-brands-carousel__nav--next {
	left: 2px;
}
@media (max-width: 768px) {
	.gs-shop-body .gs-brands-carousel__nav { width: 32px; height: 32px; }
}
@media (max-width: 480px) {
	.gs-shop-body .gs-brands-carousel__nav { display: none !important; }
}

/* ===== Price Chart Period Selector ===== */
.gs-price-chart-modal__toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 0 0 12px 0;
	flex-wrap: wrap;
}
.gs-price-chart-period-tabs {
	display: flex;
	gap: 4px;
	background: var(--gs-border);
	border-radius: 8px;
	padding: 3px;
}
.gs-price-chart-period-tab {
	border: none;
	background: transparent;
	padding: 6px 16px;
	border-radius: 6px;
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-text-light);
	cursor: pointer;
	transition: all 0.2s;
	font-family: 'Vazirmatn', Tahoma, sans-serif;
}
.gs-price-chart-period-tab:hover {
	color: var(--gs-text);
}
.gs-price-chart-period-tab--active {
	background: var(--gs-bg-card);
	color: var(--gs-text);
	box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}
.gs-price-chart-period-selects {
	display: flex;
	gap: 8px;
}
.gs-price-chart-month-select,
.gs-price-chart-year-select {
	padding: 6px 12px;
	border: 1px solid var(--gs-border-dark);
	border-radius: 6px;
	font-size: 13px;
	color: var(--gs-text);
	background: var(--gs-bg-card);
	cursor: pointer;
	font-family: 'Vazirmatn', Tahoma, sans-serif;
	outline: none;
}
.gs-price-chart-month-select:focus,
.gs-price-chart-year-select:focus {
	border-color: var(--gs-secondary);
}
@media (max-width: 768px) {
	.gs-price-chart-modal__toolbar {
		flex-direction: column;
		align-items: stretch;
	}
	.gs-price-chart-period-tabs {
		justify-content: center;
	}
	.gs-price-chart-period-selects {
		justify-content: center;
	}
}


/* ===== Product Detail Page — Responsive Fixes ===== */

/* Hero slider responsive */
@media (max-width: 768px) {
	.gs-shop-body .gs-hero-slider {
		height: 240px;
	}
	.gs-shop-body .gs-hero-slider__arrow {
		width: 36px;
		height: 36px;
	}
	.gs-shop-body .gs-hero-slider__arrow svg {
		width: 20px;
		height: 20px;
	}
	.gs-shop-body .gs-hero-slider__dots {
		bottom: 8px;
		gap: 6px;
	}
	.gs-shop-body .gs-hero-slider__dot {
		width: 8px;
		height: 8px;
	}
}

@media (max-width: 480px) {
	.gs-shop-body .gs-hero-slider {
		height: 180px;
	}
	.gs-shop-body .gs-hero-slider__arrow {
		width: 32px;
		height: 32px;
	}
	.gs-shop-body .gs-below-slider-item {
		width: calc((100% - 6px) / 4);
		max-width: 76px;
	}
	.gs-shop-body .gs-below-slider-item__icon {
		width: 44px;
		height: 44px;
	}
	.gs-shop-body .gs-below-slider-item__label {
		font-size: 10px;
	}
	.gs-shop-body .gs-below-slider-grid {
		gap: 2px;
		padding: 12px 8px;
	}
}

/* Header responsive fixes */
@media (max-width: 768px) {
	.gs-shop-body .gs-header__main {
		height: 56px;
		padding: 6px 12px;
		gap: 10px;
	}
	.gs-shop-body .gs-header__logo-img {
		max-height: 44px;
		max-width: 140px;
	}
	.gs-shop-body .gs-header__logo-red,
	.gs-shop-body .gs-header__logo-cyan {
		font-size: 20px;
	}
	.gs-shop-body .gs-search-box {
		height: 38px;
	}
	.gs-shop-body .gs-topbar__inner {
		height: 34px;
		padding: 0 12px;
	}
	.gs-shop-body .gs-topbar__link {
		font-size: 11px;
	}
	.gs-shop-body .gs-topbar__left,
	.gs-shop-body .gs-topbar__right {
		gap: 8px;
	}
}

@media (max-width: 480px) {
	.gs-shop-body .gs-header__main {
		height: 52px;
		padding: 4px 10px;
		gap: 8px;
	}
	.gs-shop-body .gs-header__logo-img {
		max-height: 38px;
		max-width: 110px;
	}
	.gs-shop-body .gs-header__logo-red,
	.gs-shop-body .gs-header__logo-cyan {
		font-size: 18px;
	}
	.gs-shop-body .gs-search-box {
		height: 36px;
	}
	.gs-shop-body .gs-header__action-label {
		display: none !important;
	}
	.gs-shop-body .gs-header__action {
		padding: 6px;
	}
	.gs-shop-body .gs-header__action-icon {
		width: 22px;
		height: 22px;
	}
	.gs-shop-body .gs-topbar {
		display: none;
	}
}

/* Footer responsive fixes */
@media (max-width: 480px) {
	.gs-shop-body .gs-footer__top {
		grid-template-columns: repeat(3, 1fr);
		gap: 12px;
	}
	.gs-shop-body .gs-footer__col {
		align-items: center;
		text-align: center;
	}
	.gs-shop-body .gs-footer__link-list {
		align-items: center;
	}
	/* Newsletter column: full width on its own row, centered on mobile */
	.gs-shop-body .gs-footer__col--newsletter {
		grid-column: 1 / -1;
		align-items: center !important;
		text-align: center !important;
	}
	.gs-shop-body .gs-footer__col--newsletter .gs-footer__col-title,
	.gs-shop-body .gs-footer__col--newsletter .gs-footer__newsletter-desc {
		text-align: center;
	}
	.gs-shop-body .gs-footer__newsletter-form {
		justify-content: center;
	}
	.gs-shop-body .gs-footer__social {
		justify-content: center !important;
	}
	.gs-shop-body .gs-footer__container {
		padding: 12px 12px 0;
	}
	.gs-shop-body .gs-footer__features {
		gap: 8px;
		padding: 16px 0;
	}
	.gs-shop-body .gs-footer__features {
		gap: 4px;
		padding: 6px 0 18px;
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
	.gs-shop-body .gs-footer__feature {
		min-width: 0;
		flex: 1 1 0;
		padding: 8px 2px;
	}
	.gs-shop-body .gs-footer__feature-img {
		width: 48px;
		height: 48px;
	}
	.gs-shop-body .gs-footer__feature-icon {
		width: 56px;
		height: 56px;
	}
	.gs-shop-body .gs-footer__feature-text {
		font-size: 9px;
		line-height: 1.3;
	}
	.gs-shop-body .gs-footer__col-title {
		font-size: 13px;
	}
	.gs-shop-body .gs-footer__link {
		font-size: 12px;
	}
	.gs-shop-body .gs-footer__newsletter-input {
		font-size: 16px;
		padding: 8px 12px;
	}
	.gs-shop-body .gs-footer__newsletter-input::placeholder {
		font-size: 12px;
	}
	.gs-shop-body .gs-footer__newsletter-btn {
		font-size: 12px;
		padding: 8px 16px;
	}
	/* Trust badges: 3 columns on mobile */
	.gs-shop-body .gs-footer__badges {
		grid-template-columns: repeat(3, 1fr);
		gap: 8px;
		padding: 16px 0;
	}
	.gs-shop-body .gs-footer__badge {
		padding: 8px 10px;
		gap: 6px;
	}
	.gs-shop-body .gs-footer__badge-img,
	.gs-shop-body .gs-footer__badge-icon {
		width: 32px;
		height: 32px;
	}
	.gs-shop-body .gs-footer__badge-title {
		font-size: 10px;
	}
	.gs-shop-body .gs-footer__badge-sub {
		font-size: 9px;
	}
}

/* Tablet (≤768px): reduce title size and line-height */
@media (max-width: 768px) {
	.gs-shop-body .gs-product-title {
		font-size: 16px;
		line-height: 1.9;
		font-weight: 700;
		margin-bottom: 6px;
	}
	.gs-shop-body .gs-product-info {
		padding: 10px;
	}
	.gs-shop-body .gs-product-rating {
		margin-bottom: 12px;
	}
	.gs-shop-body .gs-spec-cell {
		padding: 10px 12px;
		font-size: 12px;
	}
	.gs-shop-body .gs-spec-cell--label {
		width: 40%;
	}
	.gs-shop-body .gs-spec-group__title {
		font-size: 14px;
	}
	.gs-shop-body .gs-buy-box__current-price-value,
	.gs-shop-body .gs-buy-box__current-price-value .woocommerce-Price-amount {
		font-size: 18px;
	}
	.gs-shop-body .gs-buy-box__price-section {
		padding: 12px 16px;
	}
	.gs-shop-body .gs-buy-box__seller {
		padding: 12px 16px;
	}
	.gs-shop-body .gs-gallery-thumb {
		flex: 0 0 56px;
		width: 56px;
		height: 56px;
	}
	.gs-shop-body .gs-gallery-main__img {
		max-height: 320px;
	}
	.gs-shop-body .gs-product-short-desc {
		font-size: 13px;
		line-height: 1.9;
		padding: 12px 16px;
	}
	.gs-shop-body .gs-product-short-desc p {
		line-height: 1.9;
	}
	.gs-shop-body .gs-product-full-desc {
		font-size: 13px;
		line-height: 1.9;
	}
	.gs-shop-body .gs-product-full-desc p {
		font-size: 13px;
		line-height: 1.9;
		margin: 0 0 12px;
	}
	.gs-shop-body .gs-product-full-desc h1 { font-size: 15px; }
	.gs-shop-body .gs-product-full-desc h2 { font-size: 14px; }
	.gs-shop-body .gs-product-full-desc h3 { font-size: 13px; }
	.gs-shop-body .gs-product-full-desc h4 { font-size: 13px; }
	.gs-shop-body .gs-product-full-desc h5 { font-size: 12px; }
	.gs-shop-body .gs-product-full-desc h6 { font-size: 12px; }
	.gs-shop-body .gs-product-full-desc ul,
	.gs-shop-body .gs-product-full-desc ol {
		line-height: 1.9;
		margin: 10px 0 14px;
	}
	.gs-shop-body .gs-product-full-desc li {
		margin-bottom: 5px;
	}
	.gs-shop-body .gs-product-full-desc table {
		font-size: 12px;
	}
	.gs-shop-body .gs-product-full-desc table th,
	.gs-shop-body .gs-product-full-desc table td {
		padding: 8px 10px;
	}
	.gs-shop-body .gs-product-full-desc blockquote {
		padding: 10px 16px;
		margin: 12px 0;
	}
}

/* Mobile (≤480px): further compaction */
@media (max-width: 480px) {
	.gs-shop-body .gs-product-title {
		font-size: 15px;
		line-height: 1.8;
		font-weight: 700;
		margin-bottom: 4px;
	}
	.gs-shop-body .gs-product-info {
		padding: 12px;
		border-radius: 6px;
	}
	.gs-shop-body .gs-product-rating {
		gap: 6px;
		font-size: 11px;
		margin-bottom: 10px;
	}
	.gs-shop-body .gs-rating-stars {
		font-size: 12px;
	}
	.gs-shop-body .gs-spec-cell {
		padding: 8px 10px;
		font-size: 11px;
	}
	.gs-shop-body .gs-spec-cell--label {
		width: 38%;
		font-size: 11px;
	}
	.gs-shop-body .gs-spec-group__title {
		font-size: 13px;
		margin-bottom: 8px;
	}
	.gs-shop-body .gs-spec-group {
		margin-bottom: 16px;
	}
	.gs-shop-body .gs-buy-box__current-price-value,
	.gs-shop-body .gs-buy-box__current-price-value .woocommerce-Price-amount {
		font-size: 17px;
	}
	.gs-shop-body .gs-buy-box__old-price,
	.gs-shop-body .gs-buy-box__old-price .woocommerce-Price-amount {
		font-size: 12px;
	}
	.gs-shop-body .gs-buy-box__discount {
		font-size: 11px;
		padding: 1px 6px;
	}
	.gs-shop-body .gs-buy-box__price-section {
		padding: 10px 14px;
	}
	.gs-shop-body .gs-buy-box__seller {
		padding: 10px 14px;
	}
	.gs-shop-body .gs-buy-box__seller-title {
		font-size: 13px;
	}
	.gs-shop-body .gs-buy-box__seller-name {
		font-size: 12px;
	}
	.gs-shop-body .gs-buy-box__section-title {
		font-size: 13px;
	}
	.gs-shop-body .gs-buy-box__section-text {
		font-size: 12px;
	}
	.gs-shop-body .gs-add-to-cart-btn {
		height: 44px;
		font-size: 14px;
		border-radius: 8px;
	}
	.gs-shop-body .gs-gallery-thumb {
		flex: 0 0 48px;
		width: 48px;
		height: 48px;
		border-radius: 6px;
	}
	.gs-shop-body .gs-gallery-main__img {
		max-height: 280px;
	}
	.gs-shop-body .gs-gallery-wrapper {
		gap: 8px;
	}
	.gs-shop-body .gs-pdp-actions {
		gap: 14px;
		padding: 6px 0;
	}
	.gs-shop-body .gs-pdp-action svg {
		width: 20px;
		height: 20px;
	}
	.gs-shop-body .gs-product-short-desc {
		font-size: 11px;
		line-height: 2.7;
		padding: 10px 14px;
		margin-bottom: 14px;
	}
	.gs-shop-body .gs-product-short-desc p {
		line-height: 2.7;
	}
	.gs-shop-body .gs-product-full-desc {
		font-size: 11px;
		line-height: 2.7;
	}
	.gs-shop-body .gs-product-full-desc p {
		font-size: 11px;
		line-height: 2.7;
		margin: 0 0 10px;
	}
	.gs-shop-body .gs-product-full-desc h1 { font-size: 14px; }
	.gs-shop-body .gs-product-full-desc h2 { font-size: 13px; }
	.gs-shop-body .gs-product-full-desc h3 { font-size: 12px; }
	.gs-shop-body .gs-product-full-desc h4 { font-size: 12px; }
	.gs-shop-body .gs-product-full-desc h5 { font-size: 11px; }
	.gs-shop-body .gs-product-full-desc h6 { font-size: 11px; }
	.gs-shop-body .gs-product-full-desc h1,
	.gs-shop-body .gs-product-full-desc h2,
	.gs-shop-body .gs-product-full-desc h3,
	.gs-shop-body .gs-product-full-desc h4,
	.gs-shop-body .gs-product-full-desc h5,
	.gs-shop-body .gs-product-full-desc h6 {
		margin: 16px 0 8px;
		line-height: 2;
		padding-bottom: 6px;
	}
	.gs-shop-body .gs-product-full-desc ul,
	.gs-shop-body .gs-product-full-desc ol {
		line-height: 2;
		margin: 8px 0 8px;
		padding-right: 10px;
	}
	.gs-shop-body .gs-product-full-desc li {
		margin-bottom: 4px;
	}
	.gs-shop-body .gs-product-full-desc table {
		font-size: 11px;
	}
	.gs-shop-body .gs-product-full-desc table th,
	.gs-shop-body .gs-product-full-desc table td {
		padding: 6px 8px;
	}
	.gs-shop-body .gs-product-full-desc blockquote {
		padding: 8px 14px;
		margin: 10px 0;
	}
	.gs-shop-body .gs-product-full-desc img {
		max-width: 100%;
		height: auto;
		border-radius: 8px;
		margin: 12px 0;
	}
	.gs-shop-body .gs-tab-trigger {
		padding: 10px 12px;
		font-size: 12px;
	}
	.gs-shop-body .gs-tabs-section {
		border-radius: 6px;
	}
	.gs-shop-body .gs-review__text {
		font-size: 11px;
		line-height: 1.6;
	}
	.gs-shop-body .gs-review-form__title {
		font-size: 14px;
	}
	.gs-shop-body .gs-review-sortbar {
		flex-wrap: wrap;
		gap: 8px;
	}
	.gs-shop-body .gs-review-sort__select {
		font-size: 12px;
	}
	.gs-shop-body .gs-color-swatch--lg {
		width: 28px;
		height: 28px;
	}
	.gs-shop-body .gs-color-row__label {
		font-size: 12px;
	}
	.gs-shop-body .gs-stock-msg {
		font-size: 12px;
	}
	.gs-shop-body .gs-product-code-badge {
		font-size: 10px;
	}
}

/* ================================================================
   SKELETON LOADING SYSTEM
   daisyUI-style shimmer skeletons for perceived performance & SEO
   ================================================================ */

/* Base skeleton block — animated shimmer */
.gs-sk {
	display: block;
	position: relative;
	overflow: hidden;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	border-radius: 6px;
	line-height: 1;
	vertical-align: middle;
}
.gs-sk::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(255, 255, 255, 0.55) 50%,
		transparent 100%
	);
	animation: gs-sk-shimmer 1.6s infinite;
}
@keyframes gs-sk-shimmer {
	100% { transform: translateX(100%); }
}

/* Reduced-motion: disable shimmer, keep static block */
@media (prefers-reduced-motion: reduce) {
	.gs-sk::after { animation: none; }
}

/* Dark theme support */
.gs-dark .gs-sk,
[data-theme="dark"] .gs-sk {
	background-color: var(--gs-skeleton-bg-dark, #2a2d33);
}
.gs-dark .gs-sk::after,
[data-theme="dark"] .gs-sk::after {
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(255, 255, 255, 0.08) 50%,
		transparent 100%
	);
}

/* ===== Skeleton sizing helpers ===== */
.gs-sk--text { height: 14px; }
.gs-sk--text-sm { height: 12px; }
.gs-sk--text-lg { height: 18px; }
.gs-sk--text-xl { height: 22px; }
.gs-sk--title { height: 18px; width: 80%; }
.gs-sk--title-sm { height: 14px; width: 70%; }
.gs-sk--circle { border-radius: 50%; }
.gs-sk--rounded { border-radius: 12px; }
.gs-sk--rounded-lg { border-radius: 16px; }
.gs-sk--full { width: 100%; }
.gs-sk--w-25 { width: 25%; }
.gs-sk--w-33 { width: 33.333%; }
.gs-sk--w-50 { width: 50%; }
.gs-sk--w-66 { width: 66.666%; }
.gs-sk--w-75 { width: 75%; }
.gs-sk--w-90 { width: 90%; }
.gs-sk--h-3 { height: 12px; }
.gs-sk--h-4 { height: 16px; }
.gs-sk--h-5 { height: 20px; }
.gs-sk--h-6 { height: 24px; }
.gs-sk--h-8 { height: 32px; }
.gs-sk--h-10 { height: 40px; }
.gs-sk--h-12 { height: 48px; }
.gs-sk--h-16 { height: 64px; }
.gs-sk--h-20 { height: 80px; }
.gs-sk--h-24 { height: 96px; }
.gs-sk--h-32 { height: 128px; }
.gs-sk--h-40 { height: 160px; }
.gs-sk--h-48 { height: 192px; }
.gs-sk--h-56 { height: 224px; }
.gs-sk--h-64 { height: 256px; }

/* ===== Product Card Skeleton ===== */
.gs-product-card-sk {
	display: flex;
	flex-direction: column;
	background: var(--gs-bg, var(--gs-bg-card));
	border: 1px solid var(--gs-border, var(--gs-bg-alt));
	border-radius: 16px;
	overflow: hidden;
	padding: 0;
}
.gs-product-card-sk__image {
	width: 100%;
	aspect-ratio: 1 / 1;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-product-card-sk__image::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-product-card-sk__body {
	padding: 12px 14px 16px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.gs-product-card-sk__title {
	height: 14px;
	width: 90%;
	border-radius: 6px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-product-card-sk__title::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-product-card-sk__title-2 {
	height: 14px;
	width: 60%;
	border-radius: 6px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-product-card-sk__title-2::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-product-card-sk__rating {
	display: flex;
	gap: 4px;
	align-items: center;
}
.gs-product-card-sk__rating .gs-sk {
	width: 60px;
	height: 12px;
}
.gs-product-card-sk__price {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 4px;
}
.gs-product-card-sk__price-old {
	width: 50px;
	height: 12px;
	border-radius: 4px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-product-card-sk__price-old::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-product-card-sk__price-new {
	width: 80px;
	height: 18px;
	border-radius: 6px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-product-card-sk__price-new::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}

/* ===== Product Grid Skeleton (multiple cards) ===== */
.gs-grid-sk {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
}
.gs-grid-sk--cols-4 {
	grid-template-columns: repeat(4, 1fr);
}
.gs-grid-sk--cols-5 {
	grid-template-columns: repeat(5, 1fr);
}
.gs-grid-sk--cols-6 {
	grid-template-columns: repeat(6, 1fr);
}
@media (max-width: 1024px) {
	.gs-grid-sk--cols-5,
	.gs-grid-sk--cols-6 { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 768px) {
	.gs-grid-sk,
	.gs-grid-sk--cols-4,
	.gs-grid-sk--cols-5,
	.gs-grid-sk--cols-6 {
		grid-template-columns: repeat(2, 1fr);
		gap: 8px;
	}
}

/* ===== Slider/Hero Skeleton ===== */
.gs-hero-sk {
	width: 100%;
	aspect-ratio: 1200 / 400;
	border-radius: 16px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-hero-sk::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}

/* ===== Below-slider icons row skeleton ===== */
.gs-below-slider-sk {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	justify-content: center;
}
.gs-below-slider-sk__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	width: 80px;
}
.gs-below-slider-sk__icon {
	width: 56px;
	height: 56px;
	border-radius: 12px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-below-slider-sk__icon::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-below-slider-sk__label {
	width: 60px;
	height: 10px;
	border-radius: 4px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-below-slider-sk__label::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}

/* ===== Section title skeleton ===== */
.gs-section-title-sk {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 16px;
}
.gs-section-title-sk__bar {
	width: 140px;
	height: 20px;
	border-radius: 6px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-section-title-sk__bar::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-section-title-sk__link {
	width: 80px;
	height: 14px;
	border-radius: 4px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-section-title-sk__link::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}

/* ===== Lazy section skeleton (replaces spinner) ===== */
.gs-lazy-skeleton {
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.gs-lazy-skeleton .gs-section-title-sk {
	margin-bottom: 0;
}

/* ===== Search dropdown skeleton ===== */
.gs-srch-skeleton {
	padding: 12px 16px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.gs-srch-skeleton__row {
	display: flex;
	align-items: center;
	gap: 12px;
}
.gs-srch-skeleton__icon {
	width: 40px;
	height: 40px;
	border-radius: 8px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	flex-shrink: 0;
	position: relative;
	overflow: hidden;
}
.gs-srch-skeleton__icon::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-srch-skeleton__lines {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.gs-srch-skeleton__line {
	height: 12px;
	border-radius: 4px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-srch-skeleton__line::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}

/* ===== Product detail page skeleton ===== */
.gs-pdp-sk {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	padding: 24px 0;
}
@media (max-width: 768px) {
	.gs-pdp-sk { grid-template-columns: 1fr; gap: 16px; }
}
.gs-pdp-sk__gallery {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.gs-pdp-sk__main-img {
	width: 100%;
	aspect-ratio: 1 / 1;
	border-radius: 16px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-pdp-sk__main-img::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-pdp-sk__thumbs {
	display: flex;
	gap: 8px;
}
.gs-pdp-sk__thumb {
	width: 64px;
	height: 64px;
	border-radius: 10px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	flex-shrink: 0;
	position: relative;
	overflow: hidden;
}
.gs-pdp-sk__thumb::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-pdp-sk__info {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.gs-pdp-sk__title {
	height: 28px;
	width: 80%;
	border-radius: 8px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-pdp-sk__title::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-pdp-sk__rating {
	width: 120px;
	height: 16px;
	border-radius: 4px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-pdp-sk__rating::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-pdp-sk__attr {
	height: 14px;
	width: 60%;
	border-radius: 4px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-pdp-sk__attr::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-pdp-sk__price {
	height: 32px;
	width: 140px;
	border-radius: 8px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-pdp-sk__price::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-pdp-sk__btn {
	height: 48px;
	width: 100%;
	border-radius: 12px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-pdp-sk__btn::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}

/* ===== Footer skeleton ===== */
.gs-footer-sk {
	display: grid;
	grid-template-columns: repeat(4, 1fr) 1.5fr;
	gap: 24px;
	padding: 32px 0;
}
@media (max-width: 768px) {
	.gs-footer-sk { grid-template-columns: 1fr 1fr; gap: 16px; }
}
.gs-footer-sk__col {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.gs-footer-sk__title {
	height: 18px;
	width: 100px;
	border-radius: 6px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-footer-sk__title::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-footer-sk__link {
	height: 12px;
	border-radius: 4px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-footer-sk__link::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-footer-sk__trust {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	margin-top: 8px;
}
.gs-footer-sk__badge {
	width: 100px;
	height: 60px;
	border-radius: 10px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-footer-sk__badge::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}

/* ===== Banner skeleton ===== */
.gs-banner-sk {
	width: 100%;
	aspect-ratio: 600 / 200;
	border-radius: 16px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-banner-sk::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}

/* ===== Compare/Wishlist table skeleton ===== */
.gs-compare-table-sk {
	width: 100%;
	border-collapse: collapse;
}
.gs-compare-table-sk td {
	padding: 12px;
	border: 1px solid var(--gs-border, var(--gs-bg-alt));
}
.gs-compare-table-sk__header {
	display: flex;
	gap: 12px;
	overflow: hidden;
}
.gs-compare-table-sk__card {
	min-width: 200px;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 12px;
}
.gs-compare-table-sk__img {
	width: 100%;
	aspect-ratio: 1 / 1;
	border-radius: 12px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-compare-table-sk__img::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}

/* ===== Utility: hide skeleton when content loaded ===== */
.gs-sk-hidden { display: none !important; }

/* ===== Fade-in animation for content replacing skeleton ===== */
.gs-fade-in {
	animation: gs-fade-in 0.4s ease-out;
}
@keyframes gs-fade-in {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
	.gs-fade-in { animation: none; }
}

/* ===== PDP Tab Skeleton ===== */
.gs-pdp-tab-skeleton {
	padding: 8px 0;
}

/* ===== Related products lazy section ===== */
.gs-related-lazy-content {
	min-height: 200px;
}
.gs-related-lazy-content .gs-grid-sk {
	grid-template-columns: repeat(6, 1fr);
}
@media (max-width: 1024px) {
	.gs-related-lazy-content .gs-grid-sk { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 768px) {
	.gs-related-lazy-content .gs-grid-sk { grid-template-columns: repeat(2, 1fr); }
}

/* ===== Image loading skeleton (CSS-only, for product images) ===== */
.gs-product-card__image,
.gs-gallery-main,
.gs-srch-card__image,
.gs-compare-search-item__img,
.gs-hero-slider__img,
.gs-below-slider-item__img,
.gs-footer__badge-img,
.gs-footer__feature-img {
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
}
.gs-product-card__img,
.gs-gallery-main__img,
.gs-srch-card__img,
.gs-hero-slider__img,
.gs-below-slider-item__img {
	opacity: 0;
	transition: opacity 0.3s ease;
}
/* LCP image (first hero slide) — visible immediately, no JS dependency. */
.gs-hero-slider__img--lcp {
	opacity: 1;
}
.gs-product-card__img.is-loaded,
.gs-gallery-main__img.is-loaded,
.gs-srch-card__img.is-loaded,
.gs-hero-slider__img.is-loaded,
.gs-below-slider-item__img.is-loaded {
	opacity: 1;
}

/* ===== Below-slider skeleton (shown until items load) ===== */
.gs-below-slider-skeleton {
	display: flex;
	gap: 12px;
	justify-content: center;
	flex-wrap: wrap;
}
.gs-below-slider-skeleton__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	width: 80px;
}
.gs-below-slider-skeleton__icon {
	width: 56px;
	height: 56px;
	border-radius: 12px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-below-slider-skeleton__icon::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}
.gs-below-slider-skeleton__label {
	width: 60px;
	height: 10px;
	border-radius: 4px;
	background-color: var(--gs-skeleton-bg, var(--gs-border-dark));
	position: relative;
	overflow: hidden;
}
.gs-below-slider-skeleton__label::after {
	content: '';
	position: absolute;
	inset: 0;
	transform: translateX(-100%);
	background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%);
	animation: gs-sk-shimmer 1.6s infinite;
}

.mt-8{
	margin-top: 15px;
}

/* ===== Express Shipping Checkout ===== */
.gs-shop-body .gs-express-checkout {
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border);
	border-radius: 16px;
	margin-bottom: 16px;
	overflow: hidden;
}
.gs-shop-body .gs-express-checkout__header {
	padding: 18px 22px;
	border-bottom: 1px solid var(--gs-bg-alt);
}
.gs-shop-body .gs-express-checkout__title {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 16px;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0;
}
.gs-shop-body .gs-express-checkout__body {
	padding: 20px 22px;
}

/* Express info banner */
.gs-shop-body .gs-express-info {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 16px;
	background: var(--gs-primary-bg);
	border: 1px solid var(--gs-primary-bg);
	border-radius: 12px;
}
.gs-shop-body .gs-express-info--heavy {
	background: #fff7ed;
	border-color: #fed7aa;
}
.gs-shop-body .gs-express-info__icon {
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background: var(--gs-primary);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
.gs-shop-body .gs-express-info--heavy .gs-express-info__icon {
	background: #f08000;
}
.gs-shop-body .gs-express-info__text {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.gs-shop-body .gs-express-info__text strong {
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-express-info__text span {
	font-size: 12px;
	color: var(--gs-text-secondary);
	line-height: 1.6;
}

/* Mode toggle (merge vs split) */
.gs-shop-body .gs-express-mode-toggle {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.gs-shop-body .gs-express-mode-option {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 14px 16px;
	background: var(--gs-bg-alt);
	border: 2px solid transparent;
	border-radius: 12px;
	cursor: pointer;
	transition: all 0.2s;
}
.gs-shop-body .gs-express-mode-option:hover {
	background: var(--gs-primary-bg);
}
.gs-shop-body .gs-express-mode-option input[type="radio"] {
	margin-top: 3px;
	flex-shrink: 0;
	width: 18px;
	height: 18px;
	accent-color: var(--gs-primary);
}
.gs-shop-body .gs-express-mode-option input[type="radio"]:checked + .gs-express-mode-option__content {
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-express-mode-option:has(input:checked) {
	background: var(--gs-primary-bg);
	border-color: var(--gs-primary);
}
.gs-shop-body .gs-express-mode-option__title {
	display: block;
	font-size: 14px;
	font-weight: 700;
	color: var(--gs-text-dark);
	margin-bottom: 2px;
}
.gs-shop-body .gs-express-mode-option__desc {
	display: block;
	font-size: 12px;
	color: var(--gs-text-secondary);
	line-height: 1.5;
}

/* Express method picker */
.gs-shop-body .gs-express-methods {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-top: 14px;
}
.gs-shop-body .gs-express-methods--compact {
	gap: 6px;
	margin-top: 8px;
}
.gs-shop-body .gs-express-method {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 12px 14px;
	background: var(--gs-bg-alt);
	border: 2px solid transparent;
	border-radius: 10px;
	cursor: pointer;
	transition: all 0.2s;
}
.gs-shop-body .gs-express-method:hover {
	background: var(--gs-primary-bg);
}
.gs-shop-body .gs-express-method input[type="radio"] {
	margin-top: 3px;
	flex-shrink: 0;
	width: 18px;
	height: 18px;
	accent-color: var(--gs-primary);
}
.gs-shop-body .gs-express-method:has(input:checked) {
	background: var(--gs-primary-bg);
	border-color: var(--gs-primary);
}
.gs-shop-body .gs-express-method__content {
	display: flex;
	flex-direction: column;
	gap: 2px;
}
.gs-shop-body .gs-express-method__title {
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-express-method__desc {
	font-size: 11px;
	color: var(--gs-text-secondary);
}
.gs-shop-body .gs-express-method--compact {
	padding: 8px 12px;
	align-items: center;
}
.gs-shop-body .gs-express-method--compact span {
	font-size: 12px;
	font-weight: 600;
}

/* Split view */
.gs-shop-body .gs-express-split {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 16px;
}
.gs-shop-body .gs-express-split__group {
	background: var(--gs-bg-alt);
	border: 1px solid var(--gs-border);
	border-radius: 12px;
	padding: 14px 16px;
}
.gs-shop-body .gs-express-split__header {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text-dark);
	margin-bottom: 10px;
}
.gs-shop-body .gs-express-split__count {
	margin-right: auto;
	font-size: 11px;
	color: var(--gs-text-light);
	font-weight: 600;
}
.gs-shop-body .gs-express-split__method {
	font-size: 12px;
	color: var(--gs-text-secondary);
	display: flex;
	align-items: center;
	gap: 8px;
}
.gs-shop-body .gs-express-split__method strong {
	color: var(--gs-text-dark);
}
.gs-shop-body .gs-delivery-btn--mini {
	font-size: 12px;
	padding: 6px 14px;
	border-radius: 8px;
	border: 1px solid var(--gs-primary);
	background: var(--gs-primary-bg);
	color: var(--gs-primary);
	font-weight: 700;
	cursor: pointer;
	transition: all 0.2s;
}
.gs-shop-body .gs-delivery-btn--mini:hover {
	background: var(--gs-primary);
	color: #fff;
}

/* Responsive */
@media (max-width: 768px) {
	.gs-shop-body .gs-express-checkout__header,
	.gs-shop-body .gs-express-checkout__body {
		padding: 16px;
	}
	.gs-shop-body .gs-express-info {
		padding: 12px;
		gap: 10px;
	}
	.gs-shop-body .gs-express-info__icon {
		width: 32px;
		height: 32px;
	}
	.gs-shop-body .gs-express-mode-option {
		padding: 12px;
	}
}

/* ===== Infinite Scroll — Loader + Skeleton ===== */

/* Sentinel container */
.gs-infinite-sentinel {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 24px 0;
	min-height: 60px;
}

/* Beautiful loader */
.gs-infinite-loader {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
}
.gs-infinite-loader__spinner {
	width: 40px;
	height: 40px;
	border: 3px solid var(--gs-border, #f0f0f1);
	border-top-color: var(--gs-primary, #ef4056);
	border-radius: 50%;
	animation: gs-infinite-spin 0.8s linear infinite;
}
@keyframes gs-infinite-spin {
	to { transform: rotate(360deg); }
}
.gs-infinite-loader__text {
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-text-muted, #8c8c8c);
	letter-spacing: 0.3px;
}

/* Loading state: pulse the sentinel */
.gs-infinite-sentinel--loading {
	animation: gs-infinite-pulse 1.5s ease-in-out infinite;
}
@keyframes gs-infinite-pulse {
	0%, 100% { opacity: 1; }
	50% { opacity: 0.6; }
}

/* End message */
.gs-infinite-end {
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-text-muted, #8c8c8c);
	padding: 16px 0;
	text-align: center;
}

/* Error message */
.gs-infinite-error {
	font-size: 13px;
	font-weight: 600;
	color: var(--gs-primary, #ef4056);
	padding: 16px 0;
	text-align: center;
}

/* Inline skeleton cards (appended to grid during infinite load) */
.gs-infinite-skeletons {
	display: contents;
}
.gs-product-card-sk--inline {
	opacity: 0;
	animation: gs-sk-fade-in 0.4s ease forwards;
}
@keyframes gs-sk-fade-in {
	to { opacity: 1; }
}

/* Fallback pagination (shown after page 15) */
.gs-pagination--fallback {
	margin-top: 20px;
}

/* ===== Messages Section ===== */
.gs-shop-body .gs-messages-wrap {
	background: var(--gs-bg-card);
	border: 1px solid var(--gs-border);
	border-radius: 16px;
	overflow: hidden;
}
.gs-shop-body .gs-messages-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 20px;
	border-bottom: 1px solid var(--gs-border);
	gap: 12px;
	flex-wrap: wrap;
}
.gs-shop-body .gs-messages-header__title {
	display: flex;
	align-items: center;
	gap: 8px;
}
.gs-shop-body .gs-messages-header__title h2 {
	font-size: 1.1rem;
	font-weight: 800;
	color: var(--gs-text-dark);
	margin: 0;
}
.gs-shop-body .gs-messages-header__icon {
	width: 24px;
	height: 24px;
	color: var(--gs-primary);
	flex-shrink: 0;
}
.gs-shop-body .gs-messages-header__badge {
	background: var(--gs-primary-bg, #fef0f1);
	color: var(--gs-primary);
	font-size: 0.72rem;
	font-weight: 700;
	padding: 3px 10px;
	border-radius: 20px;
}
.gs-shop-body .gs-messages-header__clear {
	display: flex;
	align-items: center;
	gap: 6px;
	background: transparent;
	border: 1px solid var(--gs-border);
	color: var(--gs-text-muted);
	font-size: 0.78rem;
	padding: 6px 12px;
	border-radius: 8px;
	cursor: pointer;
	transition: all 0.15s ease;
}
.gs-shop-body .gs-messages-header__clear:hover {
	border-color: var(--gs-danger);
	color: var(--gs-danger);
	background: var(--gs-danger-bg, #fef0f1);
}
.gs-shop-body .gs-messages-list {
	display: flex;
	flex-direction: column;
}
.gs-shop-body .gs-msg-item {
	display: flex;
	gap: 12px;
	padding: 14px 20px;
	border-bottom: 1px solid var(--gs-border);
	transition: all 0.2s ease;
	position: relative;
}
.gs-shop-body .gs-msg-item:last-child {
	border-bottom: none;
}
.gs-shop-body .gs-msg-item--unread {
	background: var(--gs-primary-bg, #fef0f1);
}
.gs-shop-body .gs-msg-item--unread::before {
	content: '';
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--gs-primary);
}
.gs-shop-body .gs-msg-item__icon {
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background: var(--gs-bg-alt);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: var(--gs-primary);
}
.gs-shop-body .gs-msg-item--unread .gs-msg-item__icon {
	background: var(--gs-primary);
	color: #fff;
}
.gs-shop-body .gs-msg-item__content {
	flex: 1;
	min-width: 0;
}
.gs-shop-body .gs-msg-item__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 4px;
}
.gs-shop-body .gs-msg-item__title {
	font-size: 0.88rem;
	font-weight: 700;
	color: var(--gs-text-dark);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.gs-shop-body .gs-msg-item__time {
	font-size: 0.72rem;
	color: var(--gs-text-muted);
	flex-shrink: 0;
}
.gs-shop-body .gs-msg-item__body {
	font-size: 0.82rem;
	color: var(--gs-text-secondary);
	line-height: 1.6;
	margin: 0 0 8px;
	white-space: pre-wrap;
}
.gs-shop-body .gs-msg-item__actions {
	display: flex;
	gap: 8px;
}
.gs-shop-body .gs-msg-action {
	background: transparent;
	border: none;
	font-size: 0.72rem;
	color: var(--gs-text-muted);
	cursor: pointer;
	padding: 2px 0;
	transition: color 0.15s ease;
}
.gs-shop-body .gs-msg-action--read:hover {
	color: var(--gs-primary);
}
.gs-shop-body .gs-msg-action--delete:hover {
	color: var(--gs-danger);
}
.gs-shop-body .gs-messages-empty {
	text-align: center;
	padding: 60px 20px;
	color: var(--gs-text-muted);
}
.gs-shop-body .gs-messages-empty svg {
	color: var(--gs-border);
	margin: 0 auto 16px;
	display: block;
}
.gs-shop-body .gs-messages-empty p {
	font-size: 0.9rem;
	margin: 0;
}
.gs-shop-body .gs-messages-loading {
	padding: 20px;
}
.gs-shop-body .gs-msg-skeleton {
	height: 60px;
	border-radius: 12px;
	background: linear-gradient(90deg, var(--gs-bg-alt) 25%, var(--gs-bg-hover) 50%, var(--gs-bg-alt) 75%);
	background-size: 200% 100%;
	animation: gs-msg-shimmer 1.5s infinite;
	margin-bottom: 8px;
}
@keyframes gs-msg-shimmer {
	0% { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}
.gs-shop-body .gs-messages-pagination {
	text-align: center;
	padding: 16px;
}
.gs-shop-body .gs-msg-load-more {
	background: var(--gs-bg-alt);
	border: 1px solid var(--gs-border);
	color: var(--gs-text-secondary);
	font-size: 0.82rem;
	padding: 8px 24px;
	border-radius: 8px;
	cursor: pointer;
	transition: all 0.15s ease;
}
.gs-shop-body .gs-msg-load-more:hover {
	border-color: var(--gs-primary);
	color: var(--gs-primary);
}
/* Header bell icon */
.gs-shop-body .gs-header__action--bell {
	position: relative;
}
.gs-shop-body .gs-header__action--bell .gs-header__action-icon {
	color: var(--gs-text-dark);
}
@media (max-width: 768px) {
	.gs-shop-body .gs-messages-header {
		padding: 12px 14px;
	}
	.gs-shop-body .gs-msg-item {
		padding: 12px 14px;
	}
	.gs-shop-body .gs-msg-item__title {
		white-space: normal;
	}
}

/* ===== Confirmation Modal (cart remove, etc.) ===== */
/* Self-contained — NOT scoped to .gs-shop-body because the modal is
   appended directly to document.body. Uses unique class names to avoid
   conflicts with the existing .gs-shop-body .gs-modal rules.
   Colors inherit from theme CSS variables (--gs-primary, --gs-danger, etc.)
   so the modal matches the active theme automatically. */
.gs-confirm-overlay {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	background: rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.25s ease, visibility 0s linear 0.25s;
	font-family: 'IRANYekan', 'Vazirmatn', Tahoma, sans-serif;
}
.gs-confirm-overlay.gs-confirm--open {
	opacity: 1;
	visibility: visible;
	transition: opacity 0.25s ease, visibility 0s linear 0s;
}
.gs-confirm-dialog {
	position: relative;
	background: var(--gs-bg-card, #fff);
	border-radius: 20px;
	box-shadow:
		0 25px 65px rgba(0, 0, 0, 0.3),
		0 8px 24px rgba(0, 0, 0, 0.12);
	max-width: 380px;
	width: 100%;
	overflow: hidden;
	transform: scale(0.85) translateY(10px);
	opacity: 0;
	transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.2s ease;
}
.gs-confirm-overlay.gs-confirm--open .gs-confirm-dialog {
	transform: scale(1) translateY(0);
	opacity: 1;
}
/* Warning icon header */
.gs-confirm-dialog__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 28px 24px 0;
}
.gs-confirm-dialog__icon-circle {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: var(--gs-danger-bg, #fef0f1);
	display: flex;
	align-items: center;
	justify-content: center;
}
.gs-confirm-dialog__icon-circle svg {
	color: var(--gs-danger, #ef4056);
}
/* Body */
.gs-confirm-dialog__body {
	padding: 16px 24px 8px;
	text-align: center;
}
.gs-confirm-dialog__text {
	font-size: 15px;
	font-weight: 600;
	color: var(--gs-text, #3f4064);
	line-height: 1.7;
	margin: 0;
}
/* Footer */
.gs-confirm-dialog__footer {
	display: flex;
	gap: 12px;
	padding: 12px 24px 24px;
	justify-content: center;
}
/* Buttons — fully self-contained, use theme variables */
.gs-confirm-dialog__cancel,
.gs-confirm-dialog__ok {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 32px;
	border-radius: 12px;
	font-size: 14px;
	font-weight: 600;
	font-family: inherit;
	border: none;
	cursor: pointer;
	transition: background 0.15s, box-shadow 0.15s, transform 0.1s;
	line-height: 1.4;
	white-space: nowrap;
	min-width: 110px;
}
.gs-confirm-dialog__cancel:active,
.gs-confirm-dialog__ok:active {
	transform: scale(0.97);
}
.gs-confirm-dialog__cancel {
	background: var(--gs-bg, #f0f0f1);
	color: var(--gs-text, #3f4064);
}
.gs-confirm-dialog__cancel:hover {
	background: var(--gs-bg-tint, #e4e4e6);
}
.gs-confirm-dialog__ok {
	background: var(--gs-danger, #ef4056);
	color: var(--gs-text-on-primary, #fff);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
}
.gs-confirm-dialog__ok:hover {
	background: var(--gs-danger-strong, #d63851);
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}
@media (max-width: 480px) {
	.gs-confirm-dialog {
		max-width: calc(100% - 32px);
		border-radius: 16px;
	}
	.gs-confirm-dialog__icon {
		padding: 22px 18px 0;
	}
	.gs-confirm-dialog__icon-circle {
		width: 48px;
		height: 48px;
	}
	.gs-confirm-dialog__body {
		padding: 12px 18px 6px;
	}
	.gs-confirm-dialog__text {
		font-size: 14px;
	}
	.gs-confirm-dialog__footer {
		padding: 8px 18px 18px;
		gap: 10px;
	}
	.gs-confirm-dialog__cancel,
	.gs-confirm-dialog__ok {
		padding: 11px 24px;
		font-size: 13px;
		flex: 1;
		min-width: 0;
	}
}

/* ===== Size Guide Button + Modal ===== */
.gs-shop-body .gs-size-guide-btn-wrap {
	display: flex;
	margin-bottom: 14px;
}
.gs-shop-body .gs-size-guide-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px 20px;
	border: 2px solid var(--gs-border-dark, #e6e6e6);
	border-radius: 12px;
	background: var(--gs-bg-card, #fff);
	color: var(--gs-text, #3f4064);
	font-size: 13px;
	font-weight: 700;
	font-family: inherit;
	cursor: pointer;
	transition: all 0.2s ease;
}
.gs-shop-body .gs-size-guide-btn:hover {
	border-color: var(--gs-primary, #173b3f);
	color: var(--gs-primary, #173b3f);
	background: var(--gs-primary-bg, #edf3ef);
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}
.gs-shop-body .gs-size-guide-btn:active {
	transform: translateY(0);
}
.gs-shop-body .gs-size-guide-btn svg {
	flex-shrink: 0;
	color: var(--gs-primary, #173b3f);
}

/* Size Guide Modal — self-contained (appended to body) */
.gs-sg-overlay {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	z-index: 100001;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	background: rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.25s ease, visibility 0s linear 0.25s;
	font-family: 'IRANYekan', 'Vazirmatn', Tahoma, sans-serif;
}
.gs-sg-overlay.gs-sg--open {
	opacity: 1;
	visibility: visible;
	transition: opacity 0.25s ease, visibility 0s linear 0s;
}
.gs-sg-dialog {
	position: relative;
	background: var(--gs-bg-card, #fff);
	border-radius: 20px;
	box-shadow: 0 25px 65px rgba(0, 0, 0, 0.3), 0 8px 24px rgba(0, 0, 0, 0.12);
	max-width: 720px;
	width: 100%;
	max-height: 85vh;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transform: scale(0.85) translateY(10px);
	opacity: 0;
	transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.2s ease;
}
.gs-sg-overlay.gs-sg--open .gs-sg-dialog {
	transform: scale(1) translateY(0);
	opacity: 1;
}
/* Header */
.gs-sg-dialog__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 24px;
	border-bottom: 1px solid var(--gs-border, #f0f0f1);
	flex-shrink: 0;
}
.gs-sg-dialog__title {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 16px;
	font-weight: 700;
	color: var(--gs-text, #3f4064);
	margin: 0;
}
.gs-sg-dialog__close {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border: none;
	border-radius: 8px;
	background: var(--gs-bg, #f0f0f1);
	color: var(--gs-text-secondary, #62666d);
	cursor: pointer;
	transition: background 0.15s;
}
.gs-sg-dialog__close:hover {
	background: var(--gs-bg-tint, #e4e4e6);
}
/* Body — scrollable, minimal padding for max table width */
.gs-sg-dialog__body {
	padding: 12px 1%;
	overflow-y: auto;
	flex: 1;
}
/* Image mode */
.gs-sg-dialog__body img {
	max-width: 100%;
	height: auto;
	border-radius: 12px;
	display: block;
	margin: 0 auto;
}
/* Table mode — 98% of dialog width */
.gs-sg-table {
	width: 98%;
	margin: 0 1%;
	border-collapse: collapse;
	font-size: 13px;
}
.gs-sg-table thead th {
	background: var(--gs-primary, #173b3f);
	color: var(--gs-text-on-primary, #fff);
	padding: 12px 8px;
	font-weight: 700;
	text-align: center;
	font-size: 12px;
	white-space: nowrap;
}
.gs-sg-table thead th:last-child {
	border-radius: 8px 0 0 0;
}
.gs-sg-table thead th:first-child {
	border-radius: 0 8px 0 0;
}
.gs-sg-table tbody td {
	padding: 11px 8px;
	text-align: center;
	border-bottom: 1px solid var(--gs-border, #f0f0f1);
	color: var(--gs-text, #3f4064);
	font-weight: 500;
}
.gs-sg-table tbody tr:nth-child(even) td {
	background: var(--gs-bg-alt, #fafafa);
}
.gs-sg-table tbody tr:hover td {
	background: var(--gs-primary-bg, #edf3ef);
}
.gs-sg-table tbody td:first-child {
	font-weight: 700;
	color: var(--gs-primary, #173b3f);
}
/* Mobile responsive */
@media (max-width: 480px) {
	.gs-sg-dialog {
		max-width: calc(100% - 16px);
		border-radius: 16px;
		max-height: 85vh;
	}
	.gs-sg-dialog__header {
		padding: 14px 16px;
	}
	.gs-sg-dialog__title {
		font-size: 14px;
	}
	.gs-sg-dialog__body {
		padding: 8px 1%;
		overflow-x: auto;
	}
	.gs-sg-table {
		font-size: 11px;
		min-width: 400px;
	}
	.gs-sg-table thead th {
		padding: 9px 6px;
		font-size: 11px;
	}
	.gs-sg-table tbody td {
		padding: 9px 6px;
	}
}

/* Checkout items popup (mobile) */
.gs-checkout-popup-items .gs-checkout-item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 0;
	border-bottom: 1px solid var(--gs-border, #f0f0f1);
}
.gs-checkout-popup-items .gs-checkout-item:last-child {
	border-bottom: none;
}
.gs-checkout-popup-items .gs-checkout-item__img {
	width: 44px;
	height: 44px;
	border-radius: 8px;
	overflow: hidden;
	flex-shrink: 0;
}
.gs-checkout-popup-items .gs-checkout-item__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.gs-checkout-popup-items .gs-checkout-item__info {
	flex: 1;
	min-width: 0;
}
.gs-checkout-popup-items .gs-checkout-item__name {
	font-size: 12px;
	font-weight: 700;
	color: var(--gs-text, #3f4064);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.gs-checkout-popup-items .gs-checkout-item__qty {
	font-size: 11px;
	color: var(--gs-text-light, #81858b);
	margin-top: 2px;
}
.gs-checkout-popup-items .gs-checkout-item__price {
	font-size: 12px;
	font-weight: 800;
	color: var(--gs-text, #3f4064);
	flex-shrink: 0;
	white-space: nowrap;
}

/* ===== Payment Tabs (نقدی / اقساطی) ===== */
.gs-shop-body .gs-pay-tabs {
	margin-top: 4px;
}
.gs-shop-body .gs-pay-tabs__nav {
	display: flex;
	gap: 4px;
	padding: 4px;
	background: var(--gs-bg, #f0f0f1);
	border-radius: 12px;
	margin-bottom: 14px;
}
.gs-shop-body .gs-pay-tab {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	flex: 1;
	padding: 10px 14px;
	border: none;
	border-radius: 9px;
	background: transparent;
	color: var(--gs-text-muted, #8c8c8c);
	font-size: 13px;
	font-weight: 700;
	font-family: inherit;
	cursor: pointer;
	transition: all 0.2s ease;
}
.gs-shop-body .gs-pay-tab:hover {
	color: var(--gs-text, #1a1a1a);
}
.gs-shop-body .gs-pay-tab.gs-pay-tab--active {
	background: var(--gs-bg-card, #fff);
	color: var(--gs-primary, #ef4056);
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}
.gs-shop-body .gs-pay-panel {
	display: none;
}
.gs-shop-body .gs-pay-panel.gs-pay-panel--active {
	display: block;
}
.gs-shop-body .gs-pay-panel__desc {
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
	margin: 0 0 12px;
	padding: 0 4px;
}
/* Installment methods list — styled as cards */
.gs-shop-body .gs-installment-methods {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}
.gs-shop-body .gs-installment-methods li {
	padding: 14px 16px;
	border: 2px solid var(--gs-border, #f0f0f1);
	border-radius: 12px;
	background: var(--gs-bg-card, #fff);
	transition: all 0.15s ease;
}
.gs-shop-body .gs-installment-methods li:hover {
	border-color: var(--gs-primary-light, #fef0f1);
}
.gs-shop-body .gs-installment-methods li .wc_payment_method > label {
	display: flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	font-weight: 700;
	font-size: 14px;
	color: var(--gs-text, #1a1a1a);
}
.gs-shop-body .gs-installment-methods li .wc_payment_method > label img {
	max-width: 60px;
	max-height: 28px;
	object-fit: contain;
}
.gs-shop-body .gs-installment-methods li .wc_payment_method > label input[type="radio"] {
	margin: 0;
}
.gs-shop-body .gs-installment-methods li .payment_box {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid var(--gs-border, #f0f0f1);
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
}
/* Hide the "place order" button inside installment tab — it's in the cash tab */
.gs-shop-body #gs-pay-panel-installment #place_order {
	display: none;
}
/* Test tab — subtle accent to distinguish from real payment methods */
.gs-shop-body .gs-pay-tab--test.gs-pay-tab--active {
	color: var(--gs-blue, #1672dd);
}
/* Test methods list — styled as cards (mirrors installment layout) */
.gs-shop-body .gs-test-methods {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}
.gs-shop-body .gs-test-methods li {
	padding: 14px 16px;
	border: 2px dashed var(--gs-border, #d0d5dd);
	border-radius: 12px;
	background: var(--gs-bg-card, #fff);
	transition: all 0.15s ease;
}
.gs-shop-body .gs-test-methods li:hover {
	border-color: var(--gs-blue, #1672dd);
}
.gs-shop-body .gs-test-methods li:has(input[type="radio"]:checked) {
	border-color: var(--gs-blue, #1672dd);
	background: #eff6ff;
}
.gs-shop-body .gs-test-methods li .wc_payment_method > label {
	display: flex;
	align-items: center;
	gap: 10px;
	cursor: pointer;
	font-weight: 700;
	font-size: 14px;
	color: var(--gs-text, #1a1a1a);
}
.gs-shop-body .gs-test-methods li .wc_payment_method > label input[type="radio"] {
	margin: 0;
}
.gs-shop-body .gs-test-methods li .payment_box {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid var(--gs-border, #f0f0f1);
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
}
/* Hide the "place order" button inside test tab — it's in the cash tab */
.gs-shop-body #gs-pay-panel-test #place_order {
	display: none;
}
/* Mobile */
@media (max-width: 480px) {
	.gs-shop-body .gs-pay-tab {
		padding: 8px 10px;
		font-size: 10px;
	}
	.gs-shop-body .gs-pay-tabs__nav {
		padding: 3px;
		gap: 3px;
	}
}

/* ===== Pending Order Notice ===== */
.gs-shop-body .gs-pending-notice {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 16px;
	margin-bottom: 16px;
	border-radius: 12px;
	background: var(--gs-primary-bg, #fef0f1);
	border: 1px solid var(--gs-primary-light, #fce0e2);
	color: var(--gs-text, #1a1a1a);
	font-size: 13px;
}
.gs-shop-body .gs-pending-notice svg {
	flex-shrink: 0;
	color: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-pending-notice strong {
	color: var(--gs-primary, #ef4056);
	font-weight: 800;
}

/* ===== Thank You / Order Received Page ===== */
.gs-shop-body .gs-thankyou {
	max-width: 640px;
	margin: 0 auto;
	padding: 24px 16px 48px;
	text-align: center;
}
.gs-shop-body .gs-thankyou__icon {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: var(--gs-green, #00a049);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 20px;
	box-shadow: 0 8px 24px rgba(0, 160, 73, 0.25);
}
.gs-shop-body .gs-thankyou__icon--error {
	background: var(--gs-discount, #d32f2f);
	box-shadow: 0 8px 24px rgba(211, 47, 47, 0.25);
}
.gs-shop-body .gs-thankyou__title {
	font-size: 22px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
	margin: 0 0 8px;
}
.gs-shop-body .gs-thankyou__subtitle {
	font-size: 14px;
	color: var(--gs-text-muted, #8c8c8c);
	margin: 0 0 20px;
	line-height: 1.7;
}
.gs-shop-body .gs-thankyou__test-notice {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 10px 16px;
	border-radius: 10px;
	background: #eef2ff;
	border: 1px solid #c7d2fe;
	color: #4f46e5;
	font-size: 12px;
	font-weight: 600;
	margin: 0 auto 20px;
	max-width: 480px;
}
.gs-shop-body .gs-thankyou__test-notice svg {
	flex-shrink: 0;
}
/* Order info cards */
.gs-shop-body .gs-thankyou__cards {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
	margin-bottom: 24px;
}
.gs-shop-body .gs-thankyou__card {
	background: var(--gs-bg-card, #fff);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 12px;
	padding: 16px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}
.gs-shop-body .gs-thankyou__card-label {
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
	font-weight: 600;
}
.gs-shop-body .gs-thankyou__card-value {
	font-size: 16px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
}
/* Tracking codes */
.gs-shop-body .gs-thankyou__tracking {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-bottom: 28px;
	text-align: right;
}
.gs-shop-body .gs-thankyou__tracking-item {
	display: flex;
	align-items: center;
	gap: 14px;
	text-align: center;
	padding: 14px 16px;
	background: var(--gs-bg-card, #fff);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 12px;
}
.gs-shop-body .gs-thankyou__tracking-icon {
	width: 44px;
	height: 44px;
	border-radius: 10px;
	background: var(--gs-primary-bg, #fef0f1);
	color: var(--gs-primary, #ef4056);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.gs-shop-body .gs-thankyou__tracking-body {
	display: flex;
	flex-direction: column;
	gap: 2px;
	flex: 1;
	min-width: 0;
}
.gs-shop-body .gs-thankyou__tracking-label {
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
	font-weight: 600;
}
.gs-shop-body .gs-thankyou__tracking-value {
	font-size: 15px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
	word-break: break-all;
}
.gs-shop-body .gs-thankyou__tracking-value--code {
	font-family: 'Vazirmatn', 'IRANYekan', sans-serif;
	font-size: 20px;
	font-weight: 800;
	letter-spacing: 2px;
	color: var(--gs-green, #00a049);
	direction: ltr;
	display: inline-block;
}
/* Actions */
.gs-shop-body .gs-thankyou__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
	margin-bottom: 20px;
}
.gs-shop-body .gs-thankyou__btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 12px 24px;
	border-radius: 12px;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	transition: opacity 0.2s, transform 0.15s;
}
.gs-shop-body .gs-thankyou__btn:hover {
	opacity: 0.9;
	transform: translateY(-1px);
}
.gs-shop-body .gs-thankyou__note {
	font-size: 13px;
	color: var(--gs-text-muted, #8c8c8c);
	line-height: 1.7;
}
.gs-shop-body .gs-thankyou__note a {
	color: var(--gs-primary, #ef4056);
	font-weight: 700;
	text-decoration: none;
}
.gs-shop-body .gs-thankyou__note a:hover {
	text-decoration: underline;
}
/* Mobile */
@media (max-width: 480px) {
	.gs-shop-body .gs-thankyou__cards {
		grid-template-columns: 1fr;
	}
	.gs-shop-body .gs-thankyou__title {
		font-size: 18px;
	}
	.gs-shop-body .gs-thankyou__btn {
		width: 100%;
		justify-content: center;
	}
}

/* ===== Shipping Time Radio (express vs window) ===== */
.gs-shop-body .gs-ship-time-radio {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}
.gs-shop-body .gs-ship-time-option {
	cursor: pointer;
}
.gs-shop-body .gs-ship-time-option input[type="radio"] {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.gs-shop-body .gs-ship-time-option__card {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px 12px;
	border: 2px solid var(--gs-border, #f0f0f1);
	border-radius: 12px;
	background: var(--gs-bg-card, #fff);
	transition: all 0.2s ease;
	position: relative;
}
.gs-shop-body .gs-ship-time-option:hover .gs-ship-time-option__card {
	border-color: var(--gs-primary-light, #fef0f1);
}
.gs-shop-body .gs-ship-time-option input:checked + .gs-ship-time-option__card {
	border-color: var(--gs-primary, #ef4056);
	background: var(--gs-primary-bg, #fef0f1);
	box-shadow: 0 2px 8px rgba(238, 56, 78, 0.1);
}
.gs-shop-body .gs-ship-time-option__icon {
	flex-shrink: 0;
	color: var(--gs-text-muted, #8c8c8c);
	transition: color 0.2s;
}
.gs-shop-body .gs-ship-time-option input:checked + .gs-ship-time-option__card .gs-ship-time-option__icon {
	color: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-ship-time-option__info {
	flex: 1;
	min-width: 0;
}
.gs-shop-body .gs-ship-time-option__title {
	display: block;
	font-size: 13px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
	margin-bottom: 2px;
}
.gs-shop-body .gs-ship-time-option__desc {
	display: block;
	font-size: 11px;
	color: var(--gs-text-muted, #8c8c8c);
	line-height: 1.5;
}
.gs-shop-body .gs-ship-time-option__check {
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	border: 2px solid var(--gs-border, #f0f0f1);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s;
}
.gs-shop-body .gs-ship-time-option__check svg {
	opacity: 0;
	transition: opacity 0.2s;
	color: #fff;
}
.gs-shop-body .gs-ship-time-option input:checked + .gs-ship-time-option__card .gs-ship-time-option__check {
	background: var(--gs-primary, #ef4056);
	border-color: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-ship-time-option input:checked + .gs-ship-time-option__card .gs-ship-time-option__check svg {
	opacity: 1;
}
/* Mobile */
@media (max-width: 480px) {
	.gs-shop-body .gs-ship-time-radio {
		grid-template-columns: 1fr;
	}
	.gs-shop-body .gs-ship-time-option__card {
		padding: 12px 10px;
	}
}

/* ===== Shipping Methods Section (step 3) ===== */
.gs-shop-body .gs-ship-methods-section {
	margin-top: 16px;
}

/* ===== Mobile Sticky Payable Bar (checkout) ===== */
.gs-shop-body .gs-checkout-sticky-bar {
	display: none;
}
@media (max-width: 768px) {
	.gs-shop-body .gs-checkout-sticky-bar {
		display: flex;
		position: fixed;
		bottom: 56px; /* above mobile bottom nav (56px) */
		left: 0;
		right: 0;
		z-index: 1001; /* above bottom nav (1000) */
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 10px 16px;
		background: rgba(255, 255, 255, 0.92);
		backdrop-filter: blur(12px) saturate(160%);
		-webkit-backdrop-filter: blur(16px) saturate(160%);
		border-top: 1px solid rgba(0, 0, 0, 0.06);
		box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08);
		transform: translateY(calc(100% + 56px));
		transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	}
	.gs-shop-body .gs-checkout-sticky-bar.gs-checkout-sticky-bar--visible {
		transform: translateY(0);
	}
	.gs-shop-body .gs-checkout-sticky-bar__label {
		font-size: 11px;
		color: var(--gs-text-muted, #8c8c8c);
		font-weight: 600;
		margin-bottom: 2px;
	}
	.gs-shop-body .gs-checkout-sticky-bar__amount {
		font-size: 16px;
		font-weight: 800;
		color: var(--gs-text, #1a1a1a);
		line-height: 1.2;
	}
	.gs-shop-body .gs-checkout-sticky-bar__amount small {
		font-size: 11px;
		font-weight: 600;
		color: var(--gs-text-muted, #8c8c8c);
	}
	.gs-shop-body .gs-checkout-sticky-bar__btn {
		background: var(--gs-primary, #ef4056);
		color: #fff;
		border: none;
		border-radius: 12px;
		padding: 12px 24px;
		font-size: 13px;
		font-weight: 800;
		cursor: pointer;
		font-family: inherit;
		white-space: nowrap;
		box-shadow: 0 2px 8px rgba(238, 56, 78, 0.3);
		transition: transform 0.15s, box-shadow 0.2s;
	}
	.gs-shop-body .gs-checkout-sticky-bar__btn:hover {
		transform: translateY(-1px);
		box-shadow: 0 4px 14px rgba(238, 56, 78, 0.4);
	}
	.gs-shop-body .gs-checkout-sticky-bar__btn:active {
		transform: translateY(0);
	}
	/* Add bottom padding so content isn't hidden behind the bar + nav */
	.gs-shop-body .gs-checkout-layout {
		padding-bottom: 130px;
	}
}

/* ===== Inline Date Picker (inside express section, below radio) ===== */
.gs-shop-body .gs-express-checkout__body .gs-checkout-delivery {
	margin-top: 12px;
	padding: 14px;
	background: var(--gs-bg-alt, #fafafa);
	border-radius: 12px;
	border: 1px dashed var(--gs-border-dark, #e6e6e6);
}
.gs-shop-body .gs-express-checkout__body .gs-checkout-delivery .gs-delivery-btn {
	width: 100%;
	justify-content: center;
}

/* ===== Checkout Submit Button — Desktop (proxy button in summary column, sticky bottom) ===== */
.gs-shop-body .gs-checkout-desktop-submit {
	position: sticky;
	bottom: 16px;
	z-index: 10;
	margin-top: 12px;
	padding: 12px 0;
}
.gs-shop-body .gs-checkout-proxy-submit {
	width: 100%;
	height: 48px;
	background: var(--gs-primary, #ef4056);
	color: #fff;
	border: none;
	border-radius: 12px;
	font-size: 14px;
	font-weight: 800;
	font-family: inherit;
	cursor: pointer;
	transition: all 0.2s ease;
	box-shadow: 0 4px 14px rgba(238, 56, 78, 0.3);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}
.gs-shop-body .gs-checkout-proxy-submit:hover {
	background: var(--gs-primary-hover, #d63a4d);
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(238, 56, 78, 0.4);
}
.gs-shop-body .gs-checkout-proxy-submit:active {
	transform: translateY(0);
}
.gs-shop-body .gs-checkout-proxy-submit:disabled {
	opacity: 0.6;
	cursor: not-allowed;
	transform: none;
}
.gs-shop-body .gs-checkout-proxy-submit svg {
	flex-shrink: 0;
}
/* Hide real #place_order inside the cash tab — proxy button is used on desktop, sticky bar on mobile */
.gs-shop-body #gs-pay-panel-cash #place_order {
	display: none !important;
}
/* On mobile: hide desktop submit row (sticky bar is used) */
@media (max-width: 768px) {
	.gs-shop-body .gs-checkout-desktop-submit {
		display: none !important;
	}
}

/* ===== Size Guide Button — Inline (next to size selector) ===== */
.gs-shop-body .gs-variant-attr__header {
	display: flex;
	align-items: center;
	gap: 6px;
	flex-wrap: wrap;
}
.gs-shop-body .gs-size-guide-btn--inline {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 10px;
	/*margin-right: auto;*/
	border: 1.5px solid var(--gs-danger, #ef4056);
	border-radius: 8px;
	background: var(--gs-discount-2, #fef0f1);
	color: var(--gs-primary, #ef4056);
	font-size: 11px;
	font-weight: 700;
	font-family: inherit;
	cursor: pointer;
	transition: all 0.15s ease;
	line-height: 1.4;
}
.gs-shop-body .gs-size-guide-btn--inline:hover {
	background: var(--gs-primary, #ef4056);
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 2px 8px rgba(238, 56, 78, 0.2);
}
.gs-shop-body .gs-size-guide-btn--inline:active {
	transform: translateY(0);
}
.gs-shop-body .gs-size-guide-btn--inline svg {
	flex-shrink: 0;
	color: inherit;
}

/* ===== Installment Payment Methods — styled like cash methods ===== */
.gs-shop-body .gs-installment-methods {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.gs-shop-body .gs-installment-methods li.wc_payment_method {
	padding: 12px 14px;
	border: 2px solid var(--gs-border, #f0f0f1);
	border-radius: 12px;
	background: var(--gs-bg-card, #fff);
	transition: all 0.2s ease;
	cursor: pointer;
}
.gs-shop-body .gs-installment-methods li.wc_payment_method:hover {
	border-color: var(--gs-primary-light, #fef0f1);
}
.gs-shop-body .gs-installment-methods li.wc_payment_method.payment_method_gs_installment_snappay,
.gs-shop-body .gs-installment-methods li.wc_payment_method.payment_method_gs_installment_digipay,
.gs-shop-body .gs-installment-methods li.wc_payment_method.payment_method_gs_installment_torobpay {
	display: flex;
	align-items: center;
	gap: 10px;
}
.gs-shop-body .gs-installment-methods li.wc_payment_method input[type="radio"] {
	flex-shrink: 0;
	width: 18px;
	height: 18px;
	accent-color: var(--gs-primary, #ef4056);
	cursor: pointer;
}
.gs-shop-body .gs-installment-methods li.wc_payment_method label {
	flex: 1;
	display: flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
	margin: 0;
}
.gs-shop-body .gs-installment-methods li.wc_payment_method label img {
	max-width: 70px;
	max-height: 30px;
	object-fit: contain;
	flex-shrink: 0;
}
.gs-shop-body .gs-installment-methods li.wc_payment_method .payment_box {
	display: none !important;
}
/* Selected state */
.gs-shop-body .gs-installment-methods li.wc_payment_method:has(input:checked) {
	border-color: var(--gs-primary, #ef4056);
	background: var(--gs-primary-light, #fef0f1);
}

/* ===== Checkout Coupon (inside form, after payment tabs) ===== */
.gs-shop-body .gs-checkout-coupon-wrap {
	margin-top: 23px;
}
/* Coupon toggle button */
.gs-shop-body .gs-checkout-coupon-toggle {
    display: flex;
    background: var(--gs-bg-alt, #fafafa);
    border: 1px solid var(--gs-border, #f0f0f1);
    border-radius: 10px;
    color: var(--gs-text-secondary, #62666d);
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 10px 14px;
    font-size: 13px;
    font-weight: 700;
    font-family: inherit;
    cursor: pointer;
    transition: all 0.2s;
}
.gs-shop-body .gs-checkout-coupon-toggle:hover {
	border-color: var(--gs-primary, #ef4056);
	color: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-checkout-coupon-toggle__arrow {
	margin-right: auto;
	transition: transform 0.2s;
}
.gs-shop-body .gs-checkout-coupon-toggle--open .gs-checkout-coupon-toggle__arrow {
	transform: rotate(180deg);
}
/* Coupon collapsible content */
.gs-shop-body .gs-checkout-coupon {
	display: none;
	margin-top: 8px;
}
.gs-shop-body .gs-checkout-coupon--open {
	display: block;
}
.gs-shop-body .gs-checkout-coupon__row {
	display: flex;
	gap: 8px;
}
.gs-shop-body .gs-checkout-coupon__input {
	flex: 1;
	min-width: 0;
	padding: 10px 14px;
	border: 2px solid var(--gs-border, #f0f0f1);
	border-radius: 10px;
	font-size: 13px;
	font-family: inherit;
	background: var(--gs-bg-card, #fff);
	color: var(--gs-text, #1a1a1a);
	transition: border-color 0.2s;
}
.gs-shop-body .gs-checkout-coupon__input:focus {
	outline: none;
	border-color: var(--gs-discount, #ef4056);
}
.gs-shop-body .gs-checkout-coupon__btn {
	padding: 10px 20px;
	border: none;
	border-radius: 10px;
	background: var(--gs-discount, #1a1a1a);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	font-family: inherit;
	cursor: pointer;
	white-space: nowrap;
	transition: all 0.2s;
}
.gs-shop-body .gs-checkout-coupon__btn:hover {
	opacity: 0.85;
}
.gs-shop-body .gs-checkout-coupon__btn:active {
	transform: scale(0.97);
}
.gs-shop-body .gs-checkout-coupon__msg {
	width: 100%;
	font-size: 12px;
	margin-top: 6px;
	min-height: 16px;
}
.gs-shop-body .gs-checkout-coupon__msg--success {
	color: var(--gs-green, #00a049);
}
.gs-shop-body .gs-checkout-coupon__msg--error {
	color: var(--gs-discount, #d32f2f);
}
/* Mobile: full width coupon */
@media (max-width: 768px) {
	.gs-shop-body .gs-checkout-coupon-wrap {
		margin-top: 20px;
	}
	.gs-shop-body .gs-checkout-coupon__row {
		flex-direction: column;
	}
	.gs-shop-body .gs-checkout-coupon__btn {
		width: 100%;
	}
}

/* ===== Express Section: date picker visibility via CSS :has() ===== */
/* Hide date picker by default when inside express section */
.gs-shop-body .gs-express-checkout__body .gs-checkout-delivery {
	display: none !important;
}
/* Show date picker only when "window" radio is checked */
.gs-shop-body .gs-express-checkout__body:has(input[name="gs_express_mode"][value="window"]:checked) .gs-checkout-delivery {
	display: block !important;
}

/* ===== Mobile: reduce checkout spacing ===== */
@media (max-width: 768px) {
	.gs-shop-body .gs-checkout-main > form.checkout {
		gap: 10px;
	}
	.gs-shop-body .gs-express-checkout {
		margin-bottom: 10px;
	}
	.gs-shop-body .gs-express-checkout__header {
		padding: 12px 14px;
	}
	.gs-shop-body .gs-express-checkout__body {
		padding: 12px 14px;
	}
	.gs-shop-body .gs-checkout-addresses,
	.gs-shop-body .gs-checkout-review {
		padding: 14px 12px;
	}
	.gs-shop-body .gs-checkout-delivery__header,
	.gs-shop-body .gs-checkout-delivery__body {
		padding: 12px 14px;
	}
	.gs-shop-body .gs-checkout-action-row {
		margin: 10px 0;
		padding: 0 12px;
	}
	.gs-shop-body .gs-ship-time-option__card {
		padding: 10px 12px;
	}
}

@media (max-width: 480px) {
	.gs-shop-body .gs-checkout-main > form.checkout {
		gap: 8px;
	}
	.gs-shop-body .gs-express-checkout {
		margin-bottom: 8px;
	}
	.gs-shop-body .gs-express-checkout__header {
		padding: 10px 12px;
	}
	.gs-shop-body .gs-express-checkout__body {
		padding: 10px 12px;
	}
	.gs-shop-body .gs-checkout-action-row {
		margin: 8px 0;
	}
	.gs-shop-body .gs-ship-time-option__card {
		padding: 8px 10px;
	}
}

/* ===== Horizontal scroll rows: allow vertical page scroll alongside ===== */
/* Do NOT use touch-action: pan-x — it blocks vertical panning on the element.
   With native overflow-x: auto, the browser handles direction locking naturally:
   horizontal swipe scrolls the row, vertical swipe scrolls the page. */
.gs-shop-body .gs-gallery-thumbs,
.gs-shop-body .gs-tabs-list,
.gs-shop-body .gs-tags-list,
.gs-shop-body .gs-below-slider-grid,
.gs-shop-body .gs-special-offers-carousel__viewport,
.gs-shop-body .gs-flash-sale__viewport,
.gs-shop-body .gs-cat-sortbar,
.gs-shop-body .gs-checkout-addresses__scroll,
.gs-shop-body .gs-compare-scroll,
.gs-shop-body .gs-footer__features,
.gs-shop-body .gs-home-grid,
.gs-shop-body .gs-brands-scroll,
.gs-shop-body .gs-breadcrumb,
.gs-shop-body .gs-product-carousel__viewport,
.gs-shop-body .gs-price-chart-modal__chart-wrap,
.gs-shop-body .gs-sg-dialog__body,
.gs-shop-body [class*="-grid"][style*="overflow-x"],
.gs-shop-body [class*="-scroll"][style*="overflow-x"],
.gs-shop-body [class*="-carousel__viewport"],
.gs-shop-body [class*="-track"][style*="overflow-x"] {
	overscroll-behavior-x: contain;
}

/* ================================================================
   Order Status Timeline — responsive stepper
   ================================================================ */
.gs-order-timeline {
	background: linear-gradient(135deg, var(--gs-bg-card, #fafafa), var(--gs-bg, #fff));
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 16px;
	padding: 24px;
	margin-top: 16px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}
.gs-order-timeline__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 28px;
	flex-wrap: wrap;
	gap: 8px;
}
.gs-order-timeline__title {
	font-size: 15px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
	margin: 0;
	display: flex;
	align-items: center;
	gap: 8px;
}
.gs-order-timeline__title::before {
	content: '';
	width: 4px;
	height: 18px;
	background: var(--gs-primary, #ef4056);
	border-radius: 2px;
}
.gs-order-timeline__current-label {
	font-size: 12px;
	font-weight: 700;
	color: #fff;
	background: var(--gs-primary-light, #fef0f1);
	padding: 4px 14px;
	border-radius: 20px;
	border: 1px solid var(--gs-primary, #ef4056);
}
.gs-order-timeline--cancelled .gs-order-timeline__current-label {
	color: #d32f2f;
	background: #ffebee;
	border-color: #d32f2f;
}

/* Track: horizontal line behind steps */
.gs-order-timeline__track {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 0 8px;
}
.gs-order-timeline__progress-line {
	position: absolute;
	top: 22px;
	right: 28px;
	left: 28px;
	height: 4px;
	background: var(--gs-border, #e8e8e8);
	border-radius: 2px;
	z-index: 0;
}
.gs-order-timeline__progress-fill {
	height: 100%;
	background: linear-gradient(90deg, var(--gs-green, #00a049), var(--gs-primary, #ef4056));
	border-radius: 2px;
	transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 0 8px rgba(239, 64, 86, 0.3);
}
.gs-order-timeline--cancelled .gs-order-timeline__progress-fill {
	background: #d32f2f;
	box-shadow: 0 0 8px rgba(211, 47, 47, 0.3);
}

/* Each step */
.gs-order-timeline__step {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 1;
	min-width: 0;
}
.gs-order-timeline__step-circle {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--gs-bg, #fff);
	border: 2px solid var(--gs-border, #e8e8e8);
	color: #bbb;
	transition: all 0.3s ease;
	flex-shrink: 0;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.gs-order-timeline__step.is-done .gs-order-timeline__step-circle {
	background: linear-gradient(135deg, var(--gs-green, #00a049), #00c853);
	border-color: var(--gs-green, #00a049);
	color: #fff;
	box-shadow: 0 2px 8px rgba(0, 160, 73, 0.25);
}
.gs-order-timeline__step.is-current .gs-order-timeline__step-circle {
	background: linear-gradient(135deg, #e08353, #cdb99a);
    border-color: var(--gs-primary, #ef4056);
    color: #fff;
    box-shadow: 0 0 0 5px rgba(239, 64, 86, 0.12);
    animation: gs-timeline-pulse 2s ease-in-out infinite;
}
.gs-order-timeline__step.is-cancelled .gs-order-timeline__step-circle {
	background: #ffebee;
	border-color: #d32f2f;
	color: #d32f2f;
}
@keyframes gs-timeline-pulse {
	0%, 100% { box-shadow: 0 0 0 5px rgba(239, 64, 86, 0.12), 0 2px 8px rgba(239, 64, 86, 0.2); }
	50% { box-shadow: 0 0 0 10px rgba(239, 64, 86, 0.06), 0 2px 12px rgba(239, 64, 86, 0.3); }
}
.gs-order-timeline__step-label {
	font-size: 12px;
	font-weight: 700;
	color: #aaa;
	margin-top: 10px;
	text-align: center;
	white-space: nowrap;
	transition: color 0.3s ease;
}
.gs-order-timeline__step.is-done .gs-order-timeline__step-label {
	color: var(--gs-text, #1a1a1a);
}
.gs-order-timeline__step.is-current .gs-order-timeline__step-label {
	color: var(--gs-primary, #ef4056);
	font-weight: 800;
}
.gs-order-timeline__step.is-cancelled .gs-order-timeline__step-label {
	color: #d32f2f;
}
.gs-order-timeline__step-date {
	font-size: 10px;
	color: #bbb;
	margin-top: 3px;
	text-align: center;
	font-variant-numeric: tabular-nums;
}
.gs-order-timeline__step.is-done .gs-order-timeline__step-date {
	color: var(--gs-green, #00a049);
	font-weight: 600;
}
.gs-order-timeline__step.is-current .gs-order-timeline__step-date {
	color: var(--gs-primary, #ef4056);
	font-weight: 600;
}

/* Cancelled message */
.gs-order-timeline__cancelled-msg {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 16px;
	padding: 12px 16px;
	background: #ffebee;
	border-radius: 10px;
	color: #d32f2f;
	font-size: 12px;
	font-weight: 600;
	border: 1px solid rgba(211, 47, 47, 0.15);
}

/* ── Responsive: Tablet ── */
@media (max-width: 768px) {
	.gs-order-timeline {
		padding: 18px 14px;
	}
	.gs-order-timeline__step-circle {
		width: 36px;
		height: 36px;
	}
	.gs-order-timeline__step-circle svg {
		width: 16px;
		height: 16px;
	}
	.gs-order-timeline__step-label {
		font-size: 11px;
	}
	.gs-order-timeline__step-date {
		font-size: 9px;
	}
	.gs-order-timeline__progress-line {
		top: 18px;
		right: 22px;
		left: 22px;
	}
}

/* ── Responsive: Mobile — vertical timeline ── */
@media (max-width: 520px) {
	.gs-order-timeline {
		padding: 16px 12px;
	}
	.gs-order-timeline__track {
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		padding: 0;
		position: relative;
	}
	/* Vertical progress line — on the LEFT side, aligned with circles */
	.gs-order-timeline__progress-line {
position: absolute;
        top: 22px;
        bottom: 22px;
        right: 22px;
        left: auto;
        width: 3px;
        height: auto;
        background: var(--gs-border, #f0f0f1);
	}
	.gs-order-timeline__progress-fill {
		width: 100% !important;
		height: var(--gs-progress, 0%);
		transition: height 0.8s cubic-bezier(0.4, 0, 0.2, 1);
		background: linear-gradient(180deg, var(--gs-green, #00a049), var(--gs-primary, #ef4056));
	}
	/* Each step: circle on LEFT, text on RIGHT */
	.gs-order-timeline__step {
		flex-direction: row;
		align-items: center;
		gap: 14px;
		padding: 10px 0;
		text-align: right;
		justify-content: flex-start;
		position: relative;
		z-index: 1;
	}
	.gs-order-timeline__step-circle {
		flex-shrink: 0;
		width: 44px;
		height: 44px;
	}
	/* Text container: label + date stacked */
	.gs-order-timeline__step-label {
		margin-top: 0;
		font-size: 13px;
		text-align: right;
		flex: 1;
	}
	.gs-order-timeline__step-date {
		margin-top: 2px;
		font-size: 11px;
		text-align: right;
	}
}

/* ── Responsive: Very small mobile ── */
@media (max-width: 380px) {
	.gs-order-timeline {
		padding: 14px 10px;
	}
	.gs-order-timeline__step-circle {
		width: 32px;
		height: 32px;
	}
	.gs-order-timeline__step-circle svg {
		width: 14px;
		height: 14px;
	}
	.gs-order-timeline__step-label {
		font-size: 12px;
	}
}

/* ===== Order Detail — Item Rows (account view-order) ===== */
.gs-shop-body .gs-order-item-row {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 12px 16px;
	border-bottom: 1px solid var(--gs-border, #f0f0f1);
	transition: background 0.15s ease;
}
.gs-shop-body .gs-order-item-row:last-child {
	border-bottom: none;
}
.gs-shop-body .gs-order-item-row:hover {
	background: var(--gs-bg-hover, #f7f7f8);
}
.gs-shop-body .gs-order-item__img {
	width: 56px;
	height: 56px;
	border-radius: 10px;
	border: 1px solid var(--gs-border, #f0f0f1);
	background: var(--gs-bg-card, #fafafa);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	flex-shrink: 0;
}
.gs-shop-body .gs-order-item__img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	padding: 4px;
}
.gs-shop-body .gs-order-item__img-placeholder {
	font-size: 24px;
	color: var(--gs-text-muted, #8c8c8c);
}
.gs-shop-body .gs-order-item__body {
	flex: 1;
	min-width: 0;
}
.gs-shop-body .gs-order-item__name {
	display: block;
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
	text-decoration: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	transition: color 0.15s ease;
}
.gs-shop-body .gs-order-item__name:hover {
	color: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-order-item__qty {
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
	margin-top: 2px;
}
.gs-shop-body .gs-item-attrs {
	margin-top: 6px;
	display: flex;
	flex-wrap: wrap;
	gap: 4px 8px;
}
.gs-shop-body .gs-item-attr {
	font-size: 11px;
	color: var(--gs-text-muted, #8c8c8c);
	background: var(--gs-bg-alt, #f7f7f8);
	padding: 2px 8px;
	border-radius: 6px;
	line-height: 1.5;
}
.gs-shop-body .gs-item-attr b {
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
}
.gs-shop-body .gs-item-addons {
	margin-top: 6px;
	font-size: 11px;
	line-height: 1.6;
}
.gs-shop-body .gs-item-addons-label {
	color: var(--gs-text-muted, #8c8c8c);
}
.gs-shop-body .gs-item-addons-val {
	color: var(--gs-text, #1a1a1a);
	font-weight: 600;
}
.gs-shop-body .gs-order-item__price {
	font-size: 13px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
	flex-shrink: 0;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}
.gs-shop-body .gs-order-item__price .woocommerce-Price-amount,
.gs-shop-body .gs-order-item__price .woocommerce-Price-amount bdi {
	font-size: inherit;
	font-weight: inherit;
}

/* Mobile */
@media (max-width: 480px) {
	.gs-shop-body .gs-order-item-row {
		gap: 10px;
		padding: 10px 12px;
	}
	.gs-shop-body .gs-order-item__img {
		width: 48px;
		height: 48px;
	}
	.gs-shop-body .gs-order-item__name {
		font-size: 12px;
	}
	.gs-shop-body .gs-order-item__price {
		font-size: 12px;
	}
}

/* ===== Order Detail — Main Card (items + header) ===== */
.gs-shop-body .gs-order-detail-card {
	overflow: hidden;
}
.gs-shop-body .gs-order-detail-card__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
	padding: 16px 20px;
	border-bottom: 1px solid var(--gs-border, #f0f0f1);
}
.gs-shop-body .gs-order-detail-card__info {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.gs-shop-body .gs-order-detail-card__title {
	font-size: 16px;
	font-weight: 900;
	color: var(--gs-text, #1a1a1a);
	margin: 0;
	line-height: 1.4;
}
.gs-shop-body .gs-order-detail-card__date {
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
	margin: 0;
}
.gs-shop-body .gs-order-detail-card__items {
	border-top: 0;
}
.gs-shop-body .gs-order-detail-card__items .gs-order-item-row:first-child {
	border-top: none;
}

/* ===== Order Detail — Shipping & Payment Card ===== */
.gs-shop-body .gs-order-shipping-card {
	overflow: hidden;
}
.gs-shop-body .gs-order-shipping-card__header {
	padding: 14px 16px;
	border-bottom: 1px solid var(--gs-border, #f0f0f1);
}
.gs-shop-body .gs-order-shipping-card__title {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
	margin: 0;
}
.gs-shop-body .gs-order-shipping-card__title svg {
	color: var(--gs-primary, #ef4056);
	flex-shrink: 0;
}
.gs-shop-body .gs-order-shipping-card__body {
	padding: 12px 16px;
	display: flex;
	flex-direction: column;
	gap: 0;
}

/* ===== Order Detail — Meta Rows (shipping info + totals) ===== */
.gs-shop-body .gs-order-meta-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 0;
	border-bottom: 1px dashed var(--gs-border, #f0f0f1);
}
.gs-shop-body .gs-order-meta-row:last-child {
	border-bottom: none;
}
.gs-shop-body .gs-order-meta-row__label {
	font-size: 12px;
	font-weight: 600;
	color: var(--gs-text-muted, #8c8c8c);
	flex-shrink: 0;
}
.gs-shop-body .gs-order-meta-row__value {
	font-size: 13px;
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
	text-align: left;
}
.gs-shop-body .gs-order-meta-row__value .woocommerce-Price-amount,
.gs-shop-body .gs-order-meta-row__value .woocommerce-Price-amount bdi {
	font-size: inherit;
	font-weight: inherit;
}

/* Totals section */
.gs-shop-body .gs-order-totals {
	padding: 14px 16px;
	border-top: 1px solid var(--gs-border, #f0f0f1);
	background: var(--gs-bg-alt, #fafafa);
}
.gs-shop-body .gs-order-meta-row--total {
	border-bottom: none;
	padding: 4px 0;
}
.gs-shop-body .gs-order-meta-row__value--total {
	font-size: 16px;
	font-weight: 900;
	color: var(--gs-primary, #ef4056);
	font-variant-numeric: tabular-nums;
}

/* Mobile */
@media (max-width: 480px) {
	.gs-shop-body .gs-order-shipping-card__header {
		padding: 12px 14px;
	}
	.gs-shop-body .gs-order-shipping-card__body {
		padding: 10px 14px;
	}
	.gs-shop-body .gs-order-meta-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 2px;
		padding: 8px 0;
	}
	.gs-shop-body .gs-order-meta-row--total {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
	}
	.gs-shop-body .gs-order-meta-row__value {
		text-align: right;
	}
	.gs-shop-body .gs-order-totals {
		padding: 12px 14px;
	}
	.gs-shop-body .gs-order-meta-row__value--total {
		font-size: 15px;
	}
}

/* ===== Static Pages (about, contact, FAQ, terms, etc.) ===== */
.gs-shop-body .gs-static-page {
	padding: 16px 0 48px;
}
.gs-shop-body .gs-static-page__wrap {
	max-width: 100%;
	margin: 0 auto;
}
.gs-shop-body .gs-static-page__breadcrumb {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
	margin-bottom: 20px;
}
.gs-shop-body .gs-static-page__breadcrumb a {
	color: var(--gs-text-muted, #8c8c8c);
	text-decoration: none;
	transition: color 0.15s ease;
}
.gs-shop-body .gs-static-page__breadcrumb a:hover {
	color: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-static-page__breadcrumb-sep {
	color: var(--gs-border, #e8e8e8);
}
.gs-shop-body .gs-static-page__breadcrumb-current {
	color: var(--gs-text, #1a1a1a);
	font-weight: 600;
}
.gs-shop-body .gs-static-page__header {
	margin-bottom: 28px;
	padding-bottom: 20px;
	border-bottom: 2px solid var(--gs-border, #f0f0f1);
}
.gs-shop-body .gs-static-page__title {
	font-size: 24px;
	font-weight: 900;
	color: var(--gs-text, #1a1a1a);
	margin: 0;
	line-height: 1.4;
}

/* Static page content — rich text styling */
.gs-shop-body .gs-static-content {
	font-size: 14px;
	line-height: 1.8;
	color: var(--gs-text, #1a1a1a);
}
.gs-shop-body .gs-static-content h2 {
	font-size: 20px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
	margin: 32px 0 16px;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--gs-border, #f0f0f1);
}
.gs-shop-body .gs-static-content h3 {
	font-size: 17px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
	margin: 28px 0 12px;
}
.gs-shop-body .gs-static-content h4 {
	font-size: 15px;
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
	margin: 24px 0 10px;
}
.gs-shop-body .gs-static-content p {
	margin: 0 0 16px;
}
.gs-shop-body .gs-static-content ul,
.gs-shop-body .gs-static-content ol {
	margin: 0 0 16px;
	padding-right: 24px;
}
.gs-shop-body .gs-static-content li {
	margin-bottom: 8px;
	line-height: 1.7;
}
.gs-shop-body .gs-static-content ul > li {
	list-style: disc;
}
.gs-shop-body .gs-static-content ol > li {
	list-style: decimal;
}
.gs-shop-body .gs-static-content a {
	color: var(--gs-primary, #ef4056);
	text-decoration: none;
	font-weight: 600;
	transition: opacity 0.15s ease;
}
.gs-shop-body .gs-static-content a:hover {
	opacity: 0.8;
}
.gs-shop-body .gs-static-content strong,
.gs-shop-body .gs-static-content b {
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
}
.gs-shop-body .gs-static-content blockquote {
	border-right: 4px solid var(--gs-primary, #ef4056);
	padding: 12px 20px;
	margin: 20px 0;
	background: var(--gs-bg-card, #fafafa);
	border-radius: 8px;
	font-size: 14px;
	color: var(--gs-text-muted, #555);
}
.gs-shop-body .gs-static-content hr {
	border: none;
	border-top: 1px solid var(--gs-border, #f0f0f1);
	margin: 28px 0;
}

/* Info cards inside static pages */
.gs-shop-body .gs-static-content .gs-info-card {
	background: var(--gs-bg-card, #fafafa);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 12px;
	padding: 20px 24px;
	margin: 20px 0;
}
.gs-shop-body .gs-static-content .gs-info-card--primary {
	border-color: var(--gs-primary, #ef4056);
	background: var(--gs-primary-light, #fef0f1);
	color: #fff;
}
.gs-shop-body .gs-static-content .gs-info-card--primary h3,
.gs-shop-body .gs-static-content .gs-info-card--primary h4 {
	color: #fff;
}
.gs-shop-body .gs-static-content .gs-info-card--primary p {
	color: #fff;
}
.gs-shop-body .gs-static-content .gs-info-card--primary a {
	color: #fff;
	text-decoration: underline;
}
.gs-shop-body .gs-static-content .gs-info-card--success {
	border-color: var(--gs-green, #00a049);
	background: #f0fdf4;
}
.gs-shop-body .gs-static-content .gs-info-card--warning {
	border-color: var(--gs-accent, #f08000);
	background: #fffbeb;
}
.gs-shop-body .gs-static-content .gs-info-card h3,
.gs-shop-body .gs-static-content .gs-info-card h4 {
	margin-top: 0;
}

/* FAQ accordion */
.gs-shop-body .gs-static-content .gs-faq-item {
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 10px;
	margin-bottom: 12px;
	overflow: hidden;
}
.gs-shop-body .gs-static-content .gs-faq-item__q {
	padding: 14px 20px;
	font-size: 14px;
	font-weight: 700;
	color: var(--gs-text, #1a1a1a);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	background: var(--gs-bg-card, #fafafa);
	transition: background 0.15s ease;
}
.gs-shop-body .gs-static-content .gs-faq-item__q:hover {
	background: var(--gs-bg-hover, #f7f7f8);
}
.gs-shop-body .gs-static-content .gs-faq-item__q::after {
	content: '+';
	font-size: 20px;
	font-weight: 400;
	color: var(--gs-text-muted, #8c8c8c);
	flex-shrink: 0;
	transition: transform 0.2s ease;
}
.gs-shop-body .gs-static-content .gs-faq-item.is-open .gs-faq-item__q::after {
	transform: rotate(45deg);
	color: var(--gs-primary, #ef4056);
}
.gs-shop-body .gs-static-content .gs-faq-item__a {
	padding: 0 20px;
	font-size: 13px;
	line-height: 1.8;
	color: var(--gs-text-muted, #555);
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease, padding 0.3s ease;
}
.gs-shop-body .gs-static-content .gs-faq-item.is-open .gs-faq-item__a {
	padding: 12px 20px 16px;
	max-height: 500px;
}

/* Contact info grid */
.gs-shop-body .gs-static-content .gs-contact-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 16px;
	margin: 20px 0;
}
.gs-shop-body .gs-static-content .gs-contact-card {
	background: var(--gs-bg-card, #fafafa);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 12px;
	padding: 20px;
	text-align: center;
}
.gs-shop-body .gs-static-content .gs-contact-card__icon {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--gs-discount, #ef4056);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 12px;
}
.gs-shop-body .gs-static-content .gs-contact-card__icon svg {
	width: 24px;
	height: 24px;
}
.gs-shop-body .gs-static-content .gs-contact-card__title {
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
	margin-bottom: 4px;
}
.gs-shop-body .gs-static-content .gs-contact-card__val {
	font-size: 13px;
	color: var(--gs-text-muted, #8c8c8c);
	font-variant-numeric: tabular-nums;
}

/* Steps (for "how to order" etc.) */
.gs-shop-body .gs-static-content .gs-steps {
	counter-reset: gs-step;
	margin: 20px 0;
}
.gs-shop-body .gs-static-content .gs-steps__item {
	position: relative;
	padding-right: 60px;
	margin-bottom: 24px;
	counter-increment: gs-step;
}
.gs-shop-body .gs-static-content .gs-steps__item::before {
	content: counter(gs-step);
	position: absolute;
	right: 0;
	top: 0;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--gs-discount, #ef4056);
	color: #fff;
	font-size: 18px;
	font-weight: 900;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	font-family: 'Vazirmatn';
}
.gs-shop-body .gs-static-content .gs-steps__item::after {
	content: '';
	position: absolute;
	right: 19px;
	top: 44px;
	bottom: -12px;
	width: 2px;
	background: var(--gs-border, #f0f0f1);
}
.gs-shop-body .gs-static-content .gs-steps__item:last-child::after {
	display: none;
}
.gs-shop-body .gs-static-content .gs-steps__title {
	font-size: 15px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
	margin-bottom: 6px;
}
.gs-shop-body .gs-static-content .gs-steps__desc {
	font-size: 13px;
	color: var(--gs-text-muted, #555);
	line-height: 1.7;
}

/* Feature grid */
.gs-shop-body .gs-static-content .gs-feature-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 16px;
	margin: 20px 0;
}
.gs-shop-body .gs-static-content .gs-feature-card {
	background: var(--gs-bg-card, #fafafa);
	border: 1px solid var(--gs-border, #f0f0f1);
	border-radius: 12px;
	padding: 20px;
	text-align: center;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.gs-shop-body .gs-static-content .gs-feature-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
}
.gs-shop-body .gs-static-content .gs-feature-card__icon {
	width: 52px;
	height: 52px;
	border-radius: 14px;
	background: var(--gs-primary, #ef4056);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 14px;
}
.gs-shop-body .gs-static-content .gs-feature-card__icon svg {
	width: 28px;
	height: 28px;
}
.gs-shop-body .gs-static-content .gs-feature-card__title {
	font-size: 14px;
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
	margin-bottom: 6px;
}
.gs-shop-body .gs-static-content .gs-feature-card__desc {
	font-size: 12px;
	color: var(--gs-text-muted, #8c8c8c);
	line-height: 1.6;
}

/* Table */
.gs-shop-body .gs-static-content table {
	width: 100%;
	border-collapse: collapse;
	margin: 20px 0;
	font-size: 13px;
}
.gs-shop-body .gs-static-content table th,
.gs-shop-body .gs-static-content table td {
	border: 1px solid var(--gs-border, #f0f0f1);
	padding: 10px 14px;
	text-align: right;
}
.gs-shop-body .gs-static-content table th {
	background: var(--gs-bg-card, #fafafa);
	font-weight: 800;
	color: var(--gs-text, #1a1a1a);
}
.gs-shop-body .gs-static-content table tr:nth-child(even) td {
	background: var(--gs-bg-card, #fafafa);
}

/* Mobile */
@media (max-width: 768px) {
	.gs-shop-body .gs-static-page__title {
		font-size: 20px;
	}
	.gs-shop-body .gs-static-content {
		font-size: 13px;
	}
	.gs-shop-body .gs-static-content h2 {
		font-size: 17px;
	}
	.gs-shop-body .gs-static-content h3 {
		font-size: 15px;
	}
	.gs-shop-body .gs-static-content .gs-contact-grid,
	.gs-shop-body .gs-static-content .gs-feature-grid {
		grid-template-columns: 1fr;
	}
}




@font-face {
	font-family: 'Vazirmatn';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/Vazirmatn-Light.woff2') format('woff2');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
	size-adjust: 100.5%;
}
@font-face {
	font-family: 'Vazirmatn';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/Vazirmatn-Regular.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	size-adjust: 100.5%;
}
@font-face {
	font-family: 'Vazirmatn';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/Vazirmatn-Medium.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
	size-adjust: 100.5%;
}
@font-face {
	font-family: 'Vazirmatn';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/Vazirmatn-SemiBold.woff2') format('woff2');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
	size-adjust: 100.5%;
}
@font-face {
	font-family: 'Vazirmatn';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/Vazirmatn-Bold.woff2') format('woff2');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
	size-adjust: 100.5%;
}
@font-face {
	font-family: 'Vazirmatn';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/Vazirmatn-Black.woff2') format('woff2');
	font-weight: 900;
	font-style: normal;
	font-display: swap;
	size-adjust: 100.5%;
}
@font-face {
	font-family: 'Vazirmatn';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/Vazirmatn-Bold.woff2') format('woff2');
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'IRANYekan';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/iranyekan-light.woff2') format('woff2');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'IRANYekan';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/iranyekan-regular.woff2') format('woff2'), url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/iranyekan-regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'IRANYekan';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/iranyekan-medium.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'IRANYekan';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/iranyekan-bold.woff2') format('woff2'), url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/iranyekan-bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'IRANYekan';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/iranyekan-extrabold.woff') format('woff');
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'IRANYekan';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/iranyekan-black.woff') format('woff');
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'IRANYekan';
	src: url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/iranyekan-bold.woff2') format('woff2'), url('https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/iranyekan-bold.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

.gs-toast.gs-toast--success { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 12px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #00a049; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); }
@media (max-width: 1024px) { .gs-toast.gs-toast--success { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 12px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #00a049; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); } }
@media (max-width: 640px) { .gs-toast.gs-toast--success { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 11px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #00a049; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); } }
.gs-toast.gs-toast--error { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 12px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #ef4056; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); }
@media (max-width: 1024px) { .gs-toast.gs-toast--error { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 13px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #ef4056; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); } }
@media (max-width: 640px) { .gs-toast.gs-toast--error { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 11px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #ef4056; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); } }
.gs-toast.gs-toast--warning { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 13px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #f08000; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); }
@media (max-width: 1024px) { .gs-toast.gs-toast--warning { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 12px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #f08000; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); } }
@media (max-width: 640px) { .gs-toast.gs-toast--warning { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 11px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #f08000; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); } }
.gs-toast.gs-toast--info { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 13px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #1672dd; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); }
@media (max-width: 1024px) { .gs-toast.gs-toast--info { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 12px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #1672dd; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); } }
@media (max-width: 640px) { .gs-toast.gs-toast--info { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 11px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #1672dd; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); } }
.gs-toast.gs-toast--default { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 13px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #19bfd3; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); }
@media (max-width: 1024px) { .gs-toast.gs-toast--default { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 12px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #19bfd3; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); } }
@media (max-width: 640px) { .gs-toast.gs-toast--default { top: auto; bottom: auto; left: auto; right: auto; top: 20px; right: 20px; max-width: 360px; font-size: 11px; font-weight: 500; padding: 12px 16px; border-radius: 8px; border: 1 solid #19bfd3; background: rgba(255, 255, 255, 0.6); backdrop-filter: blur(15px) saturate(180%); -webkit-backdrop-filter: blur(15px) saturate(180%); } }

/*# sourceURL=gs-shop-base-inline-css */

@font-face {
  font-family: "Phosphor";
  src:
    url("https://gs.sitesazan.net/wp-content/plugins/GS-Ecommerce/assets/fonts/Phosphor.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

.ph {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "Phosphor" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Enable Ligatures ================ */
  letter-spacing: 0;
  -webkit-font-feature-settings: "liga";
  -moz-font-feature-settings: "liga=1";
  -moz-font-feature-settings: "liga";
  -ms-font-feature-settings: "liga" 1;
  font-feature-settings: "liga";
  -webkit-font-variant-ligatures: discretionary-ligatures;
  font-variant-ligatures: discretionary-ligatures;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ph.ph-activity:before {
  content: "\e000";
}
.ph.ph-app-window:before {
  content: "\e5da";
}
.ph.ph-archive-box:before {
  content: "\e00e";
}
.ph.ph-arrow-counter-clockwise:before {
  content: "\e038";
}
.ph.ph-arrows-in-simple:before {
  content: "\e09e";
}
.ph.ph-arrows-left-right:before {
  content: "\e0a0";
}
.ph.ph-baby:before {
  content: "\e774";
}
.ph.ph-bank:before {
  content: "\e0b4";
}
.ph.ph-bell:before {
  content: "\e0ce";
}
.ph.ph-bell-simple:before {
  content: "\e0d0";
}
.ph.ph-book:before {
  content: "\e0e2";
}
.ph.ph-book-open:before {
  content: "\e0e6";
}
.ph.ph-brain:before {
  content: "\e74e";
}
.ph.ph-briefcase:before {
  content: "\e0ee";
}
.ph.ph-broom:before {
  content: "\ec54";
}
.ph.ph-bug:before {
  content: "\e5f4";
}
.ph.ph-building-office:before {
  content: "\e0ff";
}
.ph.ph-buildings:before {
  content: "\e102";
}
.ph.ph-calendar:before {
  content: "\e108";
}
.ph.ph-calendar-blank:before {
  content: "\e10a";
}
.ph.ph-calendar-x:before {
  content: "\e10c";
}
.ph.ph-caret-down:before {
  content: "\e136";
}
.ph.ph-caret-left:before {
  content: "\e138";
}
.ph.ph-caret-right:before {
  content: "\e13a";
}
.ph.ph-cell-signal-full:before {
  content: "\e142";
}
.ph.ph-certificate:before {
  content: "\e766";
}
.ph.ph-chart-line:before {
  content: "\e154";
}
.ph.ph-chat-centered-text:before {
  content: "\e166";
}
.ph.ph-chat-circle:before {
  content: "\e168";
}
.ph.ph-chat-circle-dots:before {
  content: "\e16c";
}
.ph.ph-check-circle:before {
  content: "\e184";
}
.ph.ph-circle:before {
  content: "\e18a";
}
.ph.ph-clipboard:before {
  content: "\e196";
}
.ph.ph-clipboard-text:before {
  content: "\e198";
}
.ph.ph-clock:before {
  content: "\e19a";
}
.ph.ph-clock-clockwise:before {
  content: "\e19e";
}
.ph.ph-code:before {
  content: "\e1bc";
}
.ph.ph-copyright:before {
  content: "\e54a";
}
.ph.ph-cpu:before {
  content: "\e610";
}
.ph.ph-credit-card:before {
  content: "\e1d2";
}
.ph.ph-crosshair:before {
  content: "\e1d6";
}
.ph.ph-cube:before {
  content: "\e1da";
}
.ph.ph-currency-dollar:before {
  content: "\e550";
}
.ph.ph-cursor-click:before {
  content: "\e7c8";
}
.ph.ph-database:before {
  content: "\e1de";
}
.ph.ph-device-mobile:before {
  content: "\e1e0";
}
.ph.ph-device-tablet:before {
  content: "\e1e6";
}
.ph.ph-diamond:before {
  content: "\e1ec";
}
.ph.ph-drop:before {
  content: "\e210";
}
.ph.ph-envelope:before {
  content: "\e214";
}
.ph.ph-envelope-simple:before {
  content: "\e218";
}
.ph.ph-eraser:before {
  content: "\e21e";
}
.ph.ph-eye:before {
  content: "\e220";
}
.ph.ph-eye-closed:before {
  content: "\e222";
}
.ph.ph-eye-slash:before {
  content: "\e224";
}
.ph.ph-file-csv:before {
  content: "\eb1c";
}
.ph.ph-file-text:before {
  content: "\e23a";
}
.ph.ph-fingerprint:before {
  content: "\e23e";
}
.ph.ph-fire:before {
  content: "\e242";
}
.ph.ph-first-aid-kit:before {
  content: "\e570";
}
.ph.ph-frame-corners:before {
  content: "\e626";
}
.ph.ph-funnel:before {
  content: "\e266";
}
.ph.ph-gauge:before {
  content: "\e628";
}
.ph.ph-gavel:before {
  content: "\ea32";
}
.ph.ph-gift:before {
  content: "\e276";
}
.ph.ph-graduation-cap:before {
  content: "\e62c";
}
.ph.ph-grid-four:before {
  content: "\e296";
}
.ph.ph-hand-coins:before {
  content: "\ea8c";
}
.ph.ph-handshake:before {
  content: "\e582";
}
.ph.ph-hash:before {
  content: "\e2a2";
}
.ph.ph-headphones:before {
  content: "\e2a6";
}
.ph.ph-headset:before {
  content: "\e584";
}
.ph.ph-heart:before {
  content: "\e2a8";
}
.ph.ph-house:before {
  content: "\e2c2";
}
.ph.ph-image:before {
  content: "\e2ca";
}
.ph.ph-images:before {
  content: "\e836";
}
.ph.ph-images-square:before {
  content: "\e834";
}
.ph.ph-key:before {
  content: "\e2d6";
}
.ph.ph-laptop:before {
  content: "\e586";
}
.ph.ph-layout:before {
  content: "\e6d6";
}
.ph.ph-lightbulb:before {
  content: "\e2dc";
}
.ph.ph-list:before {
  content: "\e2f0";
}
.ph.ph-list-magnifying-glass:before {
  content: "\ebe0";
}
.ph.ph-lock:before {
  content: "\e2fa";
}
.ph.ph-lock-simple:before {
  content: "\e308";
}
.ph.ph-magnifying-glass:before {
  content: "\e30c";
}
.ph.ph-magnifying-glass-plus:before {
  content: "\e310";
}
.ph.ph-map-pin:before {
  content: "\e316";
}
.ph.ph-map-trifold:before {
  content: "\e31a";
}
.ph.ph-megaphone:before {
  content: "\e324";
}
.ph.ph-money:before {
  content: "\e588";
}
.ph.ph-motorcycle:before {
  content: "\e80a";
}
.ph.ph-notification:before {
  content: "\e6fa";
}
.ph.ph-package:before {
  content: "\e390";
}
.ph.ph-palette:before {
  content: "\e6c8";
}
.ph.ph-password:before {
  content: "\e752";
}
.ph.ph-pause:before {
  content: "\e39e";
}
.ph.ph-pencil:before {
  content: "\e3ae";
}
.ph.ph-pencil-simple:before {
  content: "\e3b4";
}
.ph.ph-percent:before {
  content: "\e3b6";
}
.ph.ph-plug:before {
  content: "\e946";
}
.ph.ph-plugs-connected:before {
  content: "\eb5a";
}
.ph.ph-plus-circle:before {
  content: "\e3d6";
}
.ph.ph-puzzle-piece:before {
  content: "\e596";
}
.ph.ph-question:before {
  content: "\e3e8";
}
.ph.ph-rectangle:before {
  content: "\e3f0";
}
.ph.ph-rocket:before {
  content: "\e3fc";
}
.ph.ph-rocket-launch:before {
  content: "\e3fe";
}
.ph.ph-scales:before {
  content: "\e750";
}
.ph.ph-seal-check:before {
  content: "\e606";
}
.ph.ph-share-network:before {
  content: "\e408";
}
.ph.ph-shield-check:before {
  content: "\e40c";
}
.ph.ph-shield-warning:before {
  content: "\e412";
}
.ph.ph-shopping-cart:before {
  content: "\e41e";
}
.ph.ph-sliders:before {
  content: "\e432";
}
.ph.ph-sparkle:before {
  content: "\e6a2";
}
.ph.ph-squares-four:before {
  content: "\e464";
}
.ph.ph-star:before {
  content: "\e46a";
}
.ph.ph-steps:before {
  content: "\ecbe";
}
.ph.ph-storefront:before {
  content: "\e470";
}
.ph.ph-swap:before {
  content: "\e83c";
}
.ph.ph-swatches:before {
  content: "\e5b8";
}
.ph.ph-t-shirt:before {
  content: "\e670";
}
.ph.ph-target:before {
  content: "\e47c";
}
.ph.ph-tent:before {
  content: "\e8ba";
}
.ph.ph-thumbs-up:before {
  content: "\e48e";
}
.ph.ph-ticket:before {
  content: "\e490";
}
.ph.ph-timer:before {
  content: "\e492";
}
.ph.ph-toggle-left:before {
  content: "\e674";
}
.ph.ph-trash:before {
  content: "\e4a6";
}
.ph.ph-tray:before {
  content: "\e4aa";
}
.ph.ph-trend-up:before {
  content: "\e4ae";
}
.ph.ph-truck:before {
  content: "\e4b4";
}
.ph.ph-user:before {
  content: "\e4c2";
}
.ph.ph-user-circle:before {
  content: "\e4c4";
}
.ph.ph-users:before {
  content: "\e4d6";
}
.ph.ph-users-three:before {
  content: "\e68e";
}
.ph.ph-wrench:before {
  content: "\e5d4";
}
.ph.ph-x:before {
  content: "\e4f6";
}
.ph.ph-x-circle:before {
  content: "\e4f8";
}

/* ===== Earthy Theme — Professional Tonal System ===== */

.gs-shop-body.gs-theme-earthy {
	/* ===== Color Palette — Professional Tonal System =====
	 * Brand identity preserved: Teal (primary), Peach (accent), Sage (secondary)
	 * Extended with full tonal ramps (50–950) for WCAG-compliant pairing.
	 *
	 * #173B3F — dark teal (primary)   → teal-700
	 * #FAF7F2 — cream (backgrounds)   → neutral-50
	 * #E89A70 — peach/orange (accent) → accent-400
	 * #A8B7A5 — sage green (secondary)→ sage-300
	 * #202A2A — near-black (text)     → neutral-1000
	 */

	/* ===== Teal Family (Primary) — 11 steps ===== */
	--teal-50:  #EDF3F3;
	--teal-100: #D6E3E3;
	--teal-200: #AEC7C8;
	--teal-300: #7FA6A8;
	--teal-400: #52858A;
	--teal-500: #2E6A70;
	--teal-600: #1F565B;
	--teal-700: #173B3F;  /* ★ primary */
	--teal-800: #123033;
	--teal-900: #0D2325;
	--teal-950: #081617;

	/* ===== Accent Family (Peach/Orange) — 10 steps ===== */
	--accent-50:  #FDF3EE;
	--accent-100: #FBE4D8;
	--accent-200: #F6C7AE;
	--accent-300: #EFAF8D;
	--accent-400: #E89A70;  /* ★ accent */
	--accent-500: #DD7F4D;
	--accent-600: #C86436;  /* text accent on light bg (3.94:1) */
	--accent-700: #A44F2A;  /* text accent strong (5.63:1) */
	--accent-800: #7E3D22;
	--accent-900: #5C2D1A;

	/* ===== Sage Family (Secondary) — 10 steps ===== */
	--sage-50:  #F3F6F2;
	--sage-100: #E5EBE3;
	--sage-200: #CBD7C8;
	--sage-300: #A8B7A5;  /* ★ secondary */
	--sage-400: #8B9D88;
	--sage-500: #6F826C;
	--sage-600: #576855;  /* text sage on light bg (5.97:1) */
	--sage-700: #445142;  /* text sage strong (7.86:1 — AAA) */
	--sage-800: #333C32;
	--sage-900: #232922;

	/* ===== Neutral Family — 12 steps ===== */
	--neutral-0:   #FFFFFF;
	--neutral-50:  #FAF7F2;  /* ★ bg */
	--neutral-100: #F5F1EA;  /* ★ bg-alt */
	--neutral-200: #EDE8DF;
	--neutral-300: #DFD8CC;
	--neutral-400: #C6BDAE;
	--neutral-500: #A69C8C;
	--neutral-600: #837A6C;
	--neutral-700: #635C51;  /* text secondary (6.18:1) */
	--neutral-800: #46413A;
	--neutral-900: #2E2C28;
	--neutral-1000: #202A2A; /* ★ text-dark */

	/* ===== Semantic / State Colors (WCAG AA compliant) ===== */
	--gs-success: #2E6F52;       /* 5.98:1 with white */
	--gs-success-bg: #E4F0E9;
	--gs-success-strong: #236B47;
	--gs-danger: #6B5D4A;        /* warm taupe/brown — earthy, no red */
	--gs-danger-bg: #F0F5EC;     /* very light pistachio green */
	--gs-danger-strong: #54483A; /* darker taupe */
	--gs-primary-bg: #EDF3EF;    /* very light pistachio-cream */
	--gs-primary-bg-hover: #E5EDE7; /* slightly darker pistachio-cream */
	--gs-warning: #A9761F;       /* 4.68:1 with white — text */
	--gs-warning-bg: #F9EFDC;
	--gs-warning-strong: #C99038;/* bg warning with dark text (5.28:1) */
	--gs-info: #2C5F73;          /* 7.02:1 with white */
	--gs-info-bg: #E3EEF2;

	/* ===== Core Token Mapping (backward compatible) ===== */
	--gs-primary: #173B3F;         /* = teal-700 */
	--gs-primary-hover: #123033;   /* = teal-800 */
	--gs-primary-light: #2E6A70;   /* = teal-500 */
	--gs-primary-soft: #1F565B;    /* = teal-600 — hover lighter */
	--gs-primary-dark: #0D2325;    /* = teal-900 */

	--gs-accent: #E89A70;          /* = accent-400 — surface only */
	--gs-accent-hover: #DD7F4D;    /* = accent-500 */
	--gs-accent-light: #F6C7AE;    /* = accent-200 — icon on teal */
	--gs-accent-soft: #FBE4D8;     /* = accent-100 — tint bg */
	--gs-accent-strong: #A44F2A;   /* = accent-700 — text on light bg (5.63:1) */
	--gs-accent-text: #C86436;     /* = accent-600 — text on light bg (3.94:1) */

	--gs-secondary: #A8B7A5;       /* = sage-300 — surface only */
	--gs-secondary-hover: #8B9D88; /* = sage-400 */
	--gs-secondary-light: #CBD7C8; /* = sage-200 */
	--gs-secondary-soft: #E5EBE3;  /* = sage-100 — tint bg */
	--gs-secondary-dark: #576855;  /* = sage-600 — text on light bg (5.97:1) */
	--gs-secondary-strong: #445142;/* = sage-700 — text strong (7.86:1) */

	--gs-discount: #E89A70;        /* = accent-400 — keep alias */
	--gs-star: #E89A70;            /* = accent-400 */
	--gs-blue: #173B3F;            /* = teal-700 — keep alias */
	--gs-green: #A8B7A5;           /* = sage-300 — keep alias */

	/* ===== Text Colors ===== */
	--gs-text-dark: #202A2A;       /* = neutral-1000 */
	--gs-text: #2E2C28;            /* = neutral-900 */
	--gs-text-secondary: #635C51;  /* = neutral-700 (6.18:1) */
	--gs-text-light: #837A6C;      /* = neutral-600 */
	--gs-text-muted: #A69C8C;      /* = neutral-500 */
	--gs-text-on-primary: #FFFFFF; /* white on teal-700 (12:1) */
	--gs-text-on-accent: #202A2A;  /* dark on accent-400 (6.5:1) */
	--gs-text-on-secondary: #202A2A;/* dark on sage-300 (7:1) */

	/* ===== Price Color ===== */
	--gs-price: #202A2A;           /* = neutral-1000 */

	/* ===== Backgrounds ===== */
	--gs-bg: #FAF7F2;              /* = neutral-50 */
	--gs-bg-card: #FFFFFF;         /* = neutral-0 */
	--gs-bg-alt: #F5F1EA;          /* = neutral-100 */
	--gs-bg-tint: #EDE8DF;         /* = neutral-200 */
	--gs-border: #EDE8DF;          /* = neutral-200 */
	--gs-border-dark: #DFD8CC;     /* = neutral-300 */
	--gs-border-strong: #C6BDAE;   /* = neutral-400 */

	/* ===== Gradients (kept for compatibility, flat preferred) ===== */
	--gs-gradient-primary: linear-gradient(135deg, #173B3F 0%, #2E6A70 100%);
	--gs-gradient-primary-hover: linear-gradient(135deg, #123033 0%, #173B3F 100%);
	--gs-gradient-accent: linear-gradient(to left, #E89A70, #173B3F);
	--gs-gradient-success: linear-gradient(90deg, #A8B7A5, #173B3F);
	--gs-gradient-card: linear-gradient(135deg, #ffffff 0%, #FAF7F2 100%);
	--gs-gradient-sidebar: linear-gradient(135deg, #173B3F 0%, #2E6A70 100%);

	/* ===== Tailwind HSL Variables =====
	 * #173B3F → hsl(187, 46%, 17%)
	 * #FAF7F2 → hsl(38, 47%, 96%)
	 * #E89A70 → hsl(24, 74%, 67%)
	 * #A8B7A5 → hsl(132, 10%, 68%)
	 * #202A2A → hsl(180, 14%, 15%)
	 */
	--primary: 187 46% 17%;
	--primary-foreground: 38 47% 96%;
	--secondary: 132 10% 68%;
	--secondary-foreground: 187 46% 17%;
	--accent: 24 74% 67%;
	--accent-foreground: 180 14% 15%;
	--destructive: 30 16% 36%;     /* warm taupe/brown — #6B5D4A */
	--destructive-foreground: 38 47% 96%;
	--ring: 187 46% 17%;
}

*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Vazirmatn,Tahoma,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:Vazirmatn,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background:240 5% 96%;--foreground:240 20% 32%;--card:0 0% 100%;--card-foreground:240 20% 32%;--popover:0 0% 100%;--popover-foreground:240 20% 32%;--primary:351 84% 59%;--primary-foreground:0 0% 100%;--secondary:189 75% 46%;--secondary-foreground:0 0% 100%;--muted:240 5% 90%;--muted-foreground:240 4% 53%;--accent:32 100% 47%;--accent-foreground:0 0% 100%;--destructive:0 72% 51%;--destructive-foreground:0 0% 100%;--border:240 5% 90%;--input:240 5% 88%;--ring:351 84% 59%;--radius:0.75rem}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));font-family:Vazirmatn,Tahoma,sans-serif;color:hsl(var(--foreground));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;direction:rtl}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.gs-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;border-radius:calc(var(--radius) - 2px);font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.gs-btn:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--ring))}.gs-btn:disabled{pointer-events:none;opacity:.5}.gs-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;border-radius:calc(var(--radius) - 2px);font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.gs-btn-primary:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--ring))}.gs-btn-primary:disabled{pointer-events:none;opacity:.5}.gs-btn-primary{height:2.5rem;background-color:hsl(var(--primary));padding:.5rem 1rem;color:hsl(var(--primary-foreground))}.gs-btn-primary:hover{background-color:hsl(var(--primary)/.9)}.gs-btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;border-radius:calc(var(--radius) - 2px);font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.gs-btn-secondary:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--ring))}.gs-btn-secondary:disabled{pointer-events:none;opacity:.5}.gs-btn-secondary{height:2.5rem;background-color:hsl(var(--secondary));padding:.5rem 1rem;color:hsl(var(--secondary-foreground))}.gs-btn-secondary:hover{background-color:hsl(var(--secondary)/.8)}.gs-btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;border-radius:calc(var(--radius) - 2px);font-size:.875rem;line-height:1.25rem;font-weight:500;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.gs-btn-outline:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--ring))}.gs-btn-outline:disabled{pointer-events:none;opacity:.5}.gs-btn-outline{height:2.5rem;border-width:1px;border-color:hsl(var(--input));background-color:hsl(var(--card));padding:.5rem 1rem}.gs-btn-outline:hover{background-color:hsl(var(--muted))}.gs-btn-sm{height:2rem;border-radius:calc(var(--radius) - 2px);padding-left:.75rem;padding-right:.75rem;font-size:.75rem;line-height:1rem}.gs-btn-lg{height:3rem;border-radius:var(--radius);padding-left:2rem;padding-right:2rem;font-size:1rem;line-height:1.5rem}.gs-card{border-radius:var(--radius);border-width:1px;border-color:hsl(var(--border));background-color:hsl(var(--card));color:hsl(var(--card-foreground));--tw-shadow:0 2px 8px rgba(0,0,0,.06);--tw-shadow-colored:0 2px 8px var(--tw-shadow-color);transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.gs-card,.gs-card-hover:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.gs-card-hover:hover{--tw-shadow:0 4px 16px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 16px var(--tw-shadow-color)}.gs-badge{display:inline-flex;align-items:center;border-radius:9999px;border-width:1px;padding:.125rem .625rem;font-size:.75rem;line-height:1rem;font-weight:600;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.gs-badge-primary{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.gs-badge-primary,.gs-badge-secondary{display:inline-flex;align-items:center;border-radius:9999px;border-width:1px;padding:.125rem .625rem;font-size:.75rem;line-height:1rem;font-weight:600;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-color:transparent}.gs-badge-secondary{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}.gs-badge-destructive{background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.gs-badge-destructive,.gs-badge-success{display:inline-flex;align-items:center;border-radius:9999px;border-width:1px;padding:.125rem .625rem;font-size:.75rem;line-height:1rem;font-weight:600;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-color:transparent}.gs-badge-success{--tw-bg-opacity:1;background-color:rgb(46 204 113/var(--tw-bg-opacity,1));--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.gs-input{display:flex;height:2.5rem;width:100%;border-radius:calc(var(--radius) - 2px);border-width:1px;border-color:hsl(var(--input));background-color:hsl(var(--card));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-ring-offset-color:hsl(var(--background))}.gs-input::-moz-placeholder{color:hsl(var(--muted-foreground))}.gs-input::placeholder{color:hsl(var(--muted-foreground))}.gs-input:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--ring));--tw-ring-offset-width:2px}.gs-input:disabled{cursor:not-allowed;opacity:.5}.gs-separator{height:1px;width:100%;flex-shrink:0;background-color:hsl(var(--border))}.gs-tabs-list{height:2.5rem;border-radius:calc(var(--radius) - 2px);background-color:hsl(var(--muted));padding:.25rem;color:hsl(var(--muted-foreground))}.gs-tabs-list,.gs-tabs-trigger{display:inline-flex;align-items:center;justify-content:center}.gs-tabs-trigger{white-space:nowrap;border-radius:calc(var(--radius) - 4px);padding:.375rem .75rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-ring-offset-color:hsl(var(--background));transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.gs-tabs-trigger:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--ring))}.gs-tabs-trigger:disabled{pointer-events:none;opacity:.5}.gs-tabs-trigger[data-state=active]{background-color:hsl(var(--card));color:hsl(var(--foreground));--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.gs-tabs-content{margin-top:.5rem;--tw-ring-offset-color:hsl(var(--background))}.gs-tabs-content:focus-visible{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);--tw-ring-color:hsl(var(--ring))}.gs-product-card{border-radius:var(--radius);border-width:1px;border-color:hsl(var(--border));background-color:hsl(var(--card));color:hsl(var(--card-foreground));--tw-shadow:0 2px 8px rgba(0,0,0,.06);--tw-shadow-colored:0 2px 8px var(--tw-shadow-color);transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.gs-product-card,.gs-product-card:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.gs-product-card:hover{--tw-shadow:0 4px 16px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 16px var(--tw-shadow-color)}.gs-product-card{cursor:pointer;overflow:hidden}.gs-product-card__image{position:relative;display:flex;aspect-ratio:1/1;align-items:center;justify-content:center;overflow:hidden;background-color:hsl(var(--muted)/.3)}.gs-product-card__img{height:100%;width:100%;-o-object-fit:contain;object-fit:contain;padding:1rem;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.group:hover .gs-product-card__img{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.gs-product-card__body>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.gs-product-card__body{padding:.75rem}.gs-product-card__title{height:2.5rem;font-size:.875rem;line-height:1.25rem;color:hsl(var(--foreground));display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gs-product-card__price{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.gs-product-card__discount{display:inline-flex;align-items:center;border-radius:9999px;border-width:1px;font-size:.75rem;line-height:1rem;font-weight:600;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;border-color:transparent;background-color:hsl(var(--primary));color:hsl(var(--primary-foreground));padding:.125rem .375rem;font-size:10px}.gs-product-card__rating{display:flex;align-items:center;gap:.25rem;font-size:.75rem;line-height:1rem;color:hsl(var(--muted-foreground))}.gs-category-circle{display:flex;cursor:pointer;flex-direction:column;align-items:center;gap:.5rem;border-radius:var(--radius);padding:.75rem;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.gs-category-circle:hover{background-color:hsl(var(--muted)/.5)}.gs-category-circle__img{height:5rem;width:5rem;border-radius:9999px;background-color:hsl(var(--muted)/.3);-o-object-fit:contain;object-fit:contain;padding:.5rem}.gs-category-circle__label{text-align:center;font-size:.75rem;line-height:1rem;color:hsl(var(--foreground));display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gs-amazing-card{position:relative;overflow:hidden;border-radius:var(--radius);border-width:1px;border-color:rgba(239,64,86,.2);background-image:linear-gradient(to bottom right,var(--tw-gradient-stops));--tw-gradient-from:#fef2f2 var(--tw-gradient-from-position);--tw-gradient-to:hsla(0,86%,97%,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to);--tw-gradient-to:#fff7ed var(--tw-gradient-to-position)}.gs-search-box{display:flex;width:100%;max-width:42rem;align-items:center;overflow:hidden;border-radius:var(--radius);background-color:hsl(var(--muted)/.5)}.gs-search-input{flex:1 1 0%;border-width:0;background-color:transparent;padding:.625rem 1rem;font-size:.875rem;line-height:1.25rem;outline:2px solid transparent;outline-offset:2px}.gs-search-input::-moz-placeholder{color:hsl(var(--muted-foreground))}.gs-search-input::placeholder{color:hsl(var(--muted-foreground))}.gs-search-input:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.gs-search-btn{padding:.625rem 1rem;color:hsl(var(--muted-foreground));transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.gs-search-btn:hover{color:hsl(var(--primary))}.gs-toast{position:fixed;top:1.5rem;right:1.5rem;z-index:9999;max-width:360px}@keyframes slideUp{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}.gs-toast{animation:gs-toast-slide-in .3s ease-out;border-radius:var(--radius);background-color:hsl(var(--foreground));padding:.75rem 1rem;color:hsl(var(--background));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.gs-container{margin-left:auto;margin-right:auto;max-width:1200px;padding-left:1rem;padding-right:1rem}@media (min-width:1024px){.gs-container{padding-left:1.5rem;padding-right:1.5rem}}.gs-section-title{font-size:1.125rem;line-height:1.75rem}.gs-price,.gs-section-title{font-weight:700;color:hsl(var(--foreground))}.gs-price-old{font-size:.875rem;line-height:1.25rem;color:hsl(var(--muted-foreground));text-decoration-line:line-through}.pointer-events-none{pointer-events:none}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-left-1{left:-.25rem}.-top-1{top:-.25rem}.bottom-4{bottom:1rem}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-\[30\%\]{left:30%}.right-0{right:0}.right-2{right:.5rem}.right-\[20\%\]{right:20%}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:.5rem}.top-4{top:1rem}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.-ml-1{margin-left:-.25rem}.-ml-2{margin-left:-.5rem}.-mr-2{margin-right:-.5rem}.-mt-2{margin-top:-.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-3{margin-top:.75rem}.mt-6{margin-top:1.5rem}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-2{-webkit-line-clamp:2}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-24{height:6rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[160px\]{height:160px}.h-\[18px\]{height:18px}.h-\[280px\]{height:280px}.h-full{height:100%}.max-h-72{max-height:18rem}.max-h-96{max-height:24rem}.min-h-\[3rem\]{min-height:3rem}.min-h-screen{min-height:100vh}.w-1\/3{width:33.333333%}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-4{width:1rem}.w-40{width:10rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[600px\]{width:600px}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[18px\]{min-width:18px}.min-w-\[36px\]{min-width:36px}.min-w-\[640px\]{min-width:640px}.max-w-2xl{max-width:42rem}.max-w-md{max-width:28rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y:-50%}@keyframes slideDown{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.animate-slide-down{animation:slideDown .3s ease-out}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem*var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-border>:not([hidden])~:not([hidden]){border-color:hsl(var(--border))}.self-end{align-self:flex-end}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-x{border-left-width:1px;border-right-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-t{border-top-width:1px}.border-border{border-color:hsl(var(--border))}.border-gs-cyan\/30{border-color:rgba(25,191,211,.3)}.border-gs-red{--tw-border-opacity:1;border-color:rgb(239 64 86/var(--tw-border-opacity,1))}.border-transparent{border-color:transparent}.bg-background{background-color:hsl(var(--background))}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-card{background-color:hsl(var(--card))}.bg-card\/90{background-color:hsl(var(--card)/.9)}.bg-cyan-50{--tw-bg-opacity:1;background-color:rgb(236 254 255/var(--tw-bg-opacity,1))}.bg-gs-cyan\/10{background-color:rgba(25,191,211,.1)}.bg-gs-cyan\/5{background-color:rgba(25,191,211,.05)}.bg-gs-green{--tw-bg-opacity:1;background-color:rgb(46 204 113/var(--tw-bg-opacity,1))}.bg-gs-green\/10{background-color:rgba(46,204,113,.1)}.bg-gs-navy{--tw-bg-opacity:1;background-color:rgb(63 64 100/var(--tw-bg-opacity,1))}.bg-gs-navy\/10{background-color:rgba(63,64,100,.1)}.bg-gs-orange{--tw-bg-opacity:1;background-color:rgb(240 128 0/var(--tw-bg-opacity,1))}.bg-gs-orange\/10{background-color:rgba(240,128,0,.1)}.bg-gs-red{--tw-bg-opacity:1;background-color:rgb(239 64 86/var(--tw-bg-opacity,1))}.bg-gs-red\/10{background-color:rgba(239,64,86,.1)}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/30{background-color:hsl(var(--muted)/.3)}.bg-muted\/40{background-color:hsl(var(--muted)/.4)}.bg-muted\/50{background-color:hsl(var(--muted)/.5)}.bg-muted\/80{background-color:hsl(var(--muted)/.8)}.bg-orange-50{--tw-bg-opacity:1;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.bg-pink-50{--tw-bg-opacity:1;background-color:rgb(253 242 248/var(--tw-bg-opacity,1))}.bg-rose-50{--tw-bg-opacity:1;background-color:rgb(255 241 242/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/50{background-color:hsla(0,0%,100%,.5)}.bg-yellow-50{--tw-bg-opacity:1;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-l{background-image:linear-gradient(to left,var(--tw-gradient-stops))}.from-gs-cyan{--tw-gradient-from:#19bfd3 var(--tw-gradient-from-position);--tw-gradient-to:rgba(25,191,211,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-gs-orange{--tw-gradient-from:#f08000 var(--tw-gradient-from-position);--tw-gradient-to:rgba(240,128,0,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-gs-red{--tw-gradient-from:#ef4056 var(--tw-gradient-from-position);--tw-gradient-to:rgba(239,64,86,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-gs-navy{--tw-gradient-to:#3f4064 var(--tw-gradient-to-position)}.to-gs-orange{--tw-gradient-to:#f08000 var(--tw-gradient-to-position)}.to-gs-red{--tw-gradient-to:#ef4056 var(--tw-gradient-to-position)}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-1{padding:.25rem}.p-10{padding:2.5rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-4{padding-bottom:1rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.align-bottom{vertical-align:bottom}.font-mono{font-family:Vazirmatn,monospace}.font-sans{font-family:Vazirmatn,Tahoma,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-7xl{font-size:4.5rem;line-height:1}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-medium{font-weight:500}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-\[44px\]{line-height:44px}.text-gs-cyan{--tw-text-opacity:1;color:rgb(25 191 211/var(--tw-text-opacity,1))}.text-gs-green{--tw-text-opacity:1;color:rgb(46 204 113/var(--tw-text-opacity,1))}.text-gs-navy{--tw-text-opacity:1;color:rgb(63 64 100/var(--tw-text-opacity,1))}.text-gs-orange{--tw-text-opacity:1;color:rgb(240 128 0/var(--tw-text-opacity,1))}.text-gs-red{--tw-text-opacity:1;color:rgb(239 64 86/var(--tw-text-opacity,1))}.text-foreground{color:hsl(var(--foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-muted-foreground\/50{color:hsl(var(--muted-foreground)/.5)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/30{color:hsla(0,0%,100%,.3)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-60{opacity:.6}.opacity-90{opacity:.9}.shadow-gs-card-hover{--tw-shadow:0 4px 16px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 16px var(--tw-shadow-color)}.shadow-gs-card-hover,.shadow-gs-header{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-gs-header{--tw-shadow:0 2px 8px rgba(0,0,0,.06);--tw-shadow-colored:0 2px 8px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.no-tap-highlight{-webkit-tap-highlight-color:transparent}.last\:border-0:last-child{border-width:0}.last\:border-b-0:last-child{border-bottom-width:0}.last\:border-l-0:last-child{border-left-width:0}.hover\:border-border:hover{border-color:hsl(var(--border))}.hover\:border-gs-cyan:hover{--tw-border-opacity:1;border-color:rgb(25 191 211/var(--tw-border-opacity,1))}.hover\:bg-gs-red:hover{--tw-bg-opacity:1;background-color:rgb(239 64 86/var(--tw-bg-opacity,1))}.hover\:bg-gs-red\/10:hover{background-color:rgba(239,64,86,.1)}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-muted\/30:hover{background-color:hsl(var(--muted)/.3)}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted)/.5)}.hover\:bg-primary:hover{background-color:hsl(var(--primary))}.hover\:bg-white\/90:hover{background-color:hsla(0,0%,100%,.9)}.hover\:text-gs-cyan:hover{--tw-text-opacity:1;color:rgb(25 191 211/var(--tw-text-opacity,1))}.hover\:text-gs-red:hover{--tw-text-opacity:1;color:rgb(239 64 86/var(--tw-text-opacity,1))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-primary:hover{color:hsl(var(--primary))}.hover\:text-primary-foreground:hover{color:hsl(var(--primary-foreground))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:text-white\/80:hover{color:hsla(0,0%,100%,.8)}.hover\:underline:hover{text-decoration-line:underline}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-gs-red\/30:focus{--tw-ring-color:rgba(239,64,86,.3)}@media (min-width:640px){.sm\:inline{display:inline}.sm\:flex-row{flex-direction:row}.sm\:gap-4{gap:1rem}}@media (min-width:768px){.md\:flex{display:flex}.md\:h-\[400px\]{height:400px}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.md\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.md\:px-16{padding-left:4rem;padding-right:4rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:col-span-1{grid-column:span 1/span 1}.lg\:col-span-2{grid-column:span 2/span 2}.lg\:col-span-3{grid-column:span 3/span 3}.lg\:block{display:block}.lg\:grid{display:grid}.lg\:w-1\/2{width:50%}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}}@media (min-width:1280px){.xl\:w-2\/5{width:40%}.xl\:w-3\/5{width:60%}}
@keyframes gs-toast-slide-in{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:640px){.gs-toast{top:1rem;right:1rem;left:1rem;max-width:none}}
.gs-toast{font-size:15px;font-weight:600;padding:14px 28px}


.woocommerce-product-gallery{ opacity: 1 !important; }

@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:fallback;src:url('https://gs.sitesazan.net/wp-content/themes/twentytwentyfive/assets/fonts/manrope/Manrope-VariableFont_wght.woff2') format('woff2');}
@font-face{font-family:"Fira Code";font-style:normal;font-weight:300 700;font-display:fallback;src:url('https://gs.sitesazan.net/wp-content/themes/twentytwentyfive/assets/fonts/fira-code/FiraCode-VariableFont_wght.woff2') format('woff2');}

.gs-lazy-section[data-gs-section="newest"] .gs-card{padding:16px !important;margin-top:0px !important;margin-bottom:24px !important;}.gs-lazy-section[data-gs-section="newest"] .gs-product-carousel__track{gap:8px !important;}.gs-lazy-section[data-gs-section="newest"] .gs-product-card{flex:0 0 calc(100% / 6) !important;max-width:calc(100% / 6) !important;}.gs-lazy-section[data-gs-section="newest"] .gs-product-card{border-width:1px;border-radius:8px;box-shadow:0 1px 2px rgba(0,0,0,0.05);}.gs-lazy-section[data-gs-section="newest"] .gs-product-card__body{padding:12px;}.gs-lazy-section[data-gs-section="newest"] .gs-product-card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.12);}.gs-lazy-section[data-gs-section="newest"] .gs-product-card__title{font-size:13px;}.gs-lazy-section[data-gs-section="newest"] .gs-product-card__price-new{font-size:19px;}.gs-lazy-section[data-gs-section="newest"] .gs-product-card__price-old{font-size:12px;}.gs-lazy-section[data-gs-section="newest"] .gs-product-card__discount{font-size:12px;}.gs-lazy-section[data-gs-section="newest"] .gs-section-title, .gs-lazy-section[data-gs-section="newest"] h3{font-size:18px;}@media(min-width:768px) and (max-width:1023px){.gs-lazy-section[data-gs-section="newest"] .gs-product-card{flex:0 0 calc(100% / 4) !important;max-width:calc(100% / 4) !important;}.gs-lazy-section[data-gs-section="newest"] .gs-section-title, .gs-lazy-section[data-gs-section="newest"] h3{font-size:16px;}}@media(max-width:767px){.gs-lazy-section[data-gs-section="newest"] .gs-card{padding:12px !important;margin-top:0px !important;margin-bottom:16px !important;}.gs-lazy-section[data-gs-section="newest"] .gs-product-card{flex:0 0 calc(100% / 2) !important;max-width:173px !important;}.gs-lazy-section[data-gs-section="newest"] .gs-product-card__title{font-size:12px;}.gs-lazy-section[data-gs-section="newest"] .gs-product-card__price-new{font-size:16px;}.gs-lazy-section[data-gs-section="newest"] .gs-product-card__price-old{font-size:11px;}.gs-lazy-section[data-gs-section="newest"] .gs-product-card__discount{font-size:11px;}.gs-lazy-section[data-gs-section="newest"] .gs-section-title, .gs-lazy-section[data-gs-section="newest"] h3{font-size:14px;}}.gs-lazy-section[data-gs-section="bestsellers"] .gs-card{padding:16px !important;margin-top:0px !important;margin-bottom:24px !important;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-carousel__track{gap:8px !important;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card{flex:0 0 calc(100% / 6) !important;max-width:calc(100% / 6) !important;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card{border-width:1px;border-radius:8px;box-shadow:0 1px 2px rgba(0,0,0,0.05);}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card__body{padding:12px;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.12);}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card__title{font-size:13px;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card__price-new{font-size:19px;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card__price-old{font-size:12px;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card__discount{font-size:12px;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-section-title, .gs-lazy-section[data-gs-section="bestsellers"] h3{font-size:18px;}@media(min-width:768px) and (max-width:1023px){.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card{flex:0 0 calc(100% / 4) !important;max-width:calc(100% / 4) !important;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-section-title, .gs-lazy-section[data-gs-section="bestsellers"] h3{font-size:16px;}}@media(max-width:767px){.gs-lazy-section[data-gs-section="bestsellers"] .gs-card{padding:12px !important;margin-top:0px !important;margin-bottom:16px !important;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card{flex:0 0 calc(100% / 2) !important;max-width:173px !important;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card__title{font-size:12px;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card__price-new{font-size:16px;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card__price-old{font-size:11px;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-product-card__discount{font-size:11px;}.gs-lazy-section[data-gs-section="bestsellers"] .gs-section-title, .gs-lazy-section[data-gs-section="bestsellers"] h3{font-size:14px;}}.gs-lazy-section[data-gs-cat-id] .gs-card{padding:16px !important;margin-top:0px !important;margin-bottom:24px !important;}.gs-lazy-section[data-gs-cat-id] .gs-product-carousel__track{gap:8px !important;}.gs-lazy-section[data-gs-cat-id] .gs-product-card{flex:0 0 calc(100% / 5) !important;max-width:calc(100% / 5) !important;}.gs-lazy-section[data-gs-cat-id] .gs-product-card{border-width:1px;border-radius:8px;box-shadow:0 1px 2px rgba(0,0,0,0.05);}.gs-lazy-section[data-gs-cat-id] .gs-product-card__body{padding:12px;}.gs-lazy-section[data-gs-cat-id] .gs-product-card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.12);}.gs-lazy-section[data-gs-cat-id] .gs-product-card__title{font-size:13px;}.gs-lazy-section[data-gs-cat-id] .gs-product-card__price-new{font-size:19px;}.gs-lazy-section[data-gs-cat-id] .gs-product-card__price-old{font-size:12px;}.gs-lazy-section[data-gs-cat-id] .gs-product-card__discount{font-size:12px;}.gs-lazy-section[data-gs-cat-id] .gs-section-title, .gs-lazy-section[data-gs-cat-id] h3{font-size:18px;}@media(min-width:768px) and (max-width:1023px){.gs-lazy-section[data-gs-cat-id] .gs-product-card{flex:0 0 calc(100% / 4) !important;max-width:calc(100% / 4) !important;}.gs-lazy-section[data-gs-cat-id] .gs-section-title, .gs-lazy-section[data-gs-cat-id] h3{font-size:16px;}}@media(max-width:767px){.gs-lazy-section[data-gs-cat-id] .gs-card{padding:12px !important;margin-top:0px !important;margin-bottom:16px !important;}.gs-lazy-section[data-gs-cat-id] .gs-product-card{flex:0 0 calc(100% / 2) !important;max-width:173px !important;}.gs-lazy-section[data-gs-cat-id] .gs-product-card__title{font-size:12px;}.gs-lazy-section[data-gs-cat-id] .gs-product-card__price-new{font-size:16px;}.gs-lazy-section[data-gs-cat-id] .gs-product-card__price-old{font-size:11px;}.gs-lazy-section[data-gs-cat-id] .gs-product-card__discount{font-size:11px;}.gs-lazy-section[data-gs-cat-id] .gs-section-title, .gs-lazy-section[data-gs-cat-id] h3{font-size:14px;}}.gs-flash-sale{padding:0px !important;margin-top:0px !important;margin-bottom:16px !important;}.gs-flash-sale-section .gs-flash-sale__track{gap:4px !important;}.gs-flash-sale-section .gs-flash-sale__card{border-width:1px;border-radius:0px;box-shadow:0 1px 2px rgba(0,0,0,0.05);}.gs-flash-sale-section .gs-flash-sale__card-info{padding:6px;}.gs-flash-sale-section .gs-flash-sale__card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.12);}.gs-flash-sale-section .gs-flash-sale__card-title{font-size:11px;}.gs-flash-sale-section .gs-flash-sale__price-new{font-size:14px;}.gs-flash-sale-section .gs-flash-sale__price-old{font-size:10px;}.gs-flash-sale-section .gs-flash-sale__discount-badge{font-size:10px;}.gs-flash-sale-section .gs-flash-sale__title{font-size:15px;}@media(min-width:768px) and (max-width:1023px){.gs-flash-sale-section .gs-flash-sale__title{font-size:14px;}}@media(max-width:767px){.gs-flash-sale{padding:0px !important;margin-top:0px !important;margin-bottom:12px !important;}.gs-flash-sale-section .gs-flash-sale__card{max-width:124px !important;min-width:124px !important;flex-basis:124px !important;}.gs-flash-sale-section .gs-flash-sale__card-title{font-size:10px;}.gs-flash-sale-section .gs-flash-sale__price-new{font-size:13px;}.gs-flash-sale-section .gs-flash-sale__price-old{font-size:10px;}.gs-flash-sale-section .gs-flash-sale__discount-badge{font-size:10px;}.gs-flash-sale-section .gs-flash-sale__title{font-size:11px;}}.gs-special-offers{padding:16px !important;margin-top:0px !important;margin-bottom:24px !important;}.gs-special-offers-section .gs-special-offers__title{font-size:18px !important;}@media(min-width:768px) and (max-width:1023px){.gs-special-offers-section .gs-special-offers__title{font-size:16px !important;}}@media(max-width:767px){.gs-special-offers{padding:12px !important;margin-top:0px !important;margin-bottom:16px !important;}.gs-special-offers-section .gs-special-offers__title{font-size:14px !important;}}.gs-brands-section-wrapper .gs-card{padding:16px !important;margin-top:0px !important;margin-bottom:24px !important;}.gs-brands-section-wrapper .gs-section-title{font-size:18px !important;}@media(min-width:768px) and (max-width:1023px){.gs-brands-section-wrapper .gs-section-title{font-size:16px !important;}}@media(max-width:767px){.gs-brands-section-wrapper .gs-card{padding:12px !important;margin-top:0px !important;margin-bottom:16px !important;}.gs-brands-section-wrapper .gs-section-title{font-size:14px !important;}}.gs-banners-2-section{padding:0px !important;margin-top:0px !important;margin-bottom:16px !important;}@media(min-width:768px) and (max-width:1023px){}@media(max-width:767px){.gs-banners-2-section{padding:0px !important;margin-top:0px !important;margin-bottom:12px !important;}}.gs-banners-3-section{padding:0px !important;margin-top:0px !important;margin-bottom:16px !important;}@media(min-width:768px) and (max-width:1023px){}@media(max-width:767px){.gs-banners-3-section{padding:0px !important;margin-top:0px !important;margin-bottom:12px !important;}}.gs-search-grid{padding:0px !important;margin-top:0px !important;margin-bottom:0px !important;}.gs-search-grid{grid-template-columns:repeat(4,1fr) !important;gap:12px !important;}.gs-search-grid .gs-product-card{border-width:1px;border-radius:8px;box-shadow:0 1px 2px rgba(0,0,0,0.05);}.gs-search-grid .gs-product-card__body{padding:12px;}.gs-search-grid .gs-product-card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.12);}.gs-search-grid .gs-product-card__title{font-size:13px;}.gs-search-grid .gs-product-card__price-new{font-size:19px;}.gs-search-grid .gs-product-card__price-old{font-size:12px;}.gs-search-grid .gs-product-card__discount{font-size:12px;}.gs-search-grid .gs-section-title, .gs-search-grid h3{font-size:18px;}@media(min-width:768px) and (max-width:1023px){.gs-search-grid{grid-template-columns:repeat(3,1fr) !important;}.gs-search-grid .gs-section-title, .gs-search-grid h3{font-size:16px;}}@media(max-width:767px){.gs-search-grid{padding:0px !important;margin-top:0px !important;margin-bottom:0px !important;}.gs-search-grid{grid-template-columns:repeat(2,1fr) !important;}.gs-search-grid .gs-product-card__title{font-size:12px;}.gs-search-grid .gs-product-card__price-new{font-size:16px;}.gs-search-grid .gs-product-card__price-old{font-size:11px;}.gs-search-grid .gs-product-card__discount{font-size:11px;}.gs-search-grid .gs-section-title, .gs-search-grid h3{font-size:14px;}}.gs-wishlist-grid{padding:0px !important;margin-top:0px !important;margin-bottom:0px !important;}.gs-wishlist-grid{grid-template-columns:repeat(4,1fr) !important;gap:12px !important;}.gs-wishlist-grid .gs-product-card{border-width:1px;border-radius:8px;box-shadow:0 1px 2px rgba(0,0,0,0.05);}.gs-wishlist-grid .gs-product-card__body{padding:12px;}.gs-wishlist-grid .gs-product-card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.12);}.gs-wishlist-grid .gs-product-card__title{font-size:13px;}.gs-wishlist-grid .gs-product-card__price-new{font-size:19px;}.gs-wishlist-grid .gs-product-card__price-old{font-size:12px;}.gs-wishlist-grid .gs-product-card__discount{font-size:12px;}.gs-wishlist-grid .gs-section-title, .gs-wishlist-grid h3{font-size:18px;}@media(min-width:768px) and (max-width:1023px){.gs-wishlist-grid{grid-template-columns:repeat(3,1fr) !important;}.gs-wishlist-grid .gs-section-title, .gs-wishlist-grid h3{font-size:16px;}}@media(max-width:767px){.gs-wishlist-grid{padding:0px !important;margin-top:0px !important;margin-bottom:0px !important;}.gs-wishlist-grid{grid-template-columns:repeat(2,1fr) !important;}.gs-wishlist-grid .gs-product-card__title{font-size:12px;}.gs-wishlist-grid .gs-product-card__price-new{font-size:16px;}.gs-wishlist-grid .gs-product-card__price-old{font-size:11px;}.gs-wishlist-grid .gs-product-card__discount{font-size:11px;}.gs-wishlist-grid .gs-section-title, .gs-wishlist-grid h3{font-size:14px;}}#gs-catalog-results .gs-catalog-grid{padding:0px !important;margin-top:0px !important;margin-bottom:0px !important;}#gs-catalog-results .gs-catalog-grid{grid-template-columns:repeat(4,1fr) !important;gap:12px !important;}#gs-catalog-results .gs-catalog-grid .gs-product-card{border-width:1px;border-radius:8px;box-shadow:0 1px 2px rgba(0,0,0,0.05);}#gs-catalog-results .gs-catalog-grid .gs-product-card__body{padding:12px;}#gs-catalog-results .gs-catalog-grid .gs-product-card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.12);}#gs-catalog-results .gs-catalog-grid .gs-product-card__title{font-size:13px;}#gs-catalog-results .gs-catalog-grid .gs-product-card__price-new{font-size:19px;}#gs-catalog-results .gs-catalog-grid .gs-product-card__price-old{font-size:12px;}#gs-catalog-results .gs-catalog-grid .gs-product-card__discount{font-size:12px;}#gs-catalog-results .gs-catalog-grid .gs-section-title, #gs-catalog-results .gs-catalog-grid h3{font-size:18px;}@media(min-width:768px) and (max-width:1023px){#gs-catalog-results .gs-catalog-grid{grid-template-columns:repeat(3,1fr) !important;}#gs-catalog-results .gs-catalog-grid .gs-section-title, #gs-catalog-results .gs-catalog-grid h3{font-size:16px;}}@media(max-width:767px){#gs-catalog-results .gs-catalog-grid{padding:0px !important;margin-top:0px !important;margin-bottom:0px !important;}#gs-catalog-results .gs-catalog-grid{grid-template-columns:repeat(2,1fr) !important;}#gs-catalog-results .gs-catalog-grid .gs-product-card__title{font-size:12px;}#gs-catalog-results .gs-catalog-grid .gs-product-card__price-new{font-size:16px;}#gs-catalog-results .gs-catalog-grid .gs-product-card__price-old{font-size:11px;}#gs-catalog-results .gs-catalog-grid .gs-product-card__discount{font-size:11px;}#gs-catalog-results .gs-catalog-grid .gs-section-title, #gs-catalog-results .gs-catalog-grid h3{font-size:14px;}}

@keyframes gs-pl-pulse {
	0%,100% { transform: scale(1); opacity: 1; }
	50% { transform: scale(0.92); opacity: 0.7; }
}
@keyframes gs-pl-bar {
	0% { transform: translateX(-100%); }
	100% { transform: translateX(350%); }
}
html.gs-preloading body { overflow: hidden !important; }

@keyframes wc-skeleton-shimmer{to{transform:translateX(-100%)}}body.wc-block-product-gallery-modal-open,body.wc-modal--open{overflow:hidden}.wc-block-grid__products .wc-block-grid__product-image{display:block;position:relative;text-decoration:none}.wc-block-grid__products .wc-block-grid__product-image a{border:0;box-shadow:none;outline:0;text-decoration:none}.wc-block-grid__products .wc-block-grid__product-image img{height:auto;max-width:100%;width:100%}.wc-block-grid__products .wc-block-grid__product-image img[hidden]{display:none}.wc-block-grid__products .wc-block-grid__product-image img[alt=""]{border:1px solid #f2f2f2}.edit-post-visual-editor .editor-block-list__block .wc-block-grid__product-title,.editor-styles-wrapper .wc-block-grid__product-title,.wc-block-grid__product-title{color:inherit;display:block;font-family:inherit;font-size:inherit;font-weight:700;line-height:1.2;padding:0}.wc-block-grid__product-price{display:block}.wc-block-grid__product-price .wc-block-grid__product-price__regular{margin-left:.5em}.wc-block-grid__product-add-to-cart.wp-block-button{white-space:normal;word-break:break-word}.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link{display:inline-flex;font-size:1em;justify-content:center;text-align:center;white-space:normal;word-break:break-word}.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link.loading{opacity:.25}.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link.added:after{content:"";display:inline-block;font-family:WooCommerce;height:auto;margin-right:.5em;width:auto}.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link.loading:after{animation:spin 2s linear infinite;content:"";display:inline-block;font-family:WooCommerce;height:auto;margin-right:.5em;width:auto}.has-5-columns:not(.alignfull) .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after,.has-6-columns .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after,.has-7-columns .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after,.has-8-columns .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after,.has-9-columns .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link:after{content:"";margin:0}.wc-block-grid__product-rating,.wp-block-woocommerce-product-review-rating{display:block}.wc-block-grid__product-rating .star-rating,.wc-block-grid__product-rating .wc-block-grid__product-rating__stars,.wc-block-grid__product-rating .wc-block-product-review-rating__stars,.wp-block-woocommerce-product-review-rating .star-rating,.wp-block-woocommerce-product-review-rating .wc-block-grid__product-rating__stars,.wp-block-woocommerce-product-review-rating .wc-block-product-review-rating__stars{font-family:WooCommerce;font-size:1em;font-weight:400;height:1.618em;line-height:1.618;margin:0 auto;overflow:hidden;position:relative;text-align:right;width:5.3em}.wc-block-grid__product-rating .star-rating:before,.wc-block-grid__product-rating .wc-block-grid__product-rating__stars:before,.wc-block-grid__product-rating .wc-block-product-review-rating__stars:before,.wp-block-woocommerce-product-review-rating .star-rating:before,.wp-block-woocommerce-product-review-rating .wc-block-grid__product-rating__stars:before,.wp-block-woocommerce-product-review-rating .wc-block-product-review-rating__stars:before{content:"SSSSS";right:0;opacity:.5;position:absolute;left:0;top:0;white-space:nowrap}.wc-block-grid__product-rating .star-rating span,.wc-block-grid__product-rating .wc-block-grid__product-rating__stars span,.wc-block-grid__product-rating .wc-block-product-review-rating__stars span,.wp-block-woocommerce-product-review-rating .star-rating span,.wp-block-woocommerce-product-review-rating .wc-block-grid__product-rating__stars span,.wp-block-woocommerce-product-review-rating .wc-block-product-review-rating__stars span{right:0;overflow:hidden;padding-top:1.5em;position:absolute;left:0;top:0}.wc-block-grid__product-rating .star-rating span:before,.wc-block-grid__product-rating .wc-block-grid__product-rating__stars span:before,.wc-block-grid__product-rating .wc-block-product-review-rating__stars span:before,.wp-block-woocommerce-product-review-rating .star-rating span:before,.wp-block-woocommerce-product-review-rating .wc-block-grid__product-rating__stars span:before,.wp-block-woocommerce-product-review-rating .wc-block-product-review-rating__stars span:before{color:inherit;content:"SSSSS";right:0;position:absolute;left:0;top:0;white-space:nowrap}.wc-block-grid .wc-block-grid__product-onsale,.wc-block-grid__product-image .wc-block-grid__product-onsale{background:#fff;border:1px solid #43454b;border-radius:4px;color:#43454b;display:inline-block;font-size:.875em;font-weight:600;right:auto;padding:.25em .75em;position:absolute;left:4px;text-align:center;text-transform:uppercase;top:4px;width:auto;z-index:9}.wc-block-grid__product .wc-block-grid__product-image,.wc-block-grid__product .wc-block-grid__product-link{display:inline-block;position:relative}.wc-block-grid__product .wc-block-grid__product-image:not(.wc-block-components-product-image),.wc-block-grid__product .wc-block-grid__product-title{margin:0 0 12px}.wc-block-grid__product .wc-block-grid__product-add-to-cart,.wc-block-grid__product .wc-block-grid__product-onsale,.wc-block-grid__product .wc-block-grid__product-price,.wc-block-grid__product .wc-block-grid__product-rating{margin:0 auto 12px}.theme-twentysixteen .wc-block-grid .price ins{color:#77a464}.theme-twentynineteen .wc-block-grid__product{font-size:.88889em}.theme-twentynineteen .wc-block-components-product-sale-badge,.theme-twentynineteen .wc-block-components-product-title,.theme-twentynineteen .wc-block-grid__product-onsale,.theme-twentynineteen .wc-block-grid__product-title{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.theme-twentynineteen .wc-block-grid__product-title:before{display:none}.theme-twentynineteen .wc-block-components-product-sale-badge,.theme-twentynineteen .wc-block-grid__product-onsale{line-height:1}.theme-twentynineteen .editor-styles-wrapper .wp-block-button .wp-block-button__link:not(.has-text-color){color:#fff}.theme-twentytwenty .wc-block-grid__product-link{color:#000}.theme-twentytwenty .wc-block-components-product-title,.theme-twentytwenty .wc-block-grid__product-title{color:#cd2653;font-family:-apple-system,blinkmacsystemfont,Helvetica Neue,helvetica,sans-serif;font-size:1em}.theme-twentytwenty .wp-block-columns .wc-block-components-product-title{margin-top:0}.theme-twentytwenty .wc-block-components-product-price .woocommerce-Price-amount,.theme-twentytwenty .wc-block-components-product-price__value,.theme-twentytwenty .wc-block-grid__product-price .woocommerce-Price-amount,.theme-twentytwenty .wc-block-grid__product-price__value{font-family:-apple-system,blinkmacsystemfont,Helvetica Neue,helvetica,sans-serif;font-size:.9em}.theme-twentytwenty .wc-block-components-product-price del,.theme-twentytwenty .wc-block-grid__product-price del{opacity:.7}.theme-twentytwenty .wc-block-components-product-price ins,.theme-twentytwenty .wc-block-grid__product-price ins{text-decoration:none}.theme-twentytwenty .star-rating,.theme-twentytwenty .wc-block-grid__product-rating{font-size:.7em}.theme-twentytwenty .star-rating .wc-block-components-product-rating__stars,.theme-twentytwenty .star-rating .wc-block-grid__product-rating__stars,.theme-twentytwenty .wc-block-grid__product-rating .wc-block-components-product-rating__stars,.theme-twentytwenty .wc-block-grid__product-rating .wc-block-grid__product-rating__stars{line-height:1}.theme-twentytwenty .wc-block-components-product-button>.wp-block-button__link,.theme-twentytwenty .wc-block-grid__product-add-to-cart>.wp-block-button__link{font-family:-apple-system,blinkmacsystemfont,Helvetica Neue,helvetica,sans-serif}.theme-twentytwenty .wc-block-components-product-sale-badge,.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-onsale{background:#cd2653;color:#fff;font-family:-apple-system,blinkmacsystemfont,Helvetica Neue,helvetica,sans-serif;font-weight:700;letter-spacing:-.02em;line-height:1.2;text-transform:uppercase}.theme-twentytwenty .wc-block-grid__products .wc-block-components-product-sale-badge{position:static}.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-image .wc-block-components-product-sale-badge{position:absolute}.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-onsale:not(.wc-block-components-product-sale-badge){position:absolute;left:4px;top:4px;z-index:1}.theme-twentytwenty .wc-block-active-filters__title,.theme-twentytwenty .wc-block-attribute-filter__title,.theme-twentytwenty .wc-block-price-filter__title,.theme-twentytwenty .wc-block-stock-filter__title{font-size:1em}.theme-twentytwenty .wc-block-active-filters .wc-block-active-filters__clear-all,.theme-twentytwenty .wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link{font-size:.75em}@media only screen and (min-width:768px){.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-onsale{font-size:.875em;padding:.5em}}@media only screen and (min-width:1168px){.theme-twentytwenty .wc-block-grid__products .wc-block-grid__product-onsale{font-size:.875em;padding:.5em}}.theme-twentytwentytwo .wc-block-grid__product-add-to-cart .added_to_cart{display:block;margin-top:12px}.theme-twentytwentytwo .wc-block-components-product-price ins,.theme-twentytwentytwo .wc-block-grid__product-price ins{text-decoration:none}.screen-reader-text{clip:rect(1px,1px,1px,1px);word-wrap:normal!important;border:0;clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;overflow-wrap:normal!important;padding:0;position:absolute!important;width:1px}.screen-reader-text:focus{clip:auto!important;background-color:#fff;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip-path:none;color:#2b2d2f;display:block;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}.wp-block-group.woocommerce.product .up-sells.upsells.products{max-width:var(--wp--style--global--wide-size)}
@keyframes wc-skeleton-shimmer{to{transform:translateX(-100%)}}.wc-block-components-notice-banner{align-content:flex-start;align-items:stretch;background-color:#fff;border:1px solid #2f2f2f;border-radius:4px;box-sizing:border-box;color:#2f2f2f;display:flex;font-size:.875em;font-weight:400;gap:12px;line-height:1.5;margin:16px 0;padding:16px!important}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content{align-self:center;flex-basis:100%;padding-left:16px;white-space:normal}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content:last-child{padding-left:0}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-block-components-notice-banner__summary{font-weight:600;margin:0 0 8px}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ol,.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ul{margin:0 24px 0 0;padding:0}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ol li:after,.wc-block-components-notice-banner>.wc-block-components-notice-banner__content ul li:after{clear:both;content:"";display:block}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward{appearance:none;background:transparent!important;border:0;color:#2f2f2f!important;float:left;margin:0 20px 0 0;opacity:.7;padding:0!important;text-decoration-line:underline;text-underline-position:under;transition:all .2s ease-in-out}.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward:active,.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward:focus,.wc-block-components-notice-banner>.wc-block-components-notice-banner__content .wc-forward:hover{opacity:1;text-decoration:none}.wc-block-components-notice-banner>svg{fill:#fff;background-color:#2f2f2f;border-radius:50%;flex-grow:0;flex-shrink:0;height:100%;padding:2px}.wc-block-components-notice-banner>.wc-block-components-button{background:transparent none!important;border:0!important;box-shadow:none!important;color:#2f2f2f!important;flex:0 0 16px;height:16px!important;margin:6px auto 0 0!important;min-height:auto!important;min-width:0!important;opacity:.6;outline:none!important;padding:0!important;width:16px!important}.wc-block-components-notice-banner>.wc-block-components-button>svg{margin:0!important}.wc-block-components-notice-banner>.wc-block-components-button:active,.wc-block-components-notice-banner>.wc-block-components-button:focus,.wc-block-components-notice-banner>.wc-block-components-button:hover{opacity:1}.wc-block-components-notice-banner>.wc-block-components-button:focus{outline:2px solid currentColor!important;outline-offset:0}.wc-block-components-notice-banner.is-error{background-color:#fff0f0;border-color:#cc1818}.wc-block-components-notice-banner.is-error>svg{background-color:#cc1818;transform:rotate(-180deg)}.wc-block-components-notice-banner.is-warning{background-color:#fffbf4;border-color:#f0b849}.wc-block-components-notice-banner.is-warning>svg{background-color:#f0b849;transform:rotate(-180deg)}.wc-block-components-notice-banner.is-success{background-color:#f4fff7;border-color:#4ab866}.wc-block-components-notice-banner.is-success>svg{background-color:#4ab866}.wc-block-components-notice-banner.is-info{background-color:#f4f8ff;border-color:#007cba}.wc-block-components-notice-banner.is-info>svg{background-color:#007cba}.wc-block-components-notice-banner:focus{outline-width:0}.wc-block-components-notice-banner:focus-visible{outline-style:solid;outline-width:2px}.woocommerce.wc-block-store-notices.alignwide{max-width:var(--wp--style--global--wide-size)}
