/*
Theme Name: Kids TV Child
Theme URI: https://kidstv.shop
Description: Kids TV - Custom Child Theme for Hello Elementor
Author: Kids TV
Author URI: https://kidstv.shop
Template: hello-elementor
Version: 1.0.0
License: GNU General Public License v2 or later
Text Domain: kidstv-child
*/

/* ═══════════════════════════════════════════
   KIDS TV — CUSTOM CHILD THEME
   Parent: Hello Elementor
   WooCommerce: 10.7+  |  PHP: 8.2
═══════════════════════════════════════════ */

/* ── GLOBAL VARIABLES ── */
:root {
  --kidstv-pink:        #FF6B9D;
  --kidstv-pink-light:  #FFF0F5;
  --kidstv-pink-mid:    #FFD6E7;
  --kidstv-yellow:      #FFD93D;
  --kidstv-yellow-light:#FFFBEB;
  --kidstv-blue:        #4ECDC4;
  --kidstv-blue-light:  #F0FFFE;
  --kidstv-purple:      #A78BFA;
  --kidstv-purple-light:#F5F3FF;
  --kidstv-orange:      #FF8C42;
  --kidstv-green:       #6BCB77;
  --kidstv-text:        #1A1A2E;
  --kidstv-muted:       #6B7280;
  --kidstv-border:      #E8E4DC;
  --kidstv-offwhite:    #F8F6F2;
  --kidstv-radius:      16px;
  --kidstv-radius-sm:   10px;
}

/* ── TYPOGRAPHY ── */
body {
  font-family: 'Tajawal', 'Arial', sans-serif !important;
  color: var(--kidstv-text) !important;
  background: #fff !important;
}

h1, h2, h3, h4, h5, h6,
.elementor-heading-title {
  font-family: 'Fredoka One', 'Arial', cursive !important;
  color: var(--kidstv-text) !important;
}

/* ── HEADER / NAV ── */
.site-header,
header.e-con,
.e-con.e-parent:first-child {
  background: #fff !important;
  border-bottom: 2px solid var(--kidstv-border) !important;
  box-shadow: 0 2px 20px rgba(0,0,0,.06) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 999 !important;
}

.site-logo img { height: 48px !important; width: auto !important; }

/* Nav links */
.elementor-nav-menu a,
nav a {
  font-family: 'Tajawal', sans-serif !important;
  font-weight: 700 !important;
  color: var(--kidstv-muted) !important;
  font-size: .92rem !important;
  padding: 8px 14px !important;
  border-radius: var(--kidstv-radius-sm) !important;
  transition: all .2s !important;
}
.elementor-nav-menu a:hover, nav a:hover {
  color: var(--kidstv-text) !important;
  background: var(--kidstv-offwhite) !important;
}

/* ── BUTTONS — GLOBAL ── */
.elementor-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
button[type="submit"] {
  background: var(--kidstv-pink) !important;
  color: #fff !important;
  font-family: 'Fredoka One', cursive !important;
  font-size: 1rem !important;
  border: none !important;
  border-radius: var(--kidstv-radius-sm) !important;
  padding: 12px 28px !important;
  transition: all .28s !important;
  cursor: pointer !important;
  letter-spacing: .3px !important;
}
.elementor-button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
  background: #E5598A !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(255,107,157,.35) !important;
}

/* Add to cart button */
.woocommerce button.button.alt,
.single_add_to_cart_button {
  background: var(--kidstv-pink) !important;
  border-radius: var(--kidstv-radius-sm) !important;
  font-family: 'Fredoka One', cursive !important;
  font-size: 1.05rem !important;
  padding: 14px 32px !important;
}

/* ── WOOCOMMERCE — SHOP PAGE ── */

/* Product grid */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
  gap: 20px !important;
}

/* Product card */
.woocommerce ul.products li.product {
  background: #fff !important;
  border: 2px solid var(--kidstv-border) !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  transition: all .35s cubic-bezier(.175,.885,.32,1.275) !important;
  padding: 0 !important;
  margin: 0 !important;
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-8px) !important;
  border-color: var(--kidstv-pink-mid) !important;
  box-shadow: 0 16px 40px rgba(0,0,0,.1) !important;
}

/* Product image */
.woocommerce ul.products li.product .woocommerce-loop-product__link img {
  border-radius: 0 !important;
  transition: transform .5s !important;
}
.woocommerce ul.products li.product:hover .woocommerce-loop-product__link img {
  transform: scale(1.04) !important;
}

