UNPKG

@spaced-out/ui-design-system

Version:
93 lines (80 loc) 2.52 kB
@value (colorBackgroundTertiary, colorFillPrimary, colorBorderSecondary, colorFocusPrimary) from '../../styles/variables/_color.css'; @value (borderRadiusMedium, borderWidthNone, borderWidthTertiary) from '../../styles/variables/_border.css'; @value (spaceSmall, spaceMedium, spaceLarge, spaceXSmall) from '../../styles/variables/_space.css'; @value (size58, sizeFluid) from '../../styles/variables/_size.css'; .cardWrapper { --card-padding-top: spaceMedium; --card-padding-right: spaceMedium; --card-padding-bottom: spaceMedium; --card-padding-left: spaceMedium; } .cardWrapper { display: flex; composes: borderPrimary from '../../styles/border.module.css'; background-color: colorBackgroundTertiary; border-radius: borderRadiusMedium; } .cardWrapper:not(:has(.cardHeader, .cardFooter, .cardContent)) { padding-top: var(--card-padding-top); padding-right: var(--card-padding-right); padding-bottom: var(--card-padding-bottom); padding-left: var(--card-padding-left); } .cardWrapper:has(.cardHeader, .cardFooter, .cardContent) { flex-flow: column; } .cardHeader { display: flex; justify-content: space-between; width: sizeFluid; align-items: center; min-height: size58; composes: subTitleSmall from '../../styles/typography.module.css'; composes: borderBottomPrimary from '../../styles/border.module.css'; padding: spaceSmall var(--card-padding-right) spaceSmall var(--card-padding-left); gap: spaceXSmall; } .cardFooter { display: flex; justify-content: space-between; width: sizeFluid; align-items: center; min-height: size58; composes: subTitleSmall from '../../styles/typography.module.css'; composes: borderTopPrimary from '../../styles/border.module.css'; padding: spaceSmall var(--card-padding-right) spaceSmall var(--card-padding-left); gap: spaceXSmall; margin-top: auto; } .cardTitle { display: flex; } .cardActions { display: flex; gap: spaceXSmall; margin-left: auto; } .cardContent { display: flex; padding-top: var(--card-padding-top); padding-right: var(--card-padding-right); padding-bottom: var(--card-padding-bottom); padding-left: var(--card-padding-left); } .clickableCard { cursor: pointer; outline: none; } .clickableCard.disabled { pointer-events: none; } .clickableCard:hover { border-color: colorBorderSecondary; } .clickableCard:focus-within { border-color: colorFillPrimary; box-shadow: borderWidthNone borderWidthNone borderWidthNone borderWidthTertiary colorFocusPrimary; }