/*
Theme Name: BayStore
Theme URI: https://example.com/baystore
Author: Your Name
Author URI: https://example.com
Description: A clean eBay-style marketplace theme for WooCommerce, with an extensive theme options panel, one-click demo import with selectable components, configurable sidebar, search, page width, and full product/category customization.
Version: 1.0.4
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: baystore
Tags: e-commerce, custom-colors, custom-menu, featured-images, theme-options, two-columns, left-sidebar, right-sidebar, full-width-template
WC requires at least: 7.0
WC tested up to: 8.9
*/

/* =====================================================================
   BayStore — Design tokens (eBay-inspired)
   Colors, page width and accents are overridden at runtime by the
   theme options panel via an inline <style> block (see header.php).
   ===================================================================== */
:root{
  --eb-blue:#3665f3;          /* primary call-to-action */
  --eb-blue-dark:#1641c4;
  --eb-link:#0654ba;          /* classic eBay link blue */
  --eb-red:#e53238;           /* logo + sale */
  --eb-yellow:#f5af02;
  --eb-green:#86b817;         /* free shipping / success */
  --eb-text:#111820;
  --eb-muted:#707070;
  --eb-border:#e5e5e5;
  --eb-border-strong:#cdcdcd;
  --eb-bg:#ffffff;
  --eb-bg-soft:#f7f7f7;
  --eb-bg-utility:#f7f7f7;
  --eb-radius:8px;
  --eb-radius-pill:999px;
  --eb-page-width:1300px;
  --eb-font:"Market Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
  --eb-shadow:0 1px 4px rgba(0,0,0,.12);
  --eb-shadow-hover:0 6px 18px rgba(0,0,0,.16);
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;
  font-family:var(--eb-font);
  font-size:14px;
  line-height:1.45;
  color:var(--eb-text);
  background:var(--eb-bg);
}
a{color:var(--eb-link);text-decoration:none;}
a:hover{text-decoration:underline;}
img{max-width:100%;height:auto;display:block;}
button{font-family:inherit;cursor:pointer;}

.eb-container{
  width:100%;
  max-width:var(--eb-page-width);
  margin:0 auto;
  padding:0 16px;
}
body.eb-boxed #page{
  max-width:calc(var(--eb-page-width) + 48px);
  margin:0 auto;
  box-shadow:0 0 0 1px var(--eb-border);
  background:var(--eb-bg);
}
body.eb-boxed{background:var(--eb-bg-soft);}

/* ---------- Skip link / a11y ---------- */
.eb-skip-link{
  position:absolute;left:-9999px;top:0;background:#fff;padding:10px 16px;z-index:1000;
}
.eb-skip-link:focus{left:8px;top:8px;outline:3px solid var(--eb-blue);}
:focus-visible{outline:3px solid var(--eb-blue);outline-offset:2px;}

/* =====================================================================
   Top utility bar
   ===================================================================== */
.eb-utility{
  background:var(--eb-bg-utility);
  border-bottom:1px solid var(--eb-border);
  font-size:12px;
}
.eb-utility .eb-container{display:flex;align-items:center;justify-content:space-between;height:36px;gap:16px;}
.eb-utility a{color:var(--eb-text);}
.eb-utility a:hover{color:var(--eb-link);}
.eb-utility ul{list-style:none;display:flex;gap:14px;margin:0;padding:0;align-items:center;}
.eb-utility .eb-greeting strong{color:var(--eb-link);}
.eb-utility-right li{position:relative;}
.eb-utility-cart{display:inline-flex;align-items:center;gap:4px;}

/* =====================================================================
   Main header — logo + search + account
   ===================================================================== */
.eb-header{background:var(--eb-bg);padding:14px 0;}
.eb-header.eb-sticky{position:sticky;top:0;z-index:200;box-shadow:var(--eb-shadow);}
.eb-header .eb-container{display:flex;align-items:center;gap:20px;}

