word-games-theme 3.3.6 → 3.3.8

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 (57) hide show
  1. checksums.yaml +4 -4
  2. data/_data/footer/en/data.json +95 -0
  3. data/_data/header/en/data.json +559 -36
  4. data/_data/home_sections.json +453 -0
  5. data/_data/wordgames/en/root.json +16 -13
  6. data/_includes/featurePageAuthors/featurePageAuthors.html +36 -59
  7. data/_includes/home/ad-preview.html +3 -0
  8. data/_includes/home/ad-slot.html +3 -0
  9. data/_includes/home/chips.html +6 -0
  10. data/_includes/home/crosswords.html +18 -0
  11. data/_includes/home/daily-hints.html +15 -0
  12. data/_includes/home/footer.html +212 -0
  13. data/_includes/home/game-art.html +18 -0
  14. data/_includes/home/game-cards.html +22 -0
  15. data/_includes/home/header.html +82 -0
  16. data/_includes/home/icon.html +19 -0
  17. data/_includes/home/letter-lists.html +17 -0
  18. data/_includes/home/logo.html +84 -0
  19. data/_includes/home/solvers.html +9 -0
  20. data/_includes/wordgames/advanced-filter/advanced-filter.html +15 -14
  21. data/_includes/wordgames/faqs/faqs.html +2 -4
  22. data/_includes/wordgames/headings/headings.html +1 -1
  23. data/_includes/wordgames/infographics/infographics.html +2 -136
  24. data/_includes/wordgames/search-box/search-box.html +1 -1
  25. data/_includes/wordgames-v2/advanced-filter/advanced-filter.html +421 -0
  26. data/_includes/wordgames-v2/faqs/faqs.html +35 -0
  27. data/_includes/wordgames-v2/featurehighlights/featurehighlights.html +70 -0
  28. data/_includes/wordgames-v2/head/head.html +170 -0
  29. data/_includes/wordgames-v2/headings/headings.html +14 -0
  30. data/_includes/wordgames-v2/howto/howto.html +94 -0
  31. data/_includes/wordgames-v2/infographics/infographics.html +358 -0
  32. data/_includes/wordgames-v2/search-box/dict-picker.html +26 -0
  33. data/_includes/wordgames-v2/search-box/search-box.html +87 -0
  34. data/_layouts/wordgames-home-v2.html +141 -0
  35. data/assets/css/ad-preview.css +85 -0
  36. data/assets/css/home-hub.css +1879 -0
  37. data/assets/css/wordfinder-result.css +5 -5
  38. data/assets/css/wordgames-home-v2.css +2955 -0
  39. data/assets/css/wordgames-home.css +3 -4
  40. data/assets/css/wordgames-result.css +1 -1
  41. data/assets/css/wordle-solver.css +2 -2
  42. data/assets/images/close-menu.svg +1 -14
  43. data/assets/images/hamburger-menu.svg +1 -5
  44. data/assets/images/logo-hub.svg +24 -0
  45. data/assets/images/logo.svg +13 -106
  46. data/assets/images/questionmark.svg +1 -1
  47. data/assets/images/wordswithletters-logo.svg +96 -0
  48. data/assets/js/ad-preview.js +141 -0
  49. data/assets/js/home-hub.js +275 -0
  50. data/assets/js/home-ui.js +286 -0
  51. data/assets/js/scrabbleDictonary.js +8 -202
  52. data/assets/js/wordleSolver-worker.js +2 -7
  53. data/assets/js/wordleSolver.js +2 -2
  54. metadata +35 -6
  55. data/_data/.DS_Store +0 -0
  56. data/_includes/.DS_Store +0 -0
  57. data/assets/.DS_Store +0 -0
@@ -104,14 +104,13 @@ input[type="number"] {
104
104
  }
105
105
 
