@oddessentials/agent-guild 0.5.0 → 0.7.0
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 +182 -135
- package/package.json +1 -1
- package/src/manager/changelog.mjs +195 -0
- package/src/manager/config.mjs +1 -0
- package/src/manager/github.mjs +842 -0
- package/src/manager/main.mjs +10 -3
- package/src/manager/news.mjs +5 -5
- package/src/manager/server.mjs +70 -8
- package/src/manager/session-manager.mjs +32 -3
- package/src/manager/session.mjs +4 -1
- package/web/app.js +1005 -11
- package/web/art/art.css +374 -159
- package/web/art/characters/anthropic/idle.avif +0 -0
- package/web/art/characters/anthropic/idle.webp +0 -0
- package/web/art/characters/anthropic/locked.avif +0 -0
- package/web/art/characters/anthropic/locked.webp +0 -0
- package/web/art/characters/anthropic/working.avif +0 -0
- package/web/art/characters/anthropic/working.webp +0 -0
- package/web/art/characters/google/idle.avif +0 -0
- package/web/art/characters/google/idle.webp +0 -0
- package/web/art/characters/google/locked.avif +0 -0
- package/web/art/characters/google/locked.webp +0 -0
- package/web/art/characters/google/working.avif +0 -0
- package/web/art/characters/google/working.webp +0 -0
- package/web/art/characters/openai/idle.avif +0 -0
- package/web/art/characters/openai/idle.webp +0 -0
- package/web/art/characters/openai/locked.avif +0 -0
- package/web/art/characters/openai/locked.webp +0 -0
- package/web/art/characters/openai/working.avif +0 -0
- package/web/art/characters/openai/working.webp +0 -0
- package/web/art/characters/shell/idle.avif +0 -0
- package/web/art/characters/shell/idle.webp +0 -0
- package/web/art/characters/shell/locked.avif +0 -0
- package/web/art/characters/shell/locked.webp +0 -0
- package/web/art/characters/shell/working.avif +0 -0
- package/web/art/characters/shell/working.webp +0 -0
- package/web/art/characters/xai/idle.avif +0 -0
- package/web/art/characters/xai/idle.webp +0 -0
- package/web/art/characters/xai/locked.avif +0 -0
- package/web/art/characters/xai/locked.webp +0 -0
- package/web/art/characters/xai/working.avif +0 -0
- package/web/art/characters/xai/working.webp +0 -0
- package/web/art/icons/anthropic.avif +0 -0
- package/web/art/icons/anthropic.webp +0 -0
- package/web/art/icons/google.avif +0 -0
- package/web/art/icons/google.webp +0 -0
- package/web/art/icons/openai.avif +0 -0
- package/web/art/icons/openai.webp +0 -0
- package/web/art/icons/shell.avif +0 -0
- package/web/art/icons/shell.webp +0 -0
- package/web/art/icons/xai.avif +0 -0
- package/web/art/icons/xai.webp +0 -0
- package/web/art/page-light.avif +0 -0
- package/web/art/page-light.webp +0 -0
- package/web/art/page.avif +0 -0
- package/web/art/page.webp +0 -0
- package/web/art/ui/empty-state.avif +0 -0
- package/web/art/ui/empty-state.webp +0 -0
- package/web/art/ui/favicon.png +0 -0
- package/web/art/ui/frame-ornate.png +0 -0
- package/web/art/ui/guild-crest.png +0 -0
- package/web/fonts/OFL.txt +93 -0
- package/web/fonts/cinzel.woff2 +0 -0
- package/web/index.html +101 -15
- package/web/styles.css +240 -71
- package/web/art/characters/anthropic/idle.png +0 -0
- package/web/art/characters/anthropic/locked.png +0 -0
- package/web/art/characters/anthropic/working.png +0 -0
- package/web/art/characters/google/idle.png +0 -0
- package/web/art/characters/google/locked.png +0 -0
- package/web/art/characters/google/working.png +0 -0
- package/web/art/characters/openai/idle.png +0 -0
- package/web/art/characters/openai/locked.png +0 -0
- package/web/art/characters/openai/working.png +0 -0
- package/web/art/characters/shell/idle.png +0 -0
- package/web/art/characters/shell/locked.png +0 -0
- package/web/art/characters/shell/working.png +0 -0
- package/web/art/characters/xai/idle.png +0 -0
- package/web/art/characters/xai/locked.png +0 -0
- package/web/art/characters/xai/working.png +0 -0
- package/web/art/icons/anthropic.png +0 -0
- package/web/art/icons/google.png +0 -0
- package/web/art/icons/openai.png +0 -0
- package/web/art/icons/shell.png +0 -0
- package/web/art/icons/xai.png +0 -0
- package/web/art/page.png +0 -0
package/web/styles.css
CHANGED
|
@@ -1,21 +1,51 @@
|
|
|
1
|
+
@font-face {
|
|
2
|
+
font-family: "Cinzel";
|
|
3
|
+
src: url("/fonts/cinzel.woff2") format("woff2");
|
|
4
|
+
font-weight: 400 900;
|
|
5
|
+
font-display: swap;
|
|
6
|
+
}
|
|
7
|
+
@font-face {
|
|
8
|
+
font-family: "Cinzel Fallback";
|
|
9
|
+
src: local("Palatino Linotype"), local("Palatino"), local("Georgia");
|
|
10
|
+
ascent-override: 97.6%;
|
|
11
|
+
descent-override: 37.2%;
|
|
12
|
+
line-gap-override: 0%;
|
|
13
|
+
}
|
|
14
|
+
|
|
1
15
|
:root {
|
|
2
|
-
--bg: #
|
|
3
|
-
--surface: #
|
|
4
|
-
--surface-2: #
|
|
5
|
-
--border: #
|
|
6
|
-
--text: #
|
|
7
|
-
--muted: #
|
|
8
|
-
--
|
|
16
|
+
--bg: #f3eee3;
|
|
17
|
+
--surface: #fffcf6;
|
|
18
|
+
--surface-2: #f5eedf;
|
|
19
|
+
--border: #e3d7bd;
|
|
20
|
+
--text: #221b12;
|
|
21
|
+
--muted: #6b5c45;
|
|
22
|
+
--heading: #2c2216;
|
|
23
|
+
--accent: #5a3fc0;
|
|
24
|
+
--accent-fill: #5a3fc0;
|
|
9
25
|
--accent-text: #ffffff;
|
|
10
|
-
--danger: #
|
|
11
|
-
--ok: #
|
|
12
|
-
--warn: #
|
|
13
|
-
--
|
|
26
|
+
--danger: #a8302b;
|
|
27
|
+
--ok: #1d6e40;
|
|
28
|
+
--warn: #8a5300;
|
|
29
|
+
--gold: #b8892f;
|
|
30
|
+
--gold-ink: #7a5715;
|
|
31
|
+
--focus: #5a3fc0;
|
|
32
|
+
--wordmark: linear-gradient(180deg, #a77a26 0%, #7a5715 55%, #563c0b 100%);
|
|
33
|
+
--shadow: 0 1px 2px rgba(70, 48, 12, 0.08), 0 4px 14px rgba(70, 48, 12, 0.08);
|
|
14
34
|
--term-bg: #0f1115;
|
|
15
|
-
--radius:
|
|
35
|
+
--radius: 6px;
|
|
36
|
+
--ease: cubic-bezier(0.2, 0.8, 0.2, 1);
|
|
37
|
+
--font-display: "Cinzel", "Cinzel Fallback", "Palatino Linotype", Palatino, Georgia, serif;
|
|
38
|
+
--font-mono: ui-monospace, "Cascadia Code", "SF Mono", Menlo, Consolas, monospace;
|
|
39
|
+
--icon-sun: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='4.2'/%3E%3Cpath d='M12 2.5v2.2M12 19.3v2.2M2.5 12h2.2M19.3 12h2.2M5.3 5.3l1.6 1.6M17.1 17.1l1.6 1.6M5.3 18.7l1.6-1.6M17.1 6.9l1.6-1.6'/%3E%3C/svg%3E");
|
|
40
|
+
--icon-moon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linejoin='round'%3E%3Cpath d='M19.5 14.6A8 8 0 0 1 9.4 4.5a8 8 0 1 0 10.1 10.1z'/%3E%3C/svg%3E");
|
|
41
|
+
--icon-external: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17L17 7M9 7h8v8'/%3E%3C/svg%3E");
|
|
42
|
+
--icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 5.5l6.5 6.5L9 18.5'/%3E%3C/svg%3E");
|
|
43
|
+
--icon-github: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 0c4.42 0 8 3.58 8 8a8.013 8.013 0 0 1-5.45 7.59c-.4.08-.55-.17-.55-.38 0-.27.01-1.13.01-2.2 0-.75-.25-1.23-.54-1.48 1.78-.2 3.65-.88 3.65-3.95 0-.88-.31-1.59-.82-2.15.08-.2.36-1.02-.08-2.12 0 0-.67-.22-2.2.82-.64-.18-1.32-.27-2-.27-.68 0-1.36.09-2 .27-1.53-1.03-2.2-.82-2.2-.82-.44 1.1-.16 1.92-.08 2.12-.51.56-.82 1.28-.82 2.15 0 3.06 1.86 3.75 3.64 3.95-.23.2-.44.55-.51 1.07-.46.21-1.61.55-2.33-.66-.15-.24-.6-.83-1.23-.82-.67.01-.27.38.01.53.34.19.73.9.82 1.13.16.45.68 1.31 2.69.94 0 .67.01 1.3.01 1.49 0 .21-.15.45-.55.38A7.995 7.995 0 0 1 0 8c0-4.42 3.58-8 8-8Z'/%3E%3C/svg%3E");
|
|
44
|
+
--icon-info: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 10.8v6.2' stroke-width='2.4'/%3E%3Ccircle cx='12' cy='7.3' r='1.2' fill='black' stroke='none'/%3E%3C/svg%3E");
|
|
16
45
|
font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
|
|
17
46
|
font-size: 15px;
|
|
18
47
|
color-scheme: light;
|
|
48
|
+
scrollbar-color: color-mix(in srgb, var(--muted) 45%, transparent) transparent;
|
|
19
49
|
}
|
|
20
50
|
|
|
21
51
|
/* theme.js sets data-theme from the saved choice or the system setting before the first paint. */
|
|
@@ -26,20 +56,31 @@
|
|
|
26
56
|
--border: #2a303b;
|
|
27
57
|
--text: #e6e9ef;
|
|
28
58
|
--muted: #9aa4b2;
|
|
29
|
-
--
|
|
59
|
+
--heading: #f1e2c2;
|
|
60
|
+
--accent: #ac9ff7;
|
|
61
|
+
--accent-fill: #5b40d0;
|
|
30
62
|
--danger: #ef6b66;
|
|
31
63
|
--ok: #4cc38a;
|
|
32
64
|
--warn: #e0a84a;
|
|
65
|
+
--gold: #e8c47c;
|
|
66
|
+
--gold-ink: #e8c47c;
|
|
67
|
+
--focus: #e8c47c;
|
|
68
|
+
--wordmark: linear-gradient(180deg, #fbe9bd 0%, #e2b867 55%, #a97b35 100%);
|
|
33
69
|
--shadow: none;
|
|
34
70
|
color-scheme: dark;
|
|
35
71
|
}
|
|
36
72
|
|
|
37
73
|
* { box-sizing: border-box; }
|
|
38
74
|
body { margin: 0; background: var(--bg); color: var(--text); min-height: 100vh; }
|
|
39
|
-
|
|
40
|
-
h1 {
|
|
41
|
-
|
|
42
|
-
|
|
75
|
+
::selection { background: color-mix(in srgb, var(--accent) 32%, transparent); }
|
|
76
|
+
h1, h2 { margin: 0; font-family: var(--font-display); color: var(--heading); }
|
|
77
|
+
h1 {
|
|
78
|
+
font-size: 1.32rem; font-weight: 700; letter-spacing: 0.02em; white-space: nowrap;
|
|
79
|
+
background: var(--wordmark); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
|
|
80
|
+
}
|
|
81
|
+
h2 { font-size: 1.02rem; font-weight: 600; letter-spacing: 0.03em; }
|
|
82
|
+
h2 .count { font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; letter-spacing: 0; }
|
|
83
|
+
code, pre { font-family: var(--font-mono); }
|
|
43
84
|
[hidden] { display: none !important; }
|
|
44
85
|
|
|
45
86
|
.topbar {
|
|
@@ -48,35 +89,41 @@ code, pre { font-family: ui-monospace, "Cascadia Code", Menlo, Consolas, monospa
|
|
|
48
89
|
position: sticky; top: 0; z-index: 5;
|
|
49
90
|
}
|
|
50
91
|
.brand { display: flex; align-items: center; gap: 10px; }
|
|
51
|
-
.brand-mark { width: 26px; height: 26px; color: var(--accent); flex: none; }
|
|
52
92
|
.version {
|
|
53
|
-
font-size: 0.72rem; font-weight: 600; padding: 1px 7px; border-radius: 999px; white-space: nowrap;
|
|
54
|
-
background: var(--surface-2); color: var(--muted); border: 1px solid var(--border); font-variant-numeric: tabular-nums;
|
|
93
|
+
position: relative; font-family: inherit; font-size: 0.72rem; font-weight: 600; padding: 1px 7px; border-radius: 999px; white-space: nowrap;
|
|
94
|
+
background: var(--surface-2); color: var(--muted); border: 1px solid var(--border); font-variant-numeric: tabular-nums; cursor: pointer;
|
|
95
|
+
}
|
|
96
|
+
.version:hover { color: var(--text); border-color: var(--muted); }
|
|
97
|
+
.version:focus-visible { outline: 2px solid var(--focus); outline-offset: 1px; }
|
|
98
|
+
.version.unread::after {
|
|
99
|
+
content: ""; position: absolute; top: -3px; right: -3px; width: 8px; height: 8px; border-radius: 50%;
|
|
100
|
+
background: var(--accent); box-shadow: 0 0 0 2px var(--surface);
|
|
55
101
|
}
|
|
56
102
|
.topbar-end { display: flex; align-items: center; justify-content: flex-end; gap: 14px; flex-wrap: wrap; min-width: 0; }
|
|
57
103
|
.connection { display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: 0.85rem; }
|
|
58
|
-
.connection .dot { width: 8px; height: 8px; border-radius: 50%; background: var(--
|
|
59
|
-
.connection.ok .dot {
|
|
60
|
-
.connection.down .dot {
|
|
104
|
+
.connection .dot { --dot: var(--warn); width: 8px; height: 8px; border-radius: 50%; background: var(--dot); }
|
|
105
|
+
.connection.ok .dot { --dot: var(--ok); }
|
|
106
|
+
.connection.down .dot { --dot: var(--danger); }
|
|
61
107
|
|
|
62
|
-
main { max-width: 1200px; margin: 0 auto; padding:
|
|
108
|
+
main { max-width: 1200px; margin: 0 auto; padding: 26px 16px 56px; display: grid; grid-template-columns: minmax(0, 1fr); gap: 34px; }
|
|
63
109
|
.section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 12px; }
|
|
64
110
|
.count { color: var(--muted); font-weight: 500; }
|
|
65
111
|
|
|
66
112
|
.cwd { display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: 0.85rem; flex: 1 1 280px; max-width: 520px; }
|
|
67
113
|
.cwd input, .auth input {
|
|
68
|
-
flex: 1; min-width: 0; padding: 7px 10px; border-radius:
|
|
114
|
+
flex: 1; min-width: 0; padding: 7px 10px; border-radius: var(--radius); border: 1px solid var(--border);
|
|
69
115
|
background: var(--surface); color: var(--text); font: inherit; font-size: 0.9rem;
|
|
70
116
|
}
|
|
71
|
-
.cwd input:focus, .auth input:focus { outline: 2px solid var(--
|
|
117
|
+
.cwd input:focus, .auth input:focus { outline: 2px solid var(--focus); outline-offset: 1px; }
|
|
72
118
|
|
|
73
119
|
.providers { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }
|
|
74
120
|
.provider {
|
|
75
|
-
display:
|
|
121
|
+
display: flex; flex-direction: column; gap: 10px; padding: 14px;
|
|
76
122
|
border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow);
|
|
77
123
|
}
|
|
124
|
+
.provider-head { display: flex; align-items: center; gap: 12px; min-width: 0; }
|
|
78
125
|
.provider.unavailable .provider-icon { filter: grayscale(1); opacity: 0.45; }
|
|
79
|
-
.provider-text { display: grid; gap: 2px; min-width: 0; }
|
|
126
|
+
.provider-text { flex: 1; display: grid; gap: 2px; min-width: 0; }
|
|
80
127
|
.provider .vendor-line { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 6px; min-width: 0; }
|
|
81
128
|
.provider .vendor { font-weight: 600; }
|
|
82
129
|
.provider .tier {
|
|
@@ -89,17 +136,17 @@ main { max-width: 1200px; margin: 0 auto; padding: 20px 16px 48px; display: grid
|
|
|
89
136
|
.provider .state.update-available { color: var(--warn); }
|
|
90
137
|
.provider.unavailable .state { color: var(--muted); }
|
|
91
138
|
.provider .update { color: var(--warn); border-color: var(--warn); }
|
|
92
|
-
.provider .accounts {
|
|
139
|
+
.provider .accounts { display: flex; flex-wrap: wrap; gap: 6px; }
|
|
93
140
|
.account-chip {
|
|
94
141
|
font: inherit; font-size: 0.75rem; font-weight: 600; padding: 2px 10px; border-radius: 999px; cursor: pointer;
|
|
95
142
|
border: 1px solid var(--border); background: var(--surface-2); color: var(--muted); max-width: 100%;
|
|
96
143
|
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
|
|
97
144
|
}
|
|
98
145
|
.account-chip:hover { border-color: var(--muted); }
|
|
99
|
-
.account-chip:focus-visible { outline: 2px solid var(--
|
|
100
|
-
.account-chip[aria-selected="true"] { background: var(--accent); border-color: var(--accent); color: var(--accent-text); }
|
|
146
|
+
.account-chip:focus-visible { outline: 2px solid var(--focus); outline-offset: 1px; }
|
|
147
|
+
.account-chip[aria-selected="true"] { background: var(--accent-fill); border-color: var(--accent-fill); color: var(--accent-text); }
|
|
101
148
|
.account-chip.unsigned { border-style: dashed; }
|
|
102
|
-
.provider .usage {
|
|
149
|
+
.provider .usage { display: grid; gap: 4px; }
|
|
103
150
|
.provider .usage:empty { display: none; }
|
|
104
151
|
.meter { display: grid; grid-template-columns: 5.5em 1fr auto; align-items: center; gap: 8px; font-size: 0.75rem; color: var(--muted); }
|
|
105
152
|
.meter-label { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
|
@@ -110,7 +157,7 @@ main { max-width: 1200px; margin: 0 auto; padding: 20px 16px 48px; display: grid
|
|
|
110
157
|
.meter-value { white-space: nowrap; font-variant-numeric: tabular-nums; }
|
|
111
158
|
.usage-note { font-size: 0.75rem; color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
|
|
112
159
|
.provider .model-stats {
|
|
113
|
-
|
|
160
|
+
display: grid; grid-template-columns: max-content minmax(24px, 1fr) auto; align-items: center; gap: 2px 8px;
|
|
114
161
|
}
|
|
115
162
|
.provider .model-stats:empty { display: none; }
|
|
116
163
|
.provider .model-stats > .usage-note { grid-column: 1 / -1; contain: inline-size; }
|
|
@@ -119,9 +166,13 @@ main { max-width: 1200px; margin: 0 auto; padding: 20px 16px 48px; display: grid
|
|
|
119
166
|
font: inherit; font-size: 0.78rem; text-align: left; cursor: pointer;
|
|
120
167
|
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
|
|
121
168
|
}
|
|
122
|
-
.model-stats-head::after
|
|
169
|
+
.model-stats-head::after, .console-link::after, .theme-toggle::before, .model-name::before, .provider .copies summary::before {
|
|
170
|
+
content: ""; display: inline-block; flex: none; width: 0.75em; height: 0.75em; margin-left: 0.3em; vertical-align: -0.05em;
|
|
171
|
+
background: currentColor; mask: var(--icon-chevron) center / contain no-repeat;
|
|
172
|
+
}
|
|
173
|
+
.console-link::after { width: 0.7em; height: 0.7em; margin-left: 0.25em; mask-image: var(--icon-external); }
|
|
123
174
|
.model-stats-head:hover { text-decoration: underline; }
|
|
124
|
-
.model-stats-head:focus-visible { outline: 2px solid var(--
|
|
175
|
+
.model-stats-head:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; border-radius: 3px; }
|
|
125
176
|
|
|
126
177
|
.stat {
|
|
127
178
|
--tier: var(--border);
|
|
@@ -131,16 +182,16 @@ main { max-width: 1200px; margin: 0 auto; padding: 20px 16px 48px; display: grid
|
|
|
131
182
|
.stat-label { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
|
|
132
183
|
.stat-reading { grid-column: 2 / -1; display: grid; grid-template-columns: subgrid; align-items: center; }
|
|
133
184
|
.info {
|
|
134
|
-
position: relative; flex: none; display: inline-grid; place-items: center; width:
|
|
135
|
-
border:
|
|
136
|
-
font: italic 700 0.68rem/1 Georgia, "Times New Roman", serif; cursor: help;
|
|
185
|
+
position: relative; flex: none; display: inline-grid; place-items: center; width: 0.9rem; height: 0.9rem; padding: 0;
|
|
186
|
+
border: 0; border-radius: 50%; background: none; color: var(--muted); font-size: 0; cursor: help;
|
|
137
187
|
}
|
|
188
|
+
.info::before { content: ""; position: absolute; inset: 0; background: currentColor; mask: var(--icon-info) center / contain no-repeat; }
|
|
138
189
|
.info::after { content: ""; position: absolute; inset: -6px; }
|
|
139
|
-
.info:hover, .info:focus-visible { color: var(--accent);
|
|
140
|
-
.info:focus-visible { outline: 2px solid var(--
|
|
190
|
+
.info:hover, .info:focus-visible { color: var(--accent); }
|
|
191
|
+
.info:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
|
|
141
192
|
.tip {
|
|
142
193
|
position: fixed; z-index: 30; width: max-content; max-width: min(320px, calc(100vw - 16px)); margin: 0; padding: 9px 11px;
|
|
143
|
-
border-radius:
|
|
194
|
+
border-radius: var(--radius); background: var(--text); color: var(--bg); box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
|
|
144
195
|
font-size: 0.78rem; line-height: 1.45; pointer-events: none;
|
|
145
196
|
}
|
|
146
197
|
.tip strong { font-weight: 600; }
|
|
@@ -172,14 +223,17 @@ main { max-width: 1200px; margin: 0 auto; padding: 20px 16px 48px; display: grid
|
|
|
172
223
|
.tier-c { --tier: #4ade80; --tier-ink: #c6f6d5; }
|
|
173
224
|
.tier-d { --tier: #94a3b8; --tier-ink: #d4dbe4; }
|
|
174
225
|
}
|
|
175
|
-
.provider-links {
|
|
226
|
+
.provider-links { display: flex; gap: 14px; font-size: 0.78rem; }
|
|
176
227
|
.console-link { color: var(--accent); text-decoration: none; }
|
|
177
228
|
.console-link:hover { text-decoration: underline; }
|
|
178
|
-
.console-link:focus-visible { outline: 2px solid var(--
|
|
179
|
-
.provider-actions {
|
|
229
|
+
.console-link:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; border-radius: 3px; }
|
|
230
|
+
.provider-actions { margin-top: auto; display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
|
|
180
231
|
.provider .hint { font-size: 0.78rem; color: var(--muted); overflow-wrap: anywhere; }
|
|
181
|
-
.provider .copies {
|
|
182
|
-
.provider .copies summary { cursor: pointer; color: var(--warn); }
|
|
232
|
+
.provider .copies { font-size: 0.78rem; color: var(--muted); overflow-wrap: anywhere; }
|
|
233
|
+
.provider .copies summary { cursor: pointer; color: var(--warn); list-style: none; }
|
|
234
|
+
.provider .copies summary::-webkit-details-marker { display: none; }
|
|
235
|
+
.provider .copies summary::before { margin: 0 0.3em 0 0; transition: transform 0.15s var(--ease); }
|
|
236
|
+
.provider .copies[open] summary::before { transform: rotate(90deg); }
|
|
183
237
|
.provider .copies ul { margin: 6px 0 0; padding: 0; list-style: none; display: grid; gap: 8px; }
|
|
184
238
|
.provider .copies li span { display: block; }
|
|
185
239
|
.provider .copies .copy-name { color: var(--text); }
|
|
@@ -200,8 +254,8 @@ main { max-width: 1200px; margin: 0 auto; padding: 20px 16px 48px; display: grid
|
|
|
200
254
|
display: grid; gap: 12px; padding: 14px; border: 1px solid var(--border); border-radius: var(--radius);
|
|
201
255
|
background: var(--surface); box-shadow: var(--shadow); cursor: pointer;
|
|
202
256
|
}
|
|
203
|
-
.session-card:focus-visible { outline: 2px solid var(--
|
|
204
|
-
.session-card.exited {
|
|
257
|
+
.session-card:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
|
|
258
|
+
.session-card.exited .name { color: var(--muted); }
|
|
205
259
|
.card-top { display: flex; align-items: center; gap: 12px; }
|
|
206
260
|
.card-title { flex: 1; min-width: 0; }
|
|
207
261
|
.card-title .name { font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
|
|
@@ -218,10 +272,13 @@ main { max-width: 1200px; margin: 0 auto; padding: 20px 16px 48px; display: grid
|
|
|
218
272
|
border: 0; font-family: inherit; cursor: pointer;
|
|
219
273
|
}
|
|
220
274
|
.model-pill:hover { background: color-mix(in srgb, var(--accent) 24%, var(--surface)); }
|
|
221
|
-
.model-pill:focus-visible { outline: 2px solid var(--
|
|
275
|
+
.model-pill:focus-visible { outline: 2px solid var(--focus); outline-offset: 1px; }
|
|
222
276
|
.model-pill.screen { font-weight: 500; }
|
|
223
277
|
.status-pill.active { color: var(--ok); }
|
|
224
|
-
.status-pill.active::before {
|
|
278
|
+
.status-pill.active::before {
|
|
279
|
+
content: ""; display: inline-block; width: 6px; height: 6px; margin-right: 5px; vertical-align: 1px; border-radius: 50%;
|
|
280
|
+
background: currentColor; box-shadow: 0 0 6px currentColor; animation: pulse 1.2s ease-in-out infinite;
|
|
281
|
+
}
|
|
225
282
|
.status-pill.exited { color: var(--danger); }
|
|
226
283
|
|
|
227
284
|
.agents-row { display: flex; align-items: center; gap: 10px; min-height: 30px; }
|
|
@@ -244,16 +301,20 @@ main { max-width: 1200px; margin: 0 auto; padding: 20px 16px 48px; display: grid
|
|
|
244
301
|
|
|
245
302
|
.card-actions { display: flex; gap: 8px; flex-wrap: wrap; }
|
|
246
303
|
.btn {
|
|
247
|
-
padding: 6px 12px; border-radius:
|
|
304
|
+
padding: 6px 12px; border-radius: var(--radius); border: 1px solid var(--border); background: var(--surface-2);
|
|
248
305
|
color: var(--text); font: inherit; font-size: 0.85rem; cursor: pointer;
|
|
306
|
+
transition: border-color 0.15s, box-shadow 0.15s, filter 0.15s, transform 0.1s;
|
|
249
307
|
}
|
|
308
|
+
.btn:active:not(:disabled) { transform: translateY(1px); }
|
|
250
309
|
.btn:hover { border-color: var(--muted); }
|
|
251
|
-
.btn:focus-visible { outline: 2px solid var(--
|
|
252
|
-
.btn.primary { background: var(--accent); border-color: var(--accent); color: var(--accent-text); }
|
|
310
|
+
.btn:focus-visible { outline: 2px solid var(--focus); outline-offset: 1px; }
|
|
311
|
+
.btn.primary { background: var(--accent-fill); border-color: var(--accent-fill); color: var(--accent-text); }
|
|
253
312
|
.btn.danger { color: var(--danger); }
|
|
254
313
|
.btn.danger:hover { border-color: var(--danger); }
|
|
255
314
|
.btn:disabled { opacity: 0.6; cursor: progress; }
|
|
256
315
|
.stop-manager, .restart-manager, .theme-toggle, .upgrade { white-space: nowrap; }
|
|
316
|
+
.theme-toggle::before { width: 1em; height: 1em; margin: 0 0.4em 0 0; vertical-align: -0.15em; mask-image: var(--icon-sun); }
|
|
317
|
+
.theme-toggle[data-next="dark"]::before { mask-image: var(--icon-moon); }
|
|
257
318
|
.btn.upgrade, .btn.restart-manager.pending { color: var(--warn); border-color: var(--warn); }
|
|
258
319
|
.upgrade-note { font-size: 0.85rem; color: var(--warn); }
|
|
259
320
|
|
|
@@ -261,7 +322,7 @@ main { max-width: 1200px; margin: 0 auto; padding: 20px 16px 48px; display: grid
|
|
|
261
322
|
|
|
262
323
|
.auth { max-width: 560px; margin: 60px auto; padding: 24px; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); display: grid; gap: 12px; }
|
|
263
324
|
.auth p { margin: 0; color: var(--muted); line-height: 1.5; }
|
|
264
|
-
.auth pre { margin: 0; padding: 10px 12px; background: var(--surface-2); border-radius:
|
|
325
|
+
.auth pre { margin: 0; padding: 10px 12px; background: var(--surface-2); border-radius: var(--radius); }
|
|
265
326
|
.auth form { display: flex; gap: 8px; }
|
|
266
327
|
.stopped-help { display: grid; gap: 12px; }
|
|
267
328
|
.command { display: flex; align-items: center; gap: 8px; }
|
|
@@ -313,10 +374,10 @@ main { max-width: 1200px; margin: 0 auto; padding: 20px 16px 48px; display: grid
|
|
|
313
374
|
font: inherit; font-size: 0.85rem; text-align: left; cursor: pointer;
|
|
314
375
|
}
|
|
315
376
|
.model-toggle:hover { background: var(--surface-2); }
|
|
316
|
-
.model-toggle:focus-visible { outline: 2px solid var(--
|
|
377
|
+
.model-toggle:focus-visible { outline: 2px solid var(--focus); outline-offset: -2px; }
|
|
317
378
|
.model-title { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 6px; min-width: 0; }
|
|
318
379
|
.model-name { font-weight: 600; overflow-wrap: anywhere; }
|
|
319
|
-
.model-name::before {
|
|
380
|
+
.model-name::before { width: 0.7em; height: 0.7em; margin: 0 0.3em 0 0; background-color: var(--muted); transition: transform 0.15s var(--ease); }
|
|
320
381
|
.model-toggle[aria-expanded="true"] .model-name::before { transform: rotate(90deg); }
|
|
321
382
|
.model-context { color: var(--muted); font-variant-numeric: tabular-nums; }
|
|
322
383
|
.badge {
|
|
@@ -325,10 +386,10 @@ main { max-width: 1200px; margin: 0 auto; padding: 20px 16px 48px; display: grid
|
|
|
325
386
|
}
|
|
326
387
|
.badge.in-use { --badge: var(--accent); color: color-mix(in srgb, var(--badge) 80%, #000); }
|
|
327
388
|
.badge.new { --badge: var(--ok); color: color-mix(in srgb, var(--badge) 72%, #000); }
|
|
328
|
-
.badge.expires { --badge: var(--warn); color: color-mix(in srgb, var(--badge) 62%, #000); }
|
|
329
|
-
.badge.in-use, .badge.new, .badge.expires { border-color: color-mix(in srgb, var(--badge) 45%, transparent); }
|
|
389
|
+
.badge.expires, .badge.installed { --badge: var(--warn); color: color-mix(in srgb, var(--badge) 62%, #000); }
|
|
390
|
+
.badge.in-use, .badge.new, .badge.expires, .badge.installed { border-color: color-mix(in srgb, var(--badge) 45%, transparent); }
|
|
330
391
|
:where(:root[data-theme="dark"]) {
|
|
331
|
-
.badge.in-use, .badge.new, .badge.expires { color: var(--badge); }
|
|
392
|
+
.badge.in-use, .badge.new, .badge.expires, .badge.installed { color: var(--badge); }
|
|
332
393
|
}
|
|
333
394
|
.model-detail {
|
|
334
395
|
display: grid; grid-template-columns: max-content minmax(48px, 1fr) auto minmax(0, 19em); gap: 14px 10px;
|
|
@@ -360,7 +421,7 @@ main { max-width: 1200px; margin: 0 auto; padding: 20px 16px 48px; display: grid
|
|
|
360
421
|
.news-link { color: var(--text); font-weight: 600; text-decoration: none; }
|
|
361
422
|
a.news-link:hover, .news-discussion:hover { text-decoration: underline; }
|
|
362
423
|
a.news-link:visited { color: var(--muted); }
|
|
363
|
-
.news-link:focus-visible, .news-discussion:focus-visible { outline: 2px solid var(--
|
|
424
|
+
.news-link:focus-visible, .news-discussion:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; border-radius: 3px; }
|
|
364
425
|
.news-meta { color: var(--muted); font-size: 0.78rem; white-space: nowrap; font-variant-numeric: tabular-nums; }
|
|
365
426
|
|
|
366
427
|
.news-panel {
|
|
@@ -368,7 +429,19 @@ a.news-link:visited { color: var(--muted); }
|
|
|
368
429
|
border: 0; border-left: 1px solid var(--border); background: var(--surface); color: var(--text);
|
|
369
430
|
box-shadow: -16px 0 48px rgba(0, 0, 0, 0.25);
|
|
370
431
|
}
|
|
371
|
-
.news-panel[open] { display: flex; flex-direction: column;
|
|
432
|
+
.news-panel[open] { display: flex; flex-direction: column; }
|
|
433
|
+
.models, .news-panel {
|
|
434
|
+
transition: opacity 0.22s var(--ease), transform 0.22s var(--ease), overlay 0.22s allow-discrete, display 0.22s allow-discrete;
|
|
435
|
+
}
|
|
436
|
+
.models:not([open]) { opacity: 0; transform: translateY(12px) scale(0.98); }
|
|
437
|
+
.news-panel:not([open]) { opacity: 0; transform: translateX(28px); }
|
|
438
|
+
.models::backdrop, .news-panel::backdrop { transition: opacity 0.22s, overlay 0.22s allow-discrete, display 0.22s allow-discrete; }
|
|
439
|
+
.models:not([open])::backdrop, .news-panel:not([open])::backdrop { opacity: 0; }
|
|
440
|
+
@starting-style {
|
|
441
|
+
.models[open] { opacity: 0; transform: translateY(12px) scale(0.98); }
|
|
442
|
+
.news-panel[open] { opacity: 0; transform: translateX(28px); }
|
|
443
|
+
.models[open]::backdrop, .news-panel[open]::backdrop { opacity: 0; }
|
|
444
|
+
}
|
|
372
445
|
.news-panel::backdrop { background: rgba(15, 17, 21, 0.4); }
|
|
373
446
|
.news-bar { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-bottom: 1px solid var(--border); }
|
|
374
447
|
.news-heading { flex: 1; min-width: 0; }
|
|
@@ -379,8 +452,8 @@ a.news-link:visited { color: var(--muted); }
|
|
|
379
452
|
border: 1px solid var(--border); background: var(--surface-2); color: var(--muted);
|
|
380
453
|
}
|
|
381
454
|
.news-filter:hover { border-color: var(--muted); }
|
|
382
|
-
.news-filter:focus-visible { outline: 2px solid var(--
|
|
383
|
-
.news-filter[aria-pressed="true"] { background: var(--accent); border-color: var(--accent); color: var(--accent-text); }
|
|
455
|
+
.news-filter:focus-visible { outline: 2px solid var(--focus); outline-offset: 1px; }
|
|
456
|
+
.news-filter[aria-pressed="true"] { background: var(--accent-fill); border-color: var(--accent-fill); color: var(--accent-text); }
|
|
384
457
|
.news-body { flex: 1; min-height: 0; overflow: auto; padding: 0 14px 14px; }
|
|
385
458
|
.news-fresh { width: 100%; margin-top: 12px; }
|
|
386
459
|
.news-day {
|
|
@@ -402,12 +475,25 @@ a.news-link:visited { color: var(--muted); }
|
|
|
402
475
|
.news-status { margin: 0; padding: 10px 14px; border-top: 1px solid var(--border); color: var(--muted); font-size: 0.75rem; line-height: 1.45; }
|
|
403
476
|
.news-status span { display: block; }
|
|
404
477
|
|
|
478
|
+
.changelog-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
|
|
479
|
+
.changelog-actions .btn { flex: 1 1 auto; }
|
|
480
|
+
.changelog-list { list-style: none; margin: 0; padding: 0; }
|
|
481
|
+
.changelog-release { padding: 14px 0 12px; }
|
|
482
|
+
.changelog-release + .changelog-release { border-top: 1px solid var(--border); }
|
|
483
|
+
.changelog-release h3 { margin: 0; font-size: 1rem; }
|
|
484
|
+
.changelog-release .news-meta { display: block; margin-top: 2px; }
|
|
485
|
+
.changelog-type { margin: 10px 0 4px; font-size: 0.7rem; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; color: var(--muted); }
|
|
486
|
+
.changelog-type.breaking { color: var(--danger); }
|
|
487
|
+
.changelog-changes { margin: 0; padding-left: 1.2em; display: grid; gap: 4px; list-style: disc; font-size: 0.85rem; line-height: 1.45; overflow-wrap: anywhere; }
|
|
488
|
+
.changelog-changes li::marker { color: var(--muted); }
|
|
489
|
+
.changelog-changes code { font-size: 0.8rem; padding: 0 4px; border-radius: 4px; background: var(--surface-2); }
|
|
490
|
+
|
|
405
491
|
.history-tools { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 10px 14px 0; }
|
|
406
492
|
.history-tools input[type="search"] {
|
|
407
|
-
flex: 1 1 220px; min-width: 0; padding: 7px 10px; border-radius:
|
|
493
|
+
flex: 1 1 220px; min-width: 0; padding: 7px 10px; border-radius: var(--radius); border: 1px solid var(--border);
|
|
408
494
|
background: var(--surface); color: var(--text); font: inherit; font-size: 0.9rem;
|
|
409
495
|
}
|
|
410
|
-
.history-tools input:focus-visible, .history-form input:focus-visible { outline: 2px solid var(--
|
|
496
|
+
.history-tools input:focus-visible, .history-form input:focus-visible { outline: 2px solid var(--focus); outline-offset: 1px; }
|
|
411
497
|
.history-here { display: flex; align-items: center; gap: 6px; font-size: 0.8rem; color: var(--muted); white-space: nowrap; cursor: pointer; }
|
|
412
498
|
.history-here:has(input:disabled) { opacity: 0.6; cursor: default; }
|
|
413
499
|
.history .models-body { padding-top: 6px; }
|
|
@@ -425,29 +511,109 @@ a.news-link:visited { color: var(--muted); }
|
|
|
425
511
|
border-radius: 6px; border: 1px solid var(--border); background: var(--surface-2); color: var(--muted); cursor: copy; white-space: nowrap;
|
|
426
512
|
}
|
|
427
513
|
.session-id:hover { color: var(--text); border-color: var(--muted); }
|
|
428
|
-
.session-id:focus-visible { outline: 2px solid var(--
|
|
514
|
+
.session-id:focus-visible { outline: 2px solid var(--focus); outline-offset: 1px; }
|
|
429
515
|
.card-title .meta { display: flex; align-items: center; gap: 8px; min-width: 0; }
|
|
430
516
|
.card-title .meta-text { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
|
|
431
517
|
.history-form { display: flex; align-items: center; gap: 8px; padding: 10px 14px; border-top: 1px solid var(--border); font-size: 0.85rem; color: var(--muted); }
|
|
432
518
|
.history-form input {
|
|
433
|
-
flex: 1; min-width: 0; padding: 6px 10px; border-radius:
|
|
519
|
+
flex: 1; min-width: 0; padding: 6px 10px; border-radius: var(--radius); border: 1px solid var(--border);
|
|
434
520
|
background: var(--surface); color: var(--text); font: inherit; font-size: 0.85rem;
|
|
435
521
|
}
|
|
436
522
|
|
|
523
|
+
.launch-tools { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex: 1 1 360px; flex-wrap: wrap; max-width: 680px; }
|
|
524
|
+
.launch-tools .cwd { max-width: none; }
|
|
525
|
+
.github-open { white-space: nowrap; }
|
|
526
|
+
.github-open::before, .github-mark {
|
|
527
|
+
content: ""; display: inline-block; flex: none; background-color: currentColor; mask: var(--icon-github) center / contain no-repeat;
|
|
528
|
+
}
|
|
529
|
+
.github-open::before { width: 1em; height: 1em; margin: 0 0.45em 0 0; vertical-align: -0.15em; }
|
|
530
|
+
.github-mark { width: 26px; height: 26px; color: var(--heading); }
|
|
531
|
+
.github-accounts { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 10px 14px; border-bottom: 1px solid var(--border); }
|
|
532
|
+
.github-chips { display: flex; flex-wrap: wrap; gap: 6px; }
|
|
533
|
+
.github-chip { display: inline-flex; align-items: center; gap: 6px; padding: 2px 10px 2px 3px; font-size: 0.8rem; }
|
|
534
|
+
.github-avatar {
|
|
535
|
+
display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; flex: none; object-fit: cover;
|
|
536
|
+
background: var(--c, var(--muted)); color: #fff; font-size: 0.68rem; font-weight: 700;
|
|
537
|
+
}
|
|
538
|
+
.github-add { padding: 3px 10px; font-size: 0.8rem; }
|
|
539
|
+
.github .models-body { padding-top: 10px; }
|
|
540
|
+
.github-card {
|
|
541
|
+
display: grid; gap: 10px; padding: 14px 16px; margin-bottom: 10px; border: 1px solid var(--border); border-radius: var(--radius);
|
|
542
|
+
background: var(--surface-2); font-size: 0.9rem; line-height: 1.45;
|
|
543
|
+
}
|
|
544
|
+
.github-card h3 { margin: 0; font-size: 1rem; }
|
|
545
|
+
.github-card p { margin: 0; }
|
|
546
|
+
.github-small { color: var(--muted); font-size: 0.8rem; }
|
|
547
|
+
.github-error { color: var(--danger); }
|
|
548
|
+
.github-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
|
|
549
|
+
.github-actions a.btn { text-decoration: none; }
|
|
550
|
+
.github-scopes { margin: 0; padding-left: 1.2em; display: grid; gap: 4px; font-size: 0.85rem; }
|
|
551
|
+
.github-scopes code, .github-card code { font-size: 0.8rem; padding: 0 4px; border-radius: 4px; background: var(--surface); }
|
|
552
|
+
.github-steps { margin: 0; padding-left: 1.4em; display: grid; gap: 4px; }
|
|
553
|
+
.github-steps li.done { color: var(--ok); }
|
|
554
|
+
.github-steps li.done::after { content: " ✓"; }
|
|
555
|
+
.github-code { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
|
|
556
|
+
.github-code-text {
|
|
557
|
+
font-family: var(--font-mono); font-size: 1.7rem; font-weight: 700; letter-spacing: 0.12em; padding: 6px 14px;
|
|
558
|
+
border-radius: var(--radius); border: 1px dashed var(--muted); background: var(--surface); color: var(--heading); user-select: all;
|
|
559
|
+
}
|
|
560
|
+
.github-waiting::before {
|
|
561
|
+
content: ""; display: inline-block; width: 8px; height: 8px; margin-right: 8px; border-radius: 50%; background: var(--warn);
|
|
562
|
+
animation: pulse 1.4s ease-in-out infinite;
|
|
563
|
+
}
|
|
564
|
+
.github-status { display: flex; align-items: center; justify-content: space-between; gap: 8px 12px; flex-wrap: wrap; padding: 2px 0 8px; font-size: 0.85rem; }
|
|
565
|
+
.github-ready { color: var(--ok); font-weight: 600; }
|
|
566
|
+
.github-ready::before { content: "✓ "; }
|
|
567
|
+
.github-status-actions { display: flex; gap: 8px; }
|
|
568
|
+
.history-tools.github-tools { padding: 0 0 4px; }
|
|
569
|
+
.github-repo { grid-template-columns: minmax(0, 1fr) auto; }
|
|
570
|
+
.github-repo .history-title { display: flex; align-items: center; gap: 6px; min-width: 0; }
|
|
571
|
+
.github-repo .repo-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
|
|
572
|
+
.github-repo .repo-owner { color: var(--muted); font-weight: 500; }
|
|
573
|
+
.github-repo .badge { flex: none; }
|
|
574
|
+
.github-repo.conflict .history-meta { color: var(--warn); }
|
|
575
|
+
.github-create { margin-top: 10px; }
|
|
576
|
+
.github-fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 10px; }
|
|
577
|
+
.github-fields label { display: grid; gap: 4px; font-size: 0.8rem; color: var(--muted); }
|
|
578
|
+
.github-fields label.wide { grid-column: 1 / -1; }
|
|
579
|
+
.github-fields input, .github-fields select {
|
|
580
|
+
min-width: 0; padding: 6px 10px; border-radius: var(--radius); border: 1px solid var(--border);
|
|
581
|
+
background: var(--surface); color: var(--text); font: inherit; font-size: 0.9rem;
|
|
582
|
+
}
|
|
583
|
+
.github-fields input:focus-visible, .github-fields select:focus-visible { outline: 2px solid var(--focus); outline-offset: 1px; }
|
|
584
|
+
.github-options { display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 0.85rem; }
|
|
585
|
+
.github-options label { display: flex; align-items: center; gap: 6px; cursor: pointer; }
|
|
586
|
+
.github-options label:has(input:disabled) { opacity: 0.6; cursor: default; }
|
|
587
|
+
.github .models-note { display: grid; gap: 4px; font-size: 0.85rem; }
|
|
588
|
+
.toast .toast-action { margin-left: 12px; padding: 2px 10px; background: transparent; box-shadow: none; color: inherit; border-color: currentColor; }
|
|
589
|
+
|
|
437
590
|
.toast {
|
|
438
591
|
position: fixed; left: 50%; bottom: 20px; transform: translateX(-50%); z-index: 20;
|
|
439
|
-
max-width: min(640px, calc(100vw - 32px)); padding: 10px 14px; border-radius:
|
|
592
|
+
max-width: min(640px, calc(100vw - 32px)); padding: 10px 14px; border-radius: var(--radius);
|
|
440
593
|
background: var(--text); color: var(--bg); font-size: 0.9rem; box-shadow: var(--shadow); white-space: pre-wrap;
|
|
441
594
|
}
|
|
442
595
|
|
|
596
|
+
.toast:not([hidden]) { animation: toast-in 0.25s var(--ease); }
|
|
597
|
+
.tip:not([hidden]) { animation: fade-in 0.12s ease-out; }
|
|
598
|
+
|
|
599
|
+
::view-transition-old(root), ::view-transition-new(root) { animation: none; mix-blend-mode: normal; }
|
|
600
|
+
::view-transition-new(root) { animation: theme-reveal 0.6s var(--ease); }
|
|
601
|
+
|
|
443
602
|
@keyframes pulse { 50% { opacity: 0.35; } }
|
|
444
603
|
@keyframes ring { 0% { transform: scale(0.85); opacity: 0.8; } 100% { transform: scale(1.3); opacity: 0; } }
|
|
445
604
|
@keyframes stat-fill { from { transform: scaleX(0); } }
|
|
446
|
-
@keyframes
|
|
605
|
+
@keyframes toast-in { from { opacity: 0; transform: translate(-50%, 10px); } }
|
|
606
|
+
@keyframes fade-in { from { opacity: 0; } }
|
|
607
|
+
@keyframes theme-reveal {
|
|
608
|
+
from { clip-path: circle(0 at var(--reveal-x) var(--reveal-y)); }
|
|
609
|
+
to { clip-path: circle(var(--reveal-r) at var(--reveal-x) var(--reveal-y)); }
|
|
610
|
+
}
|
|
447
611
|
|
|
448
612
|
@media (prefers-reduced-motion: reduce) {
|
|
449
|
-
.status-pill.active::before, .agent.working::after, .model-detail .stat-fill, .
|
|
450
|
-
.model-name::before { transition: none; }
|
|
613
|
+
.status-pill.active::before, .agent.working::after, .model-detail .stat-fill, .toast:not([hidden]), .tip:not([hidden]) { animation: none; }
|
|
614
|
+
.model-name::before, .provider .copies summary::before, .btn, .models, .news-panel, .models::backdrop, .news-panel::backdrop { transition: none; }
|
|
615
|
+
.github-waiting::before { animation: none; }
|
|
616
|
+
.btn:active:not(:disabled) { transform: none; }
|
|
451
617
|
}
|
|
452
618
|
|
|
453
619
|
@media (max-width: 640px) {
|
|
@@ -457,6 +623,9 @@ a.news-link:visited { color: var(--muted); }
|
|
|
457
623
|
.terminal-panel { inset: var(--topbar-h, 56px) 0 0; border-radius: 0; }
|
|
458
624
|
.session-grid { grid-template-columns: 1fr; }
|
|
459
625
|
.cwd { flex-basis: 100%; }
|
|
626
|
+
.launch-tools { flex-basis: 100%; justify-content: stretch; }
|
|
627
|
+
.launch-tools .github-open { flex: 1 1 auto; }
|
|
628
|
+
.github-fields { grid-template-columns: minmax(0, 1fr); }
|
|
460
629
|
.models { width: 100vw; max-width: 100vw; height: 100dvh; max-height: 100dvh; margin: 0; border-radius: 0; }
|
|
461
630
|
.model-columns, .model-toggle { grid-template-columns: minmax(0, 1fr) repeat(3, 4.6rem); }
|
|
462
631
|
.model-columns span:last-child, .model-context { display: none; }
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/web/art/icons/google.png
DELETED
|
Binary file
|
package/web/art/icons/openai.png
DELETED
|
Binary file
|
package/web/art/icons/shell.png
DELETED
|
Binary file
|
package/web/art/icons/xai.png
DELETED
|
Binary file
|
package/web/art/page.png
DELETED
|
Binary file
|