/* ==========================================================
   BINKU · LAYOUT PROFESIONAL V4
   ========================================================== */

.binku-public-flow{
  --bk-page-max:1180px;
  width:100%;
}

/* Catálogo mantiene su lógica actual */
.binku-public-primary{
  width:100%;
}

/* Zona inferior profesional */
.binku-public-utility-grid{
  width:min(calc(100% - 32px),var(--bk-page-max));
  margin:20px auto 0;
  display:grid;
  grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);
  grid-template-areas:
    "agenda info"
    "reviews reviews"
    "cta cta";
  gap:14px;
  align-items:start;
}

/* Flatten wrappers para que sus hijos entren al grid principal */
.binku-public-info-module,
.binku-public-info-module > .binku-unified-content,
.binku-public-info-module .binku-bottom-content-grid{
  display:contents;
}

.binku-public-agenda-module{
  grid-area:agenda;
  min-width:0;
}

.binku-business-summary-card{
  grid-area:info;
  min-width:0;
}

.comments-card{
  grid-area:reviews;
  min-width:0;
}

.seller-cta{
  grid-area:cta;
}

/* ==========================================================
   AGENDA COMO TARJETA PRINCIPAL
   ========================================================== */

.binku-public-agenda-module .binku-agenda-section,
.binku-public-agenda-module .binku-agenda-wrapper{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

.binku-public-agenda-module .binku-agenda-trigger{
  width:100% !important;
  min-height:188px !important;
  padding:22px !important;
  border:1px solid #e2e6eb !important;
  border-radius:20px !important;
  background:linear-gradient(145deg,#fff 0%,#fafbfc 100%) !important;
  box-shadow:0 10px 28px rgba(15,23,42,.06) !important;
  align-items:flex-start !important;
}

.binku-public-agenda-module .binku-agenda-left{
  align-items:flex-start !important;
  gap:12px !important;
}

.binku-agenda-eyebrow{
  display:block;
  margin-bottom:4px;
  color:#9f1d32;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.binku-public-agenda-module .binku-agenda-text strong{
  font-size:20px !important;
  line-height:1.15 !important;
}

.binku-public-agenda-module .binku-agenda-text small{
  max-width:250px;
  margin-top:6px !important;
  font-size:11px !important;
}

.binku-agenda-trigger-preview{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:17px;
}

.binku-agenda-trigger-preview > span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:6px 8px;
  border-radius:9px;
  background:#f4f6f8;
  color:#59616c;
  font-size:8px;
  font-weight:750;
}

.binku-agenda-trigger-preview i{
  color:#9f1d32;
}

.binku-public-agenda-module .binku-agenda-right{
  width:auto !important;
  height:auto !important;
  flex:0 0 auto !important;
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  padding:7px 9px !important;
  border-radius:10px !important;
  background:#171b20 !important;
  color:#fff !important;
}

.binku-agenda-open-label{
  font-size:8px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.binku-public-agenda-module .binku-agenda-content.open{
  max-height:min(620px,72vh) !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  margin-top:10px !important;
}

/* Al abrir agenda, el botón se compacta */
.binku-public-agenda-module
.binku-agenda-trigger[aria-expanded="true"]{
  min-height:64px !important;
  padding:13px 15px !important;
}

.binku-public-agenda-module
.binku-agenda-trigger[aria-expanded="true"]
.binku-agenda-trigger-preview,
.binku-public-agenda-module
.binku-agenda-trigger[aria-expanded="true"]
.binku-agenda-eyebrow{
  display:none;
}

/* ==========================================================
   INFORMACIÓN + CONECTA
   ========================================================== */

.binku-business-summary-card{
  min-height:188px !important;
  padding:0 !important;
  overflow:hidden !important;
  border:1px solid #e2e6eb !important;
  border-radius:20px !important;
  background:#fff !important;
  box-shadow:0 10px 28px rgba(15,23,42,.06) !important;
}

.binku-business-summary-grid{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(220px,.92fr);
  min-height:188px;
}

.binku-business-summary-pane{
  min-width:0;
  padding:18px 20px;
}

.binku-business-summary-pane--social{
  border-left:1px solid #edf0f3;
  background:#fbfcfd;
}

/* Los cards originales siguen existiendo pero se integran visualmente */
.binku-business-summary-pane > .binku-card{
  min-height:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.binku-business-summary-pane .binku-section-title{
  margin-bottom:12px !important;
}

.binku-business-summary-pane .business-info-timeline{
  display:grid;
  gap:10px;
}

.binku-business-summary-pane .info-timeline-block{
  margin:0 !important;
}

.binku-business-summary-pane .business-links-card__header{
  margin-bottom:12px !important;
}

.binku-business-summary-pane .business-links-card__header h3{
  font-size:17px !important;
}

.binku-business-summary-pane .business-links-card__header p{
  font-size:10.5px !important;
}

.binku-business-summary-pane .delivery-icons{
  gap:9px !important;
}

.binku-business-summary-pane .icon-wrapper{
  width:44px !important;
  height:44px !important;
  border-radius:12px !important;
}

/* ==========================================================
   COMENTARIOS: FRANJA HORIZONTAL COMPACTA
   ========================================================== */

.comments-card{
  min-height:0 !important;
  height:auto !important;
  padding:16px 18px !important;
  border:1px solid #e2e6eb !important;
  border-radius:18px !important;
  box-shadow:0 8px 22px rgba(15,23,42,.045) !important;
  overflow:hidden !important;
}

.comments-card__header{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center !important;
  gap:16px !important;
  margin-bottom:12px !important;
}

.comments-card__title{
  min-width:0;
}

.comments-card__title h3{
  font-size:16px !important;
}

.comments-card__title p{
  margin-top:4px !important;
  font-size:10px !important;
}

.comments-card__actions{
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  white-space:nowrap;
}

.comments-card__list{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:10px !important;
  margin:0 !important;
  padding:2px 1px 8px !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scrollbar-width:thin;
}

.comments-card__list > [class*="col-"]{
  flex:0 0 210px !important;
  width:210px !important;
  max-width:210px !important;
  padding:0 !important;
}

.comments-card__pagination{
  margin-top:8px !important;
}

/* ==========================================================
   CTA
   ========================================================== */

.binku-public-utility-grid .seller-cta{
  width:100% !important;
  margin:0 !important;
}

/* ==========================================================
   Catálogos pequeños
   ========================================================== */

@media (min-width:768px){
  .binku-catalog--sparse .catalog-products-row--sparse{
    justify-content:flex-start !important;
    gap:12px !important;
  }

  .binku-catalog--sparse
  .catalog-products-row--sparse
  .catalog-product-column{
    flex:0 0 210px !important;
    width:210px !important;
    max-width:210px !important;
  }
}

/* ==========================================================
   TABLET
   ========================================================== */

@media (max-width:991.98px){
  .binku-public-utility-grid{
    width:min(calc(100% - 20px),900px);
    grid-template-columns:1fr;
    grid-template-areas:
      "agenda"
      "info"
      "reviews"
      "cta";
    gap:11px;
  }

  .binku-public-agenda-module .binku-agenda-trigger{
    min-height:132px !important;
  }

  .binku-business-summary-grid{
    grid-template-columns:1fr 1fr;
  }
}

/* ==========================================================
   MÓVIL
   ========================================================== */

@media (max-width:575.98px){
  .binku-public-utility-grid{
    width:calc(100% - 16px);
  }

  .binku-public-agenda-module .binku-agenda-trigger{
    min-height:112px !important;
    padding:15px !important;
  }

  .binku-agenda-trigger-preview{
    display:none;
  }

  .binku-agenda-open-label{
    display:none;
  }

  .binku-business-summary-grid{
    grid-template-columns:1fr;
  }

  .binku-business-summary-pane{
    padding:14px;
  }

  .binku-business-summary-pane--social{
    border-left:0;
    border-top:1px solid #edf0f3;
  }

  .comments-card__header{
    grid-template-columns:1fr !important;
  }

  .comments-card__actions{
    justify-content:flex-start;
  }

  .comments-card__list > [class*="col-"]{
    flex-basis:185px !important;
    width:185px !important;
    max-width:185px !important;
  }
}


/* ==========================================================
   BINKU · AJUSTES FINALES V5
   Comentarios legibles + cabecera de agenda compacta
   ========================================================== */

/* ----------------------------------------------------------
   COMENTARIOS: recuperar información completa
   ---------------------------------------------------------- */
.comments-card__list{
  gap:12px !important;
  padding:4px 2px 9px !important;
}

.comments-card__list > [class*="col-"]{
  flex:0 0 300px !important;
  width:300px !important;
  max-width:300px !important;
}

.binku-review-card{
  min-height:104px;
  border:1px solid #edf0f3 !important;
  border-radius:15px !important;
  background:#fff;
}

.binku-review-card__image{
  width:82px;
  height:104px;
  flex:0 0 82px;
  overflow:hidden;
  background:#f5f7f8;
}

.binku-review-card__image img{
  width:100% !important;
  height:100% !important;
  display:block;
  object-fit:cover !important;
}

.binku-review-card__body{
  min-width:0;
  padding:11px 12px !important;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.binku-review-card__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:9px;
  margin-bottom:5px;
}

.binku-review-card__name{
  min-width:0;
  color:#172033;
  font-size:12px;
  font-weight:850;
  line-height:1.25;
  white-space:normal;
  overflow-wrap:anywhere;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}

.binku-review-card__date{
  flex:0 0 auto;
  padding-top:1px;
  color:#8a939f;
  font-size:8.5px;
  white-space:nowrap;
}

.binku-review-card__text{
  margin:0;
  color:#66707d;
  font-size:10px;
  line-height:1.4;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
}

/* ----------------------------------------------------------
   AGENDA: cabecera compacta
   ---------------------------------------------------------- */
.binku-agenda-drawer-header--compact{
  display:block !important;
  padding:11px 13px 9px !important;
  margin:0 -18px 6px !important;
}

.binku-agenda-compact-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

.binku-agenda-drawer-header--compact .binku-agenda-drawer-title{
  display:flex !important;
  align-items:center !important;
  flex:1;
  min-width:0;
  gap:10px !important;
}

.binku-agenda-drawer-header--compact .binku-agenda-drawer-icon{
  width:34px !important;
  height:34px !important;
  flex:0 0 34px !important;
  border-radius:10px !important;
}

.binku-agenda-drawer-copy{
  min-width:0;
  flex:1;
}

.binku-agenda-mini-label{
  display:block;
  margin-bottom:1px;
  color:#87919d;
  font-size:8px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.binku-agenda-drawer-copy > strong{
  display:block;
  color:#172033;
  font-size:15px !important;
  font-weight:850 !important;
  line-height:1.15;
}

.binku-agenda-drawer-copy > small{
  display:block;
  margin-top:2px;
  color:#737d89;
  font-size:9.5px !important;
  line-height:1.25;
}

.binku-agenda-drawer-header--compact .binku-agenda-close{
  width:31px !important;
  height:31px !important;
  flex:0 0 31px;
}

.binku-agenda-wizard-head--compact{
  margin:8px 0 0 !important;
  padding:0 !important;
}

.binku-agenda-wizard-row--hidden-copy{
  min-height:0 !important;
  height:0 !important;
  margin:0 !important;
  overflow:hidden;
}

.binku-agenda-wizard-row--hidden-copy .binku-agenda-wizard-step{
  display:none !important;
}

.binku-agenda-drawer-header--compact .binku-agenda-wizard-back{
  margin:0 0 5px !important;
  font-size:9.5px !important;
}

.binku-agenda-drawer-header--compact .binku-agenda-app-steps{
  margin-top:0 !important;
  gap:3px !important;
}

.binku-agenda-drawer-header--compact .binku-agenda-app-steps b{
  width:21px !important;
  height:21px !important;
  font-size:8.5px !important;
}

.binku-agenda-drawer-header--compact .binku-agenda-app-steps em{
  font-size:7px !important;
}

/* Más espacio útil para los servicios, no para la cabecera */
.binku-public-agenda-module .binku-agenda-content.open{
  max-height:min(590px,70vh) !important;
}

.binku-public-agenda-module .binku-agenda-content.open
.binku-agenda-step{
  padding-top:5px !important;
}

/* Evita doble título grande dentro del paso actual */
.binku-public-agenda-module .binku-agenda-step-title{
  margin-bottom:8px !important;
}

.binku-public-agenda-module .binku-agenda-step-title > span{
  width:24px !important;
  height:24px !important;
  flex-basis:24px !important;
  font-size:9px !important;
}

.binku-public-agenda-module .binku-agenda-step-title strong{
  font-size:11.5px !important;
}

.binku-public-agenda-module .binku-agenda-step-title small{
  font-size:9px !important;
}

/* ----------------------------------------------------------
   Responsive
   ---------------------------------------------------------- */
@media(max-width:575.98px){
  .comments-card__list > [class*="col-"]{
    flex-basis:260px !important;
    width:260px !important;
    max-width:260px !important;
  }

  .binku-review-card__image{
    width:70px;
    flex-basis:70px;
  }

  .binku-agenda-drawer-header--compact{
    padding:10px 11px 8px !important;
  }

  .binku-agenda-drawer-header--compact .binku-agenda-app-steps em{
    font-size:6.5px !important;
  }
}
