:root {
    --crbmo-bg: #0b0f17;
    --crbmo-card: rgba(16, 22, 35, 0.95);
    --crbmo-border: rgba(255,255,255,0.08);
    --crbmo-text: #f5f7fb;
    --crbmo-soft: #aeb8cc;
    --crbmo-accent: #ff8a00;
    --crbmo-accent-strong: #ff6a00;
    --crbmo-input: rgba(255,255,255,0.04);
}
.crbmo-body { background: var(--crbmo-bg); color: var(--crbmo-text); margin: 0; font-family: Arial, sans-serif; }
.crbmo-wrap { max-width: 860px; margin: 40px auto; padding: 0 16px; }
.crbmo-card { background: var(--crbmo-card); border: 1px solid var(--crbmo-border); border-radius: 24px; padding: 28px; color: var(--crbmo-text); box-shadow: 0 20px 50px rgba(0,0,0,0.35); }
.crbmo-card.public h1, .crbmo-card h2 { margin-top: 0; }
.crbmo-subtitle, .crbmo-meta, .small { color: var(--crbmo-soft); }
.crbmo-meta { display: flex; gap: 12px; flex-wrap: wrap; margin: 0 0 20px; font-size: 14px; }
.crbmo-field, .crbmo-form-grid label, .crbmo-grid label { display: block; margin-bottom: 16px; }
.crbmo-form-grid, .crbmo-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
.crbmo-form-grid .full, .crbmo-grid label:last-child { grid-column: 1 / -1; }
.crbmo-days { grid-column: 1 / -1; display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.crbmo-days span { width: 100%; color: var(--crbmo-soft); margin-bottom: 6px; }
.crbmo-status-row { display: flex; justify-content: space-between; gap: 16px; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--crbmo-border); margin-bottom: 20px; }
.crbmo-status-row:last-of-type { border-bottom: 0; }
.crbmo-card input, .crbmo-card textarea { width: 100%; box-sizing: border-box; padding: 14px 16px; border-radius: 14px; border: 1px solid rgba(255,255,255,0.1); background: var(--crbmo-input); color: var(--crbmo-text); }
.crbmo-card textarea { min-height: 120px; }
.crbmo-btn { display: inline-block; border: 0; background: linear-gradient(135deg, var(--crbmo-accent), var(--crbmo-accent-strong)); color: #121212; font-weight: 700; text-decoration: none; border-radius: 14px; padding: 14px 18px; cursor: pointer; }
#crbmo-load-slots, #crbmo-booking-form button { width: 100%; }
#crbmo-slots { display: flex; flex-wrap: wrap; gap: 10px; margin: 20px 0; }
.crbmo-slot { border: 1px solid rgba(255,138,0,0.3); background: rgba(255,138,0,0.08); color: var(--crbmo-text); border-radius: 999px; padding: 11px 14px; cursor: pointer; }
.crbmo-slot.is-selected { background: linear-gradient(135deg, var(--crbmo-accent), var(--crbmo-accent-strong)); color: #121212; }
.crbmo-selected-slot, #crbmo-message, .crbmo-notice { margin: 14px 0; padding: 14px 16px; border-radius: 14px; }
.crbmo-notice.success, #crbmo-message.success { background: rgba(35,196,131,0.12); border: 1px solid rgba(35,196,131,0.28); }
.crbmo-notice.error, #crbmo-message.error { background: rgba(255,92,122,0.12); border: 1px solid rgba(255,92,122,0.28); }
.ok { color: #23c483; }
.warn { color: #ffb84d; }
@media (max-width: 768px) {
  .crbmo-form-grid, .crbmo-grid, .crbmo-status-row { grid-template-columns: 1fr; display: grid; }
}
