@ptcwebops/ptcw-design 5.7.9 → 5.8.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.
Files changed (60) hide show
  1. package/dist/cjs/blog-detail-content_21.cjs.entry.js +4 -4
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/ptc-accordion-item.cjs.entry.js +2 -2
  4. package/dist/cjs/ptc-card_2.cjs.entry.js +1 -1
  5. package/dist/cjs/ptc-dynamic-card.cjs.entry.js +61 -18
  6. package/dist/cjs/ptc-filter-tag_2.cjs.entry.js +1 -1
  7. package/dist/cjs/ptc-form-checkbox_2.cjs.entry.js +185 -76
  8. package/dist/cjs/ptc-multi-select_2.cjs.entry.js +1 -1
  9. package/dist/cjs/ptc-pricing-tabs.cjs.entry.js +1 -1
  10. package/dist/cjs/ptcw-design.cjs.js +1 -1
  11. package/dist/cjs/sequential-bundle-example.cjs.entry.js +5 -5
  12. package/dist/collection/components/icon-asset/icon-asset.css +2 -2
  13. package/dist/collection/components/organism-bundles/blog-detail-content/blog-detail-content.css +1 -1
  14. package/dist/collection/components/organism-bundles/blog-detail-layout/blog-detail-layout.css +1 -1
  15. package/dist/collection/components/organism-bundles/sequential-bundle-example/sequential-bundle-example.js +5 -5
  16. package/dist/collection/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.css +5 -0
  17. package/dist/collection/components/ptc-accordion/ptc-accordion-item/ptc-accordion-item.js +1 -1
  18. package/dist/collection/components/ptc-card/ptc-card.css +1 -1
  19. package/dist/collection/components/ptc-dynamic-card/ptc-dynamic-card.css +7 -22
  20. package/dist/collection/components/ptc-dynamic-card/ptc-dynamic-card.js +115 -20
  21. package/dist/collection/components/ptc-form-checkbox/ptc-form-checkbox.css +7 -7
  22. package/dist/collection/components/ptc-jumbotron/ptc-jumbotron.css +2 -2
  23. package/dist/collection/components/ptc-multi-select/ptc-multi-select.css +199 -6
  24. package/dist/collection/components/ptc-pagenation/ptc-pagenation.css +1 -1
  25. package/dist/collection/components/ptc-pricing-tabs/ptc-pricing-tabs.css +2 -2
  26. package/dist/collection/components/ptc-textfield/ptc-textfield.css +51 -34
  27. package/dist/custom-elements/index.js +262 -110
  28. package/dist/esm/blog-detail-content_21.entry.js +4 -4
  29. package/dist/esm/loader.js +1 -1
  30. package/dist/esm/ptc-accordion-item.entry.js +2 -2
  31. package/dist/esm/ptc-card_2.entry.js +1 -1
  32. package/dist/esm/ptc-dynamic-card.entry.js +62 -19
  33. package/dist/esm/ptc-filter-tag_2.entry.js +1 -1
  34. package/dist/esm/ptc-form-checkbox_2.entry.js +185 -76
  35. package/dist/esm/ptc-multi-select_2.entry.js +1 -1
  36. package/dist/esm/ptc-pricing-tabs.entry.js +1 -1
  37. package/dist/esm/ptcw-design.js +1 -1
  38. package/dist/esm/sequential-bundle-example.entry.js +5 -5
  39. package/dist/ptcw-design/{p-20c01caa.entry.js → p-00980d4d.entry.js} +1 -1
  40. package/dist/ptcw-design/p-14122d3f.entry.js +68 -0
  41. package/dist/ptcw-design/p-3dae22b8.entry.js +1 -0
  42. package/dist/ptcw-design/p-3e5f19f9.entry.js +1 -0
  43. package/dist/ptcw-design/p-4ea7b5a5.entry.js +1 -0
  44. package/dist/ptcw-design/p-85cc23f7.entry.js +1 -0
  45. package/dist/ptcw-design/p-9a9d5b49.entry.js +1 -0
  46. package/dist/ptcw-design/p-e09163f2.entry.js +1 -0
  47. package/dist/ptcw-design/{p-657ecf13.entry.js → p-fc51fc29.entry.js} +1 -1
  48. package/dist/ptcw-design/ptcw-design.css +1 -1
  49. package/dist/ptcw-design/ptcw-design.esm.js +1 -1
  50. package/dist/types/components/ptc-dynamic-card/ptc-dynamic-card.d.ts +30 -3
  51. package/dist/types/components.d.ts +13 -1
  52. package/package.json +1 -1
  53. package/readme.md +1 -1
  54. package/dist/ptcw-design/p-1ed632b2.entry.js +0 -1
  55. package/dist/ptcw-design/p-40e095bf.entry.js +0 -68
  56. package/dist/ptcw-design/p-5f78517a.entry.js +0 -1
  57. package/dist/ptcw-design/p-ae0543c8.entry.js +0 -1
  58. package/dist/ptcw-design/p-b1c5404b.entry.js +0 -1
  59. package/dist/ptcw-design/p-ba3c0348.entry.js +0 -1
  60. package/dist/ptcw-design/p-d563af49.entry.js +0 -1
