/* Basic Layout */
.pos-container {
    display: flex;
    height: 100%;
    /* Adjust based on your header height */
    gap: 16px;
    padding: 16px;
    box-sizing: border-box;
    background-color: var(--neutral-layer-1);
    overflow: hidden;
}

.pos-left {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
    /* Fix flex overflow */
    gap: 16px;
}

.pos-right {
    width: 350px;
    display: flex;
    flex-direction: column;
    background-color: var(--neutral-layer-2);
    border-radius: calc(var(--control-corner-radius) * 2px);
    box-shadow: var(--elevation-shadow-card-rest);
    padding: 16px;
    gap: 16px;
}

/* Scrollable Areas */
.pos-scroll-area {
    flex: 1;
    overflow-y: auto;
    padding-right: 8px;
    /* Spacing for scrollbar */
}

/* Scrollbar styling for WebKit */
.pos-scroll-area::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

.pos-scroll-area::-webkit-scrollbar-track {
    background: transparent;
}

.pos-scroll-area::-webkit-scrollbar-thumb {
    background-color: var(--neutral-stroke-rest);
    border-radius: 4px;
}

/* Product Grid (Grid View) */
.pos-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 16px;
    padding-bottom: 20px;
}

/* Product List (List View) */
.pos-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-bottom: 20px;
}

/* Helper utilities */
.w-full {
    width: 100%;
}

.h-full {
    height: 100%;
}

.flex-center {
    display: flex;
    align-items: center;
    justify-content: center;
}

.gap-2 {
    gap: 8px;
}

.text-secondary {
    color: var(--neutral-foreground-rest);
    opacity: 0.7;
}