html, body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

a, .mud-nav-link {
    text-decoration: none;
}

/* Logo has dark text baked into the PNG — a white badge keeps it legible in both light and dark app-bar mode */
.vendor-logo-badge {
    display: inline-flex;
    align-items: center;
    background: #fff;
    border-radius: 0.4rem;
    padding: 0.25rem 0.5rem;
}

    .vendor-logo-badge img {
        height: 24px;
        width: auto;
        display: block;
    }

/* Reconnection / unhandled-error banner (framework-required element id, styled ourselves since we don't ship Bootstrap) */
#blazor-error-ui {
    background: #1E293B;
    color: #F1F5F9;
    bottom: 0;
    left: 0;
    width: 100%;
    box-shadow: 0 -2px 12px rgba(0, 0, 0, .25);
    display: none;
    padding: .85rem 3.5rem .85rem 1.25rem;
    position: fixed;
    z-index: 2000;
    font-size: .9rem;
}

    #blazor-error-ui .reload {
        color: #818CF8;
        font-weight: 600;
        margin-left: .5rem;
    }

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 1.1rem;
        top: .75rem;
        opacity: .7;
    }

        #blazor-error-ui .dismiss:hover {
            opacity: 1;
        }

.components-reconnect-modal {
    position: fixed;
    inset: 0;
    z-index: 3000;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(15, 23, 42, .55);
    backdrop-filter: blur(2px);
}

/* Login page */
.login-backdrop {
    min-height: 100vh;
    background: radial-gradient(circle at 20% 20%, #f5a623 0%, #35492f 45%, #1c2b1a 100%);
}

/* Status badge helpers used across products/orders/payouts */
.status-chip {
    font-weight: 600;
    letter-spacing: .01em;
}

/* Slim, unobtrusive scrollbars for a more polished feel */
::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

::-webkit-scrollbar-track {
    background: transparent;
}

::-webkit-scrollbar-thumb {
    background: rgba(100, 116, 139, .35);
    border-radius: 8px;
}

    ::-webkit-scrollbar-thumb:hover {
        background: rgba(100, 116, 139, .55);
    }

/* Small utility classes MudBlazor doesn't ship (this project intentionally has no Bootstrap/Tailwind) */
.border {
    border: 1px solid var(--mud-palette-lines-default);
}

.border-b {
    border-bottom: 1px solid var(--mud-palette-lines-default);
}

.border-r {
    border-right: 1px solid var(--mud-palette-lines-default);
}

.cursor-pointer tr,
.cursor-pointer {
    cursor: pointer;
}

.mud-table-row.cursor-pointer:hover {
    background: var(--mud-palette-table-hover);
}

/* Responsive table -> card fallback helper (used by our own ResponsiveTable-style pages) */
@media (max-width: 959.98px) {
    .hide-on-mobile {
        display: none !important;
    }
}

@media (min-width: 960px) {
    .hide-on-desktop {
        display: none !important;
    }
}