@@ -2,48 +2,92 @@ import { Host, h, getAssetPath } from '@stencil/core';
2
2
  //import navDotSlick from '../../media/svg-imgs/nav-active-dotslick.svg';
3
3
  export class PtcDynamicCard {
4
4
  constructor() {
5
+ /**
6
+ * Open the card
7
+ */
8
+ this.openCard = () => {
9
+ if (!this.isExpanded) {
10
+ this.isExpanded = true;
11
+ this.cardOpened.emit(this.trackerId);
12
+ }
13
+ // If already expanded, do nothing to ensure at least one card remains open
14
+ };
15
+ /**
16
+ * Handle keyboard interactions
17
+ */
18
+ this.handleKeyDown = (event) => {
19
+ switch (event.key) {
20
+ case 'Enter':
21
+ //event.preventDefault();
22
+ this.openCard();
23
+ break;
24
+ default:
25
+ break;
26
+ }
27
+ };
5
28
  this.dotSvg = getAssetPath('./media/nav-active-dotslick.svg');
6
29
  this.cardType = 'sequential';
7
30
  this.cardTitle = 'Card Title Goes Here';
8
31
  this.cardImgSrc = undefined;
9
32
  this.cardImgAlt = undefined;
10
33
  this.cardScreen = 'desktop';
11
- this.isExpanded = undefined;
34
+ this.isExpanded = false;
12
35
  this.overlayExists = true;
13
36
  this.styles = undefined;
14
37
  this.trackerId = undefined;
15
38
  }
16
- // handleClick() {
17
- // this.isExpanded = !this.isExpanded;
18
- // }
39
+ componentDidLoad() {
40
+ // Handle mouse enter and leave for overlay
41
+ this.el.addEventListener('mouseenter', () => (this.overlayExists = false));
42
+ this.el.addEventListener('mouseleave', () => (this.overlayExists = true));
43
+ }
44
+ /**
45
+ * Listen for 'cardOpened' events on the document to close other cards
46
+ */
47
+ handleCardOpened(event) {
48
+ const openedTrackerId = event.detail;
49
+ if (openedTrackerId !== this.trackerId && this.isExpanded) {
50
+ this.isExpanded = false;
51
+ }
52
+ }
53
+ /**
54
+ * Focus the card-wrapper element
55
+ */
56
+ async focusCardWrapper() {
57
+ const cardWrapper = this.el.querySelector('.card-wrapper');
58
+ if (cardWrapper) {
59
+ cardWrapper.focus();
60
+ }
61
+ }
62
+ /**
63
+ * Get CSS class map
64
+ */
65
+ getCssClassMap() {
66
+ return {
67
+ [this.cardType]: true,
68
+ };
69
+ }
70
+ /**
71
+ * Get desktop card based on expansion state
72
+ */
19
73
  getDesktopCard() {
20
74
  if (this.cardScreen === 'desktop' && this.isExpanded) {
21
75
  return [
22
- h("div", { class: "card card-dt-open mf-listen", id: this.trackerId, tabindex: "0", role: "button", "aria-expanded": this.isExpanded }, h("ptc-card-content", { "card-type": "card-dynamic" }, h("div", { class: "card-title" }, h("h3", null, this.cardTitle)), h("div", { class: "card-content" }, h("slot", null))), h("ptc-picture", { alt: this.cardImgAlt, src: this.cardImgSrc, "is-full-width": "true", "is-full-height": "true", "image-alignment": "center" })),
76
+ h("div", { class: "card card-dt-open mf-listen", id: this.trackerId }, h("ptc-card-content", { "card-type": "card-dynamic" }, h("div", { class: "card-title" }, h("h3", null, this.cardTitle)), h("div", { class: "card-content" }, h("slot", null))), h("ptc-picture", { alt: this.cardImgAlt, src: this.cardImgSrc, "is-full-width": "true", "is-full-height": "true", "image-alignment": "center" })),
23
77
  ];
24
78
  }
25
79
  else if (this.cardScreen === 'desktop' && !this.isExpanded) {
26
80
  return [
27
- h("div", { class: "card card-dt-closed mf-listen", id: this.trackerId, role: "button", tabindex: "0", "aria-expanded": this.isExpanded }, h("ptc-picture", { alt: this.cardImgAlt, src: this.cardImgSrc, "image-position": "relative", "is-full-width": true, height: "424" }, this.overlayExists ? h("ptc-overlay", { "filter-color": "solid-black-1" }) : h("ptc-overlay", { "filter-color": "solid-black-2" })), h("div", { class: "closed-content", "card-type": "card-dynamic" }, h("div", { class: "card-title" }, h("h2", null, this.cardTitle)))),
81
+ h("div", { class: "card card-dt-closed mf-listen", id: this.trackerId }, h("ptc-picture", { alt: this.cardImgAlt, src: this.cardImgSrc, "image-position": "relative", "is-full-width": true, height: "424" }, this.overlayExists ? (h("ptc-overlay", { "filter-color": "solid-black-1" })) : (h("ptc-overlay", { "filter-color": "solid-black-2" }))), h("div", { class: "closed-content", "card-type": "card-dynamic" }, h("div", { class: "card-title" }, h("h2", null, this.cardTitle)))),
28
82
  ];
29
83
  }
30
84
  else {
31
85
  return null;
32
86
  }
33
87
  }
34
- componentDidLoad() {
35
- // this.handleResize();
36
- this.el.addEventListener('mouseenter', () => (this.overlayExists = false));
37
- this.el.addEventListener('mouseleave', () => (this.overlayExists = true));
38
- }
39
88
  render() {
40
89
  const classMap = this.getCssClassMap();
41
- return (h(Host, { class: classMap }, this.styles && h("style", null, this.styles), h("div", { class: "card-wrapper" }, this.cardScreen == 'mobile' ? (h("div", { class: "card card-mobile mf-listen", id: this.trackerId, role: "button", "aria-expanded": this.isExpanded }, h("ptc-picture", { height: '287', "is-full-width": true, alt: this.cardImgAlt, src: this.cardImgSrc }), h("ptc-card-content", { "card-type": "card-dynamic", styles: ":host(.card-dynamic){height: auto;}" }, h("div", { class: "card-title" }, h("h3", null, this.cardTitle)), h("div", { class: "card-content" }, h("slot", null))))) : (this.getDesktopCard())), this.cardScreen === 'desktop' && (h("div", { hidden: true }, h("svg", null, h("use", { href: `${this.dotSvg}` }))))));
42
- }
43
- getCssClassMap() {
44
- return {
45
- [this.cardType]: true,
46
- };
90
+ return (h(Host, { class: classMap }, this.styles && h("style", null, this.styles), h("div", { class: "card-wrapper", role: "button", tabindex: "0", "aria-expanded": this.isExpanded, onClick: this.openCard, onKeyDown: this.handleKeyDown }, this.cardScreen === 'mobile' ? (h("div", { class: "card card-mobile mf-listen", id: this.trackerId }, h("ptc-picture", { height: "287", "is-full-width": true, alt: this.cardImgAlt, src: this.cardImgSrc }), h("ptc-card-content", { "card-type": "card-dynamic", styles: ":host(.card-dynamic){height: auto;}" }, h("div", { class: "card-title" }, h("h3", null, this.cardTitle)), h("div", { class: "card-content" }, h("slot", null))))) : (this.getDesktopCard())), this.cardScreen === 'desktop' && (h("div", { hidden: true }, h("svg", null, h("use", { href: `${this.dotSvg}` }))))));
47
91
  }
48
92
  static get is() { return "ptc-dynamic-card"; }
49
93
  static get encapsulation() { return "shadow"; }
@@ -150,20 +194,21 @@ export class PtcDynamicCard {
150
194
  },
151
195
  "isExpanded": {
152
196
  "type": "boolean",
153
- "mutable": false,
197
+ "mutable": true,
154
198
  "complexType": {
155
199
  "original": "boolean",
156
200
  "resolved": "boolean",
157
201
  "references": {}
158
202
  },
159
203
  "required": false,
160
- "optional": true,
204
+ "optional": false,
161
205
  "docs": {
162
206
  "tags": [],
163
207
  "text": "is card expanded?"
164
208
  },
165
209
  "attribute": "is-expanded",
166
- "reflect": false
210
+ "reflect": false,
211
+ "defaultValue": "false"
167
212
  },
168
213
  "styles": {
169
214
  "type": "string",
@@ -206,5 +251,55 @@ export class PtcDynamicCard {
206
251
  "overlayExists": {}
207
252
  };
208
253
  }
254
+ static get events() {
255
+ return [{
256
+ "method": "cardOpened",
257
+ "name": "cardOpened",
258
+ "bubbles": true,
259
+ "cancelable": true,
260
+ "composed": true,
261
+ "docs": {
262
+ "tags": [],
263
+ "text": "Event emitted when this card is opened"
264
+ },
265
+ "complexType": {
266
+ "original": "string",
267
+ "resolved": "string",
268
+ "references": {}
269
+ }
270
+ }];
271
+ }
272
+ static get methods() {
273
+ return {
274
+ "focusCardWrapper": {
275
+ "complexType": {
276
+ "signature": "() => Promise<void>",
277
+ "parameters": [],
278
+ "references": {
279
+ "Promise": {
280
+ "location": "global"
281
+ },
282
+ "HTMLElement": {
283
+ "location": "global"
284
+ }
285
+ },
286
+ "return": "Promise<void>"
287
+ },
288
+ "docs": {
289
+ "text": "Focus the card-wrapper element",
290
+ "tags": []
291
+ }
292
+ }
293
+ };
294
+ }
209
295
  static get elementRef() { return "el"; }
296
+ static get listeners() {
297
+ return [{
298
+ "name": "cardOpened",
299
+ "method": "handleCardOpened",
300
+ "target": "document",
301
+ "capture": false,
302
+ "passive": false
303
+ }];
304
+ }
210
305
  }
