@import '_content/Gazprom.UI.Kit/Gazprom.UI.Kit.hmxrefm053.bundle.scp.css';
@import '_content/Mosys.Auth.Blazor/Mosys.Auth.Blazor.36esnshqk7.bundle.scp.css';

/* _content/MoSys.App.Web/Components/Alarms/AlarmsHeader.razor.rz.scp.css */
/* ── Alarms header row ───────────────────────────────── */
.alarms-header[b-hdwn5oaduh] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
}
/* _content/MoSys.App.Web/Components/Alarms/MetricAlertComponent.razor.rz.scp.css */
/* ── Bottom alarm bar ──────────────────────────────────── */
.alarms-bar[b-l4s4t1yz8u] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 32px;
    background: var(--color-bg-surface);
    border-top: 1px solid var(--color-border-default);
    box-shadow: 0 -1px 4px rgba(0, 0, 0, 0.06);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 var(--space-4);
    font-size: var(--text-xs);
    color: var(--color-text-secondary);
    z-index: var(--z-sticky);
}

.alarms-preview[b-l4s4t1yz8u] {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

/* ── Expandable panel ─────────────────────────────────── */
.alarms-panel[b-l4s4t1yz8u] {
    position: fixed;
    bottom: 32px;
    left: 0;
    right: 0;
    max-height: 35dvh;
    background: var(--color-bg-secondary);
    border-top: 1px solid var(--color-border-default);
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.1);
    overflow-y: auto;
    font-size: var(--text-sm);
    z-index: var(--z-sticky);
}

/* ── Individual alarm row ─────────────────────────────── */
.alarm-item[b-l4s4t1yz8u] {
    padding: var(--space-2) var(--space-4);
    border-bottom: 1px solid var(--color-border-subtle);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ── Empty state ──────────────────────────────────────── */
.empty-state[b-l4s4t1yz8u] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--space-8) var(--space-4);
    color: var(--color-text-muted);
    font-size: var(--text-sm);
}
/* _content/MoSys.App.Web/Components/Alarms/MetricGridColumnsComponent.razor.rz.scp.css */
.ack-btn[b-mjmn88h6la] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    line-height: 1;
    border: 1px solid transparent;
    cursor: pointer;
    user-select: none;
    transition: background-color .15s ease, color .15s ease, border-color .15s ease, opacity .15s ease;
}

.ack-ico[b-mjmn88h6la] {
    width: 14px;
    height: 14px;
    flex: 0 0 14px;
}

.ack-no[b-mjmn88h6la] {
    background: #fff;
    color: #8a5300;
    border-color: #ffb84d;
}

    .ack-no:hover[b-mjmn88h6la] {
        background: #fff7e6;
        border-color: #ffa940;
    }

    .ack-no:active[b-mjmn88h6la] {
        background: #ffe7ba;
    }

.ack-yes[b-mjmn88h6la] {
    background: #f6ffed;
    color: #237804;
    border-color: #95de64;
}

    .ack-yes:hover[b-mjmn88h6la] {
        background: #eaffd5;
        border-color: #73d13d;
    }

.ack-btn:disabled[b-mjmn88h6la] {
    opacity: .6;
    cursor: default;
}
/* _content/MoSys.App.Web/Components/AuditLog/AuditLogFilters.razor.rz.scp.css */
.audit-log-filters[b-s81v2nxzat] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

.audit-log-filters__grid[b-s81v2nxzat] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-2);
}

.audit-log-filters__spacer[b-s81v2nxzat] {
    visibility: hidden;
}

.audit-log-filters__actions[b-s81v2nxzat] {
    display: flex;
    gap: var(--space-2);
    margin-top: var(--space-2);
}
/* _content/MoSys.App.Web/Components/FileExplorer/FileExplorerComponent.razor.rz.scp.css */
[b-rwnhlxsysp] .fe-drop-target {
    background-color: rgba(59, 130, 246, 0.1);
    outline: 2px dashed #3b82f6;
    outline-offset: -2px;
    border-radius: 4px;
}

[b-rwnhlxsysp] .fe-drop-copy {
    outline-color: #10b981;
    background-color: rgba(16, 185, 129, 0.1);
}

[b-rwnhlxsysp] .fe-cut-node {
    opacity: 0.45;
}
/* _content/MoSys.App.Web/Components/Hierarchy/Dashboards/DashboardSelectorBar.razor.rz.scp.css */
/* ============================================================
   DashboardSelectorBar — Radzen Overrides (scoped)
   ============================================================ */

/* ── DropDown override ───────────────────────────────────── */
[b-e6zzn9cean] .rz-dropdown {
    background: var(--color-bg-surface);
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-md);
    font-size: var(--text-sm);
    height: 32px;
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

[b-e6zzn9cean] .rz-dropdown .rz-dropdown-label {
    background: transparent;
    padding: var(--space-1) var(--space-3);
    line-height: 1.4;
}

[b-e6zzn9cean] .rz-dropdown:hover {
    border-color: var(--color-border-strong);
}

[b-e6zzn9cean] .rz-dropdown:focus-within,
[b-e6zzn9cean] .rz-dropdown.rz-state-focused {
    border-color: var(--color-border-focus);
    box-shadow: var(--shadow-glow-blue);
}

/* ── TextBox override ────────────────────────────────────── */
[b-e6zzn9cean] .rz-textbox {
    background: var(--color-bg-tertiary);
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-md);
    color: var(--color-text-primary);
    font-size: var(--text-sm);
    padding: var(--space-2) var(--space-3);
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

[b-e6zzn9cean] .rz-textbox:focus {
    border-color: var(--color-border-focus);
    box-shadow: var(--shadow-glow-blue);
    outline: none;
}

/* ── Button base ─────────────────────────────────────────── */
[b-e6zzn9cean] .rz-button {
    font-size: var(--text-sm);
    font-weight: var(--font-weight-medium);
    border-radius: var(--radius-md);
    padding: var(--space-1) var(--space-3);
    transition: background var(--transition-fast),
                box-shadow var(--transition-fast),
                border-color var(--transition-fast);
    white-space: nowrap;
    gap: var(--space-1);
}

[b-e6zzn9cean] .rz-button .rzi {
    font-size: 16px;
}

/* ── Primary button ──────────────────────────────────────── */
[b-e6zzn9cean] .rz-button.rz-primary,
[b-e6zzn9cean] .rz-button.btn-primary {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
    border: none;
}

[b-e6zzn9cean] .rz-button.rz-primary:hover,
[b-e6zzn9cean] .rz-button.btn-primary:hover {
    background: var(--color-primary-hover);
    box-shadow: var(--shadow-glow-blue);
}

/* ── Light / ghost button ────────────────────────────────── */
[b-e6zzn9cean] .rz-button.rz-light,
[b-e6zzn9cean] .rz-button.btn-light {
    background: transparent;
    border: 1px solid var(--color-border-default);
    color: var(--color-text-secondary);
}

[b-e6zzn9cean] .rz-button.rz-light:hover,
[b-e6zzn9cean] .rz-button.btn-light:hover {
    background: var(--color-bg-tertiary);
    border-color: var(--color-border-strong);
    color: var(--color-text-primary);
}

/* ── Secondary button ────────────────────────────────────── */
[b-e6zzn9cean] .rz-button.rz-secondary,
[b-e6zzn9cean] .rz-button.btn-secondary {
    background: var(--color-bg-tertiary);
    border: 1px solid var(--color-border-default);
    color: var(--color-text-secondary);
}

[b-e6zzn9cean] .rz-button.rz-secondary:hover,
[b-e6zzn9cean] .rz-button.btn-secondary:hover {
    background: var(--color-bg-elevated);
    border-color: var(--color-border-strong);
}

/* ── Info button ─────────────────────────────────────────── */
[b-e6zzn9cean] .rz-button.rz-info,
[b-e6zzn9cean] .rz-button.btn-info {
    background: var(--color-info-bg);
    border: 1px solid var(--color-info-border);
    color: var(--color-info-text);
}

[b-e6zzn9cean] .rz-button.rz-info:hover,
[b-e6zzn9cean] .rz-button.btn-info:hover {
    box-shadow: var(--shadow-glow-blue);
}

/* ── Danger button (delete) ───────────────────────────────── */
[b-e6zzn9cean] .dashboard-selector__btn-danger {
    color: var(--color-error-text) !important;
    border-color: var(--color-error-border) !important;
}

[b-e6zzn9cean] .dashboard-selector__btn-danger:hover {
    background: var(--color-error-bg) !important;
    border-color: var(--color-error-icon) !important;
    color: var(--color-error-icon) !important;
}

