.marketplace-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:24px}.marketplace-strip button{text-align:left;border:1px solid #e0e6d9;border-radius:8px;background:white;padding:17px 20px}.marketplace-strip b{font-size:16px;display:block}.marketplace-strip span{display:block;color:#8a9683;font-size:11px;margin-top:7px}.browse-controls{display:flex;gap:12px}.browse-controls label{display:grid;gap:5px;font-size:10px;color:#88917f}.browse-controls select{font-size:12px}.image-unavailable{height:100%;width:100%;min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#eef0e9;color:#9aa492;font-size:36px}.image-unavailable[hidden]{display:none}.image-unavailable span{font-size:11px;margin-top:13px;letter-spacing:1px}.virtual-card .image-unavailable{background:#e7ecf5;color:#8896b2}.detail-photo{min-width:0}.detail-photo img{width:100%;height:100%;max-height:350px;object-fit:contain}.detail-photo .image-unavailable{min-height:260px}.jump-label{font-size:11px;display:flex;align-items:center;gap:7px}.jump-label input{width:62px;padding:8px}.pagination{flex-wrap:wrap;gap:14px}.photo-grid .productimg .tag{max-width:75%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media(max-width:700px){.marketplace-strip{gap:8px}.marketplace-strip button{padding:12px}.marketplace-strip b{font-size:13px}.marketplace-strip span{font-size:10px;line-height:1.8}.browse-controls{gap:8px}.browse-controls select{padding:9px;max-width:135px}.section-title{flex-wrap:wrap}.pagination{gap:10px}.pagination button{padding:10px}.pagination span{font-size:10px}.jump-label{font-size:10px}.jump-label input{width:52px}.image-unavailable{min-height:160px}}
/* Keep long source titles inside their own space and align every card's price. */
:is(#products,#virtualproducts) .card{display:flex;flex-direction:column;min-width:0}
:is(#products,#virtualproducts) .productimg{flex-shrink:0}
:is(#products,#virtualproducts) .card-body{display:flex;flex-direction:column;flex:1;min-width:0;padding:16px;gap:9px}
:is(#products,#virtualproducts) .card-body>small{display:block;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
:is(#products,#virtualproducts) .card h3{font-size:14px;font-weight:500;line-height:1.65;height:4.95em;min-height:4.95em;max-height:4.95em;margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;overflow-wrap:anywhere}
:is(#products,#virtualproducts) .card-body>.price{display:flex;align-items:baseline;flex-wrap:wrap;gap:3px;margin:0;min-height:1.4em;line-height:1.4;font-size:23px;font-variant-numeric:tabular-nums;flex-shrink:0}
:is(#products,#virtualproducts) .price small{font-size:10px;line-height:1.4;color:inherit;font-weight:500}
:is(#products,#virtualproducts) .meta{margin-top:auto;padding-top:12px;gap:8px;line-height:1.5;align-items:flex-end}
:is(#products,#virtualproducts) .meta span:first-child{min-width:0;flex:1}
:is(#products,#virtualproducts) .meta span:last-child{white-space:nowrap;flex-shrink:0}
@media(max-width:480px){:is(#products,#virtualproducts) .card-body{padding:12px;gap:8px}:is(#products,#virtualproducts) .card h3{font-size:12px}:is(#products,#virtualproducts) .card-body>.price{font-size:20px}:is(#products,#virtualproducts) .price small{font-size:9px}:is(#products,#virtualproducts) .meta{font-size:9px;gap:4px}}
@media(max-width:480px){:is(#products,#virtualproducts) .card-body>.price{display:block;line-height:1.25;min-height:2.1em}:is(#products,#virtualproducts) .price small:first-child{display:block;margin-bottom:3px;line-height:1.4}}
