﻿.ARSM-center-text {
    text-align: center !important;
}

.mud-button-filled {
    box-shadow: 0 3px 1px -2px rgb(0 0 0 / 30%), 0 2px 2px 0 rgb(0 0 0 / 0), 0 1px 5px 0 rgb(0 0 0 / 10%) !important;
}

.mud-dialog {
    box-shadow: 0 3px 1px -2px rgb(0 0 0 / 10%), 0 2px 2px 0 rgb(0 0 0 / 0), 0 10px 10px 0 rgb(0 0 0 / 5%) !important;
}

.mud-nav-link {
    white-space: normal !important;
    padding: 12px 16px 12px 38px;
}

.mud-nav-link.active:not(.mud-nav-link-disabled) {
    border-right: 3px solid var(--mud-palette-primary);
    background-color: rgba(var(--mud-palette-primary-rgb), 0.1);
}

.mud-table {
    padding: 20px !important;
    margin-bottom: 20px !important;
}

.mud-card {
    margin-bottom: 20px !important;
}

#blazor-error-ui {
    color: var(--mud-palette-drawer-text);
    background: var(--mud-palette-drawer-background);
}

.mud-overlay-dark {
    backdrop-filter: blur(2px);
}

.mud-card-header .mud-card-header-avatar {
    margin-inline-end: 10px !important;
}

.mud-nav-link {
    padding: 12px 16px 12px 15px !important;
}

.mud-dialog-content {
    max-height: 75vh !important;
    overflow: auto !important;
}

.mud-grid-spacing-xs-3 {
    margin: 0px !important;
    margin-left: -12px !important;
}

.mud-table-toolbar {
    flex-wrap: wrap;
    margin-bottom: 20px !important;
}

::-webkit-scrollbar {
    width: 2px !important;
    height: 6px !important;
}

.ARSM-nav-child {
    padding-left: 10px !important;
}

/* Report layout: fill remaining viewport height */
.report-paper {
    height: calc(100vh - 140px);
}

/* tweak 140px as needed */
.report-frame {
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.report-iframe {
    width: 100%;
    height: 100%;
    border: 1px solid #ccc;
}

/* Loading/click feedback for buttons and links */
.mud-button:active,
.mud-nav-link:active,
.dashboard-card:active .mud-button {
    cursor: wait !important;
    opacity: 0.7;
    transform: scale(0.98);
}

/* Global loading state class - can be applied via JS */
body.loading * {
    cursor: wait !important;
}

/* Pointer cursor for clickable cards */
.dashboard-card {
    cursor: pointer;
}

.dashboard-card .mud-button {
    cursor: pointer;
}

/* Click ripple effect enhancement */
.mud-button::after {
    transition: opacity 0.2s ease-out;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(15px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.page-transition {
    animation: fadeIn 0.5s ease-out;
}