speakid-hangman 1.0.13 → 1.0.15

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.
@@ -1,5 +1,5 @@
1
- import { jsx as o, jsxs as m, Fragment as G } from "react/jsx-runtime";
2
- import { useState as h, useMemo as Q, useCallback as ue, useEffect as he } from "react";
1
+ import { jsx as o, jsxs as m, Fragment as _ } from "react/jsx-runtime";
2
+ import { useState as h, useMemo as Y, useCallback as pe, useEffect as ue } from "react";
3
3
  const l = {
4
4
  gmCenterScreen: {
5
5
  position: "relative",
@@ -204,12 +204,12 @@ const l = {
204
204
  display: "block"
205
205
  }
206
206
  };
207
- function je({
207
+ function Ye({
208
208
  mistakes: r,
209
- maxMistakes: J,
210
- size: P = 200
209
+ maxMistakes: q,
210
+ size: N = 200
211
211
  }) {
212
- const p = P, u = P * 1.25, w = Math.max(3, P / 100), C = 10 * (p / 200), x = 240 * (u / 250), y = 150 * (p / 200), b = 80 * (p / 200), ee = 20 * (u / 250), _ = 240 * (u / 250), M = 80 * (p / 200), N = 20 * (u / 250), L = 150 * (p / 200), H = 150 * (p / 200), S = 20 * (u / 250), I = 50 * (u / 250), F = 150 * (p / 200), R = 70 * (u / 250), U = 20 * (p / 200), T = 150 * (p / 200), te = 90 * (u / 250), D = 150 * (u / 250), f = 150 * (p / 200), B = 110 * (u / 250), d = 130 * (p / 200), O = 130 * (u / 250), ne = 150 * (p / 200), E = 110 * (u / 250), me = 170 * (p / 200), W = 130 * (u / 250), oe = 150 * (p / 200), V = 150 * (u / 250), g = 130 * (p / 200), re = 190 * (u / 250), j = 150 * (p / 200), ie = 150 * (u / 250), a = 170 * (p / 200), ae = 190 * (u / 250), k = r === 0 || r <= J * 0.5 ? "#1f2937" : r <= J * 0.75 ? "#f59e0b" : "#ec4c44";
212
+ const p = N, u = N * 1.25, b = Math.max(3, N / 100), A = 10 * (p / 200), F = 240 * (u / 250), y = 150 * (p / 200), x = 80 * (p / 200), w = 20 * (u / 250), J = 240 * (u / 250), Z = 80 * (p / 200), M = 20 * (u / 250), ee = 150 * (p / 200), v = 150 * (p / 200), R = 20 * (u / 250), S = 50 * (u / 250), z = 150 * (p / 200), T = 70 * (u / 250), C = 20 * (p / 200), D = 150 * (p / 200), H = 90 * (u / 250), te = 150 * (u / 250), O = 150 * (p / 200), f = 110 * (u / 250), B = 130 * (p / 200), g = 130 * (u / 250), X = 150 * (p / 200), ne = 110 * (u / 250), j = 170 * (p / 200), he = 130 * (u / 250), W = 150 * (p / 200), oe = 150 * (u / 250), re = 130 * (p / 200), U = 190 * (u / 250), d = 150 * (p / 200), ie = 150 * (u / 250), I = 170 * (p / 200), ae = 190 * (u / 250), k = r === 0 || r <= q * 0.5 ? "#1f2937" : r <= q * 0.75 ? "#f59e0b" : "#ec4c44";
213
213
  return /* @__PURE__ */ m(
214
214
  "svg",
215
215
  {
@@ -230,126 +230,127 @@ function je({
230
230
  r > 0 && /* @__PURE__ */ o(
231
231
  "line",
232
232
  {
233
- x1: C,
234
- y1: x,
233
+ x1: A,
234
+ y1: F,
235
235
  x2: y,
236
- y2: x,
236
+ y2: F,
237
237
  stroke: k,
238
- strokeWidth: w
238
+ strokeWidth: b
239
239
  }
240
240
  ),
241
241
  r > 1 && /* @__PURE__ */ o(
242
242
  "line",
243
243
  {
244
- x1: b,
245
- y1: ee,
246
- x2: b,
247
- y2: _,
244
+ x1: x,
245
+ y1: w,
246
+ x2: x,
247
+ y2: J,
248
248
  stroke: k,
249
- strokeWidth: w
249
+ strokeWidth: b
250
250
  }
251
251
  ),
252
252
  r > 2 && /* @__PURE__ */ o(
253
253
  "line",
254
254
  {
255
- x1: M,
256
- y1: N,
257
- x2: L,
258
- y2: N,
255
+ x1: Z,
256
+ y1: M,
257
+ x2: ee,
258
+ y2: M,
259
259
  stroke: k,
260
- strokeWidth: w
260
+ strokeWidth: b
261
261
  }
262
262
  ),
263
263
  r > 3 && /* @__PURE__ */ o(
264
264
  "line",
265
265
  {
266
- x1: H,
267
- y1: S,
268
- x2: H,
269
- y2: I,
266
+ x1: v,
267
+ y1: R,
268
+ x2: v,
269
+ y2: S,
270
270
  stroke: k,
271
- strokeWidth: w
271
+ strokeWidth: b
272
272
  }
273
273
  ),
274
274
  r > 4 && /* @__PURE__ */ o(
275
275
  "circle",
276
276
  {
277
- cx: F,
278
- cy: R,
279
- r: U,
277
+ cx: z,
278
+ cy: T,
279
+ r: C,
280
280
  stroke: k,
281
281
  fill: "none",
282
- strokeWidth: w
282
+ strokeWidth: b
283
283
  }
284
284
  ),
285
285
  r > 5 && /* @__PURE__ */ o(
286
286
  "line",
287
287
  {
288
- x1: T,
289
- y1: te,
290
- x2: T,
291
- y2: D,
288
+ x1: D,
289
+ y1: H,
290
+ x2: D,
291
+ y2: te,
292
292
  stroke: k,
293
- strokeWidth: w
293
+ strokeWidth: b
294
294
  }
295
295
  ),
296
296
  r > 6 && /* @__PURE__ */ o(
297
297
  "line",
298
298
  {
299
- x1: f,
300
- y1: B,
301
- x2: d,
302
- y2: O,
299
+ x1: O,
300
+ y1: f,
301
+ x2: B,
302
+ y2: g,
303
303
  stroke: k,
304
- strokeWidth: w
304
+ strokeWidth: b
305
305
  }
306
306
  ),
307
307
  r > 7 && /* @__PURE__ */ o(
308
308
  "line",
309
309
  {
310
- x1: ne,
311
- y1: E,
312
- x2: me,
313
- y2: W,
310
+ x1: X,
311
+ y1: ne,
312
+ x2: j,
313
+ y2: he,
314
314
  stroke: k,
315
- strokeWidth: w
315
+ strokeWidth: b
316
316
  }
317
317
  ),
318
318
  r > 8 && /* @__PURE__ */ o(
319
319
  "line",
320
320
  {
321
- x1: oe,
322
- y1: V,
323
- x2: g,
324
- y2: re,
321
+ x1: W,
322
+ y1: oe,
323
+ x2: re,
324
+ y2: U,
325
325
  stroke: k,
326
- strokeWidth: w
326
+ strokeWidth: b
327
327
  }
328
328
  ),
329
329
  r > 9 && /* @__PURE__ */ o(
330
330
  "line",
331
331
  {
332
- x1: j,
332
+ x1: d,
333
333
  y1: ie,
334
- x2: a,
334
+ x2: I,
335
335
  y2: ae,
336
336
  stroke: k,
337
- strokeWidth: w
337
+ strokeWidth: b
338
338
  }
339
339
  )
340
340
  ]
341
341
  }
342
342
  );
343
343
  }
344
- function Oe({
344
+ function Ge({
345
345
  gameCubeSize: r = 400,
346
- screenHeight: J = 800,
347
- screenWidth: P = 800,
346
+ screenHeight: q = 800,
347
+ screenWidth: N = 800,
348
348
  logoUrl: p,
349
349
  showLogo: u = !0,
350
- baseURL: w
350
+ baseURL: b,
351
+ seed: A
351
352
  } = {}) {
352
- const C = {
353
+ const F = {
353
354
  Professions: ["teacher", "doctor", "nurse", "driver", "police", "firefighter", "cook", "waiter", "farmer", "builder", "singer", "actor", "dentist", "pilot", "vet", "artist", "cleaner", "student", "baker", "mechanic"],
354
355
  Family: ["mother", "father", "sister", "brother", "grandmother", "grandfather", "aunt", "uncle", "cousin", "baby", "parents", "children", "wife", "husband", "son", "daughter", "family", "twins", "relatives"],
355
356
  "Farm animals": ["cow", "pig", "horse", "sheep", "goat", "duck", "chicken", "rooster", "turkey", "goose", "rabbit", "mouse", "donkey", "bee", "hen", "lamb", "bull", "pony"],
@@ -367,125 +368,127 @@ function Oe({
367
368
  Environment: ["tree", "forest", "air", "water", "pollution", "recycle", "nature", "clean", "waste", "plastic", "energy", "animal", "climate", "earth", "ocean", "river", "planet", "save", "green", "environment", "litter", "organic"],
368
369
  Space: ["planet", "star", "sun", "moon", "astronaut", "rocket", "space", "galaxy", "universe", "telescope", "comet", "asteroid", "orbit", "gravity", "alien", "spaceship", "mars", "satellite", "sky", "eclipse"],
369
370
  Devices: ["computer", "laptop", "phone", "tablet", "tv", "keyboard", "mouse", "printer", "camera", "headphones", "charger", "screen", "watch", "microphone", "speaker", "console", "router", "battery", "cable", "remote"]
370
- }, [x, y] = h("lobby"), [b, ee] = h(""), [_] = h("Normal"), [M, N] = h(0), [L, H] = h(1), [S, I] = h(""), [F, R] = h([]), [U, T] = h(0), [te, D] = h(0), [f, B] = h(null), [d, O] = h(null), [ne, E] = h(1), [me, W] = h([]), oe = _ === "Easy" ? 8 : _ === "Normal" ? 6 : 4, V = w || (typeof window < "u" && window.origin ? `${window.origin}/cloud/speakid/games/hangman` : "/cloud/speakid/games/hangman"), [g, re] = h(!1), [j, ie] = h(!1), [a, ae] = h(!1), [$, k] = h(!1), s = Q(() => {
371
- const e = (d || r || 1e3) / 400, n = a ? 0.8 : 1, i = $ ? 0.9 : 1, c = n * i;
371
+ }, [y, x] = h("lobby"), [w, J] = h(""), [Z] = h("Normal"), [M, ee] = h(0), [v, R] = h(1), [S, z] = h(""), [T, C] = h([]), [D, H] = h(0), [te, O] = h(0), [f, B] = h(null), [g, X] = h(null), [ne, j] = h(1), [he, W] = h([]), oe = Z === "Easy" ? 8 : Z === "Normal" ? 6 : 4, re = Y(() => {
372
+ if (A === void 0)
373
+ return () => Math.random();
374
+ let e = A;
375
+ return () => {
376
+ e = e + 1831565813 | 0;
377
+ let t = Math.imul(e ^ e >>> 15, e | 1);
378
+ return t = t ^ Math.imul(t ^ t >>> 7, t | 61), ((t ^ t >>> 14) >>> 0) / 4294967296;
379
+ };
380
+ }, [A]), U = b || (typeof window < "u" && window.origin ? `${window.origin}/cloud/speakid/games/hangman` : "/cloud/speakid/games/hangman"), [d, ie] = h(!1), [I, ae] = h(!1), [a, k] = h(!1), [L, we] = h(!1), s = Y(() => {
381
+ const e = (g || r || 1e3) / 400, t = a ? 0.8 : 1, i = L ? 0.9 : 1, c = t * i;
372
382
  return {
373
- headline1: g ? Math.max(24, Math.min(30, 30 * e * c)) : Math.max(28, Math.min(32, 32 * e * i)),
383
+ headline1: d ? Math.max(24, Math.min(30, 30 * e * c)) : Math.max(28, Math.min(32, 32 * e * i)),
374
384
  // Desktop: 32px
375
385
  headline2: Math.max(20, Math.min(28, 24 * e * c)),
376
386
  // Desktop: 24px
377
- headline3: g ? Math.max(14, Math.min(18, 16 * e * c)) : Math.max(20, Math.min(26, 24 * e * c)),
387
+ headline3: d ? Math.max(14, Math.min(18, 16 * e * c)) : Math.max(20, Math.min(26, 24 * e * c)),
378
388
  // Desktop: 24px
379
389
  bodyL: Math.max(14, Math.min(20, 18 * e * c)),
380
390
  // Desktop: 18px
381
- bodyM: g ? Math.max(12, Math.min(16, 14 * e * c)) : Math.max(14, Math.min(18, 16 * e * c)),
391
+ bodyM: d ? Math.max(12, Math.min(16, 14 * e * c)) : Math.max(14, Math.min(18, 16 * e * c)),
382
392
  // Desktop: 16px
383
- bodyS: g ? Math.max(10, Math.min(14, 12 * e * c)) : Math.max(12, Math.min(16, 14 * e * c)),
393
+ bodyS: d ? Math.max(10, Math.min(14, 12 * e * c)) : Math.max(12, Math.min(16, 14 * e * c)),
384
394
  // Desktop: 14px
385
395
  wordDisplay: Math.max(18, Math.min(32, 26 * e * c)),
386
396
  // Адаптивный размер
387
397
  button: Math.max(12, Math.min(18, 16 * e * c))
388
398
  // Desktop: 16px
389
399
  };
390
- }, [g, d, r, a, $]), fe = Q(() => {
391
- const e = (d || r || 1e3) / 400, n = a ? 0.65 : 1, i = $ ? 0.85 : 1;
392
- return j ? Math.max(8, Math.min(12, 10 * e)) : Math.max(12, Math.min(24, 16 * e)) * n * i;
393
- }, [j, d, r, a, $]), t = Q(() => {
394
- const e = (d || r || 1e3) / 400, n = a ? 0.65 : 1, i = $ ? 0.85 : 1;
395
- return j ? Math.max(3, Math.min(6, 5 * e)) : Math.max(4, Math.min(12, 8 * e)) * n * i;
396
- }, [j, d, r, a, $]), v = Q(() => {
397
- const e = (d || r || 1e3) / 400, n = $ ? 0.9 : 1;
398
- return Math.max(6, Math.min(10, 8 * e * n));
399
- }, [d, r, $]), we = (e, n) => e.split("").every((i) => n.includes(i)), ke = (e, n) => e.split("").map((i) => n.includes(i) ? i : "_").join(" "), Me = (e) => "abcdefghijklmnopqrstuvwxyz".split("").filter((i) => !e.includes(i)), Z = (e, n = []) => {
400
- var Y;
401
- if (!e || !C[e]) {
402
- const z = Object.keys(C)[0];
403
- return ((Y = C[z]) == null ? void 0 : Y[0]) || "";
400
+ }, [d, g, r, a, L]), me = Y(() => {
401
+ const e = (g || r || 1e3) / 400, t = a ? 0.65 : 1, i = L ? 0.85 : 1;
402
+ return I ? Math.max(8, Math.min(12, 10 * e)) : Math.max(12, Math.min(24, 16 * e)) * t * i;
403
+ }, [I, g, r, a, L]), n = Y(() => {
404
+ const e = (g || r || 1e3) / 400, t = a ? 0.65 : 1, i = L ? 0.85 : 1;
405
+ return I ? Math.max(3, Math.min(6, 5 * e)) : Math.max(4, Math.min(12, 8 * e)) * t * i;
406
+ }, [I, g, r, a, L]), $ = Y(() => {
407
+ const e = (g || r || 1e3) / 400, t = L ? 0.9 : 1;
408
+ return Math.max(6, Math.min(10, 8 * e * t));
409
+ }, [g, r, L]), ke = (e, t) => e.split("").every((i) => t.includes(i)), Me = (e, t) => e.split("").map((i) => t.includes(i) ? i : "_").join(" "), $e = (e) => "abcdefghijklmnopqrstuvwxyz".split("").filter((i) => !e.includes(i)), V = (e, t = []) => {
410
+ var E;
411
+ if (!e || !F[e]) {
412
+ const P = Object.keys(F)[0];
413
+ return ((E = F[P]) == null ? void 0 : E[0]) || "";
404
414
  }
405
- const i = C[e];
415
+ const i = F[e];
406
416
  if (!i || i.length === 0)
407
417
  return "";
408
- const c = i.filter((z) => !n.includes(z)), A = c.length > 0 ? c : i;
409
- if (A.length === 0)
418
+ const c = i.filter((P) => !t.includes(P)), Q = c.length > 0 ? c : i;
419
+ if (Q.length === 0)
410
420
  return "";
411
- let q;
412
- if (typeof crypto < "u" && crypto.getRandomValues) {
413
- const z = new Uint32Array(1);
414
- crypto.getRandomValues(z);
415
- const ge = z[0] / 4294967295;
416
- q = Math.floor(ge * A.length);
417
- } else
418
- q = Math.floor(Math.random() * A.length);
419
- return A[q];
420
- }, $e = () => {
421
- if (!b) return;
421
+ const ye = Math.floor(re() * Q.length);
422
+ return Q[ye];
423
+ }, ve = () => {
424
+ if (!w) return;
422
425
  W([]);
423
- const e = Z(b, []);
426
+ const e = V(w, []);
424
427
  if (!e) {
425
- y("category");
428
+ x("category");
426
429
  return;
427
430
  }
428
- I(e), W([e]), R([]), T(0), H(1), D(0), B(null), y("game");
429
- }, se = ue((e) => {
430
- if (x !== "game" || f !== null) return;
431
- const n = e.toLowerCase();
432
- /^[a-z]$/.test(n) && (R((i) => i.includes(n) ? i : [...i, n]), I((i) => (i && !i.includes(n) && T((c) => c + 1), i)));
433
- }, [x, f]), le = ue((e) => {
431
+ z(e), W([e]), C([]), H(0), R(1), O(0), B(null), x("game");
432
+ }, se = pe((e) => {
433
+ if (y !== "game" || f !== null) return;
434
+ const t = e.toLowerCase();
435
+ /^[a-z]$/.test(t) && (C((i) => i.includes(t) ? i : [...i, t]), z((i) => (i && !i.includes(t) && H((c) => c + 1), i)));
436
+ }, [y, f]), le = pe((e) => {
434
437
  se(e.key);
435
438
  }, [se]);
436
- he(() => {
437
- if (x === "game")
439
+ ue(() => {
440
+ if (y === "game")
438
441
  return window.addEventListener("keydown", le), () => window.removeEventListener("keydown", le);
439
- }, [x, le]);
440
- const ve = S ? ke(S, F) : "", xe = S ? we(S, F) : !1, ye = U >= 10, Se = Me(F), ce = ue(() => {
441
- if (!b || L >= M) {
442
- y("result");
442
+ }, [y, le]);
443
+ const Se = S ? Me(S, T) : "", fe = S ? ke(S, T) : !1, xe = D >= 10, Le = $e(T), ce = pe(() => {
444
+ if (!w || v >= M) {
445
+ x("result");
443
446
  return;
444
447
  }
445
- H((e) => e + 1), W((e) => {
446
- const n = Z(b, e);
447
- return n ? (I(n), [...e, n]) : e;
448
- }), R([]), T(0), B(null);
449
- }, [b, L, M]);
450
- he(() => {
451
- if (xe && f === null) {
452
- B("win"), D((n) => n + 1);
448
+ R((e) => e + 1), W((e) => {
449
+ const t = V(w, e);
450
+ return t ? (z(t), [...e, t]) : e;
451
+ }), C([]), H(0), B(null);
452
+ }, [w, v, M]);
453
+ ue(() => {
454
+ if (fe && f === null) {
455
+ B("win"), O((t) => t + 1);
453
456
  const e = setTimeout(() => {
454
457
  ce();
455
458
  }, 2e3);
456
459
  return () => clearTimeout(e);
457
460
  }
458
- if (ye && f === null) {
461
+ if (xe && f === null) {
459
462
  B("lose");
460
463
  const e = setTimeout(() => {
461
464
  ce();
462
465
  }, 2e3);
463
466
  return () => clearTimeout(e);
464
467
  }
465
- }, [xe, ye, f, ce]);
466
- const Le = () => {
467
- if (!b || L >= M) {
468
- y("result");
468
+ }, [fe, xe, f, ce]);
469
+ const Fe = () => {
470
+ if (!w || v >= M) {
471
+ x("result");
469
472
  return;
470
473
  }
471
- H((e) => e + 1), W((e) => {
472
- const n = Z(b, e);
473
- return n ? (I(n), [...e, n]) : e;
474
- }), R([]), T(0), B(null);
474
+ R((e) => e + 1), W((e) => {
475
+ const t = V(w, e);
476
+ return t ? (z(t), [...e, t]) : e;
477
+ }), C([]), H(0), B(null);
475
478
  };
476
- he(() => {
479
+ ue(() => {
477
480
  const e = () => {
478
- const n = window.innerWidth, i = window.innerHeight, c = n < 768, A = n > i && n < 1e3 && i < 500, Y = c || A || (n === 926 && i === 428 || n === 932 && i === 430), z = i < 700, ge = n / i > 1.8, We = n === 1024 && i === 600, ze = Y && n > i, Ce = n >= 1200 && n <= 1400;
479
- if (re(Y), ie(We), ae(ze), k(Ce), Y)
480
- O(null), E(1);
481
- else if (z)
482
- O(null), E(1);
481
+ const t = window.innerWidth, i = window.innerHeight, c = t < 768, Q = t > i && t < 1e3 && i < 500, E = c || Q || (t === 926 && i === 428 || t === 932 && i === 430), P = i < 700, ze = t / i > 1.8, Ce = t === 1024 && i === 600, He = E && t > i, Ie = t >= 1200 && t <= 1400;
482
+ if (ie(E), ae(Ce), k(He), we(Ie), E)
483
+ X(null), j(1);
484
+ else if (P)
485
+ X(null), j(1);
483
486
  else {
484
- const He = n - 80, Ie = i - 80, be = Math.min(He, Ie);
485
- let pe;
486
- r && r >= 320 ? pe = Math.min(r, be) : pe = Math.min(1e3, be * 0.9);
487
- const Re = Math.max(400, Math.min(1200, pe));
488
- O(Re), E(ge ? 0.85 : 1);
487
+ const Re = t - 80, je = i - 80, be = Math.min(Re, je);
488
+ let ge;
489
+ r && r >= 320 ? ge = Math.min(r, be) : ge = Math.min(1e3, be * 0.9);
490
+ const Ee = Math.max(400, Math.min(1200, ge));
491
+ X(Ee), j(ze ? 0.85 : 1);
489
492
  }
490
493
  };
491
494
  return e(), window.addEventListener("resize", e), () => window.removeEventListener("resize", e);
@@ -534,38 +537,38 @@ function Oe({
534
537
  <path d="M 35% 85% Q 37% 83%, 39% 85% T 43% 85% T 47% 85%"
535
538
  fill="none" stroke="#FF4500" stroke-width="3.5" stroke-linecap="round"/>
536
539
  </svg>
537
- `, Fe = !g && typeof window < "u" && window.innerWidth >= 768 && window.innerWidth < 1024, de = !g && u && (x !== "game" || Fe), Te = {
540
+ `, Te = !d && typeof window < "u" && window.innerWidth >= 768 && window.innerWidth < 1024, de = !d && u && (y !== "game" || Te), Be = {
538
541
  ...l.gmCenterScreen,
539
542
  width: "100%",
540
543
  height: "100%",
541
- padding: `${fe}px`,
542
- paddingTop: de ? "80px" : `${fe}px`,
544
+ padding: `${me}px`,
545
+ paddingTop: de ? "80px" : `${me}px`,
543
546
  // ✅ Резервируем больше места под логотип (24px top + 28px высота + 28px отступ)
544
- overflow: $ ? "hidden" : "auto",
547
+ overflow: L ? "hidden" : "auto",
545
548
  // ✅ Для разрешений 1200-1400 убираем скролл
546
549
  position: "relative",
547
550
  boxSizing: "border-box",
548
551
  background: "transparent"
549
- }, X = Q(
552
+ }, G = Y(
550
553
  () => {
551
554
  if (!de)
552
555
  return null;
553
556
  const e = window.innerWidth;
554
- if (g && e > window.innerHeight)
557
+ if (d && e > window.innerHeight)
555
558
  return null;
556
- const n = p || (typeof window < "u" && window.origin ? `${window.origin}/cloud/speakid/games/hangman/logo` : "/cloud/speakid/games/hangman/logo");
559
+ const t = p || (typeof window < "u" && window.origin ? `${window.origin}/cloud/speakid/games/hangman/logo` : "/cloud/speakid/games/hangman/logo");
557
560
  return /* @__PURE__ */ o("div", { style: l.gmLogoFixed, children: /* @__PURE__ */ m("picture", { children: [
558
561
  /* @__PURE__ */ o(
559
562
  "source",
560
563
  {
561
- srcSet: `${n}.svg`,
564
+ srcSet: `${t}.svg`,
562
565
  type: "image/svg+xml"
563
566
  }
564
567
  ),
565
568
  /* @__PURE__ */ o(
566
569
  "img",
567
570
  {
568
- src: `${n}.png`,
571
+ src: `${t}.png`,
569
572
  alt: "SPEAKID Logo",
570
573
  style: l.gmLogoImg,
571
574
  loading: "lazy"
@@ -573,28 +576,28 @@ function Oe({
573
576
  )
574
577
  ] }) });
575
578
  },
576
- [g, de, p, x]
577
- ), Be = () => x === "lobby" ? /* @__PURE__ */ m(G, { children: [
578
- X,
579
+ [d, de, p, y]
580
+ ), We = () => y === "lobby" ? /* @__PURE__ */ m(_, { children: [
581
+ G,
579
582
  /* @__PURE__ */ o("div", { dangerouslySetInnerHTML: { __html: K } }),
580
583
  /* @__PURE__ */ o("h1", { style: {
581
584
  ...l.gmHeadline1,
582
585
  fontSize: `${s.headline1}px`,
583
- marginBottom: `${t * 3}px`,
586
+ marginBottom: `${n * 3}px`,
584
587
  position: "relative",
585
588
  zIndex: 1
586
589
  }, children: "HANGMAN" }),
587
590
  /* @__PURE__ */ m(
588
591
  "button",
589
592
  {
590
- onClick: () => y("category"),
593
+ onClick: () => x("category"),
591
594
  style: {
592
595
  fontFamily: '"Onest", system-ui, sans-serif',
593
596
  fontWeight: 500,
594
597
  // Medium для более заметности
595
598
  fontSize: `${s.button}px`,
596
- padding: `${t * 1.2}px ${t * 3}px`,
597
- borderRadius: `${v * 1.5}px`,
599
+ padding: `${n * 1.2}px ${n * 3}px`,
600
+ borderRadius: `${$ * 1.5}px`,
598
601
  position: "relative",
599
602
  zIndex: 1,
600
603
  display: "flex",
@@ -626,7 +629,7 @@ function Oe({
626
629
  viewBox: "0 0 24 24",
627
630
  fill: "none",
628
631
  xmlns: "http://www.w3.org/2000/svg",
629
- style: { display: "block", marginRight: `${t}px` },
632
+ style: { display: "block", marginRight: `${n}px` },
630
633
  children: /* @__PURE__ */ o(
631
634
  "path",
632
635
  {
@@ -654,14 +657,14 @@ function Oe({
654
657
  /* @__PURE__ */ o(
655
658
  "img",
656
659
  {
657
- src: `${V}/sun.png`,
660
+ src: `${U}/sun.png`,
658
661
  alt: "Sun",
659
662
  style: {
660
663
  position: "absolute",
661
- left: g ? "-10%" : "5%",
664
+ left: d ? "-10%" : "5%",
662
665
  top: "20%",
663
666
  width: "auto",
664
- height: g ? `${Math.min(window.innerHeight * 0.33, 200)}px` : `${Math.min((d || r || 1e3) * 0.33, 300)}px`,
667
+ height: d ? `${Math.min(window.innerHeight * 0.33, 200)}px` : `${Math.min((g || r || 1e3) * 0.33, 300)}px`,
665
668
  maxHeight: "33vh",
666
669
  objectFit: "contain",
667
670
  opacity: 0.6
@@ -671,14 +674,14 @@ function Oe({
671
674
  /* @__PURE__ */ o(
672
675
  "img",
673
676
  {
674
- src: `${V}/character.png`,
677
+ src: `${U}/character.png`,
675
678
  alt: "Hangman character",
676
679
  style: {
677
680
  position: "absolute",
678
- right: g ? "5%" : "10%",
681
+ right: d ? "5%" : "10%",
679
682
  bottom: "10%",
680
683
  width: "auto",
681
- height: g ? `${Math.min(window.innerHeight * 0.33, 200)}px` : `${Math.min((d || r || 1e3) * 0.33, 300)}px`,
684
+ height: d ? `${Math.min(window.innerHeight * 0.33, 200)}px` : `${Math.min((g || r || 1e3) * 0.33, 300)}px`,
682
685
  maxHeight: "33vh",
683
686
  objectFit: "contain",
684
687
  opacity: 0.6
@@ -686,13 +689,13 @@ function Oe({
686
689
  }
687
690
  )
688
691
  ] })
689
- ] }) : x === "category" ? /* @__PURE__ */ m(G, { children: [
690
- X,
692
+ ] }) : y === "category" ? /* @__PURE__ */ m(_, { children: [
693
+ G,
691
694
  /* @__PURE__ */ o("div", { dangerouslySetInnerHTML: { __html: K } }),
692
695
  /* @__PURE__ */ o(
693
696
  "button",
694
697
  {
695
- onClick: () => y("lobby"),
698
+ onClick: () => x("lobby"),
696
699
  onMouseEnter: (e) => {
697
700
  e.currentTarget.style.backgroundColor = "#e5e7eb";
698
701
  },
@@ -703,11 +706,11 @@ function Oe({
703
706
  ...l.gmButton,
704
707
  ...l.gmButtonSecondary,
705
708
  fontSize: `${s.button}px`,
706
- padding: `${t}px ${t * 1.5}px`,
707
- borderRadius: `${v}px`,
709
+ padding: `${n}px ${n * 1.5}px`,
710
+ borderRadius: `${$}px`,
708
711
  position: "absolute",
709
- top: "24px",
710
- // ✅ Поднял кнопку назад выше
712
+ top: d ? "24px" : "64px",
713
+ // ✅ На десктопе под логотипом (24px + 28px логотип + 12px отступ)
711
714
  left: "24px",
712
715
  // ✅ Та же позиция что и логотип
713
716
  zIndex: 10
@@ -715,26 +718,26 @@ function Oe({
715
718
  children: "←"
716
719
  }
717
720
  ),
718
- /* @__PURE__ */ o("div", { style: { ...l.gmButtonGroup, gap: `${t}px`, marginBottom: `${t * 3}px`, marginTop: `${t * 4}px`, position: "relative", zIndex: 1 }, children: Object.keys(C).map((e) => /* @__PURE__ */ o(
721
+ /* @__PURE__ */ o("div", { style: { ...l.gmButtonGroup, gap: `${n}px`, marginBottom: `${n * 3}px`, marginTop: `${n * 4}px`, position: "relative", zIndex: 1 }, children: Object.keys(F).map((e) => /* @__PURE__ */ o(
719
722
  "button",
720
723
  {
721
724
  onClick: () => {
722
- ee(e), y("rounds");
725
+ J(e), x("rounds");
723
726
  },
724
- onMouseEnter: (n) => {
725
- n.currentTarget.style.backgroundColor = "#f0f0f0", n.currentTarget.style.borderColor = "#1f2937", n.currentTarget.style.transform = "scale(1.05)";
727
+ onMouseEnter: (t) => {
728
+ t.currentTarget.style.backgroundColor = "#f0f0f0", t.currentTarget.style.borderColor = "#1f2937", t.currentTarget.style.transform = "scale(1.05)";
726
729
  },
727
- onMouseLeave: (n) => {
728
- n.currentTarget.style.backgroundColor = "transparent", n.currentTarget.style.borderColor = "#e5e7eb", n.currentTarget.style.transform = "scale(1)";
730
+ onMouseLeave: (t) => {
731
+ t.currentTarget.style.backgroundColor = "transparent", t.currentTarget.style.borderColor = "#e5e7eb", t.currentTarget.style.transform = "scale(1)";
729
732
  },
730
733
  style: {
731
734
  fontFamily: '"Onest", system-ui, sans-serif',
732
735
  fontWeight: 500,
733
736
  fontSize: `${s.button}px`,
734
- padding: `${t * 1.2}px ${t * 2}px`,
735
- borderRadius: `${v * 2}px`,
737
+ padding: `${n * 1.2}px ${n * 2}px`,
738
+ borderRadius: `${$ * 2}px`,
736
739
  // Более округлые для облачков
737
- margin: `${t / 2}px`,
740
+ margin: `${n / 2}px`,
738
741
  background: "transparent",
739
742
  border: "2px solid #e5e7eb",
740
743
  color: "#1f2937",
@@ -746,13 +749,13 @@ function Oe({
746
749
  },
747
750
  e
748
751
  )) })
749
- ] }) : x === "rounds" ? /* @__PURE__ */ m(G, { children: [
750
- X,
752
+ ] }) : y === "rounds" ? /* @__PURE__ */ m(_, { children: [
753
+ G,
751
754
  /* @__PURE__ */ o("div", { dangerouslySetInnerHTML: { __html: K } }),
752
755
  /* @__PURE__ */ o(
753
756
  "button",
754
757
  {
755
- onClick: () => y("category"),
758
+ onClick: () => x("category"),
756
759
  onMouseEnter: (e) => {
757
760
  e.currentTarget.style.backgroundColor = "#e5e7eb";
758
761
  },
@@ -763,11 +766,11 @@ function Oe({
763
766
  ...l.gmButton,
764
767
  ...l.gmButtonSecondary,
765
768
  fontSize: `${s.button}px`,
766
- padding: `${t}px ${t * 1.5}px`,
767
- borderRadius: `${v}px`,
769
+ padding: `${n}px ${n * 1.5}px`,
770
+ borderRadius: `${$}px`,
768
771
  position: "absolute",
769
- top: "24px",
770
- // ✅ Поднял кнопку назад выше
772
+ top: d ? "24px" : "64px",
773
+ // ✅ На десктопе под логотипом (24px + 28px логотип + 12px отступ)
771
774
  left: "24px",
772
775
  // ✅ Та же позиция что и логотип
773
776
  zIndex: 10
@@ -775,27 +778,27 @@ function Oe({
775
778
  children: "←"
776
779
  }
777
780
  ),
778
- /* @__PURE__ */ o("h1", { style: { ...l.gmHeadline1, fontSize: `${s.headline1}px`, marginBottom: `${t * 2}px`, position: "relative", zIndex: 1 }, children: "Choose rounds" }),
779
- /* @__PURE__ */ o("div", { style: { ...l.gmButtonGroup, gap: `${t}px`, marginBottom: `${t * 3}px`, position: "relative", zIndex: 1 }, children: [1, 3, 5].map((e) => /* @__PURE__ */ o(
781
+ /* @__PURE__ */ o("h1", { style: { ...l.gmHeadline1, fontSize: `${s.headline1}px`, marginBottom: `${n * 2}px`, position: "relative", zIndex: 1 }, children: "Choose rounds" }),
782
+ /* @__PURE__ */ o("div", { style: { ...l.gmButtonGroup, gap: `${n}px`, marginBottom: `${n * 3}px`, position: "relative", zIndex: 1 }, children: [1, 3, 5].map((e) => /* @__PURE__ */ o(
780
783
  "button",
781
784
  {
782
785
  onClick: () => {
783
- N(e), $e();
786
+ ee(e), ve();
784
787
  },
785
- onMouseEnter: (n) => {
786
- n.currentTarget.style.backgroundColor = "#f0f0f0", n.currentTarget.style.borderColor = "#1f2937", n.currentTarget.style.transform = "scale(1.05)";
788
+ onMouseEnter: (t) => {
789
+ t.currentTarget.style.backgroundColor = "#f0f0f0", t.currentTarget.style.borderColor = "#1f2937", t.currentTarget.style.transform = "scale(1.05)";
787
790
  },
788
- onMouseLeave: (n) => {
789
- n.currentTarget.style.backgroundColor = "transparent", n.currentTarget.style.borderColor = "#e5e7eb", n.currentTarget.style.transform = "scale(1)";
791
+ onMouseLeave: (t) => {
792
+ t.currentTarget.style.backgroundColor = "transparent", t.currentTarget.style.borderColor = "#e5e7eb", t.currentTarget.style.transform = "scale(1)";
790
793
  },
791
794
  style: {
792
795
  fontFamily: '"Onest", system-ui, sans-serif',
793
796
  fontWeight: 500,
794
797
  fontSize: `${s.button}px`,
795
- padding: `${t * 1.2}px ${t * 2}px`,
796
- borderRadius: `${v * 2}px`,
798
+ padding: `${n * 1.2}px ${n * 2}px`,
799
+ borderRadius: `${$ * 2}px`,
797
800
  // Более округлые для облачков
798
- margin: `${t / 2}px`,
801
+ margin: `${n / 2}px`,
799
802
  background: "transparent",
800
803
  border: "2px solid #e5e7eb",
801
804
  color: "#1f2937",
@@ -807,17 +810,17 @@ function Oe({
807
810
  },
808
811
  e
809
812
  )) })
810
- ] }) : x === "game" ? /* @__PURE__ */ m(G, { children: [
811
- X,
813
+ ] }) : y === "game" ? /* @__PURE__ */ m(_, { children: [
814
+ G,
812
815
  !a && /* @__PURE__ */ o("div", { dangerouslySetInnerHTML: { __html: K } }),
813
816
  " ",
814
817
  /* @__PURE__ */ m("div", { style: {
815
818
  ...l.gmInfoBox,
816
- padding: `${a ? t * 0.5 : t * 0.8}px`,
819
+ padding: `${a ? n * 0.5 : n * 0.8}px`,
817
820
  // ✅ Унифицированный padding для всех landscape iPhone
818
- marginBottom: `${a ? t * 0.2 : t * 0.5}px`,
821
+ marginBottom: `${a ? n * 0.2 : n * 0.5}px`,
819
822
  // ✅ Унифицированный margin для всех landscape iPhone
820
- maxWidth: `${(d || r) * 0.9}px`,
823
+ maxWidth: `${(g || r) * 0.9}px`,
821
824
  textAlign: "center",
822
825
  // ✅ Центрируем текст по плашке
823
826
  display: "flex",
@@ -825,13 +828,13 @@ function Oe({
825
828
  alignItems: "center",
826
829
  justifyContent: "center"
827
830
  }, children: [
828
- /* @__PURE__ */ m("h3", { style: { ...l.gmHeadline3, fontSize: `${s.headline3}px`, marginBottom: `${t * 0.2}px`, textAlign: "center" }, children: [
831
+ /* @__PURE__ */ m("h3", { style: { ...l.gmHeadline3, fontSize: `${s.headline3}px`, marginBottom: `${n * 0.2}px`, textAlign: "center" }, children: [
829
832
  "Category: ",
830
- b
833
+ w
831
834
  ] }),
832
835
  /* @__PURE__ */ m("p", { style: { ...l.gmBodyM, fontSize: `${s.bodyM}px`, marginBottom: "0px", textAlign: "center" }, children: [
833
836
  "Round ",
834
- L,
837
+ v,
835
838
  " of ",
836
839
  M
837
840
  ] })
@@ -839,9 +842,9 @@ function Oe({
839
842
  S && /* @__PURE__ */ m("p", { style: {
840
843
  ...l.gmBodyS,
841
844
  fontSize: `${s.bodyS}px`,
842
- marginTop: `${a ? t * 0.2 : t * 0.5}px`,
845
+ marginTop: `${a ? n * 0.2 : n * 0.5}px`,
843
846
  // ✅ Унифицированный margin для всех landscape iPhone
844
- marginBottom: `${a ? t * 0.3 : t}px`
847
+ marginBottom: `${a ? n * 0.3 : n}px`
845
848
  // ✅ Унифицированный margin для всех landscape iPhone
846
849
  }, children: [
847
850
  "I am thinking of a word that is ",
@@ -849,46 +852,46 @@ function Oe({
849
852
  " letters long"
850
853
  ] }),
851
854
  /* @__PURE__ */ o("div", { style: {
852
- margin: `${a ? t * 0.3 : t}px 0`,
855
+ margin: `${a ? n * 0.3 : n}px 0`,
853
856
  // ✅ Унифицированный margin для всех landscape iPhone
854
857
  display: "flex",
855
858
  justifyContent: "center",
856
859
  alignItems: "center"
857
860
  }, children: /* @__PURE__ */ o(
858
- je,
861
+ Ye,
859
862
  {
860
- mistakes: U,
863
+ mistakes: D,
861
864
  maxMistakes: oe,
862
- size: j ? Math.max(80, Math.min(110, (d || r) * 0.16)) : g ? a ? Math.max(90, Math.min(130, Math.min(window.innerWidth * 0.3, window.innerHeight * 0.2))) : Math.max(100, Math.min(150, Math.min(window.innerWidth * 0.3, window.innerHeight * 0.2))) : Math.max(100, Math.min(150, (d || r) * 0.2))
865
+ size: I ? Math.max(80, Math.min(110, (g || r) * 0.16)) : d ? a ? Math.max(90, Math.min(130, Math.min(window.innerWidth * 0.3, window.innerHeight * 0.2))) : Math.max(100, Math.min(150, Math.min(window.innerWidth * 0.3, window.innerHeight * 0.2))) : Math.max(100, Math.min(150, (g || r) * 0.2))
863
866
  }
864
867
  ) }),
865
868
  /* @__PURE__ */ o("div", { style: {
866
869
  ...l.gmWordDisplay,
867
870
  fontSize: `${a ? Math.max(14, Math.min(20, s.wordDisplay * 0.8)) : Math.max(16, Math.min(24, s.wordDisplay * 0.9))}px`,
868
- margin: `${a ? t * 0.3 : t}px 0`,
871
+ margin: `${a ? n * 0.3 : n}px 0`,
869
872
  // ✅ Унифицированный margin для всех landscape iPhone
870
- letterSpacing: `${a ? t * 0.6 : t * 0.8}px`,
873
+ letterSpacing: `${a ? n * 0.6 : n * 0.8}px`,
871
874
  minHeight: `${(a ? Math.max(14, Math.min(20, s.wordDisplay * 0.8)) : Math.max(16, Math.min(24, s.wordDisplay * 0.9))) * 1.2}px`
872
- }, children: ve || "Loading..." }),
875
+ }, children: Se || "Loading..." }),
873
876
  /* @__PURE__ */ o("div", { style: {
874
877
  ...l.gmInfoBox,
875
- padding: `${a ? t * 0.5 : t}px`,
878
+ padding: `${a ? n * 0.5 : n}px`,
876
879
  // ✅ Унифицированный padding для всех landscape iPhone
877
- marginTop: `${a ? t * 0.3 : t}px`,
880
+ marginTop: `${a ? n * 0.3 : n}px`,
878
881
  // ✅ Унифицированный margin для всех landscape iPhone
879
- marginBottom: `${a ? t * 0.3 : t}px`,
882
+ marginBottom: `${a ? n * 0.3 : n}px`,
880
883
  // ✅ Унифицированный margin для всех landscape iPhone
881
- maxWidth: `${(d || r) * 0.95}px`
884
+ maxWidth: `${(g || r) * 0.95}px`
882
885
  }, children: /* @__PURE__ */ o("div", { style: {
883
886
  display: "flex",
884
887
  flexWrap: "wrap",
885
- gap: `${a ? t / 4 : t / 3}px`,
888
+ gap: `${a ? n / 4 : n / 3}px`,
886
889
  // ✅ Унифицированный gap для всех landscape iPhone
887
890
  justifyContent: "center",
888
891
  alignItems: "center",
889
892
  fontFamily: '"Onest", system-ui, sans-serif'
890
- }, children: Se.map((e) => {
891
- const n = a ? Math.max((d || r) * 0.05, t * 1.5) : Math.max((d || r) * 0.06, t * 2), i = a ? Math.max((d || r) * 0.1, t * 2.5) : Math.max((d || r) * 0.12, t * 3);
893
+ }, children: Le.map((e) => {
894
+ const t = a ? Math.max((g || r) * 0.05, n * 1.5) : Math.max((g || r) * 0.06, n * 2), i = a ? Math.max((g || r) * 0.1, n * 2.5) : Math.max((g || r) * 0.12, n * 3);
892
895
  return /* @__PURE__ */ o(
893
896
  "button",
894
897
  {
@@ -902,13 +905,13 @@ function Oe({
902
905
  },
903
906
  style: {
904
907
  flex: "1 1 auto",
905
- padding: `${a ? t * 0.4 : t * 0.5}px ${a ? t * 0.3 : t * 0.4}px`,
908
+ padding: `${a ? n * 0.4 : n * 0.5}px ${a ? n * 0.3 : n * 0.4}px`,
906
909
  // ✅ Унифицированный padding для всех landscape iPhone
907
- borderRadius: `${v * 0.5}px`,
910
+ borderRadius: `${$ * 0.5}px`,
908
911
  background: "#f9f9f9",
909
912
  color: "#1f2937",
910
913
  border: "1px solid #e5e7eb",
911
- minWidth: `${n}px`,
914
+ minWidth: `${t}px`,
912
915
  maxWidth: `${i}px`,
913
916
  textAlign: "center",
914
917
  display: "flex",
@@ -925,14 +928,14 @@ function Oe({
925
928
  e
926
929
  );
927
930
  }) }) }),
928
- F.length > 0 && /* @__PURE__ */ o("div", { style: {
931
+ T.length > 0 && /* @__PURE__ */ o("div", { style: {
929
932
  ...l.gmGuessedLetters,
930
933
  fontSize: `${Math.max(10, Math.min(12, s.bodyS * 0.85))}px`,
931
- marginTop: `${t * 0.5}px`,
934
+ marginTop: `${n * 0.5}px`,
932
935
  marginBottom: "2px"
933
936
  }, children: /* @__PURE__ */ m("span", { style: { color: "#6b7280" }, children: [
934
937
  "Guessed letters: ",
935
- /* @__PURE__ */ o("strong", { children: F.join(", ") })
938
+ /* @__PURE__ */ o("strong", { children: T.join(", ") })
936
939
  ] }) }),
937
940
  f === "win" && /* @__PURE__ */ o("div", { style: {
938
941
  ...l.gmStatusWin,
@@ -947,10 +950,10 @@ function Oe({
947
950
  "The hangman is complete! The word was: ",
948
951
  /* @__PURE__ */ o("strong", { children: S })
949
952
  ] }),
950
- f !== null && L < M && /* @__PURE__ */ o("div", { style: { marginTop: "2px", marginBottom: `${t}px` }, children: /* @__PURE__ */ o(
953
+ f !== null && v < M && /* @__PURE__ */ o("div", { style: { marginTop: "2px", marginBottom: `${n}px` }, children: /* @__PURE__ */ o(
951
954
  "button",
952
955
  {
953
- onClick: Le,
956
+ onClick: Fe,
954
957
  onMouseEnter: (e) => {
955
958
  e.currentTarget.style.backgroundColor = "#d43a32";
956
959
  },
@@ -960,16 +963,16 @@ function Oe({
960
963
  style: {
961
964
  ...l.gmButton,
962
965
  fontSize: `${Math.max(11, Math.min(14, s.button * 0.85))}px`,
963
- padding: `${t * 0.6}px ${t * 1.2}px`,
964
- borderRadius: `${v}px`
966
+ padding: `${n * 0.6}px ${n * 1.2}px`,
967
+ borderRadius: `${$}px`
965
968
  },
966
969
  children: "NEXT"
967
970
  }
968
971
  ) }),
969
- f !== null && L >= M && /* @__PURE__ */ o("div", { style: { marginTop: "2px", marginBottom: `${t}px` }, children: /* @__PURE__ */ o(
972
+ f !== null && v >= M && /* @__PURE__ */ o("div", { style: { marginTop: "2px", marginBottom: `${n}px` }, children: /* @__PURE__ */ o(
970
973
  "button",
971
974
  {
972
- onClick: () => y("result"),
975
+ onClick: () => x("result"),
973
976
  onMouseEnter: (e) => {
974
977
  e.currentTarget.style.backgroundColor = "#d43a32";
975
978
  },
@@ -979,29 +982,29 @@ function Oe({
979
982
  style: {
980
983
  ...l.gmButton,
981
984
  fontSize: `${s.button}px`,
982
- padding: `${t}px ${t * 1.5}px`,
983
- borderRadius: `${v}px`
985
+ padding: `${n}px ${n * 1.5}px`,
986
+ borderRadius: `${$}px`
984
987
  },
985
988
  children: "View results"
986
989
  }
987
990
  ) }),
988
- f === null && F.length === 0 && /* @__PURE__ */ o("p", { style: {
991
+ f === null && T.length === 0 && /* @__PURE__ */ o("p", { style: {
989
992
  ...l.gmBodyS,
990
993
  fontSize: `${s.bodyS}px`,
991
- marginTop: `${t}px`,
992
- marginBottom: `${t}px`
994
+ marginTop: `${n}px`,
995
+ marginBottom: `${n}px`
993
996
  }, children: "Type a letter on your keyboard" })
994
- ] }) : x === "result" ? /* @__PURE__ */ m(G, { children: [
995
- X,
997
+ ] }) : y === "result" ? /* @__PURE__ */ m(_, { children: [
998
+ G,
996
999
  /* @__PURE__ */ o("h1", { style: {
997
1000
  ...l.gmHeadline1,
998
1001
  fontSize: `${s.headline1}px`,
999
- marginBottom: `${t * 2}px`
1002
+ marginBottom: `${n * 2}px`
1000
1003
  }, children: "🎊 Game Finished!" }),
1001
1004
  /* @__PURE__ */ m("p", { style: {
1002
1005
  ...l.gmBodyL,
1003
1006
  fontSize: `${s.bodyL}px`,
1004
- marginBottom: `${t * 2}px`
1007
+ marginBottom: `${n * 2}px`
1005
1008
  }, children: [
1006
1009
  "You guessed ",
1007
1010
  /* @__PURE__ */ o("strong", { children: te }),
@@ -1012,20 +1015,20 @@ function Oe({
1012
1015
  /* @__PURE__ */ m("div", { style: {
1013
1016
  display: "flex",
1014
1017
  flexDirection: "column",
1015
- gap: `${t}px`,
1018
+ gap: `${n}px`,
1016
1019
  alignItems: "center"
1017
1020
  }, children: [
1018
1021
  /* @__PURE__ */ o(
1019
1022
  "button",
1020
1023
  {
1021
1024
  onClick: () => {
1022
- if (!b || M === 0) {
1023
- y("lobby");
1025
+ if (!w || M === 0) {
1026
+ x("lobby");
1024
1027
  return;
1025
1028
  }
1026
1029
  W([]);
1027
- const e = Z(b, []);
1028
- e && (I(e), W([e]), R([]), T(0), H(1), D(0), B(null), y("game"));
1030
+ const e = V(w, []);
1031
+ e && (z(e), W([e]), C([]), H(0), R(1), O(0), B(null), x("game"));
1029
1032
  },
1030
1033
  onMouseEnter: (e) => {
1031
1034
  e.currentTarget.style.backgroundColor = "#d43a32";
@@ -1036,8 +1039,8 @@ function Oe({
1036
1039
  style: {
1037
1040
  ...l.gmButton,
1038
1041
  fontSize: `${s.button}px`,
1039
- padding: `${t}px ${t * 1.5}px`,
1040
- borderRadius: `${v}px`,
1042
+ padding: `${n}px ${n * 1.5}px`,
1043
+ borderRadius: `${$}px`,
1041
1044
  minWidth: "200px"
1042
1045
  },
1043
1046
  children: "Play again"
@@ -1046,7 +1049,7 @@ function Oe({
1046
1049
  /* @__PURE__ */ o(
1047
1050
  "button",
1048
1051
  {
1049
- onClick: () => y("lobby"),
1052
+ onClick: () => x("lobby"),
1050
1053
  onMouseEnter: (e) => {
1051
1054
  e.currentTarget.style.backgroundColor = "#e5e7eb";
1052
1055
  },
@@ -1057,8 +1060,8 @@ function Oe({
1057
1060
  ...l.gmButton,
1058
1061
  ...l.gmButtonSecondary,
1059
1062
  fontSize: `${s.button}px`,
1060
- padding: `${t}px ${t * 1.5}px`,
1061
- borderRadius: `${v}px`,
1063
+ padding: `${n}px ${n * 1.5}px`,
1064
+ borderRadius: `${$}px`,
1062
1065
  minWidth: "200px"
1063
1066
  },
1064
1067
  children: "Exit"
@@ -1087,19 +1090,19 @@ function Oe({
1087
1090
  "div",
1088
1091
  {
1089
1092
  style: {
1090
- width: g ? "100%" : d || r || 1e3,
1091
- height: g ? "100%" : d || r || 1e3,
1093
+ width: d ? "100%" : g || r || 1e3,
1094
+ height: d ? "100%" : g || r || 1e3,
1092
1095
  display: "flex",
1093
1096
  justifyContent: "center",
1094
1097
  alignItems: "center",
1095
1098
  overflow: "hidden",
1096
- borderRadius: g ? 0 : "20px",
1099
+ borderRadius: d ? 0 : "20px",
1097
1100
  background: "#ffffff",
1098
- boxShadow: g ? "none" : "0 0 40px rgba(0,0,0,0.1)",
1099
- margin: g ? "0 auto" : "unset",
1101
+ boxShadow: d ? "none" : "0 0 40px rgba(0,0,0,0.1)",
1102
+ margin: d ? "0 auto" : "unset",
1100
1103
  position: "relative",
1101
1104
  // needed so absolute logo is inside the square
1102
- transform: g && !a ? `scale(${ne})` : void 0
1105
+ transform: d && !a ? `scale(${ne})` : void 0
1103
1106
  // ✅ scale только для портретного режима мобильных
1104
1107
  },
1105
1108
  children: /* @__PURE__ */ o(
@@ -1113,7 +1116,7 @@ function Oe({
1113
1116
  justifyContent: "center",
1114
1117
  alignItems: "center"
1115
1118
  },
1116
- children: /* @__PURE__ */ o("div", { style: Te, children: Be() })
1119
+ children: /* @__PURE__ */ o("div", { style: Be, children: We() })
1117
1120
  }
1118
1121
  )
1119
1122
  }
@@ -1122,8 +1125,8 @@ function Oe({
1122
1125
  );
1123
1126
  }
1124
1127
  export {
1125
- Oe as Game,
1126
- Oe as HangmanLobbyGame,
1127
- Oe as default
1128
+ Ge as Game,
1129
+ Ge as HangmanLobbyGame,
1130
+ Ge as default
1128
1131
  };
1129
1132
  //# sourceMappingURL=speakid-hangman.es.js.map