/* Framework Button Component - mimic first-date button styles */
.framework-button {
    display: inline-block;
    padding: 8px 8px;
    font-size: 16px;
    font-weight: 300;
    border-radius: 6px;
    box-shadow: var(--shadow-button);
    cursor: pointer;
    outline: none;
    line-height: 16px;
    min-width: 34px;
}

.framework-button-type-fill {
    color: var(--color-text-light);
    background: var(--color-primary-accent);
    border: 1px solid var(--color-primary-accent);
    transition: background 0.18s, box-shadow 0.18s, transform 0.12s;
}
.framework-button-type-fill:hover {
    background: var(--color-primary-accent-hover);
    box-shadow: var(--shadow-button-hover);
    transform: translateY(-2px);
}
.framework-button-type-fill:active {
    background: var(--color-secondary-accent);
    transform: scale(0.97);
}

.framework-button-type-ghost {
    color: var(--color-primary-accent);
    background: transparent;
    border: 1px solid var(--color-secondary-accent);
    transition: background 0.18s, color 0.18s, transform 0.12s;
}
.framework-button-type-ghost:hover {
    background: var(--color-primary-accent);
    color: var(--color-text-light);
}
.framework-button-type-ghost:active {
    background: var(--color-secondary-accent);
    color: var(--color-text-light);
    transform: scale(0.97);
}
.framework-button-type-fill-danger {
    color: var(--color-text-light);
    background: var(--color-warning-error);
    border: none;
    transition: background 0.18s, box-shadow 0.18s, transform 0.12s;
}
.framework-button-type-fill-danger:hover {
    /* background: var(--color-warning-error-hover); */
    box-shadow: var(--shadow-button-hover);
    transform: translateY(-2px);
}
.framework-button-type-fill-danger:active {
    background: var(--color-warning-error-active);
    transform: scale(0.97);
}

.framework-button-type-ghost-danger {
    color: var(--color-warning-error);
    background: transparent;
    border: 1px solid var(--color-warning-error);
    transition: background 0.18s, color 0.18s, transform 0.12s;
}
.framework-button-type-ghost-danger:hover {
    background: var(--color-warning-error);
    color: var(--color-text-light);
}
.framework-button-type-ghost-danger:active {
    background: var(--color-warning-error-active);
    color: var(--color-text-light);
    transform: scale(0.97);
}

/* Disabled button styles */
.framework-button-type-disabled-fill {
    color: var(--color-text-secondary);
    background: var(--color-disabled);
    border: 1px solid var(--color-border-light);
    cursor: not-allowed;
    opacity: 0.6;
}
.framework-button-type-disabled-fill:hover {
    background: var(--color-disabled);
    box-shadow: none;
    transform: none;
}

.framework-button-type-disabled-ghost {
    color: var(--color-text-secondary);
    background: transparent;
    border: 1px solid var(--color-border-light);
    cursor: not-allowed;
    opacity: 0.6;
}
.framework-button-type-disabled-ghost:hover {
    background: transparent;
    color: var(--color-text-disabled);
    transform: none;
}