/* Wondering Imp v0.8.16 — compact marketplace grid, PWA spacing, Wish Radar guidance */

/* Keep the install card breathing evenly between surrounding sections on mobile/PWA. */
.pwa-install-card{margin-top:18px!important;margin-bottom:18px!important}

/* Compact marketplace browsing: Vinted/eBay-style scanning while preserving WI styling. */
.item-grid,
.collection-list.marketplace-sack-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  align-items:start;
}
.item-grid>.empty-state,
.collection-list.marketplace-sack-grid>.empty-state{grid-column:1/-1}

.marketplace-tile{
  position:relative;
  min-width:0;
  overflow:hidden;
  border-radius:15px;
  cursor:pointer;
  background:var(--paper,#fffaf0);
  border:1px solid var(--line,#e1d8c8);
  box-shadow:0 7px 20px rgba(25,50,41,.055);
}
.marketplace-tile:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(25,50,41,.11)}
.marketplace-tile:focus-visible{outline:3px solid rgba(182,138,60,.38);outline-offset:2px}
.marketplace-art-wrap{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;background:#eee8dc}
.marketplace-art-wrap>.product-art{
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  border-radius:0!important;
  display:grid;
  place-items:center;
  overflow:hidden;
  font-size:clamp(45px,6vw,78px);
}
.marketplace-art-wrap>.product-art.has-photo img{width:100%;height:100%;object-fit:cover;border-radius:0!important;display:block}
.marketplace-card-actions{position:absolute;right:9px;bottom:9px;z-index:3}
.marketplace-card-actions .save-item-button{
  width:38px;height:38px;padding:0!important;border-radius:999px!important;
  display:grid;place-items:center;background:rgba(255,250,240,.94)!important;
  box-shadow:0 4px 14px rgba(0,0,0,.18);font-size:0!important
}
.marketplace-card-actions .save-item-button span{font-size:22px!important;line-height:1}
.marketplace-own-badge,.marketplace-reserved-badge{
  position:absolute;left:9px;top:9px;z-index:3;border-radius:999px;padding:6px 9px;
  background:rgba(18,55,47,.91);color:#f7e2a5;font-size:9px;font-weight:900;letter-spacing:.7px;text-transform:uppercase;
  box-shadow:0 3px 12px rgba(0,0,0,.16)
}
.marketplace-reserved-badge{background:rgba(117,75,16,.92);color:#fff4cf}
.marketplace-video-badge{
  position:absolute;right:9px;top:9px;z-index:3;width:30px;height:30px;border-radius:999px;
  display:grid;place-items:center;background:rgba(18,55,47,.9);color:white;font-size:14px;box-shadow:0 3px 12px rgba(0,0,0,.16)
}
.marketplace-item-body{padding:11px 12px 12px!important;min-width:0}
.marketplace-category{font-size:9px;line-height:1.2;font-weight:900;letter-spacing:.75px;text-transform:uppercase;color:#8a6c2c;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.marketplace-tile h3{font-size:14px!important;line-height:1.28;margin:0!important;color:var(--forest,#17382e);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:36px}
.marketplace-subline{font-size:10px;color:var(--muted,#6d766f);margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.marketplace-price-row{display:flex;align-items:baseline;justify-content:space-between;gap:7px;margin-top:9px;min-width:0}
.marketplace-price-row .value{font-size:14px;color:var(--forest,#17382e)}
.marketplace-owner{font-size:9px;color:var(--muted,#6d766f);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:52%;text-align:right}
.marketplace-want{margin-top:7px;padding-top:7px;border-top:1px solid rgba(120,105,76,.14);font-size:9px;font-weight:800;color:#456255;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.marketplace-tile.user-own{opacity:1}

/* My Sack keeps the same compact visual language, with management controls below. */
.sack-marketplace-tile{cursor:default}
.sack-marketplace-tile .marketplace-art-wrap{cursor:pointer}
.sack-marketplace-tile .marketplace-price-row .status{font-size:8px;padding:4px 6px;max-width:58%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sack-tile-controls{margin-top:10px;padding-top:9px;border-top:1px solid rgba(120,105,76,.14);display:grid;gap:7px}
.sack-tile-controls select{width:100%;height:36px;border:1px solid var(--line,#e1d8c8);border-radius:9px;background:#fffaf2;padding:0 8px;color:var(--ink,#26342e);font-size:10px}
.sack-tile-controls>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.sack-tile-controls button{padding:8px 7px!important;font-size:9px!important;width:100%}

/* Specificity guidance should be noticeable without feeling like a warning. */
.radar-specificity-tip{display:block;margin:-7px 0 13px;padding:10px 11px;border-radius:10px;background:#fff5d8;border:1px solid #ead498;color:#695831;font-size:10px;line-height:1.45;font-weight:700}
.radar-specificity-tip strong{color:#17382e}

/* Signup modal keeps balanced side/bottom breathing room on small phones. */
@media(max-width:780px){
  .item-grid,.collection-list.marketplace-sack-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .pwa-install-card{margin-top:16px!important;margin-bottom:16px!important}
  #authModal{padding-left:14px;padding-right:14px}
  #authModal .modal-card.narrow{margin-left:auto;margin-right:auto}
  .marketplace-item-body{padding:9px 9px 10px!important}
  .marketplace-tile h3{font-size:13px!important;min-height:34px}
  .marketplace-category{font-size:8px}
  .marketplace-subline,.marketplace-want{font-size:8.5px}
  .marketplace-price-row .value{font-size:13px}
  .marketplace-owner{font-size:8px}
  .marketplace-card-actions{right:7px;bottom:7px}
  .marketplace-card-actions .save-item-button{width:36px;height:36px}
  .marketplace-own-badge,.marketplace-reserved-badge{left:7px;top:7px;padding:5px 7px;font-size:8px}
  .marketplace-video-badge{right:7px;top:7px;width:27px;height:27px;font-size:12px}
}
@media(min-width:781px) and (max-width:1180px){
  .item-grid,.collection-list.marketplace-sack-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:390px){
  .item-grid,.collection-list.marketplace-sack-grid{gap:8px}
  .marketplace-item-body{padding:8px!important}
  .marketplace-owner{display:none}
}