106
106
  .serachSection .serachBox .txtBox {
107
- text-transform: uppercase;
108
107
  height: 80px;
109
108
  border: solid 3px #313131;
110
109
  border-radius: 74px;
111
110
  background: #fff;
112
111
  padding: 2rem;
113
112
  width: 100%;
114
- font-size: 16px;
113
+ font-size: 15px;
115
114
  font-weight: 700;
116
115
  font-style: normal;
117
116
  letter-spacing: normal;
@@ -186,7 +185,7 @@ input[type="number"] {
186
185
  height: 80px;
187
186
  position: absolute;
188
187
  top: 0px;
189
- font-size: 16px;
188
+ font-size: 15px;
190
189
  width: 142px;
191
190
  overflow: hidden;
192
191
  object-fit: cover;
@@ -1126,7 +1125,7 @@ summary::-webkit-details-marker {
1126
1125
  }
1127
1126
 
1128
1127
  .carousel img {
1129
- height: auto !important;
1128
+ height: 600px;
1130
1129
  }
1131
1130
 
1132
1131
  .slide {
@@ -341,7 +341,7 @@ input:-webkit-autofill:active {
341
341
  padding: 10px;
342
342
  text-align: left;
343
343
  color: #1c1107;
344
- font-size: 1.5rem;
344
+ font-size: 13px;
345
345
  font-weight: 600;
346
346
  font-stretch: normal;
347
347
  font-style: normal;
@@ -124,12 +124,12 @@
124
124
 
125
125
  .wordList .anchor__style {
126
126
  color: #000!important;
127
- font-size: 2rem;
127
+ font-size: 15px;
128
128
  text-decoration: none!important;
129
129
  font-weight: 600;
130
130
  }
131
131
  #wordleWordCount {
132
- font-size: 2rem;
132
+ font-size: 18px;
133
133
  /* width: 75%; */
134
134
  margin: 10px auto;
135
135
  }
@@ -1,14 +1 @@
1
- <svg height="50px" width="1em" style="font-size: 25px" viewBox="0 0 24 24" fill="white" xmlns="http://www.w3.org/2000/svg" stroke="white">
2
- <g id="SVGRepo_bgCarrier" stroke-width="0"></g>
3
- <g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g>
4
- <g id="SVGRepo_iconCarrier">
5
- <g clip-path="url(#clip0_429_11083)">
6
- <path d="M7 7.00006L17 17.0001M7 17.0001L17 7.00006" stroke="white" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"></path>
7
- </g>
8
- <defs>
9
- <clipPath id="clip0_429_11083">
10
- <rect width="24" height="24" fill="white"></rect>
11
- </clipPath>
12
- </defs>
13
- </g>
14
- </svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="#fff" stroke-width="2" stroke-linecap="round"><path d="M6 6l12 12M18 6 6 18"/></svg>
@@ -1,5 +1 @@
1
- <svg style="font-size:25px" stroke="#fff" fill="#fff" stroke-width="0" viewBox="0 0 512 512"
2
- aria-hidden="true" focusable="false" height="50px" width="1em" xmlns="http://www.w3.org/2000/svg">
3
- <path fill="#fff" stroke-linecap="round" stroke-miterlimit="10" stroke-width="48"
4
- d="M88 152h336M88 256h336M88 360h336"></path>
5
- </svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="#fff" stroke-width="2" stroke-linecap="round"><path d="M4 7h16M4 12h16M4 17h16"/></svg>
@@ -0,0 +1,24 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" width="64" height="64" role="img" aria-label="Words with letters">
2
+ <defs>
3
+ <linearGradient id="g" x1="0" y1="0" x2="1" y2="1">
4
+ <stop offset="0" stop-color="#6d6df5"/><stop offset="1" stop-color="#a45cf0"/>
5
+ </linearGradient>
6
+ <linearGradient id="a" x1="0" y1="0" x2="1" y2="1">
7
+ <stop offset="0" stop-color="#fbbf24"/><stop offset="1" stop-color="#f97316"/>
8
+ </linearGradient>
9
+ <filter id="s" x="-20%" y="-20%" width="140%" height="150%">
10
+ <feDropShadow dx="0" dy="2" stdDeviation="2" flood-color="#1b1b4b" flood-opacity=".28"/>
11
+ </filter>
12
+ </defs>
13
+ <!-- back tile -->
14
+ <g transform="rotate(14 40 36)" filter="url(#s)">
15
+ <rect x="26" y="18" width="30" height="30" rx="8" fill="url(#a)"/>
16
+ <path d="M33 41 40 26 47 41M35.6 36h8.8" fill="none" stroke="#fff" stroke-width="3.6" stroke-linecap="round" stroke-linejoin="round"/>
17
+ </g>
18
+ <!-- front tile -->
19
+ <g transform="rotate(-8 24 38)" filter="url(#s)">
20
+ <rect x="6" y="16" width="34" height="34" rx="9" fill="url(#g)"/>
21
+ <path d="M13 25l4.2 16 6.8-12 6.8 12 4.2-16" fill="none" stroke="#fff" stroke-width="3.8" stroke-linecap="round" stroke-linejoin="round" transform="translate(-1 0)"/>
22
+ <circle cx="34" cy="44" r="1.9" fill="#fff" opacity=".85"/>
23
+ </g>
24
+ </svg>
@@ -1,106 +1,13 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <!-- Generator: Adobe Illustrator 25.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
- <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="187px"
4
- height="50px" viewBox="0 0 187 50" style="enable-background:new 0 0 187 50;" xml:space="preserve">
5
- <style type="text/css">
6
- .st0{fill:url(#SVGID_1_);}
7
- .st1{clip-path:url(#XMLID_3_);fill:#00E990;}
8
- .st2{fill:#FFFFFF;}
9
- .st3{fill:#0DBC69;}
10
- .st4{fill:#19FF9F;}
11
- .st5{fill:#E6FFF1;}
12
- .st6{fill:#66FFAF;}
13
- .st7{fill:#2AD17D;}
14
- .st8{fill:none;stroke:#FFFFFF;stroke-width:0.5;stroke-linecap:round;stroke-miterlimit:10;}
15
- </style>
16
- <g id="Layer_1">
17
- <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="85.1623" y1="22.6017" x2="171.4151" y2="22.6017">
18
- <stop offset="0" style="stop-color:#19FF9F"/>
19
- <stop offset="1" style="stop-color:#008966;stop-opacity:0"/>
20
- </linearGradient>
21
- <path class="st0" d="M86.7,24.9c0.6-0.2,1.2,0.4,1.6,1c1.7,3,5.5,6.8,8.9,8c0.7,0.3,1.6,0.5,2.3,0.3c1.6-0.3,2.6-2,3.5-3.3
22
- c1.2-1.7,2.6-3.2,4.3-4.4c1.3-1,2.9-1.8,4.5-1.6c3.2,0.4,4.4,4.4,6.9,6.4c0.3,0.3,0.6,0.5,1,0.6c0.4,0.1,0.9-0.1,1.3-0.3
23
- c2.6-1.2,3.9-4.1,5-6.7c0.2-0.5,0.5-1.1,1-1.5c0.5-0.4,1.1-0.4,1.7-0.5c2-0.3,3.9-0.8,5.7-1.6c1.1-0.5,2.1-1.1,2.8-2
24
- c0.5-0.7,0.7-1.6,0.8-2.5c0.3-2.2,0.2-4.4,0.8-6.5c0.6-2.1,1.9-4.2,4-4.8c1.9-0.6,4,0.1,6.1,0.1c3.5,0.1,6.7-1.8,9.9-3
25
- s7.5-1.4,9.7,1.3c2.2,2.6,1.4,6.5,0.4,9.7s-2,7-0.1,9.8c0.9,1.3,2.5,2.3,2.7,3.9c0.2,1-0.3,2.1-0.9,3c-3.3,5-10.8,6.5-15.8,3.2
26
- c-1.5-1-2.7-2.3-4.3-3.2c-3.6-2-8.6-0.8-10.9,2.6c-1.1,1.5-1.6,3.4-2.4,5.1s-2.2,3.3-4,3.6c-3.7,0.6-6.7-4.2-10.4-3.6
27
- c-2,0.3-3.3,2-4.8,3.4s-3.7,2.5-5.4,1.4c-2.6-1.6-1.2-6.6-4-7.9c-1.1-0.5-2.4-0.2-3.4,0.4c-1,0.6-1.8,1.5-2.7,2.2
28
- c-3,2.4-7.3,3.2-11,2c-1-0.3-2-0.8-2.4-1.7c-0.3-0.6-0.2-1.4-0.2-2.1c-0.1-2.2-1.1-4.4-2.7-6c-1.5-1.4-1.1-2.2-0.2-4.1
29
- C86.2,25.4,86.4,25.1,86.7,24.9z"/>
30
- <g>
31
- <defs>
32
- <path id="XMLID_1_" d="M83.3,36.4c-2.4,1.6-0.8,4.5,0.4,6.3c0.3,0.5,0.7,1,1.2,1.3c1,0.6,2.4,0.2,3-0.7c1.2-1.9-0.3-4.7-1.3-6.4
33
- C85.8,35.6,84.5,35.6,83.3,36.4z"/>
34
- </defs>
35
- <use xlink:href="#XMLID_1_" style="overflow:visible;fill:#29EF95;"/>
36
- <clipPath id="XMLID_3_">
37
- <use xlink:href="#XMLID_1_" style="overflow:visible;"/>
38
- </clipPath>
39
- <path class="st1" d="M85.9,42.3c0-0.1,0.1-0.2,0.2-0.2c0.2-0.1,0.4,0.1,0.6,0.2c0.2,0.1,0.4,0.2,0.7,0.1c0.5-0.1,0.7-0.7,1-1.1
40
- c0.1-0.2,0.4-0.3,0.5-0.2c0.2,0.1,0.3,0.3,0.3,0.6c0.1,0.3,0.1,0.7,0.2,1c0.1,0.6,0.2,1.3,0.1,1.9c-0.1,0.6-0.4,1.3-0.8,1.6
41
- c-0.5,0.4-1.1,0.5-1.7,0.4c-0.6,0-1.1-0.2-1.5-0.6c-0.2-0.3-0.4-0.6-0.5-1c-0.1-0.4,0.1-0.5,0.3-0.9
42
- C85.6,43.6,85.7,42.9,85.9,42.3z"/>
43
- </g>
44
- <path class="st2" d="M29.3,12c2.4,6,2.9,8.2,2.9,15.4c0,6.7-3,11-8,11c-2.3,0-4.3-1.6-5.6-3.9c-1.2,2.4-3.4,3.9-5.6,3.9
45
- c-5.1,0-8-4.3-8-11c0-7.3,0.3-9.9,2.9-15.4l5.5,1.1c-1.8,4.2-2.7,8.9-2.7,14.3c0,3.6,0.8,5.4,2.4,5.4c2.1,0,3.4-3.9,3.4-10.8
46
- c0-3.5-0.2-5.9-0.7-7.5h5.9c-0.4,1.4-0.6,3.8-0.6,7.4c0,7.1,1.2,10.9,3.3,10.9c1.6,0,2.4-1.8,2.4-5.4c0-5.4-0.9-10.2-2.7-14.3
47
- L29.3,12z"/>
48
- <path class="st3" d="M49.2,24.3C49.1,24.3,49.1,24.3,49.2,24.3c-0.5,4.4-2.8,8-5.6,8c-2.2,0-4.3-3.2-4.5-6.2
49
- c-0.9,0.8-1.1,3.3-2,4.2c-0.1,0.1-0.2,0.2-0.3,0.3c0,0,0,0,0,0c-0.7,0-1,0.5-1,1c-0.3,0.3-0.5,0.6-0.8,0.9c0,0.1,0.1,0.2,0.1,0.3
50
- c0.7,1.7,1.3,2.9-0.1,4.6c-0.8,1-1.9,1.7-3.1,2.1c-0.6,0.2-1.2,0.4-1.8,0.8c-0.5,0.4-1.5,0.8-1.4,1.5c0,0.6,1,1.3,1.5,1.5
51
- s1.2,0.3,1.8,0.2c1.7-0.2,3.3-1.3,4.1-2.8c0.3-0.5,0.5-1,0.8-1.4c1.5-1.9,4.8-0.2,6.8-0.3c2.1,0,4.1-0.8,5.6-2.3
52
- c3.6-3.7,4.2-9.4,4.7-13.5C52.3,22.6,51,24.5,49.2,24.3z"/>
53
- <path class="st4" d="M44.5,11.2c-6.2,0-11,7.6-11,15.3c0,1.8,0.2,3.7,0.9,5.5c0,0.1,0.1,0.2,0.1,0.3c0.7,1.7,1.3,2.9-0.1,4.6
54
- c-0.8,1-1.9,1.7-3.1,2.1c-0.6,0.2-1.2,0.4-1.8,0.8c-0.5,0.4-1,0.9-0.9,1.6c0,0.6,0.5,1.1,1,1.4s1.2,0.3,1.8,0.2
55
- c1.7-0.2,3.3-1.3,4.1-2.8c0.3-0.5,0.5-1,0.8-1.4c1.5-1.9,4.8-0.2,6.8-0.3c2.1,0,4.2-0.8,5.6-2.3c3.8-4.1,4.7-6.8,5.2-10.9
56
- c0.1-1,0.2-1.9,0.2-2.8C54.1,15.7,50.5,11.2,44.5,11.2z M42.9,32.8c-2.2,0-3.7-2.6-3.8-5.5c0-0.2,0-0.4,0-0.6
57
- c0-4.4,2.6-9.8,5.7-9.8c2.4,0,3.7,2.2,3.7,5.8c0,0.4,0,0.7,0,1.1C48.1,28.1,45.8,32.8,42.9,32.8z"/>
58
- <path class="st2" d="M58.8,11.7c7.8,0,12.8,3.1,12.8,8.9c0,3.7-2,6.4-5.7,7.8c1.2,1.6,4.3,4.2,7.1,6.3L69.5,39
59
- c-1.7-2.1-6.3-6.2-8.4-7.7c0,2.5-0.1,4.5-0.2,6.3h-5.4c0.2-4.3,0.3-8.8,0.3-13.4c0-4.1,0-8.3-0.3-12.4
60
- C56.4,11.7,57.5,11.7,58.8,11.7z M61.3,24.8c3-0.7,4.7-1.7,4.7-4.2c0-2-1.6-2.9-4.9-3.1C61.3,19.5,61.3,22,61.3,24.8z"/>
61
- <path class="st2" d="M73.2,31.5c0-6.4,0.7-13.1,2.1-19.9c9.5,0,15.6,3.8,15.6,10.5c0,8.7-8.6,15.1-17.1,16.6
62
- C73.4,36.8,73.2,34.4,73.2,31.5z M84.5,22c0-2.5-1.5-4-4.5-4.7c-0.7,3.4-1.1,8-1.1,14C81.5,29.9,84.5,25,84.5,22z"/>
63
- <path class="st2" d="M102.6,14c-0.4-0.3-1.1-0.5-2.2-0.5c-1.9,0-3,2-3.3,6.2h5.7v6.6h-5.7c0,3.7,0.3,7.1,0.8,10.4l-5.6,0.4
64
- c-0.4-4.7-0.7-10.4-0.7-13.7c0-11.2,2.6-16.7,7.9-16.7c2.3,0,3.9,0.5,5,1.2L102.6,14z"/>
65
- <path class="st2" d="M111.5,13c0,4.3-0.1,19.6-0.1,23.9h-5.6c0-4.4,0.1-19.6,0.1-23.9H111.5z"/>
66
- <path class="st2" d="M119.5,11.9c-0.3,0.8-0.4,1.9-0.4,2.6c1-1.7,2.7-2.5,4.7-2.5c4.7,0,7.3,3.2,7.3,9.6c0,5.1-1.3,10.8-3.8,17.1
67
- l-5.2-2.1c1.8-4.2,3.5-11.9,3.5-15.3c0-2.5-0.7-3.7-2-3.7c-3.1,0-4.8,3.7-4.8,9.6c0,2.4,0.5,5.7,1.3,8.8l-5.4,1.9
68
- c-0.9-4.2-1.3-9.1-1.3-14.8c0-4.1,0.3-7.4,0.8-10.3L119.5,11.9z"/>
69
- <path class="st2" d="M132.3,31.5c0-6.4,0.7-13.1,2.1-19.9c9.5,0,15.6,3.8,15.6,10.5c0,8.7-8.6,15.1-17.1,16.6
70
- C132.5,36.8,132.3,34.4,132.3,31.5z M143.6,22c0-2.5-1.5-4-4.5-4.7c-0.7,3.4-1.1,8-1.1,14C140.6,29.9,143.6,25,143.6,22z"/>
71
- <path class="st2" d="M161.7,17.5c-0.2-0.1-0.6-0.1-1.1-0.1c-2,0-3.3,1.7-3.9,5.1c1.6,0,3.1-0.1,4.5-0.3l0.6,5.6
72
- c-1.6,0.2-3.2,0.2-5.1,0.3c0.7,3.2,2.9,4.8,6.5,4.8l0.6,5.6c-8.2,0-13-5-13-13.1c0-7.9,3.9-13.5,10-13.5c0.5,0,1,0.1,1.5,0.1
73
- L161.7,17.5z"/>
74
- <path class="st2" d="M168.7,11.7c7.8,0,12.8,3.1,12.8,8.9c0,3.7-2,6.4-5.7,7.8c1.2,1.6,4.3,4.2,7.1,6.3l-3.5,4.4
75
- c-1.7-2.1-6.3-6.2-8.4-7.7c0,2.5-0.1,4.5-0.2,6.3h-5.4c0.2-4.3,0.3-8.8,0.3-13.4c0-4.1,0-8.3-0.3-12.4
76
- C166.3,11.7,167.4,11.7,168.7,11.7z M171.2,24.8c3-0.7,4.7-1.7,4.7-4.2c0-2-1.6-2.9-4.9-3.1C171.2,19.5,171.2,22,171.2,24.8z"/>
77
- </g>
78
- <g id="Layer_3">
79
- <path class="st5" d="M49.5,13.9c-0.2-0.2-0.6,0-0.7,0.2c-0.1,0.3,0,0.5,0.2,0.7c1.8,1.3,2.5,3.6,2.5,5.8c0,0.6,1,0.6,1,0
80
- C52.5,18,51.7,15.5,49.5,13.9z"/>
81
- <path class="st6" d="M50.8,28.4c-0.2,0.1-0.5,0.2-0.7,0.3c-0.2-0.1-0.3-0.2-0.6-0.2c-0.8,0-1.1,0.8-0.9,1.4
82
- c-0.6,0.7-1.2,1.5-1.9,2.2c-0.2,0.3-0.5,0.5-0.8,0.7c-0.1,0-0.2,0-0.3,0c-0.6,0-0.9,0.4-0.9,0.8c-0.5,0.3-1.1,0.5-1.6,0.6
83
- c-0.3-0.2-0.7-0.4-1-0.5c-0.2-0.1-0.4-0.1-0.6-0.1c-0.1-0.1-0.3-0.2-0.6-0.2c-0.5,0-0.8,0.3-0.9,0.6c-0.9,0.4-1.8,0.7-2.8,0.9
84
- c-0.3,0-0.5,0.2-0.6,0.5c-0.3,0.4-0.3,1,0,1.4c0,0,0,0,0,0c0.2,0.4,0.7,0.5,1.1,0.4c0.9,0.4,1.8,0.7,2.8,0.6c0.7-0.1,1.3-0.2,2-0.1
85
- c0.7,0.1,1.4,0.1,2.1-0.1c0.9-0.2,1.7-0.7,2.4-1.2c0.8-0.5,1.4-1.1,2.1-1.8c0.1-0.1,0.2-0.2,0.2-0.3c0.3-0.3,0.6-0.6,0.9-1
86
- c0.8-1.1,1.7-2.3,1.9-3.7C52.2,28.9,51.6,28.1,50.8,28.4z"/>
87
- <path class="st7" d="M39.6,35.5c-1.3,0-1.3,2,0,2C40.9,37.5,40.9,35.5,39.6,35.5z"/>
88
- <path class="st7" d="M41.8,33.9c-1.3,0-1.3,2,0,2C43.1,35.9,43.1,33.9,41.8,33.9z"/>
89
- <path class="st7" d="M41.4,36.6c-0.6,0-0.6,1,0,1C42.1,37.6,42.1,36.6,41.4,36.6z"/>
90
- <path class="st7" d="M43.2,36.1c-0.6,0-0.6,1,0,1C43.8,37.1,43.8,36.1,43.2,36.1z"/>
91
- <path class="st7" d="M44.1,35c-0.6,0-0.6,1,0,1C44.8,36,44.8,35,44.1,35z"/>
92
- <path class="st7" d="M44.7,36.5c-0.6,0-0.6,1,0,1C45.3,37.5,45.3,36.5,44.7,36.5z"/>
93
- <path class="st7" d="M52.8,26c-0.6,0-0.6,1,0,1C53.5,27,53.5,26,52.8,26z"/>
94
- <path class="st7" d="M52.5,27.4c-0.6,0-0.6,1,0,1C53.1,28.4,53.1,27.4,52.5,27.4z"/>
95
- <path class="st7" d="M51.9,28.8c-0.6,0-0.6,1,0,1C52.6,29.8,52.6,28.8,51.9,28.8z"/>
96
- <path class="st7" d="M51.2,30c-0.6,0-0.6,1,0,1C51.8,31,51.8,30,51.2,30z"/>
97
- <path class="st7" d="M50,31.2c-1.3,0-1.3,2,0,2C51.3,33.2,51.3,31.2,50,31.2z"/>
98
- <path class="st7" d="M48.4,33.2c-1.3,0-1.3,2,0,2C49.6,35.2,49.6,33.2,48.4,33.2z"/>
99
- <path class="st7" d="M46.3,35c-1.3,0-1.3,2,0,2C47.6,37,47.6,35,46.3,35z"/>
100
- </g>
101
- <g id="Layer_2">
102
- <path class="st2" d="M47.7,24.7c-0.1-0.3-0.2-0.6-0.4-0.9c-0.3-0.5-0.7-0.9-1.2-1c-0.5-0.1-0.9,0.2-1.2,0.5
103
- c-0.8,0.8-1.6,2.6-0.5,3.6c0.7,0.6,2.3,0.6,3-0.2C47.9,26.2,47.9,25.4,47.7,24.7z"/>
104
- <path class="st8" d="M83.3,37.3c-0.4,0.5-0.5,1.1-0.4,1.7"/>
105
- </g>
106
- </svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 262 48" width="262" height="48" role="img" aria-label="Words With Letters">
2
+ <defs>
3
+ <linearGradient id="wg-tile" x1="0" y1="0" x2="1" y2="1">
4
+ <stop offset="0" stop-color="#d36bf5"/>
5
+ <stop offset="1" stop-color="#8a24b3"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <rect x="2" y="2" width="44" height="44" rx="12" fill="url(#wg-tile)"/>
9
+ <rect x="2.5" y="2.5" width="43" height="43" rx="11.5" fill="none" stroke="#fff" stroke-opacity=".28"/>
10
+ <path d="M10.5 14.5h4.4l3.4 13.2 3.9-13.2h3.6l3.9 13.2 3.4-13.2h4.4l-5.7 19.5h-3.8l-3.8-12.4-3.8 12.4h-3.8z" fill="#fff"/>
11
+ <text x="41" y="42" text-anchor="end" font-family="system-ui,-apple-system,'Segoe UI',Arial,sans-serif" font-size="9" font-weight="800" fill="#fff" fill-opacity=".85">4</text>
12
+ <text x="58" y="31" font-family="system-ui,-apple-system,'Segoe UI',Arial,sans-serif" font-size="23" font-weight="800" letter-spacing="-.4" fill="#fff">Words<tspan fill="#e3a0f7"> With </tspan>Letters</text>
13
+ </svg>
@@ -3,7 +3,7 @@
3
3
  <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
4
4
  width="48px" height="48px" viewBox="0 0 48 48" style="enable-background:new 0 0 48 48;" xml:space="preserve">
5
5
  <style type="text/css">
6
- .st0{fill:#0CC48B;}
6
+ .st0{fill:#b641da;}
7
7
  .st1{fill:#FFFFFF;}
8
8
  </style>
9
9
  <circle class="st0" cx="24" cy="24" r="23.5"/>
@@ -0,0 +1,96 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!-- Generator: Adobe Illustrator 25.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
3
+ <svg version="1.1" id="Layer_1" xmlns:v="https://vecta.io/nano"
4
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 197.5 35"
5
+ style="enable-background:new 0 0 197.5 35;" xml:space="preserve">
6
+ <style type="text/css">
7
+ .st0{fill:none;}
8
+ .st1{fill:#0f172a;}
9
+ .st2{fill:url(#SVGID_1_);}
10
+ </style>
11
+ <g id="SVGRepo_bgCarrier">
12
+ </g>
13
+ <g id="SVGRepo_tracerCarrier">
14
+ </g>
15
+ <g id="SVGRepo_bgCarrier_1_">
16
+ </g>
17
+ <g id="SVGRepo_tracerCarrier_1_">
18
+ </g>
19
+ <path class="st0" d="M-281.9,0.9C-281.9,1-281.8,1-281.9,0.9"/>
20
+ <path class="st1" d="M50.5,11.5c0.1,2.8-0.1,5.7-0.1,8.5c-0.1,2.3-0.8,6.2-3.8,6.2c-1.6,0-2.7-1.5-3.3-2.7c-0.6,1.3-2,2.6-3.5,2.6
21
+ c-3.4,0-3.3-4.7-3.3-7c-0.1-2.7-0.2-4.8-0.2-7.4c0-0.9,0.6-1.5,1.5-1.5s1.5,0.6,1.6,1.5c0.1,1.3,0,5.3,0.1,8.2
22
+ c0.2,4.3,1.3,3.3,1.8-0.2c0.2-1.5,0.2-3,0.3-3.9c0.1-0.8,0.7-1.5,1.6-1.5c0.9,0,1.6,0.5,1.7,1.5c0.1,1.7,0.2,2.9,0.5,4.1
23
+ c0.6,2.8,1.9,3.9,2,0c0.1-2.8,0-5.6,0-8.4c0-0.9,0.7-1.5,1.6-1.5C49.9,10,50.5,10.6,50.5,11.5z"/>
24
+ <path class="st1" d="M56.9,26.4c-3.3,0-5-3.7-5-6.5c0-8.2,9.9-8.7,9.9-0.2C61.9,22.8,60.6,26.4,56.9,26.4z M58.8,19.5
25
+ c0-4.5-3.8-3.3-3.8,0.4c0,1.3,0.3,3.5,2,3.5S58.8,20.6,58.8,19.5z"/>
26
+ <path class="st1" d="M71.3,14.4c0,2.1-2.2,0.9-3.9,2.7c-1.1,1.2-1,1.7-1,3.4c0,1.5,0,3,0,4.4c0,0.9-0.6,1.5-1.6,1.5
27
+ c-1,0-1.5-0.6-1.5-1.5c-0.1-2.1,0-4.3,0-6.4V14c0-0.9,0.6-1.5,1.5-1.5c0.8,0,1.5,0.6,1.6,1.4c1-0.7,2.2-1.1,3.5-1.1
28
+ C70.7,12.8,71.3,13.5,71.3,14.4z"/>
29
+ <path class="st1" d="M77.2,11.4c0-0.9,0.7-1.4,1.6-1.4c0.9,0.1,1.5,0.7,1.4,1.6l-0.1,0.9c-0.3,4.4-0.1,7.9-0.3,12.2
30
+ c0,0.9-0.7,1.5-1.6,1.4c-0.2,0-0.4-0.1-0.5-0.1c-0.9,0.3-1.8,0.5-2.7,0.4c-3.4-0.2-4.4-3.5-4.2-6.4c0.2-2.9,1.8-5.2,4.9-5
31
+ c0.5,0,0.9,0.1,1.4,0.3C77,13.6,77.1,13,77.2,11.4z M75.2,23.4c0.46,0.03,1.12,0.03,1.37-0.44c0.22-0.42,0.14-0.99,0.12-1.44
32
+ c-0.03-0.92,0.05-1.86,0.07-2.78c0-0.08,0-0.16-0.03-0.23c-0.06-0.12-0.2-0.17-0.33-0.21c-0.28-0.09-0.57-0.17-0.86-0.2
33
+ c-0.36-0.04-0.73,0.01-1.04,0.21c-0.51,0.32-0.65,0.98-0.69,1.54c-0.01,0.19-0.02,0.37-0.02,0.56C73.7,21.5,73.7,23.3,75.2,23.4z"/>
34
+ <path class="st1" d="M85.9,21.4c-1.9-1-4.8-2.1-4.8-4.7s2.7-3.8,4.9-3.8c1.2,0,4.1,0.4,4.1,2c0,0.8-0.7,1.6-1.5,1.6S87,16,86.1,16
35
+ c-0.4,0-1.9,0.1-1.9,0.8c0,1.4,6.2,2.1,6.2,6.4c0,2.5-2.5,3.4-4.6,3.4c-1.4,0-4.1,0.1-4.1-1.8c0-0.9,0.7-1.5,1.6-1.5
36
+ c0.8,0,1.5,0.3,2.3,0.3C87.6,23.4,87.9,22.4,85.9,21.4z"/>
37
+ <path class="st1" d="M103.8,20.9c0,0.5-0.1,1.1-0.1,1.6c-0.1,0.8,0,2.1-0.1,2.9c0,0.5-0.4,0.9-0.9,0.9s-0.9-0.4-0.9-0.9
38
+ c0-1.3,0-3.2,0.2-4.5c0.1-0.5,0.4-0.9,0.9-0.9S103.8,20.4,103.8,20.9z M103.9,18.6c0,0.5-0.4,0.9-0.9,0.9c-0.6,0-1-0.4-1-1
39
+ c0-0.5,0.4-0.9,0.9-0.9C103.6,17.6,103.9,18,103.9,18.6z"/>
40
+ <path class="st1" d="M109.5,24.4c0.5,0,0.9,0.5,0.9,1c0,0.9-1.2,0.9-1.8,0.9c-2.6,0-2.7-2.8-2.7-4.7c-0.7,0-1.3-0.1-1.2-0.9
41
+ c0-0.8,0.6-0.9,1.3-0.9c0-1,0-1.3,0.1-2.3c0-0.5,0.4-0.9,1-0.9c0.5,0,0.9,0.4,0.9,0.9c0,1-0.1,1.2-0.1,2.2c0.8,0,2.2-0.4,2.2,0.8
42
+ c0,1.2-1.4,1-2.2,1.1c0,0.47-0.07,1.44,0.1,2.15c0.09,0.39,0.46,0.65,0.86,0.65H109.5z"/>
43
+ <path class="st1" d="M116,23.4c0,0.9,0.3,2.8-1.1,2.8c-0.4,0-0.9-0.3-0.9-0.7c0-0.8,0.1-1.3,0.1-2c0-0.4,0.1-1.9-0.5-1.9
44
+ c-0.9,0-0.8,0.5-0.8,1.2c0,0.9,0,1.8,0,2.7c0,0.5-0.4,0.9-0.9,0.9s-0.9-0.3-0.9-0.9c0-2.7-0.2-5.3-0.2-8c0-0.5,0.3-0.9,0.9-0.9
45
+ c0.5,0,0.9,0.4,1,0.9c0.1,0.9,0.1,1.6,0.1,2.5c0.3-0.1,0.6-0.1,0.9-0.1C115.9,19.7,116,21.8,116,23.4z"/>
46
+ <path class="st1" d="M125.4,24.6c0,0.9-0.6,1.5-1.5,1.6c-1.3,0.1-2.6,0.1-3.8,0.1c-1.7,0-2.2-1.2-2.2-2.7c0-3.1,0.3-6.1,0.3-9.2
47
+ c0-1.1-0.1-2.2-0.1-3.3c0-0.8,0.6-1.3,1.4-1.3c2.3,0,1.8,3.3,1.8,4.8c0,2.9-0.3,5.7-0.3,8.6c1,0,2-0.1,3-0.1
48
+ C124.8,23.1,125.4,23.7,125.4,24.6z"/>
49
+ <path class="st1" d="M132,26.5c-3.5,0-5.4-3.6-5.4-6.7c0-3.3,2-6.5,5.6-6.5c2.1,0,4,1.5,4,3.8c0,2.7-2.7,4.1-5.1,4.1
50
+ c-0.4,0-0.9,0-1.3-0.1c0.1,1.3,0.8,2.5,2.3,2.5c1.7,0,1.6-1.9,3-1.9c0.8,0,1.6,0.7,1.6,1.5C136.7,25,133.7,26.5,132,26.5z
51
+ M132.1,16.2c-0.8,0-1.9,1-2.2,1.7c0.4,0.1,0.8,0.1,1.1,0.1c0.6,0,2-0.3,2-1C133.1,16.5,132.6,16.2,132.1,16.2z"/>
52
+ <path class="st1" d="M145.9,23.1c0.9,0,1.4,0.8,1.4,1.6c0,1.5-2,1.6-3.1,1.6c-4.4,0-4.5-4.6-4.5-7.9c-1.1,0-2.1-0.1-2.1-1.5
53
+ s1-1.6,2.1-1.6c0-1.6,0-2.2,0.2-3.8c0.1-0.9,0.7-1.5,1.6-1.5s1.5,0.6,1.5,1.5c0,1.6-0.2,2.1-0.2,3.7c1.3,0,3.7-0.6,3.7,1.3
54
+ c0,2-2.3,1.7-3.6,1.8c0,1.4-0.4,4.9,1.6,4.9C145,23.2,145.5,23.1,145.9,23.1z"/>
55
+ <path class="st1" d="M156.7,23.1c0.9,0,1.4,0.8,1.4,1.6c0,1.5-2,1.6-3.1,1.6c-4.4,0-4.5-4.6-4.5-7.9c-1.1,0-2.1-0.1-2.1-1.5
56
+ s1-1.6,2.1-1.6c0-1.6,0-2.2,0.2-3.8c0.1-0.9,0.7-1.5,1.6-1.5s1.5,0.6,1.5,1.5c0,1.6-0.2,2.1-0.2,3.7c1.3,0,3.7-0.6,3.7,1.3
57
+ c0,2-2.3,1.7-3.6,1.8c0,1.4-0.4,4.9,1.6,4.9C155.7,23.2,156.2,23.1,156.7,23.1z"/>
58
+ <path class="st1" d="M164.7,26.5c-3.5,0-5.4-3.6-5.4-6.7c0-3.3,2-6.5,5.6-6.5c2.1,0,4,1.5,4,3.8c0,2.7-2.7,4.1-5.1,4.1
59
+ c-0.4,0-0.9,0-1.3-0.1c0.1,1.3,0.8,2.5,2.3,2.5c1.7,0,1.6-1.9,3-1.9c0.8,0,1.6,0.7,1.6,1.5C169.4,25,166.3,26.5,164.7,26.5z
60
+ M164.8,16.2c-0.8,0-1.9,1-2.2,1.7c0.4,0.1,0.8,0.1,1.1,0.1c0.6,0,2-0.3,2-1C165.8,16.5,165.3,16.2,164.8,16.2z"/>
61
+ <path class="st1" d="M178.6,14.4c0,2.1-2.2,0.9-3.9,2.7c-1.1,1.2-1,1.7-1,3.4c0,1.5,0,3,0,4.4c0,0.9-0.6,1.5-1.6,1.5
62
+ s-1.5-0.6-1.5-1.5c-0.1-2.1,0-4.3,0-6.4V14c0-0.9,0.6-1.5,1.5-1.5c0.8,0,1.5,0.6,1.6,1.4c1-0.7,2.2-1.1,3.5-1.1
63
+ C178,12.8,178.6,13.5,178.6,14.4z"/>
64
+ <path class="st1" d="M184.4,21.4c-1.9-1-4.8-2.1-4.8-4.7s2.7-3.8,4.9-3.8c1.2,0,4.1,0.4,4.1,2c0,0.8-0.7,1.6-1.5,1.6
65
+ s-1.6-0.5-2.5-0.5c-0.4,0-1.9,0.1-1.9,0.8c0,1.4,6.2,2.1,6.2,6.4c0,2.5-2.5,3.4-4.6,3.4c-1.4,0-4.1,0.1-4.1-1.8
66
+ c0-0.9,0.7-1.5,1.6-1.5c0.8,0,1.5,0.3,2.3,0.3C186.1,23.4,186.4,22.4,184.4,21.4z"/>
67
+ <g>
68
+ <path class="st1" d="M98.21,26.2c-1.09,0.01-1.84-1.24-2.24-2.1c-0.45,0.92-1.38,2.21-2.5,2.22c-1.78,0.02-1.84-2.29-1.85-3.55
69
+ c-0.01-0.96,0.04-1.92,0.15-2.88c0.06-0.48,0.3-0.87,0.83-0.87c0.41,0,0.88,0.33,0.88,0.76c0.01,0.98-0.15,1.98-0.13,2.99
70
+ c0.02,2.03,0.44,2.03,1.25,0.19c0.22-0.49,0.37-1.01,0.43-1.48c0.05-0.5,0.3-0.84,0.85-0.85c0.41,0,0.69,0.23,0.82,0.6
71
+ c0.1,0.28,0.33,0.92,0.59,1.57c0.95,2.33,1.56,1.43,1.33-0.42c-0.09-0.95-0.35-1.89-0.36-2.81c-0.01-1.13,1.49-1.23,1.66-0.31
72
+ c0.22,1.16,0.41,2.41,0.42,3.59C100.36,24.16,99.88,26.18,98.21,26.2z"/>
73
+ </g>
74
+ <g>
75
+ <path class="st1" d="M7.65,11.55c2.56-0.4,4.86-1.41,6.77-3.15c0.51-0.49,1.11-1.09,1.87-1.02c0.09,0-0.28,1.19-0.32,1.28
76
+ c-0.21,0.51-0.49,0.96-0.77,1.41c-0.55,0.81-1.17,1.58-1.62,2.45c-0.53,1-0.79,2.15-0.32,3.22c0.85-1.87,1.7-3.73,2.56-5.6
77
+ c0.3-0.66,0.62-1.36,1.11-1.9c0.47-0.55,1.19-0.96,1.92-0.92c1.06,0.06,1.85,1.02,2.9,1.28c1.11,0.28,2.22-0.28,3.34-0.34
78
+ c1.24-0.06,2.47,0.45,3.41,1.28c0.94,0.83,1.58,1.94,2.02,3.11c1.15,3.02,1,6.52-0.43,9.39c-1.43,2.88-4.11,5.15-7.2,6.07
79
+ c-3.19,0.96-6.79,0.45-9.65-1.26c-2.85-1.73-4.96-4.62-5.77-7.88c-0.23-1-0.17-2.07-0.38-3.07c-0.17-0.85-1.17-1.85-1.68-2.6
80
+ c-0.13-0.19-0.26-0.38-0.28-0.62c-0.02-0.62,0.62-0.85,1.13-0.94C6.74,11.68,7.21,11.61,7.65,11.55z"/>
81
+
82
+ <linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="27.6594" y1="6.95" x2="10.728" y2="28.621" gradientTransform="matrix(1 0 0 -1 0 36)">
83
+ <stop offset="1.491781e-07" style="stop-color:#7611CC"/>
84
+ <stop offset="1" style="stop-color:#E17FFF"/>
85
+ </linearGradient>
86
+ <path class="st2" d="M27.4,29.23c-3.37,2.34-7.18,2.9-10.82,2.24c-3.64-0.55-7.01-2.24-10.27-4.2c-1.41-0.83-2.98-1.77-4.11-3.26
87
+ c-1.21-1.49-1.96-3.64-1.68-5.88c0.19-1.49,0.94-2.98,1.87-4.11c1.41-1.49,3.37-2.62,5.22-1.3c0.55,0.38,0.94,0.83,1.21,1.41
88
+ c0.28,0.66,0.28,1.41,0.28,2.15c0,2.51,0.19,5.49,2.04,7.37c0.83,0.83,1.77,1.21,2.79,1.21c1.41,0,2.79-0.83,3.26-2.24
89
+ c0.83,1.49,2.62,2.34,4.2,2.34c1.13,0,2.15-0.38,2.79-1.3c2.04-2.9,2.62-7.28,1.58-12.42c-0.09-0.38-0.28-0.75-0.66-0.75h-2.17
90
+ c-0.38,0-0.75,0.28-0.66,0.66c1.13,3.37,1.3,11.01-1.13,11.01s-2.6-7.6-1.38-11.05c0.19-0.38-0.28-0.66-0.66-0.66h-2.04
91
+ c-0.38,0-0.55,0.28-0.66,0.75c-0.55,2.7-0.47,5.41-0.17,7.65c0.28,2.04-0.47,3.26-2.04,3.26c-0.66,0-1.02-0.55-1.3-1.13
92
+ c-0.66-1.49-0.66-3.37-0.66-4.94c0-0.94,0.09-1.87,0.28-2.79c0.55-3.37,3.26-5.79,5.96-7.45c0.75-0.47,1.49-0.83,2.24-1.21
93
+ c0.75-0.38,1.49-0.75,2.34-1.02c0.19-0.09,0.38-0.09,0.47-0.09c3.09-0.75,6.35,0.66,8.39,3.45c1.02,1.41,1.68,3.09,2.04,4.94
94
+ C35.43,18.68,32.17,25.95,27.4,29.23z"/>
95
+ </g>
96
+ </svg>
@@ -0,0 +1,141 @@
1
+ /* Ad placement preview: injects labelled dummy slots only (included via _includes/home/ad-preview.html). */
2
+ (function () {
3
+ 'use strict';
4
+ var d = document;
5
+ var $ = function (s, c) { return (c || d).querySelector(s); };
6
+ var $$ = function (s, c) { return Array.prototype.slice.call((c || d).querySelectorAll(s)); };
7
+
8
+ /* tier: a = top earner, b = strong, c = fill. sizes are IAB standards; "r" = responsive (swaps size on phones) */
9
+ var SIZES = { lb: '970×90', bb: '970×250', mr: '300×250', lb2: '728×90', rail: '160×600', anchor: '728×90' };
10
+ var TIER = { a: 'Top earner', b: 'Strong', c: 'Fill' };
11
+ var PHONE = { lb: '320×100', bb: '300×250', mr: '300×250', lb2: '320×100', rail: '160×600', anchor: '320×50' };
12
+ var phone = window.matchMedia('(max-width: 767.98px)');
13
+ var n = 0;
14
+ function syncSizes() {
15
+ $$('.wg-adprev__size').forEach(function (b) { b.textContent = (phone.matches ? PHONE : SIZES)[b.getAttribute('data-size')]; });
16
+ }
17
+ (phone.addEventListener ? phone.addEventListener('change', syncSizes) : phone.addListener(syncSizes));
18
+
19
+ function slot(kind, tier, name, why) {
20
+ var el = d.createElement('div');
21
+ el.className = 'wg-adprev wg-adprev--' + kind + ' wg-adprev--' + tier;
22
+ el.setAttribute('role', 'complementary');
23
+ el.setAttribute('aria-label', 'Advertisement placeholder: ' + name);
24
+ el.dataset.tier = tier;
25
+ el.innerHTML = '<span class="wg-adprev__tag">AD</span>' +
26
+ '<span class="wg-adprev__tier">' + TIER[tier] + '</span>' +
27
+ '<b class="wg-adprev__size" data-size="' + kind + '">' + SIZES[kind] + '</b>' +
28
+ '<span class="wg-adprev__name">' + name + '</span>' +
29
+ '<small class="wg-adprev__why">' + why + '</small>';
30
+ n++;
31
+ return el;
32
+ }
33
+ function pair(tier, name, why) {
34
+ var w = d.createElement('div');
35
+ w.className = 'wg-adprev-pair';
36
+ w.appendChild(slot('mr', tier, name + ' (1)', why));
37
+ w.appendChild(slot('mr', tier, name + ' (2)', why));
38
+ return w;
39
+ }
40
+ function after(ref, el) { if (ref && ref.parentNode) ref.parentNode.insertBefore(el, ref.nextSibling); }
41
+ function before(ref, el) { if (ref && ref.parentNode) ref.parentNode.insertBefore(el, ref); }
42
+
43
+ d.documentElement.classList.add('wg-adpreview');
44
+
45
+ /* ---- home page ---- */
46
+ after($('.wg-hero'), slot('lb', 'a', 'Below the tool', 'First screen after the user acts: highest viewability'));
47
+ var groups = $$('#games .wg-group');
48
+ after(groups[0], slot('bb', 'a', 'Between game groups 1', 'Large billboard in a scrolling feed'));
49
+ after(groups[1], slot('lb2', 'b', 'Between game groups 2', 'Natural break between LinkedIn and more games'));
50
+ after($('#solvers'), slot('lb2', 'b', 'After popular solvers', 'Users deciding where to go next'));
51
+ after($('.wg-page'), slot('bb', 'c', 'After the page sections', 'End of the app-like part of the page'));
52
+ after($('#featureContainer'), pair('b', 'Inside features / SEO text', 'Readers stay long here: 300×250 pair'));
53
+ var faqs = $$('#faqsContainer .faqs > details');
54
+ if (faqs[7]) after(faqs[7], (function () { var s = slot('lb2', 'b', 'Inside the FAQ list', 'Spans both columns after the 8th question'); s.classList.add('wg-adprev--span'); return s; })());
55
+ after($('.rating-tool'), slot('bb', 'c', 'Before recent posts', 'Billboard between content blocks'));
56
+ before($('.wg-footer'), slot('lb2', 'c', 'Above the footer', 'Last chance before the user leaves'));
57
+
58
+ /* sticky rails (only when the viewport is wide enough) */
59
+ var l = slot('rail', 'b', 'Left rail', 'Sticky, only ≥1560px wide'); l.classList.add('wg-adprev--left');
60
+ var r = slot('rail', 'b', 'Right rail', 'Sticky, only ≥1560px wide'); r.classList.add('wg-adprev--right');
61
+ d.body.appendChild(l); d.body.appendChild(r);
62
+
63
+ /* sticky bottom anchor, dismissible */
64
+ var anchor = slot('anchor', 'a', 'Sticky bottom anchor', 'Always in view; 320×50 on phones');
65
+ anchor.classList.add('wg-adprev--anchor');
66
+ var x = d.createElement('button');
67
+ x.type = 'button'; x.className = 'wg-adprev__x'; x.setAttribute('aria-label', 'Close ad'); x.textContent = '×';
68
+ x.addEventListener('click', function () { anchor.hidden = true; });
69
+ anchor.appendChild(x);
70
+ d.body.appendChild(anchor);
71
+
72
+ /* ---- results page: slots inside the word list once it renders ---- */
73
+ var main = $('#containerWd .main') || $('.main');
74
+ if (main) {
75
+ var timer;
76
+ var obs;
77
+ var place = function () {
78
+ var gs = $$('.allGroupWords', main);
79
+ $$('.wg-adprev', main).forEach(function (e) { e.remove(); });
80
+ if (!gs.length) return;
81
+ before(gs[0], slot('lb2', 'a', 'Top of results', 'Right under "Found N words": every user sees it'));
82
+ after(gs[0], slot('lb2', 'a', 'After first word group', 'Users are scanning words: in-list unit'));
83
+ if (gs[2]) after(gs[2], slot('mr', 'b', 'After third word group', 'Deep-scroll in-list unit'));
84
+ after(gs[gs.length - 1], slot('bb', 'b', 'End of results', 'Users who reached the end'));
85
+ if (obs) obs.takeRecords(); /* ignore the mutations we just made */
86
+ refresh();
87
+ syncSizes();
88
+ };
89
+ /* word groups render one by one: wait until the list stops changing, then place the slots */
90
+ obs = new MutationObserver(function () { clearTimeout(timer); timer = setTimeout(place, 350); });
91
+ obs.observe(main, { childList: true });
92
+ place();
93
+ }
94
+
95
+ /* ---- legend / filter panel ---- */
96
+ var panel = d.createElement('aside');
97
+ panel.className = 'wg-adprev-panel is-min';
98
+ panel.innerHTML = '<div class="wg-adprev-panel__head"><b>Ad placement preview</b><button type="button" class="wg-adprev-panel__min" aria-label="Minimise">–</button></div>' +
99
+ '<div class="wg-adprev-panel__body">' +
100
+ '<p>Dummy slots only. Nothing here loads a real ad.</p>' +
101
+ '<label class="wg-adprev-key wg-adprev-key--a"><input type="checkbox" data-t="a" checked><i></i> Top earner <span data-c="a"></span></label>' +
102
+ '<label class="wg-adprev-key wg-adprev-key--b"><input type="checkbox" data-t="b" checked><i></i> Strong <span data-c="b"></span></label>' +
103
+ '<label class="wg-adprev-key wg-adprev-key--c"><input type="checkbox" data-t="c" checked><i></i> Fill <span data-c="c"></span></label>' +
104
+ '</div>';
105
+ d.body.appendChild(panel);
106
+
107
+ function refresh() {
108
+ ['a', 'b', 'c'].forEach(function (t) {
109
+ var c = panel.querySelector('[data-c="' + t + '"]');
110
+ if (c) c.textContent = '(' + $$('.wg-adprev[data-tier="' + t + '"]').filter(function (e) { return !e.classList.contains('wg-adprev--left') && !e.classList.contains('wg-adprev--right') || t; }).length + ')';
111
+ });
112
+ }
113
+ panel.addEventListener('change', function (e) {
114
+ var t = e.target.getAttribute('data-t');
115
+ if (!t) return;
116
+ d.documentElement.classList.toggle('wg-adprev-hide-' + t, !e.target.checked);
117
+ });
118
+ panel.querySelector('.wg-adprev-panel__min').addEventListener('click', function () { panel.classList.toggle('is-min'); });
119
+ /* footer switch: hide / show every dummy slot (remembered) */
120
+ var bar = $('.footer-bottom');
121
+ if (bar) {
122
+ var sw = d.createElement('button');
123
+ sw.type = 'button';
124
+ sw.className = 'wg-adsw';
125
+ sw.setAttribute('role', 'switch');
126
+ sw.innerHTML = '<span class="wg-adsw__track"><i></i></span><span class="wg-adsw__txt">Ads preview</span>';
127
+ var set = function (on, save) {
128
+ d.documentElement.classList.toggle('wg-adprev-off', !on);
129
+ sw.setAttribute('aria-checked', on);
130
+ sw.querySelector('.wg-adsw__txt').textContent = on ? 'Ads: shown' : 'Ads: hidden';
131
+ if (save) { try { localStorage.setItem('wg-adprev-on', on ? '1' : '0'); } catch (e) { } }
132
+ };
133
+ var saved = '1';
134
+ try { saved = localStorage.getItem('wg-adprev-on') || '1'; } catch (e) { }
135
+ set(saved !== '0', false);
136
+ sw.addEventListener('click', function () { set(sw.getAttribute('aria-checked') !== 'true', true); });
137
+ bar.appendChild(sw);
138
+ }
139
+ refresh();
140
+ syncSizes();
141
+ })();