/*!
 * Vendored from @primer/primitives@11.10.0 (dist/css/primitives.css)
 * Copyright (c) GitHub, Inc. — MIT. See LICENSE in this directory.
 * Do not edit: regenerate with `npm run vendor`.
 */
/* dist/css/base/motion/motion.css */
:root {
  --base-duration-0: 0ms;
  --base-duration-100: 100ms;
  --base-duration-1000: 1000ms;
  --base-duration-200: 200ms;
  --base-duration-300: 300ms;
  --base-duration-400: 400ms;
  --base-duration-50: 50ms;
  --base-duration-500: 500ms;
  --base-duration-600: 600ms;
  --base-duration-700: 700ms;
  --base-duration-800: 800ms;
  --base-duration-900: 900ms;
  --base-easing-ease: cubic-bezier(0.25, 0.1, 0.25, 1); /** CSS default easing. Use for hover state changes and micro-interactions. */
  --base-easing-easeIn: cubic-bezier(0.7, 0.1, 0.75, 0.9); /** Accelerating motion. Use for elements exiting the viewport (moving off-screen). */
  --base-easing-easeInOut: cubic-bezier(0.6, 0, 0.2, 1); /** Smooth acceleration and deceleration. Use for elements moving or morphing within the viewport. */
  --base-easing-easeOut: cubic-bezier(0.3, 0.8, 0.6, 1); /** Decelerating motion. Use for elements entering the viewport or appearing on screen. */
  --base-easing-linear: cubic-bezier(0, 0, 1, 1); /** Constant motion with no acceleration. Use for continuous animations like progress bars or loaders. */
}

/* dist/css/base/size/size.css */
:root {
  --base-size-112: 7rem;
  --base-size-12: 0.75rem;
  --base-size-128: 8rem;
  --base-size-16: 1rem;
  --base-size-2: 0.125rem;
  --base-size-20: 1.25rem;
  --base-size-24: 1.5rem;
  --base-size-28: 1.75rem;
  --base-size-32: 2rem;
  --base-size-36: 2.25rem;
  --base-size-4: 0.25rem;
  --base-size-40: 2.5rem;
  --base-size-44: 2.75rem;
  --base-size-48: 3rem;
  --base-size-6: 0.375rem;
  --base-size-64: 4rem;
  --base-size-8: 0.5rem;
  --base-size-80: 5rem;
  --base-size-96: 6rem;
  --base-size-negative-12: -0.75rem;
  --base-size-negative-16: -1rem;
  --base-size-negative-2: -0.125rem;
  --base-size-negative-20: -1.25rem;
  --base-size-negative-24: -1.5rem;
  --base-size-negative-28: -1.75rem;
  --base-size-negative-32: -2rem;
  --base-size-negative-36: -2.25rem;
  --base-size-negative-4: -0.25rem;
  --base-size-negative-40: -2.5rem;
  --base-size-negative-44: -2.75rem;
  --base-size-negative-48: -3rem;
  --base-size-negative-6: -0.375rem;
  --base-size-negative-8: -0.5rem;
}

/* dist/css/base/size/z-index.css */
:root {
  --base-zIndex-0: 0;
  --base-zIndex-100: 100;
  --base-zIndex-200: 200;
  --base-zIndex-300: 300;
  --base-zIndex-400: 400;
  --base-zIndex-500: 500;
  --base-zIndex-600: 600;
}

/* dist/css/base/typography/typography.css */
:root {
  --base-text-lineHeight-loose: 1.75; /** Use sparingly for very small text or when maximum readability is critical. Best for footnotes, legal text, or content requiring high accessibility. */
  --base-text-lineHeight-normal: 1.5; /** Default choice for body text and general UI content. Provides optimal readability for paragraphs, descriptions, and most multi-line text. Use when unsure which line-height to pick. */
  --base-text-lineHeight-relaxed: 1.625; /** Use for longer-form content, smaller text sizes (12-13px), or when increased readability is desired. Good for text that needs extra breathing room. */
  --base-text-lineHeight-snug: 1.375; /** Use for display text, large headings, or short multi-line text where moderate density is needed. Good for hero sections and marketing headlines. */
  --base-text-lineHeight-tight: 1.25; /** Use for single-line text in compact UI elements like labels, badges, buttons, or captions where vertical space is limited. Not recommended for multi-line body text due to reduced readability. */
  --base-text-size-2xl: 2.5rem; /** 40px - Display text for hero sections. */
  --base-text-size-lg: 1.25rem; /** 20px - Medium titles and subtitles. */
  --base-text-size-md: 1rem; /** 16px - Large body text and small titles. */
  --base-text-size-sm: 0.875rem; /** 14px - Default body text size for UI. */
  --base-text-size-xl: 2rem; /** 32px - Large titles and page headings. */
  --base-text-size-xs: 0.75rem; /** 12px - Smallest text size for captions and compact UI elements. */
  --base-text-weight-light: 300;
  --base-text-weight-medium: 500;
  --base-text-weight-normal: 400;
  --base-text-weight-semibold: 600;
}

