@import '_content/Microsoft.AspNetCore.Components.QuickGrid/Microsoft.AspNetCore.Components.QuickGrid.boiwgh0w5b.bundle.scp.css';

/* /Components/Layout/AdminLayout.razor.rz.scp.css */
.page[b-c0hi9exd4j] {
    display: flex;
    min-height: 100vh;
}

main[b-c0hi9exd4j] {
    flex: 1;
    min-width: 0;
}

.sidebar[b-c0hi9exd4j] {
    display: flex;
    flex-direction: column;
    background-color: var(--tm-surface);
}

.top-row[b-c0hi9exd4j] {
    position: sticky;
    top: 0;
    z-index: 10;
    display: flex;
    align-items: center;
    gap: .75rem;
    height: 3.75rem;
    border-bottom: 1px solid var(--bs-border-color);
    /* Translucent bar: the content scrolls under it, blurred */
    background-color: rgba(var(--bs-body-bg-rgb), .8);
    backdrop-filter: blur(10px);
}

.top-row-actions[b-c0hi9exd4j] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-left: auto;
}

@media (max-width: 575.98px) {
    .top-row-actions[b-c0hi9exd4j] {
        gap: .5rem;
    }
}

.nav-open-btn[b-c0hi9exd4j] {
    display: inline-grid;
    place-items: center;
    width: 2.25rem;
    height: 2.25rem;
    margin-left: -.375rem;
    border: 0;
    border-radius: .5rem;
    background: transparent;
    color: var(--bs-secondary-color);
    font-size: 1.1rem;
    cursor: pointer;
    transition: background-color var(--tm-dur) var(--tm-ease), color var(--tm-dur) var(--tm-ease);
}

    .nav-open-btn:hover[b-c0hi9exd4j] {
        background-color: var(--tm-surface-2);
        color: var(--bs-emphasis-color);
    }

/* Smartphones and tablets: the sidebar is a drawer over the page, with a dark backdrop */
@media (max-width: 991.98px) {
    .sidebar[b-c0hi9exd4j] {
        position: fixed;
        inset: 0 auto 0 0;
        z-index: 1045;
        width: min(280px, 85vw);
        border-right: 1px solid var(--bs-border-color);
        box-shadow: var(--tm-shadow-lg);
        transform: translateX(-100%);
        /* Closed: off screen and out of the tab order; visibility changes at the end of the animation */
        visibility: hidden;
        transition: transform var(--tm-dur-slow) var(--tm-ease), visibility 0s linear var(--tm-dur-slow);
    }

    .sidebar-backdrop[b-c0hi9exd4j] {
        position: fixed;
        inset: 0;
        z-index: 1040;
        background-color: rgba(0, 0, 0, .5);
        opacity: 0;
        visibility: hidden;
        transition: opacity var(--tm-dur-slow) var(--tm-ease), visibility 0s linear var(--tm-dur-slow);
    }

    /* Class set on <html> by layout.js */
    .tm-nav-open .sidebar[b-c0hi9exd4j],
    .tm-nav-open .sidebar-backdrop[b-c0hi9exd4j] {
        visibility: visible;
        transition-delay: 0s;
    }

    .tm-nav-open .sidebar[b-c0hi9exd4j] {
        transform: none;
    }

    .tm-nav-open .sidebar-backdrop[b-c0hi9exd4j] {
        opacity: 1;
    }
}

@media (max-width: 480px) {
    .top-row[b-c0hi9exd4j], article[b-c0hi9exd4j] {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
}

/* Desktop: sidebar fixed on the left, wide or reduced to icons (data-tm-sidebar on <html>, from the tm-sidebar cookie) */
@media (min-width: 992px) {
    .sidebar[b-c0hi9exd4j] {
        position: sticky;
        top: 0;
        z-index: 20;
        flex-shrink: 0;
        width: 260px;
        height: 100vh;
        border-right: 1px solid var(--bs-border-color);
        transition: width var(--tm-dur-slow) var(--tm-ease);
    }

    [data-tm-sidebar=collapsed] .sidebar[b-c0hi9exd4j] {
        width: 4.5rem;
    }

    .sidebar-backdrop[b-c0hi9exd4j],
    .nav-open-btn[b-c0hi9exd4j],
    .top-row-brand[b-c0hi9exd4j] {
        display: none;
    }

    .top-row[b-c0hi9exd4j], article[b-c0hi9exd4j] {
        padding-left: 2rem !important;
        padding-right: 2rem !important;
    }
}
/* /Components/Layout/AuthLayout.razor.rz.scp.css */
.auth[b-w1vh5jp8bb] {
    display: flex;
    min-height: 100vh;
}

/* Brand panel: platform gradient with blurred shapes moving slowly */
.auth-brand[b-w1vh5jp8bb] {
    position: relative;
    display: none;
    flex-direction: column;
    justify-content: space-between;
    width: 44%;
    max-width: 640px;
    padding: 2.5rem 3rem;
    overflow: hidden;
    background-image: var(--tm-gradient);
    color: var(--tm-on-primary);
}

/* Out of the flow: otherwise it counts as an item of the column and moves logo and texts */
.auth-blobs[b-w1vh5jp8bb] {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.auth-blobs span[b-w1vh5jp8bb] {
    position: absolute;
    border-radius: 50%;
    filter: blur(60px);
    opacity: .45;
    animation: auth-float-b-w1vh5jp8bb 18s ease-in-out infinite alternate;
}

    .auth-blobs span:nth-child(1)[b-w1vh5jp8bb] {
        width: 26rem;
        height: 26rem;
        top: -8rem;
        left: -6rem;
        background: rgba(255, 255, 255, .35);
    }

    .auth-blobs span:nth-child(2)[b-w1vh5jp8bb] {
        width: 22rem;
        height: 22rem;
        bottom: -6rem;
        right: -8rem;
        background: var(--tm-accent);
        animation-duration: 22s;
        animation-delay: -6s;
    }

    /* Light shape, not dark: a black shape muddied the warm colors (orange, red) */
    .auth-blobs span:nth-child(3)[b-w1vh5jp8bb] {
        width: 14rem;
        height: 14rem;
        top: 45%;
        left: 40%;
        background: rgba(255, 255, 255, .22);
        animation-duration: 26s;
        animation-delay: -12s;
    }

@keyframes auth-float-b-w1vh5jp8bb {
    from { transform: translate(0, 0) scale(1); }
    to { transform: translate(3rem, 2rem) scale(1.15); }
}

.auth-brand-name[b-w1vh5jp8bb],
.auth-brand-copy[b-w1vh5jp8bb],
.auth-brand-footer[b-w1vh5jp8bb] {
    position: relative; /* above the blurred shapes */
}

/* Brand on the gradient (logo or icon and name, as chosen in the settings) */
.auth-brand-name[b-w1vh5jp8bb] {
    --tm-brand-icon-size: 2.5rem;
    --tm-brand-logo-height: 2.5rem;
    --tm-brand-logo-max-width: 16rem;
    align-self: flex-start;
}

    .auth-brand-name[b-w1vh5jp8bb]  .tm-brand {
        gap: .75rem;
        font-size: 1.15rem;
    }

.auth-brand-copy h2[b-w1vh5jp8bb] {
    max-width: 22rem;
    font-size: 2.25rem;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -.03em;
    animation: tm-fade-up .6s var(--tm-ease) both;
}

.auth-brand-copy p[b-w1vh5jp8bb] {
    max-width: 22rem;
    margin: 1rem 0 0;
    font-size: 1.05rem;
    opacity: .85;
    animation: tm-fade-up .6s var(--tm-ease) .1s both;
}

.auth-brand-footer[b-w1vh5jp8bb] {
    margin: 0;
    font-size: .8125rem;
    opacity: .7;
}

/* Form side */
.auth-main[b-w1vh5jp8bb] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.auth-topbar[b-w1vh5jp8bb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.25rem 1.5rem;
}

.auth-back[b-w1vh5jp8bb] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: var(--bs-secondary-color);
    font-size: .875rem;
    font-weight: 500;
    text-decoration: none;
    transition: color var(--tm-dur) var(--tm-ease);
}

    .auth-back i[b-w1vh5jp8bb] {
        transition: transform var(--tm-dur) var(--tm-ease);
    }

    .auth-back:hover[b-w1vh5jp8bb] {
        color: var(--bs-emphasis-color);
        text-decoration: none;
    }

        .auth-back:hover i[b-w1vh5jp8bb] {
            transform: translateX(-3px);
        }

.auth-content[b-w1vh5jp8bb] {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    max-width: 26rem;
    margin: 0 auto;
    padding: 1rem 1.5rem 3rem;
}

.auth-mobile-brand[b-w1vh5jp8bb] {
    margin-bottom: 2rem;
}

@media (min-width: 900px) {
    .auth-brand[b-w1vh5jp8bb] {
        display: flex;
    }

    .auth-mobile-brand[b-w1vh5jp8bb] {
        display: none;
    }
}

.auth-topbar-actions[b-w1vh5jp8bb] {
    display: flex;
    align-items: center;
    gap: .75rem;
}
/* /Components/Layout/Brand.razor.rz.scp.css */
.tm-brand[b-xcxyyuga7y] {
    display: inline-flex;
    align-items: center;
    gap: .625rem;
    min-width: 0;
    color: var(--bs-emphasis-color);
    font-weight: 700;
    font-size: 1.05rem;
    letter-spacing: -.02em;
    text-decoration: none;
}

    .tm-brand:hover[b-xcxyyuga7y] {
        text-decoration: none;
    }

    .tm-brand.is-on-color[b-xcxyyuga7y] {
        color: inherit;
    }

    .tm-brand[b-xcxyyuga7y]  .tm-brand-icon {
        transition: transform var(--tm-dur) var(--tm-ease-spring);
    }

    .tm-brand:not(.is-on-color)[b-xcxyyuga7y]  .tm-brand-icon {
        box-shadow: 0 4px 14px rgba(var(--tm-primary-rgb), .35);
    }

    .tm-brand:hover[b-xcxyyuga7y]  .tm-brand-icon {
        transform: rotate(-8deg) scale(1.06);
    }

    /* Icon in place of the logo: only in the collapsed sidebar (NavMenu.razor.css) */
    .tm-brand[b-xcxyyuga7y]  .tm-brand-compact {
        display: none;
    }

/* Height from the container (header 2rem); a very wide logo is shrunk to the maximum width, aligned to the left */
.tm-brand-logo[b-xcxyyuga7y] {
    height: var(--tm-brand-logo-height, 2rem);
    width: auto;
    max-width: var(--tm-brand-logo-max-width, 12rem);
    object-fit: contain;
    object-position: left center;
}

/* Smartphone: no room next to the header commands, only the icon (in place of the logo too).
   tm-brand-full: wherever there's room anyway (sidebar drawer) */
@media (max-width: 480px) {
    .tm-brand:not(.tm-brand-full) .tm-brand-name[b-xcxyyuga7y],
    .tm-brand:not(.tm-brand-full) .tm-brand-logo[b-xcxyyuga7y] {
        display: none;
    }

    .tm-brand:not(.tm-brand-full)[b-xcxyyuga7y]  .tm-brand-compact {
        display: inline-grid;
    }
}
/* /Components/Layout/BrandIcon.razor.rz.scp.css */
.tm-brand-icon[b-p5cfeqsu0i] {
    --size: var(--tm-brand-icon-size, 2rem);
    display: inline-grid;
    place-items: center;
    flex-shrink: 0;
    width: var(--size);
    height: var(--size);
    overflow: hidden;
    border-radius: calc(var(--size) * .3125);
    background-image: var(--tm-gradient);
    color: var(--tm-on-primary);
    font-size: calc(var(--size) * .475);
}

    /* Uploaded symbol: in a box of 60% of the side, as in the favicon */
    .tm-brand-icon img[b-p5cfeqsu0i] {
        display: block;
        width: 60%;
        height: 60%;
        object-fit: contain;
    }

    /* Full icon: the image is the tile (centered crop if it isn't square) */
    .tm-brand-icon.is-full[b-p5cfeqsu0i] {
        background: none;
    }

        .tm-brand-icon.is-full img[b-p5cfeqsu0i] {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

    /* On the brand gradient: translucent white tile, symbol in the text color on the brand */
    .tm-brand-icon.is-on-color:not(.is-full)[b-p5cfeqsu0i] {
        background: rgba(255, 255, 255, .18);
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .3);
        color: inherit;
    }

    /* Square variant (icons of the installed app): no corners of its own, symbol in the safe zone (50%) */
    .tm-brand-icon.is-square[b-p5cfeqsu0i] {
        border-radius: 0;
        font-size: calc(var(--size) * .5);
    }

        .tm-brand-icon.is-square img[b-p5cfeqsu0i] {
            width: 50%;
            height: 50%;
        }

        .tm-brand-icon.is-square.is-full[b-p5cfeqsu0i] {
            background: #fff;
        }

            .tm-brand-icon.is-square.is-full img[b-p5cfeqsu0i] {
                width: 100%;
                height: 100%;
            }
/* /Components/Layout/CultureMenu.razor.rz.scp.css */
.culture-menu[b-bezwx783tt] {
    position: relative;
}

    /* Globo + codice della lingua, stessa altezza e bordo del ThemeToggle */
    .culture-menu summary[b-bezwx783tt] {
        display: inline-flex;
        align-items: center;
        gap: .375rem;
        height: 2.25rem;
        padding: 0 .75rem;
        border: 1px solid var(--bs-border-color);
        border-radius: 999px;
        background: var(--tm-surface);
        color: var(--bs-secondary-color);
        cursor: pointer;
        list-style: none;
        font-size: .75rem;
        font-weight: 600;
        letter-spacing: .03em;
        transition: color var(--tm-dur) var(--tm-ease), border-color var(--tm-dur) var(--tm-ease);
    }

        .culture-menu summary:hover[b-bezwx783tt],
        .culture-menu[open] summary[b-bezwx783tt] {
            color: var(--tm-primary-text);
            border-color: var(--tm-primary-border);
        }

        .culture-menu summary[b-bezwx783tt]::-webkit-details-marker {
            display: none;
        }

    .culture-menu .dropdown-menu[b-bezwx783tt] {
        top: 100%;
        right: 0;
        left: auto;
        min-width: 10rem;
        margin-top: .5rem;
        padding: .375rem;
        border-color: var(--bs-border-color);
        border-radius: .75rem;
        box-shadow: var(--tm-shadow-lg);
        transform-origin: top right;
        animation: tm-pop var(--tm-dur) var(--tm-ease) both;
    }

    .culture-menu .dropdown-item[b-bezwx783tt] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: .625rem;
        border-radius: .5rem;
        padding: .5rem .625rem;
        font-size: .875rem;
    }

        .culture-menu .dropdown-item i[b-bezwx783tt] {
            color: var(--tm-primary-text);
        }

        .culture-menu .dropdown-item[aria-current][b-bezwx783tt] {
            font-weight: 600;
        }
