/* ========================================
   Buttons
   ======================================== */

.uah-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: var(--uah-spacing-s);
    padding: var(--uah-spacing-m) var(--uah-spacing-l);
    border: 1px solid var(--uah-color-border);
    border-radius: var(--uah-radius-m);
    font-size: var(--uah-font-size-s);
    font-weight: var(--uah-font-weight-normal);
    background: var(--uah-color-bg);
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
    color: var(--uah-color-text);
}

.uah-btn i {
    font-size: var(--uah-font-size-xxs);
}

.uah-btn:hover {
    border: 1px solid var(--uah-color-primary);
    color: var(--uah-color-primary);
}



.uah-btn-primary {
    background: #2ECC40;
    color: white;
}

.uah-btn-primary:hover:not(:disabled) {
    background: #26a829;
}

.uah-btn-primary:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.uah-btn-secondary {
    background: #fff;
    color: #555;
    border: 1px solid #e0e0e0;
}

.uah-btn-secondary:hover:not(:disabled) {
    background: #f8f9fa;
}

.uah-btn-small {
    padding: 6px 12px;
    font-size: 13px;
}

.uah-btn-hint {
    font-weight: var(--uah-font-weight-normal);
    color: var(--uah-color-gray);
    margin-left: var(--uah-spacing-s);
    line-height: var(--uah-line-height-s);
}

/* Save/Cancel Edit Buttons */
.uah-save-edit,
.uah-cancel-edit {
    margin-right: 8px;
}

/* ========================================================================
   UAH BUTTONS
   ======================================================================== */

.uah-btn-danger {
    background: var(--uah-color-error);
    color: var(--uah-color-white);
}

.uah-btn-danger:hover {
    background: var(--uah-color-error);
    transform: translateY(-1px);
    box-shadow: var(--uah-shadow-md);
}

.uah-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

.uah-modal-actions-vertical {
    flex-direction: column;
}

.uah-modal-actions-vertical .uah-btn {
    width: 100%;
    flex: none;
}

/* ============================================================================
   BUTTONS
   ========================================================================== */

.uah-btn-primary:disabled {
    background: var(--uah-color-gray);
    cursor: not-allowed;
    transform: none;
}

.uah-btn-danger {
    background: var(--uah-color-error);
    color: var(--uah-color-white);
}

.uah-btn-danger:hover {
    background: var(--uah-color-error);
    transform: translateY(-1px);
    box-shadow: var(--uah-shadow-xl);
}

.uah-btn-loader {
    display: none;
}


/* ============================================================================
   BUTTONS
   ========================================================================== */

.uah-btn-primary:disabled {
    background: var(--uah-color-bg-alt);
    cursor: not-allowed;
    transform: none;
}

.uah-btn-block {
    width: 100%;
}

.uah-btn-loader {
    display: none;
}




/* ========================================
   Load More Button
   ======================================== */

.uah-load-more-comments {
    display: block;
    margin: 40px auto 0;
    padding: 12px 32px;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    color: #2ECC40;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.uah-load-more-comments:hover:not(:disabled) {
    background: #f8f9fa;
    border-color: #2ECC40;
}

.uah-load-more-comments:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Helpful button hover */
.uah-helpful-btn:hover:not(.uah-helpful-voted) {
    background: #f1f8f1;
    color: var(--uah-color-success);
    border-color: var(--uah-color-success);
}

/* Not Helpful button hover */
.uah-not-helpful-btn:hover:not(.uah-not-helpful-voted) {
    background: #fff5f5;
    color: var(--uah-color-error);
    border-color: var(--uah-color-error);
}

/* Voted states (active) */
.uah-helpful-voted {
    background: var(--uah-color-success) !important;
    color: var(--uah-color-white) !important;
    border-color: var(--uah-color-success) !important;
}

.uah-not-helpful-voted {
    background: var(--uah-color-error) !important;
    color: var(--uah-color-white) !important;
    border-color: var(--uah-color-error) !important;
}

/* Keep hover effect even when voted (for toggle-off) */
.uah-helpful-voted:hover {
    opacity: 0.8;
    cursor: pointer;
}

