LogitCode commited on
Commit
250b9ef
·
verified ·
1 Parent(s): ed761e4

Update index.html

Browse files
Files changed (1) hide show
  1. index.html +90 -134
index.html CHANGED
@@ -54,163 +54,119 @@ tailwind.config = {
54
  }
55
  }
56
  </script>
 
57
  <style>
58
  * { box-sizing: border-box; }
59
- body { background: #0d0d0f; font-family: 'DM Mono', monospace; }
60
- /* ── Theme variables ─────────────────────────────── */
61
  body {
62
- --c-bg: #0d0d0f;
63
- --c-surface: #1a1a1f;
64
- --c-border: #2a2a32;
65
- --c-mist: #3d3d48;
66
- --c-fog: #6b6b7a;
67
- --c-ghost: #9898a8;
68
- --c-pearl: #c8c8d8;
69
- --c-cream: #e8e4dc;
70
- --c-text: #c8c8d8;
 
 
 
 
 
 
 
 
 
 
71
  }
72
  body.light {
73
- --c-bg: #f5f0e8;
74
- --c-surface: #ede8df;
75
- --c-border: #d8d0c4;
76
- --c-mist: #c8bfb0;
77
- --c-fog: #8a8070;
78
- --c-ghost: #6a6058;
79
- --c-pearl: #3a3028;
80
- --c-cream: #1a1208;
81
- --c-text: #3a3028;
 
 
 
 
 
 
 
 
 
 
82
  }
83
 
84
-
85
- /* Scrollbar */
86
- ::-webkit-scrollbar { width: 4px; }
87
- ::-webkit-scrollbar-track { background: transparent; }
88
- ::-webkit-scrollbar-thumb { background: #3d3d48; border-radius: 2px; }
89
- ::-webkit-scrollbar-thumb:hover { background: #6b6b7a; }
90
-
91
- /* Prose styles for markdown */
92
- .prose-msg { line-height: 1.65; color: #c8c8d8; }
93
- .prose-msg p { margin: 0 0 0.6em; }
94
- .prose-msg p:last-child { margin-bottom: 0; }
95
- .prose-msg code {
96
- font-family: 'DM Mono', monospace;
97
- background: rgba(255,255,255,0.08);
98
- padding: 0.1em 0.35em;
99
- border-radius: 3px;
100
- font-size: 0.875em;
101
- color: #d4a853;
102
- }
103
- .prose-msg pre {
104
- background: #111116;
105
- border: 1px solid #2a2a32;
106
- border-radius: 6px;
107
- padding: 12px 14px;
108
- overflow-x: auto;
109
- margin: 0.6em 0;
110
- }
111
- .prose-msg pre code {
112
- background: transparent;
113
- padding: 0;
114
- color: #c8c8d8;
115
- font-size: 0.82em;
116
- }
117
- .prose-msg h1,.prose-msg h2,.prose-msg h3 {
118
- font-family: 'Fraunces', serif;
119
- color: #e8e4dc;
120
- margin: 0.8em 0 0.3em;
121
- font-weight: 700;
122
- }
123
- .prose-msg h1 { font-size: 1.25em; }
124
- .prose-msg h2 { font-size: 1.1em; }
125
- .prose-msg h3 { font-size: 1em; }
126
  .prose-msg ul, .prose-msg ol { padding-left: 1.25em; margin: 0.4em 0 0.6em; }
127
  .prose-msg li { margin: 0.2em 0; }
128
- .prose-msg blockquote {
129
- border-left: 2px solid #d4a853;
130
- padding-left: 0.75em;
131
- color: #9898a8;
132
- margin: 0.5em 0;
133
- font-style: italic;
134
- }
135
- .prose-msg a { color: #d4a853; text-decoration: underline; }
136
- .prose-msg strong { color: #e8e4dc; font-weight: 500; }
137
  .prose-msg table { border-collapse: collapse; width: 100%; margin: 0.5em 0; font-size: 0.85em; }
138
- .prose-msg th { background: #2a2a32; color: #e8e4dc; padding: 5px 8px; text-align: left; }
139
- .prose-msg td { border-top: 1px solid #2a2a32; padding: 5px 8px; }
140
 
141
- /* User bubble prose */
142
- .prose-user { line-height: 1.65; color: #1a1a1f; }
143
- .prose-user p { margin: 0 0 0.5em; }
144
- .prose-user p:last-child { margin-bottom: 0; }
145
  .prose-user code { background: rgba(0,0,0,0.12); padding: 0.1em 0.3em; border-radius: 3px; font-size: 0.875em; }
146
  .prose-user pre { background: rgba(0,0,0,0.15); border-radius: 5px; padding: 10px 12px; overflow-x: auto; margin: 0.5em 0; }
147
  .prose-user strong { font-weight: 500; }
148
 
149
- /* Textarea auto-resize trick */
150
  textarea { resize: none; overflow: hidden; }
151
-
152
- /* Sidebar transition */
153
  #sidebar { transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1); }
154
  #overlay { transition: opacity 0.3s ease; }
155
-
156
- /* Thinking dots */
157
  .dot-1 { animation: blink 1.2s 0s infinite; }
158
  .dot-2 { animation: blink 1.2s 0.2s infinite; }
159
  .dot-3 { animation: blink 1.2s 0.4s infinite; }
160
-
161
- .msg-anim { opacity: 0; animation: fadeUp 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards; }
162
-
163
- /* Model select */
164
  select { -webkit-appearance: none; appearance: none; }
165
-
166
- /* Focus ring override */
167
- textarea:focus, input:focus, select:focus { outline: none; box-shadow: 0 0 0 1.5px #d4a853; }
168
-
169
- /* Apply variables to all the fixed-color elements */
170
- body { background: var(--c-bg); }
171
- #sidebar { background: var(--c-surface); border-color: var(--c-border); }
172
- header { background: var(--c-surface); border-color: var(--c-border); }
173
- .border-ash { border-color: var(--c-border) !important; }
174
- .bg-smoke { background: var(--c-surface) !important; }
175
- .bg-ash { background: var(--c-mist) !important; }
176
- .bg-mist { background: var(--c-mist) !important; }
177
- .text-fog { color: var(--c-fog) !important; }
178
- .text-ghost { color: var(--c-ghost) !important; }
179
- .text-pearl { color: var(--c-pearl) !important; }
180
- .text-cream { color: var(--c-cream) !important; }
181
- .border-mist { border-color: var(--c-mist) !important; }
182
-
183
- /* Prose text in light mode */
184
- body.light .prose-msg { color: var(--c-text); }
185
- body.light .prose-msg code { background: rgba(0,0,0,0.08); color: #b06000; }
186
- body.light .prose-msg pre { background: #e8e0d4; border-color: var(--c-border); }
187
- body.light .prose-msg pre code { color: var(--c-text); }
188
- body.light .prose-msg strong { color: var(--c-cream); }
189
- body.light .prose-msg blockquote { color: var(--c-ghost); }
190
-
191
- /* Input/select backgrounds */
192
- body.light textarea,
193
- body.light input[type="text"],
194
- body.light input[type="password"],
195
- body.light input[type="number"],
196
- body.light select { background: var(--c-surface); color: var(--c-cream); }
197
-
198
- /* Conversation list hover */
199
- body.light #conv-list [class*="hover:bg-ash"]:hover { background: var(--c-border) !important; }
200
- body.light #conv-list [class*="bg-mist"] { background: var(--c-mist) !important; }
201
-
202
- /* Message container */
203
- body.light #messages { background: var(--c-bg); }
204
-
205
- /* Scrollbar in light mode */
206
- body.light ::-webkit-scrollbar-thumb { background: var(--c-mist); }
207
-
208
-
209
-
210
-
211
  </style>
212
  </head>
213
- <body class="h-screen flex overflow-hidden text-pearl">
214
 
215
  <!-- Privacy notice -->
216
  <div id="privacy-modal" class="fixed inset-0 z-50 flex items-center justify-center bg-black/70 backdrop-blur-sm">
@@ -579,7 +535,7 @@ tailwind.config = {
579
  </div>
580
 
581
  <!-- Input -->
582
- <div class="border-t border-ash bg-smoke px-4 py-3 flex-shrink-0">
583
  <div class="flex items-end gap-2 bg-ash rounded-lg border border-mist focus-within:border-amber transition-colors px-3 py-2">
584
  <textarea id="user-input"
585
  placeholder="Send a message..."
 
54
  }
55
  }
56
  </script>
57
+ <link href="https://fonts.googleapis.com/css2?family=DM+Mono:ital,wght@0,300;0,400;0,500;1,300&family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,700;1,9..144,300&display=swap" rel="stylesheet">
58
  <style>
59
  * { box-sizing: border-box; }
60
+ body { font-family: 'DM Mono', monospace; }
61
+
62
  body {
63
+ --bg: #0d0d0f;
64
+ --surface: #1a1a1f;
65
+ --border: #2a2a32;
66
+ --mist: #3d3d48;
67
+ --fog: #6b6b7a;
68
+ --ghost: #9898a8;
69
+ --pearl: #c8c8d8;
70
+ --cream: #e8e4dc;
71
+ --accent: #d4a853;
72
+ --accent2: #c47c3a;
73
+ --ink: #0d0d0f;
74
+ --user-bg: #d4a853;
75
+ --user-text: #0d0d0f;
76
+ --danger: #b85c5c;
77
+ --safe: #6b8f71;
78
+ --prose: #c8c8d8;
79
+ --code-bg: rgba(255,255,255,0.08);
80
+ --code-col: #d4a853;
81
+ --pre-bg: #111116;
82
  }
83
  body.light {
84
+ --bg: #f5f0e8;
85
+ --surface: #ede8df;
86
+ --border: #d8d0c4;
87
+ --mist: #cfc7b8;
88
+ --fog: #8a8070;
89
+ --ghost: #6a6058;
90
+ --pearl: #3a3028;
91
+ --cream: #1a1208;
92
+ --accent: #9a6010;
93
+ --accent2: #7a4a08;
94
+ --ink: #f5f0e8;
95
+ --user-bg: #9a6010;
96
+ --user-text: #f5f0e8;
97
+ --danger: #993030;
98
+ --safe: #3a6a3a;
99
+ --prose: #3a3028;
100
+ --code-bg: rgba(0,0,0,0.07);
101
+ --code-col: #7a4a08;
102
+ --pre-bg: #e4ddd0;
103
  }
104
 
105
+ body { background: var(--bg); color: var(--pearl); }
106
+ #sidebar { background: var(--surface); border-color: var(--border); }
107
+ header { background: var(--surface); border-color: var(--border); }
108
+ .bg-smoke { background: var(--surface) !important; }
109
+ .bg-ash { background: var(--mist) !important; }
110
+ .bg-mist { background: var(--mist) !important; }
111
+ .hover\:bg-ash:hover { background: var(--border) !important; }
112
+ .hover\:bg-mist:hover { background: var(--mist) !important; }
113
+ .border-ash { border-color: var(--border) !important; }
114
+ .border-mist { border-color: var(--mist) !important; }
115
+ .text-fog { color: var(--fog) !important; }
116
+ .text-ghost { color: var(--ghost) !important; }
117
+ .text-pearl { color: var(--pearl) !important; }
118
+ .text-cream { color: var(--cream) !important; }
119
+ .text-amber { color: var(--accent) !important; }
120
+ .text-ink { color: var(--user-text) !important; }
121
+ .text-rose { color: var(--danger) !important; }
122
+ .text-sage { color: var(--safe) !important; }
123
+ .bg-amber { background: var(--user-bg) !important; }
124
+ .hover\:bg-ember:hover { background: var(--accent2) !important; }
125
+ .bg-amber\/10 { background: color-mix(in srgb, var(--accent) 10%, transparent) !important; }
126
+ .bg-amber\/20 { background: color-mix(in srgb, var(--accent) 20%, transparent) !important; }
127
+ .border-amber\/25 { border-color: color-mix(in srgb, var(--accent) 25%, transparent) !important; }
128
+ .from-amber { --tw-gradient-from: var(--accent) !important; }
129
+ .to-ember { --tw-gradient-to: var(--accent2) !important; }
130
+ .bg-rose { background: var(--danger) !important; }
131
+ .hover\:text-rose:hover { color: var(--danger) !important; }
132
+ .hover\:text-sage:hover { color: var(--safe) !important; }
133
+ .hover\:text-pearl:hover { color: var(--pearl) !important; }
134
+ textarea, input, select { background: var(--mist); color: var(--cream); }
135
+
136
+ .prose-msg { line-height: 1.65; color: var(--prose); }
137
+ .prose-msg p { margin: 0 0 0.6em; } .prose-msg p:last-child { margin-bottom: 0; }
138
+ .prose-msg code { font-family: 'DM Mono', monospace; background: var(--code-bg); padding: 0.1em 0.35em; border-radius: 3px; font-size: 0.875em; color: var(--code-col); }
139
+ .prose-msg pre { background: var(--pre-bg); border: 1px solid var(--border); border-radius: 6px; padding: 12px 14px; overflow-x: auto; margin: 0.6em 0; }
140
+ .prose-msg pre code { background: transparent; padding: 0; color: var(--prose); font-size: 0.82em; }
141
+ .prose-msg h1,.prose-msg h2,.prose-msg h3 { font-family: 'Fraunces', serif; color: var(--cream); margin: 0.8em 0 0.3em; font-weight: 700; }
142
+ .prose-msg h1 { font-size: 1.25em; } .prose-msg h2 { font-size: 1.1em; } .prose-msg h3 { font-size: 1em; }
 
 
 
 
143
  .prose-msg ul, .prose-msg ol { padding-left: 1.25em; margin: 0.4em 0 0.6em; }
144
  .prose-msg li { margin: 0.2em 0; }
145
+ .prose-msg blockquote { border-left: 2px solid var(--accent); padding-left: 0.75em; color: var(--ghost); margin: 0.5em 0; font-style: italic; }
146
+ .prose-msg a { color: var(--accent); text-decoration: underline; }
147
+ .prose-msg strong { color: var(--cream); font-weight: 500; }
 
 
 
 
 
 
148
  .prose-msg table { border-collapse: collapse; width: 100%; margin: 0.5em 0; font-size: 0.85em; }
149
+ .prose-msg th { background: var(--mist); color: var(--cream); padding: 5px 8px; text-align: left; }
150
+ .prose-msg td { border-top: 1px solid var(--border); padding: 5px 8px; }
151
 
152
+ .prose-user { line-height: 1.65; color: var(--user-text); }
153
+ .prose-user p { margin: 0 0 0.5em; } .prose-user p:last-child { margin-bottom: 0; }
 
 
154
  .prose-user code { background: rgba(0,0,0,0.12); padding: 0.1em 0.3em; border-radius: 3px; font-size: 0.875em; }
155
  .prose-user pre { background: rgba(0,0,0,0.15); border-radius: 5px; padding: 10px 12px; overflow-x: auto; margin: 0.5em 0; }
156
  .prose-user strong { font-weight: 500; }
157
 
 
158
  textarea { resize: none; overflow: hidden; }
 
 
159
  #sidebar { transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1); }
160
  #overlay { transition: opacity 0.3s ease; }
 
 
161
  .dot-1 { animation: blink 1.2s 0s infinite; }
162
  .dot-2 { animation: blink 1.2s 0.2s infinite; }
163
  .dot-3 { animation: blink 1.2s 0.4s infinite; }
 
 
 
 
164
  select { -webkit-appearance: none; appearance: none; }
165
+ textarea:focus, input:focus, select:focus { outline: none; box-shadow: 0 0 0 1.5px var(--accent); }
166
+ #input-footer { padding-bottom: max(12px, env(safe-area-inset-bottom)); }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
167
  </style>
168
  </head>
169
+ <body class="h-screen flex overflow-hidden">
170
 
171
  <!-- Privacy notice -->
172
  <div id="privacy-modal" class="fixed inset-0 z-50 flex items-center justify-center bg-black/70 backdrop-blur-sm">
 
535
  </div>
536
 
537
  <!-- Input -->
538
+ <div id="input-footer" class="border-t border-ash bg-smoke px-4 py-3 flex-shrink-0">
539
  <div class="flex items-end gap-2 bg-ash rounded-lg border border-mist focus-within:border-amber transition-colors px-3 py-2">
540
  <textarea id="user-input"
541
  placeholder="Send a message..."