/* ==========================================================================
   Variables
   ========================================================================== */

.ts-badge {
    --accent-color: initial;
    --accent-foreground-color: initial;
}

/* ==========================================================================
   Base
   ========================================================================== */

.ts-badge {
    font-size: var(--ts-font-size-13px);
    border-radius: 100rem;
    padding: 0.225rem 0.5rem;
    line-height: 1;
    border: 1px solid transparent;
    background: var(--accent-color, var(--ts-gray-800));
    color: var(--accent-foreground-color, var(--ts-gray-50));
    font-weight: 400;
    display: inline-block;
    white-space: nowrap;
    text-decoration: none;
    vertical-align: middle;
    align-self: center;
}

/* ==========================================================================
   Variations
   ========================================================================== */

/**
 * Secondary
 */

.ts-badge.is-secondary {
    background: var(--ts-gray-200);
    color: var(--accent-color, var(--ts-gray-800));
}

/**
 * Outlined
 */

.ts-badge.is-outlined {
    background: transparent;
    border-color: var(--ts-gray-300);
    color: var(--accent-color, var(--ts-gray-800));
}

/**
 * Negative
 */

.ts-badge.is-negative {
    background: var(--ts-negative-500);
    color: white;
}

.ts-badge.is-negative.is-outlined {
    background: transparent;
    border-color: var(--ts-negative-500);
    color: var(--ts-negative-700);
}

/**
 * Sizes
 */

.ts-badge.is-small {
    font-size: var(--ts-font-size-12px);
}
.ts-badge.is-large {
    font-size: var(--ts-font-size-14px);
}

/**
 * Dense
 */

.ts-badge.is-dense {
    padding-top: 0.125rem;
    padding-bottom: 0.125rem;
}

/**
 * Spaced
 */

.ts-badge.is-spaced {
    margin-left: 0.45rem;
    margin-right: 0.45rem;
}
.ts-badge.is-start-spaced {
    margin-left: 0.45rem;
}
.ts-badge.is-end-spaced {
    margin-right: 0.45rem;
}
