/* _content/Blazor.M3/Components/M3Badge.razor.rz.scp.css */
.m3-badge-wrapper[b-ej65aerytn] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.m3-badge[b-ej65aerytn] {
    position: absolute;
    top: 0;
    right: 0;
    background-color: var(--m3-sys-color-error);
    color: var(--m3-sys-color-on-error);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    z-index: 1; /* Ensure badge is above child content */
}

/* Small badge (dot) */
.m3-badge--small[b-ej65aerytn] {
    width: 6px;
    height: 6px;
    border-radius: 3px;
    /* Adjust these based on the icon size, specs recommend Top-trailing edge */
    transform: translate(50%, -50%); 
}

/* Large badge (with number/text) */
.m3-badge--large[b-ej65aerytn] {
    min-width: 16px;
    height: 16px;
    border-radius: 8px;
    padding: 0 4px; /* 4dp padding on left and right */
    
    font-family: var(--m3-sys-typescale-font-family);
    font-size: 11px; /* Approximation of Label Small / Badge text */
    font-weight: 500;
    line-height: 16px;
    letter-spacing: 0.5px;
    
    transform: translate(50%, -50%); /* Center the badge on the corner */
}

.m3-badge__content[b-ej65aerytn] {
    /* Keep text constrained inside the badge */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    /* Specs say max 4 characters including + */
    max-width: 34px; 
}
/* _content/Blazor.M3/Components/M3Breadcrumb.razor.rz.scp.css */
.m3-breadcrumb[b-9gkh47josc] {
    display: flex;
    align-items: center;
    font-family: var(--m3-sys-typescale-body-medium-font-family-name);
    font-weight: var(--m3-sys-typescale-body-medium-font-weight);
    font-size: var(--m3-sys-typescale-body-medium-font-size);
    letter-spacing: var(--m3-sys-typescale-body-medium-tracking);
    line-height: var(--m3-sys-typescale-body-medium-height);
    color: var(--m3-sys-color-on-surface-variant);
    /* By default MD3 doesn't have a specific breadcrumb spec, 
       but keeping it close to label or body text is appropriate */
}

.m3-breadcrumb__list[b-9gkh47josc] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 0;
    margin: 0;
    list-style: none;
    gap: 4px;
    /* Space between crumb and separator */
}
/* _content/Blazor.M3/Components/M3BreadcrumbItem.razor.rz.scp.css */
.m3-breadcrumb-item[b-y7bjgzsc3v] {
    display: flex;
    align-items: center;
    gap: 4px;
}

/* Base styles for the inner elements */
.m3-breadcrumb-item__link[b-y7bjgzsc3v],
.m3-breadcrumb-item__button[b-y7bjgzsc3v],
.m3-breadcrumb-item__text[b-y7bjgzsc3v] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    /* Space between leading icon and text */
    color: var(--m3-sys-color-on-surface-variant);
    text-decoration: none;
    border-radius: 4px;
    /* Small radius for focus ring / hover */
    padding: 2px 4px;
    /* Slight padding to give focus ring some breathing room */
    margin: -2px -4px;
    /* Offset the padding to keep visual alignment tight */
    transition: background-color 0.2s, color 0.2s;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    border: none;
    background: transparent;
    cursor: default;
}

/* Interactive elements */
.m3-breadcrumb-item__link[b-y7bjgzsc3v],
.m3-breadcrumb-item__button[b-y7bjgzsc3v] {
    cursor: pointer;
}

.m3-breadcrumb-item__link:hover[b-y7bjgzsc3v],
.m3-breadcrumb-item__button:hover[b-y7bjgzsc3v] {
    color: var(--m3-sys-color-on-surface);
    background-color: var(--m3-sys-color-surface-container-high, rgba(0, 0, 0, 0.08));
}

.m3-breadcrumb-item__link:focus-visible[b-y7bjgzsc3v],
.m3-breadcrumb-item__button:focus-visible[b-y7bjgzsc3v] {
    outline: 2px solid var(--m3-sys-color-primary);
    outline-offset: 2px;
}

/* Active Page State */
/* .m3-breadcrumb-item--active base class omitted as it currently needs no extra styles */

.m3-breadcrumb-item--active .m3-breadcrumb-item__text[b-y7bjgzsc3v] {
    color: var(--m3-sys-color-on-surface);
    font-weight: 500;
    /* Medium weight for active */
}

.m3-breadcrumb-item__icon[b-y7bjgzsc3v] {
    font-size: 18px;
    /* Slightly smaller than body text usually */
    line-height: 1;
}

.m3-breadcrumb-item__separator[b-y7bjgzsc3v] {
    font-size: 16px;
    color: var(--m3-sys-color-on-surface-variant);
    margin-left: 4px;
    opacity: 0.6;
}
/* _content/Blazor.M3/Components/M3Button.razor.rz.scp.css */
.m3-button[b-spxt2q7jef] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-width: 64px;
    border: none;
    outline: none;
    line-height: inherit;
    user-select: none;
    appearance: none;
    -webkit-appearance: none;
    vertical-align: middle;
    border-radius: var(--m3-sys-shape-corner-full);
    /* Fully rounded */
    height: var(--m3-button-height, 40px);
    padding: 0 var(--m3-button-padding-horizontal, 24px);
    font: var(--m3-sys-typescale-label-large-font);
    cursor: pointer;
    transition: background-color 200ms cubic-bezier(0.2, 0, 0, 1), 
                box-shadow 200ms cubic-bezier(0.2, 0, 0, 1), 
                color 200ms cubic-bezier(0.2, 0, 0, 1),
                border-radius 200ms cubic-bezier(0.2, 0, 0, 1);
    position: relative;
    text-decoration: none;
    color: inherit;

    --m3-button-height: 40px;
    --m3-button-padding-horizontal: 24px;
}

/* --- Rounding Variations (MD3 Spec) --- */
.m3-button--rounding-none[b-spxt2q7jef] { border-radius: var(--m3-sys-shape-corner-none) !important; }
.m3-button--rounding-extrasmall[b-spxt2q7jef] { border-radius: var(--m3-sys-shape-corner-extra-small) !important; }
.m3-button--rounding-small[b-spxt2q7jef] { border-radius: var(--m3-sys-shape-corner-small) !important; }
.m3-button--rounding-medium[b-spxt2q7jef] { border-radius: var(--m3-sys-shape-corner-medium) !important; }
.m3-button--rounding-large[b-spxt2q7jef] { border-radius: var(--m3-sys-shape-corner-large) !important; }
.m3-button--rounding-extralarge[b-spxt2q7jef] { border-radius: var(--m3-sys-shape-corner-extra-large) !important; }
.m3-button--rounding-full[b-spxt2q7jef] { border-radius: var(--m3-sys-shape-corner-full) !important; } 


.m3-size-small.m3-button[b-spxt2q7jef] {
    --m3-button-height: 32px;
    --m3-button-padding-horizontal: 16px;
    font-size: var(--m3-sys-typescale-label-medium-size) !important;
}

.m3-button[b-spxt2q7jef]::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0;
    border-radius: inherit;
    transition: opacity 200ms cubic-bezier(0.2, 0, 0, 1);
    pointer-events: none;
}

/* Icon adjustments */
.m3-icon[b-spxt2q7jef] {
    margin-right: 8px;
    margin-left: -8px;
    font-size: 18px;
    line-height: 1;
}

.m3-label[b-spxt2q7jef] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.m3-button__trailing-icon[b-spxt2q7jef] {
    margin-left: 8px;
    margin-right: -8px;
    display: inline-flex;
    align-items: center;
    line-height: 1;
}


/* --- Elevated Button --- */
.m3-button-elevated[b-spxt2q7jef] {
    background-color: var(--m3-sys-color-surface-container-low, var(--m3-sys-color-surface));
    color: var(--m3-sys-color-primary);
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 1px 3px 1px rgba(0, 0, 0, 0.15);
}

.m3-button-elevated:hover[b-spxt2q7jef] {
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 2px 6px 2px rgba(0, 0, 0, 0.15);
}

.m3-button-elevated[b-spxt2q7jef]::before {
    background-color: var(--m3-sys-color-primary);
}

.m3-button-elevated:hover[b-spxt2q7jef]::before {
    opacity: 0.08;
}

.m3-button-elevated:focus-visible[b-spxt2q7jef]::before {
    opacity: 0.12;
}

.m3-button-elevated:active[b-spxt2q7jef]::before {
    opacity: 0.12;
}


/* --- Filled Button --- */
.m3-button-filled[b-spxt2q7jef] {
    background-color: var(--m3-sys-color-primary);
    color: var(--m3-sys-color-on-primary);
}

.m3-button-filled:hover[b-spxt2q7jef] {
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 1px 3px 1px rgba(0, 0, 0, 0.15);
}

.m3-button-filled[b-spxt2q7jef]::before {
    background-color: var(--m3-sys-color-on-primary);
}

.m3-button-filled:hover[b-spxt2q7jef]::before {
    opacity: 0.08;
}

.m3-button-filled:focus-visible[b-spxt2q7jef]::before {
    opacity: 0.12;
}

.m3-button-filled:active[b-spxt2q7jef]::before {
    opacity: 0.12;
}


/* --- Filled Tonal Button --- */
.m3-button-filledtonal[b-spxt2q7jef] {
    background-color: var(--m3-sys-color-secondary-container);
    color: var(--m3-sys-color-on-secondary-container);
}

.m3-button-filledtonal:hover[b-spxt2q7jef] {
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 1px 3px 1px rgba(0, 0, 0, 0.15);
}

.m3-button-filledtonal[b-spxt2q7jef]::before {
    background-color: var(--m3-sys-color-on-secondary-container);
}

.m3-button-filledtonal:hover[b-spxt2q7jef]::before {
    opacity: 0.08;
}

.m3-button-filledtonal:focus-visible[b-spxt2q7jef]::before {
    opacity: 0.12;
}

.m3-button-filledtonal:active[b-spxt2q7jef]::before {
    opacity: 0.12;
}


/* --- Outlined Button --- */
.m3-button-outlined[b-spxt2q7jef] {
    background-color: transparent;
    color: var(--m3-sys-color-primary);
    border: 1px solid var(--m3-sys-color-outline);
}

.m3-button-outlined:focus-visible[b-spxt2q7jef] {
    border-color: var(--m3-sys-color-primary);
}

.m3-button-outlined[b-spxt2q7jef]::before {
    background-color: var(--m3-sys-color-primary);
}

.m3-button-outlined:hover[b-spxt2q7jef]::before {
    opacity: 0.08;
}

.m3-button-outlined:focus-visible[b-spxt2q7jef]::before {
    opacity: 0.12;
}

.m3-button-outlined:active[b-spxt2q7jef]::before {
    opacity: 0.12;
}


/* --- Text Button --- */
.m3-button-text[b-spxt2q7jef] {
    background-color: transparent;
    color: var(--m3-sys-color-on-surface-variant);
    padding: 0 calc(var(--m3-button-padding-horizontal) / 2);
    /* Less padding for text buttons typically */
}

.m3-button-text[b-spxt2q7jef]::before {
    background-color: var(--m3-sys-color-on-surface-variant);
}

.m3-button-text.m3-button-primary[b-spxt2q7jef] {
    color: var(--m3-sys-color-primary);
}

.m3-button-text.m3-button-primary[b-spxt2q7jef]::before {
    background-color: var(--m3-sys-color-primary);
}

.m3-button-text:hover[b-spxt2q7jef]::before {
    opacity: 0.08;
}

.m3-button-text:focus-visible[b-spxt2q7jef]::before {
    opacity: 0.12;
}

.m3-button-text:active[b-spxt2q7jef]::before {
    opacity: 0.12;
}

.m3-button-text .m3-icon[b-spxt2q7jef] {
    margin-right: 8px;
    margin-left: 0px;
}

/* --- Disabled State --- */
.m3-button-disabled[b-spxt2q7jef] {
    background-color: rgba(28, 27, 31, 0.12) !important;
    color: rgba(28, 27, 31, 0.38) !important;
    cursor: default !important;
    box-shadow: none !important;
    border-color: transparent !important;
}

.m3-button-disabled.m3-button-outlined[b-spxt2q7jef],
.m3-button-disabled.m3-button-text[b-spxt2q7jef] {
    background-color: transparent !important;
}

.m3-button-disabled.m3-button-outlined[b-spxt2q7jef] {
    border-color: rgba(28, 27, 31, 0.12) !important;
}

.m3-button-disabled[b-spxt2q7jef]::before {
    display: none !important;
}
/* _content/Blazor.M3/Components/M3ButtonGroup.razor.rz.scp.css */
.m3-button-group[b-c8q021f2q6] {
    display: inline-flex;
    align-items: stretch;
    justify-content: flex-start;
    gap: var(--m3-button-group-gap, 8px);
}

.m3-button-group--start[b-c8q021f2q6] { justify-content: flex-start; }
.m3-button-group--center[b-c8q021f2q6] { justify-content: center; }
.m3-button-group--end[b-c8q021f2q6] { justify-content: flex-end; }

.m3-button-group--vertical[b-c8q021f2q6] {
    flex-direction: column;
}

/* Enforce uniform height on all buttons within the group */
.m3-button-group[b-c8q021f2q6]  .m3-button,
.m3-button-group[b-c8q021f2q6]  .m3-icon-button {
    height: 40px; /* Standard MD3 button height */
}

/* ============================================================
   VARIANT INHERITANCE
   ============================================================ */
.m3-button-group--variant-filled[b-c8q021f2q6]  .m3-button {
    background-color: var(--m3-sys-color-primary);
    color: var(--m3-sys-color-on-primary);
    border: none;
}

.m3-button-group--variant-filledtonal[b-c8q021f2q6]  .m3-button {
    background-color: var(--m3-sys-color-secondary-container);
    color: var(--m3-sys-color-on-secondary-container);
    border: none;
}

.m3-button-group--variant-outlined[b-c8q021f2q6]  .m3-button {
    background-color: transparent;
    color: var(--m3-sys-color-primary);
    border: 1px solid var(--m3-sys-color-outline);
}

.m3-button-group--variant-elevated[b-c8q021f2q6]  .m3-button {
    background-color: var(--m3-sys-color-surface-container-low);
    color: var(--m3-sys-color-primary);
    box-shadow: var(--m3-sys-elevation-1);
    border: none;
}

/* ============================================================
   LOOK: RECTANGLES (Connected/Split Style)
   ============================================================ */
/* Base state: Soft-rectangular corners for all buttons in group */
.m3-button-group--look-rectangles[b-c8q021f2q6] {
    gap: 2px !important; /* Standard 2dp gap for connected groups */
}

.m3-button-group--look-rectangles[b-c8q021f2q6]  .m3-button {
    border-radius: 6px !important; /* Force rectangle base */
}

/* Outer Rounding for unselected rectangles */
.m3-button-group--look-rectangles[b-c8q021f2q6]  .m3-button:first-child:not(.active) {
    border-top-left-radius: 20px !important;
    border-bottom-left-radius: 20px !important;
}

.m3-button-group--look-rectangles[b-c8q021f2q6]  .m3-button:last-child:not(.active) {
    border-top-right-radius: 20px !important;
    border-bottom-right-radius: 20px !important;
}

/* ACTIVE in Rectangles mode: MORPH TO FULL PILL */
.m3-button-group--look-rectangles[b-c8q021f2q6]  .m3-button.active {
    border-radius: 20px !important;
    z-index: 2;
    box-shadow: var(--m3-sys-elevation-1);
}

/* ============================================================
   LOOK: PILLS (Standard/Separated Style)
   ============================================================ */
/* Base state: Full Pills */
.m3-button-group--look-pills[b-c8q021f2q6]  .m3-button {
    border-radius: 20px !important;
}

/* ACTIVE in Pills mode: MORPH TO SOFT RECTANGLE */
.m3-button-group--look-pills[b-c8q021f2q6]  .m3-button.active {
    border-radius: 6px !important;
    z-index: 2;
    box-shadow: var(--m3-sys-elevation-1);
}
/* _content/Blazor.M3/Components/M3Card.razor.rz.scp.css */
/* Base Card Layout & Constraints */
.m3-card[b-3y32mbfltm] {
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    border-radius: var(--m3-sys-shape-corner-medium);
    padding: 16px;
    position: relative;
    /* Removed overflow: hidden to allow dropdowns and menus to show outside card bounds */
    color: var(--m3-sys-color-on-surface);
    /* Transition for subtle hover elevation changes later if desired */
    transition: box-shadow 0.2s cubic-bezier(0.2, 0, 0, 1), background-color 0.2s cubic-bezier(0.2, 0, 0, 1);
}

/* 1. Elevated Variant 
   Standard Elevation level 1 equivalent: low shadow 
*/
.m3-card--elevated[b-3y32mbfltm] {
    /* M3 defines surface container low, but surface is an acceptable fallback globally */
    background-color: var(--m3-sys-color-surface);
    box-shadow: 0px 1px 3px 1px rgba(var(--m3-sys-color-shadow-rgb, 0, 0, 0), 0.15),
        0px 1px 2px 0px rgba(var(--m3-sys-color-shadow-rgb, 0, 0, 0), 0.3);
    border: none;
}

/* 2. Filled Variant
   No shadow or outline, contrasting surface variant background
*/
.m3-card--filled[b-3y32mbfltm] {
    background-color: var(--m3-sys-color-surface-variant);
    color: var(--m3-sys-color-on-surface-variant);
    box-shadow: none;
    border: none;
}

/* 3. Outlined Variant
   No shadow, surface background, standard outline variant border
*/
.m3-card--outlined[b-3y32mbfltm] {
    background-color: var(--m3-sys-color-surface);
    border: 1px solid var(--m3-sys-color-outline-variant);
    box-shadow: none;
}

/* ========================================================================= */
/* INTERACTIVE CARD STATES (MD3 SPEC) */
/* ========================================================================= */

.m3-card--interactive[b-3y32mbfltm] {
    cursor: pointer;
    user-select: none;
    outline: none;
    -webkit-tap-highlight-color: transparent;
}

/* Reset button element user-agent styling when rendered as a button */
button.m3-card[b-3y32mbfltm] {
    text-align: inherit;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
    background: none;
    border: none;
    padding: 16px;
    width: 100%;
}

button.m3-card--outlined[b-3y32mbfltm] {
    border: 1px solid var(--m3-sys-color-outline-variant);
}

/* Reset anchor styling */
a.m3-card[b-3y32mbfltm] {
    text-decoration: none;
    color: inherit;
}

