/*
Theme Name: Soko Lite
Author: Soko
Description: A lightweight, mobile-first WooCommerce storefront with a clean marketplace layout. Pairs with Soko Companion, and works independently.
Version: 1.10.5
Requires at least: 6.6
Tested up to: 7.1
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: soko-lite
Tags: e-commerce, custom-logo, custom-menu, featured-images, wide-blocks, translation-ready, rtl-language-support
*/
:root{--soko-green:#174d3e;--soko-green-dark:#10392e;--soko-lime:#d7ef85;--soko-ink:#202922;--soko-muted:#677168;--soko-bg:#f7f8f4;--soko-border:#e4e8df;--soko-radius:16px;--soko-width:1320px;--soko-font:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;background:var(--soko-bg);color:var(--soko-ink);font:15px/1.6 var(--soko-font)}a{color:inherit;text-decoration:none}a:hover{color:var(--soko-green)}img{max-width:100%;height:auto;vertical-align:middle}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,[type=submit]{cursor:pointer}button:disabled{cursor:wait}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid var(--soko-accent,#718f22);outline-offset:4px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{line-height:1.2;letter-spacing:-.035em}h1{font-size:clamp(2rem,4vw,3.7rem)}h2{font-size:28px}h3{font-size:20px}.soko-wrap{max-width:var(--soko-width);margin-inline:auto;padding-inline:30px}.soko-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.screen-reader-text:focus{clip:auto!important;clip-path:none;display:block;top:10px;left:10px;width:auto;height:auto;padding:12px;background:var(--soko-surface,#fff);z-index:100}.soko-topbar{background:var(--soko-green);color:white;font-size:12px}.soko-topbar .soko-wrap{display:flex;justify-content:space-between;align-items:center;min-height:34px}.soko-topbar p{margin:0}.soko-topbar a{color:white}.soko-topbar a:hover{text-decoration:underline}.soko-topbar span{opacity:.72}.soko-header{background:var(--soko-surface,#fff);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--soko-border)}.admin-bar .soko-header{top:32px}.soko-header-main{display:flex;gap:44px;align-items:center;min-height:96px}.soko-brand{display:flex;align-items:center;gap:9px;font-size:37px;font-weight:800;letter-spacing:-2px;color:var(--soko-green);line-height:1}.soko-brand-mark{width:35px;height:40px;display:grid;place-items:center;background:var(--soko-green);color:var(--soko-lime);border-radius:11px 11px 14px 14px;transform:rotate(-7deg)}.soko-brand-mark .soko-icon{width:25px;height:25px}.custom-logo{max-width:170px;max-height:55px;width:auto}.soko-search-slot{flex:1;min-width:0}.soko-search-form{display:flex;align-items:center;background:var(--soko-surface,#f6f7f4);border:1px solid var(--soko-border);border-radius:10px;padding:5px 5px 5px 17px;position:relative;gap:10px}.soko-search-form input[type=search]{width:100%;border:0;background:transparent;padding:9px 0;min-width:0;outline-offset:0}.soko-search-form button{border:0;background:var(--soko-green);color:white;border-radius:7px;padding:10px 24px;font-size:13px;font-weight:650}.soko-header-actions{display:flex;gap:27px;align-items:center}.soko-header-action{display:flex;gap:9px;align-items:center;font-size:13px;font-weight:600;white-space:nowrap}.soko-header-action small{display:block;font-weight:400;color:var(--soko-muted);font-size:11px}.soko-cart-icon{position:relative}.soko-cart-count{position:absolute;top:-9px;right:-9px;background:var(--soko-lime);color:var(--soko-green-dark);font-size:10px;min-width:17px;height:17px;border-radius:100%;text-align:center;font-weight:700}.soko-nav{border-top:1px solid var(--soko-border,#f1f2ef)}.soko-nav-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:49px;font-size:13px}.soko-nav ul{display:flex;align-items:center;gap:28px;margin:0;padding:0;list-style:none;flex-wrap:wrap}.soko-nav li{position:relative}.soko-nav .sub-menu{display:none;position:absolute;top:100%;left:0;background:var(--soko-surface,#fff);min-width:190px;padding:14px;box-shadow:0 5px 15px #0002;z-index:5}.soko-nav li:hover>.sub-menu,.soko-nav li:focus-within>.sub-menu{display:grid}.soko-categories-toggle{display:flex;align-items:center;gap:9px;font-weight:650}.soko-nav-deal{display:flex;align-items:center;gap:7px;margin-inline-start:auto;color:var(--soko-green);font-weight:650}.soko-nav-deal .soko-icon{width:17px}.soko-mobile-toggle{display:none;border:0;background:transparent;padding:7px}.soko-home{padding-top:28px}.soko-hero-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px}.soko-category-panel{border:1px solid var(--soko-border);border-radius:var(--soko-radius);background:var(--soko-surface,#fff);padding:19px 15px}.soko-category-panel h2{font-size:13px;font-weight:700;margin:0 0 13px 7px;letter-spacing:.04em;text-transform:uppercase}.soko-category-panel a{display:flex;align-items:center;gap:11px;padding:9px 7px;font-size:13px;border-radius:7px}.soko-category-panel a:hover{background:var(--soko-bg)}.soko-category-panel .soko-icon{width:19px;height:19px;color:var(--soko-muted,#687268)}.soko-category-panel .soko-chevron{margin-inline-start:auto;font-size:17px;color:var(--soko-muted,#949c91)}.soko-category-panel .soko-view-all{border-top:1px solid var(--soko-border);margin-top:8px;padding-top:14px;font-weight:650;color:var(--soko-green)}.soko-hero{position:relative;overflow:hidden;min-height:398px;background:var(--soko-secondary,#e9eddf);border-radius:var(--soko-radius);display:flex;align-items:center;padding:43px 42px}.soko-hero-copy{position:relative;z-index:2;max-width:53%}.soko-eyebrow{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--soko-green);margin-bottom:18px}.soko-eyebrow:before{content:"";width:6px;height:6px;background:currentColor;border-radius:100%}.soko-hero h1{font-size:clamp(34px,3.5vw,51px);line-height:1.07;max-width:460px;margin-bottom:17px;letter-spacing:-2px}.soko-hero p{color:var(--soko-muted,#576352);font-size:14px;max-width:290px;margin-bottom:26px}.soko-button,.soko-content button:not(.soko-plain),.soko-content input[type=submit],.soko-content .wp-element-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:1px solid transparent;border-radius:8px;background:var(--soko-green);color:var(--soko-surface,#fff);padding:12px 22px;font-size:13px;font-weight:650;line-height:1.5}.soko-button:hover{background:var(--soko-green-dark);color:white}.soko-button .soko-icon{width:18px}.soko-hero-art{position:absolute;right:0;top:0;width:49%;height:100%;object-fit:contain;padding:12px}.soko-hero-foot{display:flex;gap:6px;align-items:center;font-size:11px;margin-top:27px;color:var(--soko-muted,#5b6858)}.soko-hero-foot .soko-icon{width:15px;height:15px}.soko-benefits{display:grid;grid-template-columns:repeat(4,1fr);padding:26px 8px;border-bottom:1px solid var(--soko-border);gap:20px}.soko-benefit{display:flex;align-items:center;justify-content:center;gap:13px}.soko-benefit>.soko-icon{width:25px;height:25px;color:var(--soko-green)}.soko-benefit strong{display:block;font-size:12px;font-weight:650}.soko-benefit small{font-size:11px;color:var(--soko-muted)}.soko-section{padding-top:34px}.soko-section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:23px}.soko-section-heading h2{font-size:25px;margin:0}.soko-section-heading p{font-size:12px;color:var(--soko-muted);margin:5px 0 0}.soko-text-link{display:inline-flex;align-items:center;gap:7px;font-weight:650;font-size:12px;color:var(--soko-green);white-space:nowrap}.soko-text-link .soko-icon{width:16px;height:16px}.soko-category-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:15px}.soko-category-card{background:var(--soko-surface,#fff);border:1px solid var(--soko-border);border-radius:12px;text-align:center;padding:19px 10px 16px;font-size:12px;font-weight:650;transition:transform .18s,border-color .18s}.soko-category-card:hover{transform:translateY(-3px);border-color:var(--soko-border,#a7b99c)}.soko-category-orb{width:69px;height:69px;margin:0 auto 12px;background:var(--soko-secondary,#f0f1e9);border-radius:50%;display:grid;place-items:center}.soko-category-card:nth-child(2n) .soko-category-orb{background:var(--soko-secondary,#f7eee5)}.soko-category-card:nth-child(3n) .soko-category-orb{background:var(--soko-secondary,#e9edf2)}.soko-category-orb img{width:62px;height:62px;object-fit:contain}.soko-category-orb .soko-icon{width:32px;height:32px;color:var(--soko-green)}.soko-category-card small{display:block;font-weight:400;color:var(--soko-muted);font-size:10px;margin-top:3px}.soko-product-section{margin-top:36px;padding:25px;background:var(--soko-surface,#fff);border:1px solid var(--soko-border);border-radius:var(--soko-radius)}.soko-product-section .soko-section-heading{margin-bottom:22px}.soko-product-section h2{display:flex;align-items:center;gap:9px}.soko-product-section h2 .soko-icon{fill:var(--soko-lime);stroke:var(--soko-green);width:24px}.soko-promo{margin-top:32px;margin-bottom:40px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.soko-promo-card{border-radius:14px;padding:27px 30px;background:var(--soko-secondary,#e9eddf);position:relative;overflow:hidden;min-height:165px}.soko-promo-card:nth-child(2){background:var(--soko-secondary,#f0e7db)}.soko-promo-card h2{font-size:25px;max-width:300px;margin-bottom:11px}.soko-promo-card p{font-size:12px;color:var(--soko-muted);max-width:240px;margin-bottom:16px}.soko-promo-card>.soko-icon{position:absolute;right:30px;top:42px;width:78px;height:78px;stroke-width:1;color:var(--soko-muted,#6c7a51);opacity:.5}.soko-footer{background:var(--soko-surface,#fff);border-top:1px solid var(--soko-border);padding:38px 0 0}.soko-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding-bottom:30px}.soko-footer .soko-brand{font-size:31px;margin-bottom:14px}.soko-footer p{font-size:12px;color:var(--soko-muted);max-width:300px}.soko-footer h2{font-size:13px;letter-spacing:0;margin-bottom:13px}.soko-footer ul{list-style:none;padding:0;margin:0;font-size:12px;color:var(--soko-muted)}.soko-footer li{padding:4px 0}.soko-footer-bottom{border-top:1px solid var(--soko-border);padding-top:18px;padding-bottom:18px;display:flex;justify-content:space-between;font-size:11px;color:var(--soko-muted)}.soko-content{padding-block:38px;min-height:50vh}.soko-content input:not([type=checkbox]):not([type=radio]):not([type=submit]),.soko-content select,.soko-content textarea{padding:10px 12px;border:1px solid var(--soko-border,#cbd3c7);border-radius:7px;max-width:100%;background:var(--soko-surface,#fff);color:var(--soko-ink)}.soko-content article{max-width:850px;margin:0 auto 30px}.soko-content article a:not(.soko-button){text-decoration:underline;text-underline-offset:3px}.soko-content article h1{font-size:38px}.soko-content .alignwide{max-width:1100px}.soko-content .alignfull{max-width:none}.soko-empty{padding:40px;text-align:center;background:var(--soko-surface,#fff);border:1px solid var(--soko-border);border-radius:14px}.soko-empty h2{font-size:23px}.soko-empty p{color:var(--soko-muted)}.soko-post-card{padding:24px;background:var(--soko-surface,#fff);border:1px solid var(--soko-border);border-radius:12px}.soko-post-meta{font-size:12px;color:var(--soko-muted)}.soko-shop-top{margin-bottom:22px}.soko-shop-sidebar{margin-top:30px}.soko-shop-sidebar ul{list-style:none;padding:0}.soko-pagination,.nav-links{display:flex;gap:10px;margin-block:24px;flex-wrap:wrap}.page-numbers{padding:6px 12px;border:1px solid var(--soko-border);border-radius:5px}.page-numbers.current{background:var(--soko-green);color:white}.soko-content .comment-list{padding-inline-start:20px}.soko-content .comment-form-comment textarea{display:block;width:100%}.soko-content .comment-form label{display:block}.soko-content .comment-form-cookies-consent label{display:inline}.wp-caption{max-width:100%}.wp-caption-text,.gallery-caption{font-size:12px;color:var(--soko-muted)}.alignleft{float:left;margin:0 20px 20px 0}.alignright{float:right;margin:0 0 20px 20px}.aligncenter{display:block;margin-inline:auto}.sticky{border-inline-start:3px solid var(--soko-green)}.bypostauthor{border-inline-start:2px solid var(--soko-border)}
/* WooCommerce stays in its native templates so third-party hooks remain intact. */
.woocommerce ul.products,.woocommerce-page ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin:0 0 20px}.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{float:none;width:auto!important;margin:0!important;padding:0;position:relative;min-width:0}.woocommerce ul.products li.product a img{width:100%;height:215px;object-fit:contain;background:var(--soko-surface,#f5f6f2);border-radius:10px;margin:0 0 13px;padding:18px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13px;line-height:1.5;font-weight:550;letter-spacing:0;padding:0 0 7px}.woocommerce ul.products li.product .price{font-size:16px;font-weight:750;color:var(--soko-ink);margin-bottom:7px}.woocommerce ul.products li.product .price del{font-size:12px;font-weight:400;color:var(--soko-muted);opacity:.9;margin-inline-end:6px}.woocommerce ul.products li.product .price ins{text-decoration:none}.woocommerce .star-rating{color:#8a6400;font-size:11px}.woocommerce span.onsale{min-width:0;min-height:0;line-height:1.5;background:var(--soko-secondary,#e6efcc);color:var(--soko-green-dark);border-radius:5px;padding:3px 8px;font-size:11px;font-weight:600;top:10px!important;left:10px!important;right:auto!important;margin:0!important;z-index:2}.woocommerce ul.products li.product .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:var(--soko-green);color:white;border-radius:7px;padding:11px 16px;font-size:12px;font-weight:600;line-height:1.5}.woocommerce ul.products li.product .button{margin-top:5px;background:var(--soko-secondary,#eff3e9);color:var(--soko-green);width:100%;text-align:center}.woocommerce ul.products li.product .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--soko-green-dark);color:white}.woocommerce .added_to_cart{font-size:12px;padding:6px}.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{font-size:13px}.woocommerce .woocommerce-ordering select{max-width:240px}.woocommerce div.product .product_title{font-size:clamp(25px,3vw,40px)}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--soko-green);font-size:25px}.woocommerce .quantity .qty{padding:10px 4px!important;width:70px}.woocommerce div.product form.cart .button{padding:13px 24px}.woocommerce div.product .woocommerce-tabs ul.tabs li{background:var(--soko-secondary,#edf1e7);border-color:var(--soko-border);border-radius:5px 5px 0 0}.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-weight:600;font-size:13px}.woocommerce div.product div.images img{border-radius:12px}.woocommerce .woocommerce-breadcrumb{font-size:12px;color:var(--soko-muted);margin-bottom:28px}.woocommerce .woocommerce-info,.woocommerce .woocommerce-message{border-top-color:var(--soko-green);background:var(--soko-secondary,#edf2e7)}.woocommerce .woocommerce-info::before,.woocommerce .woocommerce-message::before{color:var(--soko-green)}.woocommerce button.button.alt,.woocommerce a.button.alt{background:var(--soko-green)}.woocommerce table.shop_table{background:var(--soko-surface,#fff);border-color:var(--soko-border);font-size:14px}.woocommerce .woocommerce-MyAccount-navigation{background:var(--soko-surface,#fff);border:1px solid var(--soko-border);border-radius:12px;padding:20px}.woocommerce .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0}.woocommerce .woocommerce-MyAccount-navigation li{padding:8px;border-bottom:1px solid var(--soko-border)}.woocommerce .woocommerce-MyAccount-navigation .is-active{font-weight:700}.wc-block-components-button{border-radius:8px!important}.soko-shop-layout{background:var(--soko-surface,#fff);border:1px solid var(--soko-border);border-radius:14px;padding:26px}.soko-shop-layout>h1,.woocommerce-products-header h1{font-size:34px}.soko-shop-sidebar .widget{padding:16px;border:1px solid var(--soko-border);border-radius:10px;margin-bottom:16px}.soko-shop-sidebar .widget-title{font-size:18px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Default marketplace campaign; custom uploaded hero images retain their layout. */
.soko-hero--photo{isolation:isolate;min-height:450px;background:#e7ede4}
.soko-hero--photo .soko-hero-art{inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;padding:0;opacity:1;z-index:-2}
.soko-hero--photo:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(231,237,228,.98),rgba(231,237,228,.92) 29%,rgba(231,237,228,.5) 47%,transparent 68%);pointer-events:none}
.soko-product-section .woocommerce ul.products li.product a img,.soko-starter-products .woocommerce ul.products li.product a img{padding:0}

/* Native shop archives: filters on the left, results retain WooCommerce hooks. */
.soko-catalog-layout{display:grid;grid-template-columns:minmax(220px,250px) minmax(0,1fr);align-items:start;gap:28px;clear:both}
.soko-catalog-sidebar,.soko-catalog-results{min-width:0}
.soko-catalog-sidebar .soko-filter-panel{margin:0}
.soko-catalog-results{display:flow-root}
.woocommerce .soko-catalog-results ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
.woocommerce .soko-catalog-results .woocommerce-ordering select{max-width:100%}
@media(max-width:1024px){
 .soko-catalog-layout{grid-template-columns:minmax(0,1fr);gap:20px}
}
@media(max-width:639px){
 .woocommerce .soko-catalog-results ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
 .woocommerce .soko-catalog-results .woocommerce-result-count,.woocommerce .soko-catalog-results .woocommerce-ordering{float:none;width:100%;margin:0 0 14px}
 .woocommerce .soko-catalog-results .woocommerce-ordering select{width:100%;min-height:44px}
}

/* Marketplace catalog: independent sidebar and results cards. */
.soko-catalog-page .soko-shop-layout{padding:0;border:0;border-radius:0;background:transparent}
.soko-catalog-page .woocommerce-breadcrumb{margin-bottom:16px}
.soko-catalog-layout{grid-template-columns:260px minmax(0,1fr);gap:16px}
.soko-catalog-results{padding:18px;background:var(--soko-surface,#fff);border:1px solid var(--soko-border,#e4e8df);border-radius:6px}
.soko-catalog-results .woocommerce-products-header{border-bottom:1px solid var(--soko-border,#e4e8df);padding:0 0 16px;margin:0 0 18px}
.soko-catalog-results .woocommerce-products-header h1{font-size:22px;line-height:1.4;font-weight:650;margin:0}
.soko-catalog-heading{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;flex-wrap:wrap}
.soko-catalog-heading-main{display:flex;align-items:baseline;gap:8px 12px;flex-wrap:wrap;min-width:0;flex:1}
.woocommerce .soko-catalog-heading .woocommerce-result-count{float:none;margin:0;color:var(--soko-muted,#6b706c);font-size:12px}
.woocommerce .soko-catalog-heading .woocommerce-ordering{float:none;width:auto;margin:0}
.woocommerce .soko-catalog-heading .woocommerce-ordering select{font-size:13px;min-height:40px;width:auto;max-width:220px;border-color:transparent;background:transparent}
.soko-catalog-results .term-description,.soko-catalog-results .page-description{font-size:14px;line-height:1.6;color:var(--soko-muted,#687268);margin-top:16px}
.soko-catalog-results .term-description p:last-child,.soko-catalog-results .page-description p:last-child{margin-bottom:0}
@media(max-width:1024px){
 .soko-catalog-layout{grid-template-columns:minmax(0,1fr);gap:14px}
}
@media(max-width:639px){
 .soko-catalog-results{padding:14px 10px}
 .soko-catalog-results .woocommerce-products-header h1{font-size:21px}
 .soko-catalog-heading{gap:12px}
 .soko-catalog-heading-main{flex-basis:100%}
 .woocommerce .soko-catalog-heading .woocommerce-ordering{width:100%}
 .woocommerce .soko-catalog-heading .woocommerce-ordering select{width:100%;max-width:100%;min-height:44px;border-color:var(--soko-border,#e4e8df)}
}
