/* =======================================================================
   KANO — Large iPhone Fix v2
   Hedef: iPhone 17 Pro Max + 431-480px CSS genişliğindeki cihazlar
   Yükleme: Tüm diğer CSS dosyalarının EN SONUNDA çağır.
   <link rel="stylesheet" href="assets/css/kano_large_iphone_fix.css">
   ======================================================================= */

/* ===================================================================
   BÖLÜM 1 — GLOBAL OVERFLOW (max 480px)
   =================================================================== */
@media (max-width: 480px) {
  html, body { overflow-x: hidden !important; width: 100% !important; }
}

/* ===================================================================
   BÖLÜM 2 — HEADER: 3-SATIRLI GRID (max 480px)

   Satır 1: [LOGO] [SEARCH ─────────────────────]
   Satır 2: [NAV Tasarla / Mağaza / Ortaklık    ] [❤] [🛒]

   HTML yapısı (index.html'den):
   .nav-search-inner
     ├── .header-logo
     ├── .nav-center (nav-links)
     └── .header-actions.header-right
           ├── form.header-search-main
           ├── a.header-icon.header-fav
           └── button.header-cart.header-icon

   ÇÖZÜM: .header-actions.header-right → display:contents
   ile alt elemanlar doğrudan grid öğesi olur.
   =================================================================== */
@media (max-width: 480px) {

  .nav-search-bar .nav-search-inner {
    display: grid !important;
    grid-template-columns: auto 1fr auto auto !important;
    grid-template-rows: auto auto !important;
    grid-template-areas:
      "logo  search search search"
      "nav   nav    fav    cart" !important;
    align-items: center !important;
    column-gap: 10px !important;
    row-gap: 8px !important;
    padding: 10px 14px 6px !important;
    flex-wrap: unset !important;
    justify-content: unset !important;
  }

  .nav-search-bar .header-actions.header-right {
    display: contents !important;
  }

  .nav-search-bar .header-logo              { grid-area: logo   !important; align-self: center !important; }
  .nav-search-bar form.header-search-main   { grid-area: search !important; width: 100% !important; max-width: none !important; flex: none !important; margin: 0 !important; }
  .nav-search-bar .nav-center               { grid-area: nav    !important; min-width: 0 !important; align-self: center !important; }
  .nav-search-bar a.header-fav,
  .nav-search-bar a.header-icon.header-fav  { grid-area: fav    !important; justify-self: end !important; align-self: center !important; }
  .nav-search-bar button.header-cart        { grid-area: cart   !important; justify-self: end !important; align-self: center !important; }

  .nav-search-bar .header-logo img {
    height: 28px !important;
    width: auto !important;
    display: block !important;
  }

  .nav-search-bar form.header-search-main input {
    width: 100% !important;
    height: 42px !important;
    font-size: 15px !important;
    padding: 0 48px 0 14px !important;
    box-sizing: border-box !important;
  }

  .nav-search-bar form.header-search-main button {
    position: absolute !important;
    right: 8px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 36px !important;
    height: 36px !important;
  }

  .nav-search-bar .nav-center { overflow: hidden !important; }

  .nav-search-bar .nav-links {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding: 4px 0 6px !important;
  }
  .nav-search-bar .nav-links::-webkit-scrollbar { display: none !important; }

  .nav-search-bar .nav-link {
    font-size: 15px !important;
    white-space: nowrap !important;
    padding: 6px 12px !important;
    flex-shrink: 0 !important;
  }

  .nav-search-bar .nav-b2b-badge { font-size: 11px !important; padding: 2px 5px !important; }

  .nav-search-bar .nav-submenu { display: none !important; }

  .nav-search-bar .header-icon,
  .nav-search-bar .header-cart {
    width: 42px !important;
    height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
  }

  .nav-search-bar .header-icon .ui-ico,
  .nav-search-bar .header-cart .ui-ico {
    width: 24px !important;
    height: 24px !important;
  }

  .nav-search-bar button.header-cart { position: relative !important; }
  .nav-search-bar .cart-badge {
    position: absolute !important;
    top: 2px !important;
    right: 2px !important;
  }
}

/* ===================================================================
   BÖLÜM 3 — UTILITY BAR (max 480px)
   =================================================================== */
@media (max-width: 480px) {
  .utility-bar .utility-inner {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding: 6px 14px !important;
  }
  .utility-bar .utility-inner::-webkit-scrollbar { display: none !important; }
  .utility-bar .utility-link { font-size: 12px !important; white-space: nowrap !important; }
  .utility-bar .ui-ico       { width: 14px !important; height: 14px !important; }
}

