@aaravpos/appointment-booking-plugin 6.0.9 → 7.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/styles.css CHANGED
@@ -1,4 +1,4 @@
1
- /*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */
1
+ /*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
2
2
  @import url("https://fonts.googleapis.com/css2?family=Bebas+Neue&family=DM+Sans:wght@300;400;500;600&family=DM+Mono:wght@400;500&display=swap");
3
3
  :root {
4
4
  --toastify-color-light: #fff;
@@ -819,7 +819,7 @@
819
819
  border-color: var(--btn-bg);
820
820
  }
821
821
  .aaravpos-paymentcard-card {
822
- background: linear-gradient( to right, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.02) );
822
+ background: linear-gradient(to right, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.02));
823
823
  border: 1px solid rgba(0, 0, 0, 0.1);
824
824
  border-radius: 4px;
825
825
  padding: 28px 18px;
@@ -905,7 +905,6 @@
905
905
  .aaravpos-tab-disabled {
906
906
  cursor: not-allowed;
907
907
  opacity: 0.5;
908
- pointer-events: none;
909
908
  }
910
909
  .aaravpos-container {
911
910
  background-color: #fff;
@@ -955,7 +954,7 @@
955
954
  transition: all 0.2s ease;
956
955
  border-radius: 6px;
957
956
  position: absolute;
958
- bottom: 15px;
957
+ bottom: 25px;
959
958
  z-index: 50;
960
959
  display: flex;
961
960
  align-items: center;
@@ -1083,16 +1082,29 @@
1083
1082
  position: relative;
1084
1083
  min-width: 0;
1085
1084
  }
1086
- .aaravpos-mobile-button {
1085
+ .aaravpos-btn {
1086
+ gap: 8px;
1087
+ padding: 8px 16px;
1088
+ border: none;
1089
+ background: var(--btn-bg, #000);
1090
+ color: var(--btn-text, #fff);
1091
+ font-size: 12px;
1092
+ font-weight: 700;
1093
+ text-transform: uppercase;
1094
+ letter-spacing: 1.5px;
1095
+ cursor: pointer;
1096
+ transition: all 0.2s ease;
1097
+ border-radius: 24px;
1087
1098
  position: absolute;
1088
- bottom: 12px;
1089
- left: 0;
1090
- right: 0;
1099
+ bottom: 8px;
1091
1100
  z-index: 50;
1092
- padding: 0 16px;
1093
1101
  display: flex;
1094
1102
  align-items: center;
1095
1103
  justify-content: center;
1104
+ left: 50%;
1105
+ transform: translateX(-50%);
1106
+ width: max-content;
1107
+ display: none;
1096
1108
  }
1097
1109
  .aaravpos-sidebar {
1098
1110
  flex-direction: column;
@@ -1356,7 +1368,7 @@
1356
1368
  }
1357
1369
  .aaravpos-step-nav {
1358
1370
  display: grid;
1359
- grid-template-columns: repeat(4, 1fr);
1371
+ grid-template-columns: repeat(5, 1fr);
1360
1372
  width: 100%;
1361
1373
  overflow: hidden;
1362
1374
  }
@@ -1382,7 +1394,6 @@
1382
1394
  .aaravpos-step-btn.disabled {
1383
1395
  cursor: not-allowed;
1384
1396
  opacity: 0.5;
1385
- pointer-events: none;
1386
1397
  }
1387
1398
  .aaravpos-step-btn.active {
1388
1399
  border-bottom-color: var(--btn-bg);
@@ -1583,7 +1594,7 @@
1583
1594
  }
1584
1595
  .aaravpos-services-grid {
1585
1596
  display: grid;
1586
- grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
1597
+ grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
1587
1598
  gap: 12px;
1588
1599
  }
1589
1600
  .aaravpos-service-card {
@@ -1637,6 +1648,7 @@
1637
1648
  .aaravpos-service-description {
1638
1649
  font-size: 12px;
1639
1650
  font-weight: 600;
1651
+ line-clamp: 1;
1640
1652
  color: rgba(0, 0, 0, 0.45);
1641
1653
  text-transform: uppercase;
1642
1654
  overflow: hidden;
@@ -1647,7 +1659,7 @@
1647
1659
  .aaravpos-service-tooltip {
1648
1660
  position: absolute;
1649
1661
  display: none;
1650
- top: 20px;
1662
+ top: -50px;
1651
1663
  left: 0;
1652
1664
  z-index: 10;
1653
1665
  width: 208px;
@@ -1671,6 +1683,7 @@
1671
1683
  }
1672
1684
  .aaravpos-service-price-right {
1673
1685
  display: flex;
1686
+ font-size: 14px;
1674
1687
  align-items: center;
1675
1688
  font-family: monospace;
1676
1689
  }
@@ -1731,7 +1744,7 @@
1731
1744
  left: -100%;
1732
1745
  width: 100%;
1733
1746
  height: 100%;
1734
- background: linear-gradient( 90deg, transparent, rgba(255, 255, 255, 0.5), transparent );
1747
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.5), transparent);
1735
1748
  animation: aaravpos-shimmer 1.2s infinite;
1736
1749
  }
1737
1750
  .aaravpos-available-badge {
@@ -1763,7 +1776,7 @@
1763
1776
  }
1764
1777
  .aaravpos-staff-grid {
1765
1778
  display: grid;
1766
- grid-template-columns: repeat(auto-fill, minmax(195px, 1fr));
1779
+ grid-template-columns: repeat(2, 1fr);
1767
1780
  gap: 12px;
1768
1781
  }
1769
1782
  .aaravpos-display-flex {
@@ -1914,10 +1927,9 @@
1914
1927
  }
1915
1928
  .aaravpos-order-details {
1916
1929
  width: 100%;
1917
- display: grid;
1918
- gap: 4px;
1919
- grid-template-columns: repeat(3, 1fr);
1930
+ display: flex;
1920
1931
  align-items: center;
1932
+ justify-content: space-between;
1921
1933
  margin-top: 4px;
1922
1934
  }
1923
1935
  .aaravpos-order-detail {
@@ -2360,7 +2372,7 @@
2360
2372
  left: -100%;
2361
2373
  width: 100%;
2362
2374
  height: 100%;
2363
- background: linear-gradient( 90deg, transparent, rgba(255, 255, 255, 0.5), transparent );
2375
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.5), transparent);
2364
2376
  animation: aaravposShimmer 1.2s infinite;
2365
2377
  }
2366
2378
  .aaravpos-spinner-wrapper {
@@ -2740,6 +2752,7 @@
2740
2752
  .aaravpos-service-price {
2741
2753
  color: #111827;
2742
2754
  display: flex;
2755
+ font-size: 10px;
2743
2756
  flex-direction: row;
2744
2757
  align-items: center;
2745
2758
  }
@@ -3570,7 +3583,7 @@
3570
3583
  cursor: pointer;
3571
3584
  text-transform: uppercase;
3572
3585
  letter-spacing: 0.5px;
3573
- font-size: 16px;
3586
+ font-size: 12px;
3574
3587
  transition: all 0.2s ease;
3575
3588
  }
3576
3589
  .aaravpos-book-btn:hover {
@@ -3726,9 +3739,6 @@
3726
3739
  .aaravpos-services-wrapper.standalone {
3727
3740
  height: calc(100dvh - 300px);
3728
3741
  }
3729
- .aaravpos-services-wrapper.standalone {
3730
- height: calc(100dvh - 300px);
3731
- }
3732
3742
  .aaravpos-mobile-button {
3733
3743
  display: none;
3734
3744
  }
@@ -3755,7 +3765,7 @@
3755
3765
  }
3756
3766
  @media (max-width: 543px) {
3757
3767
  .aaravpos-services-grid {
3758
- grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
3768
+ grid-template-columns: repeat(2, 1fr);
3759
3769
  }
3760
3770
  .aaravpos-service-actions {
3761
3771
  width: 100%;
@@ -3851,10 +3861,10 @@
3851
3861
  width: 24px;
3852
3862
  }
3853
3863
  .aaravpos-service-title {
3854
- font-size: 12px;
3864
+ font-size: 10px;
3855
3865
  }
3856
3866
  .aaravpos-service-description {
3857
- font-size: 10px;
3867
+ font-size: 8px;
3858
3868
  }
3859
3869
  }
3860
3870
  @media (max-width: 418px) {
@@ -3885,7 +3895,7 @@
3885
3895
  display: none;
3886
3896
  }
3887
3897
  .aaravpos-btn {
3888
- display: block;
3898
+ display: flex;
3889
3899
  }
3890
3900
  }
3891
3901
  @media (min-width: 1024px) {
@@ -3944,6 +3954,9 @@
3944
3954
  flex-direction: column;
3945
3955
  gap: 20px;
3946
3956
  }
3957
+ .aaravpos-btn {
3958
+ display: flex;
3959
+ }
3947
3960
  }
3948
3961
  @media (min-width: 1280px) {
3949
3962
  .aaravpos-title {
@@ -4093,3 +4106,1031 @@
4093
4106
  transform: rotate(360deg);
4094
4107
  }
4095
4108
  }
4109
+ .aaravpos-currency-icon {
4110
+ width: 14px;
4111
+ height: 14px;
4112
+ display: inline-block;
4113
+ vertical-align: middle;
4114
+ }
4115
+ .aaravpos-order-detail.right .aaravpos-currency-icon {
4116
+ width: 12px;
4117
+ height: 12px;
4118
+ }
4119
+ .aaravpos-order-subtotal-price .aaravpos-currency-icon {
4120
+ width: 16px;
4121
+ height: 16px;
4122
+ }
4123
+ .aaravpos-success-row .aaravpos-currency-icon, .aaravpos-service-row .aaravpos-currency-icon, .aaravpos-appointment-price .aaravpos-currency-icon, .aaravpos-payment-amount .aaravpos-currency-icon {
4124
+ width: 14px;
4125
+ height: 14px;
4126
+ }
4127
+ .aaravpos-sidebar-skeleton {
4128
+ display: flex;
4129
+ flex-direction: column;
4130
+ height: 100%;
4131
+ }
4132
+ .aaravpos-skeleton-block {
4133
+ position: relative;
4134
+ overflow: hidden;
4135
+ background-color: #e0e0e0;
4136
+ border-radius: 2px;
4137
+ }
4138
+ .aaravpos-skeleton-shimmer {
4139
+ position: absolute;
4140
+ inset: 0;
4141
+ transform: translateX(-100%);
4142
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.5), transparent);
4143
+ animation: aaravposShimmer 1.2s infinite;
4144
+ }
4145
+ .aaravpos-skeleton-title {
4146
+ height: 28px;
4147
+ width: 112px;
4148
+ margin-bottom: 8px;
4149
+ }
4150
+ .aaravpos-skeleton-subtitle-wrapper {
4151
+ border-bottom: 1px solid rgba(0, 0, 0, 0.1);
4152
+ padding-bottom: 8px;
4153
+ margin-bottom: 12px;
4154
+ }
4155
+ .aaravpos-skeleton-subtitle {
4156
+ height: 20px;
4157
+ width: 160px;
4158
+ }
4159
+ .aaravpos-skeleton-list {
4160
+ display: flex;
4161
+ flex-direction: column;
4162
+ gap: 4px;
4163
+ flex: 1;
4164
+ }
4165
+ @media (min-width: 992px) {
4166
+ .aaravpos-skeleton-list {
4167
+ height: calc(100vh - 70px);
4168
+ }
4169
+ }
4170
+ @media (max-width: 991px) {
4171
+ .aaravpos-skeleton-list {
4172
+ height: calc(100vh - 230px);
4173
+ }
4174
+ }
4175
+ .aaravpos-skeleton-item {
4176
+ display: flex;
4177
+ justify-content: space-between;
4178
+ align-items: center;
4179
+ padding: 10px 0;
4180
+ }
4181
+ .aaravpos-skeleton-border {
4182
+ border-bottom: 1px dotted rgba(0, 0, 0, 0.2);
4183
+ }
4184
+ .aaravpos-skeleton-item-name {
4185
+ height: 18px;
4186
+ width: 192px;
4187
+ }
4188
+ .aaravpos-skeleton-item-price {
4189
+ height: 18px;
4190
+ width: 48px;
4191
+ }
4192
+ .aaravpos-skeleton-divider {
4193
+ margin-top: auto;
4194
+ margin-bottom: 10px;
4195
+ }
4196
+ .aaravpos-skeleton-subtotal-row {
4197
+ display: flex;
4198
+ justify-content: space-between;
4199
+ align-items: center;
4200
+ margin-bottom: 2px;
4201
+ padding: 4px 0;
4202
+ }
4203
+ .aaravpos-skeleton-subtotal-label {
4204
+ height: 20px;
4205
+ width: 64px;
4206
+ }
4207
+ .aaravpos-skeleton-subtotal-val {
4208
+ height: 20px;
4209
+ width: 64px;
4210
+ }
4211
+ .aaravpos-skeleton-button {
4212
+ height: 44px;
4213
+ width: 100%;
4214
+ margin-top: 14px;
4215
+ border-radius: 4px;
4216
+ }
4217
+ .border-border {
4218
+ border-color: rgba(0, 0, 0, 0.1);
4219
+ }
4220
+ .border-border-hover {
4221
+ border-color: rgba(0, 0, 0, 0.2);
4222
+ }
4223
+ .border-border-active {
4224
+ border-color: var(--btn-bg);
4225
+ }
4226
+ .bg-btn-bg-hover\/5 {
4227
+ background-color: var(--btn-bg-hover);
4228
+ @supports (color: color-mix(in lab, red, red)) {
4229
+ background-color: color-mix(in srgb, var(--btn-bg-hover) 5%, transparent);
4230
+ }
4231
+ }
4232
+ .bg-border-active {
4233
+ background-color: var(--btn-bg);
4234
+ }
4235
+ .text-border-active {
4236
+ color: var(--btn-bg);
4237
+ }
4238
+ .booking-pro-grid {
4239
+ display: grid;
4240
+ grid-template-columns: repeat(1, minmax(0, 1fr));
4241
+ gap: 12px;
4242
+ margin-top: 16px;
4243
+ margin-bottom: 24px;
4244
+ }
4245
+ @media (min-width: 640px) {
4246
+ .booking-pro-grid {
4247
+ grid-template-columns: repeat(2, minmax(0, 1fr));
4248
+ }
4249
+ }
4250
+ @media (min-width: 1024px) {
4251
+ .booking-pro-grid {
4252
+ grid-template-columns: repeat(3, minmax(0, 1fr));
4253
+ }
4254
+ }
4255
+ @media (min-width: 1280px) {
4256
+ .booking-pro-grid {
4257
+ grid-template-columns: repeat(4, minmax(0, 1fr));
4258
+ }
4259
+ }
4260
+ .booking-pro-card {
4261
+ position: relative;
4262
+ display: flex;
4263
+ flex-direction: column;
4264
+ border-radius: 8px;
4265
+ overflow: hidden;
4266
+ transition: all 0.3s ease;
4267
+ border: 1px solid rgba(0, 0, 0, 0.1);
4268
+ background-color: #ffffff;
4269
+ padding: 16px;
4270
+ cursor: pointer;
4271
+ user-select: none;
4272
+ }
4273
+ .booking-pro-card-header {
4274
+ display: flex;
4275
+ align-items: center;
4276
+ gap: 16px;
4277
+ width: 100%;
4278
+ }
4279
+ @media (max-width: 1024px) {
4280
+ .booking-pro-card {
4281
+ padding: 12px 8px;
4282
+ }
4283
+ .booking-pro-card-header {
4284
+ gap: 8px;
4285
+ }
4286
+ }
4287
+ .booking-pro-card:hover {
4288
+ border-color: rgba(0, 0, 0, 0.2);
4289
+ box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
4290
+ }
4291
+ .booking-pro-card.active {
4292
+ border-color: var(--btn-bg);
4293
+ background-color: #ffffff;
4294
+ box-shadow: 0 4px 20px rgba(255, 120, 120, 0.15);
4295
+ }
4296
+ .booking-pro-card.disabled {
4297
+ opacity: 0.4;
4298
+ background-color: rgba(229, 231, 235, 0.5);
4299
+ border-color: #e5e7eb;
4300
+ cursor: not-allowed;
4301
+ }
4302
+ .booking-pro-avatar-circle {
4303
+ width: 48px;
4304
+ height: 48px;
4305
+ border-radius: 50%;
4306
+ display: flex;
4307
+ align-items: center;
4308
+ justify-content: center;
4309
+ font-weight: 700;
4310
+ font-size: 16px;
4311
+ border: 1px solid rgba(0, 0, 0, 0.05);
4312
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
4313
+ flex-shrink: 0;
4314
+ }
4315
+ .booking-pro-avatar-img {
4316
+ width: 48px;
4317
+ height: 48px;
4318
+ border-radius: 50%;
4319
+ object-fit: cover;
4320
+ border: 1px solid rgba(0, 0, 0, 0.1);
4321
+ flex-shrink: 0;
4322
+ }
4323
+ @media (max-width: 1024px) {
4324
+ .booking-pro-avatar-circle {
4325
+ width: 36px;
4326
+ height: 36px;
4327
+ font-size: 12px;
4328
+ }
4329
+ .booking-pro-avatar-img {
4330
+ width: 36px;
4331
+ height: 36px;
4332
+ }
4333
+ }
4334
+ .booking-pro-info {
4335
+ flex: 1;
4336
+ min-width: 0;
4337
+ text-align: left;
4338
+ }
4339
+ .booking-pro-name {
4340
+ font-size: 14px;
4341
+ font-weight: 700;
4342
+ color: #111827;
4343
+ text-transform: uppercase;
4344
+ margin: 0;
4345
+ line-height: 1.25;
4346
+ letter-spacing: 0.025em;
4347
+ white-space: nowrap;
4348
+ overflow: hidden;
4349
+ text-overflow: ellipsis;
4350
+ }
4351
+ .booking-pro-role {
4352
+ font-size: 12px;
4353
+ color: #6b7280;
4354
+ margin-top: 4px;
4355
+ margin-bottom: 0;
4356
+ line-height: 1.25;
4357
+ text-transform: capitalize;
4358
+ white-space: nowrap;
4359
+ overflow: hidden;
4360
+ text-overflow: ellipsis;
4361
+ }
4362
+ .booking-pro-leave {
4363
+ display: flex;
4364
+ align-items: center;
4365
+ justify-content: flex-start;
4366
+ gap: 6px;
4367
+ padding: 0 16px 12px 16px;
4368
+ margin-top: -8px;
4369
+ }
4370
+ .booking-pro-leave-dot {
4371
+ width: 6px;
4372
+ height: 6px;
4373
+ border-radius: 50%;
4374
+ background-color: #15803d;
4375
+ flex-shrink: 0;
4376
+ }
4377
+ .booking-pro-leave-text {
4378
+ font-size: 11px;
4379
+ font-weight: 600;
4380
+ color: #166534;
4381
+ margin: 0;
4382
+ letter-spacing: 0.02em;
4383
+ }
4384
+ .booking-addon-title-section {
4385
+ margin-top: 32px;
4386
+ padding-top: 24px;
4387
+ border-top: 1px solid #f3f4f6;
4388
+ text-align: left;
4389
+ }
4390
+ .booking-addon-heading {
4391
+ font-size: 20px;
4392
+ font-weight: 900;
4393
+ text-transform: uppercase;
4394
+ letter-spacing: -0.025em;
4395
+ color: #111827;
4396
+ padding-top: 0px;
4397
+ line-height: 1.1;
4398
+ margin-bottom: 0px;
4399
+ margin-top: 0px;
4400
+ }
4401
+ .booking-addon-subheading {
4402
+ font-size: 14px;
4403
+ color: #4b5563;
4404
+ margin: 0 0 16px 0;
4405
+ }
4406
+ .booking-addon-subheading span {
4407
+ font-weight: 700;
4408
+ color: #111827;
4409
+ text-transform: uppercase;
4410
+ }
4411
+ .booking-addon-grid {
4412
+ display: grid;
4413
+ grid-template-columns: repeat(2, minmax(0, 1fr));
4414
+ gap: 12px;
4415
+ margin-bottom: 24px;
4416
+ }
4417
+ @media (min-width: 768px) {
4418
+ .booking-addon-grid {
4419
+ grid-template-columns: repeat(3, minmax(0, 1fr));
4420
+ }
4421
+ }
4422
+ @media (min-width: 1024px) {
4423
+ .booking-addon-grid {
4424
+ grid-template-columns: repeat(4, minmax(0, 1fr));
4425
+ }
4426
+ }
4427
+ @media (min-width: 1280px) {
4428
+ .booking-addon-grid {
4429
+ grid-template-columns: repeat(6, minmax(0, 1fr));
4430
+ }
4431
+ }
4432
+ .booking-addon-card {
4433
+ position: relative;
4434
+ border: 1px solid #e5e7eb;
4435
+ border-radius: 8px;
4436
+ padding: 16px;
4437
+ background-color: #ffffff;
4438
+ display: flex;
4439
+ flex-direction: column;
4440
+ justify-content: space-between;
4441
+ cursor: pointer;
4442
+ transition: all 0.2s ease;
4443
+ min-height: 60px;
4444
+ text-align: left;
4445
+ user-select: none;
4446
+ }
4447
+ .booking-addon-card:hover {
4448
+ border-color: #d1d5db;
4449
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
4450
+ }
4451
+ .booking-addon-card.active {
4452
+ border-color: var(--btn-bg);
4453
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
4454
+ }
4455
+ .booking-addon-name {
4456
+ font-size: 14px;
4457
+ font-weight: 700;
4458
+ color: #111827;
4459
+ text-transform: uppercase;
4460
+ margin: 4px 0 4px 0;
4461
+ padding-right: 16px;
4462
+ line-height: 1.3;
4463
+ display: -webkit-box;
4464
+ -webkit-line-clamp: 1;
4465
+ -webkit-box-orient: vertical;
4466
+ overflow: hidden;
4467
+ }
4468
+ .booking-addon-desc {
4469
+ font-size: 11px;
4470
+ font-weight: 600;
4471
+ color: #9ca3af;
4472
+ text-transform: uppercase;
4473
+ margin: 0;
4474
+ line-height: 1.3;
4475
+ display: -webkit-box;
4476
+ -webkit-line-clamp: 1;
4477
+ -webkit-box-orient: vertical;
4478
+ overflow: hidden;
4479
+ }
4480
+ .booking-addon-footer {
4481
+ display: flex;
4482
+ justify-content: space-between;
4483
+ align-items: center;
4484
+ margin-top: 12px;
4485
+ padding-top: 8px;
4486
+ font-size: 12px;
4487
+ color: #6b7280;
4488
+ }
4489
+ .booking-addon-duration {
4490
+ font-weight: 500;
4491
+ }
4492
+ .booking-addon-price {
4493
+ font-weight: 700;
4494
+ color: #111827;
4495
+ display: flex;
4496
+ align-items: center;
4497
+ font-size: 14px;
4498
+ }
4499
+ .booking-addon-checkmark {
4500
+ position: absolute;
4501
+ top: 8px;
4502
+ right: 8px;
4503
+ background-color: var(--btn-bg);
4504
+ color: #ffffff;
4505
+ border-radius: 50%;
4506
+ padding: 2px;
4507
+ display: flex;
4508
+ align-items: center;
4509
+ justify-content: center;
4510
+ }
4511
+ .booking-confirm-card {
4512
+ background-color: #ffffff;
4513
+ border: 1px solid rgba(0, 0, 0, 0.1);
4514
+ border-radius: 8px;
4515
+ padding: 16px;
4516
+ margin-bottom: 8px;
4517
+ font-size: 14px;
4518
+ }
4519
+ .booking-confirm-card-flex {
4520
+ display: flex;
4521
+ align-items: center;
4522
+ gap: 12px;
4523
+ }
4524
+ .booking-confirm-avatar-img {
4525
+ width: 40px;
4526
+ height: 40px;
4527
+ border-radius: 50%;
4528
+ object-fit: cover;
4529
+ }
4530
+ .booking-confirm-avatar-circle {
4531
+ width: 40px;
4532
+ height: 40px;
4533
+ border-radius: 50%;
4534
+ background-color: #000000;
4535
+ color: #ffffff;
4536
+ display: flex;
4537
+ align-items: center;
4538
+ justify-content: center;
4539
+ font-weight: 600;
4540
+ }
4541
+ .booking-confirm-section-label {
4542
+ font-size: 10px;
4543
+ font-weight: 700;
4544
+ text-transform: uppercase;
4545
+ letter-spacing: 1.5px;
4546
+ color: rgba(0, 0, 0, 0.7);
4547
+ margin-top: 20px;
4548
+ margin-bottom: 8px;
4549
+ }
4550
+ .booking-confirm-pay-grid {
4551
+ background: linear-gradient(to right, var(--btn-bg-hover), var(--btn-bg));
4552
+ @supports (color: color-mix(in lab, red, red)) {
4553
+ background: linear-gradient(to right, color-mix(in srgb, var(--btn-bg-hover) 10%, transparent), color-mix(in srgb, var(--btn-bg) 5%, transparent));
4554
+ }
4555
+ border: 1px solid var(--btn-bg);
4556
+ @supports (color: color-mix(in lab, red, red)) {
4557
+ border: 1px solid color-mix(in srgb, var(--btn-bg) 30%, transparent);
4558
+ }
4559
+ border-radius: 8px;
4560
+ padding: 12px;
4561
+ flex: 1;
4562
+ margin-bottom: 8px;
4563
+ }
4564
+ .booking-confirm-pay-option {
4565
+ display: flex;
4566
+ flex-direction: row;
4567
+ align-items: center;
4568
+ gap: 12px;
4569
+ padding: 8px;
4570
+ border: 1px solid #e5e7eb;
4571
+ border-radius: 4px;
4572
+ cursor: pointer;
4573
+ margin-bottom: 8px;
4574
+ background-color: #ffffff;
4575
+ transition: all 0.2s ease;
4576
+ }
4577
+ .booking-confirm-pay-option.active {
4578
+ border-color: var(--btn-bg);
4579
+ background-color: var(--btn-bg);
4580
+ @supports (color: color-mix(in lab, red, red)) {
4581
+ background-color: color-mix(in srgb, var(--btn-bg) 5%, transparent);
4582
+ }
4583
+ }
4584
+ .booking-confirm-pay-check {
4585
+ margin-left: auto;
4586
+ color: var(--btn-bg);
4587
+ display: flex;
4588
+ align-items: center;
4589
+ }
4590
+ .booking-confirm-header-row {
4591
+ display: flex;
4592
+ justify-content: space-between;
4593
+ align-items: center;
4594
+ margin-top: 20px;
4595
+ margin-bottom: 12px;
4596
+ }
4597
+ .booking-confirm-title {
4598
+ font-family: var(--font-heading), sans-serif;
4599
+ font-size: 20px;
4600
+ font-weight: 400;
4601
+ text-transform: uppercase;
4602
+ letter-spacing: 0.05em;
4603
+ margin: 0;
4604
+ }
4605
+ .booking-confirm-edit-btn {
4606
+ border: 1px solid #e5e7eb;
4607
+ border-radius: 6px;
4608
+ padding: 6px 12px;
4609
+ display: flex;
4610
+ align-items: center;
4611
+ gap: 6px;
4612
+ background-color: #ffffff;
4613
+ cursor: pointer;
4614
+ font-size: 12px;
4615
+ font-weight: 600;
4616
+ color: #374151;
4617
+ transition: background-color 0.2s ease;
4618
+ }
4619
+ .booking-confirm-edit-btn:hover {
4620
+ background-color: #fafaf9;
4621
+ }
4622
+ .booking-confirm-info-box {
4623
+ border: 1px solid #e5e7eb;
4624
+ border-radius: 8px;
4625
+ padding: 20px;
4626
+ background-color: #ffffff;
4627
+ margin-bottom: 24px;
4628
+ }
4629
+ .booking-confirm-alert-banner {
4630
+ background-color: #f0fdf4;
4631
+ color: #15803d;
4632
+ border: 1px solid #bbf7d0;
4633
+ padding: 10px 14px;
4634
+ border-radius: 4px;
4635
+ display: flex;
4636
+ align-items: center;
4637
+ gap: 8px;
4638
+ margin-bottom: 20px;
4639
+ }
4640
+ .booking-confirm-alert-circle {
4641
+ width: 20px;
4642
+ height: 20px;
4643
+ border-radius: 50%;
4644
+ background-color: #dcfce7;
4645
+ display: flex;
4646
+ align-items: center;
4647
+ justify-content: center;
4648
+ flex-shrink: 0;
4649
+ }
4650
+ .booking-confirm-alert-text {
4651
+ font-size: 12px;
4652
+ font-weight: 600;
4653
+ }
4654
+ .booking-confirm-info-grid {
4655
+ display: grid;
4656
+ grid-template-columns: 1fr;
4657
+ gap: 20px 32px;
4658
+ }
4659
+ @media (min-width: 1024px) {
4660
+ .booking-confirm-info-grid {
4661
+ grid-template-columns: 1fr 1fr;
4662
+ }
4663
+ }
4664
+ .booking-confirm-info-item {
4665
+ display: flex;
4666
+ align-items: center;
4667
+ gap: 12px;
4668
+ }
4669
+ .booking-confirm-icon-circle {
4670
+ width: 36px;
4671
+ height: 36px;
4672
+ border-radius: 50%;
4673
+ background-color: #f8fafc;
4674
+ display: flex;
4675
+ align-items: center;
4676
+ justify-content: center;
4677
+ flex-shrink: 0;
4678
+ color: #94a3b8;
4679
+ }
4680
+ .booking-confirm-info-val {
4681
+ font-size: 14px;
4682
+ font-weight: 600;
4683
+ color: #1e293b;
4684
+ margin: 0;
4685
+ }
4686
+ .booking-confirm-btn-group {
4687
+ display: flex;
4688
+ justify-content: flex-end;
4689
+ align-items: center;
4690
+ gap: 16px;
4691
+ margin-top: 24px;
4692
+ padding-top: 16px;
4693
+ border-top: 1px solid #f3f4f6;
4694
+ }
4695
+ .booking-confirm-cancel-btn {
4696
+ background: none;
4697
+ border: none;
4698
+ color: #78716c;
4699
+ display: flex;
4700
+ align-items: center;
4701
+ gap: 4px;
4702
+ cursor: pointer;
4703
+ font-size: 14px;
4704
+ font-weight: 600;
4705
+ transition: color 0.2s ease;
4706
+ }
4707
+ .booking-confirm-cancel-btn:hover {
4708
+ color: #292524;
4709
+ }
4710
+ .booking-confirm-save-btn {
4711
+ background-color: #0c0a09;
4712
+ color: #ffffff;
4713
+ border: none;
4714
+ border-radius: 6px;
4715
+ padding: 8px 20px;
4716
+ display: flex;
4717
+ align-items: center;
4718
+ gap: 6px;
4719
+ cursor: pointer;
4720
+ font-size: 14px;
4721
+ font-weight: 600;
4722
+ transition: background-color 0.2s ease;
4723
+ }
4724
+ .booking-confirm-save-btn:hover {
4725
+ background-color: #1c1917;
4726
+ }
4727
+ .booking-confirm-form-grid {
4728
+ display: grid;
4729
+ grid-template-columns: 1fr;
4730
+ gap: 20px 32px;
4731
+ }
4732
+ @media (min-width: 1024px) {
4733
+ .booking-confirm-form-grid {
4734
+ grid-template-columns: 1fr 1fr;
4735
+ }
4736
+ }
4737
+ .booking-confirm-field {
4738
+ display: flex;
4739
+ flex-direction: column;
4740
+ }
4741
+ .booking-confirm-field-label {
4742
+ font-size: 12px;
4743
+ font-weight: 600;
4744
+ color: #4b5563;
4745
+ display: flex;
4746
+ margin-bottom: 4px;
4747
+ }
4748
+ .booking-confirm-field-required {
4749
+ color: #ef4444;
4750
+ margin-left: 2px;
4751
+ }
4752
+ .booking-confirm-input {
4753
+ width: 100%;
4754
+ padding: 8px 12px;
4755
+ border: 1px solid #e5e7eb;
4756
+ border-radius: 4px;
4757
+ font-size: 14px;
4758
+ outline: none;
4759
+ transition: border-color 0.2s ease;
4760
+ }
4761
+ .booking-confirm-input:focus {
4762
+ border-color: var(--btn-bg);
4763
+ }
4764
+ .booking-confirm-phone-container {
4765
+ position: relative;
4766
+ }
4767
+ .booking-confirm-phone-loader {
4768
+ position: absolute;
4769
+ right: 8px;
4770
+ top: 50%;
4771
+ transform: translateY(-50%);
4772
+ }
4773
+ .booking-confirm-phone-spinner {
4774
+ height: 16px;
4775
+ width: 16px;
4776
+ border: 2px solid #d1d5db;
4777
+ border-top-color: #000000;
4778
+ border-radius: 50%;
4779
+ animation: spin 1s linear infinite;
4780
+ }
4781
+ .booking-confirm-autofill-info {
4782
+ margin-top: 4px;
4783
+ font-size: 12px;
4784
+ color: #4b5563;
4785
+ display: flex;
4786
+ align-items: center;
4787
+ gap: 4px;
4788
+ }
4789
+ .booking-confirm-clear-action {
4790
+ color: #ef4444;
4791
+ cursor: pointer;
4792
+ text-decoration: underline;
4793
+ }
4794
+ .booking-confirm-error {
4795
+ color: #ef4444;
4796
+ font-size: 14px;
4797
+ margin-top: 4px;
4798
+ }
4799
+ .booking-confirm-scroll-container {
4800
+ overflow-y: auto;
4801
+ padding-bottom: 144px;
4802
+ }
4803
+ .booking-confirm-scroll-container::-webkit-scrollbar {
4804
+ display: none;
4805
+ }
4806
+ .booking-confirm-scroll-container {
4807
+ -ms-overflow-style: none;
4808
+ scrollbar-width: none;
4809
+ }
4810
+ @media (min-width: 1024px) {
4811
+ .booking-confirm-scroll-container {
4812
+ padding-bottom: 20px;
4813
+ }
4814
+ }
4815
+ .booking-confirm-break-all {
4816
+ flex: 1;
4817
+ word-break: break-all;
4818
+ }
4819
+ .booking-confirm-form-title {
4820
+ font-family: var(--font-heading), sans-serif;
4821
+ font-size: 20px;
4822
+ margin-top: 20px;
4823
+ margin-bottom: 8px;
4824
+ font-weight: 400;
4825
+ text-transform: uppercase;
4826
+ letter-spacing: 0.05em;
4827
+ }
4828
+ .booking-confirm-input-wrapper {
4829
+ position: relative;
4830
+ }
4831
+ .booking-confirm-alert-check-icon {
4832
+ color: #16a34a;
4833
+ stroke-width: 3px;
4834
+ }
4835
+ .booking-confirm-save-check-icon {
4836
+ stroke-width: 3px;
4837
+ }
4838
+ .booking-pro-mobile-btn-container {
4839
+ position: fixed;
4840
+ bottom: 16px;
4841
+ left: 0;
4842
+ right: 0;
4843
+ display: flex;
4844
+ justify-content: center;
4845
+ padding: 0 16px;
4846
+ z-index: 50;
4847
+ }
4848
+ .booking-pro-mobile-btn {
4849
+ display: flex;
4850
+ align-items: center;
4851
+ justify-content: center;
4852
+ gap: 8px;
4853
+ background-color: var(--btn-bg);
4854
+ color: var(--btn-text, #ffffff);
4855
+ width: 100%;
4856
+ max-width: 280px;
4857
+ padding: 12px 24px;
4858
+ border-radius: 9999px;
4859
+ font-weight: 700;
4860
+ text-transform: uppercase;
4861
+ font-size: 12px;
4862
+ letter-spacing: 0.05em;
4863
+ border: none;
4864
+ cursor: pointer;
4865
+ transition: all 0.2s ease;
4866
+ box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
4867
+ }
4868
+ .booking-pro-mobile-btn:hover {
4869
+ background-color: var(--btn-bg-hover);
4870
+ color: var(--btn-text-hover, #ffffff);
4871
+ }
4872
+ .booking-pro-mobile-btn:disabled {
4873
+ background-color: #cccccc;
4874
+ color: #666666;
4875
+ cursor: not-allowed;
4876
+ opacity: 0.7;
4877
+ box-shadow: none;
4878
+ }
4879
+ @keyframes spin {
4880
+ to {
4881
+ transform: rotate(360deg);
4882
+ }
4883
+ }
4884
+ @keyframes bookingSliderFadeIn {
4885
+ from {
4886
+ opacity: 0;
4887
+ }
4888
+ to {
4889
+ opacity: 1;
4890
+ }
4891
+ }
4892
+ @keyframes bookingSliderSlideUp {
4893
+ from {
4894
+ transform: translateY(100%);
4895
+ }
4896
+ to {
4897
+ transform: translateY(0);
4898
+ }
4899
+ }
4900
+ .booking-slider-backdrop {
4901
+ position: fixed;
4902
+ top: 0;
4903
+ right: 0;
4904
+ bottom: 0;
4905
+ left: 0;
4906
+ background-color: rgba(0, 0, 0, 0.5);
4907
+ z-index: 998;
4908
+ animation: bookingSliderFadeIn 0.2s ease-out forwards;
4909
+ }
4910
+ .booking-slider-sheet {
4911
+ position: fixed;
4912
+ bottom: 0;
4913
+ left: 0;
4914
+ right: 0;
4915
+ background-color: #ffffff;
4916
+ border-top-left-radius: 16px;
4917
+ border-top-right-radius: 16px;
4918
+ z-index: 999;
4919
+ max-height: 85vh;
4920
+ display: flex;
4921
+ flex-direction: column;
4922
+ box-shadow: 0 -10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
4923
+ border-top: 1px solid #f3f4f6;
4924
+ padding-bottom: env(safe-area-inset-bottom, 16px);
4925
+ animation: bookingSliderSlideUp 0.3s cubic-bezier(0.16, 1, 0.3, 1) forwards;
4926
+ }
4927
+ @media (min-width: 1024px) {
4928
+ .booking-slider-backdrop, .booking-slider-sheet {
4929
+ display: none !important;
4930
+ }
4931
+ }
4932
+ .booking-slider-drag-handle-container {
4933
+ display: flex;
4934
+ justify-content: center;
4935
+ padding: 12px 0;
4936
+ }
4937
+ .booking-slider-drag-handle {
4938
+ width: 48px;
4939
+ height: 4px;
4940
+ background-color: #e5e7eb;
4941
+ border-radius: 9999px;
4942
+ }
4943
+ .booking-slider-header {
4944
+ padding: 0 16px 12px 16px;
4945
+ border-bottom: 1px solid #f3f4f6;
4946
+ display: flex;
4947
+ align-items: center;
4948
+ justify-content: space-between;
4949
+ }
4950
+ .booking-slider-header-text {
4951
+ text-align: left;
4952
+ }
4953
+ .booking-slider-title {
4954
+ font-family: var(--font-heading);
4955
+ font-size: 20px;
4956
+ text-transform: uppercase;
4957
+ letter-spacing: 0.05em;
4958
+ margin: 0;
4959
+ color: #111827;
4960
+ }
4961
+ .booking-slider-subtitle {
4962
+ font-size: 12px;
4963
+ color: rgba(0, 0, 0, 0.5);
4964
+ margin: 4px 0 0 0;
4965
+ }
4966
+ .booking-slider-close-btn {
4967
+ padding: 6px;
4968
+ border-radius: 9999px;
4969
+ transition: all 0.2s ease;
4970
+ border: none;
4971
+ background: transparent;
4972
+ cursor: pointer;
4973
+ display: flex;
4974
+ align-items: center;
4975
+ justify-content: center;
4976
+ color: #4b5563;
4977
+ }
4978
+ .booking-slider-close-btn:hover {
4979
+ background-color: #f3f4f6;
4980
+ color: #111827;
4981
+ }
4982
+ .booking-slider-list {
4983
+ flex: 1;
4984
+ overflow-y: auto;
4985
+ padding: 12px 16px;
4986
+ max-height: 50vh;
4987
+ display: flex;
4988
+ flex-direction: column;
4989
+ gap: 12px;
4990
+ }
4991
+ .booking-slider-item {
4992
+ display: flex;
4993
+ align-items: center;
4994
+ justify-content: space-between;
4995
+ border: 1px solid rgba(0, 0, 0, 0.15);
4996
+ border-radius: 8px;
4997
+ padding: 14px;
4998
+ transition: all 0.2s ease;
4999
+ background-color: #ffffff;
5000
+ cursor: pointer;
5001
+ }
5002
+ .booking-slider-item:hover {
5003
+ border-color: rgba(0, 0, 0, 0.25);
5004
+ background-color: #fcfcfc;
5005
+ }
5006
+ .booking-slider-item.active {
5007
+ border: 2px solid var(--btn-bg);
5008
+ background-color: rgba(215, 38, 61, 0.05);
5009
+ padding: 13px;
5010
+ }
5011
+ .booking-slider-item-content {
5012
+ flex: 1;
5013
+ min-width: 0;
5014
+ padding-right: 12px;
5015
+ text-align: left;
5016
+ }
5017
+ .booking-slider-item-name {
5018
+ font-weight: 700;
5019
+ font-size: 14px;
5020
+ white-space: nowrap;
5021
+ overflow: hidden;
5022
+ text-overflow: ellipsis;
5023
+ text-transform: uppercase;
5024
+ margin: 0 0 2px 0;
5025
+ color: #111827;
5026
+ }
5027
+ .booking-slider-item-desc {
5028
+ font-size: 11px;
5029
+ font-weight: 600;
5030
+ color: rgba(0, 0, 0, 0.4);
5031
+ white-space: nowrap;
5032
+ overflow: hidden;
5033
+ text-overflow: ellipsis;
5034
+ text-transform: uppercase;
5035
+ margin: 0 0 6px 0;
5036
+ }
5037
+ .booking-slider-item-meta {
5038
+ display: flex;
5039
+ align-items: center;
5040
+ gap: 12px;
5041
+ font-size: 12px;
5042
+ color: rgba(0, 0, 0, 0.6);
5043
+ }
5044
+ .booking-slider-item-price {
5045
+ font-family: var(--font-mono);
5046
+ font-weight: 600;
5047
+ display: flex;
5048
+ align-items: center;
5049
+ }
5050
+ .booking-slider-item-checkbox-wrapper {
5051
+ flex-shrink: 0;
5052
+ display: flex;
5053
+ align-items: center;
5054
+ }
5055
+ .booking-slider-checkbox {
5056
+ width: 20px;
5057
+ height: 20px;
5058
+ accent-color: var(--btn-bg);
5059
+ border-radius: 4px;
5060
+ cursor: pointer;
5061
+ }
5062
+ .booking-slider-empty-text {
5063
+ font-size: 14px;
5064
+ color: rgba(0, 0, 0, 0.4);
5065
+ text-align: center;
5066
+ padding: 32px 0;
5067
+ margin: 0;
5068
+ }
5069
+ .booking-slider-footer {
5070
+ padding: 16px;
5071
+ border-top: 1px solid #f3f4f6;
5072
+ background-color: #f9fafb;
5073
+ display: flex;
5074
+ gap: 12px;
5075
+ }
5076
+ .booking-slider-continue-btn {
5077
+ flex: 1;
5078
+ background-color: var(--btn-bg);
5079
+ color: #ffffff;
5080
+ padding: 12px;
5081
+ border-radius: 9999px;
5082
+ font-weight: 700;
5083
+ text-transform: uppercase;
5084
+ font-size: 12px;
5085
+ letter-spacing: 0.05em;
5086
+ cursor: pointer;
5087
+ box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
5088
+ text-align: center;
5089
+ border: none;
5090
+ transition: background-color 0.2s ease, transform 0.1s ease;
5091
+ }
5092
+ .booking-slider-continue-btn:hover {
5093
+ background-color: var(--btn-bg-hover, #1f2937);
5094
+ }
5095
+ .booking-slider-continue-btn:active {
5096
+ transform: scale(0.98);
5097
+ }
5098
+ .aaravpos-mobile-action-wrapper {
5099
+ position: fixed;
5100
+ bottom: 20px;
5101
+ left: 0;
5102
+ right: 0;
5103
+ display: flex;
5104
+ align-items: center;
5105
+ justify-content: center;
5106
+ z-index: 50;
5107
+ padding: 0 16px;
5108
+ }
5109
+ @media (min-width: 768px) {
5110
+ .aaravpos-mobile-action-wrapper {
5111
+ display: none !important;
5112
+ }
5113
+ }
5114
+ .aaravpos-cta-btn {
5115
+ padding: 12px 34px;
5116
+ font-size: 14px;
5117
+ position: relative;
5118
+ border-radius: 9999px;
5119
+ border: none;
5120
+ background-color: var(--btn-bg);
5121
+ color: #ffffff;
5122
+ font-family: var(--font-body);
5123
+ font-weight: 700;
5124
+ letter-spacing: 1.5px;
5125
+ text-transform: uppercase;
5126
+ cursor: pointer;
5127
+ transition: all 0.2s ease;
5128
+ }
5129
+ .aaravpos-cta-btn:hover {
5130
+ background-color: var(--btn-bg-hover);
5131
+ color: var(--btn-text-hover, #ffffff);
5132
+ }
5133
+ .aaravpos-cta-btn:disabled {
5134
+ background-color: #cccccc;
5135
+ cursor: not-allowed;
5136
+ }