/* Kebaby Bite WooCommerce Widgets v1.1.0 */
.kbpw-widget{box-sizing:border-box;background:var(--kbpw-bg);color:var(--kbpw-text);font-family:var(--kbpw-body-font);width:100%;position:relative}
.kbpw-widget *{box-sizing:border-box}
.kbpw-widget a{text-decoration:none}
.kbpw-main-heading,.kbpw-menu-products-head h3,.kbpw-product-title{font-family:var(--kbpw-heading-font);color:var(--kbpw-text);margin:0}
.kbpw-main-heading{font-size:clamp(30px,4vw,52px);line-height:1.05;text-align:center;font-weight:800;letter-spacing:.2px}
.kbpw-accent-text{color:var(--kbpw-accent)}
.kbpw-main-subtitle{margin:10px 0 0;color:var(--kbpw-muted);text-align:center;font-size:16px}
.kbpw-menu-header{padding:18px 20px 26px}

/* Menu categories: intentionally reset button styles so Elementor/theme colors cannot leak in. */
.kbpw-categories-shell{position:relative;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--kbpw-border);padding:8px 48px 30px}
.kbpw-category-strip{display:flex;gap:25px;align-items:flex-start;overflow-x:auto;scroll-behavior:smooth;width:100%;padding:8px 3px 6px;scrollbar-width:none}
.kbpw-category-strip::-webkit-scrollbar{display:none}
.kbpw-widget button.kbpw-category-item,
.kbpw-widget button.kbpw-category-item:hover,
.kbpw-widget button.kbpw-category-item:focus,
.kbpw-widget button.kbpw-category-item:active{appearance:none!important;-webkit-appearance:none!important;border:0!important;outline:0!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;color:var(--kbpw-text)!important;min-width:96px;display:flex!important;flex-direction:column;align-items:center;justify-content:flex-start;gap:9px;cursor:pointer;padding:0!important;margin:0!important;font:inherit;text-transform:none!important;letter-spacing:normal!important}
.kbpw-category-item strong{font-weight:700;font-size:14px;line-height:1.25;white-space:nowrap;color:var(--kbpw-text)!important;transition:color .2s ease}
.kbpw-category-item small{font-size:11px;color:var(--kbpw-muted)!important}
.kbpw-category-circle{width:88px;height:88px;border-radius:50%!important;border:2px solid var(--kbpw-border)!important;background:var(--kbpw-surface)!important;display:grid;place-items:center;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease,background-color .2s ease;position:relative;box-shadow:none!important}
.kbpw-category-circle img{display:block;width:100%;height:100%;object-fit:cover;border:0!important;border-radius:50%!important}
.kbpw-widget .kbpw-category-item:hover .kbpw-category-circle,
.kbpw-widget .kbpw-category-item:focus-visible .kbpw-category-circle,
.kbpw-widget .kbpw-category-item.is-active .kbpw-category-circle{border-color:var(--kbpw-accent)!important;box-shadow:0 0 0 2px var(--kbpw-accent)!important;transform:translateY(-2px)}
.kbpw-widget .kbpw-category-item:hover strong,
.kbpw-widget .kbpw-category-item:focus-visible strong,
.kbpw-widget .kbpw-category-item.is-active strong{color:var(--kbpw-accent)!important}
.kbpw-widget .kbpw-category-item.is-active .kbpw-category-circle{background:var(--kbpw-surface)!important}
.kbpw-cat-fallback{font-size:26px;font-weight:800;color:var(--kbpw-accent)}
.kbpw-all-category{background:transparent!important;border-color:var(--kbpw-accent)!important}
.kbpw-all-text{font-family:var(--kbpw-heading-font);font-weight:800;font-size:19px;line-height:1;color:var(--kbpw-accent)!important}
.kbpw-widget .kbpw-category-item.is-active .kbpw-all-category,
.kbpw-widget .kbpw-category-item:hover .kbpw-all-category{background:var(--kbpw-accent)!important}
.kbpw-widget .kbpw-category-item.is-active .kbpw-all-text,
.kbpw-widget .kbpw-category-item:hover .kbpw-all-text{color:var(--kbpw-button-text)!important}

