.market-tabs { display:flex; flex-wrap:wrap; gap:.5rem; margin:1rem 0; }
.market-tabs .active { background:#285d48; color:white; }
.market-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:1rem; }
.market-card { border:1px solid #d9e2dc; border-radius:16px; background:white; overflow:hidden; }
.market-card-body,.market-order { padding:1rem; }
.market-card h3 { margin:.7rem 0; overflow-wrap:anywhere; }
.market-photo { width:100%; height:190px; object-fit:cover; display:block; }
.market-photo-preview { max-width:100%; max-height:240px; object-fit:contain; border-radius:10px; }
.market-followup { background:#fff3dc; border-radius:10px; padding:.7rem; }
.market-tags { display:flex; gap:.5rem; flex-wrap:wrap; font-size:.85rem; color:#59675d; }
.market-tags span,.market-status { background:#edf4ee; border-radius:8px; padding:.25rem .5rem; }
.market-status { display:inline-block; font-size:.85rem; }
.market-description { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.6; }
.market-price { font-size:1.3rem; color:#285d48; }
.market-period { background:#f2f6ee; border-radius:10px; padding:.75rem; line-height:1.7; }
.market-card .button-row { display:flex; flex-wrap:wrap; gap:.5rem; }
.market-order-list { display:grid; gap:.8rem; margin-top:1rem; }
.market-time-input { display:grid; grid-template-columns:2fr 1fr; gap:.6rem; }
.market-check { display:flex; align-items:center; gap:.5rem; }
.market-check input { width:auto; }
.market-dialog { max-width:540px; width:min(540px,85vw); }
.market-receipt { border-block:1px solid #d9e2dc; margin-block:1rem; }
[data-market-notice]:empty { display:none; }
@media(max-width:600px) { .market-grid {grid-template-columns:1fr;} .market-dialog {width:82vw;} }
