@xenknight/framework7 0.0.3 → 0.0.6

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.
Files changed (92) hide show
  1. package/components/actions/actions-ios.less +22 -15
  2. package/components/actions/actions-rtl.css +1 -1
  3. package/components/actions/actions-vars.less +4 -7
  4. package/components/actions/actions.css +1 -1
  5. package/components/actions/actions.less +0 -3
  6. package/components/app/app-class.d.ts +2 -0
  7. package/components/app/app-class.js +10 -2
  8. package/components/app/app-vars.less +36 -0
  9. package/components/block/block-vars.less +6 -6
  10. package/components/button/button-vars.less +11 -10
  11. package/components/card/card-rtl.css +1 -1
  12. package/components/card/card-vars.less +5 -5
  13. package/components/card/card.css +1 -1
  14. package/components/dialog/dialog-class.js +6 -3
  15. package/components/dialog/dialog-ios.less +10 -34
  16. package/components/dialog/dialog-md.less +2 -22
  17. package/components/dialog/dialog-rtl.css +1 -1
  18. package/components/dialog/dialog-vars.less +8 -10
  19. package/components/dialog/dialog.css +1 -1
  20. package/components/dialog/dialog.js +3 -3
  21. package/components/dialog/dialog.less +6 -25
  22. package/components/list/list-vars.less +7 -5
  23. package/components/list/list.less +1 -1
  24. package/components/notification/notification-class.js +6 -6
  25. package/components/notification/notification-ios.less +3 -8
  26. package/components/notification/notification-md.less +1 -20
  27. package/components/notification/notification-rtl.css +1 -1
  28. package/components/notification/notification-vars.less +13 -16
  29. package/components/notification/notification.css +1 -1
  30. package/components/notification/notification.less +13 -1
  31. package/components/page/page-ios.less +4 -4
  32. package/components/page/page-md.less +2 -2
  33. package/components/popover/popover-class.js +21 -58
  34. package/components/popover/popover-ios.less +66 -2
  35. package/components/popover/popover-md.less +2 -27
  36. package/components/popover/popover-rtl.css +1 -1
  37. package/components/popover/popover-vars.less +2 -3
  38. package/components/popover/popover.css +1 -1
  39. package/components/popover/popover.d.ts +0 -2
  40. package/components/popover/popover.js +0 -1
  41. package/components/popover/popover.less +28 -50
  42. package/components/range/range-class.js +34 -27
  43. package/components/range/range-ios.less +60 -0
  44. package/components/range/range-md.less +67 -4
  45. package/components/range/range-rtl.css +1 -1
  46. package/components/range/range-vars.less +18 -13
  47. package/components/range/range.css +1 -1
  48. package/components/range/range.d.ts +3 -1
  49. package/components/range/range.less +11 -24
  50. package/components/swipeout/swipeout-ios.less +37 -0
  51. package/components/swipeout/swipeout-md.less +56 -0
  52. package/components/swipeout/swipeout-rtl.css +1 -1
  53. package/components/swipeout/swipeout-vars.less +13 -2
  54. package/components/swipeout/swipeout.css +1 -1
  55. package/components/swipeout/swipeout.js +99 -23
  56. package/components/swipeout/swipeout.less +20 -44
  57. package/components/toast/toast-class.js +2 -2
  58. package/components/toast/toast-ios.less +2 -0
  59. package/components/toast/toast-rtl.css +1 -1
  60. package/components/toast/toast-vars.less +2 -4
  61. package/components/toast/toast.css +1 -1
  62. package/components/toast/toast.less +1 -1
  63. package/components/toggle/toggle-class.js +4 -8
  64. package/components/toggle/toggle-ios.less +68 -50
  65. package/components/toggle/toggle-rtl.css +1 -1
  66. package/components/toggle/toggle-vars.less +2 -2
  67. package/components/toggle/toggle.css +1 -1
  68. package/framework7-bundle-rtl.css +551 -452
  69. package/framework7-bundle-rtl.min.css +5 -5
  70. package/framework7-bundle.css +551 -452
  71. package/framework7-bundle.esm.js +2 -2
  72. package/framework7-bundle.js +2460 -858
  73. package/framework7-bundle.js.map +1 -1
  74. package/framework7-bundle.less +2 -2
  75. package/framework7-bundle.min.css +5 -5
  76. package/framework7-bundle.min.js +3 -3
  77. package/framework7-bundle.min.js.map +1 -1
  78. package/framework7-lite-bundle.esm.js +2 -2
  79. package/framework7-lite.esm.js +2 -2
  80. package/framework7-rtl.css +63 -29
  81. package/framework7-rtl.min.css +4 -4
  82. package/framework7.css +63 -29
  83. package/framework7.esm.js +2 -2
  84. package/framework7.less +2 -2
  85. package/framework7.min.css +4 -4
  86. package/less/mixins.less +8 -0
  87. package/package.json +1 -1
  88. package/shared/get-support.d.ts +0 -6
  89. package/shared/get-support.js +1 -20
  90. package/shared/material-color-utils.js +2153 -679
  91. package/shared/material-colors.js +97 -17
  92. package/shared/utils.js +18 -6
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Framework7 0.0.2
2
+ * Framework7 0.0.5
3
3
  * Full featured mobile HTML framework for building iOS & Android apps
4
4
  * https://framework7.io/
5
5
  *
@@ -7,7 +7,7 @@
7
7
  *
8
8
  * Released under the MIT License
9
9
  *
10
- * Released on: July 26, 2025
10
+ * Released on: December 19, 2025
11
11
  */
12
12
 
13
13
  /*====================
@@ -86,6 +86,21 @@
86
86
  /*
87
87
  --f7-bars-link-color: var(--f7-theme-color);
88
88
  */
89
+ --f7-glass-bg-color: rgba(255, 255, 255, 0.75);
90
+ --f7-glass-shadow: inset -1px -1px 0px -0.5px #ffffff,
91
+ inset 1px 1px 0px -0.5px rgba(255, 255, 255, 1),
92
+ inset 3px 3px 10px -3px #ddd,
93
+ inset -3px -3px 10px -3px #ddd,
94
+ inset 0 0 5px 1px #fff,
95
+ inset 0 0 0 0.5px rgba(0, 0, 0, 0.25),
96
+ inset 0 0 24px 0 rgba(0, 0, 0, 0.1),
97
+ 0 0 25px 0 rgba(0, 0, 0, 0.2);
98
+ --f7-glass-shadow-thumb: inset -3px -3px 0px -3.5px #ffffff,
99
+ inset 3px 3px 0px -3.5px rgba(255, 255, 255, 1),
100
+ inset 0px 0px 0px 0.5px rgba(255, 255, 255, 0.5),
101
+ inset 3px 3px 10px -2px #eee,
102
+ inset -3px -3px 10px -2px #eee,
103
+ inset 0 0 5px 1px #fff;
89
104
  --f7-bars-text-color: #000;
90
105
  --f7-text-color: #000;
91
106
  --f7-bars-bg-color: #f7f7f8;
@@ -94,6 +109,23 @@
94
109
  }
95
110
  .ios .dark,
