@memorysmithapp/markdown-renderer 0.3.2 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/README.md +50 -4
  2. package/dist/Markdown.d.ts +6 -2
  3. package/dist/Markdown.js +126 -17
  4. package/dist/NoteActions.d.ts +9 -0
  5. package/dist/NoteActions.js +68 -0
  6. package/dist/NoteBody.d.ts +32 -2
  7. package/dist/NoteBody.js +74 -7
  8. package/dist/edit/AttachDialog.d.ts +23 -0
  9. package/dist/edit/AttachDialog.js +126 -0
  10. package/dist/edit/ContextMenu.d.ts +29 -0
  11. package/dist/edit/ContextMenu.js +95 -0
  12. package/dist/edit/LanguageControl.d.ts +19 -0
  13. package/dist/edit/LanguageControl.js +124 -0
  14. package/dist/edit/NoteEditor.d.ts +44 -0
  15. package/dist/edit/NoteEditor.js +520 -0
  16. package/dist/edit/SaveNoticeDialog.d.ts +15 -0
  17. package/dist/edit/SaveNoticeDialog.js +41 -0
  18. package/dist/edit/analyze.d.ts +150 -0
  19. package/dist/edit/analyze.js +268 -0
  20. package/dist/edit/blocks.d.ts +97 -0
  21. package/dist/edit/blocks.js +481 -0
  22. package/dist/edit/commands.d.ts +78 -0
  23. package/dist/edit/commands.js +257 -0
  24. package/dist/edit/frontmatter.d.ts +45 -0
  25. package/dist/edit/frontmatter.js +142 -0
  26. package/dist/edit/index.d.ts +5 -0
  27. package/dist/edit/index.js +7 -0
  28. package/dist/edit/live.d.ts +28 -0
  29. package/dist/edit/live.js +675 -0
  30. package/dist/edit/saves.d.ts +48 -0
  31. package/dist/edit/saves.js +73 -0
  32. package/dist/edit/table.d.ts +58 -0
  33. package/dist/edit/table.js +185 -0
  34. package/dist/file-types.d.ts +30 -0
  35. package/dist/file-types.js +70 -0
  36. package/dist/highlight.d.ts +21 -7
  37. package/dist/highlight.js +56 -7
  38. package/dist/host.d.ts +82 -3
  39. package/dist/host.js +16 -0
  40. package/dist/index.d.ts +6 -4
  41. package/dist/index.js +1 -0
  42. package/dist/mode-icons.d.ts +6 -0
  43. package/dist/mode-icons.js +11 -0
  44. package/dist/prism-grammars.d.ts +18 -0
  45. package/dist/prism-grammars.js +305 -0
  46. package/dist/remark-callouts.d.ts +6 -0
  47. package/dist/remark-callouts.js +2 -2
  48. package/dist/remark-ring.d.ts +5 -0
  49. package/dist/remark-ring.js +25 -15
  50. package/dist/slots.js +17 -1
  51. package/dist/strings.d.ts +129 -1
  52. package/dist/strings.js +127 -1
  53. package/dist/task-saves.d.ts +35 -0
  54. package/dist/task-saves.js +86 -0
  55. package/dist/theme.d.ts +47 -0
  56. package/dist/theme.js +2 -2
  57. package/package.json +14 -2
  58. package/structure.css +355 -0
  59. package/theme-default.css +1099 -0
package/theme-default.css CHANGED
@@ -137,6 +137,7 @@
137
137
  are the Lucide set the reference theme draws with; a theme names its own
138
138
  per family, as the icon properties, or draws them as elements. */
