@yourgpt/copilot-sdk 1.2.11 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -15,7 +15,6 @@ npm install @yourgpt/copilot-sdk @yourgpt/llm-sdk
15
15
  ```tsx
16
16
  import { CopilotProvider } from "@yourgpt/copilot-sdk/react";
17
17
  import { CopilotChat } from "@yourgpt/copilot-sdk/ui";
18
- import "@yourgpt/copilot-sdk/ui/styles.css";
19
18
 
20
19
  function App() {
21
20
  return (
@@ -37,26 +36,36 @@ function App() {
37
36
 
38
37
  ## Styling (Tailwind CSS v4)
39
38
 
40
- Add the SDK source to your Tailwind config:
41
-
42
39
  ```css
43
40
  /* app/globals.css */
44
41
  @import "tailwindcss";
45
-
46
42
  @source "node_modules/@yourgpt/copilot-sdk/src/**/*.{ts,tsx}";
47
-
48
43
  @custom-variant dark (&:is(.dark *));
49
44
  ```
50
45
 
51
- For theming, optionally import the default CSS variables:
46
+ ## Theming
52
47
 
53
- ```css
54
- @import "@yourgpt/copilot-sdk/ui/styles.css";
48
+ Works automatically with existing shadcn/ui setup. For projects without shadcn:
49
+
50
+ ```tsx
51
+ import "@yourgpt/copilot-sdk/ui/styles.css";
52
+ import "@yourgpt/copilot-sdk/ui/themes/claude.css"; // Optional preset
53
+
54
+ <div className="csdk-theme-claude">
55
+ <CopilotChat />
56
+ </div>;
55
57
  ```
56
58
 
59
+ **8 theme presets available:** Claude, Vercel, Supabase, Twitter, Linear, PostHog, Catppuccin, Modern
60
+
57
61
  ## Documentation
58
62
 
