@import '_content/Blazicons/Blazicons.ugzwxlf6d1.bundle.scp.css';

/* /Pages/APIs/EndpointDocs.razor.rz.scp.css */
.apidocs-table[b-wmslornvtu]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/APIs/EndpointTable.razor.rz.scp.css */
.endpoints-table[b-o60lx6f4sa]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/APIs/EventHubs.razor.rz.scp.css */
/* Explicit Widths keep AntD's split header/body tables aligned; Name takes the remainder. */
.eventhubs-table[b-bsu4lmkicg]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/APIs/RateLimits.razor.rz.scp.css */
.ratelimits-table[b-lly4tjtq03]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Apps/Apps.razor.rz.scp.css */
/* Explicit Widths keep AntD's split header/body tables aligned; Name takes the remainder. */
.apps-table[b-htx7vjswn6]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}

/* /Pages/Automation/ScriptTable.razor.rz.scp.css */
/* Data columns carry explicit Widths so AntD's split header/body tables stay aligned; the
   width-less Name column takes the remainder. */
.script-table[b-nju9bkjv3l]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}

/* Long names wrap to 3 lines, then ellipsize. The width cap is what makes the clamp bind: the
   content box is fit-content, so without a ceiling the text just grows and never wraps. */
.script-table[b-nju9bkjv3l]  .script-name-clamp {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    line-height: 1.2;
    overflow: hidden;
    overflow-wrap: anywhere;
}

.script-success-bar[b-nju9bkjv3l] {
    display: inline-block;
    width: 84px;
    height: 6px;
    border-radius: 4px;
    background: var(--border-100);
    overflow: hidden;
    vertical-align: middle;
    margin-right: 8px;
}

.script-success-bar i[b-nju9bkjv3l] {
    display: block;
    height: 100%;
    border-radius: 4px;
}

/* The actions column, pinned. These tables set ScrollX so they are table-layout: fixed, where the
   colgroup owns widths and the cell's own width is ignored — and the table's width:100% would
   otherwise spread surplus across every column. Sized to 3 icon buttons (94px) + cell padding. */
.script-table[b-nju9bkjv3l]  col:first-child {
    width: 110px;
}
/* /Pages/Automation/TerminalPage.razor.rz.scp.css */
.terminal-console[b-nwnlknlpck] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 280px;
    border: 1px solid var(--border-200);
    border-radius: var(--radius-md);
    overflow: hidden;
    background: #ffffff;
}

.terminal-console__bar[b-nwnlknlpck] {
    display: flex;
    align-items: center;
    gap: 10px;
    height: 38px;
    padding: 0 8px 0 14px;
    background: var(--fill-200);
    border-bottom: 1px solid var(--border-100);
    flex: none;
}

.terminal-console__path[b-nwnlknlpck] {
    font-family: ui-monospace, Menlo, Consolas, monospace;
    font-size: 12px;
    color: var(--text-200);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.terminal-console__meta[b-nwnlknlpck] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-left: auto;
    padding-right: 6px;
}

.terminal-console__item[b-nwnlknlpck] {
    display: flex;
    align-items: baseline;
    gap: 6px;
    font-family: ui-monospace, Menlo, Consolas, monospace;
    font-size: 11.5px;
    line-height: 1;
    color: var(--text-300);
    white-space: nowrap;
}

.terminal-console__item + .terminal-console__item[b-nwnlknlpck]::before {
    content: "·";
    color: var(--text-100);
    margin-right: 14px;
}

.terminal-console__item b[b-nwnlknlpck] {
    font-family: inherit;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--text-200);
}

.terminal-console__copy[b-nwnlknlpck] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border: none;
    border-radius: 4px;
    background: none;
    color: var(--text-200);
    cursor: pointer;
    font-size: 14px;
    flex: none;
}

.terminal-console__copy:hover[b-nwnlknlpck] {
    background: var(--fill-300);
    color: var(--text-400);
}

.terminal-console__body[b-nwnlknlpck] {
    flex: 1;
    min-height: 0;
    padding: 14px 16px 8px;
}

/* Dark backgrounds stay literal so the frame matches the xterm surface color
   (#0d0f14), which is set in PsuTerminal, not by app tokens. */
:root[data-theme="dark"] .terminal-console[b-nwnlknlpck] {
    background: #0d0f14;
}

:root[data-theme="dark"] .terminal-console__bar[b-nwnlknlpck] {
    background: #171a21;
    border-bottom-color: #262a35;
}

:root[data-theme="dark"] .terminal-console__copy:hover[b-nwnlknlpck] {
    background: #232733;
}
/* /Pages/Automation/Terminals.razor.rz.scp.css */
/* Explicit Widths keep AntD's split header/body tables aligned; Name takes the remainder. */
.terminals-table[b-u2wxcjl30o]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Automation/Triggers.razor.rz.scp.css */
.triggers-table[b-mku46amphp]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Intelligence/AiAgents.razor.rz.scp.css */
.aiagents-table[b-8s1v03w71e]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}

/* /Pages/Intelligence/AiTools.razor.rz.scp.css */
.aitools-table[b-3ney9siady]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Platform/ComputerGroups.razor.rz.scp.css */
.computergroups-table[b-fvmxf30hdw]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Platform/LogFiles.razor.rz.scp.css */
/* Variant A: rounded-checkbox list. */
.log-level-list[b-ze7i8oit53] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: 14px;
}

.log-level-list__row[b-ze7i8oit53] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border: 1px solid var(--border-100);
    border-radius: 8px;
    background: transparent;
    font: inherit;
    color: var(--text-300);
    cursor: pointer;
    transition: background-color .12s ease, border-color .12s ease;
}

.log-level-list__row:hover[b-ze7i8oit53] {
    background: var(--fill-300);
}

.log-level-list__row--on[b-ze7i8oit53] {
    color: var(--text-400);
}

.log-level-list__row--threshold[b-ze7i8oit53] {
    border-color: var(--accent-brand-400);
    font-weight: 600;
}

.log-level-list__check[b-ze7i8oit53] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 1.5px solid var(--border-300);
    flex: none;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    color: var(--fill-100);
}

.log-level-list__row--on .log-level-list__check[b-ze7i8oit53] {
    border-color: var(--accent-brand-400);
    background: var(--accent-brand-400);
}

.log-level-list__row:focus-visible[b-ze7i8oit53] {
    outline: 2px solid var(--accent-brand-300);
    outline-offset: 2px;
}

.log-level-readout[b-ze7i8oit53] {
    margin-top: 10px;
    text-align: center;
    color: var(--text-200);
}
/* /Pages/Platform/LoggingTargets.razor.rz.scp.css */
.loggingtargets-table[b-sde5f5ztb7]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Platform/Modules/CustomModules.razor.rz.scp.css */
/* /Pages/Platform/PublishedFolders.razor.rz.scp.css */
.publishedfolders-table[b-7jo449t875]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Platform/SshKeys.razor.rz.scp.css */
.sshkeys-table[b-efvy7mavaw]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Platform/VaultsPage.razor.rz.scp.css */
.vaults-table[b-0wdu1mbfpe]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Portal/PortalComponents.razor.rz.scp.css */
.portalwidgets-table[b-bkjpucubla]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Security/Identities.razor.rz.scp.css */
.identities-table[b-41zsz9yicb]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Security/Permissions.razor.rz.scp.css */
.permissions-table[b-2nsczv9czc]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Security/Roles.razor.rz.scp.css */
/* Explicit Widths keep AntD's split header/body tables aligned; Name takes the remainder. */
.roles-table[b-hn1nlvu6nh]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}

/* Built-in / provided-by-module markers: state, so they stay visible next to the name. */
.roles-table[b-hn1nlvu6nh]  .role-name-badge {
    margin-left: 6px;
    color: var(--text-100);
}
/* /Pages/Settings/Environments.razor.rz.scp.css */
.environments-table[b-iabqt91ls9]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Settings/Git/GitCommitAdminPage.razor.rz.scp.css */
.gct[b-ezg02o7ubk] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    /* GitHub reds: #cf222e in light, #f85149 in dark — the light one is deeper on purpose. */
    --gct-del: #cf222e;
    --gct-add: #2ea043;
}

:root[data-theme="dark"] .gct[b-ezg02o7ubk] {
    --gct-del: #f85149;
}

