PHP 8.2.30
Preview: styled-components.esm.js.map Size: 156.77 KB
/home/byroehnu/.trash/node_modules11/styled-components/dist/styled-components.esm.js.map

{"version":3,"file":"styled-components.esm.js","sources":["../src/constants.ts","../src/utils/error.ts","../src/utils/errors.ts","../src/sheet/GroupIDAllocator.ts","../src/utils/checkDynamicCreation.ts","../src/utils/empties.ts","../src/utils/determineTheme.ts","../src/utils/domElements.ts","../src/utils/escape.ts","../src/utils/generateAlphabeticName.ts","../src/utils/hash.ts","../src/utils/generateComponentId.ts","../src/utils/getComponentName.ts","../src/utils/isTag.ts","../src/utils/hoist.ts","../src/utils/isFunction.ts","../src/utils/isStyledComponent.ts","../src/utils/joinStrings.ts","../src/utils/isPlainObject.ts","../src/utils/mixinDeep.ts","../src/utils/setToString.ts","../src/sheet/GroupedTag.ts","../src/sheet/Rehydration.ts","../src/utils/nonce.ts","../src/sheet/dom.ts","../src/sheet/Tag.ts","../src/sheet/Sheet.ts","../src/utils/stylis.ts","../src/models/StyleSheetManager.tsx","../src/models/Keyframes.ts","../src/utils/addUnitIfNeeded.ts","../src/utils/hyphenateStyleName.ts","../src/utils/flatten.ts","../src/utils/isStatelessFunction.ts","../src/utils/isStaticRules.ts","../src/models/ComponentStyle.ts","../src/models/ThemeProvider.tsx","../src/models/StyledComponent.ts","../src/utils/generateDisplayName.ts","../src/utils/createWarnTooManyClasses.ts","../src/utils/interleave.ts","../src/constructors/css.ts","../src/constructors/constructWithOptions.ts","../src/constructors/styled.tsx","../src/models/GlobalStyle.ts","../src/constructors/createGlobalStyle.ts","../src/constructors/keyframes.ts","../src/hoc/withTheme.tsx","../src/models/ServerStyleSheet.tsx","../src/secretInternals.ts","../src/base.ts"],"sourcesContent":["declare let SC_DISABLE_SPEEDY: boolean | null | undefined;\ndeclare let __VERSION__: string;\n\nimport React from 'react';\n\nexport const SC_ATTR: string =\n  (typeof process !== 'undefined' &&\n    typeof process.env !== 'undefined' &&\n    (process.env.REACT_APP_SC_ATTR || process.env.SC_ATTR)) ||\n  'data-styled';\n\nexport const SC_ATTR_ACTIVE = 'active';\nexport const SC_ATTR_VERSION = 'data-styled-version';\nexport const SC_VERSION = __VERSION__;\nexport const SPLITTER = '/*!sc*/\\n';\n\nexport const IS_BROWSER = typeof window !== 'undefined' && typeof document !== 'undefined';\n\n/**\n * True when running in a React Server Component environment (createContext\n * is unavailable). In browser / standalone / native builds the entire\n * expression is replaced with the literal `false` via rollup-plugin-replace\n * with empty delimiters (exact string match), enabling rollup constant\n * inlining and terser dead-code elimination for all RSC branches.\n */\nexport const IS_RSC: boolean = typeof React.createContext === 'undefined';\n\nexport const DISABLE_SPEEDY = Boolean(\n  typeof SC_DISABLE_SPEEDY === 'boolean'\n    ? SC_DISABLE_SPEEDY\n    : typeof process !== 'undefined' &&\n        typeof process.env !== 'undefined' &&\n        typeof process.env.REACT_APP_SC_DISABLE_SPEEDY !== 'undefined' &&\n        process.env.REACT_APP_SC_DISABLE_SPEEDY !== ''\n      ? process.env.REACT_APP_SC_DISABLE_SPEEDY === 'false'\n        ? false\n        : process.env.REACT_APP_SC_DISABLE_SPEEDY\n      : typeof process !== 'undefined' &&\n          typeof process.env !== 'undefined' &&\n          typeof process.env.SC_DISABLE_SPEEDY !== 'undefined' &&\n          process.env.SC_DISABLE_SPEEDY !== ''\n        ? process.env.SC_DISABLE_SPEEDY === 'false'\n          ? false\n          : process.env.SC_DISABLE_SPEEDY\n        : process.env.NODE_ENV !== 'production'\n);\n\n// Shared empty execution context when generating static styles\nexport const STATIC_EXECUTION_CONTEXT = {};\n","import { Dict } from '../types';\nimport errorMap from './errors';\n\nconst ERRORS: Dict<any> = process.env.NODE_ENV !== 'production' ? errorMap : {};\n\n/**\n * super basic version of sprintf\n */\nfunction format(...args: [string, ...any]) {\n  let a = args[0];\n  const b = [];\n\n  for (let c = 1, len = args.length; c < len; c += 1) {\n    b.push(args[c]);\n  }\n\n  b.forEach(d => {\n    a = a.replace(/%[a-z]/, d);\n  });\n\n  return a;\n}\n\n/**\n * Create an error file out of errors.md for development and a simple web link to the full errors\n * in production mode.\n */\nexport default function throwStyledComponentsError(\n  code: string | number,\n  ...interpolations: any[]\n) {\n  if (process.env.NODE_ENV === 'production') {\n    return new Error(\n      `An error occurred. See https://github.com/styled-components/styled-components/blob/main/packages/styled-components/src/utils/errors.md#${code} for more information.${\n        interpolations.length > 0 ? ` Args: ${interpolations.join(', ')}` : ''\n      }`\n    );\n  } else {\n    return new Error(format(ERRORS[code], ...interpolations).trim());\n  }\n}\n","export default {\n  '1': 'Cannot create styled-component for component: %s.\\n\\n',\n  '2': \"Can't collect styles once you've consumed a `ServerStyleSheet`'s styles! `ServerStyleSheet` is a one off instance for each server-side render cycle.\\n\\n- Are you trying to reuse it across renders?\\n- Are you accidentally calling collectStyles twice?\\n\\n\",\n  '3': 'Streaming SSR is only supported in a Node.js environment; Please do not try to call this method in the browser.\\n\\n',\n  '4': 'The `StyleSheetManager` expects a valid target or sheet prop!\\n\\n- Does this error occur on the client and is your target falsy?\\n- Does this error occur on the server and is the sheet falsy?\\n\\n',\n  '5': 'The clone method cannot be used on the client!\\n\\n- Are you running in a client-like environment on the server?\\n- Are you trying to run SSR on the client?\\n\\n',\n  '6': \"Trying to insert a new style tag, but the given Node is unmounted!\\n\\n- Are you using a custom target that isn't mounted?\\n- Does your document not have a valid head element?\\n- Have you accidentally removed a style tag manually?\\n\\n\",\n  '7': 'ThemeProvider: Please return an object from your \"theme\" prop function, e.g.\\n\\n```js\\ntheme={() => ({})}\\n```\\n\\n',\n  '8': 'ThemeProvider: Please make your \"theme\" prop an object.\\n\\n',\n  '9': 'Missing document `<head>`\\n\\n',\n  '10': 'Cannot find a StyleSheet instance. Usually this happens if there are multiple copies of styled-components loaded at once. Check out this issue for how to troubleshoot and fix the common cases where this situation can happen: https://github.com/styled-components/styled-components/issues/1941#issuecomment-417862021\\n\\n',\n  '11': '_This error was replaced with a dev-time warning, it will be deleted for v4 final._ [createGlobalStyle] received children which will not be rendered. Please use the component without passing children elements.\\n\\n',\n  '12': 'It seems you are interpolating a keyframe declaration (%s) into an untagged string. This was supported in styled-components v3, but is not longer supported in v4 as keyframes are now injected on-demand. Please wrap your string in the css\\\\`\\\\` helper which ensures the styles are injected correctly. See https://www.styled-components.com/docs/api#css\\n\\n',\n  '13': '%s is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.\\n\\n',\n  '14': 'ThemeProvider: \"theme\" prop is required.\\n\\n',\n  '15': \"A stylis plugin has been supplied that is not named. We need a name for each plugin to be able to prevent styling collisions between different stylis configurations within the same app. Before you pass your plugin to `<StyleSheetManager stylisPlugins={[]}>`, please make sure each plugin is uniquely-named, e.g.\\n\\n```js\\nObject.defineProperty(importedPlugin, 'name', { value: 'some-unique-name' });\\n```\\n\\n\",\n  '16': \"Reached the limit of how many styled components may be created at group %s.\\nYou may only create up to 1,073,741,824 components. If you're creating components dynamically,\\nas for instance in your render method then you may be running into this limitation.\\n\\n\",\n  '17': \"CSSStyleSheet could not be found on HTMLStyleElement.\\nHas styled-components' style tag been unmounted or altered by another script?\\n\",\n  '18': 'ThemeProvider: Please make sure your useTheme hook is within a `<ThemeProvider>`',\n};\n","import styledError from '../utils/error';\n\nconst MAX_SMI = 1 << (31 - 1);\n\nlet groupIDRegister: Map<string, number> = new Map();\nlet reverseRegister: Map<number, string> = new Map();\nlet nextFreeGroup = 1;\n\nexport const resetGroupIds = () => {\n  groupIDRegister = new Map();\n  reverseRegister = new Map();\n  nextFreeGroup = 1;\n};\n\nexport const getGroupForId = (id: string): number => {\n  if (groupIDRegister.has(id)) {\n    return groupIDRegister.get(id) as any;\n  }\n\n  while (reverseRegister.has(nextFreeGroup)) {\n    nextFreeGroup++;\n  }\n\n  const group = nextFreeGroup++;\n\n  if (process.env.NODE_ENV !== 'production' && ((group | 0) < 0 || group > MAX_SMI)) {\n    throw styledError(16, `${group}`);\n  }\n\n  groupIDRegister.set(id, group);\n  reverseRegister.set(group, id);\n  return group;\n};\n\nexport const getIdForGroup = (group: number): void | string => {\n  return reverseRegister.get(group);\n};\n\nexport const setGroupForId = (id: string, group: number) => {\n  // move pointer\n  nextFreeGroup = group + 1;\n\n  groupIDRegister.set(id, group);\n  reverseRegister.set(group, id);\n};\n","import React from 'react';\nimport { IS_RSC } from '../constants';\n\nconst invalidHookCallRe = /invalid hook call/i;\nconst seen = new Set();\n\nexport const checkDynamicCreation = (displayName: string, componentId?: string | undefined) => {\n  if (process.env.NODE_ENV !== 'production') {\n    // Skip check in RSC environments where:\n    // 1. Components are always module-level (can't be in render functions)\n    // 2. Hook detection is unreliable due to different module evaluation context\n    if (IS_RSC) {\n      return;\n    }\n\n    const parsedIdString = componentId ? ` with the id of \"${componentId}\"` : '';\n    const message =\n      `The component ${displayName}${parsedIdString} has been created dynamically.\\n` +\n      \"You may see this warning because you've called styled inside another component.\\n\" +\n      'To resolve this only create new StyledComponents outside of any render method and function component.\\n' +\n      'See https://styled-components.com/docs/basics#define-styled-components-outside-of-the-render-method for more info.\\n';\n\n    // If a hook is called outside of a component:\n    // React 17 and earlier throw an error\n    // React 18 and above use console.error\n\n    const originalConsoleError = console.error;\n    try {\n      let didNotCallInvalidHook = true;\n      console.error = (consoleErrorMessage, ...consoleErrorArgs) => {\n        // The error here is expected, since we're expecting anything that uses `checkDynamicCreation` to\n        // be called outside of a React component.\n        if (invalidHookCallRe.test(consoleErrorMessage)) {\n          didNotCallInvalidHook = false;\n          // This shouldn't happen, but resets `warningSeen` if we had this error happen intermittently\n          seen.delete(message);\n        } else {\n          originalConsoleError(consoleErrorMessage, ...consoleErrorArgs);\n        }\n      };\n      // We purposefully call a hook outside of a component and expect it to throw\n      // If it doesn't, then we're inside another component.\n      // Use useState instead of useRef to avoid importing useRef\n      if (typeof React.useState === 'function') {\n        React.useState(null);\n      }\n\n      if (didNotCallInvalidHook && !seen.has(message)) {\n        console.warn(message);\n        seen.add(message);\n      }\n    } catch (error) {\n      // The error here is expected, since we're expecting anything that uses `checkDynamicCreation` to\n      // be called outside of a React component.\n      if (invalidHookCallRe.test((error as Error).message)) {\n        // This shouldn't happen, but resets `warningSeen` if we had this error happen intermittently\n        seen.delete(message);\n      }\n    } finally {\n      console.error = originalConsoleError;\n    }\n  }\n};\n","import { Dict } from '../types';\n\nexport const EMPTY_ARRAY = Object.freeze([]) as Readonly<any[]>;\nexport const EMPTY_OBJECT = Object.freeze({}) as Readonly<Dict<any>>;\n","import { DefaultTheme, ExecutionProps } from '../types';\nimport { EMPTY_OBJECT } from './empties';\n\nexport default function determineTheme(\n  props: ExecutionProps,\n  providedTheme?: DefaultTheme | undefined,\n  defaultProps: { theme?: DefaultTheme | undefined } = EMPTY_OBJECT\n): DefaultTheme | undefined {\n  return (props.theme !== defaultProps.theme && props.theme) || providedTheme || defaultProps.theme;\n}\n","const elements = [\n  'a',\n  'abbr',\n  'address',\n  'area',\n  'article',\n  'aside',\n  'audio',\n  'b',\n  'bdi',\n  'bdo',\n  'blockquote',\n  'body',\n  'button',\n  'br',\n  'canvas',\n  'caption',\n  'cite',\n  'code',\n  'col',\n  'colgroup',\n  'data',\n  'datalist',\n  'dd',\n  'del',\n  'details',\n  'dfn',\n  'dialog',\n  'div',\n  'dl',\n  'dt',\n  'em',\n  'embed',\n  'fieldset',\n  'figcaption',\n  'figure',\n  'footer',\n  'form',\n  'h1',\n  'h2',\n  'h3',\n  'h4',\n  'h5',\n  'h6',\n  'header',\n  'hgroup',\n  'hr',\n  'html',\n  'i',\n  'iframe',\n  'img',\n  'input',\n  'ins',\n  'kbd',\n  'label',\n  'legend',\n  'li',\n  'main',\n  'map',\n  'mark',\n  'menu',\n  'meter',\n  'nav',\n  'object',\n  'ol',\n  'optgroup',\n  'option',\n  'output',\n  'p',\n  'picture',\n  'pre',\n  'progress',\n  'q',\n  'rp',\n  'rt',\n  'ruby',\n  's',\n  'samp',\n  'search',\n  'section',\n  'select',\n  'slot',\n  'small',\n  'span',\n  'strong',\n  'sub',\n  'summary',\n  'sup',\n  'table',\n  'tbody',\n  'td',\n  'template',\n  'textarea',\n  'tfoot',\n  'th',\n  'thead',\n  'time',\n  'tr',\n  'u',\n  'ul',\n  'var',\n  'video',\n  'wbr',\n  'circle',\n  'clipPath',\n  'defs',\n  'ellipse',\n  'feBlend',\n  'feColorMatrix',\n  'feComponentTransfer',\n  'feComposite',\n  'feConvolveMatrix',\n  'feDiffuseLighting',\n  'feDisplacementMap',\n  'feDistantLight',\n  'feDropShadow',\n  'feFlood',\n  'feFuncA',\n  'feFuncB',\n  'feFuncG',\n  'feFuncR',\n  'feGaussianBlur',\n  'feImage',\n  'feMerge',\n  'feMergeNode',\n  'feMorphology',\n  'feOffset',\n  'fePointLight',\n  'feSpecularLighting',\n  'feSpotLight',\n  'feTile',\n  'feTurbulence',\n  'filter',\n  'foreignObject',\n  'g',\n  'image',\n  'line',\n  'linearGradient',\n  'marker',\n  'mask',\n  'path',\n  'pattern',\n  'polygon',\n  'polyline',\n  'radialGradient',\n  'rect',\n  'stop',\n  'svg',\n  'switch',\n  'symbol',\n  'text',\n  'textPath',\n  'tspan',\n  'use',\n] as const;\n\nexport default new Set(elements);\nexport type SupportedHTMLElements = (typeof elements)[number];\n","// Source: https://www.w3.org/TR/cssom-1/#serialize-an-identifier\n// Control characters and non-letter first symbols are not supported\nconst escapeRegex = /[!\"#$%&'()*+,./:;<=>?@[\\\\\\]^`{|}~-]+/g;\n\nconst dashesAtEnds = /(^-|-$)/g;\n\n/**\n * TODO: Explore using CSS.escape when it becomes more available\n * in evergreen browsers.\n */\nexport default function escape(str: string) {\n  return str // Replace all possible CSS selectors\n    .replace(escapeRegex, '-') // Remove extraneous hyphens at the start and end\n    .replace(dashesAtEnds, '');\n}\n","const AD_REPLACER_R = /(a)(d)/gi;\n\n/* This is the \"capacity\" of our alphabet i.e. 2x26 for all letters plus their capitalised\n * counterparts */\nconst charsLength = 52;\n\n/* start at 75 for 'a' until 'z' (25) and then start at 65 for capitalised letters */\nconst getAlphabeticChar = (code: number) => String.fromCharCode(code + (code > 25 ? 39 : 97));\n\n/* input a number, usually a hash and convert it to base-52 */\nexport default function generateAlphabeticName(code: number) {\n  let name = '';\n  let x;\n\n  /* get a char and divide by alphabet-length */\n  for (x = Math.abs(code); x > charsLength; x = (x / charsLength) | 0) {\n    name = getAlphabeticChar(x % charsLength) + name;\n  }\n\n  return (getAlphabeticChar(x % charsLength) + name).replace(AD_REPLACER_R, '$1-$2');\n}\n","export const SEED = 5381;\n\n// When we have separate strings it's useful to run a progressive\n// version of djb2 where we pretend that we're still looping over\n// the same string\nexport const phash = (h: number, x: string) => {\n  let i = x.length;\n\n  while (i) {\n    h = (h * 33) ^ x.charCodeAt(--i);\n  }\n\n  return h;\n};\n\n// This is a djb2 hashing function\nexport const hash = (x: string) => {\n  return phash(SEED, x);\n};\n","import generateAlphabeticName from './generateAlphabeticName';\nimport { hash } from './hash';\n\nexport default function generateComponentId(str: string) {\n  return generateAlphabeticName(hash(str) >>> 0);\n}\n","import { StyledTarget } from '../types';\n\nexport default function getComponentName(target: StyledTarget<any>) {\n  return (\n    (process.env.NODE_ENV !== 'production' ? typeof target === 'string' && target : false) ||\n    (target as Exclude<StyledTarget<any>, string>).displayName ||\n    (target as Function).name ||\n    'Component'\n  );\n}\n","import { StyledTarget } from '../types';\n\nexport default function isTag(target: StyledTarget<'web'>): target is string {\n  return (\n    typeof target === 'string' &&\n    (process.env.NODE_ENV !== 'production'\n      ? target.charAt(0) === target.charAt(0).toLowerCase()\n      : true)\n  );\n}\n","import React from 'react';\nimport { AnyComponent } from '../types';\n\nconst hasSymbol = typeof Symbol === 'function' && Symbol.for;\n\n// copied from react-is\nconst REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nconst REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\n\n/**\n * Adapted from hoist-non-react-statics to avoid the react-is dependency.\n */\nconst REACT_STATICS = {\n  childContextTypes: true,\n  contextType: true,\n  contextTypes: true,\n  defaultProps: true,\n  displayName: true,\n  getDefaultProps: true,\n  getDerivedStateFromError: true,\n  getDerivedStateFromProps: true,\n  mixins: true,\n  propTypes: true,\n  type: true,\n};\n\nconst KNOWN_STATICS = {\n  name: true,\n  length: true,\n  prototype: true,\n  caller: true,\n  callee: true,\n  arguments: true,\n  arity: true,\n};\n\nconst FORWARD_REF_STATICS = {\n  $$typeof: true,\n  render: true,\n  defaultProps: true,\n  displayName: true,\n  propTypes: true,\n};\n\nconst MEMO_STATICS = {\n  $$typeof: true,\n  compare: true,\n  defaultProps: true,\n  displayName: true,\n  propTypes: true,\n  type: true,\n};\n\nconst TYPE_STATICS = {\n  [REACT_FORWARD_REF_TYPE]: FORWARD_REF_STATICS,\n  [REACT_MEMO_TYPE]: MEMO_STATICS,\n};\n\ntype OmniComponent = AnyComponent;\n\n// adapted from react-is\nfunction isMemo(\n  object: OmniComponent | React.MemoExoticComponent<any>\n): object is React.MemoExoticComponent<any> {\n  const $$typeofType = 'type' in object && object.type.$$typeof;\n\n  return $$typeofType === REACT_MEMO_TYPE;\n}\n\nfunction getStatics(component: OmniComponent) {\n  // React v16.11 and below\n  if (isMemo(component)) {\n    return MEMO_STATICS;\n  }\n\n  // React v16.12 and above\n  return '$$typeof' in component\n    ? TYPE_STATICS[component['$$typeof'] as unknown as string]\n    : REACT_STATICS;\n}\n\nconst defineProperty = Object.defineProperty;\nconst getOwnPropertyNames = Object.getOwnPropertyNames;\nconst getOwnPropertySymbols = Object.getOwnPropertySymbols;\nconst getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nconst getPrototypeOf = Object.getPrototypeOf;\nconst objectPrototype = Object.prototype;\n\ntype ExcludeList = {\n  [key: string]: true;\n};\n\nexport type NonReactStatics<S extends OmniComponent, C extends ExcludeList = {}> = {\n  [key in Exclude<\n    keyof S,\n    S extends React.MemoExoticComponent<any>\n      ? keyof typeof MEMO_STATICS | keyof C\n      : S extends React.ForwardRefExoticComponent<any>\n        ? keyof typeof FORWARD_REF_STATICS | keyof C\n        : keyof typeof REACT_STATICS | keyof typeof KNOWN_STATICS | keyof C\n  >]: S[key];\n};\n\nexport default function hoistNonReactStatics<\n  T extends OmniComponent,\n  S extends OmniComponent,\n  C extends ExcludeList = {},\n>(targetComponent: T, sourceComponent: S, excludelist?: C | undefined) {\n  if (typeof sourceComponent !== 'string') {\n    // don't hoist over string (html) components\n\n    if (objectPrototype) {\n      const inheritedComponent = getPrototypeOf(sourceComponent);\n      if (inheritedComponent && inheritedComponent !== objectPrototype) {\n        hoistNonReactStatics(targetComponent, inheritedComponent, excludelist);\n      }\n    }\n\n    let keys: (String | Symbol)[] = getOwnPropertyNames(sourceComponent);\n\n    if (getOwnPropertySymbols) {\n      keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n    }\n\n    const targetStatics = getStatics(targetComponent);\n    const sourceStatics = getStatics(sourceComponent);\n\n    for (let i = 0; i < keys.length; ++i) {\n      const key = keys[i] as unknown as string;\n      if (\n        !(key in KNOWN_STATICS) &&\n        !(excludelist && excludelist[key]) &&\n        !(sourceStatics && key in sourceStatics) &&\n        !(targetStatics && key in targetStatics)\n      ) {\n        const descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n        try {\n          // Avoid failures from read-only properties\n          defineProperty(targetComponent, key, descriptor!);\n        } catch (e) {\n          /* ignore */\n        }\n      }\n    }\n  }\n\n  return targetComponent as T & NonReactStatics<S, C>;\n}\n","export default function isFunction(test: any): test is Function {\n  return typeof test === 'function';\n}\n","import { StyledComponentBrand } from '../types';\n\nexport default function isStyledComponent(target: any): target is StyledComponentBrand {\n  return typeof target === 'object' && 'styledComponentId' in target;\n}\n","/**\n * Convenience function for joining strings to form className chains\n */\nexport function joinStrings(a?: string | undefined, b?: string | undefined): string {\n  return a && b ? `${a} ${b}` : a || b || '';\n}\n\nexport function joinStringArray(arr: string[], sep?: string | undefined): string {\n  return arr.join(sep || '');\n}\n","export default function isPlainObject(x: any): x is Record<any, any> {\n  return (\n    x !== null &&\n    typeof x === 'object' &&\n    x.constructor.name === Object.name &&\n    /* check for reasonable markers that the object isn't an element for react & preact/compat */\n    !('props' in x && x.$$typeof)\n  );\n}\n","import isPlainObject from './isPlainObject';\n\nfunction mixinRecursively(target: any, source: any, forceMerge = false) {\n  /* only merge into POJOs, Arrays, but for top level objects only\n   * allow to merge into anything by passing forceMerge = true */\n  if (!forceMerge && !isPlainObject(target) && !Array.isArray(target)) {\n    return source;\n  }\n\n  if (Array.isArray(source)) {\n    for (let key = 0; key < source.length; key++) {\n      target[key] = mixinRecursively(target[key], source[key]);\n    }\n  } else if (isPlainObject(source)) {\n    for (const key in source) {\n      target[key] = mixinRecursively(target[key], source[key]);\n    }\n  }\n\n  return target;\n}\n\n/**\n * Arrays & POJOs merged recursively, other objects and value types are overridden\n * If target is not a POJO or an Array, it will get source properties injected via shallow merge\n * Source objects applied left to right.  Mutates & returns target.  Similar to lodash merge.\n */\nexport default function mixinDeep(target: any, ...sources: any[]) {\n  for (const source of sources) {\n    mixinRecursively(target, source, true);\n  }\n\n  return target;\n}\n","/**\n * If the Object prototype is frozen, the \"toString\" property is non-writable. This means that any objects which inherit this property\n * cannot have the property changed using a \"=\" assignment operator. If using strict mode, attempting that will cause an error. If not using\n * strict mode, attempting that will be silently ignored.\n *\n * If the Object prototype is frozen, inherited non-writable properties can still be shadowed using one of two mechanisms:\n *\n *  1. ES6 class methods: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes#methods\n *  2. Using the `Object.defineProperty()` static method:\n *     https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty\n *\n * However, this project uses Babel to transpile ES6 classes, and transforms ES6 class methods to use the assignment operator instead:\n * https://babeljs.io/docs/babel-plugin-transform-class-properties#options\n *\n * Therefore, the most compatible way to shadow the prototype's \"toString\" property is to define a new \"toString\" property on this object.\n */\nexport function setToString(object: object, toStringFn: () => string) {\n  Object.defineProperty(object, 'toString', { value: toStringFn });\n}\n","import { SPLITTER } from '../constants';\nimport styledError from '../utils/error';\nimport { GroupedTag, Tag } from './types';\n\n/** Create a GroupedTag with an underlying Tag implementation */\nexport const makeGroupedTag = (tag: Tag) => {\n  return new DefaultGroupedTag(tag);\n};\n\nconst BASE_SIZE = 1 << 9;\n\nconst DefaultGroupedTag = class DefaultGroupedTag implements GroupedTag {\n  groupSizes: Uint32Array;\n  length: number;\n  tag: Tag;\n\n  // Cached position for O(1) sequential indexOfGroup lookups.\n  // Avoids the O(n) linear scan on every call by remembering the last\n  // computed (group → absoluteIndex) pair and scanning incrementally.\n  _cGroup: number;\n  _cIndex: number;\n\n  constructor(tag: Tag) {\n    this.groupSizes = new Uint32Array(BASE_SIZE);\n    this.length = BASE_SIZE;\n    this.tag = tag;\n    this._cGroup = 0;\n    this._cIndex = 0;\n  }\n\n  indexOfGroup(group: number) {\n    if (group === this._cGroup) return this._cIndex;\n\n    let index = this._cIndex;\n\n    if (group > this._cGroup) {\n      for (let i = this._cGroup; i < group; i++) {\n        index += this.groupSizes[i];\n      }\n    } else {\n      for (let i = this._cGroup - 1; i >= group; i--) {\n        index -= this.groupSizes[i];\n      }\n    }\n\n    this._cGroup = group;\n    this._cIndex = index;\n    return index;\n  }\n\n  insertRules(group: number, rules: string[]) {\n    if (group >= this.groupSizes.length) {\n      const oldBuffer = this.groupSizes;\n      const oldSize = oldBuffer.length;\n\n      let newSize = oldSize;\n      while (group >= newSize) {\n        newSize <<= 1;\n        if (newSize < 0) {\n          throw styledError(16, `${group}`);\n        }\n      }\n\n      this.groupSizes = new Uint32Array(newSize);\n      this.groupSizes.set(oldBuffer);\n      this.length = newSize;\n\n      for (let i = oldSize; i < newSize; i++) {\n        this.groupSizes[i] = 0;\n      }\n    }\n\n    let ruleIndex = this.indexOfGroup(group + 1);\n    let insertedCount = 0;\n\n    for (let i = 0, l = rules.length; i < l; i++) {\n      if (this.tag.insertRule(ruleIndex, rules[i])) {\n        this.groupSizes[group]++;\n        ruleIndex++;\n        insertedCount++;\n      }\n    }\n\n    // Keep cache consistent: groups after the insertion point shift forward\n    if (insertedCount > 0 && this._cGroup > group) {\n      this._cIndex += insertedCount;\n    }\n  }\n\n  clearGroup(group: number) {\n    if (group < this.length) {\n      const length = this.groupSizes[group];\n      const startIndex = this.indexOfGroup(group);\n      const endIndex = startIndex + length;\n\n      this.groupSizes[group] = 0;\n\n      for (let i = startIndex; i < endIndex; i++) {\n        this.tag.deleteRule(startIndex);\n      }\n\n      // Keep cache consistent: groups after the cleared group shift backward\n      if (length > 0 && this._cGroup > group) {\n        this._cIndex -= length;\n      }\n    }\n  }\n\n  getGroup(group: number) {\n    let css = '';\n    if (group >= this.length || this.groupSizes[group] === 0) {\n      return css;\n    }\n\n    const length = this.groupSizes[group];\n    const startIndex = this.indexOfGroup(group);\n    const endIndex = startIndex + length;\n\n    for (let i = startIndex; i < endIndex; i++) {\n      css += this.tag.getRule(i) + SPLITTER;\n    }\n\n    return css;\n  }\n};\n","import { SC_ATTR, SC_ATTR_ACTIVE, SC_ATTR_VERSION, SC_VERSION, SPLITTER } from '../constants';\nimport { InsertionTarget } from '../types';\nimport { getIdForGroup, setGroupForId } from './GroupIDAllocator';\nimport { Sheet } from './types';\n\nconst SELECTOR = `style[${SC_ATTR}][${SC_ATTR_VERSION}=\"${SC_VERSION}\"]`;\nconst MARKER_RE = new RegExp(`^${SC_ATTR}\\\\.g(\\\\d+)\\\\[id=\"([\\\\w\\\\d-]+)\"\\\\].*?\"([^\"]*)`);\n\n/**\n * Type guard to check if a node is a ShadowRoot.\n * Uses instanceof when available, with duck-typing fallback for cross-realm scenarios.\n */\nconst isShadowRoot = (node: InsertionTarget | Node): node is ShadowRoot => {\n  return (\n    (typeof ShadowRoot !== 'undefined' && node instanceof ShadowRoot) ||\n    ('host' in node &&\n      // https://dom.spec.whatwg.org/#dom-node-document_fragment_node\n      node.nodeType === 11)\n  );\n};\n\n/**\n * Extract the container (Document or ShadowRoot) from an InsertionTarget.\n * If the target is a ShadowRoot, return it directly.\n * If the target is an HTMLElement, return its root node if it's a ShadowRoot, otherwise return document.\n */\nexport const getRehydrationContainer = (\n  target?: InsertionTarget | undefined\n): Document | ShadowRoot => {\n  if (!target) {\n    return document;\n  }\n\n  // Check if target is a ShadowRoot\n  if (isShadowRoot(target)) {\n    return target;\n  }\n\n  // Check if target is an HTMLElement inside a ShadowRoot\n  if ('getRootNode' in target) {\n    const root = (target as HTMLElement).getRootNode();\n    if (isShadowRoot(root)) {\n      return root;\n    }\n  }\n\n  return document;\n};\n\nexport const outputSheet = (sheet: Sheet) => {\n  const tag = sheet.getTag();\n  const { length } = tag;\n\n  let css = '';\n  for (let group = 0; group < length; group++) {\n    const id = getIdForGroup(group);\n    if (id === undefined) continue;\n\n    const names = sheet.names.get(id);\n    if (names === undefined || !names.size) continue;\n\n    const rules = tag.getGroup(group);\n    if (rules.length === 0) continue;\n\n    const selector = SC_ATTR + '.g' + group + '[id=\"' + id + '\"]';\n\n    let content = '';\n    names.forEach(name => {\n      if (name.length > 0) {\n        content += name + ',';\n      }\n    });\n\n    // NOTE: It's easier to collect rules and have the marker\n    // after the actual rules to simplify the rehydration\n    css += rules + selector + '{content:\"' + content + '\"}' + SPLITTER;\n  }\n\n  return css;\n};\n\nconst rehydrateNamesFromContent = (sheet: Sheet, id: string, content: string) => {\n  const names = content.split(',');\n  let name;\n\n  for (let i = 0, l = names.length; i < l; i++) {\n    if ((name = names[i])) {\n      sheet.registerName(id, name);\n    }\n  }\n};\n\nconst rehydrateSheetFromTag = (sheet: Sheet, style: HTMLStyleElement) => {\n  const parts = (style.textContent ?? '').split(SPLITTER);\n  const rules: string[] = [];\n\n  for (let i = 0, l = parts.length; i < l; i++) {\n    const part = parts[i].trim();\n    if (!part) continue;\n\n    const marker = part.match(MARKER_RE);\n\n    if (marker) {\n      const group = parseInt(marker[1], 10) | 0;\n      const id = marker[2];\n\n      if (group !== 0) {\n        // Rehydrate componentId to group index mapping\n        setGroupForId(id, group);\n        // Rehydrate names and rules\n        // looks like: data-styled.g11[id=\"idA\"]{content:\"nameA,\"}\n        rehydrateNamesFromContent(sheet, id, marker[3]);\n        sheet.getTag().insertRules(group, rules);\n      }\n\n      rules.length = 0;\n    } else {\n      rules.push(part);\n    }\n  }\n};\n\nexport const rehydrateSheet = (sheet: Sheet) => {\n  const container = getRehydrationContainer(sheet.options.target);\n  const nodes = container.querySelectorAll(SELECTOR);\n\n  for (let i = 0, l = nodes.length; i < l; i++) {\n    const node = nodes[i] as any as HTMLStyleElement;\n    if (node && node.getAttribute(SC_ATTR) !== SC_ATTR_ACTIVE) {\n      rehydrateSheetFromTag(sheet, node);\n\n      if (node.parentNode) {\n        node.parentNode.removeChild(node);\n      }\n    }\n  }\n};\n","declare let __webpack_nonce__: string;\n\nexport default function getNonce() {\n  return typeof __webpack_nonce__ !== 'undefined' ? __webpack_nonce__ : null;\n}\n","import { SC_ATTR, SC_ATTR_ACTIVE, SC_ATTR_VERSION, SC_VERSION } from '../constants';\nimport { InsertionTarget } from '../types';\nimport styledError from '../utils/error';\nimport getNonce from '../utils/nonce';\n\n/** Find last style element if any inside target */\nconst findLastStyleTag = (target: InsertionTarget): void | HTMLStyleElement => {\n  const arr = Array.from(target.querySelectorAll<HTMLStyleElement>(`style[${SC_ATTR}]`));\n\n  return arr[arr.length - 1];\n};\n\n/** Create a style element inside `target` or <head> after the last */\nexport const makeStyleTag = (target?: InsertionTarget | undefined): HTMLStyleElement => {\n  const head = document.head;\n  const parent = target || head;\n  const style = document.createElement('style');\n  const prevStyle = findLastStyleTag(parent);\n  const nextSibling = prevStyle !== undefined ? prevStyle.nextSibling : null;\n\n  style.setAttribute(SC_ATTR, SC_ATTR_ACTIVE);\n  style.setAttribute(SC_ATTR_VERSION, SC_VERSION);\n\n  const nonce = getNonce();\n\n  if (nonce) style.setAttribute('nonce', nonce);\n\n  parent.insertBefore(style, nextSibling);\n\n  return style;\n};\n\n/** Get the CSSStyleSheet instance for a given style element */\nexport const getSheet = (tag: HTMLStyleElement): CSSStyleSheet => {\n  if (tag.sheet) {\n    return tag.sheet as any as CSSStyleSheet;\n  }\n\n  // Avoid Firefox quirk where the style element might not have a sheet property.\n  // Use the tag's root node to find styleSheets — document.styleSheets doesn't\n  // include sheets inside shadow roots.\n  const root = tag.getRootNode() as Document | ShadowRoot;\n  const styleSheets = root.styleSheets ?? document.styleSheets;\n  for (let i = 0, l = styleSheets.length; i < l; i++) {\n    const sheet = styleSheets[i];\n    if (sheet.ownerNode === tag) {\n      return sheet as any as CSSStyleSheet;\n    }\n  }\n\n  throw styledError(17);\n};\n\n/** Remove a GlobalStyle's SSR-rendered inline style tag(s) from the DOM */\nexport const removeGlobalStyleTag = (componentId: string, target?: InsertionTarget): void => {\n  if (typeof document === 'undefined') return;\n\n  const container = target ?? document;\n  const styleTags = container.querySelectorAll(`style[data-styled-global=\"${componentId}\"]`);\n  styleTags.forEach(tag => tag.remove());\n};\n","import { InsertionTarget } from '../types';\nimport { getSheet, makeStyleTag } from './dom';\nimport { SheetOptions, Tag } from './types';\n\n/** Create a CSSStyleSheet-like tag depending on the environment */\nexport const makeTag = ({ isServer, useCSSOMInjection, target }: SheetOptions) => {\n  if (isServer) {\n    return new VirtualTag(target);\n  } else if (useCSSOMInjection) {\n    return new CSSOMTag(target);\n  } else {\n    return new TextTag(target);\n  }\n};\n\nexport const CSSOMTag = class CSSOMTag implements Tag {\n  element: HTMLStyleElement;\n\n  sheet: CSSStyleSheet;\n\n  length: number;\n\n  constructor(target?: InsertionTarget | undefined) {\n    this.element = makeStyleTag(target);\n\n    // Avoid Edge bug where empty style elements don't create sheets\n    this.element.appendChild(document.createTextNode(''));\n\n    this.sheet = getSheet(this.element);\n    this.length = 0;\n  }\n\n  insertRule(index: number, rule: string): boolean {\n    try {\n      this.sheet.insertRule(rule, index);\n      this.length++;\n      return true;\n    } catch (_error) {\n      return false;\n    }\n  }\n\n  deleteRule(index: number): void {\n    this.sheet.deleteRule(index);\n    this.length--;\n  }\n\n  getRule(index: number): string {\n    const rule = this.sheet.cssRules[index];\n\n    // Avoid IE11 quirk where cssText is inaccessible on some invalid rules\n    if (rule && rule.cssText) {\n      return rule.cssText;\n    } else {\n      return '';\n    }\n  }\n};\n\n/** A Tag that emulates the CSSStyleSheet API but uses text nodes */\nexport const TextTag = class TextTag implements Tag {\n  element: HTMLStyleElement;\n  nodes: NodeListOf<Node>;\n  length: number;\n\n  constructor(target?: InsertionTarget | undefined) {\n    this.element = makeStyleTag(target);\n    this.nodes = this.element.childNodes;\n    this.length = 0;\n  }\n\n  insertRule(index: number, rule: string) {\n    if (index <= this.length && index >= 0) {\n      const node = document.createTextNode(rule);\n      const refNode = this.nodes[index];\n      this.element.insertBefore(node, refNode || null);\n      this.length++;\n      return true;\n    } else {\n      return false;\n    }\n  }\n\n  deleteRule(index: number) {\n    this.element.removeChild(this.nodes[index]);\n    this.length--;\n  }\n\n  getRule(index: number) {\n    if (index < this.length) {\n      return this.nodes[index].textContent as string;\n    } else {\n      return '';\n    }\n  }\n};\n\n/** A completely virtual (server-side) Tag that doesn't manipulate the DOM */\nexport const VirtualTag = class VirtualTag implements Tag {\n  rules: string[];\n\n  length: number;\n\n  constructor(_target?: InsertionTarget | undefined) {\n    this.rules = [];\n    this.length = 0;\n  }\n\n  insertRule(index: number, rule: string) {\n    if (index <= this.length) {\n      if (index === this.length) {\n        this.rules.push(rule);\n      } else {\n        this.rules.splice(index, 0, rule);\n      }\n      this.length++;\n      return true;\n    } else {\n      return false;\n    }\n  }\n\n  deleteRule(index: number) {\n    this.rules.splice(index, 1);\n    this.length--;\n  }\n\n  getRule(index: number) {\n    if (index < this.length) {\n      return this.rules[index];\n    } else {\n      return '';\n    }\n  }\n};\n","import { DISABLE_SPEEDY, IS_BROWSER } from '../constants';\nimport { InsertionTarget } from '../types';\nimport { EMPTY_OBJECT } from '../utils/empties';\nimport { setToString } from '../utils/setToString';\nimport { makeGroupedTag } from './GroupedTag';\nimport { getGroupForId } from './GroupIDAllocator';\nimport { getRehydrationContainer, outputSheet, rehydrateSheet } from './Rehydration';\nimport { makeTag } from './Tag';\nimport { GroupedTag, Sheet, SheetOptions } from './types';\n\nlet SHOULD_REHYDRATE = IS_BROWSER;\n\ntype SheetConstructorArgs = {\n  isServer?: boolean;\n  useCSSOMInjection?: boolean;\n  target?: InsertionTarget | undefined;\n};\n\ntype GlobalStylesAllocationMap = {\n  [key: string]: number;\n};\ntype NamesAllocationMap = Map<string, Set<string>>;\n\nconst defaultOptions: SheetOptions = {\n  isServer: !IS_BROWSER,\n  useCSSOMInjection: !DISABLE_SPEEDY,\n};\n\n/** Contains the main stylesheet logic for stringification and caching */\nexport default class StyleSheet implements Sheet {\n  gs: GlobalStylesAllocationMap;\n  names: NamesAllocationMap;\n  options: SheetOptions;\n  server: boolean;\n  tag?: GroupedTag | undefined;\n\n  /** Register a group ID to give it an index */\n  static registerId(id: string): number {\n    return getGroupForId(id);\n  }\n\n  constructor(\n    options: SheetConstructorArgs = EMPTY_OBJECT as Object,\n    globalStyles: GlobalStylesAllocationMap = {},\n    names?: NamesAllocationMap | undefined\n  ) {\n    this.options = {\n      ...defaultOptions,\n      ...options,\n    };\n\n    this.gs = globalStyles;\n    this.names = new Map(names as NamesAllocationMap);\n    this.server = !!options.isServer;\n\n    // We rehydrate only once and use the sheet that is created first\n    if (!this.server && IS_BROWSER && SHOULD_REHYDRATE) {\n      SHOULD_REHYDRATE = false;\n      rehydrateSheet(this);\n    }\n\n    setToString(this, () => outputSheet(this));\n  }\n\n  rehydrate(): void {\n    if (!this.server && IS_BROWSER) {\n      rehydrateSheet(this);\n    }\n  }\n\n  reconstructWithOptions(options: SheetConstructorArgs, withNames = true) {\n    const newSheet = new StyleSheet(\n      { ...this.options, ...options },\n      this.gs,\n      (withNames && this.names) || undefined\n    );\n\n    // If we're reconstructing with a new target on the client, check if the container changed\n    // This handles the case where StyleSheetManager's target prop changes (e.g., from undefined to shadowRoot)\n    // We only rehydrate if the container (Document or ShadowRoot) actually changes\n    if (!this.server && IS_BROWSER && options.target !== this.options.target) {\n      const oldContainer = getRehydrationContainer(this.options.target);\n      const newContainer = getRehydrationContainer(options.target);\n\n      if (oldContainer !== newContainer) {\n        rehydrateSheet(newSheet);\n      }\n    }\n\n    return newSheet;\n  }\n\n  allocateGSInstance(id: string) {\n    return (this.gs[id] = (this.gs[id] || 0) + 1);\n  }\n\n  /** Lazily initialises a GroupedTag for when it's actually needed */\n  getTag() {\n    return this.tag || (this.tag = makeGroupedTag(makeTag(this.options)));\n  }\n\n  /** Check whether a name is known for caching */\n  hasNameForId(id: string, name: string): boolean {\n    return this.names.get(id)?.has(name) ?? false;\n  }\n\n  /** Mark a group's name as known for caching */\n  registerName(id: string, name: string) {\n    getGroupForId(id);\n\n    const existing = this.names.get(id);\n    if (existing) {\n      existing.add(name);\n    } else {\n      this.names.set(id, new Set([name]));\n    }\n  }\n\n  /** Insert new rules which also marks the name as known */\n  insertRules(id: string, name: string, rules: string[]) {\n    this.registerName(id, name);\n    this.getTag().insertRules(getGroupForId(id), rules);\n  }\n\n  /** Clears all cached names for a given group ID */\n  clearNames(id: string) {\n    if (this.names.has(id)) {\n      (this.names.get(id) as any).clear();\n    }\n  }\n\n  /** Clears all rules for a given group ID */\n  clearRules(id: string) {\n    this.getTag().clearGroup(getGroupForId(id));\n    this.clearNames(id);\n  }\n\n  /** Clears the entire tag which deletes all rules but not its names */\n  clearTag() {\n    // NOTE: This does not clear the names, since it's only used during SSR\n    // so that we can continuously output only new rules\n    this.tag = undefined;\n  }\n}\n","import * as stylis from 'stylis';\nimport { Stringifier } from '../types';\nimport { EMPTY_ARRAY, EMPTY_OBJECT } from './empties';\nimport throwStyledError from './error';\nimport { SEED, phash } from './hash';\n\nconst AMP_REGEX = /&/g;\n\n// Character codes for fast comparison\nconst DOUBLE_QUOTE = 34; // \"\nconst SINGLE_QUOTE = 39; // '\nconst SLASH = 47; // /\nconst ASTERISK = 42; // *\nconst BACKSLASH = 92; // \\\nconst OPEN_BRACE = 123; // {\nconst CLOSE_BRACE = 125; // }\nconst SEMICOLON = 59; // ;\nconst NEWLINE = 10; // \\n\nconst OPEN_PAREN = 40; // (\nconst CLOSE_PAREN = 41; // )\n\n/**\n * Strips JS-style line comments (//) from CSS, handling comments anywhere\n * in the line while preserving strings, url() contents, and valid CSS.\n * Optimized with early bail and charCodeAt for performance.\n */\nfunction stripLineComments(css: string): string {\n  // Fast path: no // means no line comments\n  if (css.indexOf('//') === -1) return css;\n\n  const len = css.length;\n  const parts: string[] = [];\n  let start = 0;\n  let i = 0;\n  let inString = 0; // 0 = none, DOUBLE_QUOTE or SINGLE_QUOTE when in string\n  let urlDepth = 0; // Track nesting depth inside url()\n\n  while (i < len) {\n    const code = css.charCodeAt(i);\n\n    // Track string state\n    if (\n      (code === DOUBLE_QUOTE || code === SINGLE_QUOTE) &&\n      (i === 0 || css.charCodeAt(i - 1) !== BACKSLASH)\n    ) {\n      if (inString === 0) {\n        inString = code;\n      } else if (inString === code) {\n        inString = 0;\n      }\n      i++;\n      continue;\n    }\n\n    // Skip string content\n    if (inString !== 0) {\n      i++;\n      continue;\n    }\n\n    // Handle CSS block comments: skip /* ... */ entirely\n    if (code === SLASH && i + 1 < len && css.charCodeAt(i + 1) === ASTERISK) {\n      i += 2;\n      while (i + 1 < len && !(css.charCodeAt(i) === ASTERISK && css.charCodeAt(i + 1) === SLASH)) {\n        i++;\n      }\n      i += 2; // skip past */\n      continue;\n    }\n\n    // Track url() context - check for 'url(' (case insensitive via | 32)\n    if (\n      code === OPEN_PAREN &&\n      i >= 3 &&\n      (css.charCodeAt(i - 1) | 32) === 108 && // l\n      (css.charCodeAt(i - 2) | 32) === 114 && // r\n      (css.charCodeAt(i - 3) | 32) === 117 // u\n    ) {\n      urlDepth = 1;\n      i++;\n      continue;\n    }\n\n    // Track nested parentheses inside url()\n    if (urlDepth > 0) {\n      if (code === CLOSE_PAREN) urlDepth--;\n      else if (code === OPEN_PAREN) urlDepth++;\n      i++;\n      continue;\n    }\n\n    // Strip orphaned */ (no matching /*) — invalid CSS that breaks parsing\n    if (code === ASTERISK && i + 1 < len && css.charCodeAt(i + 1) === SLASH) {\n      if (i > start) parts.push(css.substring(start, i));\n      i += 2;\n      start = i;\n      continue;\n    }\n\n    // Check for line comment (only when not in url())\n    if (code === SLASH && i + 1 < len && css.charCodeAt(i + 1) === SLASH) {\n      if (i > start) parts.push(css.substring(start, i));\n      // Skip to end of line\n      while (i < len && css.charCodeAt(i) !== NEWLINE) {\n        i++;\n      }\n      start = i;\n      continue;\n    }\n\n    i++;\n  }\n\n  // No comments found after indexOf check means // was in a string or url()\n  if (start === 0) return css;\n  if (start < len) parts.push(css.substring(start));\n  return parts.join('');\n}\n\n/**\n * Checks if CSS has unbalanced closing braces that would cause stylis\n * to prematurely close rule blocks.\n * Optimized with early bail and charCodeAt for performance.\n */\nfunction hasUnbalancedBraces(css: string): boolean {\n  // Fast path: no closing brace means can't have unbalanced braces\n  if (css.indexOf('}') === -1) return false;\n\n  const len = css.length;\n  let depth = 0;\n  let inString = 0; // 0 = none, char code when in string\n  let inComment = false;\n\n  for (let i = 0; i < len; i++) {\n    const code = css.charCodeAt(i);\n\n    // Handle CSS comments\n    if (inString === 0 && !inComment && code === SLASH && css.charCodeAt(i + 1) === ASTERISK) {\n      inComment = true;\n      i++;\n      continue;\n    }\n    if (inComment) {\n      if (code === ASTERISK && css.charCodeAt(i + 1) === SLASH) {\n        inComment = false;\n        i++;\n      }\n      continue;\n    }\n\n    // Track string state\n    if (\n      (code === DOUBLE_QUOTE || code === SINGLE_QUOTE) &&\n      (i === 0 || css.charCodeAt(i - 1) !== BACKSLASH)\n    ) {\n      if (inString === 0) {\n        inString = code;\n      } else if (inString === code) {\n        inString = 0;\n      }\n      continue;\n    }\n    if (inString !== 0) continue;\n\n    // Track brace depth\n    if (code === OPEN_BRACE) {\n      depth++;\n    } else if (code === CLOSE_BRACE) {\n      depth--;\n      if (depth < 0) return true;\n    }\n  }\n\n  return depth !== 0 || inString !== 0;\n}\n\n/**\n * Sanitizes CSS by removing declarations with unbalanced braces.\n * This contains invalid syntax to just the affected declaration.\n * Optimized with charCodeAt for performance.\n */\nfunction sanitizeCSS(css: string): string {\n  // Fast path: valid CSS passes through unchanged\n  if (!hasUnbalancedBraces(css)) {\n    return css;\n  }\n\n  const len = css.length;\n  let result = '';\n  let declStart = 0;\n  let braceDepth = 0;\n  let inString = 0;\n  let inComment = false;\n\n  for (let i = 0; i < len; i++) {\n    const code = css.charCodeAt(i);\n\n    // Handle CSS comments\n    if (inString === 0 && !inComment && code === SLASH && css.charCodeAt(i + 1) === ASTERISK) {\n      inComment = true;\n      i++;\n      continue;\n    }\n    if (inComment) {\n      if (code === ASTERISK && css.charCodeAt(i + 1) === SLASH) {\n        inComment = false;\n        i++;\n      }\n      continue;\n    }\n\n    // Track string state\n    if (\n      (code === DOUBLE_QUOTE || code === SINGLE_QUOTE) &&\n      (i === 0 || css.charCodeAt(i - 1) !== BACKSLASH)\n    ) {\n      if (inString === 0) {\n        inString = code;\n      } else if (inString === code) {\n        inString = 0;\n      }\n      continue;\n    }\n    if (inString !== 0) continue;\n\n    if (code === OPEN_BRACE) {\n      braceDepth++;\n    } else if (code === CLOSE_BRACE) {\n      braceDepth--;\n\n      if (braceDepth < 0) {\n        // Extra closing brace - skip to next semicolon or newline\n        let skipEnd = i + 1;\n        while (skipEnd < len) {\n          const skipCode = css.charCodeAt(skipEnd);\n          if (skipCode === SEMICOLON || skipCode === NEWLINE) break;\n          skipEnd++;\n        }\n        if (skipEnd < len && css.charCodeAt(skipEnd) === SEMICOLON) skipEnd++;\n\n        braceDepth = 0;\n        i = skipEnd - 1;\n        declStart = skipEnd;\n        continue;\n      }\n\n      if (braceDepth === 0) {\n        result += css.substring(declStart, i + 1);\n        declStart = i + 1;\n      }\n    } else if (code === SEMICOLON && braceDepth === 0) {\n      result += css.substring(declStart, i + 1);\n      declStart = i + 1;\n    }\n  }\n\n  // Add remaining valid content\n  if (declStart < len) {\n    const remaining = css.substring(declStart);\n    if (!hasUnbalancedBraces(remaining)) {\n      result += remaining;\n    }\n  }\n\n  return result;\n}\n\nexport type ICreateStylisInstance = {\n  options?: { namespace?: string | undefined; prefix?: boolean | undefined } | undefined;\n  plugins?: stylis.Middleware[] | undefined;\n};\n\n/**\n * Takes an element and recurses through it's rules added the namespace to the start of each selector.\n * Takes into account media queries by recursing through child rules if they are present.\n */\nfunction recursivelySetNamepace(compiled: stylis.Element[], namespace: String): stylis.Element[] {\n  return compiled.map(rule => {\n    if (rule.type === 'rule') {\n      // add the namespace to the start\n      rule.value = `${namespace} ${rule.value}`;\n      // add the namespace after each comma for subsequent selectors.\n      rule.value = rule.value.replaceAll(',', `,${namespace} `);\n      rule.props = (rule.props as string[]).map(prop => {\n        return `${namespace} ${prop}`;\n      });\n    }\n\n    if (Array.isArray(rule.children) && rule.type !== '@keyframes') {\n      rule.children = recursivelySetNamepace(rule.children, namespace);\n    }\n    return rule;\n  });\n}\n\nexport default function createStylisInstance(\n  {\n    options = EMPTY_OBJECT as object,\n    plugins = EMPTY_ARRAY as unknown as stylis.Middleware[],\n  }: ICreateStylisInstance = EMPTY_OBJECT as object\n) {\n  let _componentId: string;\n  let _selector: string;\n  let _selectorRegexp: RegExp | undefined;\n\n  const selfReferenceReplacer = (match: string, offset: number, string: string) => {\n    if (\n      /**\n       * We only want to refer to the static class directly if the selector is part of a\n       * self-reference selector `& + & { color: red; }`\n       */\n      string.startsWith(_selector) &&\n      string.endsWith(_selector) &&\n      string.replaceAll(_selector, '').length > 0\n    ) {\n      return `.${_componentId}`;\n    }\n\n    return match;\n  };\n\n  /**\n   * When writing a style like\n   *\n   * & + & {\n   *   color: red;\n   * }\n   *\n   * The second ampersand should be a reference to the static component class. stylis\n   * has no knowledge of static class so we have to intelligently replace the base selector.\n   *\n   * https://github.com/thysultan/stylis.js/tree/v4.0.2#abstract-syntax-structure\n   */\n  const selfReferenceReplacementPlugin: stylis.Middleware = element => {\n    if (element.type === stylis.RULESET && element.value.includes('&')) {\n      // Lazy RegExp creation: only allocate when self-reference pattern is actually used\n      if (!_selectorRegexp) {\n        _selectorRegexp = new RegExp(`\\\\${_selector}\\\\b`, 'g');\n      }\n\n      (element.props as string[])[0] = element.props[0]\n        // catch any hanging references that stylis missed\n        .replace(AMP_REGEX, _selector)\n        .replace(_selectorRegexp, selfReferenceReplacer);\n    }\n  };\n\n  const middlewares = plugins.slice();\n\n  middlewares.push(selfReferenceReplacementPlugin);\n\n  /**\n   * Enables automatic vendor-prefixing for styles.\n   */\n  if (options.prefix) {\n    middlewares.push(stylis.prefixer);\n  }\n\n  middlewares.push(stylis.stringify);\n\n  // Pre-build the middleware chain once to avoid allocating closures,\n  // arrays, and middleware wrappers on every stringifyRules call.\n  // Safe because JS is single-threaded and _stack is consumed before next call.\n  let _stack: string[] = [];\n  const _middleware = stylis.middleware(\n    middlewares.concat(stylis.rulesheet(value => _stack.push(value)))\n  );\n\n  const stringifyRules: Stringifier = (\n    css: string,\n    selector = '',\n    /**\n     * This \"prefix\" referes to a _selector_ prefix.\n     */\n    prefix = '',\n    componentId = '&'\n  ) => {\n    // stylis has no concept of state to be passed to plugins\n    // but since JS is single-threaded, we can rely on that to ensure\n    // these properties stay in sync with the current stylis run\n    _componentId = componentId;\n    _selector = selector;\n    _selectorRegexp = undefined; // Reset for lazy creation per call\n\n    const flatCSS = sanitizeCSS(stripLineComments(css));\n    let compiled = stylis.compile(\n      prefix || selector ? `${prefix} ${selector} { ${flatCSS} }` : flatCSS\n    );\n\n    if (options.namespace) {\n      compiled = recursivelySetNamepace(compiled, options.namespace);\n    }\n\n    _stack = [];\n    stylis.serialize(compiled, _middleware);\n\n    return _stack;\n  };\n\n  stringifyRules.hash = plugins.length\n    ? plugins\n        .reduce((acc, plugin) => {\n          if (!plugin.name) {\n            throwStyledError(15);\n          }\n\n          return phash(acc, plugin.name);\n        }, SEED)\n        .toString()\n    : '';\n\n  return stringifyRules;\n}\n","import React from 'react';\nimport type stylis from 'stylis';\nimport { IS_RSC } from '../constants';\nimport StyleSheet from '../sheet';\nimport { InsertionTarget, ShouldForwardProp, Stringifier } from '../types';\nimport createStylisInstance from '../utils/stylis';\n\nexport const mainSheet: StyleSheet = new StyleSheet();\nexport const mainStylis: Stringifier = createStylisInstance();\n\nexport type IStyleSheetContext = {\n  shouldForwardProp?: ShouldForwardProp<'web'> | undefined;\n  styleSheet: StyleSheet;\n  stylis: Stringifier;\n};\n\nconst defaultContextValue: IStyleSheetContext = {\n  shouldForwardProp: undefined,\n  styleSheet: mainSheet,\n  stylis: mainStylis,\n};\n\n// Create context only if createContext is available, otherwise create a fallback\nexport const StyleSheetContext = !IS_RSC\n  ? React.createContext<IStyleSheetContext>(defaultContextValue)\n  : ({\n      Provider: ({ children }: { children: React.ReactNode; value?: IStyleSheetContext }) =>\n        children,\n      Consumer: ({ children }: { children: (value: IStyleSheetContext) => React.ReactNode }) =>\n        children(defaultContextValue),\n    } as React.Context<IStyleSheetContext>);\n\nexport const StyleSheetConsumer = StyleSheetContext.Consumer;\n\nexport type IStylisContext = Stringifier | void;\nexport const StylisContext = !IS_RSC\n  ? React.createContext<IStylisContext>(undefined)\n  : ({\n      Provider: ({ children }: { children: React.ReactNode; value?: IStylisContext }) => children,\n      Consumer: ({ children }: { children: (value: IStylisContext) => React.ReactNode }) =>\n        children(undefined),\n    } as React.Context<IStylisContext>);\nexport const StylisConsumer = StylisContext.Consumer;\n\nexport function useStyleSheetContext() {\n  // Skip useContext if we're in an RSC environment without context support\n  return !IS_RSC ? React.useContext(StyleSheetContext) : defaultContextValue;\n}\n\nexport type IStyleSheetManager = React.PropsWithChildren<{\n  /**\n   * If desired, you can pass this prop to disable \"speedy\" insertion mode, which\n   * uses the browser [CSSOM APIs](https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet).\n   * When disabled, rules are inserted as simple text into style blocks.\n   */\n  disableCSSOMInjection?: undefined | boolean;\n  /**\n   * If you are working exclusively with modern browsers, vendor prefixes can often be omitted\n   * to reduce the weight of CSS on the page.\n   */\n  enableVendorPrefixes?: undefined | boolean;\n  /**\n   * Provide an optional selector to be prepended to all generated style rules.\n   */\n  namespace?: undefined | string;\n  /**\n   * Create and provide your own `StyleSheet` if necessary for advanced SSR scenarios.\n   */\n  sheet?: undefined | StyleSheet;\n  /**\n   * Starting in v6, styled-components no longer does its own prop validation\n   * and recommends use of transient props \"$prop\" to pass style-only props to\n   * components. If for some reason you are not able to use transient props, a\n   * prop validation function can be provided via `StyleSheetManager`, such as\n   * `@emotion/is-prop-valid`.\n   *\n   * When the return value is `true`, props will be forwarded to the DOM/underlying\n   * component. If return value is `false`, the prop will be discarded after styles\n   * are calculated.\n   *\n   * Manually composing `styled.{element}.withConfig({shouldForwardProp})` will\n   * override this default.\n   */\n  shouldForwardProp?: undefined | IStyleSheetContext['shouldForwardProp'];\n  /**\n   * An array of plugins to be run by stylis (style processor) during compilation.\n   * Check out [what's available on npm*](https://www.npmjs.com/search?q=keywords%3Astylis).\n   *\n   * \\* The plugin(s) must be compatible with stylis v4 or above.\n   */\n  stylisPlugins?: undefined | stylis.Middleware[];\n  /**\n   * Provide an alternate DOM node to host generated styles; useful for iframes.\n   */\n  target?: undefined | InsertionTarget;\n}>;\n\nexport function StyleSheetManager(props: IStyleSheetManager): React.JSX.Element {\n  // In RSC environments without context support, StyleSheetManager becomes a no-op\n  if (IS_RSC || !React.useMemo) {\n    return props.children as React.JSX.Element;\n  }\n\n  const { styleSheet } = useStyleSheetContext();\n\n  const resolvedStyleSheet = React.useMemo(() => {\n    let sheet = styleSheet;\n\n    if (props.sheet) {\n      sheet = props.sheet;\n    } else if (props.target) {\n      sheet = sheet.reconstructWithOptions({ target: props.target }, false);\n    }\n\n    if (props.disableCSSOMInjection) {\n      sheet = sheet.reconstructWithOptions({ useCSSOMInjection: false });\n    }\n\n    return sheet;\n  }, [props.disableCSSOMInjection, props.sheet, props.target, styleSheet]);\n\n  const stylis = React.useMemo(\n    () =>\n      createStylisInstance({\n        options: { namespace: props.namespace, prefix: props.enableVendorPrefixes },\n        plugins: props.stylisPlugins,\n      }),\n    [props.enableVendorPrefixes, props.namespace, props.stylisPlugins]\n  );\n\n  const styleSheetContextValue = React.useMemo(\n    () => ({\n      shouldForwardProp: props.shouldForwardProp,\n      styleSheet: resolvedStyleSheet,\n      stylis,\n    }),\n    [props.shouldForwardProp, resolvedStyleSheet, stylis]\n  );\n\n  return (\n    <StyleSheetContext.Provider value={styleSheetContextValue}>\n      <StylisContext.Provider value={stylis}>{props.children}</StylisContext.Provider>\n    </StyleSheetContext.Provider>\n  );\n}\n","import StyleSheet from '../sheet';\nimport { Keyframes as KeyframesType, Stringifier } from '../types';\nimport styledError from '../utils/error';\nimport { setToString } from '../utils/setToString';\nimport { mainStylis } from './StyleSheetManager';\n\nexport default class Keyframes implements KeyframesType {\n  id: string;\n  name: string;\n  rules: string;\n\n  constructor(name: string, rules: string) {\n    this.name = name;\n    this.id = `sc-keyframes-${name}`;\n    this.rules = rules;\n\n    setToString(this, () => {\n      throw styledError(12, String(this.name));\n    });\n  }\n\n  inject = (styleSheet: StyleSheet, stylisInstance: Stringifier = mainStylis): void => {\n    const resolvedName = this.name + stylisInstance.hash;\n\n    if (!styleSheet.hasNameForId(this.id, resolvedName)) {\n      styleSheet.insertRules(\n        this.id,\n        resolvedName,\n        stylisInstance(this.rules, resolvedName, '@keyframes')\n      );\n    }\n  };\n\n  getName(stylisInstance: Stringifier = mainStylis): string {\n    return this.name + stylisInstance.hash;\n  }\n}\n","import unitless from '@emotion/unitless';\n\n// Taken from https://github.com/facebook/react/blob/b87aabdfe1b7461e7331abb3601d9e6bb27544bc/packages/react-dom/src/shared/dangerousStyleValue.js\nexport default function addUnitIfNeeded(name: string, value: any) {\n  // https://github.com/amilajack/eslint-plugin-flowtype-errors/issues/133\n  if (value == null || typeof value === 'boolean' || value === '') {\n    return '';\n  }\n\n  if (typeof value === 'number' && value !== 0 && !(name in unitless) && !name.startsWith('--')) {\n    return `${value}px`; // Presumes implicit 'px' suffix for unitless numbers except for CSS variables\n  }\n\n  return String(value).trim();\n}\n","const isUpper = (c: string) => c >= 'A' && c <= 'Z';\n\n/**\n * Hyphenates a camelcased CSS property name, for example:\n *\n *   > hyphenateStyleName('backgroundColor')\n *   < \"background-color\"\n *   > hyphenateStyleName('MozTransition')\n *   < \"-moz-transition\"\n *   > hyphenateStyleName('msTransition')\n *   < \"-ms-transition\"\n *\n * As Modernizr suggests (http://modernizr.com/docs/#prefixed), an `ms` prefix\n * is converted to `-ms-`.\n */\nexport default function hyphenateStyleName(string: string): string {\n  let output = '';\n\n  for (let i = 0; i < string.length; i++) {\n    const c = string[i];\n    // Check for CSS variable prefix\n    if (i === 1 && c === '-' && string[0] === '-') {\n      return string;\n    }\n\n    if (isUpper(c)) {\n      output += '-' + c.toLowerCase();\n    } else {\n      output += c;\n    }\n  }\n\n  return output.startsWith('ms-') ? '-' + output : output;\n}\n","import Keyframes from '../models/Keyframes';\nimport StyleSheet from '../sheet';\nimport {\n  AnyComponent,\n  Dict,\n  ExecutionContext,\n  Interpolation,\n  IStyledComponent,\n  RuleSet,\n  Stringifier,\n  StyledObject,\n} from '../types';\nimport addUnitIfNeeded from './addUnitIfNeeded';\nimport getComponentName from './getComponentName';\nimport hyphenate from './hyphenateStyleName';\nimport isFunction from './isFunction';\nimport isPlainObject from './isPlainObject';\nimport isStatelessFunction from './isStatelessFunction';\nimport isStyledComponent from './isStyledComponent';\n\n/**\n * It's falsish not falsy because 0 is allowed.\n */\nconst isFalsish = (chunk: any): chunk is undefined | null | false | '' =>\n  chunk === undefined || chunk === null || chunk === false || chunk === '';\n\nexport const objToCssArray = (obj: Dict<any>): string[] => {\n  const rules = [];\n\n  for (const key in obj) {\n    const val = obj[key];\n    if (!obj.hasOwnProperty(key) || isFalsish(val)) continue;\n\n    // @ts-expect-error Property 'isCss' does not exist on type 'any[]'\n    if ((Array.isArray(val) && val.isCss) || isFunction(val)) {\n      rules.push(`${hyphenate(key)}:`, val, ';');\n    } else if (isPlainObject(val)) {\n      rules.push(`${key} {`, ...objToCssArray(val), '}');\n    } else {\n      rules.push(`${hyphenate(key)}: ${addUnitIfNeeded(key, val)};`);\n    }\n  }\n\n  return rules;\n};\n\nexport default function flatten<Props extends object>(\n  chunk: Interpolation<object>,\n  executionContext?: (ExecutionContext & Props) | undefined,\n  styleSheet?: StyleSheet | undefined,\n  stylisInstance?: Stringifier | undefined,\n  result: RuleSet<Props> = []\n): RuleSet<Props> {\n  if (typeof chunk === 'string') {\n    if (chunk) result.push(chunk);\n    return result;\n  }\n\n  if (isFalsish(chunk)) {\n    return result;\n  }\n\n  /* Handle other components */\n  if (isStyledComponent(chunk)) {\n    result.push(`.${(chunk as unknown as IStyledComponent<'web', any>).styledComponentId}`);\n    return result;\n  }\n\n  /* Either execute or defer the function */\n  if (isFunction(chunk)) {\n    if (isStatelessFunction(chunk) && executionContext) {\n      const fnResult = chunk(executionContext);\n\n      if (\n        process.env.NODE_ENV !== 'production' &&\n        typeof fnResult === 'object' &&\n        !Array.isArray(fnResult) &&\n        !(fnResult instanceof Keyframes) &&\n        !isPlainObject(fnResult) &&\n        fnResult !== null\n      ) {\n        console.error(\n          `${getComponentName(\n            chunk as AnyComponent\n          )} is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.`\n        );\n      }\n\n      return flatten<Props>(fnResult, executionContext, styleSheet, stylisInstance, result);\n    } else {\n      result.push(chunk as unknown as IStyledComponent<'web'>);\n      return result;\n    }\n  }\n\n  if (chunk instanceof Keyframes) {\n    if (styleSheet) {\n      chunk.inject(styleSheet, stylisInstance);\n      result.push(chunk.getName(stylisInstance));\n    } else {\n      result.push(chunk);\n    }\n    return result;\n  }\n\n  /* Handle objects */\n  if (isPlainObject(chunk)) {\n    const cssArr = objToCssArray(chunk as StyledObject<Props>);\n    for (let i = 0; i < cssArr.length; i++) result.push(cssArr[i]);\n    return result;\n  }\n\n  if (!Array.isArray(chunk)) {\n    result.push(chunk.toString());\n    return result;\n  }\n\n  for (let i = 0; i < chunk.length; i++) {\n    flatten<Props>(chunk[i], executionContext, styleSheet, stylisInstance, result);\n  }\n\n  return result;\n}\n","import isFunction from './isFunction';\n\nexport default function isStatelessFunction(test: any): test is Function {\n  return isFunction(test) && !(test.prototype && test.prototype.isReactComponent);\n}\n","import { RuleSet } from '../types';\nimport isFunction from './isFunction';\nimport isStyledComponent from './isStyledComponent';\n\nexport default function isStaticRules<Props extends object>(rules: RuleSet<Props>) {\n  for (let i = 0; i < rules.length; i += 1) {\n    const rule = rules[i];\n\n    if (isFunction(rule) && !isStyledComponent(rule)) {\n      // functions are allowed to be static if they're just being\n      // used to get the classname of a nested styled component\n      return false;\n    }\n  }\n\n  return true;\n}\n","import { SC_VERSION } from '../constants';\nimport StyleSheet from '../sheet';\nimport { getGroupForId } from '../sheet/GroupIDAllocator';\nimport { ExecutionContext, RuleSet, Stringifier } from '../types';\nimport flatten from '../utils/flatten';\nimport generateName from '../utils/generateAlphabeticName';\nimport { hash, phash } from '../utils/hash';\nimport isStaticRules from '../utils/isStaticRules';\nimport { joinStringArray, joinStrings } from '../utils/joinStrings';\n\nconst SEED = hash(SC_VERSION);\n\n/**\n * ComponentStyle is all the CSS-specific stuff, not the React-specific stuff.\n */\nexport default class ComponentStyle {\n  baseHash: number;\n  baseStyle: ComponentStyle | null | undefined;\n  componentId: string;\n  isStatic: boolean;\n  rules: RuleSet<any>;\n  staticRulesId: string;\n\n  constructor(rules: RuleSet<any>, componentId: string, baseStyle?: ComponentStyle | undefined) {\n    this.rules = rules;\n    this.staticRulesId = '';\n    this.isStatic =\n      process.env.NODE_ENV === 'production' &&\n      (baseStyle === undefined || baseStyle.isStatic) &&\n      isStaticRules(rules);\n    this.componentId = componentId;\n    this.baseHash = phash(SEED, componentId);\n    this.baseStyle = baseStyle;\n\n    // NOTE: This registers the componentId, which ensures a consistent order\n    // for this component's styles compared to others\n    StyleSheet.registerId(componentId);\n  }\n\n  generateAndInjectStyles(\n    executionContext: ExecutionContext,\n    styleSheet: StyleSheet,\n    stylis: Stringifier\n  ): { className: string; css: string } {\n    let names = this.baseStyle\n      ? this.baseStyle.generateAndInjectStyles(executionContext, styleSheet, stylis).className\n      : '';\n\n    // force dynamic classnames if user-supplied stylis plugins are in use\n    if (this.isStatic && !stylis.hash) {\n      if (this.staticRulesId && styleSheet.hasNameForId(this.componentId, this.staticRulesId)) {\n        names = joinStrings(names, this.staticRulesId);\n      } else {\n        const cssStatic = joinStringArray(\n          flatten(this.rules, executionContext, styleSheet, stylis) as string[]\n        );\n        const name = generateName(phash(this.baseHash, cssStatic) >>> 0);\n\n        if (!styleSheet.hasNameForId(this.componentId, name)) {\n          const cssStaticFormatted = stylis(cssStatic, `.${name}`, undefined, this.componentId);\n          styleSheet.insertRules(this.componentId, name, cssStaticFormatted);\n        }\n\n        names = joinStrings(names, name);\n        this.staticRulesId = name;\n      }\n    } else {\n      let dynamicHash = phash(this.baseHash, stylis.hash);\n      let css = '';\n\n      for (let i = 0; i < this.rules.length; i++) {\n        const partRule = this.rules[i];\n\n        if (typeof partRule === 'string') {\n          css += partRule;\n\n          if (process.env.NODE_ENV !== 'production') dynamicHash = phash(dynamicHash, partRule);\n        } else if (partRule) {\n          const partString = joinStringArray(\n            flatten(partRule, executionContext, styleSheet, stylis) as string[]\n          );\n          // The same value can switch positions in the array, so we include \"i\" in the hash.\n          // Split into two phash calls to avoid temp string allocation (partString + i).\n          // phash processes right-to-left, so phash(h, a+b) === phash(phash(h, b), a).\n          dynamicHash = phash(phash(dynamicHash, String(i)), partString);\n          css += partString;\n        }\n      }\n\n      if (css) {\n        const name = generateName(dynamicHash >>> 0);\n\n        if (!styleSheet.hasNameForId(this.componentId, name)) {\n          const cssFormatted = stylis(css, `.${name}`, undefined, this.componentId);\n          styleSheet.insertRules(this.componentId, name, cssFormatted);\n        }\n\n        names = joinStrings(names, name);\n      }\n    }\n\n    // Retrieve CSS from Tag for RSC rendering\n    const generatedCSS =\n      typeof window === 'undefined'\n        ? styleSheet.getTag().getGroup(getGroupForId(this.componentId))\n        : '';\n\n    return { className: names, css: generatedCSS };\n  }\n}\n","import React from 'react';\nimport { IS_RSC } from '../constants';\nimport styledError from '../utils/error';\nimport isFunction from '../utils/isFunction';\n\n// Helper type for the `DefaultTheme` interface that enforces an object type & exclusively allows\n// for typed keys.\ntype DefaultThemeAsObject<T = object> = Record<keyof T, any>;\n\n/**\n * Override DefaultTheme to get accurate typings for your project.\n *\n * ```\n * // create styled-components.d.ts in your project source\n * // if it isn't being picked up, check tsconfig compilerOptions.types\n * import type { CSSProp } from \"styled-components\";\n * import Theme from './theme';\n *\n * type ThemeType = typeof Theme;\n *\n * declare module \"styled-components\" {\n *  export interface DefaultTheme extends ThemeType {}\n * }\n *\n * declare module \"react\" {\n *  interface DOMAttributes<T> {\n *    css?: CSSProp;\n *  }\n * }\n * ```\n */\nexport interface DefaultTheme extends DefaultThemeAsObject {}\n\ntype ThemeFn = (outerTheme?: DefaultTheme | undefined) => DefaultTheme;\ntype ThemeArgument = DefaultTheme | ThemeFn;\n\ntype Props = {\n  children?: React.ReactNode;\n  theme: ThemeArgument;\n};\n\n// Create context only if createContext is available, otherwise create a fallback\nexport const ThemeContext = !IS_RSC\n  ? React.createContext<DefaultTheme | undefined>(undefined)\n  : ({\n      Provider: ({ children }: { children: React.ReactNode; value?: DefaultTheme }) => children,\n      Consumer: ({ children }: { children: (theme?: DefaultTheme) => React.ReactNode }) =>\n        children(undefined),\n    } as React.Context<DefaultTheme | undefined>);\n\nexport const ThemeConsumer = ThemeContext.Consumer;\n\nfunction mergeTheme(theme: ThemeArgument, outerTheme?: DefaultTheme | undefined): DefaultTheme {\n  if (!theme) {\n    throw styledError(14);\n  }\n\n  if (isFunction(theme)) {\n    const themeFn = theme as ThemeFn;\n    const mergedTheme = themeFn(outerTheme);\n\n    if (\n      process.env.NODE_ENV !== 'production' &&\n      (mergedTheme === null || Array.isArray(mergedTheme) || typeof mergedTheme !== 'object')\n    ) {\n      throw styledError(7);\n    }\n\n    return mergedTheme;\n  }\n\n  if (Array.isArray(theme) || typeof theme !== 'object') {\n    throw styledError(8);\n  }\n\n  return outerTheme ? { ...outerTheme, ...theme } : theme;\n}\n\n/**\n * Returns the current theme (as provided by the closest ancestor `ThemeProvider`.)\n *\n * If no `ThemeProvider` is found, the function will error. If you need access to the theme in an\n * uncertain composition scenario, `React.useContext(ThemeContext)` will not emit an error if there\n * is no `ThemeProvider` ancestor.\n */\nexport function useTheme(): DefaultTheme {\n  // Skip useContext if we're in an RSC environment without context support\n  const theme = !IS_RSC ? React.useContext(ThemeContext) : undefined;\n\n  if (!theme) {\n    throw styledError(18);\n  }\n\n  return theme;\n}\n\n/**\n * Provide a theme to an entire react component tree via context\n */\nexport default function ThemeProvider(props: Props): React.JSX.Element | null {\n  // In RSC environments without context support, ThemeProvider becomes a no-op\n  if (IS_RSC) {\n    return props.children as React.JSX.Element | null;\n  }\n\n  const outerTheme = React.useContext(ThemeContext);\n  const themeContext = React.useMemo(\n    () => mergeTheme(props.theme, outerTheme),\n    [props.theme, outerTheme]\n  );\n\n  if (!props.children) {\n    return null;\n  }\n\n  return <ThemeContext.Provider value={themeContext}>{props.children}</ThemeContext.Provider>;\n}\n","import isPropValid from '@emotion/is-prop-valid';\nimport React, { createElement, PropsWithoutRef, Ref } from 'react';\nimport { IS_RSC, SC_VERSION } from '../constants';\nimport { getGroupForId } from '../sheet/GroupIDAllocator';\nimport type {\n  AnyComponent,\n  Attrs,\n  BaseObject,\n  Dict,\n  ExecutionContext,\n  ExecutionProps,\n  IStyledComponent,\n  IStyledComponentFactory,\n  IStyledStatics,\n  OmitNever,\n  RuleSet,\n  StyledOptions,\n  WebTarget,\n} from '../types';\nimport { checkDynamicCreation } from '../utils/checkDynamicCreation';\nimport createWarnTooManyClasses from '../utils/createWarnTooManyClasses';\nimport determineTheme from '../utils/determineTheme';\nimport domElements from '../utils/domElements';\nimport { EMPTY_ARRAY, EMPTY_OBJECT } from '../utils/empties';\nimport escape from '../utils/escape';\nimport generateComponentId from '../utils/generateComponentId';\nimport generateDisplayName from '../utils/generateDisplayName';\nimport hoist from '../utils/hoist';\nimport isFunction from '../utils/isFunction';\nimport isStyledComponent from '../utils/isStyledComponent';\nimport isTag from '../utils/isTag';\nimport { joinStrings } from '../utils/joinStrings';\nimport merge from '../utils/mixinDeep';\nimport { setToString } from '../utils/setToString';\nimport ComponentStyle from './ComponentStyle';\nimport { useStyleSheetContext } from './StyleSheetManager';\nimport { DefaultTheme, ThemeContext } from './ThemeProvider';\n\nconst identifiers: { [key: string]: number } = {};\n\n/* We depend on components having unique IDs */\nfunction generateId(\n  displayName?: string | undefined,\n  parentComponentId?: string | undefined\n): string {\n  const name = typeof displayName !== 'string' ? 'sc' : escape(displayName);\n  // Ensure that no displayName can lead to duplicate componentIds\n  identifiers[name] = (identifiers[name] || 0) + 1;\n\n  const componentId = `${name}-${generateComponentId(\n    // SC_VERSION gives us isolation between multiple runtimes on the page at once\n    // this is improved further with use of the babel plugin \"namespace\" feature\n    SC_VERSION + name + identifiers[name]\n  )}`;\n\n  return parentComponentId ? `${parentComponentId}-${componentId}` : componentId;\n}\n\nfunction useInjectedStyle<T extends ExecutionContext>(\n  componentStyle: ComponentStyle,\n  resolvedAttrs: T\n): { className: string; css: string } {\n  const ssc = useStyleSheetContext();\n\n  const result = componentStyle.generateAndInjectStyles(resolvedAttrs, ssc.styleSheet, ssc.stylis);\n\n  if (process.env.NODE_ENV !== 'production' && React.useDebugValue) {\n    React.useDebugValue(result.className);\n  }\n\n  return result;\n}\n\nfunction resolveContext<Props extends BaseObject>(\n  attrs: Attrs<React.HTMLAttributes<Element> & Props>[],\n  props: ExecutionProps & Props,\n  theme: DefaultTheme | undefined\n): React.HTMLAttributes<Element> & ExecutionContext & Props {\n  const context: React.HTMLAttributes<Element> & ExecutionContext & Props = {\n    ...props,\n    // unset, add `props.className` back at the end so props always \"wins\"\n    className: undefined,\n    theme,\n  } as React.HTMLAttributes<Element> & ExecutionContext & Props;\n\n  let attrDef;\n\n  for (let i = 0; i < attrs.length; i += 1) {\n    attrDef = attrs[i];\n    const resolvedAttrDef = isFunction(attrDef) ? attrDef(context) : attrDef;\n\n    for (const key in resolvedAttrDef) {\n      if (key === 'className') {\n        context.className = joinStrings(context.className, resolvedAttrDef[key] as string);\n      } else if (key === 'style') {\n        context.style = { ...context.style, ...(resolvedAttrDef[key] as React.CSSProperties) };\n      } else {\n        // @ts-expect-error attrs can dynamically add arbitrary properties\n        context[key] = resolvedAttrDef[key];\n      }\n    }\n  }\n\n  if ('className' in props && typeof props.className === 'string') {\n    context.className = joinStrings(context.className, props.className);\n  }\n\n  return context;\n}\n\nlet seenUnknownProps = new Set();\n\nfunction useStyledComponentImpl<Props extends BaseObject>(\n  forwardedComponent: IStyledComponent<'web', Props>,\n  props: ExecutionProps & Props,\n  forwardedRef: Ref<Element>\n) {\n  const {\n    attrs: componentAttrs,\n    componentStyle,\n    defaultProps,\n    foldedComponentIds,\n    styledComponentId,\n    target,\n  } = forwardedComponent;\n\n  const contextTheme = !IS_RSC ? React.useContext(ThemeContext) : undefined;\n  const ssc = useStyleSheetContext();\n  const shouldForwardProp = forwardedComponent.shouldForwardProp || ssc.shouldForwardProp;\n\n  if (process.env.NODE_ENV !== 'production' && React.useDebugValue) {\n    React.useDebugValue(styledComponentId);\n  }\n\n  // NOTE: the non-hooks version only subscribes to this when !componentStyle.isStatic,\n  // but that'd be against the rules-of-hooks. We could be naughty and do it anyway as it\n  // should be an immutable value, but behave for now.\n  const theme =\n    determineTheme(props, contextTheme, defaultProps) || (IS_RSC ? undefined : EMPTY_OBJECT);\n\n  const context = resolveContext<Props>(componentAttrs, props, theme);\n  const elementToBeCreated: WebTarget = context.as || target;\n  const propsForElement: Dict<any> = {};\n\n  for (const key in context) {\n    // @ts-expect-error context may have arbitrary properties from attrs\n    if (context[key] === undefined) {\n      // Omit undefined values from props passed to wrapped element.\n      // This enables using .attrs() to remove props, for example.\n    } else if (key[0] === '$' || key === 'as' || (key === 'theme' && context.theme === theme)) {\n      // Omit transient props and execution props.\n    } else if (key === 'forwardedAs') {\n      propsForElement.as = context.forwardedAs;\n    } else if (!shouldForwardProp || shouldForwardProp(key, elementToBeCreated)) {\n      // @ts-expect-error context may have arbitrary properties from attrs\n      propsForElement[key] = context[key];\n\n      if (\n        !shouldForwardProp &&\n        process.env.NODE_ENV === 'development' &&\n        !isPropValid(key) &&\n        !seenUnknownProps.has(key) &&\n        // Only warn on DOM Element.\n        domElements.has(elementToBeCreated as any)\n      ) {\n        seenUnknownProps.add(key);\n        console.warn(\n          `styled-components: it looks like an unknown prop \"${key}\" is being sent through to the DOM, which will likely trigger a React console error. If you would like automatic filtering of unknown props, you can opt-into that behavior via \\`<StyleSheetManager shouldForwardProp={...}>\\` (connect an API like \\`@emotion/is-prop-valid\\`) or consider using transient props (\\`$\\` prefix for automatic filtering.)`\n        );\n      }\n    }\n  }\n\n  const { className: generatedClassName, css } = useInjectedStyle(componentStyle, context);\n\n  if (process.env.NODE_ENV !== 'production' && forwardedComponent.warnTooManyClasses) {\n    forwardedComponent.warnTooManyClasses(generatedClassName);\n  }\n\n  let classString = joinStrings(foldedComponentIds, styledComponentId);\n  if (generatedClassName) {\n    classString += ' ' + generatedClassName;\n  }\n  if (context.className) {\n    classString += ' ' + context.className;\n  }\n\n  propsForElement[\n    // handle custom elements which React doesn't properly alias\n    isTag(elementToBeCreated) &&\n    !domElements.has(elementToBeCreated as Extract<typeof domElements, string>)\n      ? 'class'\n      : 'className'\n  ] = classString;\n\n  // forwardedRef is coming from React.forwardRef.\n  // But it might not exist. Since React 19 handles `ref` like a prop, it only define it if there is a value.\n  // We don't want to inject an empty ref.\n  if (forwardedRef) {\n    propsForElement.ref = forwardedRef;\n  }\n\n  const element = createElement(elementToBeCreated, propsForElement);\n\n  // RSC mode: emit a <style> tag per inheritance level so React 19 can\n  // deduplicate shared base styles across sibling components (#5663).\n  // Each tag's href includes registered names (CSS content hashes) so that\n  // dynamic prop variations produce distinct hrefs and aren't incorrectly deduped.\n  if (IS_RSC) {\n    const styleTags: React.ReactElement[] = [];\n    let cs: ComponentStyle | null | undefined = componentStyle;\n\n    while (cs) {\n      const groupCss = ssc.styleSheet.getTag().getGroup(getGroupForId(cs.componentId));\n      if (groupCss) {\n        // Build content-aware href from the registered names for this group.\n        // Names are generated from CSS content hashes, so identical CSS always\n        // produces the same href (enabling dedup) while different CSS produces\n        // different hrefs (preventing incorrect dedup of dynamic variants).\n        let nameKey = '';\n        const names = ssc.styleSheet.names.get(cs.componentId);\n        if (names) {\n          names.forEach(n => {\n            if (nameKey) nameKey += '_';\n            nameKey += n;\n          });\n        }\n\n        styleTags.push(\n          React.createElement('style', {\n            key: `sc-${cs.componentId}`,\n            precedence: 'styled-components',\n            href: `sc-${cs.componentId}-${nameKey}`,\n            children: groupCss,\n          })\n        );\n      }\n      cs = cs.baseStyle;\n    }\n\n    if (styleTags.length) {\n      // Reverse so base styles appear before extended styles in the document,\n      // matching GroupedTag's group ordering for correct CSS specificity.\n      styleTags.reverse();\n      return React.createElement(React.Fragment, null, ...styleTags, element);\n    }\n  }\n\n  return element;\n}\n\nfunction createStyledComponent<\n  Target extends WebTarget,\n  OuterProps extends BaseObject,\n  Statics extends BaseObject = BaseObject,\n>(\n  target: Target,\n  options: StyledOptions<'web', OuterProps>,\n  rules: RuleSet<OuterProps>\n): ReturnType<IStyledComponentFactory<'web', Target, OuterProps, Statics>> {\n  const isTargetStyledComp = isStyledComponent(target);\n  const styledComponentTarget = target as IStyledComponent<'web', OuterProps>;\n  const isCompositeComponent = !isTag(target);\n\n  const {\n    attrs = EMPTY_ARRAY,\n    componentId = generateId(options.displayName, options.parentComponentId),\n    displayName = generateDisplayName(target),\n  } = options;\n\n  const styledComponentId =\n    options.displayName && options.componentId\n      ? `${escape(options.displayName)}-${options.componentId}`\n      : options.componentId || componentId;\n\n  // fold the underlying StyledComponent attrs up (implicit extend)\n  const finalAttrs =\n    isTargetStyledComp && styledComponentTarget.attrs\n      ? styledComponentTarget.attrs.concat(attrs as unknown as Attrs<OuterProps>[]).filter(Boolean)\n      : (attrs as Attrs<OuterProps>[]);\n\n  let { shouldForwardProp } = options;\n\n  if (isTargetStyledComp && styledComponentTarget.shouldForwardProp) {\n    const shouldForwardPropFn = styledComponentTarget.shouldForwardProp;\n\n    if (options.shouldForwardProp) {\n      const passedShouldForwardPropFn = options.shouldForwardProp;\n\n      // compose nested shouldForwardProp calls\n      shouldForwardProp = (prop, elementToBeCreated) =>\n        shouldForwardPropFn(prop, elementToBeCreated) &&\n        passedShouldForwardPropFn(prop, elementToBeCreated);\n    } else {\n      shouldForwardProp = shouldForwardPropFn;\n    }\n  }\n\n  const componentStyle = new ComponentStyle(\n    rules,\n    styledComponentId,\n    isTargetStyledComp ? (styledComponentTarget.componentStyle as ComponentStyle) : undefined\n  );\n\n  function forwardRefRender(\n    props: PropsWithoutRef<ExecutionProps & OuterProps>,\n    ref: Ref<Element>\n  ) {\n    return useStyledComponentImpl<OuterProps>(\n      WrappedStyledComponent,\n      props as ExecutionProps & OuterProps,\n      ref\n    );\n  }\n\n  forwardRefRender.displayName = displayName;\n\n  /**\n   * forwardRef creates a new interim component, which we'll take advantage of\n   * instead of extending ParentComponent to create _another_ interim class\n   */\n  let WrappedStyledComponent = React.forwardRef(forwardRefRender) as unknown as IStyledComponent<\n    'web',\n    any\n  > &\n    Statics;\n  WrappedStyledComponent.attrs = finalAttrs;\n  WrappedStyledComponent.componentStyle = componentStyle;\n  WrappedStyledComponent.displayName = displayName;\n  WrappedStyledComponent.shouldForwardProp = shouldForwardProp;\n\n  // this static is used to preserve the cascade of static classes for component selector\n  // purposes; this is especially important with usage of the css prop\n  WrappedStyledComponent.foldedComponentIds = isTargetStyledComp\n    ? joinStrings(styledComponentTarget.foldedComponentIds, styledComponentTarget.styledComponentId)\n    : '';\n\n  WrappedStyledComponent.styledComponentId = styledComponentId;\n\n  // fold the underlying StyledComponent target up since we folded the styles\n  WrappedStyledComponent.target = isTargetStyledComp ? styledComponentTarget.target : target;\n\n  Object.defineProperty(WrappedStyledComponent, 'defaultProps', {\n    get() {\n      return this._foldedDefaultProps;\n    },\n\n    set(obj) {\n      this._foldedDefaultProps = isTargetStyledComp\n        ? merge({}, styledComponentTarget.defaultProps, obj)\n        : obj;\n    },\n  });\n\n  if (process.env.NODE_ENV !== 'production') {\n    checkDynamicCreation(displayName, styledComponentId);\n\n    WrappedStyledComponent.warnTooManyClasses = createWarnTooManyClasses(\n      displayName,\n      styledComponentId\n    );\n  }\n\n  setToString(WrappedStyledComponent, () => `.${WrappedStyledComponent.styledComponentId}`);\n\n  if (isCompositeComponent) {\n    const compositeComponentTarget = target as AnyComponent;\n\n    hoist<typeof WrappedStyledComponent, typeof compositeComponentTarget>(\n      WrappedStyledComponent,\n      compositeComponentTarget,\n      {\n        // all SC-specific things should not be hoisted\n        attrs: true,\n        componentStyle: true,\n        displayName: true,\n        foldedComponentIds: true,\n        shouldForwardProp: true,\n        styledComponentId: true,\n        target: true,\n      } as { [key in keyof OmitNever<IStyledStatics<'web', OuterProps>>]: true }\n    );\n  }\n\n  return WrappedStyledComponent;\n}\n\nexport default createStyledComponent;\n","import { StyledTarget } from '../types';\nimport getComponentName from './getComponentName';\nimport isTag from './isTag';\n\nexport default function generateDisplayName(target: StyledTarget<any>) {\n  return isTag(target) ? `styled.${target}` : `Styled(${getComponentName(target)})`;\n}\n","import { Dict } from '../types';\n\nexport const LIMIT = 200;\n\nexport default (displayName: string, componentId: string) => {\n  let generatedClasses: Dict<any> = {};\n  let warningSeen = false;\n\n  return (className: string) => {\n    if (!warningSeen) {\n      generatedClasses[className] = true;\n      if (Object.keys(generatedClasses).length >= LIMIT) {\n        // Unable to find latestRule in test environment.\n\n        const parsedIdString = componentId ? ` with the id of \"${componentId}\"` : '';\n\n        console.warn(\n          `Over ${LIMIT} classes were generated for component ${displayName}${parsedIdString}.\\n` +\n            'Consider using the attrs method, together with a style object for frequently changed styles.\\n' +\n            'Example:\\n' +\n            '  const Component = styled.div.attrs(props => ({\\n' +\n            '    style: {\\n' +\n            '      background: props.background,\\n' +\n            '    },\\n' +\n            '  }))`width: 100%;`\\n\\n' +\n            '  <Component />'\n        );\n        warningSeen = true;\n        generatedClasses = {};\n      }\n    }\n  };\n};\n","import { Interpolation } from '../types';\n\nexport default function interleave<Props extends object>(\n  strings: readonly string[],\n  interpolations: Interpolation<Props>[]\n): Interpolation<Props>[] {\n  const result: Interpolation<Props>[] = [strings[0]];\n\n  for (let i = 0, len = interpolations.length; i < len; i += 1) {\n    result.push(interpolations[i], strings[i + 1]);\n  }\n\n  return result;\n}\n","import {\n  BaseObject,\n  Interpolation,\n  NoInfer,\n  RuleSet,\n  StyledObject,\n  StyleFunction,\n  Styles,\n} from '../types';\nimport { EMPTY_ARRAY } from '../utils/empties';\nimport flatten from '../utils/flatten';\nimport interleave from '../utils/interleave';\nimport isFunction from '../utils/isFunction';\nimport isPlainObject from '../utils/isPlainObject';\n\n/**\n * Used when flattening object styles to determine if we should\n * expand an array of styles.\n */\nconst addTag = <T extends RuleSet<any>>(arg: T): T & { isCss: true } =>\n  Object.assign(arg, { isCss: true } as const);\n\nfunction css(styles: Styles<object>, ...interpolations: Interpolation<object>[]): RuleSet<object>;\nfunction css<Props extends object>(\n  styles: Styles<NoInfer<Props>>,\n  ...interpolations: Interpolation<NoInfer<Props>>[]\n): RuleSet<NoInfer<Props>>;\nfunction css<Props extends object = BaseObject>(\n  styles: Styles<NoInfer<Props>>,\n  ...interpolations: Interpolation<NoInfer<Props>>[]\n): RuleSet<NoInfer<Props>> {\n  if (isFunction(styles) || isPlainObject(styles)) {\n    const styleFunctionOrObject = styles as StyleFunction<Props> | StyledObject<Props>;\n\n    return addTag(\n      flatten<Props>(\n        interleave<Props>(EMPTY_ARRAY, [\n          styleFunctionOrObject,\n          ...interpolations,\n        ]) as Interpolation<object>\n      )\n    );\n  }\n\n  const styleStringArray = styles as TemplateStringsArray;\n\n  if (\n    interpolations.length === 0 &&\n    styleStringArray.length === 1 &&\n    typeof styleStringArray[0] === 'string'\n  ) {\n    return flatten<Props>(styleStringArray);\n  }\n\n  return addTag(\n    flatten<Props>(interleave<Props>(styleStringArray, interpolations) as Interpolation<object>)\n  );\n}\n\nexport default css;\n","import {\n  Attrs,\n  BaseObject,\n  ExecutionProps,\n  Interpolation,\n  IStyledComponent,\n  IStyledComponentFactory,\n  KnownTarget,\n  NoInfer,\n  Runtime,\n  StyledOptions,\n  StyledTarget,\n  Styles,\n  Substitute,\n} from '../types';\nimport { EMPTY_OBJECT } from '../utils/empties';\nimport styledError from '../utils/error';\nimport css from './css';\n\ntype AttrsResult<T extends Attrs<any>> = T extends (...args: any) => infer P\n  ? P extends object\n    ? P\n    : never\n  : T extends object\n    ? T\n    : never;\n\n/**\n * Based on Attrs being a simple object or function that returns\n * a prop object, inspect the attrs result and attempt to extract\n * any \"as\" prop usage to modify the runtime target.\n */\ntype AttrsTarget<\n  R extends Runtime,\n  T extends Attrs<any>,\n  FallbackTarget extends StyledTarget<R>,\n  Result extends ExecutionProps = AttrsResult<T>,\n> = Result extends { as: infer RuntimeTarget }\n  ? RuntimeTarget extends KnownTarget\n    ? RuntimeTarget\n    : FallbackTarget\n  : FallbackTarget;\n\nexport interface Styled<\n  R extends Runtime,\n  Target extends StyledTarget<R>,\n  OuterProps extends object,\n  OuterStatics extends object = BaseObject,\n> {\n  <Props extends object = BaseObject, Statics extends object = BaseObject>(\n    initialStyles: Styles<Substitute<OuterProps, NoInfer<Props>>>,\n    ...interpolations: Interpolation<Substitute<OuterProps, NoInfer<Props>>>[]\n  ): IStyledComponent<R, Substitute<OuterProps, Props>> &\n    OuterStatics &\n    Statics &\n    (R extends 'web'\n      ? Target extends string\n        ? {}\n        : Omit<Target, keyof React.Component<any>>\n      : {});\n\n  attrs: <\n    Props extends object = BaseObject,\n    PrivateMergedProps extends object = Substitute<OuterProps, Props>,\n    PrivateAttrsArg extends Attrs<PrivateMergedProps> = Attrs<PrivateMergedProps>,\n    PrivateResolvedTarget extends StyledTarget<R> = AttrsTarget<R, PrivateAttrsArg, Target>,\n  >(\n    attrs: PrivateAttrsArg\n  ) => Styled<\n    R,\n    PrivateResolvedTarget,\n    PrivateResolvedTarget extends KnownTarget\n      ? Substitute<\n          Substitute<OuterProps, React.ComponentPropsWithRef<PrivateResolvedTarget>>,\n          Props\n        >\n      : PrivateMergedProps,\n    OuterStatics\n  >;\n\n  withConfig: (config: StyledOptions<R, OuterProps>) => Styled<R, Target, OuterProps, OuterStatics>;\n}\n\nexport default function constructWithOptions<\n  R extends Runtime,\n  Target extends StyledTarget<R>,\n  OuterProps extends object = Target extends KnownTarget\n    ? React.ComponentPropsWithRef<Target>\n    : BaseObject,\n  OuterStatics extends object = BaseObject,\n>(\n  componentConstructor: IStyledComponentFactory<R, StyledTarget<R>, object, any>,\n  tag: StyledTarget<R>,\n  options: StyledOptions<R, OuterProps> = EMPTY_OBJECT\n): Styled<R, Target, OuterProps, OuterStatics> {\n  /**\n   * We trust that the tag is a valid component as long as it isn't\n   * falsish. Typically the tag here is a string or function (i.e.\n   * class or pure function component), however a component may also be\n   * an object if it uses another utility, e.g. React.memo. React will\n   * output an appropriate warning however if the `tag` isn't valid.\n   */\n  if (!tag) {\n    throw styledError(1, tag);\n  }\n\n  /* This is callable directly as a template function */\n  const templateFunction = <Props extends object = BaseObject, Statics extends object = BaseObject>(\n    initialStyles: Styles<Substitute<OuterProps, Props>>,\n    ...interpolations: Interpolation<Substitute<OuterProps, Props>>[]\n  ) =>\n    componentConstructor<Substitute<OuterProps, Props>, Statics>(\n      tag,\n      options as StyledOptions<R, Substitute<OuterProps, Props>>,\n      css<Substitute<OuterProps, Props>>(initialStyles, ...interpolations)\n    );\n\n  /**\n   * Attrs allows for accomplishing two goals:\n   *\n   * 1. Backfilling props at runtime more expressively than defaultProps\n   * 2. Amending the prop interface of a wrapped styled component\n   */\n  templateFunction.attrs = <\n    Props extends object = BaseObject,\n    PrivateMergedProps extends object = Substitute<OuterProps, Props>,\n    PrivateAttrsArg extends Attrs<PrivateMergedProps> = Attrs<PrivateMergedProps>,\n    PrivateResolvedTarget extends StyledTarget<R> = AttrsTarget<R, PrivateAttrsArg, Target>,\n  >(\n    attrs: PrivateAttrsArg\n  ) =>\n    constructWithOptions<\n      R,\n      PrivateResolvedTarget,\n      PrivateResolvedTarget extends KnownTarget\n        ? Substitute<\n            Substitute<OuterProps, React.ComponentPropsWithRef<PrivateResolvedTarget>>,\n            Props\n          >\n        : PrivateMergedProps,\n      OuterStatics\n    >(componentConstructor, tag, {\n      ...options,\n      attrs: Array.prototype.concat(options.attrs, attrs).filter(Boolean),\n    });\n\n  /**\n   * If config methods are called, wrap up a new template function\n   * and merge options.\n   */\n  templateFunction.withConfig = (config: StyledOptions<R, OuterProps>) =>\n    constructWithOptions<R, Target, OuterProps, OuterStatics>(componentConstructor, tag, {\n      ...options,\n      ...config,\n    });\n\n  return templateFunction;\n}\n","import * as React from 'react';\nimport createStyledComponent from '../models/StyledComponent';\nimport { BaseObject, KnownTarget, WebTarget } from '../types';\nimport domElements, { SupportedHTMLElements } from '../utils/domElements';\nimport constructWithOptions, { Styled as StyledInstance } from './constructWithOptions';\n\nconst baseStyled = <Target extends WebTarget, InjectedProps extends object = BaseObject>(\n  tag: Target\n) =>\n  constructWithOptions<\n    'web',\n    Target,\n    Target extends KnownTarget ? React.ComponentPropsWithRef<Target> & InjectedProps : InjectedProps\n  >(createStyledComponent, tag);\n\nconst styled = baseStyled as typeof baseStyled & {\n  [E in SupportedHTMLElements]: StyledInstance<'web', E, React.JSX.IntrinsicElements[E]>;\n};\n\n// Shorthands for all valid HTML Elements\ndomElements.forEach(domElement => {\n  // @ts-expect-error some react typing bs\n  styled[domElement] = baseStyled<typeof domElement>(domElement);\n});\n\nexport default styled;\nexport { StyledInstance };\n\n/**\n * This is the type of the `styled` HOC.\n */\nexport type Styled = typeof styled;\n\n/**\n * Use this higher-order type for scenarios where you are wrapping `styled`\n * and providing extra props as a third-party library.\n */\nexport type LibraryStyled<LibraryProps extends object = BaseObject> = <Target extends WebTarget>(\n  tag: Target\n) => typeof baseStyled<Target, LibraryProps>;\n","import StyleSheet from '../sheet';\nimport { ExecutionContext, RuleSet, Stringifier } from '../types';\nimport flatten from '../utils/flatten';\nimport isStaticRules from '../utils/isStaticRules';\nimport { joinStringArray } from '../utils/joinStrings';\n\nexport default class GlobalStyle<Props extends object> {\n  componentId: string;\n  isStatic: boolean;\n  rules: RuleSet<Props>;\n\n  constructor(rules: RuleSet<Props>, componentId: string) {\n    this.rules = rules;\n    this.componentId = componentId;\n    this.isStatic = isStaticRules(rules);\n\n    // pre-register the first instance to ensure global styles\n    // load before component ones\n    StyleSheet.registerId(this.componentId + 1);\n  }\n\n  createStyles(\n    instance: number,\n    executionContext: ExecutionContext & Props,\n    styleSheet: StyleSheet,\n    stylis: Stringifier\n  ): void {\n    const flatCSS = joinStringArray(\n      flatten(this.rules as RuleSet<object>, executionContext, styleSheet, stylis) as string[]\n    );\n    const css = stylis(flatCSS, '');\n    const id = this.componentId + instance;\n\n    // NOTE: We use the id as a name as well, since these rules never change\n    styleSheet.insertRules(id, id, css);\n  }\n\n  removeStyles(instance: number, styleSheet: StyleSheet): void {\n    styleSheet.clearRules(this.componentId + instance);\n  }\n\n  renderStyles(\n    instance: number,\n    executionContext: ExecutionContext & Props,\n    styleSheet: StyleSheet,\n    stylis: Stringifier\n  ): void {\n    if (instance > 2) StyleSheet.registerId(this.componentId + instance);\n\n    const id = this.componentId + instance;\n\n    // For static styles that don't change based on props,\n    // only inject once and don't remove/re-add on every render.\n    // This prevents issues with React StrictMode where the effect cleanup\n    // from the simulated unmount runs after the re-render.\n    if (this.isStatic) {\n      if (!styleSheet.hasNameForId(id, id)) {\n        this.createStyles(instance, executionContext, styleSheet, stylis);\n      }\n      return;\n    }\n\n    // NOTE: Remove old styles, then inject the new ones\n    this.removeStyles(instance, styleSheet);\n    this.createStyles(instance, executionContext, styleSheet, stylis);\n  }\n}\n","import React from 'react';\nimport { IS_RSC, STATIC_EXECUTION_CONTEXT } from '../constants';\nimport GlobalStyle from '../models/GlobalStyle';\nimport { useStyleSheetContext } from '../models/StyleSheetManager';\nimport { DefaultTheme, ThemeContext } from '../models/ThemeProvider';\nimport StyleSheet from '../sheet';\nimport { removeGlobalStyleTag } from '../sheet/dom';\nimport { getGroupForId } from '../sheet/GroupIDAllocator';\nimport { ExecutionContext, ExecutionProps, Interpolation, Stringifier, Styles } from '../types';\nimport { checkDynamicCreation } from '../utils/checkDynamicCreation';\nimport determineTheme from '../utils/determineTheme';\nimport generateComponentId from '../utils/generateComponentId';\nimport css from './css';\n\ndeclare const __SERVER__: boolean;\n\nexport default function createGlobalStyle<Props extends object>(\n  strings: Styles<Props>,\n  ...interpolations: Array<Interpolation<Props>>\n) {\n  const rules = css<Props>(strings, ...interpolations);\n  const styledComponentId = `sc-global-${generateComponentId(JSON.stringify(rules))}`;\n  const globalStyle = new GlobalStyle<Props>(rules, styledComponentId);\n\n  if (process.env.NODE_ENV !== 'production') {\n    checkDynamicCreation(styledComponentId);\n  }\n\n  // Use a WeakMap to maintain stable instances per stylesheet\n  const instanceMap = new WeakMap<StyleSheet, number>();\n\n  const GlobalStyleComponent: React.ComponentType<ExecutionProps & Props> = props => {\n    const ssc = useStyleSheetContext();\n    const theme = !IS_RSC ? React.useContext(ThemeContext) : undefined;\n\n    // Get or create instance ID for this stylesheet\n    let instance = instanceMap.get(ssc.styleSheet);\n    if (instance === undefined) {\n      instance = ssc.styleSheet.allocateGSInstance(styledComponentId);\n      instanceMap.set(ssc.styleSheet, instance);\n    }\n\n    if (\n      process.env.NODE_ENV !== 'production' &&\n      // @ts-expect-error invariant check\n      React.Children.count(props.children)\n    ) {\n      console.warn(\n        `The global style component ${styledComponentId} was given child JSX. createGlobalStyle does not render children.`\n      );\n    }\n\n    if (\n      process.env.NODE_ENV !== 'production' &&\n      rules.some(rule => typeof rule === 'string' && rule.indexOf('@import') !== -1)\n    ) {\n      console.warn(\n        `Please do not use @import CSS syntax in createGlobalStyle at this time, as the CSSOM APIs we use in production do not handle it well. Instead, we recommend using a library such as react-helmet to inject a typical <link> meta tag to the stylesheet, or simply embedding it manually in your index.html <head> section for a simpler app.`\n      );\n    }\n\n    // Render styles during component execution\n    const shouldRenderStyles = typeof window === 'undefined' || !ssc.styleSheet.server;\n    if (shouldRenderStyles) {\n      renderStyles(instance, props, ssc.styleSheet, theme, ssc.stylis);\n    }\n\n    // Client-side lifecycle: render styles in effect and clean up on unmount.\n    // __SERVER__ and IS_RSC are build/module-level constants, so this doesn't violate rules of hooks.\n    if (!__SERVER__ && !IS_RSC) {\n      React.useLayoutEffect(() => {\n        // Re-render styles on every effect run to self-heal after any cleanup\n        // (e.g. StrictMode's simulated unmount/remount, error recovery).\n        // useLayoutEffect runs synchronously before paint, so the brief\n        // remove→re-add in cleanup→mount is never visible to the user.\n        if (!ssc.styleSheet.server) {\n          renderStyles(instance, props, ssc.styleSheet, theme, ssc.stylis);\n        }\n\n        return () => {\n          globalStyle.removeStyles(instance, ssc.styleSheet);\n          removeGlobalStyleTag(styledComponentId, ssc.styleSheet.options.target);\n        };\n      }, [instance, props, ssc.styleSheet, theme, ssc.stylis]);\n    }\n\n    // RSC mode: output style tag.\n    // Unlike regular styled components, global styles must NOT use React 19's\n    // `precedence` attribute because it makes style tags persist as permanent\n    // resources even after unmount. Global styles need lifecycle-based cleanup\n    // for conditional rendering (e.g. body lock on modal open/close).\n    if (IS_RSC) {\n      const id = styledComponentId + instance;\n      const css =\n        typeof window === 'undefined' ? ssc.styleSheet.getTag().getGroup(getGroupForId(id)) : '';\n\n      if (css) {\n        return React.createElement('style', {\n          key: `${styledComponentId}-${instance}`,\n          'data-styled-global': styledComponentId,\n          children: css,\n        });\n      }\n    }\n\n    return null;\n  };\n\n  function renderStyles(\n    instance: number,\n    props: ExecutionProps,\n    styleSheet: StyleSheet,\n    theme: DefaultTheme | undefined,\n    stylis: Stringifier\n  ) {\n    if (globalStyle.isStatic) {\n      globalStyle.renderStyles(\n        instance,\n        STATIC_EXECUTION_CONTEXT as unknown as ExecutionContext & Props,\n        styleSheet,\n        stylis\n      );\n    } else {\n      const context = {\n        ...props,\n        theme: determineTheme(props, theme, GlobalStyleComponent.defaultProps),\n      } as ExecutionContext & Props;\n\n      globalStyle.renderStyles(instance, context, styleSheet, stylis);\n    }\n  }\n\n  return React.memo(GlobalStyleComponent);\n}\n","import Keyframes from '../models/Keyframes';\nimport { Interpolation, Styles } from '../types';\nimport generateComponentId from '../utils/generateComponentId';\nimport { joinStringArray } from '../utils/joinStrings';\nimport css from './css';\n\nexport default function keyframes<Props extends object = {}>(\n  strings: Styles<Props>,\n  ...interpolations: Array<Interpolation<Props>>\n): Keyframes {\n  /* Warning if you've used keyframes on React Native */\n  if (\n    process.env.NODE_ENV !== 'production' &&\n    typeof navigator !== 'undefined' &&\n    navigator.product === 'ReactNative'\n  ) {\n    console.warn(\n      '`keyframes` cannot be used on ReactNative, only on the web. To do animation in ReactNative please use Animated.'\n    );\n  }\n\n  const rules = joinStringArray(css<Props>(strings, ...interpolations) as string[]);\n  const name = generateComponentId(rules);\n  return new Keyframes(name, rules);\n}\n","import React from 'react';\nimport { IS_RSC } from '../constants';\nimport { ThemeContext } from '../models/ThemeProvider';\nimport { AnyComponent, ExecutionProps } from '../types';\nimport determineTheme from '../utils/determineTheme';\nimport getComponentName from '../utils/getComponentName';\nimport hoist, { NonReactStatics } from '../utils/hoist';\n\ntype WithThemeOuterProps<T extends AnyComponent> = Omit<\n  React.ComponentPropsWithRef<T>,\n  keyof ExecutionProps\n> &\n  ExecutionProps;\n\nexport default function withTheme<T extends AnyComponent>(\n  Component: T\n): React.ForwardRefExoticComponent<\n  React.PropsWithoutRef<WithThemeOuterProps<T>> & React.RefAttributes<any>\n> &\n  NonReactStatics<T> {\n  const WithTheme = React.forwardRef<any, WithThemeOuterProps<T>>((props, ref) => {\n    const theme = !IS_RSC ? React.useContext(ThemeContext) : undefined;\n    const themeProp = determineTheme(props, theme, Component.defaultProps);\n\n    if (process.env.NODE_ENV !== 'production' && themeProp === undefined) {\n      console.warn(\n        `[withTheme] You are not using a ThemeProvider nor passing a theme prop or a theme in defaultProps in component class \"${getComponentName(\n          Component\n        )}\"`\n      );\n    }\n\n    return React.createElement(Component, {\n      ...props,\n      theme: themeProp,\n      ref,\n    } as React.ComponentPropsWithRef<T>);\n  });\n\n  WithTheme.displayName = `WithTheme(${getComponentName(Component)})`;\n\n  return hoist(WithTheme, Component);\n}\n","import React from 'react';\nimport { type PipeableStream } from 'react-dom/server';\nimport { SC_ATTR, SC_ATTR_VERSION, SC_VERSION } from '../constants';\nimport StyleSheet from '../sheet';\nimport styledError from '../utils/error';\n\ndeclare const __SERVER__: boolean;\nimport { joinStringArray } from '../utils/joinStrings';\nimport getNonce from '../utils/nonce';\nimport { StyleSheetManager } from './StyleSheetManager';\n\nconst CLOSING_TAG_R = /^\\s*<\\/[a-z]/i;\n\nexport default class ServerStyleSheet {\n  instance: StyleSheet;\n  sealed: boolean;\n\n  constructor() {\n    this.instance = new StyleSheet({ isServer: true });\n    this.sealed = false;\n  }\n\n  _emitSheetCSS = (): string => {\n    const css = this.instance.toString();\n    if (!css) return '';\n    const nonce = getNonce();\n    const attrs = [\n      nonce && `nonce=\"${nonce}\"`,\n      `${SC_ATTR}=\"true\"`,\n      `${SC_ATTR_VERSION}=\"${SC_VERSION}\"`,\n    ];\n    const htmlAttr = joinStringArray(attrs.filter(Boolean) as string[], ' ');\n\n    return `<style ${htmlAttr}>${css}</style>`;\n  };\n\n  collectStyles(children: any): React.JSX.Element {\n    if (this.sealed) {\n      throw styledError(2);\n    }\n\n    return <StyleSheetManager sheet={this.instance}>{children}</StyleSheetManager>;\n  }\n\n  getStyleTags = (): string => {\n    if (this.sealed) {\n      throw styledError(2);\n    }\n\n    return this._emitSheetCSS();\n  };\n\n  getStyleElement = () => {\n    if (this.sealed) {\n      throw styledError(2);\n    }\n\n    const css = this.instance.toString();\n    if (!css) return [];\n\n    const props = {\n      [SC_ATTR]: '',\n      [SC_ATTR_VERSION]: SC_VERSION,\n      dangerouslySetInnerHTML: {\n        __html: css,\n      },\n    };\n\n    const nonce = getNonce();\n    if (nonce) {\n      (props as any).nonce = nonce;\n    }\n\n    // v4 returned an array for this fn, so we'll do the same for v5 for backward compat\n    return [<style {...props} key=\"sc-0-0\" />];\n  };\n\n  interleaveWithNodeStream(input: NodeJS.ReadableStream | PipeableStream): NodeJS.ReadWriteStream {\n    if (!__SERVER__) {\n      throw styledError(3);\n    } else if (this.sealed) {\n      throw styledError(2);\n    }\n\n    this.seal();\n\n    const { Transform } = require('stream');\n    const { instance: sheet, _emitSheetCSS } = this;\n\n    const transformer: NodeJS.ReadWriteStream = new Transform({\n      transform: function appendStyleChunks(\n        chunk: string,\n        /* encoding */\n        _: string,\n        callback: Function\n      ) {\n        // Get the chunk and retrieve the sheet's CSS as an HTML chunk,\n        // then reset its rules so we get only new ones for the next chunk\n        const renderedHtml = chunk.toString();\n        const html = _emitSheetCSS();\n\n        sheet.clearTag();\n\n        // prepend style html to chunk, unless the start of the chunk is a\n        // closing tag in which case append right after that\n        if (CLOSING_TAG_R.test(renderedHtml)) {\n          const endOfClosingTag = renderedHtml.indexOf('>') + 1;\n          const before = renderedHtml.slice(0, endOfClosingTag);\n          const after = renderedHtml.slice(endOfClosingTag);\n\n          this.push(before + html + after);\n        } else {\n          this.push(html + renderedHtml);\n        }\n\n        callback();\n      },\n    });\n\n    // Type guard to determine stream type\n    if ('on' in input && typeof input.on === 'function' && 'pipe' in input) {\n      // NodeJS.ReadableStream\n      const readableStream = input as NodeJS.ReadableStream;\n      readableStream.on('error', err => {\n        // forward the error to the transform stream\n        transformer.emit('error', err);\n      });\n      return readableStream.pipe(transformer);\n    } else if ('pipe' in input && typeof input.pipe === 'function') {\n      // React PipeableStream\n      const pipeableStream = input as PipeableStream;\n      return pipeableStream.pipe(transformer);\n    } else {\n      throw new Error('Unsupported stream type');\n    }\n  }\n\n  seal = (): void => {\n    this.sealed = true;\n  };\n}\n","import { mainSheet } from './models/StyleSheetManager';\nimport StyleSheet from './sheet';\n\nexport const __PRIVATE__ = {\n  StyleSheet,\n  mainSheet,\n};\n","/* Import singletons */\nimport { SC_ATTR, SC_VERSION } from './constants';\nimport createGlobalStyle from './constructors/createGlobalStyle';\nimport css from './constructors/css';\nimport keyframes from './constructors/keyframes';\n/* Import Higher Order Components */\nimport withTheme from './hoc/withTheme';\n/* Import hooks */\nimport ServerStyleSheet from './models/ServerStyleSheet';\nimport {\n  IStyleSheetContext,\n  IStyleSheetManager,\n  IStylisContext,\n  StyleSheetConsumer,\n  StyleSheetContext,\n  StyleSheetManager,\n} from './models/StyleSheetManager';\n/* Import components */\nimport ThemeProvider, { ThemeConsumer, ThemeContext, useTheme } from './models/ThemeProvider';\nimport isStyledComponent from './utils/isStyledComponent';\n\n/* Warning if you've imported this file on React Native */\nif (\n  process.env.NODE_ENV !== 'production' &&\n  typeof navigator !== 'undefined' &&\n  navigator.product === 'ReactNative'\n) {\n  console.warn(\n    `It looks like you've imported 'styled-components' on React Native.\\nPerhaps you're looking to import 'styled-components/native'?\\nRead more about this at https://www.styled-components.com/docs/basics#react-native`\n  );\n}\n\nconst windowGlobalKey = `__sc-${SC_ATTR}__`;\n\n/* Warning if there are several instances of styled-components */\nif (\n  process.env.NODE_ENV !== 'production' &&\n  process.env.NODE_ENV !== 'test' &&\n  typeof window !== 'undefined'\n) {\n  // @ts-expect-error dynamic key not in window object\n  window[windowGlobalKey] ||= 0;\n\n  // @ts-expect-error dynamic key not in window object\n  if (window[windowGlobalKey] === 1) {\n    console.warn(\n      `It looks like there are several instances of 'styled-components' initialized in this application. This may cause dynamic styles to not render properly, errors during the rehydration process, a missing theme prop, and makes your application bigger without good reason.\\n\\nSee https://styled-components.com/docs/faqs#why-am-i-getting-a-warning-about-several-instances-of-module-on-the-page for more info.`\n    );\n  }\n\n  // @ts-expect-error dynamic key not in window object\n  window[windowGlobalKey] += 1;\n}\n\n/* Export everything */\nexport * from './secretInternals';\nexport { Attrs, DefaultTheme, ShouldForwardProp } from './types';\nexport {\n  IStyleSheetContext,\n  IStyleSheetManager,\n  IStylisContext,\n  ServerStyleSheet,\n  StyleSheetConsumer,\n  StyleSheetContext,\n  StyleSheetManager,\n  ThemeConsumer,\n  ThemeContext,\n  ThemeProvider,\n  createGlobalStyle,\n  css,\n  isStyledComponent,\n  keyframes,\n  useTheme,\n  SC_VERSION as version,\n  withTheme,\n};\n"],"names":["SC_ATTR","process","env","REACT_APP_SC_ATTR","SC_ATTR_ACTIVE","SC_ATTR_VERSION","SC_VERSION","SPLITTER","IS_BROWSER","window","document","IS_RSC","React","createContext","DISABLE_SPEEDY","Boolean","SC_DISABLE_SPEEDY","REACT_APP_SC_DISABLE_SPEEDY","NODE_ENV","STATIC_EXECUTION_CONTEXT","ERRORS","format","args","_i","arguments","length","a","b","c","len","push","forEach","d","replace","throwStyledComponentsError","code","interpolations","Error","concat","join","trim","MAX_SMI","groupIDRegister","Map","reverseRegister","nextFreeGroup","getGroupForId","id","has","get","group","styledError","set","setGroupForId","invalidHookCallRe","seen","Set","checkDynamicCreation","displayName","componentId","parsedIdString","message_1","originalConsoleError_1","console","error","didNotCallInvalidHook_1","consoleErrorMessage","consoleErrorArgs","test","delete","apply","__spreadArray","useState","warn","add","message","EMPTY_ARRAY","Object","freeze","EMPTY_OBJECT","determineTheme","props","providedTheme","defaultProps","theme","domElements","escapeRegex","dashesAtEnds","escape","str","AD_REPLACER_R","getAlphabeticChar","String","fromCharCode","generateAlphabeticName","x","name","Math","abs","phash","h","i","charCodeAt","hash","generateComponentId","getComponentName","target","isTag","charAt","toLowerCase","hasSymbol","Symbol","for","REACT_MEMO_TYPE","REACT_FORWARD_REF_TYPE","REACT_STATICS","childContextTypes","contextType","contextTypes","getDefaultProps","getDerivedStateFromError","getDerivedStateFromProps","mixins","propTypes","type","KNOWN_STATICS","prototype","caller","callee","arity","MEMO_STATICS","$$typeof","compare","TYPE_STATICS","_a","render","getStatics","component","object","defineProperty","getOwnPropertyNames","getOwnPropertySymbols","getOwnPropertyDescriptor","getPrototypeOf","objectPrototype","hoistNonReactStatics","targetComponent","sourceComponent","excludelist","inheritedComponent","keys","targetStatics","sourceStatics","key","descriptor","e","isFunction","isStyledComponent","joinStrings","joinStringArray","arr","sep","isPlainObject","constructor","mixinRecursively","source","forceMerge","Array","isArray","setToString","toStringFn","value","DefaultGroupedTag","tag","this","groupSizes","Uint32Array","_cGroup","_cIndex","indexOfGroup","index","insertRules","rules","oldBuffer","oldSize","newSize","ruleIndex","insertedCount","l","insertRule","clearGroup","length_1","startIndex","endIndex","deleteRule","getGroup","css","getRule","SELECTOR","MARKER_RE","RegExp","isShadowRoot","node","ShadowRoot","nodeType","getRehydrationContainer","root","getRootNode","rehydrateNamesFromContent","sheet","content","names","split","registerName","rehydrateSheetFromTag","style","parts","textContent","part","marker","match","parseInt","getTag","rehydrateSheet","nodes","options","querySelectorAll","getAttribute","parentNode","removeChild","getNonce","__webpack_nonce__","makeStyleTag","head","parent","createElement","prevStyle","from","findLastStyleTag","nextSibling","undefined","setAttribute","nonce","insertBefore","CSSOMTag","element","appendChild","createTextNode","styleSheets","ownerNode","getSheet","rule","_error","cssRules","cssText","TextTag","childNodes","VirtualTag","_target","splice","SHOULD_REHYDRATE","defaultOptions","isServer","useCSSOMInjection","StyleSheet","globalStyles","_this","__assign","gs","server","getIdForGroup","size","selector","outputSheet","registerId","rehydrate","reconstructWithOptions","withNames","newSheet","allocateGSInstance","makeTag","hasNameForId","_b","existing","clearNames","clear","clearRules","clearTag","AMP_REGEX","SLASH","ASTERISK","hasUnbalancedBraces","indexOf","depth","inString","inComment","recursivelySetNamepace","compiled","namespace","map","replaceAll","prop","children","createStylisInstance","_componentId","_selector","_selectorRegexp","_c","_d","plugins","selfReferenceReplacer","offset","string","startsWith","endsWith","middlewares","slice","stylis","RULESET","includes","prefix","prefixer","stringify","_stack","_middleware","middleware","rulesheet","stringifyRules","flatCSS","result","declStart","braceDepth","skipEnd","skipCode","substring","remaining","sanitizeCSS","start","urlDepth","stripLineComments","compile","serialize","reduce","acc","plugin","throwStyledError","toString","mainSheet","mainStylis","defaultContextValue","shouldForwardProp","styleSheet","StyleSheetContext","Provider","Consumer","StyleSheetConsumer","StylisContext","useStyleSheetContext","useContext","StyleSheetManager","useMemo","resolvedStyleSheet","disableCSSOMInjection","enableVendorPrefixes","stylisPlugins","styleSheetContextValue","Keyframes","inject","stylisInstance","resolvedName","getName","addUnitIfNeeded","unitless","isUpper","hyphenateStyleName","output","isFalsish","chunk","objToCssArray","obj","val","hasOwnProperty","isCss","hyphenate","flatten","executionContext","styledComponentId","isReactComponent","fnResult","cssArr","isStaticRules","SEED","ComponentStyle","baseStyle","staticRulesId","isStatic","baseHash","generateAndInjectStyles","className","cssStatic","name_1","generateName","cssStaticFormatted","dynamicHash","partRule","partString","name_2","cssFormatted","ThemeContext","ThemeConsumer","useTheme","ThemeProvider","outerTheme","themeContext","mergedTheme","mergeTheme","identifiers","seenUnknownProps","createStyledComponent","isTargetStyledComp","styledComponentTarget","isCompositeComponent","attrs","parentComponentId","generateId","generateDisplayName","finalAttrs","filter","shouldForwardPropFn_1","passedShouldForwardPropFn_1","elementToBeCreated","componentStyle","forwardRefRender","ref","forwardedComponent","forwardedRef","componentAttrs","foldedComponentIds","contextTheme","ssc","useDebugValue","context","attrDef","resolvedAttrDef","resolveContext","as","propsForElement","forwardedAs","isPropValid","resolvedAttrs","useInjectedStyle","generatedClassName","warnTooManyClasses","classString","styleTags","cs","groupCss","nameKey_1","n","precedence","href","reverse","Fragment","useStyledComponentImpl","WrappedStyledComponent","forwardRef","_foldedDefaultProps","sources","sources_1","merge","generatedClasses","warningSeen","createWarnTooManyClasses","hoist","interleave","strings","addTag","arg","assign","styles","styleStringArray","constructWithOptions","componentConstructor","templateFunction","initialStyles","withConfig","config","baseStyled","styled","domElement","GlobalStyle","createStyles","instance","removeStyles","renderStyles","createGlobalStyle","JSON","globalStyle","instanceMap","WeakMap","GlobalStyleComponent","Children","count","some","css_1","memo","keyframes","navigator","product","withTheme","Component","WithTheme","themeProp","CLOSING_TAG_R","ServerStyleSheet","_emitSheetCSS","htmlAttr","getStyleTags","sealed","getStyleElement","dangerouslySetInnerHTML","__html","seal","collectStyles","interleaveWithNodeStream","input","Transform","require","transformer","transform","_","callback","renderedHtml","html","endOfClosingTag","before","after","on","readableStream","err","emit","pipe","__PRIVATE__","windowGlobalKey"],"mappings":"6LAKO,IAAMA,EACS,oBAAZC,cACiB,IAAhBA,QAAQC,MACdD,QAAQC,IAAIC,mBAAqBF,QAAQC,IAAIF,UAChD,cAEWI,EAAiB,SACjBC,EAAkB,sBAClBC,EAAa,SACbC,EAAW,YAEXC,EAA+B,oBAAXC,QAA8C,oBAAbC,SASrDC,OAAiD,IAAxBC,EAAMC,cAE/BC,EAAiBC,QACC,kBAAtBC,kBACHA,kBACmB,oBAAZf,cACkB,IAAhBA,QAAQC,UACoC,IAA5CD,QAAQC,IAAIe,6BACyB,KAA5ChB,QAAQC,IAAIe,4BACgC,UAA5ChB,QAAQC,IAAIe,6BAEVhB,QAAQC,IAAIe,4BACK,oBAAZhB,cACkB,IAAhBA,QAAQC,UAC0B,IAAlCD,QAAQC,IAAIc,mBACe,KAAlCf,QAAQC,IAAIc,kBACsB,UAAlCf,QAAQC,IAAIc,mBAEVf,QAAQC,IAAIc,kBACW,eAAzBf,QAAQC,IAAIgB,UAITC,EAA2B,CAAE,EC7CpCC,EAA6C,eAAzBnB,QAAQC,IAAIgB,SCHvB,CACb,EAAK,wDACL,EAAK,gQACL,EAAK,sHACL,EAAK,sMACL,EAAK,kKACL,EAAK,4OACL,EAAK,qHACL,EAAK,8DACL,EAAK,gCACL,GAAM,iUACN,GAAM,wNACN,GAAM,qWACN,GAAM,yLACN,GAAM,+CACN,GAAM,2ZACN,GAAM,uQACN,GAAM,yIACN,GAAM,oFDfqE,GAK7E,SAASG,QAAO,IAAyBC,EAAA,GAAAC,EAAA,EAAzBA,EAAyBC,UAAAC,OAAzBF,IAAAD,EAAyBC,GAAAC,UAAAD,GAIvC,IAHA,IAAIG,EAAIJ,EAAK,GACPK,EAAI,GAEDC,EAAI,EAAGC,EAAMP,EAAKG,OAAQG,EAAIC,EAAKD,GAAK,EAC/CD,EAAEG,KAAKR,EAAKM,IAOd,OAJAD,EAAEI,QAAQ,SAAAC,GACRN,EAAIA,EAAEO,QAAQ,SAAUD,EAC1B,GAEON,CACT,CAMwB,SAAAQ,EACtBC,OACA,IAAwBC,EAAA,GAAAb,EAAA,EAAxBA,EAAwBC,UAAAC,OAAxBF,IAAAa,EAAwBb,EAAA,GAAAC,UAAAD,GAExB,MAA6B,eAAzBtB,QAAQC,IAAIgB,SACP,IAAImB,MACT,0IAAAC,OAA0IH,EAAI,0BAAAG,OAC5IF,EAAeX,OAAS,EAAI,UAAUa,OAAAF,EAAeG,KAAK,OAAU,KAIjE,IAAIF,MAAMhB,kBAAOD,EAAOe,IAAUC,GAAc,IAAEI,OAE7D,CEtCA,IAAMC,EAAU,GAAC,GAEbC,EAAuC,IAAIC,IAC3CC,EAAuC,IAAID,IAC3CE,EAAgB,EAQPC,EAAgB,SAACC,GAC5B,GAAIL,EAAgBM,IAAID,GACtB,OAAOL,EAAgBO,IAAIF,GAG7B,KAAOH,EAAgBI,IAAIH,IACzBA,IAGF,IAAMK,EAAQL,IAEd,GAA6B,eAAzB5C,QAAQC,IAAIgB,YAAuC,EAARgC,GAAa,GAAKA,EAAQT,GACvE,MAAMU,EAAY,GAAI,UAAGD,IAK3B,OAFAR,EAAgBU,IAAIL,EAAIG,GACxBN,EAAgBQ,IAAIF,EAAOH,GACpBG,CACT,EAMaG,EAAgB,SAACN,EAAYG,GAExCL,EAAgBK,EAAQ,EAExBR,EAAgBU,IAAIL,EAAIG,GACxBN,EAAgBQ,IAAIF,EAAOH,EAC7B,ECzCMO,EAAoB,qBACpBC,EAAO,IAAIC,IAEJC,EAAuB,SAACC,EAAqBC,GACxD,GAA6B,eAAzB1D,QAAQC,IAAIgB,SAA2B,CAIzC,GAAIP,EACF,OAGF,IAAMiD,EAAiBD,EAAc,oBAAoBrB,OAAAqB,EAAc,KAAG,GACpEE,EACJ,iBAAAvB,OAAiBoB,GAAWpB,OAAGsB,EAAgD,oCAA/E,+SASIE,EAAuBC,QAAQC,MACrC,IACE,IAAIC,GAAwB,EAC5BF,QAAQC,MAAQ,SAACE,OAAqB,IAAmBC,EAAA,GAAA5C,EAAA,EAAnBA,EAAmBC,UAAAC,OAAnBF,IAAA4C,EAAmB5C,EAAA,GAAAC,UAAAD,GAGnD+B,EAAkBc,KAAKF,IACzBD,GAAwB,EAExBV,EAAKc,OAAOR,IAEZC,EAAqBQ,WAAA,EAAAC,EAAA,CAAAL,GAAwBC,GAAkB,GAEnE,EAI8B,mBAAnBvD,EAAM4D,UACf5D,EAAM4D,SAAS,MAGbP,IAA0BV,EAAKP,IAAIa,KACrCE,QAAQU,KAAKZ,GACbN,EAAKmB,IAAIb,GAEZ,CAAC,MAAOG,GAGHV,EAAkBc,KAAMJ,EAAgBW,UAE1CpB,EAAKc,OAAOR,EAEf,CAAS,QACRE,QAAQC,MAAQF,CACjB,CACF,CACH,EC5Dac,EAAcC,OAAOC,OAAO,IAC5BC,EAAeF,OAAOC,OAAO,ICAlB,SAAAE,EACtBC,EACAC,EACAC,GAEA,YAFA,IAAAA,IAAAA,EAAiEJ,GAEzDE,EAAMG,QAAUD,EAAaC,OAASH,EAAMG,OAAUF,GAAiBC,EAAaC,KAC9F,CCTA,IA4JAC,EAAe,IAAI7B,IA5JF,CACf,IACA,OACA,UACA,OACA,UACA,QACA,QACA,IACA,MACA,MACA,aACA,OACA,SACA,KACA,SACA,UACA,OACA,OACA,MACA,WACA,OACA,WACA,KACA,MACA,UACA,MACA,SACA,MACA,KACA,KACA,KACA,QACA,WACA,aACA,SACA,SACA,OACA,KACA,KACA,KACA,KACA,KACA,KACA,SACA,SACA,KACA,OACA,IACA,SACA,MACA,QACA,MACA,MACA,QACA,SACA,KACA,OACA,MACA,OACA,OACA,QACA,MACA,SACA,KACA,WACA,SACA,SACA,IACA,UACA,MACA,WACA,IACA,KACA,KACA,OACA,IACA,OACA,SACA,UACA,SACA,OACA,QACA,OACA,SACA,MACA,UACA,MACA,QACA,QACA,KACA,WACA,WACA,QACA,KACA,QACA,OACA,KACA,IACA,KACA,MACA,QACA,MACA,SACA,WACA,OACA,UACA,UACA,gBACA,sBACA,cACA,mBACA,oBACA,oBACA,iBACA,eACA,UACA,UACA,UACA,UACA,UACA,iBACA,UACA,UACA,cACA,eACA,WACA,eACA,qBACA,cACA,SACA,eACA,SACA,gBACA,IACA,QACA,OACA,iBACA,SACA,OACA,OACA,UACA,UACA,WACA,iBACA,OACA,OACA,MACA,SACA,SACA,OACA,WACA,QACA,QCvJI8B,EAAc,wCAEdC,EAAe,WAMG,SAAAC,EAAOC,GAC7B,OAAOA,EACJxD,QAAQqD,EAAa,KACrBrD,QAAQsD,EAAc,GAC3B,CCdA,IAAMG,EAAgB,WAOhBC,EAAoB,SAACxD,GAAi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"}