/* ── Disabled state ──────────────────────────────────────── */
[b-e6zzn9cean] .rz-button[disabled],
[b-e6zzn9cean] .rz-button.rz-state-disabled {
    opacity: 0.45;
    pointer-events: none;
}
/* _content/MoSys.App.Web/Components/Hierarchy/Dashboards/GridLayout.razor.rz.scp.css */
/* ============================================================
   GridLayout — Scoped Overrides
   ============================================================
   Note: most GridStack styles are in mosys-theme.css (global)
   because Blazor scoped CSS cannot reach GridStack-managed DOM.
   ============================================================ */

html[b-diya1hodsm], body[b-diya1hodsm] {
    height: 100%;
}

.dashboard-body[b-diya1hodsm] {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    margin: 0 !important;
    padding: 0 !important;
}

/* Palette sidebar — Radzen override */
[b-diya1hodsm] .rz-sidebar {
    background: var(--color-bg-secondary);
    border-right: 1px solid var(--color-border-default);
}

/* Search input — Radzen override */
.palette-search[b-diya1hodsm]  .rz-textbox {
    background: var(--color-bg-tertiary);
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-md);
    color: var(--color-text-primary);
    font-size: var(--text-sm);
    padding: var(--space-2) var(--space-3);
    width: 100%;
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.palette-search[b-diya1hodsm]  .rz-textbox:focus {
    border-color: var(--color-border-focus);
    box-shadow: var(--shadow-glow-blue);
    outline: none;
}

.palette-search[b-diya1hodsm]  .rz-textbox::placeholder {
    color: var(--color-text-muted);
}

/* Palette tabs — Radzen override */
[b-diya1hodsm] .rz-tabview-nav {
    border-bottom: 1px solid var(--color-border-default);
    gap: 0;
    padding: 0;
    background: transparent;
}

[b-diya1hodsm] .rz-tabview-nav li {
    margin-bottom: -1px;
}

[b-diya1hodsm] .rz-tabview-nav li a {
    font-size: var(--text-sm);
    font-weight: var(--font-weight-medium);
    color: var(--color-text-muted);
    border-bottom: 2px solid transparent;
    padding: var(--space-2) var(--space-3);
    transition: color var(--transition-fast), border-color var(--transition-fast);
}

[b-diya1hodsm] .rz-tabview-nav li a:hover {
    color: var(--color-text-secondary);
}

[b-diya1hodsm] .rz-tabview-nav li.rz-tabview-selected a,
[b-diya1hodsm] .rz-tabview-nav li.rz-state-active a {
    color: var(--color-primary);
    border-bottom-color: var(--color-primary);
}
/* _content/MoSys.App.Web/Components/Hierarchy/Dashboards/Palette.razor.rz.scp.css */
/* ============================================================
   Palette — Design System Styles
   ============================================================ */

/* ── Palette item card ───────────────────────────────────── */
[b-nd9ggurze1] .palette-item-card {
    padding: var(--space-2) var(--space-3) !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

[b-nd9ggurze1] .palette-item-card .rz-text {
    font-size: var(--text-sm);
    color: var(--color-text-secondary);
    font-weight: var(--font-weight-medium);
    margin: 0;
}

/* ── Palette list spacing ────────────────────────────────── */
[b-nd9ggurze1] .palette-list {
    gap: var(--space-2);
}

/* ── Tab overrides ───────────────────────────────────────── */
[b-nd9ggurze1] .rz-tabview {
    background: transparent;
}

[b-nd9ggurze1] .rz-tabview-panels {
    padding: 0;
    background: transparent;
}
/* _content/MoSys.App.Web/Components/Hierarchy/DeviceConfigurationItems/DeviceItem.razor.rz.scp.css */
.disabled-tab[b-eo9n2s4z84] {
    cursor: not-allowed;
    opacity: 0.5;
    pointer-events: none;
}
/* _content/MoSys.App.Web/Components/Layout/AppMenu.razor.rz.scp.css */
/* _content/MoSys.App.Web/Components/Layout/MainLayout.razor.rz.scp.css */
/* ── Header icon button (shared pattern) ───────────────── */
.header-icon-btn[b-z3e9vahr1g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: none;
    border-radius: var(--radius-md);
    background: transparent;
    color: var(--color-icon-secondary);
    cursor: pointer;
    transition: background var(--transition-fast), color var(--transition-fast);
    flex-shrink: 0;
}

.header-icon-btn:hover[b-z3e9vahr1g] {
    background: var(--color-bg-tertiary);
    color: var(--color-icon-primary);
}

.header-icon-btn:focus-visible[b-z3e9vahr1g] {
    outline: 2px solid var(--color-border-focus);
    outline-offset: 2px;
}

/* Alerts variant — shows a subtle indicator dot when active */
.header-icon-btn--alerts[b-z3e9vahr1g] {
    position: relative;
}

/* ── Vertical separator ────────────────────────────────── */
.header-separator[b-z3e9vahr1g] {
    width: 1px;
    height: 24px;
    background: var(--color-border-default);
    flex-shrink: 0;
}

/* ── User area ─────────────────────────────────────────── */
.header-user-area[b-z3e9vahr1g] {
    display: flex;
    align-items: center;
    min-width: 0;
}

.header-user-trigger[b-z3e9vahr1g] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
    height: 36px;
    padding: 0 var(--space-3);
    border-radius: var(--radius-md);
    color: var(--color-text-secondary);
    cursor: pointer;
    transition: background var(--transition-fast), color var(--transition-fast);
    white-space: nowrap;
}

.header-user-trigger:hover[b-z3e9vahr1g] {
    background: var(--color-bg-tertiary);
    color: var(--color-text-primary);
}

.header-avatar[b-z3e9vahr1g] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: var(--radius-full);
    background: var(--color-primary-light);
    color: var(--color-primary);
    flex-shrink: 0;
}

.header-username[b-z3e9vahr1g] {
    font-size: var(--text-sm);
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 320px;
    min-width: 0;
}

@media (max-width: 1024px) {
    .header-username[b-z3e9vahr1g] {
        max-width: 200px;
    }
}

.header-chevron[b-z3e9vahr1g] {
    color: var(--color-icon-muted);
    flex-shrink: 0;
    transition: transform var(--transition-fast);
}
/* _content/MoSys.App.Web/Components/Layout/SubMenuHeaderLink.razor.rz.scp.css */
.menu-title-link[b-hklhw7qoht] {
    cursor: pointer;
    text-decoration: none;
    color: rgba(255, 255, 255, 0.65);
}

.menu-title-link:hover[b-hklhw7qoht] {
    opacity: .9;
}
/* _content/MoSys.App.Web/Components/MetricsSettings/MetricsSettingsControlPanel.razor.rz.scp.css */
.rules-page[b-slhtd1j6dd] {
    position: relative;
    margin-bottom: 32px;
    display: flex;
    flex-direction: column;
}

.top-panel[b-slhtd1j6dd] {
    flex-shrink: 0;
    margin-top: -24px;
    margin-inline: -1.5rem;
    padding-inline: 1.5rem;
    padding-top: 20px;
    padding-bottom: 20px;
    z-index: 100;
    background: var(--rz-base-background-color);
    border-bottom: 1px solid var(--rz-border-normal);
    margin-bottom: 16px;
}

.content[b-slhtd1j6dd] {
    flex: 1;
}

.page-title[b-slhtd1j6dd] {
    margin: 0;
    font-size: 42px;
    font-weight: 700;
}

.main-summary-item[b-slhtd1j6dd] {
    text-align: right;
}

.main-summary-caption[b-slhtd1j6dd] {
    color: #7c8796;
    font-size: 18px;
}

.main-summary-value[b-slhtd1j6dd] {
    font-size: 18px;
    font-weight: 700;
}

.card-top[b-slhtd1j6dd] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
}

.card-info[b-slhtd1j6dd] {
    flex: 1;
    min-width: 0;
}
[b-slhtd1j6dd] .card{
    height: 260px;
    display: flex;
    flex-direction: column;
    background: var(--color-bg-surface);
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    padding: var(--space-3);
    transition: box-shadow var(--transition-fast), border-color var(--transition-fast);
}

[b-slhtd1j6dd] .card:hover{
    box-shadow: var(--shadow-md);
    border-color: var(--color-border-strong);
}

.card-type[b-slhtd1j6dd] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #7d8794;
    font-size: 13px;
}

.card-title[b-slhtd1j6dd] {
    margin-top: 18px;
    font-size: 24px;
    font-weight: 700;
}

.type-badge[b-slhtd1j6dd] {
    border: 1px solid var(--rz-border-normal);
    border-radius: 6px;
    padding: 2px 8px;
}

.separator[b-slhtd1j6dd] {
    margin: 18px 0;
    border-top: 2px dashed var(--rz-progressbar-background-color);
}