/* State Layer for Interactive Cards */
.m3-card__state-layer[b-3y32mbfltm] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: inherit;
    overflow: hidden;
    pointer-events: none;
    z-index: 1;
}

/* Hover State Layer: 8% opacity overlay */
.m3-card--interactive:hover .m3-card__state-layer[b-3y32mbfltm]::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: currentColor;
    opacity: 0.08;
    pointer-events: none;
}

/* Focus State Layer: 12% opacity overlay */
.m3-card--interactive:focus .m3-card__state-layer[b-3y32mbfltm]::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: currentColor;
    opacity: 0.12;
    pointer-events: none;
}

/* Focus-visible Outline ring */
.m3-card--interactive:focus-visible[b-3y32mbfltm] {
    outline: 2px solid var(--m3-sys-color-primary);
    outline-offset: 4px;
}

/* Ripple Element inside State Layer */
.m3-card__state-layer[b-3y32mbfltm]  .m3-ripple-effect {
    position: absolute;
    border-radius: 50%;
    background-color: currentColor;
    opacity: 0.12; /* Pressed State: 12% opacity */
    transform: scale(0);
    animation: m3-card-ripple-animation-b-3y32mbfltm 550ms cubic-bezier(0.2, 0, 0, 1) forwards;
    pointer-events: none;
}

@keyframes m3-card-ripple-animation-b-3y32mbfltm {
    to {
        transform: scale(1);
        opacity: 0;
    }
}
/* _content/Blazor.M3/Components/M3Checkbox.razor.rz.scp.css */
.m3-checkbox[b-e770lauisv] {
    display: inline-flex;
    position: relative;
    vertical-align: middle;
}

.m3-checkbox-wrapper[b-e770lauisv] {
    display: flex;
    align-items: center;
    cursor: pointer;
    position: relative;
    /* Touch target size for accessibility */
    min-height: 40px;
}

/* Hide the native input visually, but keep it accessible for screen readers and focus */
.m3-checkbox-native[b-e770lauisv] {
    position: absolute;
    width: 40px;
    height: 40px;
    margin: 0;
    opacity: 0;
    cursor: inherit;
    z-index: 1;
}

/* The visual representation of the checkbox outline/background */
.m3-checkbox-visual[b-e770lauisv] {
    width: 18px;
    height: 18px;
    border-radius: 2px;
    border: 2px solid var(--m3-sys-color-on-surface-variant);
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: background-color 0.1s linear, border-color 0.1s linear;
    position: relative;
    /* Optional margin if not padding label */
    margin-right: 8px;
    margin-left: 11px;
    /* To center it in the 40px touch target roughly */
}

/* The Checkmark or Dash SVG */
.m3-checkbox-icon[b-e770lauisv] {
    width: 14px;
    height: 14px;
    stroke: var(--m3-sys-color-on-primary);
    stroke-width: 2px;
    stroke-linecap: round;
    stroke-linejoin: round;
    fill: var(--m3-sys-color-on-primary);
    /* For indeterminate rect */
    opacity: 0;
    transform: scale(0.5);
    transition: opacity 0.1s linear, transform 0.1s cubic-bezier(0.14, 1, 0.34, 1);
}

/* Hover State (Resting Unselected) */
.m3-checkbox--unselected .m3-checkbox-wrapper:hover .m3-checkbox-visual[b-e770lauisv] {
    /* Using on-surface variant per spec */
    background-color: transparent;
    border-color: var(--m3-sys-color-on-surface);
}

/* Selected & Indeterminate States */
.m3-checkbox--selected .m3-checkbox-visual[b-e770lauisv] {
    background-color: var(--m3-sys-color-primary);
    border-color: var(--m3-sys-color-primary);
}

.m3-checkbox--selected .m3-checkbox-icon[b-e770lauisv] {
    opacity: 1;
    transform: scale(1);
}

/* Focus Indicator (Outline) */
.m3-checkbox-native:focus-visible~.m3-checkbox-visual[b-e770lauisv] {
    outline: 2px solid var(--m3-sys-color-primary);
    outline-offset: 4px;
}

.m3-checkbox-native:focus-visible~.m3-checkbox-visual[b-e770lauisv]::after {
    content: '';
    position: absolute;
    top: -11px;
    left: -11px;
    right: -11px;
    bottom: -11px;
    border-radius: 50%;
    background-color: var(--m3-sys-color-on-surface);
    opacity: 0.12;
    /* Focus opacity */
    pointer-events: none;
}

.m3-checkbox--selected .m3-checkbox-native:focus-visible~.m3-checkbox-visual[b-e770lauisv]::after {
    background-color: var(--m3-sys-color-primary);
}

/* Disabled State */
.m3-checkbox--disabled .m3-checkbox-wrapper[b-e770lauisv] {
    cursor: default;
}

.m3-checkbox--disabled.m3-checkbox--unselected .m3-checkbox-visual[b-e770lauisv] {
    border-color: var(--m3-sys-color-on-surface);
    opacity: 0.38;
}

.m3-checkbox--disabled.m3-checkbox--selected .m3-checkbox-visual[b-e770lauisv] {
    background-color: var(--m3-sys-color-on-surface);
    border-color: transparent;
    opacity: 0.38;
}

.m3-checkbox--disabled .m3-checkbox-icon[b-e770lauisv] {
    stroke: var(--m3-sys-color-surface);
    fill: var(--m3-sys-color-surface);
}

/* Label */
.m3-checkbox-label[b-e770lauisv] {
    color: var(--m3-sys-color-on-surface);
    font-size: 14px;
    padding-right: 16px;
    user-select: none;
}

.m3-checkbox--disabled .m3-checkbox-label[b-e770lauisv] {
    opacity: 0.38;
}
/* _content/Blazor.M3/Components/M3Chip.razor.rz.scp.css */
/* Base Chip Styles */
.m3-chip[b-rf5oxpe84x] {
    display: inline-flex;
    align-items: center;
    box-sizing: border-box;
    height: 32px;
    /* MD3 standard height */
    border-radius: 8px;
    /* MD3 standard border-radius */
    padding: 0 16px;
    font-family: inherit;
    font-size: 14px;
    /* label-large typography */
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0.1px;
    background: transparent;
    border: none;
    cursor: pointer;
    position: relative;
    vertical-align: middle;
    transition: background-color 0.1s linear, color 0.1s linear;
}

/* Base interactive overlay for hover/focus ripples */
.m3-chip__state-layer[b-rf5oxpe84x] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    background-color: transparent;
    transition: background-color 0.1s linear;
}

/* Specific Variant Layouts & Colors */

/* 1. Assist, Suggestion & Input (Default resting state) */
.m3-chip--assist[b-rf5oxpe84x],
.m3-chip--suggestion[b-rf5oxpe84x],
.m3-chip--input[b-rf5oxpe84x] {
    background-color: var(--m3-sys-color-surface);
    color: var(--m3-sys-color-on-surface);
    border: 1px solid var(--m3-sys-color-outline-variant);
}

.m3-chip--assist:hover .m3-chip__state-layer[b-rf5oxpe84x],
.m3-chip--suggestion:hover .m3-chip__state-layer[b-rf5oxpe84x],
.m3-chip--input:hover .m3-chip__state-layer[b-rf5oxpe84x] {
    background-color: var(--m3-sys-color-on-surface);
    opacity: 0.08;
    /* hover overlay opacity */
}

/* 2. Filter (Unselected vs Selected) */
.m3-chip--filter[b-rf5oxpe84x] {
    background-color: var(--m3-sys-color-surface);
    color: var(--m3-sys-color-on-surface-variant);
    border: 1px solid var(--m3-sys-color-outline-variant);
}

.m3-chip--filter:hover .m3-chip__state-layer[b-rf5oxpe84x] {
    background-color: var(--m3-sys-color-on-surface-variant);
    opacity: 0.08;
}

/* Filter Selected State */
.m3-chip--filter.m3-chip--selected[b-rf5oxpe84x] {
    background-color: var(--m3-sys-color-secondary-container);
    color: var(--m3-sys-color-on-secondary-container);
    border-color: transparent;
    /* Remove outline when selected */
}

.m3-chip--filter.m3-chip--selected:hover .m3-chip__state-layer[b-rf5oxpe84x] {
    background-color: var(--m3-sys-color-on-secondary-container);
    opacity: 0.08;
}

/* Child Layouts: Icons & Labels */

.m3-chip__label[b-rf5oxpe84x] {
    white-space: nowrap;
    z-index: 1;
    /* Keep above state layer */
}

.m3-chip__icon[b-rf5oxpe84x] {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 18px;
    height: 18px;
    z-index: 1;
    background: none !important;
    mask: none !important;
    -webkit-mask: none !important;
}

.m3-chip__icon--leading[b-rf5oxpe84x] {
    margin-left: -8px;
    /* Offset padding when icon is present */
    margin-right: 8px;
    color: var(--m3-sys-color-primary);
    /* Leading icons often use primary color */
}

.m3-chip--input .m3-chip__icon--leading[b-rf5oxpe84x] {
    border-radius: 50%;
    /* Often used for circular avatars */
    overflow: hidden;
}

.m3-chip__icon--trailing[b-rf5oxpe84x] {
    margin-right: -8px;
    margin-left: 8px;
    color: var(--m3-sys-color-on-surface-variant);
}

/* Hover over trailing icon (specifically remove icon) */
.m3-chip__icon--trailing:hover[b-rf5oxpe84x] {
    color: var(--m3-sys-color-on-surface);
    opacity: 0.8;
}

.m3-chip--filter.m3-chip--selected .m3-chip__icon--leading[b-rf5oxpe84x] {
    color: var(--m3-sys-color-on-secondary-container);
}

/* Disabled State */
.m3-chip--disabled[b-rf5oxpe84x] {
    cursor: default;
    background-color: var(--m3-sys-color-on-surface);
    color: var(--m3-sys-color-on-surface);
    border-color: var(--m3-sys-color-on-surface);
    /* For solid elements an opacity is usually applied. For border elements, we have to fake it.
       Best implementation is applying 0.12 opacity to bg, 0.38 to text/border. */
}

.m3-chip--assist.m3-chip--disabled[b-rf5oxpe84x],
.m3-chip--suggestion.m3-chip--disabled[b-rf5oxpe84x],
.m3-chip--input.m3-chip--disabled[b-rf5oxpe84x],
.m3-chip--filter.m3-chip--disabled:not(.m3-chip--selected)[b-rf5oxpe84x] {
    background-color: transparent;
    border: 1px solid rgba(var(--m3-sys-color-on-surface-rgb, 0, 0, 0), 0.12);
    /* Assuming token exists, if not fallback to native opacity */
    opacity: 0.38;
    /* Simplified universal disabled styling */
}

.m3-chip--filter.m3-chip--selected.m3-chip--disabled[b-rf5oxpe84x] {
    background-color: var(--m3-sys-color-on-surface);
    border: none;
    opacity: 0.38;
}

.m3-chip--disabled .m3-chip__state-layer[b-rf5oxpe84x] {
    display: none;
}

/* Elevated Chips Styles */
.m3-chip.m3-chip--elevated[b-rf5oxpe84x] {
    background-color: var(--m3-sys-color-surface-container-low);
    box-shadow: var(--m3-sys-elevation-1);
    border: none;
}

.m3-chip.m3-chip--elevated:hover[b-rf5oxpe84x] {
    box-shadow: var(--m3-sys-elevation-2);
}

.m3-chip.m3-chip--elevated:active[b-rf5oxpe84x] {
    box-shadow: var(--m3-sys-elevation-1);
}

.m3-chip.m3-chip--elevated.m3-chip--disabled[b-rf5oxpe84x] {
    box-shadow: none;
    background-color: rgba(var(--m3-sys-color-on-surface-rgb, 0, 0, 0), 0.12);
    border: none;
    opacity: 0.38;
}
/* _content/Blazor.M3/Components/M3CircularProgress.razor.rz.scp.css */
.m3-circular-progress[b-1en6445j9i] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    vertical-align: middle;
}

.m3-circular-progress__svg[b-1en6445j9i] {
    transform: rotate(-90deg); /* Start at top for determinate state */
    width: 100%;
    height: 100%;
}

.m3-circular-progress__track[b-1en6445j9i] {
    fill: none;
    stroke: transparent; /* Track is typically transparent in MD3 without a container */
}

.m3-circular-progress__active[b-1en6445j9i] {
    fill: none;
    stroke: var(--m3-sys-color-primary);
    stroke-linecap: round;
    transition: stroke-dashoffset 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Indeterminate Animation - rotate the container */
.m3-circular-progress.indeterminate[b-1en6445j9i] {
    animation: m3-circular-rotate-b-1en6445j9i 2s linear infinite;
}

/* Indeterminate Animation - expand/contract the arc */
.m3-circular-progress.indeterminate .m3-circular-progress__active[b-1en6445j9i] {
    animation: m3-circular-dash-b-1en6445j9i 1.5s ease-in-out infinite;
    stroke-dashoffset: 0;
}

@keyframes m3-circular-rotate-b-1en6445j9i {
    100% {
        transform: rotate(360deg);
    }
}

@keyframes m3-circular-dash-b-1en6445j9i {
    0% {
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0;
    }
    50% {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -35px;
    }
    100% {
        stroke-dasharray: 89, 200;
        stroke-dashoffset: -124px;
    }
}
/* _content/Blazor.M3/Components/M3Dialog.razor.rz.scp.css */
/* m3-dialog base styles */
.m3-dialog[b-yyqghj0cbm] {
    position: fixed;
    z-index: 5000;
    /* Default typography */
    font-family: Roboto, system-ui, sans-serif;
    color: var(--m3-sys-color-on-surface);
}

.m3-dialog:focus[b-yyqghj0cbm] {
    outline: none;
}

/* Scrim Background */
.m3-dialog-scrim[b-yyqghj0cbm] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--m3-sys-color-scrim, rgba(0, 0, 0, 0.32));
    z-index: 4999;
    /* Just below dialog */
    animation: fade-in-b-yyqghj0cbm 0.2s ease-out forwards;
}