@@ -1133,29 +1133,29 @@ ptc-link, ptc-square-card,
1133
1133
 
1134
1134
  .mdc-checkbox {
1135
1135
  transform: translateX(-8px);
1136
- padding: calc((34px - 18px) / 2);
1136
+ padding: 8px;
1137
1137
  /* @alternate */
1138
1138
  padding: calc((var(--mdc-checkbox-ripple-size, 34px) - 18px) / 2);
1139
- margin: calc((34px - 34px) / 2);
1139
+ margin: 0px;
1140
1140
  /* @alternate */
1141
1141
  margin: calc((var(--mdc-checkbox-touch-target-size, 34px) - 34px) / 2);
1142
1142
  }
1143
1143
  .mdc-checkbox .mdc-checkbox__background {
1144
- top: calc((34px - 18px) / 2);
1144
+ top: 8px;
1145
1145
  /* @alternate */
1146
1146
  top: calc((var(--mdc-checkbox-ripple-size, 34px) - 18px) / 2);
1147
- left: calc((34px - 18px) / 2);
1147
+ left: 8px;
1148
1148
  /* @alternate */
1149
1149
  left: calc((var(--mdc-checkbox-ripple-size, 34px) - 18px) / 2);
1150
1150
  }
1151
1151
  .mdc-checkbox .mdc-checkbox__native-control {
1152
- top: calc((34px - 34px) / 2);
1152
+ top: 0px;
1153
1153
  /* @alternate */
1154
1154
  top: calc((34px - var(--mdc-checkbox-touch-target-size, 34px)) / 2);
1155
- right: calc((34px - 34px) / 2);
1155
+ right: 0px;
1156
1156
  /* @alternate */
1157
1157
  right: calc((34px - var(--mdc-checkbox-touch-target-size, 34px)) / 2);
1158
- left: calc((34px - 34px) / 2);
1158
+ left: 0px;
1159
1159
  /* @alternate */
1160
1160
  left: calc((34px - var(--mdc-checkbox-touch-target-size, 34px)) / 2);
1161
1161
  width: 34px;
@@ -1101,7 +1101,7 @@ ptc-link, ptc-square-card,
1101
1101
  }
