clauddy 1.28.2 → 1.29.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 +14 -8
- package/main.js +39 -2
- package/package.json +1 -1
- package/preload.js +2 -1
- package/renderer/index.html +169 -127
- package/renderer/pet.js +224 -22
- package/renderer/pets.css +916 -0
- package/renderer/pets.js +579 -0
- package/renderer/style.css +354 -94
- package/usage.js +57 -26
package/renderer/style.css
CHANGED
|
@@ -344,24 +344,6 @@ body.collapsed #mini-acct-name {
|
|
|
344
344
|
background: var(--settings-bg);
|
|
345
345
|
-webkit-app-region: no-drag;
|
|
346
346
|
}
|
|
347
|
-
/* panel heading: gives the screen a title instead of opening cold on a form */
|
|
348
|
-
.settings-heading {
|
|
349
|
-
display: flex;
|
|
350
|
-
justify-content: space-between;
|
|
351
|
-
align-items: center;
|
|
352
|
-
min-height: 38px;
|
|
353
|
-
}
|
|
354
|
-
.settings-heading h3 {
|
|
355
|
-
font-size: 18px;
|
|
356
|
-
letter-spacing: -0.4px;
|
|
357
|
-
font-weight: 500;
|
|
358
|
-
color: var(--text);
|
|
359
|
-
}
|
|
360
|
-
.settings-heading p {
|
|
361
|
-
font-size: 10px;
|
|
362
|
-
color: var(--muted);
|
|
363
|
-
margin-top: 4px;
|
|
364
|
-
}
|
|
365
347
|
/* group label above a cluster of rows */
|
|
366
348
|
.settings-label {
|
|
367
349
|
display: block;
|
|
@@ -444,23 +426,25 @@ body.settings-open #mini {
|
|
|
444
426
|
}
|
|
445
427
|
body.settings-open #settings {
|
|
446
428
|
display: block;
|
|
447
|
-
animation: set-in 0.
|
|
429
|
+
animation: set-in 0.32s cubic-bezier(0.22, 1, 0.36, 1);
|
|
448
430
|
}
|
|
449
431
|
/* the panel covers the card, so the stage keeps its normal height behind it */
|
|
450
432
|
body.settings-open #stage {
|
|
451
433
|
display: none;
|
|
452
434
|
}
|
|
435
|
+
/* the window eases to the panel's size meanwhile (main.js), so the panel only
|
|
436
|
+
fades and settles into place instead of sliding across */
|
|
453
437
|
@keyframes set-in {
|
|
454
438
|
from {
|
|
455
439
|
opacity: 0;
|
|
456
|
-
transform:
|
|
440
|
+
transform: translateY(10px) scale(0.98);
|
|
457
441
|
}
|
|
458
442
|
to {
|
|
459
443
|
opacity: 1;
|
|
460
|
-
transform:
|
|
444
|
+
transform: none;
|
|
461
445
|
}
|
|
462
446
|
}
|
|
463
|
-
/* leaving settings: the panel
|
|
447
|
+
/* leaving settings: the panel fades out over the card. It goes absolute for
|
|
464
448
|
those frames so the card is already at its home height while it plays. */
|
|
465
449
|
body.settings-closing #settings {
|
|
466
450
|
display: block;
|
|
@@ -470,33 +454,158 @@ body.settings-closing #settings {
|
|
|
470
454
|
z-index: 6;
|
|
471
455
|
overflow: hidden;
|
|
472
456
|
pointer-events: none;
|
|
473
|
-
animation: set-out 0.
|
|
457
|
+
animation: set-out 0.2s ease-in forwards;
|
|
474
458
|
}
|
|
475
459
|
@keyframes set-out {
|
|
476
460
|
from {
|
|
477
461
|
opacity: 1;
|
|
478
|
-
transform:
|
|
462
|
+
transform: none;
|
|
479
463
|
}
|
|
480
464
|
to {
|
|
481
465
|
opacity: 0;
|
|
482
|
-
transform:
|
|
466
|
+
transform: scale(0.98);
|
|
483
467
|
}
|
|
484
468
|
}
|
|
485
|
-
/* home
|
|
469
|
+
/* home settles back in as the panel goes */
|
|
486
470
|
body.settings-closing #content,
|
|
487
471
|
body.settings-closing #stage {
|
|
488
|
-
animation: home-in 0.
|
|
472
|
+
animation: home-in 0.36s cubic-bezier(0.22, 1, 0.36, 1) 0.06s backwards;
|
|
489
473
|
}
|
|
490
474
|
@keyframes home-in {
|
|
491
475
|
from {
|
|
492
476
|
opacity: 0;
|
|
493
|
-
transform:
|
|
477
|
+
transform: translateY(-6px);
|
|
494
478
|
}
|
|
495
479
|
to {
|
|
496
480
|
opacity: 1;
|
|
497
|
-
transform:
|
|
481
|
+
transform: none;
|
|
482
|
+
}
|
|
483
|
+
}
|
|
484
|
+
|
|
485
|
+
/* tabs: Accounts · Alerts · Appearance */
|
|
486
|
+
#set-tabs {
|
|
487
|
+
display: flex;
|
|
488
|
+
gap: 4px;
|
|
489
|
+
margin: 4px 0 12px;
|
|
490
|
+
padding: 3px;
|
|
491
|
+
border-radius: 8px;
|
|
492
|
+
background: rgba(0, 0, 0, 0.22);
|
|
493
|
+
box-shadow: inset 0 0 0 1px var(--hair);
|
|
494
|
+
}
|
|
495
|
+
.set-tab {
|
|
496
|
+
flex: 1;
|
|
497
|
+
padding: 6px 0;
|
|
498
|
+
border: 0;
|
|
499
|
+
border-radius: 6px;
|
|
500
|
+
background: none;
|
|
501
|
+
color: var(--muted);
|
|
502
|
+
font: inherit;
|
|
503
|
+
font-size: 11px;
|
|
504
|
+
cursor: pointer;
|
|
505
|
+
transition:
|
|
506
|
+
background 0.18s,
|
|
507
|
+
color 0.18s;
|
|
508
|
+
}
|
|
509
|
+
.set-tab:hover {
|
|
510
|
+
color: var(--text);
|
|
511
|
+
}
|
|
512
|
+
.set-tab.on {
|
|
513
|
+
background: rgba(255, 255, 255, 0.08);
|
|
514
|
+
color: var(--text);
|
|
515
|
+
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
|
|
516
|
+
}
|
|
517
|
+
.set-tab:focus-visible {
|
|
518
|
+
outline: 1px solid var(--coral-soft);
|
|
519
|
+
outline-offset: 1px;
|
|
520
|
+
}
|
|
521
|
+
/* one pane at a time, at its own height: the window eases to fit (pet.js) */
|
|
522
|
+
.set-pane {
|
|
523
|
+
display: none;
|
|
524
|
+
min-width: 0;
|
|
525
|
+
}
|
|
526
|
+
.set-pane.on {
|
|
527
|
+
display: block;
|
|
528
|
+
animation: pane-in 0.26s cubic-bezier(0.22, 1, 0.36, 1);
|
|
529
|
+
}
|
|
530
|
+
@keyframes pane-in {
|
|
531
|
+
from {
|
|
532
|
+
opacity: 0;
|
|
533
|
+
transform: translateY(4px);
|
|
534
|
+
}
|
|
535
|
+
to {
|
|
536
|
+
opacity: 1;
|
|
537
|
+
transform: none;
|
|
498
538
|
}
|
|
499
539
|
}
|
|
540
|
+
#pane-accounts #conn-tiles {
|
|
541
|
+
margin-top: 0;
|
|
542
|
+
}
|
|
543
|
+
/* the shared row pattern: a rounded group, rows of one height split by a
|
|
544
|
+
hairline, controls trimmed to one compact size so they read as a set */
|
|
545
|
+
.set-pane > .settings-label {
|
|
546
|
+
margin: 14px 0 6px;
|
|
547
|
+
}
|
|
548
|
+
.set-pane > .settings-label:first-child {
|
|
549
|
+
margin-top: 0;
|
|
550
|
+
}
|
|
551
|
+
.set-group {
|
|
552
|
+
padding: 0 10px;
|
|
553
|
+
border: 1px solid var(--hair);
|
|
554
|
+
border-radius: 9px;
|
|
555
|
+
background: rgba(255, 255, 255, 0.025);
|
|
556
|
+
}
|
|
557
|
+
.set-group > .set-row,
|
|
558
|
+
.set-group > .set-row:has(.num),
|
|
559
|
+
.set-group > .set-row.set-sub {
|
|
560
|
+
min-height: 36px;
|
|
561
|
+
margin: 0;
|
|
562
|
+
padding: 0;
|
|
563
|
+
border-bottom: 0;
|
|
564
|
+
}
|
|
565
|
+
.set-group > .set-row + .set-row {
|
|
566
|
+
border-top: 1px solid var(--hair);
|
|
567
|
+
}
|
|
568
|
+
.set-group .set-row-label,
|
|
569
|
+
.set-group .set-row.set-sub .set-row-label {
|
|
570
|
+
font-size: 11px;
|
|
571
|
+
color: #cdb49b;
|
|
572
|
+
}
|
|
573
|
+
.set-group .set-row.set-sub .set-row-label {
|
|
574
|
+
color: var(--muted);
|
|
575
|
+
}
|
|
576
|
+
.set-group .num {
|
|
577
|
+
height: 24px;
|
|
578
|
+
border-radius: 6px;
|
|
579
|
+
}
|
|
580
|
+
.set-group .num-btn {
|
|
581
|
+
height: 24px;
|
|
582
|
+
}
|
|
583
|
+
.set-group .seg {
|
|
584
|
+
height: 24px;
|
|
585
|
+
padding: 2px;
|
|
586
|
+
border-radius: 6px;
|
|
587
|
+
}
|
|
588
|
+
.set-group .seg-btn {
|
|
589
|
+
padding: 0 9px;
|
|
590
|
+
font-size: 10.5px;
|
|
591
|
+
border-radius: 4px;
|
|
592
|
+
}
|
|
593
|
+
.set-link {
|
|
594
|
+
padding: 4px 2px;
|
|
595
|
+
border: 0;
|
|
596
|
+
background: none;
|
|
597
|
+
color: var(--coral-soft);
|
|
598
|
+
font: inherit;
|
|
599
|
+
font-size: 11px;
|
|
600
|
+
cursor: pointer;
|
|
601
|
+
}
|
|
602
|
+
.set-link:hover {
|
|
603
|
+
color: var(--text);
|
|
604
|
+
}
|
|
605
|
+
.set-link::after {
|
|
606
|
+
content: " ›";
|
|
607
|
+
}
|
|
608
|
+
|
|
500
609
|
@media (prefers-reduced-motion: reduce) {
|
|
501
610
|
body.settings-open #settings,
|
|
502
611
|
body.settings-closing #settings,
|
|
@@ -504,6 +613,9 @@ body.settings-closing #stage {
|
|
|
504
613
|
body.settings-closing #stage {
|
|
505
614
|
animation: none;
|
|
506
615
|
}
|
|
616
|
+
.set-pane.on {
|
|
617
|
+
animation: none;
|
|
618
|
+
}
|
|
507
619
|
}
|
|
508
620
|
.set-hint {
|
|
509
621
|
font-size: 9px;
|
|
@@ -562,6 +674,38 @@ input[type="number"]::-webkit-outer-spin-button {
|
|
|
562
674
|
body.is-menubar #min {
|
|
563
675
|
display: none;
|
|
564
676
|
}
|
|
677
|
+
/* Menu-bar mode reads as a native popover: a nib pointing up at the tray icon
|
|
678
|
+
(--nib-x, from main), a lifted shadow, and it stays put. */
|
|
679
|
+
body.is-menubar #card {
|
|
680
|
+
box-shadow:
|
|
681
|
+
inset 0 1px 0 #ffffff08,
|
|
682
|
+
0 6px 10px rgba(0, 0, 0, 0.35);
|
|
683
|
+
cursor: default;
|
|
684
|
+
-webkit-app-region: no-drag;
|
|
685
|
+
}
|
|
686
|
+
body.is-menubar::before {
|
|
687
|
+
content: "";
|
|
688
|
+
position: absolute;
|
|
689
|
+
top: 6px;
|
|
690
|
+
left: calc(var(--nib-x, 50%) - 8px);
|
|
691
|
+
width: 16px;
|
|
692
|
+
height: 16px;
|
|
693
|
+
z-index: 3; /* over the card, so its top border doesn't cut the nib's base */
|
|
694
|
+
background: #392a20; /* the card's top edge colour */
|
|
695
|
+
border: 1px solid var(--panel-border);
|
|
696
|
+
border-right: 0;
|
|
697
|
+
border-bottom: 0;
|
|
698
|
+
border-radius: 3px 0 0;
|
|
699
|
+
transform: rotate(45deg);
|
|
700
|
+
clip-path: polygon(0 0, 100% 0, 0 100%); /* only the half above the card */
|
|
701
|
+
}
|
|
702
|
+
body.is-menubar #card {
|
|
703
|
+
z-index: 2;
|
|
704
|
+
}
|
|
705
|
+
body.is-menubar.collapsed #pet {
|
|
706
|
+
cursor: default;
|
|
707
|
+
-webkit-app-region: no-drag;
|
|
708
|
+
}
|
|
565
709
|
/* settings rows: label on the left, control on the right — one setting per
|
|
566
710
|
line so the screen stays short. Alert thresholds indent under their toggle
|
|
567
711
|
and dim while alerts are off. */
|
|
@@ -722,13 +866,17 @@ but visibly nested: a soft coral guide bar ties the pair to the
|
|
|
722
866
|
.set-actions {
|
|
723
867
|
display: flex;
|
|
724
868
|
gap: 8px;
|
|
725
|
-
margin-top:
|
|
869
|
+
margin-top: 14px;
|
|
870
|
+
}
|
|
871
|
+
/* Save only shows up once there is something to save */
|
|
872
|
+
#settings:not(.dirty) #set-save {
|
|
873
|
+
display: none;
|
|
726
874
|
}
|
|
727
875
|
.set-actions button {
|
|
728
876
|
flex: 1;
|
|
729
877
|
border: 1px solid rgba(255, 255, 255, 0.082);
|
|
730
|
-
border-radius:
|
|
731
|
-
padding:
|
|
878
|
+
border-radius: 6px;
|
|
879
|
+
padding: 6px;
|
|
732
880
|
font-size: 11px;
|
|
733
881
|
font-weight: 400;
|
|
734
882
|
cursor: pointer;
|
|
@@ -1244,14 +1392,14 @@ body.collapsed #card {
|
|
|
1244
1392
|
/* one service: three buttons plus the account need a title band of their
|
|
1245
1393
|
own, like the dual dock has, or they sit on the ring's arc */
|
|
1246
1394
|
body.collapsed:not(.dual):not(.pet-only) #card {
|
|
1247
|
-
width:
|
|
1248
|
-
padding
|
|
1395
|
+
width: 146px;
|
|
1396
|
+
padding: 27px 12px 9px;
|
|
1249
1397
|
}
|
|
1250
1398
|
body.collapsed:not(.dual):not(.pet-only) #stage {
|
|
1251
1399
|
margin-top: 0;
|
|
1252
1400
|
}
|
|
1253
1401
|
body.collapsed:not(.dual):not(.pet-only) #mini-acct-name {
|
|
1254
|
-
max-width:
|
|
1402
|
+
max-width: 40px;
|
|
1255
1403
|
}
|
|
1256
1404
|
body.collapsed #stage {
|
|
1257
1405
|
margin-top: 9px;
|
|
@@ -1416,7 +1564,10 @@ body.collapsed #shadow {
|
|
|
1416
1564
|
left: 50%;
|
|
1417
1565
|
width: 48px;
|
|
1418
1566
|
height: 8px;
|
|
1419
|
-
|
|
1567
|
+
/* closest-side keeps the ellipse inside its box: the default reaches the
|
|
1568
|
+
corners and reads as a blurred bar */
|
|
1569
|
+
background: radial-gradient(closest-side, rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0));
|
|
1570
|
+
border-radius: 50%;
|
|
1420
1571
|
transform: translateX(-50%);
|
|
1421
1572
|
}
|
|
1422
1573
|
|
|
@@ -2634,8 +2785,8 @@ body.collapsed.dual #mini-reset {
|
|
|
2634
2785
|
#conn-tiles {
|
|
2635
2786
|
display: grid;
|
|
2636
2787
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
2637
|
-
gap:
|
|
2638
|
-
margin: 7px 0
|
|
2788
|
+
gap: 6px;
|
|
2789
|
+
margin: 7px 0 4px;
|
|
2639
2790
|
}
|
|
2640
2791
|
body:has(#connections > .open) #conn-tiles {
|
|
2641
2792
|
margin-bottom: 8px;
|
|
@@ -2644,11 +2795,11 @@ body:has(#connections > .open) #conn-tiles {
|
|
|
2644
2795
|
display: flex;
|
|
2645
2796
|
flex-direction: column;
|
|
2646
2797
|
align-items: center;
|
|
2647
|
-
gap:
|
|
2798
|
+
gap: 6px;
|
|
2648
2799
|
min-width: 0;
|
|
2649
|
-
padding:
|
|
2800
|
+
padding: 8px 4px 7px;
|
|
2650
2801
|
border: 1px solid var(--hair);
|
|
2651
|
-
border-radius:
|
|
2802
|
+
border-radius: 8px;
|
|
2652
2803
|
background: #ffffff03;
|
|
2653
2804
|
color: var(--muted);
|
|
2654
2805
|
font: inherit;
|
|
@@ -2670,9 +2821,9 @@ body:has(#connections > .open) #conn-tiles {
|
|
|
2670
2821
|
position: relative;
|
|
2671
2822
|
display: grid;
|
|
2672
2823
|
place-items: center;
|
|
2673
|
-
width:
|
|
2674
|
-
height:
|
|
2675
|
-
border-radius:
|
|
2824
|
+
width: 26px;
|
|
2825
|
+
height: 26px;
|
|
2826
|
+
border-radius: 6px;
|
|
2676
2827
|
}
|
|
2677
2828
|
/* not connected yet: the logo waits in grey */
|
|
2678
2829
|
.conn-tile:not(.on) .connection-avatar {
|
|
@@ -3299,7 +3450,7 @@ body.collapsed.pet-only #stage {
|
|
|
3299
3450
|
width: 100px;
|
|
3300
3451
|
height: 102px;
|
|
3301
3452
|
right: 21px;
|
|
3302
|
-
bottom:
|
|
3453
|
+
bottom: 14px; /* low in the window: the glance bubble sits above the pet */
|
|
3303
3454
|
margin: 0;
|
|
3304
3455
|
background: none;
|
|
3305
3456
|
}
|
|
@@ -3332,64 +3483,177 @@ body.collapsed.pet-only #shadow {
|
|
|
3332
3483
|
body.collapsed.pet-only :is(#mini, #controls, #ring, #ring-pct, #companion-notice, #bubble) {
|
|
3333
3484
|
display: none;
|
|
3334
3485
|
}
|
|
3486
|
+
/* The glance is the pet's own speech bubble, small: the same paper, pixel
|
|
3487
|
+
outline and mono type as #bubble, above the pet with its tail pointing down, so the
|
|
3488
|
+
pet reads as showing you the numbers. One reading per service (logo, %, a
|
|
3489
|
+
green bar that fills with it), then the expand button. */
|
|
3335
3490
|
body.collapsed.pet-only #pet-glance {
|
|
3491
|
+
--ink: #221b16;
|
|
3492
|
+
--paper: #f1e9dd;
|
|
3336
3493
|
position: absolute;
|
|
3337
3494
|
display: flex;
|
|
3338
3495
|
align-items: center;
|
|
3339
3496
|
justify-content: center;
|
|
3340
|
-
gap:
|
|
3497
|
+
gap: 1px;
|
|
3341
3498
|
left: 50%;
|
|
3342
3499
|
width: max-content;
|
|
3343
|
-
max-width: calc(100% -
|
|
3344
|
-
transform:
|
|
3345
|
-
|
|
3346
|
-
min-height:
|
|
3347
|
-
padding: 2px
|
|
3348
|
-
|
|
3349
|
-
|
|
3350
|
-
font
|
|
3351
|
-
|
|
3500
|
+
max-width: calc(100% - 6px);
|
|
3501
|
+
transform: translate(-50%, -4px);
|
|
3502
|
+
top: 10px;
|
|
3503
|
+
min-height: 24px;
|
|
3504
|
+
padding: 1px 2px 1px 3px;
|
|
3505
|
+
background: var(--paper);
|
|
3506
|
+
color: var(--ink);
|
|
3507
|
+
font:
|
|
3508
|
+
600 10px / 1 ui-monospace,
|
|
3509
|
+
"SF Mono",
|
|
3510
|
+
Menlo,
|
|
3511
|
+
monospace;
|
|
3512
|
+
box-shadow:
|
|
3513
|
+
0 -2px 0 0 var(--ink),
|
|
3514
|
+
0 2px 0 0 var(--ink),
|
|
3515
|
+
-2px 0 0 0 var(--ink),
|
|
3516
|
+
2px 0 0 0 var(--ink),
|
|
3517
|
+
2px 4px 0 0 #0006;
|
|
3352
3518
|
opacity: 0;
|
|
3353
3519
|
visibility: hidden;
|
|
3354
3520
|
transition:
|
|
3355
3521
|
opacity 160ms ease,
|
|
3356
|
-
|
|
3357
|
-
|
|
3358
|
-
border-color 160ms ease;
|
|
3522
|
+
transform 200ms steps(3),
|
|
3523
|
+
visibility 160ms;
|
|
3359
3524
|
-webkit-app-region: no-drag;
|
|
3360
3525
|
}
|
|
3361
3526
|
body.collapsed.pet-only.pet-peek #pet-glance {
|
|
3362
|
-
background: #221e1bec;
|
|
3363
|
-
border-color: #ffffff0d;
|
|
3364
3527
|
opacity: 1;
|
|
3365
3528
|
visibility: visible;
|
|
3529
|
+
transform: translate(-50%, 0);
|
|
3366
3530
|
}
|
|
3367
|
-
|
|
3368
|
-
|
|
3369
|
-
|
|
3370
|
-
|
|
3371
|
-
|
|
3372
|
-
|
|
3373
|
-
|
|
3374
|
-
|
|
3531
|
+
/* the tail, stepped like the bubble's, pointing down at the pet */
|
|
3532
|
+
body.collapsed.pet-only #pet-glance::before,
|
|
3533
|
+
body.collapsed.pet-only #pet-glance::after {
|
|
3534
|
+
content: "";
|
|
3535
|
+
position: absolute;
|
|
3536
|
+
left: 50%;
|
|
3537
|
+
top: 100%;
|
|
3538
|
+
transform: translateX(-50%);
|
|
3375
3539
|
}
|
|
3376
|
-
|
|
3377
|
-
|
|
3378
|
-
|
|
3379
|
-
|
|
3380
|
-
|
|
3540
|
+
body.collapsed.pet-only #pet-glance::before {
|
|
3541
|
+
width: 14px;
|
|
3542
|
+
height: 8px;
|
|
3543
|
+
background: var(--ink);
|
|
3544
|
+
clip-path: polygon(
|
|
3545
|
+
0 0,
|
|
3546
|
+
14px 0,
|
|
3547
|
+
14px 2px,
|
|
3548
|
+
12px 2px,
|
|
3549
|
+
12px 4px,
|
|
3550
|
+
10px 4px,
|
|
3551
|
+
10px 6px,
|
|
3552
|
+
8px 6px,
|
|
3553
|
+
8px 8px,
|
|
3554
|
+
6px 8px,
|
|
3555
|
+
6px 6px,
|
|
3556
|
+
4px 6px,
|
|
3557
|
+
4px 4px,
|
|
3558
|
+
2px 4px,
|
|
3559
|
+
2px 2px,
|
|
3560
|
+
0 2px
|
|
3561
|
+
);
|
|
3381
3562
|
}
|
|
3382
|
-
#pet-glance
|
|
3563
|
+
body.collapsed.pet-only #pet-glance::after {
|
|
3564
|
+
width: 10px;
|
|
3565
|
+
height: 6px;
|
|
3566
|
+
background: var(--paper);
|
|
3567
|
+
clip-path: polygon(
|
|
3568
|
+
0 0,
|
|
3569
|
+
10px 0,
|
|
3570
|
+
10px 2px,
|
|
3571
|
+
8px 2px,
|
|
3572
|
+
8px 4px,
|
|
3573
|
+
6px 4px,
|
|
3574
|
+
6px 6px,
|
|
3575
|
+
4px 6px,
|
|
3576
|
+
4px 4px,
|
|
3577
|
+
2px 4px,
|
|
3578
|
+
2px 2px,
|
|
3579
|
+
0 2px
|
|
3580
|
+
);
|
|
3581
|
+
}
|
|
3582
|
+
#pet-glance button[data-provider] {
|
|
3383
3583
|
position: relative;
|
|
3384
3584
|
display: flex;
|
|
3385
3585
|
align-items: center;
|
|
3386
|
-
gap:
|
|
3387
|
-
|
|
3586
|
+
gap: 3px;
|
|
3587
|
+
height: 22px;
|
|
3588
|
+
padding: 0 4px 3px;
|
|
3388
3589
|
border: 0;
|
|
3389
3590
|
background: transparent;
|
|
3390
|
-
color:
|
|
3591
|
+
color: var(--ink);
|
|
3391
3592
|
font: inherit;
|
|
3392
3593
|
cursor: pointer;
|
|
3594
|
+
opacity: 0.5;
|
|
3595
|
+
transition: opacity 0.15s;
|
|
3596
|
+
}
|
|
3597
|
+
#pet-glance button[data-provider][aria-pressed="true"],
|
|
3598
|
+
#pet-glance button[data-provider]:hover {
|
|
3599
|
+
opacity: 1;
|
|
3600
|
+
}
|
|
3601
|
+
#pet-glance .mini-logo {
|
|
3602
|
+
flex: none;
|
|
3603
|
+
width: 11px;
|
|
3604
|
+
height: 11px;
|
|
3605
|
+
fill: currentColor;
|
|
3606
|
+
}
|
|
3607
|
+
/* the session % as a pixel bar under the reading */
|
|
3608
|
+
#pet-glance .glance-bar {
|
|
3609
|
+
position: absolute;
|
|
3610
|
+
left: 4px;
|
|
3611
|
+
right: 4px;
|
|
3612
|
+
bottom: 2px;
|
|
3613
|
+
height: 2px;
|
|
3614
|
+
background: #221b1622;
|
|
3615
|
+
overflow: hidden;
|
|
3616
|
+
}
|
|
3617
|
+
#pet-glance .glance-bar::after {
|
|
3618
|
+
content: "";
|
|
3619
|
+
position: absolute;
|
|
3620
|
+
inset: 0;
|
|
3621
|
+
width: calc(var(--pct, 0) * 1%);
|
|
3622
|
+
background: #3f9f5a;
|
|
3623
|
+
transition: width 0.4s steps(6);
|
|
3624
|
+
}
|
|
3625
|
+
#pet-glance .glance-sep {
|
|
3626
|
+
flex: none;
|
|
3627
|
+
width: 2px;
|
|
3628
|
+
height: 12px;
|
|
3629
|
+
margin: 0 2px;
|
|
3630
|
+
background: #221b1633;
|
|
3631
|
+
}
|
|
3632
|
+
#pet-glance:has(#glance-empty:not([hidden])) .glance-sep {
|
|
3633
|
+
display: none;
|
|
3634
|
+
}
|
|
3635
|
+
#pet-glance #pet-restore {
|
|
3636
|
+
display: grid;
|
|
3637
|
+
place-items: center;
|
|
3638
|
+
width: 26px;
|
|
3639
|
+
height: 24px;
|
|
3640
|
+
margin-right: -2px;
|
|
3641
|
+
flex-shrink: 0;
|
|
3642
|
+
padding: 0;
|
|
3643
|
+
border: 0;
|
|
3644
|
+
background: transparent;
|
|
3645
|
+
color: var(--ink);
|
|
3646
|
+
cursor: pointer;
|
|
3647
|
+
opacity: 0.55;
|
|
3648
|
+
}
|
|
3649
|
+
#pet-glance #pet-restore svg {
|
|
3650
|
+
width: 11px;
|
|
3651
|
+
height: 11px;
|
|
3652
|
+
stroke-width: 2.2;
|
|
3653
|
+
}
|
|
3654
|
+
#pet-glance #pet-restore:hover,
|
|
3655
|
+
#pet-glance #pet-restore:focus-visible {
|
|
3656
|
+
opacity: 1;
|
|
3393
3657
|
}
|
|
3394
3658
|
/* Keep provider names available to assistive technology. */
|
|
3395
3659
|
#pet-glance button > span {
|
|
@@ -3403,31 +3667,27 @@ body.collapsed.pet-only.pet-peek #pet-glance {
|
|
|
3403
3667
|
#pet-glance button[hidden] {
|
|
3404
3668
|
display: none;
|
|
3405
3669
|
}
|
|
3406
|
-
#pet-glance button[aria-pressed="true"],
|
|
3407
|
-
#pet-glance button:hover {
|
|
3408
|
-
color: #f1e5d8;
|
|
3409
|
-
}
|
|
3410
3670
|
#pet-glance button:focus-visible {
|
|
3411
|
-
outline:
|
|
3412
|
-
outline-offset:
|
|
3413
|
-
border-radius: 2px;
|
|
3671
|
+
outline: 2px solid var(--ink);
|
|
3672
|
+
outline-offset: -2px;
|
|
3414
3673
|
}
|
|
3415
3674
|
#pet-glance b {
|
|
3416
|
-
font-
|
|
3417
|
-
font-weight: 500;
|
|
3675
|
+
font-weight: 700;
|
|
3418
3676
|
font-variant-numeric: tabular-nums;
|
|
3419
3677
|
}
|
|
3420
3678
|
#pet-glance .urgent b {
|
|
3421
|
-
color: #
|
|
3679
|
+
color: #c0392b;
|
|
3422
3680
|
}
|
|
3423
|
-
|
|
3424
|
-
|
|
3425
|
-
|
|
3426
|
-
|
|
3681
|
+
/* a reading still waiting for a fresh one: its bar goes dotted */
|
|
3682
|
+
#pet-glance .stale-reading .glance-bar::after {
|
|
3683
|
+
background: repeating-linear-gradient(90deg, #3f9f5a 0 2px, transparent 2px 4px);
|
|
3684
|
+
}
|
|
3685
|
+
#glance-empty {
|
|
3686
|
+
padding: 0 4px;
|
|
3687
|
+
color: var(--ink);
|
|
3427
3688
|
}
|
|
3428
3689
|
body.collapsed.pet-only #pet:focus-visible {
|
|
3429
|
-
outline:
|
|
3430
|
-
outline-offset: 4px;
|
|
3690
|
+
outline: none;
|
|
3431
3691
|
}
|
|
3432
3692
|
@media (prefers-reduced-motion: reduce) {
|
|
3433
3693
|
body.collapsed.pet-only #pet-glance,
|
|
@@ -3485,7 +3745,7 @@ body.collapsed.dual:has(#companion-notice:not([hidden])) #mini-acct {
|
|
|
3485
3745
|
}
|
|
3486
3746
|
body.collapsed.pet-only #pet-activity:not([hidden]) {
|
|
3487
3747
|
position: absolute;
|
|
3488
|
-
top:
|
|
3748
|
+
top: 54px;
|
|
3489
3749
|
right: 0;
|
|
3490
3750
|
display: flex;
|
|
3491
3751
|
flex-direction: column;
|