/* ======================================================================
   TennisFinalsPro — PŁATNOŚCI REZERWACJI / PREMIUM SaaS V3
   Desktop + tablet + mobile. Loaded after clubs.css / booking css.
   ====================================================================== */

/* ---------- shared tokens ---------- */
.club-admin-page,
.booking-board {
    --pay-navy:#071f45;
    --pay-ink:#102a4d;
    --pay-muted:#6f819b;
    --pay-line:#dce8f6;
    --pay-blue:#1769e8;
    --pay-sky:#18aeea;
    --pay-violet:#6557e8;
    --pay-green:#0ba875;
    --pay-amber:#f1a51a;
    --pay-pink:#e94687;
}

/* ======================================================================
   FIX: CENNIK W PANELU — zero uciętych godzin / cyfr
   ====================================================================== */
.club-admin-page .price-rules-box { overflow:visible !important; }
.club-admin-page .price-rule-row {
    grid-template-columns:minmax(104px,1.2fr) minmax(72px,.78fr) minmax(72px,.78fr) minmax(84px,.9fr) 34px !important;
    gap:7px !important;
    padding:9px !important;
    overflow:visible !important;
}
.club-admin-page .price-rule-row label { min-width:0 !important; }
.club-admin-page .price-rule-row input,
.club-admin-page .price-rule-row select {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:40px !important;
    min-height:40px !important;
    padding:8px 7px !important;
    font-size:11px !important;
    line-height:1 !important;
}
.club-admin-page .price-rule-row input[type="time"] { padding-right:4px !important; }
.club-admin-page input[name="price_amount[]"] {
    width:100% !important;
    min-width:0 !important;
    height:40px !important;
    text-align:left !important;
    padding-left:8px !important;
    padding-right:25px !important;
    font-size:12px !important;
}
.club-admin-page .price-rule-row .club-input-suffix,
.club-admin-page .price-rule-row .price-input-wrap { min-width:0 !important; width:100% !important; }
.club-admin-page .price-rule-remove {
    width:34px !important;
    min-width:34px !important;
    height:40px !important;
    min-height:40px !important;
    border-radius:11px !important;
}

/* ======================================================================
   PANEL KLUBU — PAYMENT COMMAND CENTER
   ====================================================================== */