1102
1102
  @media only screen and (min-width: 992px) {
1103
1103
  .u-3-col-grid .u-3-col {
1104
- width: calc(33.333333333333% - 10.66666666px);
1104
+ width: calc(33.3333333333% - 10.66666666px);
1105
1105
  }
1106
1106
  }
1107
1107
  .u-3-col-grid.u-col-space-lg {
@@ -1118,7 +1118,7 @@ ptc-link, ptc-square-card,
1118
1118
  }
1119
1119
  @media only screen and (min-width: 992px) {
1120
1120
  .u-3-col-grid.u-col-space-lg .u-3-col {
1121
- width: calc(33.333333333333% - 21.3333333px);
1121
+ width: calc(33.3333333333% - 21.3333333px);
1122
1122
  }
1123
1123
  }
1124
1124
 
@@ -54,7 +54,116 @@ ptc-link, ptc-square-card,
54
54
  }
55
55
  }
56
56
 
57
- .dropdown li {
57
+ .ptc-multi-select {
58
+ position: relative;
59
+ display: block;
60
+ margin-bottom: var(--ptc-element-spacing-04);
61
+ }
62
+ .ptc-multi-select.invalid::before {
63
+ content: "";
64
+ position: absolute;
65
+ width: calc(100% + 16px);
66
+ height: calc(100% + 8px);
67
+ background: #FEF3F3;
68
+ display: flex;
69
+ flex-direction: column;
70
+ justify-content: center;
71
+ z-index: 0;
72
+ left: 50%;
73
+ top: 50%;
74
+ transform: translate(-50%, -50%);
75
+ }
76
+ .ptc-multi-select.invalid .mdc-select-helper-text--validation-msg {
77
+ z-index: 2;
78
+ opacity: 1;
79
+ position: relative;
80
+ color: #AF3231;
81
+ font-family: var(--ptc-font-latin);
82
+ font-size: var(--ptc-font-size-xx-small);
83
+ font-style: normal;
84
+ font-weight: var(--ptc-font-weight-semibold);
85
+ line-height: var(--ptc-line-height-densest);
86
+ opacity: 1;
87
+ height: auto;
88
+ margin-left: 8px;
89
+ margin-top: var(--ptc-element-spacing-02);
90
+ }
91
+ .ptc-multi-select.invalid .mdc-select-helper-text--validation-msg svg {
92
+ transform: translate(-8px, 3px);
93
+ }
94
+ .ptc-multi-select .multi-select-label {
95
+ display: block;
96
+ font-size: var(--ptc-font-size-xx-small);
97
+ font-weight: var(--ptc-font-weight-semibold);
98
+ line-height: normal;
99
+ margin-bottom: var(--ptc-element-spacing-01);
100
+ z-index: 1;
101
+ position: relative;
102
+ color: #40434A;
103
+ }
104
+ .ptc-multi-select .selected-items {
105
+ cursor: pointer;
106
+ background-color: #fff;
107
+ border: 1px solid rgba(0, 0, 0, 0.38);
108
+ padding: 8px;
109
+ border-radius: 0px;
110
+ position: relative;
111
+ user-select: none;
112
+ color: var(--color-gray-12);
113
+ font-family: var(--ptc-font-latin);
114
+ font-size: var(--ptc-font-size-xx-small);
115
+ font-weight: var(--ptc-font-weight-regular);
116
+ max-width: 100%;
117
+ max-height: 34px;
118
+ overflow: hidden;
119
+ line-height: 24px;
120
+ display: flex;
121
+ align-items: center;
122
+ }
123
+ .ptc-multi-select .selected-items:focus-visible {
124
+ outline: 2px solid #007bff;
125
+ }
126
+ .ptc-multi-select .selected-items .input-text {
127
+ width: calc(100% - 18px);
128
+ display: -webkit-box;
129
+ -webkit-line-clamp: 1;
130
+ line-clamp: 1;
131
+ -webkit-box-orient: vertical;
132
+ text-overflow: ellipsis;
133
+ }
134
+ .ptc-multi-select .multi-select-icon {
135
+ fill: rgba(0, 0, 0, 0.54);
136
+ position: absolute;
137
+ right: var(--ptc-element-spacing-02);
138
+ width: 18px;
139
+ height: 18px;
140
+ margin: 0 auto;
141
+ }
142
+ .ptc-multi-select .multi-select-icon .multi-arrow-svg {
143
+ transform: translate(-50%, 25%);
144
+ position: relative;
145
+ left: 50%;
146
+ bottom: 25%;
147
+ }
148
+ .ptc-multi-select .dropdown {
149
+ display: none;
150
+ list-style: none;
151
+ padding: 0;
152
+ margin: 0;
153
+ border: 1px solid #ccc;
154
+ max-height: 350px;
155
+ overflow-y: auto;
156
+ position: absolute;
157
+ width: 100%;
158
+ background-color: #fff;
159
+ z-index: 1000;
160
+ /* Custom square for the checkbox */
161
+ /* When checkbox is checked, change background color */
162
+ }
163
+ .ptc-multi-select .dropdown.show {
164
+ display: block;
165
+ }
166
+ .ptc-multi-select .dropdown li {
58
167
  display: flex;
59
168
  align-items: center;
60
169
  padding: 5px 8px;
@@ -63,16 +172,16 @@ ptc-link, ptc-square-card,
63
172
  position: relative;
64
173
  /* Focused item styles */
65
174
  }
66
- .dropdown li:hover, .dropdown li:focus-within {
175
+ .ptc-multi-select .dropdown li:hover, .ptc-multi-select .dropdown li:focus-within {
67
176
  background-color: var(--color-gray-02);
68
177
  }
69
- .dropdown li.selected {
178
+ .ptc-multi-select .dropdown li.selected {
70
179
  background-color: var(--color-gray-02);
71
180
  }
72
- .dropdown li.selected:hover {
181
+ .ptc-multi-select .dropdown li.selected:hover {
73
182
  background-color: var(--color-gray-04);
74
183
  }
75
- .dropdown li label {
184
+ .ptc-multi-select .dropdown li label {
76
185
  display: -webkit-box;
77
186
  font-family: var(--ptc-font-latin);
78
187
  font-size: var(--ptc-font-size-xx-small);
@@ -87,7 +196,91 @@ ptc-link, ptc-square-card,
87
196
  text-overflow: ellipsis;
88
197
  line-height: 24px;
89
198
  }
90
- .dropdown li:focus-within {
199
+ .ptc-multi-select .dropdown li:focus-within {
91
200
  background-color: var(--color-gray-02);
92
201
  outline: none;
202
+ }
203
+ .ptc-multi-select .dropdown li:last-child {
204
+ border-bottom: none;
205
+ }
206
+ .ptc-multi-select .dropdown input[type=checkbox] {
207
+ position: absolute;
208
+ opacity: 0;
209
+ cursor: pointer;
210
+ }
211
+ .ptc-multi-select .dropdown input[type=checkbox]:checked {
212
+ background-color: var(--color-green-07);
213
+ }
214
+ .ptc-multi-select .dropdown label::before {
215
+ content: "";
216
+ position: absolute;
217
+ left: 0;
218
+ top: 5px;
219
+ width: 14px;
220
+ height: 14px;
221
+ background-color: #fff;
222
+ border: 1px solid #ccc;
223
+ box-sizing: border-box;
224
+ }
225
+ .ptc-multi-select .dropdown input[type=checkbox]:checked + label::before {
226
+ background-color: var(--color-green-07);
227
+ border-color: var(--color-green-07);
228
+ }
229
+ .ptc-multi-select .dropdown input[type=checkbox]:checked + label::after {
230
+ content: url("data:image/svg+xml,%3Csvg width='8' height='8' viewBox='0 0 8 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.15341 1.14134C7.0572 1.04719 6.94024 1 6.80262 1C6.66499 1 6.54771 1.04719 6.45158 1.14134L3.06571 4.45979L1.5485 2.96965C1.45197 2.8755 1.33501 2.82831 1.19738 2.82831C1.05976 2.82831 0.942797 2.8755 0.846348 2.96965L0.144437 3.65645C0.0482247 3.75091 0 3.86528 0 4.00004C0 4.13472 0.0482247 4.2494 0.144437 4.34355L2.01277 6.17186L2.71492 6.85866C2.81113 6.95312 2.92809 7 3.06571 7C3.20334 7 3.3203 6.95312 3.41675 6.85866L4.11866 6.17186L7.85556 2.51525C7.95177 2.42086 8 2.30641 8 2.17173C8 2.03705 7.95177 1.9226 7.85556 1.82814L7.15341 1.14134Z' fill='white'/%3E%3C/svg%3E");
231
+ position: absolute;
232
+ left: 3px;
233
+ top: 0px;
234
+ color: white;
235
+ width: 8px;
236
+ height: 24px;
237
+ }
238
+ .ptc-multi-select button.ddl-click-text {
239
+ all: unset;
240
+ cursor: pointer;
241
+ color: var(--color-gray-7);
242
+ text-decoration: underline;
243
+ font-size: var(--ptc-font-size-xx-small);
244
+ font-weight: var(--ptc-font-weight-semibold);
245
+ }
246
+ .ptc-multi-select .tooltip {
247
+ position: absolute;
248
+ transform: translate(0, -12px);
249
+ z-index: 1001;
250
+ padding: 8px;
251
+ color: var(--color-white);
252
+ font-size: var(--ptc-font-size-xxx-small);
253
+ font-weight: var(--ptc-font-weight-semibold);
254
+ background: var(--color-gray-09);
255
+ box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3);
256
+ border: none;
257
+ border-radius: 2px;
258
+ width: auto;
259
+ height: fit-content;
260
+ text-align: left;
261
+ text-shadow: none;
262
+ white-space: normal;
263
+ }
264
+ .ptc-multi-select .tooltip::after {
265
+ position: absolute;
266
+ content: "";
267
+ bottom: 0px;
268
+ border: 8px solid transparent;
269
+ border-top: 8px solid var(--color-gray-09);
270
+ left: 50%;
271
+ transform: translate(-50%, 100%);
272
+ }
273
+ @media only screen and (min-width: 992px) {
274
+ .ptc-multi-select .tooltip {
275
+ width: 273px;
276
+ transform: translate(-100%, 80%);
277
+ }
278
+ .ptc-multi-select .tooltip::after {
279
+ right: 8px;
280
+ left: auto;
281
+ transform: translateY(100%);
282
+ }
283
+ }
284
+ .ptc-multi-select .tooltip span {
285
+ word-break: initial;
93
286
  }
@@ -128,7 +128,7 @@ ptc-link, ptc-square-card,
128
128
  width: 1.125rem;
129
129
  height: 1.125rem;
130
130
  border: 1px solid var(--color-gray-10);
131
- border-radius: calc(var(--ptc-border-radius-standard)/2);
131
+ border-radius: calc(var(--ptc-border-radius-standard) / 2);
132
132
  transition: background-color var(--ptc-ease-out) var(--ptc-transition-medium), fill var(--ptc-ease-out) var(--ptc-transition-medium), border-color var(--ptc-ease-out) var(--ptc-transition-medium);
133
133
  }
134
134
  .standard-filter .next-button:hover, .standard-filter .previous-button:hover {
@@ -1046,7 +1046,7 @@ ptc-link, ptc-square-card,
1046
1046
  }
1047
1047
  @media only screen and (min-width: 992px) {
1048
1048
  .u-3-col-grid .u-3-col {
1049
- width: calc(33.333333333333% - 10.66666666px);
1049
+ width: calc(33.3333333333% - 10.66666666px);
1050
1050
  }
1051
1051
  }
1052
1052
  .u-3-col-grid.u-col-space-lg {
@@ -1063,7 +1063,7 @@ ptc-link, ptc-square-card,
1063
1063
  }
1064
1064
  @media only screen and (min-width: 992px) {
1065
1065
  .u-3-col-grid.u-col-space-lg .u-3-col {
1066
- width: calc(33.333333333333% - 21.3333333px);
1066
+ width: calc(33.3333333333% - 21.3333333px);
1067
1067
  }
1068
1068
  }
1069
1069
 
@@ -2215,9 +2215,9 @@
2215
2215
  .iti__v-hide {
2216
2216
  visibility: hidden;
2217
2217
  }
2218
- .iti input,
2219
- .iti input[type=text],
2220
- .iti input[type=tel] {
2218
+ .iti input.iti__tel-input,
2219
+ .iti input.iti__tel-input[type=text],
2220
+ .iti input.iti__tel-input[type=tel] {
2221
2221
  position: relative;
2222
2222
  z-index: 0;
2223
2223
  margin-top: 0 !important;
@@ -2256,26 +2256,35 @@
2256
2256
  border-top: none;
2257
2257
  border-bottom: 4px solid #555;
2258
2258
  }
2259
- .iti__country-list {
2259
+ .iti__dropdown-content {
2260
2260
  position: absolute;
2261
2261
  z-index: 2;
2262
- list-style: none;
2263
- padding: 0;
2264
- margin: 0 0 0 -1px;
2262
+ margin-left: -1px;
2265
2263
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.2);
2266
2264
  background-color: white;
2267
2265
  border: 1px solid #ccc;
2268
- white-space: nowrap;
2269
2266
  max-height: 200px;
2270
2267
  overflow-y: scroll;
2271
2268
  -webkit-overflow-scrolling: touch;
2272
2269
  }
2273
- .iti__country-list--dropup {
2270
+ .iti__dropdown-content--dropup {
2274
2271
  bottom: 100%;
2275
2272
  margin-bottom: -1px;
2276
2273
  }
2274
+ .iti__search-input {
2275
+ width: 100%;
2276
+ border-width: 0;
2277
+ }
2278
+ .iti__country-list {
2279
+ list-style: none;
2280
+ padding: 0;
2281
+ margin: 0;
2282
+ }
2283
+ .iti--flexible-dropdown-width .iti__country-list {
2284
+ white-space: nowrap;
2285
+ }
2277
2286
  @media (max-width: 500px) {
2278
- .iti__country-list {
2287
+ .iti--flexible-dropdown-width .iti__country-list {
2279
2288
  white-space: normal;
2280
2289
  }
2281
2290
  }
@@ -2307,20 +2316,20 @@
2307
2316
  margin-right: 0;
2308
2317
  margin-left: 6px;
2309
2318
  }
2310
- .iti--allow-dropdown input,
2311
- .iti--allow-dropdown input[type=text],
2312
- .iti--allow-dropdown input[type=tel], .iti--separate-dial-code input,
2313
- .iti--separate-dial-code input[type=text],
2314
- .iti--separate-dial-code input[type=tel] {
2319
+ .iti--allow-dropdown input.iti__tel-input,
2320
+ .iti--allow-dropdown input.iti__tel-input[type=text],
2321
+ .iti--allow-dropdown input.iti__tel-input[type=tel], .iti--separate-dial-code input.iti__tel-input,
2322
+ .iti--separate-dial-code input.iti__tel-input[type=text],
2323
+ .iti--separate-dial-code input.iti__tel-input[type=tel] {
2315
2324
  padding-right: 6px;
2316
2325
  padding-left: 52px;
2317
2326
  margin-left: 0;
2318
2327
  }
2319
- [dir=rtl] .iti--allow-dropdown input,
2320
- [dir=rtl] .iti--allow-dropdown input[type=text],
2321
- [dir=rtl] .iti--allow-dropdown input[type=tel], [dir=rtl] .iti--separate-dial-code input,
2322
- [dir=rtl] .iti--separate-dial-code input[type=text],
2323
- [dir=rtl] .iti--separate-dial-code input[type=tel] {
2328
+ [dir=rtl] .iti--allow-dropdown input.iti__tel-input,
2329
+ [dir=rtl] .iti--allow-dropdown input.iti__tel-input[type=text],
2330
+ [dir=rtl] .iti--allow-dropdown input.iti__tel-input[type=tel], [dir=rtl] .iti--separate-dial-code input.iti__tel-input,
2331
+ [dir=rtl] .iti--separate-dial-code input.iti__tel-input[type=text],
2332
+ [dir=rtl] .iti--separate-dial-code input.iti__tel-input[type=tel] {
2324
2333
  padding-right: 52px;
2325
2334
  padding-left: 6px;
2326
2335
  margin-right: 0;
@@ -2339,12 +2348,12 @@
2339
2348
  .iti--allow-dropdown .iti__flag-container:hover .iti__selected-flag {
2340
2349
  background-color: rgba(0, 0, 0, 0.05);
2341
2350
  }
2342
- .iti--allow-dropdown input[disabled] + .iti__flag-container:hover,
2343
- .iti--allow-dropdown input[readonly] + .iti__flag-container:hover {
2351
+ .iti--allow-dropdown .iti__flag-container:has(+ input[disabled]):hover,
2352
+ .iti--allow-dropdown .iti__flag-container:has(+ input[readonly]):hover {
2344
2353
  cursor: default;
2345
2354
  }
2346
- .iti--allow-dropdown input[disabled] + .iti__flag-container:hover .iti__selected-flag,
2347
- .iti--allow-dropdown input[readonly] + .iti__flag-container:hover .iti__selected-flag {
2355
+ .iti--allow-dropdown .iti__flag-container:has(+ input[disabled]):hover .iti__selected-flag,
2356
+ .iti--allow-dropdown .iti__flag-container:has(+ input[readonly]):hover .iti__selected-flag {
2348
2357
  background-color: transparent;
2349
2358
  }
2350
2359
  .iti--separate-dial-code .iti__selected-flag {
@@ -2368,18 +2377,26 @@
2368
2377
  cursor: pointer;
2369
2378
  }
2370
2379
 
2371
- .iti-mobile .iti--container {
2372
- top: 30px;
2373
- bottom: 30px;
2374
- left: 30px;
2375
- right: 30px;
2380
+ .iti--fullscreen-popup.iti--container {
2381
+ background-color: rgba(0, 0, 0, 0.5);
2382
+ top: 0;
2383
+ bottom: 0;
2384
+ left: 0;
2385
+ right: 0;
2376
2386
  position: fixed;
2387
+ padding: 30px;
2388
+ display: flex;
2389
+ flex-direction: column;
2390
+ justify-content: center;
2391
+ }
2392
+ .iti--fullscreen-popup.iti--container.iti--country-search {
2393
+ justify-content: flex-start;
2377
2394
  }
2378
- .iti-mobile .iti__country-list {
2395
+ .iti--fullscreen-popup .iti__dropdown-content {
2379
2396
  max-height: 100%;
2380
- width: 100%;
2397
+ position: relative;
2381
2398
  }
2382
- .iti-mobile .iti__country {
2399
+ .iti--fullscreen-popup .iti__country {
2383
2400
  padding: 10px 10px;
2384
2401
  line-height: 1.5em;
2385
2402
  }
@@ -2405,7 +2422,7 @@
2405
2422
  .iti__flag.iti__va {
2406
2423
  width: 15px;
2407
2424
  }
2408
- @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
2425
+ @media (min-resolution: 2x) {
2409
2426
  .iti__flag {
2410
2427
  background-size: 5762px 15px;
2411
2428
  }
@@ -3471,7 +3488,7 @@
3471
3488
  background-color: #dbdbdb;
3472
3489
  background-position: 20px 0;
3473
3490
  }
3474
- @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
3491
+ @media (min-resolution: 2x) {
3475
3492
  .iti__flag {
3476
3493
  background-image: url("../img/flags@2x.png?1");
3477
3494
  }