body.app-body {
    background: #f5f5f5;
    color: #333;
    min-height: 100vh;
}

.app-shell {
    min-height: 100vh;
}

.content-wrapper {
    background: transparent;
}

.store-card,
.admin-card,
.checkout-card {
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 1rem 2.5rem rgba(39, 48, 67, 0.08);
}

.store-btn-primary {
    background: #bf7b30;
    border-color: #bf7b30;
}

.store-btn-primary:hover {
    background: #a46623;
    border-color: #a46623;
}

.store-card-image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.store-tag {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.7rem;
    border-radius: 999px;
    background: #f4ecdf;
    color: #7a541f;
    font-size: 0.85rem;
    font-weight: 600;
}

.price-highlight {
    color: #1a1a2e;
    font-size: 1.8rem;
    font-weight: 700;
}

.stock-pill {
    display: inline-block;
    border-radius: 999px;
    padding: 0.35rem 0.75rem;
    font-size: 0.8rem;
    font-weight: 600;
}

.stock-pill-in {
    background: #e8f7ee;
    color: #18794e;
}

.stock-pill-low {
    background: #fff4d6;
    color: #9a6700;
}

.filter-card {
    position: sticky;
    top: 1rem;
}

.summary-list {
    display: grid;
    gap: 0.75rem;
}

.summary-line {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.admin-stat {
    min-height: 100%;
    background: linear-gradient(145deg, #fff, #f6f8fb);
}

.admin-stat-value {
    font-size: 2rem;
    font-weight: 700;
    color: #243447;
}

.empty-state {
    border: 1px dashed #ddd;
    border-radius: 1rem;
    background: #fff;
}

.form-control:focus,
.form-select:focus {
    border-color: #e85d04;
    box-shadow: 0 0 0 0.2rem rgba(232, 93, 4, 0.15);
}

/* AdminLTE overrides for clean look */
.main-footer {
    margin-left: 0 !important;
}
