@mideind/netskrafl-react 1.0.0-beta.5 → 1.0.0-beta.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.
@@ -2,14 +2,13 @@
2
2
  @import url('https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,400;0,700;1,400;1,700&display=swap');
3
3
  @import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0,700;1,400;1,700&display=swap');
4
4
  @import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap');
5
-
6
5
  /*
7
6
 
8
7
  Glyphs.css
9
8
 
10
9
  Style support for Glyphicons
11
10
 
12
- Copyright © 2024 Miðeind ehf.
11
+ Copyright © 2025 Miðeind ehf.
13
12
  Author: Vilhjalmur Thorsteinsson
14
13
 
15
14
  The Creative Commons Attribution-NonCommercial 4.0
@@ -17,16 +16,13 @@
17
16
  For further information, see https://github.com/mideind/Netskrafl
18
17
 
19
18
  */
20
-
21
19
  @font-face {
22
20
  font-family: 'Glyphicons Regular';
23
- /* The following source URLs are patched up at run-time
24
- to point to the backend server */
25
- src: url('../fonts/glyphicons-regular.eot') format('embedded-opentype'),
26
- url('../fonts/glyphicons-regular.woff') format('woff'),
27
- url('../fonts/glyphicons-regular.ttf') format('truetype');
21
+ /* The following source URLs are assumed to be present on the host */
22
+ src: url('/static/fonts/glyphicons-regular.eot') format('embedded-opentype'),
23
+ url('/static/fonts/glyphicons-regular.woff') format('woff'),
24
+ url('/static/fonts/glyphicons-regular.ttf') format('truetype');
28
25
  }
29
-
30
26
  .glyphicon {
31
27
  position: relative;
32
28
  top: 2px;
@@ -36,7 +32,6 @@
36
32
  font-weight: normal;
37
33
  line-height: 1;
38
34
  }
39
-
40
35
  .glyphicon-play:before {
41
36
  content: "\E174";
42
37
  }
@@ -226,53 +221,67 @@
226
221
  .glyphicon-right-arrow:before {
227
222
  content: "\E212";
228
223
  }
229
-
230
-
231
224
  /*
232
225
 
233
- Skrafl-explo.css
226
+ Skrafl-explo.css
234
227
 
235
- Explo theme template for netskrafl.is
228
+ Explo theme template for netskrafl.is
236
229
 
237
- Copyright © 2025 Miðeind ehf.
238
- Author: Vilhjalmur Thorsteinsson
230
+ Copyright © 2025 Miðeind ehf.
231
+ Author: Vilhjalmur Thorsteinsson
239
232
 
240
- The Creative Commons Attribution-NonCommercial 4.0
241
- International Public License (CC-BY-NC 4.0) applies to this software.
242
- For further information, see https://github.com/mideind/Netskrafl
233
+ The Creative Commons Attribution-NonCommercial 4.0
234
+ International Public License (CC-BY-NC 4.0) applies to this software.
235
+ For further information, see https://github.com/mideind/Netskrafl
243
236
 
237
+ */
238
+ /*
244
239
  */
245
240
  div.netskrafl-container {
246
- --container-bg-color: #f8f8f8;
241
+ --logo-primary: #C94314;
242
+ --logo-secondary: #FFAA88;
243
+ --logo-accent: #F17736;
244
+ --svarkur-primary: #066960;
245
+ --svarkur-secondary: #0a574f;
246
+ --svarkur-accent: #008b7c;
247
+ --malfridur-primary: #FF7C24;
248
+ --malfridur-secondary: #ffb400;
249
+ --malfridur-accent: #0788C0;
250
+ --malfridur-green: #09814A;
247
251
  --dark-bg-color: #222222;
252
+ --light-shadow: #666666;
253
+ --blank-tile: #999999;
254
+ --middle-shadow: #cccccc;
255
+ --container-bg-color: #f8f8f8;
248
256
  --light-header-color: #eaf5f7;
249
- --header-hover-color: #59b2c0;
257
+ --header-color: hsl(from var(--malfridur-accent) h 50% 60%);
258
+ --header-hover-color: hsl(from var(--malfridur-accent) h 50% 70%);
259
+ --humangrad-color: hsl(from var(--malfridur-accent) h 55% 65%);
260
+ --stats-foreground: hsl(from var(--malfridur-accent) h 45% 45%);
250
261
  --link-hover-color: #006db8;
251
- --double-word-color: #f8D992;
252
- --triple-word-color: #F9B32D;
253
- --double-letter-color: #9ED5DA;
254
- --triple-letter-color: #21A4B6;
255
- --tile-background: #F9E5E6;
262
+ --double-word-color: hsl(from var(--malfridur-secondary) h 85% 80%); /* #f8D992; */
263
+ --triple-word-color: hsl(from var(--malfridur-secondary) h 90% 55%); /* #F9B32D; */
264
+ --double-letter-color: hsl(from var(--svarkur-accent) h 55% 65%); /* #9ED5DA; */
265
+ --triple-letter-color: hsl(from var(--svarkur-secondary) h 70% 40%); /* #21A4B6; */
266
+ --chat-background: hsl(from var(--malfridur-secondary) h 65% 92%);
267
+ --ok-button: var(--malfridur-green);
268
+ --cancel-button: hsl(from var(--logo-primary) h 45% 55%); /* #B6676D; */
269
+ --human-color: hsl(from var(--svarkur-secondary) h s 35%); /* #208C9F; */
270
+ --list-header-background: hsl(from var(--malfridur-secondary) h 85% 90%); /* #fff1d0; */
271
+ --list-header-bottom: hsl(from var(--malfridur-secondary) h 90% 55%); /* #ffc559; */
272
+ --tile-background: hsl(from var(--logo-secondary) h 70% 92%);
256
273
  --board-background: #E4EAF0;
257
274
  --tab-background: #f3f3f6;
258
275
  --header-background: #dde1e4;
259
- --ok-button: #72a55f;
260
- --cancel-button: #B6676D;
261
- --two-letter-background: #D8E3D2;
276
+ --two-letter-background: hsl(from var(--malfridur-green) h 20% 90%);
277
+ --header-green: hsl(from var(--malfridur-green) h 80% 35%);
262
278
  --dark-shadow: rgba(0, 0, 0, 0.5);
263
- --light-shadow: #666666;
264
279
  --rack-shadow: #afb7cad0;
265
280
  --focus-border: var(--triple-word-color);
266
281
  --light-background: #B9D9DC;
267
- --stats-foreground: #197d8b;
268
- --human-color: #208C9F;
269
- --blank-tile: #999999;
270
- --list-header-background: #fff1d0;
271
- --list-header-bottom: #ffc559;
272
282
  --primary-font: 'Lato', 'Open Sans', 'Arial', sans-serif;
273
283
  --number-font: 'Open Sans', 'Lato', 'Arial', sans-serif;
274
284
  }
