/* ctb-style.css
   Extracted from original plugin inline CSS. Tweak as needed.
*/
.ctb-box{display: flex;gap: 10px;flex-direction: column;}
.ctb-no-dates { padding:25px;text-align:center;border:1px solid #eee;border-radius:10px; }
.ctb-no-dates h3 { color:#ff3b30;font-size:22px;margin-bottom:10px; }
.ctb-no-dates p  { font-size:16px;color:#666; }

.tb-dates{display: flex;gap: 10px;align-items: center;justify-content: flex-start;font-family: 'Mulish', sans-serif;}
.tb-date-btn{width: 70px;text-align: center;font-size: 15px;line-height: 25px;background-color: #fff;box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);border-radius: 5px;border: 2px solid transparent;padding: 5px;cursor: pointer;font-weight: 700;color: #000;}
.tb-date-btn:hover, .tb-date-btn:focus{background:#fff;color: #000;}
.tb-date-btn.active {border: 2px solid #FF911E;}
.tb-date-btn.disabled {background:#eee;color:#aaa;cursor:not-allowed; }

.tb-qty{display: flex;flex-direction: column;gap: 10px;}
.qty-line{ display:flex;justify-content:space-between;align-items:center;background-color: #fff;box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1);border-radius: 5px;padding: 10px;}
.qty-box{display: inline-flex;align-items: center;overflow: hidden;}

.qty-box button{width:38px;height:38px;border:none;background:#f7f7f7!important;font-size:20px;font-weight:600;color:#000!important;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s;font-family: 'Mulish', sans-serif;}
.qty-box input{width:48px;height:38px;border:none;text-align:center;font-size:17px;font-weight:600;outline:0;pointer-events:none}

.tb-total{ text-align:right;font-size:22px;font-weight:700;color:#ff3b30;}
.tb-btn{width:100%;background:#ff3b30;border:none;padding:10px 15px;border-radius:4px;font-family: 'Mulish', sans-serif;font-size:18px;font-weight: 700;color:#fff;cursor:pointer;transition:.2s;}
.tb-btn:before{content: "\f07a";font-family: "Font Awesome 5 Free";font-weight: 900;display: inline-block;margin-right: 5px;}
.tb-btn:hover { background:#d72b21; }
.sub { font-size:12px;color:#777;margin-left:4px; }

/* Departure table */
.tour-departure-table{width:100%;border-collapse:collapse;margin-bottom:0;font-size:15px;}
.tour-departure-table tbody tr{border: 1px solid #d6e3ef;}
.tour-departure-table th{background:#003b80;color:#fff;padding:10px;vertical-align:middle;text-align: center;border: 0;}
.tour-departure-table td{padding:10px;border-bottom:1px solid #eee;vertical-align:middle;text-align: center;border: 0;}
.tour-departure-table td:first-child{text-align: left;}
.btn-quick-book{cursor:pointer;transition:.2s;text-align:center;max-width:80px;font-size:14px;line-height:20px;font-weight:600;padding:5px;border-radius:5px;background-color:#d82727;color:#fff}
.btn-quick-book:hover{background:#be141a}
/* Cart editable fields */
.wt-cart-person-fields{display:flex;gap:12px;margin-top:8px}
.wt-field label{display:block;font-weight:600;margin-bottom:4px}
.wt-field input{width:72px;padding:6px;border:1px solid #ddd;border-radius:6px}