/* /Components/Layout/ErrorBar.razor.rz.scp.css */
/* Floating at the bottom center (the widget launcher sits on the right), hidden until blazor.web.js shows it */
#blazor-error-ui[b-hswfil6ifw] {
    display: none;
    position: fixed;
    left: 50%;
    bottom: 1.25rem;
    z-index: 1090;
    width: min(34rem, calc(100% - 2rem));
    transform: translateX(-50%);
}

.error-bar[b-hswfil6ifw] {
    display: flex;
    align-items: center;
    gap: .875rem;
    padding: .75rem .75rem .75rem 1rem;
    border: 1px solid var(--bs-border-color);
    border-radius: .875rem;
    background: var(--tm-surface);
    box-shadow: var(--tm-shadow-lg);
    animation: tm-pop var(--tm-dur) var(--tm-ease) both;
}

/* Status red of PresenceDot */
.error-bar-icon[b-hswfil6ifw] {
    display: inline-grid;
    flex-shrink: 0;
    place-items: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: .625rem;
    background: rgba(220, 38, 38, .12);
    color: #DC2626;
}

[data-bs-theme=dark] .error-bar-icon[b-hswfil6ifw] {
    background: rgba(239, 68, 68, .16);
    color: #EF4444;
}

.error-bar-text[b-hswfil6ifw] {
    display: flex;
    flex: 1;
    flex-direction: column;
    min-width: 0;
    font-size: .875rem;
    line-height: 1.35;
}

    .error-bar-text span[b-hswfil6ifw] {
        color: var(--bs-secondary-color);
    }

.error-bar-dismiss[b-hswfil6ifw] {
    display: inline-grid;
    flex-shrink: 0;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border: 0;
    border-radius: .5rem;
    background: none;
    color: var(--bs-secondary-color);
    transition: background-color var(--tm-dur-fast) var(--tm-ease), color var(--tm-dur-fast) var(--tm-ease);
}

    .error-bar-dismiss:hover[b-hswfil6ifw] {
        background: var(--tm-surface-2);
        color: var(--bs-emphasis-color);
    }
/* /Components/Layout/NavGroup.razor.rz.scp.css */
/* Header: same look as the items of NavMenu, with a chevron that turns when open */
.nav-group-toggle[b-pgs3ynkqna] {
    display: flex;
    align-items: center;
    gap: .75rem;
    width: 100%;
    height: 2.5rem;
    margin-bottom: .125rem;
    padding: 0 .75rem;
    overflow: hidden;
    border: 0;
    border-radius: .5rem;
    background: transparent;
    color: var(--bs-secondary-color);
    font-size: .9rem;
    font-weight: 500;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color var(--tm-dur) var(--tm-ease), color var(--tm-dur) var(--tm-ease);
}

    .nav-group-toggle:hover[b-pgs3ynkqna] {
        background-color: var(--tm-surface-2);
        color: var(--bs-emphasis-color);
    }

    .nav-group-toggle i[b-pgs3ynkqna] {
        flex-shrink: 0;
        width: 1.125rem;
        text-align: center;
    }

.nav-group-chevron[b-pgs3ynkqna] {
    margin-left: auto;
    font-size: .7rem;
    transition: transform var(--tm-dur) var(--tm-ease), opacity var(--tm-dur) var(--tm-ease);
}

.nav-group.is-open .nav-group-chevron[b-pgs3ynkqna] {
    transform: rotate(180deg);
}

/* Items: open and closed with an animation (grid 0fr ↔ 1fr), hidden from the keyboard when closed;
   a thin line under the header icon ties them to the group */
.nav-group-items[b-pgs3ynkqna] {
    display: grid;
    grid-template-rows: 0fr;
    visibility: hidden;
    transition: grid-template-rows var(--tm-dur) var(--tm-ease), visibility 0s linear var(--tm-dur);
}