.metrics-row[b-slhtd1j6dd] {
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.metrics-value[b-slhtd1j6dd] {
    font-size: 22px;
    font-weight: 700;
    color: #72c8ff;
}

.metrics-total[b-slhtd1j6dd] {
    color: #7d8794;
}

.badges-row[b-slhtd1j6dd] {
    margin-top: 14px;
}

.badges-item[b-slhtd1j6dd] {
    margin-top: 10px;
}

.configure-block[b-slhtd1j6dd] {
    margin-top: 28px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #7d8794;
}

.sidebar-overlay[b-slhtd1j6dd] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    backdrop-filter: blur(2px);
    z-index: 1000;
}

.details-sidebar[b-slhtd1j6dd] {
    position: fixed;
    top: 0;
    right: 0;
    width: 35%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    background: var(--rz-base-background-color);
    border-left: 2px solid var(--color-border-default);
    z-index: 1001;
    animation: sidebarSlide-b-slhtd1j6dd 0.2s ease;
}

.details-container[b-slhtd1j6dd] {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 30px;
    min-height: 0;
    overflow: hidden;
}

.details-header[b-slhtd1j6dd] {
    flex-shrink: 0;
}

.alarm-list-scroll[b-slhtd1j6dd] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
}

.alarm-list[b-slhtd1j6dd] {
    padding-right: 6px;
}

.sidebar-tools[b-slhtd1j6dd] {
    flex-shrink: 0;
    padding: 20px 30px;
    border-top: 1px solid var(--color-border-default);
    background: var(--rz-base-background-color);
}

.sidebar-tools AppButton[b-slhtd1j6dd] {
    margin-right:30px; 
}

@keyframes sidebarSlide-b-slhtd1j6dd {
    from {
        transform: translateX(100%);
    }

    to {
        transform: translateX(0);
    }
}



.details-type[b-slhtd1j6dd] {
    display: flex;
    align-items: center;
    color: #7d8794;
    font-size: 18px;
    gap: 1em;
    margin-bottom: 10px;
}

.details-title[b-slhtd1j6dd] {
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 30px;
}


.alarm-list-title[b-slhtd1j6dd] {
    margin-top: 10px;
    margin-bottom: 10px;
}



.details-summary[b-slhtd1j6dd] {
    font-size: 24px;
    margin-bottom: 32px;
}

.sidebar-summary-block[b-slhtd1j6dd] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 18px;
}

.sidebar-summary-caption[b-slhtd1j6dd] {
    color: #7d8794;
}
/* _content/MoSys.App.Web/Components/MetricsSettings/Rules/NumericComparisonRuleComponent.razor.rz.scp.css */
.op-value[b-dfhum3cwt8] {
    display: flex;
    gap: 8px;
    align-items: stretch;
}

    .op-value .w-40[b-dfhum3cwt8] {
        flex: 0 0 40%;
    }

    .op-value .w-60[b-dfhum3cwt8] {
        flex: 1 1 60%;
    }

        .op-value .w-40 .ant-select[b-dfhum3cwt8],
        .op-value .w-60 .ant-input-number[b-dfhum3cwt8] {
            width: 100%;
        }
/* _content/MoSys.App.Web/Components/Sla/SlaSummaryPage.razor.rz.scp.css */
.sla-page[b-h4v42xg3qx] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    padding: var(--space-4);
    box-sizing: border-box;
    min-height: 0;
}

.sla-page__loading[b-h4v42xg3qx] {
    width: 100%;
    pointer-events: none;
}

/* Drill-down detail panel inside an expanded row. */
.sla-page__detail[b-h4v42xg3qx] {
    padding: var(--space-2) var(--space-3);
    background: color-mix(in srgb, var(--rz-primary) 4%, transparent);
}

/* Let column headers wrap instead of being clipped with an ellipsis. */
.sla-page[b-h4v42xg3qx]  .rz-column-title {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
}

.sla-page[b-h4v42xg3qx]  .rz-column-title-content {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    line-height: var(--leading-snug);
}

.sla-page[b-h4v42xg3qx]  .rz-grid-table th {
    vertical-align: middle;
}
/* _content/MoSys.App.Web/Components/UserReports/UserReportComponent.razor.rz.scp.css */
.user-reports[b-2gfzcm2acz] {
    padding: var(--space-4);
}

.user-reports__grid[b-2gfzcm2acz] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-4);
}

.user-reports__left[b-2gfzcm2acz] {
    position: sticky;
    top: 0;
}

.user-reports__stack[b-2gfzcm2acz] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

.user-reports__form-row[b-2gfzcm2acz] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: var(--space-3);
}

.user-reports__form-row > label[b-2gfzcm2acz] {
    font-size: var(--text-sm);
    color: var(--color-text-secondary);
}

.user-reports__hint[b-2gfzcm2acz] {
    font-size: var(--text-xs);
    color: var(--color-text-muted);
}

h6[b-2gfzcm2acz] {
    margin: 0;
    font-size: var(--text-base);
    font-weight: var(--font-weight-semibold);
    color: var(--color-text-primary);
}

[b-2gfzcm2acz] .app-icon-btn,
[b-2gfzcm2acz] .app-btn {
    width: 100%;
}
/* _content/MoSys.App.Web/Components/UserReports/UserReportMetricFilters.razor.rz.scp.css */
.filters__grid[b-i7twgw384t] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-3);
}
/* _content/MoSys.App.Web/Components/UserReports/UserReportMetricsComponent.razor.rz.scp.css */
.metrics__stack[b-odp45kba95] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

.metrics__form-row[b-odp45kba95] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: start;
    gap: var(--space-3);
}

.metrics__form-row > label[b-odp45kba95] {
    font-size: var(--text-sm);
    color: var(--color-text-secondary);
    padding-top: var(--space-2);
}

[b-odp45kba95] .app-icon-btn {
    width: 100%;
}
/* _content/MoSys.App.Web/Components/UserReports/UserReportTemplateFieldMapping.razor.rz.scp.css */
.mapping__stack[b-x1x083j9p3] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

.mapping__grid[b-x1x083j9p3] {
    display: grid;
    grid-template-columns: 5fr 3fr 4fr;
    gap: var(--space-3);
    font-size: var(--text-xs);
}

.mapping__grid--header[b-x1x083j9p3] {
    padding: 0 var(--space-1);
}

.mapping__col-header[b-x1x083j9p3] {
    font-weight: var(--font-weight-semibold);
}

.mapping__description[b-x1x083j9p3] {
    color: var(--color-text-secondary);
}

.mapping__hint[b-x1x083j9p3] {
    font-size: var(--text-xs);
    color: var(--color-text-muted);
    line-height: 1.4;
}

.mapping__tag[b-x1x083j9p3] {
    display: inline-block;
    padding: 2px var(--space-2);
    border-radius: var(--radius-full);
    font-family: monospace;
    font-size: var(--text-xs);
}

.mapping__tag--empty[b-x1x083j9p3] {
    background: var(--color-bg-tertiary);
    color: var(--color-text-muted);
}

.mapping__tag--warning[b-x1x083j9p3] {
    background: var(--color-warning-bg);
    color: var(--color-warning-text);
}
/* _content/MoSys.App.Web/Components/UserReports/UserReportTemplatePreviewComponent.razor.rz.scp.css */
.preview__stack[b-zm2comii5o] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

h6[b-zm2comii5o] {
    margin: 0;
    font-size: var(--text-base);
    font-weight: var(--font-weight-semibold);
    color: var(--color-text-primary);
}

.preview__iframe[b-zm2comii5o] {
    width: 100%;
    height: 70vh;
    border: 1px solid var(--color-border-default);
    border-radius: var(--radius-md);
}

.preview__caption[b-zm2comii5o] {
    font-size: var(--text-xs);
    color: var(--color-text-muted);
}

.preview__placeholder[b-zm2comii5o] {
    height: 70vh;
    border: 1px dashed var(--color-border-default);
    border-radius: var(--radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--space-4);
    text-align: center;
}

.preview__placeholder-content[b-zm2comii5o] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    font-size: var(--text-sm);
    color: var(--color-text-secondary);
}

.preview__placeholder-hint[b-zm2comii5o] {
    color: var(--color-text-muted);
}
/* _content/MoSys.App.Web/Components/Widgets/Components/DecompositionClusterWidgetComponent.razor.rz.scp.css */
.decomposition-cluster[b-ovkytt9bk6] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    height: 100%;
    min-height: 0;
    padding: 2px;
}

.decomposition-cluster__empty[b-ovkytt9bk6] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px dashed var(--color-border-default);
    border-radius: var(--radius-xl);
    color: var(--color-text-muted);
    text-align: center;
    padding: var(--space-4);
    background: linear-gradient(180deg, color-mix(in srgb, var(--color-primary) 4%, white), transparent 100%);
}

