UNPKG

@penaprieto/design-system

Version:

Multi-brand React design system with design tokens from Figma

171 lines (145 loc) 4 kB
/* Base Stepper */ .ds-stepper { display: flex; -webkit-font-smoothing: antialiased; } /* Horizontal */ .ds-stepper--horizontal { flex-direction: row; align-items: flex-start; } /* Vertical */ .ds-stepper--vertical { flex-direction: column; } /* Item */ .ds-stepper__item { display: flex; flex: 1; position: relative; } .ds-stepper--horizontal .ds-stepper__item { flex-direction: column; align-items: center; } .ds-stepper--vertical .ds-stepper__item { flex-direction: row; flex: none; } /* Step */ .ds-stepper__step { display: flex; align-items: flex-start; gap: var(--size3, 12px); position: relative; z-index: 1; } .ds-stepper--horizontal .ds-stepper__step { flex-direction: column; align-items: center; text-align: center; } .ds-stepper--vertical .ds-stepper__step { flex-direction: row; padding-bottom: var(--size5, 24px); } .ds-stepper__step--clickable { cursor: pointer; } .ds-stepper__step--clickable:hover .ds-stepper__indicator { transform: scale(1.1); } /* Indicator */ .ds-stepper__indicator { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: var(--br-full, 9999px); flex-shrink: 0; transition: all 0.2s ease-in-out; font-family: var(--body-regular-fontFamily, var(--font-family, 'Satoshi', sans-serif)); font-size: var(--body-regular-fontSize, 16px); font-weight: var(--body-regular-strong-fontWeight, 700); line-height: 1; } /* Pending */ .ds-stepper__step--pending .ds-stepper__indicator { background-color: var(--stepper-indicator-pending-bg); border: 2px solid var(--stepper-indicator-pending-border); color: var(--stepper-indicator-pending-text); } /* Current */ .ds-stepper__step--current .ds-stepper__indicator { background-color: var(--stepper-indicator-current-bg); border: 2px solid var(--stepper-indicator-current-bg); color: var(--stepper-indicator-current-text); } /* Completed */ .ds-stepper__step--completed .ds-stepper__indicator { background-color: var(--stepper-indicator-completed-bg); border: 2px solid var(--stepper-indicator-completed-bg); color: var(--stepper-indicator-completed-text); } /* Error */ .ds-stepper__step--error .ds-stepper__indicator { background-color: var(--stepper-indicator-error-bg); border: 2px solid var(--stepper-indicator-error-border); color: var(--stepper-indicator-error-text); } /* Number */ .ds-stepper__number { user-select: none; } /* Content */ .ds-stepper__content { display: flex; flex-direction: column; gap: var(--size1, 4px); } .ds-stepper--horizontal .ds-stepper__content { max-width: 150px; } /* Label */ .ds-stepper__label { font-family: var(--body-regular-fontFamily, var(--font-family, 'Satoshi', sans-serif)); font-size: var(--body-regular-fontSize, 16px); font-weight: var(--body-regular-strong-fontWeight, 700); line-height: var(--body-regular-lineHeight, 150%); color: var(--stepper-label-default); } .ds-stepper__step--pending .ds-stepper__label { color: var(--stepper-label-pending); } /* Description */ .ds-stepper__description { font-family: var(--body-small-fontFamily, var(--font-family, 'Satoshi', sans-serif)); font-size: var(--body-small-fontSize, 14px); font-weight: var(--body-small-fontWeight, 400); line-height: var(--body-small-lineHeight, 150%); color: var(--stepper-label-pending); } /* Connector */ .ds-stepper__connector { background-color: var(--stepper-connector-default); transition: background-color 0.2s ease-in-out; } .ds-stepper--horizontal .ds-stepper__connector { position: absolute; top: 16px; left: calc(50% + 16px); right: calc(-50% + 16px); height: 2px; } .ds-stepper--vertical .ds-stepper__connector { position: absolute; left: 15px; top: 32px; bottom: 0; width: 2px; } .ds-stepper__step--completed ~ .ds-stepper__connector, .ds-stepper__item:has(.ds-stepper__step--completed) .ds-stepper__connector { background-color: var(--stepper-connector-completed); }