| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141 |
- .block {
- --dsl-web-radius: 12px;
- margin: 16px 0;
- padding: 12px 14px;
- color: var(--dsw-alias-label-primary);
- background: var(--dsw-alias-markdown-code-block);
- border-radius: var(--dsl-web-radius);
- }
- /* The provider answer reads as body prose above the citation list; its own
- MarkdownText margins are trimmed so the list sits tight under it. */
- .answer {
- margin-bottom: 8px;
- }
- .answer > :global(div) > :first-child {
- margin-top: 0;
- }
- .answer > :global(div) > :last-child {
- margin-bottom: 0;
- }
- /* The citation list: ordered so each source reads as a numbered reference. The
- whole list — the sources the tool returned, matching what the model saw —
- renders here; a max-height caps the card so a long list scrolls in place
- rather than growing the card unbounded. The height is a design constant of the
- card's geometry, not a deployment choice, so it lives here rather than a plugin
- config field.
- `overflow-y` makes this a scroll container, which also clips inline-start
- overflow: a marker wider than `padding-left` loses its leading digits with no
- way to scroll them back. Markers are right-aligned to the content edge, so the
- padding must fit the widest one the list can produce. `searchMaxResults` is an
- unbounded positive integer, so the padding is sized in `em` — against this
- element's own font, the one a marker inherits — to hold a three-digit marker
- (`999. ` measures 2.35em in the app font stack) plus the gap the one-digit
- case already had. */
- .sources {
- margin: 0;
- padding-left: 2.5em;
- display: flex;
- flex-direction: column;
- gap: 10px;
- max-height: 320px;
- overflow-y: auto;
- }
- .source {
- min-width: 0;
- }
- .sourceLink {
- color: var(--dsw-alias-link);
- font-size: 14px;
- font-weight: 500;
- line-height: 20px;
- word-break: break-word;
- text-decoration: none;
- }
- /* Leading URL glyph inside source and fetch links; rides the link color.
- 1.1em follows each link's own font size. */
- .linkIcon {
- width: 1.1em;
- height: 1.1em;
- vertical-align: -0.25em;
- margin-right: 5px;
- }
- .sourceLink:hover,
- .sourceLink:focus-visible {
- text-decoration: underline dotted;
- text-underline-offset: 3px;
- }
- .snippet {
- margin-top: 2px;
- color: var(--dsw-alias-label-secondary);
- font-size: 13px;
- line-height: 19px;
- word-break: break-word;
- }
- .published {
- margin-top: 2px;
- color: var(--dsw-alias-label-tertiary);
- font: var(--dsw-font-xs-13);
- }
- .truncated {
- margin-top: 8px;
- color: var(--dsw-alias-label-tertiary);
- font: var(--dsw-font-xs-13);
- }
- .empty {
- color: var(--dsw-alias-label-secondary);
- font: var(--dsw-font-xs-13);
- }
- /* The fetch card is a compact summary: the URL over a status/truncation row. */
- .fetch {
- display: flex;
- flex-direction: column;
- gap: 6px;
- }
- .fetchUrl {
- color: var(--dsw-alias-link);
- font-family: var(--ds-font-family-code);
- font-size: 13px;
- font-weight: 500;
- line-height: 19px;
- word-break: break-all;
- text-decoration: none;
- }
- .fetchUrl:hover,
- .fetchUrl:focus-visible {
- text-decoration: underline dotted;
- text-underline-offset: 3px;
- }
- .fetchMeta {
- display: flex;
- align-items: baseline;
- gap: 12px;
- }
- .status {
- color: var(--dsw-alias-label-secondary);
- font: var(--dsw-font-xs-13);
- }
- /* The fetch card's truncation note sits inline beside the status, so it drops
- the search card's top margin. */
- .fetch .truncated {
- margin-top: 0;
- }
|