.club-admin-page .club-payments-card {
    position:relative !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 0 18px !important;
    padding:0 !important;
    border:1px solid rgba(55,124,218,.18) !important;
    border-radius:20px !important;
    background:
        radial-gradient(520px 210px at 104% -18%,rgba(25,174,234,.18),transparent 72%),
        radial-gradient(420px 190px at -5% 110%,rgba(101,87,232,.10),transparent 72%),
        linear-gradient(180deg,#ffffff 0%,#f8fbff 100%) !important;
    box-shadow:0 18px 46px rgba(20,65,124,.10) !important;
    overflow:hidden !important;
}
.club-admin-page .club-payments-card::before {
    content:"";
    position:absolute;
    inset:0 0 auto 0;
    height:4px;
    background:linear-gradient(90deg,#1769e8 0%,#6557e8 38%,#e94687 67%,#18aeea 100%);
}

.club-admin-page .club-payments-card__head {
    display:grid !important;
    grid-template-columns:48px minmax(0,1fr) auto !important;
    gap:12px !important;
    align-items:center !important;
    padding:18px 18px 14px !important;
    border-bottom:1px solid rgba(218,231,247,.86) !important;
}
.club-admin-page .club-payments-card__icon {
    position:relative !important;
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:15px !important;
    background:linear-gradient(145deg,#1769e8,#6557e8 56%,#18aeea) !important;
    box-shadow:0 10px 24px rgba(69,91,224,.25) !important;
}
.club-admin-page .club-payments-card__icon::before {
    content:"";
    width:24px;
    height:16px;
    border:2px solid #fff;
    border-radius:5px;
    box-shadow:inset 0 4px 0 rgba(255,255,255,.22);
}
.club-admin-page .club-payments-card__icon::after {
    content:"";
    position:absolute;
    width:8px;
    height:3px;
    right:11px;
    bottom:12px;
    border-radius:99px;
    background:#fff;
}
.club-admin-page .club-payments-card__copy { min-width:0 !important; }
.club-admin-page .club-payments-card__copy > span {
    display:block !important;
    margin:0 0 4px !important;
    color:#286fe4 !important;
    font-size:9px !important;
    line-height:1 !important;
    font-weight:950 !important;
    letter-spacing:.10em !important;
    text-transform:uppercase !important;
}
.club-admin-page .club-payments-card__copy h3 {
    margin:0 !important;
    color:var(--pay-navy) !important;
    font-size:19px !important;
    line-height:1.08 !important;
    font-weight:900 !important;
    letter-spacing:-.025em !important;
}
.club-admin-page .club-payments-card__copy p {
    max-width:660px !important;
    margin:5px 0 0 !important;
    color:var(--pay-muted) !important;
    font-size:10.5px !important;
    line-height:1.42 !important;
    font-weight:650 !important;
}
.club-admin-page .club-payment-health {
    display:inline-flex !important;
    align-items:center !important;
    gap:7px !important;
    min-height:30px !important;
    padding:0 10px !important;
    border:1px solid #e4eaf3 !important;
    border-radius:999px !important;
    background:#f8fafc !important;
    color:#64748b !important;
    font-size:9px !important;
    line-height:1 !important;
    font-weight:900 !important;
    white-space:nowrap !important;
}
.club-admin-page .club-payment-health i {
    width:7px;
    height:7px;
    border-radius:50%;
    background:#94a3b8;
    box-shadow:0 0 0 4px rgba(148,163,184,.10);
}
.club-admin-page .club-payment-health.is-ready {border-color:#cbdcff !important;background:#f1f6ff !important;color:#2563be !important;}
.club-admin-page .club-payment-health.is-ready i {background:#2f7deb;box-shadow:0 0 0 4px rgba(47,125,235,.10);}
.club-admin-page .club-payment-health.is-live {border-color:#bcebd8 !important;background:#effcf6 !important;color:#087b58 !important;}
.club-admin-page .club-payment-health.is-live i {background:#0ba875;box-shadow:0 0 0 4px rgba(11,168,117,.11);}

/* branded payment method rail */
.club-admin-page .club-payment-methods {
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:8px !important;
    padding:12px 18px !important;
    border-bottom:1px solid rgba(218,231,247,.72) !important;
    background:rgba(248,251,255,.72) !important;
}
.club-admin-page .club-payment-method {
    min-width:0 !important;
    min-height:42px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:7px !important;
    padding:7px 9px !important;
    border:1px solid #e0eaf6 !important;
    border-radius:12px !important;
    background:#fff !important;
    box-shadow:0 3px 10px rgba(18,61,116,.035) !important;
    color:#203a60 !important;
}
.club-admin-page .club-payment-method b {font-size:10.5px !important;line-height:1 !important;font-weight:950 !important;white-space:nowrap !important;}
.club-admin-page .club-payment-method small {font-size:7.5px !important;color:#7b8ba2 !important;line-height:1 !important;font-weight:750 !important;white-space:nowrap !important;}
.club-admin-page .club-payment-method--blik b {font-size:13px !important;letter-spacing:-.03em !important;color:#111827 !important;}
.club-admin-page .club-payment-method--blik i {width:8px;height:8px;border-radius:50%;background:#e94687;box-shadow:0 0 0 3px rgba(233,70,135,.10);}
.club-admin-page .club-payment-method--card .card-chip {width:18px;height:13px;border-radius:4px;background:linear-gradient(135deg,#f7cc56,#e7a82d);box-shadow:inset 0 0 0 1px rgba(109,70,0,.10);}
.club-admin-page .club-payment-method--apple {background:linear-gradient(180deg,#111827,#0b1220) !important;border-color:#111827 !important;color:#fff !important;}
.club-admin-page .club-payment-method--apple b {color:#fff !important;font-size:11px !important;}
.club-admin-page .club-payment-method--secure i {position:relative;width:13px;height:11px;border:1.7px solid #19a376;border-radius:4px;}
.club-admin-page .club-payment-method--secure i::before {content:"";position:absolute;left:2px;right:2px;top:-7px;height:8px;border:1.7px solid #19a376;border-bottom:0;border-radius:8px 8px 0 0;}
.club-admin-page .club-payment-method--secure b {color:#127c5d !important;}

.club-admin-page .club-payment-dashboard-grid {
    display:grid !important;
    grid-template-columns:minmax(0,1.16fr) minmax(310px,.84fr) !important;
    gap:14px !important;
    padding:16px 18px 18px !important;
}
.club-admin-page .club-payment-dashboard-main {min-width:0 !important;}

.club-admin-page .club-payment-status-grid {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    margin:0 0 12px !important;
}
.club-admin-page .club-payment-status-grid > div {
    position:relative !important;
    min-width:0 !important;
    min-height:62px !important;
    padding:11px 12px 10px 14px !important;
    border:1px solid #e0eaf5 !important;
    border-radius:13px !important;
    background:#fff !important;
    overflow:hidden !important;
}
.club-admin-page .club-payment-status-grid > div::before {
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:3px;
    background:#cbd5e1;
}
.club-admin-page .club-payment-status-grid > .is-status-ok::before {background:#0ba875;}
.club-admin-page .club-payment-status-grid > .is-status-info::before {background:#2d7bea;}
.club-admin-page .club-payment-status-grid > .is-status-warn::before {background:#f1a51a;}
.club-admin-page .club-payment-status-grid span {
    display:block !important;
    color:#8191a7 !important;
    font-size:8px !important;
    line-height:1 !important;
    font-weight:900 !important;
    letter-spacing:.06em !important;
    text-transform:uppercase !important;
    white-space:nowrap !important;
}
.club-admin-page .club-payment-status-grid strong {
    display:block !important;
    margin:7px 0 0 !important;
    color:#29415f !important;
    font-size:11px !important;
    line-height:1.15 !important;
    font-weight:900 !important;
    overflow-wrap:anywhere !important;
}
.club-admin-page .club-payment-status-grid strong.is-ok {color:#087c59 !important;}
.club-admin-page .club-payment-status-grid strong.is-warn {color:#a56b00 !important;}

/* three-step onboarding */
.club-admin-page .club-payment-flow {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    margin:0 0 12px !important;
}
.club-admin-page .club-payment-flow > div {
    position:relative !important;
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:28px minmax(0,1fr) !important;
    gap:8px !important;
    align-items:center !important;
    min-height:48px !important;
    padding:8px !important;
    border:1px dashed #d5e1ef !important;
    border-radius:12px !important;
    background:#fbfdff !important;
}
.club-admin-page .club-payment-flow > div > b {
    width:28px !important;
    height:28px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:9px !important;
    background:#eef3f8 !important;
    color:#7d8da3 !important;
    font-size:10px !important;
    font-weight:950 !important;
}
.club-admin-page .club-payment-flow strong {display:block !important;color:#324a68 !important;font-size:9.5px !important;line-height:1.05 !important;font-weight:900 !important;}
.club-admin-page .club-payment-flow small {display:block !important;margin-top:3px !important;color:#8a99ad !important;font-size:7.5px !important;line-height:1 !important;font-weight:700 !important;}
.club-admin-page .club-payment-flow > .is-current {border-style:solid !important;border-color:#bfd6f7 !important;background:#f2f7ff !important;}
.club-admin-page .club-payment-flow > .is-current > b {background:linear-gradient(135deg,#1769e8,#6557e8) !important;color:#fff !important;box-shadow:0 5px 12px rgba(58,91,222,.18) !important;}
.club-admin-page .club-payment-flow > .is-done {border-style:solid !important;border-color:#c8eadc !important;background:#f3fcf8 !important;}
.club-admin-page .club-payment-flow > .is-done > b {background:#dff7ec !important;color:#07815c !important;}

.club-admin-page .club-payment-setup-note {
    position:relative !important;
    margin:0 !important;
    padding:12px 13px 12px 43px !important;
    border:1px solid #f3d796 !important;
    border-radius:13px !important;
    background:linear-gradient(135deg,#fff9ec,#fff5df) !important;
}
.club-admin-page .club-payment-setup-note::before {
    content:"1";
    position:absolute;
    left:12px;
    top:12px;
    width:22px;
    height:22px;
    display:grid;
    place-items:center;
    border-radius:8px;
    background:#ffe4a5;
    color:#8d5900;
    font-size:9px;
    font-weight:950;
}
.club-admin-page .club-payment-setup-note strong {display:block !important;color:#805100 !important;font-size:10px !important;line-height:1.2 !important;font-weight:900 !important;}
.club-admin-page .club-payment-setup-note p {margin:4px 0 0 !important;color:#846f4a !important;font-size:8.5px !important;line-height:1.4 !important;font-weight:650 !important;}
.club-admin-page .club-payment-setup-note code {padding:1px 4px !important;border-radius:5px !important;background:rgba(73,47,0,.07) !important;color:#684817 !important;font-size:8px !important;font-weight:800 !important;}

.club-admin-page .club-stripe-connect-btn {
    display:grid !important;
    grid-template-columns:34px minmax(0,1fr) !important;
    gap:10px !important;
    align-items:center !important;
    width:100% !important;
    min-height:58px !important;
    padding:9px 11px !important;
    border:1px solid rgba(101,87,232,.22) !important;
    border-radius:13px !important;
    background:linear-gradient(135deg,#f4f2ff,#f8f7ff 60%,#eef8ff) !important;
    color:inherit !important;
    text-decoration:none !important;
    box-shadow:0 7px 18px rgba(78,78,180,.07) !important;
    transition:transform .16s ease,box-shadow .16s ease !important;
}
.club-admin-page .club-stripe-connect-btn:hover {transform:translateY(-1px) !important;box-shadow:0 10px 22px rgba(78,78,180,.11) !important;}
.club-admin-page .club-stripe-connect-btn__icon {
    width:34px !important;
    height:34px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:10px !important;
    background:linear-gradient(135deg,#6557e8,#4c5ddd) !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:950 !important;
    box-shadow:0 6px 14px rgba(82,83,218,.18) !important;
}
.club-admin-page .club-stripe-connect-btn.is-connected {border-color:#bfe7d8 !important;background:linear-gradient(135deg,#f1fcf7,#f5fffb) !important;}
.club-admin-page .club-stripe-connect-btn.is-connected .club-stripe-connect-btn__icon {background:linear-gradient(135deg,#079b70,#14a4a3) !important;}
.club-admin-page .club-stripe-connect-btn > span:last-child {min-width:0 !important;}
.club-admin-page .club-stripe-connect-btn b {display:block !important;color:#1b3658 !important;font-size:10.5px !important;line-height:1.12 !important;font-weight:900 !important;}
.club-admin-page .club-stripe-connect-btn small {display:block !important;margin-top:4px !important;color:#7d8ba0 !important;font-size:8px !important;line-height:1.2 !important;font-weight:650 !important;}

/* right settings card */
.club-admin-page .club-payment-settings-form {
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    gap:9px !important;
    padding:13px !important;
    border:1px solid #dde8f5 !important;
    border-radius:15px !important;
    background:linear-gradient(155deg,#fff 0%,#f7faff 58%,#f4f2ff 100%) !important;
    box-shadow:0 7px 20px rgba(24,62,110,.045) !important;
}
.club-admin-page .club-payment-settings-form__head {padding:1px 1px 3px !important;}
.club-admin-page .club-payment-settings-form__head span {display:block !important;color:#7c8ba0 !important;font-size:7.5px !important;line-height:1 !important;font-weight:900 !important;letter-spacing:.07em !important;text-transform:uppercase !important;}
.club-admin-page .club-payment-settings-form__head strong {display:block !important;margin-top:4px !important;color:#102a4d !important;font-size:12px !important;line-height:1.1 !important;font-weight:900 !important;}

.club-admin-page .club-payment-switch {
    position:relative !important;
    display:grid !important;
    grid-template-columns:38px minmax(0,1fr) !important;
    gap:10px !important;
    align-items:center !important;
    min-height:58px !important;
    margin:0 !important;
    padding:10px !important;
    border:1px solid #dae6f3 !important;
    border-radius:13px !important;
    background:#fff !important;
    cursor:pointer !important;
}
.club-admin-page .club-payment-switch > input {position:absolute !important;opacity:0 !important;pointer-events:none !important;}
.club-admin-page .club-payment-switch__track {position:relative !important;width:38px !important;height:22px !important;border-radius:999px !important;background:#cbd7e6 !important;transition:.2s ease !important;}
.club-admin-page .club-payment-switch__track i {position:absolute !important;top:3px !important;left:3px !important;width:16px !important;height:16px !important;border-radius:50% !important;background:#fff !important;box-shadow:0 2px 6px rgba(30,48,78,.22) !important;transition:.2s ease !important;}
.club-admin-page .club-payment-switch > input:checked + .club-payment-switch__track {background:linear-gradient(90deg,#0ba875,#18aeea) !important;}
.club-admin-page .club-payment-switch > input:checked + .club-payment-switch__track i {transform:translateX(16px) !important;}
.club-admin-page .club-payment-switch > input:disabled + .club-payment-switch__track {opacity:.42 !important;}
.club-admin-page .club-payment-switch > span:last-child {display:flex !important;flex-direction:column !important;gap:3px !important;min-width:0 !important;}
.club-admin-page .club-payment-switch strong {color:#173453 !important;font-size:10px !important;line-height:1.12 !important;font-weight:900 !important;}
.club-admin-page .club-payment-switch small {color:#7c8ca2 !important;font-size:8px !important;line-height:1.28 !important;font-weight:650 !important;}

.club-admin-page .club-payment-mode-grid {display:grid !important;grid-template-columns:1fr !important;gap:7px !important;}
.club-admin-page .club-payment-mode {
    position:relative !important;
    display:grid !important;
    grid-template-columns:28px minmax(0,1fr) !important;
    gap:9px !important;
    align-items:center !important;
    min-width:0 !important;
    min-height:57px !important;
    margin:0 !important;
    padding:9px 34px 9px 9px !important;
    border:1px solid #dce7f3 !important;
    border-radius:12px !important;
    background:#fff !important;
    cursor:pointer !important;
    transition:.16s ease !important;
}
.club-admin-page .club-payment-mode::after {content:"";position:absolute;right:11px;top:50%;width:10px;height:10px;transform:translateY(-50%);border:1.5px solid #bdcde1;border-radius:50%;background:#fff;}
.club-admin-page .club-payment-mode.is-selected,
.club-admin-page .club-payment-mode:has(input:checked) {border-color:#8dbaf6 !important;background:linear-gradient(135deg,#f4f8ff,#f7f5ff) !important;box-shadow:inset 0 0 0 1px rgba(53,124,232,.05) !important;}
.club-admin-page .club-payment-mode.is-selected::after,
.club-admin-page .club-payment-mode:has(input:checked)::after {border:3px solid #fff;background:#2f78e6;box-shadow:0 0 0 1px #2f78e6;}
.club-admin-page .club-payment-mode input {position:absolute !important;opacity:0 !important;pointer-events:none !important;}
.club-admin-page .club-payment-mode__icon {position:relative !important;width:28px !important;height:28px !important;border-radius:9px !important;background:#edf5ff !important;}
.club-admin-page .club-payment-mode__icon--choice::before {content:"";position:absolute;left:6px;top:8px;width:15px;height:10px;border:1.6px solid #2776dc;border-radius:3px;}
.club-admin-page .club-payment-mode__icon--choice::after {content:"";position:absolute;left:9px;top:12px;width:4px;height:2px;border-radius:99px;background:#2776dc;}
.club-admin-page .club-payment-mode__icon--lock::before {content:"";position:absolute;left:8px;top:11px;width:12px;height:10px;border:1.6px solid #6557e8;border-radius:3px;}
.club-admin-page .club-payment-mode__icon--lock::after {content:"";position:absolute;left:10px;top:5px;width:8px;height:8px;border:1.6px solid #6557e8;border-bottom:0;border-radius:7px 7px 0 0;}
.club-admin-page .club-payment-mode > span:last-child {display:flex !important;flex-direction:column !important;gap:3px !important;min-width:0 !important;}
.club-admin-page .club-payment-mode b {color:#173655 !important;font-size:9.8px !important;line-height:1.12 !important;font-weight:900 !important;}
.club-admin-page .club-payment-mode small {color:#7b8ca3 !important;font-size:7.8px !important;line-height:1.28 !important;font-weight:650 !important;}

.club-admin-page .club-payment-footer {display:flex !important;align-items:center !important;justify-content:space-between !important;gap:10px !important;padding-top:2px !important;}
.club-admin-page .club-payment-footer small {color:#8795a8 !important;font-size:7.5px !important;line-height:1.25 !important;font-weight:650 !important;}
.club-admin-page .club-payment-footer .clubs-btn {flex:0 0 auto !important;min-width:166px !important;min-height:38px !important;height:38px !important;padding:0 13px !important;border-radius:10px !important;font-size:9px !important;font-weight:900 !important;white-space:nowrap !important;}
.club-admin-page .club-payment-footer .clubs-btn:disabled {opacity:.45 !important;cursor:not-allowed !important;box-shadow:none !important;filter:grayscale(.15) !important;}
.admin-payment-paid {color:#07875a !important;font-weight:900 !important;}
.admin-payment-waiting {color:#bd7900 !important;font-weight:900 !important;}

/* ======================================================================
   PUBLICZNA REZERWACJA — płatność premium
   ====================================================================== */
.booking-payment-panel {
    grid-column:1/-1 !important;
    position:relative !important;
    margin-top:2px !important;
    padding:12px !important;
    border:1px solid rgba(62,126,226,.20) !important;
    border-radius:16px !important;
    background:
        radial-gradient(170px 90px at 100% 0%,rgba(24,174,234,.13),transparent 72%),
        linear-gradient(180deg,#fbfdff 0%,#f4f8ff 100%) !important;
    box-shadow:0 8px 22px rgba(25,69,128,.06) !important;
}
.booking-payment-panel.is-required {border-color:rgba(101,87,232,.24) !important;background:radial-gradient(170px 90px at 100% 0%,rgba(101,87,232,.12),transparent 72%),linear-gradient(180deg,#fdfcff,#f6f5ff) !important;}
.booking-payment-panel__head {display:grid !important;grid-template-columns:34px minmax(0,1fr) auto !important;gap:9px !important;align-items:center !important;margin-bottom:9px !important;}
.booking-payment-panel__icon {position:relative !important;width:34px !important;height:34px !important;display:grid !important;place-items:center !important;border-radius:11px !important;background:linear-gradient(135deg,#1769e8,#6557e8 55%,#18aeea) !important;box-shadow:0 7px 16px rgba(54,94,224,.18) !important;}
.booking-payment-panel__icon::before {content:"";width:17px;height:11px;border:1.6px solid #fff;border-radius:3px;}
.booking-payment-panel__icon::after {content:"";position:absolute;width:5px;height:2px;right:8px;bottom:9px;border-radius:99px;background:#fff;}
.booking-payment-panel__head > div {min-width:0 !important;}
.booking-payment-panel__eyebrow {display:block !important;margin:0 0 2px !important;color:#3979d7 !important;font-size:7px !important;line-height:1 !important;font-weight:950 !important;letter-spacing:.07em !important;text-transform:uppercase !important;}
.booking-payment-panel__head strong {display:block !important;color:#10284b !important;font-size:11px !important;line-height:1.15 !important;font-weight:900 !important;}
.booking-payment-panel__head small:not(.booking-payment-panel__eyebrow) {display:block !important;margin-top:3px !important;color:#75869d !important;font-size:7.5px !important;line-height:1.3 !important;font-weight:650 !important;}
.booking-payment-secure {display:inline-flex !important;align-items:center !important;gap:4px !important;padding:5px 7px !important;border:1px solid #ccebdd !important;border-radius:999px !important;background:#f1fbf6 !important;color:#08775a !important;font-size:7px !important;font-weight:900 !important;white-space:nowrap !important;}
.booking-payment-secure i {position:relative;width:8px;height:7px;border:1.3px solid currentColor;border-radius:2px;}
.booking-payment-secure i::before {content:"";position:absolute;left:1px;right:1px;top:-5px;height:5px;border:1.3px solid currentColor;border-bottom:0;border-radius:6px 6px 0 0;}

.booking-payment-methods {display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:5px !important;margin-bottom:8px !important;}
.booking-payment-methods > span {min-width:0 !important;min-height:31px !important;display:flex !important;align-items:center !important;justify-content:center !important;gap:5px !important;padding:5px 6px !important;border:1px solid #e0e9f4 !important;border-radius:9px !important;background:#fff !important;color:#263e60 !important;}
.booking-payment-methods b {font-size:8px !important;line-height:1 !important;font-weight:950 !important;white-space:nowrap !important;}
.booking-payment-methods small {font-size:5.8px !important;line-height:1 !important;color:#8090a5 !important;font-weight:700 !important;white-space:nowrap !important;}
.booking-payment-methods .is-blik b {font-size:10px !important;color:#111827 !important;}
.booking-payment-methods .is-blik i {width:6px;height:6px;border-radius:50%;background:#e94687;}
.booking-payment-methods .is-card i {width:13px;height:9px;border-radius:3px;background:linear-gradient(135deg,#f4cb55,#e2a532);}
.booking-payment-methods .is-apple {background:#101827 !important;border-color:#101827 !important;}
.booking-payment-methods .is-apple b {color:#fff !important;font-size:8.5px !important;}

.booking-payment-options {display:grid !important;grid-template-columns:1fr 1fr !important;gap:6px !important;}
.booking-payment-option {
    position:relative !important;
    display:grid !important;
    grid-template-columns:28px minmax(0,1fr) auto !important;
    gap:7px !important;
    align-items:center !important;
    min-height:50px !important;
    padding:7px 8px !important;
    border:1px solid #dce7f3 !important;
    border-radius:11px !important;
    background:#fff !important;
    cursor:pointer !important;
    transition:.16s ease !important;
}
.booking-payment-option.is-selected,.booking-payment-option:has(input:checked) {border-color:#7eaff2 !important;background:linear-gradient(135deg,#f2f7ff,#f8f6ff) !important;box-shadow:inset 0 0 0 1px rgba(52,125,231,.06) !important;}
.booking-payment-option input {position:absolute !important;opacity:0 !important;pointer-events:none !important;}
.booking-payment-option__icon {position:relative !important;width:28px !important;height:28px !important;border-radius:9px !important;background:#edf5ff !important;}
.booking-payment-option__icon.is-online::before {content:"";position:absolute;left:6px;top:8px;width:15px;height:10px;border:1.5px solid #2674d8;border-radius:3px;}
.booking-payment-option__icon.is-online::after {content:"";position:absolute;left:8px;top:12px;width:5px;height:2px;border-radius:99px;background:#2674d8;}
.booking-payment-option__icon.is-onsite::before {content:"";position:absolute;left:7px;top:6px;width:14px;height:16px;border:1.5px solid #697c98;border-radius:3px;}
.booking-payment-option__icon.is-onsite::after {content:"";position:absolute;left:10px;top:10px;width:8px;height:1.5px;background:#697c98;box-shadow:0 4px 0 #697c98,0 8px 0 #697c98;}
.booking-payment-option > span:not(.booking-payment-option__icon) {display:flex !important;min-width:0 !important;flex-direction:column !important;gap:2px !important;}
.booking-payment-option b {color:#15345e !important;font-size:8.8px !important;line-height:1.1 !important;font-weight:900 !important;}
.booking-payment-option small {color:#7b8ca3 !important;font-size:6.7px !important;line-height:1.2 !important;font-weight:650 !important;}
.booking-payment-option em {padding:4px 5px !important;border-radius:999px !important;background:#e5f3ff !important;color:#1878d8 !important;font-size:5.7px !important;line-height:1 !important;font-style:normal !important;font-weight:950 !important;text-transform:uppercase !important;white-space:nowrap !important;}

.booking-payment-required > span {display:grid !important;grid-template-columns:22px minmax(0,1fr) !important;column-gap:8px !important;align-items:center !important;padding:8px !important;border:1px solid #d9e3f4 !important;border-radius:10px !important;background:#fff !important;}
.booking-payment-required i {grid-row:1/3;position:relative;width:22px;height:22px;border-radius:8px;background:#edf0ff !important;}
.booking-payment-required i::before {content:"";position:absolute;left:7px;top:9px;width:8px;height:7px;border:1.5px solid #6557e8;border-radius:2px;}
.booking-payment-required i::after {content:"";position:absolute;left:8px;top:5px;width:6px;height:6px;border:1.5px solid #6557e8;border-bottom:0;border-radius:5px 5px 0 0;}
.booking-payment-required b {color:#293b67 !important;font-size:8.5px !important;line-height:1.1 !important;font-weight:900 !important;}
.booking-payment-required small {margin-top:2px !important;color:#7c8ca3 !important;font-size:6.7px !important;line-height:1.25 !important;font-weight:650 !important;}

/* admin explanation in booking sidebar */
.booking-payment-admin-note {
    grid-column:1/-1 !important;
    display:grid !important;
    grid-template-columns:32px minmax(0,1fr) auto !important;
    gap:8px !important;
    align-items:center !important;
    padding:9px !important;
    border:1px solid #e1e9f3 !important;
    border-radius:12px !important;
    background:linear-gradient(135deg,#fafcff,#f5f8fc) !important;
}
.booking-payment-admin-note.is-ready {border-color:#c8eadc !important;background:linear-gradient(135deg,#f5fcf8,#f4fbff) !important;}
.booking-payment-admin-note.is-warning {border-color:#f2ddac !important;background:#fffaf0 !important;}
.booking-payment-admin-note__icon {position:relative;width:32px;height:32px;border-radius:10px;background:#eaf1fa !important;}
.booking-payment-admin-note__icon::before {content:"";position:absolute;left:7px;top:10px;width:17px;height:11px;border:1.5px solid #6680a4;border-radius:3px;}
.booking-payment-admin-note__icon::after {content:"";position:absolute;right:7px;bottom:8px;width:5px;height:2px;border-radius:9px;background:#6680a4;}
.booking-payment-admin-note.is-ready .booking-payment-admin-note__icon {background:#e2f7ed !important;}
.booking-payment-admin-note.is-ready .booking-payment-admin-note__icon::before {border-color:#0d8b65;}
.booking-payment-admin-note.is-ready .booking-payment-admin-note__icon::after {background:#0d8b65;}
.booking-payment-admin-note__copy {display:flex !important;flex-direction:column !important;gap:2px !important;min-width:0 !important;}
.booking-payment-admin-note__copy small {color:#8090a5 !important;font-size:6.5px !important;line-height:1 !important;font-weight:950 !important;letter-spacing:.05em !important;text-transform:uppercase !important;}
.booking-payment-admin-note__copy b {color:#27405f !important;font-size:8.2px !important;line-height:1.1 !important;font-weight:900 !important;}
.booking-payment-admin-note__copy em {color:#7c8ca2 !important;font-size:6.4px !important;line-height:1.28 !important;font-style:normal !important;font-weight:650 !important;}
.booking-payment-admin-note__methods {display:flex !important;align-items:center !important;gap:3px !important;}
.booking-payment-admin-note__methods b {padding:4px 5px !important;border:1px solid #dce6f1 !important;border-radius:6px !important;background:#fff !important;color:#50647f !important;font-size:5.6px !important;line-height:1 !important;font-weight:950 !important;}
.booking-payment-admin-note__methods b:first-child {color:#111827 !important;box-shadow:inset 0 -2px 0 #e94687 !important;}

.booking-checkout--inline #bookButton:not(:disabled) {background:linear-gradient(135deg,#1769e8 0%,#6557e8 52%,#18aeea 100%) !important;box-shadow:0 10px 22px rgba(54,91,220,.20) !important;}
.reservation-payment-badge {display:inline-flex !important;align-items:center !important;padding:2px 5px !important;border-radius:999px !important;font-size:8px !important;font-weight:900 !important;}
.reservation-payment-badge.is-paid {background:#dff8ed !important;color:#078256 !important;}
.reservation-payment-badge.is-pending {background:#fff1cc !important;color:#9a6500 !important;}
.slot-payment-retry {position:absolute !important;left:5px !important;bottom:4px !important;z-index:3 !important;padding:3px 6px !important;border-radius:7px !important;background:linear-gradient(135deg,#276ef1,#15aee9) !important;color:#fff !important;text-decoration:none !important;font-size:8px !important;font-weight:900 !important;box-shadow:0 4px 10px rgba(39,110,241,.18) !important;}

/* ======================================================================
   TABLET
   ====================================================================== */
@media (max-width:1180px) {
    .club-admin-page .club-payment-dashboard-grid {grid-template-columns:1fr !important;}
    .club-admin-page .club-payment-mode-grid {grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
    .club-admin-page .club-payment-settings-form {padding:12px !important;}
}

/* ======================================================================
   MOBILE — readable, touch friendly, no clipping
   ====================================================================== */
@media (max-width:720px) {
    .club-admin-page .price-rule-row {
        grid-template-columns:1fr 1fr !important;
        gap:8px !important;
        padding:9px !important;
    }
    .club-admin-page .price-rule-row label:first-child {grid-column:1/-1 !important;}
    .club-admin-page .price-rule-row label:last-of-type {grid-column:1/-1 !important;}
    .club-admin-page .price-rule-remove {grid-column:1/-1 !important;width:100% !important;}
    .club-admin-page .price-rule-row input,
    .club-admin-page .price-rule-row select {height:42px !important;min-height:42px !important;font-size:12px !important;padding:8px 9px !important;}
    .club-admin-page input[name="price_amount[]"] {min-width:0 !important;width:100% !important;font-size:13px !important;}

    .club-admin-page .club-payments-card {margin:0 0 14px !important;border-radius:17px !important;}
    .club-admin-page .club-payments-card__head {grid-template-columns:42px minmax(0,1fr) !important;gap:10px !important;padding:15px 13px 12px !important;}
    .club-admin-page .club-payments-card__icon {width:42px !important;height:42px !important;min-width:42px !important;border-radius:13px !important;}
    .club-admin-page .club-payments-card__icon::before {width:21px;height:14px;}
    .club-admin-page .club-payment-health {grid-column:1/-1 !important;justify-self:start !important;margin-top:1px !important;min-height:28px !important;}
    .club-admin-page .club-payments-card__copy h3 {font-size:17px !important;}
    .club-admin-page .club-payments-card__copy p {font-size:9.5px !important;line-height:1.38 !important;}

    .club-admin-page .club-payment-methods {grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:6px !important;padding:10px 13px !important;}
    .club-admin-page .club-payment-method {min-height:40px !important;}
    .club-admin-page .club-payment-dashboard-grid {display:block !important;padding:12px 13px 14px !important;}
    .club-admin-page .club-payment-dashboard-main {margin-bottom:10px !important;}
    .club-admin-page .club-payment-status-grid {grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:5px !important;}
    .club-admin-page .club-payment-status-grid > div {min-height:58px !important;padding:9px 6px 8px 9px !important;}
    .club-admin-page .club-payment-status-grid span {font-size:6.6px !important;letter-spacing:.03em !important;}
    .club-admin-page .club-payment-status-grid strong {font-size:8.7px !important;line-height:1.14 !important;}
    .club-admin-page .club-payment-flow {gap:5px !important;}
    .club-admin-page .club-payment-flow > div {grid-template-columns:24px minmax(0,1fr) !important;gap:6px !important;min-height:46px !important;padding:6px !important;}
    .club-admin-page .club-payment-flow > div > b {width:24px !important;height:24px !important;border-radius:8px !important;font-size:9px !important;}
    .club-admin-page .club-payment-flow strong {font-size:7.8px !important;}
    .club-admin-page .club-payment-flow small {font-size:6.3px !important;}
    .club-admin-page .club-payment-setup-note {padding:11px 10px 11px 39px !important;}
    .club-admin-page .club-payment-setup-note::before {left:10px;top:11px;width:20px;height:20px;}
    .club-admin-page .club-payment-setup-note strong {font-size:9.5px !important;}
    .club-admin-page .club-payment-setup-note p {font-size:7.7px !important;}
    .club-admin-page .club-stripe-connect-btn {min-height:56px !important;}

    .club-admin-page .club-payment-settings-form {padding:10px !important;border-radius:13px !important;}
    .club-admin-page .club-payment-mode-grid {grid-template-columns:1fr !important;}
    .club-admin-page .club-payment-switch {min-height:58px !important;}
    .club-admin-page .club-payment-mode {min-height:55px !important;}
    .club-admin-page .club-payment-footer {flex-direction:column !important;align-items:stretch !important;}
    .club-admin-page .club-payment-footer small {text-align:center !important;}
    .club-admin-page .club-payment-footer .clubs-btn {width:100% !important;min-width:0 !important;min-height:42px !important;height:42px !important;font-size:9.5px !important;}

    .booking-payment-panel {padding:9px !important;border-radius:13px !important;}
    .booking-payment-panel__head {grid-template-columns:32px minmax(0,1fr) !important;gap:8px !important;}
    .booking-payment-panel__icon {width:32px !important;height:32px !important;}
    .booking-payment-secure {display:none !important;}
    .booking-payment-methods {gap:4px !important;}
    .booking-payment-methods > span {min-height:29px !important;padding:4px !important;}
    .booking-payment-methods small {display:none !important;}
    .booking-payment-options {grid-template-columns:1fr !important;gap:5px !important;}
    .booking-payment-option {min-height:48px !important;}
    .booking-payment-admin-note {grid-template-columns:30px minmax(0,1fr) !important;padding:8px !important;}
    .booking-payment-admin-note__icon {width:30px;height:30px;}
    .booking-payment-admin-note__methods {grid-column:1/-1 !important;justify-content:flex-start !important;padding-left:38px !important;}
}

@media (max-width:430px) {
    .club-admin-page .club-payment-status-grid {grid-template-columns:1fr !important;}
    .club-admin-page .club-payment-status-grid > div {min-height:50px !important;}
    .club-admin-page .club-payment-status-grid span {font-size:7px !important;}
    .club-admin-page .club-payment-status-grid strong {font-size:9.5px !important;}
    .club-admin-page .club-payment-flow {grid-template-columns:1fr !important;}
    .club-admin-page .club-payment-flow > div {min-height:42px !important;}
    .club-admin-page .club-payment-methods {grid-template-columns:1fr 1fr !important;}
    .club-admin-page .club-payments-card__copy p {display:none !important;}
    .booking-payment-methods {grid-template-columns:1fr 1fr 1fr !important;}
}

/* ======================================================================
   TennisFinalsPro — PANEL KLUBU PREMIUM SaaS V4
   PEŁNY REDESIGN PANELU, nie tylko karty płatności.
   Ten blok jest na samym końcu i celowo nadpisuje starsze clubs.css.
   ====================================================================== */

body.clubs-panel-body {
    background:
        radial-gradient(900px 420px at 8% 0%, rgba(26,112,235,.08), transparent 70%),
        radial-gradient(760px 420px at 96% 14%, rgba(16,188,201,.07), transparent 68%),
        #f4f8fd !important;
}

body.clubs-panel-body .club-admin-page {
    width:min(1260px, calc(100% - 34px)) !important;
    max-width:1260px !important;
    padding-top:18px !important;
    padding-bottom:54px !important;
}

/* HERO — od razu ma być widać, że panel jest nowy */
body.clubs-panel-body .tfp-club-hero {
    position:relative !important;
    min-height:112px !important;
    padding:24px 26px !important;
    margin-bottom:12px !important;
    border:1px solid rgba(255,255,255,.15) !important;
    border-radius:24px !important;
    background:
        radial-gradient(360px 180px at 90% 0%, rgba(45,211,255,.28), transparent 72%),
        radial-gradient(300px 180px at 72% 130%, rgba(101,87,232,.28), transparent 72%),
        linear-gradient(120deg,#071d42 0%,#0a3d82 49%,#087da5 100%) !important;
    box-shadow:0 20px 46px rgba(8,42,92,.20) !important;
    overflow:hidden !important;
}
body.clubs-panel-body .tfp-club-hero::after {
    content:"";
    position:absolute;
    width:260px;
    height:260px;
    right:-105px;
    top:-120px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:50%;
    box-shadow:0 0 0 34px rgba(255,255,255,.035),0 0 0 70px rgba(255,255,255,.025);
    pointer-events:none;
}
body.clubs-panel-body .tfp-club-hero__eyebrow {
    color:#bcecff !important;
    background:rgba(10,25,61,.35) !important;
    border:1px solid rgba(167,226,255,.20) !important;
    box-shadow:none !important;
}
body.clubs-panel-body .tfp-club-hero h1 {
    color:#fff !important;
    font-size:31px !important;
    line-height:1.04 !important;
    font-weight:850 !important;
    letter-spacing:-.035em !important;
    text-shadow:0 2px 16px rgba(0,0,0,.10) !important;
}
body.clubs-panel-body .tfp-club-hero__ghost,
body.clubs-panel-body .tfp-club-hero__primary {
    min-height:43px !important;
    border-radius:13px !important;
    font-weight:850 !important;
    box-shadow:0 8px 18px rgba(4,33,76,.14) !important;
}
body.clubs-panel-body .tfp-club-hero__ghost {
    color:#fff !important;
    border:1px solid rgba(255,255,255,.20) !important;
    background:rgba(255,255,255,.10) !important;
    backdrop-filter:blur(8px) !important;
}
body.clubs-panel-body .tfp-club-hero__primary {
    color:#0a3470 !important;
    border:1px solid rgba(255,255,255,.72) !important;
    background:#fff !important;
}

/* GŁÓWNE ZAKŁADKI */
body.clubs-panel-body .tfp-club-tabs {
    padding:6px !important;
    margin-bottom:11px !important;
    border:1px solid #dbe7f5 !important;
    border-radius:16px !important;
    background:rgba(255,255,255,.90) !important;
    box-shadow:0 8px 22px rgba(17,57,106,.055) !important;
    backdrop-filter:blur(10px) !important;
}
body.clubs-panel-body .tfp-club-tabs a {
    min-height:36px !important;
    padding:0 15px !important;
    border-radius:11px !important;
    color:#536782 !important;
    font-size:11px !important;
    font-weight:800 !important;
}
body.clubs-panel-body .tfp-club-tabs a.is-active {
    color:#fff !important;
    background:linear-gradient(135deg,#1769e8,#12a9e8) !important;
    box-shadow:0 7px 16px rgba(23,105,232,.24) !important;
}

/* WYBÓR KLUBU */
body.clubs-panel-body .admin-club-tabs {
    display:flex !important;
    gap:7px !important;
    min-height:46px !important;
    padding:6px !important;
    margin:0 0 13px !important;
    border:1px solid #dce8f5 !important;
    border-radius:15px !important;
    background:#fff !important;
    box-shadow:0 7px 20px rgba(17,57,106,.045) !important;
}
body.clubs-panel-body .admin-club-tabs a {
    display:inline-flex !important;
    align-items:center !important;
    min-height:34px !important;
    padding:0 13px !important;
    border:1px solid transparent !important;
    border-radius:10px !important;
    color:#536681 !important;
    background:#f5f8fc !important;
    font-size:10.5px !important;
    font-weight:800 !important;
    white-space:nowrap !important;
}
body.clubs-panel-body .admin-club-tabs a.is-active {
    color:#fff !important;
    border-color:#1769e8 !important;
    background:linear-gradient(135deg,#1769e8,#217fe9) !important;
    box-shadow:0 6px 15px rgba(23,105,232,.20) !important;
}

/* DWA PANELE */
body.clubs-panel-body .admin-layout:not(.club-create-layout) {
    display:grid !important;
    grid-template-columns:minmax(390px, .78fr) minmax(0, 1.72fr) !important;
    gap:16px !important;
    align-items:start !important;
}
body.clubs-panel-body .admin-settings-card,
body.clubs-panel-body .admin-board-card {
    min-width:0 !important;
    border:1px solid #dce8f5 !important;
    border-radius:22px !important;
    background:#fff !important;
    box-shadow:0 16px 38px rgba(18,60,112,.075) !important;
}
body.clubs-panel-body .admin-settings-card {
    position:relative !important;
    top:auto !important;
    padding:14px !important;
    overflow:visible !important;
}
body.clubs-panel-body .admin-board-card {
    padding:15px !important;
    overflow:hidden !important;
}

/* Jeśli użytkownik ma jeszcze starszy panel.php, przenieś kartę płatności NAD formularz samym CSS-em. */
body.clubs-panel-body .admin-settings-card:has(> .club-payments-card) {
    display:flex !important;
    flex-direction:column !important;
}
body.clubs-panel-body .admin-settings-card:has(> .club-payments-card) > .admin-card-head {order:0 !important;}
body.clubs-panel-body .admin-settings-card:has(> .club-payments-card) > .club-payments-card {order:1 !important;}
body.clubs-panel-body .admin-settings-card:has(> .club-payments-card) > .admin-form {order:2 !important;}
body.clubs-panel-body .admin-settings-card:has(> .club-payments-card) > .delete-club-form {order:3 !important;}

/* NAGŁÓWEK USTAWIEŃ */
body.clubs-panel-body .admin-card-head {
    align-items:center !important;
    margin:0 0 12px !important;
    padding:3px 3px 12px !important;
    border-bottom:1px solid #e7eef7 !important;
}
body.clubs-panel-body .admin-card-head h2 {
    color:#0a2348 !important;
    font-size:20px !important;
    line-height:1.05 !important;
    font-weight:850 !important;
    letter-spacing:-.03em !important;
}
body.clubs-panel-body .admin-card-head a {
    display:inline-flex !important;
    align-items:center !important;
    min-height:30px !important;
    padding:0 10px !important;
    border:1px solid #d8e7fb !important;
    border-radius:9px !important;
    color:#1769e8 !important;
    background:#f4f8ff !important;
    font-size:9.5px !important;
    font-weight:850 !important;
}

/* SEKCJE FORMULARZA — osobne karty, wyraźne kolory */
body.clubs-panel-body .club-admin-form {
    gap:10px !important;
}
body.clubs-panel-body .club-form-section {
    margin:0 !important;
    padding:13px !important;
    border:1px solid #e1eaf5 !important;
    border-radius:16px !important;
    background:linear-gradient(180deg,#fff,#fbfdff) !important;
    box-shadow:0 5px 14px rgba(17,59,110,.035) !important;
}
body.clubs-panel-body .club-form-section:first-of-type {
    padding-top:13px !important;
    border-top:1px solid #e1eaf5 !important;
}
body.clubs-panel-body .club-form-section__head {
    grid-template-columns:34px minmax(0,1fr) !important;
    gap:10px !important;
    align-items:center !important;
    margin:0 0 11px !important;
}
body.clubs-panel-body .club-form-section__number {
    width:34px !important;
    height:34px !important;
    border:0 !important;
    border-radius:11px !important;
    color:#fff !important;
    background:linear-gradient(135deg,#1769e8,#18aeea) !important;
    box-shadow:0 7px 14px rgba(23,105,232,.18) !important;
    font-size:12px !important;
    font-weight:900 !important;
}
body.clubs-panel-body .club-form-section:nth-of-type(2) .club-form-section__number {background:linear-gradient(135deg,#08a98a,#28c8aa) !important;box-shadow:0 7px 14px rgba(8,169,138,.16) !important;}
body.clubs-panel-body .club-form-section:nth-of-type(3) .club-form-section__number {background:linear-gradient(135deg,#6557e8,#8a63ef) !important;box-shadow:0 7px 14px rgba(101,87,232,.17) !important;}
body.clubs-panel-body .club-form-section:nth-of-type(4) .club-form-section__number {background:linear-gradient(135deg,#ef8c19,#f5b62c) !important;box-shadow:0 7px 14px rgba(239,140,25,.16) !important;}
body.clubs-panel-body .club-form-section:nth-of-type(5) .club-form-section__number {background:linear-gradient(135deg,#0a9f67,#39c981) !important;box-shadow:0 7px 14px rgba(10,159,103,.16) !important;}
body.clubs-panel-body .club-form-section:nth-of-type(6) .club-form-section__number {background:linear-gradient(135deg,#e94687,#f07eae) !important;box-shadow:0 7px 14px rgba(233,70,135,.15) !important;}
body.clubs-panel-body .club-form-section__head h3 {
    color:#0b2449 !important;
    font-size:14px !important;
    line-height:1.15 !important;
    font-weight:850 !important;
}
body.clubs-panel-body .club-form-section__head p {
    margin-top:3px !important;
    color:#7788a0 !important;
    font-size:9.5px !important;
    line-height:1.35 !important;
    font-weight:600 !important;
}
body.clubs-panel-body .club-form-section__body {
    gap:9px !important;
}

/* INPUTY — czytelne, cyfry się nie obcinają */
body.clubs-panel-body .club-admin-form label {
    color:#496078 !important;
    font-size:10px !important;
    font-weight:800 !important;
}
body.clubs-panel-body .club-admin-form input,
body.clubs-panel-body .club-admin-form select,
body.clubs-panel-body .club-admin-form textarea {
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    border:1px solid #d5e2f1 !important;
    border-radius:11px !important;
    background:#fff !important;
    color:#102b50 !important;
    font-size:12.5px !important;
    font-weight:750 !important;
    box-shadow:0 1px 2px rgba(14,49,94,.025) !important;
}
body.clubs-panel-body .club-admin-form input,
body.clubs-panel-body .club-admin-form select {
    min-height:42px !important;
    height:42px !important;
    padding:0 11px !important;
    line-height:42px !important;
}
body.clubs-panel-body .club-admin-form input:focus,
body.clubs-panel-body .club-admin-form select:focus,
body.clubs-panel-body .club-admin-form textarea:focus {
    border-color:#6aa7f5 !important;
    box-shadow:0 0 0 3px rgba(23,105,232,.10) !important;
    outline:0 !important;
}
body.clubs-panel-body .club-input-suffix {
    min-width:0 !important;
    border-radius:11px !important;
    overflow:visible !important;
}
body.clubs-panel-body .club-input-suffix input {
    padding-right:42px !important;
    line-height:normal !important;
}
body.clubs-panel-body .club-input-suffix > span {
    min-width:34px !important;
    color:#667a95 !important;
    font-size:9px !important;
    font-weight:850 !important;
}

/* CENNIK */
body.clubs-panel-body .price-rules-box {
    padding:10px !important;
    border:1px solid #dfe8f6 !important;
    border-radius:14px !important;
    background:linear-gradient(145deg,#f7f9ff,#f7fbff) !important;
    overflow:visible !important;
}
body.clubs-panel-body .price-rules-head {
    align-items:center !important;
    gap:8px !important;
    margin-bottom:8px !important;
}
body.clubs-panel-body .price-rules-head strong {color:#172f56 !important;font-size:11px !important;font-weight:900 !important;}
body.clubs-panel-body .price-rules-head small {color:#7b8ca4 !important;font-size:8.5px !important;line-height:1.3 !important;}
body.clubs-panel-body .price-rule-add {
    min-height:30px !important;
    padding:0 9px !important;
    border:1px solid #cfe1ff !important;
    border-radius:9px !important;
    color:#1769e8 !important;
    background:#fff !important;
    font-size:8.5px !important;
    font-weight:900 !important;
}
body.clubs-panel-body .price-rule-row {
    grid-template-columns:minmax(90px,1.18fr) minmax(80px,.85fr) minmax(80px,.85fr) minmax(94px,.92fr) 36px !important;
    gap:6px !important;
    padding:8px !important;
    border:1px solid #e3ebf6 !important;
    border-radius:12px !important;
    background:#fff !important;
    overflow:visible !important;
}
body.clubs-panel-body .price-rule-row input,
body.clubs-panel-body .price-rule-row select {
    min-height:40px !important;
    height:40px !important;
    padding:0 8px !important;
    font-size:11.5px !important;
    line-height:normal !important;
    overflow:visible !important;
}
body.clubs-panel-body .price-rule-row input[type="time"] {
    min-width:78px !important;
    padding-left:7px !important;
    padding-right:4px !important;
}
body.clubs-panel-body .price-rule-row input[name="price_amount[]"] {
    min-width:0 !important;
    padding-left:8px !important;
    padding-right:34px !important;
    font-variant-numeric:tabular-nums !important;
}
body.clubs-panel-body .price-rule-remove {
    width:36px !important;
    min-width:36px !important;
    height:40px !important;
    border:0 !important;
    border-radius:10px !important;
    color:#ef4665 !important;
    background:#fff1f4 !important;
    font-size:18px !important;
    font-weight:900 !important;
}

/* CHECKBOXY cech kortu */
body.clubs-panel-body .court-features-grid {
    gap:7px !important;
}
body.clubs-panel-body .feature-check {
    min-height:42px !important;
    padding:9px 10px !important;
    border:1px solid #dfe8f4 !important;
    border-radius:11px !important;
    background:#f9fbfe !important;
    transition:.18s ease !important;
}
body.clubs-panel-body .feature-check:has(input:checked) {
    border-color:#8bbbf7 !important;
    background:#edf6ff !important;
    box-shadow:0 0 0 2px rgba(23,105,232,.055) !important;
}

body.clubs-panel-body .club-form-actions {
    display:flex !important;
    gap:8px !important;
    margin-top:2px !important;
}
body.clubs-panel-body .club-form-submit {
    min-height:42px !important;
    border:0 !important;
    border-radius:12px !important;
    background:linear-gradient(135deg,#1769e8,#10a9e8) !important;
    box-shadow:0 9px 18px rgba(23,105,232,.22) !important;
    font-size:10.5px !important;
    font-weight:900 !important;
}

/* PŁATNOŚCI — mocno widoczny SaaS command center */
body.clubs-panel-body .club-payments-card {
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    margin:0 0 14px !important;
    border:1px solid #cddff4 !important;
    border-radius:20px !important;
    background:
        radial-gradient(360px 160px at 100% 0%,rgba(35,196,238,.18),transparent 72%),
        radial-gradient(340px 170px at 0% 100%,rgba(101,87,232,.12),transparent 72%),
        linear-gradient(180deg,#fff,#f6faff) !important;
    box-shadow:0 16px 34px rgba(20,62,116,.10) !important;
}
body.clubs-panel-body .club-payments-card::before {
    height:5px !important;
    background:linear-gradient(90deg,#1769e8 0 23%,#6557e8 23% 46%,#e94687 46% 69%,#0bb28d 69% 100%) !important;
}
body.clubs-panel-body .club-payments-card__head {
    padding:16px 17px 13px !important;
}
body.clubs-panel-body .club-payments-card__icon {
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
    border-radius:16px !important;
    background:linear-gradient(145deg,#1769e8 0%,#6557e8 58%,#e94687 130%) !important;
}
body.clubs-panel-body .club-payments-card__copy > span {font-size:9px !important;color:#246dde !important;}
body.clubs-panel-body .club-payments-card__copy h3 {font-size:20px !important;color:#091f44 !important;}
body.clubs-panel-body .club-payments-card__copy p {font-size:10.5px !important;color:#71829b !important;}

body.clubs-panel-body .club-payment-methods {
    gap:9px !important;
    padding:12px 17px !important;
    background:rgba(245,249,255,.82) !important;
}
body.clubs-panel-body .club-payment-method {
    min-height:46px !important;
    border-radius:13px !important;
    box-shadow:0 5px 14px rgba(15,53,105,.055) !important;
}
body.clubs-panel-body .club-payment-method--blik {
    border-color:#ffd1df !important;
    background:linear-gradient(135deg,#fff,#fff3f7) !important;
}
body.clubs-panel-body .club-payment-method--blik b {color:#111827 !important;font-size:14px !important;}
body.clubs-panel-body .club-payment-method--blik i {background:#e50046 !important;box-shadow:0 0 0 4px rgba(229,0,70,.10) !important;}
body.clubs-panel-body .club-payment-method--card {
    border-color:#d6e4ff !important;
    background:linear-gradient(135deg,#fff,#f2f7ff) !important;
}
body.clubs-panel-body .club-payment-method--card::after {
    content:"";
    width:22px;
    height:12px;
    margin-left:2px;
    border-radius:8px;
    background:
        radial-gradient(circle at 38% 50%,#eb001b 0 5px,transparent 5.5px),
        radial-gradient(circle at 62% 50%,#f79e1b 0 5px,transparent 5.5px);
}
body.clubs-panel-body .club-payment-method--apple {
    background:linear-gradient(135deg,#0c111c,#1e2736) !important;
    box-shadow:0 7px 16px rgba(12,17,28,.15) !important;
}
body.clubs-panel-body .club-payment-method--secure {
    border-color:#c9eee2 !important;
    background:linear-gradient(135deg,#fff,#effcf8) !important;
}

/* Starsza wersja panel.php: karta siedzi w lewej kolumnie — ma być kompaktowa i wysoko. */
body.clubs-panel-body .admin-settings-card > .club-payments-card {
    margin:0 0 12px !important;
}
body.clubs-panel-body .admin-settings-card > .club-payments-card .club-payments-card__head {
    grid-template-columns:42px minmax(0,1fr) !important;
    gap:10px !important;
    padding:14px !important;
}
body.clubs-panel-body .admin-settings-card > .club-payments-card .club-payments-card__icon {
    width:42px !important;height:42px !important;min-width:42px !important;border-radius:13px !important;
}
body.clubs-panel-body .admin-settings-card > .club-payments-card .club-payment-health {
    grid-column:1/-1 !important;
    justify-self:start !important;
}
body.clubs-panel-body .admin-settings-card > .club-payments-card .club-payments-card__copy h3 {font-size:16px !important;}
body.clubs-panel-body .admin-settings-card > .club-payments-card .club-payments-card__copy p {display:none !important;}
body.clubs-panel-body .admin-settings-card > .club-payments-card .club-payment-methods {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    padding:10px 12px !important;
}
body.clubs-panel-body .admin-settings-card > .club-payments-card .club-payment-dashboard-grid {
    grid-template-columns:1fr !important;
    gap:10px !important;
    padding:12px !important;
}
body.clubs-panel-body .admin-settings-card > .club-payments-card .club-payment-status-grid,
body.clubs-panel-body .admin-settings-card > .club-payments-card .club-payment-flow {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
body.clubs-panel-body .admin-settings-card > .club-payments-card .club-payment-status-grid > div {min-height:54px !important;padding:9px !important;}
body.clubs-panel-body .admin-settings-card > .club-payments-card .club-payment-flow > div {min-height:52px !important;padding:8px !important;}

/* KALENDARZ ADMINA */
body.clubs-panel-body .admin-board-head {
    align-items:center !important;
    gap:14px !important;
    margin:0 0 12px !important;
    padding:14px 15px !important;
    border:1px solid #dce8f6 !important;
    border-radius:16px !important;
    background:
        radial-gradient(240px 100px at 100% 0%,rgba(24,174,234,.10),transparent 74%),
        linear-gradient(135deg,#f8fbff,#fff) !important;
}
body.clubs-panel-body .admin-board-head span {
    color:#1769e8 !important;
    font-size:9px !important;
    font-weight:950 !important;
}
body.clubs-panel-body .admin-board-head h2 {
    color:#0b2448 !important;
    font-size:22px !important;
    line-height:1.05 !important;
    font-weight:900 !important;
}
body.clubs-panel-body .admin-board-head p {
    margin-top:4px !important;
    color:#70829a !important;
    font-size:9.5px !important;
    font-weight:650 !important;
}
body.clubs-panel-body .admin-stats {
    gap:7px !important;
}
body.clubs-panel-body .admin-stats b {
    min-width:70px !important;
    min-height:56px !important;
    padding:8px !important;
    border:1px solid #dbe7f5 !important;
    border-radius:14px !important;
    background:#fff !important;
    color:#1769e8 !important;
    box-shadow:0 4px 12px rgba(20,59,109,.05) !important;
    font-size:17px !important;
    font-weight:900 !important;
}
body.clubs-panel-body .admin-stats b:nth-child(2){color:#ef8a16 !important;background:#fffaf1 !important;border-color:#f7e4be !important;}
body.clubs-panel-body .admin-stats b:nth-child(3){color:#0a9c70 !important;background:#f2fcf7 !important;border-color:#cdeedf !important;}
body.clubs-panel-body .admin-stats b:nth-child(4){color:#6557e8 !important;background:#f7f5ff !important;border-color:#ded8ff !important;}
body.clubs-panel-body .admin-stats small {font-size:8px !important;color:#71829a !important;}

body.clubs-panel-body .admin-day-row {
    gap:6px !important;
    margin:10px 0 12px !important;
}
body.clubs-panel-body .admin-day-row a {
    height:50px !important;
    border:1px solid #dbe7f5 !important;
    border-radius:13px !important;
    background:#f8fbff !important;
    color:#415b7b !important;
    transition:.15s ease !important;
}
body.clubs-panel-body .admin-day-row a:hover {
    transform:translateY(-1px) !important;
    border-color:#b8d5fa !important;
    background:#f0f6ff !important;
}
body.clubs-panel-body .admin-day-row a.is-active {
    border-color:#1769e8 !important;
    background:linear-gradient(135deg,#1769e8,#0da6e6) !important;
    color:#fff !important;
    box-shadow:0 8px 17px rgba(23,105,232,.20) !important;
}

body.clubs-panel-body .admin-schedule-wrap {
    border:1px solid #d8e5f3 !important;
    border-radius:16px !important;
    background:#fff !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.7) !important;
}
body.clubs-panel-body .admin-schedule-table {
    font-size:11px !important;
}
body.clubs-panel-body .admin-schedule-table th {
    padding:10px 9px !important;
    border-bottom:1px solid #d9e5f3 !important;
    background:linear-gradient(180deg,#edf5ff,#f5f9ff) !important;
    color:#15345e !important;
    font-size:9.5px !important;
    font-weight:950 !important;
}
body.clubs-panel-body .admin-schedule-table td {
    height:45px !important;
    padding:4px !important;
    border-color:#edf2f8 !important;
    background:#fff !important;
}
body.clubs-panel-body .admin-free-slot {
    min-height:34px !important;
    display:flex !important;
    align-items:center !important;
    padding:7px 9px !important;
    border:1px solid #edf3f9 !important;
    border-radius:10px !important;
    background:#f8fafc !important;
    color:#9aacbf !important;
    font-size:9px !important;
}
body.clubs-panel-body .admin-reservation {
    min-height:34px !important;
    padding:6px 8px !important;
    border:1px solid #9ec8ff !important;
    border-radius:10px !important;
    background:linear-gradient(135deg,#e7f2ff,#f4f9ff) !important;
    color:#173a68 !important;
    box-shadow:0 3px 8px rgba(23,105,232,.06) !important;
}
body.clubs-panel-body .admin-reservation strong {font-size:9.5px !important;}
body.clubs-panel-body .admin-reservation small {font-size:8px !important;color:#54759a !important;}

/* delete — ma być dyskretne */
body.clubs-panel-body .delete-club-form {
    margin-top:10px !important;
    padding-top:10px !important;
    border-top:1px solid #edf1f7 !important;
}
body.clubs-panel-body .delete-club-form button {
    height:36px !important;
    border:1px solid #ffd7df !important;
    border-radius:11px !important;
    background:#fff7f8 !important;
    color:#d63d5c !important;
    font-size:9.5px !important;
}

/* ---------- tablet ---------- */
@media (max-width:1100px) {
    body.clubs-panel-body .club-admin-page {width:calc(100% - 24px) !important;}
    body.clubs-panel-body .admin-layout:not(.club-create-layout) {
        grid-template-columns:minmax(330px,.82fr) minmax(0,1.48fr) !important;
        gap:12px !important;
    }
    body.clubs-panel-body .admin-stats b {min-width:58px !important;}
    body.clubs-panel-body .club-payment-dashboard-grid {grid-template-columns:1fr !important;}
}

/* ---------- mobile ---------- */
@media (max-width:820px) {
    body.clubs-panel-body .club-admin-page {
        width:calc(100% - 14px) !important;
        padding-top:8px !important;
        padding-bottom:34px !important;
    }
    body.clubs-panel-body .tfp-club-hero {
        min-height:0 !important;
        padding:18px !important;
        border-radius:19px !important;
        gap:12px !important;
    }
    body.clubs-panel-body .tfp-club-hero h1 {
        font-size:25px !important;
        white-space:normal !important;
    }
    body.clubs-panel-body .tfp-club-hero__actions {
        width:100% !important;
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:7px !important;
    }
    body.clubs-panel-body .tfp-club-tabs {
        overflow-x:auto !important;
        justify-content:flex-start !important;
        scrollbar-width:none !important;
    }
    body.clubs-panel-body .tfp-club-tabs::-webkit-scrollbar {display:none !important;}
    body.clubs-panel-body .tfp-club-tabs a {flex:0 0 auto !important;}
    body.clubs-panel-body .admin-club-tabs {
        overflow-x:auto !important;
        scrollbar-width:none !important;
    }
    body.clubs-panel-body .admin-club-tabs::-webkit-scrollbar {display:none !important;}
    body.clubs-panel-body .admin-club-tabs a {flex:0 0 auto !important;}

    body.clubs-panel-body .admin-layout:not(.club-create-layout) {
        grid-template-columns:1fr !important;
        gap:11px !important;
    }
    body.clubs-panel-body .admin-settings-card,
    body.clubs-panel-body .admin-board-card {
        padding:11px !important;
        border-radius:17px !important;
        box-shadow:0 10px 24px rgba(18,60,112,.065) !important;
    }
    body.clubs-panel-body .club-form-section {
        padding:11px !important;
        border-radius:14px !important;
    }
    body.clubs-panel-body .club-form-section__number {
        width:31px !important;height:31px !important;border-radius:10px !important;
    }
    body.clubs-panel-body .club-form-section__head {grid-template-columns:31px minmax(0,1fr) !important;gap:9px !important;}
    body.clubs-panel-body .club-form-section__head h3 {font-size:13px !important;}
    body.clubs-panel-body .club-form-section__head p {font-size:9px !important;}
    body.clubs-panel-body .club-admin-form input,
    body.clubs-panel-body .club-admin-form select {height:43px !important;min-height:43px !important;font-size:13px !important;}

    body.clubs-panel-body .price-rule-row {
        grid-template-columns:1fr 1fr !important;
        gap:7px !important;
        padding:9px !important;
    }
    body.clubs-panel-body .price-rule-row > label:first-child {grid-column:1 / -1 !important;}
    body.clubs-panel-body .price-rule-row > label:nth-child(4) {grid-column:1 / 2 !important;}
    body.clubs-panel-body .price-rule-remove {grid-column:2 / 3 !important;align-self:end !important;width:100% !important;}
    body.clubs-panel-body .price-rule-row input[type="time"] {min-width:0 !important;}

    body.clubs-panel-body .club-payments-card {border-radius:17px !important;}
    body.clubs-panel-body .club-payments-card__head {
        grid-template-columns:44px minmax(0,1fr) !important;
        gap:10px !important;
        padding:14px !important;
    }
    body.clubs-panel-body .club-payments-card__icon {width:44px !important;height:44px !important;min-width:44px !important;border-radius:13px !important;}
    body.clubs-panel-body .club-payments-card__copy h3 {font-size:17px !important;}
    body.clubs-panel-body .club-payments-card__copy p {font-size:9.5px !important;}
    body.clubs-panel-body .club-payment-health {grid-column:1/-1 !important;justify-self:start !important;}
    body.clubs-panel-body .club-payment-methods {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:7px !important;
        padding:10px !important;
    }
    body.clubs-panel-body .club-payment-method {min-height:44px !important;}
    body.clubs-panel-body .club-payment-dashboard-grid {grid-template-columns:1fr !important;padding:11px !important;gap:10px !important;}
    body.clubs-panel-body .club-payment-status-grid {grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:6px !important;}
    body.clubs-panel-body .club-payment-status-grid > div {min-height:56px !important;padding:9px 8px !important;}
    body.clubs-panel-body .club-payment-status-grid span {font-size:7px !important;}
    body.clubs-panel-body .club-payment-status-grid strong {font-size:9.5px !important;}
    body.clubs-panel-body .club-payment-flow {grid-template-columns:1fr !important;gap:6px !important;}
    body.clubs-panel-body .club-payment-flow > div {min-height:48px !important;}
    body.clubs-panel-body .club-payment-mode-grid {grid-template-columns:1fr !important;}
    body.clubs-panel-body .club-payment-footer {align-items:stretch !important;flex-direction:column !important;}
    body.clubs-panel-body .club-payment-footer button {width:100% !important;}

    body.clubs-panel-body .admin-board-head {
        align-items:stretch !important;
        flex-direction:column !important;
        padding:12px !important;
        border-radius:14px !important;
    }
    body.clubs-panel-body .admin-board-head h2 {font-size:19px !important;}
    body.clubs-panel-body .admin-stats {
        display:grid !important;
        grid-template-columns:repeat(4,minmax(0,1fr)) !important;
        width:100% !important;
    }
    body.clubs-panel-body .admin-stats b {min-width:0 !important;min-height:52px !important;font-size:15px !important;}
    body.clubs-panel-body .admin-day-row {
        display:flex !important;
        gap:6px !important;
        overflow-x:auto !important;
        padding-bottom:3px !important;
        scrollbar-width:none !important;
    }
    body.clubs-panel-body .admin-day-row::-webkit-scrollbar {display:none !important;}
    body.clubs-panel-body .admin-day-row a {flex:0 0 74px !important;height:48px !important;}
    body.clubs-panel-body .admin-schedule-wrap {border-radius:14px !important;}
    body.clubs-panel-body .admin-schedule-table {min-width:620px !important;}
}

@media (max-width:480px) {
    body.clubs-panel-body .club-admin-page {width:calc(100% - 10px) !important;}
    body.clubs-panel-body .tfp-club-hero {padding:15px !important;border-radius:17px !important;}
    body.clubs-panel-body .tfp-club-hero h1 {font-size:22px !important;}
    body.clubs-panel-body .tfp-club-hero__actions {grid-template-columns:1fr !important;}
    body.clubs-panel-body .tfp-club-tabs {padding:5px !important;border-radius:13px !important;}
    body.clubs-panel-body .admin-settings-card,
    body.clubs-panel-body .admin-board-card {padding:9px !important;border-radius:15px !important;}
    body.clubs-panel-body .admin-form-grid {grid-template-columns:1fr !important;}
    body.clubs-panel-body .club-price-defaults {grid-template-columns:1fr !important;}
    body.clubs-panel-body .court-features-grid {grid-template-columns:1fr 1fr !important;}
    body.clubs-panel-body .price-rules-head {align-items:flex-start !important;flex-direction:column !important;}
    body.clubs-panel-body .price-rule-add {width:100% !important;}
    body.clubs-panel-body .club-payment-methods {grid-template-columns:1fr 1fr !important;}
    body.clubs-panel-body .club-payment-method small {display:none !important;}
    body.clubs-panel-body .club-payment-status-grid {grid-template-columns:1fr !important;}
    body.clubs-panel-body .club-payment-status-grid > div {min-height:48px !important;}
    body.clubs-panel-body .admin-stats {grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}

/* =========================================================
   V4.1 — ADMIN CALENDAR / reservation delete action
   Compact icon button that always fits inside the booking tile.
   ========================================================= */
body.clubs-panel-body .admin-reservation {
    position:relative !important;
    overflow:hidden !important;
    padding-right:38px !important;
}
body.clubs-panel-body .admin-inline-delete {
    position:absolute !important;
    top:50% !important;
    right:6px !important;
    z-index:4 !important;
    margin:0 !important;
    padding:0 !important;
    transform:translateY(-50%) !important;
    line-height:1 !important;
}
body.clubs-panel-body .admin-inline-delete button {
    position:relative !important;
    display:grid !important;
    place-items:center !important;
    width:26px !important;
    min-width:26px !important;
    max-width:26px !important;
    height:26px !important;
    min-height:26px !important;
    max-height:26px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    border:1px solid #ffd4dc !important;
    border-radius:8px !important;
    background:linear-gradient(180deg,#fff,#fff4f6) !important;
    color:transparent !important;
    font-size:0 !important;
    line-height:1 !important;
    box-shadow:0 3px 8px rgba(213,58,87,.08) !important;
    cursor:pointer !important;
}
body.clubs-panel-body .admin-inline-delete button::before {
    content:"×" !important;
    display:block !important;
    color:#e54861 !important;
    font-family:Arial,sans-serif !important;
    font-size:18px !important;
    font-weight:700 !important;
    line-height:1 !important;
    transform:translateY(-1px) !important;
}
body.clubs-panel-body .admin-inline-delete button:hover {
    border-color:#ffb8c5 !important;
    background:#ffecef !important;
    box-shadow:0 5px 12px rgba(213,58,87,.14) !important;
}
body.clubs-panel-body .admin-reservation strong,
body.clubs-panel-body .admin-reservation small {
    display:block !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
}
body.clubs-panel-body .admin-reservation.is-part {
    padding-right:8px !important;
}

@media (max-width:820px) {
    body.clubs-panel-body .admin-reservation {padding-right:36px !important;}
    body.clubs-panel-body .admin-inline-delete {right:5px !important;}
    body.clubs-panel-body .admin-inline-delete button {
        width:25px !important;
        min-width:25px !important;
        max-width:25px !important;
        height:25px !important;
        min-height:25px !important;
        max-height:25px !important;
        border-radius:8px !important;
    }
    body.clubs-panel-body .admin-inline-delete button::before {font-size:17px !important;}
    body.clubs-panel-body .admin-reservation.is-part {padding-right:8px !important;}
}

/* ======================================================================
   V5 — PUBLICZNA REZERWACJA / PAYMENT EXPERIENCE PREMIUM SaaS
   Czytelne płatności w wąskim sidebarze + mobile + mocniejszy CTA.
   ====================================================================== */

/* panel płatności: większy, czytelniejszy i bardziej "produktowy" */
.booking-board .booking-payment-panel,
.booking-payment-panel {
    margin-top:10px !important;
    padding:14px !important;
    border:1px solid rgba(36,112,232,.24) !important;
    border-radius:18px !important;
    background:
        radial-gradient(190px 120px at 102% -8%,rgba(37,191,238,.18),transparent 70%),
        radial-gradient(160px 105px at -7% 110%,rgba(111,73,232,.11),transparent 72%),
        linear-gradient(180deg,#ffffff 0%,#f5f9ff 100%) !important;
    box-shadow:0 12px 28px rgba(18,69,137,.10) !important;
    overflow:hidden !important;
}
.booking-payment-panel::before {
    content:"";
    position:absolute;
    left:0; right:0; top:0;
    height:3px;
    background:linear-gradient(90deg,#1f6ff0 0%,#6b55ea 40%,#e6418b 68%,#12b8e8 100%);
}

.booking-payment-panel__head {
    grid-template-columns:42px minmax(0,1fr) !important;
    gap:10px !important;
    margin:0 0 11px !important;
    align-items:center !important;
}
.booking-payment-panel__icon {
    width:42px !important;
    height:42px !important;
    border-radius:13px !important;
    background:linear-gradient(145deg,#1d6cf0 0%,#6857ea 55%,#14b5e9 100%) !important;
    box-shadow:0 8px 18px rgba(64,87,220,.24) !important;
}
.booking-payment-panel__icon::before {
    width:21px !important;
    height:14px !important;
    border-width:2px !important;
    border-radius:4px !important;
}
.booking-payment-panel__icon::after {
    width:7px !important;
    height:2px !important;
    right:10px !important;
    bottom:11px !important;
}
.booking-payment-panel__eyebrow {
    margin-bottom:3px !important;
    color:#2674e9 !important;
    font-size:8px !important;
    letter-spacing:.08em !important;
}
.booking-payment-panel__head strong {
    color:#0b2347 !important;
    font-size:14px !important;
    line-height:1.12 !important;
    letter-spacing:-.02em !important;
}
.booking-payment-panel__head small:not(.booking-payment-panel__eyebrow) {
    margin-top:4px !important;
    color:#687d9a !important;
    font-size:9px !important;
    line-height:1.35 !important;
}
.booking-payment-secure {
    display:none !important;
}

/* BLIK / Karta / Apple Pay jako widoczne badge, nie mikrotekst */
.booking-payment-methods {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px !important;
    margin:0 0 11px !important;
}
.booking-payment-methods > span {
    min-width:0 !important;
    min-height:39px !important;
    padding:7px 5px !important;
    gap:5px !important;
    border:1px solid #dbe7f5 !important;
    border-radius:11px !important;
    background:#fff !important;
    box-shadow:0 4px 10px rgba(20,65,120,.045) !important;
}
.booking-payment-methods b {
    font-size:9.5px !important;
    font-weight:950 !important;
}
.booking-payment-methods small {
    display:none !important;
}
.booking-payment-methods .is-blik {
    background:linear-gradient(180deg,#fff,#fff8fb) !important;
    border-color:#f1d7e3 !important;
}
.booking-payment-methods .is-blik b {
    font-size:12px !important;
    letter-spacing:-.025em !important;
}
.booking-payment-methods .is-blik i {
    width:8px !important;
    height:8px !important;
    background:#e90046 !important;
    box-shadow:0 0 0 3px rgba(233,0,70,.09) !important;
}
.booking-payment-methods .is-card {
    background:linear-gradient(180deg,#fff,#f8fbff) !important;
}
.booking-payment-methods .is-card i {
    width:17px !important;
    height:11px !important;
    border-radius:3px !important;
    background:linear-gradient(135deg,#ffd66a,#e5a52a) !important;
    box-shadow:inset 0 0 0 1px rgba(116,76,0,.09) !important;
}
.booking-payment-methods .is-apple {
    background:linear-gradient(180deg,#151b26,#090d14) !important;
    border-color:#101620 !important;
    box-shadow:0 5px 12px rgba(0,0,0,.10) !important;
}
.booking-payment-methods .is-apple b {
    color:#fff !important;
    font-size:9.5px !important;
}
.booking-payment-methods .is-apple b::before {
    content:"●";
    display:inline-block;
    margin-right:4px;
    font-size:7px;
    vertical-align:1px;
}

/* sposób płatności — pełna szerokość, zero upychania dwóch kafli */
.booking-payment-options {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:7px !important;
}
.booking-payment-option {
    grid-template-columns:38px minmax(0,1fr) auto !important;
    gap:9px !important;
    min-height:62px !important;
    padding:9px 10px !important;
    border:1px solid #d9e5f3 !important;
    border-radius:13px !important;
    background:#fff !important;
    box-shadow:0 4px 12px rgba(23,63,111,.035) !important;
}
.booking-payment-option:hover {
    border-color:#a9c9f4 !important;
    transform:translateY(-1px) !important;
    box-shadow:0 7px 17px rgba(32,92,170,.08) !important;
}
.booking-payment-option.is-selected,
.booking-payment-option:has(input:checked) {
    border-color:#73a7f1 !important;
    background:
        radial-gradient(120px 72px at 100% 0%,rgba(108,87,234,.08),transparent 72%),
        linear-gradient(135deg,#eef6ff 0%,#f8f6ff 100%) !important;
    box-shadow:inset 0 0 0 1px rgba(45,117,229,.08),0 7px 16px rgba(47,110,214,.07) !important;
}
.booking-payment-option__icon {
    width:38px !important;
    height:38px !important;
    border-radius:11px !important;
    background:linear-gradient(145deg,#eaf4ff,#f2efff) !important;
}
.booking-payment-option__icon.is-online::before {
    left:8px !important; top:10px !important;
    width:21px !important; height:14px !important;
    border:1.8px solid #216fd9 !important;
    border-radius:4px !important;
}
.booking-payment-option__icon.is-online::after {
    left:11px !important; top:15px !important;
    width:7px !important; height:2px !important;
    background:#216fd9 !important;
}
.booking-payment-option__icon.is-onsite {
    background:linear-gradient(145deg,#f3f6fa,#eef2f7) !important;
}
.booking-payment-option__icon.is-onsite::before {
    left:10px !important; top:8px !important;
    width:18px !important; height:21px !important;
    border:1.7px solid #697d98 !important;
    border-radius:4px !important;
}
.booking-payment-option__icon.is-onsite::after {
    left:14px !important; top:13px !important;
    width:10px !important; height:2px !important;
    background:#697d98 !important;
    box-shadow:0 5px 0 #697d98,0 10px 0 #697d98 !important;
}
.booking-payment-option > span:not(.booking-payment-option__icon) {
    gap:3px !important;
}
.booking-payment-option b {
    color:#0f2a50 !important;
    font-size:11.5px !important;
    line-height:1.12 !important;
}
.booking-payment-option small {
    color:#6e819c !important;
    font-size:8.5px !important;
    line-height:1.28 !important;
}
.booking-payment-option em {
    padding:5px 7px !important;
    border-radius:999px !important;
    background:linear-gradient(135deg,#dff1ff,#e9e8ff) !important;
    color:#236dd7 !important;
    font-size:6.8px !important;
    letter-spacing:.03em !important;
}

/* płatność wymagana */
.booking-payment-required > span {
    grid-template-columns:34px minmax(0,1fr) !important;
    column-gap:9px !important;
    padding:10px !important;
    border-radius:12px !important;
    background:linear-gradient(135deg,#f3f7ff,#f7f4ff) !important;
}
.booking-payment-required i {
    width:34px !important;
    height:34px !important;
    border-radius:10px !important;
}
.booking-payment-required b {
    font-size:10.5px !important;
}
.booking-payment-required small {
    font-size:8.2px !important;
    line-height:1.32 !important;
}

/* kwota i główny przycisk w bocznym formularzu */
.booking-checkout--inline .booking-total,
.booking-checkout--inline .booking-summary-total,
.booking-checkout--inline [class*="booking-total"] {
    border-radius:12px !important;
}
.booking-checkout--inline #bookButton {
    min-height:46px !important;
    height:46px !important;
    border:0 !important;
    border-radius:12px !important;
    font-size:11.5px !important;
    line-height:1 !important;
    font-weight:950 !important;
    letter-spacing:-.01em !important;
    transition:transform .16s ease,box-shadow .16s ease,filter .16s ease !important;
}
.booking-checkout--inline #bookButton:not(:disabled) {
    background:linear-gradient(105deg,#1769ee 0%,#6657e9 50%,#12b4e9 100%) !important;
    color:#fff !important;
    box-shadow:0 10px 22px rgba(51,94,220,.24) !important;
}
.booking-checkout--inline #bookButton:not(:disabled):hover {
    transform:translateY(-1px) !important;
    filter:saturate(1.08) !important;
    box-shadow:0 13px 28px rgba(51,94,220,.30) !important;
}
.booking-checkout--inline #bookButton:disabled {
    background:#e8eef6 !important;
    color:#99a8bc !important;
    opacity:1 !important;
    box-shadow:none !important;
}

/* status płatności / ponowienie w komórce kalendarza */
.reservation-payment-badge {
    min-height:17px !important;
    padding:3px 7px !important;
    border-radius:999px !important;
    font-size:8.5px !important;
    line-height:1 !important;
    font-weight:950 !important;
    box-shadow:0 3px 8px rgba(20,65,120,.08) !important;
}
.reservation-payment-badge.is-paid {
    background:linear-gradient(135deg,#d7f8e9,#e8fff5) !important;
    color:#07805a !important;
    border:1px solid #bcebd7 !important;
}
.reservation-payment-badge.is-pending {
    background:linear-gradient(135deg,#fff0c8,#fff8e4) !important;
    color:#9b6300 !important;
    border:1px solid #f2d995 !important;
}
.slot-payment-retry {
    left:6px !important;
    bottom:4px !important;
    min-height:17px !important;
    padding:3px 8px !important;
    border:1px solid rgba(255,255,255,.72) !important;
    border-radius:999px !important;
    background:linear-gradient(135deg,#1769ee,#6557e9) !important;
    color:#fff !important;
    font-size:8.5px !important;
    line-height:1 !important;
    font-weight:950 !important;
    box-shadow:0 4px 10px rgba(47,91,220,.22) !important;
}
.slot-payment-retry::before {
    content:"↗";
    margin-right:3px;
    font-size:8px;
}

/* mobile — duże, czytelne elementy pod kciuk */
@media (max-width:760px) {
    .booking-payment-panel {
        margin-top:10px !important;
        padding:13px !important;
        border-radius:17px !important;
    }
    .booking-payment-panel__head {
        grid-template-columns:40px minmax(0,1fr) !important;
        gap:9px !important;
        margin-bottom:10px !important;
    }
    .booking-payment-panel__icon {
        width:40px !important;
        height:40px !important;
    }
    .booking-payment-panel__head strong {
        font-size:14px !important;
    }
    .booking-payment-panel__head small:not(.booking-payment-panel__eyebrow) {
        font-size:9px !important;
    }
    .booking-payment-methods {
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        gap:5px !important;
        margin-bottom:9px !important;
    }
    .booking-payment-methods > span {
        min-height:38px !important;
        padding:6px 4px !important;
    }
    .booking-payment-methods b {
        font-size:9px !important;
    }
    .booking-payment-methods .is-blik b {
        font-size:11px !important;
    }
    .booking-payment-options {
        grid-template-columns:1fr !important;
        gap:7px !important;
    }
    .booking-payment-option {
        grid-template-columns:40px minmax(0,1fr) auto !important;
        min-height:64px !important;
        padding:10px !important;
        border-radius:13px !important;
    }
    .booking-payment-option__icon {
        width:40px !important;
        height:40px !important;
    }
    .booking-payment-option b {
        font-size:12px !important;
    }
    .booking-payment-option small {
        font-size:9px !important;
    }
    .booking-payment-option em {
        font-size:7px !important;
        padding:5px 7px !important;
    }
    .booking-checkout--inline #bookButton {
        min-height:50px !important;
        height:50px !important;
        border-radius:13px !important;
        font-size:12px !important;
    }
    .reservation-payment-badge,
    .slot-payment-retry {
        font-size:8px !important;
    }
}

@media (max-width:390px) {
    .booking-payment-panel {
        padding:11px !important;
    }
    .booking-payment-methods {
        grid-template-columns:1fr 1fr 1fr !important;
    }
    .booking-payment-methods > span {
        min-height:36px !important;
    }
    .booking-payment-option {
        grid-template-columns:36px minmax(0,1fr) !important;
        min-height:60px !important;
    }
    .booking-payment-option__icon {
        width:36px !important;
        height:36px !important;
    }
    .booking-payment-option em {
        grid-column:2 !important;
        justify-self:start !important;
        margin-top:2px !important;
    }
}

/* ======================================================================
   V6 — PUBLICZNA REZERWACJA / MINIMAL SaaS
   Zwarty panel płatności: małe ikony, małe segmenty, zero wielkich kafli.
   Desktop + mobile. Nadpisuje wcześniejsze V5 wyłącznie w publicznej rezerwacji.
   ====================================================================== */

/* panel: lekki, zwarty, bez ciężkich gradientów */
body .booking-payment-panel,
body .booking-board .booking-payment-panel {
    position:relative !important;
    margin-top:9px !important;
    padding:10px !important;
    border:1px solid #dbe7f5 !important;
    border-radius:14px !important;
    background:#ffffff !important;
    box-shadow:0 8px 22px rgba(20,55,100,.065) !important;
    overflow:hidden !important;
}
body .booking-payment-panel::before {
    content:"" !important;
    position:absolute !important;
    left:10px !important;
    right:10px !important;
    top:0 !important;
    height:2px !important;
    border-radius:0 0 8px 8px !important;
    background:linear-gradient(90deg,#2d7ff0,#7a61e8,#19b8d8) !important;
    opacity:.9 !important;
}

/* header: mała ikonka zamiast dużej planszy */
body .booking-payment-panel__head {
    display:grid !important;
    grid-template-columns:28px minmax(0,1fr) !important;
    gap:8px !important;
    align-items:center !important;
    margin:0 0 8px !important;
}
body .booking-payment-panel__icon {
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
    border:1px solid #cfe0f7 !important;
    border-radius:9px !important;
    background:#f3f8ff !important;
    box-shadow:none !important;
}
body .booking-payment-panel__icon::before {
    width:14px !important;
    height:9px !important;
    border:1.5px solid #2c74d9 !important;
    border-radius:3px !important;
}
body .booking-payment-panel__icon::after {
    width:4px !important;
    height:1.5px !important;
    right:6px !important;
    bottom:7px !important;
    background:#2c74d9 !important;
}
body .booking-payment-panel__eyebrow { display:none !important; }
body .booking-payment-panel__head strong {
    margin:0 !important;
    color:#0c2548 !important;
    font-size:12.5px !important;
    line-height:1.1 !important;
    font-weight:900 !important;
    letter-spacing:-.015em !important;
}
body .booking-payment-panel__head small:not(.booking-payment-panel__eyebrow) {
    display:block !important;
    margin-top:2px !important;
    color:#71839b !important;
    font-size:7.8px !important;
    line-height:1.2 !important;
    font-weight:650 !important;
}
body .booking-payment-secure { display:none !important; }

/* metody: małe badge / ikony, nie wielkie plansze */
body .booking-payment-methods {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:5px !important;
    margin:0 0 7px !important;
}
body .booking-payment-methods > span {
    min-width:0 !important;
    min-height:28px !important;
    height:28px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:4px !important;
    padding:3px 5px !important;
    border:1px solid #e2eaf4 !important;
    border-radius:8px !important;
    background:#fbfdff !important;
    box-shadow:none !important;
}
body .booking-payment-methods b {
    font-size:8.2px !important;
    line-height:1 !important;
    font-weight:900 !important;
    white-space:nowrap !important;
}
body .booking-payment-methods small { display:none !important; }
body .booking-payment-methods .is-blik {
    border-color:#f2dbe5 !important;
    background:#fffafd !important;
}
body .booking-payment-methods .is-blik i {
    width:6px !important;
    height:6px !important;
    border-radius:50% !important;
    background:#e90046 !important;
    box-shadow:none !important;
}
body .booking-payment-methods .is-blik b {
    color:#202531 !important;
    font-size:8.7px !important;
}
body .booking-payment-methods .is-card i {
    width:12px !important;
    height:8px !important;
    border:1px solid #c99927 !important;
    border-radius:2px !important;
    background:#ffe28a !important;
    box-shadow:none !important;
}
body .booking-payment-methods .is-apple {
    border-color:#dfe5ec !important;
    background:#fff !important;
    color:#111827 !important;
}
body .booking-payment-methods .is-apple b {
    color:#111827 !important;
    font-size:8.2px !important;
}
body .booking-payment-methods .is-apple b::before {
    content:"●" !important;
    margin-right:3px !important;
    font-size:5px !important;
    color:#111827 !important;
}

/* dwa małe segmenty płatności obok siebie */
body .booking-payment-options {
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:6px !important;
}
body .booking-payment-option {
    position:relative !important;
    display:grid !important;
    grid-template-columns:24px minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    gap:1px 7px !important;
    align-items:center !important;
    min-width:0 !important;
    min-height:45px !important;
    padding:7px 8px !important;
    border:1px solid #dfe8f3 !important;
    border-radius:10px !important;
    background:#fff !important;
    box-shadow:none !important;
    transform:none !important;
}
body .booking-payment-option:hover {
    border-color:#bdd1ec !important;
    box-shadow:none !important;
    transform:none !important;
}
body .booking-payment-option.is-selected,
body .booking-payment-option:has(input:checked) {
    border-color:#79aaf0 !important;
    background:#f5f9ff !important;
    box-shadow:inset 0 0 0 1px rgba(45,119,223,.05) !important;
}
body .booking-payment-option__icon {
    grid-row:1 / 3 !important;
    width:24px !important;
    height:24px !important;
    min-width:24px !important;
    border:1px solid #d8e5f6 !important;
    border-radius:8px !important;
    background:#f1f6fd !important;
}
body .booking-payment-option__icon.is-online::before {
    left:5px !important;
    top:7px !important;
    width:13px !important;
    height:8px !important;
    border:1.4px solid #2874d6 !important;
    border-radius:2px !important;
}
body .booking-payment-option__icon.is-online::after {
    left:7px !important;
    top:10px !important;
    width:4px !important;
    height:1.5px !important;
    background:#2874d6 !important;
}
body .booking-payment-option__icon.is-onsite {
    background:#f6f8fb !important;
    border-color:#e1e7ee !important;
}
body .booking-payment-option__icon.is-onsite::before {
    left:6px !important;
    top:5px !important;
    width:11px !important;
    height:13px !important;
    border:1.3px solid #6f8199 !important;
    border-radius:2px !important;
}
body .booking-payment-option__icon.is-onsite::after {
    left:8px !important;
    top:8px !important;
    width:7px !important;
    height:1px !important;
    background:#6f8199 !important;
    box-shadow:0 3px 0 #6f8199,0 6px 0 #6f8199 !important;
}
body .booking-payment-option > span:not(.booking-payment-option__icon) {
    min-width:0 !important;
    gap:0 !important;
}
body .booking-payment-option b {
    display:block !important;
    color:#15304f !important;
    font-size:9.2px !important;
    line-height:1.05 !important;
    font-weight:900 !important;
}
body .booking-payment-option small {
    display:block !important;
    margin-top:2px !important;
    color:#7b8b9f !important;
    font-size:6.5px !important;
    line-height:1.12 !important;
    font-weight:650 !important;
}
body .booking-payment-option em {
    position:absolute !important;
    right:6px !important;
    top:6px !important;
    padding:2px 4px !important;
    border-radius:999px !important;
    background:#e9f3ff !important;
    color:#2b72cf !important;
    font-size:5.4px !important;
    line-height:1 !important;
    font-style:normal !important;
    font-weight:950 !important;
    letter-spacing:.02em !important;
}

/* suma i CTA — kompaktowe */
body .booking-checkout--inline .booking-total,
body .booking-checkout--inline .booking-summary-total,
body .booking-checkout--inline [class*="booking-total"] {
    min-height:36px !important;
    padding:7px 9px !important;
    border:1px solid #e1eaf4 !important;
    border-radius:10px !important;
    background:#f9fbfe !important;
}
body .booking-checkout--inline #bookButton {
    min-height:42px !important;
    height:42px !important;
    margin-top:7px !important;
    border-radius:10px !important;
    font-size:10.5px !important;
    font-weight:900 !important;
    letter-spacing:0 !important;
}
body .booking-checkout--inline #bookButton:not(:disabled) {
    background:#176de8 !important;
    color:#fff !important;
    box-shadow:0 7px 16px rgba(23,109,232,.18) !important;
}
body .booking-checkout--inline #bookButton:not(:disabled):hover {
    transform:none !important;
    filter:none !important;
    background:#1263d7 !important;
    box-shadow:0 8px 18px rgba(23,109,232,.21) !important;
}

/* retry / status w samym slocie jeszcze mniejszy */
body .reservation-payment-badge,
body .slot-payment-retry {
    min-height:15px !important;
    height:15px !important;
    padding:2px 5px !important;
    border-radius:6px !important;
    font-size:7px !important;
    line-height:1 !important;
    box-shadow:none !important;
}
body .slot-payment-retry {
    left:5px !important;
    bottom:3px !important;
    background:#2778df !important;
    border-color:#2778df !important;
}
body .slot-payment-retry::before { display:none !important; }

/* MOBILE: panel w jednej zwartej karcie, segmenty nadal obok siebie */
@media (max-width:760px) {
    body .booking-payment-panel,
    body .booking-board .booking-payment-panel {
        margin-top:8px !important;
        padding:9px !important;
        border-radius:13px !important;
        box-shadow:0 6px 16px rgba(20,55,100,.055) !important;
    }
    body .booking-payment-panel__head {
        grid-template-columns:26px minmax(0,1fr) !important;
        gap:7px !important;
        margin-bottom:7px !important;
    }
    body .booking-payment-panel__icon {
        width:26px !important;
        height:26px !important;
        min-width:26px !important;
        border-radius:8px !important;
    }
    body .booking-payment-panel__head strong { font-size:12px !important; }
    body .booking-payment-panel__head small:not(.booking-payment-panel__eyebrow) {
        font-size:7.4px !important;
        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
    }
    body .booking-payment-methods {
        gap:4px !important;
        margin-bottom:6px !important;
    }
    body .booking-payment-methods > span {
        min-height:26px !important;
        height:26px !important;
        padding:2px 4px !important;
        border-radius:7px !important;
    }
    body .booking-payment-methods b { font-size:7.7px !important; }
    body .booking-payment-methods .is-blik b { font-size:8.2px !important; }
    body .booking-payment-options {
        grid-template-columns:1fr 1fr !important;
        gap:5px !important;
    }
    body .booking-payment-option {
        grid-template-columns:22px minmax(0,1fr) !important;
        min-height:43px !important;
        padding:6px !important;
        border-radius:9px !important;
    }
    body .booking-payment-option__icon {
        width:22px !important;
        height:22px !important;
        min-width:22px !important;
        border-radius:7px !important;
    }
    body .booking-payment-option__icon.is-online::before {
        left:4px !important; top:6px !important; width:12px !important; height:8px !important;
    }
    body .booking-payment-option__icon.is-online::after { left:6px !important; top:9px !important; }
    body .booking-payment-option__icon.is-onsite::before {
        left:5px !important; top:4px !important; width:10px !important; height:12px !important;
    }
    body .booking-payment-option__icon.is-onsite::after { left:7px !important; top:7px !important; width:6px !important; }
    body .booking-payment-option b { font-size:8.7px !important; }
    body .booking-payment-option small {
        font-size:6.1px !important;
        line-height:1.05 !important;
        display:-webkit-box !important;
        -webkit-line-clamp:2 !important;
        -webkit-box-orient:vertical !important;
        overflow:hidden !important;
    }
    body .booking-payment-option em {
        top:5px !important;
        right:5px !important;
        font-size:5px !important;
        padding:2px 3px !important;
    }
    body .booking-checkout--inline #bookButton {
        min-height:40px !important;
        height:40px !important;
        border-radius:9px !important;
        font-size:10px !important;
    }
}

@media (max-width:355px) {
    body .booking-payment-options { grid-template-columns:1fr !important; }
    body .booking-payment-option { min-height:40px !important; }
}

/* ======================================================================
   V7 — PUBLICZNA REZERWACJA / ULTRA COMPACT SaaS
   Zero dużych plansz. Jeden lekki pasek płatności + małe chipy i segmenty.
   Nadpisuje V5/V6 wyłącznie w publicznym formularzu rezerwacji.
   ====================================================================== */

/* całość: niska, neutralna sekcja zamiast dużej karty */
body .booking-payment-panel,
body .booking-board .booking-payment-panel {
    margin:8px 0 0 !important;
    padding:8px 9px 9px !important;
    border:1px solid #e2e9f2 !important;
    border-radius:12px !important;
    background:#fff !important;
    box-shadow:none !important;
    overflow:hidden !important;
}
body .booking-payment-panel::before {
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    bottom:0 !important;
    width:2px !important;
    height:auto !important;
    border-radius:0 !important;
    background:#2b79e8 !important;
    opacity:.85 !important;
}

/* bez dużej niebieskiej ikonki */
body .booking-payment-panel__head {
    display:block !important;
    margin:0 0 6px !important;
    padding:0 !important;
}
body .booking-payment-panel__icon,
body .booking-payment-secure,
body .booking-payment-panel__eyebrow {
    display:none !important;
}
body .booking-payment-panel__head > div {
    min-width:0 !important;
}
body .booking-payment-panel__head strong {
    display:block !important;
    margin:0 !important;
    color:#10233f !important;
    font-size:11.5px !important;
    line-height:1.15 !important;
    font-weight:850 !important;
    letter-spacing:-.012em !important;
}
body .booking-payment-panel__head small:not(.booking-payment-panel__eyebrow) {
    display:block !important;
    margin:2px 0 0 !important;
    color:#8090a5 !important;
    font-size:7.2px !important;
    line-height:1.2 !important;
    font-weight:600 !important;
}

/* BLIK / Karta / Apple Pay = trzy malutkie chipy w jednym rzędzie */
body .booking-payment-methods {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    flex-wrap:wrap !important;
    gap:4px !important;
    margin:0 0 7px !important;
}
body .booking-payment-methods > span {
    width:auto !important;
    min-width:0 !important;
    min-height:20px !important;
    height:20px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:4px !important;
    padding:0 7px !important;
    border:1px solid #e1e8f1 !important;
    border-radius:999px !important;
    background:#f9fbfd !important;
    box-shadow:none !important;
}
body .booking-payment-methods b {
    font-size:7.7px !important;
    line-height:1 !important;
    font-weight:850 !important;
    color:#31445f !important;
    white-space:nowrap !important;
}
body .booking-payment-methods small { display:none !important; }
body .booking-payment-methods .is-blik {
    background:#fff !important;
    border-color:#e6e8ee !important;
}
body .booking-payment-methods .is-blik i {
    width:5px !important;
    height:5px !important;
    border-radius:50% !important;
    background:#e60046 !important;
    box-shadow:none !important;
}
body .booking-payment-methods .is-blik b {
    color:#161b24 !important;
    font-size:8px !important;
}
body .booking-payment-methods .is-card i {
    width:11px !important;
    height:7px !important;
    border:1px solid #cf9e2c !important;
    border-radius:2px !important;
    background:#ffe08a !important;
    box-shadow:none !important;
}
body .booking-payment-methods .is-apple {
    background:#fff !important;
    border-color:#e1e6ec !important;
    color:#161b24 !important;
}
body .booking-payment-methods .is-apple b {
    color:#161b24 !important;
    font-size:7.7px !important;
}
body .booking-payment-methods .is-apple b::before {
    content:"●" !important;
    margin-right:3px !important;
    font-size:4px !important;
    vertical-align:1px !important;
}

/* sposób płatności = kompaktowy segmented control, a nie dwie plansze */
body .booking-payment-options {
    display:flex !important;
    align-items:stretch !important;
    gap:3px !important;
    padding:3px !important;
    border:1px solid #e1e8f1 !important;
    border-radius:10px !important;
    background:#f3f6fa !important;
}
body .booking-payment-option {
    position:relative !important;
    flex:1 1 0 !important;
    width:0 !important;
    min-width:0 !important;
    min-height:32px !important;
    height:32px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    padding:0 7px !important;
    border:0 !important;
    border-radius:7px !important;
    background:transparent !important;
    box-shadow:none !important;
    transform:none !important;
    cursor:pointer !important;
}
body .booking-payment-option:hover {
    background:#eef3f8 !important;
    border:0 !important;
    box-shadow:none !important;
    transform:none !important;
}
body .booking-payment-option.is-selected,
body .booking-payment-option:has(input:checked) {
    background:#fff !important;
    border:0 !important;
    box-shadow:0 1px 5px rgba(20,49,83,.10) !important;
}
body .booking-payment-option input {
    position:absolute !important;
    opacity:0 !important;
    pointer-events:none !important;
}

/* tylko maleńkie ikonki */
body .booking-payment-option__icon {
    position:relative !important;
    flex:0 0 16px !important;
    width:16px !important;
    height:16px !important;
    min-width:16px !important;
    border:0 !important;
    border-radius:5px !important;
    background:#e9f2fd !important;
}
body .booking-payment-option__icon.is-online::before {
    content:"" !important;
    position:absolute !important;
    left:3px !important;
    top:5px !important;
    width:9px !important;
    height:6px !important;
    border:1.2px solid #2a72d1 !important;
    border-radius:2px !important;
}
body .booking-payment-option__icon.is-online::after {
    content:"" !important;
    position:absolute !important;
    left:5px !important;
    top:7px !important;
    width:3px !important;
    height:1px !important;
    border-radius:99px !important;
    background:#2a72d1 !important;
}
body .booking-payment-option__icon.is-onsite {
    background:#eef1f5 !important;
}
body .booking-payment-option__icon.is-onsite::before {
    content:"" !important;
    position:absolute !important;
    left:4px !important;
    top:3px !important;
    width:8px !important;
    height:10px !important;
    border:1.1px solid #718197 !important;
    border-radius:2px !important;
}
body .booking-payment-option__icon.is-onsite::after {
    content:"" !important;
    position:absolute !important;
    left:6px !important;
    top:6px !important;
    width:4px !important;
    height:1px !important;
    background:#718197 !important;
    box-shadow:0 2px 0 #718197,0 4px 0 #718197 !important;
}
body .booking-payment-option > span:not(.booking-payment-option__icon) {
    display:block !important;
    min-width:0 !important;
}
body .booking-payment-option b {
    display:block !important;
    color:#20344f !important;
    font-size:8.6px !important;
    line-height:1 !important;
    font-weight:850 !important;
    white-space:nowrap !important;
}
body .booking-payment-option small,
body .booking-payment-option em {
    display:none !important;
}

/* płatność wymagana — również pojedynczy niski pasek */
body .booking-payment-required > span {
    display:flex !important;
    align-items:center !important;
    gap:6px !important;
    min-height:32px !important;
    padding:6px 8px !important;
    border:1px solid #dfe8f2 !important;
    border-radius:9px !important;
    background:#f7faff !important;
}
body .booking-payment-required i {
    flex:0 0 16px !important;
    width:16px !important;
    height:16px !important;
    border-radius:5px !important;
    background:#edf3ff !important;
}
body .booking-payment-required b {
    font-size:8.5px !important;
    line-height:1 !important;
}
body .booking-payment-required small { display:none !important; }

/* CTA i suma także lżejsze */
body .booking-checkout--inline .booking-total,
body .booking-checkout--inline .booking-summary-total,
body .booking-checkout--inline [class*="booking-total"] {
    min-height:32px !important;
    padding:6px 8px !important;
    border-radius:9px !important;
}
body .booking-checkout--inline #bookButton {
    min-height:38px !important;
    height:38px !important;
    margin-top:6px !important;
    border-radius:9px !important;
    font-size:9.5px !important;
    font-weight:850 !important;
}

/* status / zapłać przy istniejącej rezerwacji — bardzo mały */
body .reservation-payment-badge,
body .slot-payment-retry {
    min-height:14px !important;
    height:14px !important;
    padding:1px 5px !important;
    border-radius:5px !important;
    font-size:6.6px !important;
    line-height:1 !important;
    font-weight:850 !important;
    box-shadow:none !important;
}
body .slot-payment-retry {
    background:#2a74d6 !important;
    border-color:#2a74d6 !important;
}

/* MOBILE — nadal jeden zwarty moduł, bez kart 1 pod 1 */
@media (max-width:760px) {
    body .booking-payment-panel,
    body .booking-board .booking-payment-panel {
        margin-top:7px !important;
        padding:8px !important;
        border-radius:11px !important;
    }
    body .booking-payment-panel__head {
        margin-bottom:5px !important;
    }
    body .booking-payment-panel__head strong {
        font-size:11px !important;
    }
    body .booking-payment-panel__head small:not(.booking-payment-panel__eyebrow) {
        font-size:6.8px !important;
        white-space:nowrap !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
    }
    body .booking-payment-methods {
        gap:3px !important;
        margin-bottom:6px !important;
    }
    body .booking-payment-methods > span {
        min-height:19px !important;
        height:19px !important;
        padding:0 6px !important;
    }
    body .booking-payment-methods b,
    body .booking-payment-methods .is-blik b,
    body .booking-payment-methods .is-apple b {
        font-size:7.2px !important;
    }
    body .booking-payment-options {
        display:flex !important;
        gap:3px !important;
        padding:3px !important;
    }
    body .booking-payment-option {
        flex:1 1 0 !important;
        width:0 !important;
        min-height:31px !important;
        height:31px !important;
        padding:0 5px !important;
        gap:4px !important;
    }
    body .booking-payment-option__icon {
        flex-basis:14px !important;
        width:14px !important;
        height:14px !important;
        min-width:14px !important;
    }
    body .booking-payment-option__icon.is-online::before {
        left:3px !important; top:4px !important; width:8px !important; height:6px !important;
    }
    body .booking-payment-option__icon.is-online::after {
        left:5px !important; top:6px !important;
    }
    body .booking-payment-option__icon.is-onsite::before {
        left:3px !important; top:2px !important; width:8px !important; height:9px !important;
    }
    body .booking-payment-option__icon.is-onsite::after {
        left:5px !important; top:5px !important;
    }
    body .booking-payment-option b {
        font-size:7.8px !important;
        white-space:normal !important;
        text-align:left !important;
        line-height:1.05 !important;
    }
    body .booking-checkout--inline #bookButton {
        min-height:37px !important;
        height:37px !important;
        font-size:9.3px !important;
    }
}

@media (max-width:355px) {
    body .booking-payment-methods > span { padding:0 5px !important; }
    body .booking-payment-option { padding:0 4px !important; }
    body .booking-payment-option__icon { display:none !important; }
    body .booking-payment-option b { text-align:center !important; font-size:7.5px !important; }
}

/* ======================================================================
   V8 — PANEL KLUBU: COMPACT PAYMENT SaaS + CENNIK BEZ NAKŁADANIA
   Final overrides. Deliberately last in file to beat legacy club styles.
   ====================================================================== */

/* ---------- PANEL PŁATNOŚCI: mały, lekki, czytelny ---------- */
body.clubs-panel-body .club-payments-card,
.club-admin-page .club-payments-card {
    border-radius:15px !important;
    box-shadow:0 8px 22px rgba(23,69,126,.07) !important;
    margin:0 0 12px !important;
}
body.clubs-panel-body .club-payments-card__head,
.club-admin-page .club-payments-card__head {
    display:grid !important;
    grid-template-columns:32px minmax(0,1fr) auto !important;
    gap:9px !important;
    align-items:center !important;
    padding:11px 11px 9px !important;
}
body.clubs-panel-body .club-payments-card__icon,
.club-admin-page .club-payments-card__icon {
    width:32px !important;
    height:32px !important;
    min-width:32px !important;
    border-radius:9px !important;
    font-size:0 !important;
    box-shadow:0 5px 12px rgba(65,91,221,.14) !important;
}
body.clubs-panel-body .club-payments-card__icon::before,
.club-admin-page .club-payments-card__icon::before {
    width:16px !important;
    height:10px !important;
    border-width:1.5px !important;
    border-radius:3px !important;
}
body.clubs-panel-body .club-payments-card__icon::after,
.club-admin-page .club-payments-card__icon::after {
    width:5px !important;
    height:2px !important;
    right:7px !important;
    bottom:8px !important;
}
body.clubs-panel-body .club-payments-card__head > div:not(.club-payments-card__icon):not(.club-payment-health),
body.clubs-panel-body .club-payments-card__copy,
.club-admin-page .club-payments-card__head > div:not(.club-payments-card__icon):not(.club-payment-health),
.club-admin-page .club-payments-card__copy {
    min-width:0 !important;
}
body.clubs-panel-body .club-payments-card__head span,
body.clubs-panel-body .club-payments-card__copy > span,
.club-admin-page .club-payments-card__head span,
.club-admin-page .club-payments-card__copy > span {
    margin:0 0 2px !important;
    font-size:7.5px !important;
    line-height:1 !important;
    letter-spacing:.07em !important;
}
body.clubs-panel-body .club-payments-card__head h3,
body.clubs-panel-body .club-payments-card__copy h3,
.club-admin-page .club-payments-card__head h3,
.club-admin-page .club-payments-card__copy h3 {
    margin:0 !important;
    font-size:14px !important;
    line-height:1.08 !important;
    letter-spacing:-.02em !important;
}
body.clubs-panel-body .club-payments-card__head p,
body.clubs-panel-body .club-payments-card__copy p,
.club-admin-page .club-payments-card__head p,
.club-admin-page .club-payments-card__copy p {
    margin:3px 0 0 !important;
    font-size:8.6px !important;
    line-height:1.28 !important;
}
body.clubs-panel-body .club-payment-health,
.club-admin-page .club-payment-health {
    min-height:24px !important;
    padding:0 8px !important;
    font-size:7.6px !important;
    gap:5px !important;
}

/* Metody płatności jako małe chipy, nie osobne plansze. */
body.clubs-panel-body .club-payment-methods,
.club-admin-page .club-payment-methods {
    display:flex !important;
    flex-wrap:wrap !important;
    gap:5px !important;
    padding:7px 10px !important;
    background:#fbfdff !important;
}
body.clubs-panel-body .club-payment-method,
.club-admin-page .club-payment-method {
    flex:0 0 auto !important;
    min-height:25px !important;
    height:25px !important;
    padding:0 7px !important;
    gap:4px !important;
    border-radius:999px !important;
    box-shadow:none !important;
}
body.clubs-panel-body .club-payment-method b,
.club-admin-page .club-payment-method b {font-size:8px !important;}
body.clubs-panel-body .club-payment-method small,
.club-admin-page .club-payment-method small {display:none !important;}
body.clubs-panel-body .club-payment-method--blik b,
.club-admin-page .club-payment-method--blik b {font-size:9px !important;}
body.clubs-panel-body .club-payment-method--card .card-chip,
.club-admin-page .club-payment-method--card .card-chip {width:12px !important;height:9px !important;}
body.clubs-panel-body .club-payment-method--secure i,
.club-admin-page .club-payment-method--secure i {transform:scale(.72) !important;}

/* W wąskiej lewej kolumnie wszystko w jednej logicznej kolumnie. */
body.clubs-panel-body .club-payment-dashboard-grid,
.club-admin-page .club-payment-dashboard-grid {
    grid-template-columns:1fr !important;
    gap:8px !important;
    padding:9px 10px 10px !important;
}
body.clubs-panel-body .club-payment-status-grid,
.club-admin-page .club-payment-status-grid {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:5px !important;
    margin:0 0 7px !important;
}
body.clubs-panel-body .club-payment-status-grid > div,
.club-admin-page .club-payment-status-grid > div {
    min-height:43px !important;
    padding:8px 6px 7px 8px !important;
    border-radius:9px !important;
}
body.clubs-panel-body .club-payment-status-grid span,
.club-admin-page .club-payment-status-grid span {font-size:6.5px !important;letter-spacing:.035em !important;}
body.clubs-panel-body .club-payment-status-grid strong,
.club-admin-page .club-payment-status-grid strong {font-size:8.8px !important;line-height:1.12 !important;}

body.clubs-panel-body .club-payment-flow,
.club-admin-page .club-payment-flow {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:4px !important;
    margin:0 0 7px !important;
}
body.clubs-panel-body .club-payment-flow > div,
.club-admin-page .club-payment-flow > div {
    min-height:38px !important;
    padding:6px !important;
    gap:5px !important;
    border-radius:9px !important;
}
body.clubs-panel-body .club-payment-flow b,
.club-admin-page .club-payment-flow b {width:18px !important;height:18px !important;font-size:7px !important;}
body.clubs-panel-body .club-payment-flow strong,
.club-admin-page .club-payment-flow strong {font-size:7.4px !important;}
body.clubs-panel-body .club-payment-flow small,
.club-admin-page .club-payment-flow small {display:none !important;}

body.clubs-panel-body .club-stripe-connect-btn,
.club-admin-page .club-stripe-connect-btn {
    min-height:38px !important;
    padding:7px 9px !important;
    gap:7px !important;
    border-radius:10px !important;
    box-shadow:none !important;
    font-size:8.5px !important;
}
body.clubs-panel-body .club-stripe-connect-btn > span:first-child,
body.clubs-panel-body .club-stripe-connect-btn__icon,
.club-admin-page .club-stripe-connect-btn > span:first-child,
.club-admin-page .club-stripe-connect-btn__icon {
    width:23px !important;
    height:23px !important;
    min-width:23px !important;
    border-radius:7px !important;
    font-size:10px !important;
}
body.clubs-panel-body .club-stripe-connect-btn b,
.club-admin-page .club-stripe-connect-btn b {font-size:8.8px !important;}
body.clubs-panel-body .club-stripe-connect-btn small,
.club-admin-page .club-stripe-connect-btn small {display:none !important;}

body.clubs-panel-body .club-payment-settings-form,
.club-admin-page .club-payment-settings-form {
    padding:8px !important;
    border-radius:11px !important;
    gap:7px !important;
}
body.clubs-panel-body .club-payment-settings-form__head,
.club-admin-page .club-payment-settings-form__head {margin:0 !important;}
body.clubs-panel-body .club-payment-settings-form__head span,
.club-admin-page .club-payment-settings-form__head span {font-size:6.8px !important;}
body.clubs-panel-body .club-payment-settings-form__head strong,
.club-admin-page .club-payment-settings-form__head strong {font-size:10px !important;}

body.clubs-panel-body .club-payment-switch,
.club-admin-page .club-payment-switch {
    min-height:42px !important;
    padding:7px 8px !important;
    gap:8px !important;
    border-radius:10px !important;
}
body.clubs-panel-body .club-payment-switch__track,
.club-admin-page .club-payment-switch__track {width:31px !important;height:18px !important;min-width:31px !important;}
body.clubs-panel-body .club-payment-switch__track i,
.club-admin-page .club-payment-switch__track i {width:14px !important;height:14px !important;top:2px !important;left:2px !important;}
body.clubs-panel-body .club-payment-switch input:checked + .club-payment-switch__track i,
.club-admin-page .club-payment-switch input:checked + .club-payment-switch__track i {transform:translateX(13px) !important;}
body.clubs-panel-body .club-payment-switch strong,
.club-admin-page .club-payment-switch strong {font-size:8.6px !important;}
body.clubs-panel-body .club-payment-switch small,
.club-admin-page .club-payment-switch small {font-size:7px !important;line-height:1.18 !important;}

/* Najważniejsze: dwa tryby jako NISKI segmented control, bez wielkich kart. */
body.clubs-panel-body .club-payment-mode-grid,
.club-admin-page .club-payment-mode-grid {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:5px !important;
}
body.clubs-panel-body .club-payment-mode,
.club-admin-page .club-payment-mode {
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    min-width:0 !important;
    min-height:38px !important;
    height:38px !important;
    padding:6px 23px 6px 8px !important;
    border-radius:9px !important;
    box-shadow:none !important;
    overflow:hidden !important;
}
body.clubs-panel-body .club-payment-mode__icon,
.club-admin-page .club-payment-mode__icon {display:none !important;}
body.clubs-panel-body .club-payment-mode > span:last-child,
.club-admin-page .club-payment-mode > span:last-child,
body.clubs-panel-body .club-payment-mode > span,
.club-admin-page .club-payment-mode > span {
    min-width:0 !important;
}
body.clubs-panel-body .club-payment-mode b,
.club-admin-page .club-payment-mode b {
    display:block !important;
    font-size:8.4px !important;
    line-height:1.12 !important;
    white-space:normal !important;
}
body.clubs-panel-body .club-payment-mode small,
.club-admin-page .club-payment-mode small {display:none !important;}
body.clubs-panel-body .club-payment-mode::after,
.club-admin-page .club-payment-mode::after {
    right:8px !important;
    width:8px !important;
    height:8px !important;
}

body.clubs-panel-body .club-payment-footer,
.club-admin-page .club-payment-footer {
    display:flex !important;
    justify-content:flex-end !important;
    gap:6px !important;
    margin-top:0 !important;
}
/* Techniczny webhook nie jest potrzebny właścicielowi klubu w UI. */
body.clubs-panel-body .club-payment-footer > span,
.club-admin-page .club-payment-footer > span {display:none !important;}
body.clubs-panel-body .club-payment-footer button,
.club-admin-page .club-payment-footer button {
    width:100% !important;
    min-height:34px !important;
    height:34px !important;
    padding:0 10px !important;
    border-radius:9px !important;
    font-size:8.5px !important;
}

/* ---------- CENNIK: bez nakładania, nawet w lewej kolumnie ~280–330 px ---------- */
body.clubs-panel-body .price-rules-box,
.club-admin-page .price-rules-box {
    padding:9px !important;
    overflow:visible !important;
}
body.clubs-panel-body .price-rule-row,
.club-admin-page .price-rule-row {
    display:grid !important;
    grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr) minmax(0,.85fr) !important;
    gap:6px !important;
    align-items:end !important;
    width:100% !important;
    padding:8px !important;
    overflow:visible !important;
}
/* Dni / Od / Do w pierwszym rzędzie */
body.clubs-panel-body .price-rule-row > label:nth-child(1),
.club-admin-page .price-rule-row > label:nth-child(1) {grid-column:1 !important;}
body.clubs-panel-body .price-rule-row > label:nth-child(2),
.club-admin-page .price-rule-row > label:nth-child(2) {grid-column:2 !important;}
body.clubs-panel-body .price-rule-row > label:nth-child(3),
.club-admin-page .price-rule-row > label:nth-child(3) {grid-column:3 !important;}
/* Cena zajmuje 2 kolumny, X jest osobno — nic nie nachodzi */
body.clubs-panel-body .price-rule-row > label:nth-child(4),
.club-admin-page .price-rule-row > label:nth-child(4) {grid-column:1 / 3 !important;}
body.clubs-panel-body .price-rule-row > .price-rule-remove,
.club-admin-page .price-rule-row > .price-rule-remove {
    grid-column:3 !important;
    width:100% !important;
    min-width:0 !important;
    height:38px !important;
    min-height:38px !important;
    align-self:end !important;
    border-radius:9px !important;
    font-size:17px !important;
}
body.clubs-panel-body .price-rule-row label,
.club-admin-page .price-rule-row label {
    min-width:0 !important;
    width:100% !important;
    font-size:8.5px !important;
    line-height:1.1 !important;
}
body.clubs-panel-body .price-rule-row input,
body.clubs-panel-body .price-rule-row select,
.club-admin-page .price-rule-row input,
.club-admin-page .price-rule-row select {
    box-sizing:border-box !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:38px !important;
    min-height:38px !important;
    padding:0 7px !important;
    font-size:10.5px !important;
    line-height:normal !important;
}
body.clubs-panel-body .price-rule-row input[type="time"],
.club-admin-page .price-rule-row input[type="time"] {
    width:100% !important;
    min-width:0 !important;
    padding:0 4px !important;
    font-size:10px !important;
}
body.clubs-panel-body .price-rule-row .club-input-suffix,
.club-admin-page .price-rule-row .club-input-suffix {
    position:relative !important;
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
}
body.clubs-panel-body .price-rule-row .club-input-suffix input,
.club-admin-page .price-rule-row .club-input-suffix input {
    width:100% !important;
    min-width:0 !important;
    padding-left:8px !important;
    padding-right:28px !important;
    text-align:left !important;
}
body.clubs-panel-body .price-rule-row .club-input-suffix > span,
.club-admin-page .price-rule-row .club-input-suffix > span {
    position:absolute !important;
    z-index:2 !important;
    right:7px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    width:auto !important;
    min-width:0 !important;
    pointer-events:none !important;
    background:#fff !important;
    color:#6c7d94 !important;
    font-size:8px !important;
    line-height:1 !important;
}
/* Usuwamy browserowe strzałki z ceny — wcześniej wchodziły na "zł". */
body.clubs-panel-body .price-rule-row input[type="number"],
.club-admin-page .price-rule-row input[type="number"] {
    -moz-appearance:textfield !important;
    appearance:textfield !important;
}
body.clubs-panel-body .price-rule-row input[type="number"]::-webkit-outer-spin-button,
body.clubs-panel-body .price-rule-row input[type="number"]::-webkit-inner-spin-button,
.club-admin-page .price-rule-row input[type="number"]::-webkit-outer-spin-button,
.club-admin-page .price-rule-row input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance:none !important;
    margin:0 !important;
}

/* ---------- MOBILE ---------- */
@media (max-width:820px) {
    body.clubs-panel-body .club-payments-card__head,
    .club-admin-page .club-payments-card__head {
        grid-template-columns:30px minmax(0,1fr) !important;
        padding:10px !important;
    }
    body.clubs-panel-body .club-payments-card__icon,
    .club-admin-page .club-payments-card__icon {width:30px !important;height:30px !important;min-width:30px !important;}
    body.clubs-panel-body .club-payment-health,
    .club-admin-page .club-payment-health {grid-column:1/-1 !important;justify-self:start !important;}
    body.clubs-panel-body .club-payment-methods,
    .club-admin-page .club-payment-methods {padding:6px 9px !important;gap:4px !important;}
    body.clubs-panel-body .club-payment-method,
    .club-admin-page .club-payment-method {height:24px !important;min-height:24px !important;padding:0 6px !important;}
    body.clubs-panel-body .club-payment-mode-grid,
    .club-admin-page .club-payment-mode-grid {grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:5px !important;}
    body.clubs-panel-body .club-payment-mode,
    .club-admin-page .club-payment-mode {height:40px !important;min-height:40px !important;padding:6px 22px 6px 7px !important;}
    body.clubs-panel-body .club-payment-mode b,
    .club-admin-page .club-payment-mode b {font-size:8.2px !important;}

    /* Cennik na telefonie: czytelne 2 kolumny, bez mikroskopijnych pól. */
    body.clubs-panel-body .price-rule-row,
    .club-admin-page .price-rule-row {
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
        gap:6px !important;
    }
    body.clubs-panel-body .price-rule-row > label:nth-child(1),
    .club-admin-page .price-rule-row > label:nth-child(1) {grid-column:1 / -1 !important;}
    body.clubs-panel-body .price-rule-row > label:nth-child(2),
    .club-admin-page .price-rule-row > label:nth-child(2) {grid-column:1 !important;}
    body.clubs-panel-body .price-rule-row > label:nth-child(3),
    .club-admin-page .price-rule-row > label:nth-child(3) {grid-column:2 !important;}
    body.clubs-panel-body .price-rule-row > label:nth-child(4),
    .club-admin-page .price-rule-row > label:nth-child(4) {grid-column:1 !important;}
    body.clubs-panel-body .price-rule-row > .price-rule-remove,
    .club-admin-page .price-rule-row > .price-rule-remove {grid-column:2 !important;}
    body.clubs-panel-body .price-rule-row input,
    body.clubs-panel-body .price-rule-row select,
    .club-admin-page .price-rule-row input,
    .club-admin-page .price-rule-row select {height:40px !important;min-height:40px !important;font-size:11px !important;}
}

@media (max-width:370px) {
    body.clubs-panel-body .club-payment-status-grid,
    .club-admin-page .club-payment-status-grid {grid-template-columns:1fr 1fr 1fr !important;gap:4px !important;}
    body.clubs-panel-body .club-payment-status-grid > div,
    .club-admin-page .club-payment-status-grid > div {padding:6px 4px !important;}
    body.clubs-panel-body .club-payment-mode b,
    .club-admin-page .club-payment-mode b {font-size:7.6px !important;}
}

/* ========================================================================
   V9 — CENNIK DESKTOP + REZERWACJE 0 ZŁ
   ======================================================================== */

/* Desktop: "Codziennie" ma realne miejsce, a godziny nadal są zwarte. */
@media (min-width:821px) {
    body.clubs-panel-body .price-rule-row,
    .club-admin-page .price-rule-row {
        grid-template-columns:minmax(96px,1.65fr) minmax(52px,.72fr) minmax(52px,.72fr) !important;
        column-gap:6px !important;
        row-gap:7px !important;
    }
    body.clubs-panel-body .price-rule-row > label:nth-child(1),
    .club-admin-page .price-rule-row > label:nth-child(1) {
        min-width:96px !important;
    }
    body.clubs-panel-body .price-rule-row > label:nth-child(1) select,
    .club-admin-page .price-rule-row > label:nth-child(1) select {
        min-width:96px !important;
        padding-left:8px !important;
        padding-right:22px !important;
        font-size:9.5px !important;
        letter-spacing:-.01em !important;
    }
    body.clubs-panel-body .price-rule-row input[type="time"],
    .club-admin-page .price-rule-row input[type="time"] {
        font-size:9.4px !important;
        padding-left:5px !important;
        padding-right:3px !important;
    }
}

/* Rezerwacja za 0 zł: zero fałszywego "Zapłać". */
.booking-payment-free-note {
    display:none !important;
}
.booking-payment-panel.is-free-booking {
    padding:8px 10px !important;
    border-color:#bfe9d4 !important;
    background:linear-gradient(135deg,#f6fffb 0%,#f9fffd 100%) !important;
    box-shadow:none !important;
}
.booking-payment-panel.is-free-booking::before {display:none !important;}
.booking-payment-panel.is-free-booking .booking-payment-panel__head,
.booking-payment-panel.is-free-booking .booking-payment-methods,
.booking-payment-panel.is-free-booking .booking-payment-options,
.booking-payment-panel.is-free-booking .booking-payment-required {
    display:none !important;
}
.booking-payment-panel.is-free-booking .booking-payment-free-note {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:8px !important;
    min-height:34px !important;
    padding:0 2px !important;
    color:#176b4c !important;
}
.booking-payment-panel.is-free-booking .booking-payment-free-note b {
    font-size:11px !important;
    font-weight:850 !important;
    line-height:1.15 !important;
}
.booking-payment-panel.is-free-booking .booking-payment-free-note span {
    font-size:9px !important;
    font-weight:700 !important;
    color:#6d8f80 !important;
    text-align:right !important;
}
.reservation-payment-badge.is-free {
    display:inline-flex !important;
    align-items:center !important;
    min-height:16px !important;
    padding:2px 6px !important;
    border:1px solid #bfe9d4 !important;
    border-radius:999px !important;
    background:#effcf5 !important;
    color:#168558 !important;
    font-size:8px !important;
    font-weight:850 !important;
    line-height:1 !important;
}

@media (max-width:820px) {
    .booking-payment-panel.is-free-booking {
        padding:7px 9px !important;
        border-radius:12px !important;
    }
    .booking-payment-panel.is-free-booking .booking-payment-free-note {
        min-height:32px !important;
    }
    .booking-payment-panel.is-free-booking .booking-payment-free-note b {font-size:10.5px !important;}
    .booking-payment-panel.is-free-booking .booking-payment-free-note span {font-size:8.5px !important;}
}

/* =========================================================
   TFP V9.1 — MOBILE HERO: ulubione nie nachodzi na liczbę kortów
   Loaded last (club-payments.css), więc świadomie nadpisuje
   mobilny układ z club-booking-professional.css.
========================================================= */
@media (max-width: 767px) {
    .booking-hero__meta {
        display: grid !important;
        grid-template-columns: 36px 72px minmax(88px, 1fr) !important;
        grid-auto-flow: row !important;
        align-items: stretch !important;
        gap: 6px !important;
        overflow: visible !important;
    }

    /* 1. Gwiazdka — osobna, mała komórka. */
    .booking-hero__meta > .booking-hero__favorite {
        grid-column: 1 !important;
        grid-row: 1 !important;
        position: relative !important;
        inset: auto !important;
        transform: none !important;
        justify-self: stretch !important;
        align-self: stretch !important;
        width: 36px !important;
        min-width: 36px !important;
        height: 36px !important;
        min-height: 36px !important;
        margin: 0 !important;
        padding: 0 !important;
        z-index: 2 !important;
        border-radius: 10px !important;
        overflow: hidden !important;
    }

    .booking-hero__favorite .club-favorite-form {
        width: 100% !important;
        height: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 !important;
    }

    .booking-hero__favorite .club-favorite-btn,
    .booking-hero__favorite .club-favorite-btn--guest,
    .booking-hero__favorite button,
    .booking-hero__favorite a {
        position: static !important;
        width: 30px !important;
        min-width: 30px !important;
        height: 30px !important;
        min-height: 30px !important;
        margin: 0 !important;
        padding: 0 !important;
        transform: none !important;
        border-radius: 8px !important;
        font-size: 17px !important;
        line-height: 1 !important;
    }

    /* 2. Liczba kortów — nigdy pod gwiazdką. */
    .booking-hero__meta > div:nth-child(2) {
        grid-column: 2 !important;
        grid-row: 1 !important;
        position: relative !important;
        inset: auto !important;
        transform: none !important;
        min-width: 0 !important;
        width: auto !important;
        height: 36px !important;
        min-height: 36px !important;
        margin: 0 !important;
        padding: 5px 8px !important;
        z-index: 1 !important;
    }

    /* 3. Cena / godzinę. */
    .booking-hero__meta > div:nth-child(3) {
        grid-column: 3 !important;
        grid-row: 1 !important;
        position: relative !important;
        inset: auto !important;
        transform: none !important;
        min-width: 0 !important;
        width: auto !important;
        height: 36px !important;
        min-height: 36px !important;
        margin: 0 !important;
        padding: 5px 9px !important;
    }

    .booking-hero__meta > div:nth-child(2) strong,
    .booking-hero__meta > div:nth-child(3) strong {
        font-size: 13px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    .booking-hero__meta > div:nth-child(2) span,
    .booking-hero__meta > div:nth-child(3) span {
        margin-top: 2px !important;
        font-size: 7px !important;
        line-height: 1 !important;
        white-space: nowrap !important;
    }

    /* Akcje właściciela w osobnym, równym wierszu. */
    .booking-hero__meta > a {
        grid-column: 1 / 3 !important;
        grid-row: 2 !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 34px !important;
        min-height: 34px !important;
        margin: 0 !important;
        padding: 0 8px !important;
        font-size: 8px !important;
        overflow: hidden !important;
        white-space: nowrap !important;
        text-overflow: ellipsis !important;
    }

    .booking-hero__meta > form,
    .booking-hero__meta > .club-proadmin-delete-form--hero {
        grid-column: 3 !important;
        grid-row: 2 !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 34px !important;
        min-height: 34px !important;
        margin: 0 !important;
    }

    .booking-hero__meta > form button,
    .club-proadmin-delete-form--hero button {
        width: 100% !important;
        min-width: 0 !important;
        height: 34px !important;
        min-height: 34px !important;
        padding: 0 7px !important;
        font-size: 8px !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 370px) {
    .booking-hero__meta {
        grid-template-columns: 34px 68px minmax(82px, 1fr) !important;
        gap: 5px !important;
    }
    .booking-hero__meta > .booking-hero__favorite {
        width: 34px !important;
        min-width: 34px !important;
    }
}
