@import "@Themes/constants.scss"; .root { display: inline-flex; justify-content: center; border: 1px solid; box-sizing: border-box; height: fit-content; align-items: center; background: transparent; font-style: normal; font-weight: var(--font-text-weight-regular, 400); white-space: nowrap; user-select: none; cursor: pointer; font-family: var(--font-text-family); svg { width: 18px; height: 18px; } /** * Every possible variants */ &[variant="primary"] { color: var(--color-primary-500); border: 1px solid var(--button-contained-primary-default-border, rgba(0, 0, 0, 0)); background: var(--button-contained-primary-default-background, #005bcb); &:hover { border: 1px solid var(--button-contained-primary-hovered-border, rgba(0, 0, 0, 0)); background: var(--button-contained-primary-hovered-background, #0040a4); } &:focus, &:active { border: 1px solid var(--button-contained-primary-pressed-border, rgba(0, 0, 0, 0)); background: var(--button-contained-primary-pressed-background, #013391); } &[styleType="outlined"] { &:hover { background-color: var(--color-primary-50); } &:focus, &:active { background-color: var(--color-primary-100); color: var(--color-primary-700); border-color: var(--color-primary-700); } } &[styleType="text"] { &:hover { background-color: transparent; } &:focus, &:active { background-color: transparent; color: var(--color-primary-800); border-color: var(--color-primary-800); } } } &[variant="secondary"] { color: var(--color-secondary-500); background: var(--color-secondary-500); border-color: var(--color-secondary-500); &:hover { background: var(--color-secondary-700); border-color: var(--color-secondary-700); } &:focus, &:active { background: var(--color-secondary-800); border-color: var(--color-secondary-800); } &[styleType="outlined"] { &:hover { background-color: var(--color-secondary-50); } &:focus, &:active { background-color: var(--color-secondary-100); color: var(--color-secondary-700); border-color: var(--color-secondary-700); } } &[styleType="text"] { &:hover { background-color: transparent; } &:focus, &:active { background-color: transparent; color: var(--color-secondary-800); border-color: var(--color-secondary-800); } } } &[variant="neutral"] { color: var(--color-neutral-500); background: var(--color-neutral-500); border-color: var(--color-neutral-500); &:hover { background: var(--color-neutral-700); border-color: var(--color-neutral-700); } &:focus, &:active { background: var(--color-neutral-800); border-color: var(--color-neutral-800); } &[styleType="outlined"] { &:hover { background-color: var(--color-neutral-50); } &:focus, &:active { background-color: var(--color-neutral-100); color: var(--color-neutral-700); border-color: var(--color-neutral-700); } } &[styleType="text"] { &:hover { background-color: transparent; } &:focus, &:active { background-color: transparent; color: var(--color-neutral-800); border-color: var(--color-neutral-800); } } } &[variant="error"] { color: var(--color-error-600); background: var(--color-error-600); border-color: var(--color-error-600); &:hover { background: var(--color-error-800); border-color: var(--color-error-800); } &:focus, &:active { background: var(--color-error-900); border-color: var(--color-error-900); } &[styleType="outlined"] { &:hover { background-color: var(--color-error-50); border-color: var(--color-secondary-700); } &:focus, &:active { background-color: var(--color-error-100); color: var(--color-secondary-700); border-color: var(--color-secondary-700); } } &[styleType="text"] { &:hover { background-color: transparent; color: var(--color-error-800); border-color: var(--color-error-800); } &:focus, &:active { background-color: transparent; color: var(--color-error-900); border-color: var(--color-error-900); } } } &[variant="warning"] { color: var(--color-warning-600); background: var(--color-warning-600); border-color: var(--color-warning-600); &:hover { background: var(--color-warning-800); border-color: var(--color-warning-800); } &:focus, &:active { background: var(--color-warning-900); border-color: var(--color-warning-900); } &[styleType="outlined"] { &:hover { background-color: var(--color-warning-50); border-color: var(--color-warning-700); color: var(--color-warning-700); } &:focus, &:active { background-color: var(--color-warning-100); color: var(--color-warning-700); border-color: var(--color-warning-700); } } &[styleType="text"] { &:hover { background-color: transparent; color: var(--color-warning-800); border-color: var(--color-warning-800); } &:focus, &:active { background-color: transparent; color: var(--color-warning-900); border-color: var(--color-warning-900); } } } &[variant="success"] { color: var(--color-success-600); background: var(--color-success-600); border-color: var(--color-success-600); &:hover { background: var(--color-success-800); border-color: var(--color-success-800); } &:focus, &:active { background: var(--color-success-900); border-color: var(--color-success-900); } &[styleType="outlined"] { &:hover { background-color: var(--color-success-50); border-color: var(--color-success-700); color: var(--color-success-700); } &:focus, &:active { background-color: var(--color-success-100); color: var(--color-success-700); border-color: var(--color-success-700); } } &[styleType="text"] { &:hover { background-color: transparent; color: var(--color-success-800); border-color: var(--color-success-800); } &:focus, &:active { background-color: transparent; color: var(--color-success-900); border-color: var(--color-success-900); } } } &[variant="info"] { color: var(--color-info-700); background: var(--color-info-700); border-color: var(--color-info-700); &:hover { background: var(--color-info-900); border-color: var(--color-info-900); } &:focus, &:active { background: var(--color-info-950); border-color: var(--color-info-950); } &[styleType="outlined"] { &:hover { background-color: var(--color-info-50); border-color: var(--color-info-700); color: var(--color-info-700); } &:focus, &:active { background-color: var(--color-info-100); color: var(--color-info-700); border-color: var(--color-info-700); } } &[styleType="text"] { &:hover { background-color: transparent; color: var(--color-info-900); border-color: var(--color-info-900); } &:focus, &:active { background-color: transparent; color: var(--color-info-950); border-color: var(--color-info-950); } } } /** * Every possible sizes */ &[sizing="sm"] { padding: var(--spacing-0-5) var(--spacing-1-5); gap: var(--spacing-0-75); font-size: 14px; } &[sizing="md"] { padding: var(--spacing-1) var(--spacing-2); gap: var(--spacing-0-75); font-size: 16px; } &[sizing="lg"] { padding: var(--spacing-2) var(--spacing-3); gap: var(--spacing-1-5); font-size: 16px; } /** * Every possible style types */ &[styleType="contained"] { color: var(--color-generic-white); } &[styleType="outlined"] { background: transparent; } &[styleType="text"] { background: transparent; border: none; border-bottom: 1px solid; } /** * Every possible states */ &[fullwidthattr="true"] { width: 100%; flex: 1; } &[fullwidthattr="false"] { width: fit-content; } &[touppercase="false"] { text-transform: inherit; } &[disabled="true"] { opacity: var(--opacity-disabled, 0.3); } }