/** * Customize default theme styling by overriding CSS variables: * https://github.com/vuejs/vitepress/blob/main/src/client/theme-default/styles/vars.css */ /** * Colors * * Each colors have exact same color scale system with 3 levels of solid * colors with different brightness, and 1 soft color. * * - `XXX-1`: The most solid color used mainly for colored text. It must * satisfy the contrast ratio against when used on top of `XXX-soft`. * * - `XXX-2`: The color used mainly for hover state of the button. * * - `XXX-3`: The color for solid background, such as bg color of the button. * It must satisfy the contrast ratio with pure white (#ffffff) text on * top of it. * * - `XXX-soft`: The color used for subtle background such as custom container * or badges. It must satisfy the contrast ratio when putting `XXX-1` colors * on top of it. * * The soft color must be semi transparent alpha channel. This is crucial * because it allows adding multiple "soft" colors on top of each other * to create a accent, such as when having inline code block inside * custom containers. * * - `default`: The color used purely for subtle indication without any * special meanings attached to it such as bg color for menu hover state. * * - `brand`: Used for primary brand colors, such as link text, button with * brand theme, etc. * * - `tip`: Used to indicate useful information. The default theme uses the * brand color for this by default. * * - `warning`: Used to indicate warning to the users. Used in custom * container, badges, etc. * * - `danger`: Used to show error, or dangerous message to the users. Used * in custom container, badges, etc. * -------------------------------------------------------------------------- */ :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); } /** * Component: Button * -------------------------------------------------------------------------- */ :root { --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); } /** * Component: Home * -------------------------------------------------------------------------- */ :root { --vp-home-hero-name-color: transparent; --vp-home-hero-name-background: -webkit-linear-gradient( 120deg, #bd34fe 30%, #41d1ff ); --vp-home-hero-image-background-image: linear-gradient( -45deg, #bd34fe 50%, #47caff 50% ); --vp-home-hero-image-filter: blur(44px); } @media (min-width: 640px) { :root { --vp-home-hero-image-filter: blur(56px); } } @media (min-width: 960px) { :root { --vp-home-hero-image-filter: blur(68px); } } /** * Component: Custom Block * -------------------------------------------------------------------------- */ :root { --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); } /** * Component: Sidebar * -------------------------------------------------------------------------- */ :root { --vp-sidebar-bg-color: transparent; --vp-section-tabs-height: 44px; } @media (max-width: 959px) { :root { --vp-sidebar-bg-color: var(--vp-c-bg-alt); } .VPSidebar { background-color: var(--vp-c-bg-alt) !important; } } .VPSidebarItem.is-link > .item > .link { margin: 2px 0; border-radius: 8px; padding: 0 10px; transition: none; } .VPSidebarItem, .VPSidebarItem > .item, .VPSidebarItem > .item > .link { border-bottom: none !important; } .VPSidebar .group + .group { border-top: none !important; } .VPSidebar { scrollbar-width: thin; scrollbar-color: var(--vp-c-divider) transparent; } .VPSidebar::-webkit-scrollbar { width: 10px; } .VPSidebar::-webkit-scrollbar-track { background: transparent; } .VPSidebar::-webkit-scrollbar-thumb { border: 2px solid transparent; border-radius: 999px; background-clip: padding-box; background-color: var(--vp-c-divider); } .VPSidebar::-webkit-scrollbar-thumb:hover { background-color: var(--vp-c-text-3); } .VPSidebarItem.is-link > .item > .link:hover { background-color: var(--vp-c-default-soft); } .VPSidebarItem.is-link.is-active > .item > .link { background-color: var(--vp-c-brand-soft); } /** * Component: Algolia * -------------------------------------------------------------------------- */ .DocSearch { --docsearch-primary-color: var(--vp-c-brand-1) !important; } /** * Component: Nav * -------------------------------------------------------------------------- */ .VPNavBarTitle .logo { width: 40px; height: 40px; } .VPNavBarTitle .title > span { font-size: 26px; color: var(--vp-c-text-1); } @media (min-width: 960px) { .VPNavBar.has-sidebar .wrapper { padding: 0 32px !important; background-color: var(--vp-nav-bg-color) !important; } .VPNavBar.has-sidebar .container { max-width: calc(var(--vp-layout-max-width) - 64px) !important; justify-content: flex-start !important; gap: 24px !important; background-color: var(--vp-nav-bg-color) !important; } .VPNavBar.has-sidebar .container > .title { position: relative !important; z-index: 3 !important; padding: 0 !important; width: auto !important; max-width: none !important; background-color: var(--vp-nav-bg-color) !important; } .VPNavBar.has-sidebar .content { padding-left: 0 !important; padding-right: 0 !important; } .VPNavBar.has-sidebar .content-body { justify-content: flex-start !important; } .VPNavBar.has-sidebar .menu { margin-right: auto !important; } .VPNavBar.has-sidebar .divider { padding-left: 0 !important; } .VPNavBar.has-sidebar .VPNavBarTitle .title { border-bottom: none !important; background-color: var(--vp-nav-bg-color); } } @media (min-width: 1440px) { .VPNavBar.has-sidebar .container > .title { padding-left: 0 !important; width: auto !important; } .VPNavBar.has-sidebar .content { padding-right: 0 !important; padding-left: 0 !important; } .VPNavBar.has-sidebar .divider { padding-left: 0 !important; } } /** * Component: Local Nav * -------------------------------------------------------------------------- */ @media (min-width: 960px) { .VPLocalNav.has-sidebar { border-bottom: none !important; } .VPLocalNav.has-sidebar::after { content: ""; position: absolute; left: var(--vp-sidebar-width); right: 0; bottom: 0; height: 1px; background-color: var(--vp-c-gutter); } } @media (min-width: 1440px) { .VPLocalNav.has-sidebar::after { left: calc((100vw - var(--vp-layout-max-width)) / 2 + var(--vp-sidebar-width)); } } .VPDocAsideOutline.has-outline .content { border-left: none !important; } @media (min-width: 1280px) { .VPNavBar.has-sidebar .divider { display: none !important; } .VPSidebar { padding-top: calc(var(--vp-nav-height) + var(--vp-section-tabs-height)) !important; } .Layout.sidebar-scope-intro-deploy .VPSidebar .group, .Layout.sidebar-scope-platform .VPSidebar .group, .Layout.sidebar-scope-providers .VPSidebar .group, .Layout.sidebar-scope-use .VPSidebar .group, .Layout.sidebar-scope-dev .VPSidebar .group { display: none; } .Layout.sidebar-scope-intro-deploy .VPSidebar .group:nth-of-type(1), .Layout.sidebar-scope-intro-deploy .VPSidebar .group:nth-of-type(2), .Layout.sidebar-scope-intro-deploy .VPSidebar .group:nth-of-type(7), .Layout.sidebar-scope-intro-deploy .VPSidebar .group:nth-of-type(8), .Layout.sidebar-scope-platform .VPSidebar .group:nth-of-type(3), .Layout.sidebar-scope-providers .VPSidebar .group:nth-of-type(4), .Layout.sidebar-scope-use .VPSidebar .group:nth-of-type(5), .Layout.sidebar-scope-dev .VPSidebar .group:nth-of-type(6) { display: block; } } .VPHomeHero:not(.has-image) .container { text-align: center; } .VPHomeHero:not(.has-image) .heading { align-items: center; } .VPHomeHero:not(.has-image) .name, .VPHomeHero:not(.has-image) .text, .VPHomeHero:not(.has-image) .tagline { margin: 0 auto; } .VPHomeHero:not(.has-image) .actions { justify-content: center; }