.decomposition-cluster__hero[b-ovkytt9bk6] {
    display: flex;
    justify-content: space-between;
    align-items: start;
    gap: var(--space-4);
    padding: 0 var(--space-1);
}

.decomposition-cluster__eyebrow[b-ovkytt9bk6],
.decomposition-cluster__stat-label[b-ovkytt9bk6] {
    color: var(--color-text-muted);
    font-size: var(--text-xs);
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.decomposition-cluster__title[b-ovkytt9bk6] {
    font-size: clamp(28px, 3vw, 36px);
    line-height: 1;
    font-weight: 900;
    color: var(--color-text-primary);
    margin-top: 6px;
}

.decomposition-cluster__subtitle[b-ovkytt9bk6],
.decomposition-cluster__group-meta[b-ovkytt9bk6],
.decomposition-cluster__device-description[b-ovkytt9bk6] {
    margin-top: 8px;
    color: var(--color-text-secondary);
    font-size: var(--text-sm);
}

.decomposition-cluster__status[b-ovkytt9bk6],
.decomposition-cluster__device-status[b-ovkytt9bk6] {
    border-radius: var(--radius-full);
    padding: 6px 12px;
    font-size: var(--text-xs);
    font-weight: 700;
    white-space: nowrap;
}

.decomposition-cluster__stats[b-ovkytt9bk6] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: var(--space-3);
}

.decomposition-cluster__stat-card[b-ovkytt9bk6] {
    --tree-accent: var(--color-primary);
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: var(--space-3);
    border-radius: var(--radius-xl);
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--tree-accent) 7%, white), transparent 100%),
        var(--color-bg-primary);
    border: 1px solid color-mix(in srgb, var(--tree-accent) 14%, var(--color-border-default));
}

.decomposition-cluster__stat-card--alert[b-ovkytt9bk6] {
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--tree-accent) 12%, white), transparent 100%),
        var(--color-bg-primary);
}

.decomposition-cluster__stat-value[b-ovkytt9bk6] {
    font-size: 30px;
    line-height: 1;
    font-weight: 900;
    color: var(--color-text-primary);
}

.decomposition-cluster__groups[b-ovkytt9bk6] {
    min-height: 0;
    overflow: auto;
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    padding-right: 4px;
}

.decomposition-cluster__group[b-ovkytt9bk6] {
    --tree-accent: var(--color-primary);
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

.decomposition-cluster__group-card[b-ovkytt9bk6] {
    padding: var(--space-3);
    border-radius: var(--radius-2xl);
    border: 1px solid color-mix(in srgb, var(--tree-accent) 14%, var(--color-border-default));
    background:
        radial-gradient(circle at top right, color-mix(in srgb, var(--tree-accent) 12%, transparent), transparent 40%),
        var(--color-bg-primary);
}

.decomposition-cluster__group-top[b-ovkytt9bk6],
.decomposition-cluster__device-top[b-ovkytt9bk6] {
    display: flex;
    justify-content: space-between;
    gap: var(--space-3);
    align-items: start;
}

.decomposition-cluster__group-toggle[b-ovkytt9bk6] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
    cursor: pointer;
}

.decomposition-cluster__group-dot[b-ovkytt9bk6] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--tree-accent);
    box-shadow: 0 0 0 6px color-mix(in srgb, var(--tree-accent) 14%, transparent);
    flex: 0 0 auto;
}

.decomposition-cluster__group-name[b-ovkytt9bk6],
.decomposition-cluster__device-name[b-ovkytt9bk6] {
    font-size: var(--text-lg);
    font-weight: 800;
    color: var(--color-text-primary);
}

.decomposition-cluster__group-side[b-ovkytt9bk6],
.decomposition-cluster__actions[b-ovkytt9bk6] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    justify-content: flex-end;
}

.decomposition-cluster__group-state[b-ovkytt9bk6] {
    color: var(--tree-accent);
    font-size: var(--text-xs);
    font-weight: 700;
}

.decomposition-cluster__group-icon[b-ovkytt9bk6] {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--tree-accent);
    background: color-mix(in srgb, var(--tree-accent) 10%, white);
    flex: 0 0 auto;
}

.decomposition-cluster__device-grid[b-ovkytt9bk6] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: var(--space-3);
}

.decomposition-cluster__device-card[b-ovkytt9bk6] {
    position: relative;
    padding: var(--space-3);
    border-radius: var(--radius-xl);
    overflow: hidden;
}

.decomposition-cluster__device-card[b-ovkytt9bk6]::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 5px;
    background: var(--tree-accent, var(--color-primary));
    opacity: 0.8;
}

.decomposition-cluster__pill-row[b-ovkytt9bk6] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-2);
    margin-top: var(--space-3);
}

.decomposition-cluster__pill[b-ovkytt9bk6] {
    display: inline-flex;
    align-items: center;
    padding: 6px 10px;
    border-radius: var(--radius-full);
    font-size: var(--text-xs);
    color: var(--color-text-secondary);
    background: var(--color-bg-secondary);
    border: 1px solid var(--color-border-default);
}

@media (max-width: 900px) {
    .decomposition-cluster__hero[b-ovkytt9bk6],
    .decomposition-cluster__group-top[b-ovkytt9bk6],
    .decomposition-cluster__device-top[b-ovkytt9bk6] {
        flex-direction: column;
        align-items: stretch;
    }

    .decomposition-cluster__group-side[b-ovkytt9bk6],
    .decomposition-cluster__actions[b-ovkytt9bk6] {
        justify-content: flex-start;
    }
}
/* _content/MoSys.App.Web/Components/Widgets/Components/DecompositionPanoramaWidgetComponent.razor.rz.scp.css */
.decomposition-panorama[b-1f6ffwwnm8] {
    display: flex;
    flex-direction: column;
    gap: var(--space-4);
    height: 100%;
    min-height: 0;
    padding: 2px;
}

.decomposition-panorama__empty[b-1f6ffwwnm8] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-2xl);
    border: 1px dashed var(--color-border-default);
    color: var(--color-text-muted);
    padding: var(--space-4);
    text-align: center;
    background: linear-gradient(135deg, color-mix(in srgb, var(--color-primary) 6%, white), transparent 70%);
}

.decomposition-panorama__hero-card[b-1f6ffwwnm8] {
    padding: 0;
    overflow: hidden;
    border-radius: var(--radius-2xl);
}

.decomposition-panorama__hero[b-1f6ffwwnm8] {
    --tree-accent: var(--color-primary);
    display: flex;
    justify-content: space-between;
    gap: var(--space-4);
    padding: var(--space-4);
    background:
        radial-gradient(circle at top right, color-mix(in srgb, var(--tree-accent) 20%, transparent), transparent 32%),
        linear-gradient(180deg, color-mix(in srgb, var(--tree-accent) 10%, white), transparent 70%),
        var(--color-bg-primary);
}

.decomposition-panorama__eyebrow[b-1f6ffwwnm8],
.decomposition-panorama__metric-label[b-1f6ffwwnm8] {
    color: var(--color-text-muted);
    font-size: var(--text-xs);
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.decomposition-panorama__title[b-1f6ffwwnm8] {
    font-size: clamp(30px, 3vw, 40px);
    line-height: 0.95;
    font-weight: 900;
    color: var(--color-text-primary);
    margin-top: 8px;
}

.decomposition-panorama__subtitle[b-1f6ffwwnm8],
.decomposition-panorama__board-meta[b-1f6ffwwnm8],
.decomposition-panorama__device-description[b-1f6ffwwnm8],
.decomposition-panorama__node-meta[b-1f6ffwwnm8] {
    margin-top: 10px;
    color: var(--color-text-secondary);
    font-size: var(--text-sm);
}

.decomposition-panorama__hero-side[b-1f6ffwwnm8] {
    min-width: 300px;
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
    align-items: flex-end;
}

.decomposition-panorama__status[b-1f6ffwwnm8],
.decomposition-panorama__device-status[b-1f6ffwwnm8],
.decomposition-panorama__board-state[b-1f6ffwwnm8],
.decomposition-panorama__node-badge[b-1f6ffwwnm8] {
    border-radius: var(--radius-full);
    padding: 6px 12px;
    font-size: var(--text-xs);
    font-weight: 700;
    white-space: nowrap;
}

.decomposition-panorama__hero-stats[b-1f6ffwwnm8] {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: var(--space-2);
}

.decomposition-panorama__metric[b-1f6ffwwnm8] {
    padding: var(--space-3);
    border-radius: var(--radius-xl);
    background: color-mix(in srgb, var(--color-bg-secondary) 88%, white);
    border: 1px solid var(--color-border-default);
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.decomposition-panorama__metric--accent[b-1f6ffwwnm8] {
    background: color-mix(in srgb, var(--tree-accent) 10%, white);
    border-color: color-mix(in srgb, var(--tree-accent) 18%, var(--color-border-default));
}

.decomposition-panorama__metric-value[b-1f6ffwwnm8] {
    font-size: 28px;
    line-height: 1;
    font-weight: 900;
    color: var(--color-text-primary);
}

.decomposition-panorama__boards[b-1f6ffwwnm8],
.decomposition-panorama__devices[b-1f6ffwwnm8] {
    min-height: 0;
    overflow: auto;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: var(--space-3);
    padding-right: 4px;
}

.decomposition-panorama__board[b-1f6ffwwnm8],
.decomposition-panorama__device-card[b-1f6ffwwnm8] {
    --tree-accent: var(--color-primary);
    padding: var(--space-3);
    border-radius: var(--radius-2xl);
    border: 1px solid color-mix(in srgb, var(--tree-accent) 14%, var(--color-border-default));
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--tree-accent) 7%, white), transparent 100%),
        var(--color-bg-primary);
}

