@tailwind base;
@tailwind components;
@tailwind utilities;
/* CSS Variable mappings for VSCode themes */
:root {
--foreground-color: var(--vscode-editor-foreground);
--background-color: var(--vscode-editor-background);
--border-color: var(--vscode-panel-border, #2d2d30);
--hover-color: var(--vscode-list-hoverBackground, #2a2d2e);
--success-color: var(--vscode-testing-iconPassed, #73c991);
--error-color: var(--vscode-errorForeground, #f14c4c);
--warning-color: var(--vscode-editorWarning-foreground, #ffcc02);
--badge-background: var(--vscode-badge-background, #4d4d4d);
--badge-foreground: var(--vscode-badge-foreground, #ffffff);
--primary-color: var(--vscode-button-background, #0e639c);
--secondary-color: var(--vscode-button-secondaryBackground, #3a3d41);
--secondary-foreground-color: var(
--vscode-button-secondaryForeground,
#ffffff
);
--field-background-color: var(--vscode-input-background, #3c3c3c);
--field-border-color: var(--vscode-input-border, #3c3c3c);
--focus-border-color: var(--vscode-focusBorder, #007acc);
}
@layer components {
/* IntelliJ-specific scrollbar styles */
.intellij-scrollbar::-webkit-scrollbar {
background-color: var(--background-color);
width: 8px;
}
.intellij-scrollbar::-webkit-scrollbar-thumb {
background-color: var(--scrollbar-thumb-color);
}
/* Terminal-specific styles that can't be easily converted to Tailwind */
.terminal-container {
@apply relative h-full w-full;
}
/* Custom utility for focus ring that works across editors */
.focus-ring-editor {
@apply focus:outline-none;
}
.focus-ring-editor.vscode {
@apply focus:ring-focusBorder focus:ring-offset-background focus:ring-1 focus:ring-offset-1;
}
.focus-ring-editor.intellij {
@apply focus:ring-focusBorder focus:ring-2;
}
}
@layer utilities {
/* Utility for animated loading dots */
.loading-dots::after {
content: '';
animation: loading-dots 1.5s steps(4, end) infinite;
}
@keyframes loading-dots {
0%,
20% {
content: '';
}
40% {
content: '.';
}
60% {
content: '..';
}
80%,
100% {
content: '...';
}
}
/* Utility for spinning animation */
@keyframes spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
.animate-spin-slow {
animation: spin 2s linear infinite;
}
}