/* Galeri UMKM — panel petugas dan Portal Warga. Kartu produk
   mengikuti pola e-commerce: foto persegi, harga menonjol,
   harga asal tercoret, lencana diskon. Warna mengikuti tema. */
.mkt-price{font-weight:700;font-size:1.05rem;color:var(--text)}
.mkt-was{color:var(--muted);text-decoration:line-through;font-size:.82rem;margin-left:.35rem}
.mkt-off{display:inline-block;background:#d92d20;color:#fff;font-size:.72rem;font-weight:700;border-radius:6px;padding:.1rem .4rem;margin-left:.4rem;vertical-align:middle}
.mkt-per{color:var(--muted);font-size:.85rem}
.mkt-chip{display:inline-block;font-size:.75rem;font-weight:600;border-radius:999px;padding:.15rem .6rem;background:var(--soft);color:var(--text)}
.mkt-chip.menunggu{background:#fef0c7;color:#93370d}
.mkt-chip.tayang{background:#d1fadf;color:#05603a}
.mkt-chip.ditolak{background:#fee4e2;color:#912018}
.mkt-chip.diturunkan{background:#fee4e2;color:#912018}
.mkt-chip.diarsipkan{background:var(--soft);color:var(--muted)}
.mkt-chip.habis{background:#eaecf0;color:#344054}
.mkt-chip.bumdes{background:#e0eaff;color:#1849a9}

/* Portal Warga: kisi produk saya */
.gl-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}
@media (min-width:760px){.gl-grid{grid-template-columns:repeat(3,1fr)}}
.gl-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.gl-card a{color:inherit;text-decoration:none}
.gl-thumb{aspect-ratio:1/1;background:var(--soft);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.85rem;overflow:hidden}
.gl-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.gl-body{padding:.6rem .7rem .75rem;display:flex;flex-direction:column;gap:.3rem}
.gl-name{font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.gl-meta{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}
.gl-empty{border:1px dashed var(--line);border-radius:12px;padding:1.2rem;text-align:center;color:var(--muted)}

/* Foto di rincian warga */
.gl-photos{display:flex;flex-wrap:wrap;gap:.5rem;margin:.5rem 0}
.gl-photo{position:relative;width:96px;height:96px;border-radius:10px;overflow:hidden;border:1px solid var(--line)}
.gl-photo img{width:100%;height:100%;object-fit:cover;display:block}
.gl-photo button{position:absolute;top:4px;right:4px;border:0;border-radius:999px;background:rgba(0,0,0,.65);color:#fff;width:24px;height:24px;line-height:1;cursor:pointer}
.gl-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem}

/* Dialog buatan aplikasi (pola yang sama dengan Inventaris) */
.mkt-confirm{max-width:26rem}
.mkt-confirm h2{margin:0 0 .4rem;font-size:1.05rem}
.mkt-confirm p{margin:0 0 .8rem}
.mkt-confirm .action-buttons{display:flex;gap:.5rem;justify-content:flex-end;flex-wrap:wrap}
.mkt-field{margin:.6rem 0}
.mkt-field label{display:block;font-weight:600;margin-bottom:.3rem}
.mkt-field input,.mkt-field select,.mkt-field textarea{width:100%}

/* Panel petugas */
.mkt-channel{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:12px;padding:.8rem 1rem;margin-bottom:1rem}
.mkt-channel p{margin:.15rem 0 0}
.mkt-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin:.8rem 0}
.mkt-filters input[type="search"]{flex:1 1 220px;width:auto}
.mkt-filters select{flex:0 1 200px;width:auto}
.mkt-list{display:flex;flex-direction:column;gap:.6rem}
.mkt-row{border:1px solid var(--line);border-radius:12px;padding:.7rem .9rem;display:flex;flex-wrap:wrap;gap:.7rem;align-items:flex-start;justify-content:space-between}
.mkt-row-main{min-width:220px;flex:1 1 320px}
.mkt-row-main .gl-name{font-size:1rem}
.mkt-row-actions{display:flex;flex-wrap:wrap;gap:.4rem}
.mkt-photos{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.4rem}
.mkt-photos button{border:1px solid var(--line);background:none;border-radius:8px;padding:0;overflow:hidden;width:56px;height:56px;cursor:pointer}
.mkt-photos img{width:100%;height:100%;object-fit:cover;display:block}
.mkt-form{border:1px solid var(--line);border-radius:12px;padding:1rem;margin-top:1rem}
.mkt-form h3{margin-top:0}
.mkt-grid2{display:grid;grid-template-columns:1fr;gap:.6rem}
@media (min-width:760px){.mkt-grid2{grid-template-columns:1fr 1fr}}
.mkt-note{border:1px solid #f5d48f;background:#fffaeb;color:#664d03;border-radius:10px;padding:.6rem .8rem;margin:.6rem 0}
.gl-shop{border:1px solid var(--line);border-radius:12px;padding:.9rem 1rem;margin:0 0 1rem;background:var(--panel)}
.gl-shop h3{margin:0 0 .3rem}
.gl-shop-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}
.gl-shop-row input{flex:1 1 240px;min-height:44px}
.gl-shop-row button{flex:0 0 auto}
#gl-shop-msg{margin:.5rem 0 0;color:var(--muted)}