/* Desktop-git (VS Code): commit box docked at the top of the changes panel. */
.gct__treecommit[b-ezg02o7ubk] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 0 0 8px;
    padding: 8px 8px 10px;
    background: var(--fill-100, #fff);
    border-bottom: 1px solid var(--border-100, #e1e4e8);
    border-radius: 8px 8px 0 0;
    flex-shrink: 0;
}

.gct__treecommit-links[b-ezg02o7ubk] {
    display: flex;
    gap: 14px;
    justify-content: center;
    font-size: 12px;
}

.gct__treecommit-links a[b-ezg02o7ubk] {
    color: var(--text-300, #8a93a0);
    cursor: pointer;
}

.gct__treecommit-links a:hover[b-ezg02o7ubk] {
    color: var(--gct-del);
}

.gct__body[b-ezg02o7ubk] {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    width: 100%;
}

/* Panel caps at the viewport; only the file list scrolls (commit box + header stay fixed). */
.gct__tree[b-ezg02o7ubk] {
    flex: 0 0 320px;
    display: flex;
    flex-direction: column;
    max-height: calc(100vh - 24px);
    overflow: hidden;
    border: 1px solid var(--border-100, #f0f0f0);
    border-radius: 8px;
    position: sticky;
    top: 12px;
}

.gct__tree-scroll[b-ezg02o7ubk] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding: 0 8px 8px;
}

.gct__tree-header[b-ezg02o7ubk] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 4px 8px 8px;
}

.gct__detail[b-ezg02o7ubk] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.gct__file[b-ezg02o7ubk] {
    border: 1px solid var(--border-100, #f0f0f0);
    border-radius: 8px;
    scroll-margin-top: 12px;
}

.gct__file-header[b-ezg02o7ubk] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    font-family: SFMono-Regular, Consolas, Menlo, monospace;
    font-size: 13px;
    cursor: pointer;
    user-select: none;
    background: var(--fill-200, #f6f8fa);
    border-radius: 8px 8px 0 0;
}

.gct__file--collapsed .gct__file-header[b-ezg02o7ubk] {
    border-radius: 8px;
}

.gct__file:not(.gct__file--collapsed) .gct__file-header[b-ezg02o7ubk] {
    border-bottom: 1px solid var(--border-100, #f0f0f0);
}

.gct__file-body[b-ezg02o7ubk] {
    border-radius: 0 0 8px 8px;
    overflow: hidden;
}

.gct__right[b-ezg02o7ubk] {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.gct__blocks[b-ezg02o7ubk] {
    display: inline-flex;
    gap: 2px;
}

.gct__block[b-ezg02o7ubk] {
    width: 8px;
    height: 8px;
    border-radius: 2px;
}

.gct__block--add[b-ezg02o7ubk] { background: var(--gct-add); }
.gct__block--del[b-ezg02o7ubk] { background: var(--gct-del); }
.gct__block--none[b-ezg02o7ubk] { background: var(--fill-300, #e1e4e8); }

.gct__stat[b-ezg02o7ubk] {
    font-weight: 600;
    font-size: 12px;
}

.gct__stat--add[b-ezg02o7ubk] { color: #2ea043; }
.gct__stat--del[b-ezg02o7ubk] { color: var(--gct-del); }

/* Icon classes land on the <i> the Icon component renders (unscoped) — reach them with ::deep. */
.gct__tree[b-ezg02o7ubk]  .gct__node-icon {
    margin-right: 6px;
    font-size: 14px;
}

.gct__tree[b-ezg02o7ubk]  .gct__node-icon--dir { color: #4096ff; }
.gct__tree[b-ezg02o7ubk]  .gct__node-icon--added { color: #2ea043; }
.gct__tree[b-ezg02o7ubk]  .gct__node-icon--deleted { color: var(--gct-del); }
.gct__tree[b-ezg02o7ubk]  .gct__node-icon--modified { color: #d4a72c; }

/* With a TitleTemplate, Ant renders template content directly inside the content wrapper
   (no .ant-tree-title span) — make the wrapper itself the stretched flex row. */
.gct__tree[b-ezg02o7ubk]  .ant-tree-node-content-wrapper {
    flex: 1 1 auto;
    min-width: 0;
    display: inline-flex;
    align-items: center;
}

.gct__node-right[b-ezg02o7ubk] {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.gct__node-discard[b-ezg02o7ubk] {
    visibility: hidden;
    cursor: pointer;
    line-height: 1;
    color: var(--text-300, #8a93a0);
}

.gct__node-discard:hover[b-ezg02o7ubk] {
    color: var(--gct-del);
}

.gct__tree .ant-tree-treenode:hover .gct__node-discard[b-ezg02o7ubk] {
    visibility: visible;
}

.gct__node-status[b-ezg02o7ubk] {
    font-weight: 600;
    font-size: 12px;
}

.gct__node-status--added[b-ezg02o7ubk] { color: #2ea043; }
.gct__node-status--deleted[b-ezg02o7ubk] { color: var(--gct-del); }
.gct__node-status--modified[b-ezg02o7ubk] { color: #d4a72c; }
/* /Pages/Settings/SettingsTranslations.razor.rz.scp.css */
.translations-table[b-yp4hbghom7]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Settings/Tags.razor.rz.scp.css */
/* Explicit Widths keep AntD's split header/body tables aligned; Name takes the remainder. */
.tags-table[b-b23l31mh07]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Pages/Support/GitSupportPage.razor.rz.scp.css */
.git-commands[b-289vlixral] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    max-width: 720px;
}
/* /Pages/Support/SupportConfigurationPage.razor.rz.scp.css */
.support-config[b-fgtmqay320] {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--border-200);
    border-radius: var(--radius-md);
    overflow: hidden;
}

.support-config__bar[b-fgtmqay320] {
    display: flex;
    align-items: center;
    gap: 10px;
    height: 38px;
    padding: 0 8px 0 14px;
    background: var(--fill-300);
    border-bottom: 1px solid var(--border-200);
    flex: none;
}

.support-config__title[b-fgtmqay320] {
    font-family: ui-monospace, Menlo, Consolas, monospace;
    font-size: 12px;
    color: var(--text-200);
}

.support-config__copy[b-fgtmqay320] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    margin-left: auto;
    border: none;
    border-radius: 4px;
    background: none;
    color: var(--text-200);
    cursor: pointer;
    font-size: 14px;
    flex: none;
}

.support-config__copy:hover[b-fgtmqay320] {
    background: var(--fill-500);
    color: var(--text-400);
}

.support-config__view[b-fgtmqay320] {
    margin: 0;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}
/* /Pages/Support/SupportEnvironmentPage.razor.rz.scp.css */
.env-table[b-xbthp8sgst]  .ant-table table {
    table-layout: fixed;
}

.env-table[b-xbthp8sgst]  .ant-table-tbody > tr > td {
    overflow-wrap: anywhere;
}
/* /Pages/Support/SupportPage.razor.rz.scp.css */
.support-info[b-wmg17l0jn6] {
    max-width: 980px;
}

.support-info[b-wmg17l0jn6]  .ant-descriptions-item-label {
    width: 200px;
    white-space: nowrap;
}

.support-info[b-wmg17l0jn6]  .ant-descriptions-item-content {
    overflow-wrap: anywhere;
}
/* /Pages/User/UserIdentity.razor.rz.scp.css */
.identity-facts[b-29yhf5bfik] {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 10px 32px;
    align-items: center;
    max-width: 720px;
    margin: 0;
    font-size: 13px;
}
.identity-facts dt[b-29yhf5bfik] {
    color: var(--text-200);
}
.identity-facts dd[b-29yhf5bfik] {
    margin: 0;
    color: var(--text-400);
}

.identity-permissions[b-29yhf5bfik] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.identity-permissions code[b-29yhf5bfik] {
    display: inline-block;
    padding: 3px 8px;
    border-radius: 6px;
    background: var(--fill-300);
    font-size: 12.5px;
    color: var(--text-400);
}

.identity-note[b-29yhf5bfik] {
    margin: 0 0 12px;
    font-size: 12.5px;
    color: var(--text-200);
}

/* The reset-password trigger sits inline in the facts list, so it drops the button's padding
   and height and reads as a link. */
.identity-facts dd[b-29yhf5bfik]  .reset-password-trigger {
    height: auto;
    padding: 0;
    border: 0;
    font-size: inherit;
    line-height: inherit;
}
/* /Pages/User/UserMenuSettings.razor.rz.scp.css */
.menu-layout[b-r871ffv9d1] {
    min-width: 420px;
    max-width: 640px;
    width: 100%;
}
.menu-layout__title[b-r871ffv9d1] {
    font-weight: 600;
    margin-bottom: 4px;
}
.menu-layout__desc[b-r871ffv9d1] {
    margin-bottom: 12px;
    color: var(--text-200);
}
.menu-layout__callout[b-r871ffv9d1] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
    padding: 10px 12px;
    border-radius: 8px;
    background: var(--fill-300);
    color: var(--text-200);
    font-size: 12px;
}
.menu-layout__actions[b-r871ffv9d1] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 4px;
}
.menu-layout__actions[b-r871ffv9d1]  > :last-child {
    margin-left: auto;
}

.menu-zone[b-r871ffv9d1] {
    border: 1px solid var(--border-200);
    border-radius: 8px;
    margin-bottom: 12px;
}
.menu-zone__header[b-r871ffv9d1] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-bottom: 1px solid var(--border-200);
    background: var(--fill-300);
    border-radius: 8px 8px 0 0;
}
.menu-zone__header[b-r871ffv9d1]  .anticon {
    opacity: .65;
}
.menu-zone__icon[b-r871ffv9d1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    padding: 0;
    border: 1px solid transparent;
    border-radius: 6px;
    font-size: 14px;
    color: inherit;
    background: transparent;
    cursor: pointer;
}
.menu-zone__icon:hover[b-r871ffv9d1] {
    border-color: var(--border-200);
    background: var(--fill-100);
}
.menu-zone__icon:hover[b-r871ffv9d1]  .anticon {
    opacity: 1;
    color: var(--text-brand);
}
.menu-zone__name[b-r871ffv9d1] {
    flex: 1 1 auto;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--text-200);
}
.menu-zone__input[b-r871ffv9d1] {
    flex: 1 1 auto;
    min-width: 0;
    padding: 3px 8px;
    border: 1px solid transparent;
    border-radius: 6px;
    font: inherit;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: inherit;
    background: transparent;
    outline: none;
}
.menu-zone__input:hover[b-r871ffv9d1] {
    border-color: var(--border-200);
}
.menu-zone__input:focus[b-r871ffv9d1] {
    border-color: var(--text-brand);
    background: var(--fill-100);
    text-transform: none;
    letter-spacing: 0;
}
.menu-zone__rows[b-r871ffv9d1] {
    padding: 6px 10px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.menu-zone__empty[b-r871ffv9d1] {
    padding: 6px 2px;
    font-size: 12px;
    color: var(--text-200);
}
.menu-zone__footer[b-r871ffv9d1] {
    padding: 0 10px 10px;
}

.menu-page[b-r871ffv9d1] {
    display: flex;
    align-items: center;
    gap: 8px;
}
.menu-page__label[b-r871ffv9d1] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex: 1 1 auto;
    min-width: 0;
    padding: 5px 11px;
    border: 1px solid var(--border-200);
    border-radius: 6px;
    background: var(--fill-100);
}
.menu-page__label[b-r871ffv9d1]  .anticon {
    opacity: .65;
}
.menu-page__name[b-r871ffv9d1] {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* /Shared/Components/EmptyState.razor.rz.scp.css */
.empty-state[b-6y4acajsm2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 24px 24px 48px;
    margin-top: 6vh;
}

.empty-state__illustration[b-6y4acajsm2] {
    max-height: 144px;
    max-width: 208px;
    object-fit: contain;
    margin-bottom: 20px;
}

.empty-state__title[b-6y4acajsm2] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-400, rgba(0, 0, 0, .88));
    margin-bottom: 6px;
    text-wrap: balance;
}

.empty-state__description[b-6y4acajsm2] {
    font-size: 13px;
    color: var(--text-200, rgba(0, 0, 0, .45));
    line-height: 1.55;
    max-width: 360px;
}

.empty-state__actions[b-6y4acajsm2] {
    margin-top: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.empty-state__actions[b-6y4acajsm2]  .empty-state__link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
}

/* The create-form trigger is a ghost primary; inside the empty state it reads as the artifact's solid primary. */
.empty-state__actions[b-6y4acajsm2]  .ant-btn-primary.ant-btn-background-ghost:not([disabled]) {
    background: var(--btn-primary-bg);
    border-color: var(--btn-primary-bg);
    color: var(--btn-primary-text);
}

.empty-state__actions[b-6y4acajsm2]  .ant-btn-primary.ant-btn-background-ghost:not([disabled]):hover {
    background: var(--btn-primary-hover);
    border-color: var(--btn-primary-hover);
    color: var(--btn-primary-text);
}
/* /Shared/Components/FileExplorerEditor.razor.rz.scp.css */
.fx-empty[b-blv3bvd93l] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 10px;
    padding: 26px 18px;
}

.fx-glyph[b-blv3bvd93l] {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--fill-300);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-200);
    font-size: 15px;
}

.fx-empty h5[b-blv3bvd93l] {
    margin: 0;
    font: 700 13px/1.3 var(--font-sans);
    color: var(--text-400);
}

.fx-empty p[b-blv3bvd93l] {
    margin: 0;
    font-size: 12.5px;
    line-height: 1.6;
    color: var(--text-200);
}
/* /Shared/Components/MenuIconPicker.razor.rz.scp.css */
.icon-picker[b-w8sygsyr3m] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.icon-picker__search[b-w8sygsyr3m] {
    width: 100%;
    box-sizing: border-box;
    padding: 6px 11px;
    border: 1px solid var(--border-200);
    border-radius: 6px;
    font-size: 13px;
    color: inherit;
    background: transparent;
    outline: none;
}
.icon-picker__search:focus[b-w8sygsyr3m] {
    border-color: var(--text-brand);
}
.icon-picker__grid[b-w8sygsyr3m] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(40px, 1fr));
    gap: 4px;
    max-height: 50vh;
    overflow-y: auto;
    padding: 2px;
}
.icon-picker__cell[b-w8sygsyr3m] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    padding: 0;
    border: 1px solid transparent;
    border-radius: 6px;
    font-size: 18px;
    color: var(--text-300);
    background: transparent;
    cursor: pointer;
}
.icon-picker__cell:hover[b-w8sygsyr3m] {
    background: var(--overlay-hover-subtle);
    color: var(--text-brand);
}
.icon-picker__cell.is-current[b-w8sygsyr3m] {
    border-color: var(--text-brand);
    color: var(--text-brand);
    background: var(--fill-brand-300);
}
.icon-picker__cell--default[b-w8sygsyr3m] {
    grid-column: 1 / -1;
    justify-content: flex-start;
    gap: 8px;
    padding: 0 10px;
    height: 32px;
    font-size: 13px;
}
/* /Shared/Components/MenuPagePicker.razor.rz.scp.css */
.pin-picker[b-xalryhkcx4] {
    position: relative;
    width: 100%;
    box-sizing: border-box;
}
.pin-picker--dark[b-xalryhkcx4] {
    --pin-picker-surface: #161b26;
}
.pin-picker__input[b-xalryhkcx4] {
    width: 100%;
    box-sizing: border-box;
    padding: 6px 11px;
    border: 1px solid var(--border-200);
    border-radius: 6px;
    font-size: 13px;
    color: inherit;
    background: transparent;
    outline: none;
}
.pin-picker__input:focus[b-xalryhkcx4] {
    border-color: var(--text-brand);
}
.pin-picker__dropdown[b-xalryhkcx4] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    z-index: 1050;
    max-height: 320px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 1px;
    padding: 6px;
    border: 1px solid var(--border-200);
    border-radius: 8px;
    background: var(--pin-picker-surface, var(--fill-100));
    box-shadow: 0 6px 16px var(--shadow-color);
}
.pin-picker--inline .pin-picker__dropdown[b-xalryhkcx4] {
    position: static;
    margin-top: 6px;
    max-height: 50vh;
    border: 0;
    box-shadow: none;
    background: transparent;
    padding: 0;
}
.pin-picker__empty[b-xalryhkcx4] {
    padding: 10px 8px;
    font-size: 13px;
    color: var(--text-200);
}
.pin-picker__group[b-xalryhkcx4] {
    position: sticky;
    top: 0;
    padding: 8px 6px 4px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--text-200);
    background: var(--pin-picker-surface, var(--fill-100));
    z-index: 1;
}
.pin-picker--inline .pin-picker__group[b-xalryhkcx4] {
    background: var(--menu-bg, var(--fill-100));
}
.pin-picker__row[b-xalryhkcx4] {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 6px 8px;
    border: 0;
    border-radius: 6px;
    font-size: 13px;
    text-align: left;
    color: inherit;
    background: transparent;
    cursor: pointer;
}
.pin-picker__row:hover[b-xalryhkcx4] {
    background: var(--overlay-hover-subtle);
}
.pin-picker__row[b-xalryhkcx4]  .anticon {
    flex: 0 0 auto;
    opacity: .65;
}
.pin-picker__name[b-xalryhkcx4] {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.pin-picker__state[b-xalryhkcx4] {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 12px;
    line-height: 1;
    color: var(--text-brand);
    background: var(--fill-300);
}
.pin-picker__row.is-pinned .pin-picker__state[b-xalryhkcx4] {
    color: #fff;
    background: var(--text-brand);
}
/* /Shared/Components/PageNotice.razor.rz.scp.css */
.page-notice[b-weq4b72k2d] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    margin-bottom: 8px;
    border-radius: 8px;
    font-size: 13px;
    border: 1px solid transparent;
}

