/* Tablify Pro — extras on the booking form */
.tablify .tfp-addons-list { display: grid; gap: 8px; margin-top: 6px; }
.tablify .tfp-addon { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border: 1px solid var(--tf-border, #e5ded5); border-radius: var(--tf-r-sm, 10px); background: var(--tf-surface, #fff); transition: border-color .15s, background .15s; }
.tablify .tfp-addon.is-on { border-color: var(--tf-primary); background: color-mix(in srgb, var(--tf-primary) 5%, var(--tf-surface, #fff)); }
.tablify .tfp-addon.is-off { opacity: .55; }
.tablify .tfp-addon-main { flex: 1; min-width: 0; }
.tablify .tfp-addon-name { display: block; font-weight: 650; color: var(--tf-text); cursor: pointer; }
.tablify .tfp-addon-desc { margin-top: 2px; font-size: 13px; color: var(--tf-text-2); }
.tablify .tfp-addon-meta { display: flex; flex-wrap: wrap; gap: 4px 10px; margin-top: 4px; font-size: 12.5px; color: var(--tf-muted); }
.tablify .tfp-addon-price { font-weight: 650; color: var(--tf-text); }
.tablify .tfp-addon-hint { color: var(--tf-primary); font-weight: 600; }
.tablify .tfp-addon-warn { color: #b45309; }
.tablify .tfp-addon-ctrl { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.tablify .tfp-addon-qty { display: inline-flex; align-items: center; gap: 8px; }
.tablify .tfp-addon-qty output { min-width: 18px; text-align: center; font-weight: 700; }
.tablify .tfp-addon-sub { font-size: 12px; color: var(--tf-text-2); }
.tablify .tfp-sum-addons { margin-top: 12px; padding-top: 12px; border-top: 1px dashed var(--tf-border, #e5ded5); }
.tablify .tfp-sum-addon { display: flex; justify-content: space-between; gap: 10px; font-size: 13.5px; margin-top: 4px; }
.tablify .tfp-manage-addons { margin: 14px 0; padding: 12px 14px; border: 1px solid var(--tf-border, #e5ded5); border-radius: var(--tf-r-sm, 10px); }
