import { getSizeStyles as i } from "../../../../utils/getSizeStyles/getSizeStyles.js";
const d = {
  /**
   * *********************************************************
   * Styles for the Accordion root container.
   **********************************************************
   */
  accordionRoot: ({ theme: r, ownerState: a }) => ({
    "&&&": {
      width: "100%",
      margin: "unset",
      overflow: "visible",
      height: "min-content",
      boxShadow: "unset",
      backgroundColor: r.vars.palette.background.default,
      ...a?.variant === "outlined" && {
        border: `${r.size.borderStroke.container} ${r.vars.palette.border.secondary}`,
        borderRadius: a?.variant === "outlined" ? r.size.borderRadius.r2 : "unset"
      },
      ...a?.variant === "text" && {
        borderBottom: `${r.size.borderStroke.container} ${r.vars.palette.border.secondary}`,
        borderRadius: "unset"
      },
      "&:before": {
        display: "none"
      }
    }
  }),
  /**
   * **************************************************************
   * Styles for the Accordion header container.
   * **************************************************************
   */
  accordionSummary: ({ theme: r, ownerState: a }) => ({
    "&&&": {
      paddingLeft: r.vars.size.baseSpacings.sp2,
      paddingRight: r.vars.size.baseSpacings.sp2,
      gap: r.vars.size.baseSpacings.sp2,
      display: "flex",
      flexDirection: "row",
      justifyContent: "flex-start",
      alignItems: "center",
      ...i(r, a?.size ?? "medium", "container", (o) => ({
        minHeight: o,
        height: o
      })),
      background: r.vars.palette.background.default,
      overflow: "hidden",
      borderBottom: a?.expanded && a?.variant === "outlined" ? `${r.size.borderStroke.container} ${r.vars.palette.border.secondary}` : "unset",
      borderRadius: "unset",
      ...a?.variant === "outlined" && {
        borderTopLeftRadius: r.size.borderRadius.r2,
        borderTopRightRadius: r.size.borderRadius.r2,
        borderBottomLeftRadius: a?.expanded ? "unset" : r.size.borderRadius.r2,
        borderBottomRightRadius: a?.expanded ? "unset" : r.size.borderRadius.r2
      },
      "&:hover": {
        background: r.vars.palette.default.hoverOpacity
      },
      "&:focus-visible": {
        borderRadius: r.size.borderRadius["r1-5"],
        boxShadow: `0px 0px 0px 1.3px ${r.vars.palette.border.main}`
      },
      "&:active": {
        background: r.vars.palette.default.activeOpacity
      },
      "& .MuiAccordionSummary-content": {
        gap: `${r.vars.size.baseSpacings.sp1}`,
        overflow: "hidden",
        paddingLeft: r.vars.size.baseSpacings.sp1,
        "& .MuiTypography-root": {
          overflow: "hidden",
          textOverflow: "ellipsis",
          whiteSpace: "nowrap"
        }
      }
    }
  }),
  /**
   * *************************************************
   * Styles for the icon displayed next to the Accordion label.
   * *************************************************
   */
  accordionIconLabel: ({ theme: r }) => ({
    color: r.vars.palette.text.primary
  }),
  /**
   *******************************************************************
   * Styles for the label displayed in the Accordion header.
   * *******************************************************************
   */
  accordionLabel: ({ theme: r }) => ({
    color: r.vars.palette.text.primary,
    paddingLeft: r.vars.size.baseSpacings.sp1
  }),
  /**
   * *************************************************
   * Styles for the expand/collapse icon displayed in the Accordion header.
   * *************************************************
   */
  accordionIconExpanded: ({ theme: r }) => ({
    color: r.vars.palette.text.primary
  }),
  /**
   * **************************************************************
   * Styles for the container that renders Accordion content.
   * **************************************************************
   */
  accordionDetails: ({ theme: r, ownerState: a }) => ({
    padding: r.vars.size.baseSpacings.sp5,
    background: r.vars.palette.background.default,
    display: "flex",
    flexDirection: "column",
    alignItems: "flex-start",
    alignSelf: "stretch",
    overflow: "hidden",
    ...a?.hasTextContent && {
      whiteSpace: "pre-wrap",
      tabSize: 4
    },
    ...a?.variant === "outlined" && {
      borderBottomLeftRadius: r.size.borderRadius["r1-5"],
      borderBottomRightRadius: r.size.borderRadius["r1-5"]
    },
    "& .MuiStack-root .M4LPropertyValue-root:last-of-type": {
      borderBottom: "unset"
    }
  })
};
export {
  d as accordionStyles
};