/* dist/css/functional/motion/motion.css */
:root {
  --motion-duration-long: var(--base-duration-500); /** Longer duration for complex multi-step animations or large-scale layout shifts. Use sparingly. */
  --motion-duration-medium: var(--base-duration-300); /** Standard duration for elements entering or exiting the viewport, such as modals and dropdowns. */
  --motion-duration-micro: var(--base-duration-100); /** Fast micro-interactions like hover, focus ring, and color shifts. */
  --motion-duration-short: var(--base-duration-200); /** Quick transitions for state changes like expand/collapse, toggles, and visibility changes. */
  --motion-easing-enter: var(--base-easing-easeOut); /** Decelerating easing for elements entering the viewport or appearing on screen. */
  --motion-easing-exit: var(--base-easing-easeIn); /** Accelerating easing for elements exiting the viewport or leaving the screen. */
  --motion-easing-hover: var(--base-easing-ease); /** Easing for hover state changes and micro-interactions. */
  --motion-easing-linear: var(--base-easing-linear); /** Constant motion with no acceleration. Use for continuous animations like progress bars or loaders. */
  --motion-easing-move: var(--base-easing-easeInOut); /** Smooth easing for elements moving or morphing within the viewport. */
  --motion-transition-enter: var(--motion-duration-medium) var(--motion-easing-enter); /** Transition for elements entering the viewport, such as modals, dropdowns, and tooltips. */
  --motion-transition-exit: var(--motion-duration-short) var(--motion-easing-exit); /** Transition for elements exiting the viewport, such as closing modals and dismissing dropdowns. */
  --motion-transition-hover: var(--motion-duration-micro) var(--motion-easing-hover); /** Transition for hover state changes on interactive elements like buttons and links. */
  --motion-transition-stateChange: var(--motion-duration-short) var(--motion-easing-move); /** Transition for state changes like toggles, expand/collapse, and visibility changes. */
}

/* dist/css/functional/size/border.css */
:root {
  --borderWidth-thick: 0.125rem; /** Scale token: 2px border width for emphasis or focus states. */
  --borderWidth-thicker: 0.25rem; /** Scale token: 4px border width for strong emphasis. */
  --borderWidth-thin: 0.0625rem; /** Scale token: 1px border width. Use when selecting an explicit size from the border-width scale. */
  --focus-outline-offset: -0.125rem; /** Focus outline offset (-2px). Negative value creates an inset outline for keyboard focus indicators, ensuring the focus ring stays within the element bounds */
  --focus-outline-width: 0.125rem; /** Focus outline width (2px). Standard width for keyboard focus indicators to meet WCAG 2.4.7 accessibility requirements */
  --borderWidth-default: var(--borderWidth-thin); /** Semantic token: preferred default border width for standard component borders. Use this in normal component code unless a specific scale value is required. */
  --boxShadow-thick: inset 0 0 0 var(--borderWidth-thick); /** Thick shadow (2px) used instead of a border for emphasis without layout shift */
  --boxShadow-thicker: inset 0 0 0 var(--borderWidth-thicker); /** Thickest shadow (4px) used for high emphasis borders without layout shift. Use sparingly for maximum visual impact */
  --boxShadow-thin: inset 0 0 0 var(--borderWidth-thin); /** Thin shadow used instead of a border to prevent layout shift */
  --outline-focus-offset: var(--focus-outline-offset); /** Deprecated. Use focus.outline-offset instead. */
  --outline-focus-width: var(--focus-outline-width); /** Deprecated. Use focus.outline-width instead. */
}

