/* container */
.tcbk-grid{border:1px solid #ddd;border-radius:8px;overflow:hidden}
.tcbk-grid-head{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid #eee;background:#fafafa}
.tcbk-grid-head .tcbk-title{font-weight:600}
.tcbk-grid-body{overflow:auto}

/* matrix table */
.tcbk-matrix{width:100%;border-collapse:collapse;direction:rtl}
.tcbk-matrix th,.tcbk-matrix td{border:1px solid #e5e7eb;padding:8px 10px;text-align:center;white-space:nowrap}
.tcbk-matrix thead th{background:#fafafa;font-weight:700;position:sticky;top:0;z-index:1}
.tcbk-time-col{background:#fcfcfc;min-width:78px;font-weight:700}

/* cells */
.tcbk-cell{font-size:13px;line-height:1.6}
.tcbk-cell .tcbk-time{font-weight:700}
.tcbk-cell .tcbk-price{opacity:.9;margin-top:2px}
.tcbk-cell .tcbk-cta{display:inline-block;margin-top:6px;padding:4px 8px;border-radius:6px;border:1px solid transparent;cursor:pointer;text-decoration:none;font-size:12px}

/* states */
.tcbk-cell.is-bookable{background:#eafaf1;color:#0b5d2a;border-color:#c9e7d6}
.tcbk-cell.is-bookable .tcbk-cta{background:#27ae60;color:#fff}
.tcbk-cell.is-bookable:hover{box-shadow:0 0 0 2px rgba(39,174,96,.12) inset}

.tcbk-cell.is-locked{background:#fdecea;border-color:#f3c1bd;color:#8a1f11}
.tcbk-cell.is-locked .tcbk-cta{background:#fff;color:#8a1f11;border-color:#e74c3c;pointer-events:none;opacity:.7}

.tcbk-cell.is-empty{background:#f7f7f7;color:#9aa0a6}

/* footer */
.tcbk-grid-foot{padding:8px 12px;border-top:1px solid #eee;background:#fafafa}
.tcbk-grid-foot .tcbk-rules{color:#2271b1}
/* past (gray) */
.tcbk-cell.is-past{background:#f1f3f4;color:#5f6368;border-color:#e0e0e0}
.tcbk-cell.is-past .tcbk-cta{display:none}

/* small badges for non-bookable states */
.tcbk-cell .tcbk-badge{
  display:inline-block;margin-top:6px;font-size:12px;
  padding:2px 6px;border-radius:4px;border:1px solid transparent;background:#fff
}
.tcbk-cell.is-locked .tcbk-badge{color:#8a1f11;border-color:#e74c3c}
.tcbk-cell.is-past   .tcbk-badge{color:#5f6368;border-color:#cfd3d7}
/* ارتفاع کمتر و ردیف فشرده */
.tcbk-cell{padding:6px 8px}
.tcbk-cell .tcbk-row{display:flex;align-items:center;justify-content:space-between;gap:8px}
.tcbk-cell .tcbk-price{font-size:13px}

/* past (gray) */
.tcbk-cell.is-past{background:#f1f3f4;color:#5f6368;border-color:#e0e0e0}
.tcbk-cell.is-past .tcbk-cta{display:none}

/* badges */
.tcbk-cell .tcbk-badge{
  display:inline-block;margin-top:2px;font-size:12px;
  padding:2px 6px;border-radius:4px;border:1px solid transparent;background:#fff
}
.tcbk-cell.is-locked .tcbk-badge{color:#8a1f11;border-color:#e74c3c}
.tcbk-cell.is-past   .tcbk-badge{color:#5f6368;border-color:#cfd3d7}
