/* /Components/Layout/AuthLayout.razor.rz.scp.css */
.auth-shell[b-q6w0wmqdev] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg);
    padding: 24px;
}

.auth-wrap[b-q6w0wmqdev] {
    width: 100%;
    max-width: 420px;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.shell[b-dxgl9xrado] {
    display: flex;
    height: 100vh;
    width: 100%;
    overflow: hidden;
    background: var(--bg);
}

.sidebar[b-dxgl9xrado] {
    width: 236px;
    flex: none;
    display: flex;
    flex-direction: column;
    background: var(--panel);
    border-right: 1px solid var(--border);
}

.brand-row[b-dxgl9xrado] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 18px 18px 16px;
}

.brand-logo[b-dxgl9xrado] {
    width: 28px;
    height: 28px;
    flex: none;
    border-radius: 7px;
    object-fit: contain;
    background: var(--card-2);
}

.brand-mark[b-dxgl9xrado] {
    width: 28px;
    height: 28px;
    flex: none;
    border-radius: 7px;
    background: var(--brand);
    display: flex;
    align-items: center;
    justify-content: center;
}

.brand-text[b-dxgl9xrado] {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.title-14[b-dxgl9xrado] {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: -.2px;
}

.org-name[b-dxgl9xrado] {
    font-size: 9.5px;
    color: var(--text-3);
    font-family: var(--font-sans);
    letter-spacing: .06em;
}

.nav-list[b-dxgl9xrado] {
    padding: 6px 12px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
    overflow-y: auto;
}

.nav-label[b-dxgl9xrado] {
    flex: 1;
}

.mcp-dot[b-dxgl9xrado] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--good);
    animation: dcpulse 1.8s ease-in-out infinite;
}

.nav-section[b-dxgl9xrado] {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .7px;
    color: var(--text-3);
    padding: 14px 10px 6px;
    text-transform: uppercase;
}

.nav-group[b-dxgl9xrado] {
    display: flex;
    flex-direction: column;
}

.nav-parent[b-dxgl9xrado] {
    display: flex;
    align-items: center;
    gap: 2px;
    width: 100%;
}

.nav-parent .dcnav[b-dxgl9xrado] {
    flex: 1;
    min-width: 0;
}

.nav-group-toggle[b-dxgl9xrado] {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
}

.nav-caret[b-dxgl9xrado] {
    flex: none;
    width: 26px;
    height: 26px;
    border: none;
    border-radius: 6px;
    background: transparent;
    color: var(--text-3);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .12s, color .12s;
}

.nav-caret:hover[b-dxgl9xrado],
.nav-group-toggle:hover .nav-caret-icon[b-dxgl9xrado] {
    background: var(--card-2);
    color: var(--text-2);
}

.nav-caret svg[b-dxgl9xrado],
.nav-caret-icon[b-dxgl9xrado] {
    transition: transform .15s ease;
}

.nav-caret.open svg[b-dxgl9xrado],
.nav-caret-icon.open[b-dxgl9xrado] {
    transform: rotate(90deg);
}

.nav-caret-icon[b-dxgl9xrado] {
    margin-left: auto;
    color: var(--text-3);
}

.nav-children[b-dxgl9xrado] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    margin: 2px 0 4px;
    padding-left: 10px;
    margin-left: 16px;
    border-left: 1px solid var(--border);
}

.nav-child[b-dxgl9xrado] {
    font-size: 12.5px;
    padding: 7px 9px;
    width: 100%;
    border: none;
}

.nav-child .bar[b-dxgl9xrado] {
    left: -10px;
}

.switcher-wrap[b-dxgl9xrado] {
    padding: 12px 10px 6px;
    border-top: 1px solid var(--border);
    position: relative;
}

.switcher-pill[b-dxgl9xrado] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border-radius: 6px;
    background: var(--card);
    border: 1px solid var(--border-2);
    cursor: pointer;
}

.switcher-dot[b-dxgl9xrado] {
    width: 7px;
    height: 7px;
    flex: none;
    border-radius: 50%;
    background: var(--good);
    box-shadow: 0 0 8px rgba(67, 214, 117, .6);
}

.switcher-name[b-dxgl9xrado] {
    font-family: var(--font-sans);
    font-size: 11.5px;
    color: var(--text-2);
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.switcher-caret[b-dxgl9xrado] {
    color: var(--text-3);
    font-size: 10px;
}

.switcher-menu[b-dxgl9xrado] {
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: calc(100% + 4px);
    max-height: 260px;
    overflow-y: auto;
    background: var(--card);
    border: 1px solid var(--border-2);
    border-radius: 8px;
    box-shadow: var(--shadow);
    z-index: 60;
    padding: 4px;
}

.switcher-item[b-dxgl9xrado] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 9px;
    border-radius: 6px;
    cursor: pointer;
}

.switcher-item-dot[b-dxgl9xrado] {
    width: 6px;
    height: 6px;
    flex: none;
    border-radius: 50%;
}

.switcher-item-name[b-dxgl9xrado] {
    font-family: var(--font-sans);
    font-size: 11.5px;
    color: var(--text-2);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.switcher-empty[b-dxgl9xrado] {
    padding: 8px 10px;
    font-size: 11.5px;
    color: var(--text-3);
}

.user-bar[b-dxgl9xrado] {
    padding: 8px 12px 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.user-info[b-dxgl9xrado] {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.user-avatar[b-dxgl9xrado] {
    width: 26px;
    height: 26px;
    flex: none;
    border-radius: 6px;
    background: var(--card-2);
    border: 1px solid var(--border);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 600;
    color: var(--text-2);
    font-family: var(--font-sans);
}

.user-detail[b-dxgl9xrado] {
    min-width: 0;
}

.user-name[b-dxgl9xrado] {
    font-size: 12px;
    color: var(--text-2);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.user-role[b-dxgl9xrado] {
    font-size: 10px;
    color: var(--text-3);
}

.not-signed-in[b-dxgl9xrado] {
    font-size: 12px;
    color: var(--text-3);
}

.user-actions[b-dxgl9xrado] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex: none;
}

.logout-form[b-dxgl9xrado] {
    margin: 0;
}

.icon-btn[b-dxgl9xrado] {
    width: 30px;
    height: 30px;
    border-radius: 7px;
    border: 1px solid var(--border);
    background: var(--card);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-2);
}

.main[b-dxgl9xrado] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.topbar[b-dxgl9xrado] {
    height: 54px;
    flex: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 24px;
    border-bottom: 1px solid var(--border);
    background: var(--panel);
}

.topbar-left[b-dxgl9xrado] {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.topbar-sub[b-dxgl9xrado] {
    font-size: 12px;
    color: var(--text-3);
    font-family: var(--font-sans);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.topbar-right[b-dxgl9xrado] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: none;
}

.running-badge[b-dxgl9xrado] {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 6px 11px;
    background: var(--good-bg);
    border-radius: 7px;
    color: var(--good);
    font-size: 11.5px;
    font-weight: 500;
    font-family: var(--font-sans);
}

.running-dot[b-dxgl9xrado] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--good);
    animation: dcpulse 1.6s ease-in-out infinite;
}

.body-scroll[b-dxgl9xrado] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
    /* Let nested ProjectLayout/SettingsLayout fill height and manage their own scroll. */
    display: flex;
    flex-direction: column;
}

/* Mobile nav — hidden on desktop, shown by the media query below. */
.nav-toggle[b-dxgl9xrado] {
    display: none;
    width: 34px;
    height: 34px;
    flex: none;
    border-radius: 7px;
    border: 1px solid var(--border);
    background: var(--card);
    cursor: pointer;
    align-items: center;
    justify-content: center;
    color: var(--text-2);
}

.nav-backdrop[b-dxgl9xrado] {
    display: none;
}

@media (max-width: 950px) {
    .sidebar[b-dxgl9xrado] {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        z-index: 45;
        transform: translateX(-100%);
        transition: transform .22s cubic-bezier(.4, 0, .2, 1);
    }

    .sidebar.open[b-dxgl9xrado] {
        transform: translateX(0);
    }

    .nav-backdrop[b-dxgl9xrado] {
        display: block;
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, .45);
        z-index: 44;
    }

    .nav-toggle[b-dxgl9xrado] {
        display: flex;
    }

    /* Sidebar is out of flow, so .main already spans full width; just keep the
       topbar contents from overflowing narrow screens. */
    .topbar[b-dxgl9xrado] {
        padding: 0 14px;
    }

    .topbar-right[b-dxgl9xrado] {
        gap: 6px;
    }

    .dcsearch-trigger[b-dxgl9xrado] {
        min-width: 0;
        padding: 6px;
    }

    .dcsearch-trigger .dcsearch-text[b-dxgl9xrado],
    .dcsearch-trigger kbd[b-dxgl9xrado] {
        display: none;
    }

    .running-badge[b-dxgl9xrado] {
        display: none;
    }
}
/* /Components/Layout/ProjectLayout.razor.rz.scp.css */
/* Fill the MainLayout body-scroll area while preserving the project pages' own scroll region. */
.shell[b-vyme6eo3jo] {
    display: flex;
    flex: 1 1 auto;
    align-self: stretch;
    min-height: 0;
    height: 100%;
    max-height: 100%;
}
.body[b-vyme6eo3jo] { flex:1; min-width:0; min-height:0; overflow-y:auto; }
/* /Components/Layout/SettingsLayout.razor.rz.scp.css */
.shell[b-1w6s31flcm] {
    display: flex;
    flex: 1 1 auto;
    align-self: stretch;
    min-height: 0;
    height: 100%;
    max-height: 100%;
}
.side[b-1w6s31flcm] {
    width: 168px;
    flex: none;
    border-right: 1px solid var(--border);
    background: var(--panel);
    padding: 14px 10px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    overflow-y: auto;
    position: sticky;
    top: 0;
    align-self: flex-start;
    max-height: calc(100vh - 54px);
}
.side-head[b-1w6s31flcm] { font-size:10px; font-weight:600; letter-spacing:.7px; color:var(--text-3); padding:0 10px 8px; text-transform:uppercase; }
.body[b-1w6s31flcm] { flex:1; min-width:0; min-height:0; overflow-y:auto; }
.nav-btn[b-1w6s31flcm] { border:none; width:100%; }

.main-menu-back[b-1w6s31flcm] {
    display: none;
    align-items: center;
    gap: 9px;
    width: calc(100% - 20px);
    margin: 0 10px 10px;
    padding: 8px 10px;
    border: none;
    border-radius: 7px;
    background: transparent;
    color: var(--text-2);
    font-size: 12.5px;
    font-weight: 500;
    font-family: inherit;
    cursor: pointer;
    text-align: left;
    transition: background .12s, color .12s;
}

.main-menu-back:hover[b-1w6s31flcm] {
    background: var(--card-2);
    color: var(--text);
}

.main-menu-back svg[b-1w6s31flcm] {
    flex: none;
    color: var(--text-3);
}

.subnav-backdrop[b-1w6s31flcm] {
    display: none;
}

@media (max-width: 950px) {
    .shell[b-1w6s31flcm] {
        position: relative;
    }

    .main-menu-back[b-1w6s31flcm] {
        display: flex;
    }

    .side[b-1w6s31flcm] {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        width: 210px;
        z-index: 36;
        transform: translateX(-100%);
        transition: transform .22s cubic-bezier(.4, 0, .2, 1);
        max-height: 100vh;
        margin-top: 0;
        padding-top: 14px;
    }

    .side.open[b-1w6s31flcm] {
        transform: translateX(0);
    }

    .subnav-backdrop[b-1w6s31flcm] {
        display: block;
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, .45);
        z-index: 35;
    }

    .body[b-1w6s31flcm] {
        padding-top: 0;
    }
}
/* /Components/Pages/About.razor.rz.scp.css */
.page[b-uhrhw4xric] { padding:24px 24px 40px; max-width:720px; margin:0 auto; }
.card[b-uhrhw4xric] { padding:28px 30px; }
.brand-row[b-uhrhw4xric] { display:flex; align-items:center; gap:12px; margin-bottom:14px; }
.logo[b-uhrhw4xric] { width:36px; height:36px; flex:none; border-radius:9px; background:var(--brand); display:flex; align-items:center; justify-content:center; }
.product[b-uhrhw4xric] { font-size:17px; font-weight:600; letter-spacing:-.3px; }
.tagline[b-uhrhw4xric] { font-size:12px; color:var(--text-3); }
.lead[b-uhrhw4xric] { font-size:13px; color:var(--text-2); line-height:1.7; margin:0 0 14px; }
.section[b-uhrhw4xric] { border-top:1px solid var(--border); padding-top:14px; margin-bottom:14px; }
.section-title[b-uhrhw4xric] { font-size:12.5px; font-weight:600; margin-bottom:6px; }
.section-body[b-uhrhw4xric] { font-size:12.5px; color:var(--text-2); line-height:1.8; margin:0; }
.section-note[b-uhrhw4xric] { font-size:12px; color:var(--text-3); line-height:1.8; margin:0; }
.link[b-uhrhw4xric] { color:var(--brand-2); }
.footer[b-uhrhw4xric] { border-top:1px solid var(--border); padding-top:14px; font-size:12.5px; color:var(--text-2); line-height:1.8; }
.muted[b-uhrhw4xric] { color:var(--text-3); }
/* /Components/Pages/AccessSettings.razor.rz.scp.css */
.page[b-228ee1cet8] {
    padding: 24px;
    max-width: 960px;
    margin: 0 auto;
}

.page-title[b-228ee1cet8] {
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 4px;
}

.page-sub[b-228ee1cet8] {
    font-size: 12.5px;
    color: var(--text-3);
    margin-bottom: 18px;
}

.message[b-228ee1cet8] {
    margin-bottom: 12px;
    padding: 10px 14px;
    border-radius: 8px;
    background: var(--card);
    font-size: 12.5px;
    color: var(--text-2);
}

.invite-card[b-228ee1cet8] {
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 18px;
}

.invite-title[b-228ee1cet8] {
    font-size: 12.5px;
    font-weight: 600;
}

.invite-row[b-228ee1cet8] {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: flex-end;
}

.invite-email[b-228ee1cet8] {
    flex: 2;
    min-width: 200px;
}

.invite-role[b-228ee1cet8] {
    flex: 1;
    min-width: 140px;
}

.field-label[b-228ee1cet8] {
    font-size: 12px;
    color: var(--text-3);
    display: block;
    margin-bottom: 4px;
}

.input-full-sans[b-228ee1cet8] {
    width: 100%;
    font-family: var(--font-sans);
}

.input-full[b-228ee1cet8] {
    width: 100%;
}

.err-text[b-228ee1cet8] {
    color: var(--bad);
    font-size: 12px;
}

.empty-note[b-228ee1cet8] {
    padding: 24px;
    color: var(--text-3);
    font-size: 13px;
    text-align: center;
}

.member-list[b-228ee1cet8] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.member-card[b-228ee1cet8] {
    padding: 12px 16px;
}

.member-row[b-228ee1cet8] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.member-info[b-228ee1cet8] {
    flex: 1;
    min-width: 0;
}

.member-name[b-228ee1cet8] {
    font-size: 13px;
    font-weight: 600;
    font-family: var(--font-sans);
}

.member-email[b-228ee1cet8] {
    color: var(--text-3);
    font-weight: 400;
}

.note-11[b-228ee1cet8] {
    font-size: 11px;
    color: var(--text-3);
}

.role-select[b-228ee1cet8] {
    width: 120px;
}

.perm-toggle[b-228ee1cet8] {
    padding: 3px 10px;
    font-size: 11.5px;
}

.matrix[b-228ee1cet8] {
    margin-top: 12px;
    border-top: 1px solid var(--border);
    padding-top: 12px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.matrix-loading[b-228ee1cet8] {
    color: var(--text-3);
    font-size: 12px;
}

.perm-row[b-228ee1cet8] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 4px 0;
}

.perm-name[b-228ee1cet8] {
    flex: 1;
    font-family: var(--font-sans);
    font-size: 12px;
    color: var(--text-2);
}

.muted[b-228ee1cet8] {
    color: var(--text-3);
}

.perm-btns[b-228ee1cet8] {
    display: flex;
    gap: 4px;
}

.perm-btn[b-228ee1cet8] {
    padding: 2px 8px;
    font-size: 10.5px;
}

