@lemoncat7/dsh-knowledge 2.3.2 → 2.3.4
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/README.md +1 -1
- package/docs/ui-maintenance.md +97 -0
- package/lib/activity-control.d.ts +6 -0
- package/lib/activity-control.d.ts.map +1 -0
- package/lib/activity-control.js +118 -0
- package/lib/activity-control.js.map +1 -0
- package/lib/client.d.ts +17 -0
- package/lib/client.d.ts.map +1 -1
- package/lib/client.js +4030 -196
- package/lib/client.js.map +4 -4
- package/lib/design-tokens.d.ts +12 -0
- package/lib/design-tokens.d.ts.map +1 -0
- package/lib/design-tokens.js +58 -0
- package/lib/design-tokens.js.map +1 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +3 -0
- package/lib/index.js.map +1 -1
- package/lib/knowledge-activity-api.d.ts +35 -0
- package/lib/knowledge-activity-api.d.ts.map +1 -0
- package/lib/knowledge-activity-api.js +115 -0
- package/lib/knowledge-activity-api.js.map +1 -0
- package/lib/knowledge-activity-controller.d.ts +20 -0
- package/lib/knowledge-activity-controller.d.ts.map +1 -0
- package/lib/knowledge-activity-controller.js +138 -0
- package/lib/knowledge-activity-controller.js.map +1 -0
- package/lib/knowledge-activity-notes.d.ts +9 -0
- package/lib/knowledge-activity-notes.d.ts.map +1 -0
- package/lib/knowledge-activity-notes.js +150 -0
- package/lib/knowledge-activity-notes.js.map +1 -0
- package/lib/knowledge-activity-panel.d.ts +8 -0
- package/lib/knowledge-activity-panel.d.ts.map +1 -0
- package/lib/knowledge-activity-panel.js +245 -0
- package/lib/knowledge-activity-panel.js.map +1 -0
- package/lib/knowledge-activity-presentation.d.ts +14 -0
- package/lib/knowledge-activity-presentation.d.ts.map +1 -0
- package/lib/knowledge-activity-presentation.js +77 -0
- package/lib/knowledge-activity-presentation.js.map +1 -0
- package/lib/knowledge-activity-state.d.ts +17 -0
- package/lib/knowledge-activity-state.d.ts.map +1 -0
- package/lib/knowledge-activity-state.js +14 -0
- package/lib/knowledge-activity-state.js.map +1 -0
- package/lib/latest-request.d.ts +7 -0
- package/lib/latest-request.d.ts.map +1 -0
- package/lib/latest-request.js +14 -0
- package/lib/latest-request.js.map +1 -0
- package/lib/local-provider.d.ts +0 -2
- package/lib/local-provider.d.ts.map +1 -1
- package/lib/local-provider.js +2 -323
- package/lib/local-provider.js.map +1 -1
- package/lib/notes/share-page-styles.d.ts +2 -0
- package/lib/notes/share-page-styles.d.ts.map +1 -0
- package/lib/notes/share-page-styles.js +11 -0
- package/lib/notes/share-page-styles.js.map +1 -0
- package/lib/notes/share-page.d.ts.map +1 -1
- package/lib/notes/share-page.js +1 -8
- package/lib/notes/share-page.js.map +1 -1
- package/lib/storage/migrations.d.ts +5 -0
- package/lib/storage/migrations.d.ts.map +1 -0
- package/lib/storage/migrations.js +325 -0
- package/lib/storage/migrations.js.map +1 -0
- package/lib/theme-bridge.d.ts +9 -7
- package/lib/theme-bridge.d.ts.map +1 -1
- package/lib/theme-bridge.js +3 -23
- package/lib/theme-bridge.js.map +1 -1
- package/lib/web-note-editor-outline.js +2 -2
- package/lib/web-note-editor-outline.js.map +1 -1
- package/lib/web-note-editor-selection.d.ts.map +1 -1
- package/lib/web-note-editor-selection.js +51 -16
- package/lib/web-note-editor-selection.js.map +1 -1
- package/lib/web-note-editor.d.ts.map +1 -1
- package/lib/web-note-editor.js +15 -1
- package/lib/web-note-editor.js.map +1 -1
- package/lib/web.d.ts.map +1 -1
- package/lib/web.js +4 -0
- package/lib/web.js.map +1 -1
- package/package.json +4 -1
- package/web/app.js +111 -191
- package/web/design-tokens.css +1 -0
- package/web/dialogs.js +94 -0
- package/web/document-actions.js +68 -0
- package/web/index.html +1 -0
- package/web/model-catalog.js +22 -0
- package/web/note-editor.js +57 -57
- package/web/select-control.js +193 -0
- package/web/styles.css +162 -203
- package/web/ui-primitives.js +5 -0
package/web/styles.css
CHANGED
|
@@ -2,31 +2,6 @@
|
|
|
2
2
|
color-scheme: light dark;
|
|
3
3
|
font-family: var(--font-ui);
|
|
4
4
|
font-size: 16px;
|
|
5
|
-
--font-ui: ui-sans-serif, -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Inter, "PingFang SC", "Noto Sans CJK SC", "Microsoft YaHei UI", Arial, sans-serif;
|
|
6
|
-
--font-reading: ui-sans-serif, -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", "PingFang SC", "Noto Sans CJK SC", "Microsoft YaHei UI", Arial, sans-serif;
|
|
7
|
-
--font-mono: "SFMono-Regular", "Cascadia Code", "Cascadia Mono", Menlo, Consolas, monospace;
|
|
8
|
-
--bg: #ebebeb;
|
|
9
|
-
--surface: #f4f4f4;
|
|
10
|
-
--surface-raised: #fafafa;
|
|
11
|
-
--surface-soft: #eeeeef;
|
|
12
|
-
--surface-hover: rgb(118 118 128 / 9%);
|
|
13
|
-
--dialog-surface: #f4f4f4;
|
|
14
|
-
--text: #1d1d1f;
|
|
15
|
-
--text-secondary: #515154;
|
|
16
|
-
--text-tertiary: #6e6e73;
|
|
17
|
-
--border: rgb(60 60 67 / 14%);
|
|
18
|
-
--border-strong: rgb(60 60 67 / 24%);
|
|
19
|
-
--accent: #3a3a3c;
|
|
20
|
-
--accent-hover: #1d1d1f;
|
|
21
|
-
--accent-soft: #e2e2e5;
|
|
22
|
-
--on-accent: #ffffff;
|
|
23
|
-
--success: #248a3d;
|
|
24
|
-
--success-soft: #e8f5eb;
|
|
25
|
-
--warning: #c93400;
|
|
26
|
-
--warning-soft: #fff1e8;
|
|
27
|
-
--danger: #d70015;
|
|
28
|
-
--danger-soft: #ffebed;
|
|
29
|
-
--shadow: 0 24px 64px rgb(0 0 0 / 20%);
|
|
30
5
|
--radius: 14px;
|
|
31
6
|
--radius-control: 9px;
|
|
32
7
|
--radius-small: 7px;
|
|
@@ -43,87 +18,40 @@
|
|
|
43
18
|
--surface-canvas: var(--bg);
|
|
44
19
|
--surface-pane: transparent;
|
|
45
20
|
--surface-editor: transparent;
|
|
46
|
-
--surface-overlay: rgba(246, 247, 250, 0.88);
|
|
47
21
|
--shadow-control: 0 1px 2px rgb(0 0 0 / 5.5%), inset 0 1px 0 rgb(255 255 255 / 58%);
|
|
48
22
|
--shadow-floating: 0 22px 70px color-mix(in srgb, var(--text) 18%, transparent), 0 2px 8px color-mix(in srgb, var(--text) 8%, transparent);
|
|
49
|
-
--glass-clear: color-mix(in srgb, var(--surface-raised) 20%, transparent);
|
|
50
23
|
--glass-regular: color-mix(in srgb, var(--surface-raised) 36%, transparent);
|
|
51
|
-
--glass-thick: color-mix(in srgb, var(--surface-raised) 62%, transparent);
|
|
52
24
|
--glass-border: color-mix(in srgb, var(--border) 58%, transparent);
|
|
53
25
|
--glass-separator: var(--border);
|
|
54
26
|
--glass-rim-light: color-mix(in srgb, var(--surface-raised) 58%, transparent);
|
|
55
27
|
--glass-rim-shadow: color-mix(in srgb, var(--text) 12%, transparent);
|
|
56
28
|
--glass-filter: saturate(1.22) contrast(1.03) blur(32px);
|
|
57
29
|
--glass-shadow: inset 0 1px 0 var(--glass-rim-light), inset 0 -1px 0 var(--glass-rim-shadow), 0 10px 28px rgb(0 0 0 / 8.5%);
|
|
58
|
-
--liquid-glass-large: color-mix(in srgb, var(--surface) 68%, transparent);
|
|
59
|
-
--liquid-glass-regular: color-mix(in srgb, var(--surface-raised) 52%, transparent);
|
|
60
|
-
--liquid-glass-clear: color-mix(in srgb, var(--surface-raised) 36%, transparent);
|
|
61
|
-
--liquid-glass-dialog: color-mix(in srgb, var(--surface-raised) 76%, transparent);
|
|
62
|
-
--interaction-glow-core: rgb(67 70 77 / 78%);
|
|
63
|
-
--interaction-glow-soft: rgb(111 115 124 / 36%);
|
|
64
|
-
--interaction-glow-haze: rgb(255 255 255 / 72%);
|
|
65
|
-
--interaction-glare-light: rgb(255 255 255 / 72%);
|
|
66
|
-
--interaction-glare-rim: rgb(45 48 54 / 12%);
|
|
67
|
-
--card-highlight: rgb(255 255 255 / 58%);
|
|
68
|
-
--card-fill: color-mix(in srgb, var(--surface-raised) 48%, transparent);
|
|
69
30
|
--radius-shell: 18px;
|
|
70
31
|
--radius-panel: 12px;
|
|
71
32
|
--motion-fast: 120ms;
|
|
72
33
|
--motion-base: 190ms;
|
|
73
34
|
--motion-slow: 280ms;
|
|
74
35
|
--ease-out: cubic-bezier(.22, 1, .36, 1);
|
|
75
|
-
--ease-spring: cubic-bezier(.2, .9, .25, 1.04);
|
|
76
36
|
--font-caption: 12px;
|
|
77
37
|
--font-body: 13px;
|
|
78
|
-
--font-label: 14px;
|
|
79
38
|
--font-title: 18px;
|
|
80
|
-
--font-heading: 22px;
|
|
81
39
|
--sidebar-width: 214px;
|
|
82
40
|
--chrome-inset: 8px;
|
|
83
|
-
--topbar-inline-inset: 0px;
|
|
84
41
|
--scrollbar-thumb: color-mix(in srgb, var(--text-tertiary) 42%, transparent);
|
|
85
42
|
--scrollbar-thumb-hover: color-mix(in srgb, var(--text-secondary) 58%, transparent);
|
|
86
43
|
}
|
|
87
44
|
|
|
88
45
|
@media (prefers-color-scheme: dark) {
|
|
89
46
|
:root:not([data-color-scheme]) {
|
|
90
|
-
--bg: #101719;
|
|
91
|
-
--surface: #182022;
|
|
92
|
-
--surface-raised: #20292b;
|
|
93
|
-
--surface-soft: rgb(255 255 255 / 6%);
|
|
94
|
-
--surface-hover: rgb(255 255 255 / 7.5%);
|
|
95
|
-
--dialog-surface: #20292b;
|
|
96
|
-
--text: #e3eaeb;
|
|
97
|
-
--text-secondary: #bbc9cc;
|
|
98
|
-
--text-tertiary: #95a7ab;
|
|
99
|
-
--border: rgb(184 204 205 / 10%);
|
|
100
|
-
--border-strong: rgb(184 204 205 / 18%);
|
|
101
|
-
--accent: #69b6ba;
|
|
102
|
-
--accent-hover: #8aced0;
|
|
103
|
-
--accent-soft: rgb(105 182 186 / 13%);
|
|
104
|
-
--on-accent: #101819;
|
|
105
|
-
--success: #30d158;
|
|
106
|
-
--success-soft: rgb(48 209 88 / 13%);
|
|
107
|
-
--warning: #ff9f0a;
|
|
108
|
-
--warning-soft: rgb(255 159 10 / 13%);
|
|
109
|
-
--danger: #ff453a;
|
|
110
|
-
--danger-soft: rgb(255 69 58 / 14%);
|
|
111
|
-
--shadow: 0 28px 72px rgb(0 0 0 / 48%);
|
|
112
47
|
--surface-highlight: rgb(255 255 255 / 11%);
|
|
113
48
|
--shadow-soft: 0 1px 2px rgb(0 0 0 / 28%);
|
|
114
49
|
--shadow-panel: 0 2px 7px rgb(0 0 0 / 20%), 0 14px 36px rgb(0 0 0 / 28%);
|
|
115
50
|
--shadow-control: 0 1px 2px rgb(0 0 0 / 28%), 0 5px 16px rgb(0 0 0 / 18%), inset 0 1px 0 rgb(255 255 255 / 11%);
|
|
116
51
|
--shadow-floating: 0 24px 72px rgb(0 0 0 / 52%), 0 2px 8px rgb(0 0 0 / 28%);
|
|
117
52
|
--glass-shadow: inset 0 1px 0 var(--glass-rim-light), inset 0 -1px 0 var(--glass-rim-shadow), 0 12px 32px rgb(0 0 0 / 30%);
|
|
118
|
-
--interaction-glow-core: rgb(244 244 247 / 78%);
|
|
119
|
-
--interaction-glow-soft: rgb(197 199 205 / 34%);
|
|
120
|
-
--interaction-glow-haze: rgb(255 255 255 / 42%);
|
|
121
|
-
--interaction-glare-light: rgb(255 255 255 / 34%);
|
|
122
|
-
--interaction-glare-rim: rgb(255 255 255 / 10%);
|
|
123
53
|
--glass-rim-light: rgb(255 255 255 / 18%);
|
|
124
54
|
--glass-rim-shadow: rgb(0 0 0 / 30%);
|
|
125
|
-
--card-highlight: rgb(255 255 255 / 11%);
|
|
126
|
-
--card-fill: rgb(7 9 11 / 22%);
|
|
127
55
|
--workspace-glass-surface: rgb(25 33 35 / 90%);
|
|
128
56
|
--material-toolbar: transparent;
|
|
129
57
|
--material-panel: rgb(32 41 43 / 58%);
|
|
@@ -131,7 +59,6 @@
|
|
|
131
59
|
--material-control-hover: rgb(39 50 53 / 84%);
|
|
132
60
|
--surface-pane: transparent;
|
|
133
61
|
--surface-editor: transparent;
|
|
134
|
-
--surface-overlay: rgb(25 33 35 / 94%);
|
|
135
62
|
}
|
|
136
63
|
}
|
|
137
64
|
|
|
@@ -144,13 +71,6 @@
|
|
|
144
71
|
--shadow-control: 0 1px 2px rgb(0 0 0 / 28%), 0 5px 16px rgb(0 0 0 / 18%), inset 0 1px 0 rgb(255 255 255 / 11%);
|
|
145
72
|
--shadow-floating: 0 24px 72px rgb(0 0 0 / 52%), 0 2px 8px rgb(0 0 0 / 28%);
|
|
146
73
|
--glass-shadow: inset 0 1px 0 var(--glass-rim-light), inset 0 -1px 0 var(--glass-rim-shadow), 0 12px 32px rgb(0 0 0 / 30%);
|
|
147
|
-
--interaction-glow-core: rgb(244 244 247 / 78%);
|
|
148
|
-
--interaction-glow-soft: rgb(197 199 205 / 34%);
|
|
149
|
-
--interaction-glow-haze: rgb(255 255 255 / 42%);
|
|
150
|
-
--interaction-glare-light: rgb(255 255 255 / 34%);
|
|
151
|
-
--interaction-glare-rim: rgb(255 255 255 / 10%);
|
|
152
|
-
--card-highlight: rgb(255 255 255 / 11%);
|
|
153
|
-
--card-fill: rgb(7 9 11 / 22%);
|
|
154
74
|
--workspace-glass-surface: rgb(25 33 35 / 90%);
|
|
155
75
|
--material-toolbar: transparent;
|
|
156
76
|
--material-panel: rgb(32 41 43 / 58%);
|
|
@@ -158,7 +78,6 @@
|
|
|
158
78
|
--material-control-hover: rgb(39 50 53 / 84%);
|
|
159
79
|
--surface-pane: transparent;
|
|
160
80
|
--surface-editor: transparent;
|
|
161
|
-
--surface-overlay: rgb(25 33 35 / 94%);
|
|
162
81
|
}
|
|
163
82
|
|
|
164
83
|
* { box-sizing: border-box; }
|
|
@@ -183,13 +102,9 @@ body {
|
|
|
183
102
|
/* The workspace and iframe remain transparent. Only the visible sidebar and
|
|
184
103
|
main pane own material, preventing a full-page glass sheet. */
|
|
185
104
|
:root[data-dsh-embed-mode="embedded"] {
|
|
186
|
-
--workspace-glass-surface:
|
|
187
|
-
--glass-filter:
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
:root[data-dsh-embed-mode="embedded"][data-color-scheme="dark"] {
|
|
191
|
-
--workspace-glass-surface: rgb(16 23 25 / 18%);
|
|
192
|
-
--glass-filter: saturate(.55) contrast(1.02) blur(24px);
|
|
105
|
+
--workspace-glass-surface: var(--knowledge-embedded-surface);
|
|
106
|
+
--glass-filter: var(--knowledge-embedded-filter);
|
|
107
|
+
--material-control: var(--knowledge-embedded-control);
|
|
193
108
|
}
|
|
194
109
|
|
|
195
110
|
:root[data-dsh-embed-mode="embedded"],
|
|
@@ -282,7 +197,7 @@ button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-
|
|
|
282
197
|
|
|
283
198
|
button:disabled { cursor: not-allowed; opacity: .56; }
|
|
284
199
|
|
|
285
|
-
::selection { background: var(--
|
|
200
|
+
::selection { background: var(--selection-background); color: var(--selection-text); }
|
|
286
201
|
|
|
287
202
|
input:-webkit-autofill,
|
|
288
203
|
input:-webkit-autofill:hover,
|
|
@@ -393,7 +308,7 @@ html,
|
|
|
393
308
|
background-color: var(--material-control);
|
|
394
309
|
color: var(--text);
|
|
395
310
|
box-shadow: var(--shadow-control);
|
|
396
|
-
transition: background-color var(--motion-fast) ease, border-color var(--motion-fast) ease
|
|
311
|
+
transition: background-color var(--motion-fast) ease, border-color var(--motion-fast) ease;
|
|
397
312
|
}
|
|
398
313
|
|
|
399
314
|
.input, .select { height: 38px; min-height: 38px; font: inherit; line-height: 20px; }
|
|
@@ -411,6 +326,18 @@ html,
|
|
|
411
326
|
background-repeat: no-repeat;
|
|
412
327
|
}
|
|
413
328
|
.select option { background: var(--dialog-surface); color: var(--text); }
|
|
329
|
+
.knowledge-select { display: inline-flex; min-width: 0; width: 100%; vertical-align: middle; }
|
|
330
|
+
.knowledge-select-source { display: none !important; }
|
|
331
|
+
.knowledge-select-trigger { display: block; min-width: 0; width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: left; }
|
|
332
|
+
.knowledge-select-trigger[aria-invalid="true"] { border-color: var(--danger); outline: 2px solid var(--danger); outline-offset: 2px; }
|
|
333
|
+
.knowledge-select-menu { position: fixed; z-index: 1200; overflow: auto; overscroll-behavior: contain; border: 1px solid var(--border-strong); border-radius: var(--radius-control); padding: 4px; background: var(--dialog-surface); color: var(--text); box-shadow: var(--shadow-floating); scrollbar-width: thin; }
|
|
334
|
+
.knowledge-select-option { display: block; width: 100%; min-height: 36px; border: 0; border-radius: var(--radius-small); padding: 8px 10px; background: transparent; color: var(--text); font: inherit; text-align: left; overflow-wrap: anywhere; cursor: pointer; }
|
|
335
|
+
.knowledge-select-option:hover, .knowledge-select-option:focus-visible { background: var(--surface-hover); outline-offset: -2px; }
|
|
336
|
+
.knowledge-select-option[aria-selected="true"] { background: var(--accent-soft); color: var(--accent); font-weight: 600; }
|
|
337
|
+
.knowledge-select-empty { margin: 0; padding: 10px; color: var(--text-secondary); }
|
|
338
|
+
.toolbar > .knowledge-select, .mount-manager-toolbar > .knowledge-select { width: auto; min-width: 132px; }
|
|
339
|
+
.app-sidebar-scrim[hidden] { display: none; }
|
|
340
|
+
@media (pointer: coarse) { .knowledge-select-option { min-height: 44px; } }
|
|
414
341
|
.textarea { min-height: 132px; resize: vertical; }
|
|
415
342
|
.input::placeholder, .textarea::placeholder { color: var(--text-tertiary); }
|
|
416
343
|
.input:hover, .select:hover, .textarea:hover { border-color: color-mix(in srgb, var(--border-strong) 72%, var(--border)); background-color: var(--material-control-hover); }
|
|
@@ -428,11 +355,11 @@ html,
|
|
|
428
355
|
font-weight: 590;
|
|
429
356
|
white-space: nowrap;
|
|
430
357
|
box-shadow: var(--shadow-control);
|
|
431
|
-
transition: background var(--motion-fast) ease, border-color var(--motion-fast) ease,
|
|
358
|
+
transition: background-color var(--motion-fast) ease, border-color var(--motion-fast) ease, color var(--motion-fast) ease;
|
|
432
359
|
}
|
|
433
360
|
|
|
434
|
-
.button:hover:not(:disabled) { background: var(--material-control-hover); border-color: var(--border-strong);
|
|
435
|
-
.button:active:not(:disabled) {
|
|
361
|
+
.button:hover:not(:disabled) { background: var(--material-control-hover); border-color: var(--border-strong); }
|
|
362
|
+
.button:active:not(:disabled) { border-color: var(--text-secondary); }
|
|
436
363
|
.button.primary { border-color: color-mix(in srgb, var(--accent) 82%, var(--border)); background: var(--accent); color: var(--on-accent); box-shadow: inset 0 1px 0 color-mix(in srgb, var(--on-accent) 24%, transparent), 0 1px 3px color-mix(in srgb, var(--text) 16%, transparent); }
|
|
437
364
|
.button.primary:hover:not(:disabled) { border-color: var(--accent-hover); background: var(--accent-hover); box-shadow: inset 0 1px 0 color-mix(in srgb, var(--on-accent) 26%, transparent), 0 2px 6px color-mix(in srgb, var(--text) 14%, transparent); }
|
|
438
365
|
.button.danger { border-color: color-mix(in srgb, var(--danger) 40%, var(--border)); color: var(--danger); }
|
|
@@ -452,7 +379,6 @@ html,
|
|
|
452
379
|
align-items: start;
|
|
453
380
|
overflow: hidden;
|
|
454
381
|
background: transparent;
|
|
455
|
-
transition: grid-template-columns 230ms var(--ease-out);
|
|
456
382
|
}
|
|
457
383
|
|
|
458
384
|
.sidebar {
|
|
@@ -474,10 +400,6 @@ html,
|
|
|
474
400
|
box-shadow: inset 0 1px 0 var(--surface-highlight), var(--shadow-soft);
|
|
475
401
|
-webkit-backdrop-filter: var(--glass-filter);
|
|
476
402
|
backdrop-filter: var(--glass-filter);
|
|
477
|
-
transform-origin: left center;
|
|
478
|
-
transition:
|
|
479
|
-
opacity 150ms ease-out,
|
|
480
|
-
transform 230ms var(--ease-out);
|
|
481
403
|
}
|
|
482
404
|
|
|
483
405
|
.brand { display: flex; align-items: center; gap: 11px; min-height: 56px; margin-bottom: 8px; padding: 3px 8px 12px; border-bottom: 1px solid var(--separator); }
|
|
@@ -519,10 +441,10 @@ html,
|
|
|
519
441
|
text-align: left;
|
|
520
442
|
font-size: 13px;
|
|
521
443
|
font-weight: 520;
|
|
522
|
-
transition: background
|
|
444
|
+
transition: background-color var(--motion-fast) ease, color var(--motion-fast) ease;
|
|
523
445
|
}
|
|
524
446
|
.nav-button:hover { background: var(--surface-hover); color: var(--text); }
|
|
525
|
-
.nav-button:active {
|
|
447
|
+
.nav-button:active { background: var(--material-control); }
|
|
526
448
|
.nav-button[aria-current="page"] { background: var(--material-control); color: var(--text); font-weight: 640; box-shadow: var(--shadow-control); }
|
|
527
449
|
.nav-button[aria-current="page"]::before { content: ""; position: absolute; top: 9px; bottom: 9px; left: -1px; width: 2px; border-radius: 2px; background: var(--text-secondary); opacity: .72; }
|
|
528
450
|
.nav-index { width: 18px; flex: none; color: color-mix(in srgb, var(--text-tertiary) 70%, transparent); font: 8px/1.2 ui-monospace, "SFMono-Regular", Consolas, monospace; letter-spacing: .04em; transition: color var(--motion-fast) ease; }
|
|
@@ -549,10 +471,7 @@ html,
|
|
|
549
471
|
touch-action: none;
|
|
550
472
|
background: transparent;
|
|
551
473
|
outline-offset: -2px;
|
|
552
|
-
transition:
|
|
553
|
-
opacity 130ms ease-out,
|
|
554
|
-
transform 210ms var(--ease-out),
|
|
555
|
-
background-color var(--motion-fast) ease;
|
|
474
|
+
transition: background-color var(--motion-fast) ease;
|
|
556
475
|
}
|
|
557
476
|
.app-sidebar-resizer::before {
|
|
558
477
|
content: "";
|
|
@@ -627,7 +546,7 @@ html,
|
|
|
627
546
|
.topbar-heading { min-width: 0; }
|
|
628
547
|
.topbar-kicker { display: block; margin-bottom: 2px; color: var(--text-tertiary); font: 8px/1.2 ui-monospace, "SFMono-Regular", Consolas, monospace; font-weight: 700; letter-spacing: .12em; }
|
|
629
548
|
.route-progress { position: absolute; right: 0; bottom: -1px; left: 0; height: 2px; overflow: hidden; background: color-mix(in srgb, var(--accent) 7%, transparent); }
|
|
630
|
-
.route-progress span { display: block; width:
|
|
549
|
+
.route-progress span { display: block; width: 100%; height: 100%; border-radius: 0 99px 99px 0; background: linear-gradient(90deg, color-mix(in srgb, var(--accent) 58%, transparent), var(--accent)); transform: scaleX(var(--route-progress)); transform-origin: left center; transition: transform var(--motion-fast) ease-out; }
|
|
631
550
|
.mobile-menu, .app-sidebar-scrim { display: none; }
|
|
632
551
|
.topbar-actions { display: flex; align-items: center; gap: 8px; }
|
|
633
552
|
.pane-toggle-group {
|
|
@@ -732,10 +651,7 @@ html,
|
|
|
732
651
|
.candidate-heading-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
|
|
733
652
|
|
|
734
653
|
.metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-bottom: 30px; }
|
|
735
|
-
.metric { position: relative; min-width: 0; overflow: hidden; border: 1px solid var(--glass-border); border-radius: var(--radius-panel); padding: 18px; background: var(--material-panel); box-shadow: var(--shadow-control);
|
|
736
|
-
.metric::after { content: ""; position: absolute; inset: auto 18px 0; height: 1px; background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--accent) 32%, transparent), transparent); opacity: 0; transition: opacity var(--motion-base) ease; }
|
|
737
|
-
.metric:hover { border-color: var(--border-strong); box-shadow: var(--shadow-panel); transform: translateY(-2px); }
|
|
738
|
-
.metric:hover::after { opacity: 1; }
|
|
654
|
+
.metric { position: relative; min-width: 0; overflow: hidden; border: 1px solid var(--glass-border); border-radius: var(--radius-panel); padding: 18px; background: var(--material-panel); box-shadow: var(--shadow-control); }
|
|
739
655
|
.metric-label { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: var(--text-secondary); font-size: 12px; font-weight: 600; }
|
|
740
656
|
.metric-value { display: block; margin-top: 8px; font-size: 27px; line-height: 1.15; font-weight: 700; font-variant-numeric: tabular-nums; letter-spacing: -.03em; }
|
|
741
657
|
.metric-detail { margin-top: 7px; color: var(--text-tertiary); font-size: 11px; }
|
|
@@ -811,12 +727,12 @@ html,
|
|
|
811
727
|
padding: 16px;
|
|
812
728
|
background: var(--material-panel);
|
|
813
729
|
box-shadow: inset 0 1px 0 var(--surface-highlight), var(--shadow-soft);
|
|
814
|
-
transition: background
|
|
730
|
+
transition: background-color var(--motion-fast) ease, border-color var(--motion-fast) ease;
|
|
815
731
|
content-visibility: auto;
|
|
816
732
|
contain-intrinsic-size: auto 218px;
|
|
817
733
|
}
|
|
818
734
|
.base-card::after { position: absolute; top: 0; right: 18px; left: 18px; height: 1px; background: linear-gradient(90deg, transparent, var(--surface-highlight), transparent); pointer-events: none; content: ''; }
|
|
819
|
-
.base-card:hover { border-color: var(--border-strong); background: color-mix(in srgb, var(--surface-raised) 92%, var(--surface-hover));
|
|
735
|
+
.base-card:hover { border-color: var(--border-strong); background: color-mix(in srgb, var(--surface-raised) 92%, var(--surface-hover)); }
|
|
820
736
|
.base-card.is-archived { opacity: .78; }
|
|
821
737
|
.base-card-header { min-width: 0; grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
|
|
822
738
|
.base-card-identity { min-width: 0; display: flex; align-items: center; gap: 11px; }
|
|
@@ -918,11 +834,9 @@ html,
|
|
|
918
834
|
}
|
|
919
835
|
.note-tree-group + .note-tree-group { margin-top: 3px; }
|
|
920
836
|
.note-tree-base, .note-tree-document, .note-tree-new { width: 100%; display: flex; align-items: center; border: 0; background: transparent; color: var(--text-secondary); text-align: left; }
|
|
921
|
-
.note-tree-base { position: relative; min-height: 36px; gap: 7px; border-radius: 9px; padding: 5px 7px; font-weight: 620; transition: background var(--motion-fast) ease, color var(--motion-fast) ease
|
|
922
|
-
.note-tree-base:hover, .note-tree-document:hover, .note-tree-new:hover { background: var(--surface-hover); color: var(--text);
|
|
923
|
-
.note-tree-group[data-drop-target="true"] > .note-tree-base { background: color-mix(in srgb, var(--accent) 13%, var(--surface)); color: var(--text); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 44%, transparent), var(--shadow-control); transform: translateX(2px); }
|
|
837
|
+
.note-tree-base { position: relative; min-height: 36px; gap: 7px; border-radius: 9px; padding: 5px 7px; font-weight: 620; transition: background var(--motion-fast) ease, color var(--motion-fast) ease; }
|
|
838
|
+
.note-tree-base:hover, .note-tree-document:hover, .note-tree-new:hover { background: var(--surface-hover); color: var(--text); }
|
|
924
839
|
.note-tree-group[data-drop-target="true"] > .note-tree-base .tree-count { visibility: hidden; }
|
|
925
|
-
.note-tree-group[data-drop-target="true"] > .note-tree-base::after { content: "移动到这里"; position: absolute; right: 7px; border-radius: 5px; padding: 2px 6px; background: var(--surface-raised); color: var(--accent); font-size: 9px; font-weight: 650; pointer-events: none; }
|
|
926
840
|
.tree-disclosure { width: 7px; height: 7px; flex: none; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(-45deg); transition: transform .16s ease; }
|
|
927
841
|
.note-tree-group[data-expanded="true"] .tree-disclosure { transform: rotate(45deg) translate(-1px, -1px); }
|
|
928
842
|
.tree-folder-icon {
|
|
@@ -940,12 +854,9 @@ html,
|
|
|
940
854
|
.tree-base-name { min-width: 0; flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
|
|
941
855
|
.tree-count { min-width: 20px; color: var(--text-tertiary); font-size: 10px; font-variant-numeric: tabular-nums; text-align: right; }
|
|
942
856
|
.note-tree-documents { display: grid; gap: 1px; margin: 1px 0 5px 18px; padding-left: 10px; border-left: 1px solid color-mix(in srgb, var(--border-strong) 55%, transparent); }
|
|
943
|
-
.note-tree-document { position: relative; min-height: 40px; gap: 8px; border-radius: 9px; padding: 5px 8px; transition: background var(--motion-fast) ease, color var(--motion-fast) ease
|
|
944
|
-
.note-tree-document[draggable="true"] { cursor: grab; }
|
|
945
|
-
.note-tree-document[draggable="true"]:active { cursor: grabbing; }
|
|
946
|
-
.note-tree-document[data-dragging="true"] { opacity: .42; transform: translateX(5px) scale(.985); }
|
|
857
|
+
.note-tree-document { position: relative; min-height: 40px; gap: 8px; border-radius: 9px; padding: 5px 8px; transition: background var(--motion-fast) ease, color var(--motion-fast) ease; }
|
|
947
858
|
.note-tree-document[aria-busy="true"] { opacity: .58; pointer-events: none; }
|
|
948
|
-
.note-tree-document[aria-current="page"] { background: var(--material-control); color: var(--text); box-shadow: inset 2px 0 0 color-mix(in srgb, var(--text-secondary) 74%, transparent), var(--shadow-control);
|
|
859
|
+
.note-tree-document[aria-current="page"] { background: var(--material-control); color: var(--text); box-shadow: inset 2px 0 0 color-mix(in srgb, var(--text-secondary) 74%, transparent), var(--shadow-control); }
|
|
949
860
|
.tree-document-icon {
|
|
950
861
|
width: 14px;
|
|
951
862
|
height: 17px;
|
|
@@ -983,6 +894,7 @@ html,
|
|
|
983
894
|
overflow: hidden;
|
|
984
895
|
background: transparent;
|
|
985
896
|
}
|
|
897
|
+
.notes-browser-scrim { display: none; }
|
|
986
898
|
.notes-browser { min-width: 0; min-height: 0; display: grid; grid-template-rows: auto auto minmax(0, 1fr); overflow: hidden; border-right: 1px solid var(--glass-separator); background: transparent; box-shadow: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
|
|
987
899
|
.notes-browser-header { min-height: 68px; display: grid; gap: 8px; padding: 10px 10px 7px; }
|
|
988
900
|
.notes-browser-header > div:first-child { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
|
|
@@ -1011,14 +923,17 @@ html,
|
|
|
1011
923
|
.notes-tree-branch[role="group"] { position: relative; margin-left: 17px; padding-left: 5px; }
|
|
1012
924
|
.notes-tree-branch[role="group"]::before { content: ""; position: absolute; top: 0; bottom: 5px; left: 0; width: 1px; background: color-mix(in srgb, var(--border-strong) 48%, transparent); }
|
|
1013
925
|
.notes-tree-node { min-width: 0; max-width: 100%; }
|
|
1014
|
-
.notes-tree-item { --notes-row-actions-width: 118px; position: relative; width: 100%; max-width: 100%; min-width: 0; display: flex; align-items: center; border-radius: 8px; transition: background var(--motion-fast) ease
|
|
926
|
+
.notes-tree-item { --notes-row-actions-width: 118px; position: relative; width: 100%; max-width: 100%; min-width: 0; display: flex; align-items: center; border-radius: 8px; transition: background var(--motion-fast) ease; }
|
|
1015
927
|
.notes-tree-item:hover { background: var(--surface-hover); }
|
|
1016
|
-
.notes-tree-item[data-selected="true"] { background: var(--material-control); box-shadow: inset 2px 0 0 color-mix(in srgb, var(--text-secondary) 70%, transparent), var(--shadow-control);
|
|
1017
|
-
.notes-tree-item[data-drop-target="true"]
|
|
1018
|
-
.
|
|
928
|
+
.notes-tree-item[data-selected="true"] { background: var(--material-control); box-shadow: inset 2px 0 0 color-mix(in srgb, var(--text-secondary) 70%, transparent), var(--shadow-control); }
|
|
929
|
+
.notes-tree-item[data-drop-target="true"],
|
|
930
|
+
.note-tree-group[data-drop-target="true"] > .note-tree-base { background: color-mix(in srgb, var(--accent) 13%, var(--surface)); outline: 1px solid color-mix(in srgb, var(--accent) 38%, transparent); outline-offset: -1px; }
|
|
931
|
+
.notes-tree-item[data-drop-target="true"]::after,
|
|
932
|
+
.note-tree-group[data-drop-target="true"] > .note-tree-base::after { content: "放入此目录"; position: absolute; right: 6px; z-index: 2; border-radius: 4px; padding: 2px 5px; background: color-mix(in srgb, var(--surface-raised) 92%, transparent); color: var(--accent); font-size: 8px; font-weight: 620; pointer-events: none; }
|
|
933
|
+
.note-tree-group[data-drop-target="true"] > .note-tree-base::after { content: "移入此知识库"; }
|
|
1019
934
|
.notes-tree-item[data-drop-target="true"] .notes-row-actions { opacity: 0; pointer-events: none; }
|
|
1020
|
-
.notes-tree-item[data-dragging="true"] { opacity: .45; }
|
|
1021
|
-
.notes-tree-row { width: 100%; min-width: 0; min-height: 34px; display: flex; align-items: center; flex: 1 1 0; gap: 7px; overflow: hidden; border: 0; padding: 3px 4px; background: transparent; color: var(--text-secondary); font: inherit; text-align: left;
|
|
935
|
+
.notes-tree-item[data-dragging="true"], .note-tree-document[data-dragging="true"] { opacity: .45; }
|
|
936
|
+
.notes-tree-row { width: 100%; min-width: 0; min-height: 34px; display: flex; align-items: center; flex: 1 1 0; gap: 7px; overflow: hidden; border: 0; padding: 3px 4px; background: transparent; color: var(--text-secondary); font: inherit; text-align: left; }
|
|
1022
937
|
.notes-tree-row:hover, .notes-tree-row[aria-selected="true"] { color: var(--text); }
|
|
1023
938
|
.notes-tree-chevron, .notes-tree-spacer { position: relative; width: 14px; height: 20px; flex: none; color: var(--text-tertiary); }
|
|
1024
939
|
.notes-tree-chevron::before { content: ""; position: absolute; top: 50%; left: 3px; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: translateY(-50%) rotate(-45deg); transform-origin: center; transition: transform .16s cubic-bezier(.2, .8, .2, 1), color .14s ease; }
|
|
@@ -1120,9 +1035,9 @@ html,
|
|
|
1120
1035
|
.notes-content.is-document, .notes-content.is-file { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; overflow: hidden; }
|
|
1121
1036
|
.notes-content.is-document { --notes-document-inline: clamp(24px, 4.5vw, 76px); background: transparent; }
|
|
1122
1037
|
.notes-content.is-document.has-line-numbers { --notes-document-inline: clamp(34px, 3.2vw, 48px); }
|
|
1123
|
-
.notes-editor-frame { position: relative; min-width: 0; min-height: 0; display: grid; grid-template-columns: minmax(0, 1fr) 0; overflow: hidden; }
|
|
1038
|
+
.notes-editor-frame { position: relative; isolation: isolate; min-width: 0; min-height: 0; display: grid; grid-template-columns: minmax(0, 1fr) 0; overflow: hidden; }
|
|
1124
1039
|
.notes-editor-frame[data-outline-open="true"] { grid-template-columns: minmax(0, 1fr) minmax(190px, 236px); }
|
|
1125
|
-
.notes-document-toolbar { position: relative; z-index: 2; min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 14px; border-bottom: 1px solid var(--separator); padding: 5px 14px 5px 20px; background: transparent; -webkit-backdrop-filter: none; backdrop-filter: none; }
|
|
1040
|
+
.notes-document-toolbar { position: relative; z-index: 2; min-width: 0; min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 14px; border-bottom: 1px solid var(--separator); padding: 5px 14px 5px 20px; background: transparent; -webkit-backdrop-filter: none; backdrop-filter: none; }
|
|
1126
1041
|
.notes-toolbar-leading { min-width: 0; display: flex; flex: 1 1 auto; align-items: center; overflow: hidden; }
|
|
1127
1042
|
.notes-file-info { width: 100%; min-width: 0; display: grid; grid-template-columns: minmax(150px, 1.1fr) minmax(130px, 1fr) minmax(90px, .7fr) minmax(180px, 1.2fr); align-items: center; gap: 8px 18px; color: var(--text-tertiary); font-size: 10px; font-variant-numeric: tabular-nums; }
|
|
1128
1043
|
.notes-file-info-item { min-width: 0; display: grid; grid-template-columns: 34px minmax(0, 1fr); align-items: baseline; gap: 6px; }
|
|
@@ -1134,7 +1049,7 @@ html,
|
|
|
1134
1049
|
.notes-save-state[data-dirty="true"] { color: var(--warning); }
|
|
1135
1050
|
.notes-outline-action { display: inline-flex; align-items: center; gap: 6px; }
|
|
1136
1051
|
.notes-toolbar-action-icon { width: 16px; height: 16px; display: block; flex: none; color: currentColor; stroke-width: 2; }
|
|
1137
|
-
.notes-document-more { position: relative; display:
|
|
1052
|
+
.notes-document-more { position: relative; display: block; flex: none; }
|
|
1138
1053
|
.notes-document-more > summary { width: 44px; min-width: 44px; display: inline-grid; place-items: center; list-style: none; padding: 0; color: var(--text); user-select: none; }
|
|
1139
1054
|
.notes-document-more > summary::-webkit-details-marker { display: none; }
|
|
1140
1055
|
.notes-document-more > summary:hover, .notes-document-more[open] > summary { background: var(--surface-hover); color: var(--text); }
|
|
@@ -1145,35 +1060,45 @@ html,
|
|
|
1145
1060
|
right: 0;
|
|
1146
1061
|
z-index: 24;
|
|
1147
1062
|
width: min(230px, calc(100vw - 16px));
|
|
1063
|
+
overflow-y: auto;
|
|
1064
|
+
overscroll-behavior: contain;
|
|
1065
|
+
scrollbar-width: thin;
|
|
1148
1066
|
display: grid;
|
|
1149
1067
|
grid-template-columns: minmax(0, 1fr);
|
|
1150
1068
|
gap: 2px;
|
|
1151
1069
|
border: 1px solid var(--panel-border);
|
|
1152
1070
|
border-radius: 12px;
|
|
1153
1071
|
padding: 6px;
|
|
1154
|
-
background: var(--
|
|
1155
|
-
box-shadow:
|
|
1072
|
+
background: var(--menu-surface-solid);
|
|
1073
|
+
box-shadow: 0 8px 24px rgb(0 0 0 / 14%), 0 1px 4px rgb(0 0 0 / 8%);
|
|
1074
|
+
}
|
|
1075
|
+
@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
|
|
1076
|
+
.notes-document-more-menu {
|
|
1077
|
+
background: var(--menu-surface);
|
|
1078
|
+
-webkit-backdrop-filter: var(--knowledge-embedded-filter);
|
|
1079
|
+
backdrop-filter: var(--knowledge-embedded-filter);
|
|
1080
|
+
}
|
|
1156
1081
|
}
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
border-top: 1px solid var(--panel-border);
|
|
1164
|
-
border-left: 1px solid var(--panel-border);
|
|
1165
|
-
background: var(--dialog-surface);
|
|
1166
|
-
content: "";
|
|
1167
|
-
transform: rotate(45deg);
|
|
1082
|
+
@media (prefers-reduced-transparency: reduce), (pointer: coarse), (max-width: 760px) {
|
|
1083
|
+
.notes-document-more-menu {
|
|
1084
|
+
background: var(--menu-surface-solid);
|
|
1085
|
+
-webkit-backdrop-filter: none;
|
|
1086
|
+
backdrop-filter: none;
|
|
1087
|
+
}
|
|
1168
1088
|
}
|
|
1169
1089
|
.notes-document-more:not([open]) > .notes-document-more-menu { display: none; }
|
|
1170
1090
|
.notes-document-more-menu .button { min-width: 0; width: 100%; display: grid; grid-template-columns: 20px minmax(0, 1fr); align-items: center; justify-content: stretch; gap: 10px; border-color: transparent; padding: 8px 10px; box-shadow: none; text-align: left; }
|
|
1171
|
-
.notes-document-more-menu .button:hover:not(:disabled) { border-color: transparent; background: var(--surface-hover); box-shadow: none;
|
|
1091
|
+
.notes-document-more-menu .button:hover:not(:disabled) { border-color: transparent; background: var(--surface-hover); box-shadow: none; }
|
|
1092
|
+
.notes-document-more-menu .button:focus-visible { outline-offset: -2px; background: var(--surface-hover); }
|
|
1093
|
+
.notes-document-more-menu .is-danger :is(.notes-document-menu-icon, .notes-document-menu-label) { color: var(--danger); }
|
|
1094
|
+
.notes-document-more-menu .is-danger:hover { background: var(--danger-soft); }
|
|
1172
1095
|
.notes-document-menu-icon { width: 18px; height: 18px; display: block; color: var(--text); stroke-width: 2; }
|
|
1173
1096
|
.notes-document-menu-label { min-width: 0; overflow: hidden; color: var(--text); text-overflow: ellipsis; white-space: nowrap; }
|
|
1174
1097
|
.notes-document-menu-divider { height: 1px; margin: 4px 7px; background: var(--separator); }
|
|
1175
1098
|
.notes-document-scroll { min-width: 0; min-height: 0; overflow: auto; overscroll-behavior: contain; }
|
|
1176
1099
|
.notes-document-scroll { scroll-padding-block: 72px 48px; }
|
|
1100
|
+
/* Tint only the reading area; retain the surrounding pane's existing frost. */
|
|
1101
|
+
.notes-document-scroll, .note-editor-scroll { background: var(--document-surface); }
|
|
1177
1102
|
.notes-document-title { min-width: 0; margin: 0; padding: clamp(26px, 4vw, 48px) var(--notes-document-inline) 0; outline: 0; color: var(--text); font-family: var(--font-reading); font-size: clamp(25px, 2.5vw, 32px); font-weight: 700; line-height: 1.22; letter-spacing: -.025em; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; caret-color: var(--accent); }
|
|
1178
1103
|
.notes-document-title:focus, .notes-document-title:focus-visible { outline: 0; box-shadow: none; }
|
|
1179
1104
|
.notes-document-scroll > .notes-live-editor, .notes-document-scroll > .notes-plain-editor { width: 100%; min-width: 0; min-height: max(520px, calc(100% - 74px)); margin-top: 0; padding: 16px var(--notes-document-inline) 72px; }
|
|
@@ -1184,7 +1109,6 @@ html,
|
|
|
1184
1109
|
.notes-plain-editor-surface:focus, .notes-plain-editor-surface:focus-visible { border: 0; outline: 0; box-shadow: none; }
|
|
1185
1110
|
.notes-plain-editor-surface > p { position: relative; min-height: 1.78em; margin: 0; counter-increment: note-line; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; }
|
|
1186
1111
|
.notes-plain-editor-surface > p::before { content: counter(note-line); position: absolute; right: calc(100% + 8px); top: 0; width: 22px; color: color-mix(in srgb, var(--text-tertiary) 54%, transparent); font: 11px/2.25 var(--font-mono); font-variant-numeric: tabular-nums; text-align: right; pointer-events: none; user-select: none; }
|
|
1187
|
-
.notes-plain-editor-surface ::selection { background: color-mix(in srgb, var(--accent) 22%, transparent); }
|
|
1188
1112
|
.notes-live-editor-surface { width: 100%; min-width: 0; max-width: 100%; min-height: 520px; border: 0; outline: 0; background: transparent; color: color-mix(in srgb, var(--text) 82%, var(--text-secondary)); font: 16px/1.55 var(--font-reading); letter-spacing: normal; overflow-wrap: anywhere; word-break: break-word; caret-color: var(--accent); }
|
|
1189
1113
|
.notes-live-editor-surface p.is-editor-empty:first-child::before { height: 0; float: left; color: var(--text-tertiary); content: attr(data-placeholder); pointer-events: none; }
|
|
1190
1114
|
.notes-live-editor-surface:focus, .notes-live-editor-surface:focus-visible { border: 0; outline: 0; box-shadow: none; }
|
|
@@ -1230,7 +1154,7 @@ html,
|
|
|
1230
1154
|
.notes-find-input, .notes-selection-link-input { box-sizing: border-box; min-width: 0; height: 34px; border: 1px solid var(--panel-border); border-radius: 7px; padding: 6px 9px; background: var(--material-control); color: var(--text); font: inherit; font-size: 12px; box-shadow: var(--shadow-control); }
|
|
1231
1155
|
.notes-find-input:focus, .notes-selection-link-input:focus { border-color: var(--border-strong); outline: 3px solid color-mix(in srgb, var(--accent) 20%, transparent); outline-offset: 1px; }
|
|
1232
1156
|
.notes-find-status { min-width: 48px; color: var(--text-tertiary); font-size: 10px; font-variant-numeric: tabular-nums; text-align: center; }
|
|
1233
|
-
.notes-find-button, .notes-selection-control { min-height: 34px; border: 0; border-radius: 7px; padding: 5px 8px; background: transparent; color: var(--text-secondary); font: inherit; font-size: 11px; font-weight: 590; white-space: nowrap; transition: background var(--motion-fast) ease, color var(--motion-fast) ease
|
|
1157
|
+
.notes-find-button, .notes-selection-control { min-height: 34px; border: 0; border-radius: 7px; padding: 5px 8px; background: transparent; color: var(--text-secondary); font: inherit; font-size: 11px; font-weight: 590; white-space: nowrap; transition: background var(--motion-fast) ease, color var(--motion-fast) ease; }
|
|
1234
1158
|
.notes-find-button:hover:not(:disabled), .notes-selection-control:hover { background: var(--surface-hover); color: var(--text); }
|
|
1235
1159
|
.notes-find-button[aria-pressed="true"], .notes-selection-control[aria-pressed="true"], .notes-selection-control[aria-checked="true"] { background: var(--material-control); color: var(--accent); box-shadow: var(--shadow-control); }
|
|
1236
1160
|
.notes-find-button:disabled { opacity: .42; }
|
|
@@ -1271,7 +1195,7 @@ html,
|
|
|
1271
1195
|
.note-history-timeline-heading strong { font-size: 12px; font-weight: 650; }
|
|
1272
1196
|
.note-history-timeline-heading span { color: var(--text-tertiary); font-size: 10px; }
|
|
1273
1197
|
.note-history-version-list { min-height: 0; overflow: auto; overscroll-behavior: contain; padding: 6px; }
|
|
1274
|
-
.note-history-version { width: 100%; min-height: 58px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-content: center; gap: 2px 7px; border: 0; border-radius: 8px; padding: 8px 9px; background: transparent; color: var(--text); text-align: left; transition: background var(--motion-fast) ease
|
|
1198
|
+
.note-history-version { width: 100%; min-height: 58px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-content: center; gap: 2px 7px; border: 0; border-radius: 8px; padding: 8px 9px; background: transparent; color: var(--text); text-align: left; transition: background var(--motion-fast) ease; }
|
|
1275
1199
|
.note-history-version:hover { background: var(--surface-hover); }
|
|
1276
1200
|
.note-history-version[aria-current="true"] { background: var(--material-control); box-shadow: inset 2px 0 0 var(--accent), var(--shadow-control); }
|
|
1277
1201
|
.note-history-version strong { min-width: 0; overflow: hidden; font-size: 11px; font-weight: 630; text-overflow: ellipsis; white-space: nowrap; }
|
|
@@ -1345,7 +1269,7 @@ html,
|
|
|
1345
1269
|
.notes-transfer[data-state="complete"] .notes-transfer-mark { background: var(--success); box-shadow: 0 0 0 3px color-mix(in srgb, var(--success) 12%, transparent); }
|
|
1346
1270
|
.notes-transfer[data-state="error"] .notes-transfer-mark { background: var(--danger); box-shadow: 0 0 0 3px color-mix(in srgb, var(--danger) 12%, transparent); }
|
|
1347
1271
|
.notes-transfer[data-state="error"] .notes-transfer-detail { color: var(--danger); white-space: normal; }
|
|
1348
|
-
@keyframes notes-transfer-enter { from { opacity: 0;
|
|
1272
|
+
@keyframes notes-transfer-enter { from { opacity: 0; } to { opacity: 1; } }
|
|
1349
1273
|
@keyframes notes-transfer-scan { from { transform: translateX(-115%); } to { transform: translateX(295%); } }
|
|
1350
1274
|
.note-picker { display: grid; gap: 12px; }
|
|
1351
1275
|
.note-picker-results { max-height: min(58vh, 540px); overflow: auto; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); }
|
|
@@ -1398,7 +1322,7 @@ html,
|
|
|
1398
1322
|
.note-toolbar-meta { display: inline-flex; gap: 10px; margin-left: 8px; color: var(--text-tertiary); font-size: 10px; }
|
|
1399
1323
|
.note-toolbar-meta > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
|
|
1400
1324
|
.note-toolbar-meta > span + span::before { content: "·"; margin-right: 10px; color: var(--border-strong); }
|
|
1401
|
-
.note-editor-actions { min-width: 0; display: flex; flex
|
|
1325
|
+
.note-editor-actions { min-width: 0; display: flex; flex: none; align-items: center; justify-content: flex-end; gap: 6px; }
|
|
1402
1326
|
.editor-save-status { margin-right: 4px; color: var(--text-tertiary); font-size: 10px; white-space: nowrap; }
|
|
1403
1327
|
.note-editor-scroll {
|
|
1404
1328
|
min-height: 0;
|
|
@@ -1494,6 +1418,8 @@ html,
|
|
|
1494
1418
|
.document-reference-empty { color: var(--text-tertiary); font-size: 12px; }
|
|
1495
1419
|
.document-reference-add { min-height: 27px; white-space: nowrap; }
|
|
1496
1420
|
.note-inspector label { display: flex; align-items: center; gap: 7px; color: var(--text-tertiary); font-size: 10px; }
|
|
1421
|
+
.note-inspector label > span:not(.knowledge-select) { flex: none; white-space: nowrap; }
|
|
1422
|
+
.note-inspector .knowledge-select { width: auto; flex: none; }
|
|
1497
1423
|
.note-inspector input, .note-meta-select { height: 30px; border: 1px solid transparent; border-radius: 6px; padding: 4px 7px; background-color: transparent; color: var(--text-secondary); outline: none; }
|
|
1498
1424
|
.note-meta-select {
|
|
1499
1425
|
-webkit-appearance: none;
|
|
@@ -1510,30 +1436,19 @@ html,
|
|
|
1510
1436
|
}
|
|
1511
1437
|
.note-inspector input:focus, .note-meta-select:focus { border-color: var(--border-strong); background-color: var(--surface); }
|
|
1512
1438
|
.note-tags-field { min-width: 0; flex: 1; }
|
|
1513
|
-
.note-tags-field input { width: min(100%, 360px); }
|
|
1439
|
+
.note-tags-field input { width: min(100%, 360px); min-width: 0; }
|
|
1514
1440
|
.note-format-hint { margin-left: auto; color: var(--text-tertiary); font-size: 10px; white-space: nowrap; }
|
|
1515
1441
|
|
|
1516
|
-
@container note-editor (max-width:
|
|
1517
|
-
.note-
|
|
1518
|
-
|
|
1519
|
-
display: grid;
|
|
1520
|
-
grid-template-columns: minmax(0, 1fr);
|
|
1521
|
-
align-items: stretch;
|
|
1522
|
-
gap: 7px;
|
|
1523
|
-
padding: 9px 12px;
|
|
1524
|
-
}
|
|
1525
|
-
|
|
1526
|
-
.note-editor-actions {
|
|
1527
|
-
width: 100%;
|
|
1528
|
-
justify-content: flex-start;
|
|
1529
|
-
}
|
|
1530
|
-
|
|
1531
|
-
.editor-save-status { margin-left: auto; }
|
|
1442
|
+
@container note-editor (max-width: 920px) {
|
|
1443
|
+
.note-toolbar-meta { display: none; }
|
|
1444
|
+
.note-editor-toolbar { gap: 8px; padding-inline: 10px; }
|
|
1532
1445
|
}
|
|
1533
1446
|
|
|
1534
1447
|
@container note-editor (max-width: 480px) {
|
|
1535
|
-
.note-breadcrumb {
|
|
1536
|
-
.note-
|
|
1448
|
+
.note-breadcrumb { flex: 1; }
|
|
1449
|
+
.note-breadcrumb > span { display: none; }
|
|
1450
|
+
.note-editor-actions { gap: 4px; }
|
|
1451
|
+
.note-editor-actions > .badge { display: none; }
|
|
1537
1452
|
}
|
|
1538
1453
|
|
|
1539
1454
|
.list { display: grid; gap: 8px; }
|
|
@@ -1562,7 +1477,7 @@ html,
|
|
|
1562
1477
|
|
|
1563
1478
|
.card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
|
|
1564
1479
|
.knowledge-card { min-width: 0; display: flex; flex-direction: column; border: 1px solid var(--panel-border); border-radius: var(--radius); padding: 17px; background: var(--material-panel); box-shadow: var(--shadow-soft); }
|
|
1565
|
-
.knowledge-card:hover { border-color: var(--border-strong);
|
|
1480
|
+
.knowledge-card:hover { border-color: var(--border-strong); }
|
|
1566
1481
|
.knowledge-card h3 { margin: 11px 0 7px; font-size: 15px; line-height: 1.4; }
|
|
1567
1482
|
.knowledge-card p { display: -webkit-box; overflow: hidden; margin: 0; color: var(--text-secondary); line-height: 1.65; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
|
|
1568
1483
|
.card-top, .card-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
|
|
@@ -1573,8 +1488,8 @@ html,
|
|
|
1573
1488
|
.tag.is-empty { color: var(--text-tertiary); font-style: italic; }
|
|
1574
1489
|
|
|
1575
1490
|
.tabs { display: inline-flex; gap: 3px; border: 1px solid var(--separator); border-radius: 10px; padding: 3px; background: var(--material-control); box-shadow: inset 0 1px 0 var(--surface-highlight); }
|
|
1576
|
-
.tab { min-height: 31px; border: 0; border-radius: var(--radius-small); padding: 5px 12px; background: transparent; color: var(--text-secondary); font-size: 12px; font-weight: 600; transition: color var(--motion-fast) ease, background
|
|
1577
|
-
.tab:hover { color: var(--text);
|
|
1491
|
+
.tab { min-height: 31px; border: 0; border-radius: var(--radius-small); padding: 5px 12px; background: transparent; color: var(--text-secondary); font-size: 12px; font-weight: 600; transition: color var(--motion-fast) ease, background-color var(--motion-fast) ease; }
|
|
1492
|
+
.tab:hover { color: var(--text); background: var(--surface-hover); }
|
|
1578
1493
|
.tab[aria-selected="true"] { background: var(--surface-raised); color: var(--text); box-shadow: var(--shadow-soft); }
|
|
1579
1494
|
|
|
1580
1495
|
.candidate-list { display: grid; gap: 13px; }
|
|
@@ -1651,7 +1566,6 @@ html,
|
|
|
1651
1566
|
.skeleton-phase { position: relative; display: inline-flex; align-items: center; gap: 8px; padding-top: 3px; color: var(--text-tertiary); font-size: 11px; white-space: nowrap; }
|
|
1652
1567
|
.skeleton-phase::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 0 4px color-mix(in srgb, var(--accent) 10%, transparent); animation: loading-pulse 1.4s ease-in-out infinite; }
|
|
1653
1568
|
.skeleton-line, .skeleton-block { position: relative; overflow: hidden; background: var(--surface-soft); }
|
|
1654
|
-
.skeleton-line::after, .skeleton-block::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--surface-raised) 72%, transparent), transparent); transform: translateX(-100%); animation: skeleton-shimmer 1.4s ease-in-out infinite; }
|
|
1655
1569
|
.skeleton-title { width: min(280px, 48%); height: 22px; border-radius: 7px; }
|
|
1656
1570
|
.skeleton-copy { width: min(460px, 72%); height: 12px; margin-top: 10px; border-radius: 5px; }
|
|
1657
1571
|
.skeleton-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 28px; }
|
|
@@ -1674,8 +1588,7 @@ html,
|
|
|
1674
1588
|
.skeleton-list-row .skeleton-line { width: 66%; height: 12px; border-radius: 5px; }
|
|
1675
1589
|
.notes-selection-loading { overflow: hidden; }
|
|
1676
1590
|
.notes-selection-skeleton { display: grid; align-content: start; gap: 15px; padding: clamp(34px, 5vw, 72px); }
|
|
1677
|
-
@keyframes
|
|
1678
|
-
@keyframes loading-pulse { 0%, 100% { opacity: .5; transform: scale(.82); } 50% { opacity: 1; transform: scale(1); } }
|
|
1591
|
+
@keyframes loading-pulse { 0%, 100% { opacity: .5; } 50% { opacity: 1; } }
|
|
1679
1592
|
|
|
1680
1593
|
.error-state { border: 1px solid color-mix(in srgb, var(--danger) 30%, var(--border)); border-radius: var(--radius); padding: 18px; background: var(--danger-soft); color: var(--danger); }
|
|
1681
1594
|
.error-state p { margin: 0 0 12px; }
|
|
@@ -1696,7 +1609,7 @@ html,
|
|
|
1696
1609
|
.api-access-actions { align-items: center; border-top: 1px solid var(--border); padding-top: 13px; }
|
|
1697
1610
|
.api-access-actions small { color: var(--text-tertiary); }
|
|
1698
1611
|
|
|
1699
|
-
.dialog-backdrop { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 20px; background: transparent;
|
|
1612
|
+
.dialog-backdrop { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 20px; background: transparent; }
|
|
1700
1613
|
.dialog {
|
|
1701
1614
|
width: min(560px, 100%);
|
|
1702
1615
|
max-height: min(680px, calc(100dvh - 64px));
|
|
@@ -1707,10 +1620,9 @@ html,
|
|
|
1707
1620
|
border-radius: 16px;
|
|
1708
1621
|
background: var(--dialog-surface);
|
|
1709
1622
|
box-shadow: 0 22px 58px color-mix(in srgb, #000 18%, transparent), 0 4px 14px color-mix(in srgb, #000 8%, transparent), inset 0 1px 0 var(--surface-highlight);
|
|
1710
|
-
animation: dialog-enter
|
|
1623
|
+
animation: dialog-enter var(--motion-fast) ease-out both;
|
|
1711
1624
|
}
|
|
1712
|
-
@keyframes dialog-
|
|
1713
|
-
@keyframes dialog-enter { from { opacity: 0; transform: translateY(8px) scale(.985); } }
|
|
1625
|
+
@keyframes dialog-enter { from { opacity: 0; } }
|
|
1714
1626
|
.dialog.narrow { width: min(100%, 460px); }
|
|
1715
1627
|
.dialog-backdrop.sheet-backdrop {
|
|
1716
1628
|
place-items: stretch end;
|
|
@@ -1724,9 +1636,8 @@ html,
|
|
|
1724
1636
|
border-width: 0 0 0 1px;
|
|
1725
1637
|
border-radius: 0;
|
|
1726
1638
|
box-shadow: -22px 0 64px rgb(0 0 0 / 18%);
|
|
1727
|
-
animation:
|
|
1639
|
+
animation: dialog-enter var(--motion-fast) ease-out both;
|
|
1728
1640
|
}
|
|
1729
|
-
@keyframes sheet-enter { from { opacity: .75; transform: translateX(18px); } }
|
|
1730
1641
|
.dialog-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; border-bottom: 1px solid var(--separator); padding: 22px 22px 18px; background: var(--surface-raised); }
|
|
1731
1642
|
.dialog-header h2 { margin: 0; font-size: var(--font-title); font-weight: 650; letter-spacing: -.02em; }
|
|
1732
1643
|
.dialog-header p { margin: 4px 0 0; color: var(--text-tertiary); font-size: var(--font-caption); }
|
|
@@ -1774,7 +1685,7 @@ html,
|
|
|
1774
1685
|
.toast > span { min-width: 0; flex: 1; overflow-wrap: anywhere; }
|
|
1775
1686
|
.toast-close { flex: none; min-height: 28px; }
|
|
1776
1687
|
.toast.error { border-color: color-mix(in srgb, var(--danger) 45%, var(--border)); color: var(--danger); }
|
|
1777
|
-
@keyframes toast-in { from { opacity: 0;
|
|
1688
|
+
@keyframes toast-in { from { opacity: 0; } }
|
|
1778
1689
|
|
|
1779
1690
|
@media (prefers-reduced-transparency: reduce) {
|
|
1780
1691
|
.sidebar, .main, .topbar, .note-tree-panel, .notes-browser, .notes-content-header, .notes-document-toolbar, .notes-document-statusbar, .note-editor-toolbar, .dialog-backdrop {
|
|
@@ -1796,11 +1707,11 @@ html,
|
|
|
1796
1707
|
.notes-workspace { grid-template-columns: minmax(240px, 290px) minmax(0, 1fr); }
|
|
1797
1708
|
}
|
|
1798
1709
|
|
|
1799
|
-
@media (min-width:
|
|
1710
|
+
@media (min-width: 1121px) and (hover: hover), (min-width: 1401px) {
|
|
1800
1711
|
.app-shell[data-sidebar-hidden="true"] { grid-template-columns: 0 0 minmax(0, 1fr); }
|
|
1801
1712
|
.app-shell[data-sidebar-hidden="true"] > .sidebar {
|
|
1802
1713
|
opacity: 0;
|
|
1803
|
-
transform: translateX(calc(-100% - var(--chrome-inset)))
|
|
1714
|
+
transform: translateX(calc(-100% - var(--chrome-inset)));
|
|
1804
1715
|
pointer-events: none;
|
|
1805
1716
|
}
|
|
1806
1717
|
.app-shell[data-sidebar-hidden="true"] > .app-sidebar-resizer {
|
|
@@ -1810,29 +1721,51 @@ html,
|
|
|
1810
1721
|
}
|
|
1811
1722
|
}
|
|
1812
1723
|
|
|
1813
|
-
@media (max-width:
|
|
1724
|
+
@media (max-width: 1120px), (hover: none) and (pointer: coarse) and (max-width: 1400px) {
|
|
1814
1725
|
:root { --sidebar-width: 0px; --chrome-inset: 8px; --topbar-inline-inset: 8px; }
|
|
1815
1726
|
html { min-width: 0; overflow-x: hidden; }
|
|
1816
1727
|
body { min-width: 0; overflow-x: hidden; font-size: 14px; }
|
|
1817
|
-
.app-shell { height: auto; min-height: 100dvh; display: block; overflow: visible; }
|
|
1818
|
-
.main { width: 100%; height: auto; min-height: 100dvh; margin: 0; overflow: visible; border: 0; border-radius: 0; }
|
|
1728
|
+
.app-shell { height: auto; min-height: 100svh; min-height: 100dvh; display: block; overflow: visible; }
|
|
1729
|
+
.main { width: 100%; height: auto; min-height: 100svh; min-height: 100dvh; margin: 0; overflow: visible; border: 0; border-radius: 0; }
|
|
1819
1730
|
.app-sidebar-resizer { display: none; }
|
|
1820
1731
|
.pane-toggle-button[data-pane="main"] { display: none; }
|
|
1821
1732
|
.pane-toggle-button[data-pane="library"] { display: inline-grid; }
|
|
1822
|
-
.sidebar {
|
|
1733
|
+
.sidebar {
|
|
1734
|
+
position: fixed;
|
|
1735
|
+
top: max(8px, env(safe-area-inset-top));
|
|
1736
|
+
bottom: max(8px, env(safe-area-inset-bottom));
|
|
1737
|
+
z-index: 40;
|
|
1738
|
+
width: min(82vw, 270px);
|
|
1739
|
+
height: auto;
|
|
1740
|
+
margin-left: max(8px, env(safe-area-inset-left));
|
|
1741
|
+
border-radius: 18px;
|
|
1742
|
+
background: var(--surface);
|
|
1743
|
+
box-shadow: var(--shadow);
|
|
1744
|
+
-webkit-backdrop-filter: none;
|
|
1745
|
+
backdrop-filter: none;
|
|
1746
|
+
transform: translateX(-110%);
|
|
1747
|
+
transition: transform .2s ease;
|
|
1748
|
+
}
|
|
1823
1749
|
.app-shell[data-menu-open="true"] .sidebar { transform: translateX(0); }
|
|
1824
1750
|
.app-sidebar-scrim { position: fixed; inset: 0; z-index: 30; display: block; border: 0; padding: 0; background: rgb(0 0 0 / 35%); touch-action: manipulation; }
|
|
1825
1751
|
.mobile-menu { display: inline-grid; place-items: center; }
|
|
1826
|
-
.topbar { min-height: 64px; padding: max(10px, env(safe-area-inset-top)) max(
|
|
1827
|
-
.topbar-title { gap:
|
|
1752
|
+
.topbar { min-height: 64px; padding: max(10px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) 10px max(12px, env(safe-area-inset-left)); }
|
|
1753
|
+
.topbar-title { width: 100%; min-width: 0; gap: 8px; }
|
|
1754
|
+
.topbar-heading { min-width: 0; flex: 1 1 auto; }
|
|
1828
1755
|
.topbar h1 { font-size: 17px; }
|
|
1829
1756
|
.topbar p { display: none; }
|
|
1830
1757
|
.page { padding: 22px max(16px, env(safe-area-inset-right)) max(42px, calc(24px + env(safe-area-inset-bottom))) max(16px, env(safe-area-inset-left)); }
|
|
1831
|
-
.app-shell[data-view="notes"] .main
|
|
1758
|
+
.app-shell[data-view="notes"] .main,
|
|
1759
|
+
.app-shell[data-view="entries"] .main { height: 100svh; height: 100dvh; min-height: 0; display: grid; grid-template-rows: auto minmax(0, 1fr); overflow: hidden; }
|
|
1832
1760
|
.app-shell[data-view="notes"] .topbar { position: relative; }
|
|
1833
|
-
.app-shell[data-view="notes"] .page
|
|
1761
|
+
.app-shell[data-view="notes"] .page,
|
|
1762
|
+
.app-shell[data-view="entries"] .page { height: auto; min-height: 0; overflow: hidden; }
|
|
1763
|
+
.app-shell[data-view="notes"] .page { padding: 0; }
|
|
1764
|
+
.app-shell[data-view="entries"] .page { padding: 10px max(8px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left)); }
|
|
1834
1765
|
.app-shell[data-view="notes"] .view-stage,
|
|
1835
|
-
.app-shell[data-view="notes"] .notes-page
|
|
1766
|
+
.app-shell[data-view="notes"] .notes-page,
|
|
1767
|
+
.app-shell[data-view="entries"] .view-stage { height: 100%; min-height: 0; overflow: hidden; }
|
|
1768
|
+
.app-shell[data-view="entries"] .note-workspace { height: 100%; min-height: 0; }
|
|
1836
1769
|
.workspace-switcher { align-items: stretch; flex-direction: column; gap: 10px; }
|
|
1837
1770
|
.workspace-switcher-leading { align-items: flex-start; }
|
|
1838
1771
|
.workspace-switcher p { text-align: left; }
|
|
@@ -1853,7 +1786,10 @@ html,
|
|
|
1853
1786
|
z-index: 4;
|
|
1854
1787
|
width: min(82%, 300px);
|
|
1855
1788
|
border-right-color: var(--border-strong);
|
|
1789
|
+
background: var(--surface);
|
|
1856
1790
|
box-shadow: 16px 0 36px color-mix(in srgb, var(--text) 14%, transparent);
|
|
1791
|
+
-webkit-backdrop-filter: none;
|
|
1792
|
+
backdrop-filter: none;
|
|
1857
1793
|
transform: translateX(-104%);
|
|
1858
1794
|
transition: transform .18s cubic-bezier(.2, .8, .2, 1);
|
|
1859
1795
|
}
|
|
@@ -1894,11 +1830,30 @@ html,
|
|
|
1894
1830
|
.candidate-heading-actions > .button { width: 100%; }
|
|
1895
1831
|
.candidate-footer { gap: 9px; }
|
|
1896
1832
|
.candidate-actions { width: 100%; justify-content: flex-start; }
|
|
1897
|
-
.notes-workspace { height: 100%; min-height: 0; grid-template-columns: minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); }
|
|
1898
|
-
.notes-browser {
|
|
1899
|
-
|
|
1833
|
+
.notes-workspace { height: 100%; min-height: 0; grid-template-columns: minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); isolation: isolate; }
|
|
1834
|
+
.notes-browser {
|
|
1835
|
+
position: absolute;
|
|
1836
|
+
inset: 0 auto 0 0;
|
|
1837
|
+
z-index: 16;
|
|
1838
|
+
width: min(88vw, 320px);
|
|
1839
|
+
display: grid;
|
|
1840
|
+
border-right-color: var(--glass-border);
|
|
1841
|
+
background: var(--surface);
|
|
1842
|
+
box-shadow: 16px 0 36px color-mix(in srgb, var(--text) 14%, transparent), inset 0 1px 0 var(--surface-highlight);
|
|
1843
|
+
-webkit-backdrop-filter: none;
|
|
1844
|
+
backdrop-filter: none;
|
|
1845
|
+
transform: translateX(-104%);
|
|
1846
|
+
visibility: hidden;
|
|
1847
|
+
transition: transform var(--motion-base) var(--ease-out), visibility 0s linear var(--motion-base);
|
|
1848
|
+
}
|
|
1849
|
+
.notes-workspace[data-browser-open="true"] .notes-browser { transform: translateX(0); visibility: visible; transition-delay: 0s; }
|
|
1850
|
+
.notes-browser-scrim { position: absolute; inset: 0; z-index: 15; display: block; border: 0; padding: 0; background: color-mix(in srgb, var(--text) 18%, transparent); touch-action: manipulation; }
|
|
1851
|
+
.notes-browser-header { padding-top: max(12px, env(safe-area-inset-top)); }
|
|
1852
|
+
.notes-tree { padding-bottom: max(20px, env(safe-area-inset-bottom)); }
|
|
1853
|
+
.notes-content { height: 100%; min-height: 0; }
|
|
1854
|
+
.notes-content.is-folder { overflow-y: auto; overscroll-behavior: contain; }
|
|
1900
1855
|
.notes-editor-frame, .notes-editor-frame[data-outline-open="true"] { grid-template-columns: minmax(0, 1fr); }
|
|
1901
|
-
.notes-editor-outline { position: absolute; inset: 0 0 0 auto; z-index: 12; width: min(86vw, 300px); border-left-color: var(--border-strong); box-shadow: -16px 0 34px color-mix(in srgb, var(--text) 13%, transparent); transform: translateX(103%); transition: opacity var(--motion-base) ease
|
|
1856
|
+
.notes-editor-outline { position: absolute; inset: 0 0 0 auto; z-index: 12; width: min(86vw, 300px); border-left-color: var(--border-strong); background: var(--dialog-surface); backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: -16px 0 34px color-mix(in srgb, var(--text) 13%, transparent); transform: translateX(103%); transition: opacity var(--motion-base) ease; }
|
|
1902
1857
|
.notes-editor-frame[data-outline-open="true"] .notes-editor-outline { transform: translateX(0); }
|
|
1903
1858
|
.notes-editor-outline-header { padding-right: max(9px, env(safe-area-inset-right)); }
|
|
1904
1859
|
.notes-editor-outline-close, .notes-editor-outline-link { min-height: 44px; touch-action: manipulation; }
|
|
@@ -1906,12 +1861,10 @@ html,
|
|
|
1906
1861
|
.notes-document-toolbar { align-items: center; flex-direction: row; gap: 6px; overflow: visible; padding: 4px max(8px, env(safe-area-inset-right)) 4px max(8px, env(safe-area-inset-left)); }
|
|
1907
1862
|
.notes-toolbar-leading { width: auto; min-height: 44px; flex: 1 1 auto; }
|
|
1908
1863
|
.notes-document-actions { width: auto; display: flex; gap: 4px; }
|
|
1909
|
-
.notes-document-actions > [data-note-mobile-overflow] { display: none; }
|
|
1910
1864
|
.notes-save-state { display: inline-flex; min-height: 44px; align-items: center; padding-inline: 4px; color: var(--text-secondary); font-size: 11px; }
|
|
1911
1865
|
.notes-save-state[data-dirty="true"] { color: var(--warning); }
|
|
1912
1866
|
.notes-outline-action { min-width: 44px; padding-inline: 10px; }
|
|
1913
|
-
.notes-document-actions > .button, .notes-document-more > summary { min-height: 44px; justify-content: center; touch-action: manipulation; }
|
|
1914
|
-
.notes-document-more { display: block; }
|
|
1867
|
+
.notes-document-actions > .button, .notes-document-more > summary.button { min-height: 44px; justify-content: center; touch-action: manipulation; }
|
|
1915
1868
|
.notes-document-more-menu .button { min-height: 44px; touch-action: manipulation; }
|
|
1916
1869
|
.notes-content.is-document { --notes-document-inline: 16px; }
|
|
1917
1870
|
.notes-content.is-document.has-line-numbers { --notes-document-inline: 30px; }
|
|
@@ -1942,7 +1895,7 @@ html,
|
|
|
1942
1895
|
.note-history-detail-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
|
|
1943
1896
|
.note-history-mode, .note-history-detail-actions .button { min-width: 0; min-height: 44px; padding-inline: 5px; }
|
|
1944
1897
|
.note-history-content { padding: 18px max(14px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left)); }
|
|
1945
|
-
.dialog.note-history-dialog { width: 100%; height: 100dvh; max-height: none; }
|
|
1898
|
+
.dialog.note-history-dialog { width: 100%; height: 100svh; height: 100dvh; max-height: none; }
|
|
1946
1899
|
.notes-file-table { overflow: visible; }
|
|
1947
1900
|
.notes-file-columns { display: none; }
|
|
1948
1901
|
.notes-file-list { min-width: 0; display: grid; gap: 8px; padding: 10px 12px max(28px, calc(16px + env(safe-area-inset-bottom))); }
|
|
@@ -1983,7 +1936,7 @@ html,
|
|
|
1983
1936
|
.input, .select { height: 44px; min-height: 44px; }
|
|
1984
1937
|
:where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]), select, textarea) { font-size: 16px; }
|
|
1985
1938
|
.dialog-backdrop { place-items: stretch; padding: 0; }
|
|
1986
|
-
.dialog, .dialog.narrow, .dialog.sheet { width: 100%; height: 100dvh; max-height: none; border-width: 0; border-radius: 0; }
|
|
1939
|
+
.dialog, .dialog.narrow, .dialog.sheet { width: 100%; height: 100svh; height: 100dvh; max-height: none; border-width: 0; border-radius: 0; }
|
|
1987
1940
|
.dialog-header { padding: max(15px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 14px max(16px, env(safe-area-inset-left)); }
|
|
1988
1941
|
.dialog-header .button { width: 44px; min-width: 44px; min-height: 44px; }
|
|
1989
1942
|
.dialog-body { padding: 18px max(16px, env(safe-area-inset-right)) max(24px, calc(16px + env(safe-area-inset-bottom))) max(16px, env(safe-area-inset-left)); }
|
|
@@ -1994,7 +1947,7 @@ html,
|
|
|
1994
1947
|
.toast { max-width: none; }
|
|
1995
1948
|
}
|
|
1996
1949
|
|
|
1997
|
-
@media (min-width:
|
|
1950
|
+
@media (min-width: 1121px) and (max-width: 1280px) {
|
|
1998
1951
|
.notes-file-info { grid-template-columns: repeat(2, minmax(150px, 1fr)); }
|
|
1999
1952
|
}
|
|
2000
1953
|
|
|
@@ -2052,7 +2005,13 @@ html,
|
|
|
2052
2005
|
@media (max-width: 390px) {
|
|
2053
2006
|
.topbar { gap: 8px; padding-inline: 10px; }
|
|
2054
2007
|
.topbar-title { gap: 6px; }
|
|
2055
|
-
.topbar-
|
|
2008
|
+
.topbar-kicker { display: none; }
|
|
2009
|
+
.topbar-heading { max-width: none; }
|
|
2010
|
+
.topbar h1 { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
|
|
2011
|
+
.notes-document-toolbar { padding-inline: 6px; }
|
|
2012
|
+
.notes-toolbar-leading { min-width: 44px; }
|
|
2013
|
+
.notes-breadcrumb { mask-image: linear-gradient(90deg, #000 calc(100% - 22px), transparent); }
|
|
2014
|
+
.notes-save-state { max-width: 44px; overflow: hidden; white-space: nowrap; }
|
|
2056
2015
|
.notes-file-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
|
|
2057
2016
|
.candidate-actions { display: grid; grid-template-columns: 1fr; }
|
|
2058
2017
|
.candidate-actions .button { width: 100%; }
|
|
@@ -2067,7 +2026,7 @@ html,
|
|
|
2067
2026
|
}
|
|
2068
2027
|
|
|
2069
2028
|
@media (prefers-reduced-motion: reduce) {
|
|
2070
|
-
*, *::before, *::after { scroll-behavior: auto !important; animation
|
|
2029
|
+
*, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
|
|
2071
2030
|
}
|
|
2072
2031
|
|
|
2073
2032
|
@media (forced-colors: active) {
|