@evotecit/canopyx 0.3.13 → 0.3.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.
Files changed (99) hide show
  1. package/CanopyX.Html/Assets/canopyx-calendar-edit.js +36 -18
  2. package/CanopyX.Html/Assets/canopyx-calendar-ics.js +7 -5
  3. package/CanopyX.Html/Assets/canopyx-calendar.css +124 -116
  4. package/CanopyX.Html/Assets/canopyx-calendar.js +74 -54
  5. package/CanopyX.Html/Assets/canopyx-cell-range.css +8 -8
  6. package/CanopyX.Html/Assets/canopyx-cell-range.js +1 -1
  7. package/CanopyX.Html/Assets/canopyx-changes.css +113 -113
  8. package/CanopyX.Html/Assets/canopyx-changes.js +7 -10
  9. package/CanopyX.Html/Assets/canopyx-column-groups.css +5 -5
  10. package/CanopyX.Html/Assets/canopyx-column-groups.js +1 -1
  11. package/CanopyX.Html/Assets/canopyx-data.js +2 -2
  12. package/CanopyX.Html/Assets/canopyx-detail-rows.css +9 -9
  13. package/CanopyX.Html/Assets/canopyx-detail-rows.js +2 -2
  14. package/CanopyX.Html/Assets/canopyx-editing.css +18 -18
  15. package/CanopyX.Html/Assets/canopyx-editing.js +1 -1
  16. package/CanopyX.Html/Assets/canopyx-enhance.js +2 -2
  17. package/CanopyX.Html/Assets/canopyx-facets.css +33 -33
  18. package/CanopyX.Html/Assets/canopyx-facets.js +5 -6
  19. package/CanopyX.Html/Assets/canopyx-filter-editor.css +57 -57
  20. package/CanopyX.Html/Assets/canopyx-filter-editor.js +7 -5
  21. package/CanopyX.Html/Assets/canopyx-flow-checks.css +11 -11
  22. package/CanopyX.Html/Assets/canopyx-flow-checks.js +1 -1
  23. package/CanopyX.Html/Assets/canopyx-flow-command.css +7 -7
  24. package/CanopyX.Html/Assets/canopyx-flow-command.js +1 -1
  25. package/CanopyX.Html/Assets/canopyx-flow-dialog.css +7 -7
  26. package/CanopyX.Html/Assets/canopyx-flow-dialog.js +1 -1
  27. package/CanopyX.Html/Assets/canopyx-flow-drafts.css +7 -7
  28. package/CanopyX.Html/Assets/canopyx-flow-drafts.js +1 -1
  29. package/CanopyX.Html/Assets/canopyx-flow-entry.css +17 -76
  30. package/CanopyX.Html/Assets/canopyx-flow-entry.js +9 -3
  31. package/CanopyX.Html/Assets/canopyx-flow-host.css +4 -4
  32. package/CanopyX.Html/Assets/canopyx-flow-host.js +1 -1
  33. package/CanopyX.Html/Assets/canopyx-flow-module.mjs +9 -3
  34. package/CanopyX.Html/Assets/canopyx-flow-pick.css +4 -4
  35. package/CanopyX.Html/Assets/canopyx-flow-pick.js +1 -1
  36. package/CanopyX.Html/Assets/canopyx-flow-preview.css +6 -6
  37. package/CanopyX.Html/Assets/canopyx-flow-preview.js +1 -1
  38. package/CanopyX.Html/Assets/canopyx-flow-records.css +3 -3
  39. package/CanopyX.Html/Assets/canopyx-flow-records.js +1 -1
  40. package/CanopyX.Html/Assets/canopyx-flow-tasks.css +17 -17
  41. package/CanopyX.Html/Assets/canopyx-flow-tasks.js +1 -1
  42. package/CanopyX.Html/Assets/canopyx-flow.css +79 -79
  43. package/CanopyX.Html/Assets/canopyx-flow.js +1 -1
  44. package/CanopyX.Html/Assets/canopyx-format-editor.css +23 -23
  45. package/CanopyX.Html/Assets/canopyx-format-editor.js +2 -3
  46. package/CanopyX.Html/Assets/canopyx-formatting.css +17 -17
  47. package/CanopyX.Html/Assets/canopyx-formatting.js +5 -5
  48. package/CanopyX.Html/Assets/canopyx-forms.css +5 -5
  49. package/CanopyX.Html/Assets/canopyx-forms.js +1 -1
  50. package/CanopyX.Html/Assets/canopyx-grid-module.mjs +94 -51
  51. package/CanopyX.Html/Assets/canopyx-grid-options.css +10 -0
  52. package/CanopyX.Html/Assets/canopyx-grid-options.js +47 -0
  53. package/CanopyX.Html/Assets/canopyx-grid.css +199 -261
  54. package/CanopyX.Html/Assets/canopyx-grid.js +94 -51
  55. package/CanopyX.Html/Assets/canopyx-grouping.css +17 -17
  56. package/CanopyX.Html/Assets/canopyx-grouping.js +12 -9
  57. package/CanopyX.Html/Assets/canopyx-highlight.css +14 -14
  58. package/CanopyX.Html/Assets/canopyx-highlight.js +2 -2
  59. package/CanopyX.Html/Assets/canopyx-interactive.css +94 -155
  60. package/CanopyX.Html/Assets/canopyx-interactive.js +33 -14
  61. package/CanopyX.Html/Assets/canopyx-labels-de.js +5 -0
  62. package/CanopyX.Html/Assets/canopyx-labels-es.js +5 -0
  63. package/CanopyX.Html/Assets/canopyx-labels-fr.js +5 -0
  64. package/CanopyX.Html/Assets/canopyx-labels-it.js +5 -0
  65. package/CanopyX.Html/Assets/canopyx-labels-pl.js +5 -0
  66. package/CanopyX.Html/Assets/canopyx-layouts.css +17 -17
  67. package/CanopyX.Html/Assets/canopyx-layouts.js +2 -10
  68. package/CanopyX.Html/Assets/canopyx-link.css +7 -7
  69. package/CanopyX.Html/Assets/canopyx-link.js +1 -1
  70. package/CanopyX.Html/Assets/canopyx-live.css +9 -9
  71. package/CanopyX.Html/Assets/canopyx-live.js +2 -2
  72. package/CanopyX.Html/Assets/canopyx-matrix.css +74 -74
  73. package/CanopyX.Html/Assets/canopyx-matrix.js +3 -4
  74. package/CanopyX.Html/Assets/canopyx-module.mjs +33 -14
  75. package/CanopyX.Html/Assets/canopyx-pager.css +2 -2
  76. package/CanopyX.Html/Assets/canopyx-pager.js +1 -1
  77. package/CanopyX.Html/Assets/canopyx-presenters.js +2 -2
  78. package/CanopyX.Html/Assets/canopyx-record-panel.css +49 -49
  79. package/CanopyX.Html/Assets/canopyx-record-panel.js +2 -2
  80. package/CanopyX.Html/Assets/canopyx-reporting-module.mjs +98 -54
  81. package/CanopyX.Html/Assets/canopyx-reporting.css +214 -276
  82. package/CanopyX.Html/Assets/canopyx-reporting.js +98 -54
  83. package/CanopyX.Html/Assets/canopyx-timeline.css +28 -28
  84. package/CanopyX.Html/Assets/canopyx-timeline.js +11 -10
  85. package/CanopyX.Html/Assets/canopyx-tree-tools.css +47 -47
  86. package/CanopyX.Html/Assets/canopyx-tree-tools.js +3 -3
  87. package/CanopyX.Html/Assets/canopyx.css +81 -142
  88. package/CanopyX.Html/Assets/canopyx.js +33 -14
  89. package/JavaScript/calendar.d.ts +15 -0
  90. package/JavaScript/grid.d.ts +26 -3
  91. package/JavaScript/locales/de.mjs +5 -0
  92. package/JavaScript/locales/es.mjs +5 -0
  93. package/JavaScript/locales/fr.mjs +5 -0
  94. package/JavaScript/locales/it.mjs +5 -0
  95. package/JavaScript/locales/pl.mjs +5 -0
  96. package/JavaScript/plugins.d.ts +4 -0
  97. package/JavaScript/protocol.d.ts +1 -1
  98. package/README.md +6 -2
  99. package/package.json +5 -1
@@ -1,67 +1,70 @@
1
1
  /* Calendar: month,week,day,N-day,agenda and year views of a grid's records, under the grid's own toolbar. */
2
2
  .cx-calendar > :is(.cx-grid,.cx-grid-pager,.cx-grid-notice,.cx-grid-status){display:none!important;}
