/* Partner Portal Styles */

html, body {
    font-family: 'Roboto', sans-serif;
}

.login-container {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #1976D2 0%, #1565C0 100%);
}

#blazor-error-ui {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI5MC4xOCA3NS44MzkyQzI5MS44NzEgNzcuNTMwMSAyOTEuODcxIDgwLjMxMzcgMjkwLjE4IDgyLjAwNDdMMjY2LjYwNiA5NS4xMzQxQzI2NS44MTMgOTUuOTE2IDI2NC43MTcgOTYuNDk5NyAyNjMuNTA2IDk2LjQ5OTdIMjM1LjMyMkMyMzMuMjU2IDk2LjQ5OTcgMjMxLjU4MSA5NC44MjQ3IDIzMS41ODEgOTIuNzU5MlY1NC4yNzA0QzIzMS41ODEgNTIuMjA1IDIzMy4yNTYgNTAuNTMgMjM1LjMyMiA1MC41M0gyNjMuNTA2Wk0yNjMuNTA2IDUxLjUyNzlIMjM1LjMyMkMyMzMuNzk5IDUxLjUyNzkgMjMyLjU3OCA1Mi43NDkgMjMyLjU3OCA1NC4yNzA0Vjkyuning1MzgyMzIuNTc4IDk0Ljk3MjEgMjMzLjc5OSA5NS40OTk3IDIzNS4zMjIgOTUuNDk5N0gyNjMuNTA2QzI2NC4yOTQgOTUuNDk5NyAyNjUuMDQzIDk1LjEwMTMgMjY1LjU3MyA5NC40NzEzTDI4OS4xNDggODEuMzM2MkMyOTAuNDUyIDgwLjAzMjUgMjkwLjQ1MiA3Ny44MTE0IDI4OS4xNDggNzYuNTA3N0wyNjUuNTczIDYzLjM3MDdDMjY1LjA0MyA2Mi43NDA2IDI2NC4yOTQgNjIuMzM5MyAyNjMuNTA2IDYyLjMzOTNIMjM1LjMyMkMyMzMuNzk5IDYyLjMzOTMgMjMyLjU3OCA2My41NjA0IDIzMi41NzggNjUuMDgxN1Y4NS44NjM5QzIzMi41NzggODcuMzg1MyAyMzMuNzk5IDg4LjYwNjQgMjM1LjMyMiA4OC42MDY0SDI2My41MDZDMjY0LjI5NCA4OC42MDY0IDI2NS4wNDMgODguMjA1MSAyNjUuNTczIDg3LjU3NTFMMjg5LjE0OCA3NC40MzhDMjkwLjQ1MiA3My4xMzQ0IDI5MC40NTIgNzAuOTEzMyAyODkuMTQ4IDY5LjYwOTZMMjY1LjU3MyA1Ni40NzI1QzI2NS4wNDMgNTUuODQyNSAyNjQuMjk0IDU1LjQ0MTEgMjYzLjUwNiA1NS40NDExSDIzNS4zMjJDMjMzLjc5OSA1NS40NDExIDIzMi41NzggNTYuNjYyMiAyMzIuNTc4IDU4LjE4MzZWNjcuNTc2OUMyMzIuNTc4IDY5LjA5ODMgMjMzLjc5OSA3MC4zMTk0IDIzNS4zMjIgNzAuMzE5NEgyNjMuNTA2QzI2NC4yOTQgNzAuMzE5NCAyNjUuMDQzIDY5LjkxODEgMjY1LjU3MyA2OS4yODhMMjg5LjE0OCA1Ni4xNTFDMjkwLjQ1MiA1NC44NDczIDI5MC40NTIgNTIuNjI2MyAyODkuMTQ4IDUxLjMyMjZMMjY1LjU3MyAzOC4xODU1QzI2NS4wNDMgMzcuNTU1NSAyNjQuMjk0IDM3LjE1NDEgMjYzLjUwNiAzNy4xNTQxSDIzNS4zMjJDMjMzLjc5OSAzNy4xNTQxIDIzMi41NzggMzguMzc1MiAyMzIuNTc4IDM5Ljg5NjZWNDkuMjkwMUMyMzIuNTc4IDUwLjgxMTQgMjMzLjc5OSA1Mi4wMzI1IDIzNS4zMjIgNTIuMDMyNUgyNjMuNTA2WiIgZmlsbD0iI0ZGRkZGRiIgZmlsbC1ydWxlPSJldmVub2RkIi8+PC9nPjwvc3ZnPg==) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

.blazor-error-boundary::after {
    content: "An error has occurred."
}

/* Partner-specific styles */
.partner-logo {
    max-height: 40px;
    margin-right: 1rem;
}

.stat-card {
    transition: transform 0.2s;
}

.stat-card:hover {
    transform: translateY(-2px);
}

/* Mobile Responsive Overrides (POR-090) */
@media (max-width: 600px) {
    /* Ensure adequate touch targets (44px minimum per WCAG) */
    .mud-icon-button {
        min-width: 44px;
        min-height: 44px;
    }

    /* Make action buttons full-width on mobile */
    .mud-button:not(.mud-icon-button) {
        min-height: 44px;
    }

    /* Improve table readability on mobile */
    .mud-table-cell {
        padding: 8px 4px !important;
        font-size: 0.875rem;
    }

    /* Stack quick action buttons vertically */
    .mud-stack[style*="flex-direction: row"] {
        flex-wrap: wrap;
    }

    /* Full-width cards on small screens */
    .mud-card {
        margin-bottom: 0.5rem;
    }

    /* Ensure data grids are scrollable */
    .mud-table-container {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    /* Adjust drawer width on mobile */
    .mud-drawer {
        width: 280px !important;
    }

    /* Improve form inputs on mobile */
    .mud-input-control {
        margin-bottom: 0.75rem;
    }

    /* Make alerts stack content vertically */
    .mud-alert .mud-stack {
        flex-direction: column !important;
        gap: 0.5rem;
    }

    /* Ensure date pickers are usable */
    .mud-picker {
        max-width: 100%;
    }
}

/* Tablet adjustments */
@media (max-width: 960px) {
    /* Drawer overlays content on tablet */
    .mud-drawer--open-responsive {
        position: fixed !important;
    }

    /* Grid adjustments for tablets */
    .mud-grid-item {
        margin-bottom: 0.5rem;
    }
}

/* Improve touch scrolling for all data tables */
.mud-table-container {
    -webkit-overflow-scrolling: touch;
}

/* Ensure minimum touch target for all clickable elements */
.mud-nav-link {
    min-height: 44px;
    display: flex;
    align-items: center;
}
