clauddy 1.28.1 → 1.28.2
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/LICENSE +21 -0
- package/codex.js +19 -3
- package/main.js +12 -2
- package/package.json +1 -1
- package/renderer/index.html +1 -1
- package/renderer/pet.js +10 -2
- package/renderer/style.css +46 -42
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Renato Augusto
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/codex.js
CHANGED
|
@@ -17,6 +17,7 @@ const DAY = 86400000
|
|
|
17
17
|
const DAYS = 30
|
|
18
18
|
const WEEK = 7 * DAY
|
|
19
19
|
const ACTIVE_MS = 60000 // a rollout touched within the last minute = Codex working
|
|
20
|
+
const DAY_MIN = 24 * 60
|
|
20
21
|
const TOP_PROJECTS = 5 // same fold as Claude's panel
|
|
21
22
|
|
|
22
23
|
// per file: how far we've read, plus what we got out of it. Rollouts only ever
|
|
@@ -36,7 +37,18 @@ function limitsOf(rl, ts) {
|
|
|
36
37
|
w && typeof w.used_percent === 'number'
|
|
37
38
|
? { pct: w.used_percent, resetsAt: w.resets_at ? w.resets_at * 1000 : null }
|
|
38
39
|
: null
|
|
39
|
-
|
|
40
|
+
// Plus reports a 5-hour window and a weekly one; some plans (Pro Lite, say)
|
|
41
|
+
// only the weekly one, in the `primary` slot. Sort by length, not by slot.
|
|
42
|
+
let session = null
|
|
43
|
+
let weekly = null
|
|
44
|
+
for (const w of [rl.primary, rl.secondary]) {
|
|
45
|
+
const v = win(w)
|
|
46
|
+
if (!v) continue
|
|
47
|
+
const long = w.window_minutes != null ? w.window_minutes >= DAY_MIN : w === rl.secondary
|
|
48
|
+
if (long) weekly = v
|
|
49
|
+
else session = v
|
|
50
|
+
}
|
|
51
|
+
return { ts, plan: rl.plan_type || null, session, weekly }
|
|
40
52
|
}
|
|
41
53
|
|
|
42
54
|
function ingestLine(sum, line) {
|
|
@@ -200,12 +212,16 @@ function getCodexUsage(now = Date.now()) {
|
|
|
200
212
|
})
|
|
201
213
|
}
|
|
202
214
|
|
|
215
|
+
const weeklyOnly = !!limits?.weekly && !limits.session
|
|
203
216
|
return {
|
|
204
217
|
active: !!latest && now - latest.mtime < ACTIVE_MS,
|
|
205
218
|
lastSeen: latest ? latest.mtime : null,
|
|
206
219
|
plan: limits?.plan || null,
|
|
207
|
-
|
|
208
|
-
|
|
220
|
+
// with no 5-hour window, the week is the budget that binds: it takes the
|
|
221
|
+
// session's place, the way Cursor's month does
|
|
222
|
+
session: limits ? windowNow(weeklyOnly ? limits.weekly : limits.session, now) : null,
|
|
223
|
+
weekly: limits && !weeklyOnly ? windowNow(limits.weekly, now) : null,
|
|
224
|
+
weeklyOnly,
|
|
209
225
|
limitsAt: limits?.ts || null,
|
|
210
226
|
tokensToday,
|
|
211
227
|
tokens5h,
|
package/main.js
CHANGED
|
@@ -332,7 +332,13 @@ function checkAlerts(config, d) {
|
|
|
332
332
|
function checkCodexAlerts(config, c) {
|
|
333
333
|
if (!c) return
|
|
334
334
|
alertScopes(config, [
|
|
335
|
-
{
|
|
335
|
+
{
|
|
336
|
+
// a weekly-only plan carries its week in `session`, so the key says weekly
|
|
337
|
+
label: c.weeklyOnly ? 'Codex weekly' : 'Codex session',
|
|
338
|
+
pct: c.session?.pct,
|
|
339
|
+
resetMs: c.session?.resetMs,
|
|
340
|
+
session: true,
|
|
341
|
+
},
|
|
336
342
|
{ label: 'Codex weekly', pct: c.weekly?.pct, resetMs: c.weekly?.resetMs },
|
|
337
343
|
])
|
|
338
344
|
}
|
|
@@ -801,7 +807,11 @@ function updateTray() {
|
|
|
801
807
|
const age = (u) => (u.limitsAt ? ` (as of ${new Date(u.limitsAt).toLocaleTimeString()})` : '')
|
|
802
808
|
const parts = [
|
|
803
809
|
sessionPct != null && ['C', `Claude session ${fmt(sessionPct)}`, sessionPct],
|
|
804
|
-
cx && [
|
|
810
|
+
cx && [
|
|
811
|
+
'X',
|
|
812
|
+
`Codex ${cx.weeklyOnly ? 'weekly' : 'session'} ${fmt(cx.session?.pct)}${age(cx)}`,
|
|
813
|
+
cx.session?.pct,
|
|
814
|
+
],
|
|
805
815
|
cu && ['Cu', `Cursor usage ${fmt(cu.session?.pct)}${age(cu)}`, cu.session?.pct],
|
|
806
816
|
].filter(Boolean)
|
|
807
817
|
const title = parts.map(([k, , v]) => `${k} ${fmt(v)}`).join(' · ')
|
package/package.json
CHANGED
package/renderer/index.html
CHANGED
|
@@ -262,7 +262,7 @@
|
|
|
262
262
|
<button type="button" id="reminder-toggle" class="reminder-toggle" hidden></button>
|
|
263
263
|
<div class="sub proj" id="session-proj" hidden></div>
|
|
264
264
|
</div>
|
|
265
|
-
<div class="meter">
|
|
265
|
+
<div class="meter" id="week-meter">
|
|
266
266
|
<div class="meter-top"><span id="week-label">weekly · all models</span><span id="week-pct">0%</span></div>
|
|
267
267
|
<div class="track"><div class="fill week" id="week-fill"></div></div>
|
|
268
268
|
<div class="sub" id="week-sub">—</div>
|
package/renderer/pet.js
CHANGED
|
@@ -836,6 +836,8 @@ function extView(p, c) {
|
|
|
836
836
|
},
|
|
837
837
|
sess: c.session,
|
|
838
838
|
week: p === 'cursor' ? c.api : c.weekly,
|
|
839
|
+
// a Codex plan with no 5-hour window: its week sits in the session's place
|
|
840
|
+
weeklyOnly: !!c.weeklyOnly,
|
|
839
841
|
stale: c.limitsAt != null && Date.now() - c.limitsAt > STALE_MS ? c.limitsAt : null,
|
|
840
842
|
}
|
|
841
843
|
}
|
|
@@ -1288,7 +1290,13 @@ function paint() {
|
|
|
1288
1290
|
sf.style.width = `${sp}%`
|
|
1289
1291
|
sf.classList.toggle('high', sp >= 80)
|
|
1290
1292
|
setLevel(sf, sp)
|
|
1291
|
-
|
|
1293
|
+
const weeklyOnly = !!cv?.weeklyOnly
|
|
1294
|
+
el('session-label').textContent = isCursor
|
|
1295
|
+
? 'this month · included'
|
|
1296
|
+
: weeklyOnly
|
|
1297
|
+
? 'weekly · all models'
|
|
1298
|
+
: 'current session'
|
|
1299
|
+
el('week-meter').hidden = weeklyOnly
|
|
1292
1300
|
el('week-label').textContent = isCursor ? 'API models · this month' : 'weekly · all models'
|
|
1293
1301
|
el('session-sub').textContent = isExt
|
|
1294
1302
|
? isCursor
|
|
@@ -1298,7 +1306,7 @@ function paint() {
|
|
|
1298
1306
|
cv.stale,
|
|
1299
1307
|
ext.signedOut ? 'sign in to the Cursor app' : 'no reading yet',
|
|
1300
1308
|
)
|
|
1301
|
-
: extSub(cv.sess, d.session.tokens, cv.stale)
|
|
1309
|
+
: extSub(cv.sess, weeklyOnly ? d.week.tokens : d.session.tokens, cv.stale)
|
|
1302
1310
|
: sessActive
|
|
1303
1311
|
? `resets in ${fmtResetIn(sessReset)} · ${fmtTokens(d.session.tokens)} tokens`
|
|
1304
1312
|
: 'no active session'
|
package/renderer/style.css
CHANGED
|
@@ -41,10 +41,8 @@ body {
|
|
|
41
41
|
width: 280px;
|
|
42
42
|
background: var(--panel-bg);
|
|
43
43
|
border: 1px solid var(--panel-border);
|
|
44
|
-
border-radius:
|
|
45
|
-
box-shadow:
|
|
46
|
-
0 12px 32px #0005,
|
|
47
|
-
inset 0 1px 0 #ffffff05;
|
|
44
|
+
border-radius: 10px;
|
|
45
|
+
box-shadow: inset 0 1px 0 #ffffff05;
|
|
48
46
|
padding: 14px 18px 14px;
|
|
49
47
|
display: flex;
|
|
50
48
|
flex-direction: column;
|
|
@@ -72,7 +70,7 @@ body {
|
|
|
72
70
|
width: 19px;
|
|
73
71
|
height: 19px;
|
|
74
72
|
border: 1px solid rgba(255, 255, 255, 0.035);
|
|
75
|
-
border-radius:
|
|
73
|
+
border-radius: 4px;
|
|
76
74
|
background: #ffffff04;
|
|
77
75
|
box-shadow: inset 0 0.5px 0 rgba(255, 255, 255, 0.03);
|
|
78
76
|
color: #aaa59d;
|
|
@@ -190,7 +188,7 @@ body.collapsed #usage {
|
|
|
190
188
|
cursor: pointer;
|
|
191
189
|
padding: 0 5px 0 6px;
|
|
192
190
|
margin-left: -6px; /* the text stays where it has always been */
|
|
193
|
-
border-radius:
|
|
191
|
+
border-radius: 4px;
|
|
194
192
|
background: transparent;
|
|
195
193
|
transition:
|
|
196
194
|
background 0.15s,
|
|
@@ -239,7 +237,7 @@ body.collapsed #usage {
|
|
|
239
237
|
overflow-y: auto;
|
|
240
238
|
padding: 7px;
|
|
241
239
|
border: 1px solid rgba(255, 255, 255, 0.08);
|
|
242
|
-
border-radius:
|
|
240
|
+
border-radius: 5px;
|
|
243
241
|
background: #30251e;
|
|
244
242
|
box-shadow: 0 8px 20px rgba(0, 0, 0, 0.33);
|
|
245
243
|
-webkit-app-region: no-drag;
|
|
@@ -273,7 +271,7 @@ body.collapsed #usage {
|
|
|
273
271
|
#acc-menu .acc-item {
|
|
274
272
|
gap: 6px;
|
|
275
273
|
padding: 5px 4px;
|
|
276
|
-
border-radius:
|
|
274
|
+
border-radius: 3px;
|
|
277
275
|
}
|
|
278
276
|
#acc-menu .acc-item .who {
|
|
279
277
|
font-size: 10px;
|
|
@@ -300,7 +298,7 @@ body.collapsed #usage {
|
|
|
300
298
|
flex: none;
|
|
301
299
|
text-transform: lowercase;
|
|
302
300
|
padding: 2px 3px;
|
|
303
|
-
border-radius:
|
|
301
|
+
border-radius: 2px;
|
|
304
302
|
font-size: 8px;
|
|
305
303
|
font-weight: 400;
|
|
306
304
|
letter-spacing: 0;
|
|
@@ -385,7 +383,7 @@ body.collapsed #mini-acct-name {
|
|
|
385
383
|
margin: 11px 0 13px;
|
|
386
384
|
padding: 8px;
|
|
387
385
|
border: 1px solid var(--hair);
|
|
388
|
-
border-radius:
|
|
386
|
+
border-radius: 4px;
|
|
389
387
|
background: #ffffff03;
|
|
390
388
|
}
|
|
391
389
|
.connect-block > div {
|
|
@@ -401,7 +399,7 @@ body.collapsed #mini-acct-name {
|
|
|
401
399
|
padding: 3px;
|
|
402
400
|
background: none;
|
|
403
401
|
border: 0;
|
|
404
|
-
border-radius:
|
|
402
|
+
border-radius: 3px;
|
|
405
403
|
color: #8d7b6c;
|
|
406
404
|
cursor: pointer;
|
|
407
405
|
-webkit-app-region: no-drag;
|
|
@@ -533,7 +531,7 @@ input[type="number"]::-webkit-outer-spin-button {
|
|
|
533
531
|
padding: 3px;
|
|
534
532
|
border: 0.5px solid rgba(255, 255, 255, 0.035);
|
|
535
533
|
background: rgba(15, 16, 23, 0.43);
|
|
536
|
-
border-radius:
|
|
534
|
+
border-radius: 4px;
|
|
537
535
|
}
|
|
538
536
|
.seg-btn {
|
|
539
537
|
flex: 1;
|
|
@@ -542,7 +540,7 @@ input[type="number"]::-webkit-outer-spin-button {
|
|
|
542
540
|
color: #938996;
|
|
543
541
|
background: none;
|
|
544
542
|
border: 0;
|
|
545
|
-
border-radius:
|
|
543
|
+
border-radius: 3px;
|
|
546
544
|
cursor: pointer;
|
|
547
545
|
white-space: nowrap;
|
|
548
546
|
transition:
|
|
@@ -624,7 +622,7 @@ but visibly nested: a soft coral guide bar ties the pair to the
|
|
|
624
622
|
margin: 0;
|
|
625
623
|
width: 29px;
|
|
626
624
|
height: 16px;
|
|
627
|
-
border-radius:
|
|
625
|
+
border-radius: 6px;
|
|
628
626
|
background: #5c5146;
|
|
629
627
|
position: relative;
|
|
630
628
|
cursor: pointer;
|
|
@@ -659,7 +657,7 @@ but visibly nested: a soft coral guide bar ties the pair to the
|
|
|
659
657
|
flex: none;
|
|
660
658
|
border: 0.5px solid var(--hair);
|
|
661
659
|
background: rgba(255, 255, 255, 0.012);
|
|
662
|
-
border-radius:
|
|
660
|
+
border-radius: 3px;
|
|
663
661
|
overflow: hidden;
|
|
664
662
|
}
|
|
665
663
|
.num-val {
|
|
@@ -729,7 +727,7 @@ but visibly nested: a soft coral guide bar ties the pair to the
|
|
|
729
727
|
.set-actions button {
|
|
730
728
|
flex: 1;
|
|
731
729
|
border: 1px solid rgba(255, 255, 255, 0.082);
|
|
732
|
-
border-radius:
|
|
730
|
+
border-radius: 3px;
|
|
733
731
|
padding: 7px;
|
|
734
732
|
font-size: 11px;
|
|
735
733
|
font-weight: 400;
|
|
@@ -824,7 +822,7 @@ body.has-update #upd-check {
|
|
|
824
822
|
}
|
|
825
823
|
.upd-btn {
|
|
826
824
|
border: 1px solid rgba(206, 146, 109, 0.35);
|
|
827
|
-
border-radius:
|
|
825
|
+
border-radius: 3px;
|
|
828
826
|
padding: 4px 8px;
|
|
829
827
|
font-size: 9px;
|
|
830
828
|
font-weight: 400;
|
|
@@ -864,7 +862,7 @@ body.live .live-only {
|
|
|
864
862
|
color: #abbd96;
|
|
865
863
|
border: 1px solid rgba(161, 183, 134, 0.13);
|
|
866
864
|
background: rgba(161, 183, 134, 0.03);
|
|
867
|
-
border-radius:
|
|
865
|
+
border-radius: 2px;
|
|
868
866
|
}
|
|
869
867
|
|
|
870
868
|
/* account / auth */
|
|
@@ -878,7 +876,7 @@ body.live .live-only {
|
|
|
878
876
|
justify-content: center;
|
|
879
877
|
gap: 6px;
|
|
880
878
|
border: 1px solid rgba(206, 146, 109, 0.35);
|
|
881
|
-
border-radius:
|
|
879
|
+
border-radius: 3px;
|
|
882
880
|
padding: 9px;
|
|
883
881
|
font-size: 11px;
|
|
884
882
|
font-weight: 400;
|
|
@@ -944,7 +942,7 @@ body.live .live-only {
|
|
|
944
942
|
align-items: center;
|
|
945
943
|
gap: 7px;
|
|
946
944
|
padding: 5px 6px;
|
|
947
|
-
border-radius:
|
|
945
|
+
border-radius: 4px;
|
|
948
946
|
cursor: pointer;
|
|
949
947
|
color: var(--muted);
|
|
950
948
|
transition:
|
|
@@ -1047,7 +1045,7 @@ body.awaiting #acc-code:not(.filled) {
|
|
|
1047
1045
|
margin: 4px 0 6px;
|
|
1048
1046
|
background: rgba(255, 255, 255, 0.08);
|
|
1049
1047
|
border: 0.5px solid var(--hair);
|
|
1050
|
-
border-radius:
|
|
1048
|
+
border-radius: 4px;
|
|
1051
1049
|
color: var(--text);
|
|
1052
1050
|
font-size: 11px;
|
|
1053
1051
|
padding: 5px 8px;
|
|
@@ -1103,7 +1101,7 @@ body:not(.live) #bymodel {
|
|
|
1103
1101
|
width: 100%;
|
|
1104
1102
|
text-align: left;
|
|
1105
1103
|
border: 1px solid rgba(206, 146, 109, 0.22);
|
|
1106
|
-
border-radius:
|
|
1104
|
+
border-radius: 4px;
|
|
1107
1105
|
background: rgba(206, 146, 109, 0.055);
|
|
1108
1106
|
/* the same breathing room the meters get, so it never touches the tabs
|
|
1109
1107
|
above it or the Details rule below */
|
|
@@ -1276,7 +1274,7 @@ body.settings-open #pet {
|
|
|
1276
1274
|
position: relative;
|
|
1277
1275
|
height: 132px;
|
|
1278
1276
|
margin-top: 24px; /* the title band is 38px; the card already pads 14 of it */
|
|
1279
|
-
border-radius:
|
|
1277
|
+
border-radius: 6px;
|
|
1280
1278
|
background: radial-gradient(100% 130% at 50% 30%, #141714, #0d100e);
|
|
1281
1279
|
box-shadow: inset 0 0 0 1px #ffffff06;
|
|
1282
1280
|
overflow: hidden;
|
|
@@ -1940,7 +1938,7 @@ body.state-tired #status-text {
|
|
|
1940
1938
|
width: 100%;
|
|
1941
1939
|
height: 4px;
|
|
1942
1940
|
background: #ffffff0a;
|
|
1943
|
-
border-radius:
|
|
1941
|
+
border-radius: 3px;
|
|
1944
1942
|
overflow: hidden;
|
|
1945
1943
|
margin-top: 7px;
|
|
1946
1944
|
}
|
|
@@ -1948,7 +1946,7 @@ body.state-tired #status-text {
|
|
|
1948
1946
|
height: 100%;
|
|
1949
1947
|
width: 0%;
|
|
1950
1948
|
background: var(--coral);
|
|
1951
|
-
border-radius:
|
|
1949
|
+
border-radius: 3px;
|
|
1952
1950
|
transition:
|
|
1953
1951
|
width 0.7s cubic-bezier(0.22, 1, 0.36, 1),
|
|
1954
1952
|
background 0.7s;
|
|
@@ -2294,7 +2292,7 @@ body.dual #harness-tabs {
|
|
|
2294
2292
|
min-height: 26px;
|
|
2295
2293
|
padding: 4px 7px;
|
|
2296
2294
|
border: 1px solid #ffffff12;
|
|
2297
|
-
border-radius:
|
|
2295
|
+
border-radius: 4px;
|
|
2298
2296
|
background: #ffffff03;
|
|
2299
2297
|
color: var(--muted);
|
|
2300
2298
|
font: inherit;
|
|
@@ -2467,7 +2465,7 @@ body.collapsed.dual #card {
|
|
|
2467
2465
|
grid-template-columns: 66px minmax(0, 1fr);
|
|
2468
2466
|
align-items: center;
|
|
2469
2467
|
gap: 8px;
|
|
2470
|
-
border-radius:
|
|
2468
|
+
border-radius: 9px;
|
|
2471
2469
|
}
|
|
2472
2470
|
body.collapsed.dual #stage {
|
|
2473
2471
|
height: 70px;
|
|
@@ -2532,7 +2530,7 @@ body.collapsed.dual #mini-dual {
|
|
|
2532
2530
|
min-height: 29px;
|
|
2533
2531
|
padding: 3px 0 3px 5px;
|
|
2534
2532
|
border: 0;
|
|
2535
|
-
border-radius:
|
|
2533
|
+
border-radius: 3px;
|
|
2536
2534
|
background: transparent;
|
|
2537
2535
|
color: #aaa298;
|
|
2538
2536
|
text-align: left;
|
|
@@ -2650,7 +2648,7 @@ body:has(#connections > .open) #conn-tiles {
|
|
|
2650
2648
|
min-width: 0;
|
|
2651
2649
|
padding: 10px 4px 9px;
|
|
2652
2650
|
border: 1px solid var(--hair);
|
|
2653
|
-
border-radius:
|
|
2651
|
+
border-radius: 6px;
|
|
2654
2652
|
background: #ffffff03;
|
|
2655
2653
|
color: var(--muted);
|
|
2656
2654
|
font: inherit;
|
|
@@ -2674,7 +2672,7 @@ body:has(#connections > .open) #conn-tiles {
|
|
|
2674
2672
|
place-items: center;
|
|
2675
2673
|
width: 30px;
|
|
2676
2674
|
height: 30px;
|
|
2677
|
-
border-radius:
|
|
2675
|
+
border-radius: 5px;
|
|
2678
2676
|
}
|
|
2679
2677
|
/* not connected yet: the logo waits in grey */
|
|
2680
2678
|
.conn-tile:not(.on) .connection-avatar {
|
|
@@ -2749,7 +2747,7 @@ body:has(#connections > .open) #conn-tiles {
|
|
|
2749
2747
|
height: 20px;
|
|
2750
2748
|
padding: 0;
|
|
2751
2749
|
border: 0;
|
|
2752
|
-
border-radius:
|
|
2750
|
+
border-radius: 3px;
|
|
2753
2751
|
background: none;
|
|
2754
2752
|
color: var(--muted);
|
|
2755
2753
|
cursor: pointer;
|
|
@@ -2881,7 +2879,7 @@ body.view-cursor {
|
|
|
2881
2879
|
min-height: 64px;
|
|
2882
2880
|
padding: 10px;
|
|
2883
2881
|
border: 1px solid var(--hair);
|
|
2884
|
-
border-radius:
|
|
2882
|
+
border-radius: 6px;
|
|
2885
2883
|
background: #ffffff03;
|
|
2886
2884
|
}
|
|
2887
2885
|
#acc-connected.connection-card,
|
|
@@ -2895,7 +2893,7 @@ body.cursor-on #cursor-settings.connection-card {
|
|
|
2895
2893
|
flex: none;
|
|
2896
2894
|
width: 28px;
|
|
2897
2895
|
height: 28px;
|
|
2898
|
-
border-radius:
|
|
2896
|
+
border-radius: 5px;
|
|
2899
2897
|
}
|
|
2900
2898
|
.claude-avatar {
|
|
2901
2899
|
background: #d9775718;
|
|
@@ -2944,7 +2942,7 @@ body.cursor-on #cursor-settings.connection-card {
|
|
|
2944
2942
|
height: 17px;
|
|
2945
2943
|
padding: 0 4px;
|
|
2946
2944
|
border: 1px solid #cbb3942b;
|
|
2947
|
-
border-radius:
|
|
2945
|
+
border-radius: 3px;
|
|
2948
2946
|
font-size: 9px;
|
|
2949
2947
|
line-height: 1;
|
|
2950
2948
|
color: #beaa92;
|
|
@@ -2982,7 +2980,7 @@ body.cursor-on #cursor-connected-caption {
|
|
|
2982
2980
|
height: 24px;
|
|
2983
2981
|
padding: 5px;
|
|
2984
2982
|
border: 0;
|
|
2985
|
-
border-radius:
|
|
2983
|
+
border-radius: 4px;
|
|
2986
2984
|
color: #b0a498;
|
|
2987
2985
|
background: transparent;
|
|
2988
2986
|
cursor: pointer;
|
|
@@ -3017,7 +3015,7 @@ body.awaiting #acc-intro.connection-card {
|
|
|
3017
3015
|
height: 22px;
|
|
3018
3016
|
padding: 0 8px;
|
|
3019
3017
|
border: 1px solid #a6b79b42;
|
|
3020
|
-
border-radius:
|
|
3018
|
+
border-radius: 4px;
|
|
3021
3019
|
background: #a6b79b0c;
|
|
3022
3020
|
color: #c2d0b8;
|
|
3023
3021
|
font: inherit;
|
|
@@ -3237,7 +3235,7 @@ body.collapsed:not(.pet-only):not(.is-menubar) #controls #pet-only-toggle {
|
|
|
3237
3235
|
margin-top: 4px;
|
|
3238
3236
|
padding: 2px 6px;
|
|
3239
3237
|
border: 1px solid var(--hair);
|
|
3240
|
-
border-radius:
|
|
3238
|
+
border-radius: 3px;
|
|
3241
3239
|
background: #ffffff04;
|
|
3242
3240
|
color: #cfc0ac;
|
|
3243
3241
|
font: inherit;
|
|
@@ -3266,7 +3264,7 @@ body.collapsed.dual #mini-reminder {
|
|
|
3266
3264
|
grid-column: 1 / -1;
|
|
3267
3265
|
padding: 6px 8px;
|
|
3268
3266
|
margin-top: 6px;
|
|
3269
|
-
border-radius:
|
|
3267
|
+
border-radius: 4px;
|
|
3270
3268
|
background: #ffffff07;
|
|
3271
3269
|
color: #d5c6b6;
|
|
3272
3270
|
font-size: 10px;
|
|
@@ -3325,6 +3323,12 @@ body.collapsed.pet-only #pet {
|
|
|
3325
3323
|
body.collapsed.pet-only #pet:active {
|
|
3326
3324
|
cursor: grabbing;
|
|
3327
3325
|
}
|
|
3326
|
+
/* the bigger pet sits lower: the floor shadow follows its feet */
|
|
3327
|
+
body.collapsed.pet-only #shadow {
|
|
3328
|
+
top: calc(50% + 37px);
|
|
3329
|
+
width: 56px;
|
|
3330
|
+
height: 9px;
|
|
3331
|
+
}
|
|
3328
3332
|
body.collapsed.pet-only :is(#mini, #controls, #ring, #ring-pct, #companion-notice, #bubble) {
|
|
3329
3333
|
display: none;
|
|
3330
3334
|
}
|
|
@@ -3342,7 +3346,7 @@ body.collapsed.pet-only #pet-glance {
|
|
|
3342
3346
|
min-height: 32px;
|
|
3343
3347
|
padding: 2px 5px 2px 10px;
|
|
3344
3348
|
border: 1px solid transparent;
|
|
3345
|
-
border-radius:
|
|
3349
|
+
border-radius: 6px;
|
|
3346
3350
|
font-size: 10px;
|
|
3347
3351
|
color: var(--muted);
|
|
3348
3352
|
opacity: 0;
|
|
@@ -3365,7 +3369,7 @@ body.collapsed.pet-only.pet-peek #pet-glance {
|
|
|
3365
3369
|
height: 26px;
|
|
3366
3370
|
flex-shrink: 0;
|
|
3367
3371
|
justify-content: center;
|
|
3368
|
-
border-radius:
|
|
3372
|
+
border-radius: 4px;
|
|
3369
3373
|
color: #c8bcaf;
|
|
3370
3374
|
opacity: 0.65;
|
|
3371
3375
|
}
|
|
@@ -3406,7 +3410,7 @@ body.collapsed.pet-only.pet-peek #pet-glance {
|
|
|
3406
3410
|
#pet-glance button:focus-visible {
|
|
3407
3411
|
outline: 1px solid #e6a07f;
|
|
3408
3412
|
outline-offset: 3px;
|
|
3409
|
-
border-radius:
|
|
3413
|
+
border-radius: 2px;
|
|
3410
3414
|
}
|
|
3411
3415
|
#pet-glance b {
|
|
3412
3416
|
font-size: 11px;
|
|
@@ -3487,7 +3491,7 @@ body.collapsed.pet-only #pet-activity:not([hidden]) {
|
|
|
3487
3491
|
flex-direction: column;
|
|
3488
3492
|
gap: 5px;
|
|
3489
3493
|
padding: 5px;
|
|
3490
|
-
border-radius:
|
|
3494
|
+
border-radius: 5px;
|
|
3491
3495
|
background: #221e1be6;
|
|
3492
3496
|
border: 1px solid #ffffff0d;
|
|
3493
3497
|
pointer-events: none;
|