@bigz-app/booking-widget 1.1.4 → 1.1.5

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 +1 @@
1
- {"version":3,"file":"PromoDialog.d.ts","sourceRoot":"","sources":["../../src/components/PromoDialog.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,iBAAiB;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,UAAU,gBAAgB;IACtB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,IAAI,CAAC;CAC1B;AA8DD,wBAAgB,WAAW,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,gBAAgB,sCAib5E"}
1
+ {"version":3,"file":"PromoDialog.d.ts","sourceRoot":"","sources":["../../src/components/PromoDialog.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,iBAAiB;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,UAAU,gBAAgB;IACtB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,IAAI,CAAC;CAC1B;AAkCD,wBAAgB,WAAW,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,gBAAgB,sCA4W5E"}
package/dist/index.cjs CHANGED
@@ -13284,52 +13284,24 @@ const getThemeConfig = (theme = "generic") => {
13284
13284
  backgroundImage: "https://images.unsplash.com/photo-1502680390469-be75c86b636f?w=600&q=80",
13285
13285
  primaryColor: "#0c4a6e",
13286
13286
  secondaryColor: "#0891b2",
13287
- icon: "🏄‍♂️",
13288
- decorations: ["🎄", "⭐"],
13289
- animation: {
13290
- floatDuration: 3,
13291
- sparkleEnabled: true,
13292
- snowfallEnabled: true,
13293
- },
13294
13287
  };
13295
13288
  case "summer":
13296
13289
  return {
13297
13290
  backgroundImage: "https://images.unsplash.com/photo-1507525428034-b723cf961d3e?w=600&q=80",
13298
13291
  primaryColor: "#059669",
13299
13292
  secondaryColor: "#10b981",
13300
- icon: "☀️",
13301
- decorations: ["🌴", "🏖️"],
13302
- animation: {
13303
- floatDuration: 2.5,
13304
- sparkleEnabled: true,
13305
- snowfallEnabled: false,
13306
- },
13307
13293
  };
13308
13294
  case "beach":
13309
13295
  return {
13310
13296
  backgroundImage: "https://images.unsplash.com/photo-1502680390469-be75c86b636f?w=600&q=80",
13311
13297
  primaryColor: "#0891b2",
13312
13298
  secondaryColor: "#06b6d4",
13313
- icon: "🏄‍♀️",
13314
- decorations: ["🌊", "🏄"],
13315
- animation: {
13316
- floatDuration: 3,
13317
- sparkleEnabled: false,
13318
- snowfallEnabled: false,
13319
- },
13320
13299
  };
13321
13300
  default:
13322
13301
  return {
13323
13302
  backgroundImage: undefined,
13324
13303
  primaryColor: "#0c4a6e",
13325
13304
  secondaryColor: "#0891b2",
13326
- icon: "🎁",
13327
- decorations: [],
13328
- animation: {
13329
- floatDuration: 3,
13330
- sparkleEnabled: false,
13331
- snowfallEnabled: false,
13332
- },
13333
13305
  };
13334
13306
  }
13335
13307
  };