/* ===================================================================
   BÖLÜM 4 — HERO SLIDER (431-480px)
   =================================================================== */
@media (min-width: 431px) and (max-width: 480px) {

  .hero-slider .hero-slider-inner { height: 500px !important; }

  .hero-slider .hero-overlay {
    left: 18px !important;
    right: 18px !important;
    top: auto !important;
    bottom: 110px !important;
    transform: none !important;
    max-width: none !important;
  }

  .hero-slider .hero-overlay h1 {
    font-size: 46px !important;
    line-height: 0.93 !important;
    max-width: 100% !important;
  }

  .hero-slider .hero-overlay p {
    font-size: 14px !important;
    line-height: 1.4 !important;
    margin-bottom: 18px !important;
  }

  .hero-slider .hero-buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
  }

  .hero-slider .hero-buttons .btn {
    flex: 1 1 140px !important;
    height: 50px !important;
    font-size: 15px !important;
    justify-content: center !important;
  }

  .hero-nav { display: none !important; }
}

/* ===================================================================
   BÖLÜM 5 — SAYFA İÇERİĞİ (431-480px)
   =================================================================== */
@media (min-width: 431px) and (max-width: 480px) {

  .home-products-row .product-card,
  .home-products-row .product-card.product-card--home {
    min-width: 74% !important;
    max-width: 74% !important;
  }

  section#product-list.store-grid,
  .store-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    padding: 0 14px !important;
  }

  .gift-custom-inner {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .about-inner,
  .usp-inner,
  .footer-info-inner,
  .bulk-top-inner {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .about-heading { font-size: 36px !important; }
  .usp-title     { font-size: 18px !important; }

  .trust-card { min-width: 80% !important; max-width: 80% !important; }

  .volume-grid { flex-direction: column !important; row-gap: 14px !important; }
  .volume-container { padding: 0 16px !important; }

  .kano-benefits-inner { padding: 0 14px 12px !important; scroll-padding-left: 14px !important; }
  .kano-benefit-item   { flex: 0 0 234px !important; }

  .promo-bar .promo-inner { padding: 10px 14px !important; gap: 8px !important; }
  .promo-bar .promo-text,
  .promo-bar .promo-timer { font-size: 12.5px !important; }
  .promo-bar .promo-cta   { font-size: 12.5px !important; padding: 7px 10px !important; }
}

/* ===================================================================
   BÖLÜM 6 — TASARLA SAYFASI HEADER (431-480px)
   =================================================================== */
@media (min-width: 431px) and (max-width: 480px) {

  header.site-header .nav-search-bar .nav-search-inner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    padding: 8px 14px !important;
    min-height: 56px !important;
    grid-template-columns: unset !important;
    grid-template-areas: unset !important;
  }

  header.site-header .nav-center { display: none !important; }

  header.site-header .header-actions.header-right {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 14px !important;
    width: auto !important;
  }

  body.kano-v18-mobile-dock .designer-editor,
  body.kano-v18-mobile-dock .designer-center {
    height: calc(100dvh - 56px - 78px - env(safe-area-inset-bottom)) !important;
    overflow: hidden !important;
  }

  body.kano-v18-mobile-dock .designer-center {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }
}

/* ===================================================================
   BÖLÜM 7 — SEPET + START MODAL (431-480px)
   =================================================================== */
@media (min-width: 431px) and (max-width: 480px) {

  .cart-drawer { width: 100% !important; max-width: 100% !important; }

  .kano-start-modal { padding: 16px !important; }

  .kano-start-modal-card {
    width: calc(100vw - 32px) !important;
    padding: 22px 20px 20px !important;
  }
}

/* ===================================================================
   BÖLÜM 8 — TASARLA SAYFASI SEARCH BUTONU HİZALAMA FIX (431-480px)
   Sebep: Tasarla header'ında form içinde input yok, sadece buton var.
   Bölüm 2'nin "position:absolute + top:50%" kuralı form position:relative
   olmadığından butonu en üste kaçırıyor.
   =================================================================== */
@media (max-width: 480px) {

  /* form'a relative ver ki buton içine sığsın */
  header.site-header .nav-search-bar form.header-search-main {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Butonu form içinde tam ortala — absolute'u sıfırla */
  header.site-header .nav-search-bar form.header-search-main button {
    position: static !important;
    top: unset !important;
    right: unset !important;
    transform: none !important;
    width: 40px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
  }
}