@lemoncat7/dsh-knowledge 1.0.2 → 1.0.11

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/web/styles.css CHANGED
@@ -7,6 +7,7 @@
7
7
  --surface-raised: #ffffff;
8
8
  --surface-soft: #f0f0f3;
9
9
  --surface-hover: #f5f5f8;
10
+ --dialog-surface: #ffffff;
10
11
  --text: #1d1d1f;
11
12
  --text-secondary: #4c4c50;
12
13
  --text-tertiary: #6e6e73;
@@ -34,6 +35,7 @@
34
35
  --surface-raised: #242426;
35
36
  --surface-soft: #2c2c2e;
36
37
  --surface-hover: #303033;
38
+ --dialog-surface: #1c1c1e;
37
39
  --text: #f5f5f7;
38
40
  --text-secondary: #c7c7cc;
39
41
  --text-tertiary: #98989d;
@@ -106,7 +108,7 @@ button:disabled { cursor: not-allowed; opacity: .56; }
106
108
  border: 1px solid var(--border);
107
109
  border-radius: 20px;
108
110
  padding: 32px;
109
- background: var(--surface-raised);
111
+ background: var(--dialog-surface);
110
112
  box-shadow: var(--shadow);
111
113
  }
112
114
 
@@ -127,11 +129,11 @@ button:disabled { cursor: not-allowed; opacity: .56; }
127
129
  .login-card > p { margin: 0 0 24px; color: var(--text-secondary); }
128
130
 
129
131
  .field { display: grid; gap: 7px; }
130
- .field + .field { margin-top: 16px; }
131
132
  .field label { color: var(--text-secondary); font-size: 13px; font-weight: 600; }
132
133
  .field-hint { color: var(--text-tertiary); font-size: 12px; }
133
134
 
134
135
  .input, .select, .textarea {
136
+ box-sizing: border-box;
135
137
  width: 100%;
136
138
  border: 1px solid var(--border-strong);
137
139
  border-radius: 9px;
@@ -141,7 +143,7 @@ button:disabled { cursor: not-allowed; opacity: .56; }
141
143
  transition: border-color .15s ease, box-shadow .15s ease;
142
144
  }
143
145
 
144
- .input, .select { min-height: 40px; }
146
+ .input, .select { height: 40px; min-height: 40px; font: inherit; line-height: 20px; }
145
147
  .textarea { min-height: 132px; resize: vertical; }
146
148
  .input::placeholder, .textarea::placeholder { color: var(--text-tertiary); }
147
149
  .input:focus, .select:focus, .textarea:focus { border-color: var(--accent); }
@@ -169,6 +171,7 @@ button:disabled { cursor: not-allowed; opacity: .56; }
169
171
  .button.ghost { border-color: transparent; background: transparent; color: var(--text-secondary); }
170
172
  .button.small { min-height: 32px; padding: 5px 10px; font-size: 12px; }
171
173
  .login-card .button { width: 100%; margin-top: 20px; }
174
+ .login-card .field + .field { margin-top: 16px; }
172
175
 
173
176
  .app-shell { min-height: 100vh; min-height: 100dvh; display: grid; grid-template-columns: var(--sidebar-width) 6px minmax(0, 1fr); }
174
177
 
@@ -392,41 +395,6 @@ button:disabled { cursor: not-allowed; opacity: .56; }
392
395
  .workspace-switcher p { max-width: 56ch; margin: 0; color: var(--text-tertiary); font-size: 12px; text-align: right; }
393
396
  .workspace-tabs { flex: none; }
394
397
  .workspace-tabs .tab { display: inline-flex; align-items: center; gap: 7px; }