@keyframes fade-in-b-yyqghj0cbm {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes slide-up-fade-b-yyqghj0cbm {
    from {
        opacity: 0;
        transform: translate(-50%, -40%);
    }

    to {
        opacity: 1;
        transform: translate(-50%, -50%);
    }
}

/* =========================================================================
   BASIC DIALOG
   ========================================================================= */
.m3-dialog--basic[b-yyqghj0cbm] {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

    /* MD3 standard modal sizing */
    min-width: 280px;
    max-width: 560px;
    width: calc(100% - 48px);

    background-color: var(--m3-sys-color-surface-container-high);
    border-radius: 28px;

    /* MD3 Dialog Elevation Level 3 */
    box-shadow: 0px 4px 8px 3px rgba(0, 0, 0, 0.15),
        0px 1px 3px rgba(0, 0, 0, 0.3);

    animation: slide-up-fade-b-yyqghj0cbm 0.2s cubic-bezier(0.2, 0, 0, 1) forwards;
}

/* Internal Layout (Basic) */
.m3-dialog__content-wrapper[b-yyqghj0cbm] {
    padding: 24px 24px 0 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    /* Generally center icons, left-align text */
}

.m3-dialog__icon[b-yyqghj0cbm] {
    font-size: 24px;
    color: var(--m3-sys-color-secondary);
    margin-bottom: 16px;
}

.m3-dialog__headline[b-yyqghj0cbm] {
    font-size: 24px;
    font-weight: 400;
    line-height: 32px;
    margin: 0 0 16px 0;
    align-self: flex-start;
}

.m3-dialog__content[b-yyqghj0cbm] {
    font-size: 14px;
    line-height: 20px;
    color: var(--m3-sys-color-on-surface-variant);
    align-self: flex-start;
    width: 100%;
    max-height: 65vh; /* Standard MD3 constraint for scrollable modal content */
    overflow-y: auto;
    padding-bottom: 24px; /* Ensure space before actions */
    scrollbar-width: thin;
}

.m3-dialog__content[b-yyqghj0cbm]::-webkit-scrollbar {
    width: 6px;
}

.m3-dialog__content[b-yyqghj0cbm]::-webkit-scrollbar-thumb {
    background: var(--m3-sys-color-outline-variant);
    border-radius: 10px;
}

.m3-dialog__actions[b-yyqghj0cbm] {
    padding: 24px;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}


/* =========================================================================
   FULL-SCREEN DIALOG
   ========================================================================= */
@keyframes slide-up-fs-b-yyqghj0cbm {
    from {
        transform: translateY(100%);
    }

    to {
        transform: translateY(0);
    }
}

.m3-dialog--full-screen[b-yyqghj0cbm] {
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: var(--m3-sys-color-surface);
    border-radius: 0;
    /* No radius on full screen */

    display: flex;
    flex-direction: column;

    animation: slide-up-fs-b-yyqghj0cbm 0.3s cubic-bezier(0.2, 0.0, 0, 1.0) forwards;
}

.m3-dialog__header-app-bar[b-yyqghj0cbm] {
    display: flex;
    align-items: center;
    height: 56px;
    /* Standard Top App Bar height */
    padding: 0 16px;
    /* Optional edge elevation */
    border-bottom: 1px solid var(--m3-sys-color-surface-variant);
}

.m3-dialog__close-btn[b-yyqghj0cbm] {
    background: transparent;
    border: none;
    color: var(--m3-sys-color-on-surface);
    cursor: pointer;
    padding: 8px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 16px;
    transition: background-color 0.2s;
}

.m3-dialog__close-btn:hover[b-yyqghj0cbm] {
    background-color: var(--m3-sys-color-surface-variant);
}

.m3-dialog__title[b-yyqghj0cbm] {
    flex: 1;
    /* Pushes actions to the right */
    font-size: 22px;
    font-weight: 400;
    line-height: 28px;
    color: var(--m3-sys-color-on-surface);
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.m3-dialog__app-bar-actions[b-yyqghj0cbm] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.m3-dialog__content--full-screen[b-yyqghj0cbm] {
    flex: 1;
    padding: 24px;
    overflow-y: auto;
    /* Let content scroll independently of header */
    color: var(--m3-sys-color-on-surface-variant);
}

/* =========================================================================
   DRAGGABLE SUPPORT
   ========================================================================= */
.m3-dialog__header-drag-handle[b-yyqghj0cbm] {
    width: 100%;
    cursor: move;
    display: flex;
    flex-direction: column;
    align-items: center;
    user-select: none;
}

.m3-dialog--draggable[b-yyqghj0cbm] {
    transition: none; /* Disable transitions when draggable so it follows mouse instantly */
}

.m3-dialog--dragging[b-yyqghj0cbm] {
    opacity: 0.9;
    box-shadow: 0px 8px 10px 1px rgba(0, 0, 0, 0.14), 0px 3px 14px 2px rgba(0, 0, 0, 0.12), 0px 5px 5px -3px rgba(0, 0, 0, 0.2);
    z-index: 6000; /* Bring to front while dragging */
}
/* _content/Blazor.M3/Components/M3Divider.razor.rz.scp.css */
/* Base Divider Style */
.m3-divider[b-lh174onh10] {
    box-sizing: border-box;
    padding: 0;
    border: none;
    background-color: var(--m3-sys-color-outline-variant);
    /* By default, dividers are decorative and shouldn't interrupt flow heavily */
    margin: 0;
}

/* Horizontal Dividers */
.m3-divider--horizontal[b-lh174onh10] {
    display: block;
    height: 1px;
    width: 100%;
}

/* Full-width (default horizontal):
   Span the entire width, no margins. 
   Optionally, the spec mentions a bottom margin of 8dp if necessary, 
   but 0 is safer for generic layouts. Developer can add `.mt-x` classes. 
*/

/* Inset */
.m3-divider--horizontal.m3-divider--inset[b-lh174onh10] {
    margin-left: 16px;
    width: calc(100% - 16px);
}

/* Middle Inset */
.m3-divider--horizontal.m3-divider--middle-inset[b-lh174onh10] {
    margin-left: 16px;
    margin-right: 16px;
    width: calc(100% - 32px);
}

/* Vertical Dividers */
.m3-divider--vertical[b-lh174onh10] {
    display: inline-block;
    width: 1px;
    min-height: 100%;
    /* Typically auto expands in a flex row */
    align-self: stretch;
    /* Optional: add some margins if not packed tight */
    margin-top: 8px;
    margin-bottom: 8px;
}
/* _content/Blazor.M3/Components/M3Fab.razor.rz.scp.css */
.m3-fab[b-srpfnhtzm2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    border: none;
    outline: none;
    line-height: inherit;
    user-select: none;
    appearance: none;
    -webkit-appearance: none;
    vertical-align: middle;
    cursor: pointer;
    font: var(--m3-sys-typescale-label-large-font);
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 1px 3px 1px rgba(0, 0, 0, 0.15);
    transition: background-color 200ms cubic-bezier(0.2, 0, 0, 1), box-shadow 200ms cubic-bezier(0.2, 0, 0, 1), border-radius 200ms, width 200ms, height 200ms, padding 200ms;
    position: relative;
}

.m3-fab:hover[b-srpfnhtzm2] {
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 2px 6px 2px rgba(0, 0, 0, 0.15);
}

.m3-fab[b-srpfnhtzm2]::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0;
    border-radius: inherit;
    transition: opacity 200ms cubic-bezier(0.2, 0, 0, 1);
    pointer-events: none;
}

.m3-fab:hover[b-srpfnhtzm2]::before {
    opacity: 0.08;
}

.m3-fab:focus-visible[b-srpfnhtzm2]::before {
    opacity: 0.12;
}

.m3-fab:active[b-srpfnhtzm2]::before {
    opacity: 0.12;
}


/* --- Sizes --- */
.m3-fab-normal[b-srpfnhtzm2] {
    width: 56px;
    height: 56px;
    border-radius: 16px;
}

.m3-fab-normal .m3-fab-icon[b-srpfnhtzm2] {
    font-size: 24px;
}

.m3-fab-small[b-srpfnhtzm2] {
    width: 40px;
    height: 40px;
    border-radius: 12px;
}

.m3-fab-small .m3-fab-icon[b-srpfnhtzm2] {
    font-size: 24px;
}

.m3-fab-large[b-srpfnhtzm2] {
    width: 96px;
    height: 96px;
    border-radius: 28px;
}

.m3-fab-large .m3-fab-icon[b-srpfnhtzm2] {
    font-size: 36px;
}

/* --- Extended --- */
.m3-fab.m3-fab-extended[b-srpfnhtzm2] {
    width: auto;
    min-width: 80px;
    padding: 0 16px;
}

/* Ensure standard size metrics aren't overridden */
.m3-fab.m3-fab-extended.m3-fab-normal[b-srpfnhtzm2] {
    height: 56px;
    border-radius: 16px;
}

.m3-fab.m3-fab-extended.m3-fab-small[b-srpfnhtzm2] {
    height: 40px;
    border-radius: 12px;
    padding: 0 12px;
    /* Slight padding reduction for small */
}

.m3-fab.m3-fab-extended.m3-fab-large[b-srpfnhtzm2] {
    height: 96px;
    border-radius: 28px;
    padding: 0 24px;
}

.m3-fab.m3-fab-extended .m3-fab-icon[b-srpfnhtzm2] {
    margin-right: 12px;
}

.m3-fab-label[b-srpfnhtzm2] {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    padding-left: 6px;
}

/* --- Types (Colors) --- */
.m3-fab-surface[b-srpfnhtzm2] {
    background-color: var(--m3-sys-color-surface-variant);
    color: var(--m3-sys-color-primary);
}

.m3-fab-surface[b-srpfnhtzm2]::before {
    background-color: var(--m3-sys-color-primary);
}

.m3-fab-primary[b-srpfnhtzm2] {
    background-color: var(--m3-sys-color-primary-container);
    color: var(--m3-sys-color-on-primary-container);
}

.m3-fab-primary[b-srpfnhtzm2]::before {
    background-color: var(--m3-sys-color-on-primary-container);
}

.m3-fab-secondary[b-srpfnhtzm2] {
    background-color: var(--m3-sys-color-secondary-container);
    color: var(--m3-sys-color-on-secondary-container);
}

.m3-fab-secondary[b-srpfnhtzm2]::before {
    background-color: var(--m3-sys-color-on-secondary-container);
}

.m3-fab-tertiary[b-srpfnhtzm2] {
    background-color: var(--m3-sys-color-tertiary-container);
    color: var(--m3-sys-color-on-tertiary-container);
}

.m3-fab-tertiary[b-srpfnhtzm2]::before {
    background-color: var(--m3-sys-color-on-tertiary-container);
}

/* --- Disabled State --- */
.m3-fab:disabled[b-srpfnhtzm2] {
    background-color: var(--m3-sys-color-surface-variant);
    color: var(--m3-sys-color-on-surface);
    opacity: 0.38;
    box-shadow: none;
    cursor: default;
}

.m3-fab:disabled[b-srpfnhtzm2]::before {
    display: none;
}
/* _content/Blazor.M3/Components/M3Icon.razor.rz.scp.css */
.m3-icon[b-8cyluss8cl] {
    width: 1em;
    height: 1em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    user-select: none;
    overflow: visible;
}
/* _content/Blazor.M3/Components/M3IconButton.razor.rz.scp.css */
.m3-icon-button[b-flmrdvt4j6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    border: none;
    outline: none;
    line-height: 0; /* Tight reset for centering */
    user-select: none;
    appearance: none;
    -webkit-appearance: none;
    vertical-align: middle;
    cursor: pointer;
    background-color: transparent;
    transition: background-color 200ms cubic-bezier(0.2, 0, 0, 1), box-shadow 200ms cubic-bezier(0.2, 0, 0, 1), color 200ms cubic-bezier(0.2, 0, 0, 1);
    position: relative;
    flex-shrink: 0;
    padding: 0 !important;
    margin: 0 !important;
}

/* --- Sizes --- */
.m3-icon-button--extrasmall[b-flmrdvt4j6] { width: 32px; height: 32px; }
.m3-icon-button--small[b-flmrdvt4j6]      { width: 40px; height: 40px; }
.m3-icon-button--medium[b-flmrdvt4j6]     { width: 56px; height: 56px; }
.m3-icon-button--large[b-flmrdvt4j6]      { width: 96px; height: 96px; }
.m3-icon-button--extralarge[b-flmrdvt4j6] { width: 136px; height: 136px; }

/* --- Shapes --- */
.m3-icon-button--full[b-flmrdvt4j6] { border-radius: 50%; }
.m3-icon-button--none[b-flmrdvt4j6] { border-radius: 0; }
.m3-icon-button--extrasmall[b-flmrdvt4j6] { border-radius: 4px; }
.m3-icon-button--small[b-flmrdvt4j6] { border-radius: 8px; }
.m3-icon-button--medium[b-flmrdvt4j6] { border-radius: 12px; }
.m3-icon-button--large[b-flmrdvt4j6] { border-radius: 16px; }
.m3-icon-button--extralarge[b-flmrdvt4j6] { border-radius: 28px; }

/* Legacy compatibility */
.m3-icon-button--circular[b-flmrdvt4j6] { border-radius: 50%; }
.m3-icon-button--roundedsquare[b-flmrdvt4j6] { border-radius: 12px; }
.m3-icon-button--large.m3-icon-button--roundedsquare[b-flmrdvt4j6] { border-radius: 24px; }
.m3-icon-button--extralarge.m3-icon-button--roundedsquare[b-flmrdvt4j6] { border-radius: 32px; }

/* --- Widths --- */
.m3-icon-button--narrow[b-flmrdvt4j6] { width: auto; min-width: 32px; padding: 0 4px; }
.m3-icon-button--wide[b-flmrdvt4j6]   { width: auto; min-width: 64px; padding: 0 12px; }

.m3-icon-button--extrasmall.m3-icon-button--narrow[b-flmrdvt4j6] { min-width: 24px; }
.m3-icon-button--medium.m3-icon-button--wide[b-flmrdvt4j6]      { min-width: 80px; }

.m3-icon-button[b-flmrdvt4j6]::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0;
    border-radius: inherit;
    transition: opacity 200ms cubic-bezier(0.2, 0, 0, 1);
    pointer-events: none;
}

.m3-icon-button-icon[b-flmrdvt4j6] {
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1em;
    height: 1em;
    padding: 0;
    margin: 0;
}

/* --- Standard Icon Button --- */
.m3-icon-button-standard[b-flmrdvt4j6] {
    color: var(--m3-sys-color-on-surface-variant);
}
.m3-icon-button-standard[b-flmrdvt4j6]::before { background-color: var(--m3-sys-color-on-surface-variant); }
.m3-icon-button-standard:hover[b-flmrdvt4j6]::before { opacity: 0.08; }
.m3-icon-button-standard:focus-visible[b-flmrdvt4j6]::before { opacity: 0.12; }
.m3-icon-button-standard:active[b-flmrdvt4j6]::before { opacity: 0.12; }


/* --- Filled Icon Button --- */
.m3-icon-button-filled[b-flmrdvt4j6] {
    background-color: var(--m3-sys-color-primary);
    color: var(--m3-sys-color-on-primary);
}
.m3-icon-button-filled[b-flmrdvt4j6]::before { background-color: var(--m3-sys-color-on-primary); }
.m3-icon-button-filled:hover[b-flmrdvt4j6]::before { opacity: 0.08; }
.m3-icon-button-filled:focus-visible[b-flmrdvt4j6]::before { opacity: 0.12; }
.m3-icon-button-filled:active[b-flmrdvt4j6]::before { opacity: 0.12; }


/* --- Filled Tonal Icon Button --- */
.m3-icon-button-filledtonal[b-flmrdvt4j6] {
    background-color: var(--m3-sys-color-secondary-container);
    color: var(--m3-sys-color-on-secondary-container);
}
.m3-icon-button-filledtonal[b-flmrdvt4j6]::before { background-color: var(--m3-sys-color-on-secondary-container); }
.m3-icon-button-filledtonal:hover[b-flmrdvt4j6]::before { opacity: 0.08; }
.m3-icon-button-filledtonal:focus-visible[b-flmrdvt4j6]::before { opacity: 0.12; }
.m3-icon-button-filledtonal:active[b-flmrdvt4j6]::before { opacity: 0.12; }


/* --- Outlined Icon Button --- */
.m3-icon-button-outlined[b-flmrdvt4j6] {
    background-color: transparent;
    color: var(--m3-sys-color-on-surface-variant);
    border: 1px solid var(--m3-sys-color-outline);
}
.m3-icon-button-outlined:focus-visible[b-flmrdvt4j6] { border-color: var(--m3-sys-color-on-surface); }
.m3-icon-button-outlined[b-flmrdvt4j6]::before { background-color: var(--m3-sys-color-on-surface-variant); }
.m3-icon-button-outlined:hover[b-flmrdvt4j6]::before { opacity: 0.08; }
.m3-icon-button-outlined:focus-visible[b-flmrdvt4j6]::before { opacity: 0.12; }
.m3-icon-button-outlined:active[b-flmrdvt4j6]::before { opacity: 0.12; }

/* --- Disabled State --- */
.m3-icon-button-disabled[b-flmrdvt4j6] {
    color: rgba(28, 27, 31, 0.38) !important;
    cursor: default !important;
    box-shadow: none !important;
}

.m3-icon-button-disabled.m3-icon-button-filled[b-flmrdvt4j6],
.m3-icon-button-disabled.m3-icon-button-filledtonal[b-flmrdvt4j6] {
    background-color: rgba(28, 27, 31, 0.12) !important;
}

.m3-icon-button-disabled.m3-icon-button-outlined[b-flmrdvt4j6],
.m3-icon-button-disabled.m3-icon-button-standard[b-flmrdvt4j6] {
   background-color: transparent !important;
}

.m3-icon-button-disabled.m3-icon-button-outlined[b-flmrdvt4j6] {
    border-color: rgba(28, 27, 31, 0.12) !important;
}

.m3-icon-button-disabled[b-flmrdvt4j6]::before {
    display: none !important;
}
/* _content/Blazor.M3/Components/M3Layout.razor.rz.scp.css */
.m3-layout[b-d8xdf281dl] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    width: 100vw;
    overflow: hidden;
    position: relative;
}

.m3-layout__header[b-d8xdf281dl] {
    flex-shrink: 0;
    z-index: 100;
    position: relative;
}

.m3-layout__scrim[b-d8xdf281dl] {
    display: none; /* Hidden on Desktop */
    position: fixed;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.4);
    z-index: 150;
    animation: m3-layout-scrim-fade-b-d8xdf281dl 0.2s ease-out;
}

@keyframes m3-layout-scrim-fade-b-d8xdf281dl {
    from { opacity: 0; }
    to { opacity: 1; }
}

.m3-layout__body[b-d8xdf281dl] {
    display: flex;
    flex: 1;
    overflow: hidden;
    position: relative;
}

.m3-layout__sidebar[b-d8xdf281dl] {
    width: 0;
    flex-shrink: 0;
    border-inline-end: none;
    background-color: var(--m3-sys-color-surface);
    overflow: hidden;
    z-index: 1;
    transition: width 300ms cubic-bezier(0.2, 0, 0, 1);
}

.m3-layout--drawer-open .m3-layout__sidebar[b-d8xdf281dl] {
    width: 360px;
    border-inline-end: 1px solid var(--m3-sys-color-outline-variant);
}

/* Collapse to Rail state */
.m3-layout--collapse-to-rail .m3-layout__sidebar[b-d8xdf281dl] {
    width: 80px;
    border-inline-end: 1px solid var(--m3-sys-color-outline-variant);
}

.m3-layout--collapse-to-rail.m3-layout--drawer-open .m3-layout__sidebar[b-d8xdf281dl] {
    width: 360px;
}

.m3-layout__content[b-d8xdf281dl] {
    flex: 1;
    min-width: 0;
    overflow-y: auto;
    overflow-x: hidden;
    background-color: var(--m3-sys-color-background);
    color: var(--m3-sys-color-on-background);
    padding: 24px;
}

@media (max-width: 600px) {
    .m3-layout__sidebar[b-d8xdf281dl] {
        position: fixed;
        top: 0;
        inset-inline-start: 0;
        bottom: 0;
        width: 280px;
        z-index: 200;
        transform: translateX(calc(-100% * var(--m3-layout-multiplier, 1)));
        transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
        box-shadow: var(--m3-sys-elevation-3);
    }

    [dir="rtl"] .m3-layout__sidebar[b-d8xdf281dl] {
        --m3-layout-multiplier: -1;
    }

    .m3-layout--drawer-open .m3-layout__sidebar[b-d8xdf281dl] {
        transform: translateX(0);
    }

    .m3-layout--drawer-open .m3-layout__scrim[b-d8xdf281dl] {
        display: block;
    }
}
/* _content/Blazor.M3/Components/M3LinearProgress.razor.rz.scp.css */
/* m3-linear-progress track styles */
.m3-linear-progress[b-98uddogxlf] {
    position: relative;
    width: 100%;
    /* Default height is handled via inline style and Thickness parameter */
    overflow: hidden;
    /* Track color is usually a surface variant or low-opacity primary */
    background-color: var(--m3-sys-color-surface-variant);
    /* By default MD3 loaders do not have corner radiuses unless enclosed */
    border-radius: 0;
}

