.ctb-wrap{max-width:760px;margin:0 auto;padding:12px 0}
.ctb-msg{padding:12px 14px;border-radius:10px;margin:0 0 12px 0;font-size:14px;line-height:1.5}
.ctb-msg-success{border:1px solid #d6f1d8;background:#f2fbf3}
.ctb-msg-error{border:1px solid #f3d1d1;background:#fff3f3}

/*
  Theme override hardening:
  - Force single-column layout
  - Remove left/right padding on the outer box
  - Make controls full-width
*/

.ctb-wrap .ctb-form{border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:14px !important;background:#fff}
.ctb-wrap .ctb-grid{display:grid;grid-template-columns:1fr !important;gap:12px;grid-auto-flow:row}

.ctb-wrap .ctb-field{display:block !important;gap:0}
.ctb-wrap .ctb-field label{display:block !important;font-size:13px;opacity:.9;margin:0 0 6px 0}
.ctb-wrap .ctb-field select,
.ctb-wrap .ctb-field input[type="time"],
.ctb-wrap .ctb-field input[type="tel"],
.ctb-wrap .ctb-field textarea{
  display:block !important;
  width:100% !important;
  box-sizing:border-box;
  border:1px solid rgba(0,0,0,.18);
  border-radius:10px;
  padding:10px 12px;
  font-size:14px;
  outline:none;
}
.ctb-field textarea{min-height:110px;resize:vertical}

.ctb-note{grid-column:1/-1;padding:10px 12px;border-radius:10px;background:rgba(255, 193, 7, 0.12);border:1px solid rgba(255,193,7,.35);font-size:13px;line-height:1.45}

.ctb-consent{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start}
.ctb-consent input{margin-top:4px}
.ctb-consent label{font-size:13px;line-height:1.4}
.ctb-privacy{margin-top:6px;font-size:12px;opacity:.85}

.ctb-actions{grid-column:1/-1;display:block !important;margin-top:4px;padding:0 !important;box-sizing:border-box}
.ctb-btn{
  display:block !important;
  width:100% !important;
  border:0 !important;
  border-radius:0 !important;
  padding:12px 14px !important;
  font-size:14px !important;
  cursor:pointer;
  background:#000 !important;
  color:#fff !important;
  appearance:none;
}

@media (max-width:680px){
  .ctb-wrap{padding:10px 0}
}