.decomposition-panorama__board-head[b-1f6ffwwnm8],
.decomposition-panorama__device-card-head[b-1f6ffwwnm8] {
    display: flex;
    justify-content: space-between;
    gap: var(--space-3);
    align-items: start;
}

.decomposition-panorama__board-title-row[b-1f6ffwwnm8] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
}

.decomposition-panorama__board-dot[b-1f6ffwwnm8] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--tree-accent);
    box-shadow: 0 0 0 5px color-mix(in srgb, var(--tree-accent) 14%, transparent);
}

.decomposition-panorama__board-name[b-1f6ffwwnm8],
.decomposition-panorama__device-name[b-1f6ffwwnm8] {
    font-size: var(--text-lg);
    font-weight: 800;
    color: var(--color-text-primary);
}

.decomposition-panorama__board-actions[b-1f6ffwwnm8],
.decomposition-panorama__device-actions[b-1f6ffwwnm8] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: var(--space-2);
}

.decomposition-panorama__node-grid[b-1f6ffwwnm8] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: var(--space-2);
    margin-top: var(--space-3);
}

.decomposition-panorama__node[b-1f6ffwwnm8] {
    --tree-accent: var(--color-primary);
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: var(--space-3);
    border-radius: var(--radius-xl);
    border: 1px solid color-mix(in srgb, var(--tree-accent) 18%, var(--color-border-default));
    background:
        linear-gradient(180deg, color-mix(in srgb, var(--tree-accent) 8%, white), transparent 100%),
        var(--color-bg-secondary);
    text-align: left;
    cursor: pointer;
    transition: transform var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.decomposition-panorama__node:hover[b-1f6ffwwnm8] {
    transform: translateY(-1px);
    border-color: color-mix(in srgb, var(--tree-accent) 28%, var(--color-border-default));
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
}

.decomposition-panorama__node-top[b-1f6ffwwnm8] {
    display: flex;
    justify-content: space-between;
    gap: var(--space-2);
    align-items: start;
}

.decomposition-panorama__node-name[b-1f6ffwwnm8] {
    font-weight: 800;
    color: var(--color-text-primary);
    line-height: 1.2;
}

.decomposition-panorama__device-grid[b-1f6ffwwnm8] {
    margin-top: var(--space-3);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-2);
}

.decomposition-panorama__device-kpi[b-1f6ffwwnm8] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: var(--space-2);
    border-radius: var(--radius-lg);
    background: var(--color-bg-secondary);
    border: 1px solid var(--color-border-default);
    font-size: var(--text-xs);
    color: var(--color-text-secondary);
}

.decomposition-panorama__device-kpi strong[b-1f6ffwwnm8] {
    font-size: var(--text-sm);
    color: var(--color-text-primary);
}

@media (max-width: 900px) {
    .decomposition-panorama__hero[b-1f6ffwwnm8],
    .decomposition-panorama__board-head[b-1f6ffwwnm8],
    .decomposition-panorama__device-card-head[b-1f6ffwwnm8] {
        flex-direction: column;
        align-items: stretch;
    }

    .decomposition-panorama__hero-side[b-1f6ffwwnm8],
    .decomposition-panorama__board-actions[b-1f6ffwwnm8],
    .decomposition-panorama__device-actions[b-1f6ffwwnm8] {
        min-width: 0;
        align-items: flex-start;
    }

    .decomposition-panorama__device-grid[b-1f6ffwwnm8] {
        grid-template-columns: 1fr;
    }
}
/* _content/MoSys.App.Web/Components/Widgets/Components/HorizontalIndicatorWidgetComponent.razor.rz.scp.css */
/* ── Horizontal Indicator Widget ─────────────────────────── */

.indicator-horizontal[b-qoujaojf9v] {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    height: 100%;
    box-sizing: border-box;
}

/* --- Track (bar container) --- */
.indicator-horizontal .indicator-track[b-qoujaojf9v] {
    position: relative;
    height: 28px;
    border-radius: var(--radius-xs, 2px);
    background: var(--color-bg-tertiary, #e6e9ef);
    overflow: hidden;
}

.indicator-horizontal .indicator-bars[b-qoujaojf9v] {
    display: flex;
    height: 100%;
    width: 100%;
}

.indicator-horizontal .indicator-bar[b-qoujaojf9v] {
    flex: var(--bar-size, 1) 1 0;
    background: var(--bar-color);
    opacity: 0.08;
    transition: opacity 200ms ease;
}

.indicator-horizontal .indicator-bar.is-active[b-qoujaojf9v] {
    opacity: 1;
    background: var(--bar-color);
}

.indicator-horizontal .indicator-bar.is-partial[b-qoujaojf9v] {
    opacity: 1;
    background: linear-gradient(
        to right,
        var(--bar-color) calc(var(--bar-fill, 0) * 100%),
        color-mix(in srgb, var(--bar-color) 8%, transparent) calc(var(--bar-fill, 0) * 100%)
    );
}

/* скругление первого и последнего видимых краёв */
.indicator-horizontal .indicator-bar:first-child[b-qoujaojf9v] {
    border-radius: var(--radius-xs, 2px) 0 0 var(--radius-xs, 2px);
}

.indicator-horizontal .indicator-bar:last-child[b-qoujaojf9v] {
    border-radius: 0 var(--radius-xs, 2px) var(--radius-xs, 2px) 0;
}


/* --- Meta (value + description + timestamp) --- */
.indicator-horizontal .indicator-meta[b-qoujaojf9v] {
    text-align: center;
}

.indicator-horizontal .indicator-value[b-qoujaojf9v] {
    display: inline-flex;
    align-items: baseline;
    gap: var(--space-1);
    flex-wrap: nowrap;
    min-width: 0;
}

.indicator-horizontal .indicator-number[b-qoujaojf9v] {
    font-family: var(--font-mono);
    font-size: var(--text-lg);
    font-weight: var(--font-weight-bold);
    color: var(--color-text-primary);
    letter-spacing: -0.02em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.1;
}

.indicator-horizontal .indicator-unit[b-qoujaojf9v] {
    color: var(--color-text-muted);
    font-size: var(--text-xs);
}

/* --- Scale (min/max labels) --- */
.indicator-horizontal .indicator-scale[b-qoujaojf9v] {
    display: flex;
    justify-content: space-between;
    color: var(--color-text-muted);
    font-size: var(--text-2xs);
}

.indicator-horizontal .indicator-scale-min[b-qoujaojf9v],
.indicator-horizontal .indicator-scale-max[b-qoujaojf9v],
.indicator-horizontal .indicator-scale-time[b-qoujaojf9v] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.indicator-horizontal .indicator-scale-top-bottom[b-qoujaojf9v] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    column-gap: var(--space-2);
}