.m3-linear-progress__determinate-bar[b-98uddogxlf] {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    /* ScaleX is applied for length */
    background-color: var(--m3-sys-color-primary);
    transform-origin: left center;
    transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Base style for indeterminate bars */
.m3-linear-progress__bar[b-98uddogxlf] {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    animation: none;
    transform-origin: top left;
}

.m3-linear-progress__inner[b-98uddogxlf] {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: var(--m3-sys-color-primary);
    animation: none;
    transform-origin: top left;
}

/* Animations block */
.m3-linear-progress--indeterminate .m3-linear-progress__primary-bar[b-98uddogxlf] {
    animation: m3-linear-progress-primary-b-98uddogxlf 2s infinite linear;
}

.m3-linear-progress--indeterminate .m3-linear-progress__primary-bar .m3-linear-progress__inner[b-98uddogxlf] {
    animation: m3-linear-progress-primary-inner-b-98uddogxlf 2s infinite linear;
}

.m3-linear-progress--indeterminate .m3-linear-progress__secondary-bar[b-98uddogxlf] {
    animation: m3-linear-progress-secondary-b-98uddogxlf 2s infinite linear;
    /* Delay secondary bar to create the chasing effect */
}

.m3-linear-progress--indeterminate .m3-linear-progress__secondary-bar .m3-linear-progress__inner[b-98uddogxlf] {
    animation: m3-linear-progress-secondary-inner-b-98uddogxlf 2s infinite linear;
}

/* 
 * MD3 Linear Indeterminate Animation Keyframes 
 * This requires two synchronized animations per bar (outer bar translates, inner bar scales)
 * to achieve the precise acceleration/deceleration shape-shifting effect.
 */

/* Primary Bar Container (Moves left to right) */
@keyframes m3-linear-progress-primary-b-98uddogxlf {
    0% {
        transform: translateX(-100%);
    }

    20% {
        transform: translateX(-100%);
    }

    60% {
        transform: translateX(107%);
    }

    100% {
        transform: translateX(107%);
    }
}

/* Primary Bar Inner (Stretches then shrinks) */
@keyframes m3-linear-progress-primary-inner-b-98uddogxlf {
    0% {
        transform: scaleX(0.08);
    }

    20% {
        transform: scaleX(0.08);
        animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    }

    38% {
        transform: scaleX(0.5);
    }

    60% {
        transform: scaleX(0.08);
    }

    100% {
        transform: scaleX(0.08);
    }
}

/* Secondary Bar Container (Follows primary) */
@keyframes m3-linear-progress-secondary-b-98uddogxlf {
    0% {
        transform: translateX(-150%);
    }

    10% {
        transform: translateX(-150%);
    }

    50% {
        transform: translateX(-20%);
    }

    100% {
        transform: translateX(107%);
    }
}

/* Secondary Bar Inner (Stretches rapidly) */
@keyframes m3-linear-progress-secondary-inner-b-98uddogxlf {
    0% {
        transform: scaleX(0.08);
    }

    10% {
        transform: scaleX(0.08);
        animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    }

    30% {
        transform: scaleX(0.6);
    }

    50% {
        transform: scaleX(0.08);
    }

    100% {
        transform: scaleX(0.08);
    }
}
/* _content/Blazor.M3/Components/M3List.razor.rz.scp.css */
.m3-list[b-r35zn6go74] {
    display: flex;
    flex-direction: column;
    padding: 8px 0;
    /* MD3 standard list padding (top and bottom only) */
    margin: 0;
    list-style: none;
    /* Strip standard ul styles */

    /* Background colors typically inherit or are Surface/SurfaceContainerLowest */
    background-color: transparent;
    border-radius: 8px;
    /* Standard block radius, often overridden depending on card context */
    color: var(--m3-sys-color-on-surface);
}
/* _content/Blazor.M3/Components/M3ListItem.razor.rz.scp.css */
/* Container to strip native list padding on individual rows */
.m3-list-item-container[b-6ikdulhcyk] {
    padding: 0;
    margin: 0;
    list-style: none;
    position: relative;
}

.m3-list-item--with-divider[b-6ikdulhcyk] {
    border-bottom: 1px solid var(--m3-sys-color-outline-variant);
}

.m3-list-item--with-divider:last-child[b-6ikdulhcyk] {
    border-bottom: none;
}

/* Base Interactive Layout */
.m3-list-item[b-6ikdulhcyk] {
    position: relative;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    box-sizing: border-box;
    min-height: 56px;
    padding: 8px 16px;
    margin: 4px 12px;
    width: calc(100% - 24px);
    gap: 16px;
    /* Space between flex items */
    border-radius: 12px;

    appearance: none;
    background: transparent;
    border: none;
    text-align: left;
    text-decoration: none;
    color: var(--m3-sys-color-on-surface);
    cursor: default;
}

/* Height Variations */
.m3-list-item--two-line[b-6ikdulhcyk] {
    min-height: 72px;
}

.m3-list-item--three-line[b-6ikdulhcyk] {
    min-height: 88px;
    align-items: flex-start;
    /* Push content to top rather than center in 3-line */
    padding-top: 12px;
    padding-bottom: 12px;
}

/* Interactive States */
.m3-list-item--interactive[b-6ikdulhcyk] {
    cursor: pointer;
}

.m3-list-item__state-layer[b-6ikdulhcyk] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--m3-sys-color-on-surface);
    opacity: 0;
    transition: opacity 0.2s cubic-bezier(0.2, 0, 0, 1);
    z-index: 0;
    border-radius: 12px;
}

.m3-list-item--interactive:hover .m3-list-item__state-layer[b-6ikdulhcyk] {
    opacity: 0.08;
    /* MD3 Hover opacity */
}

.m3-list-item--interactive:focus-visible .m3-list-item__state-layer[b-6ikdulhcyk] {
    opacity: 0.12;
    /* MD3 Focus opacity */
    outline: 2px solid var(--m3-sys-color-primary);
    outline-offset: -2px;
}

.m3-list-item--interactive:active .m3-list-item__state-layer[b-6ikdulhcyk] {
    opacity: 0.12;
    /* MD3 Pressed opacity */
}


/* Internal Content Regions */
.m3-list-item__start[b-6ikdulhcyk] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    z-index: 1;
}

.m3-list-item__avatar[b-6ikdulhcyk] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
}

.m3-list-item__media[b-6ikdulhcyk] {
    width: 56px;
    height: 56px;
    border-radius: 8px;
    object-fit: cover;
    background-color: var(--m3-sys-color-surface-container-high);
}

.m3-list-item__icon[b-6ikdulhcyk] {
    font-size: 24px;
    color: var(--m3-sys-color-on-surface-variant);
}

.m3-list-item__content[b-6ikdulhcyk] {
    display: flex;
    flex-direction: column;
    flex: 1;
    z-index: 1;
    overflow: hidden;
}

.m3-list-item__end[b-6ikdulhcyk] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    z-index: 1;
}

/* Typography alignment */
.m3-list-item__overline[b-6ikdulhcyk] {
    font-size: 12px;
    line-height: 16px;
    font-weight: 500;
    color: var(--m3-sys-color-on-surface-variant);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 2px;
}

.m3-list-item__headline[b-6ikdulhcyk] {
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    color: var(--m3-sys-color-on-surface);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.m3-list-item__supporting-text[b-6ikdulhcyk] {
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    color: var(--m3-sys-color-on-surface-variant);
    /* In 2-line, usually 1 row max. In 3-line it could be 2. Let's force simple truncation for 2-line */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.m3-list-item__trailing-supporting-text[b-6ikdulhcyk] {
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    color: var(--m3-sys-color-on-surface-variant);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.m3-list-item__trailing-text[b-6ikdulhcyk] {
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    color: var(--m3-sys-color-on-surface-variant);
    white-space: nowrap;
}


/* Selected State: Outlined (Modern Sidebar Style) */
.m3-list-item.m3-list-item--selected-outlined[b-6ikdulhcyk] {
    background-color: transparent;
    color: var(--m3-sys-color-primary);
    border: 1px solid var(--m3-sys-color-primary);
}

.m3-list-item.m3-list-item--selected-outlined .m3-list-item__icon[b-6ikdulhcyk],
.m3-list-item.m3-list-item--selected-outlined .m3-list-item__headline[b-6ikdulhcyk] {
    color: var(--m3-sys-color-primary);
    font-weight: 700;
}

/* Selected State: Filled (Classic MD3 Style) */
.m3-list-item.m3-list-item--selected-filled[b-6ikdulhcyk] {
    background-color: var(--m3-sys-color-secondary-container);
    color: var(--m3-sys-color-on-secondary-container);
    border: 1px solid transparent;
}

.m3-list-item.m3-list-item--selected-filled .m3-list-item__icon[b-6ikdulhcyk],
.m3-list-item.m3-list-item--selected-filled .m3-list-item__headline[b-6ikdulhcyk] {
    color: var(--m3-sys-color-on-secondary-container);
    font-weight: 700;
}

.m3-list-item.m3-list-item--selected .m3-list-item__state-layer[b-6ikdulhcyk] {
    background-color: transparent;
}

/* Neighboring Selection: Merged Corners (Keeping Gaps) */
/* If NEXT item is selected with the SAME variant */
.m3-list-item-container--selected-filled:has(+ .m3-list-item-container--selected-filled) .m3-list-item[b-6ikdulhcyk],
.m3-list-item-container--selected-filled:has(+ .m3-list-item-container--selected-filled) .m3-list-item__state-layer[b-6ikdulhcyk],
.m3-list-item-container--selected-outlined:has(+ .m3-list-item-container--selected-outlined) .m3-list-item[b-6ikdulhcyk],
.m3-list-item-container--selected-outlined:has(+ .m3-list-item-container--selected-outlined) .m3-list-item__state-layer[b-6ikdulhcyk] {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}

/* If PREVIOUS item is selected with the SAME variant */
.m3-list-item-container--selected-filled + .m3-list-item-container--selected-filled .m3-list-item[b-6ikdulhcyk],
.m3-list-item-container--selected-filled + .m3-list-item-container--selected-filled .m3-list-item__state-layer[b-6ikdulhcyk],
.m3-list-item-container--selected-outlined + .m3-list-item-container--selected-outlined .m3-list-item[b-6ikdulhcyk],
.m3-list-item-container--selected-outlined + .m3-list-item-container--selected-outlined .m3-list-item__state-layer[b-6ikdulhcyk] {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
}

/* Disabled State Overrides */
.m3-list-item--disabled .m3-list-item[b-6ikdulhcyk] {
    color: var(--m3-sys-color-on-surface);
    opacity: 0.38;
    /* MD3 Spec for disabled text/icons */
    cursor: default;
}
/* _content/Blazor.M3/Components/M3LoadingIndicator.razor.rz.scp.css */
.m3-loading-indicator[b-bmm6xskf2r] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.m3-loading-indicator__vector[b-bmm6xskf2r] {
    width: 100%;
    height: 100%;
    transform-origin: center center;
    perspective: none;
    backface-visibility: hidden;
}

.m3-loading-indicator__path[b-bmm6xskf2r] {
    fill: currentColor;
    transform-origin: center center;
}
/* _content/Blazor.M3/Components/M3Menu.razor.rz.scp.css */
/* Host component acting as the relative positioning boundary */
.m3-menu[b-p2ki72nura] {
    position: relative;
    display: inline-block;
}

/* The element you click. Placed inside so the menu can position itself relative to it */
.m3-menu__anchor[b-p2ki72nura] {
    display: inline-flex;
    cursor: pointer;
}

/* Invisible background layer to detect clicks outside the popup to close it */
.m3-menu__scrim[b-p2ki72nura] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 6000;
    cursor: default;
    /* Optional: add a tiny background-color for debugging, e.g. rgba(255,0,0,0.1) */
}

/* The actual elevated card containing the list items */
.m3-menu__panel[b-p2ki72nura] {
    position: absolute;
    top: 100%;
    /* Anchor to the bottom edge of the parent trigger */
    left: 0;
    /* Align with the left edge of the parent trigger */
    min-width: 112px;
    max-width: 280px;

    margin-top: 4px;
    /* Small gap between anchor and menu */
    background-color: var(--m3-sys-color-surface-container);
    border-radius: 4px;
    /* MD3 standard menu radius */
    box-shadow: var(--m3-sys-elevation-2);
    /* MD3 standard menu elevation */

    z-index: 6001;
    /* Must sit above the scrim */

    /* Reveal Animation Strategy */
    opacity: 0;
    transform: translateY(-8px) scale(0.95);
    transform-origin: top left;
    animation: m3-menu-reveal-b-p2ki72nura 0.15s cubic-bezier(0.2, 0, 0, 1) forwards;
}

.m3-menu__panel--scrollable[b-p2ki72nura] {
    overflow-y: auto;
    overflow-x: hidden;
}

@keyframes m3-menu-reveal-b-p2ki72nura {
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* The internal list container overrides */
.m3-menu__list[b-p2ki72nura] {
    margin: 0;
    padding: 8px 0;
    /* MD3 vertical padding bounds */
    list-style: none;
    display: flex;
    flex-direction: column;
}

.m3-menu__search[b-p2ki72nura] {
    padding: 4px 8px;
    background-color: var(--m3-sys-color-surface-container);
    position: sticky;
    top: 0;
    z-index: 2;
    border-bottom: 1px solid var(--m3-sys-color-outline-variant);
}

.m3-menu__search :deep(.m3-text-field)[b-p2ki72nura] {
    --m3-text-field-container-height: 40px;
}
/* _content/Blazor.M3/Components/M3MenuItem.razor.rz.scp.css */
/* Container styling to reset browser defaults on <li> */
.m3-menu-item-container[b-pa05h0dkio] {
    padding: 0;
    margin: 0;
    list-style: none;
    position: relative;
    display: flex;
    /* Ensure button stretches horizontally */
}

/* Base Interactive Layout */
.m3-menu-item[b-pa05h0dkio] {
    position: relative;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    min-height: var(--m3-menu-item-height, 48px);
    padding: 8px 16px;
    margin: 4px 12px;
    width: calc(100% - 24px);
    border-radius: 28px;
    overflow: hidden;

    appearance: none;
    background: transparent;
    border: none;
    text-align: left;
    text-decoration: none;
    color: var(--m3-sys-color-on-surface);

    --m3-menu-item-height: 48px;
}

.m3-size-small.m3-menu-item[b-pa05h0dkio] {
    --m3-menu-item-height: 32px;
    padding-top: 4px;
    padding-bottom: 4px;
}

.m3-menu-item--interactive[b-pa05h0dkio] {
    cursor: pointer;
}

/* State Layer Interactions */
.m3-menu-item__state-layer[b-pa05h0dkio] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--m3-sys-color-on-surface);
    opacity: 0;
    border-radius: inherit;
    transition: opacity 0.2s cubic-bezier(0.2, 0, 0, 1);
    z-index: 0;
}

.m3-menu-item--interactive:hover .m3-menu-item__state-layer[b-pa05h0dkio] {
    opacity: 0.08;
    /* MD3 Hover opacity */
}

.m3-menu-item--interactive:focus-visible .m3-menu-item__state-layer[b-pa05h0dkio] {
    opacity: 0.12;
    /* MD3 Focus opacity */
    outline: 2px solid var(--m3-sys-color-primary);
    outline-offset: -2px;
}

.m3-menu-item--interactive:active .m3-menu-item__state-layer[b-pa05h0dkio] {
    opacity: 0.12;
    /* MD3 Pressed opacity */
}

/* Icon / Text Layout Zones */
.m3-menu-item__start[b-pa05h0dkio] {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
    z-index: 1;
    color: var(--m3-sys-color-on-surface-variant);
}

.m3-menu-item__label[b-pa05h0dkio] {
    flex: 1;
    min-width: 0;
    /* Consume space, pushing trailing items to the right edge */
    font-size: var(--m3-menu-item-font-size, 14px);
    line-height: 20px;
    font-weight: 400;
    color: var(--m3-sys-color-on-surface);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    z-index: 1;

    --m3-menu-item-font-size: 14px;
}

.m3-size-small .m3-menu-item__label[b-pa05h0dkio] {
    --m3-menu-item-font-size: 12px;
}

.m3-menu-item__end[b-pa05h0dkio] {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 12px;
    z-index: 1;
    color: var(--m3-sys-color-on-surface-variant);
    font-size: 12px;
    /* Standardize shortcut text sizing slightly smaller */
}

/* Disabled State Visual Overrides */
.m3-menu-item--disabled .m3-menu-item__label[b-pa05h0dkio],
.m3-menu-item--disabled .m3-menu-item__start[b-pa05h0dkio],
.m3-menu-item--disabled .m3-menu-item__end[b-pa05h0dkio] {
    color: var(--m3-sys-color-on-surface);
    opacity: 0.38;
    /* MD3 Disabled Alpha Standard */
}

/* Allow tooltip hover events to bubble through disabled buttons */
.m3-menu-item-container.m3-menu-item--disabled .m3-menu-item[b-pa05h0dkio] {
    pointer-events: none;
}

/* Divider Styling */
.m3-menu-item-divider[b-pa05h0dkio] {
    height: 1px;
    margin: 4px 0;
    background-color: var(--m3-sys-color-outline);
    list-style: none;
    flex-shrink: 0;
}

.m3-menu-item--hidden[b-pa05h0dkio] {
    display: none !important;
}

.m3-menu-item-tooltip-wrapper[b-pa05h0dkio] {
    width: 100%;
    display: flex;
}
/* _content/Blazor.M3/Components/M3NavigationBar.razor.rz.scp.css */
/* m3-navigation-bar styles */
.m3-navigation-bar[b-rne32gwm4s] {
    width: 100%;
    /* Standard MD3 height for mobile bottom navigation */
    height: 80px;
    background-color: var(--m3-sys-color-surface-container);
    /* Elevation level 2 is standard for MD3 Navigation Bar per spec */
    box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2),
        0px 4px 5px 0px rgba(0, 0, 0, 0.14),
        0px 1px 10px 0px rgba(0, 0, 0, 0.12);
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 10;
}

.m3-navigation-bar--fixed-bottom[b-rne32gwm4s] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
}

.m3-navigation-bar__content[b-rne32gwm4s] {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-evenly;
    width: 100%;
    height: 100%;
    /* Optimal max width to prevent stretching across massive ultrawide monitors */
    max-width: 600px;
}
/* _content/Blazor.M3/Components/M3NavigationDrawer.razor.rz.scp.css */
/* ========================================================================= */
/* SCRIM (MODAL DRAWER ONLY) */
/* ========================================================================= */
.m3-navigation-drawer-scrim[b-zaz83xp2qc] {
    position: fixed;
    top: 0;
    inset-inline-start: 0;
    width: 100vw;
    height: 100vh;
    background-color: var(--m3-sys-color-scrim);
    opacity: 0;
    z-index: 4000;
    transition: opacity 250ms cubic-bezier(0.2, 0, 0, 1);
    pointer-events: none;
}

.m3-navigation-drawer-scrim--visible[b-zaz83xp2qc] {
    opacity: 0.32;
    pointer-events: auto;
}

/* ========================================================================= */
/* DRAWER CONTAINER */
/* ========================================================================= */
.m3-navigation-drawer[b-zaz83xp2qc] {
    background-color: var(--m3-sys-color-surface-container-low);
    color: var(--m3-sys-color-on-surface);
    display: flex;
    flex-direction: column;
    width: 100%;
    /* Standard MD3 max-width constraint for Drawers */
    max-width: 360px;
    height: 100%;
    overflow-y: auto;

    /* Internal padding for the list root */
    padding: 12px;
}

/* ========================================================================= */
/* MODAL VARIANT */
/* ========================================================================= */
.m3-navigation-drawer--modal[b-zaz83xp2qc] {
    position: fixed;
    top: 0;
    inset-inline-start: 0;
    height: 100vh;
    z-index: 4001;

    /* Decelerating slide-in transition */
    transform: translateX(calc(-100% * var(--m3-direction-multiplier, 1)));
    transition: transform 300ms cubic-bezier(0.2, 0, 0, 1);

    /* Elevation Level 1 */
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 1px 3px 1px rgba(0, 0, 0, 0.15);

    /* MD3 Modal drawers have 16dp rounded corners on the protruding edge */
    border-start-end-radius: 16px;
    border-end-end-radius: 16px;
}