.nav-group.is-open .nav-group-items[b-pgs3ynkqna] {
    grid-template-rows: 1fr;
    visibility: visible;
    transition: grid-template-rows var(--tm-dur) var(--tm-ease);
}

.nav-group-inner[b-pgs3ynkqna] {
    min-height: 0;
    overflow: hidden;
    margin-left: 1.3rem;
    padding-left: .25rem;
    border-left: 1px solid var(--bs-border-color);
}

@media (min-width: 992px) {
    /* Collapsed sidebar: icons only, so no header and the items of every group in view */
    [data-tm-sidebar=collapsed] .nav-group-toggle[b-pgs3ynkqna] {
        display: none;
    }

    [data-tm-sidebar=collapsed] .nav-group-items[b-pgs3ynkqna] {
        grid-template-rows: 1fr;
        visibility: visible;
    }

    [data-tm-sidebar=collapsed] .nav-group-inner[b-pgs3ynkqna] {
        margin-left: 0;
        padding-left: 0;
        border-left: 0;
    }
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.nav-top[b-ar3cwvpe9p] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
    height: 3.75rem;
    padding: 0 1.25rem;
    overflow: hidden;
}

/* Icon-only buttons of the sidebar: close (drawer) and collapse (desktop) */
.nav-close[b-ar3cwvpe9p],
.nav-collapse[b-ar3cwvpe9p] {
    display: inline-flex;
    align-items: center;
    border: 0;
    border-radius: .5rem;
    background: transparent;
    color: var(--bs-secondary-color);
    cursor: pointer;
    transition: background-color var(--tm-dur) var(--tm-ease), color var(--tm-dur) var(--tm-ease);
}

    .nav-close:hover[b-ar3cwvpe9p],
    .nav-collapse:hover[b-ar3cwvpe9p] {
        background-color: var(--tm-surface-2);
        color: var(--bs-emphasis-color);
    }

.nav-close[b-ar3cwvpe9p] {
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    margin-right: -.5rem;
    font-size: 1.15rem;
}

/* The drawer has room for logo and name on smartphones too (tm-brand-full: Brand hides them below 480px, for the header) */
.nav-top[b-ar3cwvpe9p]  .tm-brand-name {
    transition: opacity var(--tm-dur) var(--tm-ease);
}

/* Only the items scroll: brand on top and collapse button at the bottom always stay in view */
.nav-scrollable[b-ar3cwvpe9p] {
    flex: 1;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: thin;
}

.nav[b-ar3cwvpe9p] {
    /* No wrapping (Bootstrap uses wrap): otherwise the items widen to their label, even when it's hidden in the collapsed sidebar */
    flex-wrap: nowrap;
    padding: .5rem .75rem 1rem;
}

.nav-section[b-ar3cwvpe9p] {
    padding: 1rem .75rem .375rem;
    color: var(--bs-secondary-color);
    font-size: .6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .08em;
    white-space: nowrap;
}

.nav-item[b-ar3cwvpe9p] {
    position: relative;
    font-size: .9rem;
    padding-bottom: .125rem;
}

    .nav-item[b-ar3cwvpe9p]  .nav-link {
        position: relative;
        display: flex;
        align-items: center;
        gap: .75rem;
        height: 2.5rem;
        padding: 0 .75rem;
        overflow: hidden; /* while collapsing, the label doesn't overflow the item */
        border-radius: .5rem;
        color: var(--bs-secondary-color);
        font-weight: 500;
        white-space: nowrap;
        transition: background-color var(--tm-dur) var(--tm-ease), color var(--tm-dur) var(--tm-ease);
    }

        .nav-item[b-ar3cwvpe9p]  .nav-link i {
            flex-shrink: 0;
            width: 1.125rem;
            text-align: center;
            transition: transform var(--tm-dur) var(--tm-ease-spring);
        }

        .nav-item[b-ar3cwvpe9p]  .nav-link:hover {
            background-color: var(--tm-surface-2);
            color: var(--bs-emphasis-color);
            text-decoration: none;
        }

            .nav-item[b-ar3cwvpe9p]  .nav-link:hover i {
                transform: scale(1.12);
            }

    /* Active item: soft brand background + side bar sliding in */
    .nav-item[b-ar3cwvpe9p]  a.active {
        background-color: var(--tm-primary-subtle);
        color: var(--tm-primary-text);
    }

        .nav-item[b-ar3cwvpe9p]  a.active::before {
            content: "";
            position: absolute;
            left: 0;
            top: .5rem;
            bottom: .5rem;
            width: 3px;
            border-radius: 3px;
            background-image: var(--tm-gradient);
            animation: tm-pop var(--tm-dur-slow) var(--tm-ease-spring) both;
        }

.nav-label[b-ar3cwvpe9p] {
    transition: opacity var(--tm-dur) var(--tm-ease);
}

/* Tickets waiting for the caller's answer (InboxCount): at the end of the item, on the icon when the sidebar is collapsed */
.nav-item[b-ar3cwvpe9p]  .nav-count {
    min-width: 1.25rem;
    height: 1.25rem;
    margin-left: auto;
    padding: 0 .375rem;
    border-radius: 999px;
    background-image: var(--tm-gradient);
    color: var(--tm-on-primary);
    font-size: .6875rem;
    font-weight: 700;
    line-height: 1.25rem;
    text-align: center;
}

.nav-footer[b-ar3cwvpe9p] {
    display: none;
    flex-shrink: 0;
    padding: .75rem;
    border-top: 1px solid var(--bs-border-color);
}

.nav-collapse[b-ar3cwvpe9p] {
    gap: .75rem;
    width: 100%;
    height: 2.5rem;
    padding: 0 .75rem;
    overflow: hidden;
    font-size: .875rem;
    font-weight: 500;
    white-space: nowrap;
}

    .nav-collapse i[b-ar3cwvpe9p] {
        flex-shrink: 0;
        width: 1.125rem;
        text-align: center;
        transition: transform var(--tm-dur-slow) var(--tm-ease);
    }

@media (min-width: 992px) {
    /* The X is for the drawer only */
    .nav-close[b-ar3cwvpe9p] {
        display: none;
    }

    .nav-footer[b-ar3cwvpe9p] {
        display: block;
    }

    /* Sidebar collapsed to icons (data-tm-sidebar on <html>): name, section titles and labels disappear */
    [data-tm-sidebar=collapsed] .nav-top[b-ar3cwvpe9p]  .tm-brand-name,
    [data-tm-sidebar=collapsed] .nav-label[b-ar3cwvpe9p] {
        opacity: 0;
    }

    /* A horizontal logo doesn't fit: the icon stands in for it (Brand) */
    [data-tm-sidebar=collapsed] .nav-top[b-ar3cwvpe9p]  .tm-brand-logo {
        display: none;
    }

    [data-tm-sidebar=collapsed] .nav-top[b-ar3cwvpe9p]  .tm-brand-compact {
        display: inline-grid;
    }

    /* Section title → thin separator */
    [data-tm-sidebar=collapsed] .nav-section[b-ar3cwvpe9p] {
        height: 1px;
        margin: .875rem .75rem .5rem;
        padding: 0;
        background-color: var(--bs-border-color);
    }

        [data-tm-sidebar=collapsed] .nav-section span[b-ar3cwvpe9p] {
            display: none;
        }

    [data-tm-sidebar=collapsed] .nav-collapse i[b-ar3cwvpe9p] {
        transform: rotate(180deg);
    }

    [data-tm-sidebar=collapsed] .nav-item[b-ar3cwvpe9p]  .nav-count {
        position: absolute;
        top: .25rem;
        left: 1.5rem;
        min-width: 1rem;
        height: 1rem;
        padding: 0 .25rem;
        font-size: .625rem;
        line-height: 1rem;
    }

    /* Reduced: still scrolls (wheel, touch, keyboard) but without the bar, which would squeeze the icons out of line with
       the brand and the collapse button. The item names are tooltips of layout.js (.tm-nav-tooltip, outside the sidebar) */
    [data-tm-sidebar=collapsed] .nav-scrollable[b-ar3cwvpe9p] {
        scrollbar-width: none;
    }

        [data-tm-sidebar=collapsed] .nav-scrollable[b-ar3cwvpe9p]::-webkit-scrollbar {
            display: none;
        }
}
/* /Components/Layout/PublicLayout.razor.rz.scp.css */
.public-header[b-dwecr3ym4p] {
    position: sticky;
    top: 0;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 3.75rem;
    border-bottom: 1px solid var(--bs-border-color);
    /* Barra semitrasparente: il contenuto scorre sotto sfumato */
    background-color: rgba(var(--bs-body-bg-rgb), .8);
    backdrop-filter: blur(10px);
}

@media (max-width: 480px) {
    .public-header[b-dwecr3ym4p] {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
/* Only the texts and buttons of the current state are visible (classes set by ReconnectModal.razor.js on the dialog) */
.components-reconnect-first-attempt-visible[b-czolqayqd1],
.components-reconnect-repeated-attempt-visible[b-czolqayqd1],
.components-reconnect-failed-visible[b-czolqayqd1],
.components-pause-visible[b-czolqayqd1],
.components-resume-failed-visible[b-czolqayqd1],
.components-rejoining-animation[b-czolqayqd1] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-czolqayqd1],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-czolqayqd1],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-czolqayqd1],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-czolqayqd1],
#components-reconnect-modal.components-reconnect-retrying[b-czolqayqd1],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-czolqayqd1],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-czolqayqd1],
#components-reconnect-modal.components-reconnect-failed[b-czolqayqd1],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-czolqayqd1] {
    display: block;
}