/* Circular category navigation, locked to plugin global colors. */
.kbpw-widget button.kbpw-cat-scroll,
.kbpw-widget button.kbpw-cat-scroll:hover,
.kbpw-widget button.kbpw-cat-scroll:focus,
.kbpw-widget button.kbpw-cat-scroll:active{position:absolute;z-index:3;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;border-radius:50%!important;border:1.5px solid var(--kbpw-accent)!important;background:var(--kbpw-surface)!important;color:var(--kbpw-accent)!important;display:grid!important;place-items:center;padding:0!important;margin:0!important;font-family:Arial,sans-serif!important;font-size:25px!important;font-weight:400!important;line-height:1!important;cursor:pointer;top:37px;outline:0!important;box-shadow:none!important;transition:.2s ease}
.kbpw-widget button.kbpw-cat-scroll:hover,.kbpw-widget button.kbpw-cat-scroll:focus-visible{background:var(--kbpw-accent)!important;color:var(--kbpw-button-text)!important;transform:scale(1.04)}
.kbpw-cat-prev{left:2px}.kbpw-cat-next{right:2px}

.kbpw-menu-products-head{display:flex;align-items:center;justify-content:space-between;padding:34px 0 20px}
.kbpw-menu-products-head h3{font-size:clamp(24px,3vw,38px);font-weight:800}
.kbpw-view-all{color:var(--kbpw-accent)!important;font-weight:700;display:inline-flex;align-items:center;gap:9px}
.kbpw-view-all:hover{color:var(--kbpw-accent-hover)!important}
.kbpw-results-region{position:relative}
.kbpw-results-region.is-loading{opacity:.45;pointer-events:none}
.kbpw-results-region.is-loading:before{content:"";position:absolute;z-index:10;left:50%;top:50px;width:34px;height:34px;margin-left:-17px;border:3px solid rgba(255,255,255,.2);border-top-color:var(--kbpw-accent);border-radius:50%;animation:kbpwSpin .75s linear infinite}
@keyframes kbpwSpin{to{transform:rotate(360deg)}}

