/* ================================================
   STORES LIST PAGE - FIXED CSS
   ================================================ */

/* ===== CSS Variables ===== */
:root {
  --rukn-orange: #ff7a18;
  --rukn-orange-light: #fdba74;
  --rukn-green: #16a34a;
  --rukn-green-dark: #166534;
  --rukn-green-light: #dcfce7;
}

/* ===== Base Styles ===== */
body {
  background: #ffffff !important;
  font-family: 'Cairo', sans-serif;
}

/* ===== Utility Classes ===== */
.shadow-soft {
    box-shadow: 0 12px 30px rgba(0,0,0,.08);
}

.card-hover {
    transition: .35s ease;
}

.card-hover:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(0,0,0,.12);
}

.orange-top-border {
    border-top: 5px solid #f97316;
}

/* ===== Scrollbar Hide (Mobile) ===== */
.scrollbar-hide::-webkit-scrollbar {
  display: none;
}

.scrollbar-hide {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

/* ===== Category Chips ===== */
.category-chip {
  padding: 10px 18px;
  border-radius: 999px;
  border: 1px solid #e5e7eb;
  white-space: nowrap;
  font-weight: 700;
  cursor: pointer;
  transition: .25s ease;
  background: white;
}

.category-chip.active {
  background: var(--rukn-orange);
  color: white;
  border-color: var(--rukn-orange);
}

.category-chip:hover:not(.active) {
  border-color: var(--rukn-orange);
  background: rgba(255, 122, 24, 0.05);
}

/* ===== Buttons ===== */
.btn-orange {
  background: var(--rukn-orange);
  color: #fff;
  transition: all 0.3s;
}

.btn-orange:hover {
  background: #f97316;
}

.btn-orange:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* ===== Stores Grid ===== */
#storesGrid {
    display: grid;
    gap: 1.25rem;
}

/* ===== Store Card ===== */
.store-card {
    background: #ffffff;
    border: 2px solid #f1f5f9;
    border-radius: 24px;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

.store-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px -12px rgba(0, 0, 0, 0.08);
    border-color: var(--rukn-orange);
}

/* ✅ REMOVED: Orange triangle ::after pseudo-element */

/* Store card icon sizing */
.store-card svg {
    width: 14px;
    height: 14px;
}

/* ===== Logo Container (Desktop) ===== */
.store-card .z-10 {
    width: 85px !important;
    height: 85px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05) !important;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

/* Logo hover effect (Desktop) */
.store-card:hover .z-10 {
    transform: translateX(-50%) scale(1.1) !important;
    box-shadow: 0 10px 20px rgba(0,0,0,0.1) !important;
    z-index: 20;
}

/* ===== Mobile Responsive ===== */
@media (max-width: 640px) {
    #storesGrid {
        display: flex;
        flex-direction: column;
        gap: 25px;
        padding: 0 5px;
    }

    .store-card {
        flex-direction: row !important;
        height: 180px !important;
        align-items: stretch;
        border-radius: 20px;
    }

    .store-card .relative.w-28 {
        width: 130px !important;
        height: auto !important;
        background: transparent !important;
        border: none !important;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .store-card .z-10 {
        width: 100px !important;
        height: 100px !important;
        position: static !important;
        transform: none !important;
    }

    .store-card:hover .z-10 {
        transform: scale(1.1) !important;
    }

    .store-card .flex-1 {
        padding: 20px 15px !important;
        display: flex;
        flex-direction: column;
        justify-content: space-around;
    }

    .store-card h4 {
        font-size: 1.2rem !important;
    }

    .store-card p {
        font-size: 0.9rem !important;
        -webkit-line-clamp: 2 !important;
    }
}

/* ===== No Results State ===== */
#noResults {
    text-align: center;
    padding: 5rem 1rem;
    color: #94a3b8;
}

#noResults .text-5xl {
    font-size: 3rem;
    margin-bottom: 1rem;
}

/* ===== HTMX Loading Indicators ===== */
.htmx-request .htmx-indicator {
    display: inline-block;
}

.htmx-indicator {
    display: none;
}

.htmx-request #storesGrid {
    opacity: 0.6;
    pointer-events: none;
}