@jasonshimmy/custom-elements-runtime 2.8.2 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/README.md +159 -46
  2. package/dist/css-utils-Cg4o1MqY.js +643 -0
  3. package/dist/css-utils-Cg4o1MqY.js.map +1 -0
  4. package/dist/css-utils-RqkyBWft.cjs +576 -0
  5. package/dist/css-utils-RqkyBWft.cjs.map +1 -0
  6. package/dist/custom-elements-runtime.cjs.js +3 -3
  7. package/dist/custom-elements-runtime.cjs.js.map +1 -1
  8. package/dist/custom-elements-runtime.dom-jit-css.cjs.js +7 -0
  9. package/dist/custom-elements-runtime.dom-jit-css.cjs.js.map +1 -0
  10. package/dist/custom-elements-runtime.dom-jit-css.es.js +136 -0
  11. package/dist/custom-elements-runtime.dom-jit-css.es.js.map +1 -0
  12. package/dist/custom-elements-runtime.es.js +70 -67
  13. package/dist/custom-elements-runtime.es.js.map +1 -1
  14. package/dist/custom-elements-runtime.event-bus.cjs.js +1 -1
  15. package/dist/custom-elements-runtime.event-bus.cjs.js.map +1 -1
  16. package/dist/custom-elements-runtime.event-bus.es.js +62 -46
  17. package/dist/custom-elements-runtime.event-bus.es.js.map +1 -1
  18. package/dist/custom-elements-runtime.jit-css.cjs.js +2 -0
  19. package/dist/custom-elements-runtime.jit-css.cjs.js.map +1 -0
  20. package/dist/custom-elements-runtime.jit-css.es.js +38 -0
  21. package/dist/custom-elements-runtime.jit-css.es.js.map +1 -0
  22. package/dist/custom-elements-runtime.router.cjs.js +20 -20
  23. package/dist/custom-elements-runtime.router.cjs.js.map +1 -1
  24. package/dist/custom-elements-runtime.router.es.js +448 -434
  25. package/dist/custom-elements-runtime.router.es.js.map +1 -1
  26. package/dist/custom-elements-runtime.ssr.cjs.js +1 -1
  27. package/dist/custom-elements-runtime.ssr.cjs.js.map +1 -1
  28. package/dist/custom-elements-runtime.ssr.es.js +33 -18
  29. package/dist/custom-elements-runtime.ssr.es.js.map +1 -1
  30. package/dist/custom-elements-runtime.store.cjs.js +1 -1
  31. package/dist/custom-elements-runtime.store.cjs.js.map +1 -1
  32. package/dist/custom-elements-runtime.store.es.js +21 -16
  33. package/dist/custom-elements-runtime.store.es.js.map +1 -1
  34. package/dist/custom-elements-runtime.transitions.cjs.js +1 -1
  35. package/dist/custom-elements-runtime.transitions.cjs.js.map +1 -1
  36. package/dist/custom-elements-runtime.transitions.es.js +279 -7
  37. package/dist/custom-elements-runtime.transitions.es.js.map +1 -1
  38. package/dist/custom-elements-runtime.vite-plugin.cjs.js +2 -0
  39. package/dist/custom-elements-runtime.vite-plugin.cjs.js.map +1 -0
  40. package/dist/custom-elements-runtime.vite-plugin.es.js +73 -0
  41. package/dist/custom-elements-runtime.vite-plugin.es.js.map +1 -0
  42. package/dist/dom-jit-css.d.ts +66 -0
  43. package/dist/event-bus.d.ts +3 -1
  44. package/dist/{namespace-helpers-DhLBqt-7.js → helpers-CweFZFWU.js} +265 -287
  45. package/dist/helpers-CweFZFWU.js.map +1 -0
  46. package/dist/helpers-DeWjSmOl.cjs +5 -0
  47. package/dist/helpers-DeWjSmOl.cjs.map +1 -0
  48. package/dist/hooks-BrrLKSub.cjs +3 -0
  49. package/dist/hooks-BrrLKSub.cjs.map +1 -0
  50. package/dist/hooks-DyShDHKo.js +403 -0
  51. package/dist/hooks-DyShDHKo.js.map +1 -0
  52. package/dist/index.d.ts +3 -3
  53. package/dist/jit-css.d.ts +30 -0
  54. package/dist/namespace-helpers-CnpZ5__p.js +45 -0
  55. package/dist/namespace-helpers-CnpZ5__p.js.map +1 -0
  56. package/dist/namespace-helpers-CyIDtI97.cjs +2 -0
  57. package/dist/namespace-helpers-CyIDtI97.cjs.map +1 -0
  58. package/dist/router/types.d.ts +4 -2
  59. package/dist/runtime/css-utils.d.ts +33 -0
  60. package/dist/runtime/discovery-state.d.ts +3 -0
  61. package/dist/runtime/hooks.d.ts +78 -0
  62. package/dist/runtime/jit-hooks.d.ts +28 -0
  63. package/dist/runtime/render-bridge.d.ts +37 -0
  64. package/dist/runtime/scheduler.d.ts +3 -4
  65. package/dist/runtime/secure-expression-evaluator.d.ts +0 -1
  66. package/dist/runtime/style.d.ts +84 -26
  67. package/dist/runtime/template-compiler/lru-cache.d.ts +0 -3
  68. package/dist/runtime/vdom-helpers.d.ts +0 -1
  69. package/dist/ssr.d.ts +42 -0
  70. package/dist/{transitions-DMJXs_tY.js → style-BmyOIMcU.js} +904 -1344
  71. package/dist/style-BmyOIMcU.js.map +1 -0
  72. package/dist/style-D40DsIqJ.cjs +55 -0
  73. package/dist/style-D40DsIqJ.cjs.map +1 -0
  74. package/dist/style.css +1 -1
  75. package/dist/template-compiler-B5uN1EQw.js +3731 -0
  76. package/dist/template-compiler-B5uN1EQw.js.map +1 -0
  77. package/dist/template-compiler-Cx623BSB.cjs +23 -0
  78. package/dist/template-compiler-Cx623BSB.cjs.map +1 -0
  79. package/dist/variables.css +1 -1
  80. package/dist/vite-plugin.d.ts +52 -0
  81. package/package.json +55 -6
  82. package/dist/namespace-helpers-Ctd_h7j2.cjs +0 -5
  83. package/dist/namespace-helpers-Ctd_h7j2.cjs.map +0 -1
  84. package/dist/namespace-helpers-DhLBqt-7.js.map +0 -1
  85. package/dist/template-compiler-Bvx02nAT.js +0 -4020
  86. package/dist/template-compiler-Bvx02nAT.js.map +0 -1
  87. package/dist/template-compiler-bj-MFC_Y.cjs +0 -23
  88. package/dist/template-compiler-bj-MFC_Y.cjs.map +0 -1
  89. package/dist/transitions-DMJXs_tY.js.map +0 -1
  90. package/dist/transitions-f4KfN29T.cjs +0 -330
  91. package/dist/transitions-f4KfN29T.cjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css-utils-Cg4o1MqY.js","sources":["../src/lib/css/variables.css?raw","../src/lib/runtime/css-utils.ts","../src/lib/runtime/render-bridge.ts"],"sourcesContent":["export default \"/*\\n * Custom Elements Variables CSS\\n * Default fallback values\\n * \\n * Define your overrides in the document's :root to have them\\n * inherited into all Shadow DOM components:\\n * \\n * <style>\\n * :root {\\n * --cer-color-primary-500: #8b5cf6;\\n * --cer-font-sans: 'Inter', sans-serif;\\n * }\\n * </style>\\n * \\n * Note: Only :root is used here (not :host) so document-level\\n * overrides will inherit into Shadow DOM and take precedence.\\n */\\n\\n:root {\\n /* Font families (match runtime defaults in src/lib/runtime/style.ts) */\\n --cer-font-sans:\\n ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto,\\n 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;\\n --cer-font-serif: ui-serif, Georgia, 'Times New Roman', Times, serif;\\n --cer-font-mono:\\n ui-monospace, 'SFMono-Regular', Menlo, Monaco, 'Roboto Mono', 'Courier New',\\n monospace;\\n\\n /* Default outline style */\\n --cer-outline-style: solid;\\n\\n /* Colors */\\n --cer-color-transparent: transparent;\\n --cer-color-current: currentColor;\\n --cer-color-black: #000000;\\n --cer-color-white: #ffffff;\\n --cer-color-inherit: inherit;\\n\\n /* neutral */\\n --cer-color-neutral-50: #fafafa;\\n --cer-color-neutral-100: #f4f4f5;\\n --cer-color-neutral-200: #e4e4e7;\\n --cer-color-neutral-300: #d4d4d8;\\n --cer-color-neutral-400: #9f9fa9;\\n --cer-color-neutral-500: #71717b;\\n --cer-color-neutral-600: #52525c;\\n --cer-color-neutral-700: #3f3f46;\\n --cer-color-neutral-800: #27272a;\\n --cer-color-neutral-900: #18181b;\\n --cer-color-neutral-950: #09090b;\\n\\n /* primary */\\n --cer-color-primary-50: #eff6ff;\\n --cer-color-primary-100: #dbeafe;\\n --cer-color-primary-200: #bfdbfe;\\n --cer-color-primary-300: #93c5fd;\\n --cer-color-primary-400: #60a5fa;\\n --cer-color-primary-500: #3b82f6;\\n --cer-color-primary-600: #2563eb;\\n --cer-color-primary-700: #1d4ed8;\\n --cer-color-primary-800: #1e40af;\\n --cer-color-primary-900: #1e3a8a;\\n --cer-color-primary-950: #172554;\\n\\n /* secondary */\\n --cer-color-secondary-50: #eef2ff;\\n --cer-color-secondary-100: #e0e7ff;\\n --cer-color-secondary-200: #c7d2fe;\\n --cer-color-secondary-300: #a5b4fc;\\n --cer-color-secondary-400: #818cf8;\\n --cer-color-secondary-500: #6366f1;\\n --cer-color-secondary-600: #4f46e5;\\n --cer-color-secondary-700: #4338ca;\\n --cer-color-secondary-800: #3730a3;\\n --cer-color-secondary-900: #312e81;\\n --cer-color-secondary-950: #1e1b4b;\\n\\n /* success */\\n --cer-color-success-50: #f0fdf4;\\n --cer-color-success-100: #dcfce7;\\n --cer-color-success-200: #bbf7d0;\\n --cer-color-success-300: #86efac;\\n --cer-color-success-400: #4ade80;\\n --cer-color-success-500: #22c55e;\\n --cer-color-success-600: #16a34a;\\n --cer-color-success-700: #15803d;\\n --cer-color-success-800: #166534;\\n --cer-color-success-900: #14532d;\\n --cer-color-success-950: #052e16;\\n\\n /* info */\\n --cer-color-info-50: #f0f9ff;\\n --cer-color-info-100: #e0f2fe;\\n --cer-color-info-200: #bae6fd;\\n --cer-color-info-300: #7dd3fc;\\n --cer-color-info-400: #38bdf8;\\n --cer-color-info-500: #0ea5e9;\\n --cer-color-info-600: #0284c7;\\n --cer-color-info-700: #0369a1;\\n --cer-color-info-800: #075985;\\n --cer-color-info-900: #0c4a6e;\\n --cer-color-info-950: #082f49;\\n\\n /* warning */\\n --cer-color-warning-50: #fffbeb;\\n --cer-color-warning-100: #fef3c7;\\n --cer-color-warning-200: #fde68a;\\n --cer-color-warning-300: #fcd34d;\\n --cer-color-warning-400: #fbbf24;\\n --cer-color-warning-500: #f59e0b;\\n --cer-color-warning-600: #d97706;\\n --cer-color-warning-700: #b45309;\\n --cer-color-warning-800: #92400e;\\n --cer-color-warning-900: #78350f;\\n --cer-color-warning-950: #451a03;\\n\\n /* error */\\n --cer-color-error-50: #fef2f2;\\n --cer-color-error-100: #fee2e2;\\n --cer-color-error-200: #fecaca;\\n --cer-color-error-300: #fca5a5;\\n --cer-color-error-400: #f87171;\\n --cer-color-error-500: #ef4444;\\n --cer-color-error-600: #dc2626;\\n --cer-color-error-700: #b91c1c;\\n --cer-color-error-800: #991b1b;\\n --cer-color-error-900: #7f1d1d;\\n --cer-color-error-950: #450a0a;\\n\\n /* Extended Tailwind palette — override to theme these colors */\\n /* slate */\\n --cer-color-slate-50: #f8fafc;\\n --cer-color-slate-100: #f1f5f9;\\n --cer-color-slate-200: #e2e8f0;\\n --cer-color-slate-300: #cbd5e1;\\n --cer-color-slate-400: #94a3b8;\\n --cer-color-slate-500: #64748b;\\n --cer-color-slate-600: #475569;\\n --cer-color-slate-700: #334155;\\n --cer-color-slate-800: #1e293b;\\n --cer-color-slate-900: #0f172a;\\n --cer-color-slate-950: #020617;\\n /* gray */\\n --cer-color-gray-50: #f9fafb;\\n --cer-color-gray-100: #f3f4f6;\\n --cer-color-gray-200: #e5e7eb;\\n --cer-color-gray-300: #d1d5db;\\n --cer-color-gray-400: #9ca3af;\\n --cer-color-gray-500: #6b7280;\\n --cer-color-gray-600: #4b5563;\\n --cer-color-gray-700: #374151;\\n --cer-color-gray-800: #1f2937;\\n --cer-color-gray-900: #111827;\\n --cer-color-gray-950: #030712;\\n /* zinc */\\n --cer-color-zinc-50: #fafafa;\\n --cer-color-zinc-100: #f4f4f5;\\n --cer-color-zinc-200: #e4e4e7;\\n --cer-color-zinc-300: #d4d4d8;\\n --cer-color-zinc-400: #a1a1aa;\\n --cer-color-zinc-500: #71717a;\\n --cer-color-zinc-600: #52525b;\\n --cer-color-zinc-700: #3f3f46;\\n --cer-color-zinc-800: #27272a;\\n --cer-color-zinc-900: #18181b;\\n --cer-color-zinc-950: #09090b;\\n /* stone */\\n --cer-color-stone-50: #fafaf9;\\n --cer-color-stone-100: #f5f5f4;\\n --cer-color-stone-200: #e7e5e4;\\n --cer-color-stone-300: #d6d3d1;\\n --cer-color-stone-400: #a8a29e;\\n --cer-color-stone-500: #78716c;\\n --cer-color-stone-600: #57534e;\\n --cer-color-stone-700: #44403c;\\n --cer-color-stone-800: #292524;\\n --cer-color-stone-900: #1c1917;\\n --cer-color-stone-950: #0c0a09;\\n /* red */\\n --cer-color-red-50: #fef2f2;\\n --cer-color-red-100: #fee2e2;\\n --cer-color-red-200: #fecaca;\\n --cer-color-red-300: #fca5a5;\\n --cer-color-red-400: #f87171;\\n --cer-color-red-500: #ef4444;\\n --cer-color-red-600: #dc2626;\\n --cer-color-red-700: #b91c1c;\\n --cer-color-red-800: #991b1b;\\n --cer-color-red-900: #7f1d1d;\\n --cer-color-red-950: #450a0a;\\n /* orange */\\n --cer-color-orange-50: #fff7ed;\\n --cer-color-orange-100: #ffedd5;\\n --cer-color-orange-200: #fed7aa;\\n --cer-color-orange-300: #fdba74;\\n --cer-color-orange-400: #fb923c;\\n --cer-color-orange-500: #f97316;\\n --cer-color-orange-600: #ea580c;\\n --cer-color-orange-700: #c2410c;\\n --cer-color-orange-800: #9a3412;\\n --cer-color-orange-900: #7c2d12;\\n --cer-color-orange-950: #431407;\\n /* amber */\\n --cer-color-amber-50: #fffbeb;\\n --cer-color-amber-100: #fef3c7;\\n --cer-color-amber-200: #fde68a;\\n --cer-color-amber-300: #fcd34d;\\n --cer-color-amber-400: #fbbf24;\\n --cer-color-amber-500: #f59e0b;\\n --cer-color-amber-600: #d97706;\\n --cer-color-amber-700: #b45309;\\n --cer-color-amber-800: #92400e;\\n --cer-color-amber-900: #78350f;\\n --cer-color-amber-950: #451a03;\\n /* yellow */\\n --cer-color-yellow-50: #fefce8;\\n --cer-color-yellow-100: #fef9c3;\\n --cer-color-yellow-200: #fef08a;\\n --cer-color-yellow-300: #fde047;\\n --cer-color-yellow-400: #facc15;\\n --cer-color-yellow-500: #eab308;\\n --cer-color-yellow-600: #ca8a04;\\n --cer-color-yellow-700: #a16207;\\n --cer-color-yellow-800: #854d0e;\\n --cer-color-yellow-900: #713f12;\\n --cer-color-yellow-950: #422006;\\n /* lime */\\n --cer-color-lime-50: #f7fee7;\\n --cer-color-lime-100: #ecfccb;\\n --cer-color-lime-200: #d9f99d;\\n --cer-color-lime-300: #bef264;\\n --cer-color-lime-400: #a3e635;\\n --cer-color-lime-500: #84cc16;\\n --cer-color-lime-600: #65a30d;\\n --cer-color-lime-700: #4d7c0f;\\n --cer-color-lime-800: #3f6212;\\n --cer-color-lime-900: #365314;\\n --cer-color-lime-950: #1a2e05;\\n /* green */\\n --cer-color-green-50: #f0fdf4;\\n --cer-color-green-100: #dcfce7;\\n --cer-color-green-200: #bbf7d0;\\n --cer-color-green-300: #86efac;\\n --cer-color-green-400: #4ade80;\\n --cer-color-green-500: #22c55e;\\n --cer-color-green-600: #16a34a;\\n --cer-color-green-700: #15803d;\\n --cer-color-green-800: #166534;\\n --cer-color-green-900: #14532d;\\n --cer-color-green-950: #052e16;\\n /* emerald */\\n --cer-color-emerald-50: #ecfdf5;\\n --cer-color-emerald-100: #d1fae5;\\n --cer-color-emerald-200: #a7f3d0;\\n --cer-color-emerald-300: #6ee7b7;\\n --cer-color-emerald-400: #34d399;\\n --cer-color-emerald-500: #10b981;\\n --cer-color-emerald-600: #059669;\\n --cer-color-emerald-700: #047857;\\n --cer-color-emerald-800: #065f46;\\n --cer-color-emerald-900: #064e3b;\\n --cer-color-emerald-950: #022c22;\\n /* teal */\\n --cer-color-teal-50: #f0fdfa;\\n --cer-color-teal-100: #ccfbf1;\\n --cer-color-teal-200: #99f6e4;\\n --cer-color-teal-300: #5eead4;\\n --cer-color-teal-400: #2dd4bf;\\n --cer-color-teal-500: #14b8a6;\\n --cer-color-teal-600: #0d9488;\\n --cer-color-teal-700: #0f766e;\\n --cer-color-teal-800: #115e59;\\n --cer-color-teal-900: #134e4a;\\n --cer-color-teal-950: #042f2e;\\n /* cyan */\\n --cer-color-cyan-50: #ecfeff;\\n --cer-color-cyan-100: #cffafe;\\n --cer-color-cyan-200: #a5f3fc;\\n --cer-color-cyan-300: #67e8f9;\\n --cer-color-cyan-400: #22d3ee;\\n --cer-color-cyan-500: #06b6d4;\\n --cer-color-cyan-600: #0891b2;\\n --cer-color-cyan-700: #0e7490;\\n --cer-color-cyan-800: #155e75;\\n --cer-color-cyan-900: #164e63;\\n --cer-color-cyan-950: #083344;\\n /* sky */\\n --cer-color-sky-50: #f0f9ff;\\n --cer-color-sky-100: #e0f2fe;\\n --cer-color-sky-200: #bae6fd;\\n --cer-color-sky-300: #7dd3fc;\\n --cer-color-sky-400: #38bdf8;\\n --cer-color-sky-500: #0ea5e9;\\n --cer-color-sky-600: #0284c7;\\n --cer-color-sky-700: #0369a1;\\n --cer-color-sky-800: #075985;\\n --cer-color-sky-900: #0c4a6e;\\n --cer-color-sky-950: #082f49;\\n /* blue */\\n --cer-color-blue-50: #eff6ff;\\n --cer-color-blue-100: #dbeafe;\\n --cer-color-blue-200: #bfdbfe;\\n --cer-color-blue-300: #93c5fd;\\n --cer-color-blue-400: #60a5fa;\\n --cer-color-blue-500: #3b82f6;\\n --cer-color-blue-600: #2563eb;\\n --cer-color-blue-700: #1d4ed8;\\n --cer-color-blue-800: #1e40af;\\n --cer-color-blue-900: #1e3a8a;\\n --cer-color-blue-950: #172554;\\n /* indigo */\\n --cer-color-indigo-50: #eef2ff;\\n --cer-color-indigo-100: #e0e7ff;\\n --cer-color-indigo-200: #c7d2fe;\\n --cer-color-indigo-300: #a5b4fc;\\n --cer-color-indigo-400: #818cf8;\\n --cer-color-indigo-500: #6366f1;\\n --cer-color-indigo-600: #4f46e5;\\n --cer-color-indigo-700: #4338ca;\\n --cer-color-indigo-800: #3730a3;\\n --cer-color-indigo-900: #312e81;\\n --cer-color-indigo-950: #1e1b4b;\\n /* violet */\\n --cer-color-violet-50: #f5f3ff;\\n --cer-color-violet-100: #ede9fe;\\n --cer-color-violet-200: #ddd6fe;\\n --cer-color-violet-300: #c4b5fd;\\n --cer-color-violet-400: #a78bfa;\\n --cer-color-violet-500: #8b5cf6;\\n --cer-color-violet-600: #7c3aed;\\n --cer-color-violet-700: #6d28d9;\\n --cer-color-violet-800: #5b21b6;\\n --cer-color-violet-900: #4c1d95;\\n --cer-color-violet-950: #2e1065;\\n /* purple */\\n --cer-color-purple-50: #faf5ff;\\n --cer-color-purple-100: #f3e8ff;\\n --cer-color-purple-200: #e9d5ff;\\n --cer-color-purple-300: #d8b4fe;\\n --cer-color-purple-400: #c084fc;\\n --cer-color-purple-500: #a855f7;\\n --cer-color-purple-600: #9333ea;\\n --cer-color-purple-700: #7e22ce;\\n --cer-color-purple-800: #6b21a8;\\n --cer-color-purple-900: #581c87;\\n --cer-color-purple-950: #3b0764;\\n /* fuchsia */\\n --cer-color-fuchsia-50: #fdf4ff;\\n --cer-color-fuchsia-100: #fae8ff;\\n --cer-color-fuchsia-200: #f5d0fe;\\n --cer-color-fuchsia-300: #f0abfc;\\n --cer-color-fuchsia-400: #e879f9;\\n --cer-color-fuchsia-500: #d946ef;\\n --cer-color-fuchsia-600: #c026d3;\\n --cer-color-fuchsia-700: #a21caf;\\n --cer-color-fuchsia-800: #86198f;\\n --cer-color-fuchsia-900: #701a75;\\n --cer-color-fuchsia-950: #4a044e;\\n /* pink */\\n --cer-color-pink-50: #fdf2f8;\\n --cer-color-pink-100: #fce7f3;\\n --cer-color-pink-200: #fbcfe8;\\n --cer-color-pink-300: #f9a8d4;\\n --cer-color-pink-400: #f472b6;\\n --cer-color-pink-500: #ec4899;\\n --cer-color-pink-600: #db2777;\\n --cer-color-pink-700: #be185d;\\n --cer-color-pink-800: #9d174d;\\n --cer-color-pink-900: #831843;\\n --cer-color-pink-950: #500724;\\n /* rose */\\n --cer-color-rose-50: #fff1f2;\\n --cer-color-rose-100: #ffe4e6;\\n --cer-color-rose-200: #fecdd3;\\n --cer-color-rose-300: #fda4af;\\n --cer-color-rose-400: #fb7185;\\n --cer-color-rose-500: #f43f5e;\\n --cer-color-rose-600: #e11d48;\\n --cer-color-rose-700: #be123c;\\n --cer-color-rose-800: #9f1239;\\n --cer-color-rose-900: #881337;\\n --cer-color-rose-950: #4c0519;\\n}\\n\\n/* @property registrations for CSS transition composability */\\n@property --cer-rotate {\\n syntax: '<angle>';\\n initial-value: 0deg;\\n inherits: false;\\n}\\n@property --cer-translate-x {\\n syntax: '<length>';\\n initial-value: 0px;\\n inherits: false;\\n}\\n@property --cer-translate-y {\\n syntax: '<length>';\\n initial-value: 0px;\\n inherits: false;\\n}\\n@property --cer-skew-x {\\n syntax: '<angle>';\\n initial-value: 0deg;\\n inherits: false;\\n}\\n@property --cer-skew-y {\\n syntax: '<angle>';\\n initial-value: 0deg;\\n inherits: false;\\n}\\n@property --cer-scale-x {\\n syntax: '<number>';\\n initial-value: 1;\\n inherits: false;\\n}\\n@property --cer-scale-y {\\n syntax: '<number>';\\n initial-value: 1;\\n inherits: false;\\n}\\n/* Filter composition variables (--cer-blur, --cer-brightness, etc.) intentionally\\n omit @property registration because their \\\"no-op\\\" value is empty string (''),\\n which is not a valid CSS initial-value. They compose correctly without Houdini. */\\n@property --cer-opacity {\\n syntax: '<number>';\\n initial-value: 1;\\n inherits: false;\\n}\\n\"","/**\n * Pure CSS utility functions — no JIT dependencies, no module-level side effects.\n *\n * Extracted so that render.ts and hooks.ts can import lightweight CSS helpers\n * without pulling the entire JIT CSS engine into every consumer's bundle.\n */\n\nimport variables from '../css/variables.css?raw';\n\n/**\n * CSS template literal tag\n */\nexport function css(\n strings: TemplateStringsArray,\n ...values: unknown[]\n): string {\n let result = '';\n for (let i = 0; i < strings.length; i++) {\n result += strings[i];\n if (i < values.length) result += values[i];\n }\n return result;\n}\n\n/**\n * CSS minification utility (basic)\n */\nexport function minifyCSS(input: string): string {\n return input\n .replace(/\\/\\*[\\s\\S]*?\\*\\//g, '')\n .replace(/\\s+/g, ' ')\n .replace(/\\s*([{}:;,>~])\\s*/g, '$1')\n .replace(/;}/g, '}')\n .trim();\n}\n\n/**\n * Sanitize CSS to prevent injection attacks (XSS, javascript: URLs, expression(), etc.)\n */\nexport function sanitizeCSS(input: string): string {\n return input\n // Remove @charset rules (can alter encoding interpretation in some parsers)\n .replace(/@charset\\s+[^;]*;/gi, '')\n // Remove javascript: URL references inside url()\n .replace(/url\\s*\\(\\s*['\"]?javascript:[^)]*\\)/gi, '')\n // Remove data: URI references inside url() (can embed scripts/SVGs)\n .replace(/url\\s*\\(\\s*['\"]?data:[^)]*\\)/gi, '')\n // Remove @import rules (can load external malicious stylesheets)\n .replace(/@import\\s[^;{]*/gi, '')\n // Remove IE-era -moz-binding and behavior properties\n .replace(/-moz-binding\\s*:[^;]*/gi, '')\n .replace(/\\bbehavior\\s*:[^;]*/gi, '')\n // Remove <script> tags that may be injected alongside CSS\n .replace(/<script[\\s\\S]*?>[\\s\\S]*?<\\/script>/gi, '')\n // Remove IE expression() calls\n .replace(/expression\\s*\\([^)]*\\)/gi, '');\n}\n\n/**\n * Polyfill for CSS.escape() for SSR environments.\n * Based on https://drafts.csswg.org/cssom/#serialize-an-identifier\n */\nexport function cssEscape(value: string): string {\n if (typeof CSS !== 'undefined' && CSS.escape) {\n return CSS.escape(value);\n }\n\n const str = String(value);\n const length = str.length;\n let result = '';\n let i = 0;\n\n while (i < length) {\n const char = str.charAt(i);\n const code = str.charCodeAt(i);\n\n if (code === 0x0000) {\n result += '\\uFFFD';\n } else if (\n (code >= 0x0001 && code <= 0x001f) ||\n code === 0x007f ||\n (i === 0 && code >= 0x0030 && code <= 0x0039) ||\n (i === 1 &&\n code >= 0x0030 &&\n code <= 0x0039 &&\n str.charCodeAt(0) === 0x002d)\n ) {\n result += '\\\\' + code.toString(16) + ' ';\n } else if (i === 0 && length === 1 && code === 0x002d) {\n result += '\\\\' + char;\n } else if (\n code >= 0x0080 ||\n code === 0x002d ||\n code === 0x005f ||\n (code >= 0x0030 && code <= 0x0039) ||\n (code >= 0x0041 && code <= 0x005a) ||\n (code >= 0x0061 && code <= 0x007a)\n ) {\n result += char;\n } else {\n result += '\\\\' + char;\n }\n\n i++;\n }\n\n return result;\n}\n\n/** Escape a class name and prefix it with a dot for use in CSS selectors. */\nexport function escapeClassName(name: string): string {\n return '.' + cssEscape(name);\n}\n\n/** Escape a string for use in a RegExp. */\nexport function escapeRegExp(str: string): string {\n return str.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&');\n}\n\n// --- Base reset stylesheet ---\n\nexport const baseReset = css`\n ${variables}\n :host,\n *,\n ::before,\n ::after {\n all: isolate;\n box-sizing: border-box;\n border: 0 solid currentColor;\n margin: 0;\n padding: 0;\n font: inherit;\n vertical-align: baseline;\n background: transparent;\n color: inherit;\n -webkit-tap-highlight-color: transparent;\n /* Transform composition variables (reset per-element for composability) */\n --cer-translate-x: 0px;\n --cer-translate-y: 0px;\n --cer-rotate: 0deg;\n --cer-skew-x: 0deg;\n --cer-skew-y: 0deg;\n --cer-scale-x: 1;\n --cer-scale-y: 1;\n /* Ring variables */\n --cer-ring-color: rgb(59 130 246 / 0.5);\n /* Filter composition variables (empty = no-op in filter chain) */\n --cer-blur: ;\n --cer-brightness: ;\n --cer-contrast: ;\n --cer-grayscale: ;\n --cer-hue-rotate: ;\n --cer-invert: ;\n --cer-saturate: ;\n --cer-sepia: ;\n --cer-drop-shadow: ;\n --cer-backdrop-blur: ;\n --cer-backdrop-brightness: ;\n --cer-backdrop-contrast: ;\n --cer-backdrop-grayscale: ;\n --cer-backdrop-hue-rotate: ;\n --cer-backdrop-invert: ;\n --cer-backdrop-saturate: ;\n --cer-backdrop-sepia: ;\n }\n :host {\n display: contents;\n font: 16px/1.5 var(--cer-font-sans, ui-sans-serif, system-ui, sans-serif);\n /* Default CE line-height variable so leading-* can reliably override */\n --cer-line-height: 1.5;\n -webkit-text-size-adjust: 100%;\n text-size-adjust: 100%;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n /* Default gradient variables to avoid undefined var() usage in generated utilities */\n --cer-gradient-from-position: 0%;\n --cer-gradient-to-position: 100%;\n --cer-gradient-via-position: 50%;\n --cer-gradient-from: rgba(255, 255, 255, 0);\n --cer-gradient-to: rgba(255, 255, 255, 0);\n --cer-gradient-stops: var(--cer-gradient-from), var(--cer-gradient-to);\n /* Default outline style variable */\n --cer-outline-style: solid;\n }\n button,\n input,\n select,\n textarea {\n background: transparent;\n outline: none;\n }\n textarea {\n resize: vertical;\n }\n progress {\n vertical-align: baseline;\n }\n button,\n textarea {\n overflow: visible;\n }\n img,\n svg,\n video,\n canvas,\n audio,\n iframe,\n embed,\n object {\n display: block;\n max-width: 100%;\n height: auto;\n }\n svg {\n fill: currentColor;\n stroke: none;\n }\n a {\n text-decoration: inherit;\n cursor: pointer;\n }\n button,\n [type='button'],\n [type='reset'],\n [type='submit'] {\n cursor: pointer;\n appearance: button;\n background: none;\n -webkit-user-select: none;\n user-select: none;\n }\n ::-webkit-input-placeholder,\n ::placeholder {\n color: inherit;\n opacity: 0.5;\n }\n *:focus-visible {\n outline: 2px solid var(--cer-color-primary-500, #3b82f6);\n outline-offset: 2px;\n }\n ol,\n ul {\n list-style: none;\n }\n table {\n border-collapse: collapse;\n }\n sub,\n sup {\n font-size: 0.75em;\n line-height: 0;\n position: relative;\n }\n sub {\n bottom: -0.25em;\n }\n sup {\n top: -0.5em;\n }\n [disabled],\n [aria-disabled='true'] {\n cursor: not-allowed;\n }\n [hidden] {\n display: none;\n }\n`;\n\n/** Default spacing unit used by the JIT spacing scale. */\nexport const spacing = '0.25rem';\n\n// --- Base reset stylesheet singleton ---\n\nlet baseResetSheet: CSSStyleSheet | null = null;\n\nexport function getBaseResetSheet(): CSSStyleSheet {\n if (!baseResetSheet) {\n if (typeof CSSStyleSheet === 'undefined') {\n baseResetSheet = {\n cssRules: [],\n replaceSync: () => {},\n toString: () => minifyCSS(baseReset),\n } as unknown as CSSStyleSheet;\n } else {\n baseResetSheet = new CSSStyleSheet();\n baseResetSheet.replaceSync(minifyCSS(baseReset));\n }\n }\n return baseResetSheet;\n}\n\n/** Reset the base reset sheet singleton (for HMR). @internal */\nexport function _resetBaseResetSheet(): void {\n baseResetSheet = null;\n}\n","/**\n * Lazy render bridge — populated by style.ts when the JIT engine is imported.\n *\n * render.ts always imports this module (so it is always bundled), but\n * style.ts (the full JIT engine, ~24 KB gzip) is only bundled when the\n * consumer explicitly imports JIT CSS symbols such as `enableJITCSS` or\n * `useJITCSS`. When style.ts IS imported it registers itself here so that\n * render.ts can call back into the JIT engine without a static dependency.\n *\n * Result: consumers that never use JIT CSS get zero JIT code in their bundle.\n */\n\ntype JITChecker = (root: ShadowRoot) => boolean;\ntype JITProcessor = (html: string) => string;\ntype ProseSheetGetter = () => CSSStyleSheet | null;\n\nlet _jitChecker: JITChecker | null = null;\nlet _jitProcessor: JITProcessor | null = null;\nlet _proseGetter: ProseSheetGetter | null = null;\n\n/**\n * Register the JIT CSS engine with the render pipeline.\n * Called by style.ts at module load time so renders automatically get\n * JIT processing without render.ts needing to import style.ts directly.\n * @internal\n */\nexport function _registerRenderBridge(\n checker: JITChecker,\n processor: JITProcessor,\n proseGetter: ProseSheetGetter,\n): void {\n _jitChecker = checker;\n _jitProcessor = processor;\n _proseGetter = proseGetter;\n}\n\n/**\n * Returns true when JIT CSS should run for the given shadow root.\n * Returns false if the JIT engine is not loaded.\n */\nexport function isJITCSSActiveFor(root: ShadowRoot): boolean {\n return _jitChecker ? _jitChecker(root) : false;\n}\n\n/**\n * Run JIT CSS processing over the aggregated HTML string.\n * Returns empty string if the JIT engine is not loaded.\n */\nexport function processJITCSS(html: string): string {\n return _jitProcessor ? _jitProcessor(html) : '';\n}\n\n/**\n * Get the prose stylesheet singleton.\n * Returns null if the JIT engine is not loaded or no prose classes detected.\n */\nexport function getProseStyleSheet(): CSSStyleSheet | null {\n return _proseGetter ? _proseGetter() : null;\n}\n"],"names":["variables","css","strings","values","result","i","minifyCSS","input","sanitizeCSS","cssEscape","value","str","length","char","code","escapeClassName","name","escapeRegExp","baseReset","spacing","baseResetSheet","getBaseResetSheet","_jitChecker","_jitProcessor","_proseGetter","_registerRenderBridge","checker","processor","proseGetter","isJITCSSActiveFor","root","processJITCSS","html","getProseStyleSheet"],"mappings":"AAAA,MAAAA,IAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA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"}
