/* Filters stacked */
.gest-row { display:flex; flex-direction:column; gap:8px; margin-bottom:12px; }
.gest-search, .gest-category, .gest-btn { width:100%; box-sizing:border-box; }
.gest-btn { padding:10px; background:#0073aa; color:#fff; border:0; border-radius:4px; cursor:pointer; }

/* product layout */
.gest-product { display:flex; border:1px solid #ddd; border-radius:6px; margin-bottom:12px; background:#fff; overflow:hidden; align-items:stretch; }
.gest-left { width:25%; min-width:300px; max-width:300px; display:flex; align-items:center; justify-content:center; background:#fafafa; overflow:hidden; }
.gest-left img { width:300px; height:300px; object-fit:cover; display:block; }
.gest-right { width:calc(100% - 300px); padding:12px; box-sizing:border-box; }
.gest-title { margin:0 0 8px; font-size:18px; }

/* stock controls */
.gest-stock { margin-top:12px; display:flex; gap:8px; align-items:center; }
.gest-stock button { padding:6px 10px; background:#0073aa; color:#fff; border:0; border-radius:4px; cursor:pointer; }
.gest-stock-qty { font-weight:bold; min-width:40px; text-align:center; display:inline-block; }

/* pagination */
.gest-pagination { margin-top:12px; text-align:center; }
.gest-page { margin:0 4px; padding:6px 8px; border:1px solid #ddd; background:#fff; border-radius:4px; cursor:pointer; }

/* messages */
.gest-loading, .gest-error, .gest-no-results { padding:12px; text-align:center; }

/* Force text color black inside the widget to override theme */
.gest-widget, .gest-widget *,
.gest-product, .gest-product * {
    color: #000 !important;
}
