.rbm-app{--g:#247c1b;--gd:#185f14;--y:#fec41b;--ink:#1d2720;--muted:#6e786f;--line:#dfe6e0;--soft:#f5f8f4;max-width:1180px;margin:0 auto;font-family:inherit;color:var(--ink)}.rbm-head>span,.rbm-step-head>small{font-size:11px;font-weight:800;letter-spacing:.18em;color:var(--g)}.rbm-head h2{font-size:40px;line-height:1.1;margin:8px 0}.rbm-head p{color:var(--muted);margin:0}.rbm-progress{display:flex;align-items:center;margin:32px 0 28px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px 20px}.rbm-progress>div{display:flex;align-items:center;gap:9px;color:#879087;font-size:13px;font-weight:700}.rbm-progress i{font-style:normal;width:30px;height:30px;border-radius:50%;background:#eef1ee;display:grid;place-items:center}.rbm-progress .active{color:var(--g)}.rbm-progress .active i{background:var(--g);color:#fff}.rbm-progress b{height:1px;background:var(--line);flex:1;margin:0 15px}.rbm-step{display:none;background:var(--card-bg,#fff);border:1px solid var(--line);border-radius:var(--radius,20px);padding:30px;box-shadow:0 10px 35px rgba(20,50,30,.05)}.rbm-step.active{display:block}.rbm-step-head h3{font-size:28px;margin:6px 0}.rbm-step-head p{margin:0 0 24px;color:var(--muted)}.rbm-campers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.rbm-camper{border:1px solid var(--line);border-radius:15px;padding:18px;cursor:pointer;transition:.2s;background:#fff}.rbm-camper:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(20,50,30,.07)}.rbm-camper:has(input:checked){border:2px solid var(--g);background:#f4f9f3}.rbm-camper input{position:absolute;opacity:0}.rbm-camper-top{display:flex;align-items:center;gap:9px}.rbm-radio{width:14px;height:14px;border:2px solid #9ba69d;border-radius:50%;box-sizing:border-box}.rbm-camper:has(input:checked) .rbm-radio{border:4px solid var(--g)}.rbm-camper small{display:block;color:var(--muted);margin:7px 0;line-height:1.45}.rbm-mini{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.rbm-mini span{font-size:11px;background:#eef3ee;border-radius:99px;padding:5px 8px}.rbm-calendar-wrap{margin-top:24px;border:1px solid var(--line);border-radius:16px;padding:18px}.rbm-calendar-wrap.is-disabled{opacity:.55;pointer-events:none}.rbm-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.rbm-calendar-toolbar button{border:1px solid var(--line);background:#fff;width:36px;height:36px;border-radius:9px;font-size:24px;cursor:pointer}.rbm-calendar{display:grid;grid-template-columns:1fr 1fr;gap:24px}.rbm-month h4{text-align:center;font-size:16px;margin:5px 0 12px}.rbm-week,.rbm-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.rbm-week span{text-align:center;font-size:10px;color:var(--muted);font-weight:800;padding:5px}.rbm-day{aspect-ratio:1;border:0;background:#fff;border-radius:9px;font-size:12px;cursor:pointer}.rbm-day:hover:not(:disabled){background:#edf7eb;color:var(--g)}.rbm-day.empty{visibility:hidden}.rbm-day:disabled,.rbm-day.past{color:#bdc4be;background:var(--unavailable,#f4f5f4);cursor:not-allowed}.rbm-day.busy{background:var(--booked,#fdeaea);color:#b92f2f;text-decoration:line-through}.rbm-day.in-range{background:#e5f4e3;color:#1d6b18}.rbm-day.selected{background:var(--g);color:#fff;font-weight:800}.rbm-calendar-legend{display:flex;gap:18px;flex-wrap:wrap;border-top:1px solid #edf1ee;margin-top:16px;padding-top:13px;color:var(--muted);font-size:11px}.rbm-calendar-legend span{display:flex;align-items:center;gap:6px}.rbm-calendar-legend i{width:10px;height:10px;border-radius:3px;border:1px solid var(--line)}.rbm-calendar-legend .selected{background:var(--g)}.rbm-calendar-legend .busy{background:var(--booked,#fdeaea)}.rbm-calendar-legend .past{background:var(--unavailable,#f0f1f0)}.rbm-date-choice{margin-top:14px;padding:12px 14px;background:var(--soft);border-radius:10px;font-weight:700}.rbm-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.rbm-fields label{font-weight:700;font-size:13px}.rbm-fields label em{font-weight:400;color:var(--muted)}.rbm-fields input,.rbm-fields textarea{width:100%;box-sizing:border-box;border:1px solid #cfd9d2;border-radius:11px;padding:12px;margin-top:7px;font:inherit;outline:none}.rbm-fields input:focus,.rbm-fields textarea:focus{border-color:var(--g);box-shadow:0 0 0 3px rgba(36,124,27,.09)}.rbm-fields label small{display:block;color:var(--muted);font-weight:400;margin-top:5px}.rbm-fields .wide{grid-column:1/-1}.rbm-actions{display:flex;justify-content:space-between;align-items:center;margin-top:25px;border-top:1px solid #edf1ee;padding-top:20px}.rbm-main-btn,.rbm-ghost-btn{border:0;border-radius:11px;padding:13px 20px;font-weight:800;cursor:pointer}.rbm-main-btn{background:var(--y);color:#163318}.rbm-main-btn:disabled{opacity:.45;cursor:not-allowed}.rbm-ghost-btn{background:#f0f3f0;color:#334038}.rbm-review-grid{display:grid;grid-template-columns:1fr 300px;gap:20px}.rbm-review,.rbm-total{border:1px solid var(--line);border-radius:15px;padding:20px}.rbm-review-row{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid #edf1ee}.rbm-review-row:last-child{border-bottom:0}.rbm-review-row span{color:var(--muted)}.rbm-total{background:var(--g);color:#fff;display:flex;flex-direction:column;justify-content:center}.rbm-total span{font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--y)}.rbm-total strong{font-size:34px;margin:7px 0}.rbm-total small{color:#d8ead6}.rbm-consent{display:flex;gap:10px;align-items:flex-start;margin:22px 0;font-size:13px}.rbm-note{background:#f5f8f4;border-left:4px solid var(--g);padding:13px 15px;border-radius:8px;font-size:12px;color:#526057}.rbm-inline-error,#rbm-result{margin-top:14px}.rbm-error{background:#fdeaea;color:#a52d2d;padding:12px 14px;border-radius:10px}.rbm-success{background:#e7f6e5;color:#216c1b;padding:18px;border-radius:12px;font-weight:700}.rbm-paused{padding:25px;background:#f5f8f4;border-radius:15px;border:1px solid #dfe6e0}
@media(max-width:800px){.rbm-head h2{font-size:31px}.rbm-progress span{display:none}.rbm-progress b{margin:0 8px}.rbm-step{padding:20px}.rbm-campers{grid-template-columns:1fr}.rbm-calendar{grid-template-columns:1fr}.rbm-month:nth-child(2){display:none}.rbm-fields,.rbm-review-grid{grid-template-columns:1fr}.rbm-fields .wide{grid-column:auto}.rbm-calendar-legend{gap:10px}.rbm-total{min-height:120px}}
.rbm-lang-switch{display:flex;justify-content:flex-end;align-items:center;gap:7px;margin-bottom:8px}.rbm-lang-switch button{border:0;background:transparent;padding:4px 6px;cursor:pointer;font-weight:700;opacity:.55}.rbm-lang-switch button.active{opacity:1;color:var(--g)}.rbm-hp{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.rbm-day.busy{background:var(--booked)!important;color:#9b3b3b!important;text-decoration:line-through}.rbm-day.past{background:var(--unavailable)!important;color:#a6aaa6!important}
.rbm-pricing-app .rbm-head{margin-bottom:28px}.rbm-price-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}.rbm-price-tabs button{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:10px 17px;font:inherit;font-weight:800;cursor:pointer}.rbm-price-tabs button.active{background:var(--g);border-color:var(--g);color:#fff}.rbm-price-panel{display:none}.rbm-price-panel.active{display:block}.rbm-price-camper-title{font-size:24px;margin:28px 0 14px}.rbm-pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.rbm-price-card{background:var(--card-bg,#fff);border:1px solid var(--line);border-radius:var(--radius,20px);overflow:hidden;box-shadow:0 10px 35px rgba(20,50,30,.05)}.rbm-price-card-head{padding:23px 22px 20px;background:#f5f8f4;border-bottom:1px solid var(--line)}.rbm-price-card-head>span{display:block;color:var(--g);font-size:11px;font-weight:900;letter-spacing:.15em}.rbm-price-card-head>small{display:block;color:var(--muted);margin:7px 0 17px}.rbm-price-card-head>strong{display:flex;align-items:baseline;gap:6px}.rbm-price-card-head>strong b{font-size:31px;color:var(--ink)}.rbm-price-card-head>strong em{font-size:12px;color:var(--muted);font-style:normal;font-weight:700}.rbm-price-rows{padding:8px 20px 14px}.rbm-price-rows>div{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 2px;border-bottom:1px solid #edf1ee}.rbm-price-rows>div:last-child{border-bottom:0}.rbm-price-rows span{color:var(--muted);font-size:13px}.rbm-price-rows b{font-size:15px}.rbm-price-rows b small{font-weight:500;color:var(--muted)}.rbm-price-cta{margin-top:22px;background:var(--g);color:#fff;border-radius:var(--radius,20px);padding:24px 26px;display:flex;align-items:center;justify-content:space-between;gap:24px}.rbm-price-cta span{color:var(--y);font-size:10px;letter-spacing:.15em;font-weight:900}.rbm-price-cta h3{color:#fff;font-size:22px;margin:5px 0}.rbm-price-cta p{margin:0;color:#dcebd9;font-size:13px;max-width:680px}.rbm-price-cta .rbm-main-btn{display:inline-block;text-decoration:none;white-space:nowrap}.rbm-price-cta .rbm-main-btn:hover{filter:brightness(.97)}
@media(max-width:900px){.rbm-pricing-grid{grid-template-columns:1fr}.rbm-price-cta{align-items:flex-start;flex-direction:column}.rbm-price-cta .rbm-main-btn{white-space:normal}}
/* v0.4.3 unified design system */
.rbm-app .rbm-head>span{font-size:var(--eyebrow-size,11px);font-weight:var(--eyebrow-weight,800)}
.rbm-app .rbm-head>h2{font-size:var(--heading-size,36px);font-weight:var(--heading-weight,500);color:var(--ink)}
.rbm-app .rbm-head>p{font-size:var(--subtitle-size,15px);font-weight:var(--subtitle-weight,400);color:var(--muted)}
.rbm-price-card-head>span{font-size:var(--price-rule-size,11px);font-weight:var(--price-rule-weight,800)}
.rbm-price-card-head>small{font-size:var(--price-period-size,15px);font-weight:var(--price-period-weight,400)}
.rbm-price-card-head>strong b{font-size:var(--price-value-size,31px);font-weight:var(--price-value-weight,800)}
.rbm-price-rows span{font-size:var(--price-row-size,13px);font-weight:var(--price-row-weight,400)}
.rbm-price-rows b{font-size:var(--price-row-value-size,15px);font-weight:var(--price-row-value-weight,700)}
.rbm-price-cta{background:var(--cta-bg,var(--g));color:var(--cta-text,#fff);padding:30px 32px;box-shadow:0 14px 40px rgba(20,50,30,.10)}
.rbm-price-cta span{font-size:var(--cta-eyebrow-size,10px);font-weight:var(--cta-eyebrow-weight,800);color:var(--y)}
.rbm-price-cta h3{font-size:var(--cta-heading-size,22px);font-weight:var(--cta-heading-weight,600);color:var(--cta-text,#fff)}
.rbm-price-cta p{font-size:var(--cta-copy-size,13px);font-weight:var(--cta-copy-weight,400);color:var(--cta-text,#fff);opacity:.82}
.rbm-price-cta .rbm-main-btn{background:var(--cta-btn-bg,var(--y));color:var(--cta-btn-text,var(--ink));font-size:var(--cta-button-size,13px);font-weight:var(--cta-button-weight,800);border-radius:calc(var(--radius,20px) * .65);padding:14px 20px}
/* v0.4.5 separated module typography + spacing */
.rbm-app:not(.rbm-pricing-app) .rbm-head>span{display:block;font-size:var(--booking-eyebrow-size,11px);font-weight:var(--booking-eyebrow-weight,800);margin:0 0 var(--booking-eyebrow-gap,10px);line-height:1.25}
.rbm-app:not(.rbm-pricing-app) .rbm-head>h2{font-size:var(--booking-heading-size,36px);font-weight:var(--booking-heading-weight,500);margin:0 0 var(--booking-heading-gap,10px);line-height:1.12}
.rbm-app:not(.rbm-pricing-app) .rbm-head>p{font-size:var(--booking-subtitle-size,15px);font-weight:var(--booking-subtitle-weight,400);margin:0 0 var(--booking-content-gap,24px)}
.rbm-pricing-app .rbm-head{margin-bottom:0}
.rbm-pricing-app .rbm-head>span{display:block;font-size:var(--pricing-eyebrow-size,11px);font-weight:var(--pricing-eyebrow-weight,800);margin:0 0 var(--pricing-eyebrow-gap,10px);line-height:1.25}
.rbm-pricing-app .rbm-head>h2{font-size:var(--pricing-heading-size,36px);font-weight:var(--pricing-heading-weight,500);margin:0 0 var(--pricing-heading-gap,10px);line-height:1.12}
.rbm-pricing-app .rbm-head>p{font-size:var(--pricing-subtitle-size,15px);font-weight:var(--pricing-subtitle-weight,400);margin:0 0 var(--pricing-content-gap,24px)}
