Warp/docs/.vitepress/theme/style.css

328 lines
9.3 KiB
CSS
Raw Normal View History

2024-01-05 12:14:38 +00:00
: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-shadow-2: 0 6px 24px 0 rgba(0, 0, 0, 0.08);
--glass-highlight: inset 0 1px 0 0 rgba(255, 255, 255, 0.6);
--glass-blur: 28px;
--glass-blur-2: 16px;
--glass-blur-3: 24px;
--glass-blur-4: 4px;
--glass-radius: 24px;
--glass-menu-radius: 12px;
--vp-c-bg: #ffffff;
2026-02-11 16:45:38 +00:00
--vp-c-bg-alt: #f8f9fa;
2024-01-05 12:14:38 +00:00
--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;
2026-02-11 16:45:38 +00:00
--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%);
2024-01-05 12:14:38 +00:00
--vp-home-hero-image-filter: blur(40px);
2026-02-11 16:45:38 +00:00
--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);
2024-01-05 12:14:38 +00:00
}
2026-02-11 16:45:38 +00:00
.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);
2026-02-11 16:45:38 +00:00
--vp-c-bg: #0f0f11;
--vp-c-bg-alt: #161618;
--vp-c-gutter: rgba(255, 255, 255, 0.4);
2024-01-05 12:14:38 +00:00
}
2026-02-11 16:45:38 +00:00
body::before {
content: "";
position: fixed;
top: 0;
2026-02-11 16:45:38 +00:00
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%);
2024-01-05 12:14:38 +00:00
}
2026-02-11 16:45:38 +00:00
.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%);
2026-02-11 16:45:38 +00:00
}
.VPNav,
.VPLocalNav, .shell, .backdrop {
background-color: transparent !important;
}
2026-02-11 16:45:38 +00:00
.VPNavBar,
.VPLocalNav {
2026-02-11 16:45:38 +00:00
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;
2026-02-11 16:45:38 +00:00
box-shadow: var(--glass-shadow);
}
.VPNav .content-body,
.VPLocalNav.container {
background-color: transparent !important;
backdrop-filter: none !important;
}
.VPNavScreenAppearance {
background-color: transparent !important;
backdrop-filter: blur(var(--glass-blur)) !important;
border: 1px solid var(--glass-border);
}
.VPNavScreenMenuLink, .VPNavScreenMenuGroup {
border-bottom: 1px solid var(--glass-border) !important;
}
.VPLocalNav .outline {
background-color: rgba(24, 24, 29, 0.9) !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;
}
.VPLocalNav .header {
background-color: rgba(24, 24, 29, 0.95) !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;
}
2026-02-11 16:45:38 +00:00
.VPSidebar,
.VPNavScreen {
background-color: transparent !important;
backdrop-filter: blur(var(--glass-blur-3)) !important;
2026-02-11 16:45:38 +00:00
border-right: 1px solid var(--glass-border);
}
.shell {
background-color: var(--glass-bg) !important;
backdrop-filter: saturate(180%) blur(var(--glass-blur-2)) !important;
-webkit-backdrop-filter: saturate(180%) blur(var(--glass-blur-2)) !important;
border: 1px solid var(--glass-border) !important;
box-shadow: var(--glass-shadow);
}
.backdrop {
background-color: transparent !important;
backdrop-filter: saturate(180%) blur(var(--glass-blur-4)) !important;
-webkit-backdrop-filter: saturate(180%) blur(var(--glass-blur-4)) !important;
border: 1px solid var(--glass-border) !important;
box-shadow: var(--glass-shadow);
}
.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;
2026-02-11 16:45:38 +00:00
}
.VPFlyout .VPMenu {
background: transparent !important;
border: none !important;
2026-02-11 16:45:38 +00:00
}
.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;
}
.vp-adaptive-theme {
background-color: var(--glass-bg) !important;
backdrop-filter: saturate(180%) blur(var(--glass-blur)) !important;
}
.custom-block {
backdrop-filter: 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;
background-clip: padding-box !important;
box-shadow: var(--glass-shadow-2), 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 {
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;
2026-02-11 16:45:38 +00:00
}
.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;
2026-02-11 16:45:38 +00:00
}
.VPButton {
border-radius: 99px !important;
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
font-weight: 600 !important;
transition: all 0.3s ease !important;
2026-02-11 16:45:38 +00:00
}
.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);
}
2026-02-11 16:45:38 +00:00
@media (min-width: 640px) {
:root {
--vp-home-hero-image-filter: blur(56px);
}
2026-02-11 16:45:38 +00:00
}
2026-02-11 16:45:38 +00:00
@media (min-width: 960px) {
:root {
--vp-home-hero-image-filter: blur(72px);
}
2024-01-05 12:14:38 +00:00
}
.DocSearch {
--docsearch-primary-color: var(--vp-c-brand-1) !important;
}
.VPNavBarTitle .title {
color: rgb(255, 153, 0);
2026-02-11 16:45:38 +00:00
transition: color 0.25s;
}
.VPHero .name {
text-shadow: 0 0 40px rgba(254, 82, 52, 0.3);
2026-02-12 08:55:19 +00:00
}
2026-02-12 08:55:19 +00:00
.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);
}
2026-02-12 08:55:19 +00:00
}
@keyframes pulse-glow-premium {
0% {
opacity: 0.6;
transform: translate(-50%, -50%) scale(0.95);
2026-02-12 08:55:19 +00:00
}
100% {
opacity: 1;
transform: translate(-50%, -50%) scale(1.1);
2026-02-12 08:55:19 +00:00
}
2024-01-05 12:14:38 +00:00
}