@@ -13387,192 +13359,152 @@ function PromoDialog({ config, onClose, onCtaClick }) {
13387
13359
  position: "fixed",
13388
13360
  inset: 0,
13389
13361
  zIndex: 60,
13390
- backgroundColor: "rgba(0, 20, 40, 0.85)",
13391
- backdropFilter: "blur(4px)",
13362
+ backgroundColor: "rgba(0, 20, 40, 0.8)",
13363
+ backdropFilter: "blur(6px)",
13392
13364
  transition: "opacity 0.3s ease-out",
13393
13365
  opacity: isVisible ? 1 : 0,
13394
13366
  } }), jsxRuntime.jsx("div", { style: {
13395
13367
  position: "fixed",
13396
13368
  zIndex: 61,
13397
- width: "92%",
13398
- maxWidth: "440px",
13369
+ width: "90%",
13370
+ maxWidth: "400px",
13399
13371
  transition: "all 0.3s",
13400
13372
  top: "50%",
13401
13373
  left: "50%",
13402
- transform: `translate(-50%, -50%) scale(${isVisible ? 1 : 0.9})`,
13374
+ transform: `translate(-50%, -50%) scale(${isVisible ? 1 : 0.95})`,
13403
13375
  opacity: isVisible ? 1 : 0,
13404
- transitionTimingFunction: "cubic-bezier(0.34, 1.56, 0.64, 1)",
13376
+ transitionTimingFunction: "cubic-bezier(0.16, 1, 0.3, 1)",
13405
13377
  }, children: jsxRuntime.jsxs("div", { style: {
13406
13378
  position: "relative",
13407
13379
  overflow: "hidden",
13408
- borderRadius: "28px",
13409
- boxShadow: "0 25px 60px -12px rgba(0,0,0,0.5), 0 0 0 1px rgba(255,255,255,0.1), inset 0 1px 0 rgba(255,255,255,0.2)",
13380
+ borderRadius: "20px",
13381
+ boxShadow: "0 25px 50px -12px rgba(0,0,0,0.5), 0 0 0 1px rgba(255,255,255,0.08)",
13410
13382
  background: `linear-gradient(165deg, ${themeConfig.primaryColor} 0%, ${themeConfig.primaryColor} 40%, ${themeConfig.secondaryColor} 100%)`,
13411
- }, children: [themeConfig.animation?.snowfallEnabled &&
13412
- Array.from({ length: 15 }).map((_, i) => (jsxRuntime.jsx("div", { style: {
13413
- position: "absolute",
13414
- pointerEvents: "none",
13415
- zIndex: 1,
13416
- color: "white",
13417
- opacity: 0,
13418
- left: `${5 + Math.random() * 90}%`,
13419
- top: "-10px",
13420
- fontSize: `${10 + Math.random() * 14}px`,
13421
- animation: `promo-snow ${4 + Math.random() * 3}s linear infinite`,
13422
- animationDelay: `${Math.random() * 4}s`,
13423
- }, children: "\u2744" }, i))), jsxRuntime.jsxs("div", { style: {
13383
+ }, children: [themeConfig.backgroundImage && (jsxRuntime.jsxs("div", { style: {
13424
13384
  position: "relative",
13425
- display: "flex",
13426
- alignItems: "center",
13427
- justifyContent: "center",
13385
+ height: "120px",
13428
13386
  overflow: "hidden",
13429
- height: "180px",
13430
- background: `linear-gradient(180deg, rgba(0,0,0,0) 0%, ${themeConfig.primaryColor}cc 100%)`,
13431
- }, children: [themeConfig.backgroundImage && (jsxRuntime.jsx("img", { src: themeConfig.backgroundImage, alt: "Background", style: {
13387
+ }, children: [jsxRuntime.jsx("img", { src: themeConfig.backgroundImage, alt: "", style: {
13432
13388
  position: "absolute",
13433
13389
  inset: 0,
13434
13390
  width: "100%",
13435
13391
  height: "100%",
13436
13392
  objectFit: "cover",
13437
- opacity: 0.6,
13438
- } })), jsxRuntime.jsx("div", { style: {
13393
+ opacity: 0.5,
13394
+ } }), jsxRuntime.jsx("div", { style: {
13439
13395
  position: "absolute",
13440
13396
  inset: 0,
13441
- background: `linear-gradient(180deg, ${themeConfig.primaryColor}4d 0%, ${themeConfig.primaryColor}e6 100%)`,
13442
- } }), jsxRuntime.jsx("div", { style: {
13443
- position: "relative",
13444
- zIndex: 2,
13445
- fontSize: "64px",
13446
- filter: "drop-shadow(0 8px 16px rgba(0,0,0,0.4))",
13447
- animation: `promo-float ${themeConfig.animation?.floatDuration || 3}s ease-in-out infinite`,
13448
- }, children: themeConfig.icon }), themeConfig.decorations &&
13449
- themeConfig.decorations.map((decoration, i) => (jsxRuntime.jsx("div", { style: {
13450
- position: "absolute",
13451
- top: i === 0 ? "16px" : "20px",
13452
- left: i === 0 ? "20px" : "auto",
13453
- right: i === 1 ? "20px" : "auto",
13454
- fontSize: i === 0 ? "28px" : "24px",
13455
- animation: themeConfig.animation?.sparkleEnabled
13456
- ? `promo-sparkle 2s ease-in-out infinite ${i * 0.5}s`
13457
- : undefined,
13458
- }, children: decoration }, i)))] }), jsxRuntime.jsx("button", { onClick: handleClose, style: {
13397
+ background: `linear-gradient(180deg, ${themeConfig.primaryColor}33 0%, ${themeConfig.primaryColor}ee 100%)`,
13398
+ } })] })), jsxRuntime.jsx("button", { onClick: handleClose, style: {
13459
13399
  position: "absolute",
13460
- top: "16px",
13461
- right: "16px",
13400
+ top: "12px",
13401
+ right: "12px",
13462
13402
  display: "flex",
13463
13403
  alignItems: "center",
13464
13404
  justifyContent: "center",
13465
13405
  cursor: "pointer",
13466
13406
  zIndex: 10,
13467
- width: "36px",
13468
- height: "36px",
13407
+ width: "32px",
13408
+ height: "32px",
13469
13409
  borderRadius: "50%",
13470
13410
  border: "none",
13471
- backgroundColor: "rgba(0, 0, 0, 0.3)",
13411
+ backgroundColor: "rgba(0, 0, 0, 0.25)",
13472
13412
  backdropFilter: "blur(4px)",
13473
- color: "white",
13474
- fontSize: "22px",
13413
+ color: "rgba(255,255,255,0.8)",
13414
+ fontSize: "18px",
13475
13415
  lineHeight: 1,
13476
- transition: "all 0.15s ease",
13416
+ transition: "background-color 0.15s ease",
13477
13417
  }, children: "\u00D7" }), jsxRuntime.jsxs("div", { style: {
13478
13418
  position: "relative",
13479
13419
  textAlign: "center",
13480
13420
  zIndex: 2,
13481
- padding: "28px 28px 32px 28px",
13421
+ padding: "20px 24px 24px",
13482
13422
  }, children: [jsxRuntime.jsx("h2", { style: {
13483
- fontWeight: 800,
13484
- fontSize: "26px",
13423
+ fontWeight: 700,
13424
+ fontSize: "20px",
13485
13425
  color: "white",
13486
- marginBottom: "6px",
13487
- letterSpacing: "-0.025em",
13488
- filter: "drop-shadow(0 2px 8px rgba(0,0,0,0.3))",
13426
+ letterSpacing: "-0.02em",
13427
+ lineHeight: 1.25,
13489
13428
  margin: "0 0 6px 0",
13490
13429
  }, children: config.title }), jsxRuntime.jsxs("p", { style: {
13491
- fontSize: "17px",
13492
- color: "rgba(255, 255, 255, 0.9)",
13493
- marginBottom: "20px",
13430
+ fontSize: "14px",
13431
+ color: "rgba(255, 255, 255, 0.85)",
13494
13432
  lineHeight: 1.5,
13495
- margin: "0 0 20px 0",
13496
- }, children: [config.subtitle, config.discountAmount && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("br", {}), jsxRuntime.jsxs("strong", { style: { color: themeConfig.secondaryColor }, children: [config.discountAmount, " ", t("promo.discount")] })] }))] }), config.discountCode && (jsxRuntime.jsxs("div", { style: {
13497
- marginBottom: "20px",
13498
- backgroundColor: "white",
13499
- borderRadius: "16px",
13500
- padding: "18px 20px",
13501
- boxShadow: "0 8px 24px rgba(0,0,0,0.15), inset 0 -2px 0 rgba(0,0,0,0.05)",
13433
+ margin: "0 0 16px 0",
13434
+ }, children: [config.subtitle, config.discountAmount && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: ["", jsxRuntime.jsxs("strong", { style: { color: "white" }, children: [config.discountAmount, " ", t("promo.discount")] })] }))] }), config.discountCode && (jsxRuntime.jsxs("div", { style: {
13435
+ marginBottom: "16px",
13436
+ backgroundColor: "rgba(255,255,255,0.12)",
13437
+ borderRadius: "12px",
13438
+ padding: "12px 16px",
13439
+ border: "1px solid rgba(255,255,255,0.1)",
13502
13440
  }, children: [jsxRuntime.jsx("p", { style: {
13503
13441
  textTransform: "uppercase",
13504
- fontWeight: 600,
13505
- fontSize: "11px",
13442
+ fontWeight: 500,
13443
+ fontSize: "10px",
13506
13444
  letterSpacing: "1.5px",
13507
- color: "#64748b",
13508
- marginBottom: "10px",
13509
- margin: "0 0 10px 0",
13445
+ color: "rgba(255,255,255,0.6)",
13446
+ margin: "0 0 8px 0",
13510
13447
  }, children: t("promo.giftCode") }), jsxRuntime.jsxs("div", { style: {
13511
13448
  display: "flex",
13512
13449
  alignItems: "center",
13513
13450
  justifyContent: "center",
13514
- gap: "12px",
13515
- }, children: [jsxRuntime.jsx("div", { style: {
13516
- padding: "10px 20px",
13517
- borderRadius: "10px",
13518
- background: `linear-gradient(135deg, ${themeConfig.secondaryColor} 0%, ${themeConfig.primaryColor} 100%)`,
13519
- boxShadow: `0 4px 12px ${themeConfig.secondaryColor}4d`,
13520
- }, children: jsxRuntime.jsx("span", { style: {
13521
- fontWeight: 900,
13522
- fontSize: "28px",
13523
- color: "white",
13524
- letterSpacing: "6px",
13525
- filter: "drop-shadow(0 2px 4px rgba(0,0,0,0.2))",
13526
- }, children: discountCode }) }), jsxRuntime.jsx("button", { onClick: handleCopyCode, style: {
13451
+ gap: "10px",
13452
+ }, children: [jsxRuntime.jsx("span", { style: {
13453
+ fontWeight: 800,
13454
+ fontSize: "22px",
13455
+ color: "white",
13456
+ letterSpacing: "4px",
13457
+ fontFamily: "monospace, monospace",
13458
+ }, children: discountCode }), jsxRuntime.jsx("button", { onClick: handleCopyCode, style: {
13527
13459
  display: "flex",
13528
13460
  alignItems: "center",
13529
13461
  cursor: "pointer",
13530
13462
  whiteSpace: "nowrap",
13531
- padding: "12px 16px",
13532
- borderRadius: "10px",
13533
- border: "2px solid",
13534
- borderColor: copied ? "#22c55e" : "#e2e8f0",
13535
- backgroundColor: copied ? "#dcfce7" : "#f8fafc",
13536
- color: copied ? "#15803d" : "#475569",
13537
- fontSize: "13px",
13463
+ padding: "6px 12px",
13464
+ borderRadius: "8px",
13465
+ border: "1px solid rgba(255,255,255,0.2)",
13466
+ backgroundColor: copied
13467
+ ? "rgba(34, 197, 94, 0.2)"
13468
+ : "rgba(255,255,255,0.1)",
13469
+ color: copied ? "#86efac" : "rgba(255,255,255,0.8)",
13470
+ fontSize: "12px",
13538
13471
  fontWeight: 600,
13539
13472
  transition: "all 0.15s ease",
13540
- gap: "6px",
13541
- }, children: copied ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: ["\u2713 ", t("promo.copied")] })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2.5", children: [jsxRuntime.jsx("rect", { x: "9", y: "9", width: "13", height: "13", rx: "2", ry: "2" }), jsxRuntime.jsx("path", { d: "M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1" })] }), t("promo.copy")] })) })] })] })), config.activities && config.activities.length > 0 && (jsxRuntime.jsx("div", { style: {
13473
+ gap: "4px",
13474
+ }, children: copied ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: ["\u2713 ", t("promo.copied")] })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs("svg", { width: "13", height: "13", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2.5", children: [jsxRuntime.jsx("rect", { x: "9", y: "9", width: "13", height: "13", rx: "2", ry: "2" }), jsxRuntime.jsx("path", { d: "M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1" })] }), t("promo.copy")] })) })] })] })), config.activities && config.activities.length > 0 && (jsxRuntime.jsx("div", { style: {
13542
13475
  display: "flex",
13543
13476
  justifyContent: "center",
13544
- gap: "8px",
13545
- marginBottom: "20px",
13477
+ gap: "6px",
13478
+ marginBottom: "16px",
13546
13479
  flexWrap: "wrap",
13547
13480
  }, children: config.activities.map((activity) => (jsxRuntime.jsx("span", { style: {
13548
13481
  fontWeight: 500,
13549
- backgroundColor: "rgba(255, 255, 255, 0.15)",
13550
- backdropFilter: "blur(4px)",
13551
- padding: "6px 12px",
13552
- borderRadius: "20px",
13553
- fontSize: "13px",
13554
- color: "white",
13482
+ backgroundColor: "rgba(255, 255, 255, 0.1)",
13483
+ padding: "4px 10px",
13484
+ borderRadius: "16px",
13485
+ fontSize: "12px",
13486
+ color: "rgba(255,255,255,0.85)",
13487
+ border: "1px solid rgba(255,255,255,0.08)",
13555
13488
  }, children: activity }, activity))) })), jsxRuntime.jsxs("button", { onClick: handleCtaClick, style: {
13556
13489
  width: "100%",
13557
13490
  display: "flex",
13558
13491
  alignItems: "center",
13559
13492
  justifyContent: "center",
13560
13493
  cursor: "pointer",
13561
- fontWeight: 700,
13562
- padding: "18px 24px",
13563
- borderRadius: "14px",
13494
+ fontWeight: 600,
13495
+ padding: "14px 20px",
13496
+ borderRadius: "12px",
13564
13497
  border: "none",
13565
- color: "white",
13566
- fontSize: "18px",
13498
+ color: themeConfig.primaryColor,
13499
+ fontSize: "15px",
13567
13500
  transition: "all 0.15s ease",
13568
- gap: "10px",
13569
- background: `linear-gradient(135deg, ${themeConfig.secondaryColor} 0%, ${themeConfig.primaryColor} 100%)`,
13570
- boxShadow: `0 8px 24px ${themeConfig.secondaryColor}66, inset 0 1px 0 rgba(255,255,255,0.2)`,
13571
- }, children: [config.ctaText, jsxRuntime.jsx("span", { children: "\u2192" })] }), config.validityText && (jsxRuntime.jsx("p", { style: {
13572
- marginTop: "16px",
13573
- fontSize: "12px",
13574
- color: "rgba(255, 255, 255, 0.6)",
13575
- margin: "16px 0 0 0",
13501
+ gap: "8px",
13502
+ background: "white",
13503
+ boxShadow: "0 4px 12px rgba(0,0,0,0.15)",
13504
+ }, children: [config.ctaText, jsxRuntime.jsx("span", { style: { fontSize: "14px" }, children: "\u2192" })] }), config.validityText && (jsxRuntime.jsx("p", { style: {
13505
+ fontSize: "11px",
13506
+ color: "rgba(255, 255, 255, 0.5)",
13507
+ margin: "12px 0 0 0",
13576
13508
  }, children: config.validityText }))] })] }) })] }));
