/* Minimal styles for the booking form */
.rr-form { background:#fff; padding:24px; border-radius:12px; box-shadow:0 2px 8px rgba(0,0,0,.06); max-width:720px; margin:0 auto; }
.rr-row { margin-bottom:14px; }
.rr-row label { display:block; margin-bottom:6px; font-weight:600; }
.rr-row input, .rr-row select, .rr-row textarea { width:100%; padding:10px; border:1px solid #dadde1; border-radius:8px; box-sizing:border-box; }
.rr-actions { display:flex; gap:10px; justify-content:space-between; margin-top:14px; }
.rr-btn { background:#0ea5e9; color:#fff; border:0; padding:10px 16px; border-radius:8px; cursor:pointer; }
.rr-btn[disabled] { background:#9ca3af; cursor:not-allowed; }
.rr-alert { padding:10px 12px; border-radius:8px; margin:8px 0; font-weight:600; }
.rr-alert.error { background:#fee2e2; color:#991b1b; }
.rr-alert.ok { background:#dcfce7; color:#166534; }
.rr-section { display:none; }
.rr-section.active { display:block; }
.rr-menu-grid { display:grid; grid-template-columns: 120px 1fr; gap:12px; margin-bottom:12px; }
.rr-badge { display:inline-block; padding:2px 8px; font-size:12px; border-radius:999px; background:#f1f5f9; }
#rr-paypal-container { margin-top:16px; }

p#rr-final {
    font-weight: bold;
}

div#rr-tip-options {
    white-space: nowrap;
}

/* Buttons loading */
.rr-loading { opacity: .7; pointer-events: none; }
.rr-spinner {
  display:inline-block; width:16px; height:16px;
  border:2px solid currentColor; border-top-color: transparent;
  border-radius:50%; vertical-align:middle; margin-inline-start:8px;
  animation: rrspin .8s linear infinite;
}
@keyframes rrspin { to { transform: rotate(360deg); } }

/* Overlay برای بلاک‌های بزرگ (مثلاً PayPal, Step container) */
.rr-busy-wrap { position: relative; }
.rr-busy-wrap::after {
  content:''; position:absolute; inset:0;
  background: rgba(255,255,255,.6);
  display:none;
}
.rr-busy-wrap.rr-busy::after { display:block; }

/* پیام ساده وقتی PayPal هنوز رندر نشده */
.rr-paypal-wait { text-align:center; padding:12px; font-size:14px; }
