.bcm-booking-container {max-width:760px;margin:50px auto;padding:25px;background:#fff;border-radius:14px;box-shadow:0 3px 10px rgba(0,0,0,.08);}
.bcm-title{text-align:center;margin-bottom:10px;}
.bcm-step-info{color:#555;margin-bottom:14px;}
.bcm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;}
.bcm-field label{font-weight:600;display:block;margin-bottom:4px;}
.bcm-field input,.bcm-field select{width:100%;padding:10px;border:1px solid #ccc;border-radius:8px;}
.bcm-field.wide{grid-column:1/-1;}
.bcm-btn{background:#000;color:#fff;padding:10px 18px;border:none;border-radius:8px;cursor:pointer;margin-top:10px}
.bcm-btn:hover{opacity:.9;}
.bcm-btn-outline{background:#fff;color:#000;border:1px solid #000;padding:10px 18px;border-radius:8px;}
.bcm-extra{color:#777;margin-left:6px;}
.bcm-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:9999;}
.bcm-modal-content{background:#fff;padding:20px;border-radius:10px;width:90%;max-width:440px;}
.bcm-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px;}
.bcm-notice{color:#d33;margin-top:8px;font-size:14px;}