/* dist/css/functional/size/breakpoints.css */
:root {
  --breakpoint-large: 63.25rem;
  --breakpoint-medium: 48rem;
  --breakpoint-small: 34rem;
  --breakpoint-xlarge: 80rem;
  --breakpoint-xsmall: 20rem;
  --breakpoint-xxlarge: 87.5rem;
}

/* dist/css/functional/size/radius.css */
:root {
  --borderRadius-full: 624.9375rem; /** Shape token for fully rounded or pill-shaped elements. */
  --borderRadius-large: 0.75rem; /** Scale token: 12px radius for larger surfaces or softer container treatments. */
  --borderRadius-medium: 0.375rem; /** Scale token: 6px radius in the border-radius scale. Use when selecting a specific radius intentionally. */
  --borderRadius-small: 0.1875rem; /** Scale token: 3px radius for compact UI elements or small component variants. */
  --borderRadius-default: var(--borderRadius-medium); /** Semantic token: preferred default border radius for standard UI components. Use this in normal component code unless a specific radius is intentionally required. */
}

/* dist/css/functional/size/size-coarse.css */
@media (pointer: coarse) {
  :root {
    --control-minTarget-auto: 2.75rem; /** Minimum touch target size for coarse pointer devices (touch screens) */
    --controlStack-large-gap-auto: 0.75rem; /** Gap between stacked controls in large density layouts for touch devices */
    --controlStack-medium-gap-auto: 0.75rem; /** Gap between stacked controls in medium density layouts for touch devices */
    --controlStack-small-gap-auto: 1rem; /** Gap between stacked controls in small density layouts for touch devices */
  }
}

/* dist/css/functional/size/size-fine.css */
@media (pointer: fine) {
  :root {
    --control-minTarget-auto: 1rem; /** Minimum target size for fine pointer devices (mouse) */
    --controlStack-large-gap-auto: 0.5rem; /** Gap between stacked controls in large density layouts for mouse interfaces */
    --controlStack-medium-gap-auto: 0.5rem; /** Gap between stacked controls in medium density layouts for mouse interfaces */
    --controlStack-small-gap-auto: 0.5rem; /** Gap between stacked controls in small density layouts for mouse interfaces */
  }
}

/* dist/css/functional/size/size.css */
:root {
  --control-large-paddingBlock: 0.625rem;
  --control-medium-paddingBlock: 0.375rem;
  --control-xlarge-paddingBlock: 0.875rem;
  --control-xsmall-paddingBlock: 0.125rem;
  --overlay-height-large: 27rem;
  --overlay-height-medium: 20rem;
  --overlay-height-small: 16rem;
  --overlay-height-xlarge: 37.5rem;
  --overlay-offset: 0.25rem;
  --overlay-width-large: 40rem;
  --overlay-width-medium: 30rem;
  --overlay-width-small: 20rem;
  --overlay-width-xlarge: 60rem;
  --overlay-width-xsmall: 12rem;
  --spinner-strokeWidth-default: 0.125rem;
  --control-large-gap: 0.5rem;
  --control-large-paddingInline-condensed: 0.5rem;
  --control-large-paddingInline-normal: 0.75rem;
  --control-large-paddingInline-spacious: 1rem;
  --control-large-size: 2.5rem;
  --control-medium-gap: 0.5rem;
  --control-medium-paddingInline-condensed: 0.5rem;
  --control-medium-paddingInline-normal: 0.75rem;
  --control-medium-paddingInline-spacious: 1rem;
  --control-medium-size: 2rem;
  --control-minTarget-coarse: 2.75rem;
  --control-minTarget-fine: 1rem;
  --control-small-gap: 0.25rem;
  --control-small-paddingBlock: 0.25rem;
  --control-small-paddingInline-condensed: 0.5rem;
  --control-small-paddingInline-normal: 0.75rem;
  --control-small-paddingInline-spacious: 1rem;
  --control-small-size: 1.75rem;
  --control-xlarge-gap: 0.5rem;
  --control-xlarge-paddingInline-condensed: 0.5rem;
  --control-xlarge-paddingInline-normal: 0.75rem;
  --control-xlarge-paddingInline-spacious: 1rem;
  --control-xlarge-size: 3rem;
  --control-xsmall-gap: 0.25rem;
  --control-xsmall-paddingInline-condensed: 0.25rem;
  --control-xsmall-paddingInline-normal: 0.5rem;
  --control-xsmall-paddingInline-spacious: 0.75rem;
  --control-xsmall-size: 1.5rem;
  --controlStack-large-gap-auto: 0.5rem;
  --controlStack-large-gap-condensed: 0.5rem;
  --controlStack-large-gap-spacious: 0.75rem;
  --controlStack-medium-gap-auto: 0.5rem;
  --controlStack-medium-gap-condensed: 0.5rem;
  --controlStack-medium-gap-spacious: 0.75rem;
  --controlStack-small-gap-auto: 0.5rem;
  --controlStack-small-gap-condensed: 0.5rem;
  --controlStack-small-gap-spacious: 1rem;
  --overlay-borderRadius: 0.375rem;
  --overlay-padding-condensed: 0.5rem;
  --overlay-padding-normal: 1rem;
  --overlay-paddingBlock-condensed: 0.25rem;
  --overlay-paddingBlock-normal: 0.75rem;
  --spinner-size-large: 4rem;
  --spinner-size-medium: 2rem;
  --spinner-size-small: 1rem;
  --stack-gap-condensed: 0.5rem;
  --stack-gap-normal: 1rem;
  --stack-gap-spacious: 1.5rem;
  --stack-padding-condensed: 0.5rem;
  --stack-padding-normal: 1rem;
  --stack-padding-spacious: 1.5rem;
}