395
- .writeback-policy-control {
396
- min-height: 36px;
397
- display: inline-flex;
398
- align-items: center;
399
- gap: 7px;
400
- border-left: 1px solid var(--border);
401
- padding-left: 10px;
402
- }
403
- .writeback-policy-label { color: var(--text-tertiary); font-size: 11px; font-weight: 600; white-space: nowrap; }
404
- .writeback-policy-segments {
405
- display: inline-flex;
406
- gap: 2px;
407
- border: 1px solid var(--border);
408
- border-radius: 9px;
409
- padding: 2px;
410
- background: color-mix(in srgb, var(--surface-soft) 72%, transparent);
411
- }
412
- .writeback-policy-option {
413
- min-width: 48px;
414
- min-height: 30px;
415
- border: 0;
416
- border-radius: 7px;
417
- padding: 5px 10px;
418
- background: transparent;
419
- color: var(--text-tertiary);
420
- font-size: 11px;
421
- font-weight: 620;
422
- transition: background .14s ease, color .14s ease, box-shadow .14s ease;
423
- }
424
- .writeback-policy-option:hover:not(:disabled) { background: var(--surface-hover); color: var(--text); }
425
- .writeback-policy-option[aria-checked="true"] {
426
- background: var(--surface-raised);
427
- color: var(--text);
428
- box-shadow: 0 1px 4px rgb(20 25 35 / 10%);
429
- }
430
398
  .tab-count { min-width: 20px; border-radius: 6px; padding: 1px 6px; background: color-mix(in srgb, var(--text-tertiary) 10%, transparent); color: var(--text-tertiary); font-size: 10px; font-variant-numeric: tabular-nums; }
431
399
  .tab[aria-selected="true"] .tab-count { background: var(--accent-soft); color: var(--accent); }
432
400
  .library-management, .mount-section { min-width: 0; }
@@ -548,7 +516,8 @@ button:disabled { cursor: not-allowed; opacity: .56; }
548
516
  .note-tree-document { position: relative; min-height: 38px; gap: 8px; border-radius: 7px; padding: 5px 8px; }
549
517
  .note-tree-document[aria-current="page"] { background: color-mix(in srgb, var(--accent) 9%, var(--surface)); color: var(--text); box-shadow: inset 2px 0 0 color-mix(in srgb, var(--accent) 72%, transparent); }
550
518
  .tree-document-icon { width: 12px; height: 15px; flex: none; border: 1.2px solid currentColor; border-radius: 2px; opacity: .62; }
551
- .tree-document-copy { min-width: 0; }
519
+ .tree-document-copy { min-width: 0; flex: 1; }
520
+ .note-tree-document > .badge { min-height: 17px; padding: 1px 5px; font-size: 8px; }
552
521
  .tree-document-copy strong, .tree-document-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
553
522
  .tree-document-copy strong { font-size: 12px; font-weight: 540; }
554
523
  .tree-document-copy small { margin-top: 1px; color: var(--text-tertiary); font-size: 9px; }
@@ -571,6 +540,22 @@ button:disabled { cursor: not-allowed; opacity: .56; }
571
540
  .note-mode-switch button:hover { color: var(--text); }
572
541
  .note-mode-switch button[aria-selected="true"] { background: var(--surface-raised); color: var(--text); box-shadow: 0 1px 3px color-mix(in srgb, var(--text) 10%, transparent); }
573
542
  .note-editor-scroll { min-height: 0; overflow: auto; container-type: inline-size; }
543
+ .document-finalized-banner {
544
+ display: grid;
545
+ grid-template-columns: auto minmax(0, 1fr) auto;
546
+ align-items: center;
547
+ gap: 4px 14px;
548
+ margin: 18px max(20px, calc((100% - 1120px) / 2));
549
+ border: 1px solid color-mix(in srgb, var(--success) 26%, var(--border));
550
+ border-radius: 10px;
551
+ padding: 11px 14px;
552
+ background: var(--success-soft);
553
+ color: var(--text-secondary);
554
+ font-size: 12px;
555
+ }
556
+ .document-finalized-banner strong { color: var(--success); }
557
+ .document-finalized-banner p { grid-column: 2 / -1; margin: 1px 0 0; }
558
+ .document-finalized-banner small { color: var(--text-tertiary); white-space: nowrap; }
574
559
  .note-paper {
575
560
  width: 100%;
576
561
  min-height: 100%;
@@ -661,6 +646,11 @@ button:disabled { cursor: not-allowed; opacity: .56; }
661
646
  .candidate-header h3 { margin: 8px 0 0; font-size: 15px; }
662
647
  .candidate-body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(240px, .55fr); gap: 20px; padding: 0 18px 17px; }