.page-notice__actions[b-weq4b72k2d] {
    margin-left: auto;
}

.page-notice--attention[b-weq4b72k2d] {
    background: #fff8c5;
    border-color: #ede2a9;
}

:root[data-theme="dark"] .page-notice--attention[b-weq4b72k2d] {
    background: #2e2a1a;
    border-color: #4a4222;
}

.page-notice--neutral[b-weq4b72k2d] {
    background: var(--fill-200, #f6f8fa);
    border-color: var(--border-100, #e1e4e8);
}
/* /Shared/Components/StatusChip.razor.rz.scp.css */
.status-chip[b-069l41ew7r] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.status-chip__dot[b-069l41ew7r] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
    flex: none;
}

.status-chip--neutral[b-069l41ew7r] {
    background: var(--fill-300);
    color: var(--text-200);
}

.status-chip--success[b-069l41ew7r] {
    background: var(--accent-success-100);
    color: var(--accent-success-500);
}

.status-chip--warning[b-069l41ew7r] {
    background: var(--accent-warning-100, var(--fill-300));
    color: var(--text-warning);
}

.status-chip--danger[b-069l41ew7r] {
    background: var(--accent-danger-100, var(--fill-300));
    color: var(--text-danger);
}
/* /Shared/Components/TableColumnPicker.razor.rz.scp.css */
.table-column-picker[b-1zmxekh16r] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

/* AntD's sibling margin assumes checkboxes flow inline; in this vertical list it indents
   every row after the first. */
.table-column-picker[b-1zmxekh16r]  .ant-checkbox-wrapper + .ant-checkbox-wrapper {
    margin-left: 0;
}
/* /Shared/Components/ViewToggle.razor.rz.scp.css */
.view-toggle[b-fp3crgovu3] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    padding: 2px;
    background: var(--fill-300);
    border-radius: 8px;
}