.perm-status[b-228ee1cet8] {
    width: 64px;
    text-align: right;
    font-size: 10.5px;
}
/* /Components/Pages/ApiTokensSettings.razor.rz.scp.css */
.page[b-3j6ko6srb7] { padding: 1.25rem 1.5rem 2rem; max-width: 52rem; }
.page-title[b-3j6ko6srb7] { margin: 0 0 .35rem; font-size: 1.35rem; }
.page-sub[b-3j6ko6srb7] { color: var(--muted, #6b7280); font-size: .9rem; margin-bottom: 1.25rem; line-height: 1.45; }
.message[b-3j6ko6srb7] { margin-bottom: 1rem; padding: .6rem .8rem; border-radius: 6px; background: #ecfdf5; color: #065f46; font-size: .9rem; }
.add-card[b-3j6ko6srb7], .api-docs[b-3j6ko6srb7], .created[b-3j6ko6srb7], .empty[b-3j6ko6srb7], .token-row[b-3j6ko6srb7] { margin-bottom: .85rem; padding: 1rem 1.1rem; }
.add-title[b-3j6ko6srb7] { font-weight: 600; margin-bottom: .65rem; }
.add-row[b-3j6ko6srb7] { display: flex; flex-wrap: wrap; gap: .65rem; align-items: flex-end; }
.field[b-3j6ko6srb7] { flex: 1 1 12rem; }
.field-life[b-3j6ko6srb7] { flex: 0 0 8rem; }
.field-label[b-3j6ko6srb7] { display: block; font-size: .75rem; color: var(--muted, #6b7280); margin-bottom: .25rem; }
.field-input[b-3j6ko6srb7] { width: 100%; }
.add-error[b-3j6ko6srb7] { color: #b91c1c; font-size: .85rem; margin-top: .5rem; }
.created[b-3j6ko6srb7] { border: 1px solid #fbbf24; background: #fffbeb; }
.created-title[b-3j6ko6srb7] { font-weight: 600; margin-bottom: .5rem; color: #92400e; }
.raw-token[b-3j6ko6srb7] { display: block; word-break: break-all; padding: .6rem .75rem; background: #fff; border-radius: 4px; font-size: .85rem; margin-bottom: .6rem; }
.created-hint[b-3j6ko6srb7] { font-size: .8rem; color: #78716c; margin-bottom: .75rem; }
.api-list[b-3j6ko6srb7] { margin: 0 0 .5rem 1.1rem; padding: 0; font-size: .9rem; line-height: 1.6; }
.list[b-3j6ko6srb7] { display: flex; flex-direction: column; gap: .55rem; }
.token-row[b-3j6ko6srb7] { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.token-meta[b-3j6ko6srb7] { display: flex; flex-direction: column; gap: .2rem; min-width: 0; }
.token-name[b-3j6ko6srb7] { font-weight: 600; }
.token-prefix code[b-3j6ko6srb7] { font-size: .8rem; }
.token-dates[b-3j6ko6srb7] { font-size: .8rem; color: var(--muted, #6b7280); }
.empty[b-3j6ko6srb7] { color: var(--muted, #6b7280); font-size: .9rem; }
/* /Components/Pages/Artifacts.razor.rz.scp.css */
.page[b-ju2vzzu307] {
    display: flex;
    height: 100%;
    min-height: 0;
}

.file-panel[b-ju2vzzu307] {
    width: 430px;
    flex: none;
    border-right: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.file-panel-head[b-ju2vzzu307] {
    padding: 11px 16px;
    border-bottom: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.head-row[b-ju2vzzu307] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.panel-title[b-ju2vzzu307] {
    font-size: 13px;
    font-weight: 600;
}

.filter-input[b-ju2vzzu307] {
    width: 150px;
    padding: 4px 9px;
    font-size: 12px;
}

.project-select[b-ju2vzzu307] {
    font-size: 12px;
}

.bulk-bar[b-ju2vzzu307] {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 12px;
}

.selected-count[b-ju2vzzu307] {
    color: var(--text-2);
}

.bulk-delete-btn[b-ju2vzzu307] {
    padding: 3px 10px;
    font-size: 11.5px;
    color: var(--bad);
}

.bulk-clear-btn[b-ju2vzzu307] {
    padding: 3px 10px;
    font-size: 11.5px;
}

.cap-note[b-ju2vzzu307] {
    font-size: 10.5px;
    color: var(--text-3);
    line-height: 1.5;
}

.pager-row[b-ju2vzzu307] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 9px 16px;
    border-top: 1px solid var(--border);
    flex: none;
}

.pager-info[b-ju2vzzu307] {
    font-size: 11px;
    color: var(--text-3);
}

.pager-controls[b-ju2vzzu307] {
    display: flex;
    align-items: center;
    gap: 9px;
}

.pager-btn[b-ju2vzzu307] {
    padding: 3px 10px;
    font-size: 11px;
}

.pager-page[b-ju2vzzu307] {
    font-size: 11px;
    color: var(--text-2);
    font-family: var(--font-sans);
}

.file-list[b-ju2vzzu307] {
    flex: 1;
    overflow-y: auto;
}

.empty-note[b-ju2vzzu307] {
    padding: 18px 16px;
    color: var(--text-3);
    font-size: 12.5px;
}

.file-group[b-ju2vzzu307] {
    border-bottom: 1px solid var(--border);
}

.file-row[b-ju2vzzu307] {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 11px 16px;
    cursor: pointer;
}

.select-check[b-ju2vzzu307] {
    flex: none;
    cursor: pointer;
}

.file-icon[b-ju2vzzu307] {
    flex: none;
    color: var(--text-3);
    display: flex;
}

.file-meta[b-ju2vzzu307] {
    flex: 1;
    min-width: 0;
}

.file-title[b-ju2vzzu307] {
    font-family: var(--font-sans);
    font-size: 12.5px;
    color: var(--text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.file-sub[b-ju2vzzu307] {
    font-size: 10.5px;
    color: var(--text-3);
    margin-top: 2px;
}

.version-btn[b-ju2vzzu307] {
    flex: none;
    border: 1px solid var(--border-2);
    background: var(--card-2);
    color: var(--brand-2);
    border-radius: 5px;
    padding: 1px 7px;
    font-size: 10px;
    font-family: var(--font-sans);
    cursor: pointer;
}

.version-row[b-ju2vzzu307] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 16px 7px 43px;
    cursor: pointer;
}

.version-tag[b-ju2vzzu307] {
    font-size: 10px;
    font-family: var(--font-sans);
    color: var(--text-3);
    flex: none;
}

.version-date[b-ju2vzzu307] {
    flex: 1;
    font-size: 11px;
    color: var(--text-3);
}

.version-size[b-ju2vzzu307] {
    font-size: 10px;
    color: var(--text-3);
}

.viewer[b-ju2vzzu307] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    min-height: 0;
    background: var(--bg);
}

.viewer-empty[b-ju2vzzu307] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--text-3);
    font-size: 12.5px;
}

.icon-placeholder[b-ju2vzzu307] {
    color: var(--border-2);
    display: flex;
}

.viewer-head[b-ju2vzzu307] {
    padding: 11px 18px;
    border-bottom: 1px solid var(--border);
    display: flex;
    align-items: center;
    gap: 10px;
}

.viewer-title[b-ju2vzzu307] {
    font-family: var(--font-sans);
    font-size: 13px;
    font-weight: 600;
    flex: 1;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.viewer-ct[b-ju2vzzu307] {
    font-size: 10.5px;
    color: var(--text-3);
    font-family: var(--font-sans);
}

.viewer-open-btn[b-ju2vzzu307] {
    padding: 4px 11px;
    font-size: 11.5px;
    text-decoration: none;
}

.viewer-btn-danger[b-ju2vzzu307] {
    padding: 4px 11px;
    font-size: 11.5px;
    color: var(--bad);
}

.viewer-btn[b-ju2vzzu307] {
    padding: 4px 11px;
    font-size: 11.5px;
}

.viewer-error[b-ju2vzzu307] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: var(--text-3);
    font-size: 12.5px;
    padding: 0 40px;
    text-align: center;
}

.icon-warn[b-ju2vzzu307] {
    color: var(--warn);
    display: flex;
}

.json-view[b-ju2vzzu307] {
    flex: 1;
    overflow: auto;
    padding: 14px 18px;
    font-family: var(--font-sans);
    font-size: 12px;
    line-height: 1.65;
}

.raw-note[b-ju2vzzu307] {
    color: var(--text-3);
    margin-bottom: 8px;
}

.raw-pre[b-ju2vzzu307] {
    margin: 0;
    white-space: pre-wrap;
    word-break: break-word;
    color: var(--text-2);
}

.csv-view[b-ju2vzzu307] {
    flex: 1;
    overflow: auto;
    padding: 14px 18px;
}

.csv-error[b-ju2vzzu307] {
    color: var(--text-3);
    font-size: 12px;
}

.csv-table[b-ju2vzzu307] {
    border-collapse: collapse;
    font-size: 12px;
    font-family: var(--font-sans);
}

.csv-th[b-ju2vzzu307] {
    text-align: left;
    padding: 6px 12px;
    border-bottom: 2px solid var(--border-2);
    color: var(--text-3);
    font-size: 10.5px;
    letter-spacing: .06em;
    text-transform: uppercase;
    position: sticky;
    top: 0;
    background: var(--bg);
}

.csv-td[b-ju2vzzu307] {
    padding: 5px 12px;
    border-bottom: 1px solid var(--border);
    color: var(--text-2);
    max-width: 340px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.truncated-note[b-ju2vzzu307] {
    font-size: 11px;
    color: var(--text-3);
    margin-top: 8px;
}

.preview-frame[b-ju2vzzu307] {
    flex: 1;
    border: none;
    background: #fff;
}

.viewer-none[b-ju2vzzu307] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: var(--text-3);
    font-size: 12.5px;
}

.viewer-back[b-ju2vzzu307] {
    display: none;
    align-items: center;
    gap: 6px;
    border: none;
    background: transparent;
    color: var(--text-2);
    font-size: 12px;
    cursor: pointer;
    padding: 4px 8px;
    margin-left: -8px;
}

.viewer-back:hover[b-ju2vzzu307] {
    color: var(--text);
}

@media (max-width: 950px) {
    .page[b-ju2vzzu307] {
        flex-direction: column;
    }

    .file-panel[b-ju2vzzu307] {
        width: 100%;
        border-right: none;
        border-bottom: none;
        max-height: 100%;
    }

    .viewer[b-ju2vzzu307] {
        position: fixed;
        inset: 0;
        z-index: 30;
        transform: translateX(100%);
        transition: transform .22s cubic-bezier(.4, 0, .2, 1);
    }

    .viewer.active[b-ju2vzzu307] {
        transform: translateX(0);
    }

    .viewer-head[b-ju2vzzu307] {
        padding: 10px 14px;
        gap: 8px;
    }

    .viewer-back[b-ju2vzzu307] {
        display: inline-flex;
    }

    .viewer-title[b-ju2vzzu307] {
        font-size: 12px;
    }

    .viewer-ct[b-ju2vzzu307] {
        display: none;
    }

    .viewer-open-btn[b-ju2vzzu307],
    .viewer-btn[b-ju2vzzu307],
    .viewer-btn-danger[b-ju2vzzu307] {
        padding: 4px 9px;
        font-size: 11px;
    }

    .file-row[b-ju2vzzu307] {
        padding: 10px 14px;
        gap: 9px;
    }

    .version-row[b-ju2vzzu307] {
        padding: 7px 14px 7px 40px;
    }

    .pager-row[b-ju2vzzu307] {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        padding: 10px 14px;
    }

    .csv-td[b-ju2vzzu307] {
        max-width: 180px;
    }
}
/* /Components/Pages/BackupSettings.razor.rz.scp.css */
.page[b-obiwxawisn] { padding:24px; max-width:760px; margin:0 auto; }
.title[b-obiwxawisn] { font-size:18px; font-weight:600; margin:0 0 4px; }
.intro[b-obiwxawisn] { font-size:12px; color:var(--text-3); margin-bottom:18px; }
.card-export[b-obiwxawisn] { padding:18px; display:flex; flex-direction:column; gap:10px; margin-bottom:16px; }
.card-import[b-obiwxawisn] { padding:18px; display:flex; flex-direction:column; gap:12px; }
.card-title[b-obiwxawisn] { font-size:13px; font-weight:600; }
.card-desc[b-obiwxawisn] { font-size:12px; color:var(--text-2); }
.link-btn[b-obiwxawisn] { text-decoration:none; display:inline-block; }
.file-field[b-obiwxawisn] { max-width:420px; }
.confirm-row[b-obiwxawisn] { display:flex; gap:10px; align-items:center; }
.message[b-obiwxawisn] { font-size:12px; color:var(--text-3); white-space:pre-line; }
.warnings[b-obiwxawisn] { margin-top:6px; color:var(--warn); }
/* /Components/Pages/BrandingSettings.razor.rz.scp.css */
.page[b-jmrr04c53r] { padding:24px; max-width:760px; margin:0 auto; }
.title[b-jmrr04c53r] { font-size:18px; font-weight:600; margin:0 0 4px; }
.intro[b-jmrr04c53r] { font-size:12px; color:var(--text-3); margin-bottom:18px; }
.card[b-jmrr04c53r] { padding:18px; display:flex; flex-direction:column; gap:14px; }
.row[b-jmrr04c53r] { display:flex; gap:12px; }
.grow[b-jmrr04c53r] { flex:1; }
.code-gap[b-jmrr04c53r] { margin-left:4px; }
.logo-row[b-jmrr04c53r] { display:flex; align-items:center; gap:10px; }
.logo-preview[b-jmrr04c53r] { height:34px; border-radius:6px; background:var(--card-2); padding:4px; }
.btn-sm[b-jmrr04c53r] { padding:3px 10px; font-size:11px; }
.color-row[b-jmrr04c53r] { display:flex; gap:12px; flex-wrap:wrap; }
.color-input[b-jmrr04c53r] { height:36px; padding:3px; }
.actions[b-jmrr04c53r] { display:flex; gap:10px; align-items:center; }
.msg[b-jmrr04c53r] { font-size:12px; color:var(--text-3); }
/* /Components/Pages/Chat.razor.rz.scp.css */
.page[b-1qzq3skpqj] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    overflow: hidden;
    /* Legacy variable aliases — this file predates the current theme tokens
       (App.razor defines --bg/--card/--card-2/--text-2/--brand/--good/--bad).
       Aliasing keeps the existing rules working instead of silently falling back. */
    --primary: var(--brand);
    --bg-1: var(--bg);
    --bg-2: var(--card);
    --bg-3: var(--card-2);
    --muted: var(--text-2);
    --mono: var(--font-mono);
    --success: var(--good);
    --error: var(--bad);
}

.page-head[b-1qzq3skpqj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 20px;
    border-bottom: 1px solid var(--border);
    flex-shrink: 0;
    background: var(--bg-1);
}

.page-title[b-1qzq3skpqj] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
}

.page-sub[b-1qzq3skpqj] {
    font-size: 0.75rem;
    color: var(--muted);
    margin-top: 2px;
}

.chat-controls[b-1qzq3skpqj] {
    display: flex;
    gap: 8px;
    align-items: center;
}

.chat-controls .dcbtn.sm[b-1qzq3skpqj] {
    font-size: 0.75rem;
    padding: 4px 10px;
}

/* Main layout: chat + side panel */
.chat-layout[b-1qzq3skpqj] {
    flex: 1;
    display: flex;
    overflow: hidden;
    min-height: 0;
}

/* Chat area */
.chat-area[b-1qzq3skpqj] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
}

.chat-messages[b-1qzq3skpqj] {
    flex: 1;
    overflow-y: auto;
    padding: 16px 20px;
    min-height: 0;
}

.chat-empty[b-1qzq3skpqj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    text-align: center;
    color: var(--muted);
}

.chat-empty p[b-1qzq3skpqj] {
    margin: 4px 0;
}

.chat-empty .hint[b-1qzq3skpqj] {
    font-size: 0.8rem;
    font-style: italic;
    opacity: 0.7;
}













/* Expandable tool calls */
.tool-calls-expandable[b-1qzq3skpqj] {
    margin: 6px 0;
    border: 1px solid var(--border);
    border-radius: 6px;
    overflow: hidden;
}

.tool-calls-summary[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    font-size: 0.75rem;
    font-family: var(--mono);
    color: var(--muted);
    cursor: pointer;
    background: var(--bg-3);
    user-select: none;
    list-style: none;
}

.tool-calls-summary[b-1qzq3skpqj]::-webkit-details-marker {
    display: none;
}

.tool-calls-summary svg[b-1qzq3skpqj] {
    transition: transform 0.15s;
    flex-shrink: 0;
}

.tool-calls-expandable[open] > .tool-calls-summary svg[b-1qzq3skpqj] {
    transform: rotate(90deg);
}

.tool-calls-summary:hover[b-1qzq3skpqj] {
    background: var(--border);
}

/* Side panel artifact gallery */
.artifact-item[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 6px 8px;
    border-radius: 6px;
    font-size: 0.78rem;
    color: var(--text);
    text-decoration: none;
    border: 1px solid transparent;
}

.artifact-item:hover[b-1qzq3skpqj] {
    background: var(--bg-3);
    border-color: var(--border);
}

.artifact-item svg[b-1qzq3skpqj] {
    flex-shrink: 0;
    color: var(--muted);
}

.artifact-item .artifact-title[b-1qzq3skpqj] {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.artifact-item .artifact-kind[b-1qzq3skpqj] {
    flex-shrink: 0;
    font-size: 0.65rem;
    font-family: var(--mono);
    color: var(--muted);
}

/* Collapsible thinking view */
.thinking-expandable[b-1qzq3skpqj] {
    margin: 6px 0;
    border: 1px dashed var(--border);
    border-radius: 6px;
    overflow: hidden;
}

.thinking-summary[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    font-size: 0.75rem;
    font-family: var(--mono);
    font-style: italic;
    color: var(--muted);
    cursor: pointer;
    user-select: none;
    list-style: none;
}

.thinking-summary[b-1qzq3skpqj]::-webkit-details-marker {
    display: none;
}

.thinking-summary svg[b-1qzq3skpqj] {
    transition: transform 0.15s;
    flex-shrink: 0;
}

.thinking-expandable[open] > .thinking-summary svg[b-1qzq3skpqj] {
    transform: rotate(90deg);
}

.thinking-summary:hover[b-1qzq3skpqj] {
    background: var(--bg-3);
}

.thinking-content[b-1qzq3skpqj] {
    padding: 8px 10px;
    font-size: 0.8rem;
    color: var(--muted);
    font-style: italic;
    white-space: pre-wrap;
    word-break: break-word;
    border-top: 1px dashed var(--border);
    max-height: 320px;
    overflow-y: auto;
}

.tc-badge[b-1qzq3skpqj] {
    font-size: 0.6rem;
    padding: 1px 5px;
    border-radius: 4px;
    font-weight: 600;
    margin-left: 4px;
}

.tc-ok[b-1qzq3skpqj] {
    background: rgba(34, 197, 94, 0.12);
    color: var(--success);
}

.tc-err[b-1qzq3skpqj] {
    background: rgba(239, 68, 68, 0.12);
    color: var(--error);
}

.tool-error-text[b-1qzq3skpqj] {
    font-size: 0.65rem;
    color: var(--error);
    margin-left: auto;
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Tool calls in messages */
.tool-calls[b-1qzq3skpqj] {
    margin: 6px 0;
}

.tool-call[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 5px 8px;
    margin-bottom: 3px;
    border-radius: 5px;
    font-size: 0.75rem;
    font-family: var(--mono);
    border: 1px solid var(--border);
    background: var(--bg-2);
}

.tool-call.running[b-1qzq3skpqj] {
    border-color: var(--primary);
    animation: pulse-b-1qzq3skpqj 1.5s ease-in-out infinite;
}

.tool-call.completed[b-1qzq3skpqj] {
    border-color: var(--success);
}

.tool-call.error[b-1qzq3skpqj] {
    border-color: var(--error);
}

.tool-name[b-1qzq3skpqj] {
    font-weight: 600;
    color: var(--primary);
}

.tool-status[b-1qzq3skpqj] {
    color: var(--muted);
    font-size: 0.7rem;
}

.tool-result[b-1qzq3skpqj] {
    margin-top: 4px;
    font-size: 0.75rem;
}

.tool-result summary[b-1qzq3skpqj] {
    cursor: pointer;
    color: var(--muted);
    font-size: 0.7rem;
}

.tool-output[b-1qzq3skpqj] {
    background: var(--bg-3);
    padding: 8px;
    border-radius: 4px;
    font-size: 0.7rem;
    max-height: 150px;
    overflow: auto;
    white-space: pre-wrap;
}

/* Formatted tool results */
.tool-output-formatted[b-1qzq3skpqj] {
    font-size: 0.75rem;
    max-height: 250px;
    overflow: auto;
    padding: 4px 0;
}

/* Chat chart rendering */
.chat-chart-wrap[b-1qzq3skpqj] {
    height: 220px;
    padding: 8px 4px 4px;
    margin: 4px 0;
}

.chat-chart-wrap canvas[b-1qzq3skpqj] {
    width: 100% !important;
    height: 100% !important;
}

.tool-table[b-1qzq3skpqj] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.75rem;
    font-family: var(--font-sans);
    border: 1px solid var(--border);
    border-radius: 8px;
    overflow: hidden;
    background: var(--bg-2);
}

.tool-table th[b-1qzq3skpqj] {
    text-align: left;
    padding: 7px 10px;
    border-bottom: 1px solid var(--border);
    background: var(--bg-3);
    color: var(--muted);
    font-weight: 600;
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    white-space: nowrap;
    position: sticky;
    top: 0;
}

.tool-table td[b-1qzq3skpqj] {
    padding: 6px 10px;
    border-bottom: 1px solid var(--border);
    white-space: nowrap;
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--text-2);
}

.tool-table tbody tr:last-child td[b-1qzq3skpqj] {
    border-bottom: none;
}

.tool-table tbody tr:nth-child(even) td[b-1qzq3skpqj] {
    background: rgba(255,255,255,0.02);
}

.tool-table tr:hover td[b-1qzq3skpqj] {
    background: var(--bg-3);
}

.tool-list[b-1qzq3skpqj] {
    margin: 0;
    padding: 0 0 0 16px;
    list-style: none;
}

.tool-list li[b-1qzq3skpqj] {
    padding: 2px 0;
    position: relative;
}

.tool-list li[b-1qzq3skpqj]::before {
    content: "·";
    position: absolute;
    left: -12px;
    color: var(--primary);
    font-weight: bold;
}

.tool-meta[b-1qzq3skpqj] {
    color: var(--muted);
    font-size: 0.65rem;
}

.tool-result-header[b-1qzq3skpqj] {
    font-weight: 600;
    margin-bottom: 6px;
    color: var(--text);
    font-size: 0.75rem;
}

.tool-plain[b-1qzq3skpqj] {
    font-family: var(--mono);
    font-size: 0.7rem;
    white-space: pre-wrap;
    color: var(--text);
}

/* Typing indicator dots */
.typing-dots[b-1qzq3skpqj] {
    display: inline-flex;
    gap: 4px;
    padding: 8px 12px;
    background: var(--bg-2);
    border: 1px solid var(--border);
    border-radius: 8px;
}

.typing-dots span[b-1qzq3skpqj] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--muted);
    animation: typing-bounce-b-1qzq3skpqj 1.4s infinite ease-in-out both;
}

.typing-dots span:nth-child(1)[b-1qzq3skpqj] { animation-delay: -0.32s; }
.typing-dots span:nth-child(2)[b-1qzq3skpqj] { animation-delay: -0.16s; }
.typing-dots span:nth-child(3)[b-1qzq3skpqj] { animation-delay: 0s; }

@keyframes typing-bounce-b-1qzq3skpqj {
    0%, 80%, 100% { transform: scale(0.6); opacity: 0.5; }
    40% { transform: scale(1); opacity: 1; }
}

/* Chat input */
.chat-input-bar[b-1qzq3skpqj] {
    display: flex;
    gap: 8px;
    padding: 12px 20px;
    border-top: 1px solid var(--border);
    background: var(--bg-1);
    flex-shrink: 0;
}

.chat-input[b-1qzq3skpqj] {
    flex: 1;
    font-size: 0.85rem;
}

/* Side panel */
.side-panel[b-1qzq3skpqj] {
    width: 300px;
    background: var(--bg-2);
    border-left: 1px solid var(--border);
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
}

.side-panel-head[b-1qzq3skpqj] {
    padding: 10px 14px;
    border-bottom: 1px solid var(--border);
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
}

.side-panel-head h3[b-1qzq3skpqj] {
    margin: 0;
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.graph-badge[b-1qzq3skpqj] {
    font-size: 0.65rem;
    color: var(--muted);
    background: var(--bg-3);
    padding: 2px 6px;
    border-radius: 8px;
}

.side-section[b-1qzq3skpqj] {
    padding: 10px 14px;
    border-bottom: 1px solid var(--border);
}

.side-section h4[b-1qzq3skpqj] {
    margin: 0 0 6px;
    font-size: 0.7rem;
    text-transform: uppercase;
    color: var(--muted);
    letter-spacing: 0.5px;
}

/* Active actions */
.action-item[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 5px 8px;
    margin-bottom: 3px;
    border-radius: 5px;
    font-size: 0.75rem;
    background: var(--bg-3);
}

.action-item.running[b-1qzq3skpqj] {
    border-left: 3px solid var(--primary);
}

.action-item.completed[b-1qzq3skpqj] {
    border-left: 3px solid var(--success);
}

.action-item.error[b-1qzq3skpqj] {
    border-left: 3px solid var(--error);
}

.action-icon[b-1qzq3skpqj] {
    font-size: 0.85rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

.action-icon .icon-spinner[b-1qzq3skpqj] {
    color: var(--primary);
    animation: spin-b-1qzq3skpqj 0.8s linear infinite;
}

.action-icon .icon-check[b-1qzq3skpqj] {
    color: var(--success);
}

.action-icon .icon-warn[b-1qzq3skpqj] {
    color: var(--error);
}

.action-icon .icon-pause[b-1qzq3skpqj] {
    color: var(--muted);
}

@keyframes spin-b-1qzq3skpqj {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.action-name[b-1qzq3skpqj] {
    font-weight: 600;
    font-family: var(--mono);
    font-size: 0.7rem;
}

.action-detail[b-1qzq3skpqj] {
    margin-left: auto;
    color: var(--muted);
    font-size: 0.65rem;
}

/* Fetched data */
.data-item[b-1qzq3skpqj] {
    margin-bottom: 4px;
    font-size: 0.75rem;
}

.data-item summary[b-1qzq3skpqj] {
    cursor: pointer;
    color: var(--text);
    font-size: 0.75rem;
    font-weight: 500;
}

.data-preview[b-1qzq3skpqj] {
    background: var(--bg-3);
    padding: 6px;
    border-radius: 4px;
    font-size: 0.65rem;
    font-family: var(--mono);
    max-height: 100px;
    overflow: auto;
    white-space: pre-wrap;
    margin-top: 3px;
}

/* Graph nodes */
.graph-nodes[b-1qzq3skpqj] {
    display: flex;
    flex-wrap: wrap;
    gap: 3px;
}

.graph-node-tag[b-1qzq3skpqj] {
    font-size: 0.65rem;
    padding: 2px 6px;
    background: var(--bg-3);
    border: 1px solid var(--border);
    border-radius: 3px;
    color: var(--text);
    font-family: var(--mono);
}

/* Tool history */
.tool-history-item[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 3px 0;
    font-size: 0.7rem;
    border-bottom: 1px solid var(--border);
}

.tool-history-item:last-child[b-1qzq3skpqj] {
    border-bottom: none;
}

.th-time[b-1qzq3skpqj] {
    color: var(--muted);
    font-family: var(--mono);
    font-size: 0.65rem;
}

.th-tool[b-1qzq3skpqj] {
    font-weight: 500;
    font-family: var(--mono);
}

.th-status[b-1qzq3skpqj] {
    margin-left: auto;
    color: var(--muted);
    font-size: 0.65rem;
}

.tool-history-item.ok .th-status[b-1qzq3skpqj] {
    color: var(--success);
}

.tool-history-item.err .th-status[b-1qzq3skpqj] {
    color: var(--error);
}

@keyframes pulse-b-1qzq3skpqj {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}

/* Session list */
.session-header[b-1qzq3skpqj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 6px;
}

.session-header h4[b-1qzq3skpqj] {
    margin: 0;
}

.dcbtn.xs[b-1qzq3skpqj] {
    font-size: 0.65rem;
    padding: 2px 6px;
}

.session-item[b-1qzq3skpqj] {
    position: relative;
    padding: 6px 28px 6px 8px;
    margin-bottom: 2px;
    border-radius: 5px;
    cursor: pointer;
    background: var(--bg-3);
    transition: background 0.15s;
}

.session-header-actions[b-1qzq3skpqj] {
    display: flex;
    gap: 4px;
}

.session-delete[b-1qzq3skpqj] {
    position: absolute;
    top: 4px;
    right: 4px;
    border: none;
    background: transparent;
    color: var(--muted);
    cursor: pointer;
    font-size: 0.85rem;
    line-height: 1;
    padding: 2px 5px;
    border-radius: 4px;
    opacity: 0;
    transition: opacity 0.15s, background 0.15s, color 0.15s;
}

.session-item:hover .session-delete[b-1qzq3skpqj],
.session-item.active .session-delete[b-1qzq3skpqj] {
    opacity: 1;
}

.session-delete:hover[b-1qzq3skpqj] {
    background: var(--error);
    color: #fff;
}

.session-item:hover[b-1qzq3skpqj] {
    background: var(--border);
}

.session-item.active[b-1qzq3skpqj] {
    background: var(--primary);
    color: white;
}

.session-item.active .session-meta[b-1qzq3skpqj] {
    color: rgba(255,255,255,0.7);
}

.session-title[b-1qzq3skpqj] {
    display: block;
    font-size: 0.75rem;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.session-meta[b-1qzq3skpqj] {
    display: block;
    font-size: 0.6rem;
    color: var(--muted);
    margin-top: 2px;
}

/* Settings modal - uses dcmodal base classes from App.razor */
.settings-modal[b-1qzq3skpqj] {
    width: 720px;
    max-width: 94vw;
    max-height: 90vh;
}

.settings-body[b-1qzq3skpqj] {
    padding: 0 !important;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.settings-tabs[b-1qzq3skpqj] {
    display: flex;
    gap: 2px;
    padding: 0 18px;
    border-bottom: 1px solid var(--border);
    background: var(--card);
}

.tab-btn[b-1qzq3skpqj] {
    background: none;
    border: none;
    padding: 10px 14px;
    font-size: 13px;
    font-weight: 500;
    color: var(--text-3);
    cursor: pointer;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    transition: color 0.15s, border-color 0.15s;
}

.tab-btn:hover[b-1qzq3skpqj] {
    color: var(--text-2);
}

.tab-btn.active[b-1qzq3skpqj] {
    color: var(--text);
    border-bottom-color: var(--brand);
}

/* Tab content area */
.settings-body > .dcfield[b-1qzq3skpqj],
.settings-body > .settings-row[b-1qzq3skpqj],
.settings-body > .rag-settings[b-1qzq3skpqj],
.settings-body > .mcp-section[b-1qzq3skpqj] {
    padding: 16px 18px;
}

.dcfield textarea.textarea[b-1qzq3skpqj] {
    width: 100%;
    font-family: var(--font-mono);
    font-size: 12.5px;
    line-height: 1.55;
    resize: vertical;
    min-height: 100px;
}

.system-prompt-field textarea.prompt-textarea[b-1qzq3skpqj] {
    min-height: 240px;
    height: 50vh;
    max-height: 60vh;
}

.field-hint[b-1qzq3skpqj] {
    font-size: 11px;
    color: var(--muted);
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
}

.settings-row[b-1qzq3skpqj] {
    display: flex;
    gap: 16px;
}

.settings-row .dcfield[b-1qzq3skpqj] {
    flex: 1;
}

.slider-row[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.dcslider[b-1qzq3skpqj] {
    flex: 1;
    height: 4px;
    -webkit-appearance: none;
    appearance: none;
    background: var(--card-2);
    border-radius: 2px;
    outline: none;
}

.dcslider[b-1qzq3skpqj]::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: var(--brand);
    cursor: pointer;
    border: 2px solid var(--panel);
    box-shadow: 0 1px 3px rgba(0,0,0,0.3);
}

.dcslider[b-1qzq3skpqj]::-moz-range-thumb {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: var(--brand);
    cursor: pointer;
    border: 2px solid var(--panel);
    box-shadow: 0 1px 3px rgba(0,0,0,0.3);
}

.slider-val[b-1qzq3skpqj] {
    font-size: 12px;
    font-weight: 600;
    color: var(--text-2);
    font-family: var(--font-mono);
    min-width: 32px;
    text-align: right;
}

/* Message avatars */
.chat-msg[b-1qzq3skpqj] {
    display: flex;
    gap: 10px;
    margin-bottom: 16px;
    max-width: 85%;
}

.chat-msg.user[b-1qzq3skpqj] {
    margin-left: auto;
    flex-direction: row-reverse;
}

.msg-avatar[b-1qzq3skpqj] {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.msg-avatar svg[b-1qzq3skpqj] {
    width: 18px;
    height: 18px;
}

.avatar-user[b-1qzq3skpqj] {
    background: var(--primary);
    color: white;
}

.avatar-bot[b-1qzq3skpqj] {
    background: var(--bg-3);
    border: 1px solid var(--border);
    color: var(--muted);
}

.msg-body[b-1qzq3skpqj] {
    flex: 1;
    min-width: 0;
}

.msg-role-row[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 3px;
}

.chat-msg .msg-role[b-1qzq3skpqj] {
    font-size: 0.65rem;
    text-transform: uppercase;
    color: var(--muted);
    letter-spacing: 0.5px;
}

.msg-copy-btn[b-1qzq3skpqj] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px;
    border: none;
    background: transparent;
    color: var(--muted);
    cursor: pointer;
    border-radius: 4px;
    opacity: 0;
    transition: opacity 0.15s, background 0.15s, color 0.15s;
}

.chat-msg:hover .msg-copy-btn[b-1qzq3skpqj] {
    opacity: 1;
}

.msg-copy-btn:hover[b-1qzq3skpqj] {
    color: var(--text);
    background: var(--bg-3);
}

@media (max-width: 950px) {
    .msg-copy-btn[b-1qzq3skpqj] {
        opacity: 1;
        padding: 6px;
    }
}

.chat-msg .msg-content[b-1qzq3skpqj] {
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 0.85rem;
    line-height: 1.5;
}

.chat-msg.user .msg-content[b-1qzq3skpqj] {
    background: var(--primary);
    color: white;
}

.chat-msg.assistant .msg-content[b-1qzq3skpqj] {
    background: var(--bg-2);
    border: 1px solid var(--border);
}

/* Settings tabs */
.settings-tabs[b-1qzq3skpqj] {
    display: flex;
    gap: 4px;
    margin-bottom: 14px;
    border-bottom: 1px solid var(--border);
    padding-bottom: 8px;
}

.tab-btn[b-1qzq3skpqj] {
    background: none;
    border: none;
    padding: 6px 12px;
    font-size: 0.8rem;
    color: var(--muted);
    cursor: pointer;
    border-radius: 4px;
}

.tab-btn:hover[b-1qzq3skpqj] {
    background: var(--bg-3);
}

.tab-btn.active[b-1qzq3skpqj] {
    background: var(--primary);
    color: white;
}

/* MCP connections */
.mcp-section[b-1qzq3skpqj] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.mcp-empty[b-1qzq3skpqj] {
    text-align: center;
    padding: 24px 16px;
    color: var(--text-3);
}

.mcp-empty p[b-1qzq3skpqj] {
    margin: 0 0 4px 0;
    font-size: 13px;
    color: var(--text-2);
    font-weight: 500;
}

.mcp-empty span[b-1qzq3skpqj] {
    font-size: 12px;
}

.mcp-list[b-1qzq3skpqj] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.mcp-item[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 12px;
    background: var(--card-2);
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 13px;
    transition: border-color 0.15s;
}

.mcp-item:hover[b-1qzq3skpqj] {
    border-color: var(--border-2);
}

.mcp-item.disabled[b-1qzq3skpqj] {
    opacity: 0.5;
}

.mcp-info[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.mcp-name[b-1qzq3skpqj] {
    font-weight: 500;
    color: var(--text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.mcp-badge[b-1qzq3skpqj] {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.4px;
    text-transform: uppercase;
    color: var(--brand-2);
    background: var(--brand-bg);
    padding: 2px 6px;
    border-radius: 4px;
    font-family: var(--font-mono);
    flex-shrink: 0;
}

.mcp-status[b-1qzq3skpqj] {
    font-size: 11px;
    font-family: var(--font-mono);
    color: var(--text-3);
}

.mcp-status.ok[b-1qzq3skpqj] {
    color: var(--good);
}

.mcp-status.err[b-1qzq3skpqj] {
    color: var(--bad);
}

.mcp-actions[b-1qzq3skpqj] {
    display: flex;
    gap: 4px;
    flex-shrink: 0;
}

.dcbtn.xs[b-1qzq3skpqj] {
    padding: 4px 8px;
    font-size: 11px;
}

.dcbtn.xs.danger[b-1qzq3skpqj] {
    color: var(--bad);
}

.add-mcp-btn[b-1qzq3skpqj] {
    align-self: flex-start;
}

.mcp-form[b-1qzq3skpqj] {
    padding: 14px;
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.mcp-form-title[b-1qzq3skpqj] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: var(--text-3);
}

.mcp-form .dcfield[b-1qzq3skpqj] {
    gap: 4px;
}

.mcp-form-actions[b-1qzq3skpqj] {
    display: flex;
    gap: 6px;
    justify-content: flex-end;
    margin-top: 4px;
}

/* RAG settings */
.rag-settings[b-1qzq3skpqj] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.rag-toggle[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.toggle-switch[b-1qzq3skpqj] {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 22px;
    flex-shrink: 0;
}

.toggle-switch input[b-1qzq3skpqj] {
    opacity: 0;
    width: 0;
    height: 0;
}

.toggle-slider[b-1qzq3skpqj] {
    position: absolute;
    cursor: pointer;
    top: 0; left: 0; right: 0; bottom: 0;
    background: var(--card-2);
    border: 1px solid var(--border);
    border-radius: 22px;
    transition: 0.2s;
}

.toggle-slider[b-1qzq3skpqj]:before {
    position: absolute;
    content: "";
    height: 16px;
    width: 16px;
    left: 2px;
    bottom: 2px;
    background: var(--text-3);
    border-radius: 50%;
    transition: 0.2s;
}

.toggle-switch input:checked + .toggle-slider[b-1qzq3skpqj] {
    background: var(--brand);
    border-color: var(--brand);
}

.toggle-switch input:checked + .toggle-slider[b-1qzq3skpqj]:before {
    transform: translateX(18px);
    background: var(--brand-fg, #fff);
}

.toggle-label[b-1qzq3skpqj] {
    font-size: 13px;
    font-weight: 500;
    color: var(--text);
}

.rag-desc[b-1qzq3skpqj] {
    font-size: 12px;
    color: var(--text-3);
    margin: 0;
    line-height: 1.5;
}

/* Quick action buttons */
.quick-actions[b-1qzq3skpqj] {
    display: flex;
    gap: 4px;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--border);
    flex-wrap: wrap;
}

.qa-btn[b-1qzq3skpqj] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    font-size: 11px;
    font-weight: 500;
    color: var(--text-3);
    background: transparent;
    border: 1px solid var(--border);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.15s;
}

.qa-btn:hover[b-1qzq3skpqj] {
    color: var(--text);
    border-color: var(--border-2);
    background: var(--card-2);
}

.qa-btn svg[b-1qzq3skpqj] {
    flex-shrink: 0;
}

/* MCP auth section */
.mcp-auth-section[b-1qzq3skpqj] {
    margin-top: 8px;
    border-top: 1px solid var(--border);
    padding-top: 10px;
}

.mcp-auth-header[b-1qzq3skpqj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 4px 0;
    cursor: pointer;
    font-size: 12px;
    font-weight: 500;
    color: var(--text-2);
}

.mcp-auth-header:hover[b-1qzq3skpqj] {
    color: var(--text);
}

.mcp-auth-chevron[b-1qzq3skpqj] {
    font-size: 10px;
    color: var(--text-3);
}

/* ── Skeleton loaders ─────────────────────────────────────────────── */
@keyframes shimmer-b-1qzq3skpqj {
    0% { background-position: -400px 0; }
    100% { background-position: 400px 0; }
}

.skeleton[b-1qzq3skpqj] {
    background: linear-gradient(90deg, var(--bg-3) 25%, var(--border) 37%, var(--bg-3) 63%);
    background-size: 800px 100%;
    animation: shimmer-b-1qzq3skpqj 1.5s ease-in-out infinite;
    border-radius: 4px;
}

.skeleton-line[b-1qzq3skpqj] {
    height: 12px;
    margin-bottom: 8px;
    width: 100%;
}

.skeleton-line.w60[b-1qzq3skpqj] { width: 60%; }
.skeleton-line.w40[b-1qzq3skpqj] { width: 40%; }
.skeleton-line.w80[b-1qzq3skpqj] { width: 80%; }

.skeleton-circle[b-1qzq3skpqj] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
}

.skeleton-chart[b-1qzq3skpqj] {
    height: 140px;
    width: 100%;
    border-radius: 6px;
}

.skeleton-bar-group[b-1qzq3skpqj] {
    display: flex;
    align-items: flex-end;
    gap: 6px;
    height: 120px;
    padding: 0 8px;
}

.skeleton-bar[b-1qzq3skpqj] {
    flex: 1;
    border-radius: 3px 3px 0 0;
    animation: shimmer-b-1qzq3skpqj 1.5s ease-in-out infinite;
    background: linear-gradient(90deg, var(--bg-3) 25%, var(--border) 37%, var(--bg-3) 63%);
    background-size: 800px 100%;
}

/* ── Clarification panel (HITL) ───────────────────────────────────── */
.clarification-panel[b-1qzq3skpqj] {
    margin: 8px 0;
    padding: 14px;
    border: 1px solid var(--primary);
    border-radius: 8px;
    background: var(--bg-2);
}

.clarification-title[b-1qzq3skpqj] {
    font-size: 0.8rem;
    font-weight: 600;
    margin-bottom: 10px;
    color: var(--text);
}

.clarification-options[b-1qzq3skpqj] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-bottom: 12px;
}

.clarification-option[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border: 1px solid var(--border);
    border-radius: 6px;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
    font-size: 0.8rem;
}

.clarification-option:hover[b-1qzq3skpqj] {
    border-color: var(--primary);
    background: var(--bg-3);
}

.clarification-option.selected[b-1qzq3skpqj] {
    border-color: var(--primary);
    background: var(--primary-bg, rgba(99, 102, 241, 0.08));
}

.clarification-option input[type="checkbox"][b-1qzq3skpqj] {
    accent-color: var(--primary);
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

.clarification-option-label[b-1qzq3skpqj] {
    font-weight: 500;
    color: var(--text);
}

.clarification-option-desc[b-1qzq3skpqj] {
    font-size: 0.7rem;
    color: var(--muted);
    margin-left: auto;
}

.clarification-actions[b-1qzq3skpqj] {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

/* ── Retry badge ──────────────────────────────────────────────────── */
.retry-badge[b-1qzq3skpqj] {
    font-size: 0.6rem;
    padding: 1px 5px;
    border-radius: 4px;
    background: var(--warn-bg, rgba(245, 158, 11, 0.12));
    color: var(--warn, #f59e0b);
    font-weight: 600;
    font-family: var(--mono);
}

/* ── Option picker (numbered lists as checkboxes) ─────────────────── */
.option-picker[b-1qzq3skpqj] {
    margin-top: 10px;
    padding: 10px;
    border: 1px solid var(--border);
    border-radius: 6px;
    background: var(--bg-2);
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.option-item[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    border-radius: 4px;
    cursor: pointer;
    transition: background 0.15s;
    font-size: 0.85rem;
}

.option-item:hover[b-1qzq3skpqj] {
    background: var(--bg-3);
}

.option-item input[type="checkbox"][b-1qzq3skpqj] {
    accent-color: var(--primary);
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

.option-item span[b-1qzq3skpqj] {
    flex: 1;
}

.option-picker .dcbtn[b-1qzq3skpqj] {
    align-self: flex-end;
    margin-top: 4px;
}

/* ── File upload (drag-and-drop + attach button) ─────────────────── */
.chat-input-wrap[b-1qzq3skpqj] {
    position: relative;
    border-radius: 8px;
    transition: border-color 0.2s, background 0.2s;
}

.chat-input-wrap.drag-over[b-1qzq3skpqj] {
    border: 2px dashed var(--primary, #2563eb);
    background: rgba(37, 99, 235, 0.05);
}

.chat-attach-btn[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: none;
    background: transparent;
    color: var(--fg-muted);
    cursor: pointer;
    border-radius: 6px;
    flex-shrink: 0;
    transition: color 0.15s, background 0.15s;
}

.chat-attach-btn:hover[b-1qzq3skpqj] {
    color: var(--primary, #2563eb);
    background: var(--bg-3);
}

.hidden-file-input[b-1qzq3skpqj] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
    opacity: 0;
}

.attached-file-chip[b-1qzq3skpqj] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    margin: 4px 0 0 44px;
    border-radius: 12px;
    background: var(--bg-3, #1e2024);
    border: 1px solid var(--border);
    font-size: 0.78rem;
    color: var(--fg);
    max-width: 260px;
}

.attached-file-chip span[b-1qzq3skpqj] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.chip-remove[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border: none;
    background: transparent;
    color: var(--fg-muted);
    cursor: pointer;
    border-radius: 50%;
    font-size: 0.9rem;
    line-height: 1;
    flex-shrink: 0;
}

.chip-remove:hover[b-1qzq3skpqj] {
    color: var(--err, #ef4444);
    background: var(--err-bg, rgba(239, 68, 68, 0.1));
}

/* ── Chat map (Leaflet inline maps) ─────────────────────────────── */
.chat-map-wrap[b-1qzq3skpqj] {
    height: 280px;
    margin: 8px 0;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid var(--border);
}

.chat-map-container[b-1qzq3skpqj] {
    width: 100%;
    height: 100%;
}

/* Fix Leaflet dark mode issues */
.chat-map-container .leaflet-control-zoom a[b-1qzq3skpqj] {
    background: var(--card-2, #151b21);
    color: var(--text-2, #8b98a5);
    border-color: var(--border, #1b2229);
}

.chat-map-container .leaflet-control-zoom a:hover[b-1qzq3skpqj] {
    background: var(--hover, #11161b);
    color: var(--text, #e6edf3);
}

/* ── Inline artifact rendering ─────────────────────────────────────── */
.chat-artifact-wrap[b-1qzq3skpqj] {
    margin: 8px 0;
    border: 1px solid var(--border);
    border-radius: 8px;
    overflow: hidden;
    background: var(--bg-2);
}

.artifact-header[b-1qzq3skpqj] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background: var(--bg-3);
    border-bottom: 1px solid var(--border);
    flex-wrap: wrap;
}

.artifact-title[b-1qzq3skpqj] {
    font-weight: 600;
    font-size: 0.8rem;
    color: var(--text);
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.artifact-ct[b-1qzq3skpqj],
.artifact-size[b-1qzq3skpqj] {
    font-size: 0.65rem;
    color: var(--muted);
    font-family: var(--mono);
}

.artifact-open[b-1qzq3skpqj] {
    font-size: 0.7rem;
    color: var(--brand-2);
    text-decoration: none;
    padding: 2px 8px;
    border: 1px solid var(--border);
    border-radius: 4px;
}

.artifact-open:hover[b-1qzq3skpqj] {
    border-color: var(--brand-2);
}

.artifact-truncated[b-1qzq3skpqj] {
    width: 100%;
    font-size: 0.65rem;
    color: var(--warn);
    padding-top: 4px;
}

.artifact-frame[b-1qzq3skpqj] {
    width: 100%;
    height: 360px;
    border: none;
    display: block;
    background: var(--bg-1);
}

.artifact-image[b-1qzq3skpqj] {
    max-width: 100%;
    height: auto;
    display: block;
    padding: 8px;
}

.artifact-pre[b-1qzq3skpqj] {
    margin: 0;
    padding: 10px 12px;
    font-family: var(--mono);
    font-size: 0.75rem;
    line-height: 1.5;
    white-space: pre-wrap;
    word-break: break-word;
    max-height: 360px;
    overflow: auto;
    color: var(--text-2);
}

.artifact-extracted[b-1qzq3skpqj] {
    margin: 0;
    border-top: 1px solid var(--border);
}

.artifact-extracted summary[b-1qzq3skpqj] {
    padding: 8px 12px;
    font-size: 0.7rem;
    color: var(--muted);
    cursor: pointer;
    user-select: none;
}

.artifact-extracted .artifact-pre[b-1qzq3skpqj] {
    max-height: 300px;
}

.artifact-json[b-1qzq3skpqj] {
    padding: 8px 12px;
    font-size: 0.75rem;
    max-height: 360px;
    overflow: auto;
}

.artifact-table[b-1qzq3skpqj] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.75rem;
    font-family: var(--font-sans);
    border: 1px solid var(--border);
    border-radius: 8px;
    overflow: hidden;
    background: var(--bg-2);
}

.artifact-table th[b-1qzq3skpqj],
.artifact-table td[b-1qzq3skpqj] {
    padding: 6px 10px;
    border-bottom: 1px solid var(--border);
    text-align: left;
    white-space: nowrap;
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.artifact-table th[b-1qzq3skpqj] {
    background: var(--bg-3);
    color: var(--muted);
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.65rem;
    letter-spacing: 0.3px;
    position: sticky;
    top: 0;
}

.artifact-table tbody tr:last-child td[b-1qzq3skpqj] {
    border-bottom: none;
}

.artifact-table tbody tr:nth-child(even) td[b-1qzq3skpqj] {
    background: rgba(255,255,255,0.02);
}

.artifact-table tr:hover td[b-1qzq3skpqj] {
    background: var(--bg-3);
}

.artifact-error[b-1qzq3skpqj],
.artifact-none[b-1qzq3skpqj] {
    padding: 10px 12px;
    font-size: 0.75rem;
    color: var(--muted);
}

/* Attachment chip on sent messages */
.msg-attachment[b-1qzq3skpqj] {
    margin-bottom: 4px;
}

.attachment-chip[b-1qzq3skpqj] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    background: var(--bg-3);
    border: 1px solid var(--border);
    border-radius: 999px;
    font-size: 0.75rem;
    color: var(--text);
    text-decoration: none;
    max-width: 100%;
}

.attachment-chip span[b-1qzq3skpqj] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

a.attachment-chip:hover[b-1qzq3skpqj] {
    border-color: var(--primary);
    color: var(--primary);
}

.attachment-chip .attachment-size[b-1qzq3skpqj] {
    color: var(--muted);
    font-size: 0.65rem;
    flex-shrink: 0;
}

/* Starter quick actions for new sessions */
.starter-actions[b-1qzq3skpqj] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    margin: 16px 0 8px;
    max-width: 520px;
}

.starter-btn[b-1qzq3skpqj] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    background: var(--bg-2);
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--text);
    font-size: 0.8rem;
    cursor: pointer;
    transition: border-color 0.15s, color 0.15s;
}

.starter-btn:hover[b-1qzq3skpqj] {
    border-color: var(--primary);
    color: var(--primary);
}

/* ── Mobile (≤ 950px) ─────────────────────────────────────────────── */
@media (max-width: 950px) {
    .page-head[b-1qzq3skpqj] {
        padding: 10px 12px;
        flex-wrap: wrap;
        gap: 8px;
    }

    .chat-controls[b-1qzq3skpqj] {
        flex-wrap: wrap;
        gap: 6px;
    }

.chat-controls .dcbtn.sm[b-1qzq3skpqj] {
        min-height: 40px;
    }

    .chat-layout[b-1qzq3skpqj] {
        position: relative;
    }

    .chat-messages[b-1qzq3skpqj] {
        padding: 12px;
    }

    .chat-msg[b-1qzq3skpqj] {
        max-width: 95%;
    }

    .chat-input-bar[b-1qzq3skpqj] {
        padding: 10px 12px;
        gap: 6px;
    }

    /* Side panel slides over the chat instead of squeezing it */
    .side-panel[b-1qzq3skpqj] {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: min(320px, 88vw);
        z-index: 30;
        box-shadow: -8px 0 24px rgba(0, 0, 0, 0.3);
    }

    .starter-actions[b-1qzq3skpqj] {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
        max-width: 340px;
    }

    .starter-btn[b-1qzq3skpqj] {
        justify-content: center;
        min-height: 40px;
    }

    /* No hover on touch — keep controls visible and tappable */
    .session-item[b-1qzq3skpqj] {
        min-height: 40px;
    }

    .session-delete[b-1qzq3skpqj] {
        opacity: 1;
        padding: 6px;
    }

    .qa-btn[b-1qzq3skpqj] {
        min-height: 40px;
    }

    .artifact-frame[b-1qzq3skpqj] {
        height: 260px;
    }

    .artifact-pre[b-1qzq3skpqj],
    .artifact-json[b-1qzq3skpqj] {
        max-height: 260px;
    }
}
/* /Components/Pages/Dashboard.razor.rz.scp.css */
.page[b-ia1pkxlf4q] {
    padding: 28px 28px 40px;
    max-width: 1320px;
    margin: 0 auto;
    min-width: 0;
    box-sizing: border-box;
    width: 100%;
}

.page-head[b-ia1pkxlf4q] {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 22px;
    gap: 12px;
    min-width: 0;
}

.page-title[b-ia1pkxlf4q] {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: -.01em;
}

.page-sub[b-ia1pkxlf4q] {
    margin: 4px 0 0;
    color: var(--text-2);
    font-size: 13px;
}

.page-sub-project[b-ia1pkxlf4q] {
    font-family: var(--font-sans);
    color: var(--text);
}

.submit-btn[b-ia1pkxlf4q] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    font-size: 13px;
}

.submit-plus[b-ia1pkxlf4q] {
    font-size: 15px;
    line-height: 1;
}

.stat-grid[b-ia1pkxlf4q] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-bottom: 24px;
    min-width: 0;
}

.stat-card[b-ia1pkxlf4q] {
    min-width: 0;
    overflow: hidden;
}

.stat-figure[b-ia1pkxlf4q] {
    min-width: 0;
}

.stat-num[b-ia1pkxlf4q] {
    min-width: 0;
}

.stat-card[b-ia1pkxlf4q] {
    padding: 14px 16px;
    border-radius: 8px;
}

.stat-label[b-ia1pkxlf4q] {
    font-size: 11px;
    color: var(--text-3);
    letter-spacing: .08em;
    font-weight: 500;
}

.stat-figure[b-ia1pkxlf4q] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-top: 6px;
}

.stat-num[b-ia1pkxlf4q] {
    font-family: var(--font-sans);
    font-size: 26px;
    font-weight: 600;
}

.tone-good[b-ia1pkxlf4q] {
    color: var(--good);
}

.tone-warn[b-ia1pkxlf4q] {
    color: var(--warn);
}

.tone-bad[b-ia1pkxlf4q] {
    color: var(--bad);
}

.tone-text[b-ia1pkxlf4q] {
    color: var(--text);
}

.stat-unit[b-ia1pkxlf4q] {
    font-size: 12px;
    color: var(--text-3);
}

.entity-grid[b-ia1pkxlf4q] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 12px;
    margin-bottom: 24px;
}

.entity-card[b-ia1pkxlf4q] {
    padding: 13px 16px;
    border-radius: 8px;
    text-decoration: none;
    color: var(--text);
    display: block;
    border-left: 2px solid var(--brand-2);
}

.entity-head[b-ia1pkxlf4q] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
}

.entity-name[b-ia1pkxlf4q] {
    font-size: 13.5px;
    font-weight: 600;
}

.entity-count[b-ia1pkxlf4q] {
    font-family: var(--font-sans);
    font-size: 16px;
    color: var(--brand-2);
}

.entity-chart-label[b-ia1pkxlf4q] {
    font-size: 9.5px;
    color: var(--text-3);
    margin: 8px 0 4px;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.entity-bars[b-ia1pkxlf4q] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.entity-bar-row[b-ia1pkxlf4q] {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 10.5px;
}

.entity-bar-label[b-ia1pkxlf4q] {
    width: 78px;
    flex: none;
    color: var(--text-2);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.entity-bar-track[b-ia1pkxlf4q] {
    flex: 1;
    height: 6px;
    border-radius: 4px;
    background: var(--card-2);
    overflow: hidden;
}

.entity-bar-fill[b-ia1pkxlf4q] {
    display: block;
    height: 100%;
    background: var(--brand-2);
}

.entity-bar-count[b-ia1pkxlf4q] {
    font-family: var(--font-sans);
    color: var(--text-3);
}

.entity-table[b-ia1pkxlf4q] {
    font-size: 10.5px;
    color: var(--text-3);
    margin-top: 3px;
    font-family: var(--font-sans);
}

.charts-head[b-ia1pkxlf4q] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 8px;
}

.section-title[b-ia1pkxlf4q] {
    font-size: 13px;
    font-weight: 600;
}

.charts-edit-link[b-ia1pkxlf4q] {
    font-size: 11.5px;
    color: var(--human);
}

.charts-grid[b-ia1pkxlf4q] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
    gap: 12px;
    margin-bottom: 24px;
}

.chart-card[b-ia1pkxlf4q] {
    padding: 12px 16px;
    border-radius: 8px;
}

.chart-card-head[b-ia1pkxlf4q] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.chart-title[b-ia1pkxlf4q] {
    font-size: 12px;
    font-weight: 600;
    font-family: var(--font-sans);
}

.spacer[b-ia1pkxlf4q] {
    flex: 1;
}

.chart-time[b-ia1pkxlf4q] {
    font-size: 10px;
    color: var(--text-3);
}

.chart-canvas-wrap[b-ia1pkxlf4q] {
    height: 230px;
    padding: 8px 6px 4px;
}

.jobs-card[b-ia1pkxlf4q] {
    border-radius: 8px;
    overflow: hidden;
    min-width: 0;
}

.jobs-head[b-ia1pkxlf4q] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    border-bottom: 1px solid var(--border);
}

.jobs-title[b-ia1pkxlf4q] {
    font-weight: 600;
    font-size: 13.5px;
}

.jobs-filters[b-ia1pkxlf4q] {
    display: flex;
    gap: 6px;
}

.jobs-filter[b-ia1pkxlf4q] {
    font-family: var(--font-sans);
    font-size: 11px;
    padding: 3px 9px;
    border-radius: 99px;
    cursor: pointer;
}

.jobs-scroll[b-ia1pkxlf4q] {
    overflow-x: auto;
}

.jobs-grid-head[b-ia1pkxlf4q] {
    display: grid;
    grid-template-columns: 110px minmax(180px, 1.4fr) minmax(140px, 1fr) 90px 90px 130px 100px;
    gap: 0 16px;
    padding: 8px 16px;
    border-bottom: 1px solid var(--border);
    font-size: 10.5px;
    color: var(--text-3);
    letter-spacing: .08em;
    font-weight: 500;
    min-width: 880px;
}

.jobs-loading[b-ia1pkxlf4q] {
    padding: 6px 16px;
    min-width: 880px;
}

.jobs-empty[b-ia1pkxlf4q] {
    padding: 24px 16px;
    color: var(--text-3);
    font-size: 13px;
    text-align: center;
    min-width: 880px;
}

.jobs-row[b-ia1pkxlf4q] {
    display: grid;
    grid-template-columns: 110px minmax(180px, 1.4fr) minmax(140px, 1fr) 90px 90px 130px 100px;
    gap: 0 16px;
    align-items: center;
    padding: 11px 16px;
    border-bottom: 1px solid var(--border);
    cursor: pointer;
    min-width: 880px;
}

.job-status[b-ia1pkxlf4q] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: var(--font-sans);
    font-size: 11px;
}

.job-status-dot[b-ia1pkxlf4q] {
    width: 7px;
    height: 7px;
    flex: none;
    border-radius: 50%;
}

.job-name[b-ia1pkxlf4q] {
    font-family: var(--font-sans);
    font-size: 12.5px;
    color: var(--text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.job-project[b-ia1pkxlf4q] {
    font-family: var(--font-sans);
    font-size: 11.5px;
    color: var(--human);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.job-cell[b-ia1pkxlf4q] {
    font-family: var(--font-sans);
    font-size: 11.5px;
    color: var(--text-2);
}

.job-started[b-ia1pkxlf4q] {
    font-size: 12px;
    color: var(--text-2);
}

.job-return[b-ia1pkxlf4q] {
    font-family: var(--font-sans);
    font-size: 11.5px;
    color: var(--text-3);
}

.jobs-card[b-ia1pkxlf4q] {
    max-width: 100%;
}

.jobs-scroll[b-ia1pkxlf4q] {
    overflow-x: auto;
    max-width: 100%;
}

.jobs-filters[b-ia1pkxlf4q] {
    flex-wrap: wrap;
}

@media (max-width: 950px) {
    .page[b-ia1pkxlf4q] {
        padding: 14px 12px 24px;
    }

    .page-head[b-ia1pkxlf4q] {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .page-head > div[b-ia1pkxlf4q] {
        min-width: 0;
    }

    .stat-grid[b-ia1pkxlf4q] {
        grid-template-columns: 1fr;
        gap: 10px;
        margin-bottom: 18px;
    }

    .entity-grid[b-ia1pkxlf4q] {
        grid-template-columns: 1fr;
        gap: 10px;
        margin-bottom: 18px;
    }

    .charts-grid[b-ia1pkxlf4q] {
        grid-template-columns: 1fr;
        gap: 10px;
        margin-bottom: 18px;
    }

    .chart-canvas-wrap[b-ia1pkxlf4q] {
        height: 180px;
    }

    .submit-btn[b-ia1pkxlf4q] {
        width: 100%;
        justify-content: center;
        min-height: 40px;
    }

    .jobs-head[b-ia1pkxlf4q] {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .jobs-filters[b-ia1pkxlf4q] {
        width: 100%;
    }

    .jobs-filter[b-ia1pkxlf4q] {
        flex: 1;
        text-align: center;
        min-height: 32px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
}
/* /Components/Pages/DataEntities.razor.rz.scp.css */
.page[b-33rt0shwt5] {
    padding: 20px 24px 40px;
    max-width: 1320px;
    margin: 0 auto;
}

.page-head[b-33rt0shwt5] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 14px;
}

.page-title[b-33rt0shwt5] {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
}

.page-sub[b-33rt0shwt5] {
    font-size: 12px;
    color: var(--text-3);
    margin-top: 3px;
}

.entity-graph[b-33rt0shwt5] {
    padding: 16px 18px;
    margin-bottom: 16px;
    display: flex;
    flex-wrap: wrap;
    gap: 26px;
    align-items: center;
}

.entity-row[b-33rt0shwt5] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.entity-node[b-33rt0shwt5] {
    border: 1px solid var(--brand-2);
    border-radius: 9px;
    padding: 9px 14px;
    background: var(--brand-bg);
    cursor: pointer;
}

.entity-node-name[b-33rt0shwt5] {
    font-size: 12.5px;
    font-weight: 600;
}

.entity-node-table[b-33rt0shwt5] {
    font-size: 10px;
    color: var(--text-3);
    font-family: var(--font-sans);
}

.entity-tags[b-33rt0shwt5] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin-top: 5px;
}

.entity-tag[b-33rt0shwt5] {
    font-size: 9.5px;
    background: var(--card-2);
    color: var(--text-2);
    border-radius: 20px;
    padding: 1px 7px;
}

.entity-rel[b-33rt0shwt5] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 10.5px;
    color: var(--text-3);
}

.sans[b-33rt0shwt5] {
    font-family: var(--font-sans);
}

.rel-target[b-33rt0shwt5] {
    font-family: var(--font-sans);
    color: var(--human);
}

.empty-note[b-33rt0shwt5] {
    padding: 24px;
    text-align: center;
    color: var(--text-3);
    font-size: 13px;
}

.editor-slide[b-33rt0shwt5] {
    width: 540px;
}

.flex-1[b-33rt0shwt5] {
    flex: 1;
}

.slide-title[b-33rt0shwt5] {
    font-size: 14px;
    font-weight: 600;
}

.slide-sub[b-33rt0shwt5] {
    font-size: 11.5px;
    color: var(--text-3);
    margin-top: 3px;
}

.editor-body[b-33rt0shwt5] {
    flex: 1;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.field-row[b-33rt0shwt5] {
    display: flex;
    gap: 10px;
}

.code-hint[b-33rt0shwt5] {
    margin-left: 4px;
}

.field-narrow[b-33rt0shwt5] {
    max-width: 250px;
}

.tag-input-box[b-33rt0shwt5] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    padding: 6px 8px;
    background: var(--card-2);
    border: 1px solid var(--border);
    border-radius: 7px;
    min-height: 38px;
}

.tag-chip[b-33rt0shwt5] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--brand-bg);
    color: var(--brand-2);
    border: 1px solid var(--brand-2);
    border-radius: 20px;
    padding: 2px 6px 2px 10px;
    font-size: 12px;
}

.tag-chip-x[b-33rt0shwt5] {
    width: 16px;
    height: 16px;
    font-size: 14px;
    line-height: 1;
    padding: 0;
    color: var(--brand-2);
}

.tag-input[b-33rt0shwt5] {
    flex: 1;
    min-width: 120px;
    border: none;
    background: transparent;
    padding: 2px 4px;
    font-family: var(--font-sans);
}

.field-hint[b-33rt0shwt5] {
    font-size: 10.5px;
    color: var(--text-3);
    margin-top: 4px;
}

.flex-between[b-33rt0shwt5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.rel-add-btn[b-33rt0shwt5] {
    padding: 3px 9px;
    font-size: 11px;
}

.rel-list[b-33rt0shwt5] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 6px;
}

.rel-edit-row[b-33rt0shwt5] {
    display: flex;
    gap: 6px;
    align-items: center;
}

.rel-input-mono[b-33rt0shwt5] {
    flex: 1;
    font-size: 12px;
    font-family: var(--font-sans);
}

.rel-sep[b-33rt0shwt5] {
    color: var(--text-3);
}

.rel-select[b-33rt0shwt5] {
    flex: 1;
    font-size: 12px;
}

.rel-del-btn[b-33rt0shwt5] {
    padding: 3px 8px;
}

.foot-error[b-33rt0shwt5] {
    flex: 1;
    color: var(--bad);
    font-size: 12px;
}

.btn-danger[b-33rt0shwt5] {
    color: var(--bad);
}

.head-actions[b-33rt0shwt5] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.rescan-msg[b-33rt0shwt5] {
    font-size: 12px;
    color: var(--good);
    margin-bottom: 12px;
}

.link-groups[b-33rt0shwt5] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 10px;
}

.link-group[b-33rt0shwt5] {
    padding: 10px 12px;
}

.link-group-head[b-33rt0shwt5] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
}

.kind-badge[b-33rt0shwt5] {
    font-size: 9.5px;
    text-transform: uppercase;
    letter-spacing: .5px;
    padding: 1px 6px;
    border-radius: 4px;
    background: var(--brand-bg);
    color: var(--brand-2);
}

.link-value[b-33rt0shwt5] {
    font-size: 12px;
    font-weight: 600;
    word-break: break-word;
    flex: 1;
    min-width: 0;
}

.link-count[b-33rt0shwt5] {
    font-size: 10.5px;
    color: var(--text-3);
    white-space: nowrap;
}

.link-occurrences[b-33rt0shwt5] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.occurrence[b-33rt0shwt5] {
    font-size: 11px;
    color: var(--text-2);
    font-family: var(--font-sans);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 950px) {
    .page[b-33rt0shwt5] { padding: 16px 14px 28px; }
    .page-head[b-33rt0shwt5] { flex-wrap: wrap; gap: 12px; }
    .head-actions[b-33rt0shwt5] { flex-wrap: wrap; width: 100%; }
    .head-actions .dcbtn[b-33rt0shwt5] { flex: 1; min-height: 40px; }
    .entity-row[b-33rt0shwt5] { flex-wrap: wrap; }
}
/* /Components/Pages/EntityBrowse.razor.rz.scp.css */
.page-wrap[b-ebzuvmzzm3] { padding:20px 24px 40px; max-width:1320px; margin:0 auto }
.unknown-entity[b-ebzuvmzzm3] { padding:24px; color:var(--text-3) }
.header-row[b-ebzuvmzzm3] { display:flex; align-items:baseline; justify-content:space-between; margin-bottom:14px; gap:12px }
.header-actions[b-ebzuvmzzm3] { display:flex; align-items:center; gap:10px }
.crm-form[b-ebzuvmzzm3] { display:flex; flex-direction:column; gap:10px }
.crm-label[b-ebzuvmzzm3] { display:flex; flex-direction:column; gap:4px; font-size:11px; color:var(--text-3); letter-spacing:.04em; text-transform:uppercase }
.crm-input[b-ebzuvmzzm3] { font-size:13px; text-transform:none; letter-spacing:0 }
.crm-actions[b-ebzuvmzzm3] { display:flex; justify-content:flex-end; gap:8px; margin-top:6px }
.page-title[b-ebzuvmzzm3] { font-size:18px; font-weight:600; margin:0 }
.page-sub[b-ebzuvmzzm3] { font-size:12px; color:var(--text-3); margin-top:3px }
.mono[b-ebzuvmzzm3] { font-family:var(--font-sans) }
.filter-input[b-ebzuvmzzm3] { width:200px; padding:5px 10px; font-size:12px }
.error-banner[b-ebzuvmzzm3] { margin-bottom:12px; padding:10px 14px; border-radius:8px; background:var(--bad-bg); color:var(--bad); font-size:12.5px }
.warn-banner[b-ebzuvmzzm3] { margin-bottom:12px; padding:10px 14px; border-radius:8px; background:var(--warn-bg); color:var(--warn); font-size:12.5px }
.tabs-mb[b-ebzuvmzzm3] { margin-bottom:14px }
.analytics-head[b-ebzuvmzzm3] { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px }
.note-12[b-ebzuvmzzm3] { font-size:12px; color:var(--text-3) }
.sql-chart-btn[b-ebzuvmzzm3] { padding:4px 11px; font-size:11.5px }
.chart-editor[b-ebzuvmzzm3] { padding:14px 16px; margin-bottom:12px; display:flex; flex-direction:column; gap:8px }
.chart-name-input[b-ebzuvmzzm3] { max-width:300px }
.monaco-box[b-ebzuvmzzm3] { height:130px; border:1px solid var(--border); border-radius:7px; overflow:hidden }
.sql-textarea[b-ebzuvmzzm3] { width:100%; padding:9px 11px; background:var(--bg); border:1px solid var(--border); border-radius:7px; color:var(--text); font-size:12px; font-family:var(--font-sans); resize:vertical }
.editor-controls[b-ebzuvmzzm3] { display:flex; align-items:center; gap:10px }
.chart-type-select[b-ebzuvmzzm3] { width:90px; font-size:12px }
.run-save-btn[b-ebzuvmzzm3] { padding:5px 14px; font-size:12px }
.chart-err[b-ebzuvmzzm3] { color:var(--bad); font-size:12px }
.empty-card[b-ebzuvmzzm3] { padding:24px; text-align:center; color:var(--text-3); font-size:13px }
.charts-grid[b-ebzuvmzzm3] { display:grid; grid-template-columns:repeat(auto-fit, minmax(440px, 1fr)); gap:14px }
.card-pad[b-ebzuvmzzm3] { padding:12px 16px }
.chart-head[b-ebzuvmzzm3] { display:flex; align-items:center; gap:8px; margin-bottom:8px }
.chart-name[b-ebzuvmzzm3] { font-size:12.5px; font-weight:600; font-family:var(--font-sans) }
.chart-type-group[b-ebzuvmzzm3] { display:flex; gap:2px; margin-left:4px }
.chart-type-btn[b-ebzuvmzzm3] { padding:2px 8px; font-size:10.5px }
.flex-1[b-ebzuvmzzm3] { flex:1 }
.btn-11[b-ebzuvmzzm3] { padding:3px 10px; font-size:11px }
.btn-11-del[b-ebzuvmzzm3] { padding:3px 10px; font-size:11px; color:var(--bad) }
.chart-canvas-box[b-ebzuvmzzm3] { height:300px; padding:10px 8px 6px }
.graph-card[b-ebzuvmzzm3] { border-radius:10px; overflow:hidden; margin-bottom:14px }
.focus-row[b-ebzuvmzzm3] { display:flex; align-items:center; gap:10px; margin-bottom:10px; font-size:12px }
.focus-chip[b-ebzuvmzzm3] { padding:3px 10px; border-radius:99px; background:var(--brand-bg); color:var(--brand-2); font-family:var(--font-sans) }
.legend[b-ebzuvmzzm3] { font-size:11px; color:var(--text-3); display:flex; gap:16px; margin-bottom:14px }
.dot-brand[b-ebzuvmzzm3] { color:var(--brand-2) }
.dot-human[b-ebzuvmzzm3] { color:var(--human) }
.dot-good[b-ebzuvmzzm3] { color:var(--good) }
.dot-run[b-ebzuvmzzm3] { color:var(--text-2) }
.insights-grid[b-ebzuvmzzm3] { display:grid; grid-template-columns:repeat(auto-fit, minmax(210px, 1fr)); gap:10px; margin-bottom:14px }
.insight-card[b-ebzuvmzzm3] { padding:12px 14px; border-radius:8px }
.insight-title[b-ebzuvmzzm3] { font-size:10.5px; color:var(--text-3); letter-spacing:.06em; text-transform:uppercase }
.insight-big-row[b-ebzuvmzzm3] { display:flex; align-items:baseline; gap:7px; margin-top:5px }
.insight-big[b-ebzuvmzzm3] { font-family:var(--font-sans); font-size:22px; font-weight:600; color:var(--brand-2) }
.insight-sub[b-ebzuvmzzm3] { font-size:11px; color:var(--text-3) }
.insight-bars[b-ebzuvmzzm3] { display:flex; flex-direction:column; gap:3px; margin-top:6px }
.bar-row[b-ebzuvmzzm3] { display:flex; align-items:center; gap:8px; font-size:11px }
.bar-label[b-ebzuvmzzm3] { width:86px; flex:none; color:var(--text-2); white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.bar-track[b-ebzuvmzzm3] { flex:1; height:7px; border-radius:4px; background:var(--card-2); overflow:hidden }
.bar-fill[b-ebzuvmzzm3] { display:block; height:100%; background:var(--brand-2) }
.bar-count[b-ebzuvmzzm3] { font-family:var(--font-sans); color:var(--text-3) }
.table-card[b-ebzuvmzzm3] { border-radius:8px; overflow:hidden }
.table-scroll[b-ebzuvmzzm3] { overflow-x:auto }
.data-table[b-ebzuvmzzm3] { border-collapse:collapse; width:100%; font-size:12px }
.data-th[b-ebzuvmzzm3] { text-align:left; padding:8px 14px; border-bottom:2px solid var(--border-2); color:var(--text-3); font-size:10.5px; letter-spacing:.06em; text-transform:uppercase; white-space:nowrap }
.clickable[b-ebzuvmzzm3] { cursor:pointer }
.data-cell[b-ebzuvmzzm3] { padding:7px 14px; border-bottom:1px solid var(--border); max-width:280px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.no-rows-cell[b-ebzuvmzzm3] { color:var(--text-3); text-align:center; white-space:normal; cursor:default }
.pager-row[b-ebzuvmzzm3] { display:flex; align-items:center; justify-content:space-between; padding:10px 14px; border-top:1px solid var(--border) }
.pager-info[b-ebzuvmzzm3] { font-size:11.5px; color:var(--text-3) }
.pager-controls[b-ebzuvmzzm3] { display:flex; align-items:center; gap:10px }
.pager-btn[b-ebzuvmzzm3] { padding:4px 11px; font-size:11.5px }
.pager-page[b-ebzuvmzzm3] { font-size:11.5px; color:var(--text-2); font-family:var(--font-sans) }
.slide-560[b-ebzuvmzzm3] { width:560px }
.flex-min[b-ebzuvmzzm3] { flex:1; min-width:0 }
.title-14[b-ebzuvmzzm3] { font-size:14px; font-weight:600 }
.sub-115[b-ebzuvmzzm3] { font-size:11.5px; color:var(--text-3); margin-top:3px }
.graph-toggle-btn[b-ebzuvmzzm3] { margin-right:10px; padding:4px 11px; font-size:11.5px }

@media (max-width: 950px) {
    .page-wrap[b-ebzuvmzzm3] { padding: 16px 14px 28px; }
    .header-row[b-ebzuvmzzm3] { flex-wrap: wrap; gap: 12px; }
    .header-actions[b-ebzuvmzzm3] { flex-wrap: wrap; width: 100%; gap: 8px; }
    .header-actions .dcbtn[b-ebzuvmzzm3] { flex: 1; min-height: 40px; }
    .header-actions .filter-input[b-ebzuvmzzm3] { flex: 1; width: auto; min-width: 0; }
    .analytics-head[b-ebzuvmzzm3] { flex-wrap: wrap; gap: 8px; }
    .editor-controls[b-ebzuvmzzm3] { flex-wrap: wrap; }
    .charts-grid[b-ebzuvmzzm3] { grid-template-columns: 1fr; }
    .chart-canvas-box[b-ebzuvmzzm3] { height: 220px; }
}
.record-body[b-ebzuvmzzm3] { flex:1; overflow-y:auto; display:flex; flex-direction:column; gap:14px }
.field-dl[b-ebzuvmzzm3] { display:grid; grid-template-columns:auto 1fr; gap:4px 14px; margin:0; font-size:12.5px }
.field-dt[b-ebzuvmzzm3] { color:var(--text-3); font-family:var(--font-sans); font-size:11px }
.field-dd[b-ebzuvmzzm3] { margin:0; word-break:break-word }
.section-label[b-ebzuvmzzm3] { font-size:11px; font-weight:600; letter-spacing:.5px; color:var(--text-3); text-transform:uppercase; margin-bottom:6px }
.label-normal[b-ebzuvmzzm3] { font-weight:400; text-transform:none }
.artifact-link[b-ebzuvmzzm3] { display:flex; align-items:center; gap:10px; padding:8px 12px; margin-bottom:5px; border:1px solid var(--border); border-radius:8px; background:var(--card-2); font-size:12px; color:var(--text); text-decoration:none }
.artifact-title[b-ebzuvmzzm3] { font-family:var(--font-sans); flex:1; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.version-badge[b-ebzuvmzzm3] { font-size:10px; padding:1px 6px; border-radius:4px; background:var(--brand-bg); color:var(--brand-2); font-family:var(--font-sans) }
.artifact-meta[b-ebzuvmzzm3] { font-size:10.5px; color:var(--text-3) }
.related-link[b-ebzuvmzzm3] { padding:8px 12px; margin-bottom:5px; font-size:12px; display:flex; gap:10px; overflow:hidden; text-decoration:none; color:inherit }
.ellipsis[b-ebzuvmzzm3] { white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.related-arrow[b-ebzuvmzzm3] { margin-left:auto; color:var(--human); flex:none }
.auto-link[b-ebzuvmzzm3] { padding:8px 12px; margin-bottom:5px; font-size:12px; display:flex; align-items:center; gap:10px; overflow:hidden; color:inherit }
.link-kind[b-ebzuvmzzm3] { font-size:9.5px; text-transform:uppercase; letter-spacing:.5px; padding:1px 6px; border-radius:4px; background:var(--brand-bg); color:var(--brand-2); flex:none }
.link-meta[b-ebzuvmzzm3] { margin-left:auto; font-size:10.5px; color:var(--text-3); font-family:var(--font-sans); white-space:nowrap; flex:none }
/* /Components/Pages/Events.razor.rz.scp.css */
.page[b-606kezisrx] {
    padding: 20px 24px 40px;
    max-width: 1100px;
    margin: 0 auto;
}

.page-title[b-606kezisrx] {
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 4px;
}

.page-sub[b-606kezisrx] {
    font-size: 12.5px;
    color: var(--text-3);
    margin-bottom: 18px;
}

.message-bar[b-606kezisrx] {
    margin-bottom: 12px;
    padding: 10px 14px;
    border-radius: 8px;
    background: var(--card);
    font-size: 12.5px;
    color: var(--text-2);
}

.columns[b-606kezisrx] {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    align-items: flex-start;
}

.column[b-606kezisrx] {
    flex: 1;
    min-width: 340px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.column-title[b-606kezisrx] {
    font-size: 14px;
    font-weight: 600;
}

.column-title-mt[b-606kezisrx] {
    font-size: 14px;
    font-weight: 600;
    margin-top: 8px;
}

.stack[b-606kezisrx] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.type-card[b-606kezisrx] {
    padding: 12px 16px;
}

.card-row[b-606kezisrx] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.type-name[b-606kezisrx] {
    font-size: 13px;
    font-weight: 600;
    font-family: var(--font-sans);
}

.builtin-badge[b-606kezisrx] {
    font-size: 10px;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
    color: var(--brand-2);
    background: var(--brand-bg);
}

.type-desc[b-606kezisrx] {
    font-size: 12px;
    color: var(--text-3);
    margin-top: 3px;
}

.btn-emit[b-606kezisrx] {
    margin-top: 8px;
    padding: 3px 10px;
    font-size: 11px;
}

.define-card[b-606kezisrx] {
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.define-title[b-606kezisrx] {
    font-size: 12.5px;
    font-weight: 600;
}

.va-textarea[b-606kezisrx] {
    resize: vertical;
    font-family: var(--font-sans);
    font-size: 12px;
}

.error-inline[b-606kezisrx] {
    color: var(--bad);
    font-size: 12px;
}

.btn-self-start[b-606kezisrx] {
    align-self: flex-start;
}

.hint[b-606kezisrx] {
    font-size: 12px;
    color: var(--text-3);
}

.log-card[b-606kezisrx] {
    padding: 10px 14px;
}

.log-name[b-606kezisrx] {
    font-size: 12.5px;
    font-weight: 600;
    font-family: var(--font-sans);
    flex: 1;
}

.source-badge[b-606kezisrx] {
    font-size: 10px;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
    background: var(--card-2);
}

.log-time[b-606kezisrx] {
    font-size: 11px;
    color: var(--text-3);
    font-family: var(--font-sans);
}

.payload-pre[b-606kezisrx] {
    margin-top: 6px;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 8px;
    font-size: 10.5px;
    font-family: var(--font-mono);
    white-space: pre-wrap;
    word-break: break-all;
    color: var(--text-3);
    max-height: 120px;
    overflow-y: auto;
}

.provider-badge[b-606kezisrx] {
    font-size: 10px;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 4px;
    color: var(--text-2);
    background: var(--card-2);
}

.sms-body[b-606kezisrx] {
    margin-top: 6px;
    font-size: 12px;
    color: var(--text-2);
    word-break: break-word;
}

.emit-slide[b-606kezisrx] {
    width: 460px;
}

.emit-title[b-606kezisrx] {
    flex: 1;
    font-size: 14px;
    font-weight: 600;
}

.emit-body[b-606kezisrx] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.emit-actions[b-606kezisrx] {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}
/* /Components/Pages/Inspector.razor.rz.scp.css */
.shell[b-qt8vl90pgb] {
    display: flex;
    height: 100%;
    min-height: 0;
}

.feed[b-qt8vl90pgb] {
    width: 420px;
    flex: none;
    border-right: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.feed-head[b-qt8vl90pgb] {
    padding: 13px 16px;
    border-bottom: 1px solid var(--border);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.row8[b-qt8vl90pgb] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.title-13[b-qt8vl90pgb] {
    font-size: 13px;
    font-weight: 600;
}

.pulse-dot[b-qt8vl90pgb] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--good);
    animation: dcpulse 1.8s ease-in-out infinite;
}

.btn-sm[b-qt8vl90pgb] {
    padding: 4px 9px;
    font-size: 11px;
}

.feed-list[b-qt8vl90pgb] {
    flex: 1;
    overflow-y: auto;
}

.feed-empty[b-qt8vl90pgb] {
    padding: 18px 16px;
    color: var(--text-3);
    font-size: 12.5px;
}

.call-row[b-qt8vl90pgb] {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 12px 16px;
    border-bottom: 1px solid var(--border);
    cursor: pointer;
}

.status-dot[b-qt8vl90pgb] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex: none;
}

.flex-min[b-qt8vl90pgb] {
    flex: 1;
    min-width: 0;
}

.call-tool[b-qt8vl90pgb] {
    font-family: var(--font-sans);
    font-size: 12.5px;
    font-weight: 500;
    color: var(--text);
}

.call-dir[b-qt8vl90pgb] {
    font-size: 10px;
    color: var(--text-3);
    font-family: var(--font-sans);
}

.call-summary[b-qt8vl90pgb] {
    font-size: 11px;
    color: var(--text-3);
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.call-meta[b-qt8vl90pgb] {
    text-align: right;
    flex: none;
}

.call-status[b-qt8vl90pgb] {
    font-family: var(--font-sans);
    font-size: 11px;
}

.call-dur[b-qt8vl90pgb] {
    font-family: var(--font-sans);
    font-size: 10.5px;
    color: var(--text-3);
    margin-top: 2px;
}

.detail[b-qt8vl90pgb] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    min-height: 0;
    background: var(--bg);
}

.detail-empty[b-qt8vl90pgb] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-3);
    font-size: 12.5px;
}

.detail-head[b-qt8vl90pgb] {
    padding: 13px 18px;
    border-bottom: 1px solid var(--border);
    display: flex;
    align-items: center;
    gap: 10px;
}

.detail-tool[b-qt8vl90pgb] {
    font-family: var(--font-sans);
    font-size: 13px;
    font-weight: 600;
}

.status-pill[b-qt8vl90pgb] {
    font-size: 10.5px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 5px;
}

.detail-meta[b-qt8vl90pgb] {
    font-family: var(--font-sans);
    font-size: 11px;
    color: var(--text-3);
}

.detail-body[b-qt8vl90pgb] {
    flex: 1;
    overflow-y: auto;
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.section-label[b-qt8vl90pgb] {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .5px;
    color: var(--text-3);
    text-transform: uppercase;
    margin-bottom: 8px;
}

.json-block[b-qt8vl90pgb] {
    margin: 0;
    padding: 15px 17px;
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 10px;
    font-family: var(--font-mono);
    font-size: 12px;
    line-height: 1.6;
    color: var(--text-2);
    overflow-x: auto;
    white-space: pre-wrap;
}
/* /Components/Pages/JobChains.razor.rz.scp.css */
.page-wrap[b-zppjnb5vs5] { padding:20px 24px 40px; max-width:1320px; margin:0 auto }
.header-row[b-zppjnb5vs5] { display:flex; align-items:baseline; justify-content:space-between; margin-bottom:18px }
.page-title[b-zppjnb5vs5] { font-size:18px; font-weight:600; margin:0 }
.sub-note[b-zppjnb5vs5] { font-size:12px; color:var(--text-3); margin-top:3px }
.message-banner[b-zppjnb5vs5] { margin-bottom:12px; padding:10px 14px; border-radius:8px; background:var(--card); font-size:12.5px; color:var(--text-2) }
.empty-card[b-zppjnb5vs5] { padding:24px; color:var(--text-3); font-size:13px; text-align:center }
.chain-list[b-zppjnb5vs5] { display:flex; flex-direction:column; gap:10px }
.chain-card[b-zppjnb5vs5] { padding:14px 16px; cursor:pointer }
.chain-row[b-zppjnb5vs5] { display:flex; align-items:center; justify-content:space-between; gap:14px }
.min0[b-zppjnb5vs5] { min-width:0 }
.chain-name[b-zppjnb5vs5] { font-size:14px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.step-chips[b-zppjnb5vs5] { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-top:8px; font-size:11.5px; font-family:var(--font-sans) }
.chip-arrow[b-zppjnb5vs5] { color:var(--text-3) }
.step-chip[b-zppjnb5vs5] { padding:2px 8px; border-radius:6px; background:var(--card-2) }
.stage-group[b-zppjnb5vs5] { display:inline-flex; align-items:center; gap:4px; padding:2px 6px; border-radius:8px; border:1px dashed var(--border) }
.chip-plus[b-zppjnb5vs5] { color:var(--text-3); font-size:10px }
.chain-actions[b-zppjnb5vs5] { display:flex; align-items:center; gap:8px; flex:none }
.c-bad[b-zppjnb5vs5] { color:var(--bad) }
.slide-640[b-zppjnb5vs5] { width:640px }
.flex-min[b-zppjnb5vs5] { flex:1; min-width:0 }
.title-14[b-zppjnb5vs5] { font-size:14px; font-weight:600 }
.sub-115[b-zppjnb5vs5] { font-size:11.5px; color:var(--text-3); margin-top:3px }
.mr-10[b-zppjnb5vs5] { margin-right:10px }
.editor-tabs[b-zppjnb5vs5] { margin:0; padding:0 18px; border-bottom:1px solid var(--border) }
.runs-body[b-zppjnb5vs5] { flex:1; overflow-y:auto; overscroll-behavior:contain; display:flex; flex-direction:column; gap:12px }
.no-runs[b-zppjnb5vs5] { color:var(--text-3); font-size:13px; padding:14px 0 }
.run-card[b-zppjnb5vs5] { padding:12px 16px; cursor:pointer }
.run-row[b-zppjnb5vs5] { display:flex; align-items:center; gap:12px }
.status-chip[b-zppjnb5vs5] { font-size:11px; font-weight:600; padding:3px 8px; border-radius:5px }
.run-time[b-zppjnb5vs5] { font-family:var(--font-sans); font-size:11.5px; color:var(--text-2); flex:1 }
.meta-11[b-zppjnb5vs5] { font-size:11px; color:var(--text-3) }
.dur-meta[b-zppjnb5vs5] { font-size:11px; color:var(--text-3); font-family:var(--font-sans) }
.running-note[b-zppjnb5vs5] { font-size:11px; color:var(--brand-2) }
.btn-start[b-zppjnb5vs5] { align-self:flex-start }
.status-row[b-zppjnb5vs5] { display:flex; align-items:center; gap:8px }
.status-chip-lg[b-zppjnb5vs5] { font-size:12px; font-weight:600; padding:3px 9px; border-radius:5px }
.out-label[b-zppjnb5vs5] { font-size:12px; font-weight:600; margin-bottom:4px }
.json-pre[b-zppjnb5vs5] { background:var(--bg); border:1px solid var(--border); border-radius:6px; padding:10px; font-size:11px; font-family:var(--font-mono); white-space:pre-wrap; word-break:break-all; color:var(--text-2); max-height:200px; overflow-y:auto }
.stage-detail[b-zppjnb5vs5] { border-top:1px solid var(--border); padding-top:10px }
.stage-detail-head[b-zppjnb5vs5] { font-size:12px; font-weight:600; margin-bottom:6px; display:flex; align-items:center; gap:8px }
.status-chip-sm[b-zppjnb5vs5] { font-size:11px; padding:2px 7px; border-radius:4px }
.flex-1[b-zppjnb5vs5] { flex:1 }
.btn-xs[b-zppjnb5vs5] { padding:2px 10px; font-size:11px }
.mb-8[b-zppjnb5vs5] { margin-bottom:8px }
.shard-head[b-zppjnb5vs5] { font-size:11px; color:var(--text-3); margin-bottom:3px }
.artifact-pre[b-zppjnb5vs5] { background:var(--bg); border:1px solid var(--border); border-radius:6px; padding:8px; font-size:10.5px; font-family:var(--font-mono); white-space:pre-wrap; word-break:break-all; color:var(--text-2); max-height:160px; overflow-y:auto }
.log-details[b-zppjnb5vs5] { margin-top:3px }
.log-summary[b-zppjnb5vs5] { font-size:10.5px; color:var(--text-3); cursor:pointer }
.log-pre[b-zppjnb5vs5] { font-size:10px; font-family:var(--font-mono); color:var(--text-3); white-space:pre-wrap; margin-top:3px; max-height:220px; overflow-y:auto }
.editor-body[b-zppjnb5vs5] { flex:1; display:flex; flex-direction:column; gap:14px; overflow-y:auto; overscroll-behavior:contain }
.field-row[b-zppjnb5vs5] { display:flex; gap:10px }
.flex-14[b-zppjnb5vs5] { flex:1.4 }
.empty-steps[b-zppjnb5vs5] { padding:14px; border-radius:8px; background:var(--card-2); font-size:12px; color:var(--text-3); text-align:center }
.step-list[b-zppjnb5vs5] { display:flex; flex-direction:column; gap:6px }
.step-item[b-zppjnb5vs5] { display:flex; align-items:center; gap:10px; padding:8px 10px; border-radius:8px; background:var(--card-2) }
.step-num[b-zppjnb5vs5] { font-size:11px; color:var(--text-3); font-family:var(--font-sans); flex:none }
.step-jobname[b-zppjnb5vs5] { flex:1; min-width:0; font-size:12.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis }
.stage-item[b-zppjnb5vs5] { align-items:flex-start }
.stage-jobs[b-zppjnb5vs5] { flex:1; min-width:0; display:flex; flex-wrap:wrap; gap:6px }
.stage-job-chip[b-zppjnb5vs5] { display:inline-flex; align-items:center; gap:4px; padding:2px 4px 2px 8px; border-radius:6px; background:var(--card); font-size:12px }
.stage-branch-row[b-zppjnb5vs5] { display:flex; align-items:center; gap:6px; min-width:0 }
.branch-select[b-zppjnb5vs5] { flex:1; min-width:0; padding:2px 6px; font-size:11px; min-height:26px }
.btn-2-8[b-zppjnb5vs5] { padding:2px 8px }
.btn-2-8-del[b-zppjnb5vs5] { padding:2px 8px; color:var(--bad) }
.add-row[b-zppjnb5vs5] { display:flex; gap:8px; margin-top:4px }
.editor-err[b-zppjnb5vs5] { color:var(--bad); font-size:12px; flex:1 }
.run-modal[b-zppjnb5vs5] { width:520px; max-height:80vh; display:flex; flex-direction:column }
.modal-body-scroll[b-zppjnb5vs5] { overflow-y:auto }
.prompt-step[b-zppjnb5vs5] { margin-bottom:14px }
.prompt-step-head[b-zppjnb5vs5] { display:flex; align-items:center; gap:8px; margin-bottom:6px }
.step-badge[b-zppjnb5vs5] { font-family:var(--font-sans); font-size:10.5px; padding:1px 7px; border-radius:5px; background:var(--card-2); color:var(--text-3) }
.step-jobtitle[b-zppjnb5vs5] { font-size:12.5px; font-weight:600 }
.ml-5[b-zppjnb5vs5] { margin-left:5px }
.prompt-err[b-zppjnb5vs5] { color:var(--bad); font-size:12px; padding:8px 10px; background:var(--bad-bg); border-radius:6px }

@media (max-width: 950px) {
    .page-wrap[b-zppjnb5vs5] { padding:16px 14px 28px; }
    .header-row[b-zppjnb5vs5] { flex-wrap:wrap; gap:12px; }
    .header-row .dcbtn[b-zppjnb5vs5] { flex:1; min-height:40px; }
    .chain-row[b-zppjnb5vs5] { flex-wrap:wrap; gap:12px; }
    .chain-actions[b-zppjnb5vs5] { flex-wrap:wrap; width:100%; }
    .chain-actions .dcbtn[b-zppjnb5vs5] { flex:1; min-height:40px; }
    .stage-group[b-zppjnb5vs5] { flex-wrap:wrap; }
    .stage-item[b-zppjnb5vs5] { flex-wrap:wrap; gap:8px; }
    .stage-jobs[b-zppjnb5vs5] { width:100%; }
    .stage-branch-row[b-zppjnb5vs5] { width:100%; }
    .stage-branch-row .branch-select[b-zppjnb5vs5] { min-height:34px; }
    .stage-branch-row .dcbtn[b-zppjnb5vs5] { flex:0; min-height:34px; }
    .add-row[b-zppjnb5vs5] { flex-wrap:wrap; }
    .add-row .dcbtn[b-zppjnb5vs5] { flex:1; min-height:40px; }
    .dcslide-foot[b-zppjnb5vs5] { flex-wrap:wrap; gap:10px; }
    .editor-err[b-zppjnb5vs5] { width:100%; }
    .dcslide-foot .dcbtn[b-zppjnb5vs5] { flex:1; min-height:40px; }
    .field-row[b-zppjnb5vs5] { flex-wrap:wrap; }
}
/* /Components/Pages/JobEditor.razor.rz.scp.css */
.notice[b-09wc69tmo3] {
    padding: 24px;
    color: var(--text-3);
}

.toolbar[b-09wc69tmo3] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 16px;
    border-bottom: 1px solid var(--border);
    background: var(--card);
}

.toolbar-back[b-09wc69tmo3] {
    border: none;
    background: none;
    color: var(--text-3);
    padding: 4px;
}

.job-name[b-09wc69tmo3] {
    font-size: 14px;
    font-weight: 600;
}

.runtime-badge[b-09wc69tmo3] {
    font-size: 11px;
    font-family: var(--font-sans);
    color: var(--brand-2);
    background: var(--brand-bg);
    padding: 2px 8px;
    border-radius: 5px;
}

.editor-warn[b-09wc69tmo3] {
    font-size: 11px;
    color: var(--warn);
    background: var(--warn-bg);
    padding: 2px 8px;
    border-radius: 5px;
}

.flex-spacer[b-09wc69tmo3] {
    flex: 1;
}

.text-12-3[b-09wc69tmo3] {
    font-size: 12px;
    color: var(--text-3);
}

.page[b-09wc69tmo3] {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 54px);
    overflow: hidden;
}

.workspace[b-09wc69tmo3] {
    display: flex;
    flex: 1;
    min-height: 0;
}

.file-tree[b-09wc69tmo3] {
    width: 240px;
    flex: none;
    border-right: 1px solid var(--border);
    background: var(--card);
    display: flex;
    flex-direction: column;
}

.file-tree-head[b-09wc69tmo3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 12px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: var(--text-3);
}

.add-file-btn[b-09wc69tmo3] {
    padding: 2px 7px;
    font-size: 12px;
}

.add-file-row[b-09wc69tmo3] {
    padding: 4px 10px;
    display: flex;
    gap: 6px;
}

.add-file-input[b-09wc69tmo3] {
    flex: 1;
    font-size: 12px;
    padding: 4px 7px;
}

.add-file-confirm[b-09wc69tmo3] {
    padding: 2px 7px;
}

.file-list[b-09wc69tmo3] {
    overflow-y: auto;
    flex: 1;
    padding: 2px 6px;
}

.file-row[b-09wc69tmo3] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 5px 8px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 12.5px;
    font-family: var(--font-sans);
}

.rename-input[b-09wc69tmo3] {
    flex: 1;
    min-width: 0;
    font-size: 12px;
    padding: 2px 6px;
}

.file-act-confirm[b-09wc69tmo3] {
    border: none;
    background: none;
    color: var(--good);
    cursor: pointer;
    font-size: 12px;
    padding: 0;
}

.file-name[b-09wc69tmo3] {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.file-act[b-09wc69tmo3] {
    border: none;
    background: none;
    color: var(--text-3);
    cursor: pointer;
    font-size: 11px;
    padding: 0;
}

.entry-star[b-09wc69tmo3] {
    color: var(--brand-2);
    font-size: 11px;
}

.file-act-del[b-09wc69tmo3] {
    border: none;
    background: none;
    color: var(--text-3);
    cursor: pointer;
    font-size: 13px;
    padding: 0;
}

.entry-foot[b-09wc69tmo3] {
    padding: 8px 12px;
    border-top: 1px solid var(--border);
    font-size: 11px;
    color: var(--text-3);
}

.entry-code[b-09wc69tmo3] {
    color: var(--brand-2);
}

.editor-pane[b-09wc69tmo3] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.editor-host[b-09wc69tmo3] {
    flex: 1;
    min-height: 0;
}

.results-panel[b-09wc69tmo3] {
    flex: none;
    border-top: 1px solid var(--border);
    background: var(--card);
    display: flex;
    flex-direction: column;
    transition: height .12s;
}

.results-bar[b-09wc69tmo3] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 14px;
    cursor: pointer;
    user-select: none;
}

.section-label[b-09wc69tmo3] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: var(--text-3);
}

.status-badge[b-09wc69tmo3] {
    font-size: 11px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 5px;
}

.results-body[b-09wc69tmo3] {
    overflow-y: auto;
    flex: 1;
    padding: 6px 14px 14px;
}

.shard[b-09wc69tmo3] {
    margin-bottom: 12px;
}

.shard-head[b-09wc69tmo3] {
    font-size: 12px;
    font-weight: 600;
    margin-bottom: 4px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.shard-badge[b-09wc69tmo3] {
    font-size: 10.5px;
    padding: 1px 6px;
    border-radius: 4px;
}

.shard-exit[b-09wc69tmo3] {
    font-size: 10.5px;
    color: var(--text-3);
}

.shard-artifact[b-09wc69tmo3] {
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 8px;
    font-size: 10.5px;
    font-family: var(--font-mono);
    white-space: pre-wrap;
    word-break: break-all;
    color: var(--text-2);
    max-height: 120px;
    overflow: auto;
    margin: 0;
}

.shard-log-details[b-09wc69tmo3] {
    margin-top: 3px;
}

.shard-log-summary[b-09wc69tmo3] {
    font-size: 10.5px;
    color: var(--text-3);
    cursor: pointer;
}

.shard-log[b-09wc69tmo3] {
    font-size: 10px;
    font-family: var(--font-mono);
    color: var(--text-3);
    white-space: pre-wrap;
    margin: 3px 0 0;
}

@media (max-width: 950px) {
    .page[b-09wc69tmo3] { height: calc(100vh - 54px); overflow: hidden; }
    .toolbar[b-09wc69tmo3] { flex-wrap: wrap; gap: 8px; padding: 10px 12px; }
    .toolbar .dcbtn[b-09wc69tmo3] { min-height: 40px; }
    .toolbar .dcbtn.primary[b-09wc69tmo3] { margin-left: auto; }
    .workspace[b-09wc69tmo3] { flex-direction: column; height: 100%; min-height: 0; gap: 0; }
    .file-tree[b-09wc69tmo3] { width: 100%; border-right: none; border-bottom: 1px solid var(--border); max-height: 180px; flex: none; }
    .editor-pane[b-09wc69tmo3] { flex: 1; min-height: 0; display: flex; flex-direction: column; }
    .editor-host[b-09wc69tmo3] { flex: 1; min-height: 0; height: 100%; }
    .results-panel[b-09wc69tmo3] { flex: none; }
}
/* /Components/Pages/Jobs.razor.rz.scp.css */
/* ── Page layout ─────────────────────────────────────────────── */
.jobs-page[b-2crgr2p28z] {
    padding: 20px 24px 40px;
    max-width: 1320px;
    margin: 0 auto;
}

.page-header[b-2crgr2p28z] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 18px;
}

.page-title[b-2crgr2p28z] {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
}

.status-message[b-2crgr2p28z] {
    margin-bottom: 12px;
    padding: 10px 14px;
    border-radius: 8px;
    background: var(--card);
    font-size: 12.5px;
    color: var(--text-2);
}

.empty-state[b-2crgr2p28z] {
    padding: 24px;
    color: var(--text-3);
    font-size: 13px;
    text-align: center;
}

/* ── Jobs list ───────────────────────────────────────────────── */
.jobs-list[b-2crgr2p28z] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.job-card[b-2crgr2p28z] {
    padding: 14px 16px;
    cursor: pointer;
}

.job-card-row[b-2crgr2p28z] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
}

.job-name[b-2crgr2p28z] {
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.job-desc[b-2crgr2p28z] {
    font-size: 12px;
    color: var(--text-3);
    margin-top: 3px;
}

.job-meta[b-2crgr2p28z] {
    display: flex;
    gap: 10px;
    margin-top: 6px;
    font-size: 11px;
    color: var(--text-3);
    font-family: var(--font-sans);
}

.job-actions[b-2crgr2p28z] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: none;
}

.brand-2-text[b-2crgr2p28z] {
    color: var(--brand-2);
}

/* ── Slide-out shell ─────────────────────────────────────────── */
.slide-620[b-2crgr2p28z] {
    width: 620px;
}

.mr-10[b-2crgr2p28z] {
    margin-right: 10px;
}

.job-tabs[b-2crgr2p28z] {
    margin: 0;
    padding: 0 18px;
    border-bottom: 1px solid var(--border);
}

.slide-body-scroll[b-2crgr2p28z] {
    flex: 1;
    overflow-y: auto;
}

.slide-body-col[b-2crgr2p28z] {
    flex: 1;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.slide-body-form[b-2crgr2p28z] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

/* ── OTel panel ──────────────────────────────────────────────── */
.otel-card[b-2crgr2p28z] {
    padding: 12px 16px;
    margin-bottom: 12px;
}

.otel-title[b-2crgr2p28z] {
    font-size: 11px;
    font-weight: 600;
    color: var(--text-3);
    letter-spacing: .06em;
    margin-bottom: 8px;
}

.otel-bars[b-2crgr2p28z] {
    display: flex;
    align-items: flex-end;
    gap: 4px;
    height: 44px;
}

.otel-bar[b-2crgr2p28z] {
    flex: 1;
    max-width: 14px;
    border-radius: 2px 2px 0 0;
}

.otel-legend[b-2crgr2p28z] {
    display: flex;
    gap: 14px;
    margin-top: 8px;
    font-size: 11px;
    color: var(--text-3);
}

/* ── Runs list & detail ──────────────────────────────────────── */
.empty-note[b-2crgr2p28z] {
    color: var(--text-3);
    font-size: 13px;
    padding: 14px 0;
}

.col-gap-8[b-2crgr2p28z] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.col-gap-6[b-2crgr2p28z] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.card-pad[b-2crgr2p28z] {
    padding: 12px 16px;
}

.run-row-head[b-2crgr2p28z] {
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
}

.status-badge-sm[b-2crgr2p28z] {
    font-size: 11px;
    font-weight: 600;
    padding: 3px 8px;
    border-radius: 5px;
}

.status-badge-lg[b-2crgr2p28z] {
    font-size: 12px;
    font-weight: 600;
    padding: 3px 9px;
    border-radius: 5px;
}

.shard-badge[b-2crgr2p28z] {
    font-size: 11px;
    padding: 2px 7px;
    border-radius: 4px;
}

.run-time[b-2crgr2p28z] {
    font-family: var(--font-sans);
    font-size: 11.5px;
    color: var(--text-2);
    flex: 1;
}

.meta-11[b-2crgr2p28z] {
    font-size: 11px;
    color: var(--text-3);
}

.meta-mono[b-2crgr2p28z] {
    font-size: 11px;
    color: var(--text-3);
    font-family: var(--font-sans);
}

.mb-12[b-2crgr2p28z] {
    margin-bottom: 12px;
}

.mb-14[b-2crgr2p28z] {
    margin-bottom: 14px;
}

.run-detail-head[b-2crgr2p28z] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
}

.snapshot-line[b-2crgr2p28z] {
    margin-bottom: 12px;
    font-size: 11px;
    color: var(--text-3);
}

.egress-flag[b-2crgr2p28z] {
    margin-left: 6px;
    color: var(--warn);
    font-weight: 600;
}

.outputs-card[b-2crgr2p28z] {
    padding: 12px 16px;
    margin-bottom: 14px;
}

.outputs-title[b-2crgr2p28z] {
    font-size: 12.5px;
    font-weight: 600;
    margin-bottom: 8px;
}

.output-row[b-2crgr2p28z] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.output-kind[b-2crgr2p28z] {
    font-size: 10.5px;
    padding: 1px 7px;
    border-radius: 4px;
    background: var(--bg-2);
    color: var(--text-3);
}

.output-link[b-2crgr2p28z] {
    font-size: 12.5px;
    color: var(--accent);
    text-decoration: none;
    flex: 1;
    min-width: 0;
}

.hint-10-5[b-2crgr2p28z] {
    font-size: 10.5px;
    color: var(--text-3);
}

.shard-head[b-2crgr2p28z] {
    font-size: 12.5px;
    font-weight: 600;
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.artifact-pre[b-2crgr2p28z] {
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 10px;
    font-size: 11px;
    font-family: var(--font-mono);
    overflow-x: auto;
    white-space: pre-wrap;
    word-break: break-all;
    color: var(--text-2);
    max-height: 240px;
    overflow-y: auto;
}

.artifact-pre-lg[b-2crgr2p28z] {
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 10px;
    font-size: 11px;
    font-family: var(--font-mono);
    overflow-x: auto;
    white-space: pre-wrap;
    word-break: break-all;
    color: var(--text-2);
    max-height: 300px;
    overflow-y: auto;
}

.chart-label[b-2crgr2p28z] {
    font-size: 11px;
    color: var(--text-3);
    margin-top: 8px;
}

.text-3[b-2crgr2p28z] {
    color: var(--text-3);
}

.text-3-12[b-2crgr2p28z] {
    font-size: 12px;
    color: var(--text-3);
}

.artifact-links[b-2crgr2p28z] {
    margin-top: 6px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.artifact-dl[b-2crgr2p28z] {
    padding: 3px 10px;
    font-size: 11px;
    text-decoration: none;
}

.mt-4[b-2crgr2p28z] {
    margin-top: 4px;
}

.log-summary[b-2crgr2p28z] {
    font-size: 11px;
    color: var(--text-3);
    cursor: pointer;
}

.log-pre[b-2crgr2p28z] {
    font-size: 10.5px;
    font-family: var(--font-mono);
    color: var(--text-3);
    white-space: pre-wrap;
    margin-top: 4px;
}

.reduce-section[b-2crgr2p28z] {
    border-top: 1px solid var(--border);
    padding-top: 12px;
    margin-top: 4px;
}

/* ── Triggers tab ────────────────────────────────────────────── */
.self-start[b-2crgr2p28z] {
    align-self: flex-start;
}

.row-center-8[b-2crgr2p28z] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.title-14[b-2crgr2p28z] {
    font-size: 14px;
    font-weight: 600;
}

.title-13[b-2crgr2p28z] {
    font-size: 13px;
    font-weight: 600;
}

.subtitle-11-5[b-2crgr2p28z] {
    font-size: 11.5px;
    color: var(--text-3);
    margin-top: 3px;
}

.flex-1[b-2crgr2p28z] {
    flex: 1;
}

.flex-fill-min[b-2crgr2p28z] {
    flex: 1;
    min-width: 0;
}

.min-w-0[b-2crgr2p28z] {
    min-width: 0;
}

.text-bad[b-2crgr2p28z] {
    color: var(--bad);
}

.trigger-detail-card[b-2crgr2p28z] {
    padding: 12px 16px;
    font-size: 12px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.section-label-mt4[b-2crgr2p28z] {
    font-size: 12.5px;
    font-weight: 600;
    margin-top: 4px;
}

.run-row[b-2crgr2p28z] {
    padding: 10px 14px;
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
}

.trigger-row[b-2crgr2p28z] {
    padding: 12px 16px;
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
}

.trigger-kind[b-2crgr2p28z] {
    font-size: 11px;
    color: var(--text-3);
    font-weight: 400;
}

.trigger-meta[b-2crgr2p28z] {
    font-size: 11px;
    color: var(--text-3);
    font-family: var(--font-sans);
    margin-top: 2px;
}

.ml-8[b-2crgr2p28z] {
    margin-left: 8px;
}

.add-trigger-card[b-2crgr2p28z] {
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.subhead[b-2crgr2p28z] {
    font-size: 12.5px;
    font-weight: 600;
}

.trigger-form-row[b-2crgr2p28z] {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: flex-end;
}

.field-150[b-2crgr2p28z] {
    flex: 1;
    min-width: 150px;
}

.field-label[b-2crgr2p28z] {
    font-size: 12px;
    color: var(--text-3);
    display: block;
    margin-bottom: 4px;
}

.w-full[b-2crgr2p28z] {
    width: 100%;
}

.error-12[b-2crgr2p28z] {
    color: var(--bad);
    font-size: 12px;
}

/* ── Details form ────────────────────────────────────────────── */
.row-gap-10[b-2crgr2p28z] {
    display: flex;
    gap: 10px;
}

.workload-head[b-2crgr2p28z] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.flex-1-4[b-2crgr2p28z] {
    flex: 1.4;
}

.input-sans-12[b-2crgr2p28z] {
    font-family: var(--font-sans);
    font-size: 12px;
}

.font-sans[b-2crgr2p28z] {
    font-family: var(--font-sans);
}

.open-editor-btn[b-2crgr2p28z] {
    align-self: flex-start;
    display: flex;
    align-items: center;
    gap: 7px;
}

.textarea-sans[b-2crgr2p28z] {
    font-family: var(--font-sans);
    font-size: 12px;
    resize: vertical;
}

.files-note[b-2crgr2p28z] {
    margin-top: 6px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    font-size: 11.5px;
    color: var(--text-3);
}

.file-chip[b-2crgr2p28z] {
    font-family: var(--font-sans);
    background: var(--card-2);
    border-radius: 5px;
    padding: 1px 7px;
}

.payload-mode-toggle[b-2crgr2p28z] {
    margin-left: 8px;
    display: inline-flex;
    gap: 4px;
}

.mode-btn[b-2crgr2p28z] {
    padding: 1px 8px;
    font-size: 10.5px;
}

.ml-5[b-2crgr2p28z] {
    margin-left: 5px;
}

.param-row[b-2crgr2p28z] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
}

.param-name-label[b-2crgr2p28z] {
    width: 150px;
    flex: none;
    font-size: 12px;
    color: var(--text-2);
}

.row-between[b-2crgr2p28z] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.btn-2-9[b-2crgr2p28z] {
    padding: 2px 9px;
    font-size: 11px;
}

.param-list[b-2crgr2p28z] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 4px;
}

.param-edit-row[b-2crgr2p28z] {
    display: flex;
    gap: 6px;
    align-items: center;
    flex-wrap: wrap;
}

.param-name-input[b-2crgr2p28z] {
    width: 130px;
    font-size: 12px;
    font-family: var(--font-sans);
}

.param-label-input[b-2crgr2p28z] {
    flex: 1;
    min-width: 120px;
    font-size: 12px;
}

.param-type-select[b-2crgr2p28z] {
    width: 104px;
    font-size: 12px;
}

.param-options-input[b-2crgr2p28z] {
    flex: 1;
    min-width: 140px;
    font-size: 12px;
    font-family: var(--font-sans);
}

.param-required-label[b-2crgr2p28z] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11.5px;
    color: var(--text-2);
    cursor: pointer;
}

.accent-brand[b-2crgr2p28z] {
    accent-color: var(--brand-2);
}

.btn-2-8[b-2crgr2p28z] {
    padding: 2px 8px;
}

.vault-box[b-2crgr2p28z] {
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 10px 14px;
}

.vault-head[b-2crgr2p28z] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 6px;
}

.link-btn[b-2crgr2p28z] {
    appearance: none;
    border: none;
    background: none;
    color: var(--brand-2);
    padding: 0;
    font-size: 12px;
    cursor: pointer;
    font-family: inherit;
}

.chip-wrap[b-2crgr2p28z] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.secret-chip[b-2crgr2p28z] {
    font-family: var(--font-sans);
    font-size: 11.5px;
    background: var(--card-2);
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 2px 8px;
}

.mt-6[b-2crgr2p28z] {
    margin-top: 6px;
}

.text-3-11-5[b-2crgr2p28z] {
    font-size: 11.5px;
    color: var(--text-3);
}

.egress-label[b-2crgr2p28z] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12.5px;
    color: var(--text-2);
    cursor: pointer;
    user-select: none;
}

.checkbox-16[b-2crgr2p28z] {
    width: 16px;
    height: 16px;
    accent-color: var(--brand-2);
    cursor: pointer;
}

.checkbox-15[b-2crgr2p28z] {
    width: 15px;
    height: 15px;
    accent-color: var(--brand-2);
    cursor: pointer;
}

.mw-260[b-2crgr2p28z] {
    max-width: 260px;
}

.mw-280-mt8[b-2crgr2p28z] {
    max-width: 280px;
    margin-top: 8px;
}

.actions-wrap[b-2crgr2p28z] {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 2px;
}

.action-label[b-2crgr2p28z] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12.5px;
    cursor: pointer;
    user-select: none;
}

.foot-error[b-2crgr2p28z] {
    flex: 1;
    color: var(--bad);
    font-size: 12px;
    min-width: 0;
}

/* ── Run-input modal ─────────────────────────────────────────── */
.modal-440[b-2crgr2p28z] {
    width: 440px;
}

.prompt-error[b-2crgr2p28z] {
    color: var(--bad);
    font-size: 12px;
    padding: 8px 10px;
    background: var(--bad-bg);
    border-radius: 6px;
}

@media (max-width: 950px) {
    .jobs-page[b-2crgr2p28z] { padding: 16px 14px 28px; }
    .page-header[b-2crgr2p28z] { flex-wrap: wrap; gap: 12px; }
    .page-header .dcbtn.primary[b-2crgr2p28z] { width: 100%; min-height: 40px; }
    .job-card-row[b-2crgr2p28z] { flex-wrap: wrap; gap: 12px; }
    .job-actions[b-2crgr2p28z] { flex-wrap: wrap; width: 100%; }
    .job-actions .dcbtn[b-2crgr2p28z] { flex: 1; min-height: 40px; }
}
/* /Components/Pages/LocalitySettings.razor.rz.scp.css */
.page[b-dxtonf3r42] { padding:24px; max-width:640px; }
.title[b-dxtonf3r42] { font-size:18px; font-weight:600; margin:0 0 4px; }
.intro[b-dxtonf3r42] { font-size:12px; color:var(--text-3); margin-bottom:18px; }
.card[b-dxtonf3r42] { padding:18px; display:flex; flex-direction:column; gap:12px; }
.tz-field[b-dxtonf3r42] { max-width:340px; }
.code-gap[b-dxtonf3r42] { margin-left:4px; }
.tz-input[b-dxtonf3r42] { font-family:var(--font-sans); }
.now-row[b-dxtonf3r42] { font-size:12px; color:var(--text-2); }
.mono[b-dxtonf3r42] { font-family:var(--font-sans); }
.mono-accent[b-dxtonf3r42] { font-family:var(--font-sans); color:var(--brand-2); }
.actions[b-dxtonf3r42] { display:flex; gap:10px; align-items:center; }
.msg[b-dxtonf3r42] { font-size:12px; color:var(--text-3); }
/* /Components/Pages/Login.razor.rz.scp.css */
.auth-card[b-3gx6j8dfls] {
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.auth-brand[b-3gx6j8dfls] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.auth-mark[b-3gx6j8dfls] {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    background: var(--brand);
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none;
}

.auth-brand-name[b-3gx6j8dfls] {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-2);
    letter-spacing: -0.01em;
}

.auth-title[b-3gx6j8dfls] {
    font-size: 19px;
    font-weight: 600;
    margin: 4px 0 0;
}

.auth-sub[b-3gx6j8dfls] {
    font-size: 12.5px;
    color: var(--text-3);
    line-height: 1.5;
    margin: 0;
}

.auth-form[b-3gx6j8dfls] {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.auth-error[b-3gx6j8dfls] {
    font-size: 12.5px;
    color: var(--bad);
    background: var(--bad-bg);
    border: 1px solid var(--bad);
    border-radius: 7px;
    padding: 8px 11px;
    line-height: 1.5;
}

.auth-submit[b-3gx6j8dfls] {
    width: 100%;
    box-sizing: border-box;
    padding: 10px 12px;
    font-size: 13px;
    margin-top: 2px;
    text-align: center;
    min-height: 40px;
}
/* /Components/Pages/MenuSettings.razor.rz.scp.css */
.page[b-dmeyfjqfet] { padding: 20px 24px 40px; max-width: 720px; }
.page-title[b-dmeyfjqfet] { font-size: 18px; font-weight: 600; margin: 0 0 4px; }
.page-sub[b-dmeyfjqfet] { font-size: 12.5px; color: var(--text-3); margin-bottom: 16px; max-width: 720px; line-height: 1.45; }
.message[b-dmeyfjqfet] { margin-bottom: 12px; padding: 10px 14px; border-radius: 8px; background: var(--brand-bg); color: var(--brand-2); font-size: 12.5px; }
.panel[b-dmeyfjqfet] { padding: 14px 16px; }
.panel-head[b-dmeyfjqfet] { display: flex; align-items: center; justify-content: space-between; margin-bottom: 12px; }
.panel-title[b-dmeyfjqfet] { font-size: 13px; font-weight: 600; }
.editor[b-dmeyfjqfet] { display: flex; flex-direction: column; gap: 8px; }
.row[b-dmeyfjqfet] { display: flex; align-items: flex-start; gap: 8px; padding: 8px; border-radius: 8px; border: 1px solid var(--border); background: var(--card-2); }
.row.muted[b-dmeyfjqfet] { opacity: 0.55; }
.row-move[b-dmeyfjqfet] { display: flex; flex-direction: column; gap: 2px; }
.move[b-dmeyfjqfet] { padding: 2px 8px; font-size: 11px; }
.row-main[b-dmeyfjqfet] { flex: 1; display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.id[b-dmeyfjqfet] { font-size: 12px; font-weight: 600; }
.code[b-dmeyfjqfet] { font-size: 10px; color: var(--text-3); font-weight: 400; font-family: var(--font-sans); }
.section[b-dmeyfjqfet] { font-size: 12px; }
.vis[b-dmeyfjqfet] { font-size: 11.5px; color: var(--text-2); display: flex; align-items: center; gap: 4px; white-space: nowrap; padding-top: 4px; }
.actions[b-dmeyfjqfet] { margin-top: 16px; }
/* /Components/Pages/Observability.razor.rz.scp.css */
.page[b-gahzmvchpa] {
    padding: 20px 24px 40px;
    max-width: 1320px;
    margin: 0 auto;
}

.page-head[b-gahzmvchpa] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 14px;
}

.page-title[b-gahzmvchpa] {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
}

.page-sub[b-gahzmvchpa] {
    font-size: 12px;
    color: var(--text-3);
    margin-top: 3px;
}

.tabs-strip[b-gahzmvchpa] {
    margin-bottom: 16px;
}

.message-banner[b-gahzmvchpa] {
    margin-bottom: 12px;
    padding: 10px 14px;
    border-radius: 8px;
    background: var(--card);
    font-size: 12.5px;
    color: var(--text-2);
}

.empty-card[b-gahzmvchpa] {
    padding: 24px;
    color: var(--text-3);
    font-size: 13px;
    text-align: center;
}

.run-list[b-gahzmvchpa] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.run-row[b-gahzmvchpa] {
    padding: 12px 16px;
    cursor: pointer;
}

.run-row-inner[b-gahzmvchpa] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.status-pill[b-gahzmvchpa] {
    font-size: 11px;
    font-weight: 600;
    padding: 3px 8px;
    border-radius: 5px;
    flex: none;
}

.flex-fill[b-gahzmvchpa] {
    flex: 1;
    min-width: 0;
}

.job-name[b-gahzmvchpa] {
    font-size: 13px;
    font-weight: 600;
}

.project-name[b-gahzmvchpa] {
    font-size: 11.5px;
    color: var(--text-3);
    margin-left: 8px;
}

.note-sm[b-gahzmvchpa] {
    font-size: 11px;
    color: var(--text-3);
}

.run-time[b-gahzmvchpa] {
    font-family: var(--font-sans);
    font-size: 11.5px;
    color: var(--text-2);
}

.run-duration[b-gahzmvchpa] {
    font-size: 11px;
    color: var(--text-3);
    font-family: var(--font-sans);
    width: 52px;
    text-align: right;
}

.slide-wide[b-gahzmvchpa] {
    width: 620px;
}

.slide-title[b-gahzmvchpa] {
    font-size: 14px;
    font-weight: 600;
}

.slide-sub[b-gahzmvchpa] {
    font-size: 11.5px;
    color: var(--text-3);
    margin-top: 3px;
}

.btn-replay[b-gahzmvchpa] {
    margin-right: 8px;
}

.btn-open-project[b-gahzmvchpa] {
    margin-right: 10px;
}

.slide-body-scroll[b-gahzmvchpa] {
    flex: 1;
    overflow-y: auto;
}

.status-line[b-gahzmvchpa] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}

.status-pill-lg[b-gahzmvchpa] {
    font-size: 12px;
    font-weight: 600;
    padding: 3px 9px;
    border-radius: 5px;
}

.panel-card[b-gahzmvchpa] {
    padding: 12px 16px;
    margin-bottom: 14px;
}

.panel-title[b-gahzmvchpa] {
    font-size: 12.5px;
    font-weight: 600;
    margin-bottom: 8px;
}

.output-list[b-gahzmvchpa] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.output-row[b-gahzmvchpa] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.kind-tag[b-gahzmvchpa] {
    font-size: 10.5px;
    padding: 1px 7px;
    border-radius: 4px;
    background: var(--bg-2);
    color: var(--text-3);
}

.output-link[b-gahzmvchpa] {
    font-size: 12.5px;
    color: var(--accent);
    text-decoration: none;
    flex: 1;
    min-width: 0;
}

.size-note[b-gahzmvchpa] {
    font-size: 10.5px;
    color: var(--text-3);
}

.panel-head[b-gahzmvchpa] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
}

.card-title[b-gahzmvchpa] {
    font-size: 12.5px;
    font-weight: 600;
}

.shard-chips[b-gahzmvchpa] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.shard-chip[b-gahzmvchpa] {
    font-size: 10.5px;
    padding: 2px 8px;
    border-radius: 4px;
    background: var(--bg-2);
    color: var(--text-2);
}

.shard-block[b-gahzmvchpa] {
    margin-bottom: 14px;
}

.shard-title[b-gahzmvchpa] {
    font-size: 12.5px;
    font-weight: 600;
    margin-bottom: 6px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.outcome-pill[b-gahzmvchpa] {
    font-size: 11px;
    padding: 2px 7px;
    border-radius: 4px;
}

.shard-json[b-gahzmvchpa] {
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 10px;
    font-size: 11px;
    font-family: var(--font-mono);
    overflow-x: auto;
    white-space: pre-wrap;
    word-break: break-all;
    color: var(--text-2);
    max-height: 240px;
    overflow-y: auto;
}

.chart-label[b-gahzmvchpa] {
    font-size: 11px;
    color: var(--text-3);
    margin-top: 8px;
}

.text-dim[b-gahzmvchpa] {
    color: var(--text-3);
}

.artifact-dl-row[b-gahzmvchpa] {
    margin-top: 6px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.dl-btn[b-gahzmvchpa] {
    padding: 3px 10px;
    font-size: 11px;
    text-decoration: none;
}

.log-details[b-gahzmvchpa] {
    margin-top: 4px;
}

.log-summary[b-gahzmvchpa] {
    font-size: 11px;
    color: var(--text-3);
    cursor: pointer;
}

.log-pre[b-gahzmvchpa] {
    font-size: 10.5px;
    font-family: var(--font-mono);
    color: var(--text-3);
    white-space: pre-wrap;
    margin-top: 4px;
    max-height: 320px;
    overflow-y: auto;
}

.reduce-block[b-gahzmvchpa] {
    border-top: 1px solid var(--border);
    padding-top: 12px;
    margin-top: 4px;
}

.reduce-json[b-gahzmvchpa] {
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 10px;
    font-size: 11px;
    font-family: var(--font-mono);
    overflow-x: auto;
    white-space: pre-wrap;
    word-break: break-all;
    color: var(--text-2);
    max-height: 300px;
    overflow-y: auto;
}

.trace-waterfall[b-gahzmvchpa] { display:flex; flex-direction:column; gap:8px; margin-top:8px }
.trace-span[b-gahzmvchpa] { display:flex; flex-direction:column; gap:3px }
.trace-span-head[b-gahzmvchpa] { font-size:12px; font-family:var(--font-sans); font-weight:600 }
.trace-id[b-gahzmvchpa] { font-size:10px; color:var(--text-3); font-weight:400 }
.trace-bar-track[b-gahzmvchpa] { height:8px; border-radius:4px; background:var(--card-2); overflow:hidden }
.trace-bar-fill[b-gahzmvchpa] { height:100%; background:var(--brand-2); border-radius:4px }
.trace-tags[b-gahzmvchpa] { display:flex; flex-wrap:wrap; gap:4px }
.trace-tag[b-gahzmvchpa] { font-size:10px; padding:1px 6px; border-radius:4px; background:var(--card-2); color:var(--text-3); font-family:var(--font-sans) }

/* /Components/Pages/Onboarding.razor.rz.scp.css */
.page[b-cq0pgf6q0h] {
    padding: 24px 24px 40px;
    max-width: 880px;
    margin: 0 auto;
}

.intro[b-cq0pgf6q0h] {
    margin-bottom: 20px;
}

.page-title[b-cq0pgf6q0h] {
    font-size: 15px;
    font-weight: 600;
    margin: 0 0 5px;
}

.page-sub[b-cq0pgf6q0h] {
    font-size: 12.5px;
    color: var(--text-3);
}

.step-card[b-cq0pgf6q0h] {
    padding: 0;
    overflow: hidden;
    margin-bottom: 14px;
}

.step-head[b-cq0pgf6q0h] {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 15px 18px;
    border-bottom: 1px solid var(--border);
}

.step-title[b-cq0pgf6q0h] {
    font-size: 13.5px;
    font-weight: 600;
}

.step-desc[b-cq0pgf6q0h] {
    font-size: 11.5px;
    color: var(--text-3);
}

.step-body[b-cq0pgf6q0h] {
    padding: 16px 18px;
}

.step-body-text[b-cq0pgf6q0h] {
    padding: 14px 18px;
    font-size: 12px;
    color: var(--text-2);
    line-height: 1.7;
}

.endpoint-label[b-cq0pgf6q0h] {
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: .5px;
    color: var(--text-3);
    text-transform: uppercase;
    margin-bottom: 7px;
}

.code-block[b-cq0pgf6q0h] {
    display: block;
    font-family: var(--font-mono);
    font-size: 13px;
    color: var(--text);
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 11px 13px;
    overflow: auto;
    margin-bottom: 14px;
}

.cmd-label[b-cq0pgf6q0h] {
    font-size: 12px;
    font-weight: 600;
    margin-bottom: 6px;
}

.code-cmd[b-cq0pgf6q0h] {
    display: block;
    font-family: var(--font-mono);
    font-size: 12.5px;
    color: var(--text);
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 11px 13px;
    white-space: pre-wrap;
}

.mcp-note[b-cq0pgf6q0h] {
    font-size: 12px;
    color: var(--text-2);
    margin-top: 11px;
    line-height: 1.6;
}

.flex-1[b-cq0pgf6q0h] {
    flex: 1;
}

.step-list[b-cq0pgf6q0h] {
    margin: 6px 0 0;
    padding-left: 18px;
}

.auth-card[b-cq0pgf6q0h] {
    padding: 16px 20px;
}

.auth-title[b-cq0pgf6q0h] {
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 8px;
}

.auth-list[b-cq0pgf6q0h] {
    margin: 0;
    padding-left: 18px;
    font-size: 12.5px;
    color: var(--text-2);
    line-height: 1.7;
}
/* /Components/Pages/Overview.razor.rz.scp.css */
.page[b-yu9awzy3bj] {
    padding: 24px 24px 40px;
    max-width: 1320px;
    margin: 0 auto;
}

.stat-strip[b-yu9awzy3bj] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 22px;
}

.stat-cell[b-yu9awzy3bj] {
    padding: 15px 16px;
    border-right: 1px solid var(--border);
}

.stat-label[b-yu9awzy3bj] {
    font-size: 10.5px;
    color: var(--text-3);
    text-transform: uppercase;
    letter-spacing: .5px;
    font-weight: 600;
    margin-bottom: 9px;
}

.stat-value[b-yu9awzy3bj] {
    font-size: 25px;
    font-weight: 600;
    letter-spacing: -.6px;
    font-family: var(--font-sans);
}

.stat-sub[b-yu9awzy3bj] {
    font-size: 11px;
    color: var(--text-3);
    margin-top: 3px;
}

.focus-card[b-yu9awzy3bj] {
    overflow: hidden;
    margin-bottom: 22px;
}

.focus-head[b-yu9awzy3bj] {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 13px 16px;
    border-bottom: 1px solid var(--border);
}

.section-title[b-yu9awzy3bj] {
    font-size: 13px;
    font-weight: 600;
}

.section-hint[b-yu9awzy3bj] {
    font-size: 11px;
    color: var(--text-3);
}

.focus-count[b-yu9awzy3bj] {
    margin-left: auto;
    font-size: 11px;
    color: var(--text-3);
    font-family: var(--font-sans);
    background: var(--card-2);
    border: 1px solid var(--border);
    padding: 1px 7px;
    border-radius: 20px;
}

.focus-skeleton[b-yu9awzy3bj] {
    padding: 8px 16px;
}

.projects-head[b-yu9awzy3bj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 13px;
}

.projects-title-group[b-yu9awzy3bj] {
    display: flex;
    align-items: center;
    gap: 9px;
}

.projects-title[b-yu9awzy3bj] {
    font-size: 14px;
    font-weight: 600;
    margin: 0;
    letter-spacing: -.2px;
}

.projects-count[b-yu9awzy3bj] {
    font-size: 11px;
    color: var(--text-3);
    font-family: var(--font-sans);
    background: var(--card);
    border: 1px solid var(--border);
    padding: 1px 7px;
    border-radius: 20px;
}

.projects-actions[b-yu9awzy3bj] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.empty-card[b-yu9awzy3bj] {
    padding: 30px;
    text-align: center;
    color: var(--text-3);
}

.projects-grid[b-yu9awzy3bj] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
    gap: 14px;
}

.project-card[b-yu9awzy3bj] {
    padding: 16px;
    cursor: pointer;
    display: flex;
    flex-direction: column;
}

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

.min-w-0[b-yu9awzy3bj] {
    min-width: 0;
}

.project-name-row[b-yu9awzy3bj] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.lang-dot[b-yu9awzy3bj] {
    width: 9px;
    height: 9px;
    border-radius: 2.5px;
    flex: none;
}

.project-name[b-yu9awzy3bj] {
    font-size: 14.5px;
    font-weight: 600;
    letter-spacing: -.2px;
}

.project-path[b-yu9awzy3bj] {
    font-family: var(--font-sans);
    font-size: 11px;
    color: var(--text-3);
    margin-top: 4px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.status-badge[b-yu9awzy3bj] {
    display: flex;
    align-items: center;
    gap: 5px;
    flex: none;
    padding: 3px 8px 3px 7px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 600;
    color: var(--text-2);
    background: var(--card-2);
}

.status-dot[b-yu9awzy3bj] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--text-3);
}

.map-row[b-yu9awzy3bj] {
    display: flex;
    justify-content: flex-end;
    margin-top: 16px;
}

.minimap[b-yu9awzy3bj] {
    width: 96px;
    height: 72px;
    flex: none;
    border-radius: 8px;
    background: var(--card-2);
    border: 1px solid var(--border);
    overflow: hidden;
    position: relative;
}

.minimap-badge[b-yu9awzy3bj] {
    position: absolute;
    bottom: 4px;
    right: 5px;
    font-family: var(--font-sans);
    font-size: 8.5px;
    color: var(--text-3);
    background: var(--card-2);
    padding: 0 3px;
    border-radius: 3px;
}

.project-foot[b-yu9awzy3bj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 15px;
    padding-top: 13px;
    border-top: 1px solid var(--border);
}

.foot-graphified[b-yu9awzy3bj] {
    font-size: 11.5px;
    color: var(--text-3);
}

.foot-stats[b-yu9awzy3bj] {
    display: flex;
    align-items: center;
    gap: 13px;
    font-family: var(--font-sans);
    font-size: 11px;
    color: var(--text-3);
}

.foot-sep[b-yu9awzy3bj] {
    color: var(--border-2);
}
/* /Components/Pages/ProjectAnalytics.razor.rz.scp.css */
.page[b-pk1kaqwf3q] {
    padding: 20px 24px 40px;
    max-width: 1320px;
    margin: 0 auto;
}

.page-head[b-pk1kaqwf3q] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
}

.page-title[b-pk1kaqwf3q] {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
}

.page-sub[b-pk1kaqwf3q] {
    font-size: 11.5px;
    color: var(--text-3);
}

.error-msg[b-pk1kaqwf3q] {
    font-size: 12px;
    color: var(--bad);
    margin-top: 8px;
}

.section-head[b-pk1kaqwf3q] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 18px 0 4px;
}

.section-title[b-pk1kaqwf3q] {
    font-size: 13px;
    font-weight: 600;
}

.btn-sql[b-pk1kaqwf3q] {
    padding: 4px 11px;
    font-size: 11.5px;
}

.sql-editor[b-pk1kaqwf3q] {
    padding: 14px 16px;
    margin-bottom: 12px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sql-name-input[b-pk1kaqwf3q] {
    max-width: 320px;
}

.sql-monaco[b-pk1kaqwf3q] {
    height: 120px;
    border: 1px solid var(--border);
    border-radius: 7px;
    overflow: hidden;
}

.sql-textarea[b-pk1kaqwf3q] {
    width: 100%;
    padding: 9px 11px;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 7px;
    color: var(--text);
    font-size: 12px;
    font-family: var(--font-sans);
    resize: vertical;
}

.sql-actions[b-pk1kaqwf3q] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.sql-type-select[b-pk1kaqwf3q] {
    width: 90px;
    font-size: 12px;
}

.btn-run-save[b-pk1kaqwf3q] {
    padding: 5px 14px;
    font-size: 12px;
}

.hint-flush[b-pk1kaqwf3q] {
    margin: 0;
}

.error-inline[b-pk1kaqwf3q] {
    color: var(--bad);
    font-size: 12px;
}

.sql-chart-grid[b-pk1kaqwf3q] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(480px, 1fr));
    gap: 14px;
    margin-bottom: 6px;
}

.chart-card[b-pk1kaqwf3q] {
    padding: 12px 16px;
}

.chart-card-head[b-pk1kaqwf3q] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
}

.chart-name[b-pk1kaqwf3q] {
    font-size: 12.5px;
    font-weight: 600;
    font-family: var(--font-sans);
}

.sql-badge[b-pk1kaqwf3q] {
    font-size: 10px;
    padding: 1px 7px;
    border-radius: 5px;
    background: var(--brand-bg);
    color: var(--brand-2);
}

.type-switch[b-pk1kaqwf3q] {
    display: flex;
    gap: 2px;
    margin-left: 4px;
}

.btn-type[b-pk1kaqwf3q] {
    padding: 2px 8px;
    font-size: 10.5px;
}

.spacer[b-pk1kaqwf3q] {
    flex: 1;
}

.chart-time[b-pk1kaqwf3q] {
    font-size: 10.5px;
    color: var(--text-3);
}

.btn-sm[b-pk1kaqwf3q] {
    padding: 3px 10px;
    font-size: 11px;
}

.btn-sm-danger[b-pk1kaqwf3q] {
    padding: 3px 10px;
    font-size: 11px;
    color: var(--bad);
}

.chart-canvas-box[b-pk1kaqwf3q] {
    height: 340px;
    padding: 14px 10px 10px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: var(--card);
}

.subsection-title[b-pk1kaqwf3q] {
    font-size: 13px;
    font-weight: 600;
    margin: 18px 0 4px;
}

.skeleton-wrap[b-pk1kaqwf3q] {
    margin-top: 14px;
}

.empty-card[b-pk1kaqwf3q] {
    padding: 18px;
    margin-top: 14px;
    font-size: 12.5px;
    color: var(--text-3);
    line-height: 1.6;
}

.link-accent[b-pk1kaqwf3q] {
    color: var(--accent);
}

.table-chart-grid[b-pk1kaqwf3q] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(480px, 1fr));
    gap: 14px;
    margin-top: 14px;
}

.status-drawing[b-pk1kaqwf3q] {
    font-size: 11px;
    color: var(--warn);
}

.redraw-row[b-pk1kaqwf3q] {
    display: flex;
    gap: 8px;
    margin-bottom: 8px;
}

.redraw-input[b-pk1kaqwf3q] {
    flex: 1;
    padding: 6px 10px;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 7px;
    color: var(--text);
    font-size: 12px;
}

.btn-go[b-pk1kaqwf3q] {
    padding: 4px 12px;
    font-size: 11.5px;
}

.btn-cancel[b-pk1kaqwf3q] {
    padding: 4px 10px;
    font-size: 11.5px;
}

.chart-iframe[b-pk1kaqwf3q] {
    width: 100%;
    height: 340px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: var(--card);
}

.chart-empty[b-pk1kaqwf3q] {
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px dashed var(--border);
    border-radius: 8px;
    font-size: 12px;
    color: var(--text-3);
}
/* /Components/Pages/ProjectData.razor.rz.scp.css */
.page[b-0easnjoqkn] {
    padding: 20px 24px;
    max-width: 1320px;
    margin: 0 auto;
    /* Supabase-style: the page fills the layout's scroll area and never scrolls itself —
       only the table menu and the rows box scroll, the SQL editor stays put. */
    height: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.head-row[b-0easnjoqkn] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 6px;
    flex: none;
    flex-wrap: wrap;
    gap: 4px;
}

.head-title[b-0easnjoqkn] {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
}

.head-sub[b-0easnjoqkn] {
    font-size: 11.5px;
    color: var(--text-3);
}

.monaco-lite-note[b-0easnjoqkn] {
    font-size: 11px;
    color: var(--warn);
    margin-bottom: 6px;
    flex: none;
}

.cols[b-0easnjoqkn] {
    display: flex;
    gap: 14px;
    margin-top: 12px;
    flex: 1;
    min-height: 0;
}

.tables-col[b-0easnjoqkn] {
    width: 320px;
    flex: none;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.tables-list[b-0easnjoqkn] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    padding-right: 2px;
}

.tables-head[b-0easnjoqkn] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
}

.col-label[b-0easnjoqkn] {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: var(--text-3);
}

.btn-refresh[b-0easnjoqkn] {
    padding: 2px 8px;
    font-size: 11px;
}

.new-btns[b-0easnjoqkn] {
    display: flex;
    gap: 6px;
    margin-bottom: 6px;
}

.new-btn[b-0easnjoqkn] {
    flex: 1;
    font-size: 12px;
}

.import-csv-label[b-0easnjoqkn] {
    display: block;
    text-align: center;
    font-size: 12px;
    margin-bottom: 10px;
    cursor: pointer;
}

.csv-error[b-0easnjoqkn] {
    font-size: 11px;
    color: var(--bad);
    margin-bottom: 8px;
}

.empty-tables[b-0easnjoqkn] {
    font-size: 12px;
    color: var(--text-3);
    line-height: 1.5;
    padding: 14px;
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 12px;
    margin-bottom: 10px;
}

.tables-grid[b-0easnjoqkn] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 10px;
}

.table-tile[b-0easnjoqkn] {
    display: flex;
    flex-direction: column;
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
    transition: border-color .12s, box-shadow .12s, transform .12s;
}

.table-tile:hover[b-0easnjoqkn] {
    border-color: var(--border-2);
    box-shadow: var(--shadow);
    transform: translateY(-1px);
}

.tile-main[b-0easnjoqkn] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding: 14px;
    background: transparent;
    border: none;
    cursor: pointer;
    text-align: left;
    width: 100%;
    color: inherit;
    font-family: inherit;
}

.tile-main:hover[b-0easnjoqkn] {
    background: var(--hover);
}

.tile-icon[b-0easnjoqkn] {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 700;
    color: var(--text-2);
    background: var(--card-2);
    border: 1px solid var(--border);
    flex: none;
}

.tile-info[b-0easnjoqkn] {
    min-width: 0;
    width: 100%;
}

.tile-name[b-0easnjoqkn] {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 4px;
}

.tile-meta[b-0easnjoqkn] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    font-size: 10px;
    color: var(--text-3);
}

.tag-view[b-0easnjoqkn] {
    border: 1px solid var(--brand-2);
    color: var(--brand-2);
    border-radius: 4px;
    padding: 1px 5px;
}

.tag-readonly[b-0easnjoqkn] {
    border: 1px solid var(--border);
    color: var(--text-3);
    border-radius: 4px;
    padding: 1px 5px;
}

.tile-rows[b-0easnjoqkn] {
    font-family: var(--font-sans);
}

.tile-actions[b-0easnjoqkn] {
    display: flex;
    gap: 0;
    border-top: 1px solid var(--border);
    background: var(--card);
}

.tile-btn[b-0easnjoqkn] {
    flex: 1;
    appearance: none;
    background: transparent;
    border: none;
    border-right: 1px solid var(--border);
    color: var(--text-3);
    cursor: pointer;
    font-size: 10px;
    font-family: inherit;
    font-weight: 500;
    padding: 7px 0;
    text-align: center;
    transition: color .12s, background .12s;
}

.tile-btn:last-child[b-0easnjoqkn] {
    border-right: none;
}

.tile-btn:hover[b-0easnjoqkn] {
    color: var(--text);
    background: var(--hover);
}

.tile-btn-bad[b-0easnjoqkn] {
    color: var(--bad);
}

.tile-btn-bad:hover[b-0easnjoqkn] {
    background: var(--bad-bg);
}

.rename-row[b-0easnjoqkn] {
    display: flex;
    gap: 6px;
    padding: 8px;
    background: var(--card-2);
    border-top: 1px solid var(--border);
}

.rename-input[b-0easnjoqkn] {
    flex: 1;
    min-width: 0;
    padding: 4px 7px;
    font-size: 11.5px;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 5px;
    color: var(--text);
    font-family: var(--font-sans);
}

.btn-sm[b-0easnjoqkn] {
    padding: 3px 8px;
    font-size: 11px;
}

.drop-row[b-0easnjoqkn] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px;
    font-size: 11px;
    color: var(--bad);
    background: var(--bad-bg);
    border-top: 1px solid var(--border);
}

