wynai commited on
Commit
0510bb9
·
verified ·
1 Parent(s): 8573ae0

Update custom.css

Browse files
Files changed (1) hide show
  1. custom.css +153 -5
custom.css CHANGED
@@ -1,3 +1,140 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  html:not(:has(#logo))::before,
2
  html:not(:has(#logo))::after,
3
  body:not(:has(#logo))::after {
@@ -46,7 +183,7 @@ html::after {
46
  fade-out 1s ease forwards 10s;
47
  }
48
  body::after {
49
- content: var(--label, "Đang chuẩn bị mọi thứ...");
50
  position: fixed;
51
  left: 50%;
52
  transform: translateX(-50%);
@@ -79,16 +216,16 @@ html.light body::after { color: #1f2937; }
79
  10% { --label: "Truy xuất CSDL"; opacity: 0; }
80
  11.5% { opacity: 1; }
81
  23% { opacity: 0; }
82
- 24% { --label: "Kiểm tra API/MCP server"; opacity: 0; }
83
  25.5% { opacity: 1; }
84
  29% { opacity: 0; }
85
  30% { --label: "Xây dựng giao diện"; opacity: 0; }
86
  31.5% { opacity: 1; }
87
  45% { opacity: 0; }
88
- 46% { --label: "Xử dữ liệu"; opacity: 0; }
89
  47.5% { opacity: 1; }
90
  68% { opacity: 0; }
91
- 69% { --label: "Kích hoạt Tensorflow"; opacity: 0; }
92
  70.5% { opacity: 1; }
93
  87% { opacity: 0; }
94
  88% { --label: "Kiểm tra lại lần cuối"; opacity: 0; }
@@ -103,4 +240,15 @@ html.light body::after { color: #1f2937; }
103
  @media (prefers-reduced-motion: reduce) {
104
  html::after { animation: loading-grow 4s linear forwards, fade-out 1s ease forwards 10s; }
105
  body::after { animation: fade-out 1s ease forwards 10s; }
106
- }
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* ===========================
2
+ WynGPT - custom.css (updated)
3
+ =========================== */
4
+
5
+ /* === Voice mode button: gradient + blur + glow === */
6
+ [aria-label="Voice mode"]{
7
+ background: linear-gradient(135deg,#ffffff,#cceeff,#99ddff,#66ccff,#33ccff,#00ccff);
8
+ background-size: 600% 600%;
9
+ animation: blendShift 16s ease-in-out infinite;
10
+ color:#fff;border:none;
11
+ backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
12
+ box-shadow: 0 0 20px rgba(0,204,255,.4),0 0 40px rgba(0,204,255,.3),0 0 60px rgba(0,204,255,.2);
13
+ transition:.3s; position:relative; z-index:1;
14
+ }
15
+ @keyframes blendShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
16
+
17
+ /* === Send button === */
18
+ /*
19
+ #send-message-button{ background:#33ccff !important; }
20
+ html.dark #send-message-button, :root.dark #send-message-button{ background:#0099ff !important; }
21
+ */
22
+
23
+ /* === Tooltip (Tippy) blur === */
24
+ .tippy-box{
25
+ background:rgba(255,255,255,.1) !important;
26
+ backdrop-filter: blur(10px) !important; -webkit-backdrop-filter: blur(10px) !important;
27
+ color:#000 !important; border:1px solid rgba(0,0,0,.1) !important;
28
+ }
29
+ html.dark .tippy-box, :root.dark .tippy-box{
30
+ background:rgba(0,0,0,.1) !important;
31
+ backdrop-filter: blur(10px) !important; -webkit-backdrop-filter: blur(10px) !important;
32
+ color:#fff !important; border:1px solid rgba(255,255,255,.1) !important;
33
+ }
34
+
35
+ /* ================= (Sidebar styles REMOVED as requested) ================= */
36
+
37
+ /* ================= Khung nhập tin nhắn ================= */
38
+ html.light #message-textarea{
39
+ backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
40
+ background: rgba(255,255,255,.5) !important; color:#000 !important;
41
+ border:1px solid rgba(0,0,0,.1); border-radius:8px;
42
+ }
43
+ html.dark #message-textarea, :root.dark #message-textarea{
44
+ backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
45
+ background: rgba(0,0,0,.35) !important; color:#fff !important;
46
+ border:1px solid rgba(255,255,255,.1); border-radius:8px;
47
+ }
48
+
49
+ /* ================= Popup / Menu ================= */
50
+ html:has([role="dialog"][data-state="open"]), html:has([role="menu"][data-state="open"]) { position:relative; }
51
+ html.light:has([role="dialog"][data-state="open"])::before,
52
+ html.light:has([role="menu"][data-state="open"])::before{
53
+ content:""; position:fixed; inset:0; z-index: 40;
54
+ background: rgba(255,255,255,.1);
55
+ backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
56
+ pointer-events:none;
57
+ }
58
+ html.dark:has([role="dialog"][data-state="open"])::before,
59
+ html.dark:has([role="menu"][data-state="open"])::before{
60
+ content:""; position:fixed; inset:0; z-index: 40;
61
+ background: rgba(0,0,0,.18);
62
+ backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);
63
+ pointer-events:none;
64
+ }
65
+
66
+ /* Popup/menu mờ ĐẬM hơn với màu blur mới */
67
+ html.light [role="dialog"], html.light [role="menu"],
68
+ html.dark [role="dialog"], html.dark [role="menu"]{
69
+ background: rgba(23,23,23,0.5) !important;
70
+ backdrop-filter: blur(10px) !important; -webkit-backdrop-filter: blur(10px) !important;
71
+ color: inherit !important;
72
+ border-radius:12px; overflow:hidden;
73
+ border:1px solid rgba(255,255,255,.12);
74
+ position:relative; z-index: 50 !important;
75
+ }
76
+
77
+ /* ================= Cài đặt: POPUP (center, bigger) ================= */
78
+ [role="dialog"]{
79
+ position: fixed !important;
80
+ top: 50% !important; left: 50% !important;
81
+ transform: translate(-50%,-50%) !important;
82
+ width: min(960px, 96vw) !important;
83
+ max-height: 90vh !important; height: auto !important;
84
+ margin:0 !important; max-width:none !important;
85
+ border-radius:16px !important;
86
+ overflow: auto !important;
87
+ }
88
+
89
+ /* Không blur các phần con bên trong dialog */
90
+ [role="dialog"] *{
91
+ backdrop-filter: none !important;
92
+ -webkit-backdrop-filter: none !important;
93
+ background-color: transparent;
94
+ }
95
+
96
+ /* Nút LƯU */
97
+ [role="dialog"] button:is(#save-button, [type="submit"], [aria-label*="Lưu" i], [aria-label*="Save" i], [data-action="save"], [data-testid*="save" i], [id*="save" i], [class*="save" i]){
98
+ border-radius: 10px; padding: .55rem 1rem; font-weight:600;
99
+ border:1px solid rgba(0,0,0,.8);
100
+ background:#000; color:#fff;
101
+ transition: transform .12s ease, opacity .2s ease;
102
+ }
103
+ [role="dialog"] button:is(#save-button, [type="submit"], [aria-label*="Lưu" i], [aria-label*="Save" i], [data-action="save"], [data-testid*="save" i], [id*="save" i], [class*="save" i]):hover{ opacity:.9 }
104
+ [role="dialog"] button:is(#save-button, [type="submit"], [aria-label*="Lưu" i], [aria-label*="Save" i], [data-action="save"], [data-testid*="save" i], [id*="save" i], [class*="save" i]):active{ transform: translateY(1px) }
105
+ html.dark [role="dialog"] button:is(#save-button, [type="submit"], [aria-label*="Lưu" i], [aria-label*="Save" i], [data-action="save"], [data-testid*="save" i], [id*="save" i], [class*="save" i]){
106
+ background:#fff; color:#000; border-color: rgba(255,255,255,.85);
107
+ }
108
+
109
+ /* Toast/thông báo luôn rõ */
110
+ [role="status"], .toast, [data-sonner-toaster]{
111
+ position:relative; z-index:60;
112
+ backdrop-filter:none !important; -webkit-backdrop-filter:none !important;
113
+ }
114
+
115
+ [role="switch"]{
116
+ position: relative;
117
+ display:inline-flex; align-items:center; justify-content:flex-start;
118
+ width: 42px; height: 24px; border-radius:999px;
119
+ background: rgba(0,0,0,.2);
120
+ transition: background-color .25s ease, box-shadow .25s ease;
121
+ }
122
+ html.dark [role="switch"]{ background: rgba(255,255,255,.25); }
123
+
124
+ [role="switch"]::before{
125
+ content:""; position:absolute; top:3px; left:3px; width:18px; height:18px;
126
+ border-radius:999px; background:#fff; box-shadow:0 1px 2px rgba(0,0,0,.25);
127
+ transition: transform .25s ease;
128
+ }
129
+ html.dark [role="switch"]::before{ background:#000; box-shadow:0 1px 2px rgba(0,0,0,.35); }
130
+
131
+ [role="switch"][aria-checked="true"] {
132
+ background-color: #0099ff !important; /* xanh dương */
133
+ box-shadow: 0 0 10px rgba(0, 153, 255, 0.7) !important; /* đổ bóng xanh */
134
+ transition: background-color 0.3s ease, box-shadow 0.3s ease; /* mượt khi chuyển */
135
+ }
136
+ [role="switch"][aria-checked="true"]::before{ transform: translateX(18px); }
137
+
138
  html:not(:has(#logo))::before,
139
  html:not(:has(#logo))::after,
140
  body:not(:has(#logo))::after {
 
183
  fade-out 1s ease forwards 10s;
184
  }
185
  body::after {
186
+ content: var(--label, "Đang chuẩn bị mọi thứ");
187
  position: fixed;
188
  left: 50%;
189
  transform: translateX(-50%);
 
216
  10% { --label: "Truy xuất CSDL"; opacity: 0; }
217
  11.5% { opacity: 1; }
218
  23% { opacity: 0; }
219
+ 24% { --label: "Kiểm tra API"; opacity: 0; }
220
  25.5% { opacity: 1; }
221
  29% { opacity: 0; }
222
  30% { --label: "Xây dựng giao diện"; opacity: 0; }
223
  31.5% { opacity: 1; }
224
  45% { opacity: 0; }
225
+ 46% { --label: "Đang kết nối đến AWS"; opacity: 0; }
226
  47.5% { opacity: 1; }
227
  68% { opacity: 0; }
228
+ 69% { --label: "Khởi động Ollama"; opacity: 0; }
229
  70.5% { opacity: 1; }
230
  87% { opacity: 0; }
231
  88% { --label: "Kiểm tra lại lần cuối"; opacity: 0; }
 
240
  @media (prefers-reduced-motion: reduce) {
241
  html::after { animation: loading-grow 4s linear forwards, fade-out 1s ease forwards 10s; }
242
  body::after { animation: fade-out 1s ease forwards 10s; }
243
+ }
244
+
245
+ /* Light mode */
246
+ #send-message-button {
247
+ background-color: #33ccff !important;
248
+ }
249
+
250
+ /* Dark mode */
251
+ html.dark #send-message-button,
252
+ :root.dark #send-message-button {
253
+ background-color: #0099ff !important;
254
+ }