/* Smooth custom scrollbars */
::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
::-webkit-scrollbar-track {
    background: #090d16;
}
::-webkit-scrollbar-thumb {
    background: #1e293b;
    border-radius: 9999px;
}
::-webkit-scrollbar-thumb:hover {
    background: #334155;
}

:root {
    --appbar-safe-top: max(env(safe-area-inset-top, 0px), 12px);
    --appbar-base-height: 64px;
    --mud-appbar-height: calc(var(--appbar-base-height) + var(--appbar-safe-top));
}

.mud-appbar {
    padding-top: var(--appbar-safe-top) !important;
    min-height: var(--mud-appbar-height) !important;
    height: auto !important;
}

.mud-drawer {
    right: 0;
    left: auto !important;
}

.mud-drawer.mud-drawer-clipped-always {
    top: var(--mud-appbar-height) !important;
    height: calc(100% - var(--mud-appbar-height)) !important;
}

/* Fix for MudBlazor PR #10217 / Issue #10083:
   Ensure mud-main-content padding-top ALWAYS provides a comfortable, visible gap
   between the fixed AppBar and page headers on all screen sizes. */
.mud-main-content {
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-top: calc(var(--mud-appbar-height) + 28px) !important;
}

@media (max-width: 960px) {
    .mud-main-content {
        padding-top: calc(var(--mud-appbar-height) + 24px) !important;
    }
}

@media (max-width: 600px) {
    .mud-main-content {
        padding-top: calc(var(--mud-appbar-height) + 20px) !important;
    }
}

.mud-drawer--open.mud-drawer--mini {
    width: 260px !important;
}

.mud-drawer--closed.mud-drawer--mini {
    width: 80px !important;
}

@media (max-width: 768px) {
    .mud-drawer {
        position: fixed;
        width: 260px;
        z-index: 1000;
    }
    
    .mud-drawer--open {
        transform: translateX(0) !important;
    }
    
    .mud-drawer--closed {
        transform: translateX(100%) !important;
    }
}

/* Fix MudBlazor input text visibility against Tailwind preflight overrides */
.mud-input-input {
    color: var(--mud-palette-text-primary) !important;
}

.mud-input-label {
    color: var(--mud-palette-text-secondary) !important;
}

.mud-input-helper-text {
    color: var(--mud-palette-text-secondary) !important;
}

.mud-select-input {
    color: var(--mud-palette-text-primary) !important;
}

textarea.mud-input-input {
    color: var(--mud-palette-text-primary) !important;
}

.mud-rtl .mud-input.mud-ltr {
    direction: rtl !important;
}

/* Glass & Modal Styling */
.modal-dialog-surface {
    background: rgba(17, 24, 39, 0.95) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.5), 0 8px 10px -6px rgba(0, 0, 0, 0.5) !important;
}

/* MudTable dark header and row styling */
.mud-table-head .mud-table-cell {
    color: #94a3b8 !important;
    font-weight: 600 !important;
    border-bottom: 1px solid #1f293d !important;
}

.mud-table-body .mud-table-cell {
    border-bottom: 1px solid #1f293d !important;
    color: #f1f5f9 !important;
}

/* MudTabs clean styling */
.mud-tab {
    color: #94a3b8 !important;
}
.mud-tab.mud-tab-active {
    color: #60a5fa !important;
    font-weight: 700 !important;
}