/* Touch-friendly controls (~2× default control height on tablets) */
.pos-ui .btn {
    min-height: 4.75rem;
    padding-left: 1rem;
    padding-right: 1rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.pos-ui .btn-sm {
    min-height: 3.75rem;
    padding-left: 0.85rem;
    padding-right: 0.85rem;
}

/* Cart − / + : extra width (~2×) on top of touch-tall .btn-sm */
.pos-ui .pos-cart-btn.btn-sm {
    min-width: 5.75rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
}

.pos-ui .btn-lg {
    min-height: 5.5rem;
    font-size: 1.25rem;
}

.pos-ui .navbar .btn,
.pos-ui .navbar .btn-sm {
    min-height: 3.25rem;
}

/* Product tiles — background by category */
.pos-tile {
    min-height: 7.5rem;
    cursor: pointer;
    transition: transform 0.08s ease, box-shadow 0.12s ease;
}

button.pos-tile:hover {
    transform: translateY(-2px);
    box-shadow: 0 0.35rem 0.75rem rgba(0, 0, 0, 0.12);
}

.pos-tile-disabled {
    opacity: 0.65;
    cursor: not-allowed;
}

.pos-tile-pizza {
    background: linear-gradient(135deg, #ffe4e1 0%, #ffd4ce 100%);
}

.pos-tile-antipasti {
    background: linear-gradient(135deg, #e8f5e9 0%, #d7efd9 100%);
}

.pos-tile-drinks {
    background: linear-gradient(135deg, #e3f2fd 0%, #d4eafc 100%);
}

.pos-tile-other {
    background: linear-gradient(135deg, #f5f5f5 0%, #e8e8e8 100%);
}

.pos-cart {
    max-height: calc(100vh - 5rem);
    overflow: auto;
}

a.text-decoration-none:hover .pos-station-card {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.12) !important;
    transform: translateY(-2px);
}

.pos-station-card {
    transition: transform 0.1s ease, box-shadow 0.1s ease;
    min-height: 8.5rem;
}

/* Kitchen station: line fully cooked — fade label only; buttons stay strong */
.kitchen-line-text-done {
    opacity: 0.45;
}

/* Quantity readout between +/− aligned to tall buttons */
.pos-ui .pos-qty-pill {
    min-height: 3.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}
