.dataTables_wrapper .bottom{margin-top:15px}.select2-selection.is-invalid{border-color:#f15776!important;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + 1.3875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.select2-selection.is-valid{border-color:#47ad77!important;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + 1.4875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.ql-editor.is-invalid{border:1px solid #f15776;border-radius:0 0 2px 2px}.pay-paid span{color:#47ad77}.pay-due span{color:#f15776}.select2-search.select2-search--inline .select2-search__field{width:85%!important}table.dataTable tbody td{vertical-align:top!important}.modal-dialog.modal-right{justify-content:flex-start}.table-bordered>:not(caption)>*{border-width:0}.booking-disable-cls{background-color:#0000000d!important}.datatable-sight-img{width:80px;height:60px;-o-object-fit:cover;object-fit:cover;border-radius:6px}.document-preview{display:flex;flex-wrap:wrap;gap:15px}.preview-item{width:200px;height:160px;border:1px solid #ddd;border-radius:10px;position:relative;padding:10px;background:#fff}.preview-item img{width:100%;height:90px;-o-object-fit:cover;object-fit:cover;border-radius:6px}.sight-image-preview-row{display:flex;flex-wrap:nowrap;align-items:flex-start;justify-content:flex-start;gap:8px;width:100%;max-width:100%;overflow-x:auto}.sight-image-preview-row .preview-item{flex:0 0 200px;width:200px;max-width:200px;margin:0!important;padding:0;height:auto;border:none;background:transparent}.sight-image-preview-row .preview-item img{width:200px;height:150px;-o-object-fit:cover;object-fit:cover;border-radius:6px;display:block}.file-box{height:90px;display:flex;align-items:center;justify-content:center;background:#f1f1f1;border-radius:6px;font-size:30px}.file-name{font-size:13px;margin-top:6px;word-break:break-all}.remove-btn{position:absolute;top:5px;right:5px;border:none;background:red;color:#fff;width:22px;height:22px;border-radius:50%;font-size:14px;cursor:pointer}.table-responsive-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-scroll.dt-horizontal-scroll-only{overflow-x:auto;overflow-y:hidden}.table-responsive-scroll.dt-horizontal-scroll-only div.dataTables_scrollBody{overflow-x:auto!important;overflow-y:hidden!important}.table-responsive-scroll table.dataTable{min-width:1200px}.table-responsive-scroll table.dataTable th,.table-responsive-scroll table.dataTable td{white-space:nowrap;vertical-align:middle!important;padding:.5rem .75rem}.table-responsive-scroll table.dataTable .btn-sm,.table-responsive-scroll table.dataTable .cell-nowrap,.table-responsive-scroll table.dataTable .booking-cell-nowrap{white-space:nowrap}.table-responsive-scroll table.dataTable .journey-date-cell{line-height:1.4}#notification-table td.notification-message-cell{white-space:normal;vertical-align:middle;max-width:0}#notification-table .notification-followup-msg{line-height:1.4;margin:0}#notification-table td.cell-nowrap{white-space:nowrap;vertical-align:middle}.table-responsive-scroll table.dataTable .journey-date-cell strong{font-weight:600}#uploadDocumentModal .modal-content{border:0;border-radius:10px;overflow:hidden}#uploadDocumentModal .modal-body{padding:24px}#uploadDocumentModal .document-upload-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border:1px dashed #b8c4d6;border-radius:10px;background:#f8fbff}#uploadDocumentModal .document-upload-copy{display:flex;align-items:center;gap:14px}#uploadDocumentModal .document-upload-icon{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#e7f0ff;color:#315bdc;font-size:26px}#uploadDocumentModal .document-upload-control{display:flex;align-items:center;gap:12px;flex-shrink:0}#uploadDocumentModal .document-upload-count{min-width:150px;color:#667085;font-size:14px}#uploadDocumentModal .document-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:26px;margin-bottom:12px}#uploadDocumentModal .document-preview-grid{min-height:210px;display:grid!important;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;align-items:stretch;margin-left:0;margin-right:0}#uploadDocumentModal .document-preview-grid.is-empty:before{content:"No documents uploaded yet";width:100%;min-height:150px;display:flex;align-items:center;justify-content:center;border:1px dashed #d5dbe6;border-radius:10px;color:#8a94a6;background:#fbfcfe}#uploadDocumentModal .preview-item{width:100%!important;max-width:none;height:100%;border:0;border-radius:0;padding:0!important;background:transparent;flex:none}#uploadDocumentModal .doc-box{position:relative;height:250px;min-height:250px;display:flex;flex-direction:column;padding:12px;border:1px solid #e2e7ef;border-radius:10px;background:#ffffff;box-shadow:0 6px 16px #1018280f;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}#uploadDocumentModal .doc-box:hover{transform:translateY(-2px);border-color:#b9c7ff;box-shadow:0 10px 24px #1018281a}#uploadDocumentModal .doc-img{width:100%;height:150px;min-height:150px;-o-object-fit:cover;object-fit:cover;border-radius:8px;display:block;background:#eef2f7}#uploadDocumentModal .doc-file-icon{height:150px;min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-radius:8px;background:#f4f7fb;color:#667085}#uploadDocumentModal .doc-file-icon i{font-size:42px;line-height:1}#uploadDocumentModal .doc-file-icon span{font-size:12px;font-weight:700;color:#475467}#uploadDocumentModal .doc-meta{flex:1;min-height:0;padding-top:12px;text-align:left}#uploadDocumentModal .file-name{margin-top:0;font-size:14px;font-weight:600;color:#344054;min-height:22px;max-height:44px;line-height:22px;white-space:normal;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}#uploadDocumentModal .doc-status{display:inline-block;margin-top:6px;color:#667085;font-size:12px}#uploadDocumentModal .remove-btn{top:8px;right:8px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:2px solid #ffffff;background:#ef4444;box-shadow:0 6px 14px #ef444447;font-size:14px;line-height:1}@media (max-width: 767.98px){#uploadDocumentModal .document-upload-panel,#uploadDocumentModal .document-upload-control,#uploadDocumentModal .document-list-head{align-items:stretch;flex-direction:column}#uploadDocumentModal .document-upload-control .btn{width:100%}#uploadDocumentModal .document-upload-count{min-width:0}}.booking-celebration-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;overflow:hidden;pointer-events:none;background:rgba(6,11,31,.28);animation:bookingOverlayIn .25s ease both}.booking-celebration-overlay.is-leaving{animation:bookingOverlayOut .4s ease both}.booking-celebration-stage{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.booking-celebration-card{position:absolute;top:50%;left:50%;width:min(520px,calc(100vw - 32px));transform:translate(-50%,-50%);padding:34px 28px;text-align:center;color:#fff;border:1px solid rgba(255,255,255,.38);border-radius:16px;background:rgba(20,30,70,.78);box-shadow:0 24px 70px #00000059;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:bookingCardPop .7s cubic-bezier(.2,1.2,.3,1) both}.booking-celebration-badge{width:76px;height:76px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:16px;border-radius:50%;background:#22c55e;color:#fff;font-size:42px;box-shadow:0 0 0 12px #22c55e29}.booking-celebration-title{font-size:clamp(34px,5vw,62px);font-weight:800;line-height:1.05}.booking-celebration-subtitle{margin-top:10px;font-size:clamp(17px,2vw,24px);font-weight:600;color:#e5edff}.booking-balloon{position:absolute;left:var(--x);bottom:-110px;width:var(--size);height:calc(var(--size) * 1.28);border-radius:50% 50% 46% 46%;background:radial-gradient(circle at 34% 28%,rgba(255,255,255,.88),rgba(255,255,255,.16) 20%,var(--color) 58%);box-shadow:inset -8px -10px 16px #00000021,0 14px 24px #00000029;animation:bookingBalloonRise var(--duration) ease-in var(--delay) both}.booking-balloon:before{content:"";position:absolute;left:50%;bottom:-8px;transform:translate(-50%);border-left:7px solid transparent;border-right:7px solid transparent;border-top:10px solid var(--color)}.booking-balloon:after{content:"";position:absolute;left:50%;bottom:-54px;width:1px;height:48px;background:rgba(255,255,255,.62)}.booking-confetti{position:absolute;left:var(--x);top:-18px;width:9px;height:16px;border-radius:2px;background:var(--color);animation:bookingConfettiFall var(--duration) linear var(--delay) both}@keyframes bookingOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes bookingOverlayOut{0%{opacity:1}to{opacity:0}}@keyframes bookingCardPop{0%{opacity:0;transform:translate(-50%,-45%) scale(.86)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes bookingBalloonRise{0%{opacity:0;transform:translateZ(0) scale(.72)}12%{opacity:1}88%{opacity:1;transform:translate3d(var(--drift),-76vh,0) scale(1)}to{opacity:0;transform:translate3d(calc(var(--drift) * 1.4),-104vh,0) scale(1.18)}}@keyframes bookingConfettiFall{0%{opacity:0;transform:translate3d(0,-12px,0) rotate(0)}10%{opacity:1}88%{opacity:1}to{opacity:0;transform:translate3d(24px,108vh,0) rotate(var(--rotate))}}