:root[data-theme="dark"] .view-toggle[b-fp3crgovu3] {
    background: var(--fill-500);
}

.view-toggle__btn[b-fp3crgovu3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 26px;
    border: none;
    border-radius: 6px;
    background: transparent;
    color: var(--text-200);
    cursor: pointer;
    font-size: 14px;
}

.view-toggle__btn:hover[b-fp3crgovu3] {
    color: var(--text-400);
}

.view-toggle__btn--active[b-fp3crgovu3] {
    background: var(--fill-100);
    color: var(--text-400);
    box-shadow: 0 1px 2px rgba(0, 0, 0, .1);
}
/* /Shared/CultureSelect.razor.rz.scp.css */
/* Custom owned culture dropdown (no AntDesign Select). */
.culture[b-86p2m8bceo] {
    position: relative;
    display: inline-flex;
    line-height: 1; /* the header sets line-height: 64px; don't inherit it */
}

.culture__trigger[b-86p2m8bceo] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 26px;
    padding: 0 8px;
    background: transparent;
    border: 0;
    border-radius: 6px;
    color: var(--text-200);
    font-size: 12px;
    line-height: 1;
    cursor: pointer;
}
.culture__trigger:hover[b-86p2m8bceo] {
    background: var(--overlay-hover-subtle);
}
.culture__abbr[b-86p2m8bceo] {
    font-weight: 600;
    letter-spacing: 0.03em;
}
.culture__chev[b-86p2m8bceo] {
    font-size: 9px;
    opacity: 0.55;
}

.culture__backdrop[b-86p2m8bceo] {
    position: fixed;
    inset: 0;
    /* +1 over the account panel it lives inside; the menu itself goes one higher. */
    z-index: calc(var(--z-popover) + 1);
}
.culture__menu[b-86p2m8bceo] {
    position: absolute;
    bottom: calc(100% + 6px);   /* opens upward — it lives in the account-panel footer */
    left: 0;
    z-index: calc(var(--z-popover) + 2);
    min-width: 140px;
    padding: 4px;
    background: var(--fill-100);
    border: 1px solid var(--border-100);
    border-radius: 10px;
    box-shadow: 0 8px 24px var(--shadow-color);
    display: flex;
    flex-direction: column;
}
.culture__opt[b-86p2m8bceo] {
    display: block;
    width: 100%;
    text-align: left;
    padding: 7px 10px;
    background: transparent;
    border: 0;
    border-radius: 6px;
    color: var(--text-400);
    font-size: 13px;
    line-height: 1.2;
    white-space: nowrap;
    cursor: pointer;
}
.culture__opt:hover[b-86p2m8bceo] {
    background: var(--overlay-hover-subtle);
}
.culture__opt.is-active[b-86p2m8bceo] {
    background: var(--fill-brand-300);
    color: var(--text-brand);
    font-weight: 600;
}
:root[data-theme="dark"] .culture__opt.is-active[b-86p2m8bceo] {
    background: var(--fill-brand-200);
}

.culture__native[b-86p2m8bceo] {
    min-width: 260px;
    height: var(--elm-size-md);
    padding: 0 36px 0 12px;
    border: 1px solid var(--border-200);
    border-radius: var(--radius-md);
    /* Native arrow replaced so text inset and chevron gutter match the AntDesign selects. */
    appearance: none;
    background: var(--fill-100) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5 6 8l3.5-3.5' fill='none' stroke='%23737373' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 12px center;
    font-size: var(--font-size-md);
    color: var(--text-300);
    cursor: pointer;
}
.culture__native:focus-visible[b-86p2m8bceo] {
    outline: none;
    border-color: var(--text-brand);
}
/* /Shared/Editor/EditorHelpPane.razor.rz.scp.css */
.help-empty[b-gekp11y62q] {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 10px;
    padding: 26px 18px;
}

.help-empty p[b-gekp11y62q] {
    margin: 0;
    font-size: 12.5px;
    line-height: 1.6;
    color: var(--text-200);
}

.help-glyph[b-gekp11y62q] {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--fill-300);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-200);
    font-size: 15px;
}

.help-content[b-gekp11y62q] {
    margin: 0;
    font: 400 12.5px/1.6 var(--font-mono);
    color: var(--text-400);
    white-space: pre-wrap;
    word-break: break-word;
}
/* /Shared/Editor/EditorSettingsPane.razor.rz.scp.css */
.set-head[b-5p47riif0d] {
    font: 600 10.5px/1 var(--font-sans);
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--text-200);
    margin-bottom: 11px;
}

.set-group + .set-head[b-5p47riif0d] {
    margin-top: 20px;
}

.set-group[b-5p47riif0d] {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.set-row[b-5p47riif0d] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    font-size: 13px;
    line-height: 1.4;
    color: var(--text-300);
    cursor: pointer;
    margin: 0;
}

.set-row > span:first-child[b-5p47riif0d] {
    flex: 1;
    min-width: 0;
}

