/* /App.razor.rz.scp.css */
/* Global styles for the Blazor WebAssembly app */
/* /MainLayout.razor.rz.scp.css */
/* Main layout styles */

/* Cart badge styling - ensure it's not clipped */
.cart-button-container[b-p59xe56o4w] {
    position: relative;
    overflow: visible;
}

.cart-badge[b-p59xe56o4w] {
    position: absolute !important;
    top: -4px !important;
    right: -4px !important;
    background-color: #dc3545 !important; /* Bright red color */
    color: white !important;
    min-width: 18px !important;
    height: 18px !important;
    text-align: center !important;
    z-index: 1000 !important;
    padding: 0 5px !important;
    border-radius: 9px !important;
    font-size: 0.7rem !important;
    font-weight: bold !important;
    line-height: 18px !important;
    box-shadow: 0 2px 4px rgba(220, 53, 69, 0.4) !important;
    border: 2px solid white !important; /* White border to make it stand out */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Ensure header doesn't clip the badge */
.rz-header[b-p59xe56o4w] {
    overflow: visible !important;
}

.rz-header .rz-stack[b-p59xe56o4w] {
    overflow: visible !important;
}

/* Navigation container for horizontal scrolling */
.nav-container[b-p59xe56o4w] {
    flex: 1;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: rgba(0, 0, 0, 0.2) transparent;
}

.nav-container[b-p59xe56o4w]::-webkit-scrollbar {
    height: 4px;
}

.nav-container[b-p59xe56o4w]::-webkit-scrollbar-track {
    background: transparent;
}

.nav-container[b-p59xe56o4w]::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
}

.desktop-nav[b-p59xe56o4w] {
    display: flex;
    flex-wrap: nowrap;
    min-width: fit-content;
    padding-right: 1rem;
}

/* Mobile responsive */
@media (max-width: 768px) {
    /* Make logo smaller on mobile */
    .logo-container[b-p59xe56o4w] {
        flex-shrink: 0;
        min-width: auto;
    }
    
    .logo-container .rz-icon[b-p59xe56o4w] {
        font-size: 20px !important;
    }
    
    .logo-container .rz-text[b-p59xe56o4w] {
        font-size: 1rem !important;
    }
    
    /* Make navigation horizontally scrollable on mobile */
    .nav-container[b-p59xe56o4w] {
        flex: 1;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        margin-left: 0.5rem;
        margin-right: 0.5rem;
        /* Ensure it starts from visible position */
        scroll-padding-left: 0;
    }
    
    .desktop-nav[b-p59xe56o4w] {
        display: flex !important;
        flex-wrap: nowrap;
        min-width: max-content;
        gap: 0.25rem;
        padding-left: 0;
        padding-right: 1rem;
    }
    
    .desktop-nav .rz-button[b-p59xe56o4w] {
        white-space: nowrap;
        flex-shrink: 0;
        font-size: 0.8rem;
        padding: 0.375rem 0.6rem;
        min-width: auto;
    }
    
    .mobile-menu-btn[b-p59xe56o4w] {
        display: block !important;
        flex-shrink: 0;
        margin-left: 0;
    }
    
    /* Fix layout on mobile */
    .rz-layout[b-p59xe56o4w] {
        width: 100% !important;
        max-width: 100vw !important;
    }
    
    .rz-body[b-p59xe56o4w] {
        width: 100% !important;
        max-width: 100vw !important;
        padding: 0 !important;
    }
    
    .rz-content-container[b-p59xe56o4w] {
        width: 100% !important;
        max-width: 100vw !important;
        padding: 0 !important;
    }
    
    /* Fix header padding and layout */
    .rz-header[b-p59xe56o4w] {
        padding: 0.5rem 0.5rem !important;
        overflow-x: visible !important;
    }
    
    .header-container[b-p59xe56o4w] {
        width: 100% !important;
        max-width: 100% !important;
        gap: 0.25rem !important;
        overflow-x: visible !important;
    }
    
    /* Ensure navigation is visible and scrollable */
    .nav-container[b-p59xe56o4w] {
        position: relative;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
    }
    
    /* Add visual indicator for scrolling */
    .nav-container[b-p59xe56o4w]::after {
        content: '';
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        width: 20px;
        background: linear-gradient(to right, transparent, rgba(0, 0, 0, 0.05));
        pointer-events: none;
        z-index: 1;
    }
}

@media (min-width: 769px) {
    .mobile-menu-btn[b-p59xe56o4w] {
        display: none !important;
    }
    
    .nav-container[b-p59xe56o4w] {
        max-width: none;
    }
    
    .desktop-nav[b-p59xe56o4w] {
        display: flex !important;
        flex-wrap: wrap;
    }
}
/* /Pages/Index.razor.rz.scp.css */
/* Mobile responsive styles for Index page */

