Raw
1 :root {
2 --sigit-gap: 8px;
3 }
4
5 * {
6 box-sizing: border-box;
7 }
8
9 html,
10 body {
11 height: 100%;
12 margin: 0;
13 padding: 0;
14 }
15
16 body {
17 display: flex;
18 flex-direction: column;
19 font-family: var(--vscode-font-family);
20 font-size: var(--vscode-font-size);
21 color: var(--vscode-foreground);
22 background-color: var(--vscode-sideBar-background);
23 }
24
25 .brand {
26 display: flex;
27 align-items: center;
28 gap: 8px;
29 padding: 8px var(--sigit-gap);
30 border-bottom: 1px solid var(--vscode-panel-border);
31 }
32
33 .brand-logo {
34 width: 20px;
35 height: 20px;
36 border-radius: 4px;
37 flex: none;
38 }
39
40 .brand-name {
41 font-weight: 600;
42 /* Preserve the brand's mixed case; VS Code uppercases the platform header,
43 but this is our own surface. */
44 text-transform: none;
45 }
46
47 .messages {
48 flex: 1;
49 overflow-y: auto;
50 padding: var(--sigit-gap);
51 display: flex;
52 flex-direction: column;
53 gap: var(--sigit-gap);
54 }
55
56 .message {
57 display: flex;
58 }
59
60 .message-user {
61 justify-content: flex-end;
62 }
63
64 .bubble {
65 max-width: 92%;
66 padding: 6px 10px;
67 border-radius: 6px;
68 white-space: pre-wrap;
69 word-wrap: break-word;
70 line-height: 1.4;
71 }
72
73 .message-user .bubble {
74 background-color: var(--vscode-button-background);
75 color: var(--vscode-button-foreground);
76 }
77
78 .message-assistant .bubble {
79 background-color: var(--vscode-editor-inactiveSelectionBackground);
80 color: var(--vscode-foreground);
81 }
82
83 .message-thought .bubble {
84 background-color: transparent;
85 color: var(--vscode-descriptionForeground);
86 font-style: italic;
87 border-left: 2px solid var(--vscode-panel-border);
88 border-radius: 0;
89 }
90
91 .message-tool .bubble {
92 background-color: transparent;
93 color: var(--vscode-descriptionForeground);
94 font-family: var(--vscode-editor-font-family, monospace);
95 font-size: 0.9em;
96 border: 1px solid var(--vscode-panel-border);
97 }
98
99 .message-error .bubble {
100 background-color: var(--vscode-inputValidation-errorBackground);
101 color: var(--vscode-foreground);
102 border: 1px solid var(--vscode-inputValidation-errorBorder);
103 }
104
105 .status {
106 padding: 2px var(--sigit-gap);
107 font-size: 0.85em;
108 color: var(--vscode-descriptionForeground);
109 min-height: 1.2em;
110 }
111
112 .composer {
113 display: flex;
114 gap: var(--sigit-gap);
115 padding: var(--sigit-gap);
116 border-top: 1px solid var(--vscode-panel-border);
117 }
118
119 .input {
120 flex: 1;
121 resize: none;
122 font-family: inherit;
123 font-size: inherit;
124 color: var(--vscode-input-foreground);
125 background-color: var(--vscode-input-background);
126 border: 1px solid var(--vscode-input-border, transparent);
127 border-radius: 4px;
128 padding: 6px 8px;
129 }
130
131 .input:focus {
132 outline: 1px solid var(--vscode-focusBorder);
133 outline-offset: -1px;
134 }
135
136 .send {
137 align-self: flex-end;
138 color: var(--vscode-button-foreground);
139 background-color: var(--vscode-button-background);
140 border: none;
141 border-radius: 4px;
142 padding: 6px 12px;
143 cursor: pointer;
144 }
145
146 .send:hover {
147 background-color: var(--vscode-button-hoverBackground);
148 }
149
150 .send:disabled {
151 opacity: 0.6;
152 cursor: default;
153 }