[dir="rtl"] .m3-navigation-drawer--modal[b-zaz83xp2qc] {
    --m3-direction-multiplier: -1;
}

.m3-navigation-drawer--modal.m3-navigation-drawer--open[b-zaz83xp2qc] {
    transform: translateX(0%);
}

/* ========================================================================= */
/* STANDARD VARIANT */
/* ========================================================================= */
.m3-navigation-drawer--standard[b-zaz83xp2qc] {
    /* Standards sit relative in flex layouts without stacking order tricks */
    position: relative;
    border-inline-end: 1px solid var(--m3-sys-color-outline-variant);

    /* Standard drawers push the layout smoothly */
    margin-inline-start: -360px;
    /* Hide by default off-canvas */
    transition: margin-inline-start 300ms cubic-bezier(0.2, 0, 0, 1);
}

.m3-navigation-drawer--standard.m3-navigation-drawer--open[b-zaz83xp2qc] {
    margin-inline-start: 0px;
}

/* ========================================================================= */
/* STRUCTURAL CONTENT SLOTS */
/* ========================================================================= */
.m3-navigation-drawer__content[b-zaz83xp2qc] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    /* Space between drawer items */
}

/* ========================================================================= */
/* COLLAPSED RAIL VARIANT */
/* ========================================================================= */
.m3-navigation-drawer--rail[b-zaz83xp2qc] {
    max-width: 80px;
    padding: 12px 0;
    overflow-x: hidden;
    transition: max-width 200ms cubic-bezier(0.2, 0, 0, 1);
}

.m3-navigation-drawer--rail.m3-navigation-drawer--standard[b-zaz83xp2qc] {
    margin-inline-start: 0px !important;
}

.m3-navigation-drawer--rail .m3-navigation-drawer__content[b-zaz83xp2qc] {
    align-items: center;
    gap: 12px;
}
/* _content/Blazor.M3/Components/M3NavigationDrawerItem.razor.rz.scp.css */
.m3-navigation-drawer-item[b-xwoed0db5o] {
    display: flex;
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 4px 12px;
    text-align: start;
    background: transparent;
    border: none;
    padding: 0;
    text-decoration: none !important;
    cursor: pointer;
    font-family: var(--m3-sys-typescale-font-family);
    color: var(--m3-sys-color-on-surface-variant) !important;

    /* Fully rounded pill shape */
    border-radius: var(--m3-sys-shape-corner-extra-large);

    /* Setup for MD3 ripple */
    position: relative;

    /* Ensure no blue color when used as a link */
    outline: none;
    transition: color 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.m3-navigation-drawer-item:hover[b-xwoed0db5o],
.m3-navigation-drawer-item:focus[b-xwoed0db5o] {
    color: var(--m3-sys-color-on-surface-variant) !important;
    text-decoration: none !important;
    outline: none;
}

/* ========================================================================= */
/* INTERACTIVE STATE LAYER */
/* ========================================================================= */
.m3-navigation-drawer-item__state-layer[b-xwoed0db5o] {
    display: flex;
    align-items: center;
    min-height: 56px;
    padding: 0 16px;
    margin: 0;
    width: 100%;
    gap: 12px;
    /* Icon-to-text standard */
    border-radius: var(--m3-sys-shape-corner-extra-large);
    border: 1px solid transparent;
    transition: background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1),
        border-color 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.m3-navigation-drawer-item:hover .m3-navigation-drawer-item__state-layer[b-xwoed0db5o] {
    background-color: rgba(28, 27, 31, 0.08);
    /* Hover state overlay */
}



.m3-navigation-drawer-item:active .m3-navigation-drawer-item__state-layer[b-xwoed0db5o] {
    background-color: rgba(28, 27, 31, 0.12);
    /* Pressed state overlay */
}

/* ========================================================================= */
/* ACTIVE STATE (SELECTED) */
/* ========================================================================= */
.m3-navigation-drawer-item--active[b-xwoed0db5o],
.m3-navigation-drawer-item.active[b-xwoed0db5o] {
    color: var(--m3-sys-color-primary) !important;
}

.m3-navigation-drawer-item--active .m3-navigation-drawer-item__state-layer[b-xwoed0db5o],
.m3-navigation-drawer-item.active .m3-navigation-drawer-item__state-layer[b-xwoed0db5o] {
    background-color: transparent;
    border: 1px solid var(--m3-sys-color-primary);
}

/* Reset hover over the active background */
.m3-navigation-drawer-item--active:hover .m3-navigation-drawer-item__state-layer[b-xwoed0db5o],
.m3-navigation-drawer-item.active:hover .m3-navigation-drawer-item__state-layer[b-xwoed0db5o] {
    background-color: color-mix(in srgb, var(--m3-sys-color-primary), transparent 92%);
}



/* ========================================================================= */
/* SLOTS */
/* ========================================================================= */
.m3-navigation-drawer-item__icon[b-xwoed0db5o] {
    font-size: 24px;
    color: var(--m3-sys-color-on-surface-variant) !important;
    transition: color 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.m3-navigation-drawer-item--active .m3-navigation-drawer-item__icon[b-xwoed0db5o],
.m3-navigation-drawer-item.active .m3-navigation-drawer-item__icon[b-xwoed0db5o] {
    /* Selected items shift their icon to primary */
    color: var(--m3-sys-color-primary) !important;
}

.icon-filled[b-xwoed0db5o] {
    /* Manual override if needed */
    font-variation-settings: 'FILL' 1;
}

.m3-navigation-drawer-item__headline[b-xwoed0db5o] {
    flex-grow: 1;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0.1px;
    color: var(--m3-sys-color-on-surface-variant) !important;
    transition: color 0.3s cubic-bezier(0.4, 0, 0.2, 1),
        font-weight 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.m3-navigation-drawer-item--active .m3-navigation-drawer-item__headline[b-xwoed0db5o],
.m3-navigation-drawer-item.active .m3-navigation-drawer-item__headline[b-xwoed0db5o] {
    color: var(--m3-sys-color-primary) !important;
    font-weight: 700;
}

.m3-navigation-drawer-item__badge[b-xwoed0db5o] {
    font-size: 11px;
    /* Smaller for pill style */
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.5px;
    padding: 4px 8px;
    border-radius: 10px;
    text-transform: uppercase;
}

.m3-navigation-drawer-item__badge--pro[b-xwoed0db5o] {
    background-color: var(--m3-sys-color-tertiary-container);
    color: var(--m3-sys-color-on-tertiary-container);
}

.m3-navigation-drawer-item__badge--enterprise[b-xwoed0db5o] {
    background-color: var(--m3-sys-color-secondary-container);
    color: var(--m3-sys-color-on-secondary-container);
}

/* ========================================================================= */
/* NAVIGATION RAIL (COLLAPSED) VARIANT */
/* ========================================================================= */
.m3-navigation-drawer-item--rail[b-xwoed0db5o] {
    width: 100% !important;
    margin: 0 !important;
    border-radius: 0 !important;
}

.m3-navigation-drawer-item--rail .m3-navigation-drawer-item__state-layer[b-xwoed0db5o] {
    flex-direction: column !important;
    min-height: 64px !important;
    padding: 6px 4px !important;
    gap: 4px !important;
    border-radius: 0 !important;
    border: none !important;
    justify-content: center !important;
    align-items: center !important;
    background-color: transparent !important;
}

/* Icon container as the active pill indicator */
.m3-navigation-drawer-item--rail .m3-navigation-drawer-item__icon-container[b-xwoed0db5o] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 32px;
    border-radius: 16px;
    transition: background-color 200ms cubic-bezier(0.2, 0, 0, 1);
}

/* Hover/Focus states on icon container */
.m3-navigation-drawer-item--rail:hover .m3-navigation-drawer-item__icon-container[b-xwoed0db5o] {
    background-color: var(--m3-sys-color-surface-variant);
}

/* Active states for rail */
.m3-navigation-drawer-item--rail.active .m3-navigation-drawer-item__icon-container[b-xwoed0db5o],
.m3-navigation-drawer-item--rail.m3-navigation-drawer-item--active .m3-navigation-drawer-item__icon-container[b-xwoed0db5o] {
    background-color: var(--m3-sys-color-secondary-container) !important;
}

.m3-navigation-drawer-item--rail.active .m3-navigation-drawer-item__icon[b-xwoed0db5o],
.m3-navigation-drawer-item--rail.m3-navigation-drawer-item--active .m3-navigation-drawer-item__icon[b-xwoed0db5o] {
    color: var(--m3-sys-color-on-secondary-container) !important;
}

/* Label styling in Rail mode */
.m3-navigation-drawer-item--rail .m3-navigation-drawer-item__headline[b-xwoed0db5o] {
    font-size: 11px !important;
    line-height: 14px !important;
    font-weight: 500 !important;
    text-align: center !important;
    width: 100% !important;
    margin: 0 !important;
    flex-grow: 0 !important;
    white-space: normal !important;
    word-break: break-word !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    color: var(--m3-sys-color-on-surface-variant) !important;
}

.m3-navigation-drawer-item--rail.active .m3-navigation-drawer-item__headline[b-xwoed0db5o],
.m3-navigation-drawer-item--rail.m3-navigation-drawer-item--active .m3-navigation-drawer-item__headline[b-xwoed0db5o] {
    color: var(--m3-sys-color-on-surface) !important;
    font-weight: 600 !important;
}
/* _content/Blazor.M3/Components/M3NavigationItem.razor.rz.scp.css */
/* m3-navigation-item base styles */
.m3-navigation-item[b-5h5izllks3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: inherit;
    flex: 1;
    /* Stretch evenly */
    height: 100%;
    position: relative;
    cursor: pointer;
    padding-top: 12px;
    padding-bottom: 16px;
    box-sizing: border-box;
}

.m3-navigation-item--link[b-5h5izllks3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    color: var(--m3-sys-color-on-surface-variant);
    position: relative;
    padding: 12px 4px;
    width: 100%;
    min-width: 80px;
    box-sizing: border-box;
    gap: 4px;
}

.m3-navigation-item:hover[b-5h5izllks3] {
    color: var(--m3-sys-color-on-surface);
}

/* Hover state layer on the icon container */
.m3-navigation-item:not(.active):hover .m3-navigation-item__icon-container[b-5h5izllks3]::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--m3-sys-color-on-surface-variant);
    opacity: 0.08;
    border-radius: 16px;
    z-index: 0;
}

/* Icon Container */
.m3-navigation-item__icon-container[b-5h5izllks3] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 64px;
    height: 32px;
    border-radius: 16px;
    /* Pill shape */
    margin-bottom: 4px;
    transition: background-color 0.2s ease;
}

/* The expanding pill indicator */
.m3-navigation-item__active-indicator[b-5h5izllks3] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--m3-sys-color-secondary-container);
    border-radius: 16px;
    opacity: 0;
    transform: scaleX(0.5);
    /* Start narrow */
    transition: opacity 0.2s cubic-bezier(0.2, 0, 0, 1),
        transform 0.2s cubic-bezier(0.2, 0, 0, 1);
    z-index: 1;
}

/* Icons styling */
.m3-navigation-item__icon[b-5h5izllks3] {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    transition: color 0.2s ease, opacity 0.2s ease;
}

/* Ensure the M3Icon inside gets the right size */
.m3-navigation-item__icon[b-5h5izllks3]  .m3-icon {
    font-size: 24px;
}

.m3-navigation-item__icon--inactive[b-5h5izllks3] {
    opacity: 1;
}

.m3-navigation-item__icon--active[b-5h5izllks3] {
    opacity: 0;
}

/* Label styling */
.m3-navigation-item__label[b-5h5izllks3] {
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    text-align: center;
    letter-spacing: 0.5px;
    transition: color 0.2s ease, font-weight 0.2s ease;
}

/* --- ACTIVE STATE RULES (triggered by Blazor NavLink 'active' class) --- */

.m3-navigation-item.active[b-5h5izllks3] {
    color: var(--m3-sys-color-on-surface);
}

/* Show the pill context */
.m3-navigation-item.active .m3-navigation-item__active-indicator[b-5h5izllks3] {
    opacity: 1;
    transform: scaleX(1);
    /* Expand width to full 64px */
}

/* Swap the icons */
.m3-navigation-item.active .m3-navigation-item__icon--inactive[b-5h5izllks3] {
    opacity: 0;
}

.m3-navigation-item.active .m3-navigation-item__icon--active[b-5h5izllks3] {
    opacity: 1;
    color: var(--m3-sys-color-on-secondary-container);
}

/* Highlight the text label */
.m3-navigation-item.active .m3-navigation-item__label[b-5h5izllks3] {
    font-weight: 700;
}

/* Optional Ripple effect (simulated active state press) */
.m3-navigation-item:active .m3-navigation-item__icon-container[b-5h5izllks3] {
    transform: scale(0.95);
    transition: transform 0.1s;
}
/* _content/Blazor.M3/Components/M3RadioButton.razor.rz.scp.css */
.m3-radio[b-eij3y42m9r] {
    display: inline-flex;
    position: relative;
    vertical-align: middle;
}

.m3-radio-wrapper[b-eij3y42m9r] {
    display: flex;
    align-items: center;
    cursor: pointer;
    position: relative;
    /* Touch target size for accessibility */
    min-height: 40px;
}

/* Hide the native input visually, but keep it accessible */
.m3-radio-native[b-eij3y42m9r] {
    position: absolute;
    width: 40px;
    height: 40px;
    margin: 0;
    opacity: 0;
    cursor: inherit;
    z-index: 1;
}

/* The visual outer circle of the radio button */
.m3-radio-visual[b-eij3y42m9r] {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    /* Force circle */
    border: 2px solid var(--m3-sys-color-on-surface-variant);
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: border-color 0.1s linear;
    position: relative;
    /* Optional margin if not padding label */
    margin-right: 8px;
    margin-left: 10px;
    /* Centered in 40px touch area visually */
}

/* The inner filled circle indicating selection */
.m3-radio-inner[b-eij3y42m9r] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: var(--m3-sys-color-primary);
    transform: scale(0);
    transition: transform 0.1s cubic-bezier(0.14, 1, 0.34, 1);
}

/* Hover State (Resting Unselected) */
.m3-radio-wrapper:hover .m3-radio-visual[b-eij3y42m9r] {
    border-color: var(--m3-sys-color-on-surface);
}

/* Selected State */
.m3-radio--selected .m3-radio-visual[b-eij3y42m9r] {
    border-color: var(--m3-sys-color-primary);
}

.m3-radio--selected .m3-radio-inner[b-eij3y42m9r] {
    transform: scale(1);
}

/* Focus Indicator (Outline) */
.m3-radio-native:focus-visible~.m3-radio-visual[b-eij3y42m9r] {
    outline: 2px solid var(--m3-sys-color-primary);
    outline-offset: 4px;
}

.m3-radio-native:focus-visible~.m3-radio-visual[b-eij3y42m9r]::after {
    content: '';
    position: absolute;
    top: -12px;
    left: -12px;
    right: -12px;
    bottom: -12px;
    border-radius: 50%;
    background-color: var(--m3-sys-color-on-surface);
    opacity: 0.12;
    /* Focus opacity */
    pointer-events: none;
}

.m3-radio--selected .m3-radio-native:focus-visible~.m3-radio-visual[b-eij3y42m9r]::after {
    background-color: var(--m3-sys-color-primary);
}

/* Disabled State */
.m3-radio--disabled .m3-radio-wrapper[b-eij3y42m9r] {
    cursor: default;
}

.m3-radio--disabled.m3-radio--unselected .m3-radio-visual[b-eij3y42m9r] {
    border-color: var(--m3-sys-color-on-surface);
    opacity: 0.38;
}

.m3-radio--disabled.m3-radio--selected .m3-radio-visual[b-eij3y42m9r] {
    border-color: var(--m3-sys-color-on-surface);
    opacity: 0.38;
}

.m3-radio--disabled.m3-radio--selected .m3-radio-inner[b-eij3y42m9r] {
    background-color: var(--m3-sys-color-on-surface);
}

/* Label */
.m3-radio-label[b-eij3y42m9r] {
    color: var(--m3-sys-color-on-surface);
    font-size: 14px;
    padding-right: 16px;
    user-select: none;
}

.m3-radio--disabled .m3-radio-label[b-eij3y42m9r] {
    opacity: 0.38;
}
/* _content/Blazor.M3/Components/M3Select.razor.rz.scp.css */
.m3-select[b-y6bdlecnfk] {
    display: inline-block;
    position: relative;
    width: 100%;
}

.m3-select__anchor-wrapper[b-y6bdlecnfk] {
    width: 100%;
    outline: none;
}

.m3-select__chevron[b-y6bdlecnfk] {
    transition: transform 200ms cubic-bezier(0.2, 0, 0, 1);
    color: var(--m3-sys-color-on-surface-variant);
}

.m3-select__chevron--open[b-y6bdlecnfk] {
    transform: rotate(180deg);
}

/* Ensure deep styling of the read-only text-field input displays a pointer cursor */
[b-y6bdlecnfk] .m3-select__field {
    cursor: pointer;
}

[b-y6bdlecnfk] .m3-select__field .m3-text-field__input {
    cursor: pointer;
    caret-color: transparent; /* Hide text cursor */
}

/* Selected state in the dropdown list */
[b-y6bdlecnfk] .m3-menu-item--selected {
    background-color: var(--m3-sys-color-primary-container);
    color: var(--m3-sys-color-on-primary-container);
}
/* _content/Blazor.M3/Components/M3Slider.razor.rz.scp.css */
.m3-slider[b-ndwriobwhy] {
    position: relative;
    width: 100%;
    height: 48px;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    /* Default (M) Size Variables */
    --m3-slider-track-height: 40px;
    --m3-slider-handle-height: 44px;
}

.m3-slider--extrasmall[b-ndwriobwhy] { --m3-slider-track-height: 16px; --m3-slider-handle-height: 20px; }
.m3-slider--small[b-ndwriobwhy]      { --m3-slider-track-height: 24px; --m3-slider-handle-height: 28px; }
.m3-slider--medium[b-ndwriobwhy]     { --m3-slider-track-height: 40px; --m3-slider-handle-height: 44px; }
.m3-slider--large[b-ndwriobwhy]      { --m3-slider-track-height: 56px; --m3-slider-handle-height: 60px; }
.m3-slider--extralarge[b-ndwriobwhy] { --m3-slider-track-height: 96px; --m3-slider-handle-height: 100px; }

.m3-slider__input-wrapper[b-ndwriobwhy] {
    flex: 1;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
}

.m3-slider__track-container[b-ndwriobwhy] {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    height: var(--m3-slider-track-height);
    pointer-events: none;
    /* Masking disabled for visibility debug */
}