/* dist/css/functional/size/z-index.css */
:root {
  --zIndex-behind: -1; /** Place element behind base content. Use for decorative backgrounds or canvas elements. */
  --zIndex-default: 0; /** Default stacking order. No elevation above surrounding content. */
  --zIndex-dropdown: 200; /** Dropdown menus and select panels that appear above page content. */
  --zIndex-modal: 400; /** Modal dialogs and full-screen overlays. */
  --zIndex-overlay: 300; /** Overlay backdrops, side panels, and drawers. */
  --zIndex-popover: 500; /** Tooltips and popovers that appear above all normal UI. */
  --zIndex-skipLink: 600; /** Accessibility skip links. Must always be the topmost layer. */
  --zIndex-sticky: 100; /** Sticky elements that remain visible while scrolling. */
}

/* dist/css/functional/spacing/space.css */
:root {
  --space-lg: 1rem; /** Spacious spacing for major layout divisions and visual separation between content blocks. */
  --space-md: 0.75rem; /** Relaxed spacing for breathing room and comfortable internal container space. */
  --space-sm: 0.5rem; /** Default spacing for most UI elements. Comfortable visual density for standard component layouts. */
  --space-xl: 1.5rem; /** Expansive spacing for large sections and top-level structure separation. */
  --space-xs: 0.25rem; /** Compact spacing for small badges, tight internal spacing, and minimal breathing room. */
  --space-xxs: 0.125rem; /** Ultra-compact spacing for form field separators and tight visual divisions. */
}

