Spaces:
Running
Running
| /************************** | |
| WynGPT - custom.css (final optimized + enlarged settings popup) | |
| ***************************/ | |
| /* === Voice mode button: gradient + blur + glow === */ | |
| [aria-label="Voice mode"] { | |
| background: linear-gradient(135deg,#ffffff,#cceeff,#99ddff,#66ccff,#33ccff,#00ccff); | |
| background-size: 600% 600%; | |
| animation: blendShift 16s ease-in-out infinite; | |
| color: #fff; border: none; | |
| backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); | |
| 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); | |
| transition: .3s; position: relative; z-index: 1; | |
| } | |
| @keyframes blendShift { | |
| 0% { background-position: 0% 50% } | |
| 50% { background-position: 100% 50% } | |
| 100% { background-position: 0% 50% } | |
| } | |
| /* === Tooltip (Tippy) blur === */ | |
| .tippy-box { | |
| background: rgba(255,255,255,.5) ; | |
| backdrop-filter: blur(10px) ; -webkit-backdrop-filter: blur(10px) ; | |
| color: #000 ; border: 1px solid rgba(0,0,0,.1) ; | |
| } | |
| html.dark .tippy-box, :root.dark .tippy-box { | |
| background: rgba(0,0,0,.5) ; | |
| backdrop-filter: blur(10px) ; -webkit-backdrop-filter: blur(10px) ; | |
| color: #fff ; border: 1px solid rgba(255,255,255,.1) ; | |
| } | |
| /* ================= Khung nhập tin nhắn ================= */ | |
| html.light #message-textarea { | |
| backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); | |
| background: rgba(255,255,255,.5) ; color: #000 ; | |
| border: 1px solid rgba(0,0,0,.1); border-radius: 8px; | |
| } | |
| html.dark #message-textarea, :root.dark #message-textarea { | |
| backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); | |
| background: rgba(0,0,0,.35) ; color: #fff ; | |
| border: 1px solid rgba(255,255,255,.1); border-radius: 8px; | |
| } | |
| /* ================= Popup / Menu (nền blur toàn trang) ================= */ | |
| html:has([role="dialog"][data-state="open"]), | |
| html:has([role="menu"][data-state="open"]) { position: relative; } | |
| html.light:has([role="dialog"][data-state="open"])::before, | |
| html.light:has([role="menu"][data-state="open"])::before { | |
| content: ""; position: fixed; inset: 0; z-index: 40; | |
| background: rgba(255,255,255,.1); | |
| backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); | |
| pointer-events: none; | |
| } | |
| html.dark:has([role="dialog"][data-state="open"])::before, | |
| html.dark:has([role="menu"][data-state="open"])::before { | |
| content: ""; position: fixed; inset: 0; z-index: 40; | |
| background: rgba(0,0,0,.18); | |
| backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); | |
| pointer-events: none; | |
| } | |
| /* ================= Cài đặt: POPUP (to hơn, mềm hơn, rõ hơn) ================= */ | |
| [role="dialog"] { | |
| position: fixed ; | |
| top: 50% ; | |
| left: 50% ; | |
| transform: translate(-50%, -50%) ; | |
| width: min(1100px, 96vw) ; | |
| max-height: 92vh ; | |
| height: auto ; | |
| margin: 0 ; | |
| padding: 2.25rem 2.5rem ; | |
| border-radius: 20px ; | |
| overflow: auto ; | |
| box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45); | |
| backdrop-filter: blur(18px) ; | |
| -webkit-backdrop-filter: blur(18px) ; | |
| } | |
| html.light [role="dialog"] { | |
| background: rgba(245, 245, 245, 0.75) ; | |
| border: 1px solid rgba(0, 0, 0, 0.08); | |
| } | |
| html.dark [role="dialog"] { | |
| background: rgba(20, 20, 20, 0.72) ; | |
| border: 1px solid rgba(255, 255, 255, 0.1); | |
| } | |
| /* === Nút Lưu === */ | |
| [role="dialog"] button:is(#save-button, [type="submit"], [aria-label*="Lưu" i]) { | |
| font-size: 0.95rem; | |
| padding: 0.7rem 1.75rem; | |
| border-radius: 999px; | |
| font-weight: 600; | |
| background: linear-gradient(90deg, #0099ff, #00ccff); | |
| border: none; | |
| color: #fff; | |
| box-shadow: 0 0 16px rgba(0, 153, 255, 0.6); | |
| transition: all 0.25s ease; | |
| } | |
| [role="dialog"] button:is(#save-button, [type="submit"], [aria-label*="Lưu" i]):hover { | |
| transform: translateY(-1px); | |
| box-shadow: 0 0 22px rgba(0, 153, 255, 0.8); | |
| } | |
| html.dark [role="dialog"] button:is(#save-button, [type="submit"], [aria-label*="Lưu" i]) { | |
| background: linear-gradient(90deg, #ffffff, #e5e5e5); | |
| color: #000; | |
| } | |
| /* === Textarea & nội dung === */ | |
| [role="dialog"] textarea { | |
| min-height: 110px ; | |
| font-size: 0.95rem; | |
| padding: 0.8rem 1rem; | |
| border-radius: 10px; | |
| width: 100%; | |
| background: rgba(255,255,255,0.05); | |
| border: 1px solid rgba(255,255,255,0.15); | |
| } | |
| html.dark [role="dialog"] textarea { | |
| background: rgba(0,0,0,0.3); | |
| border: 1px solid rgba(255,255,255,0.1); | |
| } | |
| [role="dialog"] .font-medium { | |
| font-size: 0.96rem ; | |
| letter-spacing: 0.25px; | |
| } | |
| [role="dialog"] > * { | |
| margin-bottom: 1.2rem ; | |
| } | |
| /* ================= Switch (toggle) ================= */ | |
| [role="switch"] { | |
| position: relative; | |
| display: inline-flex; align-items: center; justify-content: flex-start; | |
| width: 36px; height: 20px; border-radius: 999px; | |
| background: rgba(255,255,255,.2); | |
| transition: background-color .25s ease, box-shadow .25s ease; | |
| } | |
| html.dark [role="switch"] { background: rgba(255,255,255,.2); } | |
| [role="switch"]::before { | |
| content: ""; position: absolute; top: 2px; left: 2px; width: 16px; height: 16px; | |
| border-radius: 999px; background: #fff; box-shadow: 0 1px 2px rgba(255,255,255,.25); | |
| transition: transform .25s ease; | |
| } | |
| html.dark [role="switch"]::before { background: #000; box-shadow: 0 1px 2px rgba(255,255,255,.35); } | |
| [role="switch"][aria-checked="true"] { | |
| background-color: #0099ff ; | |
| box-shadow: 0 0 10px rgba(0,153,255,0.7) ; | |
| } | |
| [role="switch"][aria-checked="true"]::before { transform: translateX(16px); } | |
| /* === Send button === */ | |
| #send-message-button { background-color: #33ccff ; } | |
| html.dark #send-message-button, :root.dark #send-message-button { background-color: #0099ff ; } | |
| /* === Sidebar glass === */ | |
| #sidebar { | |
| backdrop-filter: blur(10px); | |
| -webkit-backdrop-filter: blur(10px); | |
| background-color: rgba(255, 255, 255, 0.8) ; | |
| } | |
| html.dark #sidebar, :root.dark #sidebar { | |
| backdrop-filter: blur(10px); | |
| -webkit-backdrop-filter: blur(10px); | |
| background-color: rgba(13, 13, 13, 0.5) ; | |
| } | |