96
111
  .ios.dark {
112
+ --f7-glass-bg-color: rgba(50, 50, 50, 0.5);
113
+ --f7-glass-shadow: inset -2px -2px 0.5px -2.5px rgba(255, 255, 255, 0.4),
114
+ inset 3px 3px 0.5px -3.5px rgba(255, 255, 255, 0.4),
115
+ inset 2px 2px 0.5px -2px #262626,
116
+ inset -2px -2px 0.5px -2px #262626,
117
+ inset 0 0 5px 1px #141414,
118
+ inset 0 0 0 1px rgba(255, 255, 255, 0.15),
119
+ inset 0 0 10px 0 rgba(255, 255, 255, 0.075),
120
+ inset 0 0 24px 0 rgba(255, 255, 255, 0.05),
121
+ 0 0 25px 0 rgba(0, 0, 0, 0.15);
122
+ --f7-glass-shadow-thumb: inset 3px 3px 0px -3.5px #ffffff,
123
+ inset -3px -3px 0px -3.5px rgba(255, 255, 255, 1),
124
+ inset -0.5px -0.5px 0px rgba(255, 255, 255, 0.5),
125
+ inset 0.5px 0.5px 0px rgba(255, 255, 255, 0.1),
126
+ inset -3px 3px 0px -3.5px rgba(255, 255, 255, 0.25),
127
+ inset 0px -5px 0px -3.5px rgba(255, 255, 255, 0.25),
128
+ inset 0px -5px 5px rgba(255, 255, 255, 0.25);
97
129
  --f7-bars-text-color: #fff;
98
130
  --f7-text-color: #fff;
99
131
  --f7-bars-bg-color: #121212;
@@ -424,10 +456,10 @@ html.device-full-viewport body {
424
456
  z-index: 10000;
425
457
  }
426
458
  .ios .page-previous {
427
- transform: translate3d(-20%, 0, 0);
459
+ transform: translate3d(-20%, 0, 0) scale(0.5);
428
460
  }
429
461
  .ios .page-next {
430
- transform: translate3d(100%, 0, 0);
462
+ transform: translate3d(100%, 0, 0) scale(1);
431
463
  }
432
464
  .ios .page-previous .page-opacity-effect {
433
465
  opacity: 1;
@@ -547,11 +579,11 @@ html.device-full-viewport body {
547
579
  }
548
580
  }
549
581
  .md .page-previous {
550
- transform: translate3d(0, -20px, 0);
582
+ transform: translate3d(0, -20px, 0) scale(0.5);
551
583
  }
552
584
  .md .page-next {
553
585
  pointer-events: none;
554
- transform: translate3d(0, 128px, 0);
586
+ transform: translate3d(0, 128px, 0) scale(0.5);
555
587
  opacity: 0;
556
588
  }
557
589
  .md .page-next.page-next-on-right {
@@ -2964,18 +2996,18 @@ html.device-full-viewport body {
2964
2996
  --f7-block-text-color: inherit;
2965
2997
  --f7-block-margin-vertical: 35px;
2966
2998
  --f7-block-outline-border-color: rgba(0, 0, 0, 0.22);
2967
- --f7-block-title-font-size: 16px;
2999
+ --f7-block-title-font-size: 17px;
2968
3000
  --f7-block-title-font-weight: 600;
2969
3001
  --f7-block-title-line-height: 20px;
2970
3002
  --f7-block-title-margin-bottom: 10px;
2971
- --f7-block-title-medium-font-size: 22px;
3003
+ --f7-block-title-medium-font-size: 20px;
2972
3004
  --f7-block-title-medium-font-weight: bold;
2973
3005
  --f7-block-title-medium-line-height: 1.4;
2974
- --f7-block-title-large-font-size: 30px;
3006
+ --f7-block-title-large-font-size: 22px;
2975
3007
  --f7-block-title-large-font-weight: bold;
2976
3008
  --f7-block-title-large-line-height: 1.3;
2977
- --f7-block-inset-border-radius: 8px;
2978
- --f7-block-title-text-color: #000;
3009
+ --f7-block-inset-border-radius: 24px;
3010
+ --f7-block-title-text-color: rgba(0, 0, 0, 0.6);
2979
3011
  --f7-block-strong-text-color: #000;
2980
3012
  --f7-block-header-text-color: rgba(0, 0, 0, 0.45);
2981
3013
  --f7-block-footer-text-color: rgba(0, 0, 0, 0.45);
@@ -2985,7 +3017,7 @@ html.device-full-viewport body {
2985
3017
  }
2986
3018
  .ios .dark,
2987
3019
  .ios.dark {
2988
- --f7-block-title-text-color: #fff;
3020
+ --f7-block-title-text-color: rgba(255, 255, 255, 0.6);
2989
3021
  --f7-block-header-text-color: rgba(255, 255, 255, 0.55);
2990
3022
  --f7-block-footer-text-color: rgba(255, 255, 255, 0.55);
2991
3023
  --f7-block-strong-text-color: #fff;
@@ -3391,7 +3423,6 @@ html.device-full-viewport body {
3391
3423
  :root {
3392
3424
  --f7-list-inset-side-margin: 16px;
3393
3425
  --f7-list-item-padding-horizontal: 16px;
3394
- --f7-list-item-padding-vertical: 8px;
3395
3426
  --f7-list-media-item-padding-horizontal: 16px;
3396
3427
  --f7-list-item-text-max-lines: 2;
3397
3428
  --f7-list-chevron-icon-font-size: 20px;
@@ -3435,8 +3466,9 @@ html.device-full-viewport body {
3435
3466
  --f7-list-chevron-icon-color: rgba(255, 255, 255, 0.3);
3436
3467
  }
3437
3468
  .ios {
3469
+ --f7-list-item-padding-vertical: 12px;
3438
3470
  --f7-list-in-list-padding-left: 30px;
3439
- --f7-list-inset-border-radius: 8px;
3471
+ --f7-list-inset-border-radius: 24px;
3440
3472
  --f7-list-margin-vertical: 35px;
3441
3473
  --f7-list-font-size: 17px;
3442
3474
  --f7-list-chevron-icon-area: 20px;
@@ -3448,7 +3480,7 @@ html.device-full-viewport body {
3448
3480
  --f7-list-item-text-line-height: 21px;
3449
3481
  --f7-list-item-after-font-size: inherit;
3450
3482
  --f7-list-item-after-padding: 5px;
3451
- --f7-list-item-min-height: 44px;
3483
+ --f7-list-item-min-height: 52px;
3452
3484
  --f7-list-item-media-icons-margin: 5px;
3453
3485
  --f7-list-media-item-padding-vertical: 10px;
3454
3486
  --f7-list-media-item-title-font-weight: 600;
@@ -3461,7 +3493,7 @@ html.device-full-viewport body {
3461
3493
  --f7-list-group-title-font-size: inherit;
3462
3494
  --f7-list-group-title-font-weight: 400;
3463
3495
  --f7-menu-list-offset: 8px;
3464
- --f7-menu-list-border-radius: 8px;
3496
+ --f7-menu-list-border-radius: 16px;
3465
3497
  --f7-menu-list-item-bg-color: transparent;
3466
3498
  --f7-menu-list-item-text-color: inherit;
3467
3499
  --f7-menu-list-item-min-height: 44px;
@@ -3480,7 +3512,7 @@ html.device-full-viewport body {
3480
3512
  .ios .dark,
3481
3513
  .ios.dark {
3482
3514
  --f7-list-item-border-color: rgba(255, 255, 255, 0.15);
3483
- --f7-list-outline-inset-color: rgba(255, 255, 255, 0.15);
3515
+ --f7-list-outline-inset-border-color: rgba(255, 255, 255, 0.15);
3484
3516
  --f7-list-strong-bg-color: #1c1c1d;
3485
3517
  --f7-list-item-after-text-color: rgba(255, 255, 255, 0.55);
3486
3518
  --f7-list-item-header-text-color: rgba(255, 255, 255, 0.55);
@@ -3493,6 +3525,7 @@ html.device-full-viewport body {
3493
3525
  --f7-menu-list-item-selected-bg-color: var(--f7-theme-color);
3494
3526
  }
3495
3527
  .md {
3528
+ --f7-list-item-padding-vertical: 8px;
3496
3529
  --f7-list-in-list-padding-left: 24px;
3497
3530
  --f7-list-inset-border-radius: 16px;
3498
3531
  --f7-list-margin-vertical: 32px;
@@ -3703,8 +3736,8 @@ html.device-full-viewport body {
3703
3736
  .list label.item-content {
3704
3737
  color: inherit;
3705
3738
  }
3706
- .list .item-link.active-state,
3707
- .list label.item-content.active-state {
3739
+ .list .item-link.active-state:not(:has(.toggle-active-state)),
3740
+ .list label.item-content.active-state:not(:has(.toggle-active-state)) {
3708
3741
  background-color: var(--f7-list-link-pressed-bg-color);
3709
3742
  }
3710
3743
  .list .item-link .item-inner {
@@ -4514,7 +4547,6 @@ li.list-group-title:after,
4514
4547
  --f7-badge-bg-color: var(--f7-theme-color);
4515
4548
  }
4516
4549
  :root {
4517
- --f7-button-font-size: 14px;
4518
4550
  --f7-button-min-width: 32px;
4519
4551
  --f7-button-bg-color: transparent;
4520
4552
  --f7-button-border-width: 0px;
@@ -4546,12 +4578,13 @@ li.list-group-title:after,
4546
4578
  --f7-segmented-strong-button-active-text-color: #fff;
4547
4579
  }
4548
4580
  .ios {
4581
+ --f7-button-font-size: 15px;
4549
4582
  --f7-button-fill-text-color: #fff;
4550
- --f7-button-text-transform: uppercase;
4551
- --f7-button-height: 28px;
4583
+ --f7-button-text-transform: none;
4584
+ --f7-button-height: 34px;
4552
4585
  --f7-button-padding-horizontal: 10px;
4553
4586
  --f7-button-border-radius: 4px;
4554
- --f7-button-font-weight: 600;
4587
+ --f7-button-font-weight: 500;
4555
4588
  --f7-button-letter-spacing: 0;
4556
4589
  /*
4557
4590
  --f7-button-outline-border-color: var(--f7-theme-color);
@@ -4561,15 +4594,15 @@ li.list-group-title:after,
4561
4594
  --f7-button-pressed-bg-color: rgba(var(--f7-theme-color-rgb), .15);
4562
4595
  --f7-button-fill-pressed-bg-color: var(--f7-theme-color-tint);
4563
4596
  */
4564
- --f7-button-large-text-transform: uppercase;
4565
- --f7-button-large-height: 44px;
4597
+ --f7-button-large-text-transform: none;
4598
+ --f7-button-large-height: 48px;
4566
4599
  --f7-button-large-font-size: 17px;
4567
4600
  --f7-button-large-font-weight: 500;
4568
4601
  --f7-button-small-outline-border-width: 2px;
4569
- --f7-button-small-text-transform: uppercase;
4570
- --f7-button-small-height: 26px;
4571
- --f7-button-small-font-size: 13px;
4572
- --f7-button-small-font-weight: 600;
4602
+ --f7-button-small-text-transform: none;
4603
+ --f7-button-small-height: 28px;
4604
+ --f7-button-small-font-size: 14px;
4605
+ --f7-button-small-font-weight: 500;
4573
4606
  --f7-segmented-strong-button-text-transform: none;
4574
4607
  --f7-segmented-strong-button-active-font-weight: 600;
4575
4608
  --f7-button-tonal-bg-color: rgba(var(--f7-theme-color-rgb), 0.15);
@@ -4584,6 +4617,7 @@ li.list-group-title:after,
4584
4617
  --f7-segmented-strong-button-pressed-bg-color: rgba(255, 255, 255, 0.04);
4585
4618
  }
4586
4619
  .md {
4620
+ --f7-button-font-size: 14px;
4587
4621
  /*
4588
4622
  --f7-button-pressed-bg-color: transparent;
4589
4623
  */
@@ -5247,15 +5281,16 @@ i.icon {
5247
5281
  :root {
5248
5282
  --f7-dialog-button-text-color: var(--f7-theme-color);
5249
5283
  --f7-dialog-button-text-align: center;
5284
+ --f7-dialog-text-line-height: 1.5;
5250
5285
  }
5251
5286
  .ios {
5252
5287
  --f7-dialog-width: 270px;
5253
- --f7-dialog-inner-padding: 16px;
5254
- --f7-dialog-border-radius: 13px;
5255
- --f7-dialog-text-align: center;
5288
+ --f7-dialog-inner-padding: 24px;
5289
+ --f7-dialog-border-radius: 32px;
5290
+ --f7-dialog-text-align: left;
5256
5291
  --f7-dialog-font-size: 14px;
5257
5292
  --f7-dialog-title-text-color: inherit;
5258
- --f7-dialog-title-font-size: 18px;
5293
+ --f7-dialog-title-font-size: 17px;
5259
5294
  --f7-dialog-title-font-weight: 600;
5260
5295
  --f7-dialog-title-line-height: inherit;
5261
5296
  --f7-dialog-button-font-size: 17px;
@@ -5266,29 +5301,26 @@ i.icon {
5266
5301
  --f7-dialog-button-strong-bg-color: transparent;
5267
5302
  --f7-dialog-button-strong-text-color: var(--f7-theme-color);
5268
5303
  --f7-dialog-button-strong-font-weight: 500;
5269
- --f7-dialog-input-border-radius: 4px;
5304
+ --f7-dialog-input-border-radius: 16px;
5270
5305
  --f7-dialog-input-font-size: 14px;
5271
- --f7-dialog-input-height: 32px;
5306
+ --f7-dialog-input-height: 40px;
5272
5307
  --f7-dialog-input-border-width: 1px;
5273
5308
  --f7-dialog-input-placeholder-color: #a9a9a9;
5274
5309
  --f7-dialog-preloader-size: 34px;
5310
+ --f7-dialog-bg-color: var(--f7-glass-bg-color);
5275
5311
  --f7-dialog-input-bg-color: #fff;
5276
- --f7-dialog-bg-color: rgba(255, 255, 255, 0.95);
5277
5312
  --f7-dialog-bg-color-rgb: 255, 255, 255;
5278
5313
  --f7-dialog-text-color: #000;
5279
5314
  --f7-dialog-button-pressed-bg-color: rgba(0, 0, 0, 0.1);
5280
5315
  --f7-dialog-button-strong-pressed-bg-color: rgba(0, 0, 0, 0.1);
5281
5316
  --f7-dialog-input-border-color: rgba(0, 0, 0, 0.3);
5282
- --f7-dialog-border-divider-color: rgba(0, 0, 0, 0.2);
5283
5317
  }
5284
5318
  .ios .dark,
5285
5319
  .ios.dark {
5286
5320
  --f7-dialog-text-color: #fff;
5287
- --f7-dialog-bg-color: rgba(45, 45, 45, 0.95);
5288
5321
  --f7-dialog-bg-color-rgb: 45, 45, 45;
5289
5322
  --f7-dialog-button-pressed-bg-color: rgba(0, 0, 0, 0.2);
5290
5323
  --f7-dialog-button-strong-pressed-bg-color: rgba(0, 0, 0, 0.2);
5291
- --f7-dialog-border-divider-color: rgba(255, 255, 255, 0.15);
5292
5324
  --f7-dialog-input-border-color: rgba(255, 255, 255, 0.15);
5293
5325
  --f7-dialog-input-bg-color: rgba(0, 0, 0, 0.5);
5294
5326
  }
@@ -5348,13 +5380,6 @@ i.icon {
5348
5380
  background: var(--f7-dialog-bg-color);
5349
5381
  will-change: transform, opacity;
5350
5382
  }
5351
- @supports ((-webkit-backdrop-filter: blur(20px)) or (backdrop-filter: blur(20px))) {
5352
- .ios-translucent-modals .dialog {
5353
- background-color: rgba(var(--f7-dialog-bg-color-rgb), 0.8);
5354
- -webkit-backdrop-filter: saturate(180%) blur(20px);
5355
- backdrop-filter: saturate(180%) blur(20px);
5356
- }
5357
- }
5358
5383
  .dialog.modal-in {
5359
5384
  opacity: 1;
5360
5385
  transform: translate3d(0, -50%, 0) scale(1);
@@ -5376,41 +5401,22 @@ i.icon {
5376
5401
  font-weight: var(--f7-dialog-title-font-weight);
5377
5402
  line-height: var(--f7-dialog-title-line-height);
5378
5403
  }
5404
+ .dialog-text {
5405
+ line-height: var(--f7-dialog-text-line-height);
5406
+ }
5379
5407
  .dialog-buttons {
5380
5408
  position: relative;
5381
5409
  display: flex;
5382
5410
  }
5383
5411
  .dialog-buttons-vertical .dialog-buttons {
5384
- display: block;
5412
+ flex-direction: column;
5385
5413
  height: auto !important;
5386
5414
  }
5387
5415
  .dialog-button {
5388
- box-sizing: border-box;
5389
5416
  overflow: hidden;
5390
5417
  position: relative;
5391
5418
  white-space: nowrap;
5392
5419
  text-overflow: ellipsis;
5393
- color: var(--f7-dialog-button-text-color);
5394
- font-size: var(--f7-dialog-button-font-size);
5395
- height: var(--f7-dialog-button-height);
5396
- line-height: var(--f7-dialog-button-height);
5397
- letter-spacing: var(--f7-dialog-button-letter-spacing);
5398
- text-align: var(--f7-dialog-button-text-align);
5399
- font-weight: var(--f7-dialog-button-font-weight);
5400
- text-transform: var(--f7-dialog-button-text-transform);
5401
- display: block;
5402
- cursor: pointer;
5403
- }
5404
- .dialog-button.active-state {
5405
- background-color: var(--f7-dialog-button-pressed-bg-color);
5406
- }
5407
- .dialog-button-strong {
5408
- background-color: var(--f7-dialog-button-strong-bg-color);
5409
- color: var(--f7-dialog-button-strong-text-color);
5410
- font-weight: var(--f7-dialog-button-strong-font-weight);
5411
- }
5412
- .dialog-button-strong.active-state {
5413
- background-color: var(--f7-dialog-button-strong-pressed-bg-color);
5414
5420
  }
5415
5421
  .dialog-no-buttons .dialog-buttons {
5416
5422
  display: none;
@@ -5446,115 +5452,46 @@ input.dialog-input[type]::placeholder {
5446
5452
  .dialog-preloader .preloader {
5447
5453
  --f7-preloader-size: var(--f7-dialog-preloader-size);
5448
5454
  }
5449
- html.with-modal-dialog .page-content {
5455
+ html:has(.dialog.modal-in) .page-content {
5450
5456
  overflow: hidden;
5451
5457
  -webkit-overflow-scrolling: auto;
5452
5458
  }
5459
+ .ios .dialog {
5460
+ box-shadow: var(--f7-glass-shadow);
5461
+ -webkit-backdrop-filter: saturate(180%) blur(16px);
5462
+ backdrop-filter: saturate(180%) blur(16px);
5463
+ border-radius: var(--f7-dialog-border-radius);
5464
+ }
5453
5465
  .ios .dialog.modal-out {
5454
5466
  transform: translate3d(0, -50%, 0) scale(1);
5455
5467
  }
5456
5468
  .ios .dialog-inner {
5457
5469
  border-radius: var(--f7-dialog-border-radius) var(--f7-dialog-border-radius) 0 0;
5458
5470
  }
5459
- .ios .dialog-inner:after {
5460
- content: '';
5461
- position: absolute;
5462
- background-color: var(--f7-dialog-border-divider-color);
5463
- display: block;
5464
- z-index: 15;
5465
- top: auto;
5466
- right: auto;
5467
- bottom: 0;
5468
- left: 0;
5469
- height: 1px;
5470
- width: 100%;
5471
- transform-origin: 50% 100%;
5472
- transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
5473
- }
5474
5471
  .ios .dialog-title + .dialog-text {
5475
- margin-top: 5px;
5472
+ margin-top: 12px;
5476
5473
  }
5477
5474
  .ios .dialog-buttons {
5478
- height: 44px;
5475
+ padding: 0 14px 14px 14px;
5479
5476
  justify-content: center;
5477
+ gap: 8px;
5480
5478
  }
5481
5479
  .ios .dialog-button {
5482
5480
  width: 100%;
5483
- padding: 0 5px;
5484
5481
  -webkit-box-flex: 1;
5485
5482
  -ms-flex: 1;
5486
5483
  }
5487
- .ios .dialog-button:after {
5488
- content: '';
5489
- position: absolute;
5490
- background-color: var(--f7-dialog-border-divider-color);
5491
- display: block;
5492
- z-index: 15;
5493
- top: 0;
5494
- right: 0;
5495
- bottom: auto;
5496
- left: auto;
5497
- width: 1px;
5498
- height: 100%;
5499
- transform-origin: 100% 50%;
5500
- transform: scaleX(calc(1 / var(--f7-device-pixel-ratio)));
5501
- }
5502
- .ios .dialog-button:first-child {
5503
- border-radius: 0 0 0 var(--f7-dialog-border-radius);
5504
- }
5505
- .ios .dialog-button:last-child {
5506
- border-radius: 0 0 var(--f7-dialog-border-radius) 0;
5507
- }
5508
- .ios .dialog-button:last-child:after {
5509
- display: none !important;
5510
- }
5511
- .ios .dialog-button:first-child:last-child {
5512
- border-radius: 0 0 var(--f7-dialog-border-radius) var(--f7-dialog-border-radius);
5513
- }
5514
- .ios .dialog-button[class*='color-'] {
5515
- --f7-dialog-button-text-color: var(--f7-theme-color);
5516
- }
5517
- .ios .dialog-buttons-vertical .dialog-buttons {
5518
- height: auto;
5519
- }
5520
- .ios .dialog-buttons-vertical .dialog-button {
5521
- border-radius: 0;
5522
- }
5523
- .ios .dialog-buttons-vertical .dialog-button:after {
5524
- content: '';
5525
- position: absolute;
5526
- background-color: var(--f7-dialog-border-divider-color);
5527
- display: block;
5528
- z-index: 15;
5529
- top: auto;
5530
- right: auto;
5531
- bottom: 0;
5532
- left: 0;
5533
- height: 1px;
5534
- width: 100%;
5535
- transform-origin: 50% 100%;
5536
- transform: scaleY(calc(1 / var(--f7-device-pixel-ratio)));
5537
- }
5538
- .ios .dialog-buttons-vertical .dialog-button:last-child {
5539
- border-radius: 0 0 var(--f7-dialog-border-radius) var(--f7-dialog-border-radius);
5540
- }
5541
- .ios .dialog-buttons-vertical .dialog-button:last-child:after {
5542
- display: none !important;
5543
- }
5544
5484
  .ios .dialog-no-buttons .dialog-inner {
5545
5485
  border-radius: var(--f7-dialog-border-radius);
5546
5486
  }
5547
- .ios .dialog-no-buttons .dialog-inner:after {
5548
- display: none !important;
5549
- }
5550
5487
  .ios .dialog-input-field {
5551
5488
  margin-top: 15px;
5552
5489
  }
5553
5490
  .ios .dialog-input {
5554
- padding: 0 5px;
5491
+ padding: 0 12px;
5555
5492
  }
5556
5493
  .ios .dialog-input + .dialog-input {
5557
- margin-top: 5px;
5494
+ margin-top: 12px;
5558
5495
  }
5559
5496
  .ios .dialog-input-double + .dialog-input-double {
5560
5497
  margin-top: 0;
@@ -5563,6 +5500,9 @@ html.with-modal-dialog .page-content {
5563
5500
  border-top: 0;
5564
5501
  margin-top: 0;
5565
5502
  }
5503
+ .ios .dialog-preloader {
5504
+ text-align: center;
5505
+ }
5566
5506
  .ios .dialog-preloader .dialog-title ~ .preloader,
5567
5507
  .ios .dialog-preloader .dialog-text ~ .preloader {
5568
5508
  margin-top: 15px;
@@ -5583,39 +5523,20 @@ html.with-modal-dialog .page-content {
5583
5523
  line-height: 1.5;
5584
5524
  }
5585
5525
  .md .dialog-buttons {
5586
- height: 64px;
5587
5526
  padding: 0px 24px 24px;
5588
5527
  overflow: hidden;
5589
5528
  box-sizing: border-box;
5590
5529
  justify-content: flex-end;
5530
+ gap: 8px;
5591
5531
  }
5592
5532
  .md .dialog-button {
5593
- --f7-touch-ripple-color: rgba(var(--f7-theme-color-rgb), 0.25);
5594
- border-radius: 99px;
5595
- min-width: 64px;
5596
- padding: 0px 16px;
5597
- border: none;
5598
- transition-duration: 300ms;
5599
- transform: translate3d(0, 0, 0);
5600
- }
5601
- .md .dialog-button + .dialog-button {
5602
- margin-left: 8px;
5603
- }
5604
- .md .dialog-button-strong {
5605
- --f7-touch-ripple-color: var(--f7-touch-ripple-white);
5606
- }
5607
- .md .dialog-button[class*='color-'] {
5608
- --f7-dialog-button-text-color: var(--f7-theme-color);
5533
+ width: auto;
5609
5534
  }
5610
5535
  .md .dialog-buttons-vertical .dialog-buttons {
5611
5536
  display: flex;
5612
5537
  flex-direction: column;
5613
5538
  align-items: flex-end;
5614
5539
  }
5615
- .md .dialog-buttons-vertical .dialog-button + .dialog-button {
5616
- margin-top: 8px;
5617
- margin-left: 0;
5618
- }
5619
5540
  .md .dialog-input {
5620
5541
  padding: 0;
5621
5542
  transition-duration: 200ms;
@@ -5978,15 +5899,14 @@ html.with-modal-popup-push-closing .framework7-root > .view.dark:after {
5978
5899
  --f7-popover-width: 260px;
5979
5900
  }
5980
5901
  .ios {
5981
- --f7-popover-border-radius: 13px;
5902
+ --f7-popover-border-radius: 32px;
5982
5903
  --f7-popover-actions-icon-size: 28px;
5983
5904
  --f7-popover-transition-timing-function: initial;
5984
- --f7-popover-bg-color: rgba(255, 255, 255, 0.95);
5905
+ --f7-popover-bg-color: transparent;
5985
5906
  --f7-popover-actions-label-text-color: rgba(0, 0, 0, 0.45);
5986
5907
  }
5987
5908
  .ios .dark,
5988
5909
  .ios.dark {
5989
- --f7-popover-bg-color: rgba(30, 30, 30, 0.95);
5990
5910
  --f7-popover-actions-label-text-color: rgba(255, 255, 255, 0.55);
5991
5911
  }
5992
5912
  .md {
@@ -6012,7 +5932,6 @@ html.with-modal-popup-push-closing .framework7-root > .view.dark:after {
6012
5932
  left: 0;
6013
5933
  position: absolute;
6014
5934
  display: none;
6015
- transition-duration: 300ms;
6016
5935
  background-color: var(--f7-popover-bg-color);
6017
5936
  border-radius: var(--f7-popover-border-radius);
6018
5937
  will-change: transform, opacity;
@@ -6114,98 +6033,112 @@ html.with-modal-popup-push-closing .framework7-root > .view.dark:after {
6114
6033
  .md .popover-from-actions-label {
6115
6034
  justify-content: center;
6116
6035
  }
6117
- .popover-arrow {
6118
- width: 26px;
6119
- height: 26px;
6120
- position: absolute;
6121
- left: -26px;
6122
- top: 0;
6123
- z-index: 100;
6124
- overflow: hidden;
6125
- }
6126
- .popover-arrow:after {
6127
- content: '';
6128
- background: var(--f7-popover-bg-color);
6129
- width: 26px;
6130
- height: 26px;
6131
- position: absolute;
6132
- left: 0;
6133
- top: 0;
6134
- border-radius: 3px;
6135
- transform: rotate(45deg);
6136
- }
6137
- .popover-arrow.on-left {
6138
- left: -26px;
6139
- }
6140
- .popover-arrow.on-left:after {
6141
- left: 19px;
6142
- top: 0;
6143
- }
6144
- .popover-arrow.on-right {
6145
- left: 100%;
6146
- }
6147
- .popover-arrow.on-right:after {
6148
- left: -19px;
6149
- top: 0;
6036
+ .popover-on-top {
6037
+ transform-origin: center bottom;
6150
6038
  }
6151
- .popover-arrow.on-top {
6152
- left: 0;
6153
- top: -26px;
6039
+ .popover-on-top.popover-on-right {
6040
+ transform-origin: left bottom;
6154
6041
  }
6155
- .popover-arrow.on-top:after {
6156
- left: 0;
6157
- top: 19px;
6042
+ .popover-on-top.popover-on-left {
6043
+ transform-origin: right bottom;
6158
6044
  }
6159
- .popover-arrow.on-bottom {
6160
- left: 0;
6161
- top: 100%;
6045
+ .popover-on-middle {
6046
+ transform-origin: center center;
6162
6047
  }
6163
- .popover-arrow.on-bottom:after {
6164
- left: 0;
6165
- top: -19px;
6048
+ .popover-on-middle.popover-on-right {
6049
+ transform-origin: left center;
6166
6050
  }
6167
- .ios .popover {
6168
- transform: none;
6169
- transition-property: opacity;
6051
+ .popover-on-middle.popover-on-left {
6052
+ transform-origin: right center;
6170
6053
  }
6171
- .md .popover {
6172
- transform: scale(0.85, 0.6);
6173
- transition-property: opacity, transform;
6054
+ .popover-on-bottom {
6055
+ transform-origin: center top;
6174
6056
  }
6175
- .md .popover.modal-in {
6176
- opacity: 1;
6177
- transform: scale(1);
6057
+ .popover-on-bottom.popover-on-right {
6058
+ transform-origin: left top;
6178
6059
  }
6179
- .md .popover.modal-out {
6180
- opacity: 0;
6181
- transform: scale(1);
6060
+ .popover-on-bottom.popover-on-left {
6061
+ transform-origin: right top;
6182
6062
  }
6183
- .md .popover-on-top {
6063
+ .ios .popover-on-top {
6184
6064
  transform-origin: center bottom;
6065
+ --f7-popover-inner-offset: translate3d(0%, 80px, 0);
6185
6066
  }
6186
- .md .popover-on-top.popover-on-right {
6067
+ .ios .popover-on-top.popover-on-right {
6187
6068
  transform-origin: left bottom;
6069
+ --f7-popover-inner-offset: translate3d(50%, 80px, 0);
6188
6070
  }
6189
- .md .popover-on-top.popover-on-left {
6071
+ .ios .popover-on-top.popover-on-left {
6190
6072
  transform-origin: right bottom;
6073
+ --f7-popover-inner-offset: translate3d(-50%, 80px, 0);
6191
6074
  }
6192
- .md .popover-on-middle {
6075
+ .ios .popover-on-middle {
6193
6076
  transform-origin: center center;
6194
6077
  }
6195
- .md .popover-on-middle.popover-on-right {
6078
+ .ios .popover-on-middle.popover-on-right {
6196
6079
  transform-origin: left center;
6080
+ --f7-popover-inner-offset: translate3d(50%, 0px, 0);
6197
6081
  }
6198
- .md .popover-on-middle.popover-on-left {
6082
+ .ios .popover-on-middle.popover-on-left {
6199
6083
  transform-origin: right center;
6084
+ --f7-popover-inner-offset: translate3d(-50%, 0px, 0);
6200
6085
  }
6201
- .md .popover-on-bottom {
6086
+ .ios .popover-on-bottom {
6202
6087
  transform-origin: center top;
6088
+ --f7-popover-inner-offset: translate3d(0%, -80px, 0);
6203
6089
  }
6204
- .md .popover-on-bottom.popover-on-right {
6090
+ .ios .popover-on-bottom.popover-on-right {
6205
6091
  transform-origin: left top;
6092
+ --f7-popover-inner-offset: translate3d(50%, -80px, 0);
6206
6093
  }
6207
- .md .popover-on-bottom.popover-on-left {
6094
+ .ios .popover-on-bottom.popover-on-left {
6208
6095
  transform-origin: right top;
6096
+ --f7-popover-inner-offset: translate3d(-50%, -80px, 0);
6097
+ }
6098
+ .ios .popover {
6099
+ transform: translate3d(0, 0, 0) scale(0);
6100
+ transition-property: opacity, transform;
6101
+ opacity: 1;
6102
+ will-change: auto;
6103
+ }
6104
+ .ios .popover.modal-in {
6105
+ transform: translate3d(0, 0, 0) scale(1);
6106
+ transition-timing-function: cubic-bezier(0, 1, 0.2, 1.05);
6107
+ transition-duration: 400ms;
6108
+ }
6109
+ .ios .popover.modal-in .popover-inner {
6110
+ transition-duration: 600ms;
6111
+ transition-timing-function: cubic-bezier(0, 1, 0.2, 1.05);
6112
+ transform: translate3d(0, 0, 0) scale(1);
6113
+ }
6114
+ .ios .popover.modal-out {
6115
+ opacity: 0;
6116
+ transform: translate3d(0, 0, 0) scale(0);
6117
+ transition-duration: 300ms;
6118
+ }
6119
+ .ios .popover.modal-out .popover-inner {
6120
+ transition-duration: 500ms;
6121
+ }
6122
+ .ios .popover-inner {
6123
+ background: var(--f7-glass-bg-color);
6124
+ box-shadow: var(--f7-glass-shadow);
6125
+ border-radius: var(--f7-popover-border-radius);
6126
+ transform: var(--f7-popover-inner-offset);
6127
+ -webkit-backdrop-filter: saturate(180%) blur(16px);
6128
+ backdrop-filter: saturate(180%) blur(16px);
6129
+ }
6130
+ .md .popover {
6131
+ transform: scale(0.85, 0.6);
6132
+ transition-property: opacity, transform;
6133
+ transition-duration: 300ms;
6134
+ }
6135
+ .md .popover.modal-in {
6136
+ opacity: 1;
6137
+ transform: scale(1);
6138
+ }
6139
+ .md .popover.modal-out {
6140
+ opacity: 0;
6141
+ transform: scale(1);
6209
6142
  }
6210
6143
  /* === Actions === */
6211
6144
  :root {
@@ -6214,15 +6147,15 @@ html.with-modal-popup-push-closing .framework7-root > .view.dark:after {
6214
6147
  }
6215
6148
  .ios {
6216
6149
  --f7-actions-transition-timing-function: initial;
6217
- --f7-actions-border-radius: 13px;
6150
+ --f7-actions-border-radius: 32px;
6218
6151
  /*
6219
6152
  --f7-actions-button-text-color: var(--f7-theme-color);
6220
6153
  */
6221
6154
  --f7-actions-grid-button-text-color: #757575;
6222
6155
  --f7-actions-button-padding: 0px;
6223
6156
  --f7-actions-button-text-align: center;
6224
- --f7-actions-button-height: 57px;
6225
- --f7-actions-button-height-landscape: 44px;
6157
+ --f7-actions-button-height: 56px;
6158
+ --f7-actions-button-height-landscape: 56px;
6226
6159
  --f7-actions-button-font-size: 20px;
6227
6160
  --f7-actions-button-icon-size: 28px;
6228
6161
  --f7-actions-button-justify-content: center;
@@ -6232,8 +6165,7 @@ html.with-modal-popup-push-closing .framework7-root > .view.dark:after {
6232
6165
  --f7-actions-label-justify-content: center;
6233
6166
  --f7-actions-group-border-color: transparent;
6234
6167
  --f7-actions-group-margin: 8px;
6235
- --f7-actions-bg-color: rgba(255, 255, 255, 0.95);
6236
- --f7-actions-bg-color-rgb: 255, 255, 255;
6168
+ --f7-actions-bg-color: var(--f7-glass-bg-color);
6237
6169
  --f7-actions-button-border-color: rgba(0, 0, 0, 0.2);
6238
6170
  --f7-actions-button-pressed-bg-color: rgba(230, 230, 230, 0.9);
6239
6171
  --f7-actions-button-pressed-bg-color-rgb: 230, 230, 230;
@@ -6241,8 +6173,6 @@ html.with-modal-popup-push-closing .framework7-root > .view.dark:after {
6241
6173
  }
6242
6174
  .ios .dark,
6243
6175
  .ios.dark {
6244
- --f7-actions-bg-color: rgba(45, 45, 45, 0.95);
6245
- --f7-actions-bg-color-rgb: 45, 45, 45;
6246
6176
  --f7-actions-button-border-color: rgba(255, 255, 255, 0.15);
6247
6177
  --f7-actions-button-pressed-bg-color: rgba(50, 50, 50, 0.9);
6248
6178
  --f7-actions-button-pressed-bg-color-rgb: 50, 50, 50;
@@ -6403,13 +6333,6 @@ html.with-modal-popup-push-closing .framework7-root > .view.dark:after {
6403
6333
  .actions-button[class*='color-'] {
6404
6334
  color: var(--f7-theme-color);
6405
6335
  }
6406
- @supports ((-webkit-backdrop-filter: blur(20px)) or (backdrop-filter: blur(20px))) {
6407
- .ios-translucent-modals .actions-button.active-state {
6408
- background-color: rgba(var(--f7-actions-button-pressed-bg-color-rgb), 0.8);
6409
- -webkit-backdrop-filter: saturate(180%) blur(20px);
6410
- backdrop-filter: saturate(180%) blur(20px);
6411
- }
6412
- }
6413
6336
  .actions-button-media {
6414
6337
  flex-shrink: 0;
6415
6338
  display: flex;
@@ -6489,20 +6412,15 @@ html.with-modal-popup-push-closing .framework7-root > .view.dark:after {
6489
6412
  height: 1.33em;
6490
6413
  font-size: var(--f7-actions-grid-button-font-size);
6491
6414
  }
6415
+ .ios .actions-modal {
6416
+ overflow: visible;
6417
+ }
6492
6418
  .ios .actions-group {
6493
6419
  border-radius: var(--f7-actions-border-radius);
6494
- }
6495
- .ios .actions-button,
6496
- .ios .actions-label {
6497
6420
  background: var(--f7-actions-bg-color);
6498
- }
6499
- @supports ((-webkit-backdrop-filter: blur(20px)) or (backdrop-filter: blur(20px))) {
6500
- .ios-translucent-modals .ios .actions-button,
6501
- .ios-translucent-modals .ios .actions-label {
6502
- background-color: rgba(var(--f7-actions-bg-color-rgb), 0.8);
6503
- -webkit-backdrop-filter: saturate(180%) blur(20px);
6504
- backdrop-filter: saturate(180%) blur(20px);
6505
- }
6421
+ box-shadow: var(--f7-glass-shadow);
6422
+ -webkit-backdrop-filter: saturate(180%) blur(16px);
6423
+ backdrop-filter: saturate(180%) blur(16px);
6506
6424
  }
6507
6425
  .ios .actions-button:first-child,
6508
6426
  .ios .actions-label:first-child {
@@ -6526,29 +6444,28 @@ html.with-modal-popup-push-closing .framework7-root > .view.dark:after {
6526
6444
  .ios .actions-label.actions-button-strong {
6527
6445
  font-weight: 600;
6528
6446
  }
6529
- .ios .actions-grid .actions-group {
6530
- border-radius: 0;
6447
+ .ios .actions-grid::before {
6448
+ content: '';
6449
+ position: absolute;
6450
+ left: var(--f7-actions-group-margin);
6451
+ right: var(--f7-actions-group-margin);
6452
+ bottom: var(--f7-actions-group-margin);
6531
6453
  background: var(--f7-actions-bg-color);
6532
- }
6533
- @supports ((-webkit-backdrop-filter: blur(20px)) or (backdrop-filter: blur(20px))) {
6534
- .ios-translucent-modals .ios .actions-grid .actions-group {
6535
- background-color: rgba(var(--f7-actions-bg-color-rgb), 0.8);
6536
- -webkit-backdrop-filter: saturate(180%) blur(20px);
6537
- backdrop-filter: saturate(180%) blur(20px);
6538
- }
6539
- }
6540
- .ios .actions-grid .actions-group:first-child {
6541
- border-radius: var(--f7-actions-border-radius) var(--f7-actions-border-radius) 0 0;
6542
- }
6543
- .ios .actions-grid .actions-group:last-child {
6544
- border-radius: 0 0 var(--f7-actions-border-radius) var(--f7-actions-border-radius);
6545
- }
6546
- .ios .actions-grid .actions-group:first-child:last-child {
6454
+ top: 0;
6547
6455
  border-radius: var(--f7-actions-border-radius);
6456
+ box-shadow: var(--f7-glass-shadow);
6457
+ -webkit-backdrop-filter: saturate(180%) blur(16px);
6458
+ backdrop-filter: saturate(180%) blur(16px);
6459
+ }
6460
+ .ios .actions-grid .actions-group {
6461
+ background: transparent;
6462
+ box-shadow: none;
6463
+ -webkit-backdrop-filter: none;
6464
+ backdrop-filter: none;
6548
6465
  }
6549
6466
  .ios .actions-grid .actions-button,
6550
6467
  .ios .actions-grid .actions-label {
6551
- border-radius: 0 !important;
6468
+ border-radius: var(--f7-actions-border-radius);
6552
6469
  }
6553
6470
  .ios .actions-button-media {
6554
6471
  margin-left: 16px;
@@ -6830,12 +6747,10 @@ html.with-modal-sheet-push-closing .framework7-root > .view.dark:after {
6830
6747
  --f7-toast-max-width: 568px;
6831
6748
  }
6832
6749
  .ios {
6833
- --f7-toast-text-color: #fff;
6834
- --f7-toast-bg-color: rgba(0, 0, 0, 0.75);
6835
- --f7-toast-bg-color-rgb: 0, 0, 0;
6750
+ --f7-toast-bg-color: var(--f7-glass-bg-color);
6836
6751
  --f7-toast-padding-horizontal: 16px;
6837
6752
  --f7-toast-padding-vertical: 12px;
6838
- --f7-toast-border-radius: 8px;
6753
+ --f7-toast-border-radius: 32px;
6839
6754
  --f7-toast-button-min-width: 64px;
6840
6755
  }
6841
6756
  .md {
@@ -6861,13 +6776,6 @@ html.with-modal-sheet-push-closing .framework7-root > .view.dark:after {
6861
6776
  background-color: var(--f7-toast-bg-color);
6862
6777
  opacity: 0;
6863
6778
  }
6864
- @supports ((-webkit-backdrop-filter: blur(20px)) or (backdrop-filter: blur(20px))) {
6865
- .ios-translucent-modals .toast {
6866
- background-color: rgba(var(--f7-toast-bg-color-rgb), 0.8);
6867
- -webkit-backdrop-filter: saturate(180%) blur(20px);
6868
- backdrop-filter: saturate(180%) blur(20px);
6869
- }
6870
- }
6871
6779
  .toast.modal-in {
6872
6780
  opacity: 1;
6873
6781
  }
@@ -6888,6 +6796,7 @@ html.with-modal-sheet-push-closing .framework7-root > .view.dark:after {
6888
6796
  min-width: var(--f7-toast-button-min-width);
6889
6797
  margin-top: -8px;
6890
6798
  margin-bottom: -8px;
6799
+ width: auto;
6891
6800
  }
6892
6801
  .toast.toast-with-icon .toast-content {
6893
6802
  display: block;
@@ -6910,6 +6819,9 @@ html.with-modal-sheet-push-closing .framework7-root > .view.dark:after {
6910
6819
  transition-duration: 300ms;
6911
6820
  width: 100%;
6912
6821
  left: 0;
6822
+ -webkit-backdrop-filter: saturate(180%) blur(16px);
6823
+ backdrop-filter: saturate(180%) blur(16px);
6824
+ box-shadow: var(--f7-glass-shadow);
6913
6825
  }
6914
6826
  .ios .toast.toast-top {
6915
6827
  top: 0;
@@ -7652,7 +7564,6 @@ body > .progressbar-infinite,
7652
7564
  :root {
7653
7565
  --f7-swipeout-delete-button-bg-color: #ff3b30;
7654
7566
  --f7-swipeout-button-text-color: #fff;
7655
- --f7-swipeout-button-padding-vertical: 0px;
7656
7567
  --f7-swipeout-button-bg-color: rgba(0, 0, 0, 0.22);
7657
7568
  }
7658
7569
  :root .dark,
@@ -7660,11 +7571,21 @@ body > .progressbar-infinite,
7660
7571
  --f7-swipeout-button-bg-color: rgba(255, 255, 255, 0.55);
7661
7572
  }
7662
7573
  .ios {
7663
- --f7-swipeout-button-padding-horizontal: 30px;
7574
+ --f7-swipeout-button-border-radius: 48px;
7575
+ --f7-swipeout-button-padding-vertical: 10px;
7576
+ --f7-swipeout-button-padding-horizontal: 16px;
7664
7577
  --f7-swipeout-button-font-size: inherit;
7665
7578
  --f7-swipeout-button-font-weight: inherit;
7579
+ --f7-swipeout-active-border-radius: 16px;
7580
+ --f7-swipeout-active-bg-color: #eee;
7581
+ }
7582
+ .ios .dark,
7583
+ .ios.dark {
7584
+ --f7-swipeout-active-bg-color: #2c2c2e;
7666
7585
  }
7667
7586
  .md {
7587
+ --f7-swipeout-button-border-radius: 0px;
7588
+ --f7-swipeout-button-padding-vertical: 0px;
7668
7589
  --f7-swipeout-button-padding-horizontal: 24px;
7669
7590
  --f7-swipeout-button-font-size: 14px;
7670
7591
  --f7-swipeout-button-font-weight: 500;
@@ -7684,11 +7605,22 @@ body > .progressbar-infinite,
7684
7605
  transform: translateX(-100%);
7685
7606
  }
7686
7607
  .swipeout-transitioning .swipeout-content,
7608
+ .swipeout-transitioning .swipeout-content .item-inner::after {
7609
+ transition-duration: 300ms;
7610
+ transition-property: transform, left, background-color, border-radius, opacity;
7611
+ }
7687
7612
  .swipeout-transitioning .swipeout-actions-right a,
7688
7613
  .swipeout-transitioning .swipeout-actions-left a,
7689
7614
  .swipeout-transitioning .swipeout-overswipe {
7690
7615
  transition-duration: 300ms;
7691
- transition-property: transform, left;
7616
+ transition-property: transform, left, width, margin-left, margin-right;
7617
+ }
7618
+ .swipeout-transitioning:not(.swipeout-opened) .swipeout-content {
7619
+ transition-delay: 0ms, 0ms, 300ms, 300ms, 0ms;
7620
+ }
7621
+ .list li:has( + li:is(.swipeout-opened, .swipeout-active)) .item-inner::after {
7622
+ opacity: 0;
7623
+ transition-duration: 300ms;
7692
7624
  }
7693
7625
  .swipeout-content {
7694
7626
  position: relative;
@@ -7696,7 +7628,6 @@ body > .progressbar-infinite,
7696
7628
  }
7697
7629
  .swipeout-overswipe {
7698
7630
  transition-duration: 200ms;
7699
- transition-property: left;
7700
7631
  }
7701
7632
  .swipeout-actions-left,
7702
7633
  .swipeout-actions-right {
@@ -7714,6 +7645,8 @@ body > .progressbar-infinite,
7714
7645
  .swipeout-actions-right > span,
7715
7646
  .swipeout-actions-left > div,
7716
7647
  .swipeout-actions-right > div {
7648
+ box-sizing: border-box;
7649
+ border-radius: var(--f7-swipeout-button-border-radius);
7717
7650
  color: var(--f7-swipeout-button-text-color);
7718
7651
  background: var(--f7-swipeout-button-bg-color);
7719
7652
  padding: var(--f7-swipeout-button-padding-vertical) var(--f7-swipeout-button-padding-horizontal);
@@ -7724,14 +7657,62 @@ body > .progressbar-infinite,
7724
7657
  font-size: var(--f7-swipeout-button-font-size);
7725
7658
  font-weight: var(--f7-swipeout-button-font-weight);
7726
7659
  }
7727
- .swipeout-actions-left > a:after,
7728
- .swipeout-actions-right > a:after,
7729
- .swipeout-actions-left > button:after,
7730
- .swipeout-actions-right > button:after,
7731
- .swipeout-actions-left > span:after,
7732
- .swipeout-actions-right > span:after,
7733
- .swipeout-actions-left > div:after,
7734
- .swipeout-actions-right > div:after {
7660
+ .swipeout-actions-left .swipeout-delete,
7661
+ .swipeout-actions-right .swipeout-delete {
7662
+ background: var(--f7-swipeout-delete-button-bg-color);
7663
+ }
7664
+ .swipeout-actions-left [class*='color-'],
7665
+ .swipeout-actions-right [class*='color-'] {
7666
+ --f7-swipeout-button-bg-color: var(--f7-theme-color);
7667
+ }
7668
+ .ios .swipeout-actions-right {
7669
+ right: 0%;
7670
+ }
7671
+ .ios .swipeout-actions-left {
7672
+ left: 0%;
7673
+ }
7674
+ .ios .swipeout-actions-left,
7675
+ .ios .swipeout-actions-right {
7676
+ padding: 0 10px;
7677
+ gap: 10px;
7678
+ align-items: center;
7679
+ }
7680
+ .ios .swipeout-actions-left > a,
7681
+ .ios .swipeout-actions-right > a,
7682
+ .ios .swipeout-actions-left > button,
7683
+ .ios .swipeout-actions-right > button,
7684
+ .ios .swipeout-actions-left > span,
7685
+ .ios .swipeout-actions-right > span,
7686
+ .ios .swipeout-actions-left > div,
7687
+ .ios .swipeout-actions-right > div {
7688
+ transform: scale(0);
7689
+ padding: var(--f7-swipeout-button-padding-vertical) var(--f7-swipeout-button-padding-horizontal);
7690
+ }
7691
+ .ios .swipeout-opened .swipeout-content,
7692
+ .ios .swipeout-active .swipeout-content {
7693
+ background-color: var(--f7-swipeout-active-bg-color);
7694
+ border-radius: var(--f7-swipeout-active-border-radius);
7695
+ }
7696
+ .ios .swipeout-opened .item-content,
7697
+ .ios .swipeout-active .item-content {
7698
+ border-radius: var(--f7-swipeout-active-border-radius);
7699
+ }
7700
+ .ios .swipeout-opened .swipeout-content .item-inner::after,
7701
+ .ios .swipeout-active .swipeout-content .item-inner::after {
7702
+ opacity: 0;
7703
+ }
7704
+ .ios .swipeout-overswipe {
7705
+ transition-duration: 200ms;
7706
+ transition-property: transform, left, width, margin-left, margin-right;
7707
+ }
7708
+ .md .swipeout-actions-left > a:after,
7709
+ .md .swipeout-actions-right > a:after,
7710
+ .md .swipeout-actions-left > button:after,
7711
+ .md .swipeout-actions-right > button:after,
7712
+ .md .swipeout-actions-left > span:after,
7713
+ .md .swipeout-actions-right > span:after,
7714
+ .md .swipeout-actions-left > div:after,
7715
+ .md .swipeout-actions-right > div:after {
7735
7716
  content: '';
7736
7717
  position: absolute;
7737
7718
  top: 0;
@@ -7742,45 +7723,40 @@ body > .progressbar-infinite,
7742
7723
  transform: translate3d(0, 0, 0);
7743
7724
  pointer-events: none;
7744
7725
  }
7745
- .swipeout-actions-left .swipeout-delete,
7746
- .swipeout-actions-right .swipeout-delete {
7747
- background: var(--f7-swipeout-delete-button-bg-color);
7748
- }
7749
- .swipeout-actions-right {
7726
+ .md .swipeout-actions-right {
7750
7727
  right: 0%;
7751
7728
  transform: translateX(calc(100% + 1px));
7752
7729
  }
7753
- .swipeout-actions-right > a:after,
7754
- .swipeout-actions-right > button:after,
7755
- .swipeout-actions-right > span:after,
7756
- .swipeout-actions-right > div:after {
7730
+ .md .swipeout-actions-right > a:after,
7731
+ .md .swipeout-actions-right > button:after,
7732
+ .md .swipeout-actions-right > span:after,
7733
+ .md .swipeout-actions-right > div:after {
7757
7734
  left: 100%;
7758
7735
  }
7759
- .swipeout-actions-right > a:last-child,
7760
- .swipeout-actions-right > button:last-child,
7761
- .swipeout-actions-right > span:last-child,
7762
- .swipeout-actions-right > div:last-child {
7736
+ .md .swipeout-actions-right > a:last-child,
7737
+ .md .swipeout-actions-right > button:last-child,
7738
+ .md .swipeout-actions-right > span:last-child,
7739
+ .md .swipeout-actions-right > div:last-child {
7763
7740
  padding-right: calc(var(--f7-swipeout-button-padding-horizontal) + var(--f7-safe-area-right));
7764
7741
  }
7765
- .swipeout-actions-left {
7742
+ .md .swipeout-actions-left {
7766
7743
  left: 0%;
7767
7744
  transform: translateX(calc(-100% - 1px));
7768
7745
  }
7769
- .swipeout-actions-left > a:after,
7770
- .swipeout-actions-left > button:after,
7771
- .swipeout-actions-left > span:after,
7772
- .swipeout-actions-left > div:after {
7746
+ .md .swipeout-actions-left > a:after,
7747
+ .md .swipeout-actions-left > button:after,
7748
+ .md .swipeout-actions-left > span:after,
7749
+ .md .swipeout-actions-left > div:after {
7773
7750
  right: 100%;
7774
7751
  }
7775
- .swipeout-actions-left > a:first-child,
7776
- .swipeout-actions-left > button:first-child,
7777
- .swipeout-actions-left > span:first-child,
7778
- .swipeout-actions-left > div:first-child {
7752
+ .md .swipeout-actions-left > a:first-child,
7753
+ .md .swipeout-actions-left > button:first-child,
7754
+ .md .swipeout-actions-left > span:first-child,
7755
+ .md .swipeout-actions-left > div:first-child {
7779
7756
  padding-left: calc(var(--f7-swipeout-button-padding-horizontal) + var(--f7-safe-area-left));
7780
7757
  }
7781
- .swipeout-actions-left [class*='color-'],
7782
- .swipeout-actions-right [class*='color-'] {
7783
- --f7-swipeout-button-bg-color: var(--f7-theme-color);
7758
+ .md .swipeout-overswipe {
7759
+ transition-property: left;
7784
7760
  }
7785
7761
  /* === Accordion === */
7786
7762
  :root {
@@ -9615,19 +9591,19 @@ html.with-modal-sheet-push-closing .framework7-root > .panel-in.panel-push.panel
9615
9591
  --f7-card-expandable-tablet-height: 670px;
9616
9592
  }
9617
9593
  .ios {
9618
- --f7-card-border-radius: 8px;
9594
+ --f7-card-border-radius: 24px;
9619
9595
  --f7-card-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
9620
9596
  --f7-card-header-font-size: 17px;
9621
9597
  --f7-card-header-padding-vertical: 10px;
9622
- --f7-card-header-min-height: 44px;
9598
+ --f7-card-header-min-height: 52px;
9623
9599
  --f7-card-footer-text-color: rgba(0, 0, 0, 0.45);
9624
9600
  --f7-card-footer-padding-vertical: 10px;
9625
- --f7-card-footer-min-height: 44px;
9601
+ --f7-card-footer-min-height: 52px;
9626
9602
  --f7-card-expandable-margin-horizontal: 20px;
9627
9603
  --f7-card-expandable-margin-vertical: 30px;
9628
9604
  --f7-card-expandable-box-shadow: 0px 20px 40px rgba(0, 0, 0, 0.3);
9629
- --f7-card-expandable-border-radius: 16px;
9630
- --f7-card-expandable-tablet-border-radius: 16px;
9605
+ --f7-card-expandable-border-radius: 24px;
9606
+ --f7-card-expandable-tablet-border-radius: 24px;
9631
9607
  --f7-card-expandable-header-font-size: 27px;
9632
9608
  --f7-card-expandable-header-font-weight: bold;
9633
9609
  --f7-card-text-color: inherit;
@@ -11270,8 +11246,8 @@ label.item-radio.disabled,
11270
11246
  }
11271
11247
  /* === Toggle === */
11272
11248
  .ios {
11273
- --f7-toggle-width: 52px;
11274
- --f7-toggle-height: 32px;
11249
+ --f7-toggle-width: 64px;
11250
+ --f7-toggle-height: 28px;
11275
11251
  /*
11276
11252
  --f7-toggle-active-bg-color: var(--f7-theme-color);
11277
11253
  */
@@ -11344,52 +11320,86 @@ label.item-radio.disabled,
11344
11320
  transition-duration: 300ms;
11345
11321
  }
11346
11322
  .ios .toggle {
11323
+ --f7-toggle-knob-tx: 0px;
11324
+ }
11325
+ .ios .toggle::before {
11326
+ content: '';
11327
+ border-radius: inherit;
11328
+ inset: 0;
11329
+ position: absolute;
11330
+ background: var(--f7-toggle-inactive-border-color);
11331
+ transition-duration: 300ms;
11332
+ z-index: 0;
11333
+ }
11334
+ .ios .toggle::after {
11335
+ content: '';
11336
+ position: absolute;
11337
+ left: 0;
11338
+ transform: translateX(calc(var(--f7-toggle-width) - var(--f7-toggle-height)));
11339
+ top: 0;
11340
+ width: var(--f7-toggle-height);
11341
+ height: var(--f7-toggle-height);
11342
+ border-radius: var(--f7-toggle-height);
11347
11343
  background: var(--f7-toggle-inactive-border-color);
11344
+ transition-duration: 300ms;
11345
+ z-index: 0;
11348
11346
  }
11349
- .ios .toggle input[type='checkbox']:checked + .toggle-icon {
11350
- background: var(--f7-toggle-active-color, var(--f7-theme-color));
11347
+ .ios .toggle:has(input[type='checkbox']:checked) {
11348
+ --f7-toggle-knob-tx: calc(var(--f7-toggle-width) - 38px - 4px);
11351
11349
  }
11352
- .ios .toggle input[type='checkbox']:checked + .toggle-icon:before {
11350
+ .ios .toggle:has(input[type='checkbox']:checked)::before {
11353
11351
  background: var(--f7-toggle-active-bg-color, var(--f7-theme-color));
11354
- transform: scale(0);
11355
11352
  }
11356
- .ios .toggle input[type='checkbox']:checked + .toggle-icon:after {
11357
- background: var(--f7-toggle-active-knob-bg-color);
11358
- transform: translateX(calc(var(--f7-toggle-width) - var(--f7-toggle-height)));
11353
+ .ios .toggle:has(input[type='checkbox']:checked)::after {
11354
+ background: var(--f7-toggle-active-bg-color, var(--f7-theme-color));
11355
+ transform: translateX(0);
11359
11356
  }
11360
11357
  .ios .toggle-icon {
11361
- background: var(--f7-toggle-border-color);
11362
- }
11363
- .ios .toggle-icon:before {
11364
- position: absolute;
11365
- left: 2px;
11366
- top: 2px;
11367
- width: calc(var(--f7-toggle-width) - 4px);
11368
- height: calc(var(--f7-toggle-height) - 4px);
11369
- border-radius: var(--f7-toggle-height);
11370
- box-sizing: border-box;
11371
- background: var(--f7-toggle-inactive-bg-color);
11372
- z-index: 1;
11373
- transition-duration: 300ms;
11374
- transform: scale(1);
11375
- }
11376
- .ios .toggle-icon:after {
11377
11358
  background: var(--f7-toggle-inactive-knob-bg-color);
11378
11359
  height: calc(var(--f7-toggle-height) - 4px);
11379
- width: calc(var(--f7-toggle-height) - 4px);
11360
+ width: 38px;
11380
11361
  top: 2px;
11381
11362
  left: 2px;
11382
11363
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
11383
11364
  border-radius: calc(var(--f7-toggle-height) - 4px);
11365
+ transition-duration: 300ms;
11366
+ transform: translateX(var(--f7-toggle-knob-tx)) scale(1);
11367
+ position: relative;
11368
+ z-index: 1;
11369
+ transform-origin: center;
11384
11370
  }
11385
- .ios .toggle-active-state input[type='checkbox']:not(:checked) + .toggle-icon:before {
11386
- transform: scale(0);
11371
+ .ios .toggle-icon::before {
11372
+ content: '';
11373
+ position: absolute;
11374
+ left: 50%;
11375
+ top: 50%;
11376
+ width: 1px;
11377
+ height: 1px;
11378
+ opacity: 0;
11379
+ transition-duration: 300ms;
11380
+ box-shadow: 0px 0px 40px 15px rgba(var(--f7-theme-color-rgb), 0.75);
11381
+ }
11382
+ .ios .toggle-icon::after {
11383
+ content: '';
11384
+ position: absolute;
11385
+ inset: 0;
11386
+ border-radius: inherit;
11387
+ box-shadow: var(--f7-glass-shadow-thumb);
11388
+ transition-duration: 300ms;
11389
+ opacity: 0;
11387
11390
  }
11388
- .ios .toggle-active-state input[type='checkbox'] + .toggle-icon:after {
11389
- width: calc(var(--f7-toggle-height) + 4px);
11391
+ .ios .toggle-active-state::before {
11392
+ transform: scale(0.75);
11390
11393
  }
11391
- .ios .toggle-active-state input[type='checkbox']:checked + .toggle-icon:after {
11392
- transform: translateX(calc(var(--f7-toggle-width) - var(--f7-toggle-height) - 8px));
11394
+ .ios .toggle-active-state .toggle-icon {
11395
+ background: transparent;
11396
+ transform: translateX(var(--f7-toggle-knob-tx)) scale(1.4);
11397
+ }
11398
+ .ios .toggle-active-state .toggle-icon::before {
11399
+ opacity: 1;
11400
+ }
11401
+ .ios .toggle-active-state .toggle-icon::after {
11402
+ opacity: 1;
11393
11403
  }
11394
11404
  .md .toggle input[type='checkbox']:checked + .toggle-icon {
11395
11405
  background: var(--f7-toggle-active-bg-color);
@@ -11428,17 +11438,13 @@ label.item-radio.disabled,
11428
11438
  --f7-range-scale-step-height: 5px;
11429
11439
  --f7-range-scale-substep-width: 1px;
11430
11440
  --f7-range-scale-substep-height: 4px;
11431
- --f7-range-bar-bg-color: rgba(0, 0, 0, 0.2);
11432
- }
11433
- :root .dark,
11434
- :root.dark {
11435
- --f7-range-bar-bg-color: rgba(255, 255, 255, 0.2);
11436
11441
  }
11437
11442
  .ios {
11438
11443
  --f7-range-size: 28px;
11439
- --f7-range-bar-size: 4px;
11440
- --f7-range-bar-border-radius: 2px;
11441
- --f7-range-knob-size: 28px;
11444
+ --f7-range-bar-size: 6px;
11445
+ --f7-range-bar-border-radius: 6px;
11446
+ --f7-range-knob-width: 38px;
11447
+ --f7-range-knob-height: 24px;
11442
11448
  --f7-range-knob-color: #fff;
11443
11449
  --f7-range-knob-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
11444
11450
  --f7-range-label-size: 24px;
@@ -11447,18 +11453,24 @@ label.item-radio.disabled,
11447
11453
  --f7-range-label-font-size: 12px;
11448
11454
  --f7-range-label-font-weight: 500;
11449
11455
  --f7-range-label-border-radius: 5px;
11450
- --f7-range-label-padding: 0px 2px;
11456
+ --f7-range-label-padding: 0px 4px;
11451
11457
  --f7-range-scale-text-color: #666;
11452
11458
  --f7-range-scale-step-width: 1px;
11453
11459
  --f7-range-scale-font-size: 12px;
11454
11460
  --f7-range-scale-font-weight: 400;
11455
11461
  --f7-range-scale-label-offset: 4px;
11462
+ --f7-range-bar-bg-color: rgba(0, 0, 0, 0.2);
11463
+ }
11464
+ .ios .dark,
11465
+ .ios.dark {
11466
+ --f7-range-bar-bg-color: rgba(255, 255, 255, 0.2);
11456
11467
  }
11457
11468
  .md {
11458
11469
  --f7-range-size: 20px;
11459
- --f7-range-bar-size: 2px;
11460
- --f7-range-bar-border-radius: 0px;
11461
- --f7-range-knob-size: 12px;
11470
+ --f7-range-bar-size: 16px;
11471
+ --f7-range-bar-border-radius: 16px;
11472
+ --f7-range-knob-width: 16px;
11473
+ --f7-range-knob-height: 44px;
11462
11474
  --f7-range-knob-box-shadow: none;
11463
11475
  --f7-range-label-size: 26px;
11464
11476
  --f7-range-label-font-weight: normal;
@@ -11473,6 +11485,7 @@ label.item-radio.disabled,
11473
11485
  .md,
11474
11486
  .md .dark,
11475
11487
  .md [class*='color-'] {
11488
+ --f7-range-bar-bg-color: var(--f7-md-secondary-container);
11476
11489
  --f7-range-knob-color: var(--f7-theme-color);
11477
11490
  --f7-range-label-text-color: var(--f7-md-on-primary);
11478
11491
  --f7-range-label-bg-color: var(--f7-theme-color);
@@ -11540,49 +11553,35 @@ label.item-radio.disabled,
11540
11553
  .range-knob-wrap {
11541
11554
  z-index: 20;
11542
11555
  position: absolute;
11543
- height: var(--f7-range-knob-size);
11544
- width: var(--f7-range-knob-size);
11556
+ height: var(--f7-range-knob-height);
11557
+ width: var(--f7-range-knob-width);
11545
11558
  }
11546
11559
  .range-slider-horizontal .range-knob-wrap {
11547
11560
  top: 50%;
11548
- margin-top: calc(-1 * var(--f7-range-knob-size) / 2);
11549
- margin-left: calc(-1 * var(--f7-range-knob-size) / 2);
11561
+ margin-top: calc(-1 * var(--f7-range-knob-height) / 2);
11562
+ margin-left: calc(-1 * var(--f7-range-knob-width) / 2);
11550
11563
  left: 0;
11551
11564
  }
11552
11565
  .range-slider-vertical .range-knob-wrap {
11553
11566
  left: 50%;
11554
- margin-left: calc(-1 * var(--f7-range-knob-size) / 2);
11567
+ height: var(--f7-range-knob-width);
11568
+ width: var(--f7-range-knob-height);
11569
+ margin-left: calc(-1 * var(--f7-range-knob-height) / 2);
11555
11570
  bottom: 0;
11556
- margin-bottom: calc(-1 * var(--f7-range-knob-size) / 2);
11571
+ margin-bottom: calc(-1 * var(--f7-range-knob-width) / 2);
11557
11572
  }
11558
11573
  .range-slider-vertical-reversed .range-knob-wrap {
11559
11574
  bottom: auto;
11560
11575
  top: 0;
11561
11576
  margin-bottom: 0;
11562
- margin-top: calc(-1 * var(--f7-range-knob-size) / 2);
11577
+ margin-top: calc(-1 * var(--f7-range-knob-width) / 2);
11563
11578
  }
11564
11579
  .range-knob {
11565
11580
  box-sizing: border-box;
11566
- border-radius: 50%;
11567
- position: absolute;
11568
- left: 0;
11569
- top: 0;
11570
- width: 100%;
11571
- height: 100%;
11572
11581
  z-index: 1;
11573
11582
  background: var(--f7-range-knob-color, var(--f7-range-knob-bg-color, var(--f7-theme-color)));
11574
11583
  box-shadow: var(--f7-range-knob-box-shadow);
11575
11584
  }
11576
- .range-knob:after {
11577
- content: '';
11578
- position: absolute;
11579
- left: 50%;
11580
- top: 50%;
11581
- width: 44px;
11582
- height: 44px;
11583
- margin-left: -22px;
11584
- margin-top: -22px;
11585
- }
11586
11585
  .range-knob-label {
11587
11586
  position: absolute;
11588
11587
  left: 50%;
@@ -11682,19 +11681,94 @@ label.item-radio.disabled,
11682
11681
  --f7-range-scale-step-width: var(--f7-range-scale-substep-width);
11683
11682
  --f7-range-scale-step-height: var(--f7-range-scale-substep-height);
11684
11683
  }
11684
+ .ios .range-bar-active {
11685
+ border-radius: inherit;
11686
+ }
11687
+ .ios .range-knob {
11688
+ border-radius: var(--f7-range-knob-height);
11689
+ transition-duration: 300ms;
11690
+ position: absolute;
11691
+ left: 0;
11692
+ top: 0;
11693
+ width: 100%;
11694
+ height: 100%;
11695
+ }
11696
+ .ios .range-knob:after {
11697
+ content: '';
11698
+ position: absolute;
11699
+ left: 50%;
11700
+ top: 50%;
11701
+ width: 44px;
11702
+ height: 44px;
11703
+ }
11704
+ .ios .range-knob::before,
11705
+ .ios .range-knob::after {
11706
+ content: '';
11707
+ position: absolute;
11708
+ }
11709
+ .ios .range-knob::before {
11710
+ width: 1px;
11711
+ height: 1px;
11712
+ opacity: 0;
11713
+ transition-duration: 300ms;
11714
+ box-shadow: 0px 0px 40px 15px rgba(var(--f7-theme-color-rgb), 0.75);
11715
+ left: 50%;
11716
+ top: 50%;
11717
+ margin-left: -0.5px;
11718
+ margin-top: -0.5px;
11719
+ }
11720
+ .ios .range-knob::after {
11721
+ inset: 0;
11722
+ border-radius: inherit;
11723
+ box-shadow: var(--f7-glass-shadow-thumb);
11724
+ transition-duration: 300ms;
11725
+ opacity: 0;
11726
+ width: 100%;
11727
+ height: 100%;
11728
+ margin: 0;
11729
+ }
11685
11730
  .ios .range-knob-label {
11686
11731
  margin-bottom: 6px;
11687
11732
  transform: translateX(-50%) translateY(100%) scale(0);
11733
+ z-index: 2;
11688
11734
  }
11689
11735
  .ios .range-knob-active-state .range-knob-label {
11690
11736
  transform: translateX(-50%) translateY(0%) scale(1);
11691
11737
  }
11738
+ .ios .range-knob-active-state .range-knob {
11739
+ background: transparent;
11740
+ transform: scale(1.4);
11741
+ }
11742
+ .ios .range-knob-active-state .range-knob::before {
11743
+ opacity: 1;
11744
+ }
11745
+ .ios .range-knob-active-state .range-knob::after {
11746
+ opacity: 1;
11747
+ }
11748
+ .md .range-knob-wrap {
11749
+ display: flex;
11750
+ align-items: center;
11751
+ justify-content: center;
11752
+ }
11692
11753
  .md .range-knob {
11693
11754
  transition-duration: 200ms;
11694
11755
  transition-property: transform, background-color;
11756
+ width: 4px;
11757
+ height: var(--f7-range-knob-height);
11758
+ display: flex;
11759
+ align-items: center;
11760
+ justify-content: center;
11761
+ border-radius: 4px;
11695
11762
  }
11696
11763
  .md .range-knob-active-state .range-knob {
11697
- transform: scale(1.5);
11764
+ transform: scaleX(0.5);
11765
+ }
11766
+ .md .range-slider-vertical .range-knob {
11767
+ width: var(--f7-range-knob-height);
11768
+ height: 4px;
11769
+ }
11770
+ .md .range-slider-vertical .range-knob-active-state .range-knob {
11771
+ transform: scaleY(0.5);
11698
11772
  }
11699
11773
  .md .range-slider-min:not(.range-slider-dual) .range-knob {
11700
11774
  background: #fff !important;
@@ -11721,8 +11795,48 @@ label.item-radio.disabled,
11721
11795
  .md .range-knob-active-state .range-knob-label {
11722
11796
  transform: translateY(0%) scale(1);
11723
11797
  }
11724
- .md .range-slider-label .range-knob-active-state .range-knob {
11725
- transform: scale(0);
11798
+ .md .range-bar-active,
11799
+ .md .range-bar-inactive {
11800
+ border-radius: 4px;
11801
+ }
11802
+ .md .range-slider::before,
11803
+ .md .range-slider::after {
11804
+ content: '';
11805
+ position: absolute;
11806
+ width: 4px;
11807
+ height: 4px;
11808
+ border-radius: 50%;
11809
+ background: var(--f7-range-knob-color);
11810
+ top: calc(50% - 2px);
11811
+ z-index: 1;
11812
+ pointer-events: none;
11813
+ transition-duration: 200ms;
11814
+ }
11815
+ .md .range-slider::before {
11816
+ left: calc(var(--f7-range-knob-width) / 2 - 2px);
11817
+ }
11818
+ .md .range-slider::after {
11819
+ right: calc(var(--f7-range-knob-width) / 2 - 2px);
11820
+ }
11821
+ .md .range-slider:not(.range-slider-dual)::before {
11822
+ content: none;
11823
+ display: none;
11824
+ }
11825
+ .md .range-slider:has(.range-knob-active-state)::before,
11826
+ .md .range-slider:has(.range-knob-active-state)::after {
11827
+ transform: scale(0.5);
11828
+ }
11829
+ .md .range-slider.range-slider-vertical::before,
11830
+ .md .range-slider.range-slider-vertical::after {
11831
+ top: auto;
11832
+ left: calc(50% - 2px);
11833
+ right: auto;
11834
+ }
11835
+ .md .range-slider.range-slider-vertical::before {
11836
+ bottom: calc(var(--f7-range-knob-width) / 2 - 2px);
11837
+ }
11838
+ .md .range-slider.range-slider-vertical::after {
11839
+ top: calc(var(--f7-range-knob-width) / 2 - 2px);
11726
11840
  }
11727
11841
  /* === Stepper === */
11728
11842
  :root {
@@ -17559,23 +17673,22 @@ button.swiper-pagination-bullet {
17559
17673
  }
17560
17674
  .ios {
17561
17675
  --f7-notification-margin: 8px;
17562
- --f7-notification-padding-horizontal: 10px;
17563
- --f7-notification-padding-vertical: 10px;
17564
- --f7-notification-border-radius: 12px;
17565
- --f7-notification-box-shadow: 0px 5px 25px -10px rgba(0, 0, 0, 0.7);
17566
- --f7-notification-icon-size: 20px;
17567
- --f7-notification-title-font-size: 13px;
17568
- --f7-notification-title-text-transform: uppercase;
17676
+ --f7-notification-padding-horizontal: 16px;
17677
+ --f7-notification-padding-vertical: 16px;
17678
+ --f7-notification-border-radius: 24px;
17679
+ --f7-notification-box-shadow: var(--f7-glass-shadow);
17680
+ --f7-notification-icon-size: 28px;
17681
+ --f7-notification-title-font-size: 14px;
17682
+ --f7-notification-title-text-transform: none;
17569
17683
  --f7-notification-title-line-height: 1.4;
17570
- --f7-notification-title-font-weight: 400;
17684
+ --f7-notification-title-font-weight: bold;
17571
17685
  --f7-notification-title-letter-spacing: 0.02em;
17572
- --f7-notification-title-right-font-size: 13px;
17573
- --f7-notification-subtitle-font-size: 15px;
17686
+ --f7-notification-title-right-font-size: 14px;
17687
+ --f7-notification-subtitle-font-size: 14px;
17574
17688
  --f7-notification-subtitle-font-weight: 600;
17575
- --f7-notification-text-font-size: 15px;
17576
- --f7-notification-text-line-height: 1.2;
17577
- --f7-notification-bg-color: rgba(250, 250, 250, 0.95);
17578
- --f7-notification-bg-color-rgb: 255, 255, 255;
17689
+ --f7-notification-text-font-size: 14px;
17690
+ --f7-notification-text-line-height: 1.4;
17691
+ --f7-notification-bg-color: var(--f7-glass-bg-color);
17579
17692
  --f7-notification-title-color: #000;
17580
17693
  --f7-notification-title-right-color: rgba(0, 0, 0, 0.45);
17581
17694
  --f7-notification-subtitle-color: #000;
@@ -17583,8 +17696,6 @@ button.swiper-pagination-bullet {
17583
17696
  }
17584
17697
  .ios .dark,
17585
17698
  .ios.dark {
17586
- --f7-notification-bg-color: rgba(30, 30, 30, 0.95);
17587
- --f7-notification-bg-color-rgb: 30, 30, 30;
17588
17699
  --f7-notification-title-color: #fff;
17589
17700
  --f7-notification-text-color: #fff;
17590
17701
  --f7-notification-subtitle-color: #fff;
@@ -17635,14 +17746,22 @@ button.swiper-pagination-bullet {
17635
17746
  box-shadow: var(--f7-notification-box-shadow);
17636
17747
  background: var(--f7-notification-bg-color);
17637
17748
  margin-top: var(--f7-safe-area-top);
17749
+ display: flex;
17750
+ gap: 16px;
17751
+ -webkit-backdrop-filter: saturate(180%) blur(16px);
17752
+ backdrop-filter: saturate(180%) blur(16px);
17638
17753
  }
17639
- @supports ((-webkit-backdrop-filter: blur(20px)) or (backdrop-filter: blur(20px))) {
17640
- .ios-translucent-modals .notification {
17641
- background-color: rgba(var(--f7-notification-bg-color-rgb), 0.8);
17642
- -webkit-backdrop-filter: saturate(180%) blur(20px);
17643
- backdrop-filter: saturate(180%) blur(20px);
17754
+ @media (min-width: 568px) {
17755
+ .notification {
17756
+ left: 50%;
17757
+ width: var(--f7-notification-max-width);
17758
+ margin-left: calc(-1 * var(--f7-notification-max-width) / 2);
17644
17759
  }
17645
17760
  }
17761
+ .notification-content {
17762
+ width: 100%;
17763
+ flex-shrink: 10;
17764
+ }
17646
17765
  .notification-title {
17647
17766
  color: var(--f7-notification-title-color, var(--f7-theme-color));
17648
17767
  font-size: var(--f7-notification-title-font-size);
@@ -17672,6 +17791,7 @@ button.swiper-pagination-bullet {
17672
17791
  .notification-icon {
17673
17792
  font-size: 0;
17674
17793
  line-height: var(--f7-notification-icon-size);
17794
+ flex-shrink: 0;
17675
17795
  }
17676
17796
  .notification-icon i,
17677
17797
  .notification-icon {
@@ -17720,6 +17840,7 @@ button.swiper-pagination-bullet {
17720
17840
  .ios .notification {
17721
17841
  transition-duration: 450ms;
17722
17842
  transform: translate3d(0%, -200%, 0);
17843
+ align-items: center;
17723
17844
  }
17724
17845
  .ios .notification.modal-in {
17725
17846
  transform: translate3d(0%, 0%, 0);
@@ -17728,18 +17849,11 @@ button.swiper-pagination-bullet {
17728
17849
  .ios .notification.modal-out {
17729
17850
  transform: translate3d(0%, -200%, 0);
17730
17851
  }
17731
- .ios .notification-icon {
17732
- margin-right: 8px;
17733
- }
17734
- .ios .notification-header + .notification-content {
17735
- margin-top: 10px;
17736
- }
17737
17852
  .ios .notification-title-right-text {
17738
- margin-right: 6px;
17739
17853
  margin-left: auto;
17740
17854
  }
17741
17855
  .ios .notification-title-right-text + .notification-close-button {
17742
- margin-left: 10px;
17856
+ margin-left: 12px;
17743
17857
  }
17744
17858
  .ios .notification-close-button {
17745
17859
  font-size: 14px;
@@ -17783,22 +17897,7 @@ button.swiper-pagination-bullet {
17783
17897
  transition-timing-function: ease-in;
17784
17898
  transform: translate3d(0, -150%, 0);
17785
17899
  }
17786
- .md .notification-with-icon .notification-icon {
17787
- position: absolute;
17788
- left: var(--f7-notification-padding-horizontal);
17789
- top: var(--f7-notification-padding-vertical);
17790
- }
17791
- .md .notification-with-icon .notification-content,
17792
- .md .notification-with-icon .notification-header {
17793
- margin-left: calc(var(--f7-notification-icon-size) + 16px);
17794
- }
17795
- .md .notification-icon {
17796
- margin-right: 8px;
17797
- }
17798
- .md .notification-subtitle + .notification-text {
17799
- margin-top: 4px;
17800
- }
17801
- .md .notification-header + .notification-content {
17900
+ .md .notification-header + :is(.notification-subtitle, .notification-text) {
17802
17901
  margin-top: 8px;
17803
17902
  }
17804
17903
  .md .notification-title-right-text {