724 lines
19 KiB
CSS
724 lines
19 KiB
CSS
@import "tailwindcss";
|
|
@import "tw-animate-css";
|
|
@import "shadcn/tailwind.css";
|
|
@import "@kandev/theme/fonts.css";
|
|
|
|
@source "../components/**/*.{js,ts,jsx,tsx}";
|
|
@source "../../packages/ui/src/**/*.{js,ts,jsx,tsx}";
|
|
|
|
@custom-variant dark (&:is(.dark *));
|
|
|
|
@theme inline {
|
|
--color-background: var(--background);
|
|
--color-foreground: var(--foreground);
|
|
--font-sans: var(--font-sans);
|
|
--font-mono: var(--font-geist-mono);
|
|
--color-sidebar-ring: var(--sidebar-ring);
|
|
--color-sidebar-border: var(--sidebar-border);
|
|
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
|
|
--color-sidebar-accent: var(--sidebar-accent);
|
|
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
|
|
--color-sidebar-primary: var(--sidebar-primary);
|
|
--color-sidebar-foreground: var(--sidebar-foreground);
|
|
--color-sidebar: var(--sidebar);
|
|
--color-chart-5: var(--chart-5);
|
|
--color-chart-4: var(--chart-4);
|
|
--color-chart-3: var(--chart-3);
|
|
--color-chart-2: var(--chart-2);
|
|
--color-chart-1: var(--chart-1);
|
|
--color-ring: var(--ring);
|
|
--color-input: var(--input);
|
|
--color-border: var(--border);
|
|
--color-destructive: var(--destructive);
|
|
--color-accent-foreground: var(--accent-foreground);
|
|
--color-accent: var(--accent);
|
|
--color-muted-foreground: var(--muted-foreground);
|
|
--color-muted: var(--muted);
|
|
--color-secondary-foreground: var(--secondary-foreground);
|
|
--color-secondary: var(--secondary);
|
|
--color-primary-foreground: var(--primary-foreground);
|
|
--color-primary: var(--primary);
|
|
--color-popover-foreground: var(--popover-foreground);
|
|
--color-popover: var(--popover);
|
|
--color-card-foreground: var(--card-foreground);
|
|
--color-card: var(--card);
|
|
--radius-sm: var(--radius);
|
|
--radius-md: var(--radius);
|
|
--radius-lg: var(--radius);
|
|
--radius-xl: var(--radius);
|
|
--radius-2xl: var(--radius);
|
|
--radius-3xl: var(--radius);
|
|
--radius-4xl: var(--radius);
|
|
}
|
|
|
|
:root {
|
|
--font-geist-sans: "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
|
|
--font-sans: "Figtree", "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI",
|
|
sans-serif;
|
|
--font-geist-mono: "Geist Mono", ui-monospace, "SFMono-Regular", Menlo, Monaco, Consolas,
|
|
"Liberation Mono", "Courier New", monospace;
|
|
--background: oklch(1 0 0);
|
|
--foreground: oklch(0.145 0 0);
|
|
--card: oklch(1 0 0);
|
|
--card-foreground: oklch(0.145 0 0);
|
|
--popover: oklch(1 0 0);
|
|
--popover-foreground: oklch(0.145 0 0);
|
|
--primary: oklch(0.51 0.23 277);
|
|
--primary-foreground: oklch(0.96 0.02 272);
|
|
--secondary: oklch(0.967 0.001 286.375);
|
|
--secondary-foreground: oklch(0.21 0.006 285.885);
|
|
--muted: oklch(0.97 0 0);
|
|
--muted-foreground: oklch(0.556 0 0);
|
|
--accent: oklch(0.68 0.18 276);
|
|
--accent-foreground: oklch(0.98 0 0);
|
|
--destructive: oklch(0.58 0.22 27);
|
|
--border: oklch(0.922 0 0);
|
|
--input: oklch(0.922 0 0);
|
|
--ring: oklch(0.708 0 0);
|
|
--chart-1: oklch(0.79 0.10 275);
|
|
--chart-2: oklch(0.68 0.16 277);
|
|
--chart-3: oklch(0.59 0.20 277);
|
|
--chart-4: oklch(0.51 0.23 277);
|
|
--chart-5: oklch(0.46 0.21 277);
|
|
--radius: 0.375rem;
|
|
--sidebar: oklch(0.985 0 0);
|
|
--sidebar-foreground: oklch(0.145 0 0);
|
|
--sidebar-primary: oklch(0.51 0.23 277);
|
|
--sidebar-primary-foreground: oklch(0.96 0.02 272);
|
|
--sidebar-accent: oklch(0.97 0 0);
|
|
--sidebar-accent-foreground: oklch(0.205 0 0);
|
|
--sidebar-border: oklch(0.922 0 0);
|
|
--scrollbar-thumb: oklch(0.78 0 0);
|
|
--scrollbar-thumb-hover: oklch(0.66 0 0);
|
|
--scrollbar-track: var(--background);
|
|
--sidebar-ring: oklch(0.708 0 0);
|
|
|
|
/* Git diff colors - centralized for easy maintenance */
|
|
--git-addition: 16 185 129; /* emerald-500 */
|
|
--git-deletion: 244 63 94; /* rose-500 */
|
|
}
|
|
|
|
.dark {
|
|
--background: oklch(0.145 0 0);
|
|
--foreground: oklch(0.985 0 0);
|
|
--card: oklch(0.205 0 0);
|
|
--card-foreground: oklch(0.985 0 0);
|
|
--popover: oklch(0.205 0 0);
|
|
--popover-foreground: oklch(0.985 0 0);
|
|
--primary: oklch(0.59 0.20 277);
|
|
--primary-foreground: oklch(0.96 0.02 272);
|
|
--secondary: oklch(0.274 0.006 286.033);
|
|
--secondary-foreground: oklch(0.985 0 0);
|
|
--muted: oklch(0.269 0 0);
|
|
--muted-foreground: oklch(0.708 0 0);
|
|
--accent: oklch(0.62 0.18 276);
|
|
--accent-foreground: oklch(0.98 0 0);
|
|
--destructive: oklch(0.704 0.191 22.216);
|
|
--border: oklch(1 0 0 / 10%);
|
|
--input: oklch(1 0 0 / 15%);
|
|
--ring: oklch(0.556 0 0);
|
|
--chart-1: oklch(0.79 0.10 275);
|
|
--chart-2: oklch(0.68 0.16 277);
|
|
--chart-3: oklch(0.59 0.20 277);
|
|
--chart-4: oklch(0.51 0.23 277);
|
|
--chart-5: oklch(0.46 0.21 277);
|
|
--sidebar: oklch(0.205 0 0);
|
|
--sidebar-foreground: oklch(0.985 0 0);
|
|
--sidebar-primary: oklch(0.68 0.16 277);
|
|
--sidebar-primary-foreground: oklch(0.96 0.02 272);
|
|
--sidebar-accent: oklch(0.269 0 0);
|
|
--sidebar-accent-foreground: oklch(0.985 0 0);
|
|
--sidebar-border: oklch(1 0 0 / 10%);
|
|
--scrollbar-thumb: oklch(0.48 0 0 / 0.7);
|
|
--scrollbar-thumb-hover: oklch(0.62 0 0 / 0.8);
|
|
--scrollbar-track: var(--background);
|
|
--sidebar-ring: oklch(0.556 0 0);
|
|
|
|
/* Git diff colors - same as light mode for consistency */
|
|
--git-addition: 16 185 129; /* emerald-500 */
|
|
--git-deletion: 244 63 94; /* rose-500 */
|
|
}
|
|
|
|
@layer base {
|
|
* {
|
|
@apply border-border outline-ring/50;
|
|
scrollbar-width: thin;
|
|
scrollbar-color: var(--scrollbar-thumb) transparent;
|
|
}
|
|
body {
|
|
@apply bg-background text-foreground;
|
|
}
|
|
}
|
|
|
|
*::-webkit-scrollbar {
|
|
width: 10px;
|
|
height: 10px;
|
|
}
|
|
|
|
*::-webkit-scrollbar-track {
|
|
background: var(--scrollbar-track);
|
|
border-radius: 999px;
|
|
}
|
|
|
|
*::-webkit-scrollbar-thumb {
|
|
background: var(--scrollbar-thumb);
|
|
border-radius: 999px;
|
|
border: 2px solid transparent;
|
|
background-clip: padding-box;
|
|
}
|
|
|
|
*::-webkit-scrollbar-thumb:hover {
|
|
background: var(--scrollbar-thumb-hover);
|
|
background-clip: padding-box;
|
|
}
|
|
|
|
/* xterm.js custom scrollbar styling to match global scrollbars */
|
|
.xterm .xterm-scrollable-element {
|
|
background: var(--background) !important;
|
|
}
|
|
|
|
.xterm .xterm-scrollable-element > .scrollbar {
|
|
width: 10px !important;
|
|
right: 0 !important;
|
|
background: transparent !important;
|
|
}
|
|
|
|
.xterm .xterm-scrollable-element > .scrollbar > .slider {
|
|
background: var(--scrollbar-thumb) !important;
|
|
border-radius: 999px !important;
|
|
width: 6px !important;
|
|
left: 2px !important;
|
|
}
|
|
|
|
.xterm .xterm-scrollable-element > .scrollbar:hover > .slider {
|
|
background: var(--scrollbar-thumb-hover) !important;
|
|
}
|
|
|
|
@layer utilities {
|
|
.overflow-wrap-anywhere {
|
|
overflow-wrap: anywhere;
|
|
}
|
|
|
|
.kanban-task-pulse {
|
|
animation: kanban-task-pulse 5s ease-in-out infinite;
|
|
}
|
|
|
|
.scrollbar-hide {
|
|
-ms-overflow-style: none;
|
|
scrollbar-width: none;
|
|
}
|
|
|
|
.scrollbar-hide::-webkit-scrollbar {
|
|
display: none;
|
|
}
|
|
|
|
/* Thin scrollbar for menus */
|
|
.scrollbar-thin {
|
|
scrollbar-width: thin;
|
|
scrollbar-color: var(--scrollbar-thumb) transparent;
|
|
}
|
|
|
|
.scrollbar-thin::-webkit-scrollbar {
|
|
width: 8px;
|
|
}
|
|
|
|
.scrollbar-thin::-webkit-scrollbar-track {
|
|
background: transparent !important;
|
|
}
|
|
|
|
.scrollbar-thin::-webkit-scrollbar-thumb {
|
|
background: var(--scrollbar-thumb);
|
|
border-radius: 4px;
|
|
}
|
|
|
|
.scrollbar-thin::-webkit-scrollbar-thumb:hover {
|
|
background: var(--scrollbar-thumb-hover);
|
|
}
|
|
|
|
/* Safe area padding for iPhone notch and home indicator */
|
|
.pb-safe {
|
|
padding-bottom: env(safe-area-inset-bottom, 0px);
|
|
}
|
|
|
|
.pt-safe {
|
|
padding-top: env(safe-area-inset-top, 0px);
|
|
}
|
|
|
|
.pl-safe {
|
|
padding-left: env(safe-area-inset-left, 0px);
|
|
}
|
|
|
|
.pr-safe {
|
|
padding-right: env(safe-area-inset-right, 0px);
|
|
}
|
|
|
|
/* Safe area height for spacer elements */
|
|
.h-safe {
|
|
height: env(safe-area-inset-bottom, 0px);
|
|
}
|
|
}
|
|
|
|
/* Grid Spinner - 3x3 cube animation */
|
|
@keyframes spinner-grid {
|
|
0%, 70%, 100% {
|
|
transform: scale3d(0.5, 0.5, 1);
|
|
}
|
|
35% {
|
|
transform: scale3d(0, 0, 1);
|
|
}
|
|
}
|
|
|
|
.spinner-grid {
|
|
display: inline-grid;
|
|
grid-template-columns: repeat(3, 1fr);
|
|
gap: 0.15em;
|
|
width: 1em;
|
|
height: 1em;
|
|
}
|
|
|
|
.spinner-grid-cube {
|
|
width: 100%;
|
|
height: 100%;
|
|
background-color: currentColor;
|
|
animation: spinner-grid 1.3s ease-in-out infinite;
|
|
}
|
|
|
|
.spinner-grid-cube:nth-child(1) { animation-delay: 0.2s; }
|
|
.spinner-grid-cube:nth-child(2) { animation-delay: 0.3s; }
|
|
.spinner-grid-cube:nth-child(3) { animation-delay: 0.4s; }
|
|
.spinner-grid-cube:nth-child(4) { animation-delay: 0.1s; }
|
|
.spinner-grid-cube:nth-child(5) { animation-delay: 0.2s; }
|
|
.spinner-grid-cube:nth-child(6) { animation-delay: 0.3s; }
|
|
.spinner-grid-cube:nth-child(7) { animation-delay: 0s; }
|
|
.spinner-grid-cube:nth-child(8) { animation-delay: 0.1s; }
|
|
.spinner-grid-cube:nth-child(9) { animation-delay: 0.2s; }
|
|
|
|
@keyframes kanban-task-pulse {
|
|
0%,
|
|
100% {
|
|
box-shadow: 0 0 0 0 rgba(79, 70, 229, 0.12);
|
|
}
|
|
50% {
|
|
box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.22);
|
|
}
|
|
}
|
|
|
|
@keyframes border-flash-glow {
|
|
0%, 100% {
|
|
box-shadow: inset 0 0 0 1px color-mix(in oklab, var(--primary) 20%, transparent);
|
|
}
|
|
50% {
|
|
box-shadow: inset 0 0 0 1px color-mix(in oklab, var(--primary) 60%, transparent);
|
|
}
|
|
}
|
|
|
|
@keyframes shimmer {
|
|
0% {
|
|
transform: translateX(-100%);
|
|
}
|
|
100% {
|
|
transform: translateX(100%);
|
|
}
|
|
}
|
|
|
|
@keyframes shimmer-vertical {
|
|
0% {
|
|
transform: translateY(-100%);
|
|
}
|
|
100% {
|
|
transform: translateY(100%);
|
|
}
|
|
}
|
|
|
|
.animate-shimmer {
|
|
animation: shimmer 1.5s ease-in-out infinite;
|
|
}
|
|
|
|
.animate-shimmer-vertical {
|
|
animation: shimmer-vertical 1.5s ease-in-out infinite;
|
|
}
|
|
|
|
@layer components {
|
|
.border-flash-animation {
|
|
position: relative;
|
|
}
|
|
|
|
.border-flash-animation::after {
|
|
content: '';
|
|
position: absolute;
|
|
inset: 0;
|
|
border-radius: inherit;
|
|
pointer-events: none;
|
|
z-index: 10;
|
|
animation: border-flash-glow 3s ease-in-out infinite;
|
|
}
|
|
}
|
|
|
|
.cm-tooltip {
|
|
border: 1px solid var(--border) !important;
|
|
background: var(--popover, oklch(0.205 0 0)) !important;
|
|
color: var(--popover-foreground, oklch(0.985 0 0)) !important;
|
|
border-radius: calc(var(--radius) + 2px);
|
|
box-shadow: 0 12px 32px rgba(0, 0, 0, 0.25);
|
|
padding: 8px;
|
|
}
|
|
|
|
.cm-tooltip-autocomplete {
|
|
padding: 0;
|
|
background: var(--popover, oklch(0.205 0 0)) !important;
|
|
}
|
|
|
|
.cm-tooltip-autocomplete ul {
|
|
list-style: none;
|
|
margin: 0;
|
|
padding: 12px;
|
|
max-height: 240px;
|
|
overflow: auto;
|
|
}
|
|
|
|
.cm-tooltip-autocomplete li {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
padding: 10px 12px;
|
|
border-radius: 6px;
|
|
cursor: pointer;
|
|
font-size: 0.875rem;
|
|
color: var(--popover-foreground, oklch(0.985 0 0));
|
|
}
|
|
|
|
.cm-tooltip-autocomplete li[aria-selected="true"] {
|
|
background: color-mix(in oklab, var(--primary) 20%, var(--popover)) !important;
|
|
color: var(--primary-foreground) !important;
|
|
border-radius: 0;
|
|
}
|
|
|
|
.cm-tooltip-autocomplete li[aria-selected="true"]:first-child {
|
|
border-top-left-radius: 6px;
|
|
border-top-right-radius: 6px;
|
|
}
|
|
|
|
.cm-tooltip-autocomplete li[aria-selected="true"]:last-child {
|
|
border-bottom-left-radius: 6px;
|
|
border-bottom-right-radius: 6px;
|
|
}
|
|
|
|
.cm-completionLabel {
|
|
font-weight: 500;
|
|
}
|
|
|
|
.cm-completionDetail {
|
|
margin-left: auto;
|
|
font-size: 0.875rem;
|
|
color: var(--muted-foreground) !important;
|
|
}
|
|
|
|
.cm-completionMatchedText {
|
|
text-decoration: none;
|
|
color: var(--primary) !important;
|
|
}
|
|
|
|
.cm-tooltip-autocomplete li[aria-selected="true"] .cm-completionMatchedText {
|
|
color: var(--primary-foreground);
|
|
}
|
|
|
|
.cm-completionIcon {
|
|
opacity: 0.65;
|
|
}
|
|
|
|
.cm-completionIcon {
|
|
width: 14px;
|
|
height: 14px;
|
|
display: inline-block;
|
|
margin-right: 6px;
|
|
color: var(--muted-foreground);
|
|
background-color: currentColor;
|
|
mask-size: contain;
|
|
mask-repeat: no-repeat;
|
|
mask-position: center;
|
|
-webkit-mask-size: contain;
|
|
-webkit-mask-repeat: no-repeat;
|
|
-webkit-mask-position: center;
|
|
}
|
|
|
|
.cm-completionIcon-slash {
|
|
mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M7 9a2 2 0 1 1 2 -2v10a2 2 0 1 1 -2 -2h10a2 2 0 1 1 -2 2v-10a2 2 0 1 1 2 2h-10'/></svg>");
|
|
-webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M7 9a2 2 0 1 1 2 -2v10a2 2 0 1 1 -2 -2h10a2 2 0 1 1 -2 2v-10a2 2 0 1 1 2 2h-10'/></svg>");
|
|
}
|
|
|
|
.cm-completionIcon-mention {
|
|
mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M8 12a4 4 0 1 0 8 0a4 4 0 1 0 -8 0'/><path d='M16 12v1.5a2.5 2.5 0 0 0 5 0v-1.5a9 9 0 1 0 -5.5 8.28'/></svg>");
|
|
-webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M8 12a4 4 0 1 0 8 0a4 4 0 1 0 -8 0'/><path d='M16 12v1.5a2.5 2.5 0 0 0 5 0v-1.5a9 9 0 1 0 -5.5 8.28'/></svg>");
|
|
}
|
|
|
|
.cm-completionIcon-prompt {
|
|
display: none !important;
|
|
width: 0 !important;
|
|
margin-right: 0 !important;
|
|
background: none !important;
|
|
}
|
|
|
|
.cm-tooltip-autocomplete li[aria-selected="true"] .cm-completionIcon {
|
|
color: var(--primary-foreground);
|
|
}
|
|
|
|
.task-chat-editor .cm-placeholder {
|
|
color: var(--muted-foreground) !important;
|
|
}
|
|
|
|
.task-chat-editor .cm-editor {
|
|
background: transparent !important;
|
|
box-shadow: none !important;
|
|
outline: none !important;
|
|
}
|
|
|
|
.task-chat-editor .cm-editor.cm-focused {
|
|
outline: none !important;
|
|
}
|
|
|
|
.task-chat-editor .cm-scroller,
|
|
.task-chat-editor .cm-content,
|
|
.task-chat-editor .cm-line,
|
|
.task-chat-editor .cm-line span {
|
|
background: transparent !important;
|
|
background-color: transparent !important;
|
|
color: var(--foreground) !important;
|
|
}
|
|
|
|
.task-chat-editor .cm-cursor {
|
|
border-left-color: var(--foreground);
|
|
}
|
|
|
|
.task-chat-editor .cm-selectionBackground {
|
|
background: color-mix(in oklab, var(--primary) 25%, var(--background)) !important;
|
|
}
|
|
|
|
.task-chat-editor .cm-content ::selection {
|
|
background: color-mix(in oklab, var(--primary) 30%, var(--background));
|
|
}
|
|
|
|
/* Milkdown Editor Styles */
|
|
.milkdown-wrapper {
|
|
height: 100%;
|
|
overflow: auto;
|
|
background: #000000; /* Black background like chat */
|
|
border-radius: 0.5rem; /* rounded-lg like chat */
|
|
}
|
|
|
|
.milkdown-wrapper:not(.dark) {
|
|
background: #ffffff; /* White background for light mode */
|
|
}
|
|
|
|
.milkdown-wrapper .milkdown {
|
|
height: 100%;
|
|
background: transparent;
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
|
|
.milkdown-wrapper .milkdown [data-milkdown-root] {
|
|
flex: 1;
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
|
|
.milkdown-wrapper .editor {
|
|
padding: 0.75rem;
|
|
flex: 1;
|
|
min-height: 100%;
|
|
outline: none;
|
|
background: transparent;
|
|
cursor: text;
|
|
}
|
|
|
|
.milkdown-wrapper .editor:focus {
|
|
outline: none;
|
|
}
|
|
|
|
/* Override nord theme colors to match app theme */
|
|
.milkdown-wrapper .milkdown {
|
|
--nord-background: transparent;
|
|
--nord-foreground: var(--foreground);
|
|
--nord-outline: var(--border);
|
|
--nord-primary: var(--primary);
|
|
--nord-secondary: var(--muted);
|
|
--nord-neutral: var(--muted-foreground);
|
|
--nord-solid: var(--card);
|
|
--nord-line: var(--border);
|
|
--nord-surface: var(--muted);
|
|
--nord-shadow: var(--border);
|
|
}
|
|
|
|
/* Base text styling - match chat text-xs */
|
|
.milkdown-wrapper .editor,
|
|
.milkdown-wrapper .editor *:not(.mermaid-container):not(.mermaid-container *) {
|
|
font-size: 0.75rem !important;
|
|
line-height: 1.625;
|
|
color: var(--foreground);
|
|
}
|
|
|
|
/* Typography - headings */
|
|
.milkdown-wrapper .editor h1,
|
|
.milkdown-wrapper .editor h2,
|
|
.milkdown-wrapper .editor h3,
|
|
.milkdown-wrapper .editor h4,
|
|
.milkdown-wrapper .editor h5,
|
|
.milkdown-wrapper .editor h6 {
|
|
font-weight: 700 !important;
|
|
color: var(--foreground) !important;
|
|
margin-top: 0.5rem !important;
|
|
margin-bottom: 0.25rem !important;
|
|
line-height: 1.3 !important;
|
|
}
|
|
|
|
.milkdown-wrapper .editor h1 { font-size: 0.875rem !important; }
|
|
.milkdown-wrapper .editor h2 { font-size: 0.8125rem !important; }
|
|
.milkdown-wrapper .editor h3 { font-size: 0.75rem !important; }
|
|
|
|
/* Paragraphs */
|
|
.milkdown-wrapper .editor p {
|
|
margin-top: 0.5rem !important;
|
|
margin-bottom: 0.5rem !important;
|
|
line-height: 1.625 !important;
|
|
font-size: 0.75rem !important;
|
|
}
|
|
|
|
/* Lists */
|
|
.milkdown-wrapper .editor ul {
|
|
list-style-type: disc !important;
|
|
padding-left: 1.25rem !important;
|
|
margin-top: 0.375rem !important;
|
|
margin-bottom: 0.375rem !important;
|
|
font-size: 0.75rem !important;
|
|
}
|
|
|
|
.milkdown-wrapper .editor ol {
|
|
list-style-type: decimal !important;
|
|
padding-left: 1.25rem !important;
|
|
margin-top: 0.375rem !important;
|
|
margin-bottom: 0.375rem !important;
|
|
font-size: 0.75rem !important;
|
|
}
|
|
|
|
.milkdown-wrapper .editor li {
|
|
margin-top: 0.125rem !important;
|
|
margin-bottom: 0.125rem !important;
|
|
font-size: 0.75rem !important;
|
|
line-height: 1.5 !important;
|
|
}
|
|
|
|
/* Inline code - matching chat InlineCode component */
|
|
.milkdown-wrapper .editor code {
|
|
background: rgb(59 130 246 / 0.2) !important;
|
|
color: rgb(96 165 250) !important;
|
|
padding: 0.125rem 0.375rem !important;
|
|
border-radius: 0.25rem !important;
|
|
font-size: 0.675rem !important;
|
|
font-family: var(--font-mono) !important;
|
|
}
|
|
|
|
/* Code blocks */
|
|
.milkdown-wrapper .editor pre {
|
|
background: #000000 !important;
|
|
padding: 0.5rem 0.75rem !important;
|
|
border-radius: 0.375rem !important;
|
|
overflow-x: auto !important;
|
|
margin-top: 0.5rem !important;
|
|
margin-bottom: 0.5rem !important;
|
|
}
|
|
|
|
.milkdown-wrapper:not(.dark) .editor pre {
|
|
background: #f5f5f5 !important;
|
|
}
|
|
|
|
.milkdown-wrapper .editor pre code {
|
|
background: transparent !important;
|
|
color: #d4d4d4 !important;
|
|
padding: 0 !important;
|
|
font-size: 0.625rem !important;
|
|
font-family: var(--font-mono) !important;
|
|
}
|
|
|
|
.milkdown-wrapper:not(.dark) .editor pre code {
|
|
color: #1e1e1e !important;
|
|
}
|
|
|
|
/* Blockquote */
|
|
.milkdown-wrapper .editor blockquote {
|
|
border-left: 3px solid var(--primary) !important;
|
|
padding-left: 0.75rem !important;
|
|
margin-left: 0 !important;
|
|
margin-top: 0.5rem !important;
|
|
margin-bottom: 0.5rem !important;
|
|
color: var(--muted-foreground) !important;
|
|
font-style: italic !important;
|
|
}
|
|
|
|
/* Links */
|
|
.milkdown-wrapper .editor a {
|
|
color: var(--primary) !important;
|
|
text-decoration: underline !important;
|
|
text-underline-offset: 2px !important;
|
|
}
|
|
|
|
/* Strong/Bold */
|
|
.milkdown-wrapper .editor strong {
|
|
font-weight: 700;
|
|
color: var(--foreground);
|
|
}
|
|
|
|
/* Emphasis */
|
|
.milkdown-wrapper .editor em {
|
|
font-style: italic;
|
|
}
|
|
|
|
/* Horizontal rule */
|
|
.milkdown-wrapper .editor hr {
|
|
border: none !important;
|
|
border-top: 1px solid var(--border) !important;
|
|
margin: 1rem 0 !important;
|
|
}
|
|
|
|
/* Comment highlights in plan editor - inline */
|
|
.milkdown-wrapper .comment-highlight {
|
|
background-color: rgba(59, 130, 246, 0.45);
|
|
border-radius: 3px;
|
|
cursor: pointer;
|
|
transition: background-color 0.15s ease;
|
|
padding: 2px 1px;
|
|
box-decoration-break: clone;
|
|
-webkit-box-decoration-break: clone;
|
|
}
|
|
|
|
.milkdown-wrapper .comment-highlight:hover {
|
|
background-color: rgba(59, 130, 246, 0.6);
|
|
}
|
|
|
|
/* Mermaid diagram styles */
|
|
.milkdown-wrapper .mermaid-container {
|
|
margin: 0.75rem 0 !important;
|
|
padding: 0.5rem !important;
|
|
overflow-x: auto !important;
|
|
}
|
|
|
|
.milkdown-wrapper .mermaid-container svg {
|
|
max-width: 100% !important;
|
|
height: auto !important;
|
|
}
|
|
|
|
.milkdown-wrapper .mermaid-error {
|
|
color: #ef4444 !important;
|
|
font-size: 0.75rem !important;
|
|
padding: 0.5rem !important;
|
|
white-space: pre-wrap !important;
|
|
}
|
|
|
|
/* Placeholder for empty editor - shows at cursor position like a real editor */
|
|
.milkdown-wrapper .editor-placeholder {
|
|
color: var(--muted-foreground);
|
|
opacity: 0.5;
|
|
pointer-events: none;
|
|
font-size: 0.75rem;
|
|
user-select: none;
|
|
}
|