/* While retrying blazor.web.js keeps the class of the first attempt too: only the countdown text stays */
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-first-attempt-visible[b-czolqayqd1] {
    display: none;
}

/* Card in the portal colors, over a blurred backdrop */
#components-reconnect-modal[b-czolqayqd1] {
    width: min(22rem, calc(100% - 2rem));
    margin: 18vh auto;
    padding: 2rem 1.75rem 1.75rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;
    background: var(--tm-surface);
    color: var(--bs-body-color);
    box-shadow: var(--tm-shadow-lg);
    outline: none; /* showModal focuses the dialog itself: no focus ring around the card */
    opacity: 0;
    transition: display .5s allow-discrete, overlay .5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-czolqayqd1 .5s both;
}

    #components-reconnect-modal[open][b-czolqayqd1] {
        animation: components-reconnect-modal-slideUp-b-czolqayqd1 1.5s cubic-bezier(.05, .89, .25, 1.02) .3s, components-reconnect-modal-fadeInOpacity-b-czolqayqd1 .5s ease-in-out .3s;
        animation-fill-mode: both;
    }

    #components-reconnect-modal[b-czolqayqd1]::backdrop {
        background-color: rgba(9, 9, 11, .55);
        backdrop-filter: blur(4px);
        animation: components-reconnect-modal-fadeInOpacity-b-czolqayqd1 .5s ease-in-out;
        opacity: 1;
    }

@keyframes components-reconnect-modal-slideUp-b-czolqayqd1 {
    0% {
        transform: translateY(30px) scale(.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-czolqayqd1 {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-czolqayqd1 {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-czolqayqd1] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-czolqayqd1] {
    margin: 0;
    text-align: center;
}

/* Buttons as .btn-primary: brand gradient */
#components-reconnect-modal button[b-czolqayqd1] {
    padding: .5rem 1.25rem;
    border: 0;
    border-radius: .625rem;
    background-image: var(--tm-gradient);
    color: var(--tm-on-primary);
    font-weight: 600;
    box-shadow: 0 6px 18px rgba(var(--tm-primary-rgb), .3);
    transition: transform var(--tm-dur-fast) var(--tm-ease), box-shadow var(--tm-dur-fast) var(--tm-ease);
}

    #components-reconnect-modal button:hover[b-czolqayqd1] {
        transform: translateY(-1px);
        box-shadow: 0 8px 22px rgba(var(--tm-primary-rgb), .4);
    }

/* Rings expanding in the brand color while reconnecting */
.components-rejoining-animation[b-czolqayqd1] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-czolqayqd1] {
        position: absolute;
        border: 3px solid var(--tm-primary);
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-czolqayqd1 1.5s cubic-bezier(0, .2, .8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-czolqayqd1] {
            animation-delay: -.5s;
        }

@keyframes components-rejoining-animation-b-czolqayqd1 {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0;
        left: 0;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Layout/ThemeToggle.razor.rz.scp.css */
.tm-theme-toggle[b-cfpw6pgcpy] {
    display: inline-grid;
    place-items: center;
    width: 2.25rem;
    height: 2.25rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 50%;
    background: var(--tm-surface);
    color: var(--bs-secondary-color);
    cursor: pointer;
    transition: color var(--tm-dur) var(--tm-ease), border-color var(--tm-dur) var(--tm-ease), transform var(--tm-dur) var(--tm-ease);
}

    .tm-theme-toggle:hover[b-cfpw6pgcpy] {
        color: var(--tm-primary-text);
        border-color: var(--tm-primary-border);
        transform: rotate(-15deg);
    }

    /* Le due icone occupano la stessa cella: si mostra quella del tema attivo, l'altra ruota via */
    .tm-theme-toggle i[b-cfpw6pgcpy] {
        grid-area: 1 / 1;
        transition: opacity var(--tm-dur-slow) var(--tm-ease), transform var(--tm-dur-slow) var(--tm-ease-spring);
    }

/* Il CSS isolato aggiunge lo scope solo all'ultimo selettore: l'antenato <html data-bs-theme> resta libero */
[data-bs-theme=dark] .tm-icon-light[b-cfpw6pgcpy],
[data-bs-theme=light] .tm-icon-dark[b-cfpw6pgcpy] {
    opacity: 0;
    transform: rotate(-90deg) scale(.5);
}
/* /Components/Layout/UserMenu.razor.rz.scp.css */
.user-menu[b-syu1d2n5qg] {
    position: relative;
}

    /* User name with the initial avatar, opens the dropdown */
    .user-menu summary[b-syu1d2n5qg] {
        display: flex;
        align-items: center;
        gap: .5rem;
        padding: .25rem .625rem .25rem .25rem;
        border: 1px solid var(--bs-border-color);
        border-radius: 999px;
        background: var(--tm-surface);
        cursor: pointer;
        list-style: none;
        white-space: nowrap;
        font-size: .875rem;
        transition: border-color var(--tm-dur) var(--tm-ease), background-color var(--tm-dur) var(--tm-ease);
    }

        .user-menu summary:hover[b-syu1d2n5qg] {
            border-color: var(--tm-primary-border);
        }

        .user-menu summary[b-syu1d2n5qg]::-webkit-details-marker {
            display: none;
        }

        .user-menu summary[b-syu1d2n5qg]::after {
            content: "\f078"; /* Font Awesome chevron-down */
            font: var(--fa-font-solid);
            font-size: .625rem;
            color: var(--bs-secondary-color);
            transition: transform var(--tm-dur) var(--tm-ease);
        }

    .user-menu[open] summary[b-syu1d2n5qg]::after {
        transform: rotate(180deg);
    }

.user-avatar[b-syu1d2n5qg] {
    display: inline-grid;
    place-items: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 50%;
    background-image: var(--tm-gradient);
    color: var(--tm-on-primary);
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
}

/* Avatar with the dot of the user's status (staff users) */
.user-avatar-wrap[b-syu1d2n5qg] {
    --presence-ring: var(--tm-surface);
    position: relative;
    display: inline-flex;
}

    .user-avatar-wrap[b-syu1d2n5qg]  .tm-presence {
        position: absolute;
        right: -2px;
        bottom: -2px;
        width: .5625rem;
        height: .5625rem;
    }

.user-menu .dropdown-menu[b-syu1d2n5qg] {
    top: 100%;
    right: 0;
    left: auto;
    min-width: 12rem;
    margin-top: .5rem;
    padding: .375rem;
    border-color: var(--bs-border-color);
    border-radius: .75rem;
    box-shadow: var(--tm-shadow-lg);
    transform-origin: top right;
    animation: tm-pop var(--tm-dur) var(--tm-ease) both;
}

.user-menu .dropdown-item[b-syu1d2n5qg] {
    display: flex;
    align-items: center;
    gap: .625rem;
    border-radius: .5rem;
    padding: .5rem .625rem;
    font-size: .875rem;
}

    .user-menu .dropdown-item i[b-syu1d2n5qg] {
        width: 1rem;
        text-align: center;
        color: var(--bs-secondary-color);
    }

/* Status choice: title, dot as wide as the item icons, check on the chosen status */
.user-menu-section[b-syu1d2n5qg] {
    padding: .25rem .625rem;
    color: var(--bs-secondary-color);
    font-size: .6875rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.user-menu-dot[b-syu1d2n5qg] {
    display: inline-grid;
    flex-shrink: 0;
    place-items: center;
    width: 1rem;
}

.user-menu .dropdown-item .user-menu-check[b-syu1d2n5qg] {
    margin-left: auto;
    color: var(--tm-primary-text);
}

/* Install as app: only when the browser can do it (js/pwa.js, class on <html>) */
html:not(.tm-installable) .user-menu-install[b-syu1d2n5qg] {
    display: none;
}

.user-link[b-syu1d2n5qg] {
    font-size: .875rem;
    font-weight: 500;
}

/* Name in the button: truncated if too long (email) */
.user-name[b-syu1d2n5qg] {
    max-width: 16rem;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Menu header with the full name: needed only when the name is hidden in the button */
.user-menu-header[b-syu1d2n5qg] {
    display: none;
    padding: .375rem .625rem .625rem;
    margin-bottom: .375rem;
    border-bottom: 1px solid var(--bs-border-color);
}

.user-menu-label[b-syu1d2n5qg] {
    display: block;
    color: var(--bs-secondary-color);
    font-size: .75rem;
}

.user-menu-email[b-syu1d2n5qg] {
    display: block;
    color: var(--bs-emphasis-color);
    font-size: .875rem;
    font-weight: 600;
    overflow-wrap: break-word;
}

/* Smartphone: only avatar and arrow in the button (a long name widened the page), name at the top of the menu */
@media (max-width: 575.98px) {
    .user-menu summary[b-syu1d2n5qg] {
        padding-right: .5rem;
    }

    .user-name[b-syu1d2n5qg] {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
    }

    .user-menu-header[b-syu1d2n5qg] {
        display: block;
    }

    .user-menu .dropdown-menu[b-syu1d2n5qg] {
        max-width: calc(100vw - 2rem);
    }
}
/* /Components/Pages/Admin/Languages/LanguageEditor.razor.rz.scp.css */
/* Anteprima della bandiera accanto al menu */
.flag-field[b-3hvwvrqy0l] {
    display: flex;
    align-items: center;
    gap: .625rem;
}

/* Opzioni del menu: bandierina + nome del paese (dentro Select2Blazor, un altro componente: ::deep) */
.flag-field[b-3hvwvrqy0l]  .flag-option {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}
/* /Components/Pages/Admin/Languages/Languages.razor.rz.scp.css */
/* Flag + name of the language */
.language-name[b-mhc6ylsvx2] {
    display: inline-flex;
    align-items: center;
    gap: .625rem;
}

/* Main language of the platform */
.language-badge[b-mhc6ylsvx2] {
    padding: .125rem .5rem;
    border-radius: 999px;
    background-color: var(--tm-primary-subtle);
    color: var(--tm-primary-text);
    font-size: .75rem;
    font-weight: 600;
}
/* /Components/Pages/Admin/Team/SupportTeam.razor.rz.scp.css */
/* Support org chart. Role colors as the badges of the Users list (Users.razor.css): managers amber, operators emerald */
.team-layout[b-uuwbmduso9],
.team-stats[b-uuwbmduso9],
.team-details[b-uuwbmduso9] {
    --team-line: #D4D4D8;
    --manager-rgb: 245, 158, 11;
    --manager-text: #B45309;
    --support-rgb: 16, 185, 129;
    --support-text: #047857;
}

[data-bs-theme=dark] .team-layout[b-uuwbmduso9],
[data-bs-theme=dark] .team-stats[b-uuwbmduso9],
[data-bs-theme=dark] .team-details[b-uuwbmduso9] {
    --team-line: #3F3F46;
    --manager-text: #FCD34D;
    --support-text: #6EE7B7;
}

/* ===== Numbers ===== */
.team-stats[b-uuwbmduso9] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(9.5rem, 1fr));
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.team-stat[b-uuwbmduso9] {
    --stat-rgb: var(--tm-primary-rgb);
    --stat-text: var(--tm-primary-text);
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    align-content: center;
    align-items: center;
    column-gap: .875rem;
    padding: 1rem 1.125rem;
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius-lg);
    background-color: var(--tm-surface);
    box-shadow: var(--tm-shadow-sm);
    animation: tm-fade-up var(--tm-dur-slow) var(--tm-ease) backwards;
    animation-delay: calc(var(--i) * 60ms);
}

.team-stat.is-manager[b-uuwbmduso9] { --stat-rgb: var(--manager-rgb); --stat-text: var(--manager-text); }
.team-stat.is-support[b-uuwbmduso9] { --stat-rgb: var(--support-rgb); --stat-text: var(--support-text); }
.team-stat.is-warning[b-uuwbmduso9] { --stat-rgb: var(--bs-warning-rgb); --stat-text: var(--bs-warning-text-emphasis); }
.team-stat.is-ok[b-uuwbmduso9],
.team-stat.is-online[b-uuwbmduso9] { --stat-rgb: var(--bs-success-rgb); --stat-text: var(--bs-success-text-emphasis); }

.team-stat-icon[b-uuwbmduso9] {
    grid-row: span 2;
    display: grid;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: .75rem;
    background-color: rgba(var(--stat-rgb), .14);
    color: var(--stat-text);
    font-size: 1.125rem;
}

.team-stat-value[b-uuwbmduso9] {
    color: var(--bs-emphasis-color);
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.1;
}

    .team-stat-value small[b-uuwbmduso9] {
        color: var(--bs-secondary-color);
        font-size: .9375rem;
        font-weight: 500;
    }

.team-stat-label[b-uuwbmduso9] {
    color: var(--bs-secondary-color);
    font-size: .8125rem;
}

.team-stat-flags[b-uuwbmduso9] {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    gap: .25rem;
    margin-top: .625rem;
}

    .team-stat-flags .is-uncovered[b-uuwbmduso9]  .tm-flag {
        filter: grayscale(1);
        opacity: .35;
    }

/* Online people for each status */
.team-stat-presence[b-uuwbmduso9] {
    grid-column: 1 / -1;
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin-top: .625rem;
    color: var(--bs-secondary-color);
    font-size: .75rem;
    font-weight: 600;
}

    .team-stat-presence > span[b-uuwbmduso9] {
        display: inline-flex;
        align-items: center;
        gap: .3rem;
    }

/* ===== Tools ===== */
.team-langs[b-uuwbmduso9] {
    display: flex;
    flex-wrap: wrap;
    gap: .375rem;
}

.team-lang[b-uuwbmduso9] {
    display: inline-flex;
    align-items: center;
    gap: .375rem;
    padding: .3rem .625rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 999px;
    background-color: var(--tm-surface);
    color: var(--bs-body-color);
    font-size: .8125rem;
    font-weight: 600;
    transition: background-color var(--tm-dur) var(--tm-ease), border-color var(--tm-dur) var(--tm-ease), transform var(--tm-dur-fast) var(--tm-ease);
}

    .team-lang:hover[b-uuwbmduso9] {
        border-color: var(--tm-primary-border);
    }

    .team-lang:active[b-uuwbmduso9] {
        transform: scale(.96);
    }

    .team-lang.is-active[b-uuwbmduso9] {
        border-color: var(--tm-primary);
        background-color: var(--tm-primary-subtle);
        color: var(--tm-primary-text);
    }

.team-lang-count[b-uuwbmduso9] {
    min-width: 1.25rem;
    padding: 0 .3rem;
    border-radius: 999px;
    background-color: var(--tm-surface-2);
    color: var(--bs-secondary-color);
    font-size: .6875rem;
    text-align: center;
}

.team-lang.is-active .team-lang-count[b-uuwbmduso9] {
    background-color: var(--tm-surface);
    color: var(--tm-primary-text);
}

.team-tools-end[b-uuwbmduso9] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem;
    margin-left: auto;
}

.team-matches[b-uuwbmduso9] {
    color: var(--bs-secondary-color);
    font-size: .875rem;
}

/* ===== Tree ===== */
.team-layout[b-uuwbmduso9] {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
}

@media (min-width: 1200px) {
    .team-layout.has-details[b-uuwbmduso9] {
        grid-template-columns: minmax(0, 1fr) 20rem;
    }
}

/* Scrolls horizontally when the managers don't fit the width */
.team-canvas[b-uuwbmduso9] {
    overflow-x: auto;
    padding: .5rem .25rem 1rem;
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius-lg);
    background-color: var(--tm-surface-2);
    background-image: radial-gradient(rgba(var(--bs-emphasis-color-rgb), .07) 1px, transparent 1px);
    background-size: 1.25rem 1.25rem;
}