.set-hint[b-5p47riif0d] {
    font-size: 12px;
    line-height: 1.5;
    color: var(--text-200);
    margin-top: -4px;
}

.set-foot[b-5p47riif0d] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px solid var(--border-100);
    font-size: 12px;
    color: var(--text-200);
}

[b-5p47riif0d] .set-foot-check {
    color: var(--accent-success-400);
}
/* /Shared/Editor/MarkerDataPane.razor.rz.scp.css */
.sug[b-gr4nje0w4i] {
    display: flex;
    gap: 10px;
    padding: 11px;
    border: 1px solid var(--border-100);
    border-radius: 6px;
    background: var(--fill-200);
    width: 100%;
    text-align: left;
    cursor: pointer;
    font-family: inherit;
}

.sug + .sug[b-gr4nje0w4i] {
    margin-top: 8px;
}

.sug:hover[b-gr4nje0w4i] {
    background: var(--fill-300);
}

.sug-ic[b-gr4nje0w4i] {
    color: var(--accent-brand-400);
    flex: 0 0 auto;
    margin-top: 1px;
    font-size: 15px;
}

.sug-ic.warn[b-gr4nje0w4i] {
    color: #b0761d;
}

.sug-ic.error[b-gr4nje0w4i] {
    color: var(--accent-danger-400);
}

.sug-tx[b-gr4nje0w4i] {
    font-size: 12.5px;
    line-height: 1.55;
    color: var(--text-300);
}

.sug-loc[b-gr4nje0w4i] {
    display: block;
    margin-top: 6px;
    font: 400 11.5px/1 var(--font-mono);
    color: var(--text-200);
}

.sug-empty[b-gr4nje0w4i] {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 10px;
    padding: 26px 18px;
}

.sug-glyph[b-gr4nje0w4i] {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--fill-300);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-200);
    font-size: 15px;
}

.sug-empty h5[b-gr4nje0w4i] {
    margin: 0;
    font: 700 13px/1.3 var(--font-sans);
    color: var(--text-400);
}

.sug-empty p[b-gr4nje0w4i] {
    margin: 0;
    font-size: 12.5px;
    line-height: 1.6;
    color: var(--text-200);
}

/* /Shared/Header/ComputerChip.razor.rz.scp.css */
.pc-chip[b-ymr6q6a21r] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 28px;
    padding: 0 10px;
    border-radius: 8px;
    font-size: 12px;
    line-height: 1;
    cursor: pointer;
    border: 1px solid transparent;
    background: transparent;
    color: var(--text-300);
    transition: background-color 120ms ease, color 120ms ease;
    white-space: nowrap;
    vertical-align: middle;
}
.pc-chip:hover[b-ymr6q6a21r] { background: var(--overlay-hover-subtle); color: var(--text-400); }
.pc-chip__count[b-ymr6q6a21r] {
    font-size: 10px;
    font-weight: 600;
    padding: 1px 6px;
    border-radius: 9px;
    background: var(--alt-100);
    color: var(--text-400);
}

/* multi-node: more prominent (identity matters in a cluster) */
.pc-chip--multi[b-ymr6q6a21r] {
    background: var(--overlay-hover-subtle);
    border-color: var(--alt-200);
    color: var(--text-400);
}
.pc-chip--multi:hover[b-ymr6q6a21r] { background: var(--alt-200); }

/* light variant */
.pc-chip--light[b-ymr6q6a21r] { color: var(--text-200); }
.pc-chip--light:hover[b-ymr6q6a21r] { background: var(--overlay-hover-subtle); color: var(--text-400); }
.pc-chip--light .pc-chip__count[b-ymr6q6a21r] { background: var(--alt-100); color: var(--text-300); }
.pc-chip--light.pc-chip--multi[b-ymr6q6a21r] { background: rgba(0, 0, 0, 0.03); border-color: var(--alt-100); color: var(--text-400); }
.pc-chip--light.pc-chip--multi:hover[b-ymr6q6a21r] { background: var(--alt-100); }
/* /Shared/Header/GitBlock.razor.rz.scp.css */
.git-block[b-yif0izeiy1] {
    display: inline-flex;
    align-items: stretch;
    height: 28px;
    border-radius: 8px;
    overflow: hidden;
    background: var(--alt-100);
    border: 1px solid transparent;
    font-size: 12px;
    line-height: 1;
    user-select: none;
    vertical-align: middle;
}

.git-block__seg[b-yif0izeiy1] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0 10px;
    background: transparent;
    border: 0;
    color: var(--text-400);
    cursor: pointer;
    transition: background-color 120ms ease;
    white-space: nowrap;
    font-size: 12px;
}

.git-block__seg:hover[b-yif0izeiy1] {
    background: var(--alt-100);
}

.git-block__seg:active[b-yif0izeiy1] {
    background: var(--alt-200);
}

.git-block__label[b-yif0izeiy1] {
    font-weight: 500;
}

.git-block__divider[b-yif0izeiy1] {
    width: 1px;
    align-self: center;
    height: 16px;
    background: var(--alt-200);
}

.git-block__icon-stack[b-yif0izeiy1] {
    position: relative;
    display: inline-flex;
    width: 16px;
    height: 16px;
    align-items: center;
    justify-content: center;
}

.git-block__overlay[b-yif0izeiy1] {
    position: absolute;
    right: -5px;
    bottom: -4px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 8px;
    color: var(--text-400);
    box-shadow: 0 0 0 1.5px var(--fill-100);
}

.git-block__overlay--ok[b-yif0izeiy1] {
    background: var(--accent-success-400);
}

.git-block__overlay--paused[b-yif0izeiy1] {
    background: var(--text-caution);
}

.git-block__overlay--conflict[b-yif0izeiy1],
.git-block__overlay--failed[b-yif0izeiy1] {
    background: var(--accent-danger-400);
}

/* failed = red text, never reads as healthy */
.git-block__seg--status.is-failed[b-yif0izeiy1] {
    color: var(--text-danger);
}

.git-block--light .git-block__seg--status.is-failed[b-yif0izeiy1] {
    color: var(--accent-danger-400);
}

/* shared inset look for prominent actions (Commit / Resolve / Fix) */
.git-block__btn[b-yif0izeiy1] {
    margin: 3px;
    border-radius: 6px;
    align-self: center;
    height: 22px;
}

.git-block__seg--primary[b-yif0izeiy1] {
    color: var(--text-400);
    background: var(--fill-brand-300);
}

.git-block__seg--primary:hover[b-yif0izeiy1] {
    background: var(--fill-brand-400);
}

.git-block__seg--branch[b-yif0izeiy1] {
    color: var(--text-200);
    font-weight: 400;
}

/* setup CTA */
.git-block__seg--setup[b-yif0izeiy1] {
    gap: 7px;
    color: var(--text-400);
}

.git-block--light.git-block__seg--setup[b-yif0izeiy1] {
    color: var(--text-400);
}

/* read-only lock (pull-only) */
.git-block__seg--readonly[b-yif0izeiy1] {
    cursor: default;
    color: var(--text-100);
    font-weight: 400;
}

.git-block__seg--readonly:hover[b-yif0izeiy1] {
    background: transparent;
}

/* icon-only: square padding so it aligns with text segments */
.git-block__seg--icononly[b-yif0izeiy1] {
    padding: 0 11px;
}

/* auto-sync indicator — active/healthy, so green (not muted like read-only) */
.git-block__seg--auto[b-yif0izeiy1] {
    cursor: default;
    color: var(--accent-success-400);
    font-weight: 600;
}

.git-block__seg--auto:hover[b-yif0izeiy1] {
    background: transparent;
}

/* light variant */
.git-block--light[b-yif0izeiy1] {
    background: var(--alt-100);
    border-color: transparent;
}

.git-block--light .git-block__seg[b-yif0izeiy1] {
    color: var(--text-400);
}

.git-block--light .git-block__seg:hover[b-yif0izeiy1] {
    background: var(--alt-100);
}

.git-block--light .git-block__seg:active[b-yif0izeiy1] {
    background: var(--alt-200);
}

.git-block--light .git-block__divider[b-yif0izeiy1] {
    background: var(--alt-200);
}

.git-block--light .git-block__overlay[b-yif0izeiy1] {
    box-shadow: 0 0 0 1.5px var(--fill-100);
}