.indicator-horizontal .indicator-scale-description[b-qoujaojf9v] {
    text-align: center;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* --- Description / Timestamp --- */
.indicator-horizontal .indicator-description[b-qoujaojf9v] {
    color: var(--color-text-secondary);
    font-size: var(--text-2xs);
}

.indicator-horizontal .indicator-timestamp[b-qoujaojf9v] {
    font-family: var(--font-mono);
    color: var(--color-text-muted);
    font-size: var(--text-2xs);
}

.indicator-horizontal .indicator-scale-max-stack[b-qoujaojf9v] {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    line-height: 1;
    gap: 2px;
}

.indicator-horizontal .indicator-scale-time[b-qoujaojf9v] {
    font-family: var(--font-mono);
    font-size: var(--text-2xs);
    color: var(--color-text-muted);
}

/* ── Layout: Bottom (default) ───────────────────────────── */
.indicator-horizontal:not(.indicator-text-top-bottom):not(.indicator-text-right)[b-qoujaojf9v] {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto;
    column-gap: var(--space-3);
    row-gap: var(--space-1);
    align-items: center;
}

.indicator-horizontal:not(.indicator-text-top-bottom):not(.indicator-text-right) .indicator-track[b-qoujaojf9v] {
    grid-column: 1 / span 2;
    grid-row: 1;
}

.indicator-horizontal:not(.indicator-text-top-bottom):not(.indicator-text-right) .indicator-scale[b-qoujaojf9v] {
    grid-column: 1;
    grid-row: 2;
    align-self: center;
    padding: 0 var(--space-1);
}

.indicator-horizontal:not(.indicator-text-top-bottom):not(.indicator-text-right) .indicator-meta[b-qoujaojf9v] {
    grid-column: 2;
    grid-row: 2;
    text-align: center;
    align-self: center;
    padding: 0 var(--space-1);
}

.indicator-horizontal.indicator-text-bottom:not(.indicator-text-top-bottom):not(.indicator-text-right)[b-qoujaojf9v] {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    row-gap: 2px;
}

.indicator-horizontal.indicator-text-bottom:not(.indicator-text-top-bottom):not(.indicator-text-right) .indicator-track[b-qoujaojf9v] {
    grid-column: 1;
    grid-row: 1;
}

.indicator-horizontal.indicator-text-bottom:not(.indicator-text-top-bottom):not(.indicator-text-right) .indicator-scale[b-qoujaojf9v] {
    grid-column: 1;
    grid-row: 2;
    width: 100%;
    justify-self: stretch;
    padding: 0 var(--space-1);
}

.indicator-horizontal.indicator-text-bottom:not(.indicator-text-top-bottom):not(.indicator-text-right) .indicator-meta[b-qoujaojf9v] {
    grid-column: 1;
    grid-row: 2;
    justify-self: center;
    text-align: center;
}

/* ── Layout: Top + Bottom ───────────────────────────────── */
.indicator-horizontal.indicator-text-top-bottom .indicator-meta-top[b-qoujaojf9v],
.indicator-horizontal.indicator-text-top-bottom .indicator-meta-bottom[b-qoujaojf9v] {
    text-align: center;
}

.indicator-horizontal.indicator-text-top-bottom[b-qoujaojf9v] {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto auto auto;
    column-gap: var(--space-3);
    row-gap: 2px;
    align-items: center;
}

.indicator-horizontal.indicator-text-top-bottom .indicator-meta-top[b-qoujaojf9v] {
    grid-column: 1 / span 2;
    grid-row: 1;
}

.indicator-horizontal.indicator-text-top-bottom .indicator-track[b-qoujaojf9v] {
    grid-column: 1 / span 2;
    grid-row: 2;
}

.indicator-horizontal.indicator-text-top-bottom .indicator-meta-bottom[b-qoujaojf9v] {
    grid-column: 1 / span 2;
    grid-row: 4;
    text-align: center;
    padding: 0 var(--space-1);
}

.indicator-horizontal.indicator-text-top-bottom .indicator-scale[b-qoujaojf9v] {
    grid-column: 1 / span 2;
    grid-row: 3;
    align-self: center;
    padding: 0 var(--space-1);
    width: 100%;
}

/* ── Layout: Right ──────────────────────────────────────── */
.indicator-horizontal.indicator-text-right[b-qoujaojf9v] {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto;
    column-gap: var(--space-3);
    row-gap: var(--space-1);
    align-items: center;
    height: 100%;
}

.indicator-horizontal.indicator-text-right .indicator-track[b-qoujaojf9v] {
    grid-column: 1;
    grid-row: 1;
}

.indicator-horizontal.indicator-text-right .indicator-scale[b-qoujaojf9v] {
    grid-column: 1;
    grid-row: 2;
}

.indicator-horizontal.indicator-text-right .indicator-meta[b-qoujaojf9v] {
    grid-column: 2;
    grid-row: 1 / span 2;
    text-align: left;
}
/* _content/MoSys.App.Web/Components/Widgets/Components/MetricCardWidgetComponent.razor.rz.scp.css */
.metric-card-widget[b-hwpx5htkh8] {
    height: 100%;
    display: grid;
    grid-template-rows: auto 1fr auto;
    gap: var(--space-3);
    padding: var(--space-4);
}

.metric-card-widget__header[b-hwpx5htkh8] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--space-2);
}

.metric-card-widget__label[b-hwpx5htkh8] {
    font-size: var(--text-sm);
    color: var(--color-text-secondary);
    line-height: var(--leading-snug);
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.metric-card-widget__dot[b-hwpx5htkh8] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex: 0 0 auto;
    margin-top: 4px;
}

.metric-card-widget__value-row[b-hwpx5htkh8] {
    align-self: center;
    display: inline-flex;
    align-items: baseline;
    gap: var(--space-2);
    flex-wrap: wrap;
}

.metric-card-widget__value[b-hwpx5htkh8] {
    font-family: var(--font-mono);
    font-size: clamp(2rem, 2.4vw, 3rem);
    font-weight: var(--font-weight-bold);
    color: var(--color-text-primary);
    letter-spacing: -0.03em;
    line-height: 1;
}

.metric-card-widget__unit[b-hwpx5htkh8] {
    font-size: var(--text-md);
    color: var(--color-text-muted);
}

.metric-card-widget__footer[b-hwpx5htkh8] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.metric-card-widget__timestamp[b-hwpx5htkh8] {
    font-size: var(--text-xs);
    color: var(--color-text-muted);
}
/* _content/MoSys.App.Web/Components/Widgets/Components/MetricListWidgetComponent.razor.rz.scp.css */
.metric-list-widget[b-6evb06yxyo] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    overflow: auto;
    padding: var(--space-3);
}

.metric-list-widget__row[b-6evb06yxyo] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--space-3);
    padding: 10px 12px;
    border-radius: 10px;
}

.metric-list-widget__meta[b-6evb06yxyo] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    min-width: 0;
}

.metric-list-widget__dot[b-6evb06yxyo] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex: 0 0 auto;
}

