use dioxus::prelude::*;

/// Reusable dashboard card with icon, title, description and click-through link.
///
/// # Arguments
///
/// * `title` - Card heading text.
/// * `description` - Short description shown beneath the title.
/// * `href` - URL the card links to when clicked.
/// * `icon` - Element rendered as the card icon (typically a `dioxus_free_icons::Icon`).
#[component]
pub fn DashboardCard(title: String, description: String, href: String, icon: Element) -> Element {
    rsx! {
        a { class: "dashboard-card", href: "{href}",
            div { class: "card-icon", {icon} }
            h3 { class: "card-title", "{title}" }
            p { class: "card-description", "{description}" }
        }
    }
}