.team-tree[b-uuwbmduso9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: max-content;
    min-width: 100%;
    padding: 1.25rem .5rem .5rem;
}

/* Root: the platform, with the brand gradient */
.team-root[b-uuwbmduso9] {
    position: relative;
    display: flex;
    align-items: center;
    gap: .75rem;
    margin-bottom: 1.75rem;
    padding: .75rem 1.25rem .75rem .75rem;
    --tm-brand-icon-size: 2.5rem;
    border-radius: 999px;
    background: var(--tm-gradient);
    color: var(--tm-on-primary);
    box-shadow: var(--tm-shadow);
    animation: tm-pop var(--tm-dur-slow) var(--tm-ease-spring) backwards;
}

    .team-root[b-uuwbmduso9]::after {
        content: "";
        position: absolute;
        top: 100%;
        left: 50%;
        height: 1.75rem;
        border-left: 2px solid var(--team-line);
        transform: translateX(-1px);
    }


.team-root-name[b-uuwbmduso9] {
    display: block;
    font-weight: 700;
    line-height: 1.2;
}

.team-root-meta[b-uuwbmduso9] {
    display: block;
    font-size: .8125rem;
    opacity: .85;
}

.team-branches[b-uuwbmduso9] {
    display: flex;
    align-items: flex-start;
    justify-content: center;
}

/* Branch of a manager. The lines to the root are the two pseudo-elements: half a horizontal line left and right of the center
   (no gap between branches, otherwise the line would break: the padding makes the spacing) + vertical line down to the card;
   first and last branch with a rounded corner */
.team-branch[b-uuwbmduso9] {
    position: relative;
    flex: 0 0 18.5rem;
    padding: 1.75rem .75rem 0;
    transition: opacity var(--tm-dur-slow) var(--tm-ease), filter var(--tm-dur-slow) var(--tm-ease);
    animation: tm-fade-up var(--tm-dur-slow) var(--tm-ease) backwards;
    animation-delay: calc(120ms + var(--i) * 60ms);
}

    .team-branch[b-uuwbmduso9]::before,
    .team-branch[b-uuwbmduso9]::after {
        content: "";
        position: absolute;
        top: 0;
        width: 50%;
        height: 1.75rem;
        border-top: 2px solid var(--team-line);
    }

    .team-branch[b-uuwbmduso9]::before {
        right: 50%;
    }

    .team-branch[b-uuwbmduso9]::after {
        left: 50%;
        margin-left: -1px;
        border-left: 2px solid var(--team-line);
    }

    .team-branch:first-child[b-uuwbmduso9]::before {
        border: 0;
    }

    .team-branch:first-child[b-uuwbmduso9]::after {
        border-top-left-radius: .875rem;
    }

    .team-branch:last-child[b-uuwbmduso9]::before {
        margin-right: -1px;
        border-right: 2px solid var(--team-line);
        border-top-right-radius: .875rem;
    }

    .team-branch:last-child[b-uuwbmduso9]::after {
        border: 0;
    }

    .team-branch:only-child[b-uuwbmduso9]::before {
        border: 0;
    }

    .team-branch:only-child[b-uuwbmduso9]::after {
        border: 0;
        border-left: 2px solid var(--team-line);
        border-radius: 0;
    }

    .team-branch.is-dimmed[b-uuwbmduso9] {
        opacity: .4;
        filter: grayscale(.7);
    }