139
139
  --ms-icon-pencil: var(--markdown-icon-note, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.12 2.12 0 0 1 3 3L7 19l-4 1 1-4Z'/%3E%3C/svg%3E"));
140
+ --ms-icon-chevron: var(--markdown-icon-chevron, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"));
140
141
  --ms-icon-info: var(--markdown-icon-info, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 16v-4'/%3E%3Cpath d='M12 8h.01'/%3E%3C/svg%3E"));
141
142
  --ms-icon-clipboard: var(--markdown-icon-summary, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='8' y='2' width='8' height='4' rx='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3Cpath d='M8 11h8'/%3E%3Cpath d='M8 16h6'/%3E%3C/svg%3E"));
142
143
  --ms-icon-flame: var(--markdown-icon-tip, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.07-2.14-.22-4.05 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.15.43-2.29 1-3a2.5 2.5 0 0 0 2.5 2.5Z'/%3E%3C/svg%3E"));
@@ -588,6 +589,44 @@
588
589
  font-weight: 600;
589
590
  line-height: var(--ms-line-height-tight);
590
591
  }
592
+ /* A callout marked + or - folds (#83): its title is the control, with a
593
+ chevron at its end that turns as it opens; closed, the title alone shows. */
594
+ .markdown details.callout > summary.callout-title {
595
+ list-style: none;
596
+ cursor: pointer;
597
+ }
598
+ .markdown details.callout > summary.callout-title::-webkit-details-marker {
599
+ display: none;
600
+ }
601
+ .markdown details.callout > summary.callout-title::after {
602
+ content: '';
603
+ flex: 0 0 auto;
604
+ align-self: center;
605
+ width: 1em;
606
+ height: 1em;
607
+ margin-inline-start: auto;
608
+ background-color: currentcolor;
609
+ -webkit-mask: var(--ms-icon-chevron) center / contain no-repeat;
610
+ mask: var(--ms-icon-chevron) center / contain no-repeat;
611
+ transform: rotate(-90deg);
612
+ transition: transform 160ms ease;
613
+ }
614
+ .markdown details.callout[open] > summary.callout-title::after {
615
+ transform: none;
616
+ }
617
+ .markdown details.callout:not([open]) > summary.callout-title {
618
+ margin-bottom: 0;
619
+ }
620
+ .markdown details.callout > summary.callout-title:focus-visible {
621
+ outline: 2px solid rgb(var(--callout-color));
622
+ outline-offset: 2px;
623
+ border-radius: 4px;
624
+ }
625
+ @media (prefers-reduced-motion: reduce) {
626
+ .markdown details.callout > summary.callout-title::after {
627
+ transition: none;
628
+ }
629
+ }
591
630
  /* A link in the title is marked by more than its colour, which may be the
592
631
  title's own; a pending link keeps its dashed rule, and a footnote's number
593
632
  its own look. */
@@ -838,6 +877,61 @@
838
877
  border-bottom: 1px dashed var(--ms-text-soft);
839
878
  cursor: help;
840
879
  }
880
+ /* A file the notebook keeps, drawn by its type as MemorySmith draws it
881
+ (observed at 4b67c7e, #77): what a browser draws is drawn — an image, a
882
+ player — and everything else, the PDF included, is a card with what it is
883
+ and the ways out of the page. */
884
+ .markdown .attachment-image {
885
+ display: block;
886
+ max-width: 100%;
887
+ height: auto;
888
+ margin-block: var(--ms-p-spacing);
889
+ border-radius: 8px;
890
+ }
891
+ .markdown .attachment-player {
892
+ display: block;
893
+ width: 100%;
894
+ margin-block: var(--ms-p-spacing);
895
+ }
896
+ .markdown .attachment-card {
897
+ display: flex;
898
+ align-items: center;
899
+ justify-content: space-between;
900
+ flex-wrap: wrap;
901
+ gap: 0.75rem;
902
+ margin-block: var(--ms-p-spacing);
903
+ padding: 0.75rem 0.9rem;
904
+ border: 1px solid var(--ms-border);
905
+ border-inline-start: 2px solid var(--ms-accent);
906
+ border-radius: 8px;
907
+ }
908
+ .markdown .attachment-card-body {
909
+ display: flex;
910
+ flex-direction: column;
911
+ gap: 0.15rem;
912
+ min-width: 0;
913
+ }
914
+ .markdown .attachment-card-name {
915
+ font-family: var(--ms-font-display);
916
+ font-weight: 600;
917
+ overflow-wrap: anywhere;
918
+ }
919
+ .markdown .attachment-card-note {
920
+ font-size: 0.8rem;
921
+ color: var(--ms-text-soft);
922
+ overflow-wrap: anywhere;
923
+ }
924
+ .markdown .attachment-card-actions {
925
+ display: flex;
926
+ gap: 0.75rem;
927
+ flex-shrink: 0;
928
+ }
929
+ .markdown .attachment-card-actions a {
930
+ font-size: 0.85rem;
931
+ }
932
+ .markdown .attachment-loading {
933
+ color: var(--ms-text-soft);
934
+ }
841
935
  /* An address this surface does not follow. The text is the author's and stays
842
936
  exactly as they wrote it; what it loses is the affordance. The dotted rule
843
937
  is the only sign, and the title says why. */
@@ -950,6 +1044,70 @@
950
1044
  cursor: pointer;
951
1045
  }
952
1046
 
1047
+ /* The lock over an item whose tick is being saved: the item dimmed under a
1048
+ sweep of the accent, and "Updating…" in a pill at its right, breathing. */
1049
+ .markdown .task-lock {
1050
+ border-radius: 4px;
1051
+ background-color: color-mix(in srgb, var(--ms-bg) 55%, transparent);
1052
+ background-image: linear-gradient(
1053
+ 90deg,
1054
+ transparent 0%,
1055
+ color-mix(in srgb, var(--ms-accent) 14%, transparent) 50%,
1056
+ transparent 100%
1057
+ );
1058
+ background-size: 200% 100%;
1059
+ animation: markdown-task-sweep 1.2s linear infinite;
1060
+ }
1061
+ .markdown .task-lock-label,
1062
+ .markdown .task-notice {
1063
+ padding: 0.05rem 0.55rem;
1064
+ border-radius: 999px;
1065
+ font-size: 0.8rem;
1066
+ line-height: 1.5;
1067
+ white-space: nowrap;
1068
+ }
1069
+ .markdown .task-lock-label {
1070
+ border: 1px solid color-mix(in srgb, var(--ms-accent) 45%, transparent);
1071
+ background: var(--ms-surface);
1072
+ color: var(--ms-accent);
1073
+ animation: markdown-task-breathe 1.2s ease-in-out infinite;
1074
+ }
1075
+ /* A save that failed: the box is back, and this says so, then fades. */
1076
+ .markdown .task-notice {
1077
+ border: 1px solid rgba(var(--ms-callout-stop), 0.45);
1078
+ background: var(--ms-surface);
1079
+ color: rgb(var(--ms-callout-stop));
1080
+ animation: markdown-task-fade 2.5s ease-in forwards;
1081
+ }
1082
+ @keyframes markdown-task-sweep {
1083
+ from {
1084
+ background-position: 100% 0;
1085
+ }
1086
+ to {
1087
+ background-position: -100% 0;
1088
+ }
1089
+ }
1090
+ @keyframes markdown-task-breathe {
1091
+ 50% {
1092
+ opacity: 0.55;
1093
+ }
1094
+ }
1095
+ @keyframes markdown-task-fade {
1096
+ 0%,
1097
+ 70% {
1098
+ opacity: 1;
1099
+ }
1100
+ 100% {
1101
+ opacity: 0;
1102
+ }
1103
+ }
1104
+ @media (prefers-reduced-motion: reduce) {
1105
+ .markdown .task-lock,
1106
+ .markdown .task-lock-label {
1107
+ animation: none;
1108
+ }
1109
+ }
1110
+
953
1111
  /* ── Skeletons ──────────────────────────────────────────────────────────────
954
1112
  The shape of an embed that is coming, in the position it will occupy. */
955
1113
  .markdown .skeleton {
@@ -1012,3 +1170,944 @@
1012
1170
  background-image: none;
1013
1171
  }
1014
1172
  }
1173
+
1174
+ /* ── Edit mode ──────────────────────────────────────────────────────────────
1175
+ The note edited on the page that draws it: the same faces, sizes and
1176
+ colours as reading, with the notation the author is in shown dimmed, the
1177
+ blocks drawn as on the page, and the editor's own controls kept small and
1178
+ neutral so they never read as content. */
1179
+ .markdown .note-corner {
1180
+ margin: 0 0 0.5rem 1rem;
1181
+ }
1182
+ .markdown .mode-switch,
1183
+ .markdown .note-action {
1184
+ padding: 0.3rem 0.7rem;
1185
+ border: 1px solid var(--ms-border);
1186
+ border-radius: var(--ms-radius);
1187
+ background: var(--ms-surface);
1188
+ color: var(--ms-text);
1189
+ font-family: var(--ms-font-display);
1190
+ font-size: 0.85rem;
1191
+ font-weight: 500;
1192
+ line-height: 1.2;
1193
+ cursor: pointer;
1194
+ }
1195
+ .markdown .mode-switch.mode-switch-icon,
1196
+ .markdown .note-action {
1197
+ padding: 0.3rem 0.4rem;
1198
+ }
1199
+ .markdown .note-action {
1200
+ color: var(--ms-text-soft);
1201
+ }
1202
+ .markdown .note-action[data-copied='copied'] {
1203
+ color: var(--ms-accent);
1204
+ }
1205
+ .markdown .mode-switch-glyph {
1206
+ width: 1.1em;
1207
+ height: 1.1em;
1208
+ }
1209
+ .markdown .mode-switch:hover,
1210
+ .markdown .note-action:hover {
1211
+ border-color: var(--ms-accent);
1212
+ color: var(--ms-accent);
1213
+ }
1214
+ .markdown .mode-switch:focus-visible,
1215
+ .markdown .note-action:focus-visible,
1216
+ .markdown .edit-control:focus-visible,
1217
+ .markdown .edit-field:focus-visible {
1218
+ outline: 2px solid var(--ms-accent);
1219
+ outline-offset: 2px;
1220
+ }
1221
+ .markdown .edit-bar {
1222
+ margin: 0 0 1rem;
1223
+ background: var(--ms-bg);
1224
+ }
1225
+ /* The toolbar grows out of the switch, leftwards and down, and shrinks back
1226
+ into it when the note goes back to reading: its clip starts and ends on
1227
+ the corner that holds the switch, which the editor measures. */
1228
+ .markdown .edit-toolbar {
1229
+ padding: 0.35rem 0.4rem 0.35rem 0.15rem;
1230
+ border: 1px solid var(--ms-border);
1231
+ border-radius: var(--ms-radius);
1232
+ background: var(--ms-surface);
1233
+ animation: markdown-toolbar-grow 340ms cubic-bezier(0.4, 0, 0.2, 1);
1234
+ }
1235
+ .markdown .edit-bar[data-leaving] .edit-toolbar {
1236
+ animation: markdown-toolbar-shrink 260ms cubic-bezier(0.4, 0, 1, 1) forwards;
1237
+ }
1238
+ @keyframes markdown-toolbar-grow {
1239
+ from {
1240
+ clip-path: inset(0 0 calc(100% - var(--edit-corner-height, 100%)) calc(100% - var(--edit-corner-width, 100%)) round var(--ms-radius));
1241
+ }
1242
+ to {
1243
+ clip-path: inset(0 0 0 0 round var(--ms-radius));
1244
+ }
1245
+ }
1246
+ @keyframes markdown-toolbar-shrink {
1247
+ from {
1248
+ clip-path: inset(0 0 0 0 round var(--ms-radius));
1249
+ }
1250
+ to {
1251
+ clip-path: inset(0 0 calc(100% - var(--edit-corner-height, 100%)) calc(100% - var(--edit-corner-width, 100%)) round var(--ms-radius));
1252
+ }
1253
+ }
1254
+ @media (prefers-reduced-motion: reduce) {
1255
+ .markdown .edit-toolbar,
1256
+ .markdown .edit-bar[data-leaving] .edit-toolbar {
1257
+ animation: none;
1258
+ }
1259
+ }
1260
+ /* In the toolbar the group is its end, as tall as its other controls. */
1261
+ .markdown .edit-corner .note-corner {
1262
+ margin: 0;
1263
+ }
1264
+ .markdown .edit-corner .mode-switch,
1265
+ .markdown .edit-corner .note-action {
1266
+ height: 1.9rem;
1267
+ }
1268
+ @media (max-width: 560px) {
1269
+ .markdown .edit-corner {
1270
+ padding-bottom: 0.25rem;
1271
+ border-bottom: 1px solid var(--ms-border);
1272
+ }
1273
+ }
1274
+
1275
+ /* Where the save of the last change stands, before the switch: an icon for
1276
+ each state, the loader turning while the save is in flight. */
1277
+ .markdown .edit-save {
1278
+ padding: 0 0.35rem;
1279
+ color: var(--ms-text-soft);
1280
+ font-family: var(--ms-font-display);
1281
+ font-size: 0.78rem;
1282
+ line-height: 1.3;
1283
+ }
1284
+ .markdown .edit-save-icon {
1285
+ width: 1.25rem;
1286
+ height: 1.9rem;
1287
+ }
1288
+ .markdown .edit-save-icon > svg {
1289
+ width: 1rem;
1290
+ height: 1rem;
1291
+ }
1292
+ .markdown .edit-save[data-save='saving'] {
1293
+ color: var(--ms-accent);
1294
+ }
1295
+ .markdown .edit-save[data-save='saving'] .edit-save-icon > svg {
1296
+ animation: markdown-save-turn 0.9s linear infinite;
1297
+ }
1298
+ .markdown .edit-save[data-save='failed'] {
1299
+ color: rgb(var(--ms-callout-stop));
1300
+ }
1301
+ .markdown .edit-save[data-save='alert'] {
1302
+ color: rgb(var(--ms-callout-warn));
1303
+ }
1304
+ /* Asked to leave while the last save failed: the corner shakes once. */
1305
+ .markdown .edit-corner[data-blocked] {
1306
+ animation: markdown-corner-refuse 360ms ease-in-out;
1307
+ }
1308
+ @keyframes markdown-corner-refuse {
1309
+ 20%,
1310
+ 60% {
1311
+ transform: translateX(-3px);
1312
+ }
1313
+ 40%,
1314
+ 80% {
1315
+ transform: translateX(3px);
1316
+ }
1317
+ }
1318
+ /* The attach button while the host keeps a file, and when it could not. */
1319
+ .markdown .edit-control[data-attach='busy'] {
1320
+ color: var(--ms-accent);
1321
+ }
1322
+ .markdown .edit-control[data-attach='busy'] > svg {
1323
+ animation: markdown-save-turn 0.9s linear infinite;
1324
+ }
1325
+ .markdown .edit-control[data-attach='failed'] {
1326
+ color: rgb(var(--ms-callout-stop));
1327
+ }
1328
+ .markdown .edit-attach-progress {
1329
+ height: 2px;
1330
+ border-radius: 1px;
1331
+ background: linear-gradient(to right, var(--ms-accent) calc(var(--edit-attach-fraction, 0) * 100%), var(--ms-border) 0);
1332
+ }
1333
+ .markdown .edit-attach-refusal {
1334
+ padding: 0.6rem 1rem 0;
1335
+ }
1336
+ @media (prefers-reduced-motion: reduce) {
1337
+ .markdown .edit-control[data-attach='busy'] > svg {
1338
+ animation: none;
1339
+ }
1340
+ }
1341
+ @keyframes markdown-save-turn {
1342
+ to {
1343
+ transform: rotate(360deg);
1344
+ }
1345
+ }
1346
+ .markdown .edit-save-retry,
1347
+ .markdown .edit-save-notice {
1348
+ padding: 0;
1349
+ border: 0;
1350
+ border-radius: calc(var(--ms-radius) - 2px);
1351
+ background: none;
1352
+ color: inherit;
1353
+ cursor: pointer;
1354
+ }
1355
+ .markdown .edit-save-retry:hover,
1356
+ .markdown .edit-save-notice:hover {
1357
+ background: var(--ms-code-bg);
1358
+ }
1359
+ .markdown .edit-save-retry:focus-visible,
1360
+ .markdown .edit-save-notice:focus-visible {
1361
+ outline: 2px solid var(--ms-accent);
1362
+ outline-offset: 2px;
1363
+ }
1364
+ @media (prefers-reduced-motion: reduce) {
1365
+ .markdown .edit-save[data-save='saving'] .edit-save-icon > svg,
1366
+ .markdown .edit-corner[data-blocked] {
1367
+ animation: none;
1368
+ }
1369
+ }
1370
+
1371
+ /* A code block's language (#84): a quiet label until it is pointed at. */
1372
+ .markdown .edit-language-button {
1373
+ padding: 0.1rem 0.4rem;
1374
+ border: 1px solid transparent;
1375
+ border-radius: calc(var(--ms-radius) - 2px);
1376
+ background: none;
1377
+ color: var(--ms-text-soft);
1378
+ font-family: var(--ms-font-sans);
1379
+ font-size: 0.75rem;
1380
+ line-height: 1.4;
1381
+ cursor: pointer;
1382
+ }
1383
+ .markdown .edit-language-button:hover,
1384
+ .markdown .edit-language-button[aria-expanded='true'] {
1385
+ border-color: var(--ms-border);
1386
+ background: var(--ms-surface);
1387
+ color: var(--ms-text);
1388
+ }
1389
+ .markdown .edit-language-button:focus-visible {
1390
+ outline: 2px solid var(--ms-accent);
1391
+ outline-offset: 1px;
1392
+ }
1393
+ .markdown .edit-language-caret > svg {
1394
+ width: 0.8em;
1395
+ height: 0.8em;
1396
+ }
1397
+ .markdown .edit-language-popover {
1398
+ padding: 0.3rem;
1399
+ border: 1px solid var(--ms-border);
1400
+ border-radius: var(--ms-radius);
1401
+ background: var(--ms-surface);
1402
+ box-shadow: 0 0.75rem 2rem rgba(0, 0, 0, 0.18);
1403
+ font-family: var(--ms-font-sans);
1404
+ font-size: 0.85rem;
1405
+ }
1406
+ .markdown .edit-language-search {
1407
+ margin-bottom: 0.3rem;
1408
+ padding: 0.35rem 0.5rem;
1409
+ border: 1px solid var(--ms-border);
1410
+ border-radius: calc(var(--ms-radius) - 2px);
1411
+ background: var(--ms-bg);
1412
+ color: var(--ms-text);
1413
+ font: inherit;
1414
+ }
1415
+ .markdown .edit-language-search:focus-visible {
1416
+ outline: 2px solid var(--ms-accent);
1417
+ outline-offset: 0;
1418
+ }
1419
+ .markdown .edit-language-option {
1420
+ padding: 0.3rem 0.5rem;
1421
+ border-radius: calc(var(--ms-radius) - 2px);
1422
+ color: var(--ms-text);
1423
+ cursor: pointer;
1424
+ }
1425
+ .markdown .edit-language-option[data-active] {
1426
+ background: var(--ms-code-bg);
1427
+ }
1428
+ .markdown .edit-language-option[aria-selected='true'] {
1429
+ font-weight: 600;
1430
+ }
1431
+ .markdown .edit-language-hint,
1432
+ .markdown .edit-language-none {
1433
+ color: var(--ms-text-soft);
1434
+ font-size: 0.78rem;
1435
+ }
1436
+ .markdown .edit-language-none {
1437
+ padding: 0.3rem 0.5rem;
1438
+ }
1439
+
1440
+ /* The editing menu (#81): small and neutral, as the toolbar's controls. */
1441
+ .markdown .edit-menu {
1442
+ min-width: 15rem;
1443
+ padding: 0.3rem;
1444
+ border: 1px solid var(--ms-border);
1445
+ border-radius: var(--ms-radius);
1446
+ background: var(--ms-surface);
1447
+ color: var(--ms-text);
1448
+ box-shadow: 0 0.75rem 2rem rgba(0, 0, 0, 0.18);
1449
+ font-family: var(--ms-font-sans);
1450
+ font-size: 0.85rem;
1451
+ }
1452
+ .markdown .edit-menu-separator {
1453
+ height: 1px;
1454
+ margin: 0.3rem 0.2rem;
1455
+ background: var(--ms-border);
1456
+ }
1457
+ .markdown .edit-menu-heading {
1458
+ padding: 0.25rem 0.55rem 0.15rem;
1459
+ color: var(--ms-text-soft);
1460
+ font-family: var(--ms-font-display);
1461
+ font-size: 0.72rem;
1462
+ font-weight: 600;
1463
+ letter-spacing: 0.04em;
1464
+ text-transform: uppercase;
1465
+ }
1466
+ .markdown .edit-menu-item {
1467
+ gap: 0.6rem;
1468
+ padding: 0.35rem 0.55rem;
1469
+ border: 0;
1470
+ border-radius: calc(var(--ms-radius) - 2px);
1471
+ background: none;
1472
+ color: inherit;
1473
+ font: inherit;
1474
+ cursor: pointer;
1475
+ }
1476
+ .markdown .edit-menu-item:hover,
1477
+ .markdown .edit-menu-item:focus-visible {
1478
+ background: var(--ms-code-bg);
1479
+ outline: none;
1480
+ }
1481
+ .markdown .edit-menu-item:focus-visible {
1482
+ box-shadow: inset 0 0 0 2px var(--ms-accent);
1483
+ }
1484
+ .markdown .edit-menu-item[aria-disabled='true'] {
1485
+ opacity: 0.45;
1486
+ cursor: default;
1487
+ }
1488
+ .markdown .edit-menu-icon {
1489
+ display: inline-flex;
1490
+ color: var(--ms-text-soft);
1491
+ }
1492
+ .markdown .edit-menu-shortcut {
1493
+ color: var(--ms-text-soft);
1494
+ font-size: 0.75rem;
1495
+ }
1496
+
1497
+ /* The attach dialog (#78), in the look of the dialog of the Markdown. */
1498
+ .markdown .edit-attach-ways {
1499
+ gap: 0.25rem;
1500
+ padding: 0 1rem;
1501
+ border-bottom: 1px solid var(--ms-border);
1502
+ }
1503
+ .markdown .edit-attach-way {
1504
+ margin-bottom: -1px;
1505
+ padding: 0.55rem 0.75rem;
1506
+ border: 0;
1507
+ border-bottom: 2px solid transparent;
1508
+ background: none;
1509
+ color: var(--ms-text-soft);
1510
+ font: inherit;
1511
+ font-family: var(--ms-font-display);
1512
+ font-size: 0.85rem;
1513
+ font-weight: 500;
1514
+ cursor: pointer;
1515
+ }
1516
+ .markdown .edit-attach-way[aria-selected='true'] {
1517
+ border-bottom-color: var(--ms-accent);
1518
+ color: var(--ms-text);
1519
+ }
1520
+ .markdown .edit-attach-panel {
1521
+ padding: 1rem;
1522
+ }
1523
+ .markdown .edit-attach-form,
1524
+ .markdown .edit-attach-files {
1525
+ gap: 0.75rem;
1526
+ }
1527
+ .markdown .edit-attach-form label {
1528
+ gap: 0.25rem;
1529
+ color: var(--ms-text-soft);
1530
+ font-size: 0.8rem;
1531
+ }
1532
+ .markdown .edit-attach-input {
1533
+ padding: 0.4rem 0.55rem;
1534
+ border: 1px solid var(--ms-border);
1535
+ border-radius: calc(var(--ms-radius) - 2px);
1536
+ background: var(--ms-bg);
1537
+ color: var(--ms-text);
1538
+ font: inherit;
1539
+ font-size: 0.9rem;
1540
+ }
1541
+ .markdown .edit-attach-input:focus-visible,
1542
+ .markdown .edit-attach-way:focus-visible,
1543
+ .markdown .edit-attach-item:focus-visible,
1544
+ .markdown .edit-attach-button:focus-visible {
1545
+ outline: 2px solid var(--ms-accent);
1546
+ outline-offset: 1px;
1547
+ }
1548
+ .markdown .edit-attach-input[aria-invalid='true'] {
1549
+ border-color: rgb(var(--ms-callout-stop));
1550
+ }
1551
+ .markdown .edit-attach-error {
1552
+ margin: 0;
1553
+ color: rgb(var(--ms-callout-stop));
1554
+ font-size: 0.8rem;
1555
+ }
1556
+ .markdown .edit-attach-button {
1557
+ display: inline-flex;
1558
+ align-items: center;
1559
+ align-self: flex-start;
1560
+ gap: 0.4rem;
1561
+ padding: 0.45rem 0.8rem;
1562
+ border: 1px solid var(--ms-border);
1563
+ border-radius: var(--ms-radius);
1564
+ background: var(--ms-surface);
1565
+ color: var(--ms-text);
1566
+ font: inherit;
1567
+ font-family: var(--ms-font-display);
1568
+ font-size: 0.85rem;
1569
+ font-weight: 500;
1570
+ cursor: pointer;
1571
+ }
1572
+ .markdown .edit-attach-primary {
1573
+ border-color: var(--ms-accent);
1574
+ background: var(--ms-accent);
1575
+ color: #fff;
1576
+ }
1577
+ .markdown .edit-attach-button:disabled {
1578
+ opacity: 0.45;
1579
+ cursor: default;
1580
+ }
1581
+ .markdown .edit-attach-file {
1582
+ gap: 0.5rem 0.75rem;
1583
+ margin: 0;
1584
+ padding: 0.6rem 0.75rem 0.75rem;
1585
+ border: 1px solid var(--ms-border);
1586
+ border-radius: var(--ms-radius);
1587
+ }
1588
+ .markdown .edit-attach-file-kind {
1589
+ padding: 0 0.25rem;
1590
+ color: var(--ms-text-soft);
1591
+ font-size: 0.78rem;
1592
+ }
1593
+ .markdown .edit-attach-list {
1594
+ display: flex;
1595
+ flex-direction: column;
1596
+ gap: 0.25rem;
1597
+ }
1598
+ .markdown .edit-attach-item {
1599
+ gap: 0.75rem;
1600
+ padding: 0.45rem 0.55rem;
1601
+ border: 1px solid transparent;
1602
+ border-radius: var(--ms-radius);
1603
+ background: none;
1604
+ color: var(--ms-text);
1605
+ font: inherit;
1606
+ cursor: pointer;
1607
+ }
1608
+ .markdown .edit-attach-item:hover {
1609
+ border-color: var(--ms-border);
1610
+ background: var(--ms-code-bg);
1611
+ }
1612
+ .markdown .edit-attach-preview {
1613
+ width: 3rem;
1614
+ height: 2.25rem;
1615
+ border-radius: 6px;
1616
+ background: var(--ms-code-bg);
1617
+ color: var(--ms-text-soft);
1618
+ }
1619
+ .markdown .edit-attach-item-name {
1620
+ font-family: var(--ms-font-display);
1621
+ font-weight: 600;
1622
+ overflow-wrap: anywhere;
1623
+ }
1624
+ .markdown .edit-attach-item-note,
1625
+ .markdown .edit-attach-note {
1626
+ color: var(--ms-text-soft);
1627
+ font-size: 0.8rem;
1628
+ overflow-wrap: anywhere;
1629
+ }
1630
+ .markdown .edit-attach-note {
1631
+ margin: 0;
1632
+ }
1633
+
1634
+ /* The note's Markdown, over the page. */
1635
+ .markdown .edit-source {
1636
+ border: 1px solid var(--ms-border);
1637
+ border-radius: var(--ms-radius);
1638
+ background: var(--ms-surface);
1639
+ color: var(--ms-text);
1640
+ box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.25);
1641
+ }
1642
+ .markdown .edit-source::backdrop {
1643
+ background: rgba(0, 0, 0, 0.35);
1644
+ }
1645
+ .markdown .edit-source-header {
1646
+ padding: 0.6rem 0.75rem 0.6rem 1rem;
1647
+ border-bottom: 1px solid var(--ms-border);
1648
+ }
1649
+ .markdown .edit-source-title {
1650
+ font-family: var(--ms-font-display);
1651
+ font-size: 1rem;
1652
+ font-weight: 600;
1653
+ }
1654
+ /* What the host said of a save: the dialog's own size, whatever the toolbar it opens from. */
1655
+ .markdown .edit-notice {
1656
+ font-family: var(--ms-font-sans);
1657
+ font-size: 0.95rem;
1658
+ line-height: 1.55;
1659
+ }
1660
+ .markdown .edit-notice-message {
1661
+ padding: 1rem 1rem 0;
1662
+ }
1663
+ .markdown .edit-notice-actions {
1664
+ gap: 0.5rem;
1665
+ padding: 1rem;
1666
+ }
1667
+ .markdown .edit-source-copied {
1668
+ color: var(--ms-text-soft);
1669
+ font-size: 0.8rem;
1670
+ }
1671
+ .markdown .edit-source-text {
1672
+ padding: 1rem;
1673
+ background: var(--ms-code-bg);
1674
+ font-family: var(--ms-font-mono);
1675
+ font-size: 0.85rem;
1676
+ line-height: 1.55;
1677
+ }
1678
+ /* Every group draws its separator on its left edge and overlaps the group
1679
+ before it by that rule's width; the tools clip their own left edge, so the
1680
+ separator of a group that starts a row — the first one's too — is cut away
1681
+ and every row starts at the same place, with no script (#80). */
1682
+ .markdown .edit-toolbar-tools {
1683
+ column-gap: 0;
1684
+ clip-path: inset(-0.5rem -0.5rem -0.5rem 0);
1685
+ }
1686
+ .markdown .edit-toolbar-group {
1687
+ margin-inline-start: -1px;
1688
+ padding-inline: 0.25rem;
1689
+ border-inline-start: 1px solid var(--ms-border);
1690
+ }
1691
+ .markdown .edit-control {
1692
+ min-width: 1.9rem;
1693
+ height: 1.9rem;
1694
+ padding: 0 0.35rem;
1695
+ border: 1px solid transparent;
1696
+ border-radius: calc(var(--ms-radius) - 2px);
1697
+ background: none;
1698
+ color: var(--ms-text-soft);
1699
+ font: inherit;
1700
+ font-size: 0.85rem;
1701
+ cursor: pointer;
1702
+ }
1703
+ .markdown .edit-control:hover:not(:disabled),
1704
+ .markdown .edit-control[aria-pressed='true'] {
1705
+ background: var(--ms-code-bg);
1706
+ color: var(--ms-text);
1707
+ }
1708
+ .markdown .edit-control:disabled {
1709
+ opacity: 0.45;
1710
+ cursor: default;
1711
+ }
1712
+ .markdown .edit-control-labelled {
1713
+ gap: 0.35rem;
1714
+ }
1715
+ .markdown .edit-toolbar select,
1716
+ .markdown .edit-block-controls select {
1717
+ height: 1.9rem;
1718
+ padding: 0 0.3rem;
1719
+ border: 1px solid var(--ms-border);
1720
+ border-radius: calc(var(--ms-radius) - 2px);
1721
+ background: var(--ms-surface);
1722
+ color: var(--ms-text);
1723
+ font: inherit;
1724
+ font-size: 0.8rem;
1725
+ }
1726
+ .markdown .edit-unavailable {
1727
+ margin: 0 0 1rem;
1728
+ color: var(--ms-text-soft);
1729
+ font-size: 0.85rem;
1730
+ }
1731
+
1732
+ /* The text: the line height of a run, and the caret in the accent. */
1733
+ .markdown .markdown-editor .cm-content {
1734
+ padding: 0;
1735
+ font-family: var(--ms-font-sans);
1736
+ line-height: var(--ms-line-height-normal);
1737
+ caret-color: var(--ms-accent);
1738
+ }
1739
+ .markdown .markdown-editor .cm-line {
1740
+ padding: 0;
1741
+ }
1742
+ .markdown .markdown-editor .cm-cursor {
1743
+ border-left-color: var(--ms-accent);
1744
+ }
1745
+ .markdown .markdown-editor .cm-selectionBackground,
1746
+ .markdown .markdown-editor .cm-focused .cm-selectionBackground {
1747
+ background: color-mix(in srgb, var(--ms-accent) 22%, transparent);
1748
+ }
1749
+ .markdown .cm-ms-syntax {
1750
+ color: var(--ms-text-soft);
1751
+ opacity: 0.75;
1752
+ font-weight: normal;
1753
+ font-style: normal;
1754
+ }
1755
+ .markdown .cm-ms-heading {
1756
+ font-family: var(--ms-font-heading);
1757
+ font-weight: var(--ms-heading-weight);
1758
+ color: var(--ms-heading-color);
1759
+ line-height: var(--ms-line-height-tight);
1760
+ padding-top: 0.6em;
1761
+ }
1762
+ .markdown .cm-ms-h1 {
1763
+ font-size: var(--ms-h1-size);
1764
+ font-weight: var(--ms-h1-weight);
1765
+ }
1766
+ .markdown .cm-ms-h2 {
1767
+ font-size: var(--ms-h2-size);
1768
+ }
1769
+ .markdown .cm-ms-h3 {
1770
+ font-size: var(--ms-h3-size);
1771
+ }
1772
+ .markdown .cm-ms-h4 {
1773
+ font-size: var(--ms-h4-size);
1774
+ }
1775
+ .markdown .cm-ms-h5 {
1776
+ font-size: var(--ms-h5-size);
1777
+ }
1778
+ .markdown .cm-ms-h6 {
1779
+ font-size: var(--ms-h6-size);
1780
+ color: var(--ms-h6-color);
1781
+ }
1782
+ .markdown .cm-ms-strong {
1783
+ font-weight: 700;
1784
+ }
1785
+ .markdown .cm-ms-em {
1786
+ font-style: italic;
1787
+ }
1788
+ .markdown .cm-ms-strike {
1789
+ text-decoration: line-through;
1790
+ }
1791
+ .markdown .cm-ms-highlight {
1792
+ /* What the page draws for marked text: the browser's own <mark>. */
1793
+ background: mark;
1794
+ color: marktext;
1795
+ }
1796
+ .markdown .cm-ms-code {
1797
+ font-family: var(--ms-font-mono);
1798
+ font-size: 0.875em;
1799
+ color: var(--ms-code-color);
1800
+ background: var(--ms-inline-code-bg);
1801
+ }
1802
+ .markdown .cm-ms-link,
1803
+ .markdown .cm-ms-wikilink {
1804
+ color: var(--ms-accent);
1805
+ cursor: text;
1806
+ }
1807
+ .markdown .cm-ms-wikilink {
1808
+ font-weight: 600;
1809
+ }
1810
+ .markdown .cm-ms-wikilink.cm-ms-pending {
1811
+ color: var(--ms-pending);
1812
+ border-bottom: 1px dashed var(--ms-pending);
1813
+ }
1814
+ .markdown .cm-ms-bullet {
1815
+ display: inline-block;
1816
+ width: 1em;
1817
+ color: var(--ms-text-soft);
1818
+ }
1819
+ .markdown .cm-ms-list-marker {
1820
+ color: var(--ms-text-soft);
1821
+ }
1822
+ .markdown .cm-ms-task {
1823
+ margin: 0 0.45em 0 0;
1824
+ vertical-align: middle;
1825
+ accent-color: var(--ms-accent);
1826
+ cursor: pointer;
1827
+ }
1828
+ .markdown .cm-ms-task-done {
1829
+ color: var(--ms-text-soft);
1830
+ }
1831
+ .markdown .cm-ms-quote {
1832
+ padding-inline-start: 1.5em !important;
1833
+ border-inline-start: var(--ms-quote-border-width) solid var(--ms-quote-border-color);
1834
+ color: var(--ms-quote-color);
1835
+ }
1836
+ .markdown .cm-ms-quote-2 {
1837
+ box-shadow: inset calc(var(--ms-quote-border-width) + 0.6em) 0 0 -0.6em var(--ms-quote-border-color);
1838
+ }
1839
+ .markdown .cm-ms-code-line,
1840
+ .markdown .cm-ms-yaml,
1841
+ .markdown .cm-ms-table-source,
1842
+ .markdown .cm-ms-callout-source {
1843
+ font-family: var(--ms-font-mono);
1844
+ font-size: 0.875em;
1845
+ background: var(--ms-code-bg);
1846
+ padding: 0 1rem !important;
1847
+ }
1848
+ .markdown .cm-ms-code-line {
1849
+ border-inline: 1px solid var(--ms-code-border);
1850
+ }
1851
+ .markdown .cm-ms-code-first {
1852
+ border-top: 1px solid var(--ms-code-border);
1853
+ border-start-start-radius: var(--ms-radius);
1854
+ border-start-end-radius: var(--ms-radius);
1855
+ padding-top: 0.5rem !important;
1856
+ }
1857
+ .markdown .cm-ms-code-last {
1858
+ border-bottom: 1px solid var(--ms-code-border);
1859
+ border-end-start-radius: var(--ms-radius);
1860
+ border-end-end-radius: var(--ms-radius);
1861
+ padding-bottom: 0.5rem !important;
1862
+ }
1863
+ .markdown .cm-ms-callout-source {
1864
+ border-inline-start: 3px solid color-mix(in srgb, var(--ms-accent) 60%, transparent);
1865
+ }
1866
+ .markdown .cm-ms-math-source {
1867
+ font-family: var(--ms-font-mono);
1868
+ font-size: 0.875em;
1869
+ }
1870
+ .markdown .cm-ms-math-block {
1871
+ padding: 0.5rem 0;
1872
+ text-align: center;
1873
+ cursor: text;
1874
+ }
1875
+ .markdown .cm-ms-rule hr {
1876
+ margin: 0.75rem 0;
1877
+ border: 0;
1878
+ border-top: 1px solid var(--ms-border);
1879
+ }
1880
+ .markdown .cm-ms-footnote-ref {
1881
+ vertical-align: super;
1882
+ font-size: 0.75em;
1883
+ color: var(--ms-accent);
1884
+ }
1885
+ .markdown .cm-ms-footnote-def {
1886
+ color: var(--ms-text-soft);
1887
+ font-size: 0.9em;
1888
+ }
1889
+ /* A comment is not on the page, so in edit mode it reads as a margin note. */
1890
+ .markdown .cm-ms-comment {
1891
+ color: var(--ms-text-soft);
1892
+ font-style: italic;
1893
+ background: color-mix(in srgb, var(--ms-text-soft) 12%, transparent);
1894
+ border-radius: 2px;
1895
+ }
1896
+ .markdown .cm-ms-block-id {
1897
+ color: var(--ms-text-soft);
1898
+ font-family: var(--ms-font-mono);
1899
+ font-size: 0.75em;
1900
+ }
1901
+ .markdown .cm-ms-raw {
1902
+ font-family: var(--ms-font-mono);
1903
+ font-size: 0.875em;
1904
+ color: var(--ms-text-soft);
1905
+ }
1906
+
1907
+ /* A drawn block answers the pointer by showing it can be opened as source;
1908
+ its controls appear when it is pointed at or holds the focus. */
1909
+ .markdown .cm-ms-block {
1910
+ border-radius: var(--ms-radius);
1911
+ cursor: text;
1912
+ }
1913
+ .markdown .cm-ms-block:hover {
1914
+ box-shadow: 0 0 0 1px var(--ms-border);
1915
+ }
1916
+ .markdown .edit-block-controls {
1917
+ opacity: 0;
1918
+ padding: 0.1rem;
1919
+ border: 1px solid var(--ms-border);
1920
+ border-radius: var(--ms-radius);
1921
+ background: var(--ms-surface);
1922
+ transition: opacity 0.12s;
1923
+ }
1924
+ .markdown .cm-ms-block:hover .edit-block-controls,
1925
+ .markdown .edit-block:focus-within .edit-block-controls {
1926
+ opacity: 1;
1927
+ }
1928
+ .markdown .edit-table table {
1929
+ width: 100%;
1930
+ }
1931
+ .markdown .edit-cell {
1932
+ outline: none;
1933
+ }
1934
+ .markdown .edit-cell-drawn {
1935
+ cursor: text;
1936
+ }
1937
+ .markdown .edit-cell-drawn .markdown,
1938
+ .markdown .edit-cell-drawn p {
1939
+ display: inline;
1940
+ margin: 0;
1941
+ }
1942
+ .markdown .edit-cell:focus {
1943
+ box-shadow: 0 0 0 2px var(--ms-accent);
1944
+ border-radius: 2px;
1945
+ }
1946
+
1947
+ /* The properties as a form: the fields look like the values they hold until
1948
+ they are pointed at, so the form reads as the page. */
1949
+ .markdown .edit-properties {
1950
+ padding-top: 0.25rem;
1951
+ }
1952
+ .markdown .edit-field {
1953
+ width: 100%;
1954
+ min-width: 0;
1955
+ padding: 0.05rem 0.3rem;
1956
+ border: 1px solid transparent;
1957
+ border-radius: calc(var(--ms-radius) - 3px);
1958
+ background: none;
1959
+ color: inherit;
1960
+ font: inherit;
1961
+ }
1962
+ .markdown .edit-field:hover,
1963
+ .markdown .edit-field:focus {
1964
+ border-color: var(--ms-border);
1965
+ background: var(--ms-surface);
1966
+ }
1967
+ .markdown .edit-field::placeholder {
1968
+ color: var(--ms-pending);
1969
+ }
1970
+ .markdown .edit-title {
1971
+ display: block;
1972
+ margin: 0 0 0.6rem;
1973
+ padding: 0;
1974
+ font-family: var(--ms-title-font);
1975
+ font-size: var(--ms-title-size);
1976
+ font-weight: var(--ms-title-weight);
1977
+ line-height: var(--ms-line-height-tight);
1978
+ color: var(--ms-title-color);
1979
+ }
1980
+ .markdown .edit-key {
1981
+ width: auto;
1982
+ color: var(--ms-properties-key-color);
1983
+ }
1984
+ .markdown .edit-field[type='date'] {
1985
+ width: auto;
1986
+ }
1987
+ .markdown .edit-property .metadata-property-value {
1988
+ display: flex;
1989
+ align-items: center;
1990
+ gap: 0.25rem;
1991
+ }
1992
+ .markdown .edit-property .edit-control {
1993
+ min-width: 1.5rem;
1994
+ height: 1.5rem;
1995
+ opacity: 0;
1996
+ }
1997
+ /* A property's remove button, before its name, shows always (#73). */
1998
+ .markdown .edit-property .metadata-property-key .edit-control {
1999
+ opacity: 1;
2000
+ }
2001
+ .markdown .edit-key-spacer {
2002
+ flex: none;
2003
+ visibility: hidden;
2004
+ }
2005
+ /* A property's controls show on hover or focus; the row that adds one and a
2006
+ list's button for its next item show always. */
2007
+ .markdown .edit-property:hover .edit-control,
2008
+ .markdown .edit-property:focus-within .edit-control,
2009
+ .markdown .edit-property-new .edit-control,
2010
+ .markdown .edit-property .edit-list .edit-control {
2011
+ opacity: 1;
2012
+ }
2013
+ /* The key holds the property: the choice of its type, laid over the icon of
2014
+ its type and opening there, its name, and the button that removes it. */
2015
+ .markdown .edit-property .metadata-property-key {
2016
+ position: relative;
2017
+ align-items: center;
2018
+ }
2019
+ .markdown .edit-type {
2020
+ position: absolute;
2021
+ left: -0.25em;
2022
+ top: 50%;
2023
+ /* From before the icon to just past the chevron, short of the remove button. */
2024
+ width: calc(1.95em + 0.15rem + 2px);
2025
+ height: 1.6em;
2026
+ margin: 0;
2027
+ padding: 0;
2028
+ transform: translateY(-50%);
2029
+ -webkit-appearance: none;
2030
+ appearance: none;
2031
+ border: 1px solid transparent;
2032
+ border-radius: 4px;
2033
+ background: transparent;
2034
+ color: transparent;
2035
+ font: inherit;
2036
+ cursor: pointer;
2037
+ }
2038
+ .markdown .edit-type:hover {
2039
+ border-color: var(--ms-border);
2040
+ }
2041
+ .markdown .edit-type:focus-visible {
2042
+ outline: 2px solid var(--ms-accent);
2043
+ outline-offset: 1px;
2044
+ }
2045
+ .markdown .edit-type-caret {
2046
+ display: inline-flex;
2047
+ flex: none;
2048
+ margin-inline-start: -0.25rem;
2049
+ pointer-events: none;
2050
+ }
2051
+ .markdown .edit-type-caret > svg {
2052
+ width: 0.75em;
2053
+ height: 0.75em;
2054
+ }
2055
+ .markdown .edit-type option {
2056
+ background: var(--ms-surface);
2057
+ color: var(--ms-text);
2058
+ }
2059
+ .markdown .edit-list {
2060
+ align-items: center;
2061
+ flex: 1 1 auto;
2062
+ }
2063
+ .markdown .edit-list-add {
2064
+ width: 6rem;
2065
+ flex: 0 1 8rem;
2066
+ min-width: 4rem;
2067
+ }
2068
+ .markdown .edit-chip-remove {
2069
+ margin-inline-start: 0.3rem;
2070
+ padding: 0;
2071
+ border: 0;
2072
+ background: none;
2073
+ color: inherit;
2074
+ font: inherit;
2075
+ cursor: pointer;
2076
+ opacity: 0.6;
2077
+ }
2078
+ .markdown .edit-chip-remove:hover {
2079
+ opacity: 1;
2080
+ }
2081
+ .markdown .edit-boolean {
2082
+ margin: 0 0 0 -0.3rem;
2083
+ padding: 0.05rem 0.3rem;
2084
+ border: 1px solid transparent;
2085
+ border-radius: var(--ms-radius);
2086
+ background: transparent;
2087
+ color: inherit;
2088
+ font: inherit;
2089
+ cursor: pointer;
2090
+ }
2091
+ .markdown .edit-boolean:hover {
2092
+ border-color: var(--ms-border);
2093
+ }
2094
+ .markdown .edit-add-properties {
2095
+ margin: 0 0 0.75rem;
2096
+ }
2097
+
2098
+ /* What the editor suggests after `[[`: a list on the surface. */
2099
+ .markdown .cm-tooltip-autocomplete {
2100
+ border: 1px solid var(--ms-border);
2101
+ border-radius: var(--ms-radius);
2102
+ background: var(--ms-surface);
2103
+ color: var(--ms-text);
2104
+ font-family: var(--ms-font-sans);
2105
+ font-size: 0.875rem;
2106
+ }
2107
+ .markdown .cm-tooltip-autocomplete > ul {
2108
+ font-family: var(--ms-font-sans);
2109
+ }
2110
+ .markdown .cm-tooltip-autocomplete li[aria-selected] {
2111
+ background: color-mix(in srgb, var(--ms-accent) 18%, transparent);
2112
+ color: var(--ms-text);
2113
+ }