/* Product title */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Tajawal', sans-serif !important;
  font-size: .95rem !important;
  font-weight: 800 !important;
  color: var(--kidstv-text) !important;
  padding: 12px 14px 4px !important;
  margin: 0 !important;
}

/* Price */
.woocommerce ul.products li.product .price {
  font-family: 'Fredoka One', cursive !important;
  font-size: 1.15rem !important;
  color: var(--kidstv-pink) !important;
  padding: 0 14px 12px !important;
  display: block !important;
}
.woocommerce ul.products li.product .price del {
  color: var(--kidstv-muted) !important;
  font-size: .85rem !important;
  margin-left: 6px !important;
}

/* Add to cart on product card */
.woocommerce ul.products li.product .button {
  margin: 0 14px 14px !important;
  width: calc(100% - 28px) !important;
  text-align: center !important;
  border-radius: var(--kidstv-radius-sm) !important;
  padding: 10px !important;
  font-size: .88rem !important;
}

/* Sale badge */
.woocommerce span.onsale {
  background: var(--kidstv-pink) !important;
  border-radius: 100px !important;
  font-family: 'Fredoka One', cursive !important;
  font-size: .78rem !important;
  min-height: auto !important;
  min-width: auto !important;
  padding: 4px 12px !important;
  line-height: 1.4 !important;
  top: 10px !important;
  left: auto !important;
  right: 10px !important;
}

/* ── PRODUCT SINGLE PAGE ── */
.woocommerce div.product .product_title {
  font-family: 'Fredoka One', cursive !important;
  font-size: 2rem !important;
  color: var(--kidstv-text) !important;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  font-family: 'Fredoka One', cursive !important;
  font-size: 1.8rem !important;
  color: var(--kidstv-pink) !important;
}
.woocommerce div.product .woocommerce-variation-price .price {
  color: var(--kidstv-pink) !important;
}

/* Variation swatches / size buttons */
.woocommerce-variation-add-to-cart,
.variations select,
.woocommerce div.product form.cart .variations td {
  font-family: 'Tajawal', sans-serif !important;
}
.woocommerce div.product form.cart .button {
  background: var(--kidstv-pink) !important;
  font-family: 'Fredoka One', cursive !important;
  border-radius: var(--kidstv-radius-sm) !important;
  padding: 14px 36px !important;
  font-size: 1.1rem !important;
}

/* Product tabs */
.woocommerce .woocommerce-tabs ul.tabs {
  border-bottom: 2px solid var(--kidstv-border) !important;
  padding: 0 !important;
  margin-bottom: 0 !important;
}
.woocommerce .woocommerce-tabs ul.tabs li {
  border: none !important;
  background: none !important;
  border-radius: var(--kidstv-radius-sm) var(--kidstv-radius-sm) 0 0 !important;
}
.woocommerce .woocommerce-tabs ul.tabs li.active {
  background: var(--kidstv-pink-light) !important;
  border-bottom: 3px solid var(--kidstv-pink) !important;
}
.woocommerce .woocommerce-tabs ul.tabs li a {
  font-family: 'Fredoka One', cursive !important;
  color: var(--kidstv-text) !important;
  font-size: .95rem !important;
}

/* ── WOOCOMMERCE — CART ── */
.woocommerce-cart table.cart th {
  font-family: 'Fredoka One', cursive !important;
  color: var(--kidstv-text) !important;
  background: var(--kidstv-offwhite) !important;
}
.woocommerce-cart .cart_totals h2 {
  font-family: 'Fredoka One', cursive !important;
  color: var(--kidstv-text) !important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
  background: var(--kidstv-pink) !important;
  font-family: 'Fredoka One', cursive !important;
  border-radius: var(--kidstv-radius-sm) !important;
  font-size: 1.1rem !important;
  padding: 16px !important;
}

/* ── WOOCOMMERCE — CHECKOUT ── */
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout h3 {
  font-family: 'Fredoka One', cursive !important;
  color: var(--kidstv-text) !important;
}
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout select,
.woocommerce-checkout textarea {
  border: 2px solid var(--kidstv-border) !important;
  border-radius: var(--kidstv-radius-sm) !important;
  font-family: 'Tajawal', sans-serif !important;
  padding: 10px 14px !important;
  transition: border-color .2s !important;
}
.woocommerce-checkout input:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
  border-color: var(--kidstv-pink) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(255,107,157,.12) !important;
}
#place_order {
  background: var(--kidstv-pink) !important;
  font-family: 'Fredoka One', cursive !important;
  border-radius: var(--kidstv-radius-sm) !important;
  font-size: 1.15rem !important;
  padding: 16px !important;
  width: 100% !important;
  border: none !important;
}

