﻿:root {
    font-size: 14px;
    --cell-padding: 10px 12px;
    --cell-padding-x: 10px;
    --cell-padding-y: 6px;
    
    --nav-padding-x: 1.1rem;
    --nav-padding-y: 0.75rem;
    --fancybox-bg: rgba(24, 24, 27, 0.85);
}



.mud-main-content {
    height: 100%;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
 
}

.mud-chip.mud-chip-size-medium {
    font-size: var(--mud-typography-default-size) !important;
}

.mud-chip.mud-chip-size-small {
    font-size: var(--mud-typography-body2-size) !important;
}

.mud-chip {
    font-size: var(--mud-typography-default-size);
}

.mud-tabs {
    background-color: var(--mud-palette-surface);
}

.mud-input-control-margin-dense .mud-input > input.mud-input-root,
.mud-input-control-margin-dense div.mud-input-slot.mud-input-root {
    font-size: var(--mud-typography-default-size);
}

.mud-input-control > .mud-input-control-input-container > .mud-input-label-inputcontrol {
    font-size: var(--mud-typography-default-size) !important;
}


.mud-simple-table table * tr > td, .mud-simple-table table * tr th {
    font-size: var(--mud-typography-default-size) !important;
}

.mud-expand-panel .mud-expand-panel-header {
    font-size: var(--mud-typography-default-size) !important;
}

.mud-button-year {
    font-size: var(--mud-typography-default-size) !important;
}

.mud-table-cell {
    font-size: var(--mud-typography-default-size) !important;
    padding: var(--cell-padding) !important;
    font-variant-numeric: tabular-nums;
}

.mud-table-dense .mud-table-cell {
    font-size: var(--mud-typography-body2-size) !important;
    padding: var(--cell-padding-y) var(--cell-padding-x) !important;
}

.mud-table.mud-data-grid .mud-table-root .mud-table-head .mud-table-cell {
    font-size: 0.875rem !important;
    font-weight: 500;
    color: var(--mud-palette-text-primary);
     
}

.mud-simple-table.mud-table-dense * tr td, .mud-simple-table.mud-table-dense * tr th {
    font-size: var(--mud-typography-body2-size) !important;
    padding: var(--cell-padding-y) var(--cell-padding-x) !important;
}

.mud-button-outlined-size-small {
    font-size: var(--mud-typography-body2-size);
}

.mud-nav-link {
    white-space: normal !important;
    padding: var(--nav-padding-y) var(--nav-padding-x) !important;
}

.mud-nav-group * .mud-navmenu .mud-nav-item .mud-nav-link {
    padding-left: calc(var(--nav-padding-x) * 2) !important;
    padding-inline-start: calc(var(--nav-padding-x) * 2) !important;
}

.mud-nav-group * .mud-navmenu > .mud-nav-group .mud-nav-link {
    padding-left: calc(var(--nav-padding-x) * 2) !important;
    padding-inline-start: calc(var(--nav-padding-x) * 2) !important;
}

.mud-nav-group * .mud-navmenu > .mud-nav-group * .mud-navmenu .mud-nav-item .mud-nav-link {
    padding-left: calc(var(--nav-padding-x) * 3) !important;
    padding-inline-start: calc(var(--nav-padding-x) * 3) !important;
}

.user-button {
    text-transform: none;
    background: rgba(var(--mud-palette-primary-rgb), 0.1)
}

.side-menu .mud-chip.mud-chip-size-small {
    font-size: 0.625rem;
    height: 1.125rem;
    line-height: 1.25;
}

 
.mud-table.mud-data-grid .mud-toolbar {
    height: auto !important;
    padding: 1rem
}


.mud-table.mud-data-grid .mud-toolbar-gutters {
    height: auto !important;
    padding: 1rem
}

.mud-table.mud-data-grid .mud-table-toolbar {
    height: auto !important;
    padding: 1rem;
    min-height: 48px;
}

.mud-table.mud-data-grid .mud-table-pagination-toolbar {
    height: auto !important;
    padding: 0rem !important;
}

.mud-table-cell .mud-icon-button.ma-n3 {
    margin-left: 0 !important;
}