.uah-not-helpful-voted:hover {
    opacity: 0.8;
    cursor: pointer;
}

/* Icon spacing */
.uah-helpful-btn i,
.uah-not-helpful-btn i {
    margin-right: var(--uah-spacing-xs);
}

/* Loading state for vote buttons (v5.0.2+) */
.uah-helpful-btn:disabled,
.uah-not-helpful-btn:disabled {
    cursor: not-allowed;
    opacity: 0.7;
}

.uah-helpful-btn .uah-btn-loader,
.uah-not-helpful-btn .uah-btn-loader {
    display: none;
}

.uah-helpful-btn:disabled .uah-btn-text,
.uah-not-helpful-btn:disabled .uah-btn-text {
    display: none;
}

.uah-helpful-btn:disabled .uah-vote-count,
.uah-not-helpful-btn:disabled .uah-vote-count {
    display: none;
}

.uah-helpful-btn:disabled .uah-btn-loader,
.uah-not-helpful-btn:disabled .uah-btn-loader {
    display: inline;
}

.uah-btn-block {
    width: 100%;
}


/* ==========================================================================
   LOAD MORE
   ========================================================================== */

.uah-load-more-container {
    text-align: center;
    margin-top: var(--uah-spacing-l);
}

.uah-load-more-btn {
    padding: var(--uah-spacing-l) var(--uah-spacing-xxl);
    background: var(--uah-alt-color-bg);
    font-size: var(--uah-font-size-m);
    color: var(--uah-alt-color-heading);
    line-height: var(--uah-line-height-s);
    font-weight: var(--uah-font-weight-normal);
    border-radius: var(--uah-radius-m);
    transition: all var(--uah-transition-slow);
}

.uah-load-more-btn:hover {
    background: var(--uah-color-primary);
    transition: all var(--uah-transition-slow);
}

.uah-btn-text {
    display: inline;
}

.uah-btn-loader {
    display: none;
}

.uah-load-more-btn:disabled .uah-btn-text {
    display: none;
}

.uah-load-more-btn:disabled .uah-btn-loader {
    display: inline;
}

.uah-btn-copy {
    flex-shrink: 0;
    padding: var(--uah-spacing-xs) var(--uah-spacing-m);
    background: var(--uah-color-success);
    color: var(--uah-color-white);
    border: none;
    border-radius: var(--uah-radius-s);
    font-size: var(--uah-font-size-s);
    font-weight: var(--uah-font-weight-normal);
    cursor: pointer;
    transition: all var(--uah-transition-fast);
    display: flex;
    align-items: center;
    gap: var(--uah-spacing-xs);
    white-space: nowrap;
}

.uah-btn-copy:hover {
    background: #059669;
    transform: scale(1.05);
}

.uah-btn-copy:active {
    transform: scale(0.98);
}

.uah-btn-copy.uah-btn-success {
    background: var(--uah-color-success);
}

.uah-btn-copy.uah-btn-error {
    background: var(--uah-color-error);
}

.uah-btn-copy i {
    font-size: 12px;
}

/* ============================================
   Action Buttons
   ============================================ */

.uah-discount-action {
    flex: 0 0 auto;
}

.uah-discount-action .uah-btn {
    padding: var(--uah-spacing-m) var(--uah-spacing-xl);
    font-size: var(--uah-font-size-s);
    font-weight: var(--uah-font-weight-semibold);
    border-radius: var(--uah-radius-s);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: var(--uah-spacing-s);
    transition: all var(--uah-transition-fast);
    white-space: nowrap;
}

.uah-discount-action .uah-btn-primary {
    background: linear-gradient(135deg, var(--uah-color-success) 0%, #059669 100%);
    color: var(--uah-color-white);
    border: none;
}

.uah-discount-action .uah-btn-primary:hover {
    background: linear-gradient(135deg, #059669 0%, #047857 100%);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
}

.uah-discount-action .uah-btn-secondary {
    background: var(--uah-color-bg-alt);
    color: var(--uah-color-text);
    border: 1px solid var(--uah-color-border);
}

.uah-discount-action .uah-btn-secondary:hover {
    background: var(--uah-color-border);
    border-color: var(--uah-color-faded);
}