.git-block--light .git-block__seg--primary[b-yif0izeiy1] {
    color: var(--text-brand);
    background: var(--fill-brand-200);
}

.git-block--light .git-block__seg--primary:hover[b-yif0izeiy1] {
    background: var(--fill-brand-300);
}

.git-block--light .git-block__seg--branch[b-yif0izeiy1] {
    color: var(--text-100);
}

/* editing-mode bar */
.git-block--editing[b-yif0izeiy1] {
    background: var(--fill-brand-300);
    border-color: transparent;
}

.git-block--editing .git-block__seg--status .git-block__label[b-yif0izeiy1] {
    font-weight: 600;
}

.git-block--editing .git-block__overlay--paused[b-yif0izeiy1] {
    background: var(--text-caution);
}

/* commit (editing bar): color only; inset comes from .git-block__btn */
.git-block__seg--commit[b-yif0izeiy1] {
    color: var(--text-400);
    background: var(--fill-brand-400);
    font-weight: 600;
}

.git-block__seg--commit:hover[b-yif0izeiy1] {
    background: var(--fill-brand-500);
}

/* discard/stop — quiet */
.git-block__seg--discard[b-yif0izeiy1] {
    color: var(--text-200);
    padding: 0 9px;
}

.git-block__seg--discard:hover[b-yif0izeiy1] {
    color: var(--text-danger);
    background: var(--accent-danger-100);
}

.git-block--light.git-block--editing[b-yif0izeiy1] {
    background: var(--fill-brand-100);
    border-color: var(--border-brand-300);
}

.git-block--light .git-block__seg--commit[b-yif0izeiy1] {
    color: var(--text-brand);
    background: var(--fill-brand-200);
}

.git-block--light .git-block__seg--commit:hover[b-yif0izeiy1] {
    background: var(--fill-brand-300);
}

.git-block--light .git-block__seg--discard[b-yif0izeiy1] {
    color: var(--text-100);
}

.git-block--light .git-block__seg--discard:hover[b-yif0izeiy1] {
    color: var(--accent-danger-400);
    background: var(--accent-danger-100);
}
/* /Shared/Header/GitStatusBar.razor.rz.scp.css */
.gsb[b-pajlq2tck4] {
    display: flex;
    align-items: center;
    gap: 0;
    border: 1px solid var(--gsb-stroke, var(--border-500));
    border-radius: 10px;
    background: var(--gsb-bg, var(--fill-100));
    padding: 4px;
    min-height: 44px;
    font-size: 13px;
}

.gsb__status[b-pajlq2tck4] {
    display: flex;
    align-items: center;
    gap: 0;
    flex: 1 1 auto;
    min-width: 0;
}

.gsb__seg[b-pajlq2tck4] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 6px 12px;
    border-radius: 7px;
    color: var(--text-300);
    white-space: nowrap;
}

.gsb__divider[b-pajlq2tck4] {
    width: 1px;
    height: 18px;
    background: var(--border-500);
    margin: 0 4px;
}

.gsb__behavior[b-pajlq2tck4] {
    font-weight: 600;
}

/* health pill — sits right next to the behavior */
.gsb__health[b-pajlq2tck4] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 9px;
    border-radius: 999px;
    font-size: 11.5px;
    font-weight: 600;
}

.gsb__health .dot[b-pajlq2tck4] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

.gsb__health--ok[b-pajlq2tck4] {
    background: var(--accent-success-100);
    color: var(--accent-success-400);
}

.gsb__health--paused[b-pajlq2tck4] {
    background: var(--accent-caution-100);
    color: var(--accent-caution-400);
}

.gsb__health--failed[b-pajlq2tck4] {
    background: var(--accent-danger-100);
    color: var(--accent-danger-400);
}

.gsb__health--conflict[b-pajlq2tck4] {
    background: var(--accent-danger-100);
    color: var(--accent-danger-400);
}

.gsb__health--editing[b-pajlq2tck4] {
    background: var(--accent-brand-100);
    color: var(--text-brand);
}

.gsb__branch[b-pajlq2tck4] {
    color: var(--text-200);
}

.gsb__direction[b-pajlq2tck4] {
    color: var(--text-200);
    font-size: 12px;
}

.gsb__readonly[b-pajlq2tck4] {
    color: var(--text-100);
}

.gsb__actions[b-pajlq2tck4] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding-right: 4px;
    flex: 0 0 auto;
}

/* action buttons */
.gsb-btn[b-pajlq2tck4] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    border-radius: 7px;
    border: 1px solid transparent;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    font-family: inherit;
    transition: background 120ms ease, border-color 120ms ease;
}

.gsb-btn--primary[b-pajlq2tck4] {
    background: var(--btn-primary-bg);
    color: var(--btn-primary-text);
}

.gsb-btn--primary:hover[b-pajlq2tck4] {
    background: var(--btn-primary-hover);
}

.gsb-btn--default[b-pajlq2tck4] {
    background: var(--fill-100);
    color: var(--text-300);
    border-color: var(--border-600);
}

.gsb-btn--default:hover[b-pajlq2tck4] {
    border-color: var(--btn-primary-bg);
    color: var(--btn-primary-bg);
}

.gsb-btn--danger[b-pajlq2tck4] {
    background: var(--fill-100);
    color: var(--text-danger);
    border-color: var(--accent-danger-100);
}

.gsb-btn--danger:hover[b-pajlq2tck4] {
    background: rgba(229, 72, 77, 0.06);
    border-color: var(--accent-danger-100);
}

.gsb-btn--ghost[b-pajlq2tck4] {
    background: transparent;
    color: var(--text-200);
    border-color: transparent;
}

.gsb-btn--ghost:hover[b-pajlq2tck4] {
    background: var(--overlay-hover-subtle);
    color: var(--text-300);
}

/* dark */
.gsb--dark[b-pajlq2tck4] {
    --gsb-bg: var(--fill-200);
    --gsb-stroke: var(--border-100);
}

.gsb--dark .gsb__seg[b-pajlq2tck4] {
    color: var(--text-300);
}

.gsb--dark .gsb__divider[b-pajlq2tck4] {
    background: var(--border-100);
}

.gsb--dark .gsb__branch[b-pajlq2tck4],
.gsb--dark .gsb__readonly[b-pajlq2tck4] {
    color: var(--text-200);
}

/* Health pills use DS accent tokens that already theme themselves — no dark overrides needed. */

.gsb--dark .gsb-btn--default[b-pajlq2tck4] {
    background: transparent;
    color: var(--text-300);
    border-color: var(--border-300);
}

.gsb--dark .gsb-btn--default:hover[b-pajlq2tck4] {
    border-color: var(--text-brand);
    color: var(--text-brand);
}

.gsb--dark .gsb-btn--danger[b-pajlq2tck4] {
    background: transparent;
    color: var(--accent-danger-400);
}

.gsb--dark .gsb-btn--ghost:hover[b-pajlq2tck4] {
    background: var(--overlay-hover-subtle);
    color: var(--text-400);
}
/* /Shared/Header/LicenseBadge.razor.rz.scp.css */
.lic-badge[b-2knst3z9q2] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    height: 28px;
    padding: 0 10px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    border: 1px solid transparent;
    cursor: pointer;
    white-space: nowrap;
    vertical-align: middle;
    transition: background-color 120ms ease;
}

/* Icon-only variant (next to the sidebar logo): square, no text, tooltip carries the label. */
.lic-badge--icon[b-2knst3z9q2] {
    width: 28px;
    padding: 0;
    justify-content: center;
    gap: 0;
}

/* Development — calm "non-production" doc-purple (token --doc-purple-500 #6e5dc6).
   Light, barely-visible tint; no border; icon uses the deeper doc-purple for legibility. */
.lic-badge--dev[b-2knst3z9q2] {
    background: var(--menu-bg);
    color: rgba(110, 93, 198, 0.9);
    border-color: transparent;
}

.lic-badge--dev:hover[b-2knst3z9q2] {
    background: var(--fill-200);
}

/* Expiring — warning amber */
.lic-badge--expiring[b-2knst3z9q2] {
    background: var(--accent-warning-100);
    color: var(--text-warning);
    border-color: var(--border-brand-200);
}