.eb-logo{font-size:30px;font-weight:800;letter-spacing:-1px;line-height:1;flex:0 0 auto;}
.eb-logo a{display:inline-flex;text-decoration:none;font-style:italic;}
.eb-logo .l1{color:var(--eb-red);}
.eb-logo .l2{color:var(--eb-blue,#0064d2);}
.eb-logo .l3{color:var(--eb-yellow);}
.eb-logo .l4{color:var(--eb-green);}
.eb-logo img{max-height:44px;width:auto;}

/* Search */
.eb-search{flex:1 1 auto;display:flex;align-items:stretch;min-width:0;}
.eb-search form{display:flex;width:100%;align-items:stretch;}
.eb-search .eb-search-field{
  flex:1 1 auto;display:flex;align-items:center;
  border:2px solid var(--eb-text);border-right:0;
  border-radius:var(--eb-radius-pill) 0 0 var(--eb-radius-pill);
  padding:0 8px 0 16px;background:#fff;min-width:0;
}
.eb-search .eb-search-icon{color:var(--eb-muted);flex:0 0 auto;}
.eb-search input[type="search"],
.eb-search input[type="text"]{
  border:0;outline:0;flex:1 1 auto;height:42px;font-size:15px;background:transparent;min-width:0;padding-left:8px;
}
.eb-search-cat{
  flex:0 0 auto;border:2px solid var(--eb-text);border-left:1px solid var(--eb-border);
  background:#fff;font-size:13px;padding:0 30px 0 12px;max-width:170px;
  appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23707070' stroke-width='2'><path d='M6 9l6 6 6-6'/></svg>");
  background-repeat:no-repeat;background-position:right 10px center;
}
.eb-search .eb-search-btn{
  flex:0 0 auto;background:var(--eb-blue);color:#fff;border:0;font-weight:600;
  font-size:16px;padding:0 36px;border-radius:0 var(--eb-radius-pill) var(--eb-radius-pill) 0;
}
.eb-search .eb-search-btn:hover{background:var(--eb-blue-dark);}
.eb-search-advanced{flex:0 0 auto;align-self:center;margin-left:10px;font-size:12px;}

.eb-header-account{display:flex;gap:14px;align-items:center;flex:0 0 auto;}

/* =====================================================================
   Category navigation
   ===================================================================== */
.eb-nav{border-bottom:1px solid var(--eb-border);font-size:13px;}
.eb-nav .eb-container{display:flex;align-items:center;gap:4px;}
.eb-nav ul{list-style:none;display:flex;gap:2px;margin:0;padding:0;flex-wrap:wrap;}
.eb-nav li a{display:block;padding:9px 12px;color:var(--eb-text);border-radius:6px;}
.eb-nav li a:hover{background:var(--eb-bg-soft);text-decoration:none;color:var(--eb-link);}
.eb-nav li.current-menu-item>a,.eb-nav li.current_page_item>a{font-weight:600;}

/* =====================================================================
   Layout: content + sidebar
   ===================================================================== */
.eb-main{padding:20px 0 48px;}
.eb-layout{display:flex;gap:24px;align-items:flex-start;}
.eb-layout.eb-sidebar-right{flex-direction:row-reverse;}
.eb-content{flex:1 1 auto;min-width:0;}
.eb-sidebar{flex:0 0 240px;width:240px;}
.eb-sidebar.eb-sticky-sidebar{position:sticky;top:16px;}
body.eb-no-sidebar .eb-sidebar{display:none;}
@media(max-width:900px){
  .eb-layout{flex-direction:column;}
  .eb-sidebar{width:100%;flex-basis:auto;position:static!important;}
}

/* Sidebar facet panels */
.eb-facet{border-bottom:1px solid var(--eb-border);padding:14px 0;}
.eb-facet:first-child{padding-top:0;}
.eb-facet h3{font-size:15px;margin:0 0 10px;font-weight:700;}
.eb-facet ul{list-style:none;margin:0;padding:0;}
.eb-facet li{padding:3px 0;}
.eb-facet label{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--eb-text);}
.eb-facet a{color:var(--eb-link);}
.eb-facet .eb-count{color:var(--eb-muted);margin-left:auto;font-size:12px;}
.eb-price-range{display:flex;gap:8px;align-items:center;}
.eb-price-range input{width:70px;height:34px;border:1px solid var(--eb-border-strong);border-radius:6px;padding:0 8px;}
.eb-star{color:var(--eb-yellow);}

/* =====================================================================
   Homepage hero
   ===================================================================== */
.eb-hero{
  background:linear-gradient(120deg,#eaf1ff 0%,#f7faff 55%,#fff6e9 100%);
  border:1px solid var(--eb-border);border-radius:12px;
  padding:34px 36px;margin-bottom:22px;
}
.eb-hero-text h2{margin:0 0 6px;font-size:26px;line-height:1.15;}
.eb-hero-text p{margin:0 0 16px;color:var(--eb-muted);font-size:15px;max-width:520px;}
@media(max-width:600px){.eb-hero{padding:22px;}.eb-hero-text h2{font-size:21px;}}

/* =====================================================================
   Results header + toolbar
   ===================================================================== */
.eb-results-head{display:flex;align-items:center;justify-content:space-between;gap:16px;
  border-bottom:1px solid var(--eb-border);padding-bottom:12px;margin-bottom:18px;flex-wrap:wrap;}
.eb-results-head h1{font-size:22px;margin:0;font-weight:700;}
.eb-results-count{color:var(--eb-muted);font-size:13px;}
.eb-toolbar{display:flex;align-items:center;gap:14px;}
.eb-toolbar select{height:36px;border:1px solid var(--eb-border-strong);border-radius:6px;padding:0 10px;background:#fff;}
.eb-view-toggle{display:flex;border:1px solid var(--eb-border-strong);border-radius:6px;overflow:hidden;}
.eb-view-toggle button{background:#fff;border:0;padding:8px 10px;display:flex;}
.eb-view-toggle button.is-active{background:var(--eb-bg-soft);}

/* =====================================================================
   Product grid + cards (eBay style)
   ===================================================================== */
.eb-products{
  display:grid;gap:16px;
  grid-template-columns:repeat(var(--eb-cols,4),minmax(0,1fr));
  list-style:none;margin:0;padding:0;
}
@media(max-width:1100px){.eb-products{grid-template-columns:repeat(3,1fr);}}
@media(max-width:760px){.eb-products{grid-template-columns:repeat(2,1fr);}}
@media(max-width:420px){.eb-products{grid-template-columns:1fr;}}

.eb-card{
  position:relative;border:1px solid var(--eb-border);border-radius:var(--eb-radius);
  background:#fff;overflow:hidden;transition:box-shadow .15s ease,transform .15s ease;
  display:flex;flex-direction:column;
}
.eb-card:hover{box-shadow:var(--eb-shadow-hover);}
.eb-card-media{position:relative;aspect-ratio:1/1;background:var(--eb-bg-soft);overflow:hidden;}
.eb-card-media img{width:100%;height:100%;object-fit:cover;}
.eb-card-watch{
  position:absolute;top:8px;right:8px;width:36px;height:36px;border-radius:50%;
  background:rgba(255,255,255,.92);border:1px solid var(--eb-border);display:flex;
  align-items:center;justify-content:center;color:var(--eb-muted);box-shadow:var(--eb-shadow);
}
.eb-card-watch:hover{color:var(--eb-red);}
.eb-badge{
  position:absolute;top:8px;left:8px;font-size:11px;font-weight:700;letter-spacing:.3px;
  padding:3px 8px;border-radius:4px;text-transform:uppercase;
}
.eb-badge-sale{background:var(--eb-red);color:#fff;}
.eb-badge-sponsored{background:rgba(0,0,0,.6);color:#fff;text-transform:none;font-weight:500;}
.eb-card-body{padding:12px;display:flex;flex-direction:column;gap:4px;flex:1 1 auto;}
.eb-card-title{font-size:14px;line-height:1.35;margin:0;}
.eb-card-title a{color:var(--eb-link);}
.eb-card-cond{font-size:12px;color:var(--eb-muted);}
.eb-card-price{font-size:18px;font-weight:700;color:var(--eb-text);margin-top:2px;}
.eb-card-price del{color:var(--eb-muted);font-weight:400;font-size:13px;margin-left:6px;}
.eb-card-bestoffer{font-size:12px;color:var(--eb-muted);}
.eb-card-rating{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--eb-muted);}
.eb-card-ship{font-size:12px;}
.eb-card-ship.free{color:var(--eb-green);font-weight:600;}
.eb-card-cta{
  margin-top:auto;display:inline-flex;align-items:center;justify-content:center;
  background:transparent;color:var(--eb-link);border:1px solid var(--eb-link);
  border-radius:var(--eb-radius-pill);padding:8px 0;font-weight:600;font-size:13px;margin-top:10px;
}
.eb-card-cta:hover{background:var(--eb-blue);border-color:var(--eb-blue);color:#fff;text-decoration:none;}

/* List view */
.eb-products.is-list{grid-template-columns:1fr;}
.eb-products.is-list .eb-card{flex-direction:row;}
.eb-products.is-list .eb-card-media{flex:0 0 200px;aspect-ratio:auto;height:200px;}
.eb-products.is-list .eb-card-body{flex:1 1 auto;}

/* =====================================================================
   Buttons / generic WooCommerce overrides
   ===================================================================== */
.eb-btn,
.woocommerce a.button,.woocommerce button.button,.woocommerce .button,
.woocommerce #respond input#submit{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--eb-blue);color:#fff!important;border:0;border-radius:var(--eb-radius-pill);
  padding:10px 28px;font-weight:600;font-size:15px;line-height:1;text-decoration:none;
}
.eb-btn:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--eb-blue-dark);}
.eb-btn-secondary{background:#fff;color:var(--eb-link)!important;border:1px solid var(--eb-link);}
.eb-btn-secondary:hover{background:var(--eb-bg-soft);}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{margin:0;}
.woocommerce ul.products{display:grid;gap:16px;grid-template-columns:repeat(var(--eb-cols,4),minmax(0,1fr));}
.woocommerce span.price,.woocommerce div.product p.price{color:var(--eb-text);font-weight:700;}

/* =====================================================================
   Footer
   ===================================================================== */
.eb-footer{border-top:1px solid var(--eb-border);background:var(--eb-bg);padding:36px 0 0;margin-top:40px;}
.eb-footer-cols{display:grid;grid-template-columns:repeat(var(--eb-footer-cols,5),1fr);gap:24px;}
.eb-footer-col h4{font-size:14px;margin:0 0 12px;}
.eb-footer-col ul{list-style:none;margin:0;padding:0;}
.eb-footer-col li{padding:4px 0;}
.eb-footer-col a{color:var(--eb-muted);font-size:13px;}
.eb-footer-col a:hover{color:var(--eb-link);}
.eb-footer-bar{border-top:1px solid var(--eb-border);margin-top:28px;padding:18px 0;font-size:12px;color:var(--eb-muted);
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.eb-pay{display:flex;gap:8px;align-items:center;}
.eb-pay span{border:1px solid var(--eb-border);border-radius:4px;padding:3px 8px;font-weight:700;font-size:11px;color:var(--eb-text);}
@media(max-width:760px){.eb-footer-cols{grid-template-columns:repeat(2,1fr);}}

/* =====================================================================
   Misc / pagination / mobile
   ===================================================================== */
.eb-pagination{display:flex;justify-content:center;gap:6px;margin:28px 0;}
.eb-pagination a,.eb-pagination span{
  min-width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;
  border:1px solid var(--eb-border-strong);border-radius:6px;color:var(--eb-text);padding:0 8px;
}
.eb-pagination .current{background:var(--eb-text);color:#fff;border-color:var(--eb-text);}
.eb-mobile-toggle{display:none;background:none;border:0;padding:6px;margin-right:4px;color:var(--eb-text);cursor:pointer;border-radius:6px;}
.eb-mobile-toggle:hover{background:var(--eb-bg-soft);}

/* ---- Tablet ---- */
@media(max-width:900px){
  .eb-layout{flex-direction:column;}
  .eb-sidebar{width:100%;flex-basis:auto;position:static!important;}
  .eb-footer-cols{grid-template-columns:repeat(3,1fr);}
}

/* ---- Mobile ---- */
@media(max-width:820px){
  /* tidy the utility bar: keep only the greeting, drop the rest */
  .eb-utility .eb-container{height:auto;padding-top:6px;padding-bottom:6px;gap:8px;}
  .eb-utility-left li:not(.eb-greeting){display:none;}
  .eb-utility-right li{display:none;}
  .eb-utility-right li:last-child{display:inline-flex;} /* keep cart only */

  /* header becomes two rows: [menu | logo | (search below)] */
  .eb-header .eb-container{flex-wrap:wrap;gap:10px 12px;}
  .eb-mobile-toggle{display:inline-flex;}
  .eb-logo{font-size:26px;margin-right:auto;}
  .eb-search{order:3;flex-basis:100%;}
  .eb-search-cat{display:none;}
  .eb-search-advanced{display:none;}
  .eb-search .eb-search-btn{padding:0 22px;}

  /* category nav collapses behind the hamburger */
  .eb-nav{border-top:1px solid var(--eb-border);}
  .eb-nav .eb-container{padding:0;}
  .eb-nav ul{display:none;flex-direction:column;gap:0;width:100%;}
  .eb-nav.is-open ul{display:flex;}
  .eb-nav li a{padding:14px 16px;border-bottom:1px solid var(--eb-border);border-radius:0;}
  .eb-nav li:last-child a{border-bottom:0;}

  /* results toolbar wraps and breathes */
  .eb-results-head{gap:10px;}
  .eb-results-head h1{font-size:19px;}
  .eb-toolbar{width:100%;justify-content:space-between;}

  .eb-footer-cols{grid-template-columns:1fr 1fr;}
  .eb-footer-bar{flex-direction:column;align-items:flex-start;}
}

/* ---- Small phones ---- */
@media(max-width:460px){
  .eb-container{padding:0 12px;}
  .eb-products{grid-template-columns:1fr 1fr;gap:10px;}
  .eb-card-title{font-size:13px;}
  .eb-card-price{font-size:16px;}
  .eb-card-cta{padding:7px 0;font-size:12px;}
  .eb-footer-cols{grid-template-columns:1fr;}
  .eb-hero{padding:20px 18px;}
  .eb-pay{flex-wrap:wrap;}
}

/* Avoid sideways scrolling from any stray wide child */
html,body{max-width:100%;overflow-x:clip;}

.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);}