Directory Contents

Dirs: 6 × Files: 18

Name Size Perms Modified Actions
- drwxr-xr-x 2026-02-28 11:43:02
Edit Download
hoc DIR
- drwxr-xr-x 2026-02-28 11:43:06
Edit Download
models DIR
- drwxr-xr-x 2026-02-28 11:43:04
Edit Download
native DIR
- drwxr-xr-x 2026-02-28 11:42:58
Edit Download
sheet DIR
- drwxr-xr-x 2026-02-28 11:43:04
Edit Download
utils DIR
- drwxr-xr-x 2026-02-28 11:43:04
Edit Download
995 B lrw-r--r-- 2026-02-28 11:42:46
Edit Download
782 B lrw-r--r-- 2026-02-28 11:42:50
Edit Download
67 B lrw-r--r-- 2026-02-28 11:42:56
Edit Download
569 B lrw-r--r-- 2026-02-28 11:42:58
Edit Download
135 B lrw-r--r-- 2026-02-28 11:43:00
Edit Download
33.18 KB lrw-r--r-- 2026-02-28 11:42:20
Edit Download
155.03 KB lrw-r--r-- 2026-02-28 11:42:36
Edit Download
32.17 KB lrw-r--r-- 2026-02-28 11:42:22
Edit Download
154.85 KB lrw-r--r-- 2026-02-28 11:42:36
Edit Download
34.44 KB lrw-r--r-- 2026-02-28 11:42:24
Edit Download
157.00 KB lrw-r--r-- 2026-02-28 11:42:36
Edit Download
33.36 KB lrw-r--r-- 2026-02-28 11:42:26
Edit Download
156.77 KB lrw-r--r-- 2026-02-28 11:42:42
Edit Download
111.79 KB lrw-r--r-- 2026-02-28 11:42:28
Edit Download
263.39 KB lrw-r--r-- 2026-02-28 11:42:44
Edit Download
32.67 KB lrw-r--r-- 2026-02-28 11:42:30
Edit Download
204.40 KB lrw-r--r-- 2026-02-28 11:42:46
Edit Download
9.74 KB lrw-r--r-- 2026-02-28 11:43:04
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).