/* ── SHOP SIDEBAR / FILTERS ── */
.widget_layered_nav ul li a,
.widget_price_filter .price_slider_amount,
.widget_product_categories ul li a {
  font-family: 'Tajawal', sans-serif !important;
  color: var(--kidstv-text) !important;
  font-weight: 600 !important;
  transition: color .2s !important;
}
.widget_layered_nav ul li a:hover,
.widget_product_categories ul li a:hover {
  color: var(--kidstv-pink) !important;
}
.widget_price_filter .ui-slider-handle {
  background: var(--kidstv-pink) !important;
  border-color: var(--kidstv-pink) !important;
}
.widget_price_filter .ui-slider-range {
  background: var(--kidstv-pink-mid) !important;
}

/* Widget titles */
.widget-title, .widgettitle, h2.widget-title {
  font-family: 'Fredoka One', cursive !important;
  font-size: 1.1rem !important;
  color: var(--kidstv-text) !important;
  border-bottom: 2px solid var(--kidstv-border) !important;
  padding-bottom: 10px !important;
  margin-bottom: 16px !important;
}

/* ── CATEGORIES SECTION ── */
.product-category.product a img {
  border-radius: 50% !important;
  border: 3px solid var(--kidstv-pink-mid) !important;
  transition: transform .3s !important;
}
.product-category.product:hover a img {
  transform: scale(1.08) !important;
}
.product-category.product .woocommerce-loop-category__title {
  font-family: 'Fredoka One', cursive !important;
  color: var(--kidstv-text) !important;
}

/* ── MINI CART ── */
.widget_shopping_cart .cart_list li {
  border-bottom: 1px solid var(--kidstv-border) !important;
}
.widget_shopping_cart .total {
  font-family: 'Fredoka One', cursive !important;
  color: var(--kidstv-text) !important;
  border-top: 2px solid var(--kidstv-border) !important;
}
.widget_shopping_cart .total .amount {
  color: var(--kidstv-pink) !important;
}
.widget_shopping_cart .buttons a {
  border-radius: var(--kidstv-radius-sm) !important;
  font-family: 'Fredoka One', cursive !important;
}

/* ── NOTICES ── */
.woocommerce-message,
.woocommerce-info {
  border-top-color: var(--kidstv-pink) !important;
  background: var(--kidstv-pink-light) !important;
  color: var(--kidstv-text) !important;
}
.woocommerce-error {
  border-top-color: #E24B4A !important;
}

/* ── PAGINATION ── */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  font-family: 'Fredoka One', cursive !important;
  border-radius: var(--kidstv-radius-sm) !important;
  border: 2px solid var(--kidstv-border) !important;
  color: var(--kidstv-text) !important;
  transition: all .22s !important;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
  background: var(--kidstv-pink) !important;
  border-color: var(--kidstv-pink) !important;
  color: #fff !important;
}

/* ── STAR RATINGS ── */
.woocommerce .star-rating span::before,
.woocommerce .star-rating::before {
  color: var(--kidstv-yellow) !important;
}

/* ── FOOTER ── */
.site-footer,
footer.e-con {
  background: #1A1A2E !important;
  color: rgba(255,255,255,.7) !important;
  padding: 60px 0 24px !important;
}
.site-footer a,
footer.e-con a {
  color: rgba(255,255,255,.6) !important;
  transition: color .2s !important;
}
.site-footer a:hover,
footer.e-con a:hover {
  color: var(--kidstv-yellow) !important;
}
.site-footer h3,
.site-footer h4,
.site-footer .widget-title,
footer.e-con h3,
footer.e-con h4 {
  font-family: 'Fredoka One', cursive !important;
  color: var(--kidstv-yellow) !important;
  font-size: 1rem !important;
  margin-bottom: 16px !important;
}
.site-footer p,
footer.e-con p {
  color: rgba(255,255,255,.5) !important;
  font-size: .88rem !important;
}

/* ── RTL SUPPORT ── */
.rtl .woocommerce span.onsale {
  left: 10px !important;
  right: auto !important;
}
.rtl .woocommerce ul.products li.product .price del {
  margin-right: 6px !important;
  margin-left: 0 !important;
}

/* ── ELEMENTOR WIDGETS OVERRIDES ── */
.elementor-widget-woocommerce-products .woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
  gap: 20px !important;
}

/* ── RESPONSIVE ── */
@media (max-width: 768px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
  .woocommerce div.product .product_title {
    font-size: 1.5rem !important;
  }
}
@media (max-width: 480px) {
  .woocommerce ul.products {
    grid-template-columns: 1fr 1fr !important;
  }
}