.metric-list-widget__labels[b-6evb06yxyo] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.metric-list-widget__name[b-6evb06yxyo] {
    font-size: var(--text-sm);
    color: var(--color-text-primary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.metric-list-widget__time[b-6evb06yxyo] {
    font-size: var(--text-2xs);
    color: var(--color-text-muted);
}

.metric-list-widget__message[b-6evb06yxyo] {
    font-size: var(--text-2xs);
    color: var(--color-text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.metric-list-widget__value-box[b-6evb06yxyo] {
    display: inline-flex;
    align-items: baseline;
    gap: 6px;
    justify-content: flex-end;
    flex-wrap: wrap;
    white-space: nowrap;
}

.metric-list-widget__value[b-6evb06yxyo] {
    font-family: var(--font-mono);
    font-size: var(--text-md);
    font-weight: var(--font-weight-bold);
    color: var(--color-text-primary);
}

.metric-list-widget__unit[b-6evb06yxyo] {
    font-size: var(--text-xs);
    color: var(--color-text-muted);
}
/* _content/MoSys.App.Web/Components/Widgets/Components/MonoMetricWidgetComponent.razor.rz.scp.css */
.mono-metric[b-ftxuyp33l1] {
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
    box-sizing: border-box;
    justify-content: center;
    gap: var(--space-2);
}

/* --- Title (KPI label style) --- */
.mono-metric__title[b-ftxuyp33l1] {
    font-size: var(--text-kpi-label);
    font-weight: var(--font-weight-medium);
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--color-text-muted);
    text-align: center;
}

/* --- Data Row --- */
.mono-metric__row[b-ftxuyp33l1] {
    display: grid;
    grid-template-columns: 8px 1fr auto auto;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-md);
    transition: background-color var(--transition-fast);
}

/* --- Quality dot (leftmost) --- */
.mono-metric__quality-dot[b-ftxuyp33l1] {
    width: 8px;
    height: 8px;
    border-radius: var(--radius-full);
    flex-shrink: 0;
}

/* --- Description cell --- */
.mono-metric__description[b-ftxuyp33l1] {
    font-size: var(--text-sm);
    color: var(--color-text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}

/* --- Value + Unit cell --- */
.mono-metric__value-group[b-ftxuyp33l1] {
    display: inline-flex;
    align-items: baseline;
    gap: var(--space-1);
    white-space: nowrap;
}

.mono-metric__number[b-ftxuyp33l1] {
    font-family: var(--font-mono);
    font-size: var(--text-kpi-small);
    font-weight: var(--font-weight-bold);
    color: var(--color-text-primary);
    letter-spacing: -0.02em;
    line-height: 1.1;
}

.mono-metric__unit[b-ftxuyp33l1] {
    font-size: var(--text-xs);
    color: var(--color-text-muted);
}

/* --- Timestamp cell --- */
.mono-metric__timestamp[b-ftxuyp33l1] {
    font-family: var(--font-mono);
    font-size: var(--text-2xs);
    color: var(--color-text-muted);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}
/* _content/MoSys.App.Web/Components/Widgets/Components/SingleChartWidgetComponent.razor.rz.scp.css */
/* ── Single Chart Widget ─────────────────────────────────── */

.single-chart-widget__container[b-ql75gmbvtc] {
    position: relative;
    height: 100%;
    width: 100%;
    overflow: hidden;
    border-radius: var(--radius-md);
}

/* --- Center overlay --- */
.single-chart-widget__overlay[b-ql75gmbvtc] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    margin: 0;
    padding: var(--space-2) var(--space-3);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    text-align: center;
}

.single-chart-widget__description[b-ql75gmbvtc] {
    font-size: var(--text-sm);
    font-weight: var(--font-weight-medium);
    color: var(--color-text-secondary);
    text-shadow:
        0 0 6px var(--color-bg-surface),
        0 0 12px var(--color-bg-surface),
        -1px -1px 0 var(--color-bg-surface),
        1px -1px 0 var(--color-bg-surface),
        -1px 1px 0 var(--color-bg-surface),
        1px 1px 0 var(--color-bg-surface);
    line-height: var(--leading-tight);
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* --- Value row --- */
.single-chart-widget__value-row[b-ql75gmbvtc] {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: var(--space-1);
    line-height: 1;
}

.single-chart-widget__value[b-ql75gmbvtc] {
    font-family: var(--font-mono);
    font-size: var(--text-kpi-medium);
    font-weight: var(--font-weight-bold);
    color: var(--color-text-primary);
    letter-spacing: -0.02em;
    text-shadow:
        0 0 8px var(--color-bg-surface),
        0 0 16px var(--color-bg-surface),
        -1px -1px 0 var(--color-bg-surface),
        1px -1px 0 var(--color-bg-surface),
        -1px 1px 0 var(--color-bg-surface),
        1px 1px 0 var(--color-bg-surface);
}

.single-chart-widget__unit-block[b-ql75gmbvtc] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.single-chart-widget__unit[b-ql75gmbvtc] {
    font-size: var(--text-sm);
    font-weight: var(--font-weight-medium);
    color: var(--color-text-muted);
    line-height: 1;
    text-shadow:
        0 0 6px var(--color-bg-surface),
        -1px -1px 0 var(--color-bg-surface),
        1px -1px 0 var(--color-bg-surface),
        -1px 1px 0 var(--color-bg-surface),
        1px 1px 0 var(--color-bg-surface);
}

/* --- Forecast future line --- */
/* Прогнозная линия рисуется отдельной пунктирной серией Radzen и не влияет на
   раскраску порогов. Метка прогноза рендерится слоем виджета слева снизу,
   поэтому таймстемп держим справа, чтобы не перекрывались. */
[b-ql75gmbvtc] .single-chart-widget__chart .rz-line-series path {
    stroke-linecap: round;
}

/* --- Timestamp (bottom-right) --- */
.single-chart-widget__timestamp[b-ql75gmbvtc] {
    position: absolute;
    right: var(--space-2);
    bottom: var(--space-1);
    font-family: var(--font-mono);
    font-size: var(--text-2xs);
    line-height: 1;
    color: var(--color-text-muted);
    text-shadow:
        0 0 6px var(--color-bg-surface),
        -1px -1px 0 var(--color-bg-surface),
        1px -1px 0 var(--color-bg-surface),
        -1px 1px 0 var(--color-bg-surface),
        1px 1px 0 var(--color-bg-surface);
    z-index: 11;
}
/* _content/MoSys.App.Web/Components/Widgets/Components/SlaWidget/SlaWidgetComponent.razor.rz.scp.css */
.sla-widget[b-da7q6972eq] {
    height: 100%;
    min-height: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
    padding: 0;
    background: transparent;
    box-sizing: border-box;
    overflow: hidden;
}

.sla-widget__eyebrow[b-da7q6972eq] {
    display: flex;
    align-items: center;
    gap: var(--space-1);
    min-width: 0;
    color: var(--color-text-muted);
    font-size: var(--text-xs);
    line-height: var(--leading-snug);
    text-transform: uppercase;
    letter-spacing: .04em;
}

.sla-widget__dot[b-da7q6972eq] {
    width: 8px;
    height: 8px;
    border-radius: var(--radius-full);
    background: var(--sla-accent);
    flex: 0 0 auto;
}

.sla-widget__period[b-da7q6972eq] {
    margin-left: auto;
    white-space: nowrap;
    text-transform: none;
    letter-spacing: 0;
}

/* ---- Single device: Grafana-style stat ---- */

.sla-widget__hero[b-da7q6972eq] {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--space-1);
    text-align: center;
}

.sla-widget__value[b-da7q6972eq] {
    color: var(--sla-accent);
    font-size: clamp(32px, 6vw, 48px);
    font-weight: 700;
    line-height: 1.04;
    font-variant-numeric: tabular-nums;
    overflow-wrap: anywhere;
}

.sla-widget__caption[b-da7q6972eq] {
    max-width: 100%;
    color: var(--color-text-muted);
    font-size: var(--text-sm);
    line-height: var(--leading-snug);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sla-widget__facts[b-da7q6972eq] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--space-1);
}

.sla-widget__fact[b-da7q6972eq] {
    min-width: 0;
    padding: var(--space-2) var(--space-1);
    border-radius: var(--radius-sm);
    background: color-mix(in srgb, var(--sla-accent) 7%, transparent);
    text-align: center;
}

.sla-widget__fact-label[b-da7q6972eq],
.sla-widget__fact-value[b-da7q6972eq] {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sla-widget__fact-label[b-da7q6972eq] {
    color: var(--color-text-muted);
    font-size: 10px;
    line-height: var(--leading-snug);
}

.sla-widget__fact-value[b-da7q6972eq] {
    margin-top: 2px;
    color: var(--color-text-primary);
    font-size: var(--text-sm);
    font-weight: 600;
    line-height: var(--leading-snug);
    font-variant-numeric: tabular-nums;
}

/* ---- Multiple devices: per-device list ---- */

.sla-widget__devices[b-da7q6972eq] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-height: 0;
}

.sla-widget__devices--scroll[b-da7q6972eq] {
    flex: 1 1 auto;
    overflow-y: auto;
}

.sla-widget__device-row[b-da7q6972eq] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    min-height: 24px;
    padding: 2px var(--space-1);
    border-radius: var(--radius-sm);
}

.sla-widget__device-row:hover[b-da7q6972eq] {
    background: color-mix(in srgb, var(--sla-accent) 6%, transparent);
}

.sla-widget__device-name[b-da7q6972eq] {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--color-text-primary);
    font-size: var(--text-xs);
    line-height: var(--leading-snug);
}

.sla-widget__mini-bar[b-da7q6972eq] {
    flex: 0 0 72px;
    height: 6px;
    border-radius: var(--radius-full);
    overflow: hidden;
    background: color-mix(in srgb, var(--color-border-default) 48%, transparent);
}

.sla-widget__mini-bar span[b-da7q6972eq] {
    display: block;
    height: 100%;
    border-radius: inherit;
}

.sla-widget__device-value[b-da7q6972eq] {
    flex: 0 0 auto;
    text-align: right;
    color: var(--color-text-primary);
    font-size: var(--text-xs);
    font-weight: 600;
    line-height: var(--leading-snug);
    font-variant-numeric: tabular-nums;
}
/* _content/MoSys.App.Web/Components/Widgets/Components/VerticalIndicatorWidgetComponent.razor.rz.scp.css */
/* ── Vertical Indicator Widget ───────────────────────────── */

.indicator-vertical[b-muwdczckul] {
    display: grid;
    grid-template-columns: minmax(24px, 1fr) minmax(56px, max-content);
    column-gap: var(--space-3);
    height: 100%;
    align-items: stretch;
    box-sizing: border-box;
}

