/* css/components/_buttons.css */

/* Buttons */
.btn {
    display: inline-block;
    padding: var(--spacing-sm) var(--spacing-md);
    border-radius: var(--radius-md);
    cursor: pointer;
    font-weight: var(--font-medium);
    transition: background-color 0.2s ease, box-shadow 0.2s ease;
    border: none;
    text-align: center;
    line-height: 1.5;
    text-decoration: none;
}
.btn:focus {
    outline: 2px solid transparent;
    outline-offset: 2px;
}
.btn:disabled { opacity: 0.6; cursor: not-allowed; }

.btn-primary {
    background-color: var(--color-primary-base);
    color: var(--text-color-white);
}
.btn-primary:hover:not(:disabled) {
    background-color: var(--color-primary-hover);
}

.btn-secondary {
    background-color: var(--color-secondary-base);
    color: var(--text-color-white);
}
.btn-secondary:hover:not(:disabled) {
    background-color: var(--color-secondary-hover);
}

.btn-danger {
    background-color: var(--color-danger-base);
    color: var(--text-color-white);
}
.btn-danger:hover:not(:disabled) {
    background-color: var(--color-danger-hover);
}

.btn-info {
    background-color: var(--color-info-base);
    color: var(--text-color-white);
}
.btn-info:hover:not(:disabled) {
    background-color: var(--color-info-hover);
}

.btn-success {
    background-color: var(--color-success-base);
    color: var(--text-color-white);
}
.btn-success:hover:not(:disabled) {
    background-color: var(--color-success-hover);
}

.btn-sm { padding: 0.375rem 0.75rem; font-size: var(--font-size-sm); }
.btn-xs { padding: 0.25rem 0.5rem; font-size: var(--font-size-xs); }

.btn-outline-secondary {
    background-color: transparent;
    border: 1px solid var(--color-secondary-base);
    color: var(--color-secondary-base);
}
.btn-outline-secondary:hover:not(:disabled) {
    background-color: var(--color-secondary-base);
    color: var(--text-color-white);
}
.btn-outline-danger {
    background-color: transparent;
    border: 1px solid var(--color-danger-base);
    color: var(--color-danger-base);
}
.btn-outline-danger:hover:not(:disabled) {
    background-color: var(--color-danger-base);
    color: var(--text-color-white);
}
.btn-outline-info {
    background-color: transparent;
    border: 1px solid var(--color-info-base);
    color: var(--color-info-base);
}
.btn-outline-info:hover:not(:disabled) {
    background-color: var(--color-info-base);
    color: var(--text-color-white);
}

/* New custom button styles for Task and Bug buttons */
.btn-task-add {
    background-color: var(--color-primary-base) !important; /* Added !important */
    color: var(--text-color-white);
    border: 1px solid var(--color-primary-base) !important; /* Added !important */
}
.btn-task-add:hover:not(:disabled) {
    background-color: var(--color-primary-hover) !important; /* Added !important */
    border-color: var(--color-primary-hover) !important; /* Added !important */
}

.btn-bug-add {
    background-color: var(--color-danger-base) !important; /* Added !important */
    color: var(--text-color-white);
    border: 1px solid var(--color-danger-base) !important; /* Added !important */
}
.btn-bug-add:hover:not(:disabled) {
    background-color: var(--color-danger-hover) !important; /* Added !important */
    border-color: var(--color-danger-hover) !important; /* Added !important */
}

/* General Button Styling (from old style.css, but relevant to all buttons) */
.main-content-header .header-actions {
    display: flex;
    gap: 10px; /* Space between buttons */
    flex-wrap: wrap; /* Allow buttons to wrap */
}

/* Project Card Actions (buttons within project cards) */
.project-card .card-actions {
    display: flex;
    gap: 10px;
    margin-top: 10px; /* Space between description and buttons */
}