.flex-min[b-0easnjoqkn] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.sql-editor[b-0easnjoqkn] {
    flex: 1;
    min-height: 160px;
    border: 1px solid var(--border);
    border-radius: 8px;
    overflow: hidden;
}

.run-bar[b-0easnjoqkn] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 10px 0 14px;
    flex: none;
}

.export-link[b-0easnjoqkn] {
    font-size: 12px;
    text-decoration: none;
    display: inline-block;
}

.msg-bad[b-0easnjoqkn] {
    font-size: 12px;
    color: var(--bad);
}

.msg-good[b-0easnjoqkn] {
    font-size: 12px;
    color: var(--good);
}

.msg-muted[b-0easnjoqkn] {
    font-size: 12px;
    color: var(--text-3);
}

.msg-warn[b-0easnjoqkn] {
    font-size: 12px;
    color: var(--warn);
    background: var(--warn-bg);
    padding: 8px 12px;
    border-radius: 6px;
    margin-bottom: 12px;
}

.result-scroll[b-0easnjoqkn] {
    overflow: auto;
    /* Static rows box: fills whatever height the page has left and scrolls inside itself. */
    flex: 1;
    min-height: 0;
    border: 1px solid var(--border);
    border-radius: 8px;
}

.result-table[b-0easnjoqkn] {
    border-collapse: collapse;
    width: 100%;
    font-size: 12px;
}

