File size: 2,475 Bytes
42ae0b9 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | @import "tailwindcss";
:root {
--bg-base: #0d1117;
--bg-surface: #161b22;
--bg-elevated: #1c2128;
--bg-overlay: #21262d;
--border: #30363d;
--border-muted: #21262d;
--text-primary: #e6edf3;
--text-secondary: #8b949e;
--text-muted: #484f58;
--accent-blue: #58a6ff;
--accent-cyan: #39d353;
--accent-purple: #bc8cff;
--accent-orange: #f78166;
--accent-yellow: #e3b341;
--accent-red: #ff7b72;
--accent-green: #3fb950;
--font-sans: "Inter", system-ui, sans-serif;
--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;
}
*, *::before, *::after { box-sizing: border-box; }
html, body, #root {
height: 100%;
margin: 0;
padding: 0;
background: var(--bg-base);
color: var(--text-primary);
font-family: var(--font-sans);
font-size: 14px;
line-height: 1.5;
-webkit-font-smoothing: antialiased;
}
/* Scrollbars */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--border); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--text-muted); }
/* CodeMirror dark overrides */
.cm-editor {
height: 100%;
font-family: var(--font-mono) !important;
font-size: 13px !important;
background: var(--bg-base) !important;
}
.cm-editor.cm-focused { outline: none !important; }
.cm-scroller { overflow: auto !important; }
.cm-gutters {
background: var(--bg-surface) !important;
border-right: 1px solid var(--border) !important;
color: var(--text-muted) !important;
}
.cm-activeLineGutter { background: var(--bg-elevated) !important; }
.cm-activeLine { background: rgba(88, 166, 255, 0.04) !important; }
.cm-selectionBackground { background: rgba(88, 166, 255, 0.15) !important; }
.cm-cursor { border-left-color: var(--accent-blue) !important; }
.cm-content { caret-color: var(--accent-blue) !important; }
/* AST tree */
.ast-tree { font-family: var(--font-mono); font-size: 12px; }
.ast-node-toggle { cursor: pointer; user-select: none; }
.ast-node-toggle:hover { opacity: 0.8; }
/* Resizable panel handle */
[data-panel-resize-handle-id] {
background: var(--border);
transition: background 0.15s;
}
[data-panel-resize-handle-id]:hover,
[data-panel-resize-handle-id][data-resize-handle-active] {
background: var(--accent-blue);
}
/* Swagger UI embed */
.swagger-ui-frame {
width: 100%;
height: 100%;
border: none;
background: #fff;
}
|