/* MB Club Search Pro styles */
.mbclubpro-wrap{max-width:1100px;margin:0 auto;padding:20px}

/* Filters grid */
.mbclubpro-grid{display:grid;grid-template-columns:3fr 1fr 1fr auto;gap:16px;align-items:end}
.mbclubpro-field{display:flex;flex-direction:column;gap:6px}
.mbclubpro-field label{font-size:14px;color:#374151}
.mbclubpro-field input,.mbclubpro-field select{width:100%;border:1px solid #d1d5db;border-radius:14px;padding:12px;background:#fff;font-size:15px;line-height:1.4}
.mbclubpro-field input:focus,.mbclubpro-field select:focus{outline:none;border-color:#0ea5e9;box-shadow:0 0 0 3px rgba(14,165,233,.2)}

/* Actions */
.mbclubpro-actions{display:flex;gap:10px;align-items:center}
.mbclubpro-btn{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 14px;border-radius:14px;border:1px solid #e5e7eb;background:#fff;cursor:pointer;text-decoration:none}
.mbclubpro-btn.primary{background:#0ea5e9;border-color:#0ea5e9;color:#fff}
.mbclubpro-btn.ghost{background:#fff;border-color:#e5e7eb;color:#111827}
.mbclubpro-clean{display:none}
.mbclubpro-clean.is-visible{display:inline-flex}

/* Top */
.mbclubpro-top{display:flex;justify-content:space-between;align-items:center;margin:12px 0}
.mbclubpro-count{font-weight:400}

/* Cards */
.mbclubpro-grid-cards{display:grid;grid-template-columns:1fr;gap:16px}
.mbclubpro-card{border:1px solid #eee;border-radius:14px;overflow:hidden;background:#fff;display:grid;grid-template-columns: 1fr}
@media (max-width:900px){.mbclubpro-card{grid-template-columns:1fr}}
.mbclubpro-media{width:100%;background:#f8fafc;display:flex;align-items:center;justify-content:center;}
.mbclubpro-media img{max-width:100%;height:auto;display:block;object-fit:contain}
.mbclubpro-noimg{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:160px;color:#9ca3af}

.mbclubpro-body{padding:14px;display:flex;flex-direction:column;gap:6px}
.mbclubpro-title{margin:0;font-weight:800;font-size:1.15rem;line-height:1.25}
.mbclubpro-title a{color:inherit;text-decoration:none}
.mbclubpro-title a:hover{text-decoration:underline}
.mbclubpro-meta{opacity:.85;font-size:.95rem}
.mbclubpro-desc{color:#374151;font-size:.95rem}
.mbclubpro-actions{margin-top:auto;display:flex;justify-content:flex-end}
.mbclubpro-view{display:inline-block;padding:9px 14px;border-radius:14px;background:#0ea5e9;color:#fff;text-decoration:none;border:1px solid #0ea5e9}
.mbclubpro-view:hover{filter:brightness(0.95)}

/* Pager */
.mbclubpro-pager{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:16px 0}
.mbclubpro-pager a{min-width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border:1px solid #ddd;border-radius:8px;background:#fff;text-decoration:none;color:#111827}
.mbclubpro-pager a.is-active{background:#0ea5e9;color:#fff;border-color:#0ea5e9;cursor:default}


/* --- Compact search form (desktop) --- */
.mbclubpro-wrap{padding:14px}
.mbclubpro-field label{font-size:13px}
.mbclubpro-field input,.mbclubpro-field select{padding:10px 10px; min-height:42px; font-size:15px}

/* Separate name from province on desktop */
@media (min-width: 901px){
  .mbclubpro-grid{grid-template-columns:2.5fr 1fr 1fr auto; gap:14px}
  .mbclubpro-grid > .mbclubpro-field:nth-child(2){
    border-left:1px solid #e5e7eb;
    padding-left:16px;
    margin-left:4px;
  }
}

/* --- Mobile tweaks --- */
@media (max-width: 640px){
  .mbclubpro-actions{position:static; padding:0}
  .mbclubpro-btn{min-height:44px; font-weight:600}
  .mbclubpro-list{display:grid; grid-template-columns:1fr; gap:14px}
  .mbclubpro-card{grid-template-columns: 1fr}
  .mbclubpro-thumb img{max-height:160px; object-fit:contain}
}


/* --- Uniform field heights (inputs/selects/buttons) --- */
:root{
  --mbclubpro-field-h: 48px;
}
.mbclubpro-field input[type="text"],
.mbclubpro-field input[type="search"],
.mbclubpro-field select,
.mbclubpro-actions .mbclubpro-btn:not(.mbclubpro-clean),
.mbclubpro-actions .mbclubpro-btn:not(.mbclubpro-clean).primary,
.mbclubpro-actions .mbclubpro-btn:not(.mbclubpro-clean).ghost{
  box-sizing: border-box;
  height: var(--mbclubpro-field-h);
  min-height: var(--mbclubpro-field-h);
  padding: 0 12px;
  font-size: 15px;
}
/* Keep buttons vertically centered text */
.mbclubpro-actions .mbclubpro-btn:not(.mbclubpro-clean){
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

/* Fix Safari/select default height inconsistencies */
.mbclubpro-field input,
.mbclubpro-field select{
  -webkit-appearance: none;
  appearance: none;
}

/* Mobile keeps same height but allows wrap of actions layout */
@media (max-width: 640px){
  :root{ --mbclubpro-field-h: 46px; }
}


/* --- Remove desktop separator between name and province --- */
@media (min-width: 901px){
  .mbclubpro-grid > .mbclubpro-field:nth-child(2){
    border-left: 0 !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
  }
}


/* --- Restore 'Limpiar' button sizing as before --- */
.mbclubpro-actions .mbclubpro-btn.mbclubpro-clean{
  height: auto !important;
  min-height: 0 !important;
  padding: 8px 12px !important;
  font-weight: 500;
}


/* --- Mobile stack order: search, province, city, buttons --- */
@media (max-width: 640px){
  .mbclubpro-grid{
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    grid-template-areas:
      "s"
      "p"
      "c"
      "a";
  }
  .mbclubpro-grid > .mbclubpro-field:nth-child(1){ grid-area: s; } /* Nombre del club */
  .mbclubpro-grid > .mbclubpro-field:nth-child(2){ grid-area: p; } /* Provincia */
  .mbclubpro-grid > .mbclubpro-field:nth-child(3){ grid-area: c; } /* Ciudad */
  .mbclubpro-actions{ grid-area: a; }
}


/* Fill media box with slider wrapper and image without cropping */
.mbclubpro-media > * { width: 100%; }
.mbclubpro-media .mbbe-thumb-link { display:block; width:100%; }
.mbclubpro-media .mbbe-thumb { display:block; width:100%; height:auto; object-fit:contain; }



/* --- Responsive layout for club cards --- */
@media (min-width: 768px){
  .mbclubpro-card{ grid-template-columns: 360px 1fr; }
}
@media (min-width: 1024px){
  .mbclubpro-card{ grid-template-columns: 420px 1fr; }
}



.mbclubpro-media>*{width:100%}
.mbclubpro-media .mbbe-thumb-link{display:block;width:100%}
.mbclubpro-media .mbbe-thumb{display:block;width:100%;height:auto;object-fit:contain}


/* safeguard: prefer gallery sizes */
@media (min-width:1024px){ .mbclubpro-card{ grid-template-columns: 480px 1fr } }
@media (min-width:1366px){ .mbclubpro-card{ grid-template-columns: 520px 1fr } }


/* Hours line under location */
.mbclubpro-meta /* hours reused style */{margin-top:6px;font-size:14px;color:#0f172a}