/* Unlicensed — danger red */
.lic-badge--unlicensed[b-2knst3z9q2] {
    background: var(--accent-danger-100);
    color: var(--text-danger);
}
/* /Shared/Header/NotificationBell.razor.rz.scp.css */
.notif-bell[b-gbb87tnrs5] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 28px;
    border-radius: 8px;
    cursor: pointer;
    color: var(--text-400);
    transition: background-color 120ms ease, color 120ms ease;
    vertical-align: middle;
}

.notif-bell:hover[b-gbb87tnrs5] {
    background: var(--overlay-hover-subtle);
    color: var(--text-400);
}

.notif-bell__dots[b-gbb87tnrs5] {
    position: absolute;
    top: 2px;
    right: 3px;
    display: inline-flex;
    gap: 2px;
}

.notif-bell__dot[b-gbb87tnrs5] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    /* Ring matches the surface behind the bell (the pill = --fill-100), so it reads as a gap,
       not a dark halo — themes correctly to white (light) / dark-blue (dark). */
    box-shadow: 0 0 0 1.5px var(--fill-100);
}

.notif-bell__dot--error[b-gbb87tnrs5] {
    background: var(--text-danger);
}

.notif-bell__dot--warn[b-gbb87tnrs5] {
    background: var(--text-warning);
}

.notif-bell__dot--info[b-gbb87tnrs5] {
    background: var(--text-brand);
}

/* light backdrop (storybook) needs a light ring so dots don't get a dark halo */
.notif-bell--light[b-gbb87tnrs5] {
    color: var(--text-300);
}

.notif-bell--light:hover[b-gbb87tnrs5] {
    background: var(--overlay-hover-subtle);
    color: var(--text-400);
}
/* /Shared/Header/ThemeIconToggle.razor.rz.scp.css */
/* bare circular icon button — account-chooser .ac-icon-btn */
.acct-iconbtn[b-04yv83ajs1] {
    width: 26px;
    height: 26px;
    border: 0;
    background: transparent;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--text-200);
    cursor: pointer;
    flex-shrink: 0;
    transition: background 200ms ease;
}

.acct-iconbtn:hover[b-04yv83ajs1] {
    background: var(--overlay-hover-subtle);
    color: var(--text-300);
}
/* /Shared/Header/UserMenu.razor.rz.scp.css */
/* Custom dropdown: trigger anchors the panel; backdrop catches outside-clicks to close. */
.acct-menu[b-d0540fybtf] {
    position: relative;
    display: inline-flex;
}
.acct-backdrop[b-d0540fybtf] {
    position: fixed;
    inset: 0;
    z-index: var(--z-popover);
}
.acct-panel[b-d0540fybtf] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: calc(var(--z-popover) + 1);
    width: 320px;
    padding: 8px;
    background: var(--fill-100);
    color: var(--text-300); /* explicit — panel left the dark header, don't inherit white text */
    line-height: 1.4;           /* the header sets line-height: 64px; reset so rows aren't huge */
    border-radius: 12px;
    box-shadow: 0 8px 30px var(--shadow-color);
    border: 1px solid var(--border-100);
}

.acct-row[b-d0540fybtf] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 8px;
    cursor: pointer;
    color: inherit;
    text-decoration: none;
    transition: background-color 120ms ease;
}

.acct-row:hover[b-d0540fybtf] {
    background: var(--overlay-hover-subtle);
}

.acct-row__icon[b-d0540fybtf] {
    width: 18px;
    display: inline-flex;
    justify-content: center;
    opacity: .7;
}

.acct-row__label[b-d0540fybtf] {
    font-size: 13px;
}

/* identity header */
.acct-id[b-d0540fybtf] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 6px 12px;
}

.acct-avatar[b-d0540fybtf] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    flex: 0 0 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--btn-primary-bg);
    color: var(--always-white);
    font-weight: 700;
    font-size: 16px;
    text-transform: uppercase;
}

.acct-id__name[b-d0540fybtf] {
    font-weight: 700;
    font-size: 14px;
    line-height: 1.2;
}

.acct-id__role[b-d0540fybtf] {
    font-size: 12px;
    color: var(--text-200);
}

.acct-sep[b-d0540fybtf] {
    height: 1px;
    background: var(--border-100);
    margin: 8px 0;
}

/* footer — account-chooser .ac-footer: prefs left, sign-out right, top border */
.acct-footer[b-d0540fybtf] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 8px;
    padding-top: 12px;
    border-top: 1px solid var(--border-100);
}

.acct-footer__prefs[b-d0540fybtf] {
    display: flex;
    align-items: center;
    gap: 4px;
}

/* red sign-out — account-chooser .ac-logoff-btn */
.acct-signout[b-d0540fybtf] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 10px;
    background: transparent;
    border: 1px solid rgba(229, 72, 77, 0.25);
    border-radius: 6px;
    color: var(--text-danger);
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: background 200ms ease, border-color 200ms ease;
}

.acct-signout:hover[b-d0540fybtf] {
    background: rgba(229, 72, 77, 0.06);
    border-color: rgba(229, 72, 77, 0.4);
}

.acct-signout:active[b-d0540fybtf] {
    background: rgba(229, 72, 77, 0.1);
}

/* top-nav trigger: just the avatar */
.acct-trigger[b-d0540fybtf] {
    display: inline-flex;
    align-items: center;
    padding: 0 4px;
    height: 36px;
    cursor: pointer;
}

/* Current page: same tint + accent bar as the sidebar's selected item. */
.acct-row--active[b-d0540fybtf] {
    position: relative;
    background: var(--fill-brand-300);
    color: var(--text-brand);
    font-weight: 600;
}
:root[data-theme="dark"] .acct-row--active[b-d0540fybtf] {
    background: var(--fill-brand-200);
}
.acct-row--active[b-d0540fybtf]::after {
    content: "";
    position: absolute;
    left: 0;
    top: 6px;
    bottom: 6px;
    width: 3px;
    border-radius: 0 3px 3px 0;
    background: var(--text-brand);
}
.acct-row--active .acct-row__icon[b-d0540fybtf] {
    opacity: 1;
}
/* /Shared/Platform/AdminConsoleTerminal.razor.rz.scp.css */
/* Background matches the xterm surface color set in PsuTerminal, which is not token-driven.
   Fills the modal body via the flex chain set up in overrides/modal.css. */
.admin-cli[b-ny05cf47vt] {
    flex: 1 1 auto;
    min-height: 0;
    padding: 10px 12px;
    border: 1px solid var(--border-200);
    border-radius: var(--radius-md);
    background: #ffffff;
}

:root[data-theme="dark"] .admin-cli[b-ny05cf47vt] {
    background: #0d0f14;
}
/* /Shared/ResourceCodeEditor.razor.rz.scp.css */
.ed-shell[b-sbmxznweg5] {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 0;
    border: 1px solid var(--border-200);
    border-radius: var(--radius-md);
    overflow: hidden;
    background: var(--fill-100);
}

.ed-bar[b-sbmxznweg5] {
    display: flex;
    align-items: center;
    gap: 10px;
    height: 46px;
    padding: 0 10px 0 16px;
    border-bottom: 1px solid var(--border-100);
    flex: 0 0 auto;
}

.ed-name[b-sbmxznweg5] {
    font: 600 11.5px/1 var(--font-mono);
    color: var(--text-400);
}

.ed-dirty[b-sbmxznweg5] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--accent-brand-400);
    flex: 0 0 auto;
}

.ed-spacer[b-sbmxznweg5] {
    flex: 1;
}

.ed-bar[b-sbmxznweg5]  .ant-btn {
    height: 30px;
    padding: 0 11px;
    font-size: 12.5px;
}

.ed-main[b-sbmxznweg5] {
    display: flex;
    flex: 1;
    min-height: 0;
}

.ed-code[b-sbmxznweg5] {
    flex: 1;
    min-width: 0;
    display: flex;
    min-height: 0;
}

/* Literal colors: the Monaco theme is user-selectable independently of the app
   theme, so the gutter follows the editor's own light/dark class, not app tokens.
   The inset shadow draws the divider without adding layout width. */
/* The stacked inset shadows fake a 4px editor-background gap between the gutter
   and the code: the 4px strip paints over the grey, the 5px one underneath shows
   only as the 1px divider. Pure paint — no geometry change, so the caret and
   click targets stay exact. */