/* dist/css/functional/typography/typography.css */
:root {
  --fontStack-monospace: ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace; /** Monospace font stack for code, technical content, and tabular data. */
  --fontStack-sansSerif: "Mona Sans VF", -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans Backtick Fix", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"; /** Sans-serif font stack for body text and general UI elements. */
  --fontStack-sansSerifDisplay: "Mona Sans VF", -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans Backtick Fix", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"; /** Display font stack for headings and titles. Same as sansSerif but semantically distinct. */
  --fontStack-system: "Mona Sans VF", -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans Backtick Fix", "Noto Sans", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"; /** Mona Sans–first font stack with system fallbacks, optimized for cross-platform rendering. Primary font stack for all UI text where Mona Sans is available. */
  --text-codeBlock-size: 0.8125rem;
  --text-codeInline-size: 0.9285em;
  --text-body-lineHeight-large: var(--base-text-lineHeight-normal);
  --text-body-lineHeight-medium: var(--base-text-lineHeight-normal);
  --text-body-lineHeight-small: var(--base-text-lineHeight-relaxed);
  --text-body-size-large: var(--base-text-size-md);
  --text-body-size-medium: var(--base-text-size-sm);
  --text-body-size-small: var(--base-text-size-xs);
  --text-body-weight: var(--base-text-weight-normal);
  --text-caption-lineHeight: var(--base-text-lineHeight-tight);
  --text-caption-size: var(--base-text-size-xs);
  --text-caption-weight: var(--base-text-weight-normal);
  --text-codeBlock-lineHeight: var(--base-text-lineHeight-normal);
  --text-codeBlock-weight: var(--base-text-weight-normal);
  --text-codeInline-weight: var(--base-text-weight-normal);
  --text-display-lineHeight: var(--base-text-lineHeight-snug);
  --text-display-size: var(--base-text-size-2xl);
  --text-display-weight: var(--base-text-weight-medium);
  --text-subtitle-lineHeight: var(--base-text-lineHeight-relaxed);
  --text-subtitle-size: var(--base-text-size-lg);
  --text-subtitle-weight: var(--base-text-weight-normal);
  --text-title-lineHeight-large: var(--base-text-lineHeight-normal);
  --text-title-lineHeight-medium: var(--base-text-lineHeight-relaxed);
  --text-title-lineHeight-small: var(--base-text-lineHeight-normal);
  --text-title-size-large: var(--base-text-size-xl);
  --text-title-size-medium: var(--base-text-size-lg);
  --text-title-size-small: var(--base-text-size-md);
  --text-title-weight-large: var(--base-text-weight-semibold);
  --text-title-weight-medium: var(--base-text-weight-semibold);
  --text-title-weight-small: var(--base-text-weight-semibold);
  --text-body-shorthand-large: var(--text-body-weight) var(--text-body-size-large) / var(--text-body-lineHeight-large) var(--fontStack-sansSerif); /** User-generated content, markdown rendering. */
  --text-body-shorthand-medium: var(--text-body-weight) var(--text-body-size-medium) / var(--text-body-lineHeight-medium) var(--fontStack-sansSerif); /** Default UI font. Most commonly used for body text. */
  --text-body-shorthand-small: var(--text-body-weight) var(--text-body-size-small) / var(--text-body-lineHeight-small) var(--fontStack-sansSerif); /** Small body text for discrete UI applications, such as helper, footnote text. Should be used sparingly across pages. Line-height matches Body (medium) at 20px. */
  --text-caption-shorthand: var(--text-caption-weight) var(--text-caption-size) / var(--text-caption-lineHeight) var(--fontStack-sansSerif); /** Compact small font with a smaller line height of 16px. Use it for single-line scenarios, as the small sizing doesn’t pass accessibility requirements. */
  --text-codeBlock-shorthand: var(--text-codeBlock-weight) var(--text-codeBlock-size) / var(--text-codeBlock-lineHeight) var(--fontStack-monospace); /** Default style for rendering code blocks. */
  --text-codeInline-shorthand: var(--text-codeInline-weight) var(--text-codeInline-size) var(--fontStack-monospace); /** Inline code blocks using em units to inherit size from its parent. */
  --text-display-shorthand: var(--text-display-weight) var(--text-display-size) / var(--text-display-lineHeight) var(--fontStack-sansSerifDisplay); /** Hero-style text for brand to product transition pages. Utilize Title (large) styles on narrow viewports. */
  --text-subtitle-shorthand: var(--text-subtitle-weight) var(--text-subtitle-size) / var(--text-subtitle-lineHeight) var(--fontStack-sansSerifDisplay); /** Page sections/sub headings, or less important object names in page titles (automated action titles, for example). Same line-height as title (medium). */
  --text-title-shorthand-large: var(--text-title-weight-large) var(--text-title-size-large) / var(--text-title-lineHeight-large) var(--fontStack-sansSerifDisplay); /** Page headings for user-created objects, such as issues or pull requests. Utilize title (medium) styles on narrow viewports. */
  --text-title-shorthand-medium: var(--text-title-weight-medium) var(--text-title-size-medium) / var(--text-title-lineHeight-medium) var(--fontStack-sansSerifDisplay); /** Default page title. The 32px-equivalent line-height matches with button and other medium control heights. Great for page header composition. */
  --text-title-shorthand-small: var(--text-title-weight-small) var(--text-title-size-small) / var(--text-title-lineHeight-small) var(--fontStack-sansSerif); /** Uses the same size as body (large) with a heavier weight of semibold (600). */
}
