iron-cms 0.16.2 → 0.17.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.
@@ -49,6 +49,7 @@
49
49
  --color-sky-400: oklch(74.6% 0.16 232.661);
50
50
  --color-sky-500: oklch(68.5% 0.169 237.323);
51
51
  --color-sky-600: oklch(58.8% 0.158 241.966);
52
+ --color-sky-700: oklch(50% 0.134 242.749);
52
53
  --color-sky-800: oklch(44.3% 0.11 240.79);
53
54
  --color-sky-900: oklch(39.1% 0.09 240.876);
54
55
  --color-blue-400: oklch(70.7% 0.165 254.624);
@@ -3407,9 +3408,6 @@
3407
3408
  color: color-mix(in oklab, var(--color-white) 70%, transparent);
3408
3409
  }
3409
3410
  }
3410
- .capitalize {
3411
- text-transform: capitalize;
3412
- }
3413
3411
  .lowercase {
3414
3412
  text-transform: lowercase;
3415
3413
  }
@@ -3419,9 +3417,6 @@
3419
3417
  .italic {
3420
3418
  font-style: italic;
3421
3419
  }
3422
- .line-through {
3423
- text-decoration-line: line-through;
3424
- }
3425
3420
  .underline {
3426
3421
  text-decoration-line: underline;
3427
3422
  }
@@ -3438,10 +3433,6 @@
3438
3433
  .opacity-50 {
3439
3434
  opacity: 50%;
3440
3435
  }