/* --- Track (bar container) --- */
.indicator-vertical .indicator-track[b-muwdczckul] {
    position: relative;
    width: 100%;
    max-width: 120px;
    min-width: 24px;
    height: 100%;
    border-radius: var(--radius-xs, 2px);
    background: var(--color-bg-tertiary, #e6e9ef);
    overflow: hidden;
    justify-self: stretch;
}

.indicator-vertical .indicator-bars[b-muwdczckul] {
    display: flex;
    flex-direction: column-reverse;
    height: 100%;
    width: 100%;
}

.indicator-vertical .indicator-bar[b-muwdczckul] {
    flex: var(--bar-size, 1) 1 0;
    background: var(--bar-color);
    opacity: 0.08;
    transition: opacity 200ms ease;
}

.indicator-vertical .indicator-bar.is-active[b-muwdczckul] {
    opacity: 1;
    background: var(--bar-color);
}

.indicator-vertical .indicator-bar.is-partial[b-muwdczckul] {
    opacity: 1;
    background: linear-gradient(
        to top,
        var(--bar-color) calc(var(--bar-fill, 0) * 100%),
        color-mix(in srgb, var(--bar-color) 8%, transparent) calc(var(--bar-fill, 0) * 100%)
    );
}

/* скругление нижнего и верхнего краёв (column-reverse → first-child сверху, last-child снизу) */
.indicator-vertical .indicator-bar:first-child[b-muwdczckul] {
    border-radius: var(--radius-xs, 2px) var(--radius-xs, 2px) 0 0;
}

.indicator-vertical .indicator-bar:last-child[b-muwdczckul] {
    border-radius: 0 0 var(--radius-xs, 2px) var(--radius-xs, 2px);
}


/* --- Side panel (scale + meta) --- */
.indicator-vertical .indicator-side[b-muwdczckul] {
    display: grid;
    grid-template-rows: 1fr;
    gap: var(--space-2);
    align-items: stretch;
    min-width: 0;
    justify-self: start;
}

.indicator-vertical .indicator-scale[b-muwdczckul] {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    color: var(--color-text-muted);
    font-size: var(--text-2xs);
    flex: 1 1 auto;
    grid-row: 1;
}

.indicator-vertical .indicator-meta[b-muwdczckul] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    grid-row: 1;
    align-self: center;
}

.indicator-vertical .indicator-value[b-muwdczckul] {
    display: inline-flex;
    align-items: baseline;
    gap: var(--space-1);
    flex-wrap: nowrap;
    min-width: 0;
}

.indicator-vertical .indicator-number[b-muwdczckul] {
    font-family: var(--font-mono);
    font-size: var(--text-lg);
    font-weight: var(--font-weight-bold);
    color: var(--color-text-primary);
    letter-spacing: -0.02em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.1;
}

.indicator-vertical .indicator-unit[b-muwdczckul] {
    color: var(--color-text-muted);
    font-size: var(--text-xs);
}

.indicator-vertical .scale-max[b-muwdczckul],
.indicator-vertical .scale-min[b-muwdczckul] {
    white-space: nowrap;
}

.indicator-vertical .indicator-description[b-muwdczckul] {
    color: var(--color-text-secondary);
    font-size: var(--text-2xs);
}

.indicator-vertical .indicator-timestamp[b-muwdczckul] {
    font-family: var(--font-mono);
    color: var(--color-text-muted);
    font-size: var(--text-2xs);
}

.indicator-vertical .indicator-scale span[b-muwdczckul] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ── Layout: Bottom ─────────────────────────────────────── */
.indicator-vertical.indicator-text-bottom[b-muwdczckul] {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: 1fr auto;
    column-gap: var(--space-3);
    row-gap: var(--space-2);
    align-items: stretch;
}

.indicator-vertical.indicator-text-bottom .indicator-side[b-muwdczckul] {
    display: contents;
}

.indicator-vertical.indicator-text-bottom .indicator-scale[b-muwdczckul] {
    grid-column: 2;
    grid-row: 1;
    height: 100%;
}

.indicator-vertical.indicator-text-bottom .indicator-track[b-muwdczckul] {
    grid-column: 1;
    grid-row: 1;
}

.indicator-vertical.indicator-text-bottom .indicator-meta[b-muwdczckul] {
    grid-column: 1 / span 2;
    grid-row: 2;
    text-align: center;
}

.indicator-vertical.indicator-text-bottom .indicator-meta .indicator-value[b-muwdczckul] {
    justify-content: center;
}

/* ── Layout: Right ──────────────────────────────────────── */
.indicator-vertical.indicator-text-right .indicator-side[b-muwdczckul] {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    padding: 0;
    align-items: center;
    text-align: left;
    min-width: 40px;
}

.indicator-vertical.indicator-text-right .indicator-scale[b-muwdczckul] {
    height: 100%;
    grid-column: 1;
    grid-row: 1;
    width: 100%;
}

.indicator-vertical.indicator-text-right .indicator-meta[b-muwdczckul] {
    grid-column: 1;
    grid-row: 1;
    align-self: center;
    justify-self: center;
    text-align: center;
    width: 100%;
    align-items: center;
    overflow-wrap: normal;
}

/* ── Layout: Top + Bottom ───────────────────────────────── */
.indicator-vertical.indicator-text-top-bottom[b-muwdczckul] {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto 1fr auto;
    column-gap: var(--space-3);
    row-gap: var(--space-2);
    height: 100%;
}

.indicator-vertical.indicator-text-top-bottom .indicator-meta-top[b-muwdczckul] {
    grid-column: 1;
    grid-row: 1;
    justify-self: center;
}

.indicator-vertical.indicator-text-top-bottom .indicator-track[b-muwdczckul] {
    grid-column: 1;
    grid-row: 2;
}

.indicator-vertical.indicator-text-top-bottom .indicator-meta-bottom[b-muwdczckul] {
    grid-column: 1;
    grid-row: 3;
    justify-self: center;
}

.indicator-vertical.indicator-text-top-bottom .indicator-side[b-muwdczckul] {
    grid-column: 2;
    grid-row: 1 / span 3;
    align-items: stretch;
}
/* _content/MoSys.App.Web/Components/Widgets/Forecasting/ForecastBadge.razor.rz.scp.css */
/* Кружок-индикатор прогноза — зеркало .widget-shell__info-btn (20×20, левый нижний угол).
   В отличие от info-btn — некликабельный (cursor:default), цвет берётся из уровня риска. */
.forecast-indicator[b-l7mogxb1ch] {
    width: 20px;
    height: 20px;
    border-radius: var(--radius-full);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    box-sizing: border-box;
    background: color-mix(in srgb, var(--forecast-color) 12%, white);
    color: var(--forecast-color);
    border: 1px solid color-mix(in srgb, var(--forecast-color) 30%, transparent);
    cursor: default;
    opacity: 0.6;
    transition: opacity var(--transition-fast), background var(--transition-fast);
}

.forecast-indicator:hover[b-l7mogxb1ch] {
    opacity: 1;
    background: color-mix(in srgb, var(--forecast-color) 20%, white);
}

.forecast-indicator__icon[b-l7mogxb1ch] {
    font-size: 14px;
}
/* _content/MoSys.App.Web/Components/Widgets/TextWidgetComponent.razor.rz.scp.css */
.ta-host[b-4ihtiq2uwf] {
    position: relative;
    width: 100%;
    height: 100%;
}

.ta-overlay[b-4ihtiq2uwf] {
    position: absolute;
    inset: 0;
    z-index: 10;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    background: transparent;
    transition: background 120ms ease;
}

.ta-overlay__hint[b-4ihtiq2uwf],
.ta-overlay__hint p[b-4ihtiq2uwf] {
    opacity: 0;
    visibility: hidden;
    transform: translateY(2px);
    transition: opacity 120ms ease, transform 120ms ease, visibility 0s linear 120ms;
    user-select: none;
    pointer-events: none;
    margin: 0; 
}

.ta-overlay:hover[b-4ihtiq2uwf] {
    background: rgba(214, 235, 255, 0.5);
}

    .ta-overlay:hover .ta-overlay__hint[b-4ihtiq2uwf],
    .ta-overlay:hover .ta-overlay__hint p[b-4ihtiq2uwf] {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        transition: opacity 120ms ease, transform 120ms ease, visibility 0s;
    }
.ta-view[b-4ihtiq2uwf] {
    font-size: 12px !important;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 0 5px !important;
    min-height: 28px !important;
    display: block;
    background: var(--rz-input-background, #fff) !important;
    color: var(--rz-input-color, inherit);
    box-shadow: var(--rz-input-shadow, none);
    overflow: auto;
    cursor: default;
}

.ta-view__text[b-4ihtiq2uwf] {
    font-size: 12px !important;
    display: inline-block;
    white-space: pre-wrap;
    word-break: break-word;
    user-select: text;
    cursor: text;
}

.ta-view__placeholder[b-4ihtiq2uwf] {
    font-size: 12px !important;
    display: inline-block;
    color: var(--rz-text-tertiary, #9aa0a6);
    user-select: none;
    cursor: default;
}



