/* Marketplace (circulovicioso.club/marketplace): la grilla de publicaciones y una publicacion */
.mk { margin-top: 16px; }
.mk__cab .caja__cuerpo { padding: 28px; }
.mk__cab .titulo { margin: 8px 0 10px; }
.mk__cab .chico { max-width: 62ch; margin: 0; }
.mk__acciones { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }

.mk__filtros { display: grid; grid-template-columns: 1fr 160px 170px auto; border: 1px solid var(--line); border-top: 0; }
.mk__filtros .input { border: 0; border-right: 1px solid var(--line); min-width: 0; }
.mk__filtros .btn { border: 0; }
.mk__estado { margin: 16px 0 0; }
.mk__estado:empty { display: none; }

.mk__grilla { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 16px; margin-top: 16px; }
.mk-card a { display: flex; flex-direction: column; height: 100%; border: 1px solid var(--line); text-decoration: none; transition: border-color .15s; }
.mk-card a:hover { color: inherit; border-color: var(--accent); }
.mk-card a:hover .mk-card__titulo { color: var(--accent); }
.mk-card__foto { aspect-ratio: 1; background: var(--bg-3); border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: center;
  font: italic 400 12px/1 var(--mono); text-transform: uppercase; color: var(--fg-3); overflow: hidden; }
.mk-card__foto img { width: 100%; height: 100%; object-fit: cover; }
.mk-card__datos { padding: 12px 14px 14px; }
.mk-card__datos p { margin: 0; }
.mk-card__precio { font: 400 20px/1.2 var(--display); }
.mk-card__titulo { margin: 4px 0 6px !important; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.mk-card.is-vendida .mk-card__foto img { opacity: .45; }
.mk-card.is-vendida .mk-card__precio { color: var(--accent); }
.mk__mas { display: flex; justify-content: center; margin-top: 20px; }
/* Las vencidas: aparte, abajo y apagadas */
.mk__vencidas { margin-top: 40px; padding-top: 20px; border-top: 1px solid var(--line-soft); }
.mk__vencidas > .chico { margin: 4px 0 0; }
.mk-card { position: relative; }
.mk-card__sello { position: absolute; top: 8px; left: 8px; padding: 2px 8px; background: var(--bg); border: 1px solid var(--line-soft); color: var(--fg-2); font: italic 400 11px/1.4 var(--mono); text-transform: uppercase; }
.mk-card.is-vencida .mk-card__foto img { filter: grayscale(1) brightness(.55); }
.mk-card.is-vencida a { border-color: var(--line-soft); }
.mk-card.is-vencida .mk-card__precio, .mk-card.is-vencida .mk-card__titulo { color: var(--fg-3); }
.mk-card.is-vencida a:hover .mk-card__foto img { filter: grayscale(.5) brightness(.8); }
.mk-item__aviso { margin: 14px 0 0; color: var(--fg-2); border-color: var(--line-soft); }
.mk-item.is-vencida .mk-item__pista > img { filter: grayscale(1) brightness(.7); }

.mk-item { margin-top: 16px; }
.mk-item__cuerpo { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); }
.mk-item__fotos { min-width: 0; border-right: 1px solid var(--line); background: var(--bg-2); }
.mk-item__cuerpo.sin-fotos { grid-template-columns: 1fr; }
.mk-item__cuerpo.sin-fotos .mk-item__fotos { display: none; }
/* Las fotos grandes: una tira que se desliza con el dedo y se acomoda en cada foto, con flechas a los costados
   y "2 / 5" (marketplace.js). Todas del mismo alto, enteras */
.mk-item__visor { position: relative; }
.mk-item__pista { display: flex; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.mk-item__pista::-webkit-scrollbar { display: none; }
.mk-item__pista > img { display: block; flex: 0 0 100%; width: 100%; height: min(600px, 70vh); object-fit: contain; scroll-snap-align: start; scroll-snap-stop: always; user-select: none; -webkit-user-drag: none; }
.mk-item__pista > img[hidden] { display: none; }
.mk-item__flecha { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; padding: 0; border: 1px solid var(--line-soft); background: rgba(33, 28, 31, .75); color: var(--fg); font: 400 30px/1 var(--mono); cursor: pointer; }
.mk-item__flecha:hover { border-color: var(--accent); color: var(--accent); }
.mk-item__flecha.is-ant { left: 10px; }
.mk-item__flecha.is-sig { right: 10px; }
.mk-item__flecha[hidden], .mk-item__cuenta[hidden] { display: none; }
.mk-item__cuenta { position: absolute; right: 10px; bottom: 10px; padding: 2px 8px; background: rgba(33, 28, 31, .75); color: var(--fg); font-size: 13px; }
/* Las miniaturas en una fila que se desplaza de costado */
.mk-item__miniaturas { display: flex; gap: 8px; padding: 10px; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: thin; border-top: 1px solid var(--line-soft); }
.mk-item__miniaturas:empty { display: none; }
.mk-item__miniaturas button { flex: none; width: 64px; height: 64px; padding: 0; border: 1px solid var(--line-soft); background: none; cursor: pointer; }
.mk-item__miniaturas button.is-actual { border-color: var(--accent); }
.mk-item__miniaturas img { width: 100%; height: 100%; object-fit: cover; }
.mk-item__datos { padding: 24px; }
.mk-item__precio { font: 400 30px/1.1 var(--display); margin: 12px 0 4px; }
.mk-item__texto { margin: 18px 0; white-space: pre-line; overflow-wrap: anywhere; }
.mk-item__texto p { margin: 0 0 12px; }
.mk-item__vendedor { display: flex; align-items: center; gap: 12px; padding: 14px 0; border-top: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); }
.mk-item__vendedor:empty { display: none; }
.mk-item__vendedor p { margin: 0; }
.mk-item__avatar { width: 48px; height: 48px; flex: none; border: 1px solid var(--line); background: var(--bg-3); display: flex; align-items: center; justify-content: center; font: 400 22px/1 var(--display); overflow: hidden; }
.mk-item__avatar img { width: 100%; height: 100%; object-fit: cover; }

@media (max-width: 860px) {
  .mk-item__cuerpo { grid-template-columns: minmax(0, 1fr); }
  .mk-item__fotos { border-right: 0; border-bottom: 1px solid var(--line); }
}
@media (max-width: 720px) {
  .mk__cab .caja__cuerpo, .mk-item__datos { padding: 18px; }
  .mk__filtros { grid-template-columns: 1fr 1fr; }
  .mk__filtros #mk-q { grid-column: 1 / -1; border-right: 0; border-bottom: 1px solid var(--line); }
  .mk__filtros #mk-orden { border-right: 0; }
  .mk__filtros .btn { grid-column: 1 / -1; border-top: 1px solid var(--line); }
  .mk__grilla { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .mk-card__datos { padding: 10px; }
  .mk-card__precio { font-size: 17px; }
  .mk__acciones .btn { flex: 1 1 100%; }
}
.mk__sin-cuenta { margin: 14px 0 0; max-width: 62ch; }
