"use strict";
const __vanilla_filescope__ = require("@vanilla-extract/css/fileScope");
const css = require("@vanilla-extract/css");
const cssUtils = require("@vanilla-extract/css-utils");
const styles_lib_css_atoms_atomicProperties_cjs = require("../atoms/atomicProperties.cjs");
const styles_lib_css_responsiveStyle_cjs = require("../responsiveStyle.cjs");
__vanilla_filescope__.setFileScope("src/lib/css/negativeMargin/negativeMargin.css.ts", "braid-design-system");
const stylesForBreakpoint = (bp, property, mapToStyle) => css.styleVariants(styles_lib_css_atoms_atomicProperties_cjs.space, (value) => {
  const styleRule = {
    [property]: value ? cssUtils.calc.negate(value) : 0
  };
  return styles_lib_css_responsiveStyle_cjs.responsiveStyle({
    [bp]: mapToStyle ? mapToStyle(styleRule) : styleRule
  });
}, "stylesForBreakpoint");
const beforePseudo = (rule) => ({
  "::before": rule
});
const afterPseudo = (rule) => ({
  "::after": rule
});
const preventCollapsePseudo = {
  top: css.style(beforePseudo({
    content: '""',
    display: "table"
  }), "preventCollapsePseudo_top"),
  bottom: css.style(afterPseudo({
    content: '""',
    display: "table"
  }), "preventCollapsePseudo_bottom")
};
const top = {
  mobile: stylesForBreakpoint("mobile", "marginBottom", beforePseudo),
  tablet: stylesForBreakpoint("tablet", "marginBottom", beforePseudo),
  desktop: stylesForBreakpoint("desktop", "marginBottom", beforePseudo),
  wide: stylesForBreakpoint("wide", "marginBottom", beforePseudo)
};
const bottom = {
  mobile: stylesForBreakpoint("mobile", "marginTop", afterPseudo),
  tablet: stylesForBreakpoint("tablet", "marginTop", afterPseudo),
  desktop: stylesForBreakpoint("desktop", "marginTop", afterPseudo),
  wide: stylesForBreakpoint("wide", "marginTop", afterPseudo)
};
const left = {
  mobile: stylesForBreakpoint("mobile", "marginLeft"),
  tablet: stylesForBreakpoint("tablet", "marginLeft"),
  desktop: stylesForBreakpoint("desktop", "marginLeft"),
  wide: stylesForBreakpoint("wide", "marginLeft")
};
const right = {
  mobile: stylesForBreakpoint("mobile", "marginRight"),
  tablet: stylesForBreakpoint("tablet", "marginRight"),
  desktop: stylesForBreakpoint("desktop", "marginRight"),
  wide: stylesForBreakpoint("wide", "marginRight")
};
__vanilla_filescope__.endFileScope();
exports.bottom = bottom;
exports.left = left;
exports.preventCollapsePseudo = preventCollapsePseudo;
exports.right = right;
exports.top = top;