@@ -0,0 +1,576 @@
1
+ "use strict";const g=`/*
2
+ * Custom Elements Variables CSS
3
+ * Default fallback values
4
+ *
5
+ * Define your overrides in the document's :root to have them
6
+ * inherited into all Shadow DOM components:
7
+ *
8
+ * <style>
9
+ * :root {
10
+ * --cer-color-primary-500: #8b5cf6;
11
+ * --cer-font-sans: 'Inter', sans-serif;
12
+ * }
13
+ * </style>
14
+ *
15
+ * Note: Only :root is used here (not :host) so document-level
16
+ * overrides will inherit into Shadow DOM and take precedence.
17
+ */
18
+
19
+ :root {
20
+ /* Font families (match runtime defaults in src/lib/runtime/style.ts) */
21
+ --cer-font-sans:
22
+ ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto,
23
+ 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;
24
+ --cer-font-serif: ui-serif, Georgia, 'Times New Roman', Times, serif;
25
+ --cer-font-mono:
26
+ ui-monospace, 'SFMono-Regular', Menlo, Monaco, 'Roboto Mono', 'Courier New',
27
+ monospace;
28
+
29
+ /* Default outline style */
30
+ --cer-outline-style: solid;
31
+
32
+ /* Colors */
33
+ --cer-color-transparent: transparent;
34
+ --cer-color-current: currentColor;
35
+ --cer-color-black: #000000;
36
+ --cer-color-white: #ffffff;
37
+ --cer-color-inherit: inherit;
38
+
39
+ /* neutral */
40
+ --cer-color-neutral-50: #fafafa;
41
+ --cer-color-neutral-100: #f4f4f5;
42
+ --cer-color-neutral-200: #e4e4e7;
43
+ --cer-color-neutral-300: #d4d4d8;
44
+ --cer-color-neutral-400: #9f9fa9;
45
+ --cer-color-neutral-500: #71717b;
46
+ --cer-color-neutral-600: #52525c;
47
+ --cer-color-neutral-700: #3f3f46;
48
+ --cer-color-neutral-800: #27272a;
49
+ --cer-color-neutral-900: #18181b;
50
+ --cer-color-neutral-950: #09090b;
51
+
52
+ /* primary */
53
+ --cer-color-primary-50: #eff6ff;
54
+ --cer-color-primary-100: #dbeafe;
55
+ --cer-color-primary-200: #bfdbfe;
56
+ --cer-color-primary-300: #93c5fd;
57
+ --cer-color-primary-400: #60a5fa;
58
+ --cer-color-primary-500: #3b82f6;
59
+ --cer-color-primary-600: #2563eb;
60
+ --cer-color-primary-700: #1d4ed8;
61
+ --cer-color-primary-800: #1e40af;
62
+ --cer-color-primary-900: #1e3a8a;
63
+ --cer-color-primary-950: #172554;
64
+
65
+ /* secondary */
66
+ --cer-color-secondary-50: #eef2ff;
67
+ --cer-color-secondary-100: #e0e7ff;
68
+ --cer-color-secondary-200: #c7d2fe;
69
+ --cer-color-secondary-300: #a5b4fc;
70
+ --cer-color-secondary-400: #818cf8;
71
+ --cer-color-secondary-500: #6366f1;
72
+ --cer-color-secondary-600: #4f46e5;
73
+ --cer-color-secondary-700: #4338ca;
74
+ --cer-color-secondary-800: #3730a3;
75
+ --cer-color-secondary-900: #312e81;
76
+ --cer-color-secondary-950: #1e1b4b;
77
+
78
+ /* success */
79
+ --cer-color-success-50: #f0fdf4;
80
+ --cer-color-success-100: #dcfce7;
81
+ --cer-color-success-200: #bbf7d0;
82
+ --cer-color-success-300: #86efac;
83
+ --cer-color-success-400: #4ade80;
84
+ --cer-color-success-500: #22c55e;
85
+ --cer-color-success-600: #16a34a;
86
+ --cer-color-success-700: #15803d;
87
+ --cer-color-success-800: #166534;
88
+ --cer-color-success-900: #14532d;
89
+ --cer-color-success-950: #052e16;
90
+
91
+ /* info */
92
+ --cer-color-info-50: #f0f9ff;
93
+ --cer-color-info-100: #e0f2fe;
94
+ --cer-color-info-200: #bae6fd;
95
+ --cer-color-info-300: #7dd3fc;
96
+ --cer-color-info-400: #38bdf8;
97
+ --cer-color-info-500: #0ea5e9;
98
+ --cer-color-info-600: #0284c7;
99
+ --cer-color-info-700: #0369a1;
100
+ --cer-color-info-800: #075985;
101
+ --cer-color-info-900: #0c4a6e;
102
+ --cer-color-info-950: #082f49;
103
+
104
+ /* warning */
105
+ --cer-color-warning-50: #fffbeb;
106
+ --cer-color-warning-100: #fef3c7;
107
+ --cer-color-warning-200: #fde68a;
108
+ --cer-color-warning-300: #fcd34d;
109
+ --cer-color-warning-400: #fbbf24;
110
+ --cer-color-warning-500: #f59e0b;
111
+ --cer-color-warning-600: #d97706;
112
+ --cer-color-warning-700: #b45309;
113
+ --cer-color-warning-800: #92400e;
114
+ --cer-color-warning-900: #78350f;
115
+ --cer-color-warning-950: #451a03;
116
+
117
+ /* error */
118
+ --cer-color-error-50: #fef2f2;
119
+ --cer-color-error-100: #fee2e2;
120
+ --cer-color-error-200: #fecaca;
121
+ --cer-color-error-300: #fca5a5;
122
+ --cer-color-error-400: #f87171;
123
+ --cer-color-error-500: #ef4444;
124
+ --cer-color-error-600: #dc2626;
125
+ --cer-color-error-700: #b91c1c;
126
+ --cer-color-error-800: #991b1b;
127
+ --cer-color-error-900: #7f1d1d;
128
+ --cer-color-error-950: #450a0a;
129
+
130
+ /* Extended Tailwind palette — override to theme these colors */
131
+ /* slate */
132
+ --cer-color-slate-50: #f8fafc;
133
+ --cer-color-slate-100: #f1f5f9;
134
+ --cer-color-slate-200: #e2e8f0;
135
+ --cer-color-slate-300: #cbd5e1;
136
+ --cer-color-slate-400: #94a3b8;
137
+ --cer-color-slate-500: #64748b;
138
+ --cer-color-slate-600: #475569;
139
+ --cer-color-slate-700: #334155;
140
+ --cer-color-slate-800: #1e293b;
141
+ --cer-color-slate-900: #0f172a;
142
+ --cer-color-slate-950: #020617;
143
+ /* gray */
144
+ --cer-color-gray-50: #f9fafb;
145
+ --cer-color-gray-100: #f3f4f6;
146
+ --cer-color-gray-200: #e5e7eb;
147
+ --cer-color-gray-300: #d1d5db;
148
+ --cer-color-gray-400: #9ca3af;
149
+ --cer-color-gray-500: #6b7280;
150
+ --cer-color-gray-600: #4b5563;
151
+ --cer-color-gray-700: #374151;
152
+ --cer-color-gray-800: #1f2937;
153
+ --cer-color-gray-900: #111827;
154
+ --cer-color-gray-950: #030712;
155
+ /* zinc */
156
+ --cer-color-zinc-50: #fafafa;
157
+ --cer-color-zinc-100: #f4f4f5;
158
+ --cer-color-zinc-200: #e4e4e7;
159
+ --cer-color-zinc-300: #d4d4d8;
160
+ --cer-color-zinc-400: #a1a1aa;
161
+ --cer-color-zinc-500: #71717a;
162
+ --cer-color-zinc-600: #52525b;
163
+ --cer-color-zinc-700: #3f3f46;
164
+ --cer-color-zinc-800: #27272a;
165
+ --cer-color-zinc-900: #18181b;
166
+ --cer-color-zinc-950: #09090b;
167
+ /* stone */
168
+ --cer-color-stone-50: #fafaf9;
169
+ --cer-color-stone-100: #f5f5f4;
170
+ --cer-color-stone-200: #e7e5e4;
171
+ --cer-color-stone-300: #d6d3d1;
172
+ --cer-color-stone-400: #a8a29e;
173
+ --cer-color-stone-500: #78716c;
174
+ --cer-color-stone-600: #57534e;
175
+ --cer-color-stone-700: #44403c;
176
+ --cer-color-stone-800: #292524;
177
+ --cer-color-stone-900: #1c1917;
178
+ --cer-color-stone-950: #0c0a09;
179
+ /* red */
180
+ --cer-color-red-50: #fef2f2;
181
+ --cer-color-red-100: #fee2e2;
182
+ --cer-color-red-200: #fecaca;
183
+ --cer-color-red-300: #fca5a5;
184
+ --cer-color-red-400: #f87171;
185
+ --cer-color-red-500: #ef4444;
186
+ --cer-color-red-600: #dc2626;
187
+ --cer-color-red-700: #b91c1c;
188
+ --cer-color-red-800: #991b1b;
189
+ --cer-color-red-900: #7f1d1d;
190
+ --cer-color-red-950: #450a0a;
191
+ /* orange */
192
+ --cer-color-orange-50: #fff7ed;
193
+ --cer-color-orange-100: #ffedd5;
194
+ --cer-color-orange-200: #fed7aa;
195
+ --cer-color-orange-300: #fdba74;
196
+ --cer-color-orange-400: #fb923c;
197
+ --cer-color-orange-500: #f97316;
198
+ --cer-color-orange-600: #ea580c;
199
+ --cer-color-orange-700: #c2410c;
200
+ --cer-color-orange-800: #9a3412;
201
+ --cer-color-orange-900: #7c2d12;
202
+ --cer-color-orange-950: #431407;
203
+ /* amber */
204
+ --cer-color-amber-50: #fffbeb;
205
+ --cer-color-amber-100: #fef3c7;
206
+ --cer-color-amber-200: #fde68a;
207
+ --cer-color-amber-300: #fcd34d;
208
+ --cer-color-amber-400: #fbbf24;
209
+ --cer-color-amber-500: #f59e0b;
210
+ --cer-color-amber-600: #d97706;
211
+ --cer-color-amber-700: #b45309;
212
+ --cer-color-amber-800: #92400e;
213
+ --cer-color-amber-900: #78350f;
214
+ --cer-color-amber-950: #451a03;
215
+ /* yellow */
216
+ --cer-color-yellow-50: #fefce8;
217
+ --cer-color-yellow-100: #fef9c3;
218
+ --cer-color-yellow-200: #fef08a;
219
+ --cer-color-yellow-300: #fde047;
220
+ --cer-color-yellow-400: #facc15;
221
+ --cer-color-yellow-500: #eab308;
222
+ --cer-color-yellow-600: #ca8a04;
223
+ --cer-color-yellow-700: #a16207;
224
+ --cer-color-yellow-800: #854d0e;
225
+ --cer-color-yellow-900: #713f12;
226
+ --cer-color-yellow-950: #422006;
227
+ /* lime */
228
+ --cer-color-lime-50: #f7fee7;
229
+ --cer-color-lime-100: #ecfccb;
230
+ --cer-color-lime-200: #d9f99d;
231
+ --cer-color-lime-300: #bef264;
232
+ --cer-color-lime-400: #a3e635;
233
+ --cer-color-lime-500: #84cc16;
234
+ --cer-color-lime-600: #65a30d;
235
+ --cer-color-lime-700: #4d7c0f;
236
+ --cer-color-lime-800: #3f6212;
237
+ --cer-color-lime-900: #365314;
238
+ --cer-color-lime-950: #1a2e05;
239
+ /* green */
240
+ --cer-color-green-50: #f0fdf4;
241
+ --cer-color-green-100: #dcfce7;
242
+ --cer-color-green-200: #bbf7d0;
243
+ --cer-color-green-300: #86efac;
244
+ --cer-color-green-400: #4ade80;
245
+ --cer-color-green-500: #22c55e;
246
+ --cer-color-green-600: #16a34a;
247
+ --cer-color-green-700: #15803d;
248
+ --cer-color-green-800: #166534;
249
+ --cer-color-green-900: #14532d;
250
+ --cer-color-green-950: #052e16;
251
+ /* emerald */
252
+ --cer-color-emerald-50: #ecfdf5;
253
+ --cer-color-emerald-100: #d1fae5;
254
+ --cer-color-emerald-200: #a7f3d0;
255
+ --cer-color-emerald-300: #6ee7b7;
256
+ --cer-color-emerald-400: #34d399;
257
+ --cer-color-emerald-500: #10b981;
258
+ --cer-color-emerald-600: #059669;
259
+ --cer-color-emerald-700: #047857;
260
+ --cer-color-emerald-800: #065f46;
261
+ --cer-color-emerald-900: #064e3b;
262
+ --cer-color-emerald-950: #022c22;
263
+ /* teal */
264
+ --cer-color-teal-50: #f0fdfa;
265
+ --cer-color-teal-100: #ccfbf1;
266
+ --cer-color-teal-200: #99f6e4;
267
+ --cer-color-teal-300: #5eead4;
268
+ --cer-color-teal-400: #2dd4bf;
269
+ --cer-color-teal-500: #14b8a6;
270
+ --cer-color-teal-600: #0d9488;
271
+ --cer-color-teal-700: #0f766e;
272
+ --cer-color-teal-800: #115e59;
273
+ --cer-color-teal-900: #134e4a;
274
+ --cer-color-teal-950: #042f2e;
275
+ /* cyan */
276
+ --cer-color-cyan-50: #ecfeff;
277
+ --cer-color-cyan-100: #cffafe;
278
+ --cer-color-cyan-200: #a5f3fc;
279
+ --cer-color-cyan-300: #67e8f9;
280
+ --cer-color-cyan-400: #22d3ee;
281
+ --cer-color-cyan-500: #06b6d4;
282
+ --cer-color-cyan-600: #0891b2;
283
+ --cer-color-cyan-700: #0e7490;
284
+ --cer-color-cyan-800: #155e75;
285
+ --cer-color-cyan-900: #164e63;
286
+ --cer-color-cyan-950: #083344;
287
+ /* sky */
288
+ --cer-color-sky-50: #f0f9ff;
289
+ --cer-color-sky-100: #e0f2fe;
290
+ --cer-color-sky-200: #bae6fd;
291
+ --cer-color-sky-300: #7dd3fc;
292
+ --cer-color-sky-400: #38bdf8;
293
+ --cer-color-sky-500: #0ea5e9;
294
+ --cer-color-sky-600: #0284c7;
295
+ --cer-color-sky-700: #0369a1;
296
+ --cer-color-sky-800: #075985;
297
+ --cer-color-sky-900: #0c4a6e;
298
+ --cer-color-sky-950: #082f49;
299
+ /* blue */
300
+ --cer-color-blue-50: #eff6ff;
301
+ --cer-color-blue-100: #dbeafe;
302
+ --cer-color-blue-200: #bfdbfe;
303
+ --cer-color-blue-300: #93c5fd;
304
+ --cer-color-blue-400: #60a5fa;
305
+ --cer-color-blue-500: #3b82f6;
306
+ --cer-color-blue-600: #2563eb;
307
+ --cer-color-blue-700: #1d4ed8;
308
+ --cer-color-blue-800: #1e40af;
309
+ --cer-color-blue-900: #1e3a8a;
310
+ --cer-color-blue-950: #172554;
311
+ /* indigo */
312
+ --cer-color-indigo-50: #eef2ff;
313
+ --cer-color-indigo-100: #e0e7ff;
314
+ --cer-color-indigo-200: #c7d2fe;
315
+ --cer-color-indigo-300: #a5b4fc;
316
+ --cer-color-indigo-400: #818cf8;
317
+ --cer-color-indigo-500: #6366f1;
318
+ --cer-color-indigo-600: #4f46e5;
319
+ --cer-color-indigo-700: #4338ca;
320
+ --cer-color-indigo-800: #3730a3;
321
+ --cer-color-indigo-900: #312e81;
322
+ --cer-color-indigo-950: #1e1b4b;
323
+ /* violet */
324
+ --cer-color-violet-50: #f5f3ff;
325
+ --cer-color-violet-100: #ede9fe;
326
+ --cer-color-violet-200: #ddd6fe;
327
+ --cer-color-violet-300: #c4b5fd;
328
+ --cer-color-violet-400: #a78bfa;
329
+ --cer-color-violet-500: #8b5cf6;
330
+ --cer-color-violet-600: #7c3aed;
331
+ --cer-color-violet-700: #6d28d9;
332
+ --cer-color-violet-800: #5b21b6;
333
+ --cer-color-violet-900: #4c1d95;
334
+ --cer-color-violet-950: #2e1065;
335
+ /* purple */
336
+ --cer-color-purple-50: #faf5ff;
337
+ --cer-color-purple-100: #f3e8ff;
338
+ --cer-color-purple-200: #e9d5ff;
339
+ --cer-color-purple-300: #d8b4fe;
340
+ --cer-color-purple-400: #c084fc;
341
+ --cer-color-purple-500: #a855f7;
342
+ --cer-color-purple-600: #9333ea;
343
+ --cer-color-purple-700: #7e22ce;
344
+ --cer-color-purple-800: #6b21a8;
345
+ --cer-color-purple-900: #581c87;
346
+ --cer-color-purple-950: #3b0764;
347
+ /* fuchsia */
348
+ --cer-color-fuchsia-50: #fdf4ff;
349
+ --cer-color-fuchsia-100: #fae8ff;
350
+ --cer-color-fuchsia-200: #f5d0fe;
351
+ --cer-color-fuchsia-300: #f0abfc;
352
+ --cer-color-fuchsia-400: #e879f9;
353
+ --cer-color-fuchsia-500: #d946ef;
354
+ --cer-color-fuchsia-600: #c026d3;
355
+ --cer-color-fuchsia-700: #a21caf;
356
+ --cer-color-fuchsia-800: #86198f;
357
+ --cer-color-fuchsia-900: #701a75;
358
+ --cer-color-fuchsia-950: #4a044e;
359
+ /* pink */
360
+ --cer-color-pink-50: #fdf2f8;
361
+ --cer-color-pink-100: #fce7f3;
362
+ --cer-color-pink-200: #fbcfe8;
363
+ --cer-color-pink-300: #f9a8d4;
364
+ --cer-color-pink-400: #f472b6;
365
+ --cer-color-pink-500: #ec4899;
366
+ --cer-color-pink-600: #db2777;
367
+ --cer-color-pink-700: #be185d;
368
+ --cer-color-pink-800: #9d174d;
369
+ --cer-color-pink-900: #831843;
370
+ --cer-color-pink-950: #500724;
371
+ /* rose */
372
+ --cer-color-rose-50: #fff1f2;
373
+ --cer-color-rose-100: #ffe4e6;
374
+ --cer-color-rose-200: #fecdd3;
375
+ --cer-color-rose-300: #fda4af;
376
+ --cer-color-rose-400: #fb7185;
377
+ --cer-color-rose-500: #f43f5e;
378
+ --cer-color-rose-600: #e11d48;
379
+ --cer-color-rose-700: #be123c;
380
+ --cer-color-rose-800: #9f1239;
381
+ --cer-color-rose-900: #881337;
382
+ --cer-color-rose-950: #4c0519;
383
+ }
384
+
385
+ /* @property registrations for CSS transition composability */
386
+ @property --cer-rotate {
387
+ syntax: '<angle>';
388
+ initial-value: 0deg;
389
+ inherits: false;
390
+ }
391
+ @property --cer-translate-x {
392
+ syntax: '<length>';
393
+ initial-value: 0px;
394
+ inherits: false;
395
+ }
396
+ @property --cer-translate-y {
397
+ syntax: '<length>';
398
+ initial-value: 0px;
399
+ inherits: false;
400
+ }
401
+ @property --cer-skew-x {
402
+ syntax: '<angle>';
403
+ initial-value: 0deg;
404
+ inherits: false;
405
+ }
406
+ @property --cer-skew-y {
407
+ syntax: '<angle>';
408
+ initial-value: 0deg;
409
+ inherits: false;
410
+ }
411
+ @property --cer-scale-x {
412
+ syntax: '<number>';
413
+ initial-value: 1;
414
+ inherits: false;
415
+ }
416
+ @property --cer-scale-y {
417
+ syntax: '<number>';
418
+ initial-value: 1;
419
+ inherits: false;
420
+ }
421
+ /* Filter composition variables (--cer-blur, --cer-brightness, etc.) intentionally
422
+ omit @property registration because their "no-op" value is empty string (''),
423
+ which is not a valid CSS initial-value. They compose correctly without Houdini. */
424
+ @property --cer-opacity {
425
+ syntax: '<number>';
426
+ initial-value: 1;
427
+ inherits: false;
428
+ }
429
+ `;function u(e,...c){let n="";for(let o=0;o<e.length;o++)n+=e[o],o<c.length&&(n+=c[o]);return n}function t(e){return e.replace(/\/\*[\s\S]*?\*\//g,"").replace(/\s+/g," ").replace(/\s*([{}:;,>~])\s*/g,"$1").replace(/;}/g,"}").trim()}function y(e){return e.replace(/@charset\s+[^;]*;/gi,"").replace(/url\s*\(\s*['"]?javascript:[^)]*\)/gi,"").replace(/url\s*\(\s*['"]?data:[^)]*\)/gi,"").replace(/@import\s[^;{]*/gi,"").replace(/-moz-binding\s*:[^;]*/gi,"").replace(/\bbehavior\s*:[^;]*/gi,"").replace(/<script[\s\S]*?>[\s\S]*?<\/script>/gi,"").replace(/expression\s*\([^)]*\)/gi,"")}function p(e){if(typeof CSS<"u"&&CSS.escape)return CSS.escape(e);const c=String(e),n=c.length;let o="",l=0;for(;l<n;){const i=c.charAt(l),r=c.charCodeAt(l);r===0?o+="�":r>=1&&r<=31||r===127||l===0&&r>=48&&r<=57||l===1&&r>=48&&r<=57&&c.charCodeAt(0)===45?o+="\\"+r.toString(16)+" ":l===0&&n===1&&r===45?o+="\\"+i:r>=128||r===45||r===95||r>=48&&r<=57||r>=65&&r<=90||r>=97&&r<=122?o+=i:o+="\\"+i,l++}return o}function m(e){return"."+p(e)}function h(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}const s=u`
430
+ ${g}
431
+ :host,
432
+ *,
433
+ ::before,
434
+ ::after {
435
+ all: isolate;
436
+ box-sizing: border-box;
437
+ border: 0 solid currentColor;
438
+ margin: 0;
439
+ padding: 0;
440
+ font: inherit;
441
+ vertical-align: baseline;
442
+ background: transparent;
443
+ color: inherit;
444
+ -webkit-tap-highlight-color: transparent;
445
+ /* Transform composition variables (reset per-element for composability) */
446
+ --cer-translate-x: 0px;
447
+ --cer-translate-y: 0px;
448
+ --cer-rotate: 0deg;
449
+ --cer-skew-x: 0deg;
450
+ --cer-skew-y: 0deg;
451
+ --cer-scale-x: 1;
452
+ --cer-scale-y: 1;
453
+ /* Ring variables */
454
+ --cer-ring-color: rgb(59 130 246 / 0.5);
455
+ /* Filter composition variables (empty = no-op in filter chain) */
456
+ --cer-blur: ;
457
+ --cer-brightness: ;
458
+ --cer-contrast: ;
459
+ --cer-grayscale: ;
460
+ --cer-hue-rotate: ;
461
+ --cer-invert: ;
462
+ --cer-saturate: ;
463
+ --cer-sepia: ;
464
+ --cer-drop-shadow: ;
465
+ --cer-backdrop-blur: ;
466
+ --cer-backdrop-brightness: ;
467
+ --cer-backdrop-contrast: ;
468
+ --cer-backdrop-grayscale: ;
469
+ --cer-backdrop-hue-rotate: ;
470
+ --cer-backdrop-invert: ;
471
+ --cer-backdrop-saturate: ;
472
+ --cer-backdrop-sepia: ;
473
+ }
474
+ :host {
475
+ display: contents;
476
+ font: 16px/1.5 var(--cer-font-sans, ui-sans-serif, system-ui, sans-serif);
477
+ /* Default CE line-height variable so leading-* can reliably override */
478
+ --cer-line-height: 1.5;
479
+ -webkit-text-size-adjust: 100%;
480
+ text-size-adjust: 100%;
481
+ -webkit-font-smoothing: antialiased;
482
+ -moz-osx-font-smoothing: grayscale;
483
+ /* Default gradient variables to avoid undefined var() usage in generated utilities */
484
+ --cer-gradient-from-position: 0%;
485
+ --cer-gradient-to-position: 100%;
486
+ --cer-gradient-via-position: 50%;
487
+ --cer-gradient-from: rgba(255, 255, 255, 0);
488
+ --cer-gradient-to: rgba(255, 255, 255, 0);
489
+ --cer-gradient-stops: var(--cer-gradient-from), var(--cer-gradient-to);
490
+ /* Default outline style variable */
491
+ --cer-outline-style: solid;
492
+ }
493
+ button,
494
+ input,
495
+ select,
496
+ textarea {
497
+ background: transparent;
498
+ outline: none;
499
+ }
500
+ textarea {
501
+ resize: vertical;
502
+ }
503
+ progress {
504
+ vertical-align: baseline;
505
+ }
506
+ button,
507
+ textarea {
508
+ overflow: visible;
509
+ }
510
+ img,
511
+ svg,
512
+ video,
513
+ canvas,
514
+ audio,
515
+ iframe,
516
+ embed,
517
+ object {
518
+ display: block;
519
+ max-width: 100%;
520
+ height: auto;
521
+ }
522
+ svg {
523
+ fill: currentColor;
524
+ stroke: none;
525
+ }
526
+ a {
527
+ text-decoration: inherit;
528
+ cursor: pointer;
529
+ }
530
+ button,
531
+ [type='button'],
532
+ [type='reset'],
533
+ [type='submit'] {
534
+ cursor: pointer;
535
+ appearance: button;
536
+ background: none;
537
+ -webkit-user-select: none;
538
+ user-select: none;
539
+ }
540
+ ::-webkit-input-placeholder,
541
+ ::placeholder {
542
+ color: inherit;
543
+ opacity: 0.5;
544
+ }
545
+ *:focus-visible {
546
+ outline: 2px solid var(--cer-color-primary-500, #3b82f6);
547
+ outline-offset: 2px;
548
+ }
549
+ ol,
550
+ ul {
551
+ list-style: none;
552
+ }
553
+ table {
554
+ border-collapse: collapse;
555
+ }
556
+ sub,
557
+ sup {
558
+ font-size: 0.75em;
559
+ line-height: 0;
560
+ position: relative;
561
+ }
562
+ sub {
563
+ bottom: -0.25em;
564
+ }
565
+ sup {
566
+ top: -0.5em;
567
+ }
568
+ [disabled],
569
+ [aria-disabled='true'] {
570
+ cursor: not-allowed;
571
+ }
572
+ [hidden] {
573
+ display: none;
574
+ }
575
+ `,v="0.25rem";let a=null;function S(){return a||(typeof CSSStyleSheet>"u"?a={cssRules:[],replaceSync:()=>{},toString:()=>t(s)}:(a=new CSSStyleSheet,a.replaceSync(t(s)))),a}let f=null,d=null,b=null;function k(e,c,n){f=e,d=c,b=n}function w(e){return f?f(e):!1}function x(e){return d?d(e):""}function C(){return b?b():null}exports._registerRenderBridge=k;exports.baseReset=s;exports.css=u;exports.cssEscape=p;exports.escapeClassName=m;exports.escapeRegExp=h;exports.getBaseResetSheet=S;exports.getProseStyleSheet=C;exports.isJITCSSActiveFor=w;exports.minifyCSS=t;exports.processJITCSS=x;exports.sanitizeCSS=y;exports.spacing=v;
576
+ //# sourceMappingURL=css-utils-RqkyBWft.cjs.map