/* ===== Person card ===== */
.team-card[b-uuwbmduso9] {
    --role-rgb: var(--support-rgb);
    --role-text: var(--support-text);
    position: relative;
    display: flex;
    align-items: stretch;
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius-lg);
    background-color: var(--tm-surface);
    box-shadow: var(--tm-shadow-sm);
    transition: box-shadow var(--tm-dur) var(--tm-ease), transform var(--tm-dur) var(--tm-ease), border-color var(--tm-dur) var(--tm-ease),
        opacity var(--tm-dur-slow) var(--tm-ease), filter var(--tm-dur-slow) var(--tm-ease);
}

    .team-card:hover[b-uuwbmduso9] {
        border-color: rgba(var(--role-rgb), .55);
        box-shadow: var(--tm-shadow);
        transform: translateY(-1px);
    }

    /* Role stripe on the left */
    .team-card[b-uuwbmduso9]::before {
        content: "";
        position: absolute;
        top: .625rem;
        bottom: .625rem;
        left: -1px;
        width: 3px;
        border-radius: 0 3px 3px 0;
        background-color: rgb(var(--role-rgb));
    }

.team-card.is-manager[b-uuwbmduso9] {
    --role-rgb: var(--manager-rgb);
    --role-text: var(--manager-text);
}

/* Same person in another branch under the mouse (ui.js), person related to the chosen one, chosen person */
.team-card.is-linked[b-uuwbmduso9],
.team-card.is-related[b-uuwbmduso9] {
    border-color: rgba(var(--tm-focus-rgb), .6);
    box-shadow: 0 0 0 3px rgba(var(--tm-focus-rgb), .15), var(--tm-shadow-sm);
}

.team-card.is-selected[b-uuwbmduso9] {
    border-color: rgb(var(--tm-focus-rgb));
    box-shadow: 0 0 0 3px rgba(var(--tm-focus-rgb), .3), var(--tm-shadow);
}

.team-card.is-match[b-uuwbmduso9] {
    border-color: rgba(var(--tm-focus-rgb), .6);
}

.team-card.is-dimmed[b-uuwbmduso9] {
    opacity: .4;
    filter: grayscale(.7);
}

.team-card.is-locked .team-avatar[b-uuwbmduso9] {
    background-color: var(--tm-surface-2);
    color: var(--bs-secondary-color);
}

/* Branch of the operators without a manager: dashed card, not clickable */
.team-card.is-group[b-uuwbmduso9] {
    --role-rgb: var(--bs-warning-rgb);
    --role-text: var(--bs-warning-text-emphasis);
    border-style: dashed;
    background-color: transparent;
    box-shadow: none;
}

    .team-card.is-group:hover[b-uuwbmduso9] {
        transform: none;
    }

.team-node[b-uuwbmduso9] {
    display: flex;
    flex: 1;
    align-items: center;
    gap: .75rem;
    min-width: 0;
    padding: .75rem .75rem .75rem .875rem;
    border: 0;
    border-radius: inherit;
    background: none;
    color: inherit;
    text-align: start;
}

.team-avatar[b-uuwbmduso9] {
    display: inline-grid;
    place-items: center;
    flex-shrink: 0;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    background-color: rgba(var(--role-rgb), .16);
    color: var(--role-text);
    font-size: .875rem;
    font-weight: 700;
}

    .team-avatar.is-manager[b-uuwbmduso9] {
        --role-rgb: var(--manager-rgb);
        --role-text: var(--manager-text);
    }

    .team-avatar.is-support[b-uuwbmduso9] {
        --role-rgb: var(--support-rgb);
        --role-text: var(--support-text);
    }

    .team-avatar.is-large[b-uuwbmduso9] {
        width: 3.25rem;
        height: 3.25rem;
        font-size: 1.25rem;
    }

    .team-avatar.is-small[b-uuwbmduso9] {
        width: 1.5rem;
        height: 1.5rem;
        font-size: .6875rem;
    }

/* Avatar with the presence dot in the bottom-right corner, detached by a ring of the card color */
.team-avatar-wrap[b-uuwbmduso9] {
    --presence-ring: var(--tm-surface);
    position: relative;
    display: inline-flex;
    flex-shrink: 0;
}

    .team-avatar-wrap[b-uuwbmduso9]  .tm-presence {
        position: absolute;
        right: -2px;
        bottom: -2px;
    }

    .team-avatar-wrap.is-large[b-uuwbmduso9]  .tm-presence {
        right: 0;
        bottom: 0;
        width: .875rem;
        height: .875rem;
    }

.team-node-text[b-uuwbmduso9] {
    display: flex;
    flex-direction: column;
    gap: .125rem;
    min-width: 0;
}

.team-name[b-uuwbmduso9] {
    display: flex;
    align-items: center;
    gap: .375rem;
    min-width: 0;
    color: var(--bs-emphasis-color);
    font-weight: 600;
    line-height: 1.25;
}

.team-name-text[b-uuwbmduso9] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.team-mark[b-uuwbmduso9] {
    flex-shrink: 0;
    color: var(--tm-primary-text);
    font-size: .6875rem;
}

    .team-mark.is-locked[b-uuwbmduso9] {
        color: var(--bs-danger-text-emphasis);
    }

.team-email[b-uuwbmduso9] {
    overflow: hidden;
    color: var(--bs-secondary-color);
    font-size: .75rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.team-flags[b-uuwbmduso9] {
    display: flex;
    flex-wrap: wrap;
    gap: .25rem;
    margin-top: .25rem;
}

/* Number of operators + arrow opening and closing the branch */
.team-toggle[b-uuwbmduso9] {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    gap: .375rem;
    padding: 0 .75rem;
    border: 0;
    border-left: 1px solid var(--bs-border-color);
    border-radius: 0 var(--bs-border-radius-lg) var(--bs-border-radius-lg) 0;
    background: none;
    color: var(--role-text);
    font-size: .8125rem;
    font-weight: 700;
    transition: background-color var(--tm-dur) var(--tm-ease);
}

    .team-toggle:hover[b-uuwbmduso9] {
        background-color: rgba(var(--role-rgb), .1);
    }

    .team-toggle i[b-uuwbmduso9] {
        font-size: .6875rem;
        transition: transform var(--tm-dur) var(--tm-ease);
    }

    .team-toggle[aria-expanded="false"] i[b-uuwbmduso9] {
        transform: rotate(-90deg);
    }

/* ===== Operators of a branch ===== */
.team-leaves-wrap[b-uuwbmduso9] {
    display: grid;
    grid-template-rows: 1fr;
    transition: grid-template-rows var(--tm-dur-slow) var(--tm-ease), opacity var(--tm-dur-slow) var(--tm-ease);
}

    .team-leaves-wrap.is-collapsed[b-uuwbmduso9] {
        grid-template-rows: 0fr;
        opacity: 0;
    }

/* overflow hidden only for the animation: the padding leaves room for the cards' halo and shadows */
.team-leaves-inner[b-uuwbmduso9] {
    min-height: 0;
    overflow: hidden;
    margin: 0 -.5rem;
    padding: 0 .5rem .5rem;
}

/* Lines: vertical from the manager's avatar down, rounded elbow towards each operator */
.team-leaves[b-uuwbmduso9] {
    margin: 0 0 0 1.875rem;
    padding: 0;
    list-style: none;
}

    .team-leaves li[b-uuwbmduso9] {
        position: relative;
        padding: .625rem 0 0 1.125rem;
        animation: tm-fade-up var(--tm-dur-slow) var(--tm-ease) backwards;
        animation-delay: calc(200ms + var(--i, 0) * 60ms + var(--j) * 35ms);
    }

        .team-leaves li[b-uuwbmduso9]::before {
            content: "";
            position: absolute;
            top: 0;
            left: 0;
            width: 1.125rem;
            height: 2.375rem;
            border-bottom: 2px solid var(--team-line);
            border-left: 2px solid var(--team-line);
            border-bottom-left-radius: .75rem;
        }

        .team-leaves li:not(:last-child)[b-uuwbmduso9]::after {
            content: "";
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            border-left: 2px solid var(--team-line);
        }

.team-leaves-empty[b-uuwbmduso9] {
    margin: .75rem 0 0 1.875rem;
    padding: .625rem .875rem;
    border: 1px dashed var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    color: var(--bs-secondary-color);
    font-size: .8125rem;
}

/* ===== Details panel ===== */
.team-details[b-uuwbmduso9] {
    position: sticky;
    top: 5rem;
    padding: 1.25rem;
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius-lg);
    background-color: var(--tm-surface);
    box-shadow: var(--tm-shadow);
    animation: tm-pop var(--tm-dur) var(--tm-ease) backwards;
}

/* Below 1200px the panel sits at the bottom over the page (no room next to the tree) */
@media (max-width: 1199.98px) {
    .team-details[b-uuwbmduso9] {
        position: fixed;
        z-index: 1030;
        top: auto;
        right: 1rem;
        bottom: 1rem;
        left: 1rem;
        max-width: 28rem;
        max-height: 70vh;
        margin-left: auto;
        overflow-y: auto;
        box-shadow: var(--tm-shadow-lg);
        animation: tm-fade-up var(--tm-dur) var(--tm-ease) backwards;
    }
}

