/* Zenda Tour Booking Sidebar v2 */
.ztbs-box{background:#fff;border:1.5px solid #e5e7eb;border-radius:16px;padding:20px;font-family:-apple-system,'Segoe UI',Arial,sans-serif;font-size:14px}
.ztbs-heading{font-size:17px;font-weight:800;color:#111827;margin:0 0 14px}
.ztbs-from{display:flex;align-items:baseline;gap:5px;background:#f0fdf4;border:1.5px solid #bbf7d0;border-radius:10px;padding:10px 14px;margin-bottom:18px}
.ztbs-from-lbl{font-size:12px;color:#6b7280}
.ztbs-from-amt{font-size:22px;font-weight:800;color:#111827;line-height:1}
.ztbs-from-amt .woocommerce-Price-currencySymbol{font-size:16px}
.ztbs-from-per{font-size:12px;color:#9ca3af}
.ztbs-row{margin-bottom:16px}
.ztbs-lbl{display:block;font-size:11px;font-weight:800;color:#374151;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}
.ztbs-sel-wrap{position:relative}
.ztbs-sel{width:100%;box-sizing:border-box;padding:10px 30px 10px 12px;border:1.5px solid #d1d5db;border-radius:8px;font-size:14px;background:#fff;color:#374151;appearance:none;cursor:pointer}
.ztbs-sel:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px rgba(99,102,241,.15)}
.ztbs-arr{position:absolute;right:10px;top:50%;transform:translateY(-50%);pointer-events:none;color:#9ca3af;font-size:16px}
.ztbs-ctr{display:inline-flex;align-items:center;border:1.5px solid #d1d5db;border-radius:8px;overflow:hidden}
.ztbs-btn-c{width:36px;height:36px;border:none;background:#f9fafb;font-size:18px;cursor:pointer;color:#374151;display:flex;align-items:center;justify-content:center;transition:background .15s}
.ztbs-btn-c:hover:not(:disabled){background:#e5e7eb}
.ztbs-btn-c:disabled{color:#d1d5db;cursor:default}
.ztbs-num{min-width:40px;text-align:center;font-size:16px;font-weight:700;color:#111827}
.ztbs-total{margin:2px 0 14px;min-height:18px}
.ztbs-total-row{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap;background:#f0fdf4;border:1.5px solid #bbf7d0;border-radius:8px;padding:8px 12px}
.ztbs-t-base{font-size:13px;font-weight:600;color:#374151}
.ztbs-t-per{font-size:11px;font-weight:400;color:#9ca3af}
.ztbs-t-x,.ztbs-t-eq{font-size:14px;color:#9ca3af}
.ztbs-t-num{font-size:13px;font-weight:700;color:#374151}
.ztbs-t-total{font-size:16px;font-weight:800;color:#16a34a}
.ztbs-hint{font-size:12px;margin-bottom:10px;min-height:18px}
.ztbs-hint-need{color:#d97706;font-weight:600}
.ztbs-hint-ok{color:#16a34a;font-weight:600}
.ztbs-hint-over{color:#ef4444;font-weight:600}
.ztbs-hint-info{color:#6b7280}
.ztbs-seat-bar{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:12px;color:#6b7280}
.ztbs-clr{font-size:11px;padding:2px 8px;background:#fee2e2;color:#ef4444;border:none;border-radius:5px;cursor:pointer}
.ztbs-clr:hover{background:#fecaca}
.ztbs-bus-scroll{overflow-x:auto}
.ztbs-bus{display:inline-flex;flex-direction:column;gap:5px;background:#f9fafb;border:2px solid #e5e7eb;border-radius:14px;padding:12px 14px;min-width:180px}
.ztbs-front{display:flex;align-items:center;justify-content:center;gap:7px;padding:4px 0 9px;border-bottom:2px dashed #d1d5db;margin-bottom:3px;font-size:18px}
.ztbs-front span{font-size:10px;font-weight:800;color:#9ca3af;letter-spacing:.8px;text-transform:uppercase}
.ztbs-srow{display:flex;align-items:center;gap:5px}
.ztbs-rlbl{width:16px;font-size:10px;font-weight:700;color:#9ca3af;text-align:center;flex-shrink:0}
.ztbs-sg { display: flex; gap: 4px; }
.ztbs-sg.ztbs-sg-right { justify-content: flex-end; min-width: var(--ztbs-right-w, auto); }
.ztbs-aisle{width:16px;flex-shrink:0}
.ztbs-seat{width:34px;height:34px;border:2px solid #d1d5db;border-radius:7px 7px 5px 5px;background:#fff;font-size:9px;font-weight:700;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;position:relative}
.ztbs-seat::before{content:'';position:absolute;top:-3px;left:3px;right:3px;height:3px;background:#e5e7eb;border-radius:3px 3px 0 0}
.ztbs-seat:hover:not(.ztbs-s-booked):not(:disabled){border-color:#6366f1;background:#eef2ff;color:#4f46e5;transform:translateY(-1px)}
.ztbs-seat.ztbs-s-sel{border-color:#16a34a;background:#dcfce7;color:#15803d}
.ztbs-seat.ztbs-s-sel::before{background:#86efac}
.ztbs-seat.ztbs-s-booked{border-color:#fca5a5;background:#fee2e2;color:#ef4444;cursor:not-allowed}
.ztbs-seat.ztbs-s-booked::before{background:#fca5a5}
.ztbs-legend{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}
.ztbs-legend span{display:flex;align-items:center;gap:4px;font-size:10px;color:#6b7280}
.ztbs-li{width:12px;height:12px;border-radius:3px;border:1.5px solid;display:inline-block;font-style:normal}
.ztbs-li-a{background:#fff;border-color:#d1d5db}
.ztbs-li-s{background:#dcfce7;border-color:#16a34a}
.ztbs-li-b{background:#fee2e2;border-color:#fca5a5}
.ztbs-book{display:block;width:100%;padding:13px;border:none;border-radius:10px;font-size:15px;font-weight:700;cursor:pointer;margin-top:16px;transition:opacity .2s,transform .1s}
.ztbs-book:hover:not(:disabled){opacity:.88;transform:translateY(-1px)}
.ztbs-book:disabled{opacity:.55;cursor:not-allowed}
.ztbs-msg{margin-top:10px;font-size:13px;font-weight:500;border-radius:8px;min-height:0}
.ztbs-msg.err{color:#dc2626;background:#fee2e2;padding:10px 12px}
.ztbs-msg.ok{color:#166534;background:#dcfce7;padding:10px 12px}
.ztbs-msg a{color:#166534;font-weight:700}