.m3-slider__track-inactive[b-ndwriobwhy] {
    position: absolute;
    top: 50%;
    height: 100%;
    transform: translateY(-50%);
    background-color: var(--m3-sys-color-surface-container-highest);
    border-radius: 16px;
    /* Individual size classes handle left/right/radius */
}

.m3-slider__track-container[b-ndwriobwhy]::before,
.m3-slider__track-container[b-ndwriobwhy]::after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: var(--m3-sys-color-outline);
    z-index: 1;
}

.m3-slider__track-container[b-ndwriobwhy]::before {
    left: 4px;
}

.m3-slider__track-container[b-ndwriobwhy]::after {
    right: 4px;
}

.m3-slider__icon[b-ndwriobwhy] {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 6; /* Above inactive track */
}

.m3-slider__icon[b-ndwriobwhy]  .m3-icon {
    font-size: 20px;
    color: var(--m3-sys-color-on-surface-variant, #44474e);
}

.m3-slider__icon--leading[b-ndwriobwhy] {
    justify-content: flex-start;
    padding-left: 12px;
}

.m3-slider__icon--trailing[b-ndwriobwhy] {
    justify-content: flex-end;
    padding-right: 12px;
}

.m3-slider__icon--active[b-ndwriobwhy] {
    z-index: 10; /* Ensure it is above everything including the handle */
    /* Use mask-image to reveal the white icon layer exactly where the track fill is */
    -webkit-mask-image: linear-gradient(to right, black calc(var(--m3-slider-value-num) * 1%), transparent calc(var(--m3-slider-value-num) * 1%));
    mask-image: linear-gradient(to right, black calc(var(--m3-slider-value-num) * 1%), transparent calc(var(--m3-slider-value-num) * 1%));
    transition: -webkit-mask-image 0.25s cubic-bezier(0.4, 0, 0.2, 1), mask-image 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.m3-slider__icon--active[b-ndwriobwhy]  .m3-icon {
    color: var(--m3-sys-color-on-primary, #ffffff) !important;
    text-rendering: optimizeLegibility;
}

.m3-slider--centered .m3-slider__icon--active[b-ndwriobwhy] {
    /* Centered masking expands from center point to the current value */
    -webkit-mask-image: linear-gradient(to right, 
        transparent min(calc(var(--m3-slider-center-num) * 1%), calc(var(--m3-slider-value-num) * 1%)), 
        black min(calc(var(--m3-slider-center-num) * 1%), calc(var(--m3-slider-value-num) * 1%)), 
        black max(calc(var(--m3-slider-center-num) * 1%), calc(var(--m3-slider-value-num) * 1%)), 
        transparent max(calc(var(--m3-slider-center-num) * 1%), calc(var(--m3-slider-value-num) * 1%))
    );
    mask-image: linear-gradient(to right, 
        transparent min(calc(var(--m3-slider-center-num) * 1%), calc(var(--m3-slider-value-num) * 1%)), 
        black min(calc(var(--m3-slider-center-num) * 1%), calc(var(--m3-slider-value-num) * 1%)), 
        black max(calc(var(--m3-slider-center-num) * 1%), calc(var(--m3-slider-value-num) * 1%)), 
        transparent max(calc(var(--m3-slider-center-num) * 1%), calc(var(--m3-slider-value-num) * 1%))
    );
}

.m3-slider__track-active[b-ndwriobwhy] {
    position: absolute;
    top: 50%;
    height: 100%;
    transform: translateY(-50%);
    background: var(--m3-sys-color-primary, #6750A4) !important;
    z-index: 5 !important;
    /* Individual size classes handle left/width/radius */
    transition: left 0.25s cubic-bezier(0.4, 0, 0.2, 1), width 0.25s cubic-bezier(0.4, 0, 0.2, 1), clip-path 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Variant logic: */

.m3-slider--continuous .m3-slider__track-active[b-ndwriobwhy] {
    left: 0;
    width: calc((var(--m3-slider-value-num) * 1%) - 6px);
    border-radius: 16px 2px 2px 16px;
}

.m3-slider--continuous .m3-slider__track-inactive[b-ndwriobwhy] {
    left: calc((var(--m3-slider-value-num) * 1%) + 6px);
    right: 0;
    border-radius: 2px 16px 16px 2px;
}

.m3-slider--centered .m3-slider__track-active[b-ndwriobwhy] {
    left: 0 !important;
    width: 100% !important;
    clip-path: inset(
        0 
        calc(100% - max(var(--m3-slider-center-num) * 1%, (var(--m3-slider-value-num) * 1%) - 6px)) 
        0 
        calc(min(var(--m3-slider-center-num) * 1%, (var(--m3-slider-value-num) * 1%) + 6px)) 
        round 2px
    );
    border-radius: 16px;
}

.m3-slider--centered .m3-slider__track-inactive[b-ndwriobwhy] {
    left: 0;
    right: 0;
    width: 100%;
    border-radius: 16px;
    /* Create a gap for the handle in the inactive track */
    -webkit-mask-image: linear-gradient(to right, 
        black calc((var(--m3-slider-value-num) * 1%) - 6px), 
        transparent calc((var(--m3-slider-value-num) * 1%) - 6px), 
        transparent calc((var(--m3-slider-value-num) * 1%) + 6px), 
        black calc((var(--m3-slider-value-num) * 1%) + 6px)
    );
    mask-image: linear-gradient(to right, 
        black calc((var(--m3-slider-value-num) * 1%) - 6px), 
        transparent calc((var(--m3-slider-value-num) * 1%) - 6px), 
        transparent calc((var(--m3-slider-value-num) * 1%) + 6px), 
        black calc((var(--m3-slider-value-num) * 1%) + 6px)
    );
}


/* Native Input Styling Subversion */
.m3-slider__native-input[b-ndwriobwhy] {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    height: var(--m3-slider-handle-height);
    background: transparent;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    margin: 0;
    cursor: pointer;
    z-index: 2;
}

.m3-slider__native-input:focus[b-ndwriobwhy] {
    outline: none;
}

/* --- Webkit Thumb Styling (Vertical Bar) --- */
.m3-slider__native-input[b-ndwriobwhy]::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 4px; /* Thickness along the track */
    height: var(--m3-slider-handle-height); /* Length across the track */
    border-radius: 2px;
    background: var(--m3-sys-color-primary);
    transition: box-shadow 0.2s cubic-bezier(0.2, 0, 0, 1), transform 0.2s cubic-bezier(0.2, 0, 0, 1);
    box-shadow: 0 0 0 0 var(--m3-sys-color-primary);
    pointer-events: auto;
}

.m3-slider__native-input:hover[b-ndwriobwhy]::-webkit-slider-thumb {
    box-shadow: 0 0 0 10px color-mix(in srgb, var(--m3-sys-color-primary) 8%, transparent);
}

.m3-slider__native-input:active[b-ndwriobwhy]::-webkit-slider-thumb,
.m3-slider__native-input:focus[b-ndwriobwhy]::-webkit-slider-thumb {
    box-shadow: 0 0 0 10px color-mix(in srgb, var(--m3-sys-color-primary) 12%, transparent);
}

/* --- Value Label (Balloon) --- */
.m3-slider__value-label[b-ndwriobwhy] {
    position: absolute;
    bottom: calc(100% + 8px);
    left: calc(var(--m3-slider-value-num) * 1%);
    transform: translateX(-50%) scale(0);
    transform-origin: bottom center;
    background-color: var(--m3-sys-color-inverse-surface);
    color: var(--m3-sys-color-inverse-on-surface);
    padding: 4px 12px;
    border-radius: 16px;
    font-family: var(--m3-sys-typescale-label-medium-font);
    font-size: 12px;
    white-space: nowrap;
    pointer-events: none;
    z-index: 20;
    transition: transform 0.1s cubic-bezier(0, 0, 0.2, 1), left 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.m3-slider__native-input:hover ~ .m3-slider__value-label[b-ndwriobwhy],
.m3-slider__native-input:active ~ .m3-slider__value-label[b-ndwriobwhy],
.m3-slider__native-input:focus-visible ~ .m3-slider__value-label[b-ndwriobwhy] {
    transform: translateX(-50%) scale(1);
}

/* --- Predictive Hover Label --- */
.m3-slider__predictive-label[b-ndwriobwhy] {
    position: absolute;
    bottom: calc(100% + 8px);
    left: var(--m3-slider-hover-percent, 0);
    transform: translateX(-50%) scale(0);
    transform-origin: bottom center;
    background-color: var(--m3-sys-color-surface-container-high);
    color: var(--m3-sys-color-on-surface);
    border: 1px solid var(--m3-sys-color-outline-variant);
    padding: 2px 8px;
    border-radius: 8px;
    font-size: 11px;
    white-space: nowrap;
    pointer-events: none;
    z-index: 15;
    transition: transform 0.1s ease;
    opacity: 0.8;
}

.m3-slider:hover .m3-slider__predictive-label[b-ndwriobwhy] {
    transform: translateX(-50%) scale(1);
}

/* Hide predictive when actively dragging the real handle */
.m3-slider__native-input:active ~ .m3-slider__predictive-label[b-ndwriobwhy] {
    display: none;
}

.m3-slider__predictive-value[b-ndwriobwhy]::after {
    content: var(--m3-slider-hover-value, '0');
}



/* --- Firefox Thumb Styling --- */
.m3-slider__native-input[b-ndwriobwhy]::-moz-range-thumb {
    width: 4px;
    height: var(--m3-slider-handle-height);
    border-radius: 2px;
    background: var(--m3-sys-color-primary);
    border: none;
    transition: box-shadow 0.2s cubic-bezier(0.2, 0, 0, 1), transform 0.2s cubic-bezier(0.2, 0, 0, 1);
    box-shadow: 0 0 0 0 var(--m3-sys-color-primary);
    pointer-events: auto;
}

.m3-slider__native-input:hover[b-ndwriobwhy]::-moz-range-thumb {
    box-shadow: 0 0 0 10px color-mix(in srgb, var(--m3-sys-color-primary) 8%, transparent);
}

.m3-slider__native-input:active[b-ndwriobwhy]::-moz-range-thumb,
.m3-slider__native-input:focus[b-ndwriobwhy]::-moz-range-thumb {
    box-shadow: 0 0 0 10px color-mix(in srgb, var(--m3-sys-color-primary) 12%, transparent);
}

/* Disabled System Logic */
.m3-slider--disabled[b-ndwriobwhy] {
    cursor: default !important;
}

.m3-slider--disabled .m3-slider__native-input[b-ndwriobwhy] {
    cursor: default !important;
}

.m3-slider--disabled .m3-slider__track-inactive[b-ndwriobwhy] {
    background-color: var(--m3-sys-color-on-surface);
    opacity: 0.12;
}

.m3-slider--disabled .m3-slider__track-active[b-ndwriobwhy] {
    background-color: var(--m3-sys-color-on-surface);
    opacity: 0.38;
}

.m3-slider--disabled .m3-slider__native-input[b-ndwriobwhy]::-webkit-slider-thumb {
    background: var(--m3-sys-color-on-surface);
    opacity: 0.38;
    box-shadow: none !important;
    cursor: default !important;
}

.m3-slider--disabled .m3-slider__native-input[b-ndwriobwhy]::-moz-range-thumb {
    background: var(--m3-sys-color-on-surface);
    opacity: 0.38;
    box-shadow: none !important;
    cursor: default !important;
}

/* =========================================
   Range Slider Specifics (Dual Thumb)
========================================= */

/* The active track spans exclusively between the left constraint and the calculated width diff */
.m3-slider__track-range-active[b-ndwriobwhy] {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    height: 100%;
    background: var(--m3-sys-color-primary, #6750A4) !important;
    left: var(--m3-slider-start-percent);
    width: calc(var(--m3-slider-end-percent) - var(--m3-slider-start-percent));
    border-radius: 999px;
    z-index: 5 !important;
}

.m3-slider--range .m3-slider__track-container[b-ndwriobwhy] {
    mask-image: linear-gradient(to right,
            black calc(var(--m3-slider-start-percent) - 6px),
            transparent calc(var(--m3-slider-start-percent) - 6px),
            transparent calc(var(--m3-slider-start-percent) + 6px),
            black calc(var(--m3-slider-start-percent) + 6px),
            black calc(var(--m3-slider-end-percent) - 6px),
            transparent calc(var(--m3-slider-end-percent) - 6px),
            transparent calc(var(--m3-slider-end-percent) + 6px),
            black calc(var(--m3-slider-end-percent) + 6px));
    -webkit-mask-image: linear-gradient(to right,
            black calc(var(--m3-slider-start-percent) - 6px),
            transparent calc(var(--m3-slider-start-percent) - 6px),
            transparent calc(var(--m3-slider-start-percent) + 6px),
            black calc(var(--m3-slider-start-percent) + 6px),
            black calc(var(--m3-slider-end-percent) - 6px),
            transparent calc(var(--m3-slider-end-percent) - 6px),
            transparent calc(var(--m3-slider-end-percent) + 6px),
            black calc(var(--m3-slider-end-percent) + 6px));
}

.m3-slider--range .m3-slider__track-inactive[b-ndwriobwhy] {
    left: 0;
    right: 0;
}

/* Segmented Pill Design for Range Slider specifically */
.m3-slider__segment[b-ndwriobwhy] {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    height: 100%;
    border-radius: 999px;
    transition: left 0.1s ease, width 0.1s ease;
}

.m3-slider__segment--inactive[b-ndwriobwhy] {
    background-color: var(--m3-sys-color-surface-container-highest);
}

.m3-slider__segment--active[b-ndwriobwhy] {
    background: var(--m3-sys-color-primary, #6750A4) !important;
    z-index: 5 !important;
}

.m3-slider--range .m3-slider__native-input[b-ndwriobwhy] {
    pointer-events: none;
    /* Crucial: Makes the invisible track area click-through so the other input can be grabbed */
}

/* Restore drag events explicitly to the webkit/moz thumbs */
.m3-slider--range .m3-slider__native-input[b-ndwriobwhy]::-webkit-slider-thumb {
    pointer-events: auto;
}

.m3-slider--range .m3-slider__native-input[b-ndwriobwhy]::-moz-range-thumb {
    pointer-events: auto;
}

/* The secondary overlaid input needs to map exactly to the same bounds */
.m3-slider__native-input--top[b-ndwriobwhy] {
    z-index: 3;
    /* Forces it above the start input */
}
/* _content/Blazor.M3/Components/M3Switch.razor.rz.scp.css */
.m3-switch[b-eco9mf4skw] {
    position: relative;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    vertical-align: middle;
    -webkit-tap-highlight-color: transparent;
}

/* The native checkbox handles focus events, checked state tracking natively, and accessibility */
.m3-switch__native-input[b-eco9mf4skw] {
    appearance: none;
    -webkit-appearance: none;
    position: absolute;
    width: 52px;
    height: 32px;
    margin: 0;
    opacity: 0;
    cursor: pointer;
    z-index: 2;
    /* Needs to sit on top of the visual track to catch taps */
}

.m3-switch__track[b-eco9mf4skw] {
    position: relative;
    width: 52px;
    height: 32px;
    border-radius: 16px;
    /* Pill shape */
    box-sizing: border-box;
    transition: background-color 0.2s cubic-bezier(0.2, 0, 0, 1),
        border-color 0.2s cubic-bezier(0.2, 0, 0, 1);
    display: flex;
    align-items: center;
}

/* Base Track Colors (Unselected) */
.m3-switch--unselected .m3-switch__track[b-eco9mf4skw] {
    background-color: var(--m3-sys-color-surface-container-highest);
    border: 2px solid var(--m3-sys-color-outline);
}

/* Base Track Colors (Selected) */
.m3-switch--selected .m3-switch__track[b-eco9mf4skw] {
    background-color: var(--m3-sys-color-primary);
    border: 2px solid var(--m3-sys-color-primary);
    /* Ensures width stability by swapping color rather than removing border */
}

/* Thumb Container translates back and forth */
.m3-switch__thumb-container[b-eco9mf4skw] {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    /* Touch target cell */
    height: 32px;
    transition: transform 0.2s cubic-bezier(0.2, 0, 0, 1);
}

/* Off state sits tucked left */
.m3-switch--unselected .m3-switch__thumb-container[b-eco9mf4skw] {
    transform: translateX(0);
    /* 0 to 20px translation matches (52 track - 32 container) bounds */
}

/* On state translates strictly right */
.m3-switch--selected .m3-switch__thumb-container[b-eco9mf4skw] {
    transform: translateX(20px);
}

/* The actual physical thumb */
.m3-switch__thumb[b-eco9mf4skw] {
    position: absolute;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: width 0.2s cubic-bezier(0.2, 0, 0, 1),
        height 0.2s cubic-bezier(0.2, 0, 0, 1),
        background-color 0.2s cubic-bezier(0.2, 0, 0, 1);
    z-index: 1;
    /* Above State Layer */
}

/* Visual Base: Unselected Thumb */
.m3-switch--unselected .m3-switch__thumb[b-eco9mf4skw] {
    width: 16px;
    height: 16px;
    background-color: var(--m3-sys-color-outline);
}

/* Visual Base: Selected Thumb */
.m3-switch--selected .m3-switch__thumb[b-eco9mf4skw] {
    width: 24px;
    height: 24px;
    background-color: var(--m3-sys-color-on-primary);
}


/* --- Interaction Physics (Hover / Focus / Active) --- */

/* The state layer halo that surrounds the thumb */
.m3-switch__state-layer[b-eco9mf4skw] {
    position: absolute;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    opacity: 0;
    transition: background-color 0.2s cubic-bezier(0.2, 0, 0, 1),
        opacity 0.2s cubic-bezier(0.2, 0, 0, 1);
}

/* Hover Ring */
.m3-switch__native-input:hover~.m3-switch__track .m3-switch__state-layer[b-eco9mf4skw] {
    opacity: 0.08;
    /* MD3 standard hover opacity */
}

.m3-switch--unselected .m3-switch__native-input:hover~.m3-switch__track .m3-switch__state-layer[b-eco9mf4skw] {
    background-color: var(--m3-sys-color-on-surface);
}

.m3-switch--selected .m3-switch__native-input:hover~.m3-switch__track .m3-switch__state-layer[b-eco9mf4skw] {
    background-color: var(--m3-sys-color-primary);
}

/* Focus Ring */
.m3-switch__native-input:focus-visible~.m3-switch__track[b-eco9mf4skw] {
    outline: 2px solid var(--m3-sys-color-primary);
    outline-offset: 4px;
}

.m3-switch__native-input:focus-visible~.m3-switch__track .m3-switch__state-layer[b-eco9mf4skw] {
    opacity: 0.12;
}

/* Active Drag/Press Physics - The Thumb visibly bulges outwards and the ring intensifies */
.m3-switch__native-input:active~.m3-switch__track .m3-switch__thumb[b-eco9mf4skw] {
    width: 28px;
    height: 28px;
}

.m3-switch__native-input:active~.m3-switch__track .m3-switch__state-layer[b-eco9mf4skw] {
    opacity: 0.12;
    /* MD3 standard active opacity */
}


/* --- Optional SVG Icon Logic --- */

.m3-switch__icon[b-eco9mf4skw] {
    width: 16px;
    height: 16px;
    fill: currentColor;
    opacity: 0;
    transition: opacity 0.2s cubic-bezier(0.2, 0, 0, 1), width 0.2s, height 0.2s, fill 0.2s;
}

.m3-switch--unselected .m3-switch__icon--off[b-eco9mf4skw] {
    opacity: 1;
    fill: var(--m3-sys-color-surface-container-highest);
    /* Mapped against outline */
}

.m3-switch--selected .m3-switch__icon--on[b-eco9mf4skw] {
    opacity: 1;
    fill: var(--m3-sys-color-on-primary-container);
}


/* --- Disabled System Rules --- */

.m3-switch--disabled[b-eco9mf4skw] {
    cursor: default;
}

.m3-switch--disabled .m3-switch__native-input[b-eco9mf4skw] {
    cursor: default;
}

/* Disabled Off */
.m3-switch--disabled.m3-switch--unselected .m3-switch__track[b-eco9mf4skw] {
    border-color: color-mix(in srgb, var(--m3-sys-color-on-surface) 12%, transparent);
    background-color: transparent;
}

.m3-switch--disabled.m3-switch--unselected .m3-switch__thumb[b-eco9mf4skw] {
    background-color: color-mix(in srgb, var(--m3-sys-color-on-surface) 38%, transparent);
}

/* Disabled On */
.m3-switch--disabled.m3-switch--selected .m3-switch__track[b-eco9mf4skw] {
    background-color: color-mix(in srgb, var(--m3-sys-color-on-surface) 12%, transparent);
    border-color: transparent;
}

.m3-switch--disabled.m3-switch--selected .m3-switch__thumb[b-eco9mf4skw] {
    background-color: color-mix(in srgb, var(--m3-sys-color-surface) 100%, transparent);
    /* Opaque white/black surface thumb */
}

.m3-switch--disabled.m3-switch--selected .m3-switch__icon--on[b-eco9mf4skw] {
    fill: color-mix(in srgb, var(--m3-sys-color-on-surface) 38%, transparent);
}

.m3-switch--disabled .m3-switch__state-layer[b-eco9mf4skw] {
    display: none;
}
/* _content/Blazor.M3/Components/M3Tabs.razor.rz.scp.css */
/* MD3 TABS                                                                  */
/* ========================================================================= */

.m3-tabs[b-wndbhzn7am] {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.m3-tabs__header[b-wndbhzn7am] {
    display: flex;
    position: relative;
    border-bottom: 1px solid var(--m3-sys-color-surface-variant);
    overflow-x: auto;
    /* Enable horizontal scrolling if tabs exceed bounds */
    scrollbar-width: none;
    /* Hide scrollbar Firefox */
}

.m3-tabs__header[b-wndbhzn7am]::-webkit-scrollbar {
    display: none;
    /* Hide scrollbar WebKit */
}

/* ========================================================================= */
/* TAB BUTTON                                                                */
/* ========================================================================= */
.m3-tab-header__item[b-wndbhzn7am] {
    flex: 1;
    /* Expand equally */
    min-width: 90px;
    height: 48px;
    background: transparent;
    border: none;
    padding: 0 16px;
    cursor: pointer;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--m3-sys-color-on-surface-variant);
    transition: color 200ms cubic-bezier(0.2, 0, 0, 1);
}

.m3-tab-header__item:hover[b-wndbhzn7am] {
    background-color: rgba(var(--m3-sys-color-on-surface-variant-rgb), 0.08);
}

.m3-tab-header__item--selected[b-wndbhzn7am] {
    color: var(--m3-sys-color-primary);
}

.m3-tab-header__item:focus-visible[b-wndbhzn7am] {
    outline: 2px solid var(--m3-sys-color-primary);
    outline-offset: -2px;
}

/* ========================================================================= */
/* STACKING & ALIGNMENT (ICONS + TEXT)                                       */
/* ========================================================================= */
.m3-tab-header__item--stacked[b-wndbhzn7am] {
    height: 64px;
    /* MD3 specs require taller containers for stacked items */
}

.m3-tab-header__content[b-wndbhzn7am] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    /* Horizontal gap default */
}

.m3-tab-header__item--stacked .m3-tab-header__content[b-wndbhzn7am] {
    flex-direction: column;
    /* Vertically Centers Icon over Text natively! */
    gap: 4px;
}

.m3-tab-header__text[b-wndbhzn7am] {
    font-family: inherit;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0.1px;
}

.m3-tab-header__icon[b-wndbhzn7am] {
    font-size: 24px;
}

/* ========================================================================= */
/* ACTIVE INDICATORS                                                         */
/* ========================================================================= */
.m3-tab-header__indicator[b-wndbhzn7am] {
    position: absolute;
    bottom: 0px;
    left: 0;
    right: 0;
    height: 3px;
    background-color: var(--m3-sys-color-primary);
    animation: tabSlide-b-wndbhzn7am 250ms cubic-bezier(0.2, 0, 0, 1) forwards;
}

@keyframes tabSlide-b-wndbhzn7am {
    from {
        opacity: 0;
        transform: scaleX(0.5);
    }

    to {
        opacity: 1;
        transform: scaleX(1);
    }
}

/* Primary Indicator: Rounded pill anchored to the center */
.m3-tabs--primary .m3-tab-header__indicator[b-wndbhzn7am] {
    border-radius: 3px 3px 0 0;
    margin: 0 auto;
    width: 50%;
    /* MD3 primary indicator often shrinks relative to bounds */
    max-width: 60px;
}

/* Secondary Indicator: Full-width square baseline */
.m3-tabs--secondary .m3-tab-header__indicator[b-wndbhzn7am] {
    width: 100%;
    margin: 0;
    border-radius: 0;
}

/* ========================================================================= */
/* SLIDING INDICATORS (DYNAMIC TRANSITIONS)                                  */
/* ========================================================================= */
.m3-tab-header__indicator--sliding[b-wndbhzn7am] {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 3px;
    pointer-events: none;
    transform-origin: left;
    will-change: transform, width;
    transition: transform 250ms cubic-bezier(0.2, 0, 0, 1), width 250ms cubic-bezier(0.2, 0, 0, 1);
}

.m3-tab-header__indicator--sliding .m3-tab-header__indicator-inner[b-wndbhzn7am] {
    height: 100%;
    background-color: var(--m3-sys-color-primary);
}

/* Primary Sliding Indicator: Centered pill matching standard tab indicator */
.m3-tabs--primary .m3-tab-header__indicator--sliding .m3-tab-header__indicator-inner[b-wndbhzn7am] {
    border-radius: 3px 3px 0 0;
    margin: 0 auto;
    width: 50%;
    max-width: 60px;
}

/* Secondary Sliding Indicator: Full width */
.m3-tabs--secondary .m3-tab-header__indicator--sliding .m3-tab-header__indicator-inner[b-wndbhzn7am] {
    width: 100%;
    margin: 0;
    border-radius: 0;
}
/* _content/Blazor.M3/Components/M3TextField.razor.rz.scp.css */
.m3-text-field[b-sya3tf6rrc] {
    display: inline-flex;
    flex-direction: column;
    position: relative;
    width: 100%;
    min-width: 0;
    /* Standard MD3 defaults, can be overridden */
    font-family: var(--m3-sys-typescale-body-large-font);

    /* Sizing Variables */
    --m3-field-height: 56px;
    --m3-field-font-size: var(--m3-sys-typescale-body-large-size);
    --m3-field-line-height: var(--m3-sys-typescale-body-large-line-height);
    --m3-field-padding-top: 24px;
    --m3-field-padding-bottom: 8px;
    --m3-field-padding-horizontal: 16px;
    --m3-field-label-float-y: -120%;
    --m3-field-label-float-scale: 0.75;
    --m3-field-icon-size: 48px;
}

.m3-size-small.m3-text-field[b-sya3tf6rrc] {
    --m3-field-height: 40px;
    --m3-field-font-size: var(--m3-sys-typescale-body-medium-size);
    --m3-field-line-height: var(--m3-sys-typescale-body-medium-line-height);
    --m3-field-padding-top: 18px;
    --m3-field-padding-bottom: 4px;
    --m3-field-padding-horizontal: 12px;
    --m3-field-label-float-y: -110%;
    --m3-field-icon-size: 32px;
}

.m3-text-field__content[b-sya3tf6rrc] {
    display: flex;
    position: relative;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    height: var(--m3-field-height);
    min-height: var(--m3-field-height);
    border-radius: 4px 4px 0 0;
}

.m3-text-field--multiline .m3-text-field__content[b-sya3tf6rrc] {
    height: auto;
}

/* Base Input Layout */
.m3-text-field__input[b-sya3tf6rrc] {
    flex: 1;
    width: 100%;
    min-width: 0;
    height: 100%;
    margin: 0;
    padding: var(--m3-field-padding-top) var(--m3-field-padding-horizontal) var(--m3-field-padding-bottom) var(--m3-field-padding-horizontal);
    /* Space for the floating label */
    background: transparent;
    border: none;
    outline: none;
    box-sizing: border-box;
    font-family: inherit;
    font-size: var(--m3-field-font-size);
    font-weight: var(--m3-sys-typescale-body-large-weight);
    line-height: var(--m3-field-line-height);
    color: var(--m3-sys-color-on-surface);
}

/* Autofill styles override browser default yellow backgrounds */
.m3-text-field__input:autofill[b-sya3tf6rrc],
.m3-text-field__input:-webkit-autofill[b-sya3tf6rrc] {
    -webkit-text-fill-color: var(--m3-sys-color-on-surface) !important;
    transition: background-color 50000s ease-in-out 0s;
}

.m3-text-field--filled .m3-text-field__input:autofill[b-sya3tf6rrc],
.m3-text-field--filled .m3-text-field__input:-webkit-autofill[b-sya3tf6rrc] {
    box-shadow: 0 0 0 100vmax var(--m3-sys-color-surface-container-highest) inset !important;
}

.m3-text-field--outlined .m3-text-field__input:autofill[b-sya3tf6rrc],
.m3-text-field--outlined .m3-text-field__input:-webkit-autofill[b-sya3tf6rrc] {
    box-shadow: 0 0 0 100vmax var(--m3-sys-color-surface) inset !important;
}

.m3-text-field--multiline .m3-text-field__input[b-sya3tf6rrc] {
    resize: vertical;
}

.m3-text-field__input-container[b-sya3tf6rrc] {
    flex: 1;
    display: flex;
    position: relative;
    height: 100%;
    align-items: center;
}

/* Floating Label Animation */
.m3-text-field__label[b-sya3tf6rrc] {
    position: absolute;
    left: var(--m3-field-padding-horizontal);
    top: calc(var(--m3-field-height) / 2);
    transform: translateY(-50%);
    transform-origin: left top;
    transition: transform 150ms cubic-bezier(0.2, 0, 0, 1), color 150ms cubic-bezier(0.2, 0, 0, 1);
    color: var(--m3-sys-color-on-surface-variant);
    font-size: var(--m3-field-font-size);
    pointer-events: none;
    will-change: transform, max-width;
    white-space: nowrap;
    text-overflow: ellipsis;
    /* When resting, standard padding dictates max width */
    max-width: calc(100% - (var(--m3-field-padding-horizontal) * 2));
    overflow: hidden;
    z-index: 2;
}

/* Populated or Focused State Trigger - shrink and float the label */
.m3-text-field--focused .m3-text-field__label[b-sya3tf6rrc],
.m3-text-field--populated .m3-text-field__label[b-sya3tf6rrc],
.m3-text-field:has(.m3-text-field__input:autofill) .m3-text-field__label[b-sya3tf6rrc],
.m3-text-field:has(.m3-text-field__input:-webkit-autofill) .m3-text-field__label[b-sya3tf6rrc] {
    transform: translateY(var(--m3-field-label-float-y)) scale(var(--m3-field-label-float-scale));
    /* Increase relative max-width because the element visually shrinks by scale */
    max-width: calc((100% - (var(--m3-field-padding-horizontal) * 2)) / var(--m3-field-label-float-scale));
}

.m3-text-field--focused .m3-text-field__label[b-sya3tf6rrc] {
    color: var(--m3-sys-color-primary);
}

/* ========================================================================= */
/* VARIANT: FILLED */
/* ========================================================================= */
.m3-text-field--filled .m3-text-field__background[b-sya3tf6rrc] {
    position: absolute;
    inset: 0;
    background-color: var(--m3-sys-color-surface-container-highest);
    border-radius: 4px 4px 0 0;
    pointer-events: none;
}

.m3-text-field--filled .m3-text-field__active-indicator[b-sya3tf6rrc] {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background-color: var(--m3-sys-color-on-surface-variant);
    transition: height 150ms cubic-bezier(0.2, 0, 0, 1), background-color 150ms cubic-bezier(0.2, 0, 0, 1);
    pointer-events: none;
    z-index: 1;
}

/* Filled Focus State */
.m3-text-field--filled.m3-text-field--focused .m3-text-field__active-indicator[b-sya3tf6rrc] {
    height: 2px;
    background-color: var(--m3-sys-color-primary);
}

/* Filled Hover State */
.m3-text-field--filled:hover .m3-text-field__active-indicator[b-sya3tf6rrc] {
    background-color: var(--m3-sys-color-on-surface);
    height: 1px;
}

.m3-text-field--filled.m3-text-field--focused:hover .m3-text-field__active-indicator[b-sya3tf6rrc] {
    height: 2px;
}


/* ========================================================================= */
/* VARIANT: OUTLINED */
/* ========================================================================= */
.m3-text-field--outlined .m3-text-field__content[b-sya3tf6rrc] {
    border-radius: 4px;
}

/* Remap padding so outline text sits centered initially */
.m3-text-field--outlined .m3-text-field__input[b-sya3tf6rrc] {
    padding: var(--m3-field-padding-horizontal);
}

.m3-text-field__outline[b-sya3tf6rrc] {
    position: absolute;
    inset: 0;
    display: flex;
    pointer-events: none;
    height: 100%;
    z-index: 1;
}

.m3-text-field__outline>div[b-sya3tf6rrc] {
    border-color: var(--m3-sys-color-outline);
    border-style: solid;
    transition: border-color 150ms cubic-bezier(0.2, 0, 0, 1), border-width 150ms cubic-bezier(0.2, 0, 0, 1);
}

.m3-text-field__outline-leading[b-sya3tf6rrc] {
    border-width: 1px 0 1px 1px;
    border-radius: 4px 0 0 4px;
    width: 12px;
}

.m3-text-field__outline-notch[b-sya3tf6rrc] {
    flex: 0 0 auto;
    border-width: 1px 0 1px 0;
    padding: 0 4px;
    position: relative;
    max-width: calc(100% - 24px);
    display: flex;
    align-items: center;
    /* Center the static label vertically */
}

.m3-text-field__outline-trailing[b-sya3tf6rrc] {
    flex: 1;
    border-width: 1px 1px 1px 0;
    border-radius: 0 4px 4px 0;
}

/* Outlined Label Specific Positioning */
.m3-text-field--outlined .m3-text-field__label[b-sya3tf6rrc] {
    position: static;
    max-width: 100%;
    transform: translateY(0) scale(1);
}

.m3-text-field--outlined.m3-text-field--focused .m3-text-field__label[b-sya3tf6rrc],
.m3-text-field--outlined.m3-text-field--populated .m3-text-field__label[b-sya3tf6rrc],
.m3-text-field--outlined:has(.m3-text-field__input:autofill) .m3-text-field__label[b-sya3tf6rrc],
.m3-text-field--outlined:has(.m3-text-field__input:-webkit-autofill) .m3-text-field__label[b-sya3tf6rrc] {
    /* Translates the centered label exactly into the top border line */
    transform: translateY(calc(var(--m3-field-height) / -2)) scale(var(--m3-field-label-float-scale));
}

/* Notch cut out logic */
.m3-text-field--outlined.m3-text-field--focused .m3-text-field__outline-notch[b-sya3tf6rrc],
.m3-text-field--outlined.m3-text-field--populated .m3-text-field__outline-notch[b-sya3tf6rrc],
.m3-text-field--outlined:has(.m3-text-field__input:autofill) .m3-text-field__outline-notch[b-sya3tf6rrc],
.m3-text-field--outlined:has(.m3-text-field__input:-webkit-autofill) .m3-text-field__outline-notch[b-sya3tf6rrc] {
    /* Drop the top border width to 0px so the label 'fits' inside the gap */
    border-top-width: 0;
}

/* Outlined Hover State */
.m3-text-field--outlined:hover .m3-text-field__outline>div[b-sya3tf6rrc] {
    border-color: var(--m3-sys-color-on-surface);
}

/* Outlined Focused State */
.m3-text-field--outlined.m3-text-field--focused .m3-text-field__outline>div[b-sya3tf6rrc] {
    border-color: var(--m3-sys-color-primary);
}

.m3-text-field--outlined.m3-text-field--focused .m3-text-field__outline-leading[b-sya3tf6rrc] {
    border-width: 2px 0 2px 2px;
}

/* Re-cut the notch when focused */
.m3-text-field--outlined.m3-text-field--focused .m3-text-field__outline-notch[b-sya3tf6rrc] {
    border-width: 0 0 2px 0;
}

.m3-text-field--outlined.m3-text-field--focused .m3-text-field__outline-trailing[b-sya3tf6rrc] {
    border-width: 2px 2px 2px 0;
}


/* ========================================================================= */
/* ICONS */
/* ========================================================================= */
.m3-text-field__icon[b-sya3tf6rrc] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--m3-field-icon-size);
    height: var(--m3-field-icon-size);
    color: var(--m3-sys-color-on-surface-variant);
    /* Shrink the SVGs slightly to match 24dp internal standard */
    fill: currentColor;
}

.m3-text-field__icon svg[b-sya3tf6rrc],
.m3-text-field__icon .material-symbols-rounded[b-sya3tf6rrc] {
    width: 24px;
    height: 24px;
    font-size: 24px;
    /* Enforce alignment of font-based rects matching the flexbox spacing */
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Shift input padding when icons are present */
.m3-text-field--with-leading-icon .m3-text-field__input[b-sya3tf6rrc] {
    padding-left: 0px;
}

.m3-text-field--filled.m3-text-field--with-leading-icon .m3-text-field__label[b-sya3tf6rrc] {
    left: 0px;
}

.m3-text-field--outlined.m3-text-field--with-leading-icon .m3-text-field__outline-leading[b-sya3tf6rrc] {
    width: calc(var(--m3-field-icon-size) - 4px);
    /* Icon width - Notch padding (4px) */
}

.m3-text-field--with-trailing-icon .m3-text-field__input[b-sya3tf6rrc] {
    padding-right: 0px;
}


/* ========================================================================= */
/* ERROR STATE OVERRIDES */
/* ========================================================================= */
.m3-text-field--error .m3-text-field__active-indicator[b-sya3tf6rrc] {
    background-color: var(--m3-sys-color-error) !important;
}

.m3-text-field--error .m3-text-field__label[b-sya3tf6rrc] {
    color: var(--m3-sys-color-error) !important;
}

.m3-text-field--error .m3-text-field__outline>div[b-sya3tf6rrc] {
    border-color: var(--m3-sys-color-error) !important;
}

.m3-text-field--error .m3-text-field__icon--trailing[b-sya3tf6rrc] {
    color: var(--m3-sys-color-error) !important;
}

/* ========================================================================= */
/* SUPPORTING TEXT */
/* ========================================================================= */
.m3-text-field__supporting-text[b-sya3tf6rrc] {
    font-size: var(--m3-sys-typescale-body-small-size);
    font-family: var(--m3-sys-typescale-body-small-font);
    line-height: var(--m3-sys-typescale-body-small-line-height);
    color: var(--m3-sys-color-on-surface-variant);
    padding: 4px 16px 0 16px;
    margin: 0;
}

.m3-text-field__supporting-text--error[b-sya3tf6rrc] {
    color: var(--m3-sys-color-error);
}

/* ========================================================================= */
/* DISABLED STATE */
/* ========================================================================= */
.m3-text-field--disabled[b-sya3tf6rrc] {
    pointer-events: none;
    opacity: 0.38;
    /* Standard MD3 disabled opacity */
}

/* Fix for multiline floating label */
.m3-text-field--multiline .m3-text-field__outline-notch[b-sya3tf6rrc] {
    align-items: flex-start;
}

.m3-text-field--outlined.m3-text-field--multiline .m3-text-field__label[b-sya3tf6rrc] {
    transform: translateY(calc((var(--m3-field-height) - var(--m3-field-font-size)) / 2)) translateY(-50%);
}

.m3-text-field--outlined.m3-text-field--multiline.m3-text-field--focused .m3-text-field__label[b-sya3tf6rrc],
.m3-text-field--outlined.m3-text-field--multiline.m3-text-field--populated .m3-text-field__label[b-sya3tf6rrc] {
    transform: translateY(0) translateY(-50%) scale(var(--m3-field-label-float-scale));
}
/* _content/Blazor.M3/Components/M3Toolbar.razor.rz.scp.css */
.m3-toolbar[b-r63wnlotnn] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 16px;
    height: 64px;
    box-sizing: border-box;
    position: relative;
    z-index: 15;
}

.m3-toolbar__title[b-r63wnlotnn] {
    color: var(--m3-sys-color-on-surface);
    font-family: var(--m3-sys-typescale-title-large-font-family);
    font-size: var(--m3-sys-typescale-title-large-size);
    font-weight: var(--m3-sys-typescale-title-large-weight);
    line-height: var(--m3-sys-typescale-title-large-line-height);
    letter-spacing: var(--m3-sys-typescale-title-large-tracking);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex-grow: 1;
}

.m3-toolbar__actions[b-r63wnlotnn] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}
/* _content/Blazor.M3/Components/M3Tooltip.razor.rz.scp.css */
/* MD3 TOOLTIP                                                             */
/* ========================================================================= */

.m3-tooltip-wrapper[b-zynnv5hau6] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    /* Needs to not clip the absolute tooltip */
}

.m3-tooltip-wrapper.m3-navigation-drawer-item__tooltip-wrapper[b-zynnv5hau6] {
    width: 100%;
    display: flex;
}


.m3-tooltip[b-zynnv5hau6] {
    position: absolute;
    z-index: 7000;

    /* Animation base */
    opacity: 0;
    pointer-events: none;
    /* Ignore clicks while animating away */
    transition: opacity 150ms linear, transform 150ms cubic-bezier(0.2, 0, 0, 1);
}

.m3-tooltip--bottom[b-zynnv5hau6] {
    top: calc(100% + 4px);
    left: 50%;
    transform: translateX(-50%) scale(0.9);
    transform-origin: top center;
}

.m3-tooltip--bottom.m3-tooltip--open[b-zynnv5hau6] {
    transform: translateX(-50%) scale(1);
    opacity: 1;
    pointer-events: auto;
}

.m3-tooltip--top[b-zynnv5hau6] {
    bottom: calc(100% + 4px);
    left: 50%;
    transform: translateX(-50%) scale(0.9);
    transform-origin: bottom center;
}

.m3-tooltip--top.m3-tooltip--open[b-zynnv5hau6] {
    transform: translateX(-50%) scale(1);
    opacity: 1;
    pointer-events: auto;
}

.m3-tooltip--left[b-zynnv5hau6] {
    right: calc(100% + 4px);
    top: 50%;
    transform: translateY(-50%) scale(0.9);
    transform-origin: right center;
}

.m3-tooltip--left.m3-tooltip--open[b-zynnv5hau6] {
    transform: translateY(-50%) scale(1);
    opacity: 1;
    pointer-events: auto;
}

.m3-tooltip--right[b-zynnv5hau6] {
    left: calc(100% + 4px);
    top: 50%;
    transform: translateY(-50%) scale(0.9);
    transform-origin: left center;
}

.m3-tooltip--right.m3-tooltip--open[b-zynnv5hau6] {
    transform: translateY(-50%) scale(1);
    opacity: 1;
    pointer-events: auto;
}

/* ========================================================================= */
/* PLAIN TOOLTIP                                                             */
/* ========================================================================= */
.m3-tooltip.m3-tooltip--plain[b-zynnv5hau6] {
    background-color: var(--m3-sys-color-inverse-surface, #313033);
    color: var(--m3-sys-color-inverse-on-surface, #F4EFF4);

    border-radius: 4px;
    padding: 4px 12px;
    min-height: 24px;
    width: max-content;
    max-width: 240px;

    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;

    font-family: inherit;
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;

    /* Plain tooltips have 0 elevation in MD3 by default, but rely on contrast */
}

/* ========================================================================= */
/* RICH TOOLTIP                                                              */
/* ========================================================================= */
.m3-tooltip.m3-tooltip--rich[b-zynnv5hau6] {
    background-color: var(--m3-tooltip-bg, var(--m3-sys-color-surface-container));
    color: var(--m3-tooltip-color, var(--m3-sys-color-on-surface));

    border-radius: 12px;
    /* Medium shape */
    padding: 12px 16px;
    min-height: 48px;
    width: max-content;
    max-width: 312px;

    display: flex;
    flex-direction: column;
    gap: 4px;

    /* Rich tooltips have elevation 2 */
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 1px 3px 1px rgba(0, 0, 0, 0.15);
}

.m3-tooltip__subhead[b-zynnv5hau6] {
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    color: var(--m3-sys-color-on-surface);
}

.m3-tooltip__description[b-zynnv5hau6] {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--m3-sys-color-on-surface-variant);
}

.m3-tooltip__action[b-zynnv5hau6] {
    display: flex;
    justify-content: flex-end;
    margin-top: 4px;
    /* Space between description text and action button */
}
/* _content/Blazor.M3/Components/M3TopAppBar.razor.rz.scp.css */
.m3-top-app-bar[b-0z66jw0d0n] {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    box-sizing: border-box;
    width: 100%;
    background-color: var(--m3-sys-color-surface);
    color: var(--m3-sys-color-on-surface);
    transition: background-color 250ms cubic-bezier(0.2, 0, 0, 1);
}

.m3-top-app-bar--fixed[b-0z66jw0d0n] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
}

.m3-top-app-bar__container[b-0z66jw0d0n] {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    height: 64px;
    /* Default height for small and center-aligned */
    padding: 8px 16px;
    /* standard padding */
}

.m3-top-app-bar__navigation-icon[b-0z66jw0d0n] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    margin-inline-end: 24px;
    color: var(--m3-sys-color-on-surface);
}

.m3-top-app-bar__headline[b-0z66jw0d0n] {
    flex: 0 1 auto;
    /* Allow to shrink but don't force to grow */
    min-width: 0;
    font-family: var(--m3-sys-typescale-font-family);
    font-size: 22px;
    /* Title Large */
    font-weight: 400;
    line-height: 28px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-inline-end: 16px;
}

.m3-top-app-bar__headline--custom[b-0z66jw0d0n] {
    flex: 1;
    overflow: visible;
    display: flex;
    align-items: center;
}

.m3-top-app-bar__action-items[b-0z66jw0d0n] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 16px;
    /* spacing between action icons */
    overflow: visible;
    white-space: nowrap;
    min-width: 0;
    flex: 1 1 auto;
    -ms-overflow-style: none;
    /* IE and Edge */
    scrollbar-width: none;
    /* Firefox */
}

