feat(status-ui): improve bridge recovery and desktop controls
This commit is contained in:
+123
-25
@@ -9,9 +9,22 @@
|
||||
color: #ebebe8;
|
||||
background: #101111;
|
||||
}
|
||||
* {
|
||||
*,
|
||||
*::before,
|
||||
*::after {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.sr-only {
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
height: 1px;
|
||||
padding: 0;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
clip: rect(0, 0, 0, 0);
|
||||
white-space: nowrap;
|
||||
border: 0;
|
||||
}
|
||||
body {
|
||||
margin: 0;
|
||||
min-width: 480px;
|
||||
@@ -37,6 +50,13 @@ button {
|
||||
button:hover {
|
||||
background: #f0ffe0;
|
||||
}
|
||||
button:focus-visible,
|
||||
input:focus-visible,
|
||||
select:focus-visible,
|
||||
textarea:focus-visible {
|
||||
outline: 3px solid #c4ed8b;
|
||||
outline-offset: 2px;
|
||||
}
|
||||
|
||||
.app-shell {
|
||||
position: relative;
|
||||
@@ -70,8 +90,7 @@ button:hover {
|
||||
.workspace-heading,
|
||||
.status-row,
|
||||
.composer-actions,
|
||||
.settings-actions,
|
||||
.folder-form {
|
||||
.settings-actions {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
@@ -148,14 +167,20 @@ h1 {
|
||||
padding: 7px 9px;
|
||||
}
|
||||
|
||||
.agents {
|
||||
.directory-tabs,
|
||||
.directory-tab-list {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
min-height: 30px;
|
||||
min-height: 32px;
|
||||
}
|
||||
.directory-tabs {
|
||||
overflow-x: auto;
|
||||
padding: 1px 0 3px;
|
||||
}
|
||||
.directory-tab-list {
|
||||
gap: 3px;
|
||||
}
|
||||
.agent-caption {
|
||||
flex: 0 0 auto;
|
||||
color: #70776f;
|
||||
@@ -164,34 +189,93 @@ h1 {
|
||||
letter-spacing: 0.08em;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
.agent {
|
||||
.directory-tab {
|
||||
display: flex;
|
||||
flex: 0 0 auto;
|
||||
align-items: stretch;
|
||||
}
|
||||
.directory-tab-button {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
min-width: 0;
|
||||
max-width: 180px;
|
||||
padding: 5px 8px;
|
||||
border: 1px solid #303530;
|
||||
border-right: 0;
|
||||
border-radius: 7px 0 0 7px;
|
||||
padding: 5px 8px;
|
||||
background: #1b1e1b;
|
||||
color: #aeb4ac;
|
||||
font-size: 11px;
|
||||
font-weight: 650;
|
||||
}
|
||||
.agent > span {
|
||||
.directory-tab-button > span {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.agent small {
|
||||
.directory-tab-button small {
|
||||
color: #70776f;
|
||||
font-size: 10px;
|
||||
font-weight: 600;
|
||||
}
|
||||
.agent.selected {
|
||||
.directory-tab-button.selected {
|
||||
border-color: #7da856;
|
||||
background: #222b1d;
|
||||
color: #ecf7df;
|
||||
}
|
||||
.directory-tab-button.selected + .directory-close {
|
||||
border-color: #7da856;
|
||||
background: #222b1d;
|
||||
}
|
||||
.directory-tab-button:only-child {
|
||||
border-right: 1px solid #303530;
|
||||
border-radius: 7px;
|
||||
}
|
||||
.directory-tab-button.selected:only-child {
|
||||
border-color: #7da856;
|
||||
}
|
||||
.directory-close {
|
||||
min-width: 24px;
|
||||
border: 1px solid #303530;
|
||||
border-radius: 0 7px 7px 0;
|
||||
padding: 3px 6px;
|
||||
background: #1b1e1b;
|
||||
color: #aeb4ac;
|
||||
font-size: 15px;
|
||||
line-height: 1;
|
||||
}
|
||||
.directory-tab:focus-within .directory-tab-button,
|
||||
.directory-tab:focus-within .directory-close {
|
||||
border-color: #c4ed8b;
|
||||
}
|
||||
.directory-close:hover {
|
||||
background: #3a2222;
|
||||
color: #ffc0c0;
|
||||
}
|
||||
.directory-close:disabled {
|
||||
cursor: not-allowed;
|
||||
opacity: 0.45;
|
||||
}
|
||||
.directory-add-toggle {
|
||||
flex: 0 0 auto;
|
||||
padding: 5px 8px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.directory-add {
|
||||
display: flex;
|
||||
flex: 0 0 auto;
|
||||
align-items: stretch;
|
||||
gap: 5px;
|
||||
}
|
||||
.directory-add input {
|
||||
width: 220px;
|
||||
padding: 5px 7px;
|
||||
font-size: 11px;
|
||||
}
|
||||
.directory-add button {
|
||||
padding: 5px 8px;
|
||||
}
|
||||
|
||||
.notifications {
|
||||
display: grid;
|
||||
@@ -500,9 +584,9 @@ textarea {
|
||||
line-height: 1.35;
|
||||
}
|
||||
.composer textarea:focus {
|
||||
outline: none;
|
||||
border-color: #6f8b56;
|
||||
box-shadow: 0 0 0 1px rgba(143, 189, 95, 0.28);
|
||||
outline: 2px solid #c4ed8b;
|
||||
outline-offset: -2px;
|
||||
}
|
||||
.composer-actions {
|
||||
justify-content: flex-end;
|
||||
@@ -657,15 +741,6 @@ h2 {
|
||||
margin: 0;
|
||||
font-size: 14px;
|
||||
}
|
||||
.folder-form {
|
||||
align-items: stretch;
|
||||
}
|
||||
.remembered {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
align-items: center;
|
||||
gap: 6px;
|
||||
}
|
||||
.settings-actions {
|
||||
justify-content: flex-start;
|
||||
}
|
||||
@@ -684,6 +759,15 @@ h2 {
|
||||
.session-panel-heading h2 {
|
||||
margin-bottom: 3px;
|
||||
}
|
||||
.session-actions {
|
||||
display: flex;
|
||||
flex: 0 0 auto;
|
||||
gap: 5px;
|
||||
}
|
||||
.session-actions button:disabled {
|
||||
cursor: not-allowed;
|
||||
opacity: 0.5;
|
||||
}
|
||||
.session-panel-heading .muted {
|
||||
max-width: 460px;
|
||||
overflow: hidden;
|
||||
@@ -727,9 +811,18 @@ h2 {
|
||||
opacity: 0.5;
|
||||
cursor: not-allowed;
|
||||
}
|
||||
.extension {
|
||||
.extension-backdrop {
|
||||
position: absolute;
|
||||
inset: auto 14px 14px;
|
||||
z-index: 10;
|
||||
inset: 0;
|
||||
display: flex;
|
||||
align-items: end;
|
||||
justify-content: center;
|
||||
padding: 14px;
|
||||
background: rgba(0, 0, 0, 0.5);
|
||||
}
|
||||
.extension {
|
||||
width: min(100%, 680px);
|
||||
max-height: min(70vh, 460px);
|
||||
overflow: auto;
|
||||
border: 1px solid #9cc76d;
|
||||
@@ -746,8 +839,13 @@ h2 {
|
||||
}
|
||||
|
||||
@media (prefers-reduced-motion: reduce) {
|
||||
.transcript.working {
|
||||
animation: none;
|
||||
*,
|
||||
*::before,
|
||||
*::after {
|
||||
animation-duration: 0.01ms !important;
|
||||
animation-iteration-count: 1 !important;
|
||||
scroll-behavior: auto !important;
|
||||
transition-duration: 0.01ms !important;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user