@floegence/floe-webapp-core 0.35.57 → 0.35.58

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.
@@ -692,6 +692,12 @@
692
692
  --notes-ink: color-mix(in srgb, var(--card-foreground) 92%, var(--notes-accent) 8%);
693
693
  --notes-ribbon: color-mix(in srgb, var(--notes-accent) 74%, var(--foreground) 26%);
694
694
  --notes-title-ink: color-mix(in srgb, var(--notes-ribbon) 82%, var(--card-foreground) 18%);
695
+ --notes-number-badge-top: -0.64rem;
696
+ --notes-number-badge-right: -0.38rem;
697
+ --notes-number-badge-size: 2.08rem;
698
+ --notes-number-base-font-size: 0.98rem;
699
+ --notes-number-step-font-size: 0.14rem;
700
+ --notes-action-rail-gap: 0.26rem;
695
701
  position: absolute;
696
702
  width: var(--note-width);
697
703
  height: var(--note-height);
@@ -890,30 +896,59 @@
890
896
  }
891
897
 
892
898
  .notes-note__number {
893
- display: inline-flex;
894
- align-items: center;
895
- min-width: 1.7rem;
896
- max-width: 3.2rem;
897
- padding: 0 0.38rem;
898
- border-radius: 0.42rem;
899
- border: 1px solid color-mix(in srgb, var(--notes-accent) 18%, var(--notes-border));
900
- background:
901
- linear-gradient(180deg, color-mix(in srgb, white 16%, transparent), transparent 70%),
902
- color-mix(in srgb, var(--background) 82%, transparent);
899
+ position: absolute;
900
+ top: var(--notes-number-badge-top);
901
+ right: var(--notes-number-badge-right);
902
+ z-index: 6;
903
+ display: grid;
904
+ place-items: center;
905
+ width: var(--notes-number-badge-size);
906
+ height: var(--notes-number-badge-size);
907
+ border-radius: 999px;
908
+ border: 1px solid color-mix(in srgb, var(--notes-ribbon) 78%, var(--foreground) 22%);
909
+ color: color-mix(in srgb, white 92%, var(--notes-accent) 8%);
910
+ pointer-events: none;
911
+ background: linear-gradient(180deg, color-mix(in srgb, white 16%, transparent), transparent 66%),
912
+ var(--notes-ribbon);
903
913
  box-shadow:
904
- 0 8px 18px color-mix(in srgb, var(--foreground) 7%, transparent),
905
- 0 1px 0 color-mix(in srgb, white 14%, transparent) inset;
914
+ 0 12px 22px color-mix(in srgb, var(--notes-ribbon) 22%, transparent),
915
+ 0 0 0 1px color-mix(in srgb, white 18%, transparent) inset;
916
+ transition:
917
+ transform 180ms cubic-bezier(0.22, 1, 0.36, 1),
918
+ border-color 180ms ease,
919
+ box-shadow 180ms ease,
920
+ filter 180ms ease;
906
921
  }
907
922
 
908
923
  .notes-note__number-key {
909
924
  width: 100%;
910
- color: color-mix(in srgb, var(--notes-title-ink) 78%, var(--notes-ink));
925
+ padding: 0 0.1rem;
926
+ color: inherit;
911
927
  font-family: var(--font-mono);
912
- font-size: 0.68rem;
913
- font-weight: 700;
914
- letter-spacing: 0.03em;
915
- line-height: 1.6rem;
928
+ font-size: clamp(
929
+ 0.42rem,
930
+ calc(
931
+ var(--notes-number-base-font-size) - (var(--notes-number-length, 1) - 1) *
932
+ var(--notes-number-step-font-size)
933
+ ),
934
+ var(--notes-number-base-font-size)
935
+ );
936
+ font-weight: 800;
937
+ font-variant-numeric: tabular-nums;
938
+ letter-spacing: -0.04em;
939
+ line-height: 1;
916
940
  text-align: center;
941
+ text-shadow: 0 1px 1px color-mix(in srgb, black 18%, transparent);
942
+ transform: translateY(-0.01em);
943
+ }
944
+
945
+ .notes-note:hover .notes-note__number,
946
+ .notes-note:focus-within .notes-note__number {
947
+ transform: translateY(-1px) scale(1.035);
948
+ box-shadow:
949
+ 0 14px 24px color-mix(in srgb, var(--notes-ribbon) 24%, transparent),
950
+ 0 0 0 1px color-mix(in srgb, white 20%, transparent) inset;
951
+ filter: saturate(1.03);
917
952
  }
