@mikedown/core 0.3.0 → 0.4.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.
- package/CHANGELOG.md +12 -1
- package/README.md +1 -1
- package/dist/ai/engines-page.d.ts +11 -4
- package/dist/ai/engines-page.js +5 -4
- package/dist/ai/index.d.ts +1201 -10
- package/dist/ai/index.js +297 -8
- package/dist/{ai-ui-C7ENTWWU.js → ai-ui-QFYFN73D.js} +3165 -138
- package/dist/ai-ui-QFYFN73D.js.map +1 -0
- package/dist/{chunk-QDVY7WW6.js → chunk-APPBNQEY.js} +53 -2
- package/dist/chunk-APPBNQEY.js.map +1 -0
- package/dist/{chunk-7A5HEPLK.js → chunk-DWXGWVA3.js} +850 -12
- package/dist/chunk-DWXGWVA3.js.map +1 -0
- package/dist/{chunk-JZWKEBCI.js → chunk-IWCXWUWW.js} +3260 -201
- package/dist/chunk-IWCXWUWW.js.map +1 -0
- package/dist/{chunk-LXZG7IKN.js → chunk-N4N54LK2.js} +2 -2
- package/dist/chunk-N4N54LK2.js.map +1 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.js +399 -38
- package/dist/index.js.map +1 -1
- package/dist/schema-DVfssxQX.d.ts +100 -0
- package/dist/styles.css +943 -4
- package/dist/{types-CsVNVSNY.d.ts → types-2TZErbJr.d.ts} +25 -3
- package/dist/{types-CgEeIUhi.d.ts → types-DO8UBybZ.d.ts} +316 -7
- package/package.json +1 -1
- package/dist/ai-ui-C7ENTWWU.js.map +0 -1
- package/dist/chunk-7A5HEPLK.js.map +0 -1
- package/dist/chunk-JZWKEBCI.js.map +0 -1
- package/dist/chunk-LXZG7IKN.js.map +0 -1
- package/dist/chunk-QDVY7WW6.js.map +0 -1
- package/dist/schema-DYzxkuSb.d.ts +0 -46
package/dist/styles.css
CHANGED
|
@@ -913,7 +913,7 @@
|
|
|
913
913
|
:is(.mikedown-root, .mikedown-portal) #editor h3 { font-size: 1.25em; }
|
|
914
914
|
:is(.mikedown-root, .mikedown-portal) #editor h4 { font-size: 1.1em; }
|
|
915
915
|
:is(.mikedown-root, .mikedown-portal) #editor h5 { font-size: 1em; }
|
|
916
|
-
:is(.mikedown-root, .mikedown-portal) #editor h6 { font-size: 0.9em;
|
|
916
|
+
:is(.mikedown-root, .mikedown-portal) #editor h6 { font-size: 0.9em; }
|
|
917
917
|
|
|
918
918
|
:is(.mikedown-root, .mikedown-portal) #editor p {
|
|
919
919
|
margin-bottom: 1em;
|
|
@@ -1025,6 +1025,35 @@
|
|
|
1025
1025
|
opacity: 0.7;
|
|
1026
1026
|
}
|
|
1027
1027
|
|
|
1028
|
+
/* Inline AI suggestion: inherits the text it continues, only dimmer. A widget
|
|
1029
|
+
decoration, never part of the document. No box of its own, so showing it
|
|
1030
|
+
moves nothing but what wraps after it. */
|
|
1031
|
+
:is(.mikedown-root, .mikedown-portal) .ProseMirror .mikedown-ghost {
|
|
1032
|
+
display: inline;
|
|
1033
|
+
opacity: 0.55;
|
|
1034
|
+
pointer-events: none;
|
|
1035
|
+
-webkit-user-select: none;
|
|
1036
|
+
user-select: none;
|
|
1037
|
+
animation: mikedown-ghost-in 120ms ease-out both;
|
|
1038
|
+
}
|
|
1039
|
+
|
|
1040
|
+
@keyframes mikedown-ghost-in {
|
|
1041
|
+
from { opacity: 0; }
|
|
1042
|
+
to { opacity: 0.55; }
|
|
1043
|
+
}
|
|
1044
|
+
|
|
1045
|
+
@media (prefers-reduced-motion: reduce) {
|
|
1046
|
+
:is(.mikedown-root, .mikedown-portal) .ProseMirror .mikedown-ghost {
|
|
1047
|
+
animation: none;
|
|
1048
|
+
}
|
|
1049
|
+
}
|
|
1050
|
+
|
|
1051
|
+
@media print {
|
|
1052
|
+
:is(.mikedown-root, .mikedown-portal) .ProseMirror .mikedown-ghost {
|
|
1053
|
+
display: none;
|
|
1054
|
+
}
|
|
1055
|
+
}
|
|
1056
|
+
|
|
1028
1057
|
/* ─── Headings ────────────────────────────────────────────────────────────── */
|
|
1029
1058
|
|
|
1030
1059
|
:is(.mikedown-root, .mikedown-portal) .ProseMirror h1 {
|
|
@@ -1072,10 +1101,7 @@
|
|
|
1072
1101
|
}
|
|
1073
1102
|
|
|
1074
1103
|
:is(.mikedown-root, .mikedown-portal) .ProseMirror h6 {
|
|
1075
|
-
opacity: 0.75;
|
|
1076
|
-
text-transform: uppercase;
|
|
1077
1104
|
font-size: 0.85em;
|
|
1078
|
-
letter-spacing: 0.05em;
|
|
1079
1105
|
}
|
|
1080
1106
|
|
|
1081
1107
|
/* ─── Lists ───────────────────────────────────────────────────────────────── */
|
|
@@ -6709,6 +6735,12 @@ body.td-dragging :is(.mikedown-root, .mikedown-portal) .td-add {
|
|
|
6709
6735
|
:is(.mikedown-root, .mikedown-portal) .ai-feature-tasks > .settings-desc { font-size: 11.5px; }
|
|
6710
6736
|
:is(.mikedown-root, .mikedown-portal) .ai-feature-task { justify-content: space-between; gap: 10px; }
|
|
6711
6737
|
|
|
6738
|
+
/* Inline suggestions' options under its switch: the same quiet fold. */
|
|
6739
|
+
:is(.mikedown-root, .mikedown-portal) .settings-group > .settings-row.ai-ghost-options-box { padding: 0 0 8px; gap: 2px; border-top: none; }
|
|
6740
|
+
:is(.mikedown-root, .mikedown-portal) .settings-row.ai-ghost-options-box[hidden] { display: none; }
|
|
6741
|
+
:is(.mikedown-root, .mikedown-portal) .ai-ghost-options-toggle { justify-self: start; }
|
|
6742
|
+
:is(.mikedown-root, .mikedown-portal) .ai-ghost-options { margin-top: 2px; }
|
|
6743
|
+
|
|
6712
6744
|
/* The master switch carries the tab: a touch more presence. */
|
|
6713
6745
|
:is(.mikedown-root, .mikedown-portal) .ai-master .settings-label { font-size: 13.5px; }
|
|
6714
6746
|
|
|
@@ -7763,6 +7795,913 @@ body.td-dragging :is(.mikedown-root, .mikedown-portal) .td-add {
|
|
|
7763
7795
|
color: var(--settings-muted, var(--mikedown-text-muted));
|
|
7764
7796
|
}
|
|
7765
7797
|
|
|
7798
|
+
/* ── AI Activity panel (ai-activity-panel.ts) ─────────────────────────────────
|
|
7799
|
+
In the AI Engines page's shell. A request list crossed with an output pane:
|
|
7800
|
+
proportional type for labels, monospace for anything raw, no chrome beyond
|
|
7801
|
+
the hairlines the page already has. */
|
|
7802
|
+
|
|
7803
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity:focus { outline: none; }
|
|
7804
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-header-actions {
|
|
7805
|
+
justify-self: end;
|
|
7806
|
+
display: flex;
|
|
7807
|
+
align-items: center;
|
|
7808
|
+
gap: 6px;
|
|
7809
|
+
min-width: 0;
|
|
7810
|
+
}
|
|
7811
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-action {
|
|
7812
|
+
padding: 3px 10px;
|
|
7813
|
+
background: var(--mikedown-button-bg, transparent);
|
|
7814
|
+
color: var(--mikedown-button-text, var(--settings-fg));
|
|
7815
|
+
}
|
|
7816
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-action:hover { background: var(--mikedown-button-hover, var(--settings-hover-bg)); }
|
|
7817
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-action:disabled,
|
|
7818
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-action:disabled:hover {
|
|
7819
|
+
background: var(--mikedown-button-bg, transparent);
|
|
7820
|
+
opacity: 0.5;
|
|
7821
|
+
cursor: default;
|
|
7822
|
+
}
|
|
7823
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-inline-status {
|
|
7824
|
+
overflow: hidden;
|
|
7825
|
+
font-size: 12px;
|
|
7826
|
+
color: var(--settings-muted);
|
|
7827
|
+
text-overflow: ellipsis;
|
|
7828
|
+
white-space: nowrap;
|
|
7829
|
+
}
|
|
7830
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-inline-status[data-level="ok"] { color: var(--ai-ok); }
|
|
7831
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-inline-status[data-level="error"] { color: var(--ai-error); }
|
|
7832
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-banner {
|
|
7833
|
+
margin: 0;
|
|
7834
|
+
padding: 7px 16px;
|
|
7835
|
+
border-bottom: 1px solid var(--mikedown-divider, var(--settings-divider));
|
|
7836
|
+
font-size: 12px;
|
|
7837
|
+
line-height: 1.45;
|
|
7838
|
+
color: var(--settings-muted);
|
|
7839
|
+
flex-shrink: 0;
|
|
7840
|
+
}
|
|
7841
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-body {
|
|
7842
|
+
flex: 1;
|
|
7843
|
+
display: flex;
|
|
7844
|
+
min-height: 0;
|
|
7845
|
+
}
|
|
7846
|
+
|
|
7847
|
+
/* The list: dense enough to scan, like a network panel. */
|
|
7848
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-master {
|
|
7849
|
+
width: clamp(320px, 38%, 420px);
|
|
7850
|
+
flex-shrink: 0;
|
|
7851
|
+
display: flex;
|
|
7852
|
+
flex-direction: column;
|
|
7853
|
+
min-height: 0;
|
|
7854
|
+
border-right: 1px solid var(--mikedown-divider, var(--settings-divider));
|
|
7855
|
+
background: var(--mikedown-surface-toolbar, transparent);
|
|
7856
|
+
}
|
|
7857
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-list-head {
|
|
7858
|
+
display: flex;
|
|
7859
|
+
align-items: baseline;
|
|
7860
|
+
justify-content: space-between;
|
|
7861
|
+
gap: 8px;
|
|
7862
|
+
padding: 12px 16px 6px;
|
|
7863
|
+
flex-shrink: 0;
|
|
7864
|
+
}
|
|
7865
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-list-label {
|
|
7866
|
+
font-size: 11px;
|
|
7867
|
+
font-weight: 600;
|
|
7868
|
+
letter-spacing: 0.04em;
|
|
7869
|
+
text-transform: uppercase;
|
|
7870
|
+
color: var(--settings-muted);
|
|
7871
|
+
}
|
|
7872
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-list-count {
|
|
7873
|
+
font-size: 11px;
|
|
7874
|
+
font-variant-numeric: tabular-nums;
|
|
7875
|
+
color: var(--settings-muted);
|
|
7876
|
+
}
|
|
7877
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-list {
|
|
7878
|
+
flex: 1;
|
|
7879
|
+
min-height: 0;
|
|
7880
|
+
display: flex;
|
|
7881
|
+
flex-direction: column;
|
|
7882
|
+
gap: 1px;
|
|
7883
|
+
padding: 0 8px 10px;
|
|
7884
|
+
overflow-y: auto;
|
|
7885
|
+
/* The panel keeps the scroll position itself when a row lands on top. */
|
|
7886
|
+
overflow-anchor: none;
|
|
7887
|
+
}
|
|
7888
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row {
|
|
7889
|
+
display: grid;
|
|
7890
|
+
grid-template-columns: 14px minmax(0, 1fr) auto;
|
|
7891
|
+
align-items: center;
|
|
7892
|
+
gap: 2px 6px;
|
|
7893
|
+
flex-shrink: 0;
|
|
7894
|
+
padding: 6px 8px;
|
|
7895
|
+
border-radius: var(--mikedown-radius-sm, 4px);
|
|
7896
|
+
color: var(--settings-fg);
|
|
7897
|
+
cursor: pointer;
|
|
7898
|
+
transition: background-color 120ms var(--ai-ease);
|
|
7899
|
+
}
|
|
7900
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row:hover { background: var(--ai-row-hover); }
|
|
7901
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row[aria-selected="true"] {
|
|
7902
|
+
background: var(--settings-active-bg);
|
|
7903
|
+
color: var(--settings-active-fg);
|
|
7904
|
+
outline: 1px solid var(--mikedown-contrast-border, transparent);
|
|
7905
|
+
outline-offset: -1px;
|
|
7906
|
+
}
|
|
7907
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row:focus:not(:focus-visible) { outline: none; }
|
|
7908
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row:focus-visible {
|
|
7909
|
+
outline: 1px solid var(--settings-focus);
|
|
7910
|
+
outline-offset: -1px;
|
|
7911
|
+
}
|
|
7912
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row > .ai-activity-dot { justify-self: center; }
|
|
7913
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row-head,
|
|
7914
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row-sub {
|
|
7915
|
+
display: flex;
|
|
7916
|
+
align-items: center;
|
|
7917
|
+
gap: 6px;
|
|
7918
|
+
min-width: 0;
|
|
7919
|
+
}
|
|
7920
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row-sub { grid-column: 2; }
|
|
7921
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row-feature {
|
|
7922
|
+
min-width: 0;
|
|
7923
|
+
overflow: hidden;
|
|
7924
|
+
font-size: 12.5px;
|
|
7925
|
+
font-weight: 500;
|
|
7926
|
+
text-overflow: ellipsis;
|
|
7927
|
+
white-space: nowrap;
|
|
7928
|
+
}
|
|
7929
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row-status {
|
|
7930
|
+
flex-shrink: 0;
|
|
7931
|
+
font-size: 11px;
|
|
7932
|
+
white-space: nowrap;
|
|
7933
|
+
}
|
|
7934
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row[data-status="error"] .ai-activity-row-status { color: var(--ai-error); }
|
|
7935
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row[data-status="fallback"] .ai-activity-row-status { color: var(--ai-warn); }
|
|
7936
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row[data-status="streaming"] .ai-activity-row-status { color: var(--ai-info); }
|
|
7937
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row[data-status="cancelled"] .ai-activity-row-status { color: var(--settings-muted); }
|
|
7938
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row-when,
|
|
7939
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row-tokens {
|
|
7940
|
+
justify-self: end;
|
|
7941
|
+
font-family: var(--mikedown-font-mono, ui-monospace, monospace);
|
|
7942
|
+
font-size: 11px;
|
|
7943
|
+
font-variant-numeric: tabular-nums;
|
|
7944
|
+
color: var(--settings-muted);
|
|
7945
|
+
white-space: nowrap;
|
|
7946
|
+
}
|
|
7947
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row-when {
|
|
7948
|
+
display: flex;
|
|
7949
|
+
gap: 10px;
|
|
7950
|
+
}
|
|
7951
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row-engine {
|
|
7952
|
+
min-width: 0;
|
|
7953
|
+
overflow: hidden;
|
|
7954
|
+
font-size: 11.5px;
|
|
7955
|
+
color: var(--settings-muted);
|
|
7956
|
+
text-overflow: ellipsis;
|
|
7957
|
+
white-space: nowrap;
|
|
7958
|
+
}
|
|
7959
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row-locality { display: inline-flex; flex-shrink: 0; }
|
|
7960
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row-locality:empty { display: none; }
|
|
7961
|
+
/* On the selected fill, everything follows its text color (a theme's fill can be saturated). */
|
|
7962
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row[aria-selected="true"] :is(.ai-activity-row-status, .ai-activity-row-when, .ai-activity-row-tokens, .ai-activity-row-engine) {
|
|
7963
|
+
color: inherit;
|
|
7964
|
+
opacity: 0.78;
|
|
7965
|
+
}
|
|
7966
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row[aria-selected="true"] .ai-pill {
|
|
7967
|
+
color: inherit;
|
|
7968
|
+
background: color-mix(in srgb, currentColor 14%, transparent);
|
|
7969
|
+
}
|
|
7970
|
+
|
|
7971
|
+
/* The status dot. Shape as well as color: cancelled is a hollow ring. */
|
|
7972
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-dot {
|
|
7973
|
+
display: inline-block;
|
|
7974
|
+
width: 8px;
|
|
7975
|
+
height: 8px;
|
|
7976
|
+
flex-shrink: 0;
|
|
7977
|
+
box-sizing: border-box;
|
|
7978
|
+
border: 1.5px solid var(--settings-muted);
|
|
7979
|
+
border-radius: 50%;
|
|
7980
|
+
background: transparent;
|
|
7981
|
+
}
|
|
7982
|
+
:is(.mikedown-root, .mikedown-portal) [data-status="ok"] > .ai-activity-dot { background: var(--ai-ok); border-color: var(--ai-ok); }
|
|
7983
|
+
:is(.mikedown-root, .mikedown-portal) [data-status="error"] > .ai-activity-dot { background: var(--ai-error); border-color: var(--ai-error); }
|
|
7984
|
+
:is(.mikedown-root, .mikedown-portal) [data-status="fallback"] > .ai-activity-dot { background: var(--ai-warn); border-color: var(--ai-warn); }
|
|
7985
|
+
:is(.mikedown-root, .mikedown-portal) [data-status="streaming"] > .ai-activity-dot {
|
|
7986
|
+
background: var(--ai-info);
|
|
7987
|
+
border-color: var(--ai-info);
|
|
7988
|
+
animation: ai-pulse 1s ease-in-out infinite;
|
|
7989
|
+
}
|
|
7990
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row[aria-selected="true"] > .ai-activity-dot {
|
|
7991
|
+
box-shadow: 0 0 0 1px color-mix(in srgb, currentColor 35%, transparent);
|
|
7992
|
+
}
|
|
7993
|
+
|
|
7994
|
+
/* The request: one readable column that can hold long raw text. */
|
|
7995
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-detail {
|
|
7996
|
+
flex: 1;
|
|
7997
|
+
min-width: 0;
|
|
7998
|
+
overflow-y: auto;
|
|
7999
|
+
}
|
|
8000
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-detail:focus:not(:focus-visible) { outline: none; }
|
|
8001
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-detail:focus-visible {
|
|
8002
|
+
outline: 1px solid var(--settings-focus);
|
|
8003
|
+
outline-offset: -1px;
|
|
8004
|
+
}
|
|
8005
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-detail-inner {
|
|
8006
|
+
box-sizing: border-box;
|
|
8007
|
+
display: flex;
|
|
8008
|
+
flex-direction: column;
|
|
8009
|
+
gap: 16px;
|
|
8010
|
+
max-width: 920px;
|
|
8011
|
+
margin: 0 auto;
|
|
8012
|
+
padding: 18px 24px 40px;
|
|
8013
|
+
}
|
|
8014
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-detail-head {
|
|
8015
|
+
display: flex;
|
|
8016
|
+
flex-direction: column;
|
|
8017
|
+
gap: 5px;
|
|
8018
|
+
}
|
|
8019
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-detail-title-row {
|
|
8020
|
+
display: flex;
|
|
8021
|
+
flex-wrap: wrap;
|
|
8022
|
+
align-items: center;
|
|
8023
|
+
gap: 6px 10px;
|
|
8024
|
+
}
|
|
8025
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-detail-title {
|
|
8026
|
+
margin: 0;
|
|
8027
|
+
font-size: 14px;
|
|
8028
|
+
font-weight: 600;
|
|
8029
|
+
color: var(--settings-fg);
|
|
8030
|
+
}
|
|
8031
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-status {
|
|
8032
|
+
display: inline-flex;
|
|
8033
|
+
align-items: center;
|
|
8034
|
+
gap: 5px;
|
|
8035
|
+
font-size: 12px;
|
|
8036
|
+
color: var(--settings-muted);
|
|
8037
|
+
}
|
|
8038
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-status[data-status="error"] { color: var(--ai-error); }
|
|
8039
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-detail-actions {
|
|
8040
|
+
display: flex;
|
|
8041
|
+
align-items: center;
|
|
8042
|
+
gap: 6px;
|
|
8043
|
+
min-width: 0;
|
|
8044
|
+
margin-left: auto;
|
|
8045
|
+
}
|
|
8046
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-route {
|
|
8047
|
+
display: flex;
|
|
8048
|
+
flex-wrap: wrap;
|
|
8049
|
+
align-items: center;
|
|
8050
|
+
gap: 2px 8px;
|
|
8051
|
+
font-size: 12.5px;
|
|
8052
|
+
color: var(--settings-fg);
|
|
8053
|
+
}
|
|
8054
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-route-model {
|
|
8055
|
+
font-family: var(--mikedown-font-mono, ui-monospace, monospace);
|
|
8056
|
+
font-size: 12px;
|
|
8057
|
+
color: var(--settings-muted);
|
|
8058
|
+
overflow-wrap: anywhere;
|
|
8059
|
+
}
|
|
8060
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-thinking {
|
|
8061
|
+
font-size: 12px;
|
|
8062
|
+
color: var(--settings-muted);
|
|
8063
|
+
}
|
|
8064
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-notes {
|
|
8065
|
+
display: flex;
|
|
8066
|
+
flex-direction: column;
|
|
8067
|
+
gap: 6px;
|
|
8068
|
+
}
|
|
8069
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-notes:empty { display: none; }
|
|
8070
|
+
|
|
8071
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-section {
|
|
8072
|
+
display: flex;
|
|
8073
|
+
flex-direction: column;
|
|
8074
|
+
gap: 8px;
|
|
8075
|
+
}
|
|
8076
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-section-head {
|
|
8077
|
+
display: flex;
|
|
8078
|
+
align-items: center;
|
|
8079
|
+
gap: 8px;
|
|
8080
|
+
min-width: 0;
|
|
8081
|
+
}
|
|
8082
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-section-toggle {
|
|
8083
|
+
align-self: auto;
|
|
8084
|
+
flex-shrink: 0;
|
|
8085
|
+
font-weight: 600;
|
|
8086
|
+
color: var(--settings-fg);
|
|
8087
|
+
}
|
|
8088
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-section-summary {
|
|
8089
|
+
overflow: hidden;
|
|
8090
|
+
font-size: 11.5px;
|
|
8091
|
+
font-variant-numeric: tabular-nums;
|
|
8092
|
+
color: var(--settings-muted);
|
|
8093
|
+
text-overflow: ellipsis;
|
|
8094
|
+
white-space: nowrap;
|
|
8095
|
+
}
|
|
8096
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-section-body {
|
|
8097
|
+
display: flex;
|
|
8098
|
+
flex-direction: column;
|
|
8099
|
+
gap: 8px;
|
|
8100
|
+
}
|
|
8101
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-section-body[hidden],
|
|
8102
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-block[hidden] { display: none; }
|
|
8103
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-block {
|
|
8104
|
+
overflow: hidden;
|
|
8105
|
+
border: 1px solid var(--mikedown-divider, var(--settings-divider));
|
|
8106
|
+
border-radius: var(--mikedown-radius-sm, 4px);
|
|
8107
|
+
background: var(--mikedown-code-bg, transparent);
|
|
8108
|
+
}
|
|
8109
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-block-caption {
|
|
8110
|
+
display: flex;
|
|
8111
|
+
align-items: baseline;
|
|
8112
|
+
justify-content: space-between;
|
|
8113
|
+
gap: 8px;
|
|
8114
|
+
padding: 4px 10px;
|
|
8115
|
+
border-bottom: 1px solid var(--mikedown-divider, var(--settings-divider));
|
|
8116
|
+
}
|
|
8117
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-message-role {
|
|
8118
|
+
font-size: 10.5px;
|
|
8119
|
+
font-weight: 600;
|
|
8120
|
+
letter-spacing: 0.04em;
|
|
8121
|
+
text-transform: uppercase;
|
|
8122
|
+
color: var(--settings-muted);
|
|
8123
|
+
}
|
|
8124
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-block-size {
|
|
8125
|
+
font-size: 11px;
|
|
8126
|
+
font-variant-numeric: tabular-nums;
|
|
8127
|
+
color: var(--settings-muted);
|
|
8128
|
+
}
|
|
8129
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-text {
|
|
8130
|
+
margin: 0;
|
|
8131
|
+
padding: 8px 10px;
|
|
8132
|
+
background: none;
|
|
8133
|
+
font-family: var(--mikedown-font-mono, ui-monospace, monospace);
|
|
8134
|
+
font-size: 12px;
|
|
8135
|
+
line-height: 1.5;
|
|
8136
|
+
color: var(--mikedown-text, var(--settings-fg));
|
|
8137
|
+
tab-size: 4;
|
|
8138
|
+
white-space: pre-wrap;
|
|
8139
|
+
overflow-wrap: anywhere;
|
|
8140
|
+
user-select: text;
|
|
8141
|
+
}
|
|
8142
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-meta {
|
|
8143
|
+
display: grid;
|
|
8144
|
+
grid-template-columns: max-content minmax(0, 1fr);
|
|
8145
|
+
gap: 2px 14px;
|
|
8146
|
+
margin: 0;
|
|
8147
|
+
font-size: 12px;
|
|
8148
|
+
line-height: 1.5;
|
|
8149
|
+
}
|
|
8150
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-meta dt { color: var(--settings-muted); }
|
|
8151
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-meta dd {
|
|
8152
|
+
margin: 0;
|
|
8153
|
+
min-width: 0;
|
|
8154
|
+
font-variant-numeric: tabular-nums;
|
|
8155
|
+
color: var(--settings-fg);
|
|
8156
|
+
overflow-wrap: anywhere;
|
|
8157
|
+
}
|
|
8158
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-meta dd.is-raw {
|
|
8159
|
+
font-family: var(--mikedown-font-mono, ui-monospace, monospace);
|
|
8160
|
+
font-size: 11.5px;
|
|
8161
|
+
}
|
|
8162
|
+
|
|
8163
|
+
/* Nothing recorded: the list and detail give way to one quiet message. */
|
|
8164
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-empty {
|
|
8165
|
+
flex: 1;
|
|
8166
|
+
display: flex;
|
|
8167
|
+
flex-direction: column;
|
|
8168
|
+
align-items: center;
|
|
8169
|
+
justify-content: center;
|
|
8170
|
+
gap: 6px;
|
|
8171
|
+
min-height: 0;
|
|
8172
|
+
padding: 32px 24px 96px;
|
|
8173
|
+
text-align: center;
|
|
8174
|
+
}
|
|
8175
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-empty-title {
|
|
8176
|
+
font-size: 14px;
|
|
8177
|
+
font-weight: 600;
|
|
8178
|
+
color: var(--settings-fg);
|
|
8179
|
+
}
|
|
8180
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-empty-text {
|
|
8181
|
+
max-width: 460px;
|
|
8182
|
+
margin: 0;
|
|
8183
|
+
font-size: 12.5px;
|
|
8184
|
+
line-height: 1.5;
|
|
8185
|
+
color: var(--settings-muted);
|
|
8186
|
+
}
|
|
8187
|
+
|
|
8188
|
+
/* One column: the list or the request, as on the AI Engines page. */
|
|
8189
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity.is-narrow .ai-activity-master {
|
|
8190
|
+
width: auto;
|
|
8191
|
+
flex: 1;
|
|
8192
|
+
border-right: none;
|
|
8193
|
+
}
|
|
8194
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity.is-narrow[data-view="list"] .ai-activity-detail,
|
|
8195
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity.is-narrow[data-view="detail"] .ai-activity-master { display: none; }
|
|
8196
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity.is-narrow .ai-activity-detail-inner { padding: 14px 16px 32px; }
|
|
8197
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity.is-narrow .ai-page-header { padding: 8px 10px; }
|
|
8198
|
+
|
|
8199
|
+
/* The AI tab's "Open" beside the AI Activity switch. */
|
|
8200
|
+
:is(.mikedown-root, .mikedown-portal) .settings-row--inline.ai-activity-setting { grid-template-columns: minmax(0, 1fr) auto auto; }
|
|
8201
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-open { margin: 0; flex-shrink: 0; }
|
|
8202
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-open[hidden] { display: none; }
|
|
8203
|
+
|
|
8204
|
+
@media (prefers-reduced-motion: reduce) {
|
|
8205
|
+
:is(.mikedown-root, .mikedown-portal) [data-status="streaming"] > .ai-activity-dot { animation: none; }
|
|
8206
|
+
:is(.mikedown-root, .mikedown-portal) .ai-activity-row { transition: none; }
|
|
8207
|
+
}
|
|
8208
|
+
|
|
8209
|
+
/* ── Documentation bases (ai-docs-page.ts) ───────────────────────────────── */
|
|
8210
|
+
|
|
8211
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs,
|
|
8212
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-list-view,
|
|
8213
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-form {
|
|
8214
|
+
display: flex;
|
|
8215
|
+
flex-direction: column;
|
|
8216
|
+
gap: 10px;
|
|
8217
|
+
}
|
|
8218
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs { gap: 14px; }
|
|
8219
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs > [hidden] { display: none; }
|
|
8220
|
+
:is(.mikedown-root, .mikedown-portal) .ai-page-detail[data-kind="bases"] .ai-detail-head { flex-direction: row; align-items: center; gap: 14px; }
|
|
8221
|
+
|
|
8222
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-bar,
|
|
8223
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-form-actions,
|
|
8224
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-form-adders,
|
|
8225
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-form-path {
|
|
8226
|
+
display: flex;
|
|
8227
|
+
align-items: center;
|
|
8228
|
+
gap: 8px;
|
|
8229
|
+
flex-wrap: wrap;
|
|
8230
|
+
}
|
|
8231
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-status {
|
|
8232
|
+
flex: 1;
|
|
8233
|
+
min-width: 0;
|
|
8234
|
+
font-size: 12px;
|
|
8235
|
+
color: var(--settings-muted);
|
|
8236
|
+
}
|
|
8237
|
+
|
|
8238
|
+
/* One base: a row of the settings group, flat, with its folders under the name. */
|
|
8239
|
+
:is(.mikedown-root, .mikedown-portal) .settings-group > .settings-row.ai-docs-base { gap: 6px; }
|
|
8240
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-base-head {
|
|
8241
|
+
display: flex;
|
|
8242
|
+
align-items: center;
|
|
8243
|
+
justify-content: space-between;
|
|
8244
|
+
gap: 12px;
|
|
8245
|
+
min-width: 0;
|
|
8246
|
+
}
|
|
8247
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-base-title {
|
|
8248
|
+
display: flex;
|
|
8249
|
+
align-items: center;
|
|
8250
|
+
gap: 8px;
|
|
8251
|
+
flex-wrap: wrap;
|
|
8252
|
+
min-width: 0;
|
|
8253
|
+
}
|
|
8254
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-base-name {
|
|
8255
|
+
min-width: 0;
|
|
8256
|
+
font-size: 13px;
|
|
8257
|
+
font-weight: 600;
|
|
8258
|
+
color: var(--settings-fg);
|
|
8259
|
+
overflow-wrap: anywhere;
|
|
8260
|
+
}
|
|
8261
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-base-actions {
|
|
8262
|
+
display: flex;
|
|
8263
|
+
align-items: center;
|
|
8264
|
+
gap: 6px;
|
|
8265
|
+
flex-shrink: 0;
|
|
8266
|
+
}
|
|
8267
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-base.is-disabled .ai-docs-base-title,
|
|
8268
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-base.is-disabled .ai-docs-roots { opacity: 0.55; }
|
|
8269
|
+
|
|
8270
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-roots,
|
|
8271
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-form-roots {
|
|
8272
|
+
display: flex;
|
|
8273
|
+
flex-direction: column;
|
|
8274
|
+
gap: 6px;
|
|
8275
|
+
min-width: 0;
|
|
8276
|
+
margin: 0;
|
|
8277
|
+
padding: 0;
|
|
8278
|
+
list-style: none;
|
|
8279
|
+
}
|
|
8280
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-form-roots:empty { display: none; }
|
|
8281
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-root {
|
|
8282
|
+
display: flex;
|
|
8283
|
+
flex-direction: column;
|
|
8284
|
+
gap: 3px;
|
|
8285
|
+
min-width: 0;
|
|
8286
|
+
}
|
|
8287
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-form-root {
|
|
8288
|
+
display: flex;
|
|
8289
|
+
align-items: center;
|
|
8290
|
+
justify-content: space-between;
|
|
8291
|
+
gap: 8px;
|
|
8292
|
+
min-width: 0;
|
|
8293
|
+
}
|
|
8294
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-path {
|
|
8295
|
+
min-width: 0;
|
|
8296
|
+
color: var(--settings-muted);
|
|
8297
|
+
overflow: hidden;
|
|
8298
|
+
text-overflow: ellipsis;
|
|
8299
|
+
white-space: nowrap;
|
|
8300
|
+
}
|
|
8301
|
+
|
|
8302
|
+
/* Health: small quiet tags, as under a setting in VS Code. Only a warning takes colour. */
|
|
8303
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-chips {
|
|
8304
|
+
display: flex;
|
|
8305
|
+
flex-wrap: wrap;
|
|
8306
|
+
gap: 4px;
|
|
8307
|
+
min-width: 0;
|
|
8308
|
+
}
|
|
8309
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-chip {
|
|
8310
|
+
display: inline-flex;
|
|
8311
|
+
align-items: center;
|
|
8312
|
+
gap: 3px;
|
|
8313
|
+
max-width: 100%;
|
|
8314
|
+
padding: 0 6px;
|
|
8315
|
+
min-height: 17px;
|
|
8316
|
+
border: 1px solid transparent;
|
|
8317
|
+
border-radius: var(--mikedown-radius-sm, 4px);
|
|
8318
|
+
background: var(--ai-row-hover);
|
|
8319
|
+
font-size: 11px;
|
|
8320
|
+
line-height: 15px;
|
|
8321
|
+
color: var(--settings-muted);
|
|
8322
|
+
overflow-wrap: anywhere;
|
|
8323
|
+
}
|
|
8324
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-chip svg { flex-shrink: 0; width: 11px; height: 11px; }
|
|
8325
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-chip--warn {
|
|
8326
|
+
background: color-mix(in srgb, var(--ai-warn) 10%, transparent);
|
|
8327
|
+
color: var(--ai-warn);
|
|
8328
|
+
}
|
|
8329
|
+
|
|
8330
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-form .settings-input:not(.ai-docs-number) { min-width: 0; }
|
|
8331
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-form .settings-row--inline > .settings-input { width: 260px; max-width: 100%; }
|
|
8332
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-form-path .settings-input { flex: 1; width: auto; min-width: 160px; }
|
|
8333
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-form-error:empty { display: none; }
|
|
8334
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-number { width: 72px; }
|
|
8335
|
+
:is(.mikedown-root, .mikedown-portal) .ai-docs-select.settings-input { width: auto; }
|
|
8336
|
+
|
|
8337
|
+
:is(.mikedown-root, .mikedown-portal) .ai-page-detail .ai-docs-base .ai-confirm { margin: 2px 0 0; }
|
|
8338
|
+
|
|
8339
|
+
:is(.mikedown-root, .mikedown-portal) .ai-page.is-narrow .ai-docs-base-head { flex-wrap: wrap; }
|
|
8340
|
+
:is(.mikedown-root, .mikedown-portal) .ai-page.is-narrow .ai-docs-path { white-space: normal; overflow-wrap: anywhere; }
|
|
8341
|
+
:is(.mikedown-root, .mikedown-portal) .ai-page.is-narrow .ai-docs-form .settings-row--inline { grid-template-columns: minmax(0, 1fr); }
|
|
8342
|
+
:is(.mikedown-root, .mikedown-portal) .ai-page.is-narrow .ai-docs-form .settings-row--inline > .settings-input { width: 100%; justify-self: stretch; }
|
|
8343
|
+
:is(.mikedown-root, .mikedown-portal) .ai-page.is-narrow .ai-docs-form .settings-row--inline > .ai-switch { justify-self: start; }
|
|
8344
|
+
|
|
8345
|
+
/* ── The chat panel (ai-chat-panel.ts): docked inside the editor ─────────── */
|
|
8346
|
+
|
|
8347
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-dock {
|
|
8348
|
+
--settings-fg: var(--mikedown-text, #d4d4d4);
|
|
8349
|
+
--settings-muted: var(--mikedown-text-muted, rgba(128, 128, 128, 0.9));
|
|
8350
|
+
--settings-divider: var(--mikedown-border, rgba(128, 128, 128, 0.2));
|
|
8351
|
+
--settings-focus: var(--mikedown-focus-ring, #007fd4);
|
|
8352
|
+
--ai-ok: var(--mikedown-success, #2e7d32);
|
|
8353
|
+
--ai-error: var(--mikedown-danger, #c62828);
|
|
8354
|
+
--ai-warn: var(--mikedown-warning, #b26a00);
|
|
8355
|
+
--ai-ease: cubic-bezier(0.2, 0, 0, 1);
|
|
8356
|
+
--ai-chat-quiet: var(--mikedown-hover, rgba(128, 128, 128, 0.1));
|
|
8357
|
+
position: absolute;
|
|
8358
|
+
top: 40px;
|
|
8359
|
+
right: 0;
|
|
8360
|
+
bottom: 0;
|
|
8361
|
+
left: 0;
|
|
8362
|
+
z-index: 95;
|
|
8363
|
+
display: flex;
|
|
8364
|
+
background: var(--mikedown-surface, #1e1e1e);
|
|
8365
|
+
color: var(--settings-fg);
|
|
8366
|
+
font-family: var(--mikedown-font-ui, system-ui, -apple-system, sans-serif);
|
|
8367
|
+
font-size: 13px;
|
|
8368
|
+
line-height: 1.5;
|
|
8369
|
+
}
|
|
8370
|
+
.mikedown-root.mikedown-no-toolbar .ai-chat-dock { top: 0; }
|
|
8371
|
+
.mikedown-root.ai-chat-docked .ai-chat-dock {
|
|
8372
|
+
left: auto;
|
|
8373
|
+
width: var(--mikedown-ai-chat-width, 380px);
|
|
8374
|
+
border-left: 1px solid var(--mikedown-divider, var(--settings-divider));
|
|
8375
|
+
}
|
|
8376
|
+
.mikedown-root.ai-chat-docked .mikedown-editor-container,
|
|
8377
|
+
.mikedown-root.ai-chat-docked .mikedown-source-container {
|
|
8378
|
+
right: var(--mikedown-ai-chat-width, 380px);
|
|
8379
|
+
}
|
|
8380
|
+
/* A sidebar on the right sits beside the panel, not under it. */
|
|
8381
|
+
.mikedown-root.ai-chat-docked.mikedown-outline-right .mikedown-outline-sidebar {
|
|
8382
|
+
right: var(--mikedown-ai-chat-width, 380px);
|
|
8383
|
+
}
|
|
8384
|
+
.mikedown-root.ai-chat-docked.mikedown-outline-open.mikedown-outline-right .mikedown-editor-container {
|
|
8385
|
+
right: calc(var(--mikedown-ai-chat-width, 380px) + var(--mikedown-outline-width, 200px));
|
|
8386
|
+
}
|
|
8387
|
+
.mikedown-root.ai-chat-docked.mikedown-outline-right .mikedown-outline-toggle {
|
|
8388
|
+
right: calc(var(--mikedown-ai-chat-width, 380px) + 8px);
|
|
8389
|
+
}
|
|
8390
|
+
.mikedown-root.ai-chat-docked .mikedown-find-replace-bar {
|
|
8391
|
+
right: calc(var(--mikedown-ai-chat-width, 380px) + 20px);
|
|
8392
|
+
}
|
|
8393
|
+
@media print {
|
|
8394
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-dock { display: none; }
|
|
8395
|
+
}
|
|
8396
|
+
|
|
8397
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat {
|
|
8398
|
+
flex: 1;
|
|
8399
|
+
display: flex;
|
|
8400
|
+
flex-direction: column;
|
|
8401
|
+
min-width: 0;
|
|
8402
|
+
min-height: 0;
|
|
8403
|
+
}
|
|
8404
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-spacer { flex: 1; }
|
|
8405
|
+
|
|
8406
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-header {
|
|
8407
|
+
display: flex;
|
|
8408
|
+
align-items: center;
|
|
8409
|
+
gap: 6px;
|
|
8410
|
+
min-height: 36px;
|
|
8411
|
+
padding: 4px 6px 4px 14px;
|
|
8412
|
+
flex-shrink: 0;
|
|
8413
|
+
}
|
|
8414
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-title {
|
|
8415
|
+
margin: 0;
|
|
8416
|
+
font-size: 13px;
|
|
8417
|
+
font-weight: 600;
|
|
8418
|
+
color: var(--settings-fg);
|
|
8419
|
+
}
|
|
8420
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-icon {
|
|
8421
|
+
display: inline-flex;
|
|
8422
|
+
align-items: center;
|
|
8423
|
+
justify-content: center;
|
|
8424
|
+
width: 26px;
|
|
8425
|
+
height: 26px;
|
|
8426
|
+
padding: 0;
|
|
8427
|
+
border: 0;
|
|
8428
|
+
border-radius: var(--mikedown-radius-sm, 4px);
|
|
8429
|
+
background: none;
|
|
8430
|
+
color: var(--settings-muted);
|
|
8431
|
+
cursor: pointer;
|
|
8432
|
+
}
|
|
8433
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-icon:hover { background: var(--ai-chat-quiet); color: var(--settings-fg); }
|
|
8434
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-icon[hidden] { display: none; }
|
|
8435
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-status {
|
|
8436
|
+
font-size: 11.5px;
|
|
8437
|
+
color: var(--settings-muted);
|
|
8438
|
+
overflow-wrap: anywhere;
|
|
8439
|
+
}
|
|
8440
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-status[data-level="error"] { color: var(--ai-error); }
|
|
8441
|
+
|
|
8442
|
+
/* The conversation. */
|
|
8443
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-log {
|
|
8444
|
+
flex: 1;
|
|
8445
|
+
min-height: 0;
|
|
8446
|
+
overflow-y: auto;
|
|
8447
|
+
padding: 6px 14px 14px;
|
|
8448
|
+
outline: none;
|
|
8449
|
+
}
|
|
8450
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-empty {
|
|
8451
|
+
margin-top: 18vh;
|
|
8452
|
+
padding: 0 16px;
|
|
8453
|
+
text-align: center;
|
|
8454
|
+
color: var(--settings-muted);
|
|
8455
|
+
}
|
|
8456
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-empty[hidden] { display: none; }
|
|
8457
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-empty-title { font-weight: 600; color: var(--settings-fg); }
|
|
8458
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-empty-text { margin: 4px 0 0; font-size: 12px; }
|
|
8459
|
+
|
|
8460
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-turn {
|
|
8461
|
+
display: flex;
|
|
8462
|
+
flex-direction: column;
|
|
8463
|
+
gap: 10px;
|
|
8464
|
+
margin-top: 16px;
|
|
8465
|
+
}
|
|
8466
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-turn:first-of-type { margin-top: 6px; }
|
|
8467
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-question {
|
|
8468
|
+
align-self: flex-end;
|
|
8469
|
+
max-width: 88%;
|
|
8470
|
+
padding: 6px 11px;
|
|
8471
|
+
border-radius: 12px;
|
|
8472
|
+
background: var(--mikedown-active, var(--ai-chat-quiet));
|
|
8473
|
+
white-space: pre-wrap;
|
|
8474
|
+
overflow-wrap: anywhere;
|
|
8475
|
+
}
|
|
8476
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-reply {
|
|
8477
|
+
display: flex;
|
|
8478
|
+
flex-direction: column;
|
|
8479
|
+
gap: 6px;
|
|
8480
|
+
min-width: 0;
|
|
8481
|
+
}
|
|
8482
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-answer {
|
|
8483
|
+
white-space: pre-wrap;
|
|
8484
|
+
overflow-wrap: anywhere;
|
|
8485
|
+
}
|
|
8486
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-answer.is-cancelled { color: var(--settings-muted); }
|
|
8487
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-turn--arrived .ai-chat-reply {
|
|
8488
|
+
animation: ai-chat-arrive 200ms var(--ai-ease);
|
|
8489
|
+
}
|
|
8490
|
+
@keyframes ai-chat-arrive {
|
|
8491
|
+
from { opacity: 0.35; transform: translateY(3px); }
|
|
8492
|
+
to { opacity: 1; transform: none; }
|
|
8493
|
+
}
|
|
8494
|
+
|
|
8495
|
+
/* A citation: its number and `file › heading`. The full path is in the hover title. */
|
|
8496
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-chip {
|
|
8497
|
+
display: inline-flex;
|
|
8498
|
+
align-items: baseline;
|
|
8499
|
+
gap: 4px;
|
|
8500
|
+
max-width: min(100%, 26em);
|
|
8501
|
+
margin: 0 1px;
|
|
8502
|
+
padding: 0 7px 0 3px;
|
|
8503
|
+
border: 1px solid var(--mikedown-divider, var(--settings-divider));
|
|
8504
|
+
border-radius: 999px;
|
|
8505
|
+
background: none;
|
|
8506
|
+
color: var(--mikedown-link, var(--settings-fg));
|
|
8507
|
+
font: inherit;
|
|
8508
|
+
font-size: 11.5px;
|
|
8509
|
+
line-height: 1.55;
|
|
8510
|
+
white-space: nowrap;
|
|
8511
|
+
vertical-align: baseline;
|
|
8512
|
+
transition: background-color 120ms ease-out;
|
|
8513
|
+
}
|
|
8514
|
+
:is(.mikedown-root, .mikedown-portal) button.ai-chat-chip { cursor: pointer; }
|
|
8515
|
+
:is(.mikedown-root, .mikedown-portal) button.ai-chat-chip:hover { background: var(--ai-chat-quiet); }
|
|
8516
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-chip-n {
|
|
8517
|
+
min-width: 1.35em;
|
|
8518
|
+
border-radius: 999px;
|
|
8519
|
+
background: var(--ai-chat-quiet);
|
|
8520
|
+
color: var(--settings-muted);
|
|
8521
|
+
font-variant-numeric: tabular-nums;
|
|
8522
|
+
text-align: center;
|
|
8523
|
+
}
|
|
8524
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-chip-label {
|
|
8525
|
+
overflow: hidden;
|
|
8526
|
+
text-overflow: ellipsis;
|
|
8527
|
+
}
|
|
8528
|
+
|
|
8529
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-notes { display: flex; flex-direction: column; gap: 1px; }
|
|
8530
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-note {
|
|
8531
|
+
font-size: 11.5px;
|
|
8532
|
+
color: var(--settings-muted);
|
|
8533
|
+
}
|
|
8534
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-actions {
|
|
8535
|
+
display: flex;
|
|
8536
|
+
flex-wrap: wrap;
|
|
8537
|
+
align-items: center;
|
|
8538
|
+
gap: 2px 4px;
|
|
8539
|
+
margin-left: -6px;
|
|
8540
|
+
}
|
|
8541
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-action,
|
|
8542
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-link {
|
|
8543
|
+
padding: 2px 6px;
|
|
8544
|
+
border: 0;
|
|
8545
|
+
border-radius: var(--mikedown-radius-sm, 4px);
|
|
8546
|
+
background: none;
|
|
8547
|
+
color: var(--settings-muted);
|
|
8548
|
+
font: inherit;
|
|
8549
|
+
font-size: 12px;
|
|
8550
|
+
cursor: pointer;
|
|
8551
|
+
}
|
|
8552
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-action:hover,
|
|
8553
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-link:hover { background: var(--ai-chat-quiet); color: var(--settings-fg); }
|
|
8554
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-link { color: var(--mikedown-link, var(--settings-muted)); }
|
|
8555
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-route {
|
|
8556
|
+
display: inline-flex;
|
|
8557
|
+
align-items: center;
|
|
8558
|
+
gap: 4px;
|
|
8559
|
+
max-width: 40%;
|
|
8560
|
+
padding-right: 2px;
|
|
8561
|
+
font-size: 11px;
|
|
8562
|
+
color: var(--settings-muted);
|
|
8563
|
+
}
|
|
8564
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-route-icon { display: inline-flex; flex-shrink: 0; }
|
|
8565
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-route-name {
|
|
8566
|
+
overflow: hidden;
|
|
8567
|
+
white-space: nowrap;
|
|
8568
|
+
text-overflow: ellipsis;
|
|
8569
|
+
}
|
|
8570
|
+
|
|
8571
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-progress {
|
|
8572
|
+
display: flex;
|
|
8573
|
+
align-items: center;
|
|
8574
|
+
gap: 7px;
|
|
8575
|
+
font-size: 12px;
|
|
8576
|
+
color: var(--settings-muted);
|
|
8577
|
+
}
|
|
8578
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-dot {
|
|
8579
|
+
width: 6px;
|
|
8580
|
+
height: 6px;
|
|
8581
|
+
flex-shrink: 0;
|
|
8582
|
+
border-radius: 50%;
|
|
8583
|
+
background: currentColor;
|
|
8584
|
+
animation: ai-chat-pulse 1.2s ease-in-out infinite;
|
|
8585
|
+
}
|
|
8586
|
+
@keyframes ai-chat-pulse {
|
|
8587
|
+
50% { opacity: 0.25; }
|
|
8588
|
+
}
|
|
8589
|
+
|
|
8590
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-notice {
|
|
8591
|
+
display: flex;
|
|
8592
|
+
flex-direction: column;
|
|
8593
|
+
gap: 4px;
|
|
8594
|
+
padding: 8px 10px;
|
|
8595
|
+
border-radius: 8px;
|
|
8596
|
+
background: var(--ai-chat-quiet);
|
|
8597
|
+
}
|
|
8598
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-notice-title { font-weight: 600; overflow-wrap: anywhere; }
|
|
8599
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-notice .ai-chat-actions { margin: 2px 0 0 -6px; }
|
|
8600
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-notice .ai-chat-action { color: var(--mikedown-link, var(--settings-fg)); }
|
|
8601
|
+
|
|
8602
|
+
/* The composer. */
|
|
8603
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-composer {
|
|
8604
|
+
display: flex;
|
|
8605
|
+
flex-direction: column;
|
|
8606
|
+
gap: 6px;
|
|
8607
|
+
padding: 8px 12px 12px;
|
|
8608
|
+
flex-shrink: 0;
|
|
8609
|
+
}
|
|
8610
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-off[hidden],
|
|
8611
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-scope[hidden],
|
|
8612
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-bases[hidden] { display: none; }
|
|
8613
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-scope {
|
|
8614
|
+
display: inline-flex;
|
|
8615
|
+
align-self: flex-start;
|
|
8616
|
+
padding: 2px;
|
|
8617
|
+
border-radius: 7px;
|
|
8618
|
+
background: var(--ai-chat-quiet);
|
|
8619
|
+
}
|
|
8620
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-seg { position: relative; display: inline-flex; cursor: pointer; }
|
|
8621
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-seg input {
|
|
8622
|
+
position: absolute;
|
|
8623
|
+
inset: 0;
|
|
8624
|
+
margin: 0;
|
|
8625
|
+
opacity: 0;
|
|
8626
|
+
cursor: inherit;
|
|
8627
|
+
}
|
|
8628
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-seg span {
|
|
8629
|
+
padding: 1px 9px;
|
|
8630
|
+
border-radius: 5px;
|
|
8631
|
+
font-size: 12px;
|
|
8632
|
+
color: var(--settings-muted);
|
|
8633
|
+
transition: background-color 120ms ease-out, color 120ms ease-out;
|
|
8634
|
+
}
|
|
8635
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-seg input:checked + span {
|
|
8636
|
+
background: var(--mikedown-surface, #1e1e1e);
|
|
8637
|
+
color: var(--settings-fg);
|
|
8638
|
+
box-shadow: 0 0 0 1px var(--mikedown-divider, var(--settings-divider));
|
|
8639
|
+
}
|
|
8640
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-seg input:focus-visible + span {
|
|
8641
|
+
outline: 1px solid var(--settings-focus);
|
|
8642
|
+
outline-offset: 1px;
|
|
8643
|
+
}
|
|
8644
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-seg input:disabled + span { opacity: 0.6; }
|
|
8645
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-bases {
|
|
8646
|
+
padding-left: 2px;
|
|
8647
|
+
font-size: 11.5px;
|
|
8648
|
+
color: var(--settings-muted);
|
|
8649
|
+
overflow: hidden;
|
|
8650
|
+
white-space: nowrap;
|
|
8651
|
+
text-overflow: ellipsis;
|
|
8652
|
+
}
|
|
8653
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-bases .ai-chat-link { padding: 0 2px; font-size: inherit; }
|
|
8654
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-box {
|
|
8655
|
+
display: flex;
|
|
8656
|
+
align-items: flex-end;
|
|
8657
|
+
gap: 4px;
|
|
8658
|
+
padding: 5px 5px 5px 10px;
|
|
8659
|
+
border: 1px solid var(--mikedown-input-border, var(--settings-divider));
|
|
8660
|
+
border-radius: 10px;
|
|
8661
|
+
background: var(--mikedown-input-bg, transparent);
|
|
8662
|
+
transition: border-color 120ms ease-out;
|
|
8663
|
+
}
|
|
8664
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-box:focus-within { border-color: var(--settings-focus); }
|
|
8665
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-input {
|
|
8666
|
+
flex: 1;
|
|
8667
|
+
min-width: 0;
|
|
8668
|
+
max-height: 136px;
|
|
8669
|
+
padding: 3px 0;
|
|
8670
|
+
border: 0;
|
|
8671
|
+
outline: none;
|
|
8672
|
+
resize: none;
|
|
8673
|
+
background: none;
|
|
8674
|
+
color: var(--settings-fg);
|
|
8675
|
+
font: inherit;
|
|
8676
|
+
}
|
|
8677
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-input::placeholder { color: var(--settings-muted); }
|
|
8678
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-send {
|
|
8679
|
+
display: inline-flex;
|
|
8680
|
+
align-items: center;
|
|
8681
|
+
justify-content: center;
|
|
8682
|
+
width: 26px;
|
|
8683
|
+
height: 26px;
|
|
8684
|
+
flex-shrink: 0;
|
|
8685
|
+
padding: 0;
|
|
8686
|
+
border: 0;
|
|
8687
|
+
border-radius: 7px;
|
|
8688
|
+
background: var(--mikedown-selected-bg, #0e639c);
|
|
8689
|
+
color: var(--mikedown-selected-text, #ffffff);
|
|
8690
|
+
cursor: pointer;
|
|
8691
|
+
}
|
|
8692
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-send[hidden] { display: none; }
|
|
8693
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-send:disabled { background: var(--ai-chat-quiet); color: var(--settings-muted); cursor: default; }
|
|
8694
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-send--cancel { background: var(--ai-chat-quiet); color: var(--settings-fg); }
|
|
8695
|
+
:is(.mikedown-root, .mikedown-portal) :is(.ai-chat-icon, .ai-chat-send, .ai-chat-action, .ai-chat-link, .ai-chat-chip):focus-visible,
|
|
8696
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-log:focus-visible {
|
|
8697
|
+
outline: 1px solid var(--settings-focus);
|
|
8698
|
+
outline-offset: -1px;
|
|
8699
|
+
}
|
|
8700
|
+
@media (prefers-reduced-motion: reduce) {
|
|
8701
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-turn--arrived .ai-chat-reply,
|
|
8702
|
+
:is(.mikedown-root, .mikedown-portal) .ai-chat-dot { animation: none; }
|
|
8703
|
+
}
|
|
8704
|
+
|
|
7766
8705
|
/* ═══ ai-rewrite.css ═══ */
|
|
7767
8706
|
/* MikeDown — selection rewrite (ai-rewrite.ts): the target highlight and
|
|
7768
8707
|
* the preview popover. Overlays live in the portal and
|