.result-th[b-0easnjoqkn] {
    position: sticky;
    top: 0;
    background: var(--card-2);
    text-align: left;
    padding: 7px 10px;
    font-weight: 600;
    border-bottom: 1px solid var(--border);
    white-space: nowrap;
}

.result-td[b-0easnjoqkn] {
    padding: 6px 10px;
    border-bottom: 1px solid var(--border);
    font-family: var(--font-sans);
    white-space: nowrap;
    max-width: 340px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.slide-560[b-0easnjoqkn] {
    width: 560px;
}

.slide-680[b-0easnjoqkn] {
    width: 680px;
}

.slide-title-13[b-0easnjoqkn] {
    font-size: 13px;
    font-weight: 600;
}

.slide-title-14[b-0easnjoqkn] {
    font-size: 14px;
    font-weight: 600;
}

.slide-pad[b-0easnjoqkn] {
    padding: 16px 18px;
}

.slide-pad-scroll[b-0easnjoqkn] {
    padding: 16px 18px;
    overflow: auto;
}

.field-label[b-0easnjoqkn] {
    display: block;
    font-size: 11.5px;
    color: var(--text-3);
    margin-bottom: 4px;
}

.table-name-input[b-0easnjoqkn] {
    width: 100%;
    padding: 8px 10px;
    margin-bottom: 14px;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 7px;
    color: var(--text);
    font-family: var(--font-sans);
}

.csv-name-input[b-0easnjoqkn] {
    width: 100%;
    padding: 8px 10px;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 7px;
    color: var(--text);
    font-family: var(--font-sans);
}

.columns-head[b-0easnjoqkn] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
}