.mud-input {
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit !important;
}

/* ==========================================================================
   MudBlazor Input Components Global Standardization (Optimized for 12px Base)
   ========================================================================== */

/* Prevent internal hidden elements from ever being displayed */
.mud-input [style*="display:none"],
.mud-input [style*="display: none"] {
    display: none !important;
}

/* Global Outlined Input Height (Normal: 40px, Dense: 34px) */
.mud-input-outlined:not(.mud-input-adorned-end-multiline):not(:has(textarea)) {
    height: 40px;
    min-height: 40px;
    box-sizing: border-box;
    align-items: center;
}

.mud-input-outlined.mud-input-margin-dense:not(.mud-input-adorned-end-multiline):not(:has(textarea)) {
    height: 34px;
    min-height: 34px;
}

/* Slot / Text Field Height & Padding (Normal: 38px / 0 12px, Dense: 32px / 0 10px) */
.mud-input-outlined:not(.mud-input-adorned-end-multiline):not(:has(textarea)) .mud-input-slot {
    height: 38px;
    line-height: 38px;
    padding: 0 12px;
    font-size: var(--mud-typography-default-size);
    box-sizing: border-box;
}

.mud-input-outlined.mud-input-margin-dense:not(.mud-input-adorned-end-multiline):not(:has(textarea)) .mud-input-slot {
    height: 32px;
    line-height: 32px;
    padding: 0 10px;
}

/* Textarea: preserve comfortable multiline padding and auto-expansion */
.mud-input-outlined textarea.mud-input-slot {
    height: auto !important;
    min-height: 72px;
    padding: 8px 12px !important;
    line-height: 1.5 !important;
    font-size: var(--mud-typography-default-size);
    box-sizing: border-box;
}

/* Floating Labels: vertically centered at rest for 40px (11px) and 34px (8px) */
.mud-input-label-outlined:not(.mud-shrink):not(.mud-input-label-margin-dense):not(.mud-input-label-input-adorned-start) {
    transform: translate(12px, 11px) scale(1);
}

.mud-input-label-outlined.mud-input-label-input-adorned-start:not(.mud-shrink):not(.mud-input-label-margin-dense) {
    transform: translate(34px, 11px) scale(1);
}

.mud-input-label-outlined.mud-shrink:not(.mud-input-label-margin-dense) {
    transform: translate(12px, -6px) scale(0.75);
}

.mud-input-label-outlined.mud-input-label-margin-dense:not(.mud-shrink):not(.mud-input-label-input-adorned-start) {
    transform: translate(10px, 8px) scale(1);
}

.mud-input-label-outlined.mud-input-label-input-adorned-start.mud-input-label-margin-dense:not(.mud-shrink) {
    transform: translate(32px, 8px) scale(1);
}

.mud-input-label-outlined.mud-input-label-margin-dense.mud-shrink {
    transform: translate(10px, -6px) scale(0.75);
}

/* Adornments: vertically centered with proportional padding */
.mud-input.mud-input-outlined.mud-input-adorned-start {
    padding-left: 0;
    padding-inline-start: 0;
}

.mud-input.mud-input-outlined.mud-input-adorned-end {
    padding-right: 0;
    padding-inline-end: 0;
}

.mud-input-outlined .mud-input-adornment {
    margin-top: 0;
    margin-bottom: 0;
    align-self: center;
}

.mud-input-outlined .mud-input-adornment-start {
    margin-inline-start: 10px;
    margin-inline-end: 2px;
}

.mud-input-outlined .mud-input-adornment-end {
    margin-inline-start: 2px;
    margin-inline-end: 10px;
}

.mud-input-outlined.mud-input-margin-dense .mud-input-adornment-start {
    margin-inline-start: 8px;
    margin-inline-end: 2px;
}

.mud-input-outlined.mud-input-margin-dense .mud-input-adornment-end {
    margin-inline-start: 2px;
    margin-inline-end: 8px;
}

/* When adornment exists, reduce slot padding so text is not pushed away */
.mud-input-outlined.mud-input-adorned-start .mud-input-slot,
.mud-input-outlined .mud-input-slot.mud-input-root-adorned-start {
    padding-left: 4px !important;
    padding-inline-start: 4px !important;
}