663
648
  .candidate-content { margin: 0; color: var(--text-secondary); white-space: pre-wrap; }
649
+ .candidate-body.is-conflict { grid-template-columns: 1fr; }
650
+ .candidate-comparison { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
651
+ .candidate-comparison section { min-width: 0; border: 1px solid var(--border); border-radius: 9px; padding: 12px; background: var(--surface-soft); }
652
+ .candidate-comparison strong { display: block; margin-bottom: 8px; color: var(--text); font-size: 12px; }
653
+ .candidate-comparison pre { overflow: auto; max-height: 280px; margin: 0; color: var(--text-secondary); font: inherit; line-height: 1.65; white-space: pre-wrap; overflow-wrap: anywhere; }
664
654
  .candidate-reason { border-left: 2px solid var(--border-strong); padding-left: 13px; color: var(--text-secondary); font-size: 12px; }
665
655
  .candidate-reason strong { display: block; margin-bottom: 5px; color: var(--text-tertiary); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
666
656
  .candidate-target { display: block; margin-bottom: 13px; border-radius: 7px; padding: 7px 9px; background: var(--accent-soft); color: var(--accent); font-weight: 600; }
@@ -710,7 +700,7 @@ button:disabled { cursor: not-allowed; opacity: .56; }
710
700
  flex-direction: column;
711
701
  border: 1px solid var(--border-strong);
712
702
  border-radius: 18px;
713
- background: var(--surface-raised);
703
+ background: var(--dialog-surface);
714
704
  box-shadow: 0 28px 80px rgb(0 0 0 / 24%);
715
705
  }
716
706
  .dialog.narrow { width: min(100%, 460px); }
@@ -735,7 +725,7 @@ button:disabled { cursor: not-allowed; opacity: .56; }
735
725
  .dialog-header p { margin: 4px 0 0; color: var(--text-tertiary); font-size: 12px; }
736
726
  .dialog-body { overflow: auto; padding: 20px; }
737
727
  .dialog-footer { display: flex; justify-content: flex-end; gap: 8px; border-top: 1px solid var(--border); padding: 13px 20px; }
738
- .form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
728
+ .form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 16px; }
739
729
  .form-grid .span-2 { grid-column: 1 / -1; }
740
730
  .check-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
741
731
  .check-option { display: flex; align-items: center; gap: 8px; border: 1px solid var(--border); border-radius: 8px; padding: 9px; }
@@ -788,6 +778,7 @@ button:disabled { cursor: not-allowed; opacity: .56; }
788
778
  }
789
779
 
790
780
  @media (max-width: 760px) {
781
+ .candidate-comparison { grid-template-columns: 1fr; }
791
782
  :root { --sidebar-width: 0px; }
792
783
  .app-shell { display: block; }
793
784
  .app-sidebar-resizer { display: none; }
@@ -832,6 +823,8 @@ button:disabled { cursor: not-allowed; opacity: .56; }
832
823
  .note-editor-actions { width: 100%; justify-content: flex-end; }
833
824
  .note-mode-switch { margin-right: auto; }
834
825
  .note-paper { padding: 32px 24px 60px; }
826
+ .document-finalized-banner { grid-template-columns: 1fr; margin: 12px; }
827
+ .document-finalized-banner p { grid-column: 1; }
835
828
  .note-title-input { font-size: 26px; }
836
829
  .note-inspector { align-items: stretch; flex-direction: column; gap: 5px; padding: 8px 12px; }
837
830
  .note-inspector label { justify-content: space-between; }
@@ -871,7 +864,6 @@ button:disabled { cursor: not-allowed; opacity: .56; }
871
864
  .topbar-actions .button.primary::before { content: "+"; font-size: 18px; }
872
865
  .workspace-tabs { width: 100%; }
873
866
  .workspace-tabs .tab { min-width: 0; flex: 1; justify-content: center; padding-inline: 8px; }
874
- .writeback-policy-control { width: 100%; justify-content: space-between; border-left: 0; padding-left: 0; }
875
867
  .document-toolbar-actions { width: 100%; }
876
868
  .document-toolbar-actions .button.primary { margin-left: auto; }
877
869
  .form-grid { grid-template-columns: 1fr; }