返回 DeepSeek-Reasonix
WebBlock.css
1 .dsh-WebBlock-block {
2 --dsl-web-radius: 12px;
3
4 margin: 16px 0;
5 padding: 12px 14px;
6 color: var(--dsw-alias-label-primary);
7 background: var(--dsw-alias-markdown-code-block);
8 border-radius: var(--dsl-web-radius);
9 }
10
11 /* The provider answer reads as body prose above the citation list; its own
12 MarkdownText margins are trimmed so the list sits tight under it. */
13 .dsh-WebBlock-answer {
14 margin-bottom: 8px;
15 }
16
17 .dsh-WebBlock-answer > div > :first-child {
18 margin-top: 0;
19 }
20
21 .dsh-WebBlock-answer > div > :last-child {
22 margin-bottom: 0;
23 }
24
25 /* The citation list: ordered so each source reads as a numbered reference. The
26 whole list — the sources the tool returned, matching what the model saw —
27 renders here; a max-height caps the card so a long list scrolls in place
28 rather than growing the card unbounded. The height is a design constant of the
29 card's geometry, not a deployment choice, so it lives here rather than a plugin
30 config field.
31
32 `overflow-y` makes this a scroll container, which also clips inline-start
33 overflow: a marker wider than `padding-left` loses its leading digits with no
34 way to scroll them back. Markers are right-aligned to the content edge, so the
35 padding must fit the widest one the list can produce. `searchMaxResults` is an
36 unbounded positive integer, so the padding is sized in `em` — against this
37 element's own font, the one a marker inherits — to hold a three-digit marker
38 (`999. ` measures 2.35em in the app font stack) plus the gap the one-digit
39 case already had. */
40 .dsh-WebBlock-sources {
41 margin: 0;
42 padding-left: 2.5em;
43 display: flex;
44 flex-direction: column;
45 gap: 10px;
46 max-height: 320px;
47 overflow-y: auto;
48 }
49
50 .dsh-WebBlock-source {
51 min-width: 0;
52 }
53
54 .dsh-WebBlock-sourceLink {
55 color: var(--dsw-alias-link);
56 font-size: 14px;
57 font-weight: 500;
58 line-height: 20px;
59 word-break: break-word;
60 text-decoration: none;
61 }
62
63 /* Leading URL glyph inside source and fetch links; rides the link color.
64 1.1em follows each link's own font size. */
65 .dsh-WebBlock-linkIcon {
66 width: 1.1em;
67 height: 1.1em;
68 vertical-align: -0.25em;
69 margin-right: 5px;
70 }
71
72 .dsh-WebBlock-sourceLink:hover,
73 .dsh-WebBlock-sourceLink:focus-visible {
74 text-decoration: underline dotted;
75 text-underline-offset: 3px;
76 }
77
78 .dsh-WebBlock-snippet {
79 margin-top: 2px;
80 color: var(--dsw-alias-label-secondary);
81 font-size: 13px;
82 line-height: 19px;
83 word-break: break-word;
84 }
85
86 .dsh-WebBlock-published {
87 margin-top: 2px;
88 color: var(--dsw-alias-label-tertiary);
89 font: var(--dsw-font-xs-13);
90 }
91
92 .dsh-WebBlock-truncated {
93 margin-top: 8px;
94 color: var(--dsw-alias-label-tertiary);
95 font: var(--dsw-font-xs-13);
96 }
97
98 .dsh-WebBlock-empty {
99 color: var(--dsw-alias-label-secondary);
100 font: var(--dsw-font-xs-13);
101 }
102
103 /* The fetch card is a compact summary: the URL over a status/truncation row. */
104 .dsh-WebBlock-fetch {
105 display: flex;
106 flex-direction: column;
107 gap: 6px;
108 }
109
110 .dsh-WebBlock-fetchUrl {
111 color: var(--dsw-alias-link);
112 font-family: var(--ds-font-family-code);
113 font-size: 13px;
114 font-weight: 500;
115 line-height: 19px;
116 word-break: break-all;
117 text-decoration: none;
118 }
119
120 .dsh-WebBlock-fetchUrl:hover,
121 .dsh-WebBlock-fetchUrl:focus-visible {
122 text-decoration: underline dotted;
123 text-underline-offset: 3px;
124 }
125
126 .dsh-WebBlock-fetchMeta {
127 display: flex;
128 align-items: baseline;
129 gap: 12px;
130 }
131
132 .dsh-WebBlock-status {
133 color: var(--dsw-alias-label-secondary);
134 font: var(--dsw-font-xs-13);
135 }
136
137 /* The fetch card's truncation note sits inline beside the status, so it drops
138 the search card's top margin. */
139 .dsh-WebBlock-fetch .dsh-WebBlock-truncated {
140 margin-top: 0;
141 }
142
143 .dsh-WebBlock-sourceLink > a, .dsh-WebBlock-fetchUrl > a { color: inherit; font: inherit; }
144
144 lines CSS