.field-sub[b-0easnjoqkn] {
    font-size: 11.5px;
    color: var(--text-3);
}

.field-sub-mb6[b-0easnjoqkn] {
    font-size: 11.5px;
    color: var(--text-3);
    margin-bottom: 6px;
}

.field-sub-mt3[b-0easnjoqkn] {
    font-size: 11.5px;
    color: var(--text-3);
    margin-top: 3px;
}

.btn-add-col[b-0easnjoqkn] {
    padding: 2px 9px;
    font-size: 11px;
}

.col-grid-head[b-0easnjoqkn] {
    display: grid;
    grid-template-columns: 1fr 130px 52px 52px 24px;
    gap: 6px;
    align-items: center;
    font-size: 10.5px;
    color: var(--text-3);
    margin-bottom: 4px;
}

.center[b-0easnjoqkn] {
    text-align: center;
}

.col-grid-row[b-0easnjoqkn] {
    display: grid;
    grid-template-columns: 1fr 130px 52px 52px 24px;
    gap: 6px;
    align-items: center;
    margin-bottom: 6px;
}

.col-input[b-0easnjoqkn] {
    padding: 6px 8px;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 6px;
    color: var(--text);
    font-family: var(--font-sans);
    font-size: 12px;
}

.col-select[b-0easnjoqkn] {
    padding: 6px 8px;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 6px;
    color: var(--text);
    font-size: 12px;
}