3441
- .shadow {
3442
- --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
3443
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
3444
- }
3445
3436
  .shadow-lg {
3446
3437
  --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
3447
3438
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
@@ -7235,9 +7226,10 @@ dialog.modal {
7235
7226
  }
7236
7227
  @layer components {
7237
7228
  lexxy-editor {
7229
+ position: relative;
7238
7230
  display: block;
7239
7231
  width: 100%;
7240
- border-radius: var(--radius-md);
7232
+ border-radius: var(--radius-xl);
7241
7233
  background-color: var(--color-white);
7242
7234
  @media (prefers-color-scheme: dark) {
7243
7235
  background-color: color-mix(in srgb, #fff 5%, transparent);
@@ -7295,8 +7287,8 @@ dialog.modal {
7295
7287
  background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
7296
7288
  }
7297
7289
  }
7298
- border-top-left-radius: var(--radius-md);
7299
- border-top-right-radius: var(--radius-md);
7290
+ border-top-left-radius: var(--radius-xl);
7291
+ border-top-right-radius: var(--radius-xl);
7300
7292
  }
7301
7293
  lexxy-toolbar [data-toolbar-group] {
7302
7294
  display: flex;
@@ -7377,7 +7369,7 @@ dialog.modal {
7377
7369
  color: inherit;
7378
7370
  fill: currentColor;
7379
7371
  }
7380
- lexxy-editor [contenteditable] {
7372
+ lexxy-editor [contenteditable="true"] {
7381
7373
  display: block;
7382
7374
  min-height: calc(var(--spacing) * 48);
7383
7375
  width: 100%;
@@ -7395,7 +7387,7 @@ dialog.modal {
7395
7387
  line-height: calc(var(--spacing) * 6);
7396
7388
  }
7397
7389
  }
7398
- lexxy-editor [contenteditable]:empty::before {
7390
+ lexxy-editor [contenteditable="true"]:empty::before {
7399
7391
  content: attr(data-placeholder);
7400
7392
  color: var(--color-stone-400);
7401
7393
  @media (prefers-color-scheme: dark) {
@@ -7450,7 +7442,7 @@ dialog.modal {
7450
7442
  max-width: 40ch;
7451
7443
  border-start-start-radius: 0;
7452
7444
  }
7453
- .lexxy-editor__toolbar-dropdown:is([open]) .lexxy-editor__toolbar-button {
7445
+ .lexxy-editor__toolbar-dropdown:is([open]) > summary.lexxy-editor__toolbar-button {
7454
7446
  background-color: var(--color-sky-100);
7455
7447
  @media (prefers-color-scheme: dark) {
7456
7448
  background-color: color-mix(in srgb, oklch(68.5% 0.169 237.323) 20%, transparent);
@@ -7461,7 +7453,7 @@ dialog.modal {
7461
7453
  border-end-end-radius: 0;
7462
7454
  border-end-start-radius: 0;
7463
7455
  }
7464
- .lexxy-editor__toolbar-dropdown:is([open]) .lexxy-editor__toolbar-button:hover {
7456
+ .lexxy-editor__toolbar-dropdown:is([open]) > summary.lexxy-editor__toolbar-button:hover {
7465
7457
  background-color: var(--color-sky-100);
7466
7458
  @media (prefers-color-scheme: dark) {
7467
7459
  background-color: color-mix(in srgb, oklch(68.5% 0.169 237.323) 20%, transparent);
@@ -7478,22 +7470,115 @@ dialog.modal {
7478
7470
  inset-inline-start: var(--dropdown-padding);
7479
7471
  inset-inline-end: var(--dropdown-padding);
7480
7472
  }
7481
- lexxy-link-dropdown {
7482
- flex: 1;
7483
- }
7484
- lexxy-link-dropdown > * {
7485
- flex: 1;
7473
+ .lexxy-editor__toolbar-dropdown-list {
7474
+ position: absolute;
7475
+ z-index: 10;
7476
+ display: flex;
7477
+ flex-direction: column;
7478
+ padding: calc(var(--spacing) * 1);
7479
+ background-color: var(--color-white);
7480
+ @media (prefers-color-scheme: dark) {
7481
+ background-color: var(--color-stone-800);
7482
+ }
7483
+ border-style: var(--tw-border-style);
7484
+ border-width: 2px;
7485
+ border-color: var(--color-sky-200);
7486
+ @media (prefers-color-scheme: dark) {
7487
+ border-color: color-mix(in srgb, oklch(68.5% 0.169 237.323) 30%, transparent);
7488
+ @supports (color: color-mix(in lab, red, red)) {
7489
+ border-color: color-mix(in oklab, var(--color-sky-500) 30%, transparent);
7490
+ }
7491
+ }
7492
+ border-radius: var(--radius-md);
7493
+ border-start-start-radius: 0;
7494
+ color: var(--color-stone-900);
7495
+ @media (prefers-color-scheme: dark) {
7496
+ color: var(--color-white);
7497
+ }
7498
+ inset-inline-start: calc(var(--spacing) * 0);
7499
+ top: calc(var(--spacing) * 8);
7500
+ min-width: 12rem;
7486
7501
  }
7487
- lexxy-link-dropdown .lexxy-editor__toolbar-dropdown-actions {
7488
- margin-top: calc(var(--spacing) * 2);
7502
+ .lexxy-editor__toolbar-dropdown-list button {
7503
+ height: auto;
7504
+ width: auto;
7505
+ justify-content: flex-start;
7489
7506
  display: flex;
7490
- flex: 1;
7507
+ align-items: center;
7491
7508
  gap: calc(var(--spacing) * 2);
7509
+ border-radius: 0.25rem;
7510
+ padding-inline: calc(var(--spacing) * 2);
7511
+ padding-block: calc(var(--spacing) * 1.5);
7492
7512
  font-size: var(--text-sm);
7493
7513
  line-height: var(--tw-leading, var(--text-sm--line-height));
7514
+ color: var(--color-stone-700);
7515
+ @media (prefers-color-scheme: dark) {
7516
+ color: var(--color-stone-200);
7517
+ }
7518
+ text-align: start;
7519
+ white-space: nowrap;
7520
+ &:hover {
7521
+ @media (hover: hover) {
7522
+ background-color: var(--color-stone-100);
7523
+ }
7524
+ }
7525
+ @media (prefers-color-scheme: dark) {
7526
+ &:hover {
7527
+ @media (hover: hover) {
7528
+ background-color: color-mix(in srgb, #fff 10%, transparent);
7529
+ @supports (color: color-mix(in lab, red, red)) {
7530
+ background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
7531
+ }
7532
+ }
7533
+ }
7534
+ }
7494
7535
  }
7495
- lexxy-link-dropdown input[type="url"] {
7536
+ .lexxy-editor__toolbar-dropdown-list button[aria-pressed="true"] {
7537
+ background-color: var(--color-sky-100);
7538
+ color: var(--color-sky-900);
7539
+ @media (prefers-color-scheme: dark) {
7540
+ background-color: color-mix(in srgb, oklch(68.5% 0.169 237.323) 20%, transparent);
7541
+ @supports (color: color-mix(in lab, red, red)) {
7542
+ background-color: color-mix(in oklab, var(--color-sky-500) 20%, transparent);
7543
+ }
7544
+ }
7545
+ @media (prefers-color-scheme: dark) {
7546
+ color: var(--color-sky-100);
7547
+ }
7548
+ }
7549
+ .lexxy-editor__toolbar-dropdown-list button svg {
7550
+ width: calc(var(--spacing) * 4);
7551
+ height: calc(var(--spacing) * 4);
7552
+ flex: none;
7553
+ fill: currentColor;
7554
+ }
7555
+ .lexxy-editor__toolbar-dropdown-list .lexxy-editor__toolbar-separator {
7556
+ margin-block: calc(var(--spacing) * 1);
7557
+ height: 1px;
7496
7558
  width: 100%;
7559
+ background-color: var(--color-stone-200);
7560
+ @media (prefers-color-scheme: dark) {
7561
+ background-color: color-mix(in srgb, #fff 10%, transparent);
7562
+ @supports (color: color-mix(in lab, red, red)) {
7563
+ background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
7564
+ }
7565
+ }
7566
+ }
7567
+ lexxy-link-dropdown {
7568
+ min-width: 22rem;
7569
+ gap: calc(var(--spacing) * 2);
7570
+ }
7571
+ [overflowing] lexxy-link-dropdown {
7572
+ min-width: calc(var(--spacing) * 0);
7573
+ flex-direction: column;
7574
+ }
7575
+ [overflowing] lexxy-link-dropdown .lexxy-editor__toolbar-dropdown-actions {
7576
+ margin-top: calc(var(--spacing) * 2);
7577
+ }
7578
+ lexxy-link-dropdown input[type="url"] {
7579
+ min-width: calc(var(--spacing) * 0);
7580
+ flex: 1;
7581
+ height: calc(var(--spacing) * 8);
7497
7582
  border-radius: var(--radius-md);
7498
7583
  padding-inline: calc(var(--spacing) * 2);
7499
7584
  border-style: var(--tw-border-style);
@@ -7509,6 +7594,10 @@ dialog.modal {
7509
7594
  @media (prefers-color-scheme: dark) {
7510
7595
  background-color: var(--color-stone-900);
7511
7596
  }
7597
+ font-size: var(--text-sm);
7598
+ line-height: var(--tw-leading, var(--text-sm--line-height));
7599
+ --tw-leading: 1;
7600
+ line-height: 1;
7512
7601
  color: var(--color-stone-900);
7513
7602
  @media (prefers-color-scheme: dark) {
7514
7603
  color: var(--color-white);
@@ -7521,10 +7610,18 @@ dialog.modal {
7521
7610
  color: var(--color-stone-500);
7522
7611
  }
7523
7612
  }
7613
+ --tw-outline-style: none;
7614
+ outline-style: none;
7615
+ &:focus-visible {
7616
+ border-color: transparent;
7617
+ }
7524
7618
  &:focus-visible {
7525
7619
  outline-style: var(--tw-outline-style);
7526
7620
  outline-width: 2px;
7527
7621
  }
7622
+ &:focus-visible {
7623
+ outline-offset: 1px;
7624
+ }
7528
7625
  &:focus-visible {
7529
7626
  outline-color: var(--color-sky-600);
7530
7627
  }
@@ -7533,17 +7630,140 @@ dialog.modal {
7533
7630
  outline-color: var(--color-sky-500);
7534
7631
  }
7535
7632
  }
7536
- box-sizing: border-box;
7537
- min-width: 40ch;
7538
- --tw-leading: calc(var(--spacing) * 6);
7539
- line-height: calc(var(--spacing) * 6);
7540
7633
  }
7541
- [overflowing] lexxy-link-dropdown input[type="url"] {
7542
- min-width: calc(var(--spacing) * 0);
7634
+ lexxy-link-dropdown .lexxy-editor__toolbar-dropdown-actions {
7635
+ display: flex;
7636
+ flex: none;
7637
+ align-items: center;
7638
+ gap: calc(var(--spacing) * 2);
7543
7639
  }
7544
7640
  lexxy-link-dropdown .lexxy-editor__toolbar-dropdown-actions button {
7545
- width: 100%;
7641
+ height: calc(var(--spacing) * 8);
7642
+ width: auto;
7643
+ padding-inline: calc(var(--spacing) * 3);
7644
+ font-size: var(--text-sm);
7645
+ line-height: var(--tw-leading, var(--text-sm--line-height));
7646
+ --tw-leading: 1;
7647
+ line-height: 1;
7648
+ --tw-font-weight: var(--font-weight-medium);
7649
+ font-weight: var(--font-weight-medium);
7650
+ border-radius: var(--radius-md);
7651
+ }
7652
+ lexxy-link-dropdown .lexxy-editor__toolbar-dropdown-actions button[value="link"] {
7653
+ background-color: var(--color-sky-600);
7654
+ color: var(--color-white);
7655
+ &:hover {
7656
+ @media (hover: hover) {
7657
+ background-color: var(--color-sky-700);
7658
+ }
7659
+ }
7660
+ }
7661
+ lexxy-link-dropdown .lexxy-editor__toolbar-dropdown-actions button[value="unlink"] {
7662
+ background-color: var(--color-white);
7663
+ @media (prefers-color-scheme: dark) {
7664
+ background-color: color-mix(in srgb, #fff 10%, transparent);
7665
+ @supports (color: color-mix(in lab, red, red)) {
7666
+ background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
7667
+ }
7668
+ }
7669
+ color: var(--color-stone-700);
7670
+ @media (prefers-color-scheme: dark) {
7671
+ color: var(--color-stone-200);
7672
+ }
7673
+ --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
7674
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
7675
+ --tw-ring-color: var(--color-stone-300);
7676
+ --tw-ring-inset: inset;
7677
+ @media (prefers-color-scheme: dark) {
7678
+ --tw-ring-color: color-mix(in srgb, #fff 15%, transparent);
7679
+ @supports (color: color-mix(in lab, red, red)) {
7680
+ --tw-ring-color: color-mix(in oklab, var(--color-white) 15%, transparent);
7681
+ }
7682
+ }
7683
+ &:hover {
7684
+ @media (hover: hover) {
7685
+ background-color: var(--color-stone-50);
7686
+ }
7687
+ }
7688
+ @media (prefers-color-scheme: dark) {
7689
+ &:hover {
7690
+ @media (hover: hover) {
7691
+ background-color: color-mix(in srgb, #fff 15%, transparent);
7692
+ @supports (color: color-mix(in lab, red, red)) {
7693
+ background-color: color-mix(in oklab, var(--color-white) 15%, transparent);
7694
+ }
7695
+ }
7696
+ }
7697
+ }
7698
+ }
7699
+ lexxy-highlight-dropdown {
7700
+ --button-size: calc(var(--spacing) * 8);
7701
+ display: flex;
7702
+ flex-direction: column;
7703
+ gap: calc(var(--spacing) * 2);
7704
+ }
7705
+ lexxy-highlight-dropdown .lexxy-highlight-colors {
7706
+ display: grid;
7707
+ grid-template-columns: repeat(var(--max-colors, 9), var(--button-size));
7708
+ grid-template-rows: repeat(2, var(--button-size));
7709
+ grid-auto-flow: column;
7710
+ gap: calc(var(--spacing) * 1);
7711
+ }
7712
+ lexxy-highlight-dropdown .lexxy-highlight-button {
7713
+ position: relative;
7714
+ aspect-ratio: 1 / 1;
7715
+ width: calc(var(--spacing) * 8);
7716
+ height: calc(var(--spacing) * 8);
7717
+ border-radius: var(--radius-md);
7718
+ padding: calc(var(--spacing) * 0);
7719
+ --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
7720
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
7721
+ --tw-ring-color: var(--color-stone-300);
7722
+ --tw-ring-inset: inset;
7723
+ @media (prefers-color-scheme: dark) {
7724
+ --tw-ring-color: color-mix(in srgb, #fff 15%, transparent);
7725
+ @supports (color: color-mix(in lab, red, red)) {
7726
+ --tw-ring-color: color-mix(in oklab, var(--color-white) 15%, transparent);
7727
+ }
7728
+ }
7729
+ &:hover {
7730
+ @media (hover: hover) {
7731
+ opacity: 80%;
7732
+ }
7733
+ }
7734
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
7735
+ }
7736
+ lexxy-highlight-dropdown .lexxy-highlight-button::after {
7737
+ content: "Aa";
7738
+ position: absolute;
7739
+ inset: calc(var(--spacing) * 0);
7740
+ display: flex;
7741
+ align-items: center;
7546
7742
  justify-content: center;
7743
+ font-size: var(--text-sm);
7744
+ line-height: var(--tw-leading, var(--text-sm--line-height));
7745
+ --tw-leading: 1;
7746
+ line-height: 1;
7747
+ --tw-font-weight: var(--font-weight-semibold);
7748
+ font-weight: var(--font-weight-semibold);
7749
+ }
7750
+ lexxy-highlight-dropdown .lexxy-highlight-button[data-style="background-color"]::after {
7751
+ color: var(--color-stone-900);
7752
+ @media (prefers-color-scheme: dark) {
7753
+ color: var(--color-white);
7754
+ }
7755
+ }
7756
+ lexxy-highlight-dropdown .lexxy-highlight-button[aria-pressed="true"] {
7757
+ background-color: transparent;
7758
+ box-shadow: inset 0 0 0 2px currentColor;
7759
+ }
7760
+ lexxy-highlight-dropdown .lexxy-highlight-button[aria-pressed="true"]::after {
7761
+ content: "✓";
7762
+ }
7763
+ lexxy-highlight-dropdown .lexxy-editor__toolbar-dropdown-reset {
7764
+ margin-top: calc(var(--spacing) * 2);
7765
+ width: 100%;
7766
+ white-space: nowrap;
7547
7767
  @layer components {
7548
7768
  @layer components {
7549
7769
  --tw-font-weight: var(--font-weight-semibold);
@@ -7694,363 +7914,467 @@ dialog.modal {
7694
7914
  }
7695
7915
  }
7696
7916
  }
7697
- lexxy-highlight-dropdown {
7698
- display: flex;
7699
- flex-direction: column;
7700
- }
7701
- lexxy-highlight-dropdown [data-button-group] {
7702
- display: flex;
7703
- flex-direction: row;
7704
- gap: var(--dropdown-gap);
7705
- justify-content: flex-start;
7917
+ lexxy-highlight-dropdown .lexxy-editor__toolbar-dropdown-reset[disabled] {
7918
+ display: none;
7706
7919
  }
7707
- lexxy-highlight-dropdown [data-button-group] button {
7708
- --button-size: calc(var(--spacing) * 8);
7709
- aspect-ratio: 1 / 1;
7710
- width: var(--button-size);
7711
- max-width: var(--button-size);
7712
- min-width: var(--button-size);
7920
+ [overflowing] lexxy-highlight-dropdown {
7921
+ width: fit-content;
7713
7922
  }
7714
- lexxy-highlight-dropdown [data-button-group] button::after {
7715
- content: "Aa";
7923
+ lexxy-editor .attachment__progress {
7716
7924
  position: absolute;
7717
- inset: calc(var(--spacing) * 0);
7718
- align-self: center;
7719
- display: inline-block;
7720
- font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
7925
+ z-index: 10;
7926
+ top: calc(1/2 * 100%);
7927
+ left: 5%;
7928
+ height: calc(var(--spacing) * 1);
7929
+ width: 90%;
7930
+ --tw-translate-y: calc(calc(1/2 * 100%) * -1);
7931
+ translate: var(--tw-translate-x) var(--tw-translate-y);
7932
+ overflow: hidden;
7933
+ border-radius: calc(infinity * 1px);
7934
+ background-color: var(--color-stone-200);
7935
+ @media (prefers-color-scheme: dark) {
7936
+ background-color: var(--color-stone-700);
7937
+ }
7721
7938
  }
7722
- lexxy-highlight-dropdown button {
7723
- --button-size: calc(var(--spacing) * 8);
7724
- position: relative;
7725
- flex: 1;
7726
- color: var(--color-stone-900);
7939
+ lexxy-editor .attachment__progress::-webkit-progress-bar {
7940
+ background-color: var(--color-stone-200);
7727
7941
  @media (prefers-color-scheme: dark) {
7728
- color: var(--color-white);
7942
+ background-color: var(--color-stone-700);
7729
7943
  }
7730
- min-height: var(--button-size);
7731
7944
  }
7732
- lexxy-highlight-dropdown button:hover {
7733
- opacity: 80%;
7945
+ lexxy-editor .attachment__progress::-webkit-progress-value {
7946
+ background-color: var(--color-sky-600);
7947
+ transition-property: all;
7948
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
7949
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
7950
+ --tw-duration: 200ms;
7951
+ transition-duration: 200ms;
7734
7952
  }
7735
- lexxy-highlight-dropdown button[aria-pressed="true"] {
7736
- --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
7737
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
7738
- --tw-ring-color: currentcolor;
7739
- --tw-ring-inset: inset;
7953
+ lexxy-editor .attachment__progress::-moz-progress-bar {
7954
+ background-color: var(--color-sky-600);
7740
7955
  }
7741
- lexxy-highlight-dropdown button[aria-pressed="true"]::after {
7742
- content: "✓";
7956
+ lexxy-editor .attachment__progress[value="100"] {
7957
+ opacity: 0%;
7958
+ transition-property: opacity;
7959
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
7960
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
7961
+ --tw-duration: 200ms;
7962
+ transition-duration: 200ms;
7743
7963
  }
7744
- lexxy-highlight-dropdown .lexxy-editor__toolbar-dropdown-reset {
7745
- margin-top: calc(var(--spacing) * 2);
7964
+ lexxy-editor .attachment {
7965
+ position: relative;
7966
+ display: inline-block;
7967
+ max-width: 100%;
7968
+ }
7969
+ lexxy-editor .attachment--preview {
7746
7970
  width: 100%;
7747
- @layer components {
7748
- @layer components {
7749
- --tw-font-weight: var(--font-weight-semibold);
7750
- font-weight: var(--font-weight-semibold);
7751
- --tw-outline-style: none;
7752
- outline-style: none;
7753
- transition-property: all;
7754
- transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
7755
- transition-duration: var(--tw-duration, var(--default-transition-duration));
7756
- --tw-duration: 100ms;
7757
- transition-duration: 100ms;
7758
- &:focus-visible {
7759
- outline-style: var(--tw-outline-style);
7760
- outline-width: 2px;
7761
- }
7762
- &:focus-visible {
7763
- outline-offset: 2px;
7764
- }
7765
- &:disabled {
7766
- pointer-events: none;
7767
- }
7768
- &:disabled {
7769
- --tw-scale-x: 100%;
7770
- --tw-scale-y: 100%;
7771
- --tw-scale-z: 100%;
7772
- scale: var(--tw-scale-x) var(--tw-scale-y);
7773
- }
7774
- &:disabled {
7775
- opacity: 50%;
7776
- }
7777
- &:not([class*='button-xs']):not([class*='button-sm']):not([class*='button-md']):not([class*='button-lg']):not([class*='button-xl']) {
7778
- @layer components {
7779
- display: inline-flex;
7780
- align-items: center;
7781
- column-gap: calc(var(--spacing) * 1.5);
7782
- border-radius: var(--radius-md);
7783
- padding-inline: calc(var(--spacing) * 2.5);
7784
- padding-block: calc(var(--spacing) * 1.5);
7785
- font-size: var(--text-sm);
7786
- line-height: var(--tw-leading, var(--text-sm--line-height));
7787
- & > svg {
7788
- width: calc(var(--spacing) * 5);
7789
- height: calc(var(--spacing) * 5);
7790
- &:first-child {
7791
- margin-left: calc(var(--spacing) * -0.5);
7792
- }
7793
- &:last-child {
7794
- margin-right: calc(var(--spacing) * -0.5);
7795
- }
7796
- }
7797
- }
7798
- }
7971
+ text-align: center;
7972
+ }
7973
+ lexxy-editor .attachment--preview img {
7974
+ max-width: 100%;
7975
+ border-radius: 0.25rem;
7976
+ }
7977
+ lexxy-editor .attachment--file {
7978
+ display: inline-flex;
7979
+ align-items: center;
7980
+ gap: calc(var(--spacing) * 2);
7981
+ margin-block: calc(var(--spacing) * 1);
7982
+ padding-inline: calc(var(--spacing) * 3);
7983
+ padding-block: calc(var(--spacing) * 2);
7984
+ background-color: var(--color-stone-100);
7985
+ @media (prefers-color-scheme: dark) {
7986
+ background-color: color-mix(in srgb, #fff 10%, transparent);
7987
+ @supports (color: color-mix(in lab, red, red)) {
7988
+ background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
7799
7989
  }
7800
- background-color: var(--color-white);
7801
- color: var(--color-stone-700);
7802
- --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
7803
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
7804
- --tw-ring-color: var(--color-stone-200);
7805
- &:hover {
7806
- @media (hover: hover) {
7807
- scale: 1.02;
7808
- }
7990
+ }
7991
+ border-style: var(--tw-border-style);
7992
+ border-width: 1px;
7993
+ border-color: var(--color-stone-200);
7994
+ @media (prefers-color-scheme: dark) {
7995
+ border-color: color-mix(in srgb, #fff 10%, transparent);
7996
+ @supports (color: color-mix(in lab, red, red)) {
7997
+ border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
7809
7998
  }
7810
- &:hover {
7811
- @media (hover: hover) {
7812
- background-color: var(--color-stone-50);
7813
- }
7999
+ }
8000
+ border-radius: var(--radius-lg);
8001
+ font-size: var(--text-sm);
8002
+ line-height: var(--tw-leading, var(--text-sm--line-height));
8003
+ color: var(--color-stone-700);
8004
+ @media (prefers-color-scheme: dark) {
8005
+ color: var(--color-stone-300);
8006
+ }
8007
+ }
8008
+ lexxy-editor .attachment__caption {
8009
+ text-align: center;
8010
+ font-size: var(--text-sm);
8011
+ line-height: var(--tw-leading, var(--text-sm--line-height));
8012
+ color: var(--color-stone-500);
8013
+ @media (prefers-color-scheme: dark) {
8014
+ color: var(--color-stone-400);
8015
+ }
8016
+ margin-top: calc(var(--spacing) * 1);
8017
+ }
8018
+ lexxy-editor .attachment__toolbar {
8019
+ position: absolute;
8020
+ top: calc(var(--spacing) * 2);
8021
+ right: calc(var(--spacing) * 2);
8022
+ z-index: 10;
8023
+ display: flex;
8024
+ align-items: center;
8025
+ gap: calc(var(--spacing) * 1);
8026
+ }
8027
+ lexxy-editor .attachment__toolbar button {
8028
+ width: calc(var(--spacing) * 6);
8029
+ height: calc(var(--spacing) * 6);
8030
+ border-radius: calc(infinity * 1px);
8031
+ background-color: color-mix(in srgb, #fff 90%, transparent);
8032
+ @supports (color: color-mix(in lab, red, red)) {
8033
+ background-color: color-mix(in oklab, var(--color-white) 90%, transparent);
8034
+ }
8035
+ @media (prefers-color-scheme: dark) {
8036
+ background-color: color-mix(in srgb, oklch(26.8% 0.007 34.298) 90%, transparent);
8037
+ @supports (color: color-mix(in lab, red, red)) {
8038
+ background-color: color-mix(in oklab, var(--color-stone-800) 90%, transparent);
8039
+ }
8040
+ }
8041
+ color: var(--color-stone-600);
8042
+ @media (prefers-color-scheme: dark) {
8043
+ color: var(--color-stone-400);
8044
+ }
8045
+ &:hover {
8046
+ @media (hover: hover) {
8047
+ background-color: var(--color-white);
7814
8048
  }
8049
+ }
8050
+ @media (prefers-color-scheme: dark) {
7815
8051
  &:hover {
7816
8052
  @media (hover: hover) {
7817
- --tw-ring-color: var(--color-stone-300);
7818
- }
7819
- }
7820
- &:active {
7821
- --tw-scale-x: 100%;
7822
- --tw-scale-y: 100%;
7823
- --tw-scale-z: 100%;
7824
- scale: var(--tw-scale-x) var(--tw-scale-y);
7825
- }
7826
- &:active {
7827
- background-color: var(--color-stone-100);
7828
- }
7829
- &:focus-visible {
7830
- outline-color: var(--color-stone-600);
7831
- }
7832
- @media (prefers-color-scheme: dark) {
7833
- background-color: color-mix(in srgb, #fff 10%, transparent);
7834
- @supports (color: color-mix(in lab, red, red)) {
7835
- background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
8053
+ background-color: var(--color-stone-800);
7836
8054
  }
7837
8055
  }
7838
- @media (prefers-color-scheme: dark) {
7839
- color: var(--color-white);
7840
- }
7841
- @media (prefers-color-scheme: dark) {
7842
- --tw-ring-color: color-mix(in srgb, #fff 10%, transparent);
8056
+ }
8057
+ --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
8058
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
8059
+ }
8060
+ lexxy-editor [data-trix-mutable] img, lexxy-editor .attachment.selected img {
8061
+ --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
8062
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
8063
+ --tw-ring-color: var(--color-sky-500);
8064
+ }
8065
+ lexxy-editor .node--selected {
8066
+ outline-style: var(--tw-outline-style);
8067
+ outline-width: 2px;
8068
+ outline-offset: 2px;
8069
+ outline-color: var(--color-sky-500);
8070
+ border-radius: 0.25rem;
8071
+ }
8072
+ .lexxy-floating-controls {
8073
+ position: absolute;
8074
+ z-index: 10;
8075
+ font-size: var(--text-sm);
8076
+ line-height: var(--tw-leading, var(--text-sm--line-height));
8077
+ --tw-leading: 1;
8078
+ line-height: 1;
8079
+ color: var(--color-white);
8080
+ }
8081
+ .lexxy-floating-controls .lexxy-floating-controls__group {
8082
+ display: flex;
8083
+ align-items: center;
8084
+ gap: calc(var(--spacing) * 0.5);
8085
+ border-radius: var(--radius-md);
8086
+ padding: calc(var(--spacing) * 0.5);
8087
+ background-color: color-mix(in srgb, oklch(21.6% 0.006 56.043) 90%, transparent);
8088
+ @supports (color: color-mix(in lab, red, red)) {
8089
+ background-color: color-mix(in oklab, var(--color-stone-900) 90%, transparent);
8090
+ }
8091
+ @media (prefers-color-scheme: dark) {
8092
+ background-color: var(--color-stone-700);
8093
+ }
8094
+ --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
8095
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
8096
+ }
8097
+ .lexxy-floating-controls button, .lexxy-floating-controls summary {
8098
+ display: inline-flex;
8099
+ align-items: center;
8100
+ justify-content: center;
8101
+ height: calc(var(--spacing) * 7);
8102
+ min-width: calc(var(--spacing) * 7);
8103
+ border-radius: 0.25rem;
8104
+ padding-inline: calc(var(--spacing) * 1);
8105
+ color: var(--color-white);
8106
+ &:hover {
8107
+ @media (hover: hover) {
8108
+ background-color: color-mix(in srgb, #fff 15%, transparent);
7843
8109
  @supports (color: color-mix(in lab, red, red)) {
7844
- --tw-ring-color: color-mix(in oklab, var(--color-white) 10%, transparent);
7845
- }
7846
- }
7847
- @media (prefers-color-scheme: dark) {
7848
- &:hover {
7849
- @media (hover: hover) {
7850
- background-color: color-mix(in srgb, #fff 15%, transparent);
7851
- @supports (color: color-mix(in lab, red, red)) {
7852
- background-color: color-mix(in oklab, var(--color-white) 15%, transparent);
7853
- }
7854
- }
8110
+ background-color: color-mix(in oklab, var(--color-white) 15%, transparent);
7855
8111
  }
7856
8112
  }
7857
- @media (prefers-color-scheme: dark) {
7858
- &:hover {
7859
- @media (hover: hover) {
7860
- --tw-ring-color: color-mix(in srgb, #fff 20%, transparent);
7861
- @supports (color: color-mix(in lab, red, red)) {
7862
- --tw-ring-color: color-mix(in oklab, var(--color-white) 20%, transparent);
7863
- }
7864
- }
7865
- }
7866
- }
7867
- @media (prefers-color-scheme: dark) {
7868
- &:active {
7869
- background-color: color-mix(in srgb, #fff 5%, transparent);
7870
- @supports (color: color-mix(in lab, red, red)) {
7871
- background-color: color-mix(in oklab, var(--color-white) 5%, transparent);
7872
- }
7873
- }
8113
+ }
8114
+ &:focus-visible {
8115
+ outline-style: var(--tw-outline-style);
8116
+ outline-width: 2px;
8117
+ }
8118
+ &:focus-visible {
8119
+ outline-color: var(--color-sky-400);
8120
+ }
8121
+ cursor: pointer;
8122
+ -webkit-user-select: none;
8123
+ user-select: none;
8124
+ }
8125
+ .lexxy-floating-controls svg {
8126
+ width: calc(var(--spacing) * 4);
8127
+ height: calc(var(--spacing) * 4);
8128
+ fill: currentColor;
8129
+ }
8130
+ lexxy-node-delete-button .lexxy-node-delete:hover {
8131
+ background-color: var(--color-red-600);
8132
+ }
8133
+ lexxy-editor table {
8134
+ margin-block: calc(var(--spacing) * 0) !important;
8135
+ width: 100%;
8136
+ border-collapse: collapse;
8137
+ font-size: var(--text-sm);
8138
+ line-height: var(--tw-leading, var(--text-sm--line-height));
8139
+ }
8140
+ lexxy-editor th, lexxy-editor td {
8141
+ position: relative;
8142
+ border-style: var(--tw-border-style);
8143
+ border-width: 1px;
8144
+ border-color: var(--color-stone-300);
8145
+ @media (prefers-color-scheme: dark) {
8146
+ border-color: var(--color-stone-600);
8147
+ }
8148
+ padding-inline: calc(var(--spacing) * 3);
8149
+ padding-block: calc(var(--spacing) * 2);
8150
+ text-align: start;
8151
+ vertical-align: top;
8152
+ min-width: 5ch;
8153
+ transition: all 0.1s ease-in-out;
8154
+ }
8155
+ lexxy-editor th::after, lexxy-editor td::after {
8156
+ content: "";
8157
+ pointer-events: none;
8158
+ position: absolute;
8159
+ display: block;
8160
+ inset: -1px;
8161
+ z-index: 2;
8162
+ box-shadow: 0 0 0 0 transparent, 0 0 0 0 transparent inset;
8163
+ transition: box-shadow 0.1s ease-in-out;
8164
+ }
8165
+ lexxy-editor th, lexxy-editor .lexxy-content__table-cell--header {
8166
+ background-color: var(--color-stone-100);
8167
+ --tw-font-weight: var(--font-weight-semibold);
8168
+ font-weight: var(--font-weight-semibold);
8169
+ @media (prefers-color-scheme: dark) {
8170
+ background-color: color-mix(in srgb, #fff 10%, transparent);
8171
+ @supports (color: color-mix(in lab, red, red)) {
8172
+ background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
7874
8173
  }
7875
8174
  }
7876
- @layer components {
7877
- display: inline-flex;
7878
- align-items: center;
7879
- column-gap: calc(var(--spacing) * 1);
7880
- border-radius: var(--radius-sm);
7881
- padding-inline: calc(var(--spacing) * 2);
7882
- padding-block: calc(var(--spacing) * 1);
7883
- font-size: var(--text-sm);
7884
- line-height: var(--tw-leading, var(--text-sm--line-height));
7885
- & > svg {
7886
- width: calc(var(--spacing) * 5);
7887
- height: calc(var(--spacing) * 5);
7888
- &:first-child {
7889
- margin-left: calc(var(--spacing) * -0.5);
7890
- }
7891
- &:last-child {
7892
- margin-right: calc(var(--spacing) * -0.5);
7893
- }
8175
+ color: var(--color-stone-950);
8176
+ @media (prefers-color-scheme: dark) {
8177
+ color: var(--color-white);
8178
+ }
8179
+ }
8180
+ lexxy-editor td.lexxy-content__table-cell--selected, lexxy-editor th.lexxy-content__table-cell--selected {
8181
+ background-color: color-mix(in srgb, oklch(95.1% 0.026 236.824) 60%, transparent);
8182
+ @supports (color: color-mix(in lab, red, red)) {
8183
+ background-color: color-mix(in oklab, var(--color-sky-100) 60%, transparent);
8184
+ }
8185
+ @media (prefers-color-scheme: dark) {
8186
+ background-color: color-mix(in srgb, oklch(68.5% 0.169 237.323) 15%, transparent);
8187
+ @supports (color: color-mix(in lab, red, red)) {
8188
+ background-color: color-mix(in oklab, var(--color-sky-500) 15%, transparent);
7894
8189
  }
7895
8190
  }
7896
8191
  }
7897
- lexxy-highlight-dropdown .lexxy-editor__toolbar-dropdown-reset[disabled] {
7898
- display: none;
8192
+ lexxy-editor td.lexxy-content__table-cell--focus::after, lexxy-editor th.lexxy-content__table-cell--focus::after {
8193
+ box-shadow: 0 0 0 0 transparent, 0 0 0 2px var(--color-sky-500) inset;
7899
8194
  }
7900
- [overflowing] lexxy-highlight-dropdown {
7901
- width: fit-content;
8195
+ lexxy-editor table {
8196
+ --lexxy-cell-add-size: 2px;
8197
+ --lexxy-cell-add-color: var(--color-sky-500);
7902
8198
  }
7903
- [overflowing] lexxy-highlight-dropdown [data-button-group] {
7904
- flex-wrap: wrap;
8199
+ lexxy-editor td.lexxy-content__table-cell--highlight[data-action="insert"][data-child-type="row"][data-direction="after"]::after, lexxy-editor th.lexxy-content__table-cell--highlight[data-action="insert"][data-child-type="row"][data-direction="after"]::after {
8200
+ box-shadow: 0 var(--lexxy-cell-add-size) 0 0 var(--lexxy-cell-add-color), 0 calc(-1 * var(--lexxy-cell-add-size) - 1px) 0 0 var(--lexxy-cell-add-color) inset;
8201
+ }
8202
+ lexxy-editor td.lexxy-content__table-cell--highlight[data-action="insert"][data-child-type="row"][data-direction="before"]::after, lexxy-editor th.lexxy-content__table-cell--highlight[data-action="insert"][data-child-type="row"][data-direction="before"]::after {
8203
+ box-shadow: 0 calc(-1 * var(--lexxy-cell-add-size) - 1px) 0 0 var(--lexxy-cell-add-color), 0 var(--lexxy-cell-add-size) 0 0 var(--lexxy-cell-add-color) inset;
8204
+ }
8205
+ lexxy-editor td.lexxy-content__table-cell--highlight[data-action="insert"][data-child-type="column"][data-direction="after"]::after, lexxy-editor th.lexxy-content__table-cell--highlight[data-action="insert"][data-child-type="column"][data-direction="after"]::after {
8206
+ box-shadow: var(--lexxy-cell-add-size) 0 0 0 var(--lexxy-cell-add-color), calc(-1 * var(--lexxy-cell-add-size) - 1px) 0 0 0 var(--lexxy-cell-add-color) inset;
8207
+ }
8208
+ lexxy-editor td.lexxy-content__table-cell--highlight[data-action="insert"][data-child-type="column"][data-direction="before"]::after, lexxy-editor th.lexxy-content__table-cell--highlight[data-action="insert"][data-child-type="column"][data-direction="before"]::after {
8209
+ box-shadow: calc(-1 * var(--lexxy-cell-add-size) - 1px) 0 0 0 var(--lexxy-cell-add-color), var(--lexxy-cell-add-size) 0 0 0 var(--lexxy-cell-add-color) inset;
8210
+ }
8211
+ lexxy-editor td.lexxy-content__table-cell--highlight[data-action="toggle"], lexxy-editor th.lexxy-content__table-cell--highlight[data-action="toggle"], lexxy-editor tr.lexxy-content__table-cell--highlight[data-action="toggle"] th, lexxy-editor tr.lexxy-content__table-cell--highlight[data-action="toggle"] td {
8212
+ background-color: color-mix(in srgb, oklch(68.5% 0.169 237.323) 10%, transparent);
8213
+ @supports (color: color-mix(in lab, red, red)) {
8214
+ background-color: color-mix(in oklab, var(--color-sky-500) 10%, transparent);
8215
+ }
8216
+ }
8217
+ lexxy-editor td.lexxy-content__table-cell--highlight[data-action="delete"], lexxy-editor th.lexxy-content__table-cell--highlight[data-action="delete"], lexxy-editor tr.lexxy-content__table-cell--highlight[data-action="delete"] th, lexxy-editor tr.lexxy-content__table-cell--highlight[data-action="delete"] td {
8218
+ background-color: color-mix(in srgb, oklch(63.7% 0.237 25.331) 10%, transparent);
8219
+ @supports (color: color-mix(in lab, red, red)) {
8220
+ background-color: color-mix(in oklab, var(--color-red-500) 10%, transparent);
8221
+ }
8222
+ color: var(--color-red-600);
8223
+ @media (prefers-color-scheme: dark) {
8224
+ color: var(--color-red-400);
8225
+ }
7905
8226
  }
7906
- [overflowing] lexxy-highlight-dropdown [data-button-group] button {
7907
- --button-size: calc(var(--spacing) * 6);
8227
+ .lexxy-content__table-wrapper {
8228
+ margin-block: calc(var(--spacing) * 4);
8229
+ overflow-x: auto;
7908
8230
  }
7909
- [overflowing] lexxy-highlight-dropdown [data-button-group] button::after {
8231
+ lexxy-table-tools {
8232
+ position: absolute;
8233
+ z-index: 10;
8234
+ display: flex;
8235
+ flex-direction: row;
8236
+ align-items: flex-start;
8237
+ gap: calc(var(--spacing) * 1);
7910
8238
  font-size: var(--text-sm);
7911
8239
  line-height: var(--tw-leading, var(--text-sm--line-height));
8240
+ --tw-leading: 1;
8241
+ line-height: 1;
8242
+ color: var(--color-white);
8243
+ --tw-translate-x: calc(calc(1/2 * 100%) * -1);
8244
+ --tw-translate-y: calc(calc(100% + 4px) * -1);
8245
+ translate: var(--tw-translate-x) var(--tw-translate-y);
7912
8246
  }
7913
- lexxy-editor .attachment__progress {
8247
+ lexxy-table-tools .lexxy-table-control > .lexxy-table-control__button {
8248
+ width: calc(var(--spacing) * 7);
8249
+ --tw-font-weight: var(--font-weight-bold);
8250
+ font-weight: var(--font-weight-bold);
8251
+ }
8252
+ lexxy-table-tools .lexxy-table-control__button > span {
8253
+ display: none;
8254
+ }
8255
+ lexxy-table-tools summary {
8256
+ list-style: none;
8257
+ cursor: pointer;
8258
+ --tw-font-weight: var(--font-weight-normal);
8259
+ font-weight: var(--font-weight-normal);
8260
+ white-space: nowrap;
8261
+ }
8262
+ lexxy-table-tools summary::-webkit-details-marker {
8263
+ display: none;
8264
+ }
8265
+ lexxy-table-tools summary::marker {
8266
+ content: "";
8267
+ }
8268
+ lexxy-table-tools .lexxy-table-control__more-menu {
8269
+ position: relative;
8270
+ }
8271
+ lexxy-table-tools .lexxy-table-control__more-menu-details {
7914
8272
  position: absolute;
8273
+ inset-inline-start: calc(1/2 * 100%);
8274
+ top: 100%;
7915
8275
  z-index: 10;
7916
- top: calc(1/2 * 100%);
7917
- left: 5%;
7918
- height: calc(var(--spacing) * 1);
7919
- width: 90%;
7920
- --tw-translate-y: calc(calc(1/2 * 100%) * -1);
8276
+ margin-top: calc(var(--spacing) * 1);
8277
+ min-width: max-content;
8278
+ --tw-translate-x: calc(calc(1/2 * 100%) * -1);
7921
8279
  translate: var(--tw-translate-x) var(--tw-translate-y);
7922
- overflow: hidden;
7923
- border-radius: calc(infinity * 1px);
7924
- background-color: var(--color-stone-200);
8280
+ display: flex;
8281
+ flex-direction: column;
8282
+ align-items: stretch;
8283
+ gap: calc(var(--spacing) * 0.5);
8284
+ border-radius: var(--radius-md);
8285
+ padding: calc(var(--spacing) * 1);
8286
+ background-color: var(--color-stone-900);
8287
+ --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
8288
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
7925
8289
  @media (prefers-color-scheme: dark) {
7926
8290
  background-color: var(--color-stone-700);
7927
8291
  }
7928
8292
  }
7929
- lexxy-editor .attachment__progress::-webkit-progress-bar {
7930
- background-color: var(--color-stone-200);
8293
+ lexxy-table-tools .lexxy-table-control__more-menu-details .lexxy-table-control__button {
8294
+ height: auto;
8295
+ width: 100%;
8296
+ justify-content: flex-start;
8297
+ gap: calc(var(--spacing) * 2);
8298
+ padding-inline: calc(var(--spacing) * 2);
8299
+ padding-block: calc(var(--spacing) * 1.5);
8300
+ --tw-font-weight: var(--font-weight-normal);
8301
+ font-weight: var(--font-weight-normal);
8302
+ white-space: nowrap;
8303
+ }
8304
+ lexxy-table-tools .lexxy-table-control__more-menu-details .lexxy-table-control__button > span {
8305
+ display: inline-block;
8306
+ }
8307
+ lexxy-table-tools .lexxy-table-control__button--delete-table {
8308
+ position: relative;
8309
+ }
8310
+ lexxy-table-tools .lexxy-table-control__button--delete-table:hover {
8311
+ background-color: var(--color-red-600);
8312
+ }
8313
+ lexxy-table-tools .lexxy-table-control__button--delete-table > span {
8314
+ position: absolute;
8315
+ bottom: 100%;
8316
+ left: calc(1/2 * 100%);
8317
+ z-index: 20;
8318
+ margin-bottom: calc(var(--spacing) * 1);
8319
+ --tw-translate-x: calc(calc(1/2 * 100%) * -1);
8320
+ translate: var(--tw-translate-x) var(--tw-translate-y);
8321
+ display: inline-flex;
8322
+ height: calc(var(--spacing) * 7);
8323
+ align-items: center;
8324
+ border-radius: var(--radius-md);
8325
+ padding-inline: calc(var(--spacing) * 2);
8326
+ background-color: var(--color-stone-900);
8327
+ white-space: nowrap;
7931
8328
  @media (prefers-color-scheme: dark) {
7932
8329
  background-color: var(--color-stone-700);
7933
8330
  }
7934
- }
7935
- lexxy-editor .attachment__progress::-webkit-progress-value {
7936
- background-color: var(--color-sky-600);
7937
- transition-property: all;
7938
- transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
7939
- transition-duration: var(--tw-duration, var(--default-transition-duration));
7940
- --tw-duration: 200ms;
7941
- transition-duration: 200ms;
7942
- }
7943
- lexxy-editor .attachment__progress::-moz-progress-bar {
7944
- background-color: var(--color-sky-600);
7945
- }
7946
- lexxy-editor .attachment__progress[value="100"] {
8331
+ pointer-events: none;
7947
8332
  opacity: 0%;
7948
8333
  transition-property: opacity;
7949
8334
  transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
7950
8335
  transition-duration: var(--tw-duration, var(--default-transition-duration));
7951
- --tw-duration: 200ms;
7952
- transition-duration: 200ms;
7953
- }
7954
- lexxy-editor .attachment {
7955
- position: relative;
7956
- display: inline-block;
7957
- max-width: 100%;
7958
8336
  }
7959
- lexxy-editor .attachment--preview {
7960
- width: 100%;
7961
- text-align: center;
8337
+ lexxy-table-tools .lexxy-table-control__button--delete-table:hover > span {
8338
+ opacity: 100%;
7962
8339
  }
7963
- lexxy-editor .attachment--preview img {
7964
- max-width: 100%;
7965
- border-radius: 0.25rem;
8340
+ [class*="lexxy-drop-target--"] {
8341
+ position: relative;
7966
8342
  }
7967
- lexxy-editor .attachment--file {
7968
- display: inline-flex;
7969
- align-items: center;
7970
- gap: calc(var(--spacing) * 2);
7971
- margin-block: calc(var(--spacing) * 1);
7972
- padding-inline: calc(var(--spacing) * 3);
7973
- padding-block: calc(var(--spacing) * 2);
7974
- background-color: var(--color-stone-100);
7975
- @media (prefers-color-scheme: dark) {
7976
- background-color: color-mix(in srgb, #fff 10%, transparent);
7977
- @supports (color: color-mix(in lab, red, red)) {
7978
- background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
7979
- }
7980
- }
7981
- border-style: var(--tw-border-style);
7982
- border-width: 1px;
7983
- border-color: var(--color-stone-200);
7984
- @media (prefers-color-scheme: dark) {
7985
- border-color: color-mix(in srgb, #fff 10%, transparent);
7986
- @supports (color: color-mix(in lab, red, red)) {
7987
- border-color: color-mix(in oklab, var(--color-white) 10%, transparent);
7988
- }
7989
- }
7990
- border-radius: var(--radius-lg);
7991
- font-size: var(--text-sm);
7992
- line-height: var(--tw-leading, var(--text-sm--line-height));
7993
- color: var(--color-stone-700);
8343
+ .lexxy-drop-target--gallery-before::before, .lexxy-drop-target--gallery-after::after {
8344
+ content: "";
8345
+ position: absolute;
8346
+ inset-block: calc(var(--spacing) * 0);
8347
+ width: 3px;
8348
+ border-radius: var(--radius-sm);
8349
+ background-color: var(--color-sky-600);
7994
8350
  @media (prefers-color-scheme: dark) {
7995
- color: var(--color-stone-300);
8351
+ background-color: var(--color-sky-500);
7996
8352
  }
8353
+ pointer-events: none;
7997
8354
  }
7998
- lexxy-editor .attachment__caption {
7999
- text-align: center;
8000
- font-size: var(--text-sm);
8001
- line-height: var(--tw-leading, var(--text-sm--line-height));
8002
- color: var(--color-stone-500);
8003
- @media (prefers-color-scheme: dark) {
8004
- color: var(--color-stone-400);
8005
- }
8006
- margin-top: calc(var(--spacing) * 1);
8355
+ .lexxy-drop-target--gallery-before::before {
8356
+ inset-inline-start: -4px;
8007
8357
  }
8008
- lexxy-editor .attachment__toolbar {
8009
- position: absolute;
8010
- top: calc(var(--spacing) * 2);
8011
- right: calc(var(--spacing) * 2);
8012
- z-index: 10;
8013
- display: flex;
8014
- align-items: center;
8015
- gap: calc(var(--spacing) * 1);
8358
+ .lexxy-drop-target--gallery-after::after {
8359
+ inset-inline-end: -4px;
8016
8360
  }
8017
- lexxy-editor .attachment__toolbar button {
8018
- width: calc(var(--spacing) * 6);
8019
- height: calc(var(--spacing) * 6);
8020
- border-radius: calc(infinity * 1px);
8021
- background-color: color-mix(in srgb, #fff 90%, transparent);
8022
- @supports (color: color-mix(in lab, red, red)) {
8023
- background-color: color-mix(in oklab, var(--color-white) 90%, transparent);
8024
- }
8025
- @media (prefers-color-scheme: dark) {
8026
- background-color: color-mix(in srgb, oklch(26.8% 0.007 34.298) 90%, transparent);
8027
- @supports (color: color-mix(in lab, red, red)) {
8028
- background-color: color-mix(in oklab, var(--color-stone-800) 90%, transparent);
8029
- }
8030
- }
8031
- color: var(--color-stone-600);
8032
- @media (prefers-color-scheme: dark) {
8033
- color: var(--color-stone-400);
8034
- }
8035
- &:hover {
8036
- @media (hover: hover) {
8037
- background-color: var(--color-white);
8038
- }
8039
- }
8361
+ .lexxy-drop-target--block-before::before, .lexxy-drop-target--block-after::after, .lexxy-drop-target--list-before::before, .lexxy-drop-target--list-after::after {
8362
+ content: "";
8363
+ position: absolute;
8364
+ inset-inline: calc(var(--spacing) * 0);
8365
+ height: 3px;
8366
+ border-radius: var(--radius-sm);
8367
+ background-color: var(--color-sky-600);
8040
8368
  @media (prefers-color-scheme: dark) {
8041
- &:hover {
8042
- @media (hover: hover) {
8043
- background-color: var(--color-stone-800);
8044
- }
8045
- }
8369
+ background-color: var(--color-sky-500);
8046
8370
  }
8047
- --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
8048
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
8371
+ pointer-events: none;
8049
8372
  }
8050
- lexxy-editor [data-trix-mutable] img, lexxy-editor .attachment.selected img {
8051
- --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
8052
- box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
8053
- --tw-ring-color: var(--color-sky-500);
8373
+ .lexxy-drop-target--block-before::before, .lexxy-drop-target--list-before::before {
8374
+ inset-block-start: -2px;
8375
+ }
8376
+ .lexxy-drop-target--block-after::after, .lexxy-drop-target--list-after::after {
8377
+ inset-block-end: -2px;
8054
8378
  }
8055
8379
  }
8056
8380
  @layer components {
@@ -8227,6 +8551,47 @@ dialog.modal {
8227
8551
  border-radius: var(--radius-lg);
8228
8552
  margin-block: calc(var(--spacing) * 4);
8229
8553
  }
8554
+ .lexxy-content .lexxy-content__table-wrapper {
8555
+ margin-block: calc(var(--spacing) * 4);
8556
+ overflow-x: auto;
8557
+ }
8558
+ .lexxy-content table {
8559
+ width: 100%;
8560
+ border-collapse: collapse;
8561
+ font-size: var(--text-sm);
8562
+ line-height: var(--tw-leading, var(--text-sm--line-height));
8563
+ margin-block: calc(var(--spacing) * 4);
8564
+ }
8565
+ .lexxy-content th, .lexxy-content td {
8566
+ border-style: var(--tw-border-style);
8567
+ border-width: 1px;
8568
+ border-color: var(--color-stone-300);
8569
+ @media (prefers-color-scheme: dark) {
8570
+ border-color: var(--color-stone-600);
8571
+ }
8572
+ padding-inline: calc(var(--spacing) * 3);
8573
+ padding-block: calc(var(--spacing) * 2);
8574
+ text-align: start;
8575
+ vertical-align: top;
8576
+ }
8577
+ .lexxy-content th, .lexxy-content .lexxy-content__table-cell--header {
8578
+ background-color: var(--color-stone-100);
8579
+ --tw-font-weight: var(--font-weight-semibold);
8580
+ font-weight: var(--font-weight-semibold);
8581
+ @media (prefers-color-scheme: dark) {
8582
+ background-color: color-mix(in srgb, #fff 10%, transparent);
8583
+ @supports (color: color-mix(in lab, red, red)) {
8584
+ background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
8585
+ }
8586
+ }
8587
+ color: var(--color-stone-950);
8588
+ @media (prefers-color-scheme: dark) {
8589
+ color: var(--color-white);
8590
+ }
8591
+ }
8592
+ .lexxy-content th *:last-child, .lexxy-content td *:last-child {
8593
+ margin-bottom: calc(var(--spacing) * 0);
8594
+ }
8230
8595
  .lexxy-content .attachment {
8231
8596
  margin-block: calc(var(--spacing) * 4);
8232
8597
  display: inline-block;
@@ -8329,6 +8694,135 @@ dialog.modal {
8329
8694
  padding: calc(var(--spacing) * 0);
8330
8695
  }
8331
8696
  }
8697
+ @layer utilities {
8698
+ lexxy-editor figure.horizontal-divider {
8699
+ position: relative;
8700
+ margin: calc(var(--spacing) * 0);
8701
+ padding-inline: calc(var(--spacing) * 0);
8702
+ padding-block: calc(var(--spacing) * 3);
8703
+ text-align: center;
8704
+ }
8705
+ lexxy-editor figure.horizontal-divider hr {
8706
+ margin: calc(var(--spacing) * 0);
8707
+ display: inline-block;
8708
+ height: 1px;
8709
+ width: calc(1/5 * 100%);
8710
+ border-style: var(--tw-border-style);
8711
+ border-width: 0px;
8712
+ padding: calc(var(--spacing) * 0);
8713
+ background-color: var(--color-stone-300);
8714
+ @media (prefers-color-scheme: dark) {
8715
+ background-color: var(--color-stone-600);
8716
+ }
8717
+ }
8718
+ lexxy-node-delete-button {
8719
+ pointer-events: none;
8720
+ position: absolute;
8721
+ z-index: 10;
8722
+ opacity: 0%;
8723
+ transition-property: opacity;
8724
+ transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
8725
+ transition-duration: var(--tw-duration, var(--default-transition-duration));
8726
+ inset-block-start: 0.25rem;
8727
+ inset-inline-end: 0.25rem;
8728
+ inset-inline-start: auto;
8729
+ }
8730
+ lexxy-editor figure:hover > lexxy-node-delete-button, lexxy-editor .attachment:hover > lexxy-node-delete-button, lexxy-editor .node--selected > lexxy-node-delete-button, lexxy-editor .node--selected lexxy-node-delete-button {
8731
+ pointer-events: auto;
8732
+ opacity: 100%;
8733
+ }
8734
+ lexxy-editor.prose code::before, lexxy-editor.prose code::after, .lexxy-content code::before, .lexxy-content code::after {
8735
+ content: none;
8736
+ }
8737
+ lexxy-editor code:not([data-language]) {
8738
+ border-radius: 0.25rem;
8739
+ padding-inline: calc(var(--spacing) * 1.5);
8740
+ padding-block: calc(var(--spacing) * 0.5);
8741
+ background-color: var(--color-stone-100);
8742
+ @media (prefers-color-scheme: dark) {
8743
+ background-color: color-mix(in srgb, #fff 10%, transparent);
8744
+ @supports (color: color-mix(in lab, red, red)) {
8745
+ background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
8746
+ }
8747
+ }
8748
+ font-family: var(--font-mono);
8749
+ font-size: var(--text-sm);
8750
+ line-height: var(--tw-leading, var(--text-sm--line-height));
8751
+ color: var(--color-pink-600);
8752
+ @media (prefers-color-scheme: dark) {
8753
+ color: var(--color-pink-400);
8754
+ }
8755
+ }
8756
+ lexxy-editor code[data-language] {
8757
+ position: relative;
8758
+ margin-block: calc(var(--spacing) * 4);
8759
+ display: block;
8760
+ overflow-x: auto;
8761
+ border-radius: var(--radius-lg);
8762
+ padding-inline: calc(var(--spacing) * 4);
8763
+ padding-top: calc(var(--spacing) * 10);
8764
+ padding-bottom: calc(var(--spacing) * 4);
8765
+ background-color: var(--color-stone-100);
8766
+ @media (prefers-color-scheme: dark) {
8767
+ background-color: var(--color-stone-900);
8768
+ }
8769
+ font-family: var(--font-mono);
8770
+ font-size: var(--text-sm);
8771
+ line-height: var(--tw-leading, var(--text-sm--line-height));
8772
+ --tw-leading: var(--leading-relaxed);
8773
+ line-height: var(--leading-relaxed);
8774
+ color: var(--color-stone-900);
8775
+ @media (prefers-color-scheme: dark) {
8776
+ color: var(--color-stone-100);
8777
+ }
8778
+ white-space: pre;
8779
+ }
8780
+ lexxy-code-language-picker select {
8781
+ cursor: pointer;
8782
+ appearance: none;
8783
+ background-color: var(--color-white);
8784
+ @media (prefers-color-scheme: dark) {
8785
+ background-color: var(--color-stone-800);
8786
+ }
8787
+ border-style: var(--tw-border-style);
8788
+ border-width: 1px;
8789
+ border-color: var(--color-stone-300);
8790
+ @media (prefers-color-scheme: dark) {
8791
+ border-color: color-mix(in srgb, #fff 15%, transparent);
8792
+ @supports (color: color-mix(in lab, red, red)) {
8793
+ border-color: color-mix(in oklab, var(--color-white) 15%, transparent);
8794
+ }
8795
+ }
8796
+ border-radius: var(--radius-md);
8797
+ color: var(--color-stone-700);
8798
+ @media (prefers-color-scheme: dark) {
8799
+ color: var(--color-stone-200);
8800
+ }
8801
+ font-size: var(--text-xs);
8802
+ line-height: var(--tw-leading, var(--text-xs--line-height));
8803
+ --tw-leading: 1;
8804
+ line-height: 1;
8805
+ --tw-font-weight: var(--font-weight-medium);
8806
+ font-weight: var(--font-weight-medium);
8807
+ padding-block: calc(var(--spacing) * 1);
8808
+ padding-right: calc(var(--spacing) * 6);
8809
+ padding-left: calc(var(--spacing) * 2);
8810
+ margin-top: calc(var(--spacing) * 2);
8811
+ margin-right: calc(var(--spacing) * 2);
8812
+ background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
8813
+ background-repeat: no-repeat;
8814
+ background-position: right 0.5rem center;
8815
+ background-size: 0.7rem;
8816
+ }
8817
+ lexxy-code-language-picker select:focus-visible {
8818
+ outline-style: var(--tw-outline-style);
8819
+ outline-width: 2px;
8820
+ outline-color: var(--color-sky-600);
8821
+ @media (prefers-color-scheme: dark) {
8822
+ outline-color: var(--color-sky-500);
8823
+ }
8824
+ }
8825
+ }
8332
8826
  @layer base {
8333
8827
  *, ::after, ::before, ::backdrop, ::file-selector-button {
8334
8828
  border-color: var(--color-stone-200, currentColor);