3
- .cx-calendar .cx-cal{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;position:relative;background:var(--cx-surface);}
4
- .cx-cal-bar{flex:none;display:flex;flex-wrap:wrap;align-items:center;gap:var(--cx-size-8px) var(--cx-size-12px);padding:var(--cx-size-8px) var(--cx-size-12px);border-bottom:var(--cx-size-1px) solid var(--cx-line);}
3
+ .cx-calendar .cx-cal{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;position:relative;background:var(--hfx-color-surface,light-dark(#ffffff,#16181c));}
4
+ .cx-cal-bar{flex:none;display:flex;flex-wrap:wrap;align-items:center;gap:var(--cx-size-8px) var(--cx-size-12px);padding:var(--cx-size-8px) var(--cx-size-12px);border-bottom:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));}
5
5
  .cx-cal-nav{display:flex;align-items:center;gap:var(--cx-size-4px);}
6
6
  .cx-chrome .cx-cal-nav > .cx-cal-gotoday[aria-disabled="true"]{opacity:.45;cursor:default;}
7
- .cx-cal-title{margin:0;min-width:0;font-size:var(--cx-size-17px);font-weight:600;line-height:1.3;color:var(--cx-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
7
+ .cx-cal-title{margin:0;min-width:0;font-size:var(--cx-size-17px);font-weight:600;line-height:1.3;color:var(--hfx-color-text,light-dark(#16181c,#f2f3f5));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
8
8
  .cx-cal-ico{width:var(--cx-size-16px);height:var(--cx-size-16px);flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
9
- .cx-cal-views{display:inline-flex;border:var(--cx-size-1px) solid var(--cx-line-strong);border-radius:var(--cx-radius);overflow:hidden;}
10
- .cx-chrome .cx-cal-views > .cx-cal-view{border:0;border-radius:0;height:calc(var(--cx-control-h) - var(--cx-size-2px));min-height:0;padding:0 var(--cx-size-12px);font-weight:500;}
11
- .cx-chrome .cx-cal-views > .cx-cal-view + .cx-cal-view{border-inline-start:var(--cx-size-1px) solid var(--cx-line);}
12
- .cx-chrome .cx-cal-views > .cx-cal-view[aria-pressed="true"]{background:var(--cx-accent-soft);color:var(--cx-accent-text);font-weight:600;}
13
- .cx-cal-bar :is(.cx-cal-jump,.cx-cal-jumpbtn,.cx-cal-zoom,.cx-cal-view-select){height:var(--cx-control-h);padding:0 var(--cx-size-8px);border:var(--cx-size-1px) solid var(--cx-control-border);border-radius:var(--cx-radius);background:var(--cx-surface);color:var(--cx-text);font:inherit;font-size:var(--cx-size-13d5px);}
9
+ .cx-cal-views{display:inline-flex;border:var(--cx-size-1px) solid var(--hfx-color-border-strong,light-dark(#cdd0d5,#363a42));border-radius:var(--hfx-radius-control,var(--hfx-radius-md,6px));overflow:hidden;}
10
+ .cx-chrome .cx-cal-views > .cx-cal-view{border:0;border-radius:0;height:calc(var(--hfx-control-height-md,calc(36px - var(--cx-compact,0) * 8px)) - var(--cx-size-2px));min-height:0;padding:0 var(--cx-size-12px);font-weight:500;}
11
+ .cx-chrome .cx-cal-views > .cx-cal-view + .cx-cal-view{border-inline-start:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));}
12
+ .cx-chrome .cx-cal-views > .cx-cal-view[aria-pressed="true"]{background:var(--hfx-color-accent-subtle,light-dark(#e7f1f1,#1b3435));color:var(--hfx-color-accent-text,light-dark(#02726a,#37c9b8));font-weight:600;}
13
+ .cx-cal-bar :is(.cx-cal-jump,.cx-cal-jumpbtn,.cx-cal-zoom,.cx-cal-view-select){height:var(--hfx-control-height-md,calc(36px - var(--cx-compact,0) * 8px));padding:0 var(--cx-size-8px);border:var(--cx-size-1px) solid var(--hfx-color-border-control,light-dark(#8a8f98,#6e737c));border-radius:var(--hfx-radius-control,var(--hfx-radius-md,6px));background:var(--hfx-color-surface,light-dark(#ffffff,#16181c));color:var(--hfx-color-text,light-dark(#16181c,#f2f3f5));font:inherit;font-size:var(--cx-size-13d5px);}
14
14
  .cx-cal-bar .cx-cal-view-select{display:none;}
15
- .cx-cal-bar :is(.cx-cal-jump,.cx-cal-jumpbtn,.cx-cal-zoom,.cx-cal-view-select):focus-visible{outline:var(--cx-size-2px) solid var(--cx-accent);outline-offset:var(--cx-size-2px);}
16
- .cx-cal-notice{flex:none;padding:var(--cx-size-6px) var(--cx-size-12px);font-size:var(--cx-size-13px);color:var(--cx-text-2);background:var(--cx-head-bg);border-bottom:var(--cx-size-1px) solid var(--cx-line);}
17
- .cx-cal-notice.cx-cal-error{color:var(--cx-tone-danger);}
15
+ .cx-cal-bar :is(.cx-cal-jump,.cx-cal-jumpbtn,.cx-cal-zoom,.cx-cal-view-select):focus-visible{outline:var(--hfx-focus-width,2px) solid var(--hfx-color-focus-ring,light-dark(#02726a,#37c9b8));outline-offset:var(--hfx-focus-offset,2px);}
16
+ .cx-cal-notice{flex:none;padding:var(--cx-size-6px) var(--cx-size-12px);font-size:var(--cx-size-13px);color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));background:var(--hfx-color-surface-sunken,light-dark(#f7f8f9,#111317));border-bottom:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));}
17
+ .cx-cal-notice.cx-cal-error{color:var(--hfx-color-status-bad-fg,light-dark(#b8292a,#f47171));}
18
18
  .cx-cal-body{flex:1 1 auto;min-height:0;overflow:auto;position:relative;}
19
- .cx-cal-empty{margin:0;padding:var(--cx-size-24px) var(--cx-size-16px);color:var(--cx-muted);text-align:center;}
20
- .cx-cal-ev{--cx-ev:var(--cx-accent);--cx-ev-bg:var(--cx-accent-soft);position:relative;display:flex;align-items:center;gap:var(--cx-size-4px);min-width:0;margin:0;padding:0 var(--cx-size-6px);border:0;border-radius:var(--cx-radius-sm);background:var(--cx-ev-bg);color:var(--cx-text);font:inherit;font-size:var(--cx-size-12d5px);line-height:var(--cx-size-18px);text-align:start;cursor:pointer;overflow:hidden;white-space:nowrap;box-shadow:inset var(--cx-size-3px) 0 0 var(--cx-ev);}
19
+ .cx-cal-rpick > button{flex:none;min-width:var(--cx-size-34px);}
20
+ .cx-cal-shared{font-size:var(--cx-size-11px);line-height:var(--cx-size-16px);border:var(--cx-size-1px) solid currentColor;border-radius:var(--hfx-radius-status,999px);padding-inline:var(--cx-size-4px);align-self:flex-start;}
21
+ .cx-cal-ev.cx-cal-shared-active{outline:var(--hfx-focus-width,2px) solid var(--cx-ev);outline-offset:var(--hfx-focus-offset,2px);background:color-mix(in srgb,var(--cx-ev) 25%,var(--hfx-color-surface,light-dark(#ffffff,#16181c)));}
22
+ .cx-cal-empty{margin:0;padding:var(--cx-size-24px) var(--cx-size-16px);color:var(--hfx-color-text-muted,light-dark(#626770,#8f949d));text-align:center;}
23
+ .cx-cal-ev{--cx-ev:var(--hfx-color-accent,light-dark(#11776f,#37c9b8));--cx-ev-bg:var(--hfx-color-accent-subtle,light-dark(#e7f1f1,#1b3435));position:relative;display:flex;align-items:center;gap:var(--cx-size-4px);min-width:0;margin:0;padding:0 var(--cx-size-6px);border:0;border-radius:var(--hfx-radius-sm,4px);background:var(--cx-ev-bg);color:var(--hfx-color-text,light-dark(#16181c,#f2f3f5));font:inherit;font-size:var(--cx-size-12d5px);line-height:var(--cx-size-18px);text-align:start;cursor:pointer;overflow:hidden;white-space:nowrap;box-shadow:inset var(--cx-size-3px) 0 0 var(--cx-ev);}
21
24
  :where(.cx-cal-rtl) .cx-cal-ev{box-shadow:inset calc(-1 * var(--cx-size-3px)) 0 0 var(--cx-ev);}
22
- .cx-cal-ev:hover{background:color-mix(in srgb,var(--cx-ev) 22%,var(--cx-surface));}
23
- .cx-cal-ev:focus-visible{outline:var(--cx-size-2px) solid var(--cx-accent);outline-offset:var(--cx-size-1px);z-index:6;}
25
+ .cx-cal-ev:hover{background:color-mix(in srgb,var(--cx-ev) 22%,var(--hfx-color-surface,light-dark(#ffffff,#16181c)));}
26
+ .cx-cal-ev:focus-visible{outline:var(--hfx-focus-width,2px) solid var(--hfx-color-focus-ring,light-dark(#02726a,#37c9b8));outline-offset:var(--hfx-focus-offset,2px);z-index:6;}
24
27
  .cx-cal-ev-title{min-width:0;overflow:hidden;text-overflow:ellipsis;}
25
- .cx-cal-ev-time{flex:none;color:var(--cx-text-2);font-variant-numeric:tabular-nums;}
26
- .cx-cal-ev-sub{min-width:0;color:var(--cx-text-2);overflow:hidden;text-overflow:ellipsis;}
28
+ .cx-cal-ev-time{flex:none;color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));font-variant-numeric:tabular-nums;}
29
+ .cx-cal-ev-sub{min-width:0;color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));overflow:hidden;text-overflow:ellipsis;}
27
30
  .cx-cal-ev-status{flex:none;display:inline-flex;align-items:center;}
28
- .cx-cal-ev .cx-cal-ico{width:var(--cx-size-12px);height:var(--cx-size-12px);margin-inline-start:auto;color:var(--cx-text-2);}
31
+ .cx-cal-ev .cx-cal-ico{width:var(--cx-size-12px);height:var(--cx-size-12px);margin-inline-start:auto;color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));}
29
32
  .cx-cal-ev.cx-cal-ev-chip{background:transparent;box-shadow:none;padding-inline-start:var(--cx-size-4px);}
30
- .cx-cal-ev.cx-cal-ev-chip:hover{background:var(--cx-hover-bg);}
33
+ .cx-cal-ev.cx-cal-ev-chip:hover{background:var(--hfx-color-hover,light-dark(#f5f5f5,#232529));}
31
34
  .cx-cal-ev-chip::before,.cx-cal-ev-item::before{content:"";flex:none;width:var(--cx-size-8px);height:var(--cx-size-8px);border-radius:50%;background:var(--cx-ev);}
32
35
  .cx-cal-ev.cx-cal-cont-start{border-start-start-radius:0;border-end-start-radius:0;box-shadow:none;}
33
36
  .cx-cal-ev.cx-cal-cont-end{border-start-end-radius:0;border-end-end-radius:0;}
34
- .cx-cal-ev[data-cx-linked="true"]{outline:var(--cx-size-2px) dashed var(--cx-tone-info);outline-offset:var(--cx-size-1px);}
35
- [data-cx-event-style="strong"] .cx-cal-ev:is(.cx-cal-ev-bar,.cx-cal-ev-block,.cx-cal-ev-lane){background:var(--cx-ev);color:var(--cx-on-accent);box-shadow:none;}
37
+ .cx-cal-ev[data-cx-linked="true"]{outline:var(--cx-size-2px) dashed var(--hfx-color-status-info-fg,light-dark(#2b5fc0,#74a2f7));outline-offset:var(--hfx-focus-offset,2px);}
38
+ [data-cx-event-style="strong"] .cx-cal-ev:is(.cx-cal-ev-bar,.cx-cal-ev-block,.cx-cal-ev-lane){background:var(--cx-ev);color:var(--hfx-color-accent-contrast,light-dark(#ffffff,#0c0d10));box-shadow:none;}
36
39
  [data-cx-event-style="strong"] .cx-cal-ev:is(.cx-cal-ev-bar,.cx-cal-ev-block,.cx-cal-ev-lane) :is(.cx-cal-ev-time,.cx-cal-ev-sub,.cx-cal-ico){color:inherit;opacity:.88;}
37
40
  .cx-cal-month{display:flex;flex-direction:column;min-height:100%;}
38
41
  .cx-cal-dow,.cx-cal-week{display:grid;grid-template-columns:repeat(var(--cx-cal-cols),minmax(0,1fr));}
39
- .cx-cal-dow{position:sticky;top:0;z-index:7;background:var(--cx-head-bg);border-bottom:var(--cx-size-1px) solid var(--cx-line);}
40
- .cx-cal-dowc{padding:var(--cx-size-6px) var(--cx-size-8px);font-size:var(--cx-size-12px);font-weight:700;color:var(--cx-text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
42
+ .cx-cal-dow{position:sticky;top:0;z-index:7;background:var(--hfx-color-surface-sunken,light-dark(#f7f8f9,#111317));border-bottom:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));}
43
+ .cx-cal-dowc{padding:var(--cx-size-6px) var(--cx-size-8px);font-size:var(--cx-size-12px);font-weight:700;color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
41
44
  .cx-cal-weeks{flex:1 1 auto;display:flex;flex-direction:column;}
42
- .cx-cal-week{flex:1 0 auto;position:relative;border-bottom:var(--cx-size-1px) solid var(--cx-line);}
43
- .cx-cal-day{min-width:0;padding:var(--cx-size-3px) var(--cx-size-4px);border-inline-end:var(--cx-size-1px) solid var(--cx-line);outline:none;}
45
+ .cx-cal-week{flex:1 0 auto;position:relative;border-bottom:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));}
46
+ .cx-cal-day{min-width:0;padding:var(--cx-size-3px) var(--cx-size-4px);border-inline-end:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));outline:none;}
44
47
  .cx-cal-day:last-child{border-inline-end:0;}
45
- .cx-cal-day.cx-cal-out{background:color-mix(in srgb,var(--cx-text) 2.5%,var(--cx-surface));}
46
- .cx-cal-out .cx-cal-num{color:var(--cx-muted);}
48
+ .cx-cal-day.cx-cal-out{background:color-mix(in srgb,var(--hfx-color-text,light-dark(#16181c,#f2f3f5)) 2.5%,var(--hfx-color-surface,light-dark(#ffffff,#16181c)));}
49
+ .cx-cal-out .cx-cal-num{color:var(--hfx-color-text-muted,light-dark(#626770,#8f949d));}
47
50
  .cx-cal-num{display:inline-grid;place-items:center;min-width:var(--cx-size-22px);height:var(--cx-size-22px);padding:0 var(--cx-size-5px);border-radius:var(--cx-size-11px);font-size:var(--cx-size-13px);font-weight:600;font-variant-numeric:tabular-nums;cursor:pointer;}
48
- .cx-cal-num:hover{background:var(--cx-hover-bg);}
49
- .cx-cal-today > .cx-cal-num,.cx-cal-today > .cx-cal-num:hover{background:var(--cx-accent);color:var(--cx-on-accent);}
50
- .cx-cal-day:focus-visible{outline:var(--cx-size-2px) solid var(--cx-accent);outline-offset:calc(-1 * var(--cx-size-2px));}
51
- .cx-cal-day[aria-selected="true"],.cx-cal-slot[aria-selected="true"],.cx-cal-allcell[aria-selected="true"]{background:var(--cx-selected-bg);}
52
- .cx-cal-day.cx-cal-bgday{background:color-mix(in srgb,var(--cx-bg-tone) 9%,var(--cx-surface));}
53
- .cx-cal-bglabel{float:inline-end;max-width:70%;margin-top:var(--cx-size-3px);font-size:var(--cx-size-11d5px);color:var(--cx-text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
51
+ .cx-cal-num:hover{background:var(--hfx-color-hover,light-dark(#f5f5f5,#232529));}
52
+ .cx-cal-today > .cx-cal-num,.cx-cal-today > .cx-cal-num:hover{background:var(--hfx-color-accent,light-dark(#11776f,#37c9b8));color:var(--hfx-color-accent-contrast,light-dark(#ffffff,#0c0d10));}
53
+ .cx-cal-day:focus-visible{outline:var(--hfx-focus-width,2px) solid var(--hfx-color-focus-ring,light-dark(#02726a,#37c9b8));outline-offset:calc(-1 * var(--cx-size-2px));}
54
+ .cx-cal-day[aria-selected="true"],.cx-cal-slot[aria-selected="true"],.cx-cal-allcell[aria-selected="true"]{background:var(--hfx-color-accent-subtle,light-dark(#e7f1f1,#1b3435));}
55
+ .cx-cal-day.cx-cal-bgday{background:color-mix(in srgb,var(--cx-bg-tone) 9%,var(--hfx-color-surface,light-dark(#ffffff,#16181c)));}
56
+ .cx-cal-bglabel{float:inline-end;max-width:70%;margin-top:var(--cx-size-3px);font-size:var(--cx-size-11d5px);color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
54
57
  .cx-cal-week > .cx-cal-day > :is(.cx-cal-ev,.cx-cal-more-btn){position:absolute;height:var(--cx-size-20px);top:calc(var(--cx-size-26px) + var(--l) * var(--cx-size-22px));inset-inline-start:calc(100% * var(--c) / var(--cx-cal-cols) + var(--cx-size-3px));}
55
58
  .cx-cal-week > .cx-cal-day > .cx-cal-ev{width:calc(100% * var(--s) / var(--cx-cal-cols) - var(--cx-size-6px));}
56
- .cx-cal-more-btn{width:calc(100% / var(--cx-cal-cols,1) - var(--cx-size-6px));padding:0 var(--cx-size-6px);border:0;border-radius:var(--cx-radius-sm);background:transparent;color:var(--cx-accent-text);font:inherit;font-size:var(--cx-size-12d5px);font-weight:600;text-align:start;cursor:pointer;white-space:nowrap;}
57
- .cx-cal-more-btn:hover{background:var(--cx-hover-bg);}
58
- .cx-cal-more-btn:focus-visible{outline:var(--cx-size-2px) solid var(--cx-accent);outline-offset:var(--cx-size-1px);}
59
+ .cx-cal-more-btn{width:calc(100% / var(--cx-cal-cols,1) - var(--cx-size-6px));padding:0 var(--cx-size-6px);border:0;border-radius:var(--hfx-radius-control,var(--hfx-radius-md,6px));background:transparent;color:var(--hfx-color-accent-text,light-dark(#02726a,#37c9b8));font:inherit;font-size:var(--cx-size-12d5px);font-weight:600;text-align:start;cursor:pointer;white-space:nowrap;}
60
+ .cx-cal-more-btn:hover{background:var(--hfx-color-hover,light-dark(#f5f5f5,#232529));}
61
+ .cx-cal-more-btn:focus-visible{outline:var(--hfx-focus-width,2px) solid var(--hfx-color-focus-ring,light-dark(#02726a,#37c9b8));outline-offset:var(--hfx-focus-offset,2px);}
59
62
  .cx-cal-dots{display:flex;justify-content:center;gap:var(--cx-size-3px);margin-top:var(--cx-size-2px);}
60
- .cx-cal-dots > i{width:var(--cx-size-6px);height:var(--cx-size-6px);border-radius:50%;background:var(--cx-ev,var(--cx-accent));}
61
- .cx-cal-daylist{padding:var(--cx-size-8px) var(--cx-size-12px) var(--cx-size-12px);border-top:var(--cx-size-1px) solid var(--cx-line);}
63
+ .cx-cal-dots > i{width:var(--cx-size-6px);height:var(--cx-size-6px);border-radius:50%;background:var(--cx-ev,var(--hfx-color-accent,light-dark(#11776f,#37c9b8)));}
64
+ .cx-cal-daylist{padding:var(--cx-size-8px) var(--cx-size-12px) var(--cx-size-12px);border-top:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));}
62
65
  .cx-cal-daylist-h{margin:var(--cx-size-4px) 0 var(--cx-size-6px);font-size:var(--cx-size-14px);font-weight:600;}
63
66
  .cx-cal-daylist > .cx-cal-ev{width:100%;min-height:var(--cx-size-44px);}
64
- .cx-cal-more{position:absolute;z-index:20;max-height:var(--cx-size-360px);overflow:auto;padding:var(--cx-size-8px);background:var(--cx-surface);border:var(--cx-size-1px) solid var(--cx-line);border-radius:var(--cx-radius);box-shadow:var(--cx-panel-shadow);}
67
+ .cx-cal-more{position:absolute;z-index:20;max-height:var(--cx-size-360px);overflow:auto;padding:var(--cx-size-8px);background:var(--hfx-color-surface,light-dark(#ffffff,#16181c));border:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));border-radius:var(--hfx-radius-overlay,var(--hfx-radius-lg,10px));box-shadow:var(--hfx-elevation-2,0 1px 2px rgba(22,24,28,.05),0 6px 18px -10px rgba(22,24,28,.18));}
65
68
  .cx-cal-more-top{display:flex;align-items:center;gap:var(--cx-size-8px);margin-bottom:var(--cx-size-6px);}
66
69
  .cx-cal-more-h{flex:1;margin:0;font-size:var(--cx-size-13d5px);font-weight:600;}
67
70
  .cx-cal-more-list{display:flex;flex-direction:column;gap:var(--cx-size-2px);}
@@ -71,29 +74,29 @@
71
74
  .cx-cal-more-list > .cx-cal-ev > :is(.cx-cal-ev-time,.cx-cal-ico){flex:none;white-space:nowrap;}
72
75
  .cx-cal-more{max-width:min(var(--cx-size-360px),calc(100vw - var(--cx-size-24px)));}
73
76
  .cx-cal-time{display:flex;flex-direction:column;height:100%;min-height:0;}
74
- .cx-cal-thead{flex:none;background:var(--cx-surface);border-bottom:var(--cx-size-1px) solid var(--cx-line);}
77
+ .cx-cal-thead{flex:none;background:var(--hfx-color-surface,light-dark(#ffffff,#16181c));border-bottom:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));}
75
78
  .cx-cal-trow,.cx-cal-srow{display:flex;min-width:0;}
76
79
  .cx-cal-trow > .cx-cal-corner,.cx-cal-trow > .cx-cal-stime,.cx-cal-srow > .cx-cal-stime{flex:0 0 var(--cx-cal-gutter);width:var(--cx-cal-gutter);}
77
- .cx-cal-dayhead{flex:1 1 0;min-width:0;display:flex;align-items:baseline;justify-content:center;gap:var(--cx-size-6px);padding:var(--cx-size-6px) var(--cx-size-4px);border-inline-start:var(--cx-size-1px) solid var(--cx-line);font-size:var(--cx-size-13px);color:var(--cx-text-2);cursor:pointer;white-space:nowrap;overflow:hidden;}
78
- .cx-cal-daynum{font-size:var(--cx-size-17px);font-weight:600;color:var(--cx-text);font-variant-numeric:tabular-nums;}
79
- .cx-cal-dayhead.cx-cal-today .cx-cal-daynum{display:inline-grid;place-items:center;min-width:var(--cx-size-28px);height:var(--cx-size-28px);border-radius:var(--cx-size-14px);background:var(--cx-accent);color:var(--cx-on-accent);}
80
- .cx-cal-rheads,.cx-cal-gheads{border-top:var(--cx-size-1px) solid var(--cx-line);}
81
- .cx-cal-ghead{flex:1 1 0;min-width:0;padding:var(--cx-size-4px) var(--cx-size-6px);border-inline-start:var(--cx-size-1px) solid var(--cx-line);font-size:var(--cx-size-12px);font-weight:700;color:var(--cx-text);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
82
- .cx-cal-rhead{flex:1 1 0;min-width:0;padding:var(--cx-size-4px) var(--cx-size-6px);border-inline-start:var(--cx-size-1px) solid var(--cx-line);font-size:var(--cx-size-12px);font-weight:600;color:var(--cx-text-2);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
83
- .cx-cal-allrow{position:relative;min-height:calc(var(--cx-cal-lanes,1) * var(--cx-size-22px) + var(--cx-size-8px));border-top:var(--cx-size-1px) solid var(--cx-line);}
84
- .cx-cal-alllabel{padding-block-start:var(--cx-size-6px);padding-inline-end:var(--cx-size-8px);font-size:var(--cx-size-11d5px);color:var(--cx-muted);text-align:end;}
85
- .cx-cal-allcell{flex:1 1 0;min-width:0;border-inline-start:var(--cx-size-1px) solid var(--cx-line);outline:none;}
86
- .cx-cal-allcell:focus-visible,.cx-cal-slot:focus-visible{outline:var(--cx-size-2px) solid var(--cx-accent);outline-offset:calc(-1 * var(--cx-size-2px));}
80
+ .cx-cal-dayhead{flex:1 1 0;min-width:0;display:flex;align-items:baseline;justify-content:center;gap:var(--cx-size-6px);padding:var(--cx-size-6px) var(--cx-size-4px);border-inline-start:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));font-size:var(--cx-size-13px);color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));cursor:pointer;white-space:nowrap;overflow:hidden;}
81
+ .cx-cal-daynum{font-size:var(--cx-size-17px);font-weight:600;color:var(--hfx-color-text,light-dark(#16181c,#f2f3f5));font-variant-numeric:tabular-nums;}
82
+ .cx-cal-dayhead.cx-cal-today .cx-cal-daynum{display:inline-grid;place-items:center;min-width:var(--cx-size-28px);height:var(--cx-size-28px);border-radius:var(--cx-size-14px);background:var(--hfx-color-accent,light-dark(#11776f,#37c9b8));color:var(--hfx-color-accent-contrast,light-dark(#ffffff,#0c0d10));}
83
+ .cx-cal-rheads,.cx-cal-gheads{border-top:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));}
84
+ .cx-cal-ghead{flex:1 1 0;min-width:0;padding:var(--cx-size-4px) var(--cx-size-6px);border-inline-start:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));font-size:var(--cx-size-12px);font-weight:700;color:var(--hfx-color-text,light-dark(#16181c,#f2f3f5));text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
85
+ .cx-cal-rhead{flex:1 1 0;min-width:0;padding:var(--cx-size-4px) var(--cx-size-6px);border-inline-start:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));font-size:var(--cx-size-12px);font-weight:600;color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
86
+ .cx-cal-allrow{position:relative;min-height:calc(var(--cx-cal-lanes,1) * var(--cx-size-22px) + var(--cx-size-8px));border-top:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));}
87
+ .cx-cal-alllabel{padding-block-start:var(--cx-size-6px);padding-inline-end:var(--cx-size-8px);font-size:var(--cx-size-11d5px);color:var(--hfx-color-text-muted,light-dark(#626770,#8f949d));text-align:end;}
88
+ .cx-cal-allcell{flex:1 1 0;min-width:0;border-inline-start:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));outline:none;}
89
+ .cx-cal-allcell:focus-visible,.cx-cal-slot:focus-visible{outline:var(--hfx-focus-width,2px) solid var(--hfx-color-focus-ring,light-dark(#02726a,#37c9b8));outline-offset:calc(-1 * var(--cx-size-2px));}
87
90
  .cx-cal-allrow > .cx-cal-allcell > :is(.cx-cal-ev,.cx-cal-more-btn){position:absolute;height:var(--cx-size-20px);top:calc(var(--cx-size-4px) + var(--l) * var(--cx-size-22px));inset-inline-start:calc(var(--cx-cal-gutter) + (100% - var(--cx-cal-gutter)) * var(--c) / var(--cx-cal-n) + var(--cx-size-2px));}
88
91
  .cx-cal-allrow > .cx-cal-allcell > .cx-cal-ev{width:calc((100% - var(--cx-cal-gutter)) * var(--s) / var(--cx-cal-n) - var(--cx-size-4px));}
89
92
  .cx-cal-allrow > .cx-cal-allcell > .cx-cal-more-btn{width:calc((100% - var(--cx-cal-gutter)) / var(--cx-cal-n) - var(--cx-size-4px));}
90
- .cx-cal-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;}
93
+ .cx-cal-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;max-height:var(--cx-cal-slots-height,none);}
91
94
  .cx-cal-slots{position:relative;}
92
95
  .cx-cal-srow{height:var(--cx-size-24px);}
93
- .cx-cal-stime{padding:0 var(--cx-size-8px);font-size:var(--cx-size-11d5px);line-height:1;color:var(--cx-muted);text-align:end;font-variant-numeric:tabular-nums;transform:translateY(calc(-1 * var(--cx-size-6px)));}
96
+ .cx-cal-stime{padding:0 var(--cx-size-8px);font-size:var(--cx-size-11d5px);line-height:1;color:var(--hfx-color-text-muted,light-dark(#626770,#8f949d));text-align:end;font-variant-numeric:tabular-nums;transform:translateY(calc(-1 * var(--cx-size-6px)));}
94
97
  .cx-cal-srow:first-child > .cx-cal-stime{transform:none;padding-top:var(--cx-size-2px);}
95
- .cx-cal-slot{flex:1 1 0;min-width:0;border-inline-start:var(--cx-size-1px) solid var(--cx-line);border-top:var(--cx-size-1px) solid color-mix(in srgb,var(--cx-line) 50%,transparent);outline:none;}
96
- .cx-cal-hour > .cx-cal-slot{border-top-color:var(--cx-line);}
98
+ .cx-cal-slot{flex:1 1 0;min-width:0;border-inline-start:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));border-top:var(--cx-size-1px) solid color-mix(in srgb,var(--hfx-color-border,light-dark(#e2e4e7,#272a30)) 50%,transparent);outline:none;}
99
+ .cx-cal-hour > .cx-cal-slot{border-top-color:var(--hfx-color-border,light-dark(#e2e4e7,#272a30));}
97
100
  .cx-cal-slots .cx-cal-ev-block{position:absolute;z-index:2;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:var(--cx-size-2px) var(--cx-size-6px);white-space:normal;line-height:var(--cx-size-16px);
98
101
  inset-inline-start:calc(var(--cx-cal-gutter) + (100% - var(--cx-cal-gutter)) * (var(--d) + var(--c) / var(--k)) / var(--cx-cal-n) + var(--cx-size-2px));width:calc((100% - var(--cx-cal-gutter)) * var(--sp) / var(--k) / var(--cx-cal-n) - var(--cx-size-4px));
99
102
  top:calc(var(--t) * var(--cx-cal-ppm) + var(--cx-size-1px));height:calc(var(--h) * var(--cx-cal-ppm) - var(--cx-size-2px));}
@@ -101,106 +104,109 @@ top:calc(var(--t) * var(--cx-cal-ppm) + var(--cx-size-1px));height:calc(var(--h)
101
104
  .cx-cal-ev-block > .cx-cal-ev-time{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:none;}
102
105
  .cx-cal-ev-block > :is(.cx-cal-ev-time,.cx-cal-ev-sub){font-size:var(--cx-size-12px);}
103
106
  .cx-cal-ev-block > .cx-cal-ico{position:absolute;inset-inline-end:var(--cx-size-4px);top:var(--cx-size-4px);}
107
+ .cx-cal-ev-block > .cx-cal-shared{position:absolute;inset-inline-end:var(--cx-size-4px);top:var(--cx-size-2px);font-size:var(--cx-size-10px);line-height:var(--cx-size-14px);}
108
+ .cx-cal-ev-block:has(> .cx-cal-shared) > .cx-cal-ev-time{padding-inline-end:var(--cx-size-56px);}
109
+ .cx-cal-ev-block:has(> .cx-cal-shared) > .cx-cal-ico{display:none;}
104
110
  .cx-cal-slots .cx-cal-ev-block.cx-cal-short{flex-direction:row;align-items:center;gap:var(--cx-size-4px);white-space:nowrap;}
105
111
  .cx-cal-slots .cx-cal-ev-block:is(.cx-cal-short,.cx-cal-marker) > .cx-cal-ev-title{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;}
106
112
  .cx-cal-slots .cx-cal-ev-block:is(.cx-cal-short,.cx-cal-marker) > .cx-cal-ev-time{flex:none;}
107
113
  .cx-cal-slots .cx-cal-ev-block.cx-cal-short > :is(.cx-cal-ev-sub,.cx-cal-ev-status){display:none;}
108
- .cx-cal-slots .cx-cal-ev-block.cx-cal-marker{height:var(--cx-size-20px);transform:translateY(calc(-1 * var(--cx-size-10px)));flex-direction:row;align-items:center;gap:var(--cx-size-4px);background:var(--cx-surface);box-shadow:inset 0 0 0 var(--cx-size-1px) var(--cx-ev);border-radius:var(--cx-size-10px);white-space:nowrap;}
114
+ .cx-cal-slots .cx-cal-ev-block.cx-cal-marker{height:var(--cx-size-20px);transform:translateY(calc(-1 * var(--cx-size-10px)));flex-direction:row;align-items:center;gap:var(--cx-size-4px);background:var(--hfx-color-surface,light-dark(#ffffff,#16181c));box-shadow:inset 0 0 0 var(--cx-size-1px) var(--cx-ev);border-radius:var(--hfx-radius-control,var(--hfx-radius-md,6px));white-space:nowrap;}
109
115
  .cx-cal-slots .cx-cal-ev-block.cx-cal-marker::before{content:"";flex:none;width:var(--cx-size-8px);height:var(--cx-size-8px);border-radius:50%;background:var(--cx-ev);}
110
116
  .cx-cal-slots .cx-cal-ev-block.cx-cal-marker > :is(.cx-cal-ev-sub,.cx-cal-ev-status){display:none;}
111
117
  .cx-cal-shade{position:absolute;z-index:1;pointer-events:none;overflow:hidden;inset-inline-start:calc(var(--cx-cal-gutter) + (100% - var(--cx-cal-gutter)) * var(--d) / var(--cx-cal-n));width:calc((100% - var(--cx-cal-gutter)) / var(--cx-cal-n));top:calc(var(--t) * var(--cx-cal-ppm));height:calc(var(--h) * var(--cx-cal-ppm));}
112
- .cx-cal-shade > span{display:block;padding:var(--cx-size-2px) var(--cx-size-6px);font-size:var(--cx-size-11d5px);color:var(--cx-text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
113
- .cx-cal-shade.cx-cal-off{background:color-mix(in srgb,var(--cx-text) 4%,transparent);}
114
- .cx-cal-shade.cx-cal-unavailable{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--cx-text) 8%,transparent) 0 var(--cx-size-6px),transparent var(--cx-size-6px) var(--cx-size-12px));}
118
+ .cx-cal-shade > span{display:block;padding:var(--cx-size-2px) var(--cx-size-6px);font-size:var(--cx-size-11d5px);color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
119
+ .cx-cal-shade.cx-cal-off{background:color-mix(in srgb,var(--hfx-color-text,light-dark(#16181c,#f2f3f5)) 4%,transparent);}
120
+ .cx-cal-shade.cx-cal-unavailable{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--hfx-color-text,light-dark(#16181c,#f2f3f5)) 8%,transparent) 0 var(--cx-size-6px),transparent var(--cx-size-6px) var(--cx-size-12px));}
115
121
  .cx-cal-shade.cx-cal-bgrange{background:color-mix(in srgb,var(--cx-bg-tone) 11%,transparent);box-shadow:inset var(--cx-size-2px) 0 0 color-mix(in srgb,var(--cx-bg-tone) 55%,transparent);}
116
122
  :where(.cx-cal-rtl) .cx-cal-shade.cx-cal-bgrange{box-shadow:inset calc(-1 * var(--cx-size-2px)) 0 0 color-mix(in srgb,var(--cx-bg-tone) 55%,transparent);}
117
- .cx-cal-now{position:absolute;z-index:1;height:var(--cx-size-2px);pointer-events:none;background:var(--cx-tone-danger);inset-inline-start:calc(var(--cx-cal-gutter) + (100% - var(--cx-cal-gutter)) * var(--d) / var(--cx-cal-n));width:calc((100% - var(--cx-cal-gutter)) * var(--sp) / var(--cx-cal-n));top:calc(var(--t) * var(--cx-cal-ppm) - var(--cx-size-1px));}
123
+ .cx-cal-now{position:absolute;z-index:1;height:var(--cx-size-2px);pointer-events:none;background:var(--hfx-color-status-bad-fg,light-dark(#b8292a,#f47171));inset-inline-start:calc(var(--cx-cal-gutter) + (100% - var(--cx-cal-gutter)) * var(--d) / var(--cx-cal-n));width:calc((100% - var(--cx-cal-gutter)) * var(--sp) / var(--cx-cal-n));top:calc(var(--t) * var(--cx-cal-ppm) - var(--cx-size-1px));}
118
124
  .cx-cal-now::before{content:"";position:absolute;inset-inline-start:calc(-1 * var(--cx-size-4px));top:calc(-1 * var(--cx-size-3px));width:var(--cx-size-8px);height:var(--cx-size-8px);border-radius:50%;background:inherit;}
119
- .cx-cal-agroup{border-bottom:var(--cx-size-1px) solid var(--cx-line);}
120
- .cx-cal-ahead{position:sticky;top:0;z-index:2;background:var(--cx-head-bg);}
125
+ .cx-cal-agroup{border-bottom:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));}
126
+ .cx-cal-ahead{position:sticky;top:0;z-index:2;background:var(--hfx-color-surface-sunken,light-dark(#f7f8f9,#111317));}
121
127
  .cx-cal-ahead-c{display:flex;align-items:baseline;gap:var(--cx-size-8px);padding:var(--cx-size-6px) var(--cx-size-12px);font-weight:600;}
122
- .cx-cal-aweekday{font-weight:400;color:var(--cx-text-2);}
123
- .cx-cal-atoday{margin-inline-start:auto;font-size:var(--cx-size-12px);font-weight:600;color:var(--cx-accent-text);}
128
+ .cx-cal-aweekday{font-weight:400;color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));}
129
+ .cx-cal-atoday{margin-inline-start:auto;font-size:var(--cx-size-12px);font-weight:600;color:var(--hfx-color-accent-text,light-dark(#02726a,#37c9b8));}
124
130
  .cx-cal-arow{display:grid;grid-template-columns:minmax(var(--cx-size-140px),var(--cx-size-180px)) minmax(0,1fr);align-items:center;gap:var(--cx-size-12px);padding:var(--cx-size-6px) var(--cx-size-12px);outline:none;cursor:pointer;}
125
- .cx-cal-arow:hover{background:var(--cx-hover-bg);}
126
- .cx-cal-arow:focus-visible{outline:var(--cx-size-2px) solid var(--cx-accent);outline-offset:calc(-1 * var(--cx-size-2px));}
127
- .cx-cal-atime{font-size:var(--cx-size-13px);color:var(--cx-text-2);font-variant-numeric:tabular-nums;}
131
+ .cx-cal-arow:hover{background:var(--hfx-color-hover,light-dark(#f5f5f5,#232529));}
132
+ .cx-cal-arow:focus-visible{outline:var(--hfx-focus-width,2px) solid var(--hfx-color-focus-ring,light-dark(#02726a,#37c9b8));outline-offset:calc(-1 * var(--cx-size-2px));}
133
+ .cx-cal-atime{font-size:var(--cx-size-13px);color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));font-variant-numeric:tabular-nums;}
128
134
  .cx-cal-atitle{min-width:0;}
129
135
  .cx-cal-ev.cx-cal-ev-item{flex-wrap:wrap;gap:var(--cx-size-2px) var(--cx-size-10px);padding:0;background:transparent;box-shadow:none;font-size:var(--cx-size-14px);line-height:1.35;white-space:normal;overflow:visible;}
130
136
  .cx-cal-ev-item > .cx-cal-ev-title{font-weight:600;overflow-wrap:anywhere;}
131
137
  .cx-cal-ev-item > .cx-cal-ico{margin-inline-start:0;}
132
138
  .cx-cal-ev-item > .cx-cal-ev-status.cx-cal-status-tone .p-dot{display:none;}
133
- .cx-cal-ev-item > .cx-cal-ev-status .p-state{padding:0 var(--cx-size-8px);border-radius:var(--cx-size-10px);background:var(--cx-ev-bg);color:var(--cx-text);font-size:var(--cx-size-12px);line-height:var(--cx-size-20px);}
139
+ .cx-cal-ev-item > .cx-cal-ev-status .p-state{padding:0 var(--cx-size-8px);border-radius:var(--hfx-radius-control,var(--hfx-radius-md,6px));background:var(--cx-ev-bg);color:var(--hfx-color-text,light-dark(#16181c,#f2f3f5));font-size:var(--cx-size-12px);line-height:var(--cx-size-20px);}
134
140
  .cx-cal-year{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--cx-size-210px),1fr));gap:var(--cx-size-16px) var(--cx-size-20px);padding:var(--cx-size-16px);}
135
141
  .cx-cal-ymonth-h{margin:0 0 var(--cx-size-6px);font-size:var(--cx-size-14px);font-weight:600;}
136
142
  .cx-cal-ygrid{display:flex;flex-direction:column;gap:var(--cx-size-2px);}
137
143
  .cx-cal-ydow,.cx-cal-yweek{display:grid;grid-template-columns:repeat(var(--cx-cal-cols),minmax(0,1fr));gap:var(--cx-size-2px);}
138
- .cx-cal-ydow > .cx-cal-dowc{padding:0;text-align:center;font-size:var(--cx-size-11px);color:var(--cx-muted);}
139
- .cx-cal-yday{height:var(--cx-size-26px);display:grid;place-items:center;border-radius:var(--cx-radius-sm);font-size:var(--cx-size-12px);font-variant-numeric:tabular-nums;cursor:pointer;outline:none;}
140
- .cx-cal-yday:hover{box-shadow:inset 0 0 0 var(--cx-size-1px) var(--cx-line-strong);}
141
- :is(.cx-cal-yday,.cx-cal-yswatch)[data-cx-heat="1"]{background:color-mix(in srgb,var(--cx-accent) 14%,var(--cx-surface));}
142
- :is(.cx-cal-yday,.cx-cal-yswatch)[data-cx-heat="2"]{background:color-mix(in srgb,var(--cx-accent) 30%,var(--cx-surface));}
143
- :is(.cx-cal-yday,.cx-cal-yswatch)[data-cx-heat="3"]{background:color-mix(in srgb,var(--cx-accent) 50%,var(--cx-surface));}
144
- :is(.cx-cal-yday,.cx-cal-yswatch)[data-cx-heat="4"]{background:var(--cx-accent);color:var(--cx-on-accent);}
144
+ .cx-cal-ydow > .cx-cal-dowc{padding:0;text-align:center;font-size:var(--cx-size-11px);color:var(--hfx-color-text-muted,light-dark(#626770,#8f949d));}
145
+ .cx-cal-yday{height:var(--cx-size-26px);display:grid;place-items:center;border-radius:var(--hfx-radius-sm,4px);font-size:var(--cx-size-12px);font-variant-numeric:tabular-nums;cursor:pointer;outline:none;}
146
+ .cx-cal-yday:hover{box-shadow:inset 0 0 0 var(--cx-size-1px) var(--hfx-color-border-strong,light-dark(#cdd0d5,#363a42));}
147
+ :is(.cx-cal-yday,.cx-cal-yswatch)[data-cx-heat="1"]{background:color-mix(in srgb,var(--hfx-color-accent,light-dark(#11776f,#37c9b8)) 14%,var(--hfx-color-surface,light-dark(#ffffff,#16181c)));}
148
+ :is(.cx-cal-yday,.cx-cal-yswatch)[data-cx-heat="2"]{background:color-mix(in srgb,var(--hfx-color-accent,light-dark(#11776f,#37c9b8)) 30%,var(--hfx-color-surface,light-dark(#ffffff,#16181c)));}
149
+ :is(.cx-cal-yday,.cx-cal-yswatch)[data-cx-heat="3"]{background:color-mix(in srgb,var(--hfx-color-accent,light-dark(#11776f,#37c9b8)) 50%,var(--hfx-color-surface,light-dark(#ffffff,#16181c)));}
150
+ :is(.cx-cal-yday,.cx-cal-yswatch)[data-cx-heat="4"]{background:var(--hfx-color-accent,light-dark(#11776f,#37c9b8));color:var(--hfx-color-accent-contrast,light-dark(#ffffff,#0c0d10));}
145
151
  .cx-cal-jumpbox{position:relative;display:inline-flex;}
146
152
  .cx-cal-bare > :is(.cx-toolbar,.cx-grid-query-summary,.cx-pager){display:none!important;}
147
153
  .cx-cal-no-search > .cx-toolbar .cx-search,.cx-cal-no-filters > .cx-toolbar .cx-grid-filters,.cx-cal-no-columns > .cx-toolbar .cx-grid-columns,
148
154
  .cx-cal-no-views > .cx-toolbar .cx-grid-views,.cx-cal-no-export > .cx-toolbar .cx-grid-export,.cx-cal-no-more > .cx-toolbar .cx-grid-overflow{display:none;}
149
- .cx-cal-pad{background:color-mix(in srgb,var(--cx-text) 2%,transparent);}
150
- .cx-cal-invalid{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--cx-text) 5%,transparent) 0 var(--cx-size-6px),transparent var(--cx-size-6px) var(--cx-size-12px));color:var(--cx-muted);}
151
- .cx-cal-wknum{float:inline-end;margin-inline-start:var(--cx-size-4px);font-size:var(--cx-size-11px);line-height:var(--cx-size-20px);color:var(--cx-muted);font-variant-numeric:tabular-nums;}
155
+ .cx-cal-pad{background:color-mix(in srgb,var(--hfx-color-text,light-dark(#16181c,#f2f3f5)) 2%,transparent);}
156
+ .cx-cal-invalid{background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--hfx-color-text,light-dark(#16181c,#f2f3f5)) 5%,transparent) 0 var(--cx-size-6px),transparent var(--cx-size-6px) var(--cx-size-12px));color:var(--hfx-color-text-muted,light-dark(#626770,#8f949d));}
157
+ .cx-cal-wknum{float:inline-end;margin-inline-start:var(--cx-size-4px);font-size:var(--cx-size-11px);line-height:var(--cx-size-20px);color:var(--hfx-color-text-muted,light-dark(#626770,#8f949d));font-variant-numeric:tabular-nums;}
152
158
  .cx-cal-lhead > .cx-cal-wknum{position:static;margin-inline-start:auto;}
153
159
  .cx-calendar:not([data-cx-calendar-view="mini"]) .cx-cal-day > .cx-cal-num:hover{text-decoration:underline;cursor:pointer;}
154
- .cx-cal-mini{width:min(100%,var(--cx-size-360px));height:auto;min-height:0;flex:none;margin:var(--cx-size-12px) auto;border:var(--cx-size-1px) solid var(--cx-line);border-radius:var(--cx-radius);overflow:hidden;}
160
+ .cx-cal-mini{width:min(100%,var(--cx-size-360px));height:auto;min-height:0;flex:none;margin:var(--cx-size-12px) auto;border:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));border-radius:var(--hfx-radius-control,var(--hfx-radius-md,6px));overflow:hidden;}
155
161
  .cx-cal-mini .cx-cal-week{min-height:var(--cx-size-34px)!important;flex:none;}
156
162
  .cx-cal-mini .cx-cal-day{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--cx-size-2px) 0;cursor:pointer;}
157
163
  .cx-cal-mini .cx-cal-num{font-size:var(--cx-size-12px);}
158
164
  .cx-cal-mini .cx-cal-wknum{display:none;}
159
165
  .cx-cal-mini .cx-cal-dots{margin-top:var(--cx-size-1px);}
160
166
  .cx-cal-mini .cx-cal-dots > i{width:var(--cx-size-4px);height:var(--cx-size-4px);}
161
- .cx-cal-mini .cx-cal-day[aria-selected="true"] > .cx-cal-num{display:inline-grid;place-items:center;min-width:var(--cx-size-22px);height:var(--cx-size-22px);border-radius:var(--cx-size-11px);background:var(--cx-accent);color:var(--cx-on-accent);}
167
+ .cx-cal-mini .cx-cal-day[aria-selected="true"] > .cx-cal-num{display:inline-grid;place-items:center;min-width:var(--cx-size-22px);height:var(--cx-size-22px);border-radius:var(--cx-size-11px);background:var(--hfx-color-accent,light-dark(#11776f,#37c9b8));color:var(--hfx-color-accent-contrast,light-dark(#ffffff,#0c0d10));}
162
168
  .cx-cal-mini .cx-cal-dowc{text-align:center;padding:var(--cx-size-4px) 0;font-size:var(--cx-size-11px);}
163
169
  .cx-cal-months{display:flex;flex-direction:column;gap:var(--cx-size-16px);padding:var(--cx-size-8px) 0 var(--cx-size-16px);}
164
- .cx-cal-mtitle{position:sticky;top:0;z-index:8;margin:0;padding:var(--cx-size-6px) var(--cx-size-12px);background:var(--cx-surface);font-size:var(--cx-size-14px);font-weight:600;}
170
+ .cx-cal-mtitle{position:sticky;top:0;z-index:8;margin:0;padding:var(--cx-size-6px) var(--cx-size-12px);background:var(--hfx-color-surface,light-dark(#ffffff,#16181c));font-size:var(--cx-size-14px);font-weight:600;}
165
171
  .cx-cal-months .cx-cal-month{min-height:0;}
166
172
  .cx-cal-months .cx-cal-dow{position:static;}
167
173
  .cx-cal-list{min-height:100%;}
168
174
  .cx-cal-lrow{display:grid;grid-template-columns:repeat(var(--cx-cal-cols),minmax(0,1fr));min-height:100%;}
169
- .cx-cal-lday{position:relative;display:flex;flex-direction:column;gap:var(--cx-size-6px);min-width:0;padding:var(--cx-size-8px);border-inline-start:var(--cx-size-1px) solid var(--cx-line);outline:none;}
175
+ .cx-cal-lday{position:relative;display:flex;flex-direction:column;gap:var(--cx-size-6px);min-width:0;padding:var(--cx-size-8px);border-inline-start:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));outline:none;}
170
176
  .cx-cal-lday:first-child{border-inline-start:0;}
171
- .cx-cal-lday:focus-visible{outline:var(--cx-size-2px) solid var(--cx-accent);outline-offset:calc(-1 * var(--cx-size-2px));}
172
- .cx-cal-lhead{display:flex;align-items:baseline;gap:var(--cx-size-6px);padding-bottom:var(--cx-size-6px);border-bottom:var(--cx-size-1px) solid var(--cx-line);font-size:var(--cx-size-13px);color:var(--cx-text-2);}
173
- .cx-cal-lhead > .cx-cal-num{font-size:var(--cx-size-17px);font-weight:600;color:var(--cx-text);}
174
- .cx-cal-lday.cx-cal-today .cx-cal-lhead > .cx-cal-num{color:var(--cx-accent-text);}
177
+ .cx-cal-lday:focus-visible{outline:var(--hfx-focus-width,2px) solid var(--hfx-color-focus-ring,light-dark(#02726a,#37c9b8));outline-offset:calc(-1 * var(--cx-size-2px));}
178
+ .cx-cal-lhead{display:flex;align-items:baseline;gap:var(--cx-size-6px);padding-bottom:var(--cx-size-6px);border-bottom:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));font-size:var(--cx-size-13px);color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));}
179
+ .cx-cal-lhead > .cx-cal-num{font-size:var(--cx-size-17px);font-weight:600;color:var(--hfx-color-text,light-dark(#16181c,#f2f3f5));}
180
+ .cx-cal-lday.cx-cal-today .cx-cal-lhead > .cx-cal-num{color:var(--hfx-color-accent-text,light-dark(#02726a,#37c9b8));}
175
181
  .cx-cal-lday > .cx-cal-ev-item{font-size:var(--cx-size-13px);}
176
182
  .cx-cal-list:not(.cx-cal-list-day) .cx-cal-lday > .cx-cal-ev-item > .cx-cal-ev-title{flex:1 0 100%;order:1;}
177
183
  .cx-cal-list:not(.cx-cal-list-day) .cx-cal-lday > .cx-cal-ev-item > .cx-cal-ev-time{flex:1 1 0;min-width:0;}
178
184
  .cx-cal-list:not(.cx-cal-list-day) .cx-cal-lday > .cx-cal-ev-item > :is(.cx-cal-ev-sub,.cx-cal-ev-status){order:2;}
179
- .cx-cal-lday > .cx-cal-empty{margin:0;color:var(--cx-muted);font-size:var(--cx-size-12px);}
185
+ .cx-cal-lday > .cx-cal-empty{margin:0;color:var(--hfx-color-text-muted,light-dark(#626770,#8f949d));font-size:var(--cx-size-12px);}
180
186
  .cx-cal-phone .cx-cal-lrow{grid-template-columns:minmax(0,1fr);}
181
- .cx-cal-phone .cx-cal-day.cx-cal-lday{align-items:stretch;justify-content:flex-start;min-height:0;padding:var(--cx-size-8px) var(--cx-size-12px);text-align:start;border-inline-start:0;border-top:var(--cx-size-1px) solid var(--cx-line);}
187
+ .cx-cal-phone .cx-cal-day.cx-cal-lday{align-items:stretch;justify-content:flex-start;min-height:0;padding:var(--cx-size-8px) var(--cx-size-12px);text-align:start;border-inline-start:0;border-top:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));}
182
188
  .cx-cal-ylist{display:flex;flex-direction:column;gap:var(--cx-size-2px);margin:var(--cx-size-8px) 0 0;padding:0;list-style:none;}
183
189
  .cx-cal-ylist > li{display:flex;align-items:center;gap:var(--cx-size-6px);min-width:0;}
184
- .cx-cal-yl-day{flex:none;min-width:var(--cx-size-18px);font-size:var(--cx-size-11d5px);color:var(--cx-muted);text-align:end;font-variant-numeric:tabular-nums;}
190
+ .cx-cal-yl-day{flex:none;min-width:var(--cx-size-18px);font-size:var(--cx-size-11d5px);color:var(--hfx-color-text-muted,light-dark(#626770,#8f949d));text-align:end;font-variant-numeric:tabular-nums;}
185
191
  .cx-cal-ylist .cx-cal-ev{flex:1;min-width:0;height:var(--cx-size-22px);font-size:var(--cx-size-12px);}
186
- .cx-cal-yl-morebtn{padding:0 var(--cx-size-6px);border:0;background:transparent;color:var(--cx-accent-text);font:inherit;font-size:var(--cx-size-12px);font-weight:600;cursor:pointer;}
187
- .cx-cal-yl-morebtn:focus-visible{outline:var(--cx-size-2px) solid var(--cx-accent);}
188
- :is(.cx-cal-details,.cx-cal-hover){position:absolute;z-index:21;display:flex;flex-direction:column;gap:var(--cx-size-4px);padding:var(--cx-size-10px) var(--cx-size-12px);background:var(--cx-surface);color:var(--cx-text);border:var(--cx-size-1px) solid var(--cx-line);border-radius:var(--cx-radius);box-shadow:var(--cx-panel-shadow);font-size:var(--cx-size-13px);line-height:1.4;}
192
+ .cx-cal-yl-morebtn{padding:0 var(--cx-size-6px);border:0;background:transparent;color:var(--hfx-color-accent-text,light-dark(#02726a,#37c9b8));font:inherit;font-size:var(--cx-size-12px);font-weight:600;cursor:pointer;}
193
+ .cx-cal-yl-morebtn:focus-visible{outline:var(--hfx-focus-width,2px) solid var(--hfx-color-focus-ring,light-dark(#02726a,#37c9b8));}
194
+ :is(.cx-cal-details,.cx-cal-hover){position:absolute;z-index:21;display:flex;flex-direction:column;gap:var(--cx-size-4px);padding:var(--cx-size-10px) var(--cx-size-12px);background:var(--hfx-color-surface-raised,light-dark(#ffffff,#1e2126));color:var(--hfx-color-text,light-dark(#16181c,#f2f3f5));border:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));border-radius:var(--hfx-radius-overlay,var(--hfx-radius-lg,10px));box-shadow:var(--hfx-elevation-2,0 1px 2px rgba(22,24,28,.05),0 6px 18px -10px rgba(22,24,28,.18));font-size:var(--cx-size-13px);line-height:1.4;}
189
195
  .cx-cal-hover{pointer-events:none;}
190
196
  .cx-cal-det-top{display:flex;align-items:flex-start;gap:var(--cx-size-8px);}
191
197
  .cx-cal-det-title{flex:1;min-width:0;margin:0;font-size:var(--cx-size-14px);font-weight:600;overflow-wrap:anywhere;}
192
198
  :is(.cx-cal-det-when,.cx-cal-det-facts,.cx-cal-det-desc){margin:0;overflow-wrap:anywhere;}
193
- .cx-cal-det-when,.cx-cal-det-facts{color:var(--cx-text-2);}
199
+ .cx-cal-det-when,.cx-cal-det-facts{color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));}
194
200
  .cx-cal-det-desc{white-space:pre-line;max-height:var(--cx-size-180px);overflow:auto;}
195
201
  .cx-cal-hover .cx-cal-det-desc{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;line-clamp:4;overflow:hidden;}
196
202
  .cx-cal-jump-behind{position:absolute;inset:0;width:100%;opacity:0;pointer-events:none;}
197
203
  .cx-cal-jumpbtn{cursor:pointer;font-variant-numeric:tabular-nums;}
198
- .cx-cal-ylegend{display:flex;align-items:center;justify-content:flex-end;gap:var(--cx-size-4px);padding:0 var(--cx-size-16px) var(--cx-size-16px);font-size:var(--cx-size-12px);color:var(--cx-text-2);}
199
- .cx-cal-yswatch{display:inline-block;width:var(--cx-size-14px);height:var(--cx-size-14px);border-radius:var(--cx-radius-sm);}
204
+ .cx-cal-ylegend{display:flex;align-items:center;justify-content:flex-end;gap:var(--cx-size-4px);padding:0 var(--cx-size-16px) var(--cx-size-16px);font-size:var(--cx-size-12px);color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));}
205
+ .cx-cal-yswatch{display:inline-block;width:var(--cx-size-14px);height:var(--cx-size-14px);border-radius:var(--hfx-radius-sm,4px);}
200
206
  .cx-cal-ylegend > span:first-child{margin-inline-end:var(--cx-size-4px);}
201
207
  .cx-cal-ylegend > span:last-child{margin-inline-start:var(--cx-size-4px);}
202
- .cx-cal-yday.cx-cal-today{box-shadow:inset 0 0 0 var(--cx-size-2px) var(--cx-accent);font-weight:700;}
203
- .cx-cal-yday:focus-visible{outline:var(--cx-size-2px) solid var(--cx-accent);outline-offset:var(--cx-size-1px);}
208
+ .cx-cal-yday.cx-cal-today{box-shadow:inset 0 0 0 var(--cx-size-2px) var(--hfx-color-accent,light-dark(#11776f,#37c9b8));font-weight:700;}
209
+ .cx-cal-yday:focus-visible{outline:var(--hfx-focus-width,2px) solid var(--hfx-color-focus-ring,light-dark(#02726a,#37c9b8));outline-offset:var(--hfx-focus-offset,2px);}
204
210
  .cx-cal-phone .cx-cal-bar{gap:var(--cx-size-6px);padding:var(--cx-size-6px) var(--cx-size-8px);}
205
211
  .cx-cal-phone .cx-cal-bar .cx-cal-views{display:none;}
206
212
  .cx-cal-phone .cx-cal-bar .cx-cal-view-select:not([hidden]){display:block;margin-inline-start:auto;}
@@ -208,19 +214,19 @@ top:calc(var(--t) * var(--cx-cal-ppm) + var(--cx-size-1px));height:calc(var(--h)
208
214
  .cx-cal-phone .cx-cal-title{order:3;flex-basis:100%;font-size:var(--cx-size-14px);}
209
215
  .cx-cal-phone .cx-cal-day{display:flex;flex-direction:column;align-items:center;padding:var(--cx-size-2px) 0;cursor:pointer;}
210
216
  .cx-cal-phone .cx-cal-month{min-height:0;}
211
- .cx-cal-rpick{display:flex;align-items:center;height:var(--cx-size-44px);padding:0 var(--cx-size-8px);border-bottom:var(--cx-size-1px) solid var(--cx-line);}
212
- .cx-cal-rpick-select{flex:1 1 auto;min-width:0;height:var(--cx-control-h);padding:0 var(--cx-size-8px);border:var(--cx-size-1px) solid var(--cx-control-border);border-radius:var(--cx-radius);background:var(--cx-surface);color:var(--cx-text);font:inherit;}
213
- .cx-cal-rpick-select:focus-visible{outline:var(--cx-size-2px) solid var(--cx-accent);outline-offset:var(--cx-size-2px);}
217
+ .cx-cal-rpick{display:flex;align-items:center;gap:var(--cx-size-8px);height:var(--cx-size-44px);padding:0 var(--cx-size-8px);border-bottom:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));}
218
+ .cx-cal-rpick-select{flex:1 1 auto;min-width:0;height:var(--hfx-control-height-md,calc(36px - var(--cx-compact,0) * 8px));padding:0 var(--cx-size-8px);border:var(--cx-size-1px) solid var(--hfx-color-border-control,light-dark(#8a8f98,#6e737c));border-radius:var(--hfx-radius-control,var(--hfx-radius-md,6px));background:var(--hfx-color-surface,light-dark(#ffffff,#16181c));color:var(--hfx-color-text,light-dark(#16181c,#f2f3f5));font:inherit;}
219
+ .cx-cal-rpick-select:focus-visible{outline:var(--hfx-focus-width,2px) solid var(--hfx-color-focus-ring,light-dark(#02726a,#37c9b8));outline-offset:var(--hfx-focus-offset,2px);}
214
220
  .cx-cal-rpick + .cx-cal-time{height:calc(100% - var(--cx-size-44px));}
215
221
  .cx-cal-phone .cx-cal-weeks,.cx-cal-phone .cx-cal-week{flex:none;}
216
- .cx-cal-phone .cx-cal-day[data-cx-listed] > .cx-cal-num{display:inline-grid;place-items:center;min-width:var(--cx-size-24px);height:var(--cx-size-24px);border-radius:var(--cx-size-12px);box-shadow:inset 0 0 0 var(--cx-size-2px) var(--cx-accent);}
222
+ .cx-cal-phone .cx-cal-day[data-cx-listed] > .cx-cal-num{display:inline-grid;place-items:center;min-width:var(--cx-size-24px);height:var(--cx-size-24px);border-radius:var(--hfx-radius-control,var(--hfx-radius-md,6px));box-shadow:inset 0 0 0 var(--cx-size-2px) var(--hfx-color-accent,light-dark(#11776f,#37c9b8));}
217
223
  .cx-cal-phone .cx-cal-dowc{text-align:center;padding:var(--cx-size-4px) 0;}
218
224
  .cx-cal-phone .cx-cal-arow{grid-template-columns:minmax(0,1fr);gap:var(--cx-size-2px);padding:var(--cx-size-8px) var(--cx-size-12px);}
219
225
  [data-cx-calendar-editable] .cx-cal-ev{touch-action:pan-x pan-y;}
220
226
  .cx-cal-ev.cx-cal-dragging{opacity:.45;}
221
227
  .cx-cal-drag,.cx-cal-ev.cx-cal-dragging,.cx-cal-ghost{cursor:grabbing;}
222
- .cx-cal-ghost{position:absolute;z-index:8;pointer-events:none;padding:var(--cx-size-2px) var(--cx-size-6px);border:var(--cx-size-2px) dashed var(--cx-accent);border-radius:var(--cx-radius-sm);background:color-mix(in srgb,var(--cx-accent) 12%,var(--cx-surface));color:var(--cx-text);font-size:var(--cx-size-12px);font-weight:600;line-height:var(--cx-size-16px);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
223
- .cx-cal-ghost.cx-cal-conflict{border-color:var(--cx-tone-danger);background:color-mix(in srgb,var(--cx-tone-danger) 12%,var(--cx-surface));color:var(--cx-tone-danger);}
228
+ .cx-cal-ghost{position:absolute;z-index:8;pointer-events:none;padding:var(--cx-size-2px) var(--cx-size-6px);border:var(--cx-size-2px) dashed var(--hfx-color-accent,light-dark(#11776f,#37c9b8));border-radius:var(--hfx-radius-sm,4px);background:color-mix(in srgb,var(--hfx-color-accent,light-dark(#11776f,#37c9b8)) 12%,var(--hfx-color-surface,light-dark(#ffffff,#16181c)));color:var(--hfx-color-text,light-dark(#16181c,#f2f3f5));font-size:var(--cx-size-12px);font-weight:600;line-height:var(--cx-size-16px);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
229
+ .cx-cal-ghost.cx-cal-conflict{border-color:var(--hfx-color-status-bad-fg,light-dark(#b8292a,#f47171));background:var(--hfx-color-status-bad-bg,light-dark(#f9e4e4,#3c272a));color:var(--hfx-color-status-bad-fg,light-dark(#b8292a,#f47171));}
224
230
  .cx-cal-slots > .cx-cal-ghost-block{inset-inline-start:calc(var(--cx-cal-gutter) + (100% - var(--cx-cal-gutter)) * var(--d) / var(--cx-cal-n) + var(--cx-size-2px));width:calc((100% - var(--cx-cal-gutter)) / var(--cx-cal-n) - var(--cx-size-4px));top:calc(var(--t) * var(--cx-cal-ppm));height:calc(var(--h) * var(--cx-cal-ppm));white-space:normal;}
225
231
  .cx-cal-week > .cx-cal-day > .cx-cal-ghost-bar{top:var(--cx-size-24px);height:var(--cx-size-22px);inset-inline-start:calc(100% * var(--c) / var(--cx-cal-cols) + var(--cx-size-2px));width:calc(100% * var(--s) / var(--cx-cal-cols) - var(--cx-size-4px));}
226
232
  .cx-cal-allrow > .cx-cal-allcell > .cx-cal-ghost-bar{top:var(--cx-size-2px);height:var(--cx-size-22px);inset-inline-start:calc(var(--cx-cal-gutter) + (100% - var(--cx-cal-gutter)) * var(--c) / var(--cx-cal-n) + var(--cx-size-2px));width:calc((100% - var(--cx-cal-gutter)) * var(--s) / var(--cx-cal-n) - var(--cx-size-4px));}
@@ -248,25 +254,27 @@ top:calc(var(--t) * var(--cx-cal-ppm) + var(--cx-size-1px));height:calc(var(--h)
248
254
  }
249
255
  .cx-cal-rtl .cx-cal-prev svg,.cx-cal-rtl .cx-cal-next svg{transform:scaleX(-1);}
250
256
  .cx-cal-bar :is(.cx-cal-prev,.cx-cal-next)[aria-disabled="true"]{opacity:.45;cursor:default;}
251
- :is(.cx-cal-create,.cx-cal-ask){position:absolute;z-index:22;display:flex;flex-direction:column;gap:var(--cx-size-6px);margin:0;padding:var(--cx-size-12px);background:var(--cx-surface);color:var(--cx-text);border:var(--cx-size-1px) solid var(--cx-line);border-radius:var(--cx-radius);box-shadow:var(--cx-panel-shadow);font-size:var(--cx-size-13px);line-height:1.4;}
257
+ :is(.cx-cal-create,.cx-cal-ask){position:absolute;z-index:22;display:flex;flex-direction:column;gap:var(--cx-size-6px);margin:0;padding:var(--cx-size-12px);background:var(--hfx-color-surface-raised,light-dark(#ffffff,#1e2126));color:var(--hfx-color-text,light-dark(#16181c,#f2f3f5));border:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));border-radius:var(--hfx-radius-overlay,var(--hfx-radius-lg,10px));box-shadow:var(--hfx-elevation-2,0 1px 2px rgba(22,24,28,.05),0 6px 18px -10px rgba(22,24,28,.18));font-size:var(--cx-size-13px);line-height:1.4;}
252
258
  .cx-cal-create-h{margin:0;font-size:var(--cx-size-14px);font-weight:600;}
253
- .cx-cal-create-l{margin-top:var(--cx-size-4px);font-weight:600;color:var(--cx-text-2);font-size:var(--cx-size-12px);}
254
- .cx-cal-create-input{min-height:var(--cx-size-34px);padding:0 var(--cx-size-8px);font:inherit;color:inherit;background:var(--cx-surface);border:var(--cx-size-1px) solid var(--cx-line);border-radius:var(--cx-radius);}
255
- .cx-cal-create .cx-btn.cx-cal-create-add{background:var(--cx-accent);border-color:var(--cx-accent);color:var(--cx-on-accent);}
256
- .cx-cal-create-input:focus-visible{outline:var(--cx-size-2px) solid var(--cx-accent);outline-offset:var(--cx-size-1px);}
259
+ .cx-cal-create-l{margin-top:var(--cx-size-4px);font-weight:600;color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));font-size:var(--cx-size-12px);}
260
+ .cx-cal-create-input{min-height:var(--cx-size-34px);padding:0 var(--cx-size-8px);font:inherit;color:inherit;background:var(--hfx-color-surface,light-dark(#ffffff,#16181c));border:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));border-radius:var(--hfx-radius-control,var(--hfx-radius-md,6px));}
261
+ .cx-cal-create .cx-btn.cx-cal-create-add{background:var(--hfx-color-accent,light-dark(#11776f,#37c9b8));border-color:var(--hfx-color-accent,light-dark(#11776f,#37c9b8));color:var(--hfx-color-accent-contrast,light-dark(#ffffff,#0c0d10));}
262
+ .cx-cal-create-input:focus-visible{outline:var(--hfx-focus-width,2px) solid var(--hfx-color-focus-ring,light-dark(#02726a,#37c9b8));outline-offset:var(--hfx-focus-offset,2px);}
263
+ .cx-cal-create .cx-cal-occurrence-remove{margin-inline-end:auto;color:var(--hfx-color-status-bad-fg,light-dark(#b8292a,#f47171));}
264
+ .cx-cal-occurrence-sheet{position:fixed;inset:auto 0 0;box-sizing:border-box;width:100%;--cx-cal-sheet-max-height:85dvh;max-height:var(--cx-cal-sheet-max-height);overflow:auto;border-radius:var(--hfx-radius-overlay,var(--hfx-radius-lg,10px)) var(--hfx-radius-overlay,var(--hfx-radius-lg,10px)) 0 0;padding:var(--cx-size-16px) var(--cx-size-16px) max(var(--cx-size-16px),env(safe-area-inset-bottom));--cx-cal-sheet-layer:30;z-index:var(--cx-cal-sheet-layer);}
257
265
  :is(.cx-cal-create-actions,.cx-cal-ask-actions){display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--cx-size-6px);margin-top:var(--cx-size-6px);}
258
266
  .cx-cal-ask-actions{flex-direction:column;align-items:stretch;}
259
267
  .cx-cal-ask-actions .cx-btn{justify-content:flex-start;}
260
- .cx-cal-menu{position:absolute;z-index:23;display:flex;flex-direction:column;min-width:var(--cx-size-180px);max-width:calc(100% - var(--cx-size-8px));padding:var(--cx-size-4px);background:var(--cx-surface);color:var(--cx-text);border:var(--cx-size-1px) solid var(--cx-line);border-radius:var(--cx-radius);box-shadow:var(--cx-panel-shadow);font-size:var(--cx-size-13px);}
261
- .cx-cal-menu-item{display:block;width:100%;min-height:var(--cx-size-34px);padding:0 var(--cx-size-10px);font:inherit;text-align:start;color:inherit;background:transparent;border:0;border-radius:calc(var(--cx-radius) - var(--cx-size-2px));cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
262
- .cx-cal-menu-item:is(:hover,:focus-visible){background:var(--cx-selected-bg);outline:none;}
263
- .cx-cal-menu-item:focus-visible{box-shadow:inset 0 0 0 var(--cx-size-2px) var(--cx-accent);}
264
- .cx-cal-menu-item[aria-disabled="true"]{color:var(--cx-muted);cursor:default;}
268
+ .cx-cal-menu{position:absolute;z-index:23;display:flex;flex-direction:column;min-width:var(--cx-size-180px);max-width:calc(100% - var(--cx-size-8px));padding:var(--cx-size-4px);background:var(--hfx-color-surface-raised,light-dark(#ffffff,#1e2126));color:var(--hfx-color-text,light-dark(#16181c,#f2f3f5));border:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));border-radius:var(--hfx-radius-overlay,var(--hfx-radius-lg,10px));box-shadow:var(--hfx-elevation-2,0 1px 2px rgba(22,24,28,.05),0 6px 18px -10px rgba(22,24,28,.18));font-size:var(--cx-size-13px);}
269
+ .cx-cal-menu-item{display:block;width:100%;min-height:var(--cx-size-34px);padding:0 var(--cx-size-10px);font:inherit;text-align:start;color:inherit;background:transparent;border:0;border-radius:calc(var(--hfx-radius-control,var(--hfx-radius-md,6px)) - var(--cx-size-2px));cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
270
+ .cx-cal-menu-item:is(:hover,:focus-visible){background:var(--hfx-color-accent-subtle,light-dark(#e7f1f1,#1b3435));outline:none;}
271
+ .cx-cal-menu-item:focus-visible{box-shadow:inset 0 0 0 var(--cx-size-2px) var(--hfx-color-accent,light-dark(#11776f,#37c9b8));}
272
+ .cx-cal-menu-item[aria-disabled="true"]{color:var(--hfx-color-text-muted,light-dark(#626770,#8f949d));cursor:default;}
265
273
  .cx-cal-legend{display:flex;flex-wrap:wrap;align-items:center;gap:var(--cx-size-6px);padding:0 var(--cx-size-12px) var(--cx-size-8px);}
266
- .cx-cal-src{display:inline-flex;align-items:center;gap:var(--cx-size-6px);min-height:var(--cx-size-28px);padding:0 var(--cx-size-10px);font:inherit;font-size:var(--cx-size-12px);color:var(--cx-text);background:var(--cx-surface);border:var(--cx-size-1px) solid var(--cx-line);border-radius:999px;cursor:pointer;}
267
- .cx-cal-src:focus-visible{outline:var(--cx-size-2px) solid var(--cx-accent);outline-offset:var(--cx-size-1px);}
268
- .cx-cal-src-swatch{width:var(--cx-size-10px);height:var(--cx-size-10px);border-radius:50%;background:var(--cx-ev,var(--cx-accent));border:var(--cx-size-2px) solid var(--cx-ev,var(--cx-accent));}
269
- .cx-cal-src[aria-pressed="false"]{color:var(--cx-text-2);}
274
+ .cx-cal-src{display:inline-flex;align-items:center;gap:var(--cx-size-6px);min-height:var(--cx-size-28px);padding:0 var(--cx-size-10px);font:inherit;font-size:var(--cx-size-12px);color:var(--hfx-color-text,light-dark(#16181c,#f2f3f5));background:var(--hfx-color-surface,light-dark(#ffffff,#16181c));border:var(--cx-size-1px) solid var(--hfx-color-border,light-dark(#e2e4e7,#272a30));border-radius:var(--hfx-radius-status,999px);cursor:pointer;}
275
+ .cx-cal-src:focus-visible{outline:var(--hfx-focus-width,2px) solid var(--hfx-color-focus-ring,light-dark(#02726a,#37c9b8));outline-offset:var(--hfx-focus-offset,2px);}
276
+ .cx-cal-src-swatch{width:var(--cx-size-10px);height:var(--cx-size-10px);border-radius:50%;background:var(--cx-ev,var(--hfx-color-accent,light-dark(#11776f,#37c9b8)));border:var(--cx-size-2px) solid var(--cx-ev,var(--hfx-color-accent,light-dark(#11776f,#37c9b8)));}
277
+ .cx-cal-src[aria-pressed="false"]{color:var(--hfx-color-text-secondary,light-dark(#4d525b,#b0b4bc));}
270
278
  .cx-cal-src[aria-pressed="false"] span{text-decoration:line-through;}
271
279
  .cx-cal-src[aria-pressed="false"] .cx-cal-src-swatch{background:transparent;}
272
280
  @media (any-pointer:coarse){.cx-cal-src{min-height:var(--cx-size-44px);}.cx-cal-menu-item{min-height:var(--cx-size-44px);}}