.center-self[b-0easnjoqkn] {
    justify-self: center;
}

.error-mt8[b-0easnjoqkn] {
    font-size: 12px;
    color: var(--bad);
    margin-top: 8px;
}

.slide-actions[b-0easnjoqkn] {
    display: flex;
    gap: 8px;
    margin-top: 16px;
}

.csv-meta[b-0easnjoqkn] {
    font-size: 11.5px;
    color: var(--text-3);
    margin-top: 3px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.csv-name-row[b-0easnjoqkn] {
    display: flex;
    gap: 16px;
    align-items: end;
    margin-bottom: 14px;
}

.flex-1[b-0easnjoqkn] {
    flex: 1;
}

.header-check-label[b-0easnjoqkn] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: var(--text-2);
    padding-bottom: 8px;
    white-space: nowrap;
}

.csv-grid-head[b-0easnjoqkn] {
    display: grid;
    grid-template-columns: 1fr 150px;
    gap: 6px;
    align-items: center;
    font-size: 10.5px;
    color: var(--text-3);
    margin-bottom: 4px;
}

.csv-grid-row[b-0easnjoqkn] {
    display: grid;
    grid-template-columns: 1fr 150px;
    gap: 6px;
    align-items: center;
    margin-bottom: 6px;
}

.preview-label[b-0easnjoqkn] {
    font-size: 11.5px;
    color: var(--text-3);
    margin: 14px 0 6px;
}

