tenxlenx's picture
make sure all css is handles such as the navigation bars, fill the screen nicely with better panel layout and usage metrics, adding breakpoints, stepping etc
a8ccd27 verified
Raw History Blame Contribute Delete
4.31 kB
:root {
--primary-500: #6366f1;
--primary-600: #4f46e5;
--secondary-500: #8b5cf6;
--secondary-600: #7c3aed;
--bg-dark: #111827;
--bg-darker: #0d1320;
--bg-panel: #1e293b;
--border-dark: #334155;
--text-primary: #f8fafc;
--text-secondary: #94a3b8;
}
/* Layout and Containers */
html, body {
height: 100%;
margin: 0;
background: var(--bg-dark);
color: var(--text-primary);
font-family: 'Inter', system-ui, -apple-system, sans-serif;
}
#app {
display: flex;
flex-direction: column;
min-height: 100vh;
}
.main-container {
display: flex;
flex: 1;
overflow: hidden;
}
.content-area {
flex: 1;
display: flex;
flex-direction: column;
overflow: auto;
padding: 1.5rem;
}
/* Custom scrollbar */
::-webkit-scrollbar {
width: 8px;
height: 8px;
}
::-webkit-scrollbar-track {
background: #1f2937;
border-radius: 4px;
}
::-webkit-scrollbar-thumb {
background: #4b5563;
border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
background: #6b7280;
}
/* Syntax highlighting */
.token.keyword {
color: #818cf8;
}
.token.function {
color: #fbbf24;
}
.token.comment {
color: #4ade80;
}
.token.string {
color: #f472b6;
}
.token.number {
color: #60a5fa;
}
/* Navigation Bars */
custom-navbar {
display: block;
position: sticky;
top: 0;
z-index: 50;
}
custom-sidebar {
display: block;
position: sticky;
top: 0;
height: 100vh;
width: 240px;
flex-shrink: 0;
overflow-y: auto;
}
/* Panels */
.panel {
background: var(--bg-panel);
border-radius: 0.75rem;
border: 1px solid var(--border-dark);
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
padding: 1.5rem;
margin-bottom: 1.5rem;
}
.panel-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 1.25rem;
padding-bottom: 0.75rem;
border-bottom: 1px solid var(--border-dark);
}
/* Metrics Cards */
.metric-card {
background: var(--bg-darker);
border-radius: 0.5rem;
padding: 1rem;
height: 100%;
}
.metric-card-header {
display: flex;
align-items: center;
gap: 0.5rem;
margin-bottom: 0.75rem;
color: var(--text-secondary);
font-size: 0.875rem;
}
/* Control Buttons */
.control-button {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 0.5rem;
padding: 0.5rem 1rem;
border-radius: 0.375rem;
font-weight: 500;
transition: all 0.2s;
}
.control-button-primary {
background: var(--primary-500);
color: white;
}
.control-button-primary:hover {
background: var(--primary-600);
}
.control-button-secondary {
background: var(--bg-darker);
color: var(--text-primary);
border: 1px solid var(--border-dark);
}
.control-button-secondary:hover {
background: var(--bg-panel);
}
/* Animation for active threads */
@keyframes pulse {
0%, 100% {
opacity: 1;
}
50% {
opacity: 0.5;
}
}
.thread-active {
animation: pulse 1.5s infinite;
}
/* Breakpoints */
@media (max-width: 1024px) {
.main-container {
flex-direction: column;
}
custom-sidebar {
width: 100%;
height: auto;
position: static;
}
.content-area {
padding: 1rem;
}
}
@media (max-width: 768px) {
.metric-grid {
grid-template-columns: 1fr !important;
}
.panel-header {
flex-direction: column;
align-items: flex-start;
gap: 0.5rem;
}
}
/* Debug controls */
.debug-controls {
display: flex;
gap: 0.5rem;
background: var(--bg-darker);
padding: 0.75rem;
border-radius: 0.5rem;
margin-bottom: 1rem;
border: 1px solid var(--border-dark);
}
.step-indicator {
display: flex;
align-items: center;
gap: 0.5rem;
color: var(--text-secondary);
font-size: 0.875rem;
}
.step-value {
font-family: monospace;
color: var(--text-primary);
font-weight: 600;
}
/* PTX syntax highlighting */
.ptx-version {
color: #4ade80;
}
.ptx-target {
color: #4ade80;
}
.ptx-directive {
color: #818cf8;
}
.ptx-register {
color: #fbbf24;
}
.ptx-label {
color: #f472b6;
}
.ptx-instruction {
color: #60a5fa;
}