.m3-top-app-bar__action-items[b-0z66jw0d0n]::-webkit-scrollbar {
    display: none;
    /* Hide scrollbar for Chrome, Safari and Opera */
}

/* Variant Overrides */

/* Small - Default is mostly fine. */
.m3-top-app-bar--small .m3-top-app-bar__container[b-0z66jw0d0n] {
    height: 64px;
}

/* Center-Aligned */
.m3-top-app-bar--center-aligned .m3-top-app-bar__container[b-0z66jw0d0n] {
    height: 64px;
    position: relative;
    justify-content: space-between;
}

.m3-top-app-bar--center-aligned .m3-top-app-bar__headline[b-0z66jw0d0n] {
    flex: none;
    /* remove flex: 1 */
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    width: auto;
}

/* Medium */
.m3-top-app-bar--medium[b-0z66jw0d0n] {
    min-height: 112px;
    display: flex;
    flex-direction: column;
}

.m3-top-app-bar--medium .m3-top-app-bar__container[b-0z66jw0d0n] {
    height: 64px;
}

.m3-top-app-bar--medium .m3-top-app-bar__lower-headline[b-0z66jw0d0n] {
    font-size: 28px;
    line-height: 36px;
}

/* Large */
.m3-top-app-bar--large[b-0z66jw0d0n] {
    min-height: 152px;
    display: flex;
    flex-direction: column;
}