.preview-scroll[b-0easnjoqkn] {
    overflow: auto;
    max-height: 240px;
    border: 1px solid var(--border);
    border-radius: 8px;
}

.preview-table[b-0easnjoqkn] {
    border-collapse: collapse;
    width: 100%;
    font-size: 11.5px;
}

.preview-th[b-0easnjoqkn] {
    position: sticky;
    top: 0;
    background: var(--card-2);
    text-align: left;
    padding: 6px 9px;
    font-weight: 600;
    border-bottom: 1px solid var(--border);
    white-space: nowrap;
    font-family: var(--font-sans);
}

.preview-td[b-0easnjoqkn] {
    padding: 5px 9px;
    border-bottom: 1px solid var(--border);
    font-family: var(--font-sans);
    color: var(--text-2);
    white-space: nowrap;
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.error-mt10[b-0easnjoqkn] {
    font-size: 12px;
    color: var(--bad);
    margin-top: 10px;
}

.foot-note[b-0easnjoqkn] {
    flex: 1;
    font-size: 11px;
    color: var(--text-3);
}

.font-sans[b-0easnjoqkn] {
    font-family: var(--font-sans);
}

.edit-grid-head[b-0easnjoqkn] {
    display: grid;
    grid-template-columns: 1fr 170px 52px 34px 60px;
    gap: 6px;
    align-items: center;
    font-size: 10.5px;
    color: var(--text-3);
    margin-bottom: 4px;
}

.edit-grid-row[b-0easnjoqkn] {
    display: grid;
    grid-template-columns: 1fr 170px 52px 34px 60px;
    gap: 6px;
    align-items: center;
    margin-bottom: 6px;
    font-size: 12px;
}

.edit-col-name[b-0easnjoqkn] {
    font-family: var(--font-sans);
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Full-screen table query modal */
.table-modal-overlay[b-0easnjoqkn] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    background: rgba(0, 0, 0, 0.65);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.table-modal[b-0easnjoqkn] {
    background: var(--card);
    border: 1px solid var(--border);
    border-radius: 12px;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);
}

.table-modal-head[b-0easnjoqkn] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 14px 18px;
    border-bottom: 1px solid var(--border);
    flex: none;
}

.table-modal-title[b-0easnjoqkn] {
    display: flex;
    align-items: baseline;
    gap: 10px;
    min-width: 0;
}

.modal-table-name[b-0easnjoqkn] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text);
    font-family: var(--font-sans);
}

.modal-hint[b-0easnjoqkn] {
    font-size: 11px;
    color: var(--text-3);
    text-transform: uppercase;
    letter-spacing: .5px;
}

.table-modal-actions[b-0easnjoqkn] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: none;
}

.table-modal-body[b-0easnjoqkn] {
    flex: 0 0 35%;
    min-height: 180px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-bottom: 1px solid var(--border);
}

.table-modal-editor[b-0easnjoqkn] {
    flex: 1;
    min-height: 0;
    border: none;
}

.table-modal-status[b-0easnjoqkn] {
    flex: none;
    padding: 8px 18px;
    border-bottom: 1px solid var(--border);
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.modal-status-bad[b-0easnjoqkn] {
    color: var(--bad);
}

.modal-status-good[b-0easnjoqkn] {
    color: var(--good);
}

.modal-status-muted[b-0easnjoqkn] {
    color: var(--text-3);
}

.table-modal-results[b-0easnjoqkn] {
    flex: 1;
    min-height: 0;
    overflow: auto;
}

.modal-result-table[b-0easnjoqkn] {
    border-collapse: collapse;
    width: 100%;
    font-size: 12px;
}

@media (max-width: 950px) {
    .table-modal-overlay[b-0easnjoqkn] {
        padding: 0;
    }

    .table-modal[b-0easnjoqkn] {
        border-radius: 0;
    }

    .table-modal-head[b-0easnjoqkn] {
        flex-wrap: wrap;
        gap: 10px;
    }

    .table-modal-title[b-0easnjoqkn] {
        width: 100%;
    }

    .table-modal-actions[b-0easnjoqkn] {
        width: 100%;
        justify-content: flex-end;
    }

    .table-modal-body[b-0easnjoqkn] {
        flex: 0 0 45%;
    }
}

.text-2[b-0easnjoqkn] {
    color: var(--text-2);
}

.center-3[b-0easnjoqkn] {
    text-align: center;
    color: var(--text-3);
}

.confirm-drop-col[b-0easnjoqkn] {
    display: flex;
    gap: 4px;
    justify-content: end;
}

.link-bad-end[b-0easnjoqkn] {
    color: var(--bad);
    justify-self: end;
}

.divider[b-0easnjoqkn] {
    border-top: 1px solid var(--border);
    margin: 12px 0 10px;
}

.add-col-grid[b-0easnjoqkn] {
    display: grid;
    grid-template-columns: 1fr 170px 52px 94px;
    gap: 6px;
    align-items: center;
}

.btn-add[b-0easnjoqkn] {
    padding: 5px 10px;
    font-size: 12px;
}

.new-view-body[b-0easnjoqkn] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-height: calc(100vh - 150px);
}

.field-320[b-0easnjoqkn] {
    max-width: 320px;
}

.view-query-field[b-0easnjoqkn] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.select-only-tag[b-0easnjoqkn] {
    margin-left: 5px;
}

.view-editor[b-0easnjoqkn] {
    flex: 1;
    min-height: 220px;
    border: 1px solid var(--border);
    border-radius: 8px;
    overflow: hidden;
}

.view-textarea[b-0easnjoqkn] {
    flex: 1;
    padding: 8px 10px;
    font-size: 12px;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 8px;
    color: var(--text);
    font-family: var(--font-sans);
    resize: vertical;
}

.view-error[b-0easnjoqkn] {
    flex: 1;
    color: var(--bad);
    font-size: 12px;
    min-width: 0;
}

