/* 
  Geeks UI - Button Components
  Interactive button elements with various styles
*/

.btn {
    display: var(--geeks-ui-display);
    padding: var(--geeks-ui-padding);
    font-size: var(--geeks-ui-font-size);
    font-weight: var(--geeks-ui-font-weight-normal);
    text-align: var(--geeks-ui-text-align);
    text-decoration: var(--geeks-ui-text-decoration);
    border: var(--geeks-ui-border);
    border-radius: var(--geeks-ui-border-radius);
    cursor: pointer;
    transition: var(--geeks-ui-transition);
    user-select: none;
}

.btn:hover {
    opacity: 0.9;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

.btn:active {
    transform: translateY(0);
}

.btn-primary {
    background-color: var(--geeks-ui-primary);
    color: var(--geeks-ui-text-light);
}

.btn-secondary {
    background-color: var(--geeks-ui-secondary);
    color: var(--geeks-ui-text-light);
}

.btn-success {
    background-color: var(--geeks-ui-success);
    color: var(--geeks-ui-text-light);
}

.btn-info {
    background-color: var(--geeks-ui-info);
    color: var(--geeks-ui-text-light);
}

.btn-warning {
    background-color: var(--geeks-ui-warning);
    color: var(--geeks-ui-text-light);
}

.btn-base {
    background-color: var(--geeks-ui-base);
    color: var(--geeks-ui-text-light);
}

/* Button Sizes */
.btn-sm {
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
}

.btn-lg {
    padding: 1rem 2rem;
    font-size: 1.25rem;
}

/* Outline Buttons */
.btn-outline-primary {
    background-color: transparent;
    border: 2px solid var(--geeks-ui-primary);
    color: var(--geeks-ui-primary);
}

.btn-outline-primary:hover {
    background-color: var(--geeks-ui-primary);
    color: var(--geeks-ui-text-light);
}