.team-details-close[b-uuwbmduso9] {
    position: absolute;
    top: .75rem;
    right: .75rem;
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border: 0;
    border-radius: 50%;
    background: none;
    color: var(--bs-secondary-color);
}

    .team-details-close:hover[b-uuwbmduso9] {
        background-color: var(--tm-surface-2);
        color: var(--bs-emphasis-color);
    }

.team-details-head[b-uuwbmduso9] {
    display: flex;
    align-items: center;
    gap: .875rem;
    padding-right: 2rem;
}

.team-details-id[b-uuwbmduso9] {
    min-width: 0;
}

.team-details-name[b-uuwbmduso9] {
    color: var(--bs-emphasis-color);
    font-size: 1.0625rem;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.team-details-email[b-uuwbmduso9] {
    font-size: .8125rem;
    overflow-wrap: anywhere;
}

.team-details-tags[b-uuwbmduso9] {
    display: flex;
    flex-wrap: wrap;
    gap: .375rem;
    margin: 1rem 0 .25rem;
}

.team-role[b-uuwbmduso9],
.team-status[b-uuwbmduso9],
.team-presence[b-uuwbmduso9] {
    display: inline-flex;
    align-items: center;
    gap: .375rem;
    padding: .2rem .6rem;
    border-radius: 999px;
    font-size: .75rem;
    font-weight: 600;
}

.team-role[b-uuwbmduso9] {
    background-color: rgba(var(--support-rgb), .14);
    color: var(--support-text);
}

    .team-role.is-manager[b-uuwbmduso9] {
        background-color: rgba(var(--manager-rgb), .14);
        color: var(--manager-text);
    }

.team-status.is-locked[b-uuwbmduso9] {
    background-color: var(--bs-danger-bg-subtle);
    color: var(--bs-danger-text-emphasis);
}

.team-status.is-unconfirmed[b-uuwbmduso9] {
    background-color: var(--bs-warning-bg-subtle);
    color: var(--bs-warning-text-emphasis);
}

.team-presence[b-uuwbmduso9] {
    background-color: var(--tm-surface-2);
    color: var(--bs-emphasis-color);
}

.team-details-since[b-uuwbmduso9] {
    margin: .5rem 0 0;
    color: var(--bs-secondary-color);
    font-size: .8125rem;
}

.team-details-title[b-uuwbmduso9] {
    margin: 1.25rem 0 .625rem;
    color: var(--bs-secondary-color);
    font-size: .6875rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.team-details-muted[b-uuwbmduso9] {
    margin: 0;
    color: var(--bs-secondary-color);
    font-size: .875rem;
}

    .team-details-muted.is-warning[b-uuwbmduso9] {
        color: var(--bs-warning-text-emphasis);
    }

.team-details-langs[b-uuwbmduso9] {
    display: flex;
    flex-wrap: wrap;
    gap: .375rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

    .team-details-langs li[b-uuwbmduso9] {
        display: inline-flex;
        align-items: center;
        gap: .375rem;
        padding: .2rem .6rem .2rem .4rem;
        border-radius: 999px;
        background-color: var(--tm-surface-2);
        font-size: .8125rem;
    }

/* Language coverage of the team: bar = share of operators managing it */
.team-coverage[b-uuwbmduso9] {
    display: grid;
    gap: .5rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

    .team-coverage li[b-uuwbmduso9] {
        display: grid;
        grid-template-columns: auto 5.5rem 1fr 1.5rem;
        align-items: center;
        gap: .5rem;
        font-size: .8125rem;
    }

    .team-coverage li.is-uncovered[b-uuwbmduso9] {
        color: var(--bs-secondary-color);
    }

        .team-coverage li.is-uncovered[b-uuwbmduso9]  .tm-flag {
            filter: grayscale(1);
            opacity: .4;
        }

.team-coverage-name[b-uuwbmduso9] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.team-coverage-bar[b-uuwbmduso9] {
    height: .375rem;
    overflow: hidden;
    border-radius: 999px;
    background-color: var(--tm-surface-2);
}

    .team-coverage-bar span[b-uuwbmduso9] {
        display: block;
        height: 100%;
        border-radius: inherit;
        background: var(--tm-gradient);
        transform-origin: left;
        animation: team-grow-b-uuwbmduso9 var(--tm-dur-slow) var(--tm-ease) backwards;
    }

.team-coverage-count[b-uuwbmduso9] {
    color: var(--bs-emphasis-color);
    font-weight: 600;
    text-align: right;
}

.team-details-links[b-uuwbmduso9] {
    display: flex;
    flex-wrap: wrap;
    gap: .375rem;
}

.team-chip[b-uuwbmduso9] {
    display: inline-flex;
    align-items: center;
    gap: .375rem;
    padding: .2rem .625rem .2rem .25rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 999px;
    background-color: var(--tm-surface);
    color: var(--bs-body-color);
    font-size: .8125rem;
}

    .team-chip:hover[b-uuwbmduso9] {
        border-color: rgba(var(--manager-rgb), .6);
    }

.team-details-edit[b-uuwbmduso9] {
    width: 100%;
    margin-top: 1.5rem;
}

@keyframes team-grow-b-uuwbmduso9 {
    from { transform: scaleX(0); }
}

/* ===== Loading and empty ===== */
.team-loading[b-uuwbmduso9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.75rem;
    padding: 1.5rem 0;
}

.team-loading-root[b-uuwbmduso9] {
    width: 14rem;
    height: 3.5rem;
    border-radius: 999px;
}

.team-loading-branches[b-uuwbmduso9] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.5rem;
}

    .team-loading-branches > div[b-uuwbmduso9] {
        display: flex;
        flex-direction: column;
        gap: .75rem;
        width: 17rem;
    }

.team-loading-card[b-uuwbmduso9] {
    height: 4rem;
}

.team-loading-leaf[b-uuwbmduso9] {
    height: 3.25rem;
    margin-left: 3rem;
}

.team-empty-state[b-uuwbmduso9] {
    padding: 3rem 1rem;
    border: 1px dashed var(--bs-border-color);
    border-radius: var(--bs-border-radius-lg);
    text-align: center;
}

.team-empty-icon[b-uuwbmduso9] {
    display: inline-grid;
    place-items: center;
    width: 3.5rem;
    height: 3.5rem;
    margin-bottom: 1rem;
    border-radius: 50%;
    background-color: var(--tm-primary-subtle);
    color: var(--tm-primary-text);
    font-size: 1.375rem;
}

/* ===== Smartphone: branches one below the other, without the lines to the root ===== */
@media (max-width: 767.98px) {
    .team-canvas[b-uuwbmduso9] {
        overflow: visible;
        padding: .75rem;
        background-image: none;
    }

    .team-tree[b-uuwbmduso9] {
        width: auto;
        padding: 0;
    }

    .team-root[b-uuwbmduso9] {
        align-self: stretch;
        margin-bottom: 1rem;
    }

        .team-root[b-uuwbmduso9]::after {
            display: none;
        }

    .team-branches[b-uuwbmduso9] {
        flex-direction: column;
        align-items: stretch;
        gap: 1rem;
        width: 100%;
    }

    .team-branch[b-uuwbmduso9] {
        flex-basis: auto;
        padding: 0;
    }

        .team-branch[b-uuwbmduso9]::before,
        .team-branch[b-uuwbmduso9]::after {
            display: none;
        }

    .team-tools-end[b-uuwbmduso9] {
        margin-left: 0;
    }
}
/* /Components/Pages/Admin/Users/UserEditor.razor.rz.scp.css */
/* Managed languages (flag, name and code) and support areas */
.language-list[b-lf5htpj9fo] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
    gap: .75rem 1.5rem;
}

.language-label[b-lf5htpj9fo] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}

.language-code[b-lf5htpj9fo] {
    color: var(--bs-secondary-color);
    font-size: .75rem;
    text-transform: uppercase;
}
/* /Components/Pages/Admin/Users/UserList.razor.rz.scp.css */
.user-cell[b-yzbi9y79pr] {
    display: flex;
    align-items: center;
    gap: .75rem;
    min-width: 0;
}

.user-avatar[b-yzbi9y79pr] {
    display: inline-grid;
    place-items: center;
    flex-shrink: 0;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background-color: var(--tm-primary-subtle);
    color: var(--tm-primary-text);
    font-size: .8125rem;
    font-weight: 600;
}

.user-cell-text[b-yzbi9y79pr] {
    min-width: 0;
}

.user-name[b-yzbi9y79pr] {
    color: var(--bs-emphasis-color);
    font-weight: 500;
}

.user-email[b-yzbi9y79pr] {
    color: var(--bs-secondary-color);
    font-size: .8125rem;
    overflow-wrap: anywhere;
}

/* Role: icon + fixed color per role (not the brand color: it's configurable and could match a role).
   Background = color at 14%, text darker in the light theme and lighter in the dark one (contrast >= 4.5:1 on the background);
   without a role: neutral and dashed. Support team copies the manager/support colors: keep them aligned */
.role-badge[b-yzbi9y79pr] {
    --role-rgb: 113, 113, 122;
    --role-text: var(--bs-secondary-color);
    display: inline-flex;
    align-items: center;
    gap: .375rem;
    padding: .2rem .6rem;
    border: 1px solid transparent;
    border-radius: 999px;
    background-color: rgba(var(--role-rgb), .14);
    color: var(--role-text);
    font-size: .75rem;
    font-weight: 600;
    white-space: nowrap;
}

    .role-badge i[b-yzbi9y79pr] {
        font-size: .6875rem;
    }

.role-badge.is-superadmin[b-yzbi9y79pr] { --role-rgb: 139, 92, 246; --role-text: #6D28D9; }
.role-badge.is-developer[b-yzbi9y79pr] { --role-rgb: 6, 182, 212; --role-text: #0E7490; }
.role-badge.is-administrator[b-yzbi9y79pr] { --role-rgb: 59, 130, 246; --role-text: #1D4ED8; }
.role-badge.is-manager[b-yzbi9y79pr] { --role-rgb: 245, 158, 11; --role-text: #B45309; }
.role-badge.is-support[b-yzbi9y79pr] { --role-rgb: 16, 185, 129; --role-text: #047857; }

[data-bs-theme=dark] .role-badge.is-superadmin[b-yzbi9y79pr] { --role-text: #C4B5FD; }
[data-bs-theme=dark] .role-badge.is-developer[b-yzbi9y79pr] { --role-text: #67E8F9; }
[data-bs-theme=dark] .role-badge.is-administrator[b-yzbi9y79pr] { --role-text: #93C5FD; }
[data-bs-theme=dark] .role-badge.is-manager[b-yzbi9y79pr] { --role-text: #FCD34D; }
[data-bs-theme=dark] .role-badge.is-support[b-yzbi9y79pr] { --role-text: #6EE7B7; }

.role-badge.is-none[b-yzbi9y79pr] {
    background-color: transparent;
    border-color: var(--bs-border-color);
    border-style: dashed;
}

/* Flags of the managed languages */
.user-flags[b-yzbi9y79pr] {
    display: inline-flex;
    flex-wrap: wrap;
    gap: .25rem;
}

/* Creation date column of the customers list: only from 1600px (beyond Bootstrap's breakpoints).
   ::deep because QuickGrid renders the cells */
.tm-table[b-yzbi9y79pr]  .col-created-wide {
    display: none;
}

@media (min-width: 1600px) {
    .tm-table[b-yzbi9y79pr]  .col-created-wide {
        display: table-cell;
    }
}

/* Creation date */
.user-date[b-yzbi9y79pr] {
    color: var(--bs-secondary-color);
    font-size: .875rem;
    white-space: nowrap;
}

/* Tickets opened (customers): aligned digits, zero dimmed */
.user-tickets[b-yzbi9y79pr] {
    color: var(--bs-emphasis-color);
    font-variant-numeric: tabular-nums;
    font-weight: 500;
}

    .user-tickets.is-zero[b-yzbi9y79pr] {
        color: var(--bs-secondary-color);
        font-weight: 400;
    }

/* Status: colored dot + text. The text may wrap ("Email not confirmed"): on narrow tables it would force a horizontal scroll */
.user-status[b-yzbi9y79pr] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: var(--bs-secondary-color);
    font-size: .875rem;
}

    .user-status[b-yzbi9y79pr]::before {
        content: "";
        flex-shrink: 0;
        width: .5rem;
        height: .5rem;
        border-radius: 50%;
        background-color: currentColor;
    }

    .user-status.is-active[b-yzbi9y79pr]::before {
        background-color: var(--bs-success);
    }

    .user-status.is-unconfirmed[b-yzbi9y79pr]::before {
        background-color: var(--bs-warning);
    }

    .user-status.is-locked[b-yzbi9y79pr] {
        color: var(--bs-danger-text-emphasis);
    }

        .user-status.is-locked[b-yzbi9y79pr]::before {
            background-color: var(--bs-danger);
        }
/* /Components/Pages/Admin/Users/UserPicker.razor.rz.scp.css */
.picker-tools[b-yn07xk0nev] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem 1.5rem;
    margin-bottom: .75rem;
}

.picker-count[b-yn07xk0nev] {
    margin-bottom: .75rem;
    color: var(--bs-secondary-color);
    font-size: .8125rem;
}

.picker-list[b-yn07xk0nev] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr));
    gap: .75rem 1.5rem;
}

/* Filtro per lingua: larghezza del contenuto */
.picker-language[b-yn07xk0nev] {
    width: auto;
    min-width: 10rem;
}

/* Nome con le bandierine delle lingue e, sotto, l'email (se il nome c'è) */
.picker-name[b-yn07xk0nev] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .375rem;
    color: var(--bs-emphasis-color);
}

.picker-email[b-yn07xk0nev] {
    display: block;
    color: var(--bs-secondary-color);
    font-size: .8125rem;
    overflow-wrap: anywhere;
}
/* /Components/Pages/NotFound.razor.rz.scp.css */
/* 404 centered in the page: big code in the brand gradient */
.not-found[b-psam1szuy5] {
    display: grid;
    place-items: center;
    align-content: center;
    min-height: calc(100vh - 12rem);
    padding: 2rem 0;
    text-align: center;
}

.not-found-code[b-psam1szuy5] {
    font-size: clamp(6rem, 22vw, 10rem);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -.06em;
    background-image: var(--tm-gradient);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    filter: drop-shadow(0 8px 16px rgba(var(--tm-primary-rgb), .18));
    animation: not-found-float-b-psam1szuy5 6s ease-in-out infinite;
}

.not-found h1[b-psam1szuy5] {
    margin: 1.25rem 0 .5rem;
}

.not-found p[b-psam1szuy5] {
    max-width: 28rem;
    margin: 0 auto 1.75rem;
    color: var(--bs-secondary-color);
}

.not-found-actions[b-psam1szuy5] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .75rem;
}

    .not-found-actions .btn[b-psam1szuy5] {
        display: inline-flex;
        align-items: center;
        gap: .5rem;
    }

@keyframes not-found-float-b-psam1szuy5 {
    50% {
        transform: translateY(-8px);
    }
}
/* /Components/Shared/PageHeader.razor.rz.scp.css */
.page-header[b-u7dyhe01x5] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem 1rem;
    margin-bottom: 1.5rem;
}

.page-back[b-u7dyhe01x5] {
    display: inline-grid;
    place-items: center;
    flex-shrink: 0;
    width: 2.25rem;
    height: 2.25rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 50%;
    background: var(--tm-surface);
    color: var(--bs-secondary-color);
    transition: color var(--tm-dur) var(--tm-ease), border-color var(--tm-dur) var(--tm-ease);
}

    .page-back i[b-u7dyhe01x5] {
        transition: transform var(--tm-dur) var(--tm-ease);
    }

    .page-back:hover[b-u7dyhe01x5] {
        color: var(--tm-primary-text);
        border-color: var(--tm-primary-border);
        text-decoration: none;
    }

        .page-back:hover i[b-u7dyhe01x5] {
            transform: translateX(-2px);
        }

.page-heading[b-u7dyhe01x5] {
    flex: 1;
    min-width: 0;
}

    .page-heading h1[b-u7dyhe01x5] {
        margin: 0;
        overflow-wrap: anywhere;
    }

.page-subtitle[b-u7dyhe01x5] {
    margin: .25rem 0 0;
    color: var(--bs-secondary-color);
}

.page-actions[b-u7dyhe01x5] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem;
}

/* Smartphone: le azioni vanno sotto il titolo, a tutta larghezza */
@media (max-width: 575.98px) {
    .page-actions[b-u7dyhe01x5] {
        flex-basis: 100%;
    }
}
/* /Components/Shared/PresenceDot.razor.rz.scp.css */
/* Status colors are fixed, like the other state colors. Solid: chosen status (available, busy, away); ring: idle (no input) or offline.
   On an avatar the parent sets --presence-ring to the background color: it detaches the dot and fills the ring */
.tm-presence[b-jmjxr8h2c0] {
    --presence: #71717A;
    position: relative;
    display: inline-block;
    flex-shrink: 0;
    box-sizing: border-box;
    width: .625rem;
    height: .625rem;
    border: 2px solid var(--presence);
    border-radius: 50%;
    background-color: var(--presence);
    box-shadow: 0 0 0 2px var(--presence-ring, transparent);
    transition: background-color var(--tm-dur) var(--tm-ease), border-color var(--tm-dur) var(--tm-ease);
}

.tm-presence.is-available[b-jmjxr8h2c0] { --presence: #16A34A; }
.tm-presence.is-busy[b-jmjxr8h2c0] { --presence: #DC2626; }
.tm-presence.is-idle[b-jmjxr8h2c0],
.tm-presence.is-away[b-jmjxr8h2c0] { --presence: #CA8A04; }

[data-bs-theme=dark] .tm-presence[b-jmjxr8h2c0] { --presence: #A1A1AA; }
[data-bs-theme=dark] .tm-presence.is-available[b-jmjxr8h2c0] { --presence: #22C55E; }
[data-bs-theme=dark] .tm-presence.is-busy[b-jmjxr8h2c0] { --presence: #EF4444; }
[data-bs-theme=dark] .tm-presence.is-idle[b-jmjxr8h2c0],
[data-bs-theme=dark] .tm-presence.is-away[b-jmjxr8h2c0] { --presence: #EAB308; }

.tm-presence.is-idle[b-jmjxr8h2c0],
.tm-presence.is-offline[b-jmjxr8h2c0] {
    background-color: var(--presence-ring, transparent);
}

/* Busy: white bar, recognizable without the color */
.tm-presence.is-busy[b-jmjxr8h2c0]::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 15%;
    left: 15%;
    height: 2px;
    margin-top: -1px;
    border-radius: 1px;
    background-color: #fff;
}