@media (max-width: 768px) {
    .page-container[b-3s0dyisrcp] {
        padding: 1rem !important;
        width: 100% !important;
        max-width: 100vw !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
    
    .search-container[b-3s0dyisrcp] {
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    
    .search-container .rz-button[b-3s0dyisrcp] {
        width: 100% !important;
        margin-top: 0.5rem;
    }
    
    .search-container .rz-form-field[b-3s0dyisrcp] {
        width: 100% !important;
        max-width: 100% !important;
    }
    
    /* Fix categories container */
    .categories-container[b-3s0dyisrcp] {
        width: 100% !important;
        max-width: 100% !important;
        padding: 1rem !important;
        box-sizing: border-box !important;
    }
    
    .categories-stack[b-3s0dyisrcp] {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: space-between !important;
        align-items: stretch !important;
    }
    
    /* Fix category cards - force 2 per row on mobile */
    .category-card[b-3s0dyisrcp] {
        flex: 0 0 calc(50% - 0.375rem) !important;
        min-width: calc(50% - 0.375rem) !important;
        max-width: calc(50% - 0.375rem) !important;
        width: calc(50% - 0.375rem) !important;
        padding: 0.75rem !important;
        margin: 0 !important;
        margin-bottom: 0.75rem !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
        display: block !important;
    }
    
    /* Override any Radzen inline styles */
    .category-card[style][b-3s0dyisrcp] {
        flex: 0 0 calc(50% - 0.375rem) !important;
        width: calc(50% - 0.375rem) !important;
        max-width: calc(50% - 0.375rem) !important;
    }
    
    .category-card .rz-icon[b-3s0dyisrcp] {
        font-size: 36px !important;
    }
    
    .category-card .rz-text[b-3s0dyisrcp] {
        font-size: 0.875rem !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }
    
    .category-card .rz-stack[b-3s0dyisrcp] {
        width: 100% !important;
        max-width: 100% !important;
    }
    
    /* Fix text sizes */
    .page-container .rz-text[b-3s0dyisrcp] {
        font-size: 0.875rem !important;
    }
    
    .page-container .rz-text[style*="H1"][b-3s0dyisrcp] {
        font-size: 1.5rem !important;
    }
    
    .page-container .rz-text[style*="H3"][b-3s0dyisrcp] {
        font-size: 1.25rem !important;
    }
}
/* /Pages/Orders.razor.rz.scp.css */
/* Mobile responsive styles for Orders page */

@media (max-width: 768px) {
    .page-container[b-6glqc78qqe] {
        padding: 1rem !important;
        width: 100% !important;
        max-width: 100vw !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
    
    .page-container .rz-text[style*="H1"][b-6glqc78qqe] {
        font-size: 1.5rem !important;
    }
}
/* /Pages/Profile.razor.rz.scp.css */
/* Mobile responsive styles for Profile page */

@media (max-width: 768px) {
    .page-container[b-dhws6h8iiz] {
        padding: 1rem !important;
        width: 100% !important;
        max-width: 100vw !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
    
    .page-container .rz-text[style*="H1"][b-dhws6h8iiz] {
        font-size: 1.5rem !important;
    }
}
/* /Pages/Restaurants.razor.rz.scp.css */
/* Mobile responsive styles for Vendors page */

@media (max-width: 768px) {
    .page-container[b-au9wnzd0f4] {
        padding: 1rem !important;
        width: 100% !important;
        max-width: 100vw !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
    
    .restaurants-grid[b-au9wnzd0f4] {
        font-size: 0.875rem;
        width: 100% !important;
        max-width: 100vw !important;
    }
    
    .restaurants-grid .rz-datatable[b-au9wnzd0f4] {
        width: 100% !important;
        max-width: 100vw !important;
        overflow-x: auto;
        display: block;
    }
    
    .restaurants-grid .rz-datatable-wrapper[b-au9wnzd0f4] {
        width: 100% !important;
        max-width: 100vw !important;
        overflow-x: auto;
    }
    
    /* Make columns more mobile-friendly */
    .restaurants-grid .rz-datatable-col[b-au9wnzd0f4] {
        min-width: 120px;
    }
    
    /* Fix text sizes */
    .page-container .rz-text[b-au9wnzd0f4] {
        font-size: 0.875rem !important;
    }
    
    .page-container .rz-text[style*="H1"][b-au9wnzd0f4] {
        font-size: 1.5rem !important;
    }
}
/* /Pages/VendorOrders.razor.rz.scp.css */
/* Vendor Orders Grid Styles */

.vendor-orders-grid[b-v4m5dcfguc] {
    width: 100%;
    overflow-x: auto;
}

/* Responsive grid wrapper */
.vendor-orders-grid .rz-datatable-wrapper[b-v4m5dcfguc] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Better column widths */
.vendor-orders-grid .rz-datatable-col[b-v4m5dcfguc] {
    white-space: nowrap;
}

/* Mobile responsive styles */
@media (max-width: 768px) {
    .vendor-orders-grid[b-v4m5dcfguc] {
        font-size: 0.875rem;
    }
    
    /* Make grid scrollable horizontally on mobile */
    .vendor-orders-grid .rz-datatable-wrapper[b-v4m5dcfguc] {
        overflow-x: auto;
        display: block;
        -webkit-overflow-scrolling: touch;
    }
    
    /* Adjust column widths for mobile */
    .vendor-orders-grid .rz-datatable-col[b-v4m5dcfguc] {
        min-width: 100px;
    }
    
    /* Better spacing */
    .vendor-orders-grid .rz-datatable[b-v4m5dcfguc] {
        width: 100%;
    }
}

/* Tablet and desktop */
@media (min-width: 769px) {
    .vendor-orders-grid[b-v4m5dcfguc] {
        width: 100%;
    }
    
    /* Ensure grid doesn't overflow container */
    .vendor-orders-grid .rz-datatable-wrapper[b-v4m5dcfguc] {
        max-width: 100%;
        overflow-x: auto;
    }
}