275
-
276
285
  div.netskrafl-container {
277
286
  position: relative;
278
287
  top: 0;
@@ -296,11 +305,17 @@ div.netskrafl-container ol, div.netskrafl-container ul {
296
305
  }
297
306
  div.netskrafl-container h1,
298
307
  div.netskrafl-container h2,
299
- div.netskrafl-container h3
300
- {
308
+ div.netskrafl-container h3 {
301
309
  font-size: revert;
302
310
  font-weight: revert;
303
311
  }
312
+ body div.netskrafl-loading,
313
+ body div.netskrafl-user {
314
+ display: none;
315
+ }
316
+ div.netskrafl-container div.netskrafl-user {
317
+ display: block;
318
+ }
304
319
  div#board-background {
305
320
  height: 100%;
306
321
  }
@@ -421,36 +436,22 @@ p a img {
421
436
  .ui-widget-header a {
422
437
  color: var(--light-header-color);
423
438
  }
424
- .ui-state-default,
425
- .ui-widget-content .ui-state-default {
426
- background-color: #afb8bf;
427
- font-weight: bold;
428
- color: #ffffff;
429
- }
430
- .ui-widget-header .ui-state-default {
431
- background-color: #a9d0d6;
439
+ .ui-state-default {
440
+ background-color: var(--header-color);
432
441
  font-weight: bold;
433
- color: #ffffff;
442
+ color: white;
434
443
  }
435
444
  .ui-state-default a,
436
445
  .ui-state-default a:link,
437
446
  .ui-state-default a:visited {
438
- color: #ffffff;
447
+ color: white;
439
448
  text-decoration: none;
440
449
  }
441
450
  .ui-state-hover,
442
- .ui-widget-content .ui-state-hover,
443
- .ui-state-focus,
444
- .ui-widget-content .ui-state-focus {
445
- background-color: var(--header-hover-color);
446
- font-weight: bold;
447
- color: #ffffff;
448
- }
449
- .ui-widget-header .ui-state-hover,
450
- .ui-widget-header .ui-state-focus {
451
+ .ui-state-focus {
451
452
  background-color: var(--header-hover-color);
452
453
  font-weight: bold;
453
- color: #ffffff;
454
+ color: white;
454
455
  }
455
456
  .ui-state-hover a,
456
457
  .ui-state-hover a:hover,
@@ -460,49 +461,30 @@ p a img {
460
461
  .ui-state-focus a:hover,
461
462
  .ui-state-focus a:link,
462
463
  .ui-state-focus a:visited {
463
- color: var(--link-hover-color);
464
- text-decoration: none;
465
- }
466
- .ui-widget-header .ui-state-hover a,
467
- .ui-widget-header .ui-state-hover a:hover,
468
- .ui-widget-header .ui-state-hover a:link,
469
- .ui-widget-header .ui-state-hover a:visited,
470
- .ui-widget-header .ui-state-focus a,
471
- .ui-widget-header .ui-state-focus a:hover,
472
- .ui-widget-header .ui-state-focus a:link,
473
- .ui-widget-header .ui-state-focus a:visited {
474
- color: #ffffff;
475
- /* Pantone 300 U */
476
- /* #026890; */
464
+ color: white;
477
465
  text-decoration: none;
478
466
  }
479
- .ui-widget-header .ui-state-focus a:focus {
467
+ .ui-state-focus a:focus {
480
468
  outline: 0;
481
469
  }
482
470
  .ui-state-active,
483
471
  .ui-widget-content .ui-state-active {
484
472
  background-color: var(--container-bg-color);
485
473
  font-weight: bold;
486
- color: #000000;
487
- /* #ffffff; */
474
+ color: black;
475
+ /* white; */
488
476
  }
489
477
  .ui-widget-header .ui-state-active {
490
478
  background-color: var(--container-bg-color);
491
479
  font-weight: bold;
492
- color: #000000;
493
- /* #ffffff; */
480
+ color: black;
481
+ /* white; */
494
482
  }
495
483
  .ui-state-active a,
496
484
  .ui-state-active a:link,
485
+ .ui-state-active a:hover,
497
486
  .ui-state-active a:visited {
498
- color: var(--container-bg-color);
499
- text-decoration: none;
500
- }
501
- .ui-widget-header .ui-state-active a,
502
- .ui-widget-header .ui-state-active a:link,
503
- .ui-widget-header .ui-state-active a:hover,
504
- .ui-widget-header .ui-state-active a:visited {
505
- color: #000000;
487
+ color: black;
506
488
  text-decoration: none;
507
489
  }
508
490
  .ui-corner-all,
@@ -584,6 +566,13 @@ div.logo {
584
566
  div.logo:hover {
585
567
  animation: expand 0.4s;
586
568
  }
569
+ div.netskrafl-logo {
570
+ display: flex;
571
+ align-items: center;
572
+ justify-content: center;
573
+ width: 32px;
574
+ height: 32px;
575
+ }
587
576
  div.rightcol {
588
577
  position: relative;
589
578
  width: 362px;
@@ -847,7 +836,7 @@ div.tile.dragging {
847
836
  becomes a child of the document body element when dragging, and
848
837
  the style variables are not in scope at the body level. */
849
838
  box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.2);
850
- border-color: #72a55f;
839
+ border-color: #09814A; /* var(--ok-button); */
851
840
  border-radius: 5px;
852
841
  border-width: 3px;
853
842
  border-style: solid;
@@ -864,7 +853,7 @@ div.tile.dragging {
864
853
  box-sizing: content-box;
865
854
  }
866
855
  div.tile.dragging.no-drop {
867
- border-color: #B6676D;
856
+ border-color: #c07359; /* var(--cancel-button); */
868
857
  }
869
858
  .board td {
870
859
  min-width: 21px;
@@ -963,7 +952,7 @@ div.word-check {
963
952
  line-height: 42px;
964
953
  visibility: hidden;
965
954
  border: 1.5px solid;
966
- border-radius: 4px;
955
+ border-radius: 5px;
967
956
  }
968
957
  div.score {
969
958
  display: none;
@@ -980,7 +969,7 @@ div.score {
980
969
  line-height: 42px;
981
970
  color: var(--blank-tile);
982
971
  border: 1.5px solid;
983
- border-radius: 4px;
972
+ border-radius: 5px;
984
973
  border-color: var(--blank-tile);
985
974
  }
986
975
  .standard-button {
@@ -1159,7 +1148,7 @@ div.scramblebtn {
1159
1148
  cursor: pointer;
1160
1149
  width: 33px;
1161
1150
  height: 26px;
1162
- background-color: var(--double-letter-color);
1151
+ background-color: var(--malfridur-accent);
1163
1152
  display: none;
1164
1153
  }
1165
1154
  div.rack-left div.scramblebtn {
@@ -1187,8 +1176,8 @@ div.buttons .glyphicon {
1187
1176
  position: absolute;
1188
1177
  top: 0;
1189
1178
  padding-top: 8px;
1190
- background-color: #fcfcfc;
1191
- border: 1.5px solid #dddddd;
1179
+ background-color: var(--tab-background);
1180
+ border: 1.5px solid var(--header-background);
1192
1181
  width: 66px;
1193
1182
  height: 23px;
1194
1183
  }
@@ -1204,8 +1193,8 @@ div.submitresign {
1204
1193
  position: absolute;
1205
1194
  top: 0;
1206
1195
  padding-top: 8px;
1207
- background-color: #fcfcfc;
1208
- border: 1.5px solid #dddddd;
1196
+ background-color: var(--tab-background);
1197
+ border: 1.5px solid var(--header-background);
1209
1198
  width: 66px;
1210
1199
  height: 23px;
1211
1200
  color: var(--cancel-button);
@@ -1224,14 +1213,14 @@ div.submitexchange {
1224
1213
  top: 0;
1225
1214
  left: 93px;
1226
1215
  padding-top: 8px;
1227
- background-color: #fcfcfc;
1228
- border: 1.5px solid #dddddd;
1216
+ background-color: var(--tab-background);
1217
+ border: 1.5px solid var(--header-background);
1229
1218
  width: 66px;
1230
1219
  height: 23px;
1231
1220
  color: var(--ok-button);
1232
1221
  }
1233
1222
  div.submitexchange.disabled {
1234
- color: #888888;
1223
+ color: var(--blank-tile);
1235
1224
  }
1236
1225
  div.submitpass {
1237
1226
  text-align: center;
@@ -1245,8 +1234,8 @@ div.submitpass {
1245
1234
  position: absolute;
1246
1235
  top: 0;
1247
1236
  padding-top: 8px;
1248
- background-color: #fcfcfc;
1249
- border: 1.5px solid #dddddd;
1237
+ background-color: var(--tab-background);
1238
+ border: 1.5px solid var(--header-background);
1250
1239
  width: 66px;
1251
1240
  height: 23px;
1252
1241
  color: var(--triple-word-color);
@@ -1264,8 +1253,8 @@ div.challenge {
1264
1253
  position: absolute;
1265
1254
  top: 0;
1266
1255
  padding-top: 8px;
1267
- background-color: var(--container-bg-color);
1268
- border: 1.5px solid #dddddd;
1256
+ background-color: var(--tab-background);
1257
+ border: 1.5px solid var(--header-background);
1269
1258
  width: 66px;
1270
1259
  height: 23px;
1271
1260
  left: 279px;
@@ -1350,7 +1339,7 @@ div.robot-btn {
1350
1339
  position: absolute;
1351
1340
  margin-left: 0px;
1352
1341
  margin-right: 2px;
1353
- padding-top: 3px;
1342
+ padding-top: 4px;
1354
1343
  height: 30px;
1355
1344
  min-height: 30px;
1356
1345
  line-height: 22px;
@@ -1370,9 +1359,9 @@ div.gamestats div.robot-btn {
1370
1359
  div.player-btn {
1371
1360
  display: block;
1372
1361
  position: absolute;
1373
- margin-left: 2px;
1374
- margin-right: 2px;
1375
- padding-top: 3px;
1362
+ margin-left: 4px;
1363
+ margin-right: 4px;
1364
+ padding-top: 4px;
1376
1365
  height: 30px;
1377
1366
  min-height: 30px;
1378
1367
  line-height: 22px;
@@ -1620,7 +1609,7 @@ div.right-tab#tab-games {
1620
1609
  }
1621
1610
  div.right-tab#tab-chat {
1622
1611
  left: 301px;
1623
- background-color: #F7F0DE;
1612
+ background-color: var(--chat-background);
1624
1613
  }
1625
1614
  div.right-tab.selected {
1626
1615
  opacity: 1;
@@ -1713,7 +1702,7 @@ div.modal-dialog#spinner-dialog {
1713
1702
  }
1714
1703
  div.animated-spinner {
1715
1704
  position: absolute;
1716
- left: 141.5px;
1705
+ left: 50%;
1717
1706
  top: 271.5px;
1718
1707
  }
1719
1708
  svg circle.shadow {
@@ -1812,9 +1801,11 @@ div.error {
1812
1801
  cursor: pointer;
1813
1802
  }
1814
1803
  div.opp-turn {
1815
- display: block;
1804
+ display: inline-block;
1816
1805
  padding-top: 10px;
1817
- width: 246px;
1806
+ padding-left: 10px;
1807
+ width: 220px;
1808
+ text-align: right;
1818
1809
  }
1819
1810
  div.opp-turn.flashing {
1820
1811
  color: var(--cancel-button);
@@ -2065,27 +2056,21 @@ div.submitmove#move-mobile span.glyphicon {
2065
2056
  margin-top: 2px;
2066
2057
  }
2067
2058
  div.force-resign {
2068
- font-size: 18px;
2069
- font-weight: 700;
2059
+ display: inline-flex;
2060
+ flex-direction: column;
2061
+ align-items: center;
2062
+ justify-content: center;
2063
+ font-weight: normal;
2064
+ font-size: 13px;
2070
2065
  margin: 0;
2071
2066
  padding: 6px;
2072
- padding-top: 9px;
2073
- border-radius: 5px;
2074
2067
  cursor: pointer;
2075
- width: 32px;
2076
2068
  height: 26px;
2077
- background-color: var(--ok-button);
2078
- display: block;
2079
- float: right;
2080
- padding-top: 3px;
2081
- padding-bottom: 12px;
2069
+ width: 122px;
2082
2070
  margin-right: 1px;
2083
- width: 96px;
2084
- text-align: center;
2085
- font-weight: normal;
2086
- font-size: 13px;
2087
2071
  color: white;
2088
2072
  background-color: var(--cancel-button);
2073
+ border-radius: 5px;
2089
2074
  }
2090
2075
  div.gameinfo {
2091
2076
  position: absolute;
@@ -2113,6 +2098,7 @@ div.gameinfo {
2113
2098
  padding-top: 10px;
2114
2099
  }
2115
2100
  input.chat-txt {
2101
+ box-sizing: border-box;
2116
2102
  font-family: var(--primary-font);
2117
2103
  width: 276px;
2118
2104
  font-size: 18px;
@@ -2128,6 +2114,13 @@ input.chat-txt {
2128
2114
  padding-left: 6px;
2129
2115
  padding-right: 6px;
2130
2116
  }
2117
+ input.chat-txt:focus {
2118
+ border-color: var(--ok-button);
2119
+ border-width: 2px;
2120
+ padding-left: 5px;
2121
+ padding-right: 5px;
2122
+ outline-style: none;
2123
+ }
2131
2124
  div.chat-area {
2132
2125
  position: absolute;
2133
2126
  top: 6px;
@@ -2148,7 +2141,7 @@ div.modal-close#chat-send {
2148
2141
  margin: 0 0 2px 8px;
2149
2142
  padding-top: 4px;
2150
2143
  padding-bottom: 0;
2151
- background-color: var(--triple-letter-color);
2144
+ background-color: var(--ok-button);
2152
2145
  color: white;
2153
2146
  }
2154
2147
  div.twoletter {
@@ -2223,7 +2216,7 @@ div#main-tabs > div[role=tabpanel] {
2223
2216
  div#main-tabs div.header-logo {
2224
2217
  padding-left: 14px;
2225
2218
  padding-right: 8px;
2226
- padding-top: 7px;
2219
+ padding-top: 12px;
2227
2220
  }
2228
2221
  div#tabs {
2229
2222
  background-color: transparent;
@@ -2250,19 +2243,19 @@ span.list-chall {
2250
2243
  text-overflow: ellipsis;
2251
2244
  }
2252
2245
  span.list-s0 {
2253
- display: inline-block;
2254
2246
  width: 38px;
2255
2247
  max-width: 38px;
2256
2248
  text-align: right;
2249
+ justify-content: flex-end;
2257
2250
  }
2258
2251
  span.list-s1 {
2259
- display: inline-block;
2260
2252
  width: 38px;
2261
2253
  max-width: 38px;
2262
2254
  text-align: left;
2255
+ justify-content: flex-start;
2263
2256
  }
2264
2257
  span.list-colon {
2265
- display: inline-block;
2258
+ justify-content: center;
2266
2259
  text-align: center;
2267
2260
  width: 8px;
2268
2261
  max-width: 8px;
@@ -2307,7 +2300,7 @@ div.tilecount {
2307
2300
  width: 92px;
2308
2301
  min-width: 92px;
2309
2302
  text-align: left;
2310
- background-color: #ffffff;
2303
+ background-color: white;
2311
2304
  border-radius: 6px;
2312
2305
  overflow: hidden;
2313
2306
  }
@@ -3012,7 +3005,7 @@ div.highlight1.dim {
3012
3005
  font-size: 28px;
3013
3006
  line-height: 28px;
3014
3007
  font-weight: 700;
3015
- color: #202020;
3008
+ color: var(--dark-bg-color);
3016
3009
  overflow: hidden;
3017
3010
  margin-top: 4px;
3018
3011
  margin-bottom: 4px;
@@ -3025,7 +3018,7 @@ h3.clockleft {
3025
3018
  font-size: 28px;
3026
3019
  line-height: 28px;
3027
3020
  font-weight: 700;
3028
- color: #202020;
3021
+ color: var(--dark-bg-color);
3029
3022
  overflow: hidden;
3030
3023
  margin-top: 4px;
3031
3024
  margin-bottom: 4px;
@@ -3040,7 +3033,7 @@ h3.clockright {
3040
3033
  font-size: 28px;
3041
3034
  line-height: 28px;
3042
3035
  font-weight: 700;
3043
- color: #202020;
3036
+ color: var(--dark-bg-color);
3044
3037
  overflow: hidden;
3045
3038
  margin-top: 4px;
3046
3039
  margin-bottom: 4px;
@@ -3114,7 +3107,7 @@ div.at-top-left div.tilecount {
3114
3107
  border-radius: 10px;
3115
3108
  border-width: 0;
3116
3109
  overflow: hidden;
3117
- background-color: #ccd5de;
3110
+ background-color: var(--header-background);
3118
3111
  }
3119
3112
  div.at-top-left div.tilecount.trans {
3120
3113
  background-color: transparent;
@@ -3133,7 +3126,7 @@ div.at-top-left div.tilecount div.tc {
3133
3126
  padding-bottom: 2px;
3134
3127
  }
3135
3128
  div.at-top-left div.tilecount div.oc {
3136
- color: #202020;
3129
+ color: var(--dark-bg-color);
3137
3130
  padding-left: 8px;
3138
3131
  margin-left: 0;
3139
3132
  overflow: hidden;
@@ -3144,13 +3137,13 @@ div.at-top-left div.tilecount div.oc {
3144
3137
  padding-bottom: 2px;
3145
3138
  background-color: transparent;
3146
3139
  }
3147
- div.chat {
3140
+ div.chat-container {
3148
3141
  position: absolute;
3149
3142
  top: 0px;
3150
3143
  left: 0px;
3151
3144
  width: 100%;
3152
3145
  height: 466px;
3153
- background-color: #F7F0DE;
3146
+ background-color: var(--chat-background);
3154
3147
  z-index: 1;
3155
3148
  border-radius: 4px 4px 0 0;
3156
3149
  }
@@ -3198,8 +3191,11 @@ div.chat-msg.remote {
3198
3191
  background-color: #F1DBDA;
3199
3192
  }
3200
3193
  div.chat-msg img {
3201
- vertical-align: -10px;
3202
3194
  /* Emoticon alignment to baseline */
3195
+ vertical-align: -10px;
3196
+ display: inline;
3197
+ margin-left: 2px;
3198
+ margin-right: 2px;
3203
3199
  }
3204
3200
  div.chat-input {
3205
3201
  position: absolute;
@@ -3228,7 +3224,7 @@ div.reviewhdr {
3228
3224
  height: 18px;
3229
3225
  text-align: left;
3230
3226
  padding: 11px;
3231
- background-color: var(--ok-button);
3227
+ background-color: var(--human-color);
3232
3228
  color: white;
3233
3229
  font-weight: 400;
3234
3230
  font-size: 18px;
@@ -3269,7 +3265,7 @@ div.gamestats {
3269
3265
  width: 724px;
3270
3266
  height: 580px;
3271
3267
  left: 150px;
3272
- top: 64px;
3268
+ top: 24px;
3273
3269
  padding: 12px;
3274
3270
  border-radius: 5px;
3275
3271
  box-shadow: 3px 3px 5px 2px var(--dark-shadow);
@@ -3278,21 +3274,20 @@ div.statscol {
3278
3274
  display: block;
3279
3275
  float: left;
3280
3276
  width: 50%;
3281
- padding-top: 24px;
3282
3277
  }
3283
3278
  div.statscol p {
3284
- margin-top: 0.85em;
3285
- margin-bottom: 0.8em;
3279
+ margin-top: 0;
3280
+ margin-bottom: 12px;
3286
3281
  }
3287
3282
  div.gamestats p span {
3288
3283
  font-weight: 700;
3289
3284
  }
3290
- div #gamestarted {
3285
+ div#gamestarted {
3291
3286
  width: 100%;
3292
3287
  text-align: center;
3293
3288
  position: relative;
3294
- top: 42px;
3295
- margin-bottom: 24px;
3289
+ margin-top: 16px;
3290
+ margin-bottom: 16px;
3296
3291
  }
3297
3292
  #gamestarted p {
3298
3293
  font-style: italic;
@@ -3307,13 +3302,13 @@ div #gamestarted {
3307
3302
  }
3308
3303
  /* Scores in move list */
3309
3304
  .humangrad_left {
3310
- color: #208C9F;
3305
+ color: var(--human-color);
3311
3306
  }
3312
3307
  .autoplayergrad_right {
3313
3308
  color: var(--cancel-button);
3314
3309
  }
3315
3310
  .humangrad_right {
3316
- color: #208C9F;
3311
+ color: var(--human-color);
3317
3312
  }
3318
3313
  .autoplayergrad_left {
3319
3314
  color: var(--cancel-button);
@@ -3356,16 +3351,16 @@ div.rightmove span.total {
3356
3351
  margin-left: 2px;
3357
3352
  }
3358
3353
  span.total.human {
3359
- background-color: #aad1d4;
3354
+ background-color: var(--human-color);
3360
3355
  }
3361
3356
  div.leftmove span.total.human {
3362
- border-left-color: #208C9F;
3357
+ border-left-color: var(--svarkur-secondary);
3363
3358
  }
3364
3359
  div.rightmove span.total.human {
3365
- border-right-color: #208C9F;
3360
+ border-right-color: var(--svarkur-secondary);
3366
3361
  }
3367
3362
  span.total.autoplayer {
3368
- background-color: #d3c0c7;
3363
+ background-color: var(--cancel-button);
3369
3364
  }
3370
3365
  div.leftmove span.total.autoplayer {
3371
3366
  border-left-color: var(--cancel-button);
@@ -3619,9 +3614,10 @@ div.scorediff {
3619
3614
  font-weight: normal;
3620
3615
  color: white;
3621
3616
  visibility: hidden;
3622
- padding-top: 3px;
3617
+ padding-top: 2px;
3623
3618
  padding-bottom: 2px;
3624
- font-family: 'Open Sans', 'Arial', sans-serif;
3619
+ font-family: var(--number-font);
3620
+ border-radius: 5px;
3625
3621
  }
3626
3622
  div.posdiff {
3627
3623
  background-color: var(--ok-button);
@@ -3641,7 +3637,7 @@ div.navbtn {
3641
3637
  height: 30px;
3642
3638
  bottom: 136px;
3643
3639
  line-height: 24px;
3644
- background-color: var(--ok-button);
3640
+ background-color: var(--human-color);
3645
3641
  }
3646
3642
  div.navbtn#navnext {
3647
3643
  position: absolute;
@@ -3772,12 +3768,12 @@ div#btn-cancel-no {
3772
3768
  top: auto;
3773
3769
  background-color: var(--ok-button);
3774
3770
  }
3775
- .tabbed-page a:link,
3776
- .tabbed-page a:visited {
3771
+ div.help-tabs .ui-tabs-panel a:link,
3772
+ div.help-tabs .ui-tabs-panel a:visited {
3777
3773
  text-decoration: none;
3778
- color: #5699A5;
3774
+ color: var(--humangrad-color);
3779
3775
  }
3780
- .tabbed-page a:hover {
3776
+ div.help-tabs .ui-tabs-panel a:hover {
3781
3777
  text-decoration: none;
3782
3778
  color: var(--triple-word-color);
3783
3779
  }
@@ -3859,7 +3855,7 @@ div.userid {
3859
3855
  cursor: pointer;
3860
3856
  }
3861
3857
  div.userid:hover {
3862
- background-color: #5699A5;
3858
+ background-color: var(--humangrad-color);
3863
3859
  color: white;
3864
3860
  }
3865
3861
  div.listitem {
@@ -3878,6 +3874,7 @@ div.listitem {
3878
3874
  top: 0;
3879
3875
  }
3880
3876
  .listitem a {
3877
+ display: flex;
3881
3878
  cursor: pointer;
3882
3879
  }
3883
3880
  .listitem a:link,
@@ -3888,6 +3885,10 @@ div.listitem {
3888
3885
  .listitem a:hover {
3889
3886
  color: var(--triple-word-color);
3890
3887
  }
3888
+ .listitem span {
3889
+ display: flex;
3890
+ align-items: center;
3891
+ }
3891
3892
  div.oddlist {
3892
3893
  background-color: var(--board-background);
3893
3894
  }
@@ -4008,7 +4009,7 @@ span.timed-btn {
4008
4009
  top: 0px;
4009
4010
  cursor: default;
4010
4011
  color: white;
4011
- background-color: #f5c862;
4012
+ background-color: var(--triple-word-color);
4012
4013
  border-radius: 5px;
4013
4014
  padding: 4px;
4014
4015
  margin: 0 4px 0 0;
@@ -4113,7 +4114,7 @@ span.elo-btn.elo-neutral {
4113
4114
  background-color: var(--double-letter-color);
4114
4115
  }
4115
4116
  span.elo-hdr-left {
4116
- background-color: var(--triple-letter-color);
4117
+ background-color: var(--header-color);
4117
4118
  color: white;
4118
4119
  border-radius: 5px;
4119
4120
  padding: 4px;
@@ -4124,7 +4125,7 @@ span.elo-hdr-left {
4124
4125
  top: 0px;
4125
4126
  }
4126
4127
  span.elo-hdr-right {
4127
- background-color: var(--triple-letter-color);
4128
+ background-color: var(--header-color);
4128
4129
  color: white;
4129
4130
  border-radius: 5px;
4130
4131
  padding: 4px;
@@ -4218,13 +4219,16 @@ div#user-no-match span#search-prefix {
4218
4219
  font-weight: bold;
4219
4220
  }
4220
4221
  div.modal-close {
4222
+ display: flex;
4223
+ flex-direction: row;
4224
+ align-items: center;
4225
+ justify-content: center;
4221
4226
  text-align: center;
4222
4227
  font-size: 18px;
4223
4228
  font-weight: 700;
4224
4229
  color: white;
4225
4230
  margin: 0;
4226
4231
  padding: 6px;
4227
- padding-top: 9px;
4228
4232
  border-radius: 5px;
4229
4233
  cursor: pointer;
4230
4234
  position: absolute;
@@ -4234,6 +4238,9 @@ div.modal-close {
4234
4238
  right: 12px;
4235
4239
  top: auto;
4236
4240
  }
4241
+ div.modal-close span.glyphicon {
4242
+ top: 0;
4243
+ }
4237
4244
  div#usr-info-close {
4238
4245
  width: 72px;
4239
4246
  /* Override */
@@ -4378,7 +4385,7 @@ h1.usr-info-icon span.glyphicon-coffee-cup {
4378
4385
  div.usr-info-fav {
4379
4386
  display: inline-block;
4380
4387
  position: absolute;
4381
- top: 26px;
4388
+ top: 16px;
4382
4389
  right: 20px;
4383
4390
  color: var(--triple-letter-color);
4384
4391
  font-size: 26px;
@@ -4416,11 +4423,11 @@ p#usr-best {
4416
4423
  p#usr-best a:link,
4417
4424
  p#usr-best a:visited {
4418
4425
  text-decoration: none;
4419
- color: #5699A5;
4426
+ color: var(--stats-foreground);
4420
4427
  }
4421
4428
  p#usr-best a:hover {
4422
4429
  text-decoration: none;
4423
- color: var(--triple-word-color);
4430
+ color: var(--logo-accent);
4424
4431
  }
4425
4432
  div#stats-toggler {
4426
4433
  margin-top: 7px;
@@ -4451,16 +4458,16 @@ div#own-stats-all {
4451
4458
  vertical-align: top;
4452
4459
  }
4453
4460
  div.stats-games {
4454
- color: #ec9d07;
4455
- border-color: #ec9d07;
4461
+ color: var(--malfridur-secondary);
4462
+ border-color: var(--malfridur-secondary);
4456
4463
  }
4457
4464
  div.stats-win-ratio {
4458
4465
  color: var(--ok-button);
4459
4466
  border-color: var(--ok-button);
4460
4467
  }
4461
4468
  div.stats-avg-score {
4462
- color: #ec9d07;
4463
- border-color: #ec9d07;
4469
+ color: var(--logo-accent);
4470
+ border-color: var(--logo-accent);
4464
4471
  }
4465
4472
  div.chall-hdr {
4466
4473
  font-size: 18px;
@@ -4496,11 +4503,11 @@ div.chall-hdr h2 {
4496
4503
  line-height: 24px;
4497
4504
  margin-top: 6px;
4498
4505
  margin-bottom: 4px;
4499
- color: #208C9F;
4506
+ color: var(--humangrad-color);
4500
4507
  }
4501
4508
  h1.chall-icon {
4502
4509
  display: block;
4503
- color: #208C9F;
4510
+ color: var(--humangrad-color);
4504
4511
  margin-right: 12px;
4505
4512
  margin-top: 0;
4506
4513
  margin-bottom: 0;
@@ -4520,7 +4527,7 @@ div.chall-time {
4520
4527
  font-size: 20px;
4521
4528
  font-weight: 700;
4522
4529
  line-height: 22px;
4523
- background-color: #cccccc;
4530
+ background-color: var(--middle-shadow);
4524
4531
  color: white;
4525
4532
  cursor: pointer;
4526
4533
  border-radius: 4px;
@@ -4621,16 +4628,16 @@ div#user-unfriend {
4621
4628
  left: 180px;
4622
4629
  width: 280px;
4623
4630
  /* Override */
4624
- padding-top: 6px;
4625
4631
  border-style: solid;
4626
4632
  border-width: 2px;
4627
4633
  border-color: var(--ok-button);
4628
4634
  background-color: white;
4629
4635
  color: var(--ok-button);
4630
- line-height: 24px;
4631
4636
  }
4632
4637
  div#user-unfriend span.glyphicon-coffee-cup {
4638
+ top: -1px;
4633
4639
  color: var(--triple-word-color);
4640
+ margin-right: 8px;
4634
4641
  }
4635
4642
  div#user-cancel {
4636
4643
  right: 108px;
@@ -4701,7 +4708,7 @@ div.welcome {
4701
4708
  .welcome a:link,
4702
4709
  .welcome a:visited {
4703
4710
  text-decoration: none;
4704
- color: #5699A5;
4711
+ color: var(--humangrad-color);
4705
4712
  }
4706
4713
  .welcome a:hover {
4707
4714
  text-decoration: none;
@@ -4780,7 +4787,7 @@ input.text {
4780
4787
  padding-right: 8px;
4781
4788
  }
4782
4789
  input.text:focus {
4783
- background-color: #ffffc8;
4790
+ background-color: hsl(from var(--malfridur-secondary) h 85% 90%);
4784
4791
  border-style: solid;
4785
4792
  border-color: var(--ok-button);
4786
4793
  border-width: 2px;
@@ -4800,11 +4807,11 @@ input.text#search-id {
4800
4807
  font-weight: normal;
4801
4808
  height: 28px;
4802
4809
  font-size: 18px;
4803
- border-color: var(--double-letter-color);
4810
+ border-color: var(--header-color);
4804
4811
  margin-top: 0px;
4805
4812
  margin-bottom: 0px;
4806
4813
  }
4807
- button[type="submit"] {
4814
+ div.netskrafl-container button[type="submit"] {
4808
4815
  font-family: var(--primary-font);
4809
4816
  font-size: 20px;
4810
4817
  font-weight: 400;
@@ -4825,18 +4832,18 @@ button[type="submit"] {
4825
4832
  padding-right: 8px;
4826
4833
  cursor: pointer;
4827
4834
  }
4828
- button[type="submit"]:focus,
4829
- button[type="submit"]:hover {
4835
+ div.netskrafl-container button[type="submit"]:focus,
4836
+ div.netskrafl-container button[type="submit"]:hover {
4830
4837
  outline: var(--focus-border) solid 3px;
4831
4838
  }
4832
- button.login {
4839
+ div.netskrafl-container button.login {
4833
4840
  margin-top: 24px;
4834
4841
  }
4835
- button.logout {
4842
+ div.netskrafl-container button.logout {
4836
4843
  margin-top: 80px;
4837
4844
  background-color: var(--cancel-button);
4838
4845
  }
4839
- input[type="checkbox"] {
4846
+ div.netskrafl-container input[type="checkbox"] {
4840
4847
  display: none;
4841
4848
  }
4842
4849
  div.toggler {
@@ -4875,7 +4882,7 @@ div.toggler div.option.small {
4875
4882
  div.toggler div.option.x-small {
4876
4883
  width: 30px;
4877
4884
  height: 20px;
4878
- line-height: 20px;
4885
+ line-height: 22px;
4879
4886
  font-size: 15px;
4880
4887
  padding-top: 1px;
4881
4888
  padding-bottom: 3px;
@@ -4883,11 +4890,8 @@ div.toggler div.option.x-small {
4883
4890
  div.toggler div.option.selected {
4884
4891
  background-color: var(--triple-letter-color);
4885
4892
  }
4886
- div#fairplay-toggler div.option.selected {
4887
- background-color: var(--ok-button);
4888
- }
4889
- div#fairplay-toggler span.glyphicon-edit {
4890
- top: 0;
4893
+ div.toggler span.glyphicon {
4894
+ top: 1px;
4891
4895
  }
4892
4896
  div #radioset {
4893
4897
  padding-top: 6px;
@@ -4910,11 +4914,11 @@ a.nodecorate:hover {
4910
4914
  }
4911
4915
  a.iconlink:link {
4912
4916
  text-decoration: none;
4913
- color: var(--triple-letter-color);
4917
+ color: var(--malfridur-accent);
4914
4918
  }
4915
4919
  a.iconlink:visited {
4916
4920
  text-decoration: none;
4917
- color: var(--triple-letter-color);
4921
+ color: var(--malfridur-accent);
4918
4922
  }
4919
4923
  a.iconlink:hover {
4920
4924
  text-decoration: none;
@@ -5035,9 +5039,7 @@ div.signup-header {
5035
5039
  left: 110px;
5036
5040
  width: 900px;
5037
5041
  }
5038
-
5039
5042
  /* ================= MOBILE PORTRAIT UI, LARGE ENOUGH TO BE NON-SCROLLABLE =============== */
5040
-
5041
5043
  @media all and (max-width: 1023px) and (min-height: 552px) {
5042
5044
  /* On sufficiently large mobile screens, keep the body fixed (unscrollable) */
5043
5045
  div.netskrafl-container {
@@ -5045,9 +5047,7 @@ div.signup-header {
5045
5047
  overflow: hidden;
5046
5048
  }
5047
5049
  }
5048
-
5049
5050
  /* ================= MOBILE PORTRAIT UI, EXTRA TALL =============== */
5050
-
5051
5051
  @media all and (max-width: 1023px) and (min-height: 632px) {
5052
5052
  /* iPhone X or taller */
5053
5053
  /* Tall mobile phones: use two lines to display the header */
@@ -5159,7 +5159,7 @@ div.signup-header {
5159
5159
  height: 288px;
5160
5160
  /* 8 lines @ 36px each */
5161
5161
  }
5162
- div.chat,
5162
+ div.chat-container,
5163
5163
  div.twoletter {
5164
5164
  height: 474px;
5165
5165
  }
@@ -5176,7 +5176,6 @@ div.signup-header {
5176
5176
  margin-top: 12px;
5177
5177
  }
5178
5178
  }
5179
-
5180
5179
  /* iPhone 11 or larger: scale the UI to appear larger on the screen */
5181
5180
  @media all and (min-width: 414px) and (max-width: 1023px) and (min-height: 652px) {
5182
5181
  div.netskrafl-container {
@@ -5188,9 +5187,7 @@ div.signup-header {
5188
5187
  height: 652px;
5189
5188
  }
5190
5189
  }
5191
-
5192
5190
  /* ================= MOBILE LANDSCAPE UI ====================== */
5193
-
5194
5191
  @media all and (min-width: 667px) {
5195
5192
  /* Mobile screen, landscape mode */
5196
5193
  div.netskrafl-container {
@@ -5259,6 +5256,9 @@ div.signup-header {
5259
5256
  div.rack-left div.recallbtn {
5260
5257
  display: none;
5261
5258
  }
5259
+ div.force-resign {
5260
+ display: none;
5261
+ }
5262
5262
  div.scramblebtn {
5263
5263
  left: 376px;
5264
5264
  top: 158px;
@@ -5275,7 +5275,7 @@ div.signup-header {
5275
5275
  border-width: 0;
5276
5276
  color: white;
5277
5277
  left: 441px;
5278
- background-color: var(--ok-button);
5278
+ background-color: var(--human-color);
5279
5279
  }
5280
5280
  div.submitpass {
5281
5281
  top: 158px;
@@ -5369,7 +5369,7 @@ div.signup-header {
5369
5369
  }
5370
5370
  div.games,
5371
5371
  div.twoletter,
5372
- div.chat {
5372
+ div.chat-container {
5373
5373
  display: none;
5374
5374
  }
5375
5375
  div.right-area {
@@ -5412,16 +5412,13 @@ div.signup-header {
5412
5412
  display: none;
5413
5413
  }
5414
5414
  }
5415
-
5416
5415
  @media all and (min-width: 667px) and (max-height: 360px) {
5417
5416
  div.board {
5418
5417
  transform: scale(0.96);
5419
5418
  transform-origin: top left;
5420
5419
  }
5421
5420
  }
5422
-
5423
5421
  /* fullscreen.css */
5424
-
5425
5422
  @media all and (min-width: 1024px) {
5426
5423
 
5427
5424
  .ui-helper-reset {
@@ -5490,13 +5487,17 @@ div.signup-header {
5490
5487
  div.logo {
5491
5488
  display: block;
5492
5489
  }
5490
+ div.netskrafl-logo {
5491
+ width: 46px;
5492
+ height: 46px;
5493
+ }
5493
5494
  div#main-tabs div.header-logo {
5494
5495
  display: none;
5495
5496
  }
5496
5497
  div.circle {
5497
5498
  height: 38px;
5498
5499
  width: 38px;
5499
- background-color: #80aede;
5500
+ background-color: var(--header-hover-color);
5500
5501
  border-radius: 50%;
5501
5502
  display: inline-block;
5502
5503
  position: relative;
@@ -5564,12 +5565,12 @@ div.signup-header {
5564
5565
  }
5565
5566
  div.games,
5566
5567
  div.twoletter,
5567
- div.chat {
5568
+ div.chat-container {
5568
5569
  display: block;
5569
5570
  border-radius: 0;
5570
5571
  }
5571
5572
  div.twoletter,
5572
- div.chat {
5573
+ div.chat-container {
5573
5574
  height: 420px;
5574
5575
  }
5575
5576
  div.board-area {
@@ -5743,8 +5744,8 @@ div.signup-header {
5743
5744
  background-color: var(--cancel-button);
5744
5745
  }
5745
5746
  .rack td:empty {
5746
- border-color: #dddddd;
5747
- background-color: #f4f4f4;
5747
+ border-color: var(--middle-shadow);
5748
+ background-color: var(--tab-background);
5748
5749
  box-shadow: none;
5749
5750
  }
5750
5751
  div.buttons {
@@ -6051,8 +6052,16 @@ div.signup-header {
6051
6052
  div.gamestats div.player.humancolor {
6052
6053
  color: white;
6053
6054
  }
6055
+ div.gamestats div.player.left {
6056
+ border-top-left-radius: 5px;
6057
+ border-bottom-left-radius: 5px;
6058
+ }
6059
+ div.gamestats div.player.right {
6060
+ border-top-right-radius: 5px;
6061
+ border-bottom-right-radius: 5px;
6062
+ }
6054
6063
  div.scorewrapper {
6055
- background-color: #aad1d4;
6064
+ background-color: var(--humangrad-color);
6056
6065
  min-height: 32px;
6057
6066
  }
6058
6067
  div.scoreleft {
@@ -6211,7 +6220,7 @@ div.signup-header {
6211
6220
  height: 380px;
6212
6221
  }
6213
6222
  div.right-area.with-clock div.twoletter,
6214
- div.right-area.with-clock div.chat {
6223
+ div.right-area.with-clock div.chat-container {
6215
6224
  /* Timed game */
6216
6225
  height: 380px;
6217
6226
  }
@@ -6284,6 +6293,7 @@ div.signup-header {
6284
6293
  border-radius: 0;
6285
6294
  }
6286
6295
  div.opp-turn {
6296
+ display: block;
6287
6297
  position: absolute;
6288
6298
  text-align: center;
6289
6299
  bottom: 83px;
@@ -6294,7 +6304,6 @@ div.signup-header {
6294
6304
  line-height: 24px;
6295
6305
  padding: 4px 0 0;
6296
6306
  margin: 0;
6297
- display: block;
6298
6307
  }
6299
6308
  div#congrats {
6300
6309
  position: absolute;
@@ -6406,8 +6415,8 @@ div.signup-header {
6406
6415
  margin: 0;
6407
6416
  }
6408
6417
  input.chat-txt {
6409
- width: 218px;
6410
- height: 22px;
6418
+ width: 234px;
6419
+ height: 32px;
6411
6420
  font-size: 15px;
6412
6421
  }
6413
6422
  div.chat-area {
@@ -6415,7 +6424,7 @@ div.signup-header {
6415
6424
  width: 278px;
6416
6425
  }
6417
6426
  div.modal-close#chat-send {
6418
- height: 25px;
6427
+ height: 26px;
6419
6428
  bottom: 0;
6420
6429
  }
6421
6430
  span.statsbutton {
@@ -6559,10 +6568,12 @@ div.signup-header {
6559
6568
  max-width: 32px;
6560
6569
  }
6561
6570
  span.list-s0 {
6571
+ display: inline-block;
6562
6572
  width: 40px;
6563
6573
  max-width: 40px;
6564
6574
  }
6565
6575
  span.list-s1 {
6576
+ display: inline-block;
6566
6577
  width: 40px;
6567
6578
  max-width: 40px;
6568
6579
  }