/* =========================================================
   v23 · Diseño "maqueta v2" para computadora (≥861px).
   Solo estilos: no cambia IDs ni funciones de app.js.
   En celular se mantiene el diseño tipo app de la v22.
   ========================================================= */
.v23-util{display:none}

@media (min-width:861px){
  body{background:#FAFAF7}

  /* ---- Barra superior ---- */
  .v23-util{display:block;background:#1F1535;color:#cfc8e0;font-size:13.5px}
  .v23-util-in{max-width:1240px;margin:0 auto;padding:8px 28px;display:flex;align-items:center;justify-content:space-between;gap:6px 16px;flex-wrap:wrap}
  .v23-util-in span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .v23-util-in b{color:#FFD400;font-weight:600;white-space:nowrap}

  /* ---- Encabezado: logo · zona · buscador · cuenta ---- */
  .mh{background:#FAFAF7;border-bottom:1px solid #ece9e1;box-shadow:none;padding:0}
  .mh .mh-fila.v23-fila1{display:flex;align-items:center;gap:14px;flex-wrap:wrap;max-width:1240px;margin:0 auto;padding:12px 28px;grid-template-columns:none}
  .mh .mh-logo{flex:none;justify-self:auto}
  .mh .mh-logo img{height:40px;width:auto;display:block}
  .mh .mh-zona{flex:none;display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid #e3e0d8;border-radius:13px;padding:6px 14px;color:#241A3D;white-space:nowrap;cursor:pointer}
  .mh .mh-zona:hover{border-color:#E61E8C;background:#fff}
  .mh .mh-zona svg{color:#E61E8C}
  .mh .mh-zona small{color:#8a8498;font-size:11.5px;font-weight:500;line-height:1.1}
  .mh .mh-zona b{font-size:14.5px;line-height:1.2}
  .mh .mh-buscar{flex:1 1 240px;min-width:0;max-width:none;width:auto;display:flex;align-items:stretch;background:#fff;border:1.5px solid #e3e0d8;border-radius:13px;overflow:hidden;height:48px;box-shadow:none;padding:0}
  .mh .mh-buscar input{flex:1;min-width:0;border:0;outline:0;background:transparent;padding:0 16px;font-family:'Inter',sans-serif;font-size:15.5px;color:#241A3D;height:auto}
  .mh .mh-buscar button{flex:none;border:0;border-radius:0;background:#241A3D;color:#fff;width:60px;height:auto;display:grid;place-items:center;cursor:pointer}
  .mh .mh-buscar button:hover{background:#E61E8C}
  .mh .mh-cta{flex:none;display:flex;align-items:center;gap:10px;margin:0}
  .mh .mh-link{color:#241A3D;font-weight:700;font-size:15.5px;padding:11px 8px;white-space:nowrap;cursor:pointer;background:none;border:0}
  .mh .mh-link:hover{color:#E61E8C}
  .mh .mh-link.fuerte{background:#E61E8C;color:#fff;border-radius:13px;padding:11px 20px}
  .mh .mh-link.fuerte:hover{background:#c11974;color:#fff}
  .mh .mh-user{background:#fff;border:1.5px solid #e3e0d8;border-radius:13px;padding:6px 12px 6px 7px}
  .mh .mh-user .av{background:#FFD400;color:#241A3D}

  /* ---- Fila de enlaces ---- */
  .mh .mh-fila.v23-fila2{display:flex;max-width:1240px;margin:0 auto;padding:0 28px 11px;gap:24px;overflow-x:auto}
  .mh .mh-links{display:flex;gap:24px;margin:0;padding:0}
  .mh .mh-links a{color:#241A3D;font-weight:600;font-size:14.5px;opacity:1;white-space:nowrap;cursor:pointer;padding:0}
  .mh .mh-links a:hover{color:#E61E8C}
  .mh .mh-links a.mh-comu{color:#E61E8C}

  /* ---- Accesos rápidos: ícono a la izquierda ---- */
  .accesos{max-width:1184px;margin:22px auto 0!important;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
  .accesos .acc-card{display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;text-align:left;
    background:#fff;border:1px solid #ece9e1;border-radius:16px;padding:14px 16px;box-shadow:none;cursor:pointer}
  .accesos .acc-card:hover{border-color:#E61E8C;box-shadow:0 10px 26px -16px rgba(36,26,61,.3);transform:none}
  .accesos .acc-ic{grid-row:1/3;width:44px;height:44px;border-radius:12px;background:#fde6f1;display:grid;place-items:center;font-size:22px;margin:0}
  .accesos .acc-card:nth-child(1) .acc-ic{background:#eafaf2}
  .accesos .acc-card:nth-child(3) .acc-ic{background:#fff6cc}
  .accesos .acc-card:nth-child(4) .acc-ic{background:#ece9f3}
  .accesos .acc-card b{font-size:15.5px;color:#241A3D;align-self:end;margin:0}
  .accesos .acc-card small{font-size:13px;color:#8a8498;align-self:start;margin:0}

  /* ---- Tarjetas de artículos ---- */
  .mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(212px,1fr));gap:16px}
  .mcard,.mcard.m-gratis,.mcard.m-venta,.mcard.m-trueque{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #ece9e1;border-radius:16px;overflow:hidden;box-shadow:none;transform:none!important}
  .mcard:hover,.mcard:focus-visible{border-color:#E61E8C;box-shadow:0 10px 26px -14px rgba(36,26,61,.28)}
  .mc-foto,.mc-foto.confoto,.mc-foto.sin{margin:0;border-radius:0;aspect-ratio:auto;height:190px;border:0;background:#F4F2EC}
  .mc-foto.sin{background:var(--pastel)}
  #grid .mc-foto img,#grid .mc-foto.confoto img{object-fit:cover!important;width:100%;height:100%}
  .mc-info{padding:13px 14px 15px;gap:7px;display:flex;flex-direction:column;flex:1}
  .mc-tit{font-family:'Inter',sans-serif;font-weight:600;font-size:15.5px;color:#241A3D;line-height:1.25;min-height:0;margin:0}
  .mc-precio,.mc-precio.venta,.mc-precio.gratis,.mc-precio.trueque{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:18px;line-height:1.2;margin:0;background:none}
  .mc-precio.gratis{color:#00945a}
  .mc-precio.venta{color:#c11974}
  .mc-precio.trueque{color:#a88600}
  .mc-linea{display:none}
  .mc-etiquetas{position:absolute;top:10px;left:10px;z-index:2;margin:0;display:flex;gap:6px}
  .mc-pill{font-size:12px;font-weight:700;border-radius:8px;padding:4px 11px;text-transform:uppercase}
  .mc-pill.gratis{background:#00B86B;color:#fff}
  .mc-pill.venta{background:#E61E8C;color:#fff}
  .mc-pill.trueque{background:#FFD400;color:#241A3D}
  .mc-pill.proceso{background:#fff;color:#241A3D}
  .mc-lugar{margin-top:auto;font-size:12.5px;color:#8a8498;line-height:1.4}

  /* ajustes finos */
  .mh .mh-zona span{display:flex;flex-direction:column;max-width:none;overflow:visible}
  .mh .mh-zona b{white-space:nowrap;overflow:visible;text-overflow:clip;max-width:none}
  .panel .filtros{display:flex;flex-wrap:wrap;gap:8px}
  .panel .filtro{white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
  .panel-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px}
  .panel-head>div:first-child{flex:1 1 300px;min-width:0}
}
