/* design_system/buttons.css — Primary button styles */

/* Buttons */
.btn-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    min-height: var(--control-height);
    padding: var(--control-padding-y) 1rem;
    font-size: var(--control-font-size);
    font-weight: 600;
    line-height: 1.25;
    color: #fff;
    text-decoration: none;
    border: none;
    border-radius: var(--radius-control);
    cursor: pointer;
    font-family: inherit;
    background: var(--cta-gradient);
    background-size: 200% 200%;
    transition: transform 0.2s, filter 0.2s;
}
.btn-cta:hover {
    color: #fff;
    transform: scale(1.02);
    filter: brightness(1.08);
}
.btn-ghost {
    display: inline-flex;
    align-items: center;
    min-height: var(--control-height);
    padding: var(--control-padding-y) 1rem;
    font-size: var(--control-font-size);
    font-weight: 500;
    line-height: 1.25;
    color: var(--color-text);
    text-decoration: none;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-control);
    background: #fff;
    cursor: pointer;
    font-family: inherit;
    transition: border-color 0.2s, background 0.2s;
}
.btn-ghost:hover {
    border-color: var(--color-accent);
    background: var(--color-accent-soft);
}

/* Compact / ghost variants */

.btn-compact.btn-ghost,
.btn-compact.btn-cta,
.btn-compact.btn-danger-ghost,
.btn-compact.btn-success-ghost {
    min-height: 1.875rem;
    padding: 0.3rem 0.75rem;
    font-size: 0.8125rem;
    white-space: nowrap;
}

.btn-danger-ghost {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    min-height: var(--control-height);
    padding: var(--control-padding-y) 1rem;
    font-size: var(--control-font-size);
    font-weight: 500;
    line-height: 1.25;
    color: var(--red, #c0392b);
    text-decoration: none;
    border: 1px solid rgba(192, 57, 43, 0.35);
    border-radius: var(--radius-control);
    background: rgba(192, 57, 43, 0.08);
    cursor: pointer;
    font-family: inherit;
    transition: background 0.2s, border-color 0.2s;
}

.btn-danger-ghost:hover {
    background: rgba(192, 57, 43, 0.15);
    border-color: rgba(192, 57, 43, 0.5);
}

.btn-success-ghost {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    min-height: var(--control-height);
    padding: var(--control-padding-y) 1rem;
    font-size: var(--control-font-size);
    font-weight: 500;
    line-height: 1.25;
    color: var(--green, #2a9d6e);
    text-decoration: none;
    border: 1px solid rgba(42, 157, 110, 0.35);
    border-radius: var(--radius-control);
    background: rgba(42, 157, 110, 0.08);
    cursor: pointer;
    font-family: inherit;
    transition: background 0.2s, border-color 0.2s;
}

.btn-success-ghost:hover {
    background: rgba(42, 157, 110, 0.15);
    border-color: rgba(42, 157, 110, 0.5);
}

.btn-cta-full {
    width: 100%;
    justify-content: center;
}