918
953
 
919
954
  .notes-note.is-shortcut-pending .notes-note__surface {
@@ -926,39 +961,73 @@
926
961
 
927
962
  .notes-note.is-shortcut-pending .notes-note__number {
928
963
  border-color: color-mix(in srgb, var(--primary) 32%, var(--notes-border));
929
- background:
930
- linear-gradient(180deg, color-mix(in srgb, white 18%, transparent), transparent 72%),
931
- color-mix(in srgb, var(--primary) 10%, var(--background));
964
+ box-shadow:
965
+ 0 0 0 1px color-mix(in srgb, var(--primary) 22%, transparent),
966
+ 0 14px 26px color-mix(in srgb, var(--primary) 18%, transparent),
967
+ 0 0 0 1px color-mix(in srgb, white 22%, transparent) inset;
932
968
  animation: notes-shortcut-pending 650ms ease-in-out infinite;
933
969
  }
934
970
 
971
+ .notes-note.is-copied .notes-note__number {
972
+ border-color: color-mix(in srgb, var(--success) 48%, var(--notes-ribbon));
973
+ box-shadow:
974
+ 0 0 0 1px color-mix(in srgb, var(--success) 24%, transparent),
975
+ 0 14px 26px color-mix(in srgb, var(--success) 18%, transparent),
976
+ 0 0 0 1px color-mix(in srgb, white 22%, transparent) inset;
977
+ }
978
+
935
979
  .notes-note__actions {
980
+ position: absolute;
981
+ top: calc(
982
+ var(--notes-number-badge-top) + var(--notes-number-badge-size) + var(--notes-action-rail-gap)
983
+ );
984
+ right: var(--notes-number-badge-right);
985
+ z-index: 5;
936
986
  display: flex;
987
+ flex-direction: column;
937
988
  align-items: center;
938
- gap: 0.2rem;
989
+ gap: 0.22rem;
990
+ width: var(--notes-number-badge-size);
991
+ padding: 0.22rem 0;
992
+ border: 1px solid color-mix(in srgb, var(--notes-accent) 18%, var(--notes-border));
993
+ border-radius: 999px;
994
+ background: color-mix(in srgb, var(--background) 80%, transparent);
995
+ backdrop-filter: blur(12px);
996
+ box-shadow:
997
+ 0 14px 26px color-mix(in srgb, var(--foreground) 11%, transparent),
998
+ 0 0 0 1px color-mix(in srgb, white 16%, transparent) inset;
939
999
  opacity: 0;
940
- transform: translateY(-4px);
1000
+ pointer-events: none;
1001
+ transform: translateY(-6px) scale(0.92);
1002
+ transform-origin: top center;
941
1003
  transition:
942
1004
  opacity 160ms ease,
943
- transform 160ms ease;
1005
+ transform 160ms ease,
1006
+ box-shadow 160ms ease,
1007
+ border-color 160ms ease;
944
1008
  }
945
1009
 
946
1010
  .notes-note:hover .notes-note__actions,
947
1011
  .notes-note:focus-within .notes-note__actions,
948
1012
  .notes-note.is-copied .notes-note__actions {
949
1013
  opacity: 1;
1014
+ pointer-events: auto;
950
1015
  transform: translateY(0);
951
1016
  }
952
1017
 
953
1018
  .notes-note__icon-button {
954
- width: 1.6rem;
955
- height: 1.6rem;
956
- border-radius: 0.34rem;
957
- border: 1px solid transparent;
1019
+ width: calc(var(--notes-number-badge-size) - 0.52rem);
1020
+ height: calc(var(--notes-number-badge-size) - 0.52rem);
1021
+ cursor: pointer;
1022
+ border-radius: 999px;
1023
+ border: 1px solid color-mix(in srgb, var(--notes-accent) 14%, transparent);
1024
+ background: color-mix(in srgb, var(--background) 66%, transparent);
1025
+ box-shadow: 0 1px 0 color-mix(in srgb, white 12%, transparent) inset;
958
1026
  }
959
1027
 
960
1028
  .notes-note__icon-button:hover {
961
- border-color: color-mix(in srgb, var(--notes-accent) 24%, var(--border));
1029
+ border-color: color-mix(in srgb, var(--notes-accent) 30%, var(--border));
1030
+ background: color-mix(in srgb, var(--background) 78%, transparent);
962
1031
  }
963
1032
 
964
1033
  .notes-note__icon-button.is-danger:hover {
@@ -1023,13 +1092,12 @@
1023
1092
  .notes-note__title-block::before {
1024
1093
  bottom: -0.05rem;
1025
1094
  height: var(--notes-title-marker-soft-height);
1026
- background:
1027
- linear-gradient(
1028
- 180deg,
1029
- color-mix(in srgb, currentColor 28%, white 72%) 0%,
1030
- color-mix(in srgb, currentColor 42%, white 58%) 45%,
1031
- color-mix(in srgb, currentColor 24%, transparent) 100%
1032
- );
1095
+ background: linear-gradient(
1096
+ 180deg,
1097
+ color-mix(in srgb, currentColor 28%, white 72%) 0%,
1098
+ color-mix(in srgb, currentColor 42%, white 58%) 45%,
1099
+ color-mix(in srgb, currentColor 24%, transparent) 100%
1100
+ );
1033
1101
  opacity: 0.52;
1034
1102
  filter: blur(0.065rem);
1035
1103
  transform: translateX(0.015rem) rotate(-0.6deg);
@@ -1038,13 +1106,12 @@
1038
1106
  .notes-note__title-block::after {
1039
1107
  bottom: 0.01rem;
1040
1108
  height: var(--notes-title-marker-height);
1041
- background:
1042
- linear-gradient(
1043
- 180deg,
1044
- color-mix(in srgb, currentColor 52%, white 48%) 0%,
1045
- color-mix(in srgb, currentColor 88%, white 12%) 40%,
1046
- color-mix(in srgb, currentColor 76%, black 24%) 100%
1047
- );
1109
+ background: linear-gradient(
1110
+ 180deg,
1111
+ color-mix(in srgb, currentColor 52%, white 48%) 0%,
1112
+ color-mix(in srgb, currentColor 88%, white 12%) 40%,
1113
+ color-mix(in srgb, currentColor 76%, black 24%) 100%
1114
+ );
1048
1115
  opacity: 0.84;
1049
1116
  filter: saturate(0.94);
1050
1117
  transform: rotate(-0.95deg);
@@ -2460,6 +2527,11 @@
2460
2527
  --notes-border: color-mix(in srgb, var(--border) 78%, var(--notes-accent) 22%);
2461
2528
  --notes-ink: color-mix(in srgb, var(--card-foreground) 94%, var(--notes-accent) 6%);
2462
2529
  --notes-ribbon: color-mix(in srgb, var(--notes-accent) 78%, var(--foreground) 22%);
2530
+ --notes-number-badge-top: -0.52rem;
2531
+ --notes-number-badge-right: -0.32rem;
2532
+ --notes-number-badge-size: 1.9rem;
2533
+ --notes-number-base-font-size: 0.9rem;
2534
+ --notes-number-step-font-size: 0.12rem;
2463
2535
  }
2464
2536
 
2465
2537
  .notes-note__surface {
@@ -2514,20 +2586,13 @@
2514
2586
  }
2515
2587
 
2516
2588
  .notes-note__icon-button {
2517
- width: 1.56rem;
2518
- height: 1.56rem;
2519
- border-radius: 0.36rem;
2589
+ width: calc(var(--notes-number-badge-size) - 0.44rem);
2590
+ height: calc(var(--notes-number-badge-size) - 0.44rem);
2520
2591
  }
2521
2592
 
2522
2593
  .notes-note__number {
2523
- min-width: 1.62rem;
2524
- padding: 0 0.34rem;
2525
- border-radius: 0.38rem;
2526
- }
2527
-
2528
- .notes-note__number-key {
2529
- font-size: 0.64rem;
2530
- line-height: 1.46rem;
2594
+ top: var(--notes-number-badge-top);
2595
+ right: var(--notes-number-badge-right);
2531
2596
  }
2532
2597
 
2533
2598
  .notes-note__body {