.mud-input-outlined.mud-input-adorned-end .mud-input-slot,
.mud-input-outlined .mud-input-slot.mud-input-root-adorned-end {
    padding-right: 4px !important;
    padding-inline-end: 4px !important;
}

.mud-input-outlined .mud-input-adornment .mud-icon-root {
    font-size: 1.125rem;
    width: 1.125rem;
    height: 1.125rem;
}

.mud-menu-item .mud-button-root:hover {
    background-color: inherit;
}

.mud-typography-subtitle2 {
    color: var(--mud-palette-text-secondary);
}
.fancybox__container {
    z-index: 9999;
}
.fancybox__backdrop {
    background-color: color-mix(in srgb, var(--mud-palette-overlay-dark) 70%, transparent) !important;
    backdrop-filter: blur(10px) saturate(120%);
    -webkit-backdrop-filter: blur(10px) saturate(120%);
}

.page-card {
    overflow: hidden;
    border: 1px solid var(--mud-palette-lines-default);
    border-radius: 12px;
    background: var(--mud-palette-surface);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
}

.page-card__header {
    padding: 1.25rem 1.5rem 1rem;
    border-bottom: 1px solid var(--mud-palette-lines-default);
}

.page-card__heading {
    min-width: 0;
}

.page-card__breadcrumb {
    margin-bottom: 0.6rem;
}

.page-card__breadcrumb .mud-breadcrumbs {
    padding: 0;
    line-height: 1.25;
}

.page-card__breadcrumb .mud-breadcrumb-item > a {
    color: var(--mud-palette-text-secondary);
    font-size: 0.75rem;
    opacity: 0.75;
}

.page-card__breadcrumb .mud-breadcrumb-separator {
    align-items: center;
    padding: 0;
    margin: 0 0.25rem;
}

.page-card__breadcrumb .mud-breadcrumb-separator .mud-icon-root {
    width: 0.875rem;
    height: 0.875rem;
    color: var(--mud-palette-action-disabled);
}

.page-card__breadcrumb .mud-breadcrumb-item:last-child > a {
    color: var(--mud-palette-text-primary);
    font-weight: 600;
    opacity: 1;
}

.page-card__filters {
    flex: 1 1 30rem;
    max-width: 38rem;
}

.page-card__filter-region {
    padding: 0.75rem 1.5rem;
    border-bottom: 1px solid var(--mud-palette-lines-default);
    background: #F7F8FA;
}

/* Page Card Filter Region Component Standardization (Unified 40px Height & Automatic Flex Sizing) */
.page-card__filter-region .mud-input-control {
    margin: 0;
}

.page-card__filter-region .mud-input-control.mud-select,
.page-card__view-select,
.page-card__filter {
    flex: 0 0 auto;
    min-width: 10rem;
}

.page-card__filter-region .mud-input-control:not(.mud-select),
.page-card__search {
    flex: 1 1 18rem;
    min-width: 12rem;
}

.page-card__filter-region .mud-input-outlined {
    background-color: var(--mud-palette-surface, #ffffff);
}

.page-card__filter-region .mud-input-label-outlined {
    display: none !important;
}

.page-card__filter-region .mud-input-outlined-border legend {
    display: none !important;
}

.page-card__footer,
.page-card__foot {
    padding: 0.875rem 1.5rem;
    border-top: 1px solid var(--mud-palette-lines-default);
    background: #F7F8FA;
}

@media (max-width: 959.98px) {
    .page-card__filters {
        flex-basis: auto;
        width: 100%;
    }
}

@media (max-width: 760px) {
    .page-card__header {
        padding-inline: 1rem;
    }

    .page-card__filter-region .mud-input-control,
    .page-card__filter-region .mud-input-control:not(.mud-select),
    .page-card__view-select,
    .page-card__filter,
    .page-card__search {
        flex-basis: auto;
        width: 100%;
    }

    .page-card__filter-region,
    .page-card__footer,
    .page-card__foot {
        padding-inline: 1rem;
    }
}

