<MudLink Href="@Href" OnClick="OnClick" Underline="Underline.None">
    <MudPaper Elevation="25">
        <MudCard Elevation="0">
            <MudCardHeader>
                <CardHeaderAvatar>
                    @if (Icon is not null)
                    {
                        <MudIcon Icon="@Icon" Color="@(IconColor ?? Color.Inherit)" Style="width:4vh; height:4vh;" />
                    }
                </CardHeaderAvatar>
                <CardHeaderContent>
                    <MudText Typo="Typo.subtitle2" Class="mud-text-secondary" Color="@(KeyColor ?? Color.Inherit)" Style="font-size: 0.96rem;">
                        @Key
                    </MudText>
                    <MudTextField T="string" Variant="Variant.Text" DisableUnderLine ReadOnly 
                        Text="@Text" Lines="@Lines" Class="mt-n1" Style="font-size: 0.99rem; margin: 0;" />
                </CardHeaderContent>
            </MudCardHeader>
        </MudCard>
    </MudPaper>
</MudLink>

@code {
    [Parameter]
    public string? Href { get; set; }

    [Parameter]
    public EventCallback OnClick { get; set; }

    [Parameter]
    public string? Icon { get; set; }

    [Parameter]
    public Color? IconColor { get; set; }

    [Parameter]
    public string? Key { get; set; }

    [Parameter]
    public Color? KeyColor { get; set; }

    [Parameter]
    public string? Text { get; set; }

    [Parameter]
    public int Lines { get; set; } = 1;
}