/* Frontend UI: clean, card-based (inspired by responseweerbaarheid.nl v1) */
.rtb-wrap{max-width:1100px;margin:0 auto;padding:18px 12px;font-family:inherit}
.rtb-filters{margin-bottom:16px}
.rtb-filter-row{display:grid;grid-template-columns:1.2fr 0.8fr auto;gap:12px;align-items:end}
.rtb-filter label{display:block;font-weight:600;margin:0 0 6px}
.rtb-filter select,.rtb-filter input[type="date"],.rtb-form input,.rtb-form select{width:100%;padding:10px 12px;border:1px solid rgba(0,0,0,.12);border-radius:12px}
.rtb-grid-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media (max-width: 980px){.rtb-grid-cards{grid-template-columns:repeat(2,1fr)}.rtb-filter-row{grid-template-columns:1fr 1fr}}
@media (max-width: 640px){.rtb-grid-cards{grid-template-columns:1fr}.rtb-filter-row{grid-template-columns:1fr}}
.rtb-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.05)}
.rtb-card-wide{padding:18px}
.rtb-card-top{display:flex;gap:10px;align-items:flex-start;justify-content:space-between}
.rtb-card-title{margin:0;font-size:18px;line-height:1.25}
.rtb-pill{font-size:12px;padding:6px 10px;border-radius:999px;white-space:nowrap}
.rtb-pill-ok{background:rgba(16,185,129,.12)}
.rtb-pill-full{background:rgba(239,68,68,.12)}
.rtb-card-meta{margin-top:10px;display:grid;gap:6px;color:rgba(0,0,0,.78);font-size:14px}
.rtb-card-meta-2col{grid-template-columns:1fr 1fr;gap:10px}
@media (max-width: 640px){.rtb-card-meta-2col{grid-template-columns:1fr}}
.rtb-card-actions{margin-top:14px}
.rtb-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:14px;border:1px solid rgba(0,0,0,.12);background:#fff;text-decoration:none;font-weight:700;cursor:pointer}
.rtb-btn:hover{filter:brightness(.98)}
.rtb-btn[disabled]{opacity:.55;cursor:not-allowed}
.rtb-btn-primary{background:#111;color:#fff;border-color:#111}
.rtb-btn-ghost{background:transparent}
.rtb-empty{padding:18px;border-radius:14px;background:rgba(0,0,0,.04)}

.rtb-booking .rtb-form{margin-top:14px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:16px;box-shadow:0 8px 22px rgba(0,0,0,.05)}
.rtb-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media (max-width: 740px){.rtb-form-grid{grid-template-columns:1fr}}
.rtb-field label{display:block;font-weight:600;margin:0 0 6px}
.rtb-section{margin-top:14px;padding-top:14px;border-top:1px solid rgba(0,0,0,.06)}
.rtb-check{display:flex;gap:10px;align-items:flex-start}
.rtb-check input{margin-top:4px}
.rtb-partnercode{margin-top:10px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}
@media (max-width: 640px){.rtb-partnercode{grid-template-columns:1fr}}
.rtb-hint{font-size:12px;color:rgba(0,0,0,.6)}
.rtb-price-row{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;background:rgba(0,0,0,.03);padding:10px 12px;border-radius:14px}

.rtb-alert{margin-top:14px;padding:12px 14px;border-radius:14px;border:1px solid rgba(0,0,0,.1)}
.rtb-alert-ok{background:rgba(16,185,129,.10)}
.rtb-alert-warn{background:rgba(245,158,11,.12)}


/* v1.1.3 overrides */
.rtb-wrap{max-width:100%;}
.rtb-card-wide{max-width:100%;}
.rtb-booking .rtb-card{width:100%;}
.rtb-check{display:flex;align-items:flex-start;gap:10px;justify-content:flex-start;}
.rtb-check input{margin-top:3px;}
.rtb-check span{display:block;}


/* v1.1.4 checkbox alignment (force left) */
.rtb-section{width:100%;}
label.rtb-check{display:flex !important; align-items:flex-start !important; justify-content:flex-start !important; gap:10px !important; width:100% !important; text-align:left !important; margin:0 !important; padding:0 !important;}
label.rtb-check input[type="checkbox"]{margin:3px 0 0 0 !important; flex:0 0 auto;}
label.rtb-check span{flex:1 1 auto; text-align:left !important;}


/* v1.1.6 checkbox alignment hard-fix */
.rtb-section{display:block !important; width:100% !important;}
label.rtb-check{display:flex !important; align-items:flex-start !important; justify-content:flex-start !important; gap:12px !important; width:100% !important; text-align:left !important;}
label.rtb-check input[type="checkbox"]{margin:3px 0 0 0 !important; flex:0 0 auto !important;}
label.rtb-check span{flex:1 1 auto !important; text-align:left !important; margin:0 !important; margin-left:0 !important; padding:0 !important; float:none !important; position:static !important;}
label.rtb-check a{display:inline !important;}


/* v1.1.7 Divi hard override for checkbox rows */
.rtb-wrap .rtb-section{width:100% !important; text-align:left !important;}
.rtb-wrap .rtb-section > label.rtb-check{display:flex !important; flex-direction:row !important; align-items:flex-start !important; justify-content:flex-start !important; gap:12px !important; width:100% !important; text-align:left !important;}
.rtb-wrap .rtb-section > label.rtb-check *{float:none !important; position:static !important;}
.rtb-wrap .rtb-section > label.rtb-check input[type="checkbox"]{display:inline-block !important; width:auto !important; margin:3px 0 0 0 !important; padding:0 !important;}
.rtb-wrap .rtb-section > label.rtb-check span{display:inline-block !important; width:auto !important; margin:0 !important; padding:0 !important; text-align:left !important;}
.rtb-wrap .rtb-section > label.rtb-check a{display:inline !important;}

/* v1.1.8 spacing + border radius */
.rtb-section:last-of-type{
    margin-bottom:24px !important;
}

/* More space before submit button */
.rtb-booking .rtb-submit,
.rtb-booking button[type="submit"]{
    margin-top:24px !important;
}

/* Force border radius 3px everywhere */
.rtb-wrap input,
.rtb-wrap select,
.rtb-wrap textarea,
.rtb-wrap button,
.rtb-wrap .rtb-card,
.rtb-wrap .rtb-pill{
    border-radius:3px !important;
}

/* v1.2.0 booking button styling */
.rtb-btn,
.rtb-book-btn,
.rtb-submit,
.rtb-booking button[type="submit"]{
    background:#fad102 !important;
    color:#222721 !important;
    font-weight:300 !important;
    border:none !important;
}

.rtb-btn:hover,
.rtb-book-btn:hover,
.rtb-submit:hover,
.rtb-booking button[type="submit"]:hover{
    background:#009c9f !important;
    color:#ffffff !important;
}
