refactor: restyle panels via tokens

This commit is contained in:
Shantur Rathore
2025-10-28 20:09:19 +00:00
parent 522bb7ac05
commit bd3a65fc59
5 changed files with 300 additions and 81 deletions

View File

@@ -1123,4 +1123,226 @@
.kbd-separator {
@apply opacity-50;
}
/* Panel component utilities */
.panel {
@apply rounded-lg shadow-sm border overflow-hidden;
background-color: var(--surface-base);
border-color: var(--border-base);
color: var(--text-primary);
}
.panel-header {
@apply px-4 py-3 border-b;
border-color: var(--border-base);
background-color: var(--surface-secondary);
}
.panel-title {
@apply text-base font-semibold;
color: var(--text-primary);
}
.panel-subtitle {
@apply text-xs mt-0.5;
color: var(--text-muted);
}
.panel-body {
@apply p-4;
background-color: var(--surface-base);
}
.panel-section {
@apply border-t;
border-color: var(--border-base);
}
.panel-section-header {
@apply px-4 py-3 flex items-center justify-between transition-colors cursor-pointer;
background-color: var(--surface-secondary);
}
.panel-section-header:hover {
background-color: var(--surface-hover);
}
.panel-section-content {
@apply px-4 py-3 border-t overflow-visible space-y-4;
border-color: var(--border-base);
background-color: var(--surface-secondary);
}
.panel-list {
@apply max-h-[400px] overflow-y-auto;
}
.panel-list-item {
@apply border-b last:border-b-0 transition-colors;
border-color: var(--border-base);
}
.panel-list-item:hover {
background-color: var(--surface-hover);
}
.panel-list-item-content {
@apply flex-1 text-left px-4 py-3 flex items-center justify-between gap-3 outline-none transition-colors;
}
.panel-list-item-content:hover {
background-color: var(--surface-hover);
}
.panel-list-item-highlight {
background-color: rgba(0, 102, 255, 0.1);
}
[data-theme="dark"] .panel-list-item-highlight {
background-color: rgba(0, 128, 255, 0.2);
}
.panel-empty-state {
@apply p-6 text-center;
}
.panel-empty-state-icon {
@apply text-gray-400 dark:text-gray-600 mb-2;
color: var(--text-muted);
}
.panel-empty-state-title {
@apply font-medium text-sm mb-1;
color: var(--text-secondary);
}
.panel-empty-state-description {
@apply text-xs;
color: var(--text-muted);
}
.panel-footer {
@apply px-4 py-3 border-t;
border-color: var(--border-base);
background-color: var(--surface-secondary);
}
.panel-footer-hints {
@apply flex items-center justify-center flex-wrap gap-3 text-xs;
color: var(--text-muted);
}
/* Log view specific utilities */
.log-container {
@apply flex flex-col h-full;
background-color: var(--surface-base);
}
.log-header {
@apply flex items-center justify-between px-4 py-3 border-b;
border-color: var(--border-base);
background-color: var(--surface-secondary);
}
.log-content {
@apply flex-1 overflow-y-auto p-4 font-mono text-xs leading-relaxed;
background-color: var(--surface-secondary);
color: var(--text-primary);
}
.log-entry {
@apply flex gap-3 py-0.5 px-2 -mx-2 rounded transition-colors;
}
.log-entry:hover {
background-color: var(--surface-hover);
}
.log-timestamp {
@apply select-none shrink-0;
color: var(--text-muted);
}
.log-message {
@apply break-all;
}
.log-level-error {
color: var(--status-error);
}
.log-level-warn {
color: var(--status-warning);
}
.log-level-debug {
color: var(--text-muted);
}
.log-level-default {
color: var(--text-primary);
}
.log-empty-state {
@apply text-center py-8;
color: var(--text-muted);
}
/* Environment variables display */
.env-vars-container {
@apply px-4 py-3 border-b;
background-color: rgba(0, 102, 255, 0.1);
border-color: rgba(0, 102, 255, 0.2);
}
[data-theme="dark"] .env-vars-container {
background-color: rgba(0, 128, 255, 0.2);
border-color: rgba(0, 128, 255, 0.3);
}
.env-vars-title {
@apply text-xs font-medium mb-2;
color: #0066ff;
}
[data-theme="dark"] .env-vars-title {
color: #0080ff;
}
.env-var-item {
@apply flex items-center gap-2 text-xs;
}
.env-var-key {
@apply font-mono font-medium min-w-0 flex-1;
color: #0066ff;
}
[data-theme="dark"] .env-var-key {
color: #0080ff;
}
.env-var-separator {
color: #0066ff;
}
[data-theme="dark"] .env-var-separator {
color: #0080ff;
}
.env-var-value {
@apply font-mono min-w-0 flex-1;
color: #0066ff;
}
[data-theme="dark"] .env-var-value {
color: #0080ff;
}
/* Session view utility */
.session-view {
@apply flex flex-col h-full;
background-color: var(--surface-base);
color: inherit;
}