Agent-JAE/packages/web-ui/example/src/app.css

762 lines
20 KiB
CSS

@import "tailwindcss";
@theme {
--color-primary: #6d5acd;
--color-primary-foreground: #ffffff;
--color-secondary: #2a2a3e;
--color-secondary-foreground: #e0e0e0;
--color-background: #0f0f1a;
--color-foreground: #e8e8f0;
--color-muted: #1a1a2e;
--color-muted-foreground: #8888aa;
--color-border: #2a2a40;
--color-card: #161625;
--color-accent: #7c6fe0;
}
/* ===== BASE ===== */
html, body {
background: var(--color-background);
color: var(--color-foreground);
font-family: 'Inter', system-ui, -apple-system, sans-serif;
overflow: hidden;
height: 100vh;
}
::selection {
background: rgba(109, 90, 205, 0.3);
color: var(--color-foreground);
}
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(136,136,170,0.2); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(136,136,170,0.4); }
/* ===== GLASSMORPHISM ===== */
.jae-glass {
background: rgba(22, 22, 37, 0.75);
backdrop-filter: blur(20px) saturate(1.3);
-webkit-backdrop-filter: blur(20px) saturate(1.3);
border: 1px solid rgba(255, 255, 255, 0.06);
}
.jae-glass-sm {
background: rgba(30, 30, 50, 0.5);
backdrop-filter: blur(12px) saturate(1.2);
-webkit-backdrop-filter: blur(12px) saturate(1.2);
border: 1px solid rgba(255, 255, 255, 0.04);
}
.jae-glass-strong {
background: rgba(15, 15, 26, 0.9);
backdrop-filter: blur(30px) saturate(1.5);
-webkit-backdrop-filter: blur(30px) saturate(1.5);
border: 1px solid rgba(255, 255, 255, 0.08);
}
/* ===== ANIMATIONS ===== */
@keyframes jae-fade-in {
from { opacity: 0; transform: translateY(8px); }
to { opacity: 1; transform: translateY(0); }
}
@keyframes jae-scale-in {
from { opacity: 0; transform: scale(0.95); }
to { opacity: 1; transform: scale(1); }
}
@keyframes jae-slide-in {
from { opacity: 0; transform: translateX(-20px); }
to { opacity: 1; transform: translateX(0); }
}
@keyframes jae-slide-up {
from { opacity: 0; transform: translateY(16px); }
to { opacity: 1; transform: translateY(0); }
}
@keyframes jae-wave {
0% { height: 3px; }
100% { height: 16px; }
}
@keyframes jae-float {
0%, 100% { transform: translateY(0px); }
50% { transform: translateY(-6px); }
}
@keyframes jae-pulse-angry {
0%, 100% { transform: scale(1); filter: brightness(1); }
50% { transform: scale(1.1); filter: brightness(1.3) hue-rotate(-10deg); }
}
@keyframes jae-shake {
0%, 100% { transform: translateX(0); }
10%, 30%, 50%, 70%, 90% { transform: translateX(-3px); }
20%, 40%, 60%, 80% { transform: translateX(3px); }
}
@keyframes jae-glow-pulse {
0%, 100% { box-shadow: 0 0 5px rgba(109, 90, 205, 0.2); }
50% { box-shadow: 0 0 20px rgba(109, 90, 205, 0.4); }
}
@keyframes jae-shimmer {
0% { background-position: -200% 0; }
100% { background-position: 200% 0; }
}
@keyframes jae-crack-pulse {
0%, 100% { opacity: var(--crack-opacity, 1); }
50% { opacity: calc(var(--crack-opacity, 1) * 0.7); }
}
.jae-fade-in { animation: jae-fade-in 0.3s ease-out; }
.jae-scale-in { animation: jae-scale-in 0.2s ease-out; }
.jae-slide-in { animation: jae-slide-in 0.3s ease-out; }
.jae-slide-up { animation: jae-slide-up 0.25s ease-out; }
.jae-float { animation: jae-float 3s ease-in-out infinite; }
.jae-shake { animation: jae-shake 0.5s ease-in-out; }
/* ===== HOVER & CLICK TRANSITIONS ===== */
button, [role="button"] {
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
button:active, [role="button"]:active {
transform: scale(0.97);
}
/* ===== BROKEN GLASS OVERLAY ===== */
.jae-cracked-overlay {
position: fixed;
inset: 0;
pointer-events: none;
z-index: 200;
background:
radial-gradient(ellipse at 30% 40%, rgba(220,38,38,0.08) 0%, transparent 50%),
radial-gradient(ellipse at 70% 60%, rgba(220,38,38,0.05) 0%, transparent 50%);
transition: opacity 1s ease;
}
.jae-cracked-overlay::before {
content: "";
position: absolute;
inset: 0;
background-image:
linear-gradient(135deg, transparent 40%, rgba(255,255,255,0.03) 40.5%, transparent 41%),
linear-gradient(225deg, transparent 35%, rgba(255,255,255,0.02) 35.5%, transparent 36%),
linear-gradient(45deg, transparent 55%, rgba(255,255,255,0.025) 55.5%, transparent 56%),
linear-gradient(315deg, transparent 25%, rgba(255,255,255,0.015) 25.5%, transparent 26%),
linear-gradient(160deg, transparent 45%, rgba(255,255,255,0.02) 45.5%, transparent 46%),
linear-gradient(200deg, transparent 60%, rgba(255,255,255,0.018) 60.5%, transparent 61%),
linear-gradient(80deg, transparent 30%, rgba(255,255,255,0.022) 30.5%, transparent 31%);
animation: jae-crack-pulse 2s ease-in-out infinite;
}
/* ===== CHAT MESSAGE ANIMATIONS ===== */
.message-enter {
animation: jae-slide-up 0.3s ease-out;
}
/* Hide tool outputs when toggled off */
/* ===== SHIMMER LOADING ===== */
.jae-shimmer {
background: linear-gradient(90deg, transparent 0%, rgba(109,90,205,0.08) 50%, transparent 100%);
background-size: 200% 100%;
animation: jae-shimmer 2s infinite;
}
/* ===== SIDEBAR ===== */
.jae-sidebar {
scrollbar-width: none;
}
.jae-sidebar:hover {
scrollbar-width: thin;
}
.jae-sidebar::-webkit-scrollbar {
width: 0;
}
.jae-sidebar:hover::-webkit-scrollbar {
width: 4px;
}
/* ===== INPUT GLOW ===== */
.jae-input-glow:focus-within {
box-shadow: 0 0 0 1px rgba(109, 90, 205, 0.3), 0 0 20px rgba(109, 90, 205, 0.1);
border-color: rgba(109, 90, 205, 0.4);
transition: all 0.3s ease;
}
/* ===== DARK MODE OVERRIDES ===== */
.dark input, .dark textarea, .dark select {
color: var(--color-foreground);
background: rgba(30, 30, 50, 0.5);
}
/* Fix keyboard shortcuts text */
.dark .kbd-text, .dark [class*="keyboard"] {
color: var(--color-foreground) !important;
}
.dark kbd {
background: rgba(42, 42, 62, 0.8);
color: var(--color-foreground);
border: 1px solid rgba(255,255,255,0.1);
}
/* ===== PROVIDER TABS ===== */
.provider-tab {
transition: all 0.2s ease;
border-bottom: 2px solid transparent;
}
.provider-tab:hover {
background: rgba(109, 90, 205, 0.1);
}
.provider-tab.active {
border-bottom-color: var(--color-primary);
color: var(--color-foreground);
}
/* ===== RESIZE HANDLE ===== */
.jae-resize-handle {
width: 4px;
cursor: col-resize;
background: transparent;
transition: background 0.2s;
flex-shrink: 0;
}
.jae-resize-handle:hover,
.jae-resize-handle:active {
background: rgba(109, 90, 205, 0.4);
}
/* ===== TOOL RESULTS IN CHAT ===== */
.inline-browser-result {
display: none;
}
/* ===== AGENT INTERFACE OVERRIDES ===== */
[class*="AgentInterface"] {
background: transparent !important;
}
/* ===== VIEW TOGGLE CONTROLS ===== */
/* Hide tool call blocks when tools toggled off */
/* Hide thinking/reasoning blocks */
/* Hide system messages */
/* Hide timestamps on messages */
/* Hide browser tool output in chat when browser panel is open */
/* Smooth transition for tool-message visibility */
tool-message {
transition: opacity 0.2s ease, max-height 0.3s ease;
}
/* ===== SIDEBAR HOVER SCROLLBAR ===== */
.jae-sidebar {
scrollbar-width: none;
-ms-overflow-style: none;
}
.jae-sidebar::-webkit-scrollbar {
width: 4px;
background: transparent;
}
.jae-sidebar::-webkit-scrollbar-thumb {
background: transparent;
border-radius: 4px;
transition: background 0.3s ease;
}
.jae-sidebar:hover {
scrollbar-width: thin;
scrollbar-color: rgba(255,255,255,0.15) transparent;
}
.jae-sidebar:hover::-webkit-scrollbar-thumb {
background: rgba(255,255,255,0.15);
}
.jae-sidebar:hover::-webkit-scrollbar-thumb:hover {
background: rgba(255,255,255,0.25);
}
/* ===== GLASSMORPHISM ===== */
.jae-glass {
background: rgba(255,255,255,0.03) !important;
backdrop-filter: blur(16px) saturate(1.2);
-webkit-backdrop-filter: blur(16px) saturate(1.2);
border: 1px solid rgba(255,255,255,0.08) !important;
box-shadow: 0 8px 32px rgba(0,0,0,0.3), inset 0 1px 0 rgba(255,255,255,0.05);
}
.jae-glass-subtle {
background: rgba(255,255,255,0.02) !important;
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
border: 1px solid rgba(255,255,255,0.05) !important;
}
.jae-glass-strong {
background: rgba(255,255,255,0.06) !important;
backdrop-filter: blur(24px) saturate(1.4);
-webkit-backdrop-filter: blur(24px) saturate(1.4);
border: 1px solid rgba(255,255,255,0.12) !important;
box-shadow: 0 12px 40px rgba(0,0,0,0.4), inset 0 1px 0 rgba(255,255,255,0.08);
}
/* ===== SMOOTH TRANSITIONS ===== */
* {
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
button, a, input, [role="button"] {
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
button:active, [role="button"]:active {
transform: scale(0.97);
}
/* ===== SCALE-IN ANIMATION ===== */
@keyframes jae-scale-in {
from { opacity: 0; transform: scale(0.95) translateY(8px); }
to { opacity: 1; transform: scale(1) translateY(0); }
}
.jae-scale-in {
animation: jae-scale-in 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}
/* ===== SHAKE ANIMATION (anger) ===== */
@keyframes jae-shake {
0% { transform: translateX(0); }
25% { transform: translateX(-4px) rotate(-0.5deg); }
50% { transform: translateX(4px) rotate(0.5deg); }
75% { transform: translateX(-2px) rotate(-0.3deg); }
100% { transform: translateX(0); }
}
/* ===== CRACK OVERLAY ===== */
.jae-crack-overlay {
position: fixed;
inset: 0;
z-index: 9999;
background: radial-gradient(ellipse at 30% 40%, transparent 30%, rgba(0,0,0,0.02) 31%, transparent 32%),
radial-gradient(ellipse at 70% 60%, transparent 25%, rgba(0,0,0,0.02) 26%, transparent 27%);
background-size: 100% 100%;
pointer-events: none;
/* SVG crack lines */
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='800' height='600'%3E%3Cpath d='M400 0 L395 80 L370 150 L380 200 L350 280 L340 350 L360 400 L345 500 L350 600' stroke='rgba(255,255,255,0.15)' stroke-width='2' fill='none'/%3E%3Cpath d='M395 80 L430 120 L460 110' stroke='rgba(255,255,255,0.1)' stroke-width='1.5' fill='none'/%3E%3Cpath d='M370 150 L330 180 L300 170' stroke='rgba(255,255,255,0.1)' stroke-width='1.5' fill='none'/%3E%3Cpath d='M380 200 L420 230 L450 220 L480 250' stroke='rgba(255,255,255,0.08)' stroke-width='1' fill='none'/%3E%3Cpath d='M350 280 L310 310 L280 300' stroke='rgba(255,255,255,0.08)' stroke-width='1' fill='none'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: center;
}
/* ===== ANGRY PULSE ===== */
@keyframes jae-angry-pulse {
0%, 100% { transform: scale(1); }
50% { transform: scale(1.3); filter: brightness(1.5); }
}
.jae-angry-pulse {
animation: jae-angry-pulse 0.5s ease-in-out infinite;
}
/* ===== TYPING WAVEFORM ===== */
@keyframes jae-wave {
0%, 60%, 100% { transform: scaleY(0.3); }
30% { transform: scaleY(1); }
}
.jae-typing-wave {
display: inline-flex;
align-items: center;
gap: 2px;
height: 16px;
}
.jae-typing-wave span {
display: inline-block;
width: 3px;
height: 16px;
border-radius: 2px;
background: currentColor;
opacity: 0.6;
animation: jae-wave 1.2s ease-in-out infinite;
}
.jae-typing-wave span:nth-child(1) { animation-delay: 0s; }
.jae-typing-wave span:nth-child(2) { animation-delay: 0.1s; }
.jae-typing-wave span:nth-child(3) { animation-delay: 0.2s; }
.jae-typing-wave span:nth-child(4) { animation-delay: 0.3s; }
.jae-typing-wave span:nth-child(5) { animation-delay: 0.4s; }
/* ===== TICKER PULSE ===== */
@keyframes jae-ticker-pulse {
0%, 100% { opacity: 0.4; }
50% { opacity: 1; }
}
.jae-ticker-pulse {
animation: jae-ticker-pulse 1.5s ease-in-out infinite;
}
/* ===== MOOD EMOJI FLOAT ===== */
.jae-mood-emoji {
transition: transform 0.3s ease;
}
.jae-mood-emoji:hover {
transform: scale(1.3) rotate(5deg);
}
/* ===== TOOLTIP PEEK ===== */
.jae-peek-tooltip {
position: absolute;
z-index: 100;
max-width: 300px;
padding: 8px 12px;
border-radius: 10px;
background: rgba(15,15,20,0.95);
backdrop-filter: blur(12px);
border: 1px solid rgba(255,255,255,0.1);
box-shadow: 0 8px 24px rgba(0,0,0,0.5);
font-size: 11px;
line-height: 1.4;
color: rgba(255,255,255,0.8);
pointer-events: none;
animation: jae-scale-in 0.15s ease;
}
/* ===== HOVER GLOW EFFECT ===== */
.jae-hover-glow {
position: relative;
overflow: hidden;
}
.jae-hover-glow::after {
content: '';
position: absolute;
inset: 0;
background: radial-gradient(circle at var(--mouse-x, 50%) var(--mouse-y, 50%), rgba(255,255,255,0.06) 0%, transparent 60%);
opacity: 0;
transition: opacity 0.3s ease;
pointer-events: none;
}
.jae-hover-glow:hover::after {
opacity: 1;
}
/* ===== FADE IN MESSAGES ===== */
@keyframes jae-msg-in {
from { opacity: 0; transform: translateY(12px); }
to { opacity: 1; transform: translateY(0); }
}
.jae-msg-enter {
animation: jae-msg-in 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
/* ===== VIEW TOGGLE SELECTORS (targeting actual DOM elements) ===== */
/* Hide tool messages */
.hide-tools tool-message {
display: none !important;
}
/* Hide thinking blocks */
.hide-thinking thinking-block {
display: none !important;
}
/* Hide system messages - target role attribute and system-related elements */
.hide-system [data-role="system"],
.hide-system .system-message,
.hide-system aborted-message {
display: none !important;
}
/* Hide timestamps */
.hide-timestamps time,
.hide-timestamps [data-timestamp],
.hide-timestamps .message-timestamp,
.hide-timestamps .text-muted-foreground:has(time) {
display: none !important;
}
/* Hide browser tool output in chat when side panel is open */
.browser-panel-active tool-message[data-tool-name="browser"],
.browser-panel-active tool-message[data-tool-name="web_fetch"],
.browser-panel-active tool-message[data-tool-name="navigate"] {
display: none !important;
}
/* ===== SIDEBAR SCROLLBAR (show on hover) ===== */
.jae-sidebar {
scrollbar-width: none;
-ms-overflow-style: none;
}
.jae-sidebar::-webkit-scrollbar {
width: 0;
background: transparent;
}
.jae-sidebar:hover {
scrollbar-width: thin;
scrollbar-color: rgba(255,255,255,0.15) transparent;
}
.jae-sidebar:hover::-webkit-scrollbar {
width: 5px;
}
.jae-sidebar:hover::-webkit-scrollbar-thumb {
background: rgba(255,255,255,0.15);
border-radius: 4px;
}
.jae-sidebar:hover::-webkit-scrollbar-thumb:hover {
background: rgba(255,255,255,0.25);
}
/* ===== KEYBOARD SHORTCUTS DARK MODE FIX ===== */
keyboard-shortcuts *,
keyboard-shortcuts span,
keyboard-shortcuts div,
keyboard-shortcuts h2,
keyboard-shortcuts h3 {
color: inherit !important;
}
keyboard-shortcuts {
color: hsl(0 0% 95%) !important;
}
keyboard-shortcuts kbd {
color: hsl(0 0% 90%) !important;
background: rgba(255,255,255,0.08) !important;
border-color: rgba(255,255,255,0.12) !important;
}
/* ===== COMMAND PALETTE DARK MODE FIX ===== */
command-palette *,
command-palette span,
command-palette div,
command-palette input {
color: inherit !important;
}
command-palette {
color: hsl(0 0% 95%) !important;
}
command-palette input {
color: hsl(0 0% 95%) !important;
background: rgba(255,255,255,0.06) !important;
}
command-palette input::placeholder {
color: hsl(0 0% 50%) !important;
}
/* ===== MEMORY MANAGER DARK MODE FIX ===== */
memory-manager * {
color: inherit !important;
}
memory-manager {
color: hsl(0 0% 95%) !important;
}
/* ===== MARKETPLACE DARK MODE FIX ===== */
jae-marketplace * {
color: inherit !important;
}
jae-marketplace {
color: hsl(0 0% 95%) !important;
}
jae-marketplace input {
color: hsl(0 0% 95%) !important;
background: rgba(255,255,255,0.06) !important;
}
/* ===== ENHANCED GLASSMORPHISM & SMOOTH ANIMATIONS ===== */
/* Glass card for overlays */
.glass-card {
background: rgba(20, 20, 30, 0.85);
backdrop-filter: blur(24px) saturate(180%);
-webkit-backdrop-filter: blur(24px) saturate(180%);
border: 1px solid rgba(255,255,255,0.08);
box-shadow: 0 8px 32px rgba(0,0,0,0.4), inset 0 1px 0 rgba(255,255,255,0.05);
}
/* Glass panel variant */
.glass-panel {
background: rgba(0,0,0,0.5);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
}
/* Smooth button interactions */
button {
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
button:active {
transform: scale(0.97);
}
/* Interactive card hover lift */
.hover-lift {
transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.hover-lift:hover {
transform: translateY(-2px);
box-shadow: 0 6px 20px rgba(0,0,0,0.3);
}
/* Smooth panel transitions */
#sidebar-wrap,
#right-panel {
transition: width 0.15s ease-out;
}
/* Chat messages smooth entry */
.message-row {
animation: jae-msg-in 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
/* Typing indicator waveform */
.jae-waveform {
display: flex;
align-items: center;
gap: 3px;
height: 20px;
padding: 0 8px;
}
.jae-waveform-bar {
width: 3px;
background: hsl(var(--primary));
border-radius: 2px;
animation: jae-waveform-bounce 0.8s ease-in-out infinite;
}
.jae-waveform-bar:nth-child(1) { animation-delay: 0s; height: 40%; }
.jae-waveform-bar:nth-child(2) { animation-delay: 0.1s; height: 60%; }
.jae-waveform-bar:nth-child(3) { animation-delay: 0.2s; height: 80%; }
.jae-waveform-bar:nth-child(4) { animation-delay: 0.3s; height: 100%; }
.jae-waveform-bar:nth-child(5) { animation-delay: 0.4s; height: 70%; }
.jae-waveform-bar:nth-child(6) { animation-delay: 0.5s; height: 50%; }
@keyframes jae-waveform-bounce {
0%, 100% { transform: scaleY(0.3); opacity: 0.4; }
50% { transform: scaleY(1); opacity: 1; }
}
/* Context peek tooltip */
.jae-context-tooltip {
position: absolute;
z-index: 300;
max-width: 300px;
padding: 8px 12px;
background: rgba(20, 20, 30, 0.95);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
border: 1px solid rgba(255,255,255,0.1);
border-radius: 10px;
box-shadow: 0 8px 32px rgba(0,0,0,0.5);
font-size: 11px;
color: hsl(0 0% 85%);
line-height: 1.5;
pointer-events: none;
animation: jae-tooltip-in 0.2s ease;
}
@keyframes jae-tooltip-in {
from { opacity: 0; transform: translateY(4px) scale(0.96); }
to { opacity: 1; transform: translateY(0) scale(1); }
}
/* Resize handles */
.jae-resize-handle {
width: 4px;
cursor: col-resize;
background: transparent;
transition: background 0.2s;
flex-shrink: 0;
}
.jae-resize-handle:hover {
background: hsl(var(--primary) / 0.3);
}
.jae-resize-handle:active {
background: hsl(var(--primary) / 0.5);
}
/* Scrollbar styling (global) */
::-webkit-scrollbar {
width: 6px;
height: 6px;
}
::-webkit-scrollbar-track {
background: transparent;
}
::-webkit-scrollbar-thumb {
background: rgba(255,255,255,0.1);
border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
background: rgba(255,255,255,0.2);
}
/* Animate-in utility */
.animate-fade-in {
animation: jae-fade-in 0.3s ease;
}
.animate-scale-in {
animation: jae-scale-in 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.animate-slide-up {
animation: jae-slide-up 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
/* Smooth focus rings */
input:focus, textarea:focus, select:focus {
outline: none;
box-shadow: 0 0 0 2px hsl(var(--primary) / 0.3);
transition: box-shadow 0.2s ease;
}
/* Crypto ticker glow */
.jae-ticker-glow {
text-shadow: 0 0 6px currentColor;
}
/* Marketplace skill cards */
.jae-skill-card {
background: rgba(255,255,255,0.03);
border: 1px solid rgba(255,255,255,0.06);
border-radius: 12px;
padding: 12px;
transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}
.jae-skill-card:hover {
background: rgba(255,255,255,0.06);
border-color: rgba(255,255,255,0.12);
transform: translateY(-1px);
box-shadow: 0 4px 16px rgba(0,0,0,0.2);
}
/* Persona selector active glow */
.jae-persona-active {
box-shadow: 0 0 0 2px hsl(var(--primary) / 0.4), 0 4px 12px rgba(0,0,0,0.2);
}
/* Slash command autocomplete */
.jae-slash-popup {
background: rgba(20, 20, 30, 0.95);
backdrop-filter: blur(20px);
border: 1px solid rgba(255,255,255,0.1);
border-radius: 12px;
box-shadow: 0 8px 32px rgba(0,0,0,0.5);
overflow: hidden;
}
.jae-slash-item {
padding: 8px 12px;
cursor: pointer;
transition: background 0.15s;
}
.jae-slash-item:hover,
.jae-slash-item.active {
background: rgba(255,255,255,0.06);
}
/* Smooth header bar */
.jae-glass {
background: rgba(10, 10, 18, 0.8) !important;
backdrop-filter: blur(16px) saturate(150%) !important;
-webkit-backdrop-filter: blur(16px) saturate(150%) !important;
}
.jae-glass-sm {
background: rgba(10, 10, 18, 0.6) !important;
backdrop-filter: blur(8px) !important;
-webkit-backdrop-filter: blur(8px) !important;
}