13577
13509
  return ReactDOM.createPortal(dialogContent, portalContainer);
13578
13510
  }
@@ -14613,7 +14545,7 @@ function styleInject(css, ref) {
14613
14545
  }
14614
14546
  }
14615
14547
 
14616
- var css_248z = ".booking-widget-container{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box;color:var(--bw-text-color,#1e293b);direction:ltr;display:block;font-family:var(--bw-font-family,system-ui,-apple-system,sans-serif);font-size:var(--bw-font-size,14px);isolation:isolate;line-height:1.5;position:relative;text-align:left}.booking-widget-container *,.booking-widget-container :after,.booking-widget-container :before{box-sizing:border-box;margin:0;padding:0}.booking-widget-container input,.booking-widget-container select,.booking-widget-container textarea{font-family:inherit;font-size:inherit;line-height:inherit}.booking-widget-container button{background:none;border:none;cursor:pointer;font-family:inherit;font-size:inherit}.booking-widget-container a{color:inherit;text-decoration:none}.booking-widget-container img{display:block;height:auto;max-width:100%;vertical-align:middle}.booking-widget-container ol,.booking-widget-container ul{list-style:none}.booking-widget-container h1,.booking-widget-container h2,.booking-widget-container h3,.booking-widget-container h4,.booking-widget-container h5,.booking-widget-container h6{font-size:inherit;font-weight:inherit}#booking-widget-portal{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--bw-text-color,#1e293b);direction:ltr;font-family:var(--bw-font-family,system-ui,-apple-system,sans-serif);font-size:var(--bw-font-size,14px);isolation:isolate;line-height:1.5;text-align:left}#booking-widget-portal *,#booking-widget-portal :after,#booking-widget-portal :before{box-sizing:border-box}#booking-widget-portal-root{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--bw-text-color,#1e293b);font-family:var(--bw-font-family,system-ui,-apple-system,sans-serif);font-size:var(--bw-font-size,14px);line-height:1.5}:root{--bw-highlight-color:#00b1aa;--bw-highlight-color-rgb:0,177,170;--bw-background-color:#f8fdfe;--bw-surface-color:#fff;--bw-text-color:#0e7490;--bw-text-muted:rgba(14,116,144,.7);--bw-border-color:#bae6fd;--bw-success-color:#38bdf8;--bw-warning-color:#fbbf24;--bw-error-color:#f43f5e;--bw-border-radius:18px;--bw-border-radius-small:calc(var(--bw-border-radius)*0.8);--bw-spacing:16px;--bw-spacing-large:24px;--bw-font-family:\"Inter\",system-ui,sans-serif;--bw-font-size:14px;--bw-font-size-large:18px;--bw-font-size-small:12px;--bw-shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);--bw-shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);--bw-highlight-muted:rgba(0,177,170,.1);--bw-highlight-subtle:rgba(0,177,170,.05);--bw-text-subtle:rgba(14,116,144,.4)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes promo-wave{0%,to{transform:translateX(0) translateY(0)}25%{transform:translateX(5px) translateY(-3px)}50%{transform:translateX(0) translateY(-5px)}75%{transform:translateX(-5px) translateY(-3px)}}@keyframes promo-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes promo-shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes promo-sparkle{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@keyframes promo-snow{0%{opacity:0;transform:translateY(-10px) rotate(0deg)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:translateY(350px) rotate(1turn)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes slide-in-right{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slide-out-right{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@keyframes slide-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-spin{animation:spin 1s linear infinite}.animate-shimmer{animation:shimmer 2s infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-fade-in{animation:fade-in .2s ease-out}.animate-slide-in-up{animation:slide-in-up .3s ease-out}.animate-scale-in{animation:scale-in .2s ease-out}.skeleton-shimmer{overflow:hidden;position:relative}.skeleton-shimmer:after{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);content:\"\";height:100%;left:0;position:absolute;top:0;width:100%}@media (max-width:768px){.sidebar-mobile{border-radius:0!important;max-width:100%!important;width:100%!important}}@media (max-width:600px){.event-type-list{gap:12px!important;padding:8px!important}.event-type-card{flex:1 1 100%!important;max-width:100%!important;padding:0!important}.event-type-img{height:160px!important}.event-type-title{font-size:1.1rem!important}.event-type-desc{font-size:.8rem!important;max-height:100px!important;min-height:100px!important}.event-type-content{padding:16px 24px!important}}.event-type-markdown{overflow:visible!important}.event-type-markdown p{color:var(--bw-text-muted);font-family:var(--bw-font-family);line-height:1.6;margin:0 0 8px}.event-type-markdown p:last-child{margin-bottom:0}.event-type-markdown h2{font-size:18px!important;font-weight:700!important;margin:12px 0 6px!important}.event-type-markdown h2,.event-type-markdown h3{color:var(--bw-text-color)!important;line-height:1.3!important}.event-type-markdown h3{font-size:16px!important;font-weight:600!important;margin:10px 0 4px!important}.event-type-markdown strong{color:var(--bw-text-color);font-weight:600}.event-type-markdown em{font-style:italic}.event-type-markdown u{text-decoration:underline}.event-type-markdown ul{list-style:none!important;margin:6px 0!important;padding:0 0 0 24px!important;position:relative!important}.event-type-markdown ul li{color:var(--bw-text-muted)!important;font-family:var(--bw-font-family)!important;margin-bottom:2px!important;padding-left:0!important;position:relative!important}.event-type-markdown ul li:before{color:var(--bw-text-color)!important;content:\"•\"!important;font-weight:700!important;left:-16px!important;position:absolute!important;top:0!important}.event-type-markdown ol{counter-reset:list-counter!important;list-style:none!important;margin:6px 0!important;padding:0 0 0 24px!important;position:relative!important}.event-type-markdown ol li{color:var(--bw-text-muted)!important;counter-increment:list-counter!important;font-family:var(--bw-font-family)!important;margin-bottom:2px!important;padding-left:0!important;position:relative!important}.event-type-markdown ol li:before{color:var(--bw-text-color)!important;content:counter(list-counter) \".\"!important;font-weight:700!important;left:-20px!important;position:absolute!important;top:0!important}.event-type-markdown blockquote{border-left:2px solid var(--bw-border-color);color:var(--bw-text-muted);font-style:italic;margin:4px 0;padding-left:12px}.event-type-markdown a{color:var(--bw-highlight-color);text-decoration:underline}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{color:var(--bw-text-color);font-weight:600;margin-bottom:.5em}.markdown-content h1{font-size:1.5em}.markdown-content h2{font-size:1.25em}.markdown-content h3{font-size:1.1em}.markdown-content p{line-height:1.6;margin-bottom:1em}.markdown-content ol,.markdown-content ul{margin-bottom:1em;padding-left:1.5em}.markdown-content ul{list-style-type:disc}.markdown-content ol{list-style-type:decimal}.markdown-content li{margin-bottom:.25em}.markdown-content a{color:var(--bw-highlight-color);text-decoration:underline}.markdown-content a:hover{opacity:.8}.markdown-content strong{font-weight:600}.markdown-content em{font-style:italic}.markdown-content code{background:var(--bw-highlight-subtle);border-radius:4px;font-family:monospace;font-size:.9em;padding:.125em .25em}.markdown-content blockquote{border-left:3px solid var(--bw-highlight-color);color:var(--bw-text-muted);margin:1em 0;padding-left:1em}.print-only{display:none}.print-hidden{display:block}@media print{.print-only{display:block}.print-hidden{display:none!important}.print-booking-header{border-bottom:2px solid #000;display:block;margin-bottom:24px;padding-bottom:16px;text-align:center}.print-booking-header h1{font-size:24px;margin:0 0 8px}.print-booking-header .subtitle{color:#666;font-size:14px}.print-booking-card{border:1px solid #ccc;border-radius:8px;margin-bottom:16px;padding:16px;page-break-inside:avoid}.print-section-title{border-bottom:1px solid #ddd;display:block;font-size:16px;font-weight:600;margin-bottom:12px;padding-bottom:8px}.print-detail-grid{display:grid;gap:12px;grid-template-columns:1fr 1fr}.print-detail-item{margin-bottom:8px}.print-detail-label{color:#666;font-size:12px;margin-bottom:4px}.print-detail-value{font-size:14px;font-weight:600}.print-status-badge{border-radius:9999px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.print-status-paid{background-color:#dcfce7;color:#166534;display:inline-block}.print-participant{align-items:center;background-color:#f9fafb;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:8px;padding:8px}.print-participant-name{font-weight:600}.print-participant-age{color:#666;font-size:12px}.print-payment-summary{display:block}.print-payment-row{border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:4px 0}.print-payment-row:last-child{border-bottom:none;font-weight:600}.print-footer{border-top:1px solid #ddd;color:#666;display:block;font-size:12px;margin-top:24px;padding-top:16px;text-align:center}.print-footer p{margin:4px 0}}";
14548
+ var css_248z = ".booking-widget-container{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box;color:var(--bw-text-color,#1e293b);direction:ltr;display:block;font-family:var(--bw-font-family,system-ui,-apple-system,sans-serif);font-size:var(--bw-font-size,14px);isolation:isolate;line-height:1.5;position:relative;text-align:left}.booking-widget-container *,.booking-widget-container :after,.booking-widget-container :before{box-sizing:border-box;margin:0;padding:0}.booking-widget-container input,.booking-widget-container select,.booking-widget-container textarea{font-family:inherit;font-size:inherit;line-height:inherit}.booking-widget-container button{background:none;border:none;cursor:pointer;font-family:inherit;font-size:inherit}.booking-widget-container a{color:inherit;text-decoration:none}.booking-widget-container img{display:block;height:auto;max-width:100%;vertical-align:middle}.booking-widget-container ol,.booking-widget-container ul{list-style:none}.booking-widget-container h1,.booking-widget-container h2,.booking-widget-container h3,.booking-widget-container h4,.booking-widget-container h5,.booking-widget-container h6{font-size:inherit;font-weight:inherit}#booking-widget-portal{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--bw-text-color,#1e293b);direction:ltr;font-family:var(--bw-font-family,system-ui,-apple-system,sans-serif);font-size:var(--bw-font-size,14px);isolation:isolate;line-height:1.5;text-align:left}#booking-widget-portal *,#booking-widget-portal :after,#booking-widget-portal :before{box-sizing:border-box}#booking-widget-portal-root{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--bw-text-color,#1e293b);font-family:var(--bw-font-family,system-ui,-apple-system,sans-serif);font-size:var(--bw-font-size,14px);line-height:1.5}:root{--bw-highlight-color:#00b1aa;--bw-highlight-color-rgb:0,177,170;--bw-background-color:#f8fdfe;--bw-surface-color:#fff;--bw-text-color:#0e7490;--bw-text-muted:rgba(14,116,144,.7);--bw-border-color:#bae6fd;--bw-success-color:#38bdf8;--bw-warning-color:#fbbf24;--bw-error-color:#f43f5e;--bw-border-radius:18px;--bw-border-radius-small:calc(var(--bw-border-radius)*0.8);--bw-spacing:16px;--bw-spacing-large:24px;--bw-font-family:\"Inter\",system-ui,sans-serif;--bw-font-size:14px;--bw-font-size-large:18px;--bw-font-size-small:12px;--bw-shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);--bw-shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);--bw-highlight-muted:rgba(0,177,170,.1);--bw-highlight-subtle:rgba(0,177,170,.05);--bw-text-subtle:rgba(14,116,144,.4)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes slide-in-right{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slide-out-right{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@keyframes slide-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-spin{animation:spin 1s linear infinite}.animate-shimmer{animation:shimmer 2s infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-fade-in{animation:fade-in .2s ease-out}.animate-slide-in-up{animation:slide-in-up .3s ease-out}.animate-scale-in{animation:scale-in .2s ease-out}.skeleton-shimmer{overflow:hidden;position:relative}.skeleton-shimmer:after{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);content:\"\";height:100%;left:0;position:absolute;top:0;width:100%}@media (max-width:768px){.sidebar-mobile{border-radius:0!important;max-width:100%!important;width:100%!important}}@media (max-width:600px){.event-type-list{gap:12px!important;padding:8px!important}.event-type-card{flex:1 1 100%!important;max-width:100%!important;padding:0!important}.event-type-img{height:160px!important}.event-type-title{font-size:1.1rem!important}.event-type-desc{font-size:.8rem!important;max-height:100px!important;min-height:100px!important}.event-type-content{padding:16px 24px!important}}.event-type-markdown{overflow:visible!important}.event-type-markdown p{color:var(--bw-text-muted);font-family:var(--bw-font-family);line-height:1.6;margin:0 0 8px}.event-type-markdown p:last-child{margin-bottom:0}.event-type-markdown h2{font-size:18px!important;font-weight:700!important;margin:12px 0 6px!important}.event-type-markdown h2,.event-type-markdown h3{color:var(--bw-text-color)!important;line-height:1.3!important}.event-type-markdown h3{font-size:16px!important;font-weight:600!important;margin:10px 0 4px!important}.event-type-markdown strong{color:var(--bw-text-color);font-weight:600}.event-type-markdown em{font-style:italic}.event-type-markdown u{text-decoration:underline}.event-type-markdown ul{list-style:none!important;margin:6px 0!important;padding:0 0 0 24px!important;position:relative!important}.event-type-markdown ul li{color:var(--bw-text-muted)!important;font-family:var(--bw-font-family)!important;margin-bottom:2px!important;padding-left:0!important;position:relative!important}.event-type-markdown ul li:before{color:var(--bw-text-color)!important;content:\"•\"!important;font-weight:700!important;left:-16px!important;position:absolute!important;top:0!important}.event-type-markdown ol{counter-reset:list-counter!important;list-style:none!important;margin:6px 0!important;padding:0 0 0 24px!important;position:relative!important}.event-type-markdown ol li{color:var(--bw-text-muted)!important;counter-increment:list-counter!important;font-family:var(--bw-font-family)!important;margin-bottom:2px!important;padding-left:0!important;position:relative!important}.event-type-markdown ol li:before{color:var(--bw-text-color)!important;content:counter(list-counter) \".\"!important;font-weight:700!important;left:-20px!important;position:absolute!important;top:0!important}.event-type-markdown blockquote{border-left:2px solid var(--bw-border-color);color:var(--bw-text-muted);font-style:italic;margin:4px 0;padding-left:12px}.event-type-markdown a{color:var(--bw-highlight-color);text-decoration:underline}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{color:var(--bw-text-color);font-weight:600;margin-bottom:.5em}.markdown-content h1{font-size:1.5em}.markdown-content h2{font-size:1.25em}.markdown-content h3{font-size:1.1em}.markdown-content p{line-height:1.6;margin-bottom:1em}.markdown-content ol,.markdown-content ul{margin-bottom:1em;padding-left:1.5em}.markdown-content ul{list-style-type:disc}.markdown-content ol{list-style-type:decimal}.markdown-content li{margin-bottom:.25em}.markdown-content a{color:var(--bw-highlight-color);text-decoration:underline}.markdown-content a:hover{opacity:.8}.markdown-content strong{font-weight:600}.markdown-content em{font-style:italic}.markdown-content code{background:var(--bw-highlight-subtle);border-radius:4px;font-family:monospace;font-size:.9em;padding:.125em .25em}.markdown-content blockquote{border-left:3px solid var(--bw-highlight-color);color:var(--bw-text-muted);margin:1em 0;padding-left:1em}.print-only{display:none}.print-hidden{display:block}@media print{.print-only{display:block}.print-hidden{display:none!important}.print-booking-header{border-bottom:2px solid #000;display:block;margin-bottom:24px;padding-bottom:16px;text-align:center}.print-booking-header h1{font-size:24px;margin:0 0 8px}.print-booking-header .subtitle{color:#666;font-size:14px}.print-booking-card{border:1px solid #ccc;border-radius:8px;margin-bottom:16px;padding:16px;page-break-inside:avoid}.print-section-title{border-bottom:1px solid #ddd;display:block;font-size:16px;font-weight:600;margin-bottom:12px;padding-bottom:8px}.print-detail-grid{display:grid;gap:12px;grid-template-columns:1fr 1fr}.print-detail-item{margin-bottom:8px}.print-detail-label{color:#666;font-size:12px;margin-bottom:4px}.print-detail-value{font-size:14px;font-weight:600}.print-status-badge{border-radius:9999px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.print-status-paid{background-color:#dcfce7;color:#166534;display:inline-block}.print-participant{align-items:center;background-color:#f9fafb;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:8px;padding:8px}.print-participant-name{font-weight:600}.print-participant-age{color:#666;font-size:12px}.print-payment-summary{display:block}.print-payment-row{border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:4px 0}.print-payment-row:last-child{border-bottom:none;font-weight:600}.print-footer{border-top:1px solid #ddd;color:#666;display:block;font-size:12px;margin-top:24px;padding-top:16px;text-align:center}.print-footer p{margin:4px 0}}";
14617
14549
  styleInject(css_248z);
14618
14550
 
14619
14551
  // Export init function for vanilla JS usage