/* BestarinBashgah club dynamic tabs + criterion review runtime — v3.12.11 */
[data-bbg-tab-panel][hidden],
.club-content-layout[hidden] { display: none !important; }

[data-bbg-tab-panel].is-bbg-active {
  display: block !important;
  animation: bbg-tab-panel-in .26s ease both;
}

.club-content-layout.bbg-tab-layout-active { display: grid !important; }

.club-internal-nav .club-container[role="tablist"] {
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
}

.club-internal-nav [data-bbg-tab] {
  white-space: nowrap;
  cursor: pointer;
}

.club-internal-nav [data-bbg-tab]:focus-visible {
  outline: 2px solid #f4bd39;
  outline-offset: -3px;
  border-radius: 8px;
}

.bbg-runtime-criterion-form {
  display: grid;
  gap: 18px;
  margin: 18px 0;
  padding: 18px;
  border: 1px solid rgba(83, 226, 190, .18);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(8, 35, 49, .92), rgba(10, 27, 43, .92));
}

.club-criterion-rating-form__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.club-criterion-rating-form__head strong { display: block; color: #f7fbff; font-size: 15px; }
.club-criterion-rating-form__head p { margin: 6px 0 0; color: #91a8b8; font-size: 12px; line-height: 1.9; }
.club-criterion-rating-form__head > span {
  flex: 0 0 auto;
  padding: 6px 10px;
  border: 1px solid rgba(244, 189, 57, .24);
  border-radius: 999px;
  color: #f4bd39;
  background: rgba(244, 189, 57, .08);
  font-size: 11px;
}

.bbg-runtime-criterion-form > section { display: grid; gap: 10px; }
.bbg-runtime-criterion-form > section > h3 { margin: 0; color: #d7e5ee; font-size: 13px; }

.club-criterion-rating-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.club-criterion-rating-grid > article {
  display: grid;
  gap: 11px;
  min-width: 0;
  padding: 13px;
  border: 1px solid rgba(131, 158, 174, .15);
  border-radius: 13px;
  background: rgba(255, 255, 255, .022);
  transition: border-color .2s ease, background .2s ease, transform .2s ease;
}

.club-criterion-rating-grid > article.is-selected {
  border-color: rgba(244, 189, 57, .42);
  background: rgba(244, 189, 57, .055);
  transform: translateY(-1px);
}

.bbg-criterion-meta { display: flex; align-items: center; gap: 10px; min-width: 0; }
.club-criterion-emoji {
  display: grid;
  flex: 0 0 35px;
  width: 35px;
  height: 35px;
  place-items: center;
  border-radius: 10px;
  background: rgba(67, 213, 178, .09);
  font-size: 18px;
}
.bbg-criterion-meta strong { display: block; overflow: hidden; color: #f3f8fb; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.bbg-criterion-meta small { display: block; margin-top: 3px; color: #78909f; font-size: 10px; }

.bbg-criterion-controls { display: grid; gap: 7px; }
.bbg-criterion-stars, .bbg-review-stars { display: inline-flex; direction: rtl; gap: 2px; }
.bbg-criterion-stars button {
  width: 27px;
  height: 27px;
  padding: 0;
  border: 0;
  color: #435563;
  background: transparent;
  cursor: pointer;
  font-size: 23px;
  line-height: 1;
  transition: color .15s ease, transform .15s ease;
}
.bbg-criterion-stars button:hover { transform: scale(1.12); }
.bbg-criterion-stars button.is-filled, .bbg-review-stars .is-filled { color: #f4bd39; }
.bbg-review-stars span:not(.is-filled) { color: #435563; }
.bbg-criterion-controls > small { color: #8299a8; font-size: 10px; }
.bbg-criterion-controls > button {
  justify-self: start;
  padding: 0;
  border: 0;
  color: #7ecfbd;
  background: transparent;
  cursor: pointer;
  font: inherit;
  font-size: 10px;
}

.bbg-criteria-error {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid rgba(255, 117, 117, .3);
  border-radius: 10px;
  color: #ffb7b7;
  background: rgba(255, 90, 90, .08);
  font-size: 12px;
  line-height: 1.8;
}

.club-review-criteria {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 14px;
}

.club-review-criteria > article {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 9px 10px;
  border: 1px solid rgba(126, 207, 189, .13);
  border-radius: 10px;
  background: rgba(255, 255, 255, .018);
}

.club-review-criteria > article > span { display: flex; align-items: center; gap: 6px; color: #b8cad5; font-size: 11px; }
.club-review-criteria > article > span em { font-style: normal; }
.club-review-criteria > article > div { display: flex; align-items: center; gap: 7px; }
.club-review-criteria > article strong { color: #f4bd39; font-size: 12px; }
.bbg-review-stars { font-size: 12px; }
.club-subratings .bbg-subrating-count { display: block; margin-top: 5px; color: #708897; font-size: 9px; }

@keyframes bbg-tab-panel-in {
  from { opacity: 0; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 900px) {
  .club-content-layout.bbg-tab-layout-active { display: block !important; }
  .club-criterion-rating-grid, .club-review-criteria { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  .bbg-runtime-criterion-form { padding: 13px; border-radius: 13px; }
  .club-criterion-rating-form__head { flex-direction: column; }
  .bbg-criterion-stars button { width: 25px; height: 25px; font-size: 21px; }
}

/* v3.12.33 — equal-width dynamic club information boxes */
.club-highlights-grid{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:stretch!important;
  grid-template-columns:none!important;
  gap:1px!important;
  padding:0!important;
  overflow:hidden!important;
  background:var(--club-border-soft)!important;
}
.club-highlights-grid>article{
  flex:1 1 150px!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  min-height:86px;
  border:0!important;
  background:rgba(8,23,37,.98)!important;
}
.club-highlights-grid>article>div{min-width:0}
.club-highlights-grid>article strong{overflow-wrap:anywhere}
@media(min-width:1181px){
  .club-highlights-grid{
    display:grid!important;
    grid-template-columns:repeat(var(--club-highlight-count,1),minmax(0,1fr))!important;
  }
  .club-highlights-grid>article{width:100%!important;min-width:0!important}
}
@media(max-width:1180px){.club-highlights-grid>article{flex-basis:180px!important}}
@media(max-width:767px){
  .club-highlights-grid{overflow:hidden!important}
  .club-highlights-grid>article{flex:1 1 calc(50% - 1px)!important;min-width:calc(50% - 1px)!important;justify-content:flex-start!important}
}
@media(max-width:390px){.club-highlights-grid>article{flex-basis:100%!important;min-width:100%!important}}

/* v3.12.34 — keep all five primary club actions in one equal-width row */
@media (min-width: 768px) {
  .club-primary-actions {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    grid-template-columns: none !important;
    gap: 10px !important;
  }
  .club-primary-actions > * {
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }
  .club-primary-actions .club-action-big {
    min-height: 49px;
    padding-inline: 11px;
  }
}

/* v3.12.38 — keep club information cards in one horizontal row on desktop */
@media (min-width: 768px) {
  .club-highlights-grid {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(150px, 1fr) !important;
    grid-template-columns: none !important;
    align-items: stretch !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }
  .club-highlights-grid > article {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    flex: none !important;
  }
}
@media (max-width: 767px) {
  .club-highlights-grid {
    display: grid !important;
    grid-auto-flow: row !important;
    grid-auto-columns: auto !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    overflow: hidden !important;
  }
  .club-highlights-grid > article {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    flex: none !important;
  }
}
@media (max-width: 390px) {
  .club-highlights-grid { grid-template-columns: 1fr !important; }
}


/* v3.12.50 — professional club action buttons and collision-free mobile dock */
.club-primary-actions{gap:11px!important;padding-top:20px!important}
.club-primary-actions>.club-action-big{min-height:58px!important;border-radius:13px!important;padding-inline:14px!important;font-size:13px!important;box-shadow:0 10px 28px rgba(0,0,0,.16)!important;overflow:hidden!important}
.club-primary-actions>.club-action-big svg{flex:0 0 auto!important}
.club-primary-actions>.club-action-big:not(.club-chat-online-btn){white-space:nowrap!important}
.club-secondary-actions button{border-radius:11px!important;transition:transform .2s ease,border-color .2s ease,background .2s ease!important}
.club-secondary-actions button:hover{transform:translateY(-1px)!important}

@media(max-width:767px){
  body{padding-bottom:calc(102px + env(safe-area-inset-bottom))!important}
  .club-mobile-action-bar{
    right:10px!important;left:10px!important;bottom:max(8px,env(safe-area-inset-bottom))!important;
    min-height:78px!important;padding:6px!important;
    grid-template-columns:repeat(auto-fit,minmax(50px,1fr))!important;gap:6px!important;
    border:1px solid rgba(240,181,71,.25)!important;border-radius:18px!important;
    background:linear-gradient(180deg,rgba(9,27,42,.98),rgba(5,17,28,.99))!important;
    box-shadow:0 18px 55px rgba(0,0,0,.5),inset 0 1px rgba(255,255,255,.04)!important;
    backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;
  }
  .club-mobile-action-bar button{
    position:relative!important;min-width:0!important;min-height:64px!important;padding:7px 4px!important;
    border:1px solid rgba(255,255,255,.07)!important;border-radius:13px!important;
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;
    background:rgba(255,255,255,.025)!important;color:#c9d5dc!important;font-size:10px!important;font-weight:800!important;
    box-shadow:none!important;transition:transform .18s ease,border-color .18s ease,background .18s ease!important;
  }
  .club-mobile-action-bar button:active{transform:scale(.97)!important}
  .club-mobile-action-bar button svg{width:21px!important;height:21px!important;color:#dce7ec!important}
  .club-mobile-action-bar button span{display:block!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  .club-mobile-action-bar button.is-call{border-color:rgba(240,181,71,.22)!important;background:rgba(240,181,71,.055)!important}
  .club-mobile-action-bar button.is-whatsapp{border-color:rgba(47,199,149,.22)!important;background:rgba(47,199,149,.055)!important}
  .club-mobile-action-bar button.is-whatsapp svg{color:#5be3b1!important}
  .club-mobile-action-bar button.is-chat{border-color:rgba(47,199,149,.38)!important;background:linear-gradient(145deg,rgba(23,148,112,.25),rgba(7,86,72,.25))!important;color:#dffff3!important}
  .club-mobile-action-bar button.is-chat svg{color:#72ecc0!important}
  .club-mobile-action-bar button.is-chat i{position:absolute;top:8px;right:calc(50% - 17px);width:8px;height:8px;border:2px solid #092033;border-radius:50%;background:#8395a0!important}
  .club-mobile-action-bar button.is-chat i.is-online{background:#45d391!important;box-shadow:0 0 0 4px rgba(69,211,145,.12),0 0 10px rgba(69,211,145,.55)!important}
  .club-mobile-action-bar button.is-route{border-color:rgba(96,165,250,.22)!important;background:rgba(96,165,250,.05)!important}
  .club-mobile-action-bar button.is-route svg{color:#8dc0ff!important}
  .club-mobile-action-bar button.is-primary{border-color:transparent!important;background:linear-gradient(145deg,var(--club-gold-light),var(--club-gold))!important;color:#07111d!important;box-shadow:0 8px 22px rgba(240,181,71,.2)!important}
  .club-mobile-action-bar button.is-primary svg{color:#07111d!important}
  .club-toast{bottom:calc(108px + env(safe-area-inset-bottom))!important}
}
@media(max-width:370px){
  .club-mobile-action-bar{right:6px!important;left:6px!important;gap:4px!important;padding:5px!important}
  .club-mobile-action-bar button{min-height:60px!important;font-size:9px!important;padding-inline:2px!important}
}