.ed-code[b-sbmxznweg5]  .monaco-editor.vs .margin-view-overlays {
    background-color: #f9f9f9;
    box-shadow: inset -4px 0 0 #ffffff, inset -5px 0 0 #f2f2f2;
}

.ed-code[b-sbmxznweg5]  .monaco-editor.vs-dark .margin-view-overlays {
    background-color: #252526;
    box-shadow: inset -4px 0 0 #1e1e1e, inset -5px 0 0 #303031;
}

/* Monaco positions .line-numbers absolutely with inline left+width; adding
   right:0 over-constrains the box and auto margins resolve it by centering. */
.ed-code[b-sbmxznweg5]  .monaco-editor .margin-view-overlays .line-numbers {
    right: 0;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.ed-side[b-sbmxznweg5] {
    flex: 0 0 320px;
    border-left: 1px solid var(--border-100);
    display: flex;
    flex-direction: column;
    min-height: 0;
    background: var(--fill-100);
}

.ed-side-head[b-sbmxznweg5] {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 38px;
    padding: 0 8px 0 14px;
    border-bottom: 1px solid var(--border-100);
    flex: 0 0 auto;
}

.ed-side-title[b-sbmxznweg5] {
    font: 600 10.5px/1 var(--font-sans);
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--text-300);
    flex: 1;
}

.ed-mini[b-sbmxznweg5] {
    width: 26px;
    height: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    border: none;
    background: none;
    color: var(--text-200);
    cursor: pointer;
}

.ed-mini:hover[b-sbmxznweg5] {
    background: var(--fill-300);
    color: var(--text-400);
}

.ed-side-body[b-sbmxznweg5] {
    flex: 1;
    min-height: 0;
    overflow: auto;
    padding: 14px;
}

.ed-rail[b-sbmxznweg5] {
    flex: 0 0 42px;
    border-left: 1px solid var(--border-100);
    background: var(--fill-200);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    padding: 8px 0;
}

.ed-rail-btn[b-sbmxznweg5] {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 6px;
    background: none;
    color: var(--text-200);
    cursor: pointer;
    position: relative;
}

.ed-rail-btn:hover[b-sbmxznweg5] {
    background: var(--fill-300);
    color: var(--text-400);
}

.ed-rail-btn.on[b-sbmxznweg5] {
    background: var(--fill-100);
    border: 1px solid var(--border-200);
    color: var(--accent-brand-400);
}

.ed-rail-badge[b-sbmxznweg5] {
    position: absolute;
    top: 1px;
    right: 0;
    min-width: 13px;
    height: 13px;
    padding: 0 3px;
    border-radius: var(--radius-pill);
    background: var(--accent-brand-400);
    color: var(--always-white);
    font: 700 9px/13px var(--font-sans);
    text-align: center;
}

.ed-rail-gap[b-sbmxznweg5] {
    flex: 1;
}
/* /Shared/Security/AppTokenTable.razor.rz.scp.css */
.apptokens-table[b-sjvi7s3yj0]  .col-shrink {
    white-space: nowrap;
    overflow: hidden;
}
/* /Shared/Settings/GitFileDiff.razor.rz.scp.css */
.psu-diff[b-u4jzkuygpd] {
    --pd-fg: #24292e;
    --pd-muted: #656d76;
    --pd-border: #e1e4e8;
    --pd-ctx-gutter: #f6f8fa;
    --pd-filler-bg: #f6f8fa;
    --pd-add-bg: #e6ffec;
    --pd-add-gutter: #ccffd8;
    --pd-add-hl: #abf2bc;
    --pd-add-accent: #2ea043;
    --pd-del-bg: #ffebe9;
    --pd-del-gutter: #ffd7d5;
    --pd-del-hl: #ffc0bc;
    --pd-del-accent: #cf222e;
    --pd-gap-bg: #ddf4ff;
    --pd-gap-fg: #0969da;
}

:root[data-theme="dark"] .psu-diff[b-u4jzkuygpd] {
    --pd-fg: #f0f6fc;
    --pd-muted: #6e7681;
    --pd-border: #30363d;
    --pd-ctx-gutter: #161b22;
    --pd-filler-bg: #161b22;
    --pd-add-bg: #12261e;
    --pd-add-gutter: #1c4428;
    --pd-add-hl: #1f6f3c;
    --pd-add-accent: #3fb950;
    --pd-del-bg: #301a1f;
    --pd-del-gutter: #542426;
    --pd-del-hl: #8e2c31;
    --pd-del-accent: #f85149;
    --pd-gap-bg: #121d2f;
    --pd-gap-fg: #58a6ff;
}

.psu-diff__table[b-u4jzkuygpd] {
    width: 100%;
    border-collapse: collapse;
    font-family: 'SFMono-Regular', 'Consolas', 'Liberation Mono', 'Menlo', monospace;
    font-size: 12px;
    line-height: 20px;
    color: var(--pd-fg);
}

.psu-diff__num[b-u4jzkuygpd] {
    width: 1%;
    white-space: nowrap;
    text-align: right;
    vertical-align: top;
    padding: 2px 8px;
    font-size: 11px;
    color: var(--pd-muted);
    background: var(--pd-ctx-gutter);
    user-select: none;
}

.psu-diff__num--del[b-u4jzkuygpd] { background: var(--pd-del-gutter); }
.psu-diff__num--add[b-u4jzkuygpd] { background: var(--pd-add-gutter); }
.psu-diff__num--filler[b-u4jzkuygpd] { background: var(--pd-filler-bg); }

/* Divider between the two panes. */
.psu-diff__code + .psu-diff__num[b-u4jzkuygpd] { border-left: 1px solid var(--pd-border); }

.psu-diff__code[b-u4jzkuygpd] {
    width: 50%;
    position: relative;
    vertical-align: top;
    padding: 2px 12px 2px 22px;
    white-space: pre-wrap;
    word-break: break-all;
}

.psu-diff__code--del[b-u4jzkuygpd] { background: var(--pd-del-bg); }
.psu-diff__code--add[b-u4jzkuygpd] { background: var(--pd-add-bg); }
.psu-diff__code--filler[b-u4jzkuygpd] { background: var(--pd-filler-bg); }

.psu-diff__marker[b-u4jzkuygpd] {
    position: absolute;
    left: 7px;
    top: 2px;
    font-weight: 600;
    user-select: none;
}

.psu-diff__marker--del[b-u4jzkuygpd] { color: var(--pd-del-accent); }
.psu-diff__marker--add[b-u4jzkuygpd] { color: var(--pd-add-accent); }

.psu-diff__hl[b-u4jzkuygpd] {
    border-radius: 3px;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}

.psu-diff__hl--del[b-u4jzkuygpd] { background: var(--pd-del-hl); }
.psu-diff__hl--add[b-u4jzkuygpd] { background: var(--pd-add-hl); }

.psu-diff__gap td[b-u4jzkuygpd] { padding: 0; }

.psu-diff__gap button[b-u4jzkuygpd] {
    display: block;
    width: 100%;
    border: none;
    background: var(--pd-gap-bg);
    color: var(--pd-gap-fg);
    font-size: 12px;
    line-height: 20px;
    padding: 4px 12px;
    text-align: left;
    cursor: pointer;
}

.psu-diff__gap button:hover[b-u4jzkuygpd] { filter: brightness(0.96); }

.psu-diff__empty[b-u4jzkuygpd] {
    padding: 12px;
    font-size: 12px;
    color: var(--pd-muted);
}
/* /Shared/UniversalErrorBoundary.razor.rz.scp.css */
/* Center the hero in the space the failed content owned. flex:1 covers the in-body boundary
   (page-body is a flex column); the min-height covers the outer, non-flex placement. */
.error-hero[b-6s12tjylak] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    padding: 32px 16px;
}

/* Compact inline details in the standard .log-box skin: enough to eyeball the failure,
   scrolls for the rest. */
.error-details[b-6s12tjylak] {
    width: 100%;
    max-width: 1000px;
    padding: 8px 24px 0;
}
.error-details pre[b-6s12tjylak] {
    margin: 0;
    font-size: 12px;
    line-height: 1.5;
    white-space: pre-wrap;
    word-break: break-word;
    max-height: 180px;
    overflow: auto;
}