59
- Visit [copilot-sdk.yourgpt.ai](https://copilot-sdk.yourgpt.ai)
63
+ Visit [copilot-sdk.yourgpt.ai](https://copilot-sdk.yourgpt.ai) for full documentation including:
64
+
65
+ - Theme customization & CSS variables
66
+ - Semantic CSS classes (`csdk-*`)
67
+ - Creating custom themes
68
+ - Dark mode support
60
69
 
61
70
  ## License
62
71
 
package/dist/styles.css CHANGED
@@ -1,48 +1,64 @@
1
- /* YourGPT Copilot UI Styles */
2
- /* Add Tailwind v4 configuration here */
1
+ /* YourGPT Copilot SDK - Base Styles */
2
+ /* Default neutral theme */
3
3
 
4
- /* shadcn/ui CSS Variables */
5
4
  :root {
6
- --background: 0 0% 100%;
7
- --foreground: 240 10% 3.9%;
8
- --card: 0 0% 100%;
9
- --card-foreground: 240 10% 3.9%;
10
- --popover: 0 0% 100%;
11
- --popover-foreground: 240 10% 3.9%;
12
- --primary: 240 5.9% 10%;
13
- --primary-foreground: 0 0% 98%;
14
- --secondary: 240 4.8% 95.9%;
15
- --secondary-foreground: 240 5.9% 10%;
16
- --muted: 240 4.8% 95.9%;
17
- --muted-foreground: 240 3.8% 46.1%;
18
- --accent: 240 4.8% 95.9%;
19
- --accent-foreground: 240 5.9% 10%;
20
- --destructive: 0 84.2% 60.2%;
21
- --destructive-foreground: 0 0% 98%;
22
- --border: 240 5.9% 90%;
23
- --input: 240 5.9% 90%;
24
- --ring: 240 5.9% 10%;
5
+ --background: hsl(0 0% 100%);
6
+ --foreground: hsl(240 10% 3.9%);
7
+
8
+ --card: hsl(0 0% 100%);
9
+ --card-foreground: hsl(240 10% 3.9%);
10
+
11
+ --popover: hsl(0 0% 100%);
12
+ --popover-foreground: hsl(240 10% 3.9%);
13
+
14
+ --primary: hsl(240 5.9% 10%);
15
+ --primary-foreground: hsl(0 0% 98%);
16
+
17
+ --secondary: hsl(240 4.8% 95.9%);
18
+ --secondary-foreground: hsl(240 5.9% 10%);
19
+
20
+ --muted: hsl(240 4.8% 95.9%);
21
+ --muted-foreground: hsl(240 3.8% 46.1%);
22
+
23
+ --accent: hsl(240 4.8% 95.9%);
24
+ --accent-foreground: hsl(240 5.9% 10%);
25
+
26
+ --destructive: hsl(0 84.2% 60.2%);
27
+ --destructive-foreground: hsl(0 0% 98%);
28
+
29
+ --border: hsl(240 5.9% 90%);
30
+ --input: hsl(240 5.9% 90%);
31
+ --ring: hsl(240 5.9% 10%);
32
+
25
33
  --radius: 0.5rem;
26
34
  }
27
35
 
28
36
  .dark {
29
- --background: 240 10% 3.9%;
30
- --foreground: 0 0% 98%;
31
- --card: 240 10% 3.9%;
32
- --card-foreground: 0 0% 98%;
33
- --popover: 240 10% 3.9%;
34
- --popover-foreground: 0 0% 98%;
35
- --primary: 0 0% 98%;
36
- --primary-foreground: 240 5.9% 10%;
37
- --secondary: 240 3.7% 15.9%;
38
- --secondary-foreground: 0 0% 98%;
39
- --muted: 240 3.7% 15.9%;
40
- --muted-foreground: 240 5% 64.9%;
41
- --accent: 240 3.7% 15.9%;
42
- --accent-foreground: 0 0% 98%;
43
- --destructive: 0 62.8% 30.6%;
44
- --destructive-foreground: 0 0% 98%;
45
- --border: 240 3.7% 15.9%;
46
- --input: 240 3.7% 15.9%;
47
- --ring: 240 4.9% 83.9%;
37
+ --background: hsl(240 10% 3.9%);
38
+ --foreground: hsl(0 0% 98%);
39
+
40
+ --card: hsl(240 10% 3.9%);
41
+ --card-foreground: hsl(0 0% 98%);
42
+
43
+ --popover: hsl(240 10% 3.9%);
44
+ --popover-foreground: hsl(0 0% 98%);
45
+
46
+ --primary: hsl(0 0% 98%);
47
+ --primary-foreground: hsl(240 5.9% 10%);
48
+
49
+ --secondary: hsl(240 3.7% 15.9%);
50
+ --secondary-foreground: hsl(0 0% 98%);
51
+
52
+ --muted: hsl(240 3.7% 15.9%);
53
+ --muted-foreground: hsl(240 5% 64.9%);
54
+
55
+ --accent: hsl(240 3.7% 15.9%);
56
+ --accent-foreground: hsl(0 0% 98%);
57
+
58
+ --destructive: hsl(0 62.8% 30.6%);
59
+ --destructive-foreground: hsl(0 0% 98%);
60
+
61
+ --border: hsl(240 3.7% 15.9%);
62
+ --input: hsl(240 3.7% 15.9%);
63
+ --ring: hsl(240 4.9% 83.9%);
48
64
  }
@@ -0,0 +1,69 @@
1
+ /* Catppuccin Theme - Popular community theme, pastel colors */
2
+
3
+ .csdk-theme-catppuccin,
4
+ [data-csdk-theme="catppuccin"] {
5
+ /* Latte (Light) */
6
+ --background: hsl(220 23% 95%);
7
+ --foreground: hsl(234 16% 35%);
8
+
9
+ --card: hsl(0 0% 100%);
10
+ --card-foreground: hsl(234 16% 35%);
11
+
12
+ --popover: hsl(223 16% 83%);
13
+ --popover-foreground: hsl(234 16% 35%);
14
+
15
+ --primary: hsl(267 84% 58%);
16
+ --primary-foreground: hsl(0 0% 100%);
17
+
18
+ --secondary: hsl(223 16% 83%);
19
+ --secondary-foreground: hsl(234 16% 35%);
20
+
21
+ --muted: hsl(220 17% 88%);
22
+ --muted-foreground: hsl(233 10% 47%);
23
+
24
+ --accent: hsl(189 71% 46%);
25
+ --accent-foreground: hsl(0 0% 100%);
26
+
27
+ --destructive: hsl(347 87% 44%);
28
+ --destructive-foreground: hsl(0 0% 100%);
29
+
30
+ --border: hsl(225 14% 77%);
31
+ --input: hsl(223 16% 83%);
32
+ --ring: hsl(267 84% 58%);
33
+
34
+ --radius: 0.35rem;
35
+ }
36
+
37
+ /* Dark mode - Mocha */
38
+ .dark.csdk-theme-catppuccin,
39
+ .dark .csdk-theme-catppuccin,
40
+ .dark[data-csdk-theme="catppuccin"],
41
+ .dark [data-csdk-theme="catppuccin"] {
42
+ --background: hsl(240 21% 12%);
43
+ --foreground: hsl(227 70% 87%);
44
+
45
+ --card: hsl(240 21% 15%);
46
+ --card-foreground: hsl(227 70% 87%);
47
+
48
+ --popover: hsl(233 14% 31%);
49
+ --popover-foreground: hsl(227 70% 87%);
50
+
51
+ --primary: hsl(267 83% 80%);
52
+ --primary-foreground: hsl(240 21% 15%);
53
+
54
+ --secondary: hsl(234 13% 39%);
55
+ --secondary-foreground: hsl(227 70% 87%);
56
+
57
+ --muted: hsl(235 20% 21%);
58
+ --muted-foreground: hsl(228 24% 72%);
59
+
60
+ --accent: hsl(189 71% 73%);
61
+ --accent-foreground: hsl(240 21% 15%);
62
+
63
+ --destructive: hsl(351 74% 73%);
64
+ --destructive-foreground: hsl(240 21% 15%);
65
+
66
+ --border: hsl(237 16% 23%);
67
+ --input: hsl(237 16% 23%);
68
+ --ring: hsl(267 83% 80%);
69
+ }
@@ -0,0 +1,68 @@
1
+ /* Claude Theme - Warm, earthy, AI-focused */
2
+
3
+ .csdk-theme-claude,
4
+ [data-csdk-theme="claude"] {
5
+ --background: hsl(45 33% 97%);
6
+ --foreground: hsl(47 20% 20%);
7
+
8
+ --card: hsl(45 33% 97%);
9
+ --card-foreground: hsl(60 5% 8%);
10
+
11
+ --popover: hsl(0 0% 100%);
12
+ --popover-foreground: hsl(50 22% 13%);
13
+
14
+ --primary: hsl(16 56% 52%);
15
+ --primary-foreground: hsl(0 0% 100%);
16
+
17
+ --secondary: hsl(43 20% 89%);
18
+ --secondary-foreground: hsl(48 7% 31%);
19
+
20
+ --muted: hsl(44 24% 90%);
21
+ --muted-foreground: hsl(60 1% 50%);
22
+
23
+ --accent: hsl(43 20% 89%);
24
+ --accent-foreground: hsl(53 22% 13%);
25
+
26
+ --destructive: hsl(0 84% 60%);
27
+ --destructive-foreground: hsl(0 0% 100%);
28
+
29
+ --border: hsl(45 8% 84%);
30
+ --input: hsl(47 6% 69%);
31
+ --ring: hsl(16 56% 52%);
32
+
33
+ --radius: 0.5rem;
34
+ }
35
+
36
+ /* Dark mode */
37
+ .dark.csdk-theme-claude,
38
+ .dark .csdk-theme-claude,
39
+ .dark[data-csdk-theme="claude"],
40
+ .dark [data-csdk-theme="claude"] {
41
+ --background: hsl(60 3% 15%);
42
+ --foreground: hsl(44 8% 74%);
43
+
44
+ --card: hsl(60 3% 15%);
45
+ --card-foreground: hsl(45 33% 97%);
46
+
47
+ --popover: hsl(60 3% 18%);
48
+ --popover-foreground: hsl(60 3% 90%);
49
+
50
+ --primary: hsl(14 62% 60%);
51
+ --primary-foreground: hsl(0 0% 100%);
52
+
53
+ --secondary: hsl(45 33% 97%);
54
+ --secondary-foreground: hsl(60 2% 18%);
55
+
56
+ --muted: hsl(60 5% 10%);
57
+ --muted-foreground: hsl(46 7% 69%);
58
+
59
+ --accent: hsl(52 10% 9%);
60
+ --accent-foreground: hsl(50 20% 95%);
61
+
62
+ --destructive: hsl(0 84% 60%);
63
+ --destructive-foreground: hsl(0 0% 100%);
64
+
65
+ --border: hsl(55 5% 23%);
66
+ --input: hsl(52 5% 31%);
67
+ --ring: hsl(14 62% 60%);
68
+ }
@@ -0,0 +1,68 @@
1
+ /* Linear Theme - Refined purple, sophisticated */
2
+
3
+ .csdk-theme-linear,
4
+ [data-csdk-theme="linear"] {
5
+ --background: hsl(260 20% 99%);
6
+ --foreground: hsl(260 25% 12%);
7
+
8
+ --card: hsl(0 0% 100%);
9
+ --card-foreground: hsl(260 25% 12%);
10
+
11
+ --popover: hsl(0 0% 100%);
12
+ --popover-foreground: hsl(260 25% 12%);
13
+
14
+ --primary: hsl(260 75% 50%);
15
+ --primary-foreground: hsl(0 0% 100%);
16
+
17
+ --secondary: hsl(260 15% 95%);
18
+ --secondary-foreground: hsl(260 25% 12%);
19
+
20
+ --muted: hsl(260 12% 94%);
21
+ --muted-foreground: hsl(260 10% 45%);
22
+
23
+ --accent: hsl(195 70% 55%);
24
+ --accent-foreground: hsl(260 25% 12%);
25
+
26
+ --destructive: hsl(0 75% 55%);
27
+ --destructive-foreground: hsl(0 0% 100%);
28
+
29
+ --border: hsl(260 12% 90%);
30
+ --input: hsl(260 12% 90%);
31
+ --ring: hsl(260 75% 50%);
32
+
33
+ --radius: 0.5rem;
34
+ }
35
+
36
+ /* Dark mode */
37
+ .dark.csdk-theme-linear,
38
+ .dark .csdk-theme-linear,
39
+ .dark[data-csdk-theme="linear"],
40
+ .dark [data-csdk-theme="linear"] {
41
+ --background: hsl(260 30% 7%);
42
+ --foreground: hsl(260 10% 95%);
43
+
44
+ --card: hsl(260 28% 10%);
45
+ --card-foreground: hsl(260 10% 95%);
46
+
47
+ --popover: hsl(260 28% 10%);
48
+ --popover-foreground: hsl(260 10% 95%);
49
+
50
+ --primary: hsl(260 65% 58%);
51
+ --primary-foreground: hsl(260 30% 7%);
52
+
53
+ --secondary: hsl(260 22% 15%);
54
+ --secondary-foreground: hsl(260 10% 95%);
55
+
56
+ --muted: hsl(260 20% 15%);
57
+ --muted-foreground: hsl(260 10% 55%);
58
+
59
+ --accent: hsl(195 55% 55%);
60
+ --accent-foreground: hsl(260 30% 7%);
61
+
62
+ --destructive: hsl(0 62% 35%);
63
+ --destructive-foreground: hsl(0 0% 100%);
64
+
65
+ --border: hsl(260 22% 18%);
66
+ --input: hsl(260 22% 18%);
67
+ --ring: hsl(260 65% 58%);
68
+ }
@@ -0,0 +1,68 @@
1
+ /* Modern Minimal Theme - Clean, sharp, tech-focused */
2
+
3
+ .csdk-theme-modern,
4
+ [data-csdk-theme="modern"] {
5
+ --background: hsl(0 0% 100%);
6
+ --foreground: hsl(0 0% 20%);
7
+
8
+ --card: hsl(0 0% 100%);
9
+ --card-foreground: hsl(0 0% 20%);
10
+
11
+ --popover: hsl(0 0% 100%);
12
+ --popover-foreground: hsl(0 0% 20%);
13
+
14
+ --primary: hsl(217 91% 60%);
15
+ --primary-foreground: hsl(0 0% 100%);
16
+
17
+ --secondary: hsl(220 14% 96%);
18
+ --secondary-foreground: hsl(220 9% 46%);
19
+
20
+ --muted: hsl(210 20% 98%);
21
+ --muted-foreground: hsl(220 9% 46%);
22
+
23
+ --accent: hsl(201 94% 94%);
24
+ --accent-foreground: hsl(224 64% 33%);
25
+
26
+ --destructive: hsl(0 84% 60%);
27
+ --destructive-foreground: hsl(0 0% 100%);
28
+
29
+ --border: hsl(220 13% 91%);
30
+ --input: hsl(220 13% 91%);
31
+ --ring: hsl(217 91% 60%);
32
+
33
+ --radius: 0.375rem;
34
+ }
35
+
36
+ /* Dark mode */
37
+ .dark.csdk-theme-modern,
38
+ .dark .csdk-theme-modern,
39
+ .dark[data-csdk-theme="modern"],
40
+ .dark [data-csdk-theme="modern"] {
41
+ --background: hsl(0 0% 9%);
42
+ --foreground: hsl(0 0% 90%);
43
+
44
+ --card: hsl(0 0% 15%);
45
+ --card-foreground: hsl(0 0% 90%);
46
+
47
+ --popover: hsl(0 0% 15%);
48
+ --popover-foreground: hsl(0 0% 90%);
49
+
50
+ --primary: hsl(217 91% 60%);
51
+ --primary-foreground: hsl(0 0% 100%);
52
+
53
+ --secondary: hsl(0 0% 15%);
54
+ --secondary-foreground: hsl(0 0% 90%);
55
+
56
+ --muted: hsl(0 0% 12%);
57
+ --muted-foreground: hsl(0 0% 64%);
58
+
59
+ --accent: hsl(224 64% 33%);
60
+ --accent-foreground: hsl(213 97% 87%);
61
+
62
+ --destructive: hsl(0 84% 60%);
63
+ --destructive-foreground: hsl(0 0% 100%);
64
+
65
+ --border: hsl(0 0% 25%);
66
+ --input: hsl(0 0% 25%);
67
+ --ring: hsl(217 91% 60%);
68
+ }
@@ -0,0 +1,216 @@
1
+ /* PostHog Theme - NeoBrutalism style */
2
+ /* Yellow/Gold focused, bold borders, offset shadows */
3
+
4
+ .csdk-theme-posthog,
5
+ [data-csdk-theme="posthog"] {
6
+ /* Base colors - warm off-white with yellow tints */
7
+ --background: hsl(45 100% 98%);
8
+ --foreground: hsl(30 10% 10%);
9
+
10
+ --card: hsl(45 50% 97%);
11
+ --card-foreground: hsl(30 10% 10%);
12
+
13
+ --popover: hsl(0 0% 100%);
14
+ --popover-foreground: hsl(30 10% 10%);
15
+
16
+ --primary: hsl(37 92% 50%);
17
+ --primary-foreground: hsl(0 0% 0%);
18
+
19
+ --secondary: hsl(45 40% 92%);
20
+ --secondary-foreground: hsl(30 10% 15%);
21
+
22
+ --muted: hsl(45 30% 94%);
23
+ --muted-foreground: hsl(30 10% 40%);
24
+
25
+ --accent: hsl(45 60% 88%);
26
+ --accent-foreground: hsl(30 10% 10%);
27
+
28
+ --destructive: hsl(0 84% 60%);
29
+ --destructive-foreground: hsl(0 0% 100%);
30
+
31
+ --border: hsl(30 15% 20%);
32
+ --input: hsl(30 15% 20%);
33
+ --ring: hsl(37 92% 50%);
34
+
35
+ --radius: 0.625rem;
36
+ }
37
+
38
+ /* Dark mode - subtle warm yellows on dark surface */
39
+ .dark.csdk-theme-posthog,
40
+ .dark .csdk-theme-posthog,
41
+ .dark[data-csdk-theme="posthog"],
42
+ .dark [data-csdk-theme="posthog"] {
43
+ --background: hsl(30 15% 8%);
44
+ --foreground: hsl(45 20% 90%);
45
+
46
+ --card: hsl(30 15% 10%);
47
+ --card-foreground: hsl(45 20% 90%);
48
+
49
+ --popover: hsl(30 15% 12%);
50
+ --popover-foreground: hsl(45 20% 90%);
51
+
52
+ --primary: hsl(40 85% 55%);
53
+ --primary-foreground: hsl(30 15% 8%);
54
+
55
+ --secondary: hsl(35 20% 18%);
56
+ --secondary-foreground: hsl(45 20% 90%);
57
+
58
+ --muted: hsl(35 15% 15%);
59
+ --muted-foreground: hsl(40 10% 60%);
60
+
61
+ --accent: hsl(40 25% 20%);
62
+ --accent-foreground: hsl(45 20% 90%);
63
+
64
+ --destructive: hsl(0 70% 45%);
65
+ --destructive-foreground: hsl(0 0% 100%);
66
+
67
+ --border: hsl(40 30% 65%);
68
+ --input: hsl(40 30% 65%);
69
+ --ring: hsl(40 85% 55%);
70
+ }
71
+
72
+ /* ═══════════════════════════════════════════════════════════
73
+ NeoBrutalism Component Styles
74
+ ═══════════════════════════════════════════════════════════ */
75
+
76
+ /* User message bubble - transparent yellow in light, subtle solid in dark */
77
+ .csdk-theme-posthog .csdk-message-user,
78
+ [data-csdk-theme="posthog"] .csdk-message-user {
79
+ background: hsl(45 90% 88% / 0.7) !important;
80
+ color: hsl(30 15% 10%) !important;
81
+ border: 2px solid var(--border);
82
+ box-shadow: 3px 3px 0 0 var(--border);
83
+ }
84
+
85
+ .dark.csdk-theme-posthog .csdk-message-user,
86
+ .dark .csdk-theme-posthog .csdk-message-user,
87
+ .dark[data-csdk-theme="posthog"] .csdk-message-user,
88
+ .dark [data-csdk-theme="posthog"] .csdk-message-user {
89
+ background: hsl(40 40% 22%) !important;
90
+ color: hsl(45 30% 92%) !important;
91
+ }
92
+
93
+ /* Assistant message bubble - light yellow tint in light, warm surface in dark */
94
+ .csdk-theme-posthog .csdk-message-assistant,
95
+ [data-csdk-theme="posthog"] .csdk-message-assistant {
96
+ background: hsl(48 50% 94% / 0.8) !important;
97
+ color: hsl(30 15% 15%) !important;
98
+ border: 2px solid var(--border);
99
+ box-shadow: 3px 3px 0 0 var(--border);
100
+ }
101
+
102
+ .dark.csdk-theme-posthog .csdk-message-assistant,
103
+ .dark .csdk-theme-posthog .csdk-message-assistant,
104
+ .dark[data-csdk-theme="posthog"] .csdk-message-assistant,
105
+ .dark [data-csdk-theme="posthog"] .csdk-message-assistant {
106
+ background: hsl(35 25% 16%) !important;
107
+ color: hsl(45 20% 88%) !important;
108
+ }
109
+
110
+ /* Input container with brutal shadow */
111
+ .csdk-theme-posthog .csdk-input,
112
+ [data-csdk-theme="posthog"] .csdk-input {
113
+ border: 2px solid var(--border) !important;
114
+ box-shadow: 4px 4px 0 0 var(--border);
115
+ transition: transform 0.1s ease, box-shadow 0.1s ease;
116
+ }
117
+
118
+ .csdk-theme-posthog .csdk-input:focus-within,
119
+ [data-csdk-theme="posthog"] .csdk-input:focus-within {
120
+ transform: translate(-1px, -1px);
121
+ box-shadow: 5px 5px 0 0 var(--border);
122
+ }
123
+
124
+ /* Send button with brutal style */
125
+ .csdk-theme-posthog .csdk-button-send,
126
+ [data-csdk-theme="posthog"] .csdk-button-send {
127
+ border: 2px solid var(--border) !important;
128
+ box-shadow: 2px 2px 0 0 var(--border);
129
+ transition: transform 0.1s ease, box-shadow 0.1s ease;
130
+ }
131
+
132
+ .csdk-theme-posthog .csdk-button-send:hover,
133
+ [data-csdk-theme="posthog"] .csdk-button-send:hover {
134
+ transform: translate(-1px, -1px);
135
+ box-shadow: 3px 3px 0 0 var(--border);
136
+ }
137
+
138
+ .csdk-theme-posthog .csdk-button-send:active,
139
+ [data-csdk-theme="posthog"] .csdk-button-send:active {
140
+ transform: translate(1px, 1px);
141
+ box-shadow: 1px 1px 0 0 var(--border);
142
+ }
143
+
144
+ /* Stop button with brutal style */
145
+ .csdk-theme-posthog .csdk-button-stop,
146
+ [data-csdk-theme="posthog"] .csdk-button-stop {
147
+ border: 2px solid var(--border) !important;
148
+ box-shadow: 2px 2px 0 0 var(--border);
149
+ transition: transform 0.1s ease, box-shadow 0.1s ease;
150
+ }
151
+
152
+ .csdk-theme-posthog .csdk-button-stop:hover,
153
+ [data-csdk-theme="posthog"] .csdk-button-stop:hover {
154
+ transform: translate(-1px, -1px);
155
+ box-shadow: 3px 3px 0 0 var(--border);
156
+ }
157
+
158
+ /* Attach button with brutal style */
159
+ .csdk-theme-posthog .csdk-button-attach,
160
+ [data-csdk-theme="posthog"] .csdk-button-attach {
161
+ border: 2px solid var(--border);
162
+ box-shadow: 2px 2px 0 0 var(--border);
163
+ transition: transform 0.1s ease, box-shadow 0.1s ease;
164
+ }
165
+
166
+ .csdk-theme-posthog .csdk-button-attach:hover,
167
+ [data-csdk-theme="posthog"] .csdk-button-attach:hover {
168
+ transform: translate(-1px, -1px);
169
+ box-shadow: 3px 3px 0 0 var(--border);
170
+ }
171
+
172
+ /* Follow-up buttons with brutal style */
173
+ .csdk-theme-posthog .csdk-followup-button,
174
+ [data-csdk-theme="posthog"] .csdk-followup-button {
175
+ border: 2px solid var(--border) !important;
176
+ box-shadow: 2px 2px 0 0 var(--border);
177
+ transition: transform 0.1s ease, box-shadow 0.1s ease;
178
+ }
179
+
180
+ .csdk-theme-posthog .csdk-followup-button:hover,
181
+ [data-csdk-theme="posthog"] .csdk-followup-button:hover {
182
+ transform: translate(-1px, -1px);
183
+ box-shadow: 3px 3px 0 0 var(--border);
184
+ }
185
+
186
+ /* Avatar with brutal border */
187
+ .csdk-theme-posthog .csdk-avatar,
188
+ [data-csdk-theme="posthog"] .csdk-avatar {
189
+ border: 2px solid var(--border);
190
+ border-radius: 0.375rem;
191
+ }
192
+
193
+ .csdk-theme-posthog .csdk-avatar-fallback,
194
+ [data-csdk-theme="posthog"] .csdk-avatar-fallback {
195
+ border-radius: 0.25rem;
196
+ }
197
+
198
+ /* General button styling for brutal theme */
199
+ .csdk-theme-posthog .csdk-button,
200
+ [data-csdk-theme="posthog"] .csdk-button {
201
+ border: 2px solid var(--border) !important;
202
+ box-shadow: 2px 2px 0 0 var(--border);
203
+ transition: transform 0.1s ease, box-shadow 0.1s ease;
204
+ }
205
+
206
+ .csdk-theme-posthog .csdk-button:hover,
207
+ [data-csdk-theme="posthog"] .csdk-button:hover {
208
+ transform: translate(-1px, -1px);
209
+ box-shadow: 3px 3px 0 0 var(--border);
210
+ }
211
+
212
+ .csdk-theme-posthog .csdk-button:active,
213
+ [data-csdk-theme="posthog"] .csdk-button:active {
214
+ transform: translate(1px, 1px);
215
+ box-shadow: 1px 1px 0 0 var(--border);
216
+ }