:root { --vp-c-default-1: var(--vp-c-gray-1); --vp-c-default-2: var(--vp-c-gray-2); --vp-c-default-3: var(--vp-c-gray-3); --vp-c-default-soft: var(--vp-c-gray-soft); --vp-c-brand-1: var(--vp-c-indigo-1); --vp-c-brand-2: var(--vp-c-indigo-2); --vp-c-brand-3: var(--vp-c-indigo-3); --vp-c-brand-soft: var(--vp-c-indigo-soft); --vp-c-tip-1: var(--vp-c-brand-1); --vp-c-tip-2: var(--vp-c-brand-2); --vp-c-tip-3: var(--vp-c-brand-3); --vp-c-tip-soft: var(--vp-c-brand-soft); --vp-c-warning-1: var(--vp-c-yellow-1); --vp-c-warning-2: var(--vp-c-yellow-2); --vp-c-warning-3: var(--vp-c-yellow-3); --vp-c-warning-soft: var(--vp-c-yellow-soft); --vp-c-danger-1: var(--vp-c-red-1); --vp-c-danger-2: var(--vp-c-red-2); --vp-c-danger-3: var(--vp-c-red-3); --vp-c-danger-soft: var(--vp-c-red-soft); --glass-nav-bg: rgba(255, 255, 255, 0.7); --glass-sidebar-bg: rgba(255, 255, 255, 0.7); --glass-bg: rgba(255, 255, 255, 0.8); --glass-border: rgba(0, 0, 0, 0.08); --glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.08); --glass-highlight: inset 0 1px 0 0 rgba(255, 255, 255, 0.6); --glass-blur: 28px; --glass-radius: 24px; --glass-menu-radius: 12px; --vp-c-bg: #ffffff; --vp-c-bg-alt: #f8f9fa; --vp-button-brand-border: transparent; --vp-button-brand-text: var(--vp-c-white); --vp-button-brand-bg: var(--vp-c-brand-3); --vp-button-brand-hover-border: transparent; --vp-button-brand-hover-text: var(--vp-c-white); --vp-button-brand-hover-bg: var(--vp-c-brand-2); --vp-button-brand-active-border: transparent; --vp-button-brand-active-text: var(--vp-c-white); --vp-button-brand-active-bg: var(--vp-c-brand-1); --vp-home-hero-name-color: transparent; --vp-home-hero-name-background: -webkit-linear-gradient(120deg, #fe5234 30%, #fe9934); --vp-home-hero-image-background-image: linear-gradient(-45deg, #fe5234 50%, #fe9934 50%); --vp-home-hero-image-filter: blur(40px); --vp-custom-block-tip-border: transparent; --vp-custom-block-tip-text: var(--vp-c-text-1); --vp-custom-block-tip-bg: var(--vp-c-brand-soft); --vp-custom-block-tip-code-bg: var(--vp-c-brand-soft); } .dark { --glass-nav-bg: rgba(22, 22, 24, 0.6); --glass-sidebar-bg: rgba(22, 22, 24, 0.6); --glass-bg: rgba(30, 30, 35, 0.6); --glass-border: rgba(255, 255, 255, 0.1); --glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.5); --glass-highlight: inset 0 1px 0 0 rgba(255, 255, 255, 0.1); --vp-c-bg: #0f0f11; --vp-c-bg-alt: #161618; } body::before { content: ""; position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; z-index: -1; pointer-events: none; background: radial-gradient(circle at 100% 0%, rgba(254, 82, 52, 0.1), transparent 50%), radial-gradient(circle at 0% 100%, rgba(79, 70, 229, 0.1), transparent 50%); } .dark body::before { background: radial-gradient(circle at 90% 10%, rgba(254, 82, 52, 0.15), transparent 60%), radial-gradient(circle at 10% 90%, rgba(79, 70, 229, 0.12), transparent 50%); } .VPNav { background-color: transparent !important; } .VPNavBar { background-color: var(--glass-nav-bg) !important; backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; -webkit-backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; border-bottom: 1px solid var(--glass-border) !important; box-shadow: var(--glass-shadow); } .VPNav .content-body { background-color: transparent !important; backdrop-filter: none !important; } .VPSidebar { background-color: var(--glass-sidebar-bg) !important; backdrop-filter: blur(var(--glass-blur)); border-right: 1px solid var(--glass-border); } .VPNavBar .divider { display: none; } .VPFlyout .menu { background-color: var(--glass-bg) !important; backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; -webkit-backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; border: 1px solid var(--glass-border) !important; border-radius: var(--glass-menu-radius) !important; box-shadow: var(--glass-shadow), var(--glass-highlight) !important; padding: 6px !important; overflow: hidden; } .VPFlyout .VPMenu { background: transparent !important; border: none !important; } .VPFlyout .item.active .link, .VPFlyout .item .link:hover { background-color: rgba(255, 255, 255, 0.1) !important; border-radius: 6px; } .dark .VPFlyout .item.active .link, .dark .VPFlyout .item .link:hover { background-color: rgba(255, 255, 255, 0.05) !important; } .VPFeature { background: var(--glass-bg) !important; backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; -webkit-backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important; border: 1px solid var(--glass-border) !important; border-radius: var(--glass-radius) !important; background-clip: padding-box !important; box-shadow: var(--glass-shadow), var(--glass-highlight) !important; transition: transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1), border-color 0.3s ease, box-shadow 0.3s ease !important; } .VPFeature:hover { transform: translateY(-8px) scale(1.01); border-color: rgba(255, 255, 255, 0.4) !important; box-shadow: 0 24px 48px rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.2) !important; } .VPButton { border-radius: 99px !important; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); font-weight: 600 !important; transition: all 0.3s ease !important; } .VPButton.brand { background: linear-gradient(135deg, var(--vp-c-brand-3), var(--vp-c-brand-1)) !important; border: 1px solid rgba(255, 255, 255, 0.2) !important; box-shadow: 0 4px 12px rgba(var(--vp-c-brand-rgb), 0.5), inset 0 1px 0 rgba(255,255,255,0.3) !important; } .VPButton.brand:hover { transform: scale(1.05); box-shadow: 0 8px 24px rgba(var(--vp-c-brand-rgb), 0.6); } .VPButton.alt { background-color: rgba(255, 255, 255, 0.1) !important; border: 1px solid var(--glass-border) !important; color: var(--vp-c-text-1) !important; } .VPButton.alt:hover { background-color: rgba(255, 255, 255, 0.15) !important; transform: translateY(-2px); } @media (min-width: 640px) { :root { --vp-home-hero-image-filter: blur(56px); } } @media (min-width: 960px) { :root { --vp-home-hero-image-filter: blur(72px); } } .DocSearch { --docsearch-primary-color: var(--vp-c-brand-1) !important; } .VPNavBarTitle .title { color: rgb(255, 153, 0); transition: color 0.25s; } .VPHero .name { text-shadow: 0 0 40px rgba(254, 82, 52, 0.3); } .VPHero .image-src { animation: float-premium 6s ease-in-out infinite; transform-origin: center center; } .VPHero .image-bg { animation: pulse-glow-premium 5s ease-in-out infinite alternate; } @keyframes float-premium { 0% { transform: translate(-50%, -50%) translateY(0px); } 50% { transform: translate(-50%, -50%) translateY(-16px); } 100% { transform: translate(-50%, -50%) translateY(0px); } } @keyframes pulse-glow-premium { 0% { opacity: 0.6; transform: translate(-50%, -50%) scale(0.95); } 100% { opacity: 1; transform: translate(-50%, -50%) scale(1.1); } }