import { normalize as n } from "../../../../@twind_core@1.1.3_typescript@5.9.2/node_modules/@twind/core/core.js";
let a = [
  [
    "hocus",
    "&:hover,&:focus-visible"
  ],
  [
    "((group|peer)(~[^-]+)?)-hocus",
    ({ 1: i }, { e, h: o }) => (
      // we could you `:is(:hover,:focus-visible)` but browser support is not so good ATM (2022-02)
      // https://caniuse.com/css-matches-pseudo
      [
        "hover",
        "focus-visible"
      ].map((r) => `:merge(.${e(o(i))}):${r}${i[0] == "p" ? "~" : " "}&`).join(",")
    )
  ],
  // - `dir-rtl` -> `:dir(rtl)`
  // - `lang-en` -> `:lang(en)`
  [
    "(dir|lang)-",
    ({ 1: i, $$: e }) => `&:${i}(${e})`
  ],
  // - `not-hover` -> `:not(:hover)`
  // - `not-[lang]` -> `:not([lang])`
  [
    "not-([a-z-]+|\\[.+\\])",
    ({ 1: i }) => `&:not(${(i[0] == "[" ? "" : ":") + i})`
  ],
  // Selectors
  // - `children:underline` -> `children:underline > *`
  [
    "children",
    "&>*"
  ],
  [
    "siblings",
    "&~*"
  ],
  [
    "sibling",
    "&+*"
  ],
  [
    "override",
    "&&"
  ],
  // Attribute selector
  // `[lang]:underline` -> `[lang]:underline[lang]`
  [
    "\\[.+]",
    (i) => "&" + i.input
  ],
  // Pseudo Elements using double colon (`first-letter::underline`) as well
  [
    "([a-z-]+):",
    ({ 1: i }) => "&::" + i
  ],
  // - `&~span:underline` -> `&~span:underline ~ span`
  // - `&+span:underline`
  // - `&>span:underline`
  // - `&>*:underline`
  // - `&_span:underline` -> `&_span:underline span`
  [
    /&/,
    (i) => n(i.input)
  ]
];
export {
  a as default
};
//# sourceMappingURL=variants.js.map