.kbpw-product-grid{display:grid;grid-template-columns:repeat(var(--kbpw-cols),minmax(0,1fr));gap:var(--kbpw-gap)}
.kbpw-product-card{min-width:0;border:1px solid var(--kbpw-border);background:linear-gradient(180deg,var(--kbpw-surface-alt),var(--kbpw-surface));border-radius:var(--kbpw-radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.kbpw-product-card:hover{transform:translateY(-3px);border-color:var(--kbpw-accent);box-shadow:0 14px 32px rgba(0,0,0,.28)}
.kbpw-product-image{display:block;aspect-ratio:1.25/1;background:#15191a;overflow:hidden}
.kbpw-product-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.kbpw-product-card:hover .kbpw-product-image img{transform:scale(1.035)}
.kbpw-product-body{padding:16px;display:flex;flex-direction:column;flex:1;text-align:center}
.kbpw-product-title{font-size:20px;line-height:1.15;font-weight:800;margin:0 0 7px}
.kbpw-product-title a{color:inherit!important}
.kbpw-product-description{color:var(--kbpw-muted);font-size:14px;line-height:1.45;margin:0 0 10px;min-height:20px}
.kbpw-rating{margin:2px 0 7px;line-height:1}
.kbpw-stars{display:inline-flex;gap:1px;color:var(--kbpw-star);font-size:16px}
.kbpw-stars .is-empty{opacity:.25}.kbpw-stars .is-half{opacity:.68}
.kbpw-price{font-size:20px;font-weight:800;color:var(--kbpw-text);line-height:1.2}
.kbpw-price ins{text-decoration:none}.kbpw-price del{opacity:.55;font-size:.8em}
.kbpw-card-bottom{margin-top:auto}
.kbpw-action-button{min-height:48px;margin-top:14px;background:var(--kbpw-accent)!important;color:var(--kbpw-button-text)!important;border:0!important;border-radius:var(--kbpw-button-radius)!important;display:flex!important;align-items:center;justify-content:center;font-weight:800;font-size:16px;padding:11px 16px;transition:.2s ease;box-shadow:none!important}
.kbpw-action-button:hover{background:var(--kbpw-accent-hover)!important;color:var(--kbpw-button-text)!important}
.kbpw-menu-widget>.kbpw-results-region .kbpw-product-body{text-align:left}
.kbpw-menu-widget>.kbpw-results-region .kbpw-product-title{font-size:18px}
.kbpw-menu-widget>.kbpw-results-region .kbpw-card-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.kbpw-menu-widget .kbpw-action-icon{width:40px!important;height:40px!important;min-height:40px!important;min-width:40px!important;border-radius:50%!important;padding:0!important;margin:0!important;font-size:24px}
.kbpw-menu-widget .kbpw-product-description{display:none}

/* Products toolbar – compact, one row on desktop/tablet, like WooCommerce catalog reference. */
.kbpw-toolbar{display:grid!important;grid-template-columns:minmax(160px,1fr) auto;align-items:center!important;gap:24px!important;margin:0 0 24px!important;width:100%}
.kbpw-result-count{color:var(--kbpw-text);font-size:15px;white-space:nowrap;margin:0!important;align-self:center}
.kbpw-toolbar-controls{display:grid!important;grid-template-columns:280px 205px 205px;gap:14px!important;align-items:center!important;justify-content:end!important;width:auto!important;max-width:100%;margin:0!important}
.kbpw-search-wrap{position:relative!important;display:block!important;width:280px!important;min-width:0!important;max-width:280px!important;margin:0!important;padding:0!important}
.kbpw-search-icon{position:absolute!important;left:15px!important;top:50%!important;transform:translateY(-50%)!important;width:20px!important;height:20px!important;display:block!important;color:var(--kbpw-muted)!important;pointer-events:none;z-index:2;line-height:0!important}
.kbpw-search-icon svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.kbpw-search,.kbpw-category-select,.kbpw-orderby{box-sizing:border-box!important;height:50px!important;min-height:50px!important;max-height:50px!important;border:1px solid var(--kbpw-border)!important;background-color:var(--kbpw-input-bg)!important;color:var(--kbpw-text)!important;border-radius:8px!important;outline:none!important;box-shadow:none!important;font:inherit!important;font-size:14px!important;line-height:1!important;margin:0!important;width:100%!important;max-width:none!important}
.kbpw-search{-webkit-appearance:none!important;appearance:none!important;padding:0 14px 0 46px!important}
.kbpw-search::-webkit-search-decoration,.kbpw-search::-webkit-search-cancel-button,.kbpw-search::-webkit-search-results-button,.kbpw-search::-webkit-search-results-decoration{-webkit-appearance:none}
.kbpw-category-select,.kbpw-orderby{-webkit-appearance:none!important;appearance:none!important;padding:0 42px 0 16px!important;background-image:linear-gradient(45deg,transparent 50%,var(--kbpw-muted) 50%),linear-gradient(135deg,var(--kbpw-muted) 50%,transparent 50%)!important;background-position:calc(100% - 18px) 21px,calc(100% - 13px) 21px!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important;cursor:pointer!important}
.kbpw-search:focus,.kbpw-category-select:focus,.kbpw-orderby:focus{border-color:var(--kbpw-accent)!important;box-shadow:0 0 0 1px var(--kbpw-accent)!important}
.kbpw-search::placeholder{color:var(--kbpw-muted)!important;opacity:.7}
.kbpw-products-title-wrap{margin-bottom:24px}

.kbpw-pagination,.kbpw-load-more-wrap{display:flex;justify-content:center;gap:8px;margin-top:30px}
.kbpw-page-number,.kbpw-load-more{border:1px solid var(--kbpw-border)!important;background:var(--kbpw-surface)!important;color:var(--kbpw-text)!important;border-radius:7px!important;min-width:42px;height:42px;padding:0 14px;cursor:pointer;font:inherit;font-weight:700;box-shadow:none!important}
.kbpw-page-number:hover,.kbpw-page-number.is-current,.kbpw-load-more:hover{background:var(--kbpw-accent)!important;border-color:var(--kbpw-accent)!important;color:var(--kbpw-button-text)!important}
.kbpw-load-more{height:48px;min-width:160px}
.kbpw-no-results{border:1px solid var(--kbpw-border);border-radius:var(--kbpw-radius);background:var(--kbpw-surface);color:var(--kbpw-muted);text-align:center;padding:38px 20px}
.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Tablet: keep catalog columns and toolbar in a single compact row when space permits. */
@media (min-width:768px) and (max-width:1180px){
  .kbpw-category-strip{gap:18px}.kbpw-category-item{min-width:86px}.kbpw-category-circle{width:78px;height:78px}
  .kbpw-toolbar{grid-template-columns:auto 1fr;gap:16px!important}
  .kbpw-toolbar-controls{grid-template-columns:minmax(190px,1.25fr) minmax(150px,.9fr) minmax(150px,.9fr);gap:10px!important;width:100%!important}
  .kbpw-search-wrap{width:100%!important;max-width:none!important}
  .kbpw-product-title{font-size:17px}.kbpw-product-body{padding:13px}.kbpw-price{font-size:17px}.kbpw-action-button{font-size:14px;padding-left:10px;padding-right:10px}
}

@media(max-width:767px){
  .kbpw-widget{--kbpw-gap:12px}.kbpw-main-heading{font-size:31px}.kbpw-main-subtitle{font-size:14px}.kbpw-menu-header{padding:12px 10px 18px}
  .kbpw-categories-shell{padding:4px 31px 22px}.kbpw-category-strip{gap:14px}.kbpw-widget button.kbpw-category-item{min-width:72px!important;gap:6px}.kbpw-category-circle{width:64px;height:64px}.kbpw-category-item strong{font-size:11px}.kbpw-all-text{font-size:14px}
  .kbpw-widget button.kbpw-cat-scroll{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;font-size:19px!important;top:26px}.kbpw-cat-prev{left:0}.kbpw-cat-next{right:0}
  .kbpw-menu-products-head{padding:24px 0 14px}.kbpw-menu-products-head h3{font-size:24px}.kbpw-view-all{font-size:13px}
  .kbpw-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px}.kbpw-product-image{aspect-ratio:1/1}.kbpw-product-body{padding:10px;text-align:center}.kbpw-menu-widget>.kbpw-results-region .kbpw-product-body{text-align:left}
  .kbpw-product-title,.kbpw-menu-widget>.kbpw-results-region .kbpw-product-title{font-size:14px;line-height:1.2;margin-bottom:5px}.kbpw-product-description{font-size:11px;line-height:1.35;margin-bottom:7px;min-height:0}.kbpw-stars{font-size:12px}.kbpw-price{font-size:14px}.kbpw-action-button{min-height:38px;font-size:11px;margin-top:9px;padding:7px}.kbpw-menu-widget .kbpw-action-icon{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;font-size:18px}
  .kbpw-toolbar{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;margin-bottom:16px!important}.kbpw-result-count{font-size:12px;white-space:normal}.kbpw-toolbar-controls{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important;justify-content:stretch!important}.kbpw-search-wrap{grid-column:1/-1!important;width:100%!important;max-width:none!important}.kbpw-search,.kbpw-category-select,.kbpw-orderby{height:44px!important;min-height:44px!important;font-size:12px!important;min-width:0!important;width:100%!important}.kbpw-search-icon{left:13px!important;width:18px!important;height:18px!important}.kbpw-search-icon svg{width:18px;height:18px}.kbpw-search{padding-left:40px!important}.kbpw-category-select,.kbpw-orderby{padding-right:32px!important;background-position:calc(100% - 15px) 18px,calc(100% - 10px) 18px!important}
  .kbpw-pagination{flex-wrap:wrap}.kbpw-page-number{min-width:36px;height:36px}.kbpw-products-title-wrap{margin-bottom:16px}
}