@media (max-width: 950px) {
    .page[b-0easnjoqkn] {
        padding: 16px 14px;
        height: 100%;
        overflow: hidden;
    }

    .cols[b-0easnjoqkn] {
        flex-direction: column;
        gap: 16px;
        min-height: 0;
        flex: 1;
    }

    .tables-col[b-0easnjoqkn] {
        width: 100%;
        min-height: 0;
        max-height: 220px;
        flex: none;
    }

    .tables-grid[b-0easnjoqkn] {
        grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    }

    .flex-min[b-0easnjoqkn] {
        flex: 1;
        min-height: 0;
    }

    .sql-editor[b-0easnjoqkn] {
        flex: 1;
        min-height: 120px;
        height: 100%;
    }

    .result-scroll[b-0easnjoqkn] {
        flex: 1;
        min-height: 0;
    }

    .run-bar[b-0easnjoqkn] {
        flex-wrap: wrap;
        gap: 8px;
    }

    .slide-560[b-0easnjoqkn],
    .slide-680[b-0easnjoqkn] {
        width: min(560px, 92vw);
    }

    .col-grid-head[b-0easnjoqkn],
    .col-grid-row[b-0easnjoqkn] {
        grid-template-columns: 1fr 110px 44px 44px 24px;
    }

    .csv-grid-head[b-0easnjoqkn],
    .csv-grid-row[b-0easnjoqkn] {
        grid-template-columns: 1fr 110px;
    }

    .edit-grid-head[b-0easnjoqkn],
    .edit-grid-row[b-0easnjoqkn] {
        grid-template-columns: 1fr 110px 44px 34px 60px;
    }

    .add-col-grid[b-0easnjoqkn] {
        grid-template-columns: 1fr 110px 44px 94px;
    }

    .csv-name-row[b-0easnjoqkn] {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }
}
/* /Components/Pages/ProjectView.razor.rz.scp.css */
.page[b-e0keq13l82] {
    padding: 20px 24px 40px;
    max-width: 1320px;
    margin: 0 auto;
}

.back-btn[b-e0keq13l82] {
    border: none;
    background: none;
    color: var(--text-3);
    padding: 4px 0;
    margin-bottom: 14px;
}

.header-row[b-e0keq13l82] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
}

.title-row[b-e0keq13l82] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.lang-dot[b-e0keq13l82] {
    width: 11px;
    height: 11px;
    border-radius: 3px;
}

.project-title[b-e0keq13l82] {
    font-size: 21px;
    font-weight: 600;
    margin: 0;
    letter-spacing: -.4px;
}

.status-pill[b-e0keq13l82] {
    font-size: 11px;
    font-weight: 600;
    padding: 3px 9px;
    border-radius: 20px;
    color: var(--text-2);
    background: var(--card-2);
}

.project-path[b-e0keq13l82] {
    font-family: var(--font-sans);
    font-size: 12px;
    color: var(--text-3);
    margin-top: 7px;
}

.message[b-e0keq13l82] {
    color: var(--text-3);
    font-size: 12px;
    margin-bottom: 10px;
}

.tabs[b-e0keq13l82] {
    margin-bottom: 16px;
}

.graph-card[b-e0keq13l82] {
    overflow: hidden;
}

.section-card[b-e0keq13l82] {
    margin-top: 14px;
    overflow: hidden;
}

.card-head[b-e0keq13l82] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 15px;
    border-bottom: 1px solid var(--border);
}

.head-title-group[b-e0keq13l82] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.card-title[b-e0keq13l82] {
    font-size: 13px;
    font-weight: 600;
}

.meta-mono[b-e0keq13l82] {
    font-family: var(--font-sans);
    font-size: 11px;
    color: var(--text-3);
}

.graph-legend[b-e0keq13l82] {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 10.5px;
    color: var(--text-3);
}

.legend-item[b-e0keq13l82] {
    display: flex;
    align-items: center;
    gap: 5px;
}

.legend-dot[b-e0keq13l82] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--brand);
}

.legend-dash[b-e0keq13l82] {
    width: 14px;
    height: 0;
    border-top: 1.5px dashed var(--warn);
}

.graph-body[b-e0keq13l82] {
    padding: 8px;
    background: var(--bg);
}

.graph-empty[b-e0keq13l82] {
    height: 320px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-3);
    font-size: 12.5px;
    text-align: center;
}

.graph-loading[b-e0keq13l82] {
    height: 320px;
    padding: 20px;
}

.section-loading[b-e0keq13l82] {
    padding: 12px 16px;
}

.inline-code[b-e0keq13l82] {
    margin: 0 5px;
}

.pad-card[b-e0keq13l82] {
    padding: 15px;
}

.god-head[b-e0keq13l82] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.muted-note[b-e0keq13l82] {
    color: var(--text-3);
    font-size: 12px;
}

.god-list[b-e0keq13l82] {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.god-row[b-e0keq13l82] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.god-dot[b-e0keq13l82] {
    width: 8px;
    height: 8px;
    border-radius: 2px;
    background: var(--brand);
    flex: none;
}

.god-label[b-e0keq13l82] {
    font-family: var(--font-sans);
    font-size: 11.5px;
    color: var(--text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
}

.god-degree[b-e0keq13l82] {
    font-family: var(--font-sans);
    font-size: 11px;
    color: var(--text-3);
    flex: none;
}

.head-actions[b-e0keq13l82] {
    display: flex;
    align-items: center;
    gap: 11px;
}

.card-body[b-e0keq13l82] {
    padding: 12px 15px;
}

.editor[b-e0keq13l82] {
    width: 100%;
    resize: vertical;
    box-sizing: border-box;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 8px;
    color: var(--text);
    padding: 12px;
    font-family: var(--font-sans);
    font-size: 12.5px;
    line-height: 1.55;
}

.editor-req[b-e0keq13l82] {
    min-height: 160px;
}

.card-head-title[b-e0keq13l82] {
    padding: 13px 15px;
    border-bottom: 1px solid var(--border);
    font-size: 13px;
    font-weight: 600;
}

.empty-note[b-e0keq13l82] {
    padding: 14px 15px;
    color: var(--text-3);
    font-size: 12.5px;
}

.decision-row[b-e0keq13l82] {
    padding: 13px 15px;
    border-bottom: 1px solid var(--border);
}

.decision-head[b-e0keq13l82] {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.decision-q[b-e0keq13l82] {
    font-size: 13px;
    font-weight: 600;
    flex: 1;
}

.decision-choice[b-e0keq13l82] {
    font-size: 12.5px;
    color: var(--brand-2);
    margin-top: 4px;
}

.decision-rationale[b-e0keq13l82] {
    font-size: 12px;
    color: var(--text-2);
    margin-top: 5px;
    line-height: 1.5;
}

.change-row[b-e0keq13l82] {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 12px 15px;
    border-bottom: 1px solid var(--border);
}

.change-seq[b-e0keq13l82] {
    font-family: var(--font-sans);
    font-size: 11px;
    color: var(--text-3);
    flex: none;
    width: 30px;
}

.change-kind[b-e0keq13l82] {
    display: inline-flex;
    align-items: center;
    padding: 2px 7px;
    border-radius: 5px;
    font-weight: 600;
    font-size: 10px;
    flex: none;
}

.change-title[b-e0keq13l82] {
    font-size: 13px;
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* /Components/Pages/Schedules.razor.rz.scp.css */
.page[b-v1yn8hd2xn] {
    padding: 20px 24px 40px;
    max-width: 1320px;
    margin: 0 auto;
}

.page-head[b-v1yn8hd2xn] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 18px;
}

.page-title[b-v1yn8hd2xn] {
    font-size: 18px;
    font-weight: 600;
    margin: 0;
}

.page-sub[b-v1yn8hd2xn] {
    font-size: 12px;
    color: var(--text-3);
    margin-top: 3px;
}

.tz[b-v1yn8hd2xn] {
    font-family: var(--font-sans);
    color: var(--text-2);
}

.message[b-v1yn8hd2xn] {
    margin-bottom: 12px;
    padding: 10px 14px;
    border-radius: 8px;
    background: var(--card);
    font-size: 12.5px;
    color: var(--text-2);
}

.add-bar[b-v1yn8hd2xn] {
    padding: 14px 16px;
    margin-bottom: 16px;
    display: flex;
    gap: 10px;
    align-items: flex-end;
    flex-wrap: wrap;
}

.field-job[b-v1yn8hd2xn] {
    min-width: 180px;
}

.field-name[b-v1yn8hd2xn] {
    min-width: 160px;
}

.field-sm[b-v1yn8hd2xn] {
    min-width: 110px;
}

.field-cron[b-v1yn8hd2xn] {
    min-width: 170px;
}

.field-day[b-v1yn8hd2xn] {
    min-width: 80px;
}

.field-event[b-v1yn8hd2xn] {
    min-width: 150px;
}

.field-prompt[b-v1yn8hd2xn] {
    min-width: 260px;
    flex: 1;
}

.field-prompt textarea[b-v1yn8hd2xn] {
    min-height: 64px;
    resize: vertical;
}

.code-hint[b-v1yn8hd2xn] {
    margin-left: 4px;
}

.sans[b-v1yn8hd2xn] {
    font-family: var(--font-sans);
}

.cron-toggle[b-v1yn8hd2xn] {
    padding: 4px 10px;
    font-size: 11px;
    align-self: flex-end;
    margin-bottom: 2px;
}

.err-text[b-v1yn8hd2xn] {
    color: var(--bad);
    font-size: 12px;
}

.table-card[b-v1yn8hd2xn] {
    border-radius: 8px;
    overflow: hidden;
}

.trigger-grid[b-v1yn8hd2xn] {
    display: grid;
    grid-template-columns: 90px minmax(160px, 1fr) minmax(150px, 1fr) minmax(150px, 1fr) 150px 150px 130px;
    gap: 0 16px;
}

.table-head[b-v1yn8hd2xn] {
    padding: 8px 16px;
    border-bottom: 1px solid var(--border);
    font-size: 10.5px;
    color: var(--text-3);
    letter-spacing: .08em;
    font-weight: 500;
}

.trigger-row[b-v1yn8hd2xn] {
    align-items: center;
    padding: 11px 16px;
    border-bottom: 1px solid var(--border);
}

.skeleton-pad[b-v1yn8hd2xn] {
    padding: 4px 16px;
}

.empty-note[b-v1yn8hd2xn] {
    padding: 24px 16px;
    color: var(--text-3);
    font-size: 13px;
    text-align: center;
}

.state-cell[b-v1yn8hd2xn] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: var(--font-sans);
    font-size: 11px;
}

.state-dot[b-v1yn8hd2xn] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
}

.trigger-name[b-v1yn8hd2xn] {
    font-size: 12.5px;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cell-job[b-v1yn8hd2xn] {
    font-family: var(--font-sans);
    font-size: 11.5px;
    color: var(--human);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cell-2[b-v1yn8hd2xn] {
    font-family: var(--font-sans);
    font-size: 11.5px;
    color: var(--text-2);
}

.cell-3[b-v1yn8hd2xn] {
    font-family: var(--font-sans);
    font-size: 11.5px;
    color: var(--text-3);
}

.row-actions[b-v1yn8hd2xn] {
    display: flex;
    gap: 6px;
    justify-content: flex-end;
}

.btn-sm[b-v1yn8hd2xn] {
    padding: 3px 10px;
    font-size: 11px;
}

.btn-danger[b-v1yn8hd2xn] {
    color: var(--bad);
}
/* /Components/Pages/Secrets.razor.rz.scp.css */
.page[b-lzvxm2c7jv] { padding:20px 24px 40px; max-width:920px; margin:0 auto; }
.head[b-lzvxm2c7jv] { display:flex; align-items:baseline; justify-content:space-between; margin-bottom:6px; }
.title[b-lzvxm2c7jv] { font-size:18px; font-weight:600; margin:0; }
.intro[b-lzvxm2c7jv] { font-size:12.5px; color:var(--text-3); margin-bottom:18px; }
.message[b-lzvxm2c7jv] { margin-bottom:12px; padding:10px 14px; border-radius:8px; background:var(--card); font-size:12.5px; color:var(--text-2); }
.add-card[b-lzvxm2c7jv] { padding:14px 16px; display:flex; flex-direction:column; gap:10px; margin-bottom:18px; }
.add-title[b-lzvxm2c7jv] { font-size:12.5px; font-weight:600; }
.add-row[b-lzvxm2c7jv] { display:flex; gap:8px; flex-wrap:wrap; align-items:flex-end; }
.field-name[b-lzvxm2c7jv] { flex:1; min-width:160px; }
.field-value[b-lzvxm2c7jv] { flex:2; min-width:200px; }
.field-label[b-lzvxm2c7jv] { font-size:12px; color:var(--text-3); display:block; margin-bottom:4px; }
.field-input[b-lzvxm2c7jv] { width:100%; font-family:var(--font-sans); }
.add-error[b-lzvxm2c7jv] { color:var(--bad); font-size:12px; }
.empty[b-lzvxm2c7jv] { padding:24px; color:var(--text-3); font-size:13px; text-align:center; }
.list[b-lzvxm2c7jv] { display:flex; flex-direction:column; gap:8px; }
.secret-row[b-lzvxm2c7jv] { padding:12px 16px; display:flex; align-items:center; gap:12px; }
.secret-name[b-lzvxm2c7jv] { font-size:13px; font-weight:600; font-family:var(--font-sans); flex:1; min-width:0; }
.secret-mask[b-lzvxm2c7jv] { font-size:11px; color:var(--text-3); font-family:var(--font-sans); }
.secret-added[b-lzvxm2c7jv] { font-size:11px; color:var(--text-3); }
/* /Components/Pages/Setup.razor.rz.scp.css */
.auth-card[b-5qex6uoolv] {
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.auth-brand[b-5qex6uoolv] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.auth-mark[b-5qex6uoolv] {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    background: var(--brand);
    display: flex;
    align-items: center;
    justify-content: center;
    flex: none;
}

.auth-brand-name[b-5qex6uoolv] {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-2);
    letter-spacing: -0.01em;
}

.auth-title[b-5qex6uoolv] {
    font-size: 19px;
    font-weight: 600;
    margin: 4px 0 0;
}

.auth-sub[b-5qex6uoolv] {
    font-size: 12.5px;
    color: var(--text-3);
    line-height: 1.5;
    margin: 0;
}

.auth-form[b-5qex6uoolv] {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.auth-error[b-5qex6uoolv] {
    font-size: 12.5px;
    color: var(--bad);
    background: var(--bad-bg);
    border: 1px solid var(--bad);
    border-radius: 7px;
    padding: 8px 11px;
    line-height: 1.5;
}

.auth-submit[b-5qex6uoolv] {
    width: 100%;
    box-sizing: border-box;
    padding: 10px 12px;
    font-size: 13px;
    margin-top: 2px;
    text-align: center;
    /* 44px-ish tap target, comfortably above the 44px minimum with the surrounding line-height. */
    min-height: 40px;
}

a.auth-submit[b-5qex6uoolv] {
    display: block;
}
/* /Components/Pages/Wiki.razor.rz.scp.css */
.page[b-5sdvfhlzr6] { display:flex; gap:22px; padding:22px 24px 48px; max-width:1180px; margin:0 auto; }
.toc[b-5sdvfhlzr6] { width:240px; flex:none; }
.toc-head[b-5sdvfhlzr6] { font-size:10px; font-weight:600; letter-spacing:.7px; color:var(--text-3); text-transform:uppercase; margin-bottom:10px; }
.toc-link[b-5sdvfhlzr6] { display:block; padding:8px 10px; margin-bottom:3px; border-radius:7px; font-size:12.5px; line-height:1.35; }
.article[b-5sdvfhlzr6] { flex:1; min-width:0; }
.not-found[b-5sdvfhlzr6] { font-size:13px; color:var(--text-3); }
.link[b-5sdvfhlzr6] { color:var(--brand); }
.summary[b-5sdvfhlzr6] { font-size:11px; color:var(--text-3); margin-bottom:6px; }
/* /Components/Shared/ChainPipeline.razor.rz.scp.css */
.pipeline[b-01e14altko] { display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:14px; border-radius:10px; background:var(--card); overflow-x:auto; overscroll-behavior-x:contain }
.pipe-arrow[b-01e14altko] { color:var(--text-3); font-size:15px; flex:none }
.stage-col[b-01e14altko] { display:flex; flex-direction:column; gap:6px; flex:none }
.stage[b-01e14altko] { display:flex; flex-direction:column; gap:2px; padding:8px 12px; border-radius:8px; flex:none }
.stage-title[b-01e14altko] { display:flex; align-items:center; gap:6px; font-size:12.5px; font-weight:600 }
.stage-sub[b-01e14altko] { font-size:10.5px; color:var(--text-3) }

@media (max-width: 950px) {
    .pipeline[b-01e14altko] { flex-wrap:nowrap; }
}
/* /Components/Shared/DataTabs.razor.rz.scp.css */
.tabs-strip[b-p1lhcfiby1] {
    margin: -6px 0 16px;
}
/* /Components/Shared/GraphCanvas.razor.rz.scp.css */
.chrome-bar[b-732v2nvmew] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.search-wrap[b-732v2nvmew] {
    position: relative;
    width: 280px;
}

.search-input[b-732v2nvmew] {
    width: 100%;
    padding: 5px 10px;
    font-size: 12px;
}

.search-drop[b-732v2nvmew] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: var(--card);
    border: 1px solid var(--border-2);
    border-radius: 8px;
    box-shadow: var(--shadow);
    z-index: 10;
    padding: 4px;
    max-height: 260px;
    overflow-y: auto;
}

.search-item[b-732v2nvmew] {
    padding: 6px 9px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 12px;
}

.search-item-label[b-732v2nvmew] {
    font-family: var(--font-sans);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.search-item-sub[b-732v2nvmew] {
    font-size: 10.5px;
    color: var(--text-3);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.flex-1[b-732v2nvmew] {
    flex: 1;
}

.btn-fs[b-732v2nvmew] {
    padding: 4px 11px;
    font-size: 11.5px;
}

.graph-canvas[b-732v2nvmew] {
    display: block;
    width: 100%;
}

.detail-card[b-732v2nvmew] {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 280px;
    overflow-y: auto;
    padding: 12px 14px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .35);
}

.card-head[b-732v2nvmew] {
    display: flex;
    align-items: start;
    gap: 8px;
}

.flex-min[b-732v2nvmew] {
    flex: 1;
    min-width: 0;
}

.sel-label[b-732v2nvmew] {
    font-size: 12.5px;
    font-weight: 600;
    word-break: break-all;
}

.sel-id[b-732v2nvmew] {
    font-size: 10.5px;
    color: var(--text-3);
    font-family: var(--font-sans);
    word-break: break-all;
    margin-top: 2px;
}

.card-x[b-732v2nvmew] {
    padding: 1px 7px;
    font-size: 11px;
    flex: none;
}

.open-link[b-732v2nvmew] {
    display: inline-flex;
    margin-top: 8px;
    padding: 4px 11px;
    font-size: 11.5px;
    text-decoration: none;
}

.badge-row[b-732v2nvmew] {
    display: flex;
    gap: 6px;
    margin-top: 8px;
    flex-wrap: wrap;
}

.badge-hub[b-732v2nvmew] {
    font-size: 10px;
    padding: 2px 7px;
    border-radius: 4px;
    background: var(--brand);
    color: #fff;
}

.badge-deg[b-732v2nvmew] {
    font-size: 10px;
    padding: 2px 7px;
    border-radius: 4px;
    background: var(--card-2);
    color: var(--text-3);
}

.sel-content[b-732v2nvmew] {
    margin-top: 10px;
    padding: 9px 11px;
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 7px;
    font-size: 11.5px;
    color: var(--text-2);
    line-height: 1.55;
    white-space: pre-wrap;
    word-break: break-word;
    max-height: 160px;
    overflow-y: auto;
}

.section-cap[b-732v2nvmew] {
    font-size: 10.5px;
    color: var(--text-3);
    margin: 10px 0 4px;
    text-transform: uppercase;
    letter-spacing: .5px;
}

.col-4[b-732v2nvmew] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.artifact-link[b-732v2nvmew] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 5px 9px;
    border: 1px solid var(--good);
    border-radius: 7px;
    background: var(--good-bg);
    font-size: 11.5px;
    font-family: var(--font-sans);
    color: var(--good);
    text-decoration: none;
}

.ellipsis-flex[b-732v2nvmew] {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hops[b-732v2nvmew] {
    flex: none;
    font-size: 9.5px;
    color: var(--text-3);
}

.flex-none[b-732v2nvmew] {
    flex: none;
}

.col-3[b-732v2nvmew] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.neighbor-row[b-732v2nvmew] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.neighbor-btn[b-732v2nvmew] {
    border: none;
    background: none;
    padding: 2px 0;
    cursor: pointer;
    text-align: left;
    font-size: 11.5px;
    font-family: var(--font-sans);
    color: var(--brand-2);
    word-break: break-all;
    flex: 1;
    min-width: 0;
}

.neighbor-link[b-732v2nvmew] {
    flex: none;
    font-size: 11px;
    color: var(--text-3);
    text-decoration: none;
}

.ambiguous-note[b-732v2nvmew] {
    font-size: 10px;
    color: var(--warn);
    margin-top: 6px;
}
/* /Components/Shared/NotificationsBell.razor.rz.scp.css */
.bell-btn[b-mr9zhlczvp] { position:relative; width:30px; height:30px; border-radius:7px; border:1px solid var(--border); background:var(--card); cursor:pointer; display:flex; align-items:center; justify-content:center; color:var(--text-2); }
.bell-badge[b-mr9zhlczvp] { position:absolute; top:-5px; right:-5px; min-width:16px; height:16px; padding:0 4px; border-radius:8px; background:var(--brand); color:#fff; font-size:9.5px; font-weight:700; display:flex; align-items:center; justify-content:center; }
.overlay[b-mr9zhlczvp] { position:fixed; inset:0; z-index:80; }
.pane[b-mr9zhlczvp] { position:fixed; top:58px; right:16px; width:380px; max-height:calc(100vh - 80px); overflow-y:auto; z-index:81; padding:8px; box-shadow:0 12px 32px rgba(0,0,0,.4); }
.pane-head[b-mr9zhlczvp] { display:flex; align-items:center; justify-content:space-between; padding:6px 8px; }
.pane-title[b-mr9zhlczvp] { font-size:12.5px; font-weight:600; }
.pane-status[b-mr9zhlczvp] { font-size:10.5px; color:var(--text-3); }
.pane-empty[b-mr9zhlczvp] { padding:18px 8px; font-size:12px; color:var(--text-3); text-align:center; }
.op[b-mr9zhlczvp] { display:flex; gap:10px; padding:9px 8px; border-top:1px solid var(--border); align-items:start; }
.op-icon[b-mr9zhlczvp] { flex:none; width:18px; text-align:center; font-size:13px; }
.i-muted[b-mr9zhlczvp] { color:var(--text-3); }
.i-good[b-mr9zhlczvp] { color:var(--good); }
.i-bad[b-mr9zhlczvp] { color:var(--bad); }
.op-spin[b-mr9zhlczvp] { display:inline-block; color:var(--brand-2); animation:dcspin-b-mr9zhlczvp 1.2s linear infinite; }
.op-body[b-mr9zhlczvp] { flex:1; min-width:0; }
.op-title[b-mr9zhlczvp] { font-size:12px; font-weight:500; color:var(--text); }
.op-meta[b-mr9zhlczvp] { font-size:10.5px; color:var(--text-3); margin-top:2px; }
.op-outcome[b-mr9zhlczvp] { font-size:10.5px; margin-top:2px; word-break:break-word; }
.op-view[b-mr9zhlczvp] { padding:2px 8px; font-size:10.5px; flex:none; }

@keyframes dcspin-b-mr9zhlczvp { to { transform: rotate(360deg); } }
/* /Components/Shared/ParamInput.razor.rz.scp.css */
.number-input[b-8wbs1zd7hp] {
    font-family: var(--font-sans);
}

.checkbox-field[b-8wbs1zd7hp] {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 12.5px;
    color: var(--text-2);
    cursor: pointer;
    padding: 6px 0;
}

.checkbox-box[b-8wbs1zd7hp] {
    width: 15px;
    height: 15px;
    accent-color: var(--brand-2);
    cursor: pointer;
}
/* /Components/Shared/Skeleton.razor.rz.scp.css */
.skel-block[b-dinejueqrt] { height:96px; border-radius:8px; }
.skel-chart-title[b-dinejueqrt] { width:40%; }
.skel-chart-bars[b-dinejueqrt] { display:flex; align-items:flex-end; gap:10px; height:180px; padding-top:10px; }
.skel-bar[b-dinejueqrt] { flex:1; border-radius:6px 6px 0 0; }
.skel-table[b-dinejueqrt] { overflow:hidden; }
.skel-table-head[b-dinejueqrt] { padding:12px 16px; background:var(--card-2); }
.skel-table-row[b-dinejueqrt] { padding:12px 16px; }
.skel-cell[b-dinejueqrt] { flex:1; }
.skel-detail[b-dinejueqrt] { display:flex; flex-direction:column; gap:14px; }
.skel-detail-title[b-dinejueqrt] { width:52%; }
.skel-detail-sub[b-dinejueqrt] { width:34%; }
.skel-divider[b-dinejueqrt] { height:1px; margin:2px 0; }
.skel-avatar[b-dinejueqrt] { width:34px; height:34px; flex:none; }
.skel-list-lines[b-dinejueqrt] { flex:1; display:flex; flex-direction:column; gap:7px; }
.skel-list-meta[b-dinejueqrt] { width:64px; flex:none; }
.skel-text[b-dinejueqrt] { display:flex; flex-direction:column; gap:9px; }