.m3-top-app-bar--large .m3-top-app-bar__container[b-0z66jw0d0n] {
    height: 64px;
}

.m3-top-app-bar--large .m3-top-app-bar__lower-headline[b-0z66jw0d0n] {
    font-size: 36px;
    line-height: 44px;
}

/* Lower Container and Flexible layouts */
.m3-top-app-bar__lower-container[b-0z66jw0d0n] {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 12px 16px 16px 16px;
    flex: 1;
    overflow: hidden;
}

.m3-top-app-bar__background[b-0z66jw0d0n] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    pointer-events: none;
}

.m3-top-app-bar__headline-group[b-0z66jw0d0n] {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.m3-top-app-bar__lower-headline[b-0z66jw0d0n] {
    font-family: var(--m3-sys-typescale-font-family);
    font-weight: 400;
    box-sizing: border-box;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    color: var(--m3-sys-color-on-surface);
}

/* Headline Container with Subtitle for Small variants */
.m3-top-app-bar__headline-container[b-0z66jw0d0n] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1;
    min-width: 0;
}

.m3-top-app-bar__subtitle[b-0z66jw0d0n] {
    font-family: var(--m3-sys-typescale-font-family);
    font-size: 13px;
    font-weight: 400;
    line-height: 18px;
    color: var(--m3-sys-color-on-surface-variant);
    opacity: 0.85;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


.m3-top-app-bar__headline--collapsed[b-0z66jw0d0n] {
    flex: 1;
    /* Space filler */
}

/* Search App Bar Styling */
.m3-top-app-bar__search-container[b-0z66jw0d0n] {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 100%;
    height: 64px;
    padding: 8px 16px;
    background-color: var(--m3-sys-color-surface);
    border-bottom: 1px solid var(--m3-sys-color-outline-variant);
}

.m3-top-app-bar__search-pill[b-0z66jw0d0n] {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    width: 100%;
    max-width: 720px;
    height: 48px;
    padding: 0 8px;
    background-color: var(--m3-sys-color-surface-container-high);
    border: none;
    outline: none;
    border-radius: 24px; /* Circle borders on left and right side */
    gap: 8px;
    transition: background-color 0.2s ease;
}

.m3-top-app-bar__search-pill:focus-within[b-0z66jw0d0n] {
    background-color: var(--m3-sys-color-surface-container-highest);
}

.m3-top-app-bar__search-input[b-0z66jw0d0n] {
    flex: 1;
    border: none;
    outline: none;
    background: transparent;
    font-family: var(--m3-sys-typescale-font-family);
    font-size: 16px;
    color: var(--m3-sys-color-on-surface);
    height: 100%;
}

.m3-top-app-bar__search-input[b-0z66jw0d0n]::placeholder {
    color: var(--m3-sys-color-on-surface-variant);
    opacity: 0.7;
}

.m3-top-app-bar--search[b-0z66jw0d0n] {
    transition: background-color 0.2s ease;
}

.animate-search-fade-in[b-0z66jw0d0n] {
    animation: searchFadeIn-b-0z66jw0d0n 0.2s cubic-bezier(0.2, 0, 0, 1) forwards;
}

@keyframes searchFadeIn-b-0z66jw0d0n {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
/* _content/Blazor.M3/Components/M3Typography.razor.rz.scp.css */
.m3-typography[b-th6ctjzol2] {
    margin: 0;
    padding: 0;
}

.m3-typescale-display-large[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-display-large-weight) var(--m3-sys-typescale-display-large-size)/var(--m3-sys-typescale-display-large-line-height) var(--m3-sys-typescale-display-large-font-family);
    letter-spacing: var(--m3-sys-typescale-display-large-tracking);
}

.m3-typescale-display-medium[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-display-medium-weight) var(--m3-sys-typescale-display-medium-size)/var(--m3-sys-typescale-display-medium-line-height) var(--m3-sys-typescale-display-medium-font-family);
    letter-spacing: var(--m3-sys-typescale-display-medium-tracking);
}

.m3-typescale-display-small[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-display-small-weight) var(--m3-sys-typescale-display-small-size)/var(--m3-sys-typescale-display-small-line-height) var(--m3-sys-typescale-display-small-font-family);
    letter-spacing: var(--m3-sys-typescale-display-small-tracking);
}

.m3-typescale-headline-large[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-headline-large-weight) var(--m3-sys-typescale-headline-large-size)/var(--m3-sys-typescale-headline-large-line-height) var(--m3-sys-typescale-headline-large-font-family);
    letter-spacing: var(--m3-sys-typescale-headline-large-tracking);
}

.m3-typescale-headline-medium[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-headline-medium-weight) var(--m3-sys-typescale-headline-medium-size)/var(--m3-sys-typescale-headline-medium-line-height) var(--m3-sys-typescale-headline-medium-font-family);
    letter-spacing: var(--m3-sys-typescale-headline-medium-tracking);
}

.m3-typescale-headline-small[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-headline-small-weight) var(--m3-sys-typescale-headline-small-size)/var(--m3-sys-typescale-headline-small-line-height) var(--m3-sys-typescale-headline-small-font-family);
    letter-spacing: var(--m3-sys-typescale-headline-small-tracking);
}

.m3-typescale-title-large[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-title-large-weight) var(--m3-sys-typescale-title-large-size)/var(--m3-sys-typescale-title-large-line-height) var(--m3-sys-typescale-title-large-font-family);
    letter-spacing: var(--m3-sys-typescale-title-large-tracking);
}

.m3-typescale-title-medium[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-title-medium-weight) var(--m3-sys-typescale-title-medium-size)/var(--m3-sys-typescale-title-medium-line-height) var(--m3-sys-typescale-title-medium-font-family);
    letter-spacing: var(--m3-sys-typescale-title-medium-tracking);
}

.m3-typescale-title-small[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-title-small-weight) var(--m3-sys-typescale-title-small-size)/var(--m3-sys-typescale-title-small-line-height) var(--m3-sys-typescale-title-small-font-family);
    letter-spacing: var(--m3-sys-typescale-title-small-tracking);
}

.m3-typescale-body-large[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-body-large-weight) var(--m3-sys-typescale-body-large-size)/var(--m3-sys-typescale-body-large-line-height) var(--m3-sys-typescale-body-large-font-family);
    letter-spacing: var(--m3-sys-typescale-body-large-tracking);
}

.m3-typescale-body-medium[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-body-medium-weight) var(--m3-sys-typescale-body-medium-size)/var(--m3-sys-typescale-body-medium-line-height) var(--m3-sys-typescale-body-medium-font-family);
    letter-spacing: var(--m3-sys-typescale-body-medium-tracking);
}

.m3-typescale-body-small[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-body-small-weight) var(--m3-sys-typescale-body-small-size)/var(--m3-sys-typescale-body-small-line-height) var(--m3-sys-typescale-body-small-font-family);
    letter-spacing: var(--m3-sys-typescale-body-small-tracking);
}

.m3-typescale-label-large[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-label-large-weight) var(--m3-sys-typescale-label-large-size)/var(--m3-sys-typescale-label-large-line-height) var(--m3-sys-typescale-label-large-font-family);
    letter-spacing: var(--m3-sys-typescale-label-large-tracking);
}

.m3-typescale-label-medium[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-label-medium-weight) var(--m3-sys-typescale-label-medium-size)/var(--m3-sys-typescale-label-medium-line-height) var(--m3-sys-typescale-label-medium-font-family);
    letter-spacing: var(--m3-sys-typescale-label-medium-tracking);
}

.m3-typescale-label-small[b-th6ctjzol2] {
    font: var(--m3-sys-typescale-label-small-weight) var(--m3-sys-typescale-label-small-size)/var(--m3-sys-typescale-label-small-line-height) var(--m3-sys-typescale-label-small-font-family);
    letter-spacing: var(--m3-sys-typescale-label-small-tracking);
}
