@import '_content/OpenXiaov.Ui/OpenXiaov.Ui.9ndv84r5wk.bundle.scp.css';

/* /Components/Components/AboutSystemModal.razor.rz.scp.css */
.about-sys[b-lplgjzejjp] {
    --about-ink: #0f172a;
    --about-muted: #64748b;
    --about-line: #e8eef5;
    --about-blue: #4d8fe8;
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 1rem 1.15rem 1.35rem;
    display: flex;
    flex-direction: column;
    gap: 0.95rem;
    color: var(--about-ink);
    background:
        radial-gradient(120% 80% at 100% 0%, rgba(77, 143, 232, 0.07), transparent 55%),
        #f8fafc;
}

.about-sys__state[b-lplgjzejjp] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;
    min-height: 10rem;
    margin: 0;
    color: var(--about-muted);
    font-size: 0.875rem;
}

.about-sys__state--err[b-lplgjzejjp] {
    color: #b91c1c;
}

.about-sys__state .ph[b-lplgjzejjp] {
    font-size: 1.6rem;
}

.about-sys__state p[b-lplgjzejjp] {
    margin: 0;
}

.about-sys__spinner[b-lplgjzejjp] {
    width: 1.35rem;
    height: 1.35rem;
    border-radius: 50%;
    border: 2px solid rgba(77, 143, 232, 0.22);
    border-top-color: var(--about-blue);
    animation: about-sys-spin-b-lplgjzejjp 0.7s linear infinite;
}

@keyframes about-sys-spin-b-lplgjzejjp {
    to { transform: rotate(360deg); }
}

/* —— 授权 Hero —— */
.about-sys__hero[b-lplgjzejjp] {
    position: relative;
    overflow: hidden;
    border-radius: 1rem;
    padding: 1.05rem 1.15rem 1.15rem;
    color: #1e3a5f;
    background: linear-gradient(145deg, #e8f2fc 0%, #d6e9fb 48%, #c5dff8 100%);
    border: 1px solid rgba(77, 143, 232, 0.28);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.about-sys__hero.is-bad[b-lplgjzejjp] {
    color: #7f1d1d;
    background: linear-gradient(145deg, #fef2f2 0%, #fee2e2 55%, #fecaca 100%);
    border-color: rgba(185, 28, 28, 0.28);
    box-shadow: 0 1px 2px rgba(127, 29, 29, 0.06);
}

.about-sys__hero[b-lplgjzejjp]::after {
    content: "";
    position: absolute;
    right: -18%;
    top: -40%;
    width: 55%;
    height: 140%;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.55), transparent 68%);
    pointer-events: none;
}

.about-sys__hero-top[b-lplgjzejjp] {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.65rem;
}

.about-sys__hero-badge[b-lplgjzejjp] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.72rem;
    font-weight: 650;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #3b6ea8;
}

.about-sys__hero-badge .ph[b-lplgjzejjp] {
    font-size: 0.95rem;
    color: #4d8fe8;
}

.about-sys__hero-status[b-lplgjzejjp] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.5rem;
    padding: 0 0.55rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1;
    color: #1d4ed8;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(77, 143, 232, 0.35);
}

.about-sys__hero.is-bad .about-sys__hero-badge[b-lplgjzejjp] {
    color: #991b1b;
}

.about-sys__hero.is-bad .about-sys__hero-badge .ph[b-lplgjzejjp] {
    color: #dc2626;
}

.about-sys__hero.is-bad .about-sys__hero-status[b-lplgjzejjp] {
    color: #b91c1c;
    background: rgba(255, 255, 255, 0.75);
    border-color: rgba(185, 28, 28, 0.35);
}

.about-sys__lic[b-lplgjzejjp] {
    position: relative;
    z-index: 1;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.about-sys__lic-row[b-lplgjzejjp] {
    margin: 0;
}

.about-sys__lic-row dt[b-lplgjzejjp] {
    margin: 0 0 0.2rem;
    font-size: 0.7rem;
    font-weight: 650;
    letter-spacing: 0.04em;
    opacity: 0.82;
}

.about-sys__lic-row dd[b-lplgjzejjp] {
    margin: 0;
    font-size: 1.02rem;
    font-weight: 750;
    letter-spacing: -0.01em;
    line-height: 1.25;
    word-break: break-word;
}

.about-sys__lic-row--org dd[b-lplgjzejjp] {
    font-size: 1.28rem;
}

.about-sys__lic-grid[b-lplgjzejjp] {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 0.55rem;
}

.about-sys__lic-grid .about-sys__lic-row[b-lplgjzejjp] {
    padding: 0.55rem 0.7rem;
    border-radius: 0.7rem;
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(77, 143, 232, 0.22);
}

.about-sys__lic-grid .about-sys__lic-row dt[b-lplgjzejjp] {
    color: #64748b;
    opacity: 1;
}

.about-sys__hero.is-bad .about-sys__lic-grid .about-sys__lic-row[b-lplgjzejjp] {
    border-color: rgba(185, 28, 28, 0.22);
}

.about-sys__lic-grid .about-sys__lic-row dd[b-lplgjzejjp] {
    font-size: 1.05rem;
}

/* —— 指标卡片 —— */
.about-sys__metrics[b-lplgjzejjp] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.55rem;
}

.about-sys__metric[b-lplgjzejjp] {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    column-gap: 0.55rem;
    row-gap: 0.1rem;
    align-items: center;
    padding: 0.75rem 0.8rem;
    border-radius: 0.85rem;
    background: #fff;
    border: 1px solid var(--about-line);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}

.about-sys__metric-ico[b-lplgjzejjp] {
    grid-row: 1 / span 2;
    display: grid;
    place-items: center;
    width: 2.1rem;
    height: 2.1rem;
    border-radius: 0.65rem;
    font-size: 1.05rem;
}

.about-sys__metric-ico.is-blue[b-lplgjzejjp] {
    color: #1d4ed8;
    background: #eff6ff;
}

.about-sys__metric-ico.is-violet[b-lplgjzejjp] {
    color: #6d28d9;
    background: #f5f3ff;
}

.about-sys__metric-ico.is-teal[b-lplgjzejjp] {
    color: #0f766e;
    background: #f0fdfa;
}

.about-sys__metric-ico.is-amber[b-lplgjzejjp] {
    color: #b45309;
    background: #fffbeb;
}

.about-sys__metric-label[b-lplgjzejjp] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--about-muted);
    letter-spacing: 0.02em;
}

.about-sys__metric-val[b-lplgjzejjp] {
    font-size: 1.02rem;
    font-weight: 750;
    letter-spacing: -0.02em;
    line-height: 1.2;
    color: var(--about-ink);
}

.about-sys__metric-unit[b-lplgjzejjp] {
    display: inline;
    margin-left: 0.15rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--about-muted);
}

/* —— 分区卡片 —— */
.about-sys__card[b-lplgjzejjp] {
    padding: 0.9rem 0.95rem 0.95rem;
    border-radius: 0.95rem;
    background: #fff;
    border: 1px solid var(--about-line);
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
}

.about-sys__card-title[b-lplgjzejjp] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin: 0 0 0.75rem;
    font-size: 0.82rem;
    font-weight: 700;
    color: #1e293b;
}

.about-sys__card-title .ph[b-lplgjzejjp] {
    color: var(--about-blue);
    font-size: 1rem;
}

.about-sys__rows[b-lplgjzejjp] {
    margin: 0;
    display: flex;
    flex-direction: column;
}

.about-sys__row[b-lplgjzejjp] {
    display: grid;
    grid-template-columns: 6.2rem minmax(0, 1fr);
    gap: 0.45rem 0.75rem;
    padding: 0.55rem 0;
    border-top: 1px solid #f1f5f9;
    align-items: baseline;
}

.about-sys__row:first-child[b-lplgjzejjp] {
    border-top: 0;
    padding-top: 0;
}

.about-sys__row:last-child[b-lplgjzejjp] {
    padding-bottom: 0;
}

.about-sys__row dt[b-lplgjzejjp] {
    margin: 0;
    font-size: 0.78rem;
    font-weight: 500;
    color: var(--about-muted);
}

.about-sys__row dd[b-lplgjzejjp] {
    margin: 0;
    font-size: 0.84rem;
    font-weight: 600;
    color: var(--about-ink);
    word-break: break-word;
}

@media (min-width: 520px) {
    .about-sys__metrics[b-lplgjzejjp] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .about-sys__metric[b-lplgjzejjp] {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        justify-items: start;
        row-gap: 0.2rem;
        min-height: 6.2rem;
    }

    .about-sys__metric-ico[b-lplgjzejjp] {
        grid-row: auto;
        margin-bottom: 0.25rem;
    }

    .about-sys__metric-val[b-lplgjzejjp] {
        font-size: 1.08rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .about-sys__spinner[b-lplgjzejjp] {
        animation: none;
        border-top-color: var(--about-blue);
        opacity: 0.7;
    }
}
/* /Components/Components/ActivationRequestCard.razor.rz.scp.css */
.activation-card[b-2hb1m1mpxh] {
    margin: 0;
    display: grid;
    gap: var(--ox-space-xs);
}

.activation-card__item[b-2hb1m1mpxh] {
    display: grid;
    grid-template-columns: 4.5rem 1fr;
    gap: var(--ox-space-xs);
    align-items: baseline;
    padding: 0.375rem 0;
    border-bottom: 1px solid var(--ox-border);
}

.activation-card__item:last-of-type[b-2hb1m1mpxh] {
    border-bottom: none;
    padding-bottom: 0;
}

.activation-card__item dt[b-2hb1m1mpxh] {
    margin: 0;
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-medium);
    color: var(--ox-text-secondary);
}

.activation-card__item dd[b-2hb1m1mpxh] {
    margin: 0;
    font-size: var(--ox-fs-body);
    line-height: 1.4;
    color: var(--ox-text-primary);
    word-break: break-all;
}

.activation-card__item dd code[b-2hb1m1mpxh] {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: var(--ox-fs-secondary);
}

.activation-card__note[b-2hb1m1mpxh] {
    display: flex;
    align-items: flex-start;
    gap: var(--ox-space-xs);
    margin: 0;
    padding: 0.5rem 0.625rem;
    border-radius: var(--ox-radius);
    font-size: var(--ox-fs-secondary);
    line-height: 1.4;
    color: var(--ox-text-danger);
    border: 1px solid color-mix(in oklab, var(--ox-text-danger) 38%, var(--ox-border));
    background: color-mix(in oklab, var(--ox-text-danger) 9%, var(--ox-surface));
}
/* /Components/Components/ContactUserCardModal.razor.rz.scp.css */
.contact-user-card[b-rr7qz84s8u] {
    min-width: min(25rem, calc(100vw - 2rem));
    max-width: min(30rem, calc(100vw - 2rem));
    display: flex;
    flex-direction: column;
    background: var(--ox-footer-bg, #fafafa);
}

.contact-user-card--state[b-rr7qz84s8u] {
    padding: 1.15rem 1.2rem;
}

.contact-user-card__hint[b-rr7qz84s8u] {
    margin: 0;
    color: var(--ox-text-secondary, #71717a);
    font-size: 0.86rem;
}

.contact-user-card__hint--error[b-rr7qz84s8u] {
    color: var(--ox-text-danger, #b91c1c);
}

.contact-user-card__head[b-rr7qz84s8u] {
    display: flex;
    align-items: flex-start;
    gap: 0.72rem;
    padding: 1rem 1.1rem;
    background: var(--ox-surface, #fff);
    border-bottom: 1px solid var(--ox-border, #e3e3e3);
}

.contact-user-card__avatar-wrap[b-rr7qz84s8u] {
    width: 3.45rem;
    height: 3.45rem;
    border-radius: 0.55rem;
    overflow: hidden;
    background: var(--ox-state-hover-bg, #f4f4f5);
    flex-shrink: 0;
    border: 1px solid var(--ox-border, #e3e3e3);
}

.contact-user-card__avatar[b-rr7qz84s8u] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.contact-user-card__head-main[b-rr7qz84s8u] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.26rem;
}

.contact-user-card__name[b-rr7qz84s8u] {
    font-size: 1.1rem;
    line-height: 1.2;
    color: var(--ox-text-primary, #18181b);
    font-weight: 700;
}

.contact-user-card__account[b-rr7qz84s8u],
.contact-user-card__org[b-rr7qz84s8u] {
    font-size: 0.8rem;
    color: var(--ox-text-secondary, #71717a);
    line-height: 1.3;
}

.contact-user-card__org[b-rr7qz84s8u] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.contact-user-card__rows[b-rr7qz84s8u] {
    display: flex;
    flex-direction: column;
    background: var(--ox-surface, #fff);
}

.contact-user-card__row[b-rr7qz84s8u] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    min-height: 2.55rem;
    padding: 0.55rem 1.1rem;
    border-bottom: 1px solid var(--ox-border, #e3e3e3);
}

.contact-user-card__row:last-child[b-rr7qz84s8u] {
    border-bottom: none;
}

.contact-user-card__label[b-rr7qz84s8u] {
    width: 3.2rem;
    flex-shrink: 0;
    color: var(--ox-text-secondary, #71717a);
    font-size: 0.8rem;
}

.contact-user-card__value[b-rr7qz84s8u] {
    min-width: 0;
    color: var(--ox-text-primary, #18181b);
    font-size: 0.84rem;
    line-height: 1.35;
    word-break: break-all;
}

.contact-user-card__dial[b-rr7qz84s8u] {
    appearance: none;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    color: var(--ox-accent-foreground, #1d4ed8);
    text-decoration: none;
    font: inherit;
    font-weight: 650;
    cursor: pointer;
    text-align: left;
}

.contact-user-card__dial:hover[b-rr7qz84s8u] {
    color: var(--ox-accent-foreground, #1d4ed8);
    text-decoration: underline;
}

.contact-user-card__dial .ph[b-rr7qz84s8u] {
    font-size: 1rem;
    line-height: 1;
    flex-shrink: 0;
}

.contact-user-card__footer[b-rr7qz84s8u] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 0.5rem;
    padding: 0.8rem 1.1rem 1rem;
    border-top: 1px solid var(--ox-border, #e3e3e3);
    background: var(--ox-footer-bg, #fafafa);
}

.contact-user-card__call-btn[b-rr7qz84s8u] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    text-decoration: none;
}

.contact-user-card__call-btn .ph[b-rr7qz84s8u] {
    font-size: 1rem;
    line-height: 1;
}
/* /Components/Components/ImMobileChatModal.razor.rz.scp.css */
.im-mobile-chat[b-39vleb30ms] {
    display: flex;
    justify-content: center;
    padding: 0.25rem 0;
    min-height: 0;
    height: min(72dvh, 760px);
    max-height: calc(100dvh - 220px);
}

.im-mobile-chat__phone[b-39vleb30ms] {
    width: min(100%, 375px);
    height: 100%;
    max-height: 100%;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: 22px;
    border: 1px solid color-mix(in oklab, var(--ox-border) 72%, #000 8%);
    background: linear-gradient(180deg, #f6f7f8 0%, #edf0f2 100%);
    box-shadow: 0 20px 40px rgba(15, 23, 42, 0.18);
}

.im-mobile-chat__topbar[b-39vleb30ms] {
    height: 2.15rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 0.85rem;
    background: #131b26;
    color: #f8fafc;
    font-size: 0.72rem;
}

.im-mobile-chat__signal[b-39vleb30ms] {
    font-weight: 600;
    letter-spacing: 0.02em;
}

.im-mobile-chat__tabs[b-39vleb30ms] {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0.5rem;
    padding: 0.6rem 0.75rem;
    background: #f1f3f5;
    border-bottom: 1px solid #e5e7eb;
}

.im-mobile-chat__tab[b-39vleb30ms] {
    height: 2rem;
    border: 1px solid #d1d5db;
    border-radius: 999px;
    background: #ffffff;
    color: #334155;
    font-size: 0.76rem;
    font-weight: 600;
    min-width: 0;
}

.im-mobile-chat__tab--active[b-39vleb30ms] {
    border-color: #1aad19;
    background: #1aad19;
    color: #ffffff;
}

.im-mobile-chat__body[b-39vleb30ms] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.im-mobile-chat__state[b-39vleb30ms] {
    margin: 0.65rem;
    padding: 0.6rem 0.7rem;
    border-radius: 10px;
    background: #f8fafc;
    border: 1px solid #dbe2ea;
    color: #475569;
    font-size: 0.74rem;
}

.im-mobile-chat__state--error[b-39vleb30ms] {
    border-color: #fecaca;
    background: #fef2f2;
    color: #b91c1c;
}

.im-mobile-chat__list[b-39vleb30ms] {
    min-height: 0;
    overflow-y: auto;
    padding: 0.35rem;
}

.im-mobile-chat__create[b-39vleb30ms] {
    display: flex;
    gap: 0.4rem;
    align-items: center;
    padding: 0.35rem 0.35rem 0.55rem;
}

.im-mobile-chat__create-input[b-39vleb30ms] {
    min-width: 0;
    flex: 1;
}

.im-mobile-chat__conv[b-39vleb30ms] {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 0.6rem;
    border: none;
    border-radius: 12px;
    padding: 0.6rem;
    text-align: left;
    background: transparent;
}

.im-mobile-chat__conv:hover[b-39vleb30ms] {
    background: #e9eef3;
}

.im-mobile-chat__conv--active[b-39vleb30ms] {
    background: #dde8d8;
}

.im-mobile-chat__avatar[b-39vleb30ms] {
    width: 2rem;
    height: 2rem;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #1aad19;
    color: #fff;
    font-size: 0.84rem;
    font-weight: 700;
}

.im-mobile-chat__conv-main[b-39vleb30ms] {
    min-width: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.12rem;
}

.im-mobile-chat__conv-title[b-39vleb30ms] {
    font-size: 0.78rem;
    color: #0f172a;
    font-weight: 700;
}

.im-mobile-chat__conv-last[b-39vleb30ms] {
    font-size: 0.72rem;
    color: #64748b;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.im-mobile-chat__badge[b-39vleb30ms] {
    min-width: 1.1rem;
    height: 1.1rem;
    border-radius: 999px;
    padding: 0 0.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #ef4444;
    color: #fff;
    font-size: 0.68rem;
    font-weight: 700;
}

.im-mobile-chat__dialog[b-39vleb30ms] {
    min-height: 0;
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.im-mobile-chat__dialog-head[b-39vleb30ms] {
    padding: 0.6rem 0.8rem;
    border-bottom: 1px solid #e2e8f0;
    background: #f8fafc;
    display: flex;
    flex-direction: column;
    gap: 0.08rem;
}

.im-mobile-chat__dialog-name[b-39vleb30ms] {
    font-size: 0.8rem;
    color: #0f172a;
    font-weight: 700;
}

.im-mobile-chat__dialog-sub[b-39vleb30ms] {
    font-size: 0.68rem;
    color: #64748b;
}

.im-mobile-chat__messages[b-39vleb30ms] {
    min-height: 0;
    flex: 1;
    overflow-y: auto;
    padding: 0.65rem;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.im-mobile-chat__msg[b-39vleb30ms] {
    display: flex;
    justify-content: flex-start;
}

.im-mobile-chat__msg--mine[b-39vleb30ms] {
    justify-content: flex-end;
}

.im-mobile-chat__bubble[b-39vleb30ms] {
    max-width: 78%;
    border-radius: 12px;
    padding: 0.46rem 0.6rem;
    background: #ffffff;
    color: #0f172a;
    font-size: 0.74rem;
    line-height: 1.35;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
}

.im-mobile-chat__msg--mine .im-mobile-chat__bubble[b-39vleb30ms] {
    background: #95ec69;
}

.im-mobile-chat__composer[b-39vleb30ms] {
    border-top: 1px solid #dbe2ea;
    background: #f8fafc;
    padding: 0.55rem;
    display: flex;
    align-items: center;
    gap: 0.45rem;
}

.im-mobile-chat__input[b-39vleb30ms] {
    min-width: 0;
    flex: 1;
    height: 2rem;
    background: #ffffff;
}

.im-mobile-chat__send[b-39vleb30ms] {
    min-width: 3.2rem;
}

@media (max-width: 640px) {
    .im-mobile-chat[b-39vleb30ms] {
        height: min(78dvh, 760px);
        max-height: calc(100dvh - 180px);
    }
}
/* /Components/Components/OxDateInput.razor.rz.scp.css */
.ox-date[b-ons96sao5f] {
    position: relative;
    display: inline-flex;
    align-items: stretch;
    width: 100%;
    min-width: 0;
    min-height: var(--ox-btn-size, 2rem);
    border: 1px solid var(--ox-border, #e4e4e7);
    border-radius: var(--ox-radius, 0.45rem);
    background: #fff;
    color: var(--ox-ink, #18181b);
    box-sizing: border-box;
    transition: border-color 0.12s ease, box-shadow 0.12s ease, background 0.12s ease;
}

.ox-date:hover:not(.is-disabled)[b-ons96sao5f] {
    border-color: color-mix(in oklab, var(--ox-primary, #2563eb) 35%, var(--ox-border, #e4e4e7));
}

.ox-date:focus-within[b-ons96sao5f] {
    border-color: var(--ox-primary, #2563eb);
    box-shadow: 0 0 0 3px color-mix(in oklab, var(--ox-primary, #2563eb) 18%, transparent);
}

.ox-date.is-disabled[b-ons96sao5f] {
    opacity: 0.55;
    background: #f4f4f5;
    cursor: not-allowed;
}

.ox-date__face[b-ons96sao5f] {
    pointer-events: none;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    width: 100%;
    padding: 0.25rem 0.55rem 0.25rem 0.65rem;
    box-sizing: border-box;
}

.ox-date__text[b-ons96sao5f] {
    flex: 1;
    min-width: 0;
    font-size: var(--ox-ui-fs, 0.8125rem);
    line-height: 1.25;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.01em;
    color: inherit;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ox-date:not(.has-value) .ox-date__text[b-ons96sao5f] {
    color: #a1a1aa;
}

.ox-date__ico[b-ons96sao5f] {
    flex-shrink: 0;
    font-size: 0.95rem;
    color: #71717a;
    line-height: 1;
}

.ox-date:focus-within .ox-date__ico[b-ons96sao5f] {
    color: var(--ox-primary, #2563eb);
}

.ox-date__native[b-ons96sao5f] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    opacity: 0;
    cursor: pointer;
    font-size: 1rem; /* iOS 避免缩放 */
}

.ox-date.is-disabled .ox-date__native[b-ons96sao5f] {
    cursor: not-allowed;
}

.ox-date.is-dense[b-ons96sao5f] {
    min-height: 1.7rem;
    width: auto;
    min-width: 1.7rem;
}

.ox-date.is-dense .ox-date__face[b-ons96sao5f] {
    padding: 0.15rem 0.35rem;
    justify-content: center;
}

.ox-date.is-dense .ox-date__text[b-ons96sao5f] {
    display: none;
}

.ox-date.is-dense .ox-date__ico[b-ons96sao5f] {
    font-size: 0.9rem;
}

.ox-date.is-dense.has-value[b-ons96sao5f] {
    min-width: 6.5rem;
}

.ox-date.is-dense.has-value .ox-date__text[b-ons96sao5f] {
    display: block;
    font-size: 0.72rem;
}
/* /Components/Components/OxDateRangeFilter.razor.rz.scp.css */
.ox-drf[b-rdjooxk8qi] {
    position: relative;
}

.ox-drf__trigger[b-rdjooxk8qi] {
    appearance: none;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    height: var(--ox-btn-size);
    min-height: var(--ox-btn-size);
    padding: 0 0.6rem;
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background: var(--ox-surface);
    color: var(--ox-text-secondary);
    font: inherit;
    font-size: var(--ox-fs-secondary);
    line-height: 1;
    cursor: pointer;
    box-sizing: border-box;
}

.ox-drf__trigger:hover[b-rdjooxk8qi],
.ox-drf__trigger.is-open[b-rdjooxk8qi] {
    color: var(--ox-text-primary);
    background: var(--ox-state-hover-bg);
}

.ox-drf__ico[b-rdjooxk8qi] {
    font-size: 1rem;
}

.ox-drf__text[b-rdjooxk8qi] {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.ox-drf__scrim[b-rdjooxk8qi] {
    position: fixed;
    inset: 0;
    z-index: 4;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: default;
}

.ox-drf__pop[b-rdjooxk8qi] {
    position: absolute;
    top: calc(100% + 0.35rem);
    right: 0;
    z-index: 6;
    display: flex;
    flex-direction: column;
    gap: var(--ox-space);
    width: 18rem;
    padding: var(--ox-space);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background: var(--ox-surface);
    box-shadow: var(--ox-tab-segment-shadow);
    box-sizing: border-box;
}

.ox-drf__presets[b-rdjooxk8qi],
.ox-drf__range[b-rdjooxk8qi],
.ox-drf__actions[b-rdjooxk8qi] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ox-space);
}

.ox-drf__actions[b-rdjooxk8qi] {
    justify-content: flex-end;
}

.ox-drf__preset[b-rdjooxk8qi] {
    appearance: none;
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background: var(--ox-surface);
    color: var(--ox-text-secondary);
    padding: 0.2rem 0.6rem;
    font: inherit;
    font-size: var(--ox-fs-secondary);
    cursor: pointer;
}

.ox-drf__preset:hover[b-rdjooxk8qi] {
    color: var(--ox-text-primary);
    background: var(--ox-state-hover-bg);
}

.ox-drf__range[b-rdjooxk8qi]  .ox-dp {
    width: 7.5rem;
}

.ox-drf__error[b-rdjooxk8qi] {
    margin: 0;
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}
/* /Components/Components/OxImageUrlField.razor.rz.scp.css */
.ox-image-url-field__group[b-akknu23x2w] {
    display: flex;
    align-items: center;
    min-height: var(--ox-btn-size);
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background: var(--ox-surface);
}

.ox-image-url-field__group:focus-within[b-akknu23x2w] {
    border-color: var(--ox-accent);
    box-shadow: 0 0 0 1px var(--ox-focus-ring);
}

.ox-image-url-field__thumb[b-akknu23x2w] {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    align-self: stretch;
    width: var(--ox-btn-size);
    border-right: 1px solid var(--ox-border);
    background: var(--ox-state-hover-bg);
}

.ox-image-url-field__thumb img[b-akknu23x2w] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ox-image-url-field__input[b-akknu23x2w] {
    flex: 1 1 auto;
    min-width: 0;
    border: 0;
    background: transparent;
    padding: 0.25rem 0.5rem;
    font-size: var(--ox-ui-fs);
    outline: none;
    box-shadow: none;
}

.ox-image-url-field__sidebtn[b-akknu23x2w] {
    display: inline-flex;
    align-self: stretch;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    min-width: 2.75rem;
    margin: 0;
    padding: 0 0.5rem;
    border-left: 1px solid var(--ox-border);
    background: var(--ox-state-hover-bg);
    cursor: pointer;
}

.ox-image-url-field__group input[type="file"][b-akknu23x2w] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
/* /Components/Components/OxImageViewer.razor.rz.scp.css */
.ox-image-viewer[b-hbaixx9gd3] {
    position: fixed;
    inset: 0;
    z-index: 10900;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    box-sizing: border-box;
    outline: none;
}

.ox-image-viewer__backdrop[b-hbaixx9gd3] {
    position: absolute;
    inset: 0;
    margin: 0;
    padding: 0;
    border: 0;
    background: color-mix(in oklab, #0f0f0f 55%, transparent);
    cursor: pointer;
}

.ox-image-viewer__panel[b-hbaixx9gd3] {
    position: relative;
    display: flex;
    flex-direction: column;
    width: min(960px, 100%);
    height: min(80vh, 100%);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background: var(--ox-surface);
    overflow: hidden;
}

.ox-image-viewer__bar[b-hbaixx9gd3] {
    display: flex;
    align-items: center;
    gap: var(--ox-space);
    flex: 0 0 auto;
    min-height: var(--ox-panel-header-h);
    padding: 0 var(--ox-space);
    background: var(--ox-footer-bg);
}

.ox-image-viewer__title[b-hbaixx9gd3] {
    font-weight: var(--ox-fw-semibold);
    color: var(--ox-title);
}

.ox-image-viewer__count[b-hbaixx9gd3] {
    margin-inline-start: auto;
    color: var(--ox-text-secondary);
    font-size: var(--ox-ui-fs-sm);
}

.ox-image-viewer__stage[b-hbaixx9gd3] {
    position: relative;
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: grab;
    touch-action: none;
}

.ox-image-viewer__img[b-hbaixx9gd3] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    user-select: none;
    pointer-events: none;
}

.ox-image-viewer__nav[b-hbaixx9gd3] {
    position: absolute;
    top: 50%;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--ox-btn-size);
    height: var(--ox-btn-size);
    margin: 0;
    padding: 0;
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background: var(--ox-surface);
    color: var(--ox-text);
    transform: translateY(-50%);
    cursor: pointer;
}

.ox-image-viewer__nav--prev[b-hbaixx9gd3] { left: var(--ox-space); }
.ox-image-viewer__nav--next[b-hbaixx9gd3] { right: var(--ox-space); }

.ox-image-viewer__tools[b-hbaixx9gd3] {
    justify-content: center;
}

.ox-image-viewer__tool[b-hbaixx9gd3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--ox-btn-size);
    height: var(--ox-btn-size);
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: var(--ox-radius);
    background: transparent;
    color: var(--ox-text);
    cursor: pointer;
}

.ox-image-viewer__tool:hover[b-hbaixx9gd3],
.ox-image-viewer__nav:hover[b-hbaixx9gd3] {
    background: var(--ox-state-hover-bg);
    color: var(--ox-accent-foreground);
}
/* /Components/Components/OxModal.razor.rz.scp.css */
/* 弹窗壳：顶栏与底栏同高；顶栏 --ox-footer-bg，底栏在其上提亮一档 */

.ox-modal-scrim[b-h8bquc6dli] {
    position: fixed;
    inset: 0;
    z-index: 10800;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: max(12px, env(safe-area-inset-top, 0px)) max(12px, env(safe-area-inset-right, 0px))
        max(12px, env(safe-area-inset-bottom, 0px)) max(12px, env(safe-area-inset-left, 0px));
    box-sizing: border-box;
    pointer-events: none;
}

.ox-modal-backdrop[b-h8bquc6dli] {
    position: absolute;
    inset: 0;
    margin: 0;
    padding: 0;
    border: 0;
    background: color-mix(in oklab, #0f0f0f 40%, transparent);
    pointer-events: auto;
    cursor: pointer;
    appearance: none;
}

.ox-modal-panel[b-h8bquc6dli] {
    position: relative;
    z-index: 1;
    width: min(440px, 100%);
    max-height: min(85vh, 640px);
    display: flex;
    flex-direction: column;
    border-radius: 6px;
    background: var(--ox-surface);
    color: var(--ox-text-body);
    border: 1px solid var(--ox-border);
    box-shadow: 0 8px 28px color-mix(in oklab, #000 22%, transparent);
    box-sizing: border-box;
    pointer-events: auto;
    outline: none;
    overflow: hidden;
}

.ox-modal-header[b-h8bquc6dli] {
    width: 100%;
    box-sizing: border-box;
    /* 与底栏同高：上下 --ox-space + 底栏按钮高 + 1px 分隔线 */
    height: calc(var(--ox-space) * 2 + var(--ox-btn-size) - 1px) !important;
    min-height: calc(var(--ox-space) * 2 + var(--ox-btn-size) - 1px) !important;
    background: var(--ox-footer-bg) !important;
    box-shadow: 0 2px 8px rgba(15, 15, 15, 0.06) !important;
    position: relative;
    z-index: 1;
}

.ox-modal-panel > .ox-form-actions[b-h8bquc6dli] {
    /* 底栏比顶栏浅一档，亮暗都相对 --ox-footer-bg 提亮 */
    background: color-mix(in oklab, var(--ox-footer-bg) 88%, white) !important;
    box-shadow: none !important;
}

.ox-modal-header .manage-btn-icon[b-h8bquc6dli] {
    align-self: center;
    margin: 0;
}

.ox-modal-title[b-h8bquc6dli] {
    display: flex;
    align-items: center;
    gap: var(--ox-space);
}

.ox-modal-title__icon[b-h8bquc6dli] {
    flex: 0 0 auto;
    font-size: 1rem;
    line-height: 1;
    color: var(--ox-text-secondary);
}

.ox-modal-title__text[b-h8bquc6dli] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ox-modal-panel.is-danger .ox-modal-title__text[b-h8bquc6dli] {
    color: var(--ox-text-danger) !important;
}

.ox-modal-body[b-h8bquc6dli] {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding: 0;
    font-size: var(--ox-fs-body);
    box-sizing: border-box;
}

.ox-modal-body--pad[b-h8bquc6dli] {
    padding: var(--ox-form-stack-gap);
    overflow: auto;
}

.ox-modal-panel.ox-modal-panel--form[b-h8bquc6dli] {
    width: min(560px, calc(100vw - 24px));
    max-height: min(88vh, 720px);
}

.ox-modal-panel.ox-modal-panel--about[b-h8bquc6dli] {
    width: min(560px, calc(100vw - 24px));
    max-height: min(90vh, 760px);
}

.ox-modal-panel.ox-modal-panel--profile[b-h8bquc6dli] {
    width: min(400px, calc(100vw - 24px));
    max-height: min(88vh, 640px);
}

.ox-modal-panel.ox-modal-panel--form-wide[b-h8bquc6dli] {
    width: min(720px, calc(100vw - 24px));
    max-height: min(90vh, 840px);
}

.ox-modal-panel.ox-modal-panel--no-foot > .ox-form-actions[b-h8bquc6dli] {
    display: none;
}

.ox-modal-panel.ox-modal-panel--sheet[b-h8bquc6dli] {
    width: calc(100vw - 24px);
    height: calc(100vh - 24px);
    max-height: calc(100vh - 24px);
}

.ox-modal-panel.ox-modal-panel--phone-preview[b-h8bquc6dli] {
    --phone-preview-h: min(90vh, 90dvh);
    width: min(calc(var(--phone-preview-h) * 390 / 844), calc(100vw - 24px));
    height: var(--phone-preview-h);
    max-height: var(--phone-preview-h);
    max-width: calc(100vw - 24px);
    border-radius: 12px;
}

.ox-modal-panel.ox-modal-panel--contact-sheet[b-h8bquc6dli] {
    width: min(100%, 28rem);
    max-height: min(88vh, 88dvh);
    border-radius: 12px 12px 0 0;
    align-self: flex-end;
    margin-top: auto;
}

.ppm-mob-studio .ox-modal-scrim:has(.ox-modal-panel--contact-sheet)[b-h8bquc6dli] {
    align-items: flex-end;
    justify-content: center;
    padding: 0;
    padding-bottom: env(safe-area-inset-bottom, 0px);
}

.ppm-mob-studio .ox-modal-panel--contact-sheet[b-h8bquc6dli] {
    width: 100%;
    max-width: 100%;
    border-radius: 12px 12px 0 0;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
}
/* /Components/Components/OxPickerShell.razor.rz.scp.css */
/* 统一选择器外壳（ox-picker 根类 + ox-user-picker BEM，兼容旧样式） */

.ox-user-picker[b-0vlwnw2ihj] {
    box-sizing: border-box;
}

/* 仅作弹窗锚点：不占布局（弹层仍 fixed 全窗） */
.ox-user-picker--headless:not(.ox-user-picker--inline)[b-0vlwnw2ihj] {
    display: contents;
}

/* 内嵌模式：不再使用第二层 fixed 弹窗，列表在父级模态内展开 */
.ox-user-picker--inline .ox-user-picker__field-row[b-0vlwnw2ihj] {
    margin-bottom: 8px;
}

.ox-user-picker__inline-surface[b-0vlwnw2ihj] {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-height: 0;
    max-height: min(52vh, 420px);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius, 6px);
    background: var(--ox-surface);
    color: var(--ox-text-body);
    box-shadow: none;
}

.ox-user-picker__inline-title[b-0vlwnw2ihj] {
    margin: 0;
    padding: 10px 14px 0;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--ox-text-primary);
}

.ox-user-picker__inline-hint[b-0vlwnw2ihj] {
    margin: 0;
    padding: 8px 14px 10px;
    font-size: 0.75rem;
    line-height: 1.4;
    color: var(--ox-text-secondary);
    border-top: 1px solid var(--ox-border);
    flex-shrink: 0;
}

.ox-user-picker__inline-surface .ox-user-picker__user-list[b-0vlwnw2ihj] {
    min-height: 180px;
    max-height: min(36vh, 320px);
}

.ox-user-picker__inline-surface .ox-user-picker__pager[b-0vlwnw2ihj] {
    border-top: 1px solid var(--ox-border);
}

.ox-user-picker__field-label[b-0vlwnw2ihj] {
    display: block;
    margin-bottom: 6px;
    font-size: var(--ox-ui-fs-sm, 0.875rem);
    color: var(--ox-text-secondary);
}

.ox-user-picker__field-row[b-0vlwnw2ihj] {
    position: relative;
    display: block;
    width: 100%;
    min-width: 0;
}

.ox-user-picker__chips[b-0vlwnw2ihj] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    width: 100%;
    min-width: 0;
    min-height: var(--ox-btn-size, 2rem);
    padding: 4px 2.25rem 4px 0.625rem;
    border: 1px solid var(--ox-border, #e3e3e3);
    border-radius: var(--ox-radius, 4px);
    background: var(--ox-surface);
    box-sizing: border-box;
}

.ox-user-picker__field-row.is-no-open .ox-user-picker__chips[b-0vlwnw2ihj] {
    padding-right: 0.625rem;
}

.ox-user-picker:focus-within .ox-user-picker__chips[b-0vlwnw2ihj] {
    border-color: var(--ox-accent, #3b82f6);
    box-shadow: 0 0 0 1px var(--ox-focus-ring, rgba(59, 130, 246, 0.35));
}

/* 打开选择器：右侧放大镜（对齐 lookup / select 箭头位） */
.ox-user-picker__open[b-0vlwnw2ihj] {
    position: absolute;
    right: 0.35rem;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem !important;
    min-width: 1.5rem;
    min-height: 1.5rem !important;
    margin: 0;
    padding: 0 !important;
    gap: 0;
    border: none !important;
    border-radius: var(--ox-radius, 4px);
    background: transparent !important;
    box-shadow: none !important;
    color: var(--ox-text-secondary) !important;
    cursor: pointer;
    overflow: hidden;
}

.ox-user-picker__open:hover[b-0vlwnw2ihj] {
    background: var(--ox-state-hover-bg) !important;
    color: var(--ox-accent-foreground) !important;
}

.ox-user-picker__open-text[b-0vlwnw2ihj] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.ox-user-picker__empty[b-0vlwnw2ihj] {
    font-size: var(--ox-fs-secondary, 0.75rem);
    color: var(--ox-text-secondary, #71717a);
}

.ox-user-picker__chip[b-0vlwnw2ihj] {
    display: inline-flex;
    align-items: center;
    gap: 0.15rem;
    max-width: 100%;
    /* 低于默认 input（--ox-btn-size）一截 */
    min-height: 1.25rem;
    padding: 0 0.15rem 0 0.4rem;
    border-radius: var(--ox-radius, 4px);
    background: var(--ox-chip-bg);
    color: var(--ox-chip-fg);
    font-size: var(--ox-fs-secondary, 0.75rem);
    line-height: 1.15;
    box-sizing: border-box;
}

.ox-user-picker__chip-text[b-0vlwnw2ihj] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 200px;
    padding-block: 0;
}

.ox-user-picker__chip-remove[b-0vlwnw2ihj] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    padding: 0;
    border: none;
    border-radius: var(--ox-radius, 4px);
    background: transparent;
    color: inherit;
    cursor: pointer;
    flex-shrink: 0;
    font-size: 0.75rem;
    line-height: 1;
}

.ox-user-picker__chip-remove:hover[b-0vlwnw2ihj],
.ox-picker__chip-remove:hover[b-0vlwnw2ihj] {
    background: color-mix(in oklab, var(--ox-text-primary) 12%, transparent);
}

.ox-user-picker__open-icon[b-0vlwnw2ihj] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    font-size: 1rem;
    line-height: 1;
    opacity: 0.9;
}

.ox-user-picker__backdrop[b-0vlwnw2ihj] {
    position: fixed;
    inset: 0;
    /* 高于「添加考评卷」等同级 fixed 弹层（1050），便于套娃选人 */
    z-index: 1060;
    background: rgba(15, 23, 42, 0.45);
}

.ox-user-picker__dialog[b-0vlwnw2ihj] {
    position: fixed;
    z-index: 1070;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: min(480px, calc(100vw - 32px));
    max-height: min(560px, calc(100vh - 48px));
    display: flex;
    flex-direction: column;
    border-radius: 8px;
    border: 1px solid var(--ox-border);
    background: var(--ox-surface);
    color: var(--ox-text-body);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    outline: none;
}

/* 大尺寸：新建群聊、批量选人等场景 */
.ox-user-picker__dialog--large[b-0vlwnw2ihj] {
    width: min(52rem, calc(100vw - 1.5rem));
    max-height: min(92vh, 960px);
    border-radius: 10px;
    box-shadow: 0 28px 64px -16px rgba(15, 23, 42, 0.35);
}

.ox-user-picker__dialog--large .ox-user-picker__dialog-title[b-0vlwnw2ihj] {
    font-size: 1.1rem;
}

.ox-user-picker__dialog--large .ox-user-picker__dialog-search[b-0vlwnw2ihj] {
    padding: 14px 18px 10px;
}

.ox-user-picker__dialog--large .ox-user-picker__search-input[b-0vlwnw2ihj] {
    padding: 10px 12px;
    font-size: 0.9375rem;
}

.ox-user-picker__dialog--large .ox-user-picker__user-list[b-0vlwnw2ihj] {
    min-height: min(48vh, 480px);
    max-height: min(58vh, 560px);
    padding: 6px 14px;
}

.ox-user-picker__dialog--large .ox-user-picker__user-label[b-0vlwnw2ihj] {
    padding: 10px 6px;
}

.ox-user-picker__dialog--large .ox-user-picker__user-avatar-wrap[b-0vlwnw2ihj] {
    width: 2.5rem;
    height: 2.5rem;
}

.ox-user-picker__dialog--large .ox-user-picker__user-name[b-0vlwnw2ihj] {
    font-size: 0.9375rem;
}

.ox-user-picker__dialog--large .ox-user-picker__user-field-value[b-0vlwnw2ihj] {
    max-width: min(18rem, 48vw);
}

.ox-user-picker__dialog--large .ox-user-picker__dialog-footer[b-0vlwnw2ihj],
.ox-user-picker__dialog--large .ox-user-picker__pager[b-0vlwnw2ihj] {
    padding-left: 18px;
    padding-right: 18px;
}

.ox-user-picker__dialog-header[b-0vlwnw2ihj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    border-bottom: 1px solid var(--ox-border, #e2e8f0);
    flex-shrink: 0;
}

.ox-user-picker__dialog-title[b-0vlwnw2ihj] {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: var(--ox-text-primary);
}

/* 对话框关闭使用全局 .manage-btn-icon */

.ox-user-picker__dialog-search[b-0vlwnw2ihj] {
    display: flex;
    align-items: center;
    padding: 0.75rem 1rem 0.5rem;
    flex-shrink: 0;
}

.ox-user-picker__search-field[b-0vlwnw2ihj] {
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: center;
}

.ox-user-picker__toolbar[b-0vlwnw2ihj] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    padding: 0 16px 8px;
    flex-shrink: 0;
}

/* 弹窗搜索：放大镜在输入框内左侧 */
.ox-user-picker__search-icon[b-0vlwnw2ihj] {
    position: absolute;
    left: 0.625rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.9375rem;
    color: var(--ox-text-secondary, #71717a);
    pointer-events: none;
    z-index: 1;
    line-height: 1;
}

.ox-user-picker__search-input[b-0vlwnw2ihj] {
    flex: 1;
    width: 100%;
    min-width: 0;
    min-height: var(--ox-btn-size, 2rem);
    padding: 0.375rem 0.625rem 0.375rem 2rem;
    border: 1px solid var(--ox-border, #e3e3e3);
    border-radius: var(--ox-radius, 4px);
    font-size: var(--ox-fs-body, 0.8125rem);
    color: var(--ox-text-body);
    background-color: var(--ox-surface);
    box-sizing: border-box;
}

.ox-user-picker__search-input[b-0vlwnw2ihj]::placeholder {
    color: var(--ox-text-secondary);
}

.ox-user-picker__search-input:focus[b-0vlwnw2ihj] {
    outline: none;
    border-color: var(--ox-accent, #3b82f6);
    box-shadow: 0 0 0 1px var(--ox-focus-ring, rgba(59, 130, 246, 0.35));
}

.ox-user-picker__list-error[b-0vlwnw2ihj],
.ox-user-picker__list-loading[b-0vlwnw2ihj],
.ox-user-picker__list-empty[b-0vlwnw2ihj] {
    padding: 20px 16px;
    text-align: center;
    font-size: var(--ox-ui-fs-sm, 0.875rem);
    color: var(--ox-muted, #64748b);
}

.ox-user-picker__list-error[b-0vlwnw2ihj] {
    color: var(--ox-text-danger);
}

.ox-user-picker__user-list[b-0vlwnw2ihj] {
    list-style: none;
    margin: 0;
    padding: 4px 12px;
    overflow-y: auto;
    flex: 1 1 auto;
    min-height: 120px;
}

.ox-user-picker__user-row[b-0vlwnw2ihj] {
    margin: 0;
    border-bottom: 1px solid var(--ox-border);
}

.ox-user-picker__user-row:last-child[b-0vlwnw2ihj] {
    border-bottom: none;
}

.ox-user-picker__user-label[b-0vlwnw2ihj] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 4px;
    cursor: pointer;
    margin: 0;
    border-radius: var(--ox-radius);
}

.ox-user-picker__user-label:hover[b-0vlwnw2ihj] {
    background: var(--ox-state-hover-bg);
}

.ox-user-picker__user-row[aria-selected="true"] .ox-user-picker__user-label[b-0vlwnw2ihj] {
    background: var(--ox-state-selected-bg);
}

.ox-user-picker__user-check[b-0vlwnw2ihj] {
    align-self: center;
    flex-shrink: 0;
    margin: 0;
    accent-color: var(--ox-accent);
}

.ox-user-picker__user-avatar-wrap[b-0vlwnw2ihj] {
    flex-shrink: 0;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 0.35rem;
    overflow: hidden;
    border: 1px solid var(--ox-border);
    background: var(--ox-state-hover-bg);
}

.ox-user-picker__user-avatar[b-0vlwnw2ihj] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ox-user-picker__user-main[b-0vlwnw2ihj] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    flex: 1 1 auto;
}

.ox-user-picker__user-name[b-0vlwnw2ihj] {
    font-weight: 600;
    font-size: var(--ox-ui-fs-sm, 0.875rem);
    color: var(--ox-text-primary);
    line-height: 1.25;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* 第二行：部门 + 账号，统一标签 */
.ox-user-picker__user-meta[b-0vlwnw2ihj] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.65rem 1rem;
    min-width: 0;
}

.ox-user-picker__user-field[b-0vlwnw2ihj] {
    display: inline-flex;
    align-items: baseline;
    gap: 0.28rem;
    min-width: 0;
    max-width: 100%;
}

.ox-user-picker__user-field-label[b-0vlwnw2ihj] {
    flex-shrink: 0;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--ox-muted, #64748b);
    letter-spacing: 0.02em;
}

.ox-user-picker__user-field-value[b-0vlwnw2ihj] {
    font-size: 0.75rem;
    color: var(--ox-text-body);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: min(14rem, 42vw);
}

.ox-user-picker__pager[b-0vlwnw2ihj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 8px 16px;
    border-top: 1px solid var(--ox-border, #e2e8f0);
    flex-shrink: 0;
    flex-wrap: wrap;
}

/* 分页使用全局 .manage-text-btn */

.ox-user-picker__pager-info[b-0vlwnw2ihj] {
    font-size: 0.75rem;
    color: var(--ox-muted, #64748b);
    flex: 1 1 auto;
    text-align: center;
}

.ox-user-picker__dialog-footer[b-0vlwnw2ihj] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding: 12px 16px;
    border-top: 1px solid var(--ox-border, #e2e8f0);
    flex-shrink: 0;
}

/* 底栏使用全局 .menu-btn / .menu-btn-primary */

.ox-org-picker__icon[b-0vlwnw2ihj] {
    flex-shrink: 0;
    width: 1.75rem;
    height: 1.75rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--ox-muted, #64748b);
    font-size: 1.1rem;
}

.ox-org-picker__list[b-0vlwnw2ihj] {
    max-height: min(52vh, 28rem);
}

/* /Components/Components/ProfileSelfEditModal.razor.rz.scp.css */
/* 个人信息弹框：头像 + 标签行铺满；邮箱/手机、密码两列 */
.profile-modal[b-6apvwrrm4n] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    min-width: 0;
}

.profile-modal--empty[b-6apvwrrm4n] {
    padding: 10px 16px 14px;
    justify-content: center;
}

.profile-modal-scroll[b-6apvwrrm4n] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 0.75rem 0.85rem 0.35rem;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
}

.profile-modal-footer[b-6apvwrrm4n] {
    flex-shrink: 0;
}

.profile-top[b-6apvwrrm4n] {
    display: flex;
    align-items: stretch;
    gap: 0.75rem;
    margin: 0;
    padding: 0.15rem 0 0.75rem;
    border-bottom: 1px solid var(--ox-border, #e3e3e3);
}

.profile-avatar-wrap[b-6apvwrrm4n] {
    position: relative;
    flex-shrink: 0;
    align-self: center;
    width: 4rem;
    height: 4rem;
    border-radius: 0.55rem;
    overflow: hidden;
    background: var(--ox-state-hover-bg, #f4f4f5);
    border: 1px solid var(--ox-border, #e3e3e3);
}

.profile-avatar-wrap--editable[b-6apvwrrm4n] {
    cursor: pointer;
}

.profile-avatar-input[b-6apvwrrm4n],
.profile-top[b-6apvwrrm4n]  input[type="file"].profile-avatar-input,
.profile-top[b-6apvwrrm4n]  input[type="file"] {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
    opacity: 0 !important;
    pointer-events: none;
}

.profile-avatar-img[b-6apvwrrm4n] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.profile-avatar-hint[b-6apvwrrm4n] {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    padding: 0.14rem 0;
    font-size: 0.625rem;
    font-weight: 650;
    text-align: center;
    color: #fff;
    background: rgba(15, 23, 42, 0.55);
    opacity: 0;
    transition: opacity 0.12s ease;
    pointer-events: none;
}

.profile-avatar-wrap--editable:hover .profile-avatar-hint[b-6apvwrrm4n] {
    opacity: 1;
}

.profile-top-main[b-6apvwrrm4n] {
    flex: 1;
    min-width: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.4rem 0.65rem;
    align-content: center;
}

/* 图标 | 标签 | 内容 */
.profile-meta-row[b-6apvwrrm4n] {
    display: grid;
    grid-template-columns: 1rem 2.1rem minmax(0, 1fr);
    column-gap: 0.3rem;
    align-items: baseline;
    min-width: 0;
}

.profile-meta-row--name[b-6apvwrrm4n] {
    align-items: center;
}

.profile-meta-ico[b-6apvwrrm4n] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    font-size: 0.9rem;
    line-height: 1;
    color: var(--ox-text-secondary, #71717a);
}

.profile-meta-row--name .profile-meta-ico[b-6apvwrrm4n] {
    font-size: 0.95rem;
    color: var(--ox-accent-foreground, #1d4ed8);
}

.profile-meta-label[b-6apvwrrm4n] {
    font-size: var(--ox-fs-secondary, 0.75rem);
    font-weight: var(--ox-fw-medium, 500);
    color: var(--ox-text-secondary, #71717a);
    line-height: 1.35;
    white-space: nowrap;
}

.profile-meta-text[b-6apvwrrm4n] {
    min-width: 0;
    font-size: var(--ox-fs-body, 0.8125rem);
    font-weight: var(--ox-fw-medium, 500);
    line-height: 1.35;
    color: var(--ox-text-body, #27272a);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.profile-meta-text--name[b-6apvwrrm4n] {
    font-size: var(--ox-fs-title, 0.875rem);
    font-weight: var(--ox-fw-semibold, 600);
    color: var(--ox-text-primary, #18181b);
}

/* 邮箱/手机、密码：两列填满 */
.profile-fields[b-6apvwrrm4n] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem 0.65rem;
    align-items: start;
}

.profile-field[b-6apvwrrm4n] {
    min-width: 0;
    margin: 0;
}

.profile-muted[b-6apvwrrm4n] {
    font-size: 0.75rem;
    color: var(--ox-muted, #6b7280);
    margin: 0;
    line-height: 1.2;
}

.profile-error[b-6apvwrrm4n] {
    font-size: 0.75rem;
    color: var(--ox-text-danger, #b91c1c);
    margin: 0;
    line-height: 1.2;
}

.profile-error-banner[b-6apvwrrm4n] {
    margin: 0;
    padding: 4px 6px;
    border-radius: 4px;
    background: color-mix(in oklab, var(--ox-text-danger, #b91c1c) 10%, var(--ox-surface, #fff));
    border: 1px solid color-mix(in oklab, var(--ox-text-danger, #b91c1c) 28%, var(--ox-border, #e3e3e3));
}

@media (max-width: 420px) {
    .profile-top-main[b-6apvwrrm4n],
    .profile-fields[b-6apvwrrm4n] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Components/ShellLayout.razor.rz.scp.css */
/* ============================================================
   Obsidian 式 Shell：扁平工作区、细边框、无厚卡片阴影。
   ============================================================ */

.shell-root.shell-root--surface[b-wbctkuawho] {
    background: var(--obs-bg);
    box-shadow: none;
    overflow: hidden;
}

/* 路由切换 / 首帧恢复布局：遮罩盖住抖动，绘制稳定后由 ShellLayout 关闭 */
.shell-root--prefs-pending[b-wbctkuawho] {
    visibility: hidden;
}

.shell-prefs-mask[b-wbctkuawho] {
    position: absolute;
    inset: 0;
    z-index: 12000;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    background: var(--obs-bg, #fff);
    color: var(--obs-muted, #6b7280);
    pointer-events: all;
}

.shell-prefs-mask__inner[b-wbctkuawho] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
}

.shell-prefs-mask__spinner[b-wbctkuawho] {
    width: 1.5rem;
    height: 1.5rem;
    border: 2px solid color-mix(in oklab, var(--ox-accent, #4d8fe8) 22%, var(--ox-border, #e3e3e3));
    border-top-color: var(--ox-accent, #4d8fe8);
    border-radius: 50%;
    animation: shell-prefs-spin-b-wbctkuawho 0.7s linear infinite;
}

.shell-prefs-mask__text[b-wbctkuawho] {
    margin: 0;
    font-size: var(--ox-fs-secondary, 0.75rem);
    font-weight: var(--ox-fw-regular, 400);
    line-height: 1.4;
}

@keyframes shell-prefs-spin-b-wbctkuawho {
    to {
        transform: rotate(360deg);
    }
}

.shell-viewport[b-wbctkuawho] {
    /* 跟随 html data-ox-skin / data-ox-scheme-resolved（skins.css），勿写死浅色 */
    --obs-bg: var(--shell-content-bg, var(--ox-surface));
    --obs-sidebar: var(--shell-column-bg, var(--shell-muted-strip-bg));
    --obs-rail: var(--shell-rail-bg);
    --obs-border: var(--shell-rail-border, var(--ox-border));
    --obs-text: var(--ox-text-body);
    --obs-muted: var(--ox-text-secondary);
    --obs-hover: var(--ox-state-hover-bg);
    --obs-active: var(--ox-state-selected-chrome-bg, var(--ox-state-selected-bg));
    --obs-focus: var(--ox-accent);
    /* 左侧图标轨：点击面、glyph、默认/悬停/选中色 */
    --shell-rail-w: 3rem;
    --shell-rail-btn: var(--ox-btn-size);
    --shell-rail-face: 1.375rem;
    --shell-rail-glyph: 1.125rem;
    --shell-rail-gap: 0.25rem;
    --shell-rail-pad: 0.375rem;
    --shell-rail-icon: var(--ox-text-secondary);
    --shell-rail-icon-hover: var(--ox-text-primary);
    --shell-rail-icon-active: var(--ox-accent-foreground);
    position: relative;
    background: var(--obs-bg);
    color: var(--obs-text);
    overflow-x: hidden;
}

.shell-left-rail[b-wbctkuawho] {
    width: var(--shell-rail-w) !important;
    min-width: var(--shell-rail-w) !important;
    max-width: var(--shell-rail-w) !important;
    background: var(--obs-rail) !important;
    border-right: 1px solid var(--obs-border) !important;
    padding: var(--shell-rail-pad) 0 !important;
    gap: var(--shell-rail-gap) !important;
    box-sizing: border-box;
}

.shell-left-middle[b-wbctkuawho],
.shell-left-rail-bottom[b-wbctkuawho] {
    gap: var(--shell-rail-gap) !important;
    width: 100%;
}

/* 明暗快捷：悬停展开 Light / Dark / 跟随系统 */
.shell-scheme-menu[b-wbctkuawho] {
    position: relative;
    z-index: 40;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--shell-rail-btn);
    height: var(--shell-rail-btn);
    flex-shrink: 0;
}

.shell-scheme-menu__flyout[b-wbctkuawho] {
    position: absolute;
    left: calc(100% + 0.35rem);
    bottom: 0;
    display: none;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 7.5rem;
    padding: 0.35rem;
    border-radius: var(--ox-radius, 4px);
    border: 1px solid var(--ox-border, #e3e3e3);
    background: var(--ox-surface, #fff);
    box-shadow:
        0 4px 6px color-mix(in oklab, var(--ox-text-body, #27272a) 6%, transparent),
        0 12px 28px color-mix(in oklab, var(--ox-text-body, #27272a) 12%, transparent);
    color: var(--ox-text-body, #27272a);
}

.shell-scheme-menu__flyout[b-wbctkuawho]::before {
    content: "";
    position: absolute;
    right: 100%;
    bottom: 0;
    width: 0.45rem;
    height: 100%;
}

.shell-scheme-menu:hover .shell-scheme-menu__flyout[b-wbctkuawho],
.shell-scheme-menu:focus-within .shell-scheme-menu__flyout[b-wbctkuawho] {
    display: flex;
}

.shell-scheme-menu:hover .shell-scheme-menu__trigger[b-wbctkuawho],
.shell-scheme-menu:focus-within .shell-scheme-menu__trigger[b-wbctkuawho] {
    background: var(--obs-hover);
    color: var(--shell-rail-icon-hover);
}

.shell-scheme-menu__item[b-wbctkuawho] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    width: 100%;
    margin: 0;
    padding: 0.4rem 0.5rem;
    border: none;
    border-radius: var(--ox-radius, 4px);
    background: transparent;
    color: var(--ox-text-body, #27272a);
    font-size: var(--ox-fs-secondary, 0.75rem);
    font-weight: var(--ox-fw-medium, 500);
    line-height: 1.2;
    text-align: left;
    cursor: pointer;
    white-space: nowrap;
}

.shell-scheme-menu__item .ph[b-wbctkuawho] {
    font-size: 0.95rem;
    line-height: 1;
    color: var(--ox-text-secondary, #71717a);
}

.shell-scheme-menu__item:hover[b-wbctkuawho] {
    background: var(--ox-state-hover-bg, #f4f4f5);
}

.shell-scheme-menu__item.is-active[b-wbctkuawho] {
    background: color-mix(in oklab, var(--ox-accent, #3b82f6) 14%, var(--ox-surface, #fff));
    color: var(--ox-accent-foreground, #1d4ed8);
}

.shell-scheme-menu__item.is-active .ph[b-wbctkuawho] {
    color: var(--ox-accent-foreground, #1d4ed8);
}

/* Tooltip 包裹层也占满同一格子，避免 logo/钮视觉错位 */
.shell-left-rail[b-wbctkuawho]  .mud-tooltip-root {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: var(--shell-rail-btn);
    height: var(--shell-rail-btn);
    min-width: var(--shell-rail-btn);
    min-height: var(--shell-rail-btn);
    flex-shrink: 0;
    margin: 0;
    padding: 0;
    line-height: 0;
}

/* Logo / 头像 / 菜单钮：同一点击面（勿混用 manage-btn-icon / MudIconButton） */
.shell-left-rail .shell-brand[b-wbctkuawho],
.shell-left-rail .shell-user-avatar-btn[b-wbctkuawho],
.shell-left-rail .shell-icon[b-wbctkuawho],
.shell-left-rail .shell-scheme-menu__trigger[b-wbctkuawho] {
    box-sizing: border-box;
    width: var(--shell-rail-btn) !important;
    height: var(--shell-rail-btn) !important;
    min-width: var(--shell-rail-btn) !important;
    min-height: var(--shell-rail-btn) !important;
    max-width: var(--shell-rail-btn) !important;
    max-height: var(--shell-rail-btn) !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: var(--ox-radius, 4px);
    border: none;
    background: transparent;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--shell-rail-icon);
    text-decoration: none;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    transition: background-color 0.12s ease, color 0.12s ease;
}

.shell-rail-slot[b-wbctkuawho] {
    display: contents;
}

.shell-left-rail button.shell-icon[b-wbctkuawho] {
    color: var(--shell-rail-icon);
}

.shell-left-rail .shell-icon:hover[b-wbctkuawho],
.shell-left-rail button.shell-icon:hover[b-wbctkuawho] {
    background: var(--obs-hover);
    color: var(--shell-rail-icon-hover);
}

.shell-left-rail button.shell-icon.active[b-wbctkuawho],
.shell-left-rail button.shell-icon.active:hover[b-wbctkuawho] {
    background: var(--obs-active);
    color: var(--shell-rail-icon-active);
}

.shell-brand[b-wbctkuawho] {
    cursor: default;
}

.shell-brand-mark[b-wbctkuawho] {
    width: var(--shell-rail-face) !important;
    height: auto !important;
    aspect-ratio: 139 / 150;
    max-height: var(--shell-rail-face) !important;
    object-fit: contain;
    display: block;
    background: transparent;
}

.shell-user-avatar-btn:disabled[b-wbctkuawho] {
    opacity: 0.55;
    cursor: not-allowed;
}

.shell-left-rail .shell-user-avatar-btn:hover:not(:disabled)[b-wbctkuawho] {
    background: var(--obs-hover);
    color: var(--shell-rail-icon-hover);
}

.shell-user-avatar-img[b-wbctkuawho] {
    width: var(--shell-rail-face) !important;
    height: var(--shell-rail-face) !important;
    border-radius: 4px;
    object-fit: cover;
    display: block;
    background: var(--ox-state-hover-bg, #f4f4f5);
}

.shell-left-rail .shell-user-avatar-fallback[b-wbctkuawho] {
    font-size: var(--shell-rail-glyph) !important;
    line-height: 1 !important;
    color: inherit !important;
}

[b-wbctkuawho] .shell-mud-avatar.mud-avatar,
.shell-mud-avatar[b-wbctkuawho],
.shell-user-avatar[b-wbctkuawho] {
    width: var(--shell-rail-face) !important;
    height: var(--shell-rail-face) !important;
    min-width: var(--shell-rail-face) !important;
    min-height: var(--shell-rail-face) !important;
    max-width: var(--shell-rail-face) !important;
    max-height: var(--shell-rail-face) !important;
    font-size: 0.65rem !important;
}

[b-wbctkuawho] .shell-mud-avatar .mud-image,
[b-wbctkuawho] .shell-mud-avatar img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
}

.shell-left-rail .shell-icon .ph[b-wbctkuawho],
.shell-left-rail .shell-scheme-menu__trigger .ph[b-wbctkuawho] {
    font-size: var(--shell-rail-glyph) !important;
    line-height: 1 !important;
    width: 1em;
    height: 1em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: inherit !important;
}

[b-wbctkuawho] .shell-rail-loading.mud-progress-circular {
    width: var(--shell-rail-face) !important;
    height: var(--shell-rail-face) !important;
    margin: calc((var(--shell-rail-btn) - var(--shell-rail-face)) / 2) 0;
}

.shell-left-column[b-wbctkuawho],
.shell-left.shell-left-column[b-wbctkuawho] {
    background: var(--obs-sidebar) !important;
    /* 右边线由 .shell-left-splitter 承担，避免双线形成空隙感 */
    border-right: none !important;
}

/* 子菜单列固定宽：由 --shell-left-w 驱动（拖拽 / 默认 264） */
.shell-left-sized[b-wbctkuawho] {
    width: var(--shell-left-w, 264px);
    flex: 0 0 var(--shell-left-w, 264px);
    max-width: min(40vw, 420px);
    min-width: 0;
    box-sizing: border-box;
    overflow: hidden;
}

.shell-left-column--dim[b-wbctkuawho],
.shell-left-rail--dim[b-wbctkuawho] {
    background: var(--obs-sidebar) !important;
}

.shell-subpanel[b-wbctkuawho] {
    background: transparent;
    width: 100%;
    min-width: 0;
}

/* 左/右栏顶栏跟列面同色（勿用 --ox-header-bg：那是中间主面板顶栏） */
.shell-subpanel-detail-header.manage-detail-header[b-wbctkuawho],
.shell-left .manage-detail-header[b-wbctkuawho],
[b-wbctkuawho] .shell-right-drawer .manage-detail-header {
    min-height: 2.25rem;
    height: 2.25rem;
    padding: 0 var(--ox-space, 0.5rem);
    border-bottom: 1px solid var(--obs-border);
    background: var(--obs-sidebar) !important;
    box-shadow: none;
    border-radius: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.25rem;
}

.shell-subpanel-detail-header .manage-detail-title[b-wbctkuawho],
.shell-left .manage-detail-title[b-wbctkuawho] {
    font-size: var(--ox-fs-title, 0.875rem);
    font-weight: var(--ox-fw-semibold, 600);
    letter-spacing: normal;
    text-transform: none;
    color: var(--ox-text-primary, var(--obs-text, #18181b));
    line-height: 1.25;
}

.shell-subnav-list[b-wbctkuawho] {
    padding: 0.25rem var(--ox-space, 0.5rem) var(--ox-space, 0.5rem);
}

.shell-main-area[b-wbctkuawho],
.shell-middle.shell-main-pane[b-wbctkuawho],
.shell-middle--content-dim[b-wbctkuawho] {
    background: var(--obs-bg) !important;
}

.shell-middle.shell-main-pane[b-wbctkuawho] {
    box-sizing: border-box;
    /* 四边贴齐：勿留 padding，否则面板右/底边框外会露一条底色空隙 */
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
    overflow-x: hidden;
    overflow-y: auto;
    min-width: 0;
}

.shell-middle.shell-main-pane > *[b-wbctkuawho] {
    margin: 0;
    min-height: 0;
    min-width: 0;
    max-width: 100%;
}

.shell-middle.shell-main-pane > .manage-middle[b-wbctkuawho] {
    flex: 1 1 auto;
    height: auto;
    min-height: 0;
    min-width: 0;
    max-width: 100%;
    width: auto;
    align-self: stretch;
    margin: 0;
}

.shell-main-area[b-wbctkuawho] {
    min-width: 0;
    overflow: hidden;
}

/* 工作区面板：细边、无阴影（替代厚 MudPaper） */
.ox-workspace[b-wbctkuawho],
[b-wbctkuawho] .ox-workspace.mud-paper {
    background: var(--obs-bg);
    border: 1px solid var(--obs-border);
    border-radius: 4px;
    box-shadow: none !important;
}

[b-wbctkuawho] .ox-workspace.mud-paper {
    padding: var(--ox-space, 0.5rem) !important;
}

.ox-workspace-title[b-wbctkuawho] {
    font-size: var(--ox-fs-title, 0.875rem);
    font-weight: var(--ox-fw-semibold, 600);
    color: var(--ox-text-primary, var(--obs-text));
    margin: 0;
}

.ox-workspace-lead[b-wbctkuawho] {
    font-size: var(--ox-fs-secondary, 0.75rem);
    font-weight: var(--ox-fw-regular, 400);
    color: var(--ox-text-secondary, var(--obs-muted));
    margin: 0;
}

/* 管理面板去卡片感 */
[b-wbctkuawho] .manage-panel {
    box-shadow: none !important;
    border-radius: 4px;
    border-color: var(--obs-border);
}

[b-wbctkuawho] .manage-panel-header {
    background: transparent;
    border-bottom: 1px solid var(--obs-border);
    min-height: var(--ox-panel-header-h, 2.25rem);
    height: var(--ox-panel-header-h, 2.25rem);
    box-shadow: none;
}

/* 右侧抽屉：像 Obsidian 侧栏，非 Material 浮层 */
[b-wbctkuawho] .shell-right-drawer.mud-drawer {
    height: 100%;
    border-left: 1px solid var(--obs-border);
    box-shadow: none !important;
}

[b-wbctkuawho] .shell-right-drawer .mud-drawer-content {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 0;
    background: var(--obs-sidebar);
}

.shell-right-drawer-pane[b-wbctkuawho] {
    height: 100%;
    min-height: 0;
    background: var(--obs-sidebar);
}

[b-wbctkuawho] .shell-right-drawer .shell-right-scroll {
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    /* 底无 padding：与全局一致，避免 sticky 底栏负 margin 裁切 */
    padding: 0 var(--ox-space, 0.5rem);
    display: flex;
    flex-direction: column;
    gap: 0;
}

[b-wbctkuawho] .shell-right-drawer .shell-right-scroll > * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* 右栏顶栏：拉满/背景/高度走 ox-ui-system .manage-detail-header，勿再 transparent 或自造高度 */

[b-wbctkuawho] .shell-right-drawer .manage-detail-header + .ox-form-stack,
[b-wbctkuawho] .shell-right-drawer .manage-detail-header + .tasks-manage-right-body,
[b-wbctkuawho] .shell-right-drawer .manage-detail-header + .ox-form-field-legend {
    margin-top: 0.75rem !important;
}

[b-wbctkuawho] .shell-right-drawer .ox-form-stack,
[b-wbctkuawho] .shell-right-drawer .tasks-manage-right-body {
    flex: 1 1 auto;
    min-height: 0;
}

/* 右栏底栏：样式统一走 ox-ui-system .ox-form-actions.shell-right-sticky-actions，勿在此覆盖 padding/背景 */

/* 勿用 background 简写：会清空 select 的 background-image（下拉箭头） */
[b-wbctkuawho] .shell-right-drawer .ox-form-control:not(:disabled):not([readonly]),
[b-wbctkuawho] .shell-right-drawer select.ox-form-control:not(:disabled),
[b-wbctkuawho] .shell-right-drawer textarea.ox-form-control:not(:disabled):not([readonly]) {
    background-color: var(--ox-surface);
}

[b-wbctkuawho] .shell-right-drawer .ox-form-field-legend__text {
    background: var(--obs-sidebar);
}

[b-wbctkuawho] .mud-overlay {
    backdrop-filter: none;
    background-color: rgba(15, 15, 15, 0.22) !important;
}

/* 堆叠：无重合边距 */
[b-wbctkuawho] .ox-space-stack {
    display: flex;
    flex-direction: column;
    gap: var(--ox-space, 0.5rem);
}

[b-wbctkuawho] .ox-space-stack > * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Mud 表格贴近 Obsidian：紧凑、细线 */
[b-wbctkuawho] .mud-table {
    background: transparent;
}

[b-wbctkuawho] .mud-table .mud-table-cell {
    border-color: var(--obs-border);
}

[b-wbctkuawho] .mud-button-root {
    text-transform: none;
    letter-spacing: normal;
}

.shell-left-splitter[b-wbctkuawho] {
    /* 通顶实线由全局 .shell-left-splitter background 承担；勿再 border / 渐变顶段留白 */
    border-right: none !important;
    margin: 0;
    padding: 0;
}
/* /Components/Components/ShellNavMenu.razor.rz.scp.css */
/* ============================================================
   子菜单列（shell-subpanel）：统一宽度内的字号 / 行高 / 图标 / 按钮
   ============================================================ */

.shell-subpanel[b-xnwahy64m5] {
    --shell-subnav-fs: var(--ox-ui-fs, 0.8125rem);
    --shell-subnav-row-h: 2rem;
    --shell-subnav-icon: 1rem;
    --shell-subnav-pad-x: 0.5rem;
    --shell-subnav-indent: 0.75rem;
    background: transparent;
    min-width: 0;
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* 顶栏：与主区 manage-panel-header 同高，折叠钮尺寸固定 */
.shell-subpanel > .manage-detail-header.shell-subpanel-detail-header[b-xnwahy64m5] {
    justify-content: space-between;
    align-items: center;
    width: 100%;
    min-height: var(--ox-panel-header-h, 2.25rem);
    height: var(--ox-panel-header-h, 2.25rem);
    padding: 0 var(--ox-space, 0.5rem);
    margin: 0;
    /* 与左栏列面一致；覆盖 ox-ui-system 的 --ox-header-bg（主区顶栏用） */
    background: var(--obs-sidebar, var(--shell-column-bg)) !important;
    border-bottom: 1px solid var(--obs-border, var(--ox-border, #e3e3e3));
    border-radius: 0;
    box-shadow: none;
    gap: var(--ox-space-xs, 0.25rem);
    box-sizing: border-box;
}

.shell-subpanel-detail-header .manage-detail-title[b-xnwahy64m5] {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    font-size: var(--ox-fs-title, 0.875rem);
    font-weight: var(--ox-fw-semibold, 600);
    line-height: 1.25;
    letter-spacing: normal;
    text-transform: none;
    color: var(--ox-text-primary, var(--ox-title, #18181b));
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.shell-subpanel-detail-header .manage-btn-icon[b-xnwahy64m5] {
    width: var(--ox-icon-btn, 1.75rem);
    height: var(--ox-icon-btn, 1.75rem);
    min-width: var(--ox-icon-btn, 1.75rem);
    min-height: var(--ox-icon-btn, 1.75rem);
    color: var(--ox-text-secondary, var(--obs-muted, #6b7280));
    flex-shrink: 0;
}

.shell-subpanel .shell-subpanel-detail-header + .shell-subnav-list[b-xnwahy64m5] {
    margin-top: 0;
}

.shell-subnav-list[b-xnwahy64m5] {
    margin: 0;
    padding: 0.25rem var(--ox-space, 0.5rem) var(--ox-space, 0.5rem);
    display: flex;
    flex-direction: column;
    gap: 1px;
    box-sizing: border-box;
    scrollbar-gutter: auto;
    scrollbar-width: thin;
}

/* 菜单项：统一行高 / 字号 / 图标格 */
.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-height: var(--shell-subnav-row-h);
    height: var(--shell-subnav-row-h);
    padding: 0 var(--shell-subnav-pad-x);
    margin: 0;
    color: var(--obs-text, var(--ox-text-body));
    text-decoration: none;
    font-size: var(--shell-subnav-fs);
    font-weight: 500;
    line-height: 1.25;
    cursor: pointer;
    border-radius: 4px;
    border: none;
    background: transparent;
    box-shadow: none;
    transition: background-color 0.12s ease, color 0.12s ease;
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
}

.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-item:focus {
    outline: none;
}

.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-item:focus-visible {
    outline: 2px solid var(--ox-focus-ring, rgba(77, 143, 232, 0.45));
    outline-offset: 1px;
}

.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-item:hover {
    background: var(--obs-hover, var(--ox-state-hover-bg));
    color: var(--obs-text, var(--ox-text-body));
}

.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-item.active {
    background: var(--obs-active, color-mix(in oklab, var(--ox-accent, #4d8fe8) 14%, transparent));
    color: var(--ox-accent-foreground, #1d4ed8);
}

.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-item.active:hover {
    background: color-mix(in oklab, var(--ox-accent, #4d8fe8) 18%, transparent);
    color: var(--ox-accent-foreground-strong, #1e3a8a);
}

/* 图标：固定格宽，无灰底方块，避免有/无图标、不同字形时视觉跳动 */
.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-icon-wrap {
    width: 1.25rem;
    height: 1.25rem;
    flex: 0 0 1.25rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 0;
    background: transparent !important;
    border: none;
    box-shadow: none;
    color: inherit;
}

.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-icon {
    font-size: var(--shell-subnav-icon) !important;
    line-height: 1 !important;
    width: 1em;
    height: 1em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    opacity: 0.85;
}

.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-item:hover .shell-subnav-icon,
.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-item.active .shell-subnav-icon {
    opacity: 1;
}

.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-label {
    flex: 1 1 auto;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
}

/* 分组标题 */
.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-group-title {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--obs-muted, #6b7280);
    letter-spacing: 0.04em;
    text-transform: uppercase;
    line-height: 1.25;
    min-height: 1.5rem;
    padding: 0.375rem var(--shell-subnav-pad-x) 0.125rem;
    margin: 0.25rem 0 0;
    box-sizing: border-box;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-group-title:first-child {
    margin-top: 0;
}

.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-children {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}

/* 层级缩进：统一用 CSS 变量，避免内联 style 与 padding 打架 */
.shell-subnav-list[b-xnwahy64m5]  .shell-subnav-children-indented {
    padding-left: var(--shell-subnav-indent);
    margin: 0;
    border-left: 1px solid var(--obs-border, var(--ox-border, #e3e3e3));
    margin-left: calc(var(--shell-subnav-pad-x) + 0.375rem);
}
/* /Components/Components/SkuCombobox.razor.rz.scp.css */
.ox-sku-combo[b-matvgdoij1] {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
}

.ox-sku-combo.is-disabled[b-matvgdoij1] {
    opacity: 0.55;
    pointer-events: none;
}

.ox-sku-combo__field[b-matvgdoij1] {
    position: relative;
    display: flex;
    align-items: center;
}

.ox-sku-combo__input[b-matvgdoij1] {
    padding-inline-end: 1.6rem;
}

.ox-sku-combo__input:focus[b-matvgdoij1],
.ox-sku-combo.is-open .ox-sku-combo__input[b-matvgdoij1] {
    outline: none;
    border-color: color-mix(in oklab, var(--ox-btn-primary-bg, #2563eb) 55%, var(--ox-border, #d1d5db));
    box-shadow: 0 0 0 2px color-mix(in oklab, var(--ox-btn-primary-bg, #2563eb) 18%, transparent);
}

.ox-sku-combo__clear[b-matvgdoij1] {
    position: absolute;
    right: 0.2rem;
    appearance: none;
    border: 0;
    background: transparent;
    width: 1.35rem;
    height: 1.35rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--ox-muted, #64748b);
    cursor: pointer;
    border-radius: 4px;
    padding: 0;
}

.ox-sku-combo__clear:hover[b-matvgdoij1] {
    color: var(--ox-text-primary);
    background: var(--ox-state-hover-bg);
}

.ox-sku-combo__list[b-matvgdoij1] {
    margin: 0;
    padding: 0.25rem 0;
    list-style: none;
    max-height: 16rem;
    overflow: auto;
    border: 1px solid var(--ox-border, #cbd5e1);
    border-radius: var(--ox-radius, 8px);
    background: var(--ox-surface, #fff);
    color: var(--ox-text-body);
    box-shadow: var(--ox-shadow-lg, 0 8px 24px rgba(15, 23, 42, 0.16));
}

.ox-sku-combo__list--fixed[b-matvgdoij1] {
    position: fixed;
    z-index: 13000;
}

.ox-sku-combo__empty[b-matvgdoij1] {
    padding: 0.55rem 0.7rem;
    font-size: 0.75rem;
    color: var(--ox-text-secondary, #64748b);
}

.ox-sku-combo__option[b-matvgdoij1] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    padding: 0.4rem 0.7rem;
    cursor: pointer;
    min-width: 0;
}

.ox-sku-combo__option:hover[b-matvgdoij1],
.ox-sku-combo__option.is-active[b-matvgdoij1] {
    background: color-mix(in oklab, var(--ox-btn-primary-bg, #2563eb) 12%, var(--ox-surface, #fff));
}

.ox-sku-combo__option.is-selected .ox-sku-combo__name[b-matvgdoij1],
.ox-sku-combo__option.is-active .ox-sku-combo__name[b-matvgdoij1] {
    font-weight: 700;
}

.ox-sku-combo__name[b-matvgdoij1] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--ox-text-primary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ox-sku-combo__meta[b-matvgdoij1] {
    font-size: 0.68rem;
    color: var(--ox-text-secondary, #64748b);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* /Components/Components/UiConfirmHost.razor.rz.scp.css */
/* 确认框正文；壳层走 OxModal */

.ox-confirm-body[b-mb6slujgcb] {
    flex: 1;
    min-height: 0;
    padding: var(--ox-space, 0.5rem) 0.75rem;
    display: flex;
    flex-direction: column;
    gap: var(--ox-space, 0.5rem);
    max-height: min(60vh, 28rem);
    overflow: auto;
}

.ox-confirm-message[b-mb6slujgcb] {
    margin: 0;
    font-size: var(--ox-fs-body, 0.8125rem);
    font-weight: var(--ox-fw-regular, 400);
    line-height: 1.45;
    color: var(--ox-text-body, #27272a);
    white-space: pre-wrap;
    word-break: break-word;
}

.ox-confirm-input-label[b-mb6slujgcb] {
    display: block;
    margin: 0;
    font-size: var(--ox-fs-secondary, 0.75rem);
    font-weight: var(--ox-fw-medium, 500);
    color: var(--ox-text-secondary, #71717a);
}

.ox-confirm-input[b-mb6slujgcb] {
    display: block;
    width: 100%;
    margin: 0;
    /* 尺寸/边框由 ox-ui-system .ox-confirm-input 统一 */
    resize: vertical;
    min-height: 4.5rem;
}

.ox-confirm-input:focus[b-mb6slujgcb],
.ox-confirm-input:focus-visible[b-mb6slujgcb] {
    outline: none;
    border-color: var(--ox-accent, #3b82f6);
    box-shadow: 0 0 0 1px var(--ox-focus-ring);
    background: #fff;
}

.ox-confirm-input--single[b-mb6slujgcb] {
    min-height: var(--ox-btn-size, 2rem);
    resize: none;
}

.ox-confirm-input[b-mb6slujgcb]::placeholder {
    color: var(--ox-text-disabled, #a1a1aa);
}

.ox-confirm-attach[b-mb6slujgcb] {
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--ox-space, 0.5rem);
}

.ox-confirm-attach__list[b-mb6slujgcb] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--ox-space-xs, 0.25rem);
}

.ox-confirm-attach__item[b-mb6slujgcb] {
    display: flex;
    align-items: center;
    gap: var(--ox-space, 0.5rem);
    padding: var(--ox-space-xs, 0.25rem) var(--ox-space, 0.5rem);
    border: 1px solid var(--ox-border, #e3e3e3);
    border-radius: var(--ox-radius, 4px);
    background: var(--ox-footer-bg, #fafafa);
    min-width: 0;
}

.ox-confirm-attach__thumb[b-mb6slujgcb] {
    width: 2rem;
    height: 2rem;
    object-fit: cover;
    border-radius: var(--ox-radius-sm, 3px);
    flex-shrink: 0;
}

.ox-confirm-attach__fileico[b-mb6slujgcb] {
    width: 2rem;
    height: 2rem;
    display: grid;
    place-items: center;
    color: var(--ox-text-secondary);
    flex-shrink: 0;
    font-size: 1rem;
}

.ox-confirm-attach__name[b-mb6slujgcb] {
    flex: 1;
    min-width: 0;
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-body);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ox-confirm-attach__remove[b-mb6slujgcb] {
    appearance: none;
    border: 0;
    background: transparent;
    color: var(--ox-text-disabled);
    font-size: 1rem;
    line-height: 1;
    cursor: pointer;
    padding: 2px 4px;
    flex-shrink: 0;
}

.ox-confirm-attach__remove:hover[b-mb6slujgcb] {
    color: var(--ox-text-danger);
}

.ox-confirm-attach__add[b-mb6slujgcb] {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ox-space-xs) var(--ox-space);
    padding: var(--ox-space);
    border: 1px dashed var(--ox-border);
    border-radius: var(--ox-radius);
    background: #fff;
    color: var(--ox-text-body);
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-medium);
    cursor: pointer;
}

.ox-confirm-attach__add:hover[b-mb6slujgcb] {
    border-color: var(--ox-text-disabled);
    background: var(--ox-footer-bg);
}

.ox-confirm-attach__input[b-mb6slujgcb] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.ox-confirm-attach__hint[b-mb6slujgcb] {
    width: 100%;
    font-size: var(--ox-fs-caption);
    font-weight: var(--ox-fw-regular);
    color: var(--ox-text-disabled);
}

.ox-confirm-attach__err[b-mb6slujgcb] {
    margin: 0;
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-danger);
}
/* /Components/Components/UiMessageStack.razor.rz.scp.css */
/* 全局轻提示栈，前缀 ox-msg__ */
/* 边距：在 app.css 的 :root 中覆盖 --ox-msg-inset（默认 16px） */

.ox-msg-stack[b-8dbq667xph] {
    position: fixed;
    z-index: 11000;
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: min(380px, calc(100vw - 32px * 2));
    pointer-events: none;
    --ox-msg-inset-pad: var(--ox-msg-inset, 16px);
}

/* 视口正中：水平 + 垂直居中 */
.ox-msg-stack--center[b-8dbq667xph] {
    left: 50%;
    top: 50%;
    right: auto;
    bottom: auto;
    transform: translate(-50%, -50%);
    max-width: min(420px, calc(100vw - 2 * var(--ox-msg-inset-pad)));
    align-items: stretch;
}

.ox-msg-stack--bottom-right[b-8dbq667xph] {
    right: var(--ox-msg-inset-pad);
    bottom: var(--ox-msg-inset-pad);
    left: auto;
    top: auto;
}

.ox-msg-stack--top-right[b-8dbq667xph] {
    top: var(--ox-msg-inset-pad);
    right: var(--ox-msg-inset-pad);
    left: auto;
    bottom: auto;
}

.ox-msg-stack--bottom-left[b-8dbq667xph] {
    left: var(--ox-msg-inset-pad);
    bottom: var(--ox-msg-inset-pad);
    right: auto;
    top: auto;
}

.ox-msg-stack--top-left[b-8dbq667xph] {
    left: var(--ox-msg-inset-pad);
    top: var(--ox-msg-inset-pad);
    right: auto;
    bottom: auto;
}

.ox-msg[b-8dbq667xph] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 8px;
    border: 1px solid var(--ox-msg-border, #e2e8f0);
    background: var(--ox-msg-bg, #fff);
    box-shadow: 0 10px 25px -5px rgba(15, 23, 42, 0.12), 0 6px 10px -6px rgba(15, 23, 42, 0.08);
    pointer-events: auto;
    font-size: var(--ox-ui-fs-sm, 0.875rem);
    line-height: 1.45;
}

.ox-msg--success[b-8dbq667xph] {
    border-color: #6ee7b7;
    background: #ecfdf5;
    color: #065f46;
}

.ox-msg--error[b-8dbq667xph] {
    border-color: #fca5a5;
    background: #fef2f2;
    color: #991b1b;
}

.ox-msg--warning[b-8dbq667xph] {
    border-color: #fcd34d;
    background: #fffbeb;
    color: #92400e;
}

.ox-msg--info[b-8dbq667xph] {
    border-color: #93c5fd;
    background: #eff6ff;
    color: #1e3a8a;
}

.ox-msg__icon[b-8dbq667xph] {
    flex-shrink: 0;
    margin-top: 1px;
    font-size: 1.125rem;
    opacity: 0.9;
}

.ox-msg__text[b-8dbq667xph] {
    flex: 1 1 auto;
    min-width: 0;
    word-break: break-word;
}

/* 关闭：基础样式为全局 .manage-btn-icon；此处仅做轻提示条内的紧凑尺寸与继承色 */
.ox-msg .manage-btn-icon.ox-msg__close[b-8dbq667xph] {
    width: 28px;
    height: 28px;
    min-width: 28px;
    margin: -4px -6px -4px 0;
    color: inherit;
    opacity: 0.65;
}

.ox-msg .manage-btn-icon.ox-msg__close:hover:not(:disabled)[b-8dbq667xph] {
    opacity: 1;
    background: rgba(0, 0, 0, 0.06);
    color: inherit;
}
/* /Components/Components/UserCombobox.razor.rz.scp.css */
.ox-user-combo[b-zyh6zo2swj] {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
}

.ox-user-combo.is-disabled[b-zyh6zo2swj] {
    opacity: 0.55;
    pointer-events: none;
}

.ox-user-combo__field[b-zyh6zo2swj] {
    position: relative;
    display: flex;
    align-items: center;
}

.ox-user-combo__input[b-zyh6zo2swj] {
    width: 100%;
    min-width: 0;
    min-height: 1.85rem;
    padding: 0.2rem 1.55rem 0.2rem 0.45rem;
    border: 1px solid var(--ox-border, #d1d5db);
    border-radius: var(--ox-radius, 6px);
    background: var(--ox-surface);
    font-size: 0.75rem;
    line-height: 1.3;
    color: var(--ox-text-primary);
    box-sizing: border-box;
}

.ox-user-combo__input[b-zyh6zo2swj]::placeholder {
    color: var(--ox-text-secondary);
}

.ox-user-combo__input[b-zyh6zo2swj]::placeholder {
    color: var(--ox-text-secondary);
}

.ox-user-combo__input:focus[b-zyh6zo2swj] {
    outline: none;
    border-color: color-mix(in oklab, var(--ox-btn-primary-bg, #2563eb) 55%, var(--ox-border, #d1d5db));
    box-shadow: 0 0 0 2px color-mix(in oklab, var(--ox-btn-primary-bg, #2563eb) 18%, transparent);
}

.ox-user-combo__clear[b-zyh6zo2swj] {
    position: absolute;
    right: 0.15rem;
    appearance: none;
    border: 0;
    background: transparent;
    width: 1.35rem;
    height: 1.35rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--ox-muted, #64748b);
    cursor: pointer;
    border-radius: 4px;
    padding: 0;
}

.ox-user-combo__clear:hover[b-zyh6zo2swj] {
    color: var(--ox-text-primary);
    background: var(--ox-state-hover-bg);
}

.ox-user-combo__list[b-zyh6zo2swj] {
    margin: 0;
    padding: 0.25rem 0;
    list-style: none;
    max-height: 14rem;
    overflow: auto;
    border: 1px solid var(--ox-border, #cbd5e1);
    border-radius: 8px;
    background: var(--ox-surface);
    color: var(--ox-text-body);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
}

.ox-user-combo__list--fixed[b-zyh6zo2swj] {
    position: fixed;
    z-index: 12000;
}

.ox-user-combo__empty[b-zyh6zo2swj] {
    padding: 0.55rem 0.65rem;
    font-size: 0.75rem;
    color: var(--ox-muted, #64748b);
}

.ox-user-combo__option[b-zyh6zo2swj] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    padding: 0.4rem 0.65rem;
    cursor: pointer;
    min-width: 0;
}

.ox-user-combo__option:hover[b-zyh6zo2swj],
.ox-user-combo__option.is-active[b-zyh6zo2swj] {
    background: color-mix(in oklab, var(--ox-btn-primary-bg, #2563eb) 10%, transparent);
}

.ox-user-combo__option.is-selected .ox-user-combo__name[b-zyh6zo2swj] {
    font-weight: 700;
}

.ox-user-combo__name[b-zyh6zo2swj] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--ox-text-primary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ox-user-combo__dept[b-zyh6zo2swj] {
    font-size: 0.68rem;
    color: var(--ox-muted, #64748b);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
/* 断线重连弹层：类名与 #id 与框架协议绑定，仅改色与圆角等视觉；勿删状态类。 */

.components-reconnect-first-attempt-visible[b-fc6zlgni3l],
.components-reconnect-repeated-attempt-visible[b-fc6zlgni3l],
.components-reconnect-failed-visible[b-fc6zlgni3l],
.components-pause-visible[b-fc6zlgni3l],
.components-resume-failed-visible[b-fc6zlgni3l],
.components-rejoining-animation[b-fc6zlgni3l] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-fc6zlgni3l],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-fc6zlgni3l],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-fc6zlgni3l],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-fc6zlgni3l],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-fc6zlgni3l],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-fc6zlgni3l],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-fc6zlgni3l] {
    display: block;
}

/* 未打开时 <dialog> 须保持隐藏；勿对 #components-reconnect-modal 本体加 display:block（会顶掉浏览器关闭态，导致首屏/重连时闪一帧白模态） */
#components-reconnect-modal:not([open])[b-fc6zlgni3l] {
    display: none !important;
    animation: none;
    opacity: 0;
    box-shadow: none;
}

#components-reconnect-modal[open][b-fc6zlgni3l] {
    display: block;
    background: var(--ox-surface, #fff);
    color: #0f172a;
    width: min(20rem, 92vw);
    margin: 20vh auto;
    padding: 1.75rem 1.5rem;
    border: 1px solid var(--ox-border, #e2e8f0);
    border-radius: 0.75rem;
    box-shadow: 0 10px 40px rgba(15, 23, 42, 0.12);
    opacity: 1;
    animation: components-reconnect-modal-slideUp-b-fc6zlgni3l 1.5s cubic-bezier(0.05, 0.89, 0.25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-fc6zlgni3l 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
}

#components-reconnect-modal[open][b-fc6zlgni3l]::backdrop {
    background-color: rgba(15, 23, 42, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-fc6zlgni3l 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-fc6zlgni3l {
    0% {
        transform: translateY(20px) scale(0.98);
    }
    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-fc6zlgni3l {
    0% { opacity: 0; }
    100% { opacity: 1; }
}

.components-reconnect-container[b-fc6zlgni3l] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.9rem;
}

#components-reconnect-modal p[b-fc6zlgni3l] {
    margin: 0;
    text-align: center;
    font-size: 0.9rem;
    line-height: 1.5;
    color: #334155;
}

#components-reconnect-modal button[b-fc6zlgni3l] {
    border: 0;
    background: var(--ox-accent, #0067c0);
    color: #fff;
    font-size: 0.88rem;
    padding: 0.4rem 1.4rem;
    border-radius: 0.4rem;
    cursor: pointer;
    font-weight: 600;
}

#components-reconnect-modal button:hover[b-fc6zlgni3l] {
    filter: brightness(1.06);
}

#components-reconnect-modal button:active[b-fc6zlgni3l] {
    filter: brightness(0.96);
}

.components-rejoining-animation[b-fc6zlgni3l] {
    position: relative;
    width: 72px;
    height: 72px;
}

.components-rejoining-animation div[b-fc6zlgni3l] {
    position: absolute;
    border: 3px solid var(--ox-accent, #0067c0);
    opacity: 1;
    border-radius: 50%;
    animation: components-rejoining-ripple-b-fc6zlgni3l 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
}

.components-rejoining-animation div:nth-child(2)[b-fc6zlgni3l] {
    animation-delay: -0.5s;
}

@keyframes components-rejoining-ripple-b-fc6zlgni3l {
    0% {
        top: 36px;
        left: 36px;
        width: 0;
        height: 0;
        opacity: 0;
    }
    4.9% {
        top: 36px;
        left: 36px;
        width: 0;
        height: 0;
        opacity: 0;
    }
    5% {
        top: 36px;
        left: 36px;
        width: 0;
        height: 0;
        opacity: 1;
    }
    100% {
        top: 0;
        left: 0;
        width: 72px;
        height: 72px;
        opacity: 0;
    }
}
/* /Components/Pages/Activate.razor.rz.scp.css */
/* 与登录页一致的底图 + 扁平面板；激活页略宽以容纳申请信息 */
.login-page[b-8dv21gb37q] {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background-color: var(--login-page-fallback, #2a4a6e);
    font-family: var(--ox-font-sans);
}

.login-page[b-8dv21gb37q]::before {
    content: "";
    position: absolute;
    inset: -24px;
    z-index: 0;
    background-image: var(--login-bg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    filter: blur(18px) saturate(1.05);
    transform: scale(1.04);
    pointer-events: none;
}

.login-page[b-8dv21gb37q]::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background: var(--login-page-scrim, rgba(248, 250, 252, 0.42));
    pointer-events: none;
}

html[data-ox-scheme-resolved="dark"] .login-page[b-8dv21gb37q] {
    --login-page-fallback: var(--shell-page-bg, #09090b);
    --login-page-scrim: color-mix(in oklab, var(--shell-page-bg, #09090b) 66%, transparent);
}

.login-page > *[b-8dv21gb37q] {
    position: relative;
    z-index: 1;
}

.login-shell[b-8dv21gb37q] {
    width: 100%;
    max-width: 22rem;
}

.activate-shell[b-8dv21gb37q] {
    max-width: 24rem;
}

.login-title[b-8dv21gb37q] {
    margin: 0 0 var(--ox-space-xs);
    text-align: center;
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    line-height: 1.25;
    color: var(--ox-text-primary);
}

.activate-subtitle[b-8dv21gb37q] {
    margin: 0 0 var(--ox-form-stack-gap);
    text-align: center;
    font-size: var(--ox-fs-secondary);
    line-height: 1.4;
    color: var(--ox-text-secondary);
}

.login-panel[b-8dv21gb37q] {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: var(--ox-form-stack-gap);
    padding: var(--ox-form-stack-gap);
    background: var(--ox-surface);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    box-shadow: none;
}

.login-error[b-8dv21gb37q] {
    display: flex;
    align-items: flex-start;
    gap: var(--ox-space-xs);
    margin: 0;
    padding: 0.5rem 0.625rem;
    border-radius: var(--ox-radius);
    border: 1px solid color-mix(in oklab, var(--ox-text-danger) 38%, var(--ox-border));
    background: color-mix(in oklab, var(--ox-text-danger) 9%, var(--ox-surface));
    color: var(--ox-text-danger);
}

.login-error__ico[b-8dv21gb37q] {
    flex-shrink: 0;
    margin-top: 0.05rem;
    font-size: 1rem;
    color: var(--ox-text-danger);
}

.login-error__text[b-8dv21gb37q] {
    margin: 0;
    font-size: var(--ox-fs-body);
    font-weight: var(--ox-fw-medium);
    line-height: 1.4;
}

.login-field[b-8dv21gb37q] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: var(--ox-space-xs);
    margin: 0;
}

.login-field__label[b-8dv21gb37q] {
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-medium);
    line-height: 1.3;
    color: var(--ox-text-secondary);
}

.login-field__input.ox-form-control[b-8dv21gb37q] {
    background-color: var(--ox-surface);
}

.login-field__input.ox-form-control:focus[b-8dv21gb37q],
.login-field__input.ox-form-control:focus-visible[b-8dv21gb37q] {
    border-color: var(--ox-accent, #4d8fe8);
    box-shadow: 0 0 0 1px var(--ox-focus-ring, rgba(59, 130, 246, 0.35));
    outline: none;
}

.activate-textarea[b-8dv21gb37q] {
    min-height: 6.5rem;
    resize: vertical;
    line-height: 1.45;
}

.activate-steps[b-8dv21gb37q] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    font-size: var(--ox-fs-caption);
    line-height: 1.3;
    color: var(--ox-text-secondary);
}

.activate-steps__item.is-active[b-8dv21gb37q] {
    color: var(--ox-text-primary);
    font-weight: var(--ox-fw-semibold);
}

.activate-steps__item.is-done[b-8dv21gb37q] {
    color: var(--ox-accent, #4d8fe8);
}

.activate-steps__sep[b-8dv21gb37q] {
    color: var(--ox-border);
}

.activate-actions[b-8dv21gb37q] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-space-xs);
}

.activate-actions--row[b-8dv21gb37q] {
    flex-direction: row;
    justify-content: flex-end;
}

.activate-actions--row .menu-btn[b-8dv21gb37q] {
    flex: 1 1 0;
}

.activate-footer[b-8dv21gb37q] {
    padding-top: var(--ox-space-xs);
    border-top: 1px solid var(--ox-border);
    text-align: center;
}

.activate-link[b-8dv21gb37q] {
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-medium);
    color: var(--ox-text-secondary);
    text-decoration: none;
}

.activate-link:hover[b-8dv21gb37q] {
    color: var(--ox-accent, #4d8fe8);
}

@media (max-width: 480px) {
    .activate-actions--row[b-8dv21gb37q] {
        flex-direction: column;
    }
}
/* /Components/Pages/AiWorkflows.razor.rz.scp.css */
.ai-wf-split[b-c26ufb0fg3] {
    display: flex;
    flex-direction: row;
    min-height: 0;
    flex: 1 1 auto;
    align-self: stretch;
    height: 100%;
}

.ai-wf-list[b-c26ufb0fg3] {
    flex: 0 0 220px;
    min-width: 180px;
    max-width: 280px;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.ai-wf-list .manage-list[b-c26ufb0fg3],
.ai-wf-list .manage-loading[b-c26ufb0fg3],
.ai-wf-list .manage-empty[b-c26ufb0fg3] {
    padding: var(--ox-space, 0.5rem);
    box-sizing: border-box;
}

.ai-wf-list .manage-list[b-c26ufb0fg3] {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    width: 100%;
    gap: var(--ox-space-xs, 0.25rem);
}

.ai-wf-list .manage-list-item[b-c26ufb0fg3] {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    width: 100%;
    max-width: 100%;
    padding-inline: var(--ox-space, 0.5rem);
    border: none;
    border-radius: var(--ox-radius, 4px);
    background: transparent;
    color: var(--ox-text-body);
    text-align: start;
    box-sizing: border-box;
    transition: background-color 0.12s ease, color 0.12s ease;
}

.ai-wf-list .manage-list-item:hover[b-c26ufb0fg3] {
    background: var(--ox-state-hover-bg);
    color: var(--ox-text-body);
}

.ai-wf-list .manage-list-item.active[b-c26ufb0fg3] {
    background: var(--ox-state-selected-chrome-bg, var(--ox-state-selected-bg));
    color: var(--ox-accent-foreground);
}

.ai-wf-list .manage-list-item.active:hover[b-c26ufb0fg3] {
    background: var(--ox-state-selected-chrome-bg-hover, var(--ox-state-selected-bg-hover));
    color: var(--ox-accent-foreground-strong);
}

.ai-wf-list .manage-list-item.active .manage-item-title[b-c26ufb0fg3],
.ai-wf-list .manage-list-item.active .manage-item-sub[b-c26ufb0fg3] {
    color: var(--ox-accent-foreground);
}

.ai-wf-list .manage-list-item.active:hover .manage-item-title[b-c26ufb0fg3],
.ai-wf-list .manage-list-item.active:hover .manage-item-sub[b-c26ufb0fg3] {
    color: var(--ox-accent-foreground-strong);
}

.ai-wf-list .manage-list-item > .manage-item-main[b-c26ufb0fg3] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1 1 auto;
    min-width: 0;
}

.ai-wf-list-actions[b-c26ufb0fg3] {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    margin-left: auto;
    opacity: 0.45;
}

.ai-wf-list .manage-list-item:hover .ai-wf-list-actions[b-c26ufb0fg3],
.ai-wf-list .manage-list-item.active .ai-wf-list-actions[b-c26ufb0fg3],
.ai-wf-list-actions:focus-within[b-c26ufb0fg3] {
    opacity: 1;
}

.ai-wf-list-actions[b-c26ufb0fg3]  .ai-wf-list-edit {
    width: 1.5rem;
    height: 1.5rem;
    min-width: 1.5rem;
    min-height: 1.5rem;
    color: var(--ox-text-secondary);
}

.ai-wf-list .manage-list-item.active .ai-wf-list-actions[b-c26ufb0fg3]  .ai-wf-list-edit {
    color: inherit;
    opacity: 0.85;
}

.ai-wf-list-actions[b-c26ufb0fg3]  .ai-wf-list-edit .ph {
    font-size: 0.875rem;
}

.ai-wf-canvas-pane[b-c26ufb0fg3] {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.ai-wf-canvas-host[b-c26ufb0fg3] {
    position: relative;
    flex: 1 1 auto;
    min-height: 360px;
    overflow: hidden;
    touch-action: none;
    overscroll-behavior: none;
    background: var(--ox-surface);
    cursor: grab;
}

.ai-wf-canvas-host.is-panning[b-c26ufb0fg3] {
    cursor: grabbing;
}

.ai-wf-empty[b-c26ufb0fg3] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--ox-muted);
    font-size: var(--ox-fs-body);
    pointer-events: none;
}

.ai-wf-toolbar[b-c26ufb0fg3] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}

.ai-wf-span-list[b-c26ufb0fg3] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ai-wf-span[b-c26ufb0fg3] {
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius, 4px);
    padding: 8px 10px;
    font-size: var(--ox-ui-fs-sm, 0.75rem);
}

.ai-wf-span.is-failed[b-c26ufb0fg3] {
    border-color: var(--ox-text-danger, #dc2626);
}

.ai-wf-output[b-c26ufb0fg3] {
    margin: 0;
    padding: 8px 10px;
    max-height: 10rem;
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-word;
    font-size: var(--ox-fs-body, 13px);
    line-height: 1.45;
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius, 4px);
    background: color-mix(in oklab, var(--ox-surface) 92%, var(--ox-accent));
}

.ai-wf-span pre[b-c26ufb0fg3] {
    margin: 6px 0 0;
    max-height: 8rem;
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-word;
    font-size: 0.7rem;
}
/* /Components/Pages/ApiSources.razor.rz.scp.css */
/* API 源目录：双栏贴齐 Manage 组织/用户分栏（单外框 + splitter，无间隙双边框） */

.api-sources-subtitle[b-w0382pn581] {
    font-size: var(--ox-fs-secondary, 0.75rem);
    color: var(--ox-text-secondary, var(--ox-muted, #71717a));
}

#api-sources-split.manage-middle.manage-split.dx-style[b-w0382pn581] {
    flex-direction: column;
    gap: 0;
    box-sizing: border-box;
    flex: 1 1 auto;
    align-self: stretch;
    width: 100%;
    min-height: 0;
    height: 100%;
    border: 1px solid var(--ox-border, #d1d5db);
    border-left: none;
    border-radius: 0;
    background: var(--ox-surface, #fff);
    overflow: hidden;
}

.api-sources-split-body[b-w0382pn581] {
    display: flex;
    flex-direction: row;
    flex: 1 1 auto;
    align-self: stretch;
    min-height: 0;
    min-width: 0;
    width: 100%;
    gap: 0;
    box-sizing: border-box;
}

#api-sources-split .manage-panel[b-w0382pn581] {
    border: none;
    border-radius: 0;
    overflow: hidden;
    background: transparent;
    box-shadow: none;
}

.api-sources-source-pane[b-w0382pn581] {
    min-width: 180px;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.api-sources-op-pane[b-w0382pn581] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.api-sources-source-pane .manage-list[b-w0382pn581],
.api-sources-source-pane .manage-loading[b-w0382pn581],
.api-sources-source-pane .manage-empty[b-w0382pn581],
.api-sources-op-pane .manage-loading[b-w0382pn581],
.api-sources-op-pane .manage-empty[b-w0382pn581] {
    padding: var(--ox-space, 0.5rem) !important;
    box-sizing: border-box;
}

.api-sources-source-pane .manage-list[b-w0382pn581] {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    width: 100%;
}

.api-sources-list-item[b-w0382pn581] {
    width: 100%;
    padding-inline: var(--ox-space, 0.5rem) !important;
    border-radius: var(--ox-radius, 4px);
    box-sizing: border-box;
}

.api-sources-remark-input[b-w0382pn581] {
    min-height: 96px;
    resize: vertical;
}

.api-sources-op-head-sub[b-w0382pn581] {
    font-size: var(--ox-fs-secondary, 0.75rem);
    color: var(--ox-text-secondary, var(--ox-muted, #71717a));
    font-weight: 400;
}

.api-sources-op-sync-btn[b-w0382pn581] {
    display: inline-flex;
    align-items: center;
    gap: var(--ox-space-xs, 0.25rem);
    padding-inline: 0.625rem;
    font-size: var(--ox-fs-body, 0.8125rem);
}

.api-sources-op-sync-btn .ph[b-w0382pn581] {
    font-size: 1rem;
    line-height: 1;
}

.api-sources-op-toolbar[b-w0382pn581] {
    flex-shrink: 0;
    padding: var(--ox-space, 0.5rem);
    border-bottom: 1px solid var(--ox-border, #e3e3e3);
    background: transparent;
    box-sizing: border-box;
}

.api-sources-op-table-wrap[b-w0382pn581] {
    flex: 1 1 auto;
    min-height: 0;
    margin: 0;
    padding: var(--ox-space, 0.5rem);
    overflow: auto;
    box-sizing: border-box;
}

.api-sources-op-table-wrap .ox-data-table[b-w0382pn581] {
    width: 100%;
}

@media (max-width: 1200px) {
    .api-sources-source-pane[b-w0382pn581] {
        min-width: 160px;
    }
}
/* /Components/Pages/ChangePassword.razor.rz.scp.css */
/* 与 Login 对齐的认证页壳层（scoped；令牌走 ox-ui） */
.login-page[b-m6d1e5xgph] {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background-color: #2a4a6e;
    font-family: var(--ox-font-sans);
}

.login-page[b-m6d1e5xgph]::before {
    content: "";
    position: absolute;
    inset: -24px;
    z-index: 0;
    background-image: var(--login-bg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    filter: blur(18px) saturate(1.05);
    transform: scale(1.04);
    pointer-events: none;
}

.login-page[b-m6d1e5xgph]::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background: rgba(248, 250, 252, 0.42);
    pointer-events: none;
}

.login-page > *[b-m6d1e5xgph] {
    position: relative;
    z-index: 1;
}

.login-shell[b-m6d1e5xgph] {
    width: 100%;
    max-width: 22rem;
}

.login-title[b-m6d1e5xgph] {
    margin: 0 0 var(--ox-space-xs);
    text-align: center;
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    line-height: 1.25;
    color: var(--ox-text-primary);
}

.login-lead[b-m6d1e5xgph] {
    margin: 0 0 var(--ox-form-stack-gap);
    text-align: center;
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-regular);
    line-height: 1.45;
    color: var(--ox-text-secondary);
}

.login-panel[b-m6d1e5xgph] {
    box-sizing: border-box;
    padding: var(--ox-form-stack-gap);
    background: var(--ox-surface);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    box-shadow: none;
}

.login-account[b-m6d1e5xgph] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.35rem 0.5rem;
    margin: 0 0 var(--ox-form-stack-gap);
    padding: 0.5rem 0.625rem;
    border-radius: var(--ox-radius);
    border: 1px solid var(--ox-border);
    background: color-mix(in oklab, var(--ox-surface) 88%, var(--ox-accent, #4d8fe8) 12%);
    color: var(--ox-text-body);
    font-size: var(--ox-fs-body);
    line-height: 1.35;
}

.login-account .ph[b-m6d1e5xgph] {
    flex-shrink: 0;
    font-size: 1rem;
    color: var(--ox-accent, #4d8fe8);
}

.login-account__text[b-m6d1e5xgph] {
    font-weight: var(--ox-fw-medium);
    color: var(--ox-text-primary);
}

.login-account__name[b-m6d1e5xgph] {
    margin-left: auto;
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
}

.login-callout[b-m6d1e5xgph] {
    display: flex;
    align-items: flex-start;
    gap: var(--ox-space-xs);
    margin: 0 0 var(--ox-form-stack-gap);
    padding: 0.5rem 0.625rem;
    border-radius: var(--ox-radius);
    border: 1px solid color-mix(in oklab, var(--ox-accent, #4d8fe8) 35%, var(--ox-border));
    background: color-mix(in oklab, var(--ox-surface) 82%, var(--ox-accent, #4d8fe8) 18%);
    color: var(--ox-text-body);
}

.login-callout__ico[b-m6d1e5xgph] {
    flex-shrink: 0;
    margin-top: 0.05rem;
    font-size: 1rem;
    color: var(--ox-accent, #4d8fe8);
}

.login-callout__text[b-m6d1e5xgph] {
    margin: 0;
    font-size: var(--ox-fs-body);
    font-weight: var(--ox-fw-medium);
    line-height: 1.4;
}

.login-error[b-m6d1e5xgph] {
    display: flex;
    align-items: flex-start;
    gap: var(--ox-space-xs);
    margin: 0 0 var(--ox-form-stack-gap);
    padding: 0.5rem 0.625rem;
    border-radius: var(--ox-radius);
    border: 1px solid #fca5a5;
    background: #fef2f2;
    color: var(--ox-text-danger);
}

.login-error__ico[b-m6d1e5xgph] {
    flex-shrink: 0;
    margin-top: 0.05rem;
    font-size: 1rem;
    color: var(--ox-text-danger);
}

.login-error__text[b-m6d1e5xgph] {
    margin: 0;
    font-size: var(--ox-fs-body);
    font-weight: var(--ox-fw-medium);
    line-height: 1.4;
}

.login-form[b-m6d1e5xgph] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-form-stack-gap);
}

.login-field[b-m6d1e5xgph] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: var(--ox-space-xs);
    margin: 0;
}

.login-field__label[b-m6d1e5xgph] {
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-medium);
    line-height: 1.3;
    color: var(--ox-text-secondary);
}

.login-field__input.ox-form-control[b-m6d1e5xgph] {
    background-color: var(--ox-surface);
}

.login-field__input.ox-form-control:hover[b-m6d1e5xgph] {
    border-color: color-mix(in oklab, var(--ox-border) 55%, #71717a 45%);
}

.login-field__input.ox-form-control:focus[b-m6d1e5xgph],
.login-field__input.ox-form-control:focus-visible[b-m6d1e5xgph] {
    border-color: var(--ox-accent, #4d8fe8);
    box-shadow: none;
    outline: none;
}

.login-field:focus-within .login-field__label[b-m6d1e5xgph] {
    color: var(--ox-text-body);
}

.login-hint[b-m6d1e5xgph] {
    margin: calc(var(--ox-space-xs) * -1) 0 0;
    font-size: var(--ox-fs-caption);
    font-weight: var(--ox-fw-regular);
    line-height: 1.4;
    color: var(--ox-text-secondary);
}

.login-submit[b-m6d1e5xgph] {
    width: 100%;
    justify-content: center;
    margin-top: 0;
}

.login-brand[b-m6d1e5xgph] {
    display: flex;
    justify-content: center;
    margin: 0 auto var(--ox-space);
}

.login-logo-base[b-m6d1e5xgph] {
    display: block;
    width: 52px;
    height: 56px;
    object-fit: contain;
    object-position: center;
    background: transparent;
}

.login-footer[b-m6d1e5xgph] {
    margin-top: var(--ox-form-stack-gap);
    padding-top: var(--ox-space);
    border-top: 1px solid var(--ox-border);
    text-align: center;
}

.login-footer__link[b-m6d1e5xgph] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-medium);
    line-height: 1.4;
    color: var(--ox-text-secondary);
    text-decoration: none;
}

.login-footer__link:hover[b-m6d1e5xgph] {
    color: var(--ox-accent, #4d8fe8);
}

.login-footer__link .ph[b-m6d1e5xgph] {
    font-size: 1rem;
}
/* /Components/Pages/Distribution/DsCommissionSettings.razor.rz.scp.css */
.ds-settings-row[b-mruabp2e5f] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    gap: var(--ox-form-stack-gap);
}

.ds-matrix-table .ox-input[b-mruabp2e5f],
.ds-matrix-table input[b-mruabp2e5f] {
    min-width: 4.5rem;
    width: 100%;
}
/* /Components/Pages/Distribution/DsCustomerDetail.razor.rz.scp.css */
.ds-cust[b-zbo23sl6cm] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-form-stack-gap);
    min-height: 0;
    padding: var(--ox-space);
    overflow: auto;
    background: var(--ox-footer-bg, var(--ox-surface));
}

.ds-cust-sep[b-zbo23sl6cm] {
    margin-inline: var(--ox-space-xs);
    color: var(--ox-text-secondary);
}

.ds-card[b-zbo23sl6cm] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-form-stack-gap);
    padding: var(--ox-form-stack-gap);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background: var(--ox-surface);
}

.ds-card__head[b-zbo23sl6cm] {
    display: block;
    min-height: 0;
    margin: calc(var(--ox-form-stack-gap) * -0.35) calc(var(--ox-form-stack-gap) * -0.35) 0;
    padding: 0.35rem 0.35rem 0;
}

.ds-card__tabs.ox-tab-bar--segmented[b-zbo23sl6cm] {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
    gap: 0;
    border-radius: var(--ox-radius);
    border: 1px solid var(--ox-border);
    background: color-mix(in srgb, var(--ox-footer-bg, var(--ox-surface)) 55%, var(--ox-surface));
    overflow: hidden;
}

.ds-card__tabs .ox-tab[b-zbo23sl6cm] {
    position: relative;
    flex: 1 1 0;
    justify-content: center;
    align-items: center;
    gap: 0.35em;
    min-width: 0;
    min-height: 2.35rem;
    padding: 0.55rem 0.65rem 0.65rem;
    border-radius: 0;
    border: none;
    border-right: 1px solid var(--ox-border);
    font-size: var(--ox-fs-secondary);
    letter-spacing: 0.01em;
    transition:
        background-color 0.16s ease,
        color 0.16s ease;
}

.ds-card__tabs .ox-tab:last-child[b-zbo23sl6cm] {
    border-right: none;
}

.ds-card__tabs .ds-tab-label[b-zbo23sl6cm] {
    position: relative;
    display: inline-block;
    line-height: 1.25;
    padding-bottom: 0.15em;
}

.ds-card__tabs .ds-tab-label[b-zbo23sl6cm]::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    border-radius: 1px;
    background: var(--ox-border);
    transition: background-color 0.16s ease;
}

.ds-card__tabs.ox-tab-bar--segmented .ox-tab:not(.ox-tab--active)[b-zbo23sl6cm] {
    color: var(--ox-text-secondary);
    font-weight: var(--ox-fw-medium, 500);
    background: transparent;
}

.ds-card__tabs.ox-tab-bar--segmented .ox-tab:not(.ox-tab--active) .ds-tab-label[b-zbo23sl6cm]::after {
    background: color-mix(in srgb, var(--ox-text-secondary) 45%, var(--ox-border));
}

.ds-card__tabs.ox-tab-bar--segmented .ox-tab:hover:not(.ox-tab--active)[b-zbo23sl6cm] {
    color: var(--ox-text);
    background: color-mix(in srgb, var(--ox-surface) 80%, transparent);
}

.ds-card__tabs.ox-tab-bar--segmented .ox-tab.ox-tab--active[b-zbo23sl6cm] {
    color: var(--ox-accent, var(--ox-primary));
    font-weight: var(--ox-fw-semibold);
    background: var(--ox-surface);
    box-shadow: none;
}

.ds-card__tabs.ox-tab-bar--segmented .ox-tab.ox-tab--active .ds-tab-label[b-zbo23sl6cm]::after {
    background: var(--ox-accent, var(--ox-primary));
}

.ds-card--sheet[b-zbo23sl6cm] {
    gap: 0;
    padding: 0;
    border: none;
    border-radius: 0;
    background: transparent;
}

.ds-card--sheet .ds-card__head[b-zbo23sl6cm] {
    margin: 0;
    padding: 0;
}

.ds-card--sheet .ds-card__tabs.ox-tab-bar--segmented[b-zbo23sl6cm] {
    align-items: flex-end;
    gap: 0.25rem;
    border: none;
    border-radius: 0;
    background: transparent;
    overflow: visible;
}

.ds-card--sheet .ds-card__tabs .ox-tab[b-zbo23sl6cm] {
    flex: 0 1 auto;
    min-height: 2rem;
    padding: 0.4rem 0.9rem;
    border: 1px solid transparent;
    border-bottom: none;
    border-radius: var(--ox-radius) var(--ox-radius) 0 0;
    background: transparent;
    color: var(--ox-text-secondary);
    font-weight: var(--ox-fw-regular);
}

.ds-card--sheet .ds-card__tabs .ox-tab.ox-tab--active:last-child[b-zbo23sl6cm] {
    border-right: 1px solid var(--ox-border);
}

.ds-card--sheet .ds-card__tabs .ds-tab-label[b-zbo23sl6cm]::after {
    display: none;
}

.ds-card--sheet .ds-card__tabs .ox-tab:hover:not(.ox-tab--active)[b-zbo23sl6cm] {
    color: var(--ox-text);
    background: color-mix(in srgb, var(--ox-text) 6%, transparent);
}

.ds-card--sheet .ds-card__tabs.ox-tab-bar--segmented .ox-tab.ox-tab--active[b-zbo23sl6cm] {
    position: relative;
    z-index: 1;
    margin-bottom: -1px;
    padding-bottom: calc(0.4rem + 1px);
    border-color: var(--ox-border);
    border-top: 2px solid var(--ox-accent, var(--ox-primary));
    background: var(--ox-surface);
    color: var(--ox-accent, var(--ox-primary));
    font-weight: var(--ox-fw-semibold);
    box-shadow: none;
}

.ds-card__body[b-zbo23sl6cm] {
    border: 1px solid var(--ox-border);
    border-radius: 0 var(--ox-radius) var(--ox-radius) var(--ox-radius);
    background: var(--ox-surface);
    overflow: hidden;
}

.ds-card--sheet .ds-card__body > .ds-budget-panel:not(.ds-budget-panel--child)[b-zbo23sl6cm] {
    border: none;
    border-radius: 0;
}

.ds-card--sheet .ox-data-table thead th[b-zbo23sl6cm] {
    background: var(--ox-surface) !important;
}

.ds-order-status-cell[b-zbo23sl6cm] {
    white-space: nowrap;
}

.ds-tab-count[b-zbo23sl6cm] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.35em;
    margin-left: 0;
    padding: 0.05em 0.45em;
    border-radius: 999px;
    font-size: 0.72em;
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
    line-height: 1.35;
    background: color-mix(in srgb, var(--ox-text-secondary) 14%, transparent);
    color: var(--ox-text-secondary);
}

.ds-card__tabs .ox-tab--active .ds-tab-count[b-zbo23sl6cm] {
    color: var(--ox-accent, var(--ox-primary));
    background: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 14%, transparent);
}

.ds-sub-tabs[b-zbo23sl6cm] {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.2rem;
    width: fit-content;
    max-width: 100%;
    margin: 0 0 var(--ox-space-xs);
    padding: 0.2rem;
    border: 1px solid var(--ox-border);
    border-radius: 999px;
    background: color-mix(in srgb, var(--ox-footer-bg, var(--ox-surface)) 70%, var(--ox-surface));
}

.ds-sub-tab[b-zbo23sl6cm] {
    appearance: none;
    display: inline-flex;
    align-items: center;
    gap: 0.3em;
    padding: 0.35rem 0.85rem;
    border: 1px solid transparent;
    border-radius: 999px;
    background: transparent;
    color: var(--ox-text-secondary);
    font: inherit;
    font-size: var(--ox-fs-caption);
    font-weight: var(--ox-fw-medium, 500);
    line-height: 1.3;
    cursor: pointer;
    transition:
        background-color 0.14s ease,
        color 0.14s ease,
        border-color 0.14s ease;
}

.ds-sub-tab:hover[b-zbo23sl6cm] {
    color: var(--ox-text);
    background: color-mix(in srgb, var(--ox-surface) 80%, transparent);
}

.ds-sub-tab--active[b-zbo23sl6cm] {
    color: var(--ox-text);
    border-color: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 22%, var(--ox-border));
    background: var(--ox-surface);
    font-weight: var(--ox-fw-semibold);
    box-shadow: 0 1px 2px color-mix(in srgb, var(--ox-text) 6%, transparent);
}

.ds-sub-tab .ds-tab-count[b-zbo23sl6cm] {
    background: color-mix(in srgb, var(--ox-text-secondary) 12%, transparent);
}

.ds-sub-tab--active .ds-tab-count[b-zbo23sl6cm] {
    color: var(--ox-accent, var(--ox-primary));
    background: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 12%, transparent);
}

@media (max-width: 640px) {
    .ds-card__tabs.ox-tab-bar--segmented[b-zbo23sl6cm] {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .ds-card__tabs.ox-tab-bar--segmented[b-zbo23sl6cm]::-webkit-scrollbar {
        display: none;
    }

    .ds-card__tabs .ox-tab[b-zbo23sl6cm] {
        flex: 0 0 auto;
        min-width: 4.5rem;
        padding-inline: 0.85rem;
    }
}

.ds-cust-hero[b-zbo23sl6cm] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--ox-form-stack-gap) calc(var(--ox-form-stack-gap) * 1.5);
    padding: calc(var(--ox-space) * 1.15) var(--ox-form-stack-gap);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background:
        linear-gradient(
            105deg,
            color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 6%, var(--ox-surface)) 0%,
            var(--ox-surface) 42%
        );
}

.ds-cust-hero__identity[b-zbo23sl6cm] {
    min-width: 0;
    flex: 1 1 14rem;
}

.ds-pay-cards[b-zbo23sl6cm] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.5rem;
}

.ds-pay-card[b-zbo23sl6cm] {
    display: flex;
    flex-direction: column;
    min-height: 6.25rem;
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius-sm);
    background: color-mix(in srgb, var(--ox-surface) 92%, transparent);
    overflow: hidden;
}

.ds-pay-card__name[b-zbo23sl6cm] {
    padding: 0.45rem 0.55rem 0.35rem;
    font-size: var(--ox-fs-body);
    font-weight: 600;
    text-align: center;
}

.ds-pay-card__stats[b-zbo23sl6cm] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 1px minmax(0, 1fr) 1px minmax(0, 1fr);
    flex: 1;
    border-top: 1px solid var(--ox-border);
}

.ds-pay-card__stat[b-zbo23sl6cm] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.2rem;
    min-width: 0;
    padding: 0.45rem 0.2rem 0.5rem;
}

.ds-pay-card__bar[b-zbo23sl6cm] {
    background: var(--ox-border);
}

.ds-pay-card__k[b-zbo23sl6cm] {
    font-size: var(--ox-fs-body);
    color: var(--ox-text-secondary);
}

.ds-pay-card__v[b-zbo23sl6cm] {
    max-width: 100%;
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
    line-height: 1.2;
    color: var(--ox-text-primary);
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 960px) {
    .ds-pay-cards[b-zbo23sl6cm] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ds-pay-card__v[b-zbo23sl6cm] {
        font-size: var(--ox-fs-body);
    }
}

.ds-cust-hero__title-row[b-zbo23sl6cm] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--ox-space-xs) var(--ox-space);
}

.ds-cust-hero__name-icon[b-zbo23sl6cm] {
    font-size: calc(var(--ox-fs-title) * 1.35);
    line-height: 1;
    color: var(--ox-text-secondary);
}

.ds-cust-hero__name[b-zbo23sl6cm] {
    margin: 0;
    font-size: calc(var(--ox-fs-title) * 1.35);
    font-weight: var(--ox-fw-semibold);
    line-height: 1.25;
    letter-spacing: -0.01em;
    color: var(--ox-text-primary);
}

.ds-cust-status[b-zbo23sl6cm] {
    display: inline-flex;
    align-items: center;
    padding: 0.15em 0.65em;
    border-radius: 999px;
    border: 1px solid color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 22%, var(--ox-border));
    background: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 10%, var(--ox-surface));
    color: var(--ox-accent, var(--ox-primary));
    font-size: var(--ox-fs-body);
    font-weight: var(--ox-fw-semibold);
    line-height: 1.5;
    white-space: nowrap;
}

.ds-cust-hero__meta[b-zbo23sl6cm] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem 0;
    margin: 0.45rem 0 0;
    font-size: var(--ox-fs-body);
    line-height: 1.45;
    color: var(--ox-text-secondary);
}

.ds-cust-hero__meta > .ds-cust-hero__k[b-zbo23sl6cm],
.ds-cust-hero__meta > .ds-cust-hero__slash[b-zbo23sl6cm] {
    color: var(--ox-text-secondary);
}

.ds-cust-hero__slash[b-zbo23sl6cm] {
    margin-inline: 0.35rem;
}

.ds-team-chip[b-zbo23sl6cm] {
    display: inline-block;
    padding: 0.1rem 0.45rem;
    border-radius: 0.25rem;
    background: color-mix(in srgb, var(--ox-text-secondary) 12%, transparent);
    color: var(--ox-text-body, var(--ox-text));
    font-size: var(--ox-fs-body);
}

.ds-cust-hero__meta > span:not(.ds-cust-hero__dot)[b-zbo23sl6cm] {
    color: var(--ox-text-body, var(--ox-text));
}

.ds-cust-hero__community[b-zbo23sl6cm] {
    white-space: nowrap;
}

.ds-cust-hero__dot[b-zbo23sl6cm] {
    width: 0.25rem;
    height: 0.25rem;
    margin-inline: 0.55rem;
    border-radius: 50%;
    background: color-mix(in srgb, var(--ox-text-secondary) 55%, transparent);
    flex-shrink: 0;
}

.ds-cust-hero__metrics[b-zbo23sl6cm] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-self: flex-start;
    gap: var(--ox-space-xs);
    flex: 0 0 auto;
    margin-left: auto;
}

.ds-metric[b-zbo23sl6cm] {
    appearance: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 4.75rem;
    padding: var(--ox-space-xs) var(--ox-space);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius-sm);
    background: var(--ox-surface);
    color: inherit;
    font: inherit;
    cursor: pointer;
}

.ds-metric:hover[b-zbo23sl6cm] {
    border-color: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 35%, var(--ox-border));
    background: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 6%, var(--ox-surface));
}

.ds-metric__n[b-zbo23sl6cm] {
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
    line-height: 1.2;
    color: var(--ox-text-primary);
    white-space: nowrap;
}

.ds-metric__l[b-zbo23sl6cm] {
    margin-top: var(--ox-space-xs);
    font-size: var(--ox-fs-body);
    color: var(--ox-text-secondary);
    line-height: 1.2;
    white-space: nowrap;
}

.ds-metric--todo[b-zbo23sl6cm] {
    border-color: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 35%, var(--ox-border));
    background: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 9%, var(--ox-surface));
}

.ds-metric--todo .ds-metric__n[b-zbo23sl6cm] {
    color: var(--ox-accent, var(--ox-primary));
}

@media (max-width: 720px) {
    .ds-cust-hero[b-zbo23sl6cm] {
        flex-direction: column;
        align-items: stretch;
    }

    .ds-cust-hero__metrics[b-zbo23sl6cm] {
        justify-content: flex-start;
    }

    .ds-metric[b-zbo23sl6cm] {
        flex: 1 1 0;
        min-width: 3.75rem;
    }

    .ds-metric__n[b-zbo23sl6cm],
    .ds-pay-card__v[b-zbo23sl6cm] {
        font-size: var(--ox-fs-body);
    }
}

.ds-budget-inline-action[b-zbo23sl6cm] {
    margin-left: var(--ox-space);
}

.ds-order-row--rejected td[b-zbo23sl6cm] {
    color: var(--ox-text-secondary);
}

.ds-pay-list[b-zbo23sl6cm] {
    margin: 0;
    padding-left: var(--ox-form-stack-gap);
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-body);
}

.ds-pay-gap[b-zbo23sl6cm] {
    color: var(--ox-text-danger, var(--ox-text-secondary));
}

.ds-cust-col-price[b-zbo23sl6cm] {
    width: 7rem;
    text-align: right;
    white-space: nowrap;
}

.ds-budget-toolbar[b-zbo23sl6cm] {
    display: flex;
    align-items: center;
    gap: 0;
    min-height: var(--ox-panel-header-h);
    padding: 0 var(--ox-space);
    border-bottom: 1px solid var(--ox-border);
    background: var(--ox-footer-bg, var(--ox-header-bg));
}

.ds-budget-toolbar__link[b-zbo23sl6cm] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    height: calc(var(--ox-btn-size) - 4px);
    padding: 0 0.65rem;
    border-radius: var(--ox-radius-sm, var(--ox-radius));
    font-size: var(--ox-fs-body);
    line-height: 1;
}

.ds-budget-toolbar__link:hover[b-zbo23sl6cm] {
    background: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 10%, transparent);
    text-decoration: none;
}

.ds-pay-sheet[b-zbo23sl6cm] {
    display: grid;
    grid-template-columns: minmax(12rem, 1.1fr) minmax(0, 1.4fr);
    gap: var(--ox-form-stack-gap);
    margin: var(--ox-form-stack-gap);
    padding: var(--ox-form-stack-gap);
    border: 1px solid color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 28%, var(--ox-border));
    border-radius: var(--ox-radius);
    background:
        linear-gradient(
            105deg,
            color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 8%, var(--ox-surface)) 0%,
            var(--ox-surface) 46%
        );
}

.ds-pay-sheet__amount[b-zbo23sl6cm] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.2rem;
    padding-right: var(--ox-form-stack-gap);
    border-right: 1px solid var(--ox-border);
}

.ds-pay-sheet__k[b-zbo23sl6cm] {
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}

.ds-pay-sheet__v[b-zbo23sl6cm] {
    font-size: calc(var(--ox-fs-title) * 1.6);
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
    line-height: 1.15;
    color: var(--ox-text-primary);
}

.ds-pay-sheet__formula[b-zbo23sl6cm] {
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}

.ds-pay-sheet__side[b-zbo23sl6cm] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: var(--ox-space);
    min-width: 0;
}

.ds-pay-sheet__row[b-zbo23sl6cm] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--ox-space);
    font-size: var(--ox-fs-body);
}

.ds-pay-sheet__method[b-zbo23sl6cm] {
    font-weight: var(--ox-fw-semibold);
    color: var(--ox-accent, var(--ox-primary));
}

.ds-pay-sheet__fields--confirm[b-zbo23sl6cm] {
    justify-content: flex-end;
    padding: var(--ox-space-xs) var(--ox-form-stack-gap) 0;
}

.ds-pay-sheet__fields[b-zbo23sl6cm] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ox-space) var(--ox-form-stack-gap);
}

@media (max-width: 720px) {
    .ds-pay-sheet[b-zbo23sl6cm] {
        grid-template-columns: 1fr;
    }

    .ds-pay-sheet__amount[b-zbo23sl6cm] {
        padding-right: 0;
        padding-bottom: var(--ox-space);
        border-right: none;
        border-bottom: 1px solid var(--ox-border);
    }
}

.ds-budget-file-link + .ds-budget-file-link[b-zbo23sl6cm] {
    margin-left: 0.35rem;
}

.ds-budget-file[b-zbo23sl6cm] {
    position: relative;
    cursor: pointer;
}

.ds-sheet-preview__meta[b-zbo23sl6cm] {
    margin: 0 0 var(--ox-space);
}

.ds-sheet-preview .ox-data-table td[b-zbo23sl6cm] {
    white-space: nowrap;
}

.ds-budget-file[b-zbo23sl6cm]  input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.ds-budget-toolbar__sep[b-zbo23sl6cm] {
    width: 1px;
    height: 0.85rem;
    margin: 0 0.15rem;
    background: var(--ox-border);
    flex-shrink: 0;
}

.ds-budget-add[b-zbo23sl6cm] {
    margin-left: var(--ox-space);
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-regular);
}

.ds-budget-name[b-zbo23sl6cm] {
    display: inline-flex;
    align-items: center;
    gap: var(--ox-space-xs);
    min-width: 0;
}

.ds-budget-lock[b-zbo23sl6cm] {
    margin-left: var(--ox-space-xs);
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-regular);
    white-space: nowrap;
}

.ds-budget-name__icon[b-zbo23sl6cm] {
    flex-shrink: 0;
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}

.ds-budget-panel[b-zbo23sl6cm] {
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    overflow: hidden;
    background: var(--ox-surface);
}

.ds-budget-panel--child[b-zbo23sl6cm] {
    margin-left: var(--ox-form-stack-gap);
    margin-right: var(--ox-space);
    border-left: 2px solid color-mix(in srgb, var(--ox-accent) 25%, var(--ox-border));
}

.ds-budget-panel:not(.ds-budget-panel--child) > .ox-data-table-wrap > .ox-data-table[b-zbo23sl6cm] {
    table-layout: fixed;
    width: 100%;
}

.ds-order-edit-row > td[b-zbo23sl6cm] {
    max-width: 0;
    overflow: hidden;
    padding: var(--ox-space) !important;
    border-bottom: 1px solid var(--ox-border);
    background: var(--ox-state-hover-bg);
}

.ds-budget-editor-body[b-zbo23sl6cm] {
    max-width: 100%;
    overflow-x: auto;
}

.ds-order-edit-row .ds-budget-panel--child[b-zbo23sl6cm] {
    margin: 0;
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background: var(--ox-surface);
    box-shadow: 0 1px 2px color-mix(in srgb, var(--ox-text-primary) 8%, transparent);
}

.ds-order-edit-row .ds-budget-panel--child > .manage-panel-header[b-zbo23sl6cm] {
    background: color-mix(in srgb, var(--ox-accent) 6%, var(--ox-surface)) !important;
}

.ds-order-edit-row .ds-budget-panel--child > .manage-panel-header .manage-panel-title[b-zbo23sl6cm] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.ds-order-edit-row .ds-budget-panel--child > .manage-panel-header .manage-panel-title[b-zbo23sl6cm]::before {
    content: "";
    width: 3px;
    height: 0.9em;
    border-radius: 1px;
    background: var(--ox-accent);
    flex-shrink: 0;
}

.ds-budget-fullscreen-scrim[b-zbo23sl6cm] {
    position: fixed;
    inset: 0;
    z-index: 10890;
    background: color-mix(in srgb, var(--ox-text-primary) 40%, transparent);
}

.ds-budget-panel--fullscreen[b-zbo23sl6cm] {
    position: fixed;
    inset: var(--ox-space);
    z-index: 10900;
    margin: 0;
    display: flex;
    flex-direction: column;
    min-height: 0;
    border-left-width: 1px;
    border-radius: var(--ox-radius);
    box-shadow: var(--ox-shadow-lg, 0 12px 40px rgb(0 0 0 / 28%));
    background: var(--ox-surface);
}

.ds-budget-panel--fullscreen .manage-panel-header[b-zbo23sl6cm] {
    flex: 0 0 auto;
}

.ds-budget-panel--fullscreen .ds-budget-editor-body[b-zbo23sl6cm] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding: 0 var(--ox-panel-header-px, 1rem) var(--ox-space);
}

.ds-budget-panel--fullscreen .ds-budget-col-group[b-zbo23sl6cm],
.ds-budget-panel--fullscreen .ds-budget-col-qty[b-zbo23sl6cm] {
    width: 12rem;
    max-width: 16rem;
}

.ds-budget-panel--fullscreen .ds-budget-col-sku[b-zbo23sl6cm] {
    width: auto;
    min-width: 18rem;
    max-width: none;
}

.ds-budget-panel--fullscreen .ox-data-table td .ox-form-control[b-zbo23sl6cm],
.ds-budget-panel--fullscreen .ox-data-table td .ox-select[b-zbo23sl6cm] {
    min-width: 10rem;
}

.ds-budget-panel--fullscreen .ds-budget-col-amount[b-zbo23sl6cm] {
    width: 9rem;
    min-width: 9rem;
    max-width: 12rem;
}

.ds-budget-col-group[b-zbo23sl6cm],
.ds-budget-col-qty[b-zbo23sl6cm] {
    width: 10em;
    max-width: 10em;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ds-budget-editor-body .ox-data-table[b-zbo23sl6cm] {
    table-layout: fixed;
    width: 100%;
}

.ds-budget-col-sku[b-zbo23sl6cm] {
    width: auto;
    min-width: 12rem;
    max-width: none;
}

.ds-budget-col-amount[b-zbo23sl6cm] {
    width: 8em;
    min-width: 8em;
    max-width: 8em;
    text-align: right;
    white-space: nowrap;
}

.ds-budget-col-order[b-zbo23sl6cm] {
    min-width: 11rem;
    max-width: 16rem;
}

.ds-budget-order-cell[b-zbo23sl6cm] {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: var(--ox-space-xs);
}

.ds-budget-order-status[b-zbo23sl6cm] {
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
    white-space: nowrap;
}

.ds-budget-line[b-zbo23sl6cm] {
    cursor: pointer;
}

.ds-budget-col-actions[b-zbo23sl6cm] {
    width: 2.75rem;
    white-space: nowrap;
    text-align: center;
}

.ds-budget-col-check[b-zbo23sl6cm] {
    width: 2.5rem;
    text-align: center;
}

.ds-budget-col-no[b-zbo23sl6cm] {
    width: 6.5rem;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
    color: var(--ox-text-secondary);
}

.ds-budget-col-status[b-zbo23sl6cm] {
    width: 5rem;
    white-space: nowrap;
}

.ds-budget-col-files[b-zbo23sl6cm] {
    width: 4.5rem;
    max-width: 4.5rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ds-budget-files[b-zbo23sl6cm] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-space);
    margin: 0;
    padding: 0;
    list-style: none;
}

.ds-budget-files li[b-zbo23sl6cm] {
    display: flex;
    align-items: center;
    gap: var(--ox-space);
    min-width: 0;
}

.ds-budget-files__name[b-zbo23sl6cm] {
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ds-budget-files__actions[b-zbo23sl6cm] {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: var(--ox-space);
    white-space: nowrap;
}

.ds-budget-files__actions .ox-link[b-zbo23sl6cm] {
    flex: 0 0 auto;
    white-space: nowrap;
}

.ds-budget-files__danger[b-zbo23sl6cm] {
    color: var(--ox-text-danger, var(--ox-text-secondary));
}

.ds-order-col-check[b-zbo23sl6cm] {
    width: 2.5rem;
    text-align: center;
}

.ds-order-expand[b-zbo23sl6cm] {
    display: inline-flex;
    align-items: center;
    gap: var(--ox-space-xs);
    max-width: 100%;
    padding: 0;
    border: none;
    background: none;
    font: inherit;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}

.ds-order-expand:hover[b-zbo23sl6cm] {
    text-decoration: none;
}

.ds-order-expand__icon[b-zbo23sl6cm] {
    flex-shrink: 0;
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}

.ds-order-col-actions[b-zbo23sl6cm] {
    white-space: nowrap;
}

.ds-order-col-actions .ox-link + .ox-link[b-zbo23sl6cm] {
    margin-left: var(--ox-space);
}

.ds-budget-col-delete[b-zbo23sl6cm] {
    width: 4rem;
    text-align: right;
    white-space: nowrap;
}

.ds-budget-delete[b-zbo23sl6cm] {
    appearance: none;
    margin: 0;
    padding: 0;
    border: none;
    background: none;
    color: var(--ox-text-danger);
    font: inherit;
    font-size: var(--ox-fs-secondary);
    line-height: 1;
    cursor: pointer;
    vertical-align: middle;
}

.ds-budget-delete:hover[b-zbo23sl6cm] {
    text-decoration: underline;
}

.ds-order-line-group--multi[b-zbo23sl6cm] {
    margin-top: var(--ox-space);
    border-top: 1px solid var(--ox-border);
}

.ds-order-line-group--multi:first-of-type[b-zbo23sl6cm] {
    margin-top: 0;
    border-top: none;
}

.ds-order-line-group__head[b-zbo23sl6cm] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ox-space);
    padding: var(--ox-space-xs) var(--ox-form-stack-gap);
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-semibold);
    background: var(--ox-chip-bg, var(--ox-surface));
}

.ds-deal-formula[b-zbo23sl6cm] {
    margin: var(--ox-space-xs) 0 0;
    padding: var(--ox-space-xs) var(--ox-form-stack-gap);
    font-size: var(--ox-fs-body);
    color: var(--ox-text-secondary);
    text-align: right;
    white-space: nowrap;
}

.ds-deal-actions[b-zbo23sl6cm] {
    display: flex;
    justify-content: flex-end;
    gap: var(--ox-space);
    padding: var(--ox-space-xs) var(--ox-form-stack-gap) var(--ox-space);
}

.ds-deal-formula__n[b-zbo23sl6cm] {
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
    color: var(--ox-text-primary);
}

.ds-order-line-group__total[b-zbo23sl6cm] {
    margin: var(--ox-space-xs) var(--ox-form-stack-gap) var(--ox-space);
    text-align: right;
    font-size: var(--ox-fs-secondary);
}

.ds-order-meta[b-zbo23sl6cm] {
    flex-shrink: 1;
    min-width: 0;
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-regular);
    color: var(--ox-text-secondary);
    text-align: right;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ds-budget-col-actions .ox-link + .ox-link[b-zbo23sl6cm] {
    margin-left: var(--ox-space);
}

.ds-budget-col-actions .ox-link--danger[b-zbo23sl6cm] {
    color: var(--ox-danger, #c0392b);
}

.ds-budget-panel .ox-data-table td .ox-form-control[b-zbo23sl6cm],
.ds-budget-panel .ox-data-table td .ox-select[b-zbo23sl6cm] {
    width: 100%;
    box-sizing: border-box;
}

.ds-budget-panel .ox-data-table td .ds-budget-total-input__field[b-zbo23sl6cm] {
    width: 16ch;
    min-width: 16ch;
    max-width: 16ch;
}

.ds-budget-panel .manage-panel-header-actions .ox-link[b-zbo23sl6cm] {
    margin-right: var(--ox-space-xs);
}

.ds-budget-panel .ox-data-table tfoot tr:not(.ds-budget-total-row--manual) td[b-zbo23sl6cm] {
    height: var(--ox-panel-header-h);
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border-top: 1px solid var(--ox-border);
    background: var(--ox-footer-bg, var(--ox-header-bg)) !important;
    color: var(--ox-text-primary);
    font-weight: var(--ox-fw-semibold);
}

.ds-budget-total-label[b-zbo23sl6cm] {
    text-align: right;
    color: var(--ox-text-secondary);
    font-weight: var(--ox-fw-medium);
    vertical-align: middle;
}

.ds-budget-total-row--manual td.ds-budget-total-label[b-zbo23sl6cm],
.ds-budget-total-row--manual td.ds-budget-col-amount[b-zbo23sl6cm] {
    vertical-align: top;
}

.ds-budget-total-row--manual .ds-budget-total-label[b-zbo23sl6cm] {
    line-height: calc(var(--ox-btn-size) - 2px);
}

.ds-budget-total-row--manual td[b-zbo23sl6cm] {
    padding-block: 0.55rem;
    vertical-align: middle;
}

.ds-budget-total-row .ds-cust-col-price[b-zbo23sl6cm] {
    font-weight: var(--ox-fw-semibold);
    color: var(--ox-text-primary);
}

.ds-budget-total-row .ds-budget-col-amount[b-zbo23sl6cm] {
    width: auto;
    min-width: 18em;
    max-width: none;
    overflow: visible;
    font-weight: var(--ox-fw-semibold);
    color: var(--ox-text-primary);
    text-align: right;
}

.ds-budget-total-edit[b-zbo23sl6cm] {
    display: grid;
    grid-template-columns: auto auto;
    justify-content: end;
    align-items: center;
    column-gap: var(--ox-space-xs);
    row-gap: 0.15rem;
    width: fit-content;
    margin-left: auto;
}

.ds-budget-total-line[b-zbo23sl6cm] {
    display: contents;
}

.ds-budget-total-upper[b-zbo23sl6cm] {
    grid-column: 2;
}

.ds-budget-total-line .ds-budget-total-label[b-zbo23sl6cm] {
    vertical-align: middle;
    line-height: calc(var(--ox-btn-size) - 2px);
    white-space: nowrap;
}

.ds-budget-total-upper[b-zbo23sl6cm] {
    font-size: var(--ox-fs-caption);
    font-weight: var(--ox-fw-regular);
    color: var(--ox-text-secondary);
    white-space: nowrap;
}

.ds-budget-total-input[b-zbo23sl6cm] {
    display: inline-flex;
    align-items: stretch;
    width: auto;
    max-width: none;
    flex-shrink: 0;
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background: var(--ox-surface);
    overflow: hidden;
    box-sizing: border-box;
}

.ds-budget-total-input:focus-within[b-zbo23sl6cm] {
    border-color: var(--ox-accent);
    box-shadow: 0 0 0 1px var(--ox-focus-ring, color-mix(in srgb, var(--ox-accent) 35%, transparent));
}

.ds-budget-total-input__field[b-zbo23sl6cm] {
    flex: 0 0 auto;
    width: 16ch;
    min-width: 16ch;
    max-width: 16ch;
    height: calc(var(--ox-btn-size) - 2px);
    min-height: calc(var(--ox-btn-size) - 2px);
    margin: 0;
    padding: 0 0.55rem;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.ds-budget-total-input__btn[b-zbo23sl6cm] {
    appearance: none;
    flex: 0 0 auto;
    margin: 0;
    padding: 0 0.75rem;
    border: none;
    border-left: 1px solid var(--ox-border);
    background: var(--ox-tab-segment-track);
    color: var(--ox-text-primary);
    font: inherit;
    font-size: var(--ox-fs-secondary);
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
}

.ds-budget-total-input__btn:hover[b-zbo23sl6cm] {
    background: var(--ox-state-hover-bg);
}

.ds-budget-modal__hint[b-zbo23sl6cm] {
    margin: 0 0 var(--ox-space);
    font-size: var(--ox-fs-secondary);
    line-height: 1.5;
    color: var(--ox-text-secondary);
}

.ds-modal-reject-field[b-zbo23sl6cm] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-space-xs);
    margin-bottom: var(--ox-form-stack-gap) !important;
}

.ds-modal-reject-field__label[b-zbo23sl6cm] {
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-medium);
    color: var(--ox-text-secondary);
}

.ds-modal-reject-field .ox-form-control[b-zbo23sl6cm] {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    field-sizing: fixed;
}

.ds-modal-reject-textarea[b-zbo23sl6cm] {
    min-height: 6rem;
}

.ds-merge-budget-list[b-zbo23sl6cm] {
    margin: 0 0 var(--ox-space);
    padding: 0;
    list-style: none;
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius-sm);
}

.ds-merge-budget-list li[b-zbo23sl6cm] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ox-space);
    padding: var(--ox-space-xs) var(--ox-space);
    border-bottom: 1px solid var(--ox-border);
}

.ds-merge-budget-list li:last-child[b-zbo23sl6cm] {
    border-bottom: none;
}

.ds-budget-modal__total[b-zbo23sl6cm] {
    margin: 0 0 var(--ox-form-stack-gap);
    font-size: var(--ox-fs-secondary);
    text-align: right;
}

.ds-order-main-info[b-zbo23sl6cm] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: var(--ox-space) var(--ox-form-stack-gap);
    padding: var(--ox-space) var(--ox-form-stack-gap);
    border-bottom: 1px solid var(--ox-border);
}

.ds-order-main-info__item[b-zbo23sl6cm] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-space-xs);
    min-width: 5rem;
    flex: 1 1 auto;
}

.ds-order-main-info__item--discount[b-zbo23sl6cm] {
    max-width: 12rem;
}

.ds-order-main-info__label[b-zbo23sl6cm] {
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
}

.ds-order-main-info__value[b-zbo23sl6cm] {
    font-size: var(--ox-fs-body);
    font-weight: var(--ox-fw-semibold);
}

.ds-work-fields[b-zbo23sl6cm] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: var(--ox-space) var(--ox-form-stack-gap);
    /* legend 压在输入框上沿，补半行高度，使横线到标签与输入框到底部的间距一致 */
    padding: calc(var(--ox-space) + 0.6 * var(--ox-ui-fs-sm, 0.75rem)) var(--ox-form-stack-gap) var(--ox-space);
}

.ds-work-fields .ox-form-field-legend[b-zbo23sl6cm] {
    flex: 1 1 12rem;
    margin: 0;
}

.ds-delivery-files[b-zbo23sl6cm] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    width: 100%;
    height: var(--ox-btn-size);
    min-height: var(--ox-btn-size);
    padding: 0 0.35rem;
    overflow-x: auto;
}

.ds-work-fields .ds-delivery-gallery[b-zbo23sl6cm] {
    flex: 1 1 100%;
}

.ds-delivery-gallery .ds-delivery-files[b-zbo23sl6cm] {
    height: auto;
    min-height: 8.5rem;
    align-items: flex-start;
    flex-wrap: wrap;
    padding: var(--ox-space);
    overflow: visible;
}

.ds-delivery-gallery .ds-delivery-files__item[b-zbo23sl6cm] {
    width: 8rem;
    height: 8rem;
}

.ds-delivery-gallery .ds-delivery-files__item img[b-zbo23sl6cm] {
    object-fit: contain;
    background: var(--ox-footer-bg);
}

.ds-delivery-files__item[b-zbo23sl6cm] {
    position: relative;
    flex: 0 0 auto;
    width: calc(var(--ox-btn-size) - 0.45rem);
    height: calc(var(--ox-btn-size) - 0.45rem);
}

button.ds-delivery-files__item[b-zbo23sl6cm],
.ds-delivery-files__item > button[b-zbo23sl6cm] {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}


.ds-delivery-files__item img[b-zbo23sl6cm] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--ox-radius-sm);
}

.ds-delivery-files__remove[b-zbo23sl6cm] {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 0.9rem;
    height: 0.9rem;
    padding: 0;
    border: 0;
    border-radius: var(--ox-radius-sm);
    background: var(--ox-surface);
    color: var(--ox-text-secondary);
    cursor: pointer;
}

.ds-delivery-files__add[b-zbo23sl6cm] {
    position: relative;
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
    height: calc(var(--ox-btn-size) - 0.5rem);
    margin: 0;
    padding: 0 0.55rem;
    border-radius: var(--ox-radius-sm);
    background: var(--ox-state-hover-bg);
    color: var(--ox-accent-foreground);
    font-size: var(--ox-ui-fs-sm);
    line-height: 1;
    cursor: pointer;
}

.ds-delivery-files__add[b-zbo23sl6cm]  input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.ds-delivery-files__empty[b-zbo23sl6cm] {
    color: var(--ox-text-secondary);
    font-size: var(--ox-ui-fs);
}

.ds-work-note[b-zbo23sl6cm] {
    padding: var(--ox-space) var(--ox-form-stack-gap) 0;
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}
/* /Components/Pages/Distribution/DsCustomers.razor.rz.scp.css */
.ds-cust-toolbar[b-8z8vqinvde] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ox-space) var(--ox-form-stack-gap, 1rem);
    padding: var(--ox-space) var(--ox-panel-header-px, 1rem);
    border-bottom: 1px solid var(--ox-border);
    box-sizing: border-box;
}

.ds-cust-caps[b-8z8vqinvde] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem;
    flex: 1 1 16rem;
    min-height: var(--ox-btn-size);
    padding: 0.15rem;
    border: 1px solid var(--ox-border);
    border-radius: 999px;
    background: var(--ox-tab-segment-track);
    box-sizing: border-box;
}

.ds-cust-cap[b-8z8vqinvde] {
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    min-height: calc(var(--ox-btn-size) - 0.35rem);
    padding: 0 0.75rem;
    border: 1px solid transparent;
    border-radius: 999px;
    background: transparent;
    color: var(--ox-text-secondary);
    font: inherit;
    font-size: var(--ox-fs-body);
    line-height: 1;
    cursor: pointer;
    box-sizing: border-box;
}

.ds-cust-cap:hover[b-8z8vqinvde] {
    color: var(--ox-text-primary);
    background: var(--ox-state-hover-bg);
}

.ds-cust-cap.is-on[b-8z8vqinvde] {
    color: var(--ox-text-primary);
    background: var(--ox-tab-segment-active-bg);
    box-shadow: var(--ox-tab-segment-shadow);
}

.ds-cust-cap__count[b-8z8vqinvde] {
    font-variant-numeric: tabular-nums;
    opacity: 0.85;
}

.ds-cust-search[b-8z8vqinvde] {
    flex: 0 1 14rem;
    min-width: 10rem;
    height: var(--ox-btn-size);
    min-height: var(--ox-btn-size);
    box-sizing: border-box;
}
/* /Components/Pages/Distribution/DsDealerDetail.razor.rz.scp.css */
.ds-dealer-sep[b-z41eq37qsw] {
    margin: 0 var(--ox-space-xs);
    color: var(--ox-text-secondary);
}

.ds-dealer[b-z41eq37qsw] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-form-stack-gap);
    padding: var(--ox-form-stack-gap);
}

.ds-dealer-hero[b-z41eq37qsw] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: var(--ox-form-stack-gap) calc(var(--ox-form-stack-gap) * 1.5);
    padding: calc(var(--ox-space) * 1.15) var(--ox-form-stack-gap);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background:
        linear-gradient(
            105deg,
            color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 6%, var(--ox-surface)) 0%,
            var(--ox-surface) 42%
        );
}

.ds-dealer-hero__identity[b-z41eq37qsw] {
    min-width: 0;
    flex: 1 1 16rem;
}

.ds-dealer-hero__title-row[b-z41eq37qsw] {
    display: flex;
    align-items: center;
    gap: var(--ox-space);
}

.ds-dealer-hero__name[b-z41eq37qsw] {
    margin: 0;
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
}

.ds-dealer-status[b-z41eq37qsw] {
    font-size: var(--ox-fs-caption);
    color: var(--ox-accent, var(--ox-primary));
}

.ds-dealer-status.is-off[b-z41eq37qsw] {
    color: var(--ox-text-secondary);
}

.ds-dealer-hero__meta[b-z41eq37qsw] {
    margin: var(--ox-space-xs) 0 0;
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
}

.ds-dealer-hero__dot[b-z41eq37qsw] {
    display: inline-block;
    width: 0.25rem;
    height: 0.25rem;
    margin: 0 var(--ox-space-xs);
    border-radius: 50%;
    background: var(--ox-border);
    vertical-align: middle;
}

.ds-dealer-hero__metrics[b-z41eq37qsw] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-self: flex-start;
    gap: var(--ox-space-xs);
    flex: 0 0 auto;
    margin-left: auto;
}

.ds-metric[b-z41eq37qsw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 4.75rem;
    padding: var(--ox-space-xs) var(--ox-space);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius-sm);
    background: var(--ox-surface);
}

.ds-metric__n[b-z41eq37qsw] {
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
    line-height: 1.2;
    white-space: nowrap;
}

.ds-metric__l[b-z41eq37qsw] {
    margin-top: var(--ox-space-xs);
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
    line-height: 1.2;
    white-space: nowrap;
}

.ds-metric--todo[b-z41eq37qsw] {
    border-color: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 35%, var(--ox-border));
    background: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 9%, var(--ox-surface));
}

.ds-metric--todo .ds-metric__n[b-z41eq37qsw] {
    color: var(--ox-accent, var(--ox-primary));
}

.ds-dealer-grid[b-z41eq37qsw] {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
    gap: var(--ox-form-stack-gap);
}

.ds-dealer-card[b-z41eq37qsw] {
    padding: var(--ox-form-stack-gap);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background: var(--ox-surface);
}

.ds-dealer-card__title[b-z41eq37qsw] {
    margin: 0;
    font-size: var(--ox-fs-body);
    font-weight: var(--ox-fw-semibold);
}

.ds-dealer-card__hint[b-z41eq37qsw] {
    margin: var(--ox-space-xs) 0 0;
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
}

.ds-trend[b-z41eq37qsw] {
    display: flex;
    align-items: flex-end;
    gap: var(--ox-space-xs);
    margin-top: var(--ox-space);
    min-height: 9rem;
}

.ds-trend__col[b-z41eq37qsw] {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
}

.ds-trend__track[b-z41eq37qsw] {
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: 6.5rem;
}

.ds-trend__bar[b-z41eq37qsw] {
    width: 100%;
    border-radius: var(--ox-radius-sm) var(--ox-radius-sm) 0 0;
    background: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 72%, var(--ox-surface));
}

.ds-trend__amt[b-z41eq37qsw],
.ds-trend__lab[b-z41eq37qsw] {
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
    font-variant-numeric: tabular-nums;
}

.ds-trend__amt[b-z41eq37qsw] {
    margin-top: var(--ox-space-xs);
}

.ds-share[b-z41eq37qsw] {
    margin-top: var(--ox-space);
}

.ds-share__row[b-z41eq37qsw] {
    display: flex;
    justify-content: space-between;
    gap: var(--ox-space);
    font-size: var(--ox-fs-caption);
}

.ds-share__track[b-z41eq37qsw] {
    height: 0.4rem;
    margin-top: var(--ox-space-xs);
    border-radius: var(--ox-radius-sm);
    background: color-mix(in srgb, var(--ox-border) 70%, var(--ox-surface));
    overflow: hidden;
}

.ds-share__fill[b-z41eq37qsw] {
    height: 100%;
    background: var(--ox-accent, var(--ox-primary));
}

.ds-share__fill--company[b-z41eq37qsw] {
    background: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 55%, var(--ox-text-secondary));
}

.ds-stages[b-z41eq37qsw] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: var(--ox-space-xs);
    margin-top: var(--ox-space);
}

.ds-stage[b-z41eq37qsw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: var(--ox-space-xs);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius-sm);
}

.ds-stage--hot[b-z41eq37qsw] {
    border-color: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 35%, var(--ox-border));
}

.ds-stage__n[b-z41eq37qsw] {
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
}

.ds-stage__l[b-z41eq37qsw],
.ds-stage__a[b-z41eq37qsw] {
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
}

.ds-comm[b-z41eq37qsw] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ox-space);
    margin-top: var(--ox-space);
}

.ds-comm__item[b-z41eq37qsw] {
    display: flex;
    flex-direction: column;
    min-width: 8rem;
}

.ds-comm__l[b-z41eq37qsw],
.ds-comm__s[b-z41eq37qsw] {
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
}

.ds-comm__n[b-z41eq37qsw] {
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
}

@media (max-width: 900px) {
    .ds-dealer-grid[b-z41eq37qsw],
    .ds-stages[b-z41eq37qsw] {
        grid-template-columns: 1fr;
    }

    .ds-stages[b-z41eq37qsw] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ds-dealer-hero[b-z41eq37qsw] {
        flex-direction: column;
        align-items: stretch;
    }

    .ds-dealer-hero__metrics[b-z41eq37qsw] {
        justify-content: flex-start;
        margin-left: 0;
    }
}
/* /Components/Pages/Distribution/DsDealers.razor.rz.scp.css */
.ds-dealer-toolbar[b-vmguiom3xf] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ox-space) var(--ox-form-stack-gap, 1rem);
    padding: var(--ox-space) var(--ox-panel-header-px, 1rem);
    border-bottom: 1px solid var(--ox-border);
    box-sizing: border-box;
}

.ds-dealer-caps[b-vmguiom3xf] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem;
    flex: 1 1 16rem;
    min-height: var(--ox-btn-size);
    padding: 0.15rem;
    border: 1px solid var(--ox-border);
    border-radius: 999px;
    background: var(--ox-tab-segment-track);
    box-sizing: border-box;
}

.ds-dealer-cap[b-vmguiom3xf] {
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    min-height: calc(var(--ox-btn-size) - 0.35rem);
    padding: 0 0.75rem;
    border: 1px solid transparent;
    border-radius: 999px;
    background: transparent;
    color: var(--ox-text-secondary);
    font: inherit;
    font-size: var(--ox-fs-body);
    line-height: 1;
    cursor: pointer;
    box-sizing: border-box;
}

.ds-dealer-cap:hover[b-vmguiom3xf] {
    color: var(--ox-text-primary);
    background: var(--ox-state-hover-bg);
}

.ds-dealer-cap.is-on[b-vmguiom3xf] {
    color: var(--ox-text-primary);
    background: var(--ox-tab-segment-active-bg);
    box-shadow: var(--ox-tab-segment-shadow);
}

.ds-dealer-cap__count[b-vmguiom3xf] {
    font-variant-numeric: tabular-nums;
    opacity: 0.85;
}

.ds-dealer-search[b-vmguiom3xf] {
    flex: 0 1 14rem;
    min-width: 10rem;
    height: var(--ox-btn-size);
    min-height: var(--ox-btn-size);
    box-sizing: border-box;
}

.ds-dealer-col-edit[b-vmguiom3xf] {
    width: 8rem;
    text-align: right;
    white-space: nowrap;
}

.ds-dealer-col-edit .ox-link + .ox-link[b-vmguiom3xf] {
    margin-left: var(--ox-space);
}

.ds-rel[b-vmguiom3xf] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: var(--ox-form-stack-gap, 1rem);
    align-items: center;
    padding: 0;
}

.ds-rel__col[b-vmguiom3xf] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-space);
    min-width: 0;
}

.ds-rel__col-title[b-vmguiom3xf] {
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
}

.ds-rel__hub[b-vmguiom3xf],
.ds-rel__node[b-vmguiom3xf] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
    padding: 0.45rem 0.65rem;
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background: var(--ox-surface);
}

.ds-rel__hub[b-vmguiom3xf] {
    position: relative;
    font-weight: var(--ox-fw-semibold);
    background: var(--ox-tab-segment-active-bg);
}

.ds-rel__hub[b-vmguiom3xf]::before,
.ds-rel__hub[b-vmguiom3xf]::after {
    content: "";
    position: absolute;
    top: 50%;
    width: var(--ox-form-stack-gap, 1rem);
    border-top: 1px solid var(--ox-border);
}

.ds-rel__hub[b-vmguiom3xf]::before { right: 100%; }
.ds-rel__hub[b-vmguiom3xf]::after { left: 100%; }

.ds-rel__node--person[b-vmguiom3xf] {
    border-style: dashed;
}

.ds-rel__role[b-vmguiom3xf] {
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
}

.ds-rel__name[b-vmguiom3xf] {
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-primary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ds-rel__empty[b-vmguiom3xf] {
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}
/* /Components/Pages/Distribution/DsFinance.razor.rz.scp.css */
.manage-middle.ds-fin-split[b-0id9w6hayh] {
    gap: 0;
}

.ds-fin-tabs[b-0id9w6hayh] {
    display: flex;
    align-items: center;
    gap: var(--ox-space);
    flex: 0 0 auto;
    min-height: 2rem;
    padding: 0 var(--ox-space);
    background: var(--ox-footer-bg);
    border-bottom: 1px solid var(--ox-border);
}

.ds-fin-tab[b-0id9w6hayh] {
    flex: 0 0 auto;
    height: 2rem;
    padding: 0 0.75rem;
    border: 0;
    background: transparent;
    color: var(--ox-text-secondary);
    font-size: var(--ox-fs-title);
    line-height: 2rem;
    white-space: nowrap;
    cursor: pointer;
}

.ds-fin-tab-side[b-0id9w6hayh] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-left: auto;
    min-width: 0;
}

.ds-fin-tab-side .ox-dp[b-0id9w6hayh] {
    flex: 0 0 8rem;
    width: 8rem;
}

.ds-fin-tab-side .ox-type-caption[b-0id9w6hayh] {
    white-space: nowrap;
}

.ds-fin-tab.is-on[b-0id9w6hayh] {
    color: var(--ox-text);
    font-weight: 600;
    box-shadow: inset 0 -2px 0 var(--ox-accent);
}

.ds-fin-queue[b-0id9w6hayh] {
    flex: 0 0 22rem;
    max-width: 28rem;
    border-radius: 0;
    border-right: 0;
}

.ds-fin-rule[b-0id9w6hayh] {
    flex: 0 0 1px;
    width: 1px;
    align-self: stretch;
    background: var(--ox-border);
}

.ds-fin-review[b-0id9w6hayh] {
    flex: 1 1 auto;
    border-radius: 0;
    border-left: 0;
}

.ds-fin-body[b-0id9w6hayh] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding: var(--ox-space) calc(var(--ox-space) * 2);
    display: flex;
    flex-direction: column;
    gap: var(--ox-space);
}

.ds-fin-compare[b-0id9w6hayh] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--ox-space);
}

.ds-fin-k[b-0id9w6hayh] {
    display: block;
    font-size: var(--ox-fs-title);
    color: var(--ox-text-secondary);
}

.ds-fin-n[b-0id9w6hayh] {
    display: block;
    margin-top: var(--ox-space-xs);
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
}

.ds-fin-mismatch[b-0id9w6hayh] {
    color: var(--ox-text-danger, var(--ox-text-secondary));
}

.ds-fin-meta[b-0id9w6hayh] {
    margin: 0;
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}

.ds-fin-slip[b-0id9w6hayh] {
    flex: 1 1 auto;
    min-height: 16rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background: var(--ox-footer-bg);
    overflow: hidden;
}

.ds-fin-slip img[b-0id9w6hayh] {
    max-width: 100%;
    max-height: 28rem;
    object-fit: contain;
}

.ds-fin-actions[b-0id9w6hayh] {
    display: flex;
    align-items: flex-end;
    gap: var(--ox-space);
    padding: var(--ox-space) calc(var(--ox-space) * 2);
    border-top: 1px solid var(--ox-border);
}

.ds-fin-reject[b-0id9w6hayh] {
    flex: 1 1 auto;
    margin: 0;
}

.ds-fin-pass[b-0id9w6hayh] {
    display: inline-flex;
}

.ds-fin-pass:has(button:disabled)[b-0id9w6hayh] {
    cursor: not-allowed;
}

.ds-fin-pass button:disabled[b-0id9w6hayh] {
    pointer-events: none;
}

@media (max-width: 900px) {
    .ds-fin-queue[b-0id9w6hayh] {
        flex-basis: auto;
        max-width: none;
    }
}
/* /Components/Pages/Distribution/DsHome.razor.rz.scp.css */
.ds-home-page[b-508fr6zbmo] {
    border: none !important;
    border-radius: 0;
    box-shadow: none !important;
    background: color-mix(in srgb, var(--ox-border) 46%, var(--ox-surface));
}

.ds-workbench[b-508fr6zbmo] {
    --ds-card-px: 0.625rem;
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
    overflow: auto;
    padding: 0.75rem;
    box-sizing: border-box;
    background: transparent;
}

.ds-workbench-grid[b-508fr6zbmo] {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(16rem, 0.9fr);
    gap: 0.75rem;
    align-items: stretch;
}

.ds-workbench-slot[b-508fr6zbmo] {
    min-width: 0;
    display: flex;
}

.ds-workbench-slot.is-wide[b-508fr6zbmo] {
    grid-column: 1 / -1;
}

@media (max-width: 960px) {
    .ds-workbench-grid[b-508fr6zbmo] {
        grid-template-columns: minmax(0, 1fr);
    }

    .ds-workbench-slot.is-wide[b-508fr6zbmo] {
        grid-column: auto;
    }
}

.ds-workbench[b-508fr6zbmo]  .manage-panel {
    flex: 1 1 auto;
    width: 100%;
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--ox-border) 70%, var(--ox-text-secondary));
    border-radius: 6px;
    background: var(--ox-surface);
    box-shadow: 0 1px 2px color-mix(in srgb, var(--ox-text-primary) 6%, transparent);
}

.ds-workbench[b-508fr6zbmo]  .manage-panel-header {
    height: 2rem;
    min-height: 2rem;
    padding: 0 var(--ds-card-px) !important;
    background: var(--ox-footer-bg) !important;
    border-bottom-color: color-mix(in srgb, var(--ox-border) 80%, var(--ox-text-secondary)) !important;
}

.ds-workbench[b-508fr6zbmo]  .ox-drf__trigger {
    height: 1.5rem;
    min-height: 1.5rem;
    padding: 0 0.45rem;
}
/* /Components/Pages/Distribution/DsOrders.razor.rz.scp.css */
.ds-orders-toolbar[b-iqjcv880nu] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ox-space) var(--ox-form-stack-gap, 1rem);
    padding: var(--ox-space) var(--ox-panel-header-px, 1rem);
    border-bottom: 1px solid var(--ox-border);
    box-sizing: border-box;
}

.ds-orders-caps[b-iqjcv880nu] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem;
    flex: 1 1 16rem;
    min-height: var(--ox-btn-size);
    padding: 0.15rem;
    border: 1px solid var(--ox-border);
    border-radius: 999px;
    background: var(--ox-tab-segment-track);
    box-sizing: border-box;
}

.ds-orders-cap[b-iqjcv880nu] {
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    min-height: calc(var(--ox-btn-size) - 0.35rem);
    padding: 0 0.75rem;
    border: 1px solid transparent;
    border-radius: 999px;
    background: transparent;
    color: var(--ox-text-secondary);
    font: inherit;
    font-size: var(--ox-fs-body);
    line-height: 1;
    cursor: pointer;
    box-sizing: border-box;
}

.ds-orders-cap:hover[b-iqjcv880nu] {
    color: var(--ox-text-primary);
    background: var(--ox-state-hover-bg);
}

.ds-orders-cap.is-on[b-iqjcv880nu] {
    color: var(--ox-text-primary);
    background: var(--ox-tab-segment-active-bg);
    box-shadow: var(--ox-tab-segment-shadow);
}

.ds-orders-cap__count[b-iqjcv880nu] {
    font-variant-numeric: tabular-nums;
    opacity: 0.85;
}

.ds-orders-summary[b-iqjcv880nu] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ox-space) var(--ox-form-stack-gap, 1rem);
    padding: var(--ox-space) var(--ox-panel-header-px, 1rem);
    border-bottom: 1px solid var(--ox-border);
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}

.ds-orders-summary strong[b-iqjcv880nu] {
    color: var(--ox-text-primary);
    font-weight: var(--ox-fw-semibold);
}

.ds-order-modal__hint[b-iqjcv880nu] {
    margin: 0 0 var(--ox-space);
    font-size: var(--ox-fs-secondary);
    line-height: 1.5;
    color: var(--ox-text-secondary);
}

.ds-modal-reject-field[b-iqjcv880nu] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-space-xs);
    margin-bottom: var(--ox-form-stack-gap) !important;
}

.ds-modal-reject-field__label[b-iqjcv880nu] {
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-medium);
    color: var(--ox-text-secondary);
}

.ds-modal-reject-field .ox-form-control[b-iqjcv880nu] {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    field-sizing: fixed;
}

.ds-modal-reject-textarea[b-iqjcv880nu] {
    min-height: 6rem;
}

.ds-order-line-group--multi[b-iqjcv880nu] {
    margin-top: var(--ox-space);
    border-top: 1px solid var(--ox-border);
}

.ds-order-line-group--multi:first-of-type[b-iqjcv880nu] {
    margin-top: 0;
    border-top: none;
}

.ds-order-line-group__head[b-iqjcv880nu] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ox-space);
    padding: var(--ox-space-xs) 0;
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-semibold);
}

.ds-order-main-info[b-iqjcv880nu] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: var(--ox-space) var(--ox-form-stack-gap);
    padding: var(--ox-space) 0;
}

.ds-order-main-info__item[b-iqjcv880nu] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-space-xs);
    min-width: 5rem;
    flex: 1 1 auto;
}

.ds-order-main-info__item--discount[b-iqjcv880nu] {
    max-width: 8rem;
}

.ds-order-main-info__label[b-iqjcv880nu] {
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
}

.ds-order-main-info__value[b-iqjcv880nu] {
    font-size: var(--ox-fs-body);
    font-weight: var(--ox-fw-semibold);
}
/* /Components/Pages/Distribution/DsPartnerDetail.razor.rz.scp.css */
.ds-partner-sep[b-3m6ksfukca] {
    margin: 0 var(--ox-space-xs);
    color: var(--ox-text-secondary);
}

.ds-partner[b-3m6ksfukca] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-form-stack-gap);
    padding: var(--ox-form-stack-gap);
}

.ds-partner-hero[b-3m6ksfukca] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: var(--ox-form-stack-gap) calc(var(--ox-form-stack-gap) * 1.5);
    padding: calc(var(--ox-space) * 1.15) var(--ox-form-stack-gap);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background:
        linear-gradient(
            105deg,
            color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 6%, var(--ox-surface)) 0%,
            var(--ox-surface) 42%
        );
}

.ds-partner-hero__identity[b-3m6ksfukca] {
    min-width: 0;
    flex: 1 1 16rem;
}

.ds-partner-hero__title-row[b-3m6ksfukca] {
    display: flex;
    align-items: center;
    gap: var(--ox-space);
}

.ds-partner-hero__name[b-3m6ksfukca] {
    margin: 0;
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
}

.ds-partner-status[b-3m6ksfukca] {
    font-size: var(--ox-fs-caption);
    color: var(--ox-accent, var(--ox-primary));
}

.ds-partner-status.is-off[b-3m6ksfukca] {
    color: var(--ox-text-secondary);
}

.ds-partner-hero__meta[b-3m6ksfukca] {
    margin: var(--ox-space-xs) 0 0;
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
}

.ds-partner-hero__dot[b-3m6ksfukca] {
    display: inline-block;
    width: 0.25rem;
    height: 0.25rem;
    margin: 0 var(--ox-space-xs);
    border-radius: 50%;
    background: var(--ox-border);
    vertical-align: middle;
}

.ds-partner-hero__metrics[b-3m6ksfukca] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-self: flex-start;
    gap: var(--ox-space-xs);
    flex: 0 0 auto;
    margin-left: auto;
}

.ds-metric[b-3m6ksfukca] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 4.75rem;
    padding: var(--ox-space-xs) var(--ox-space);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius-sm);
    background: var(--ox-surface);
}

.ds-metric__n[b-3m6ksfukca] {
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
    line-height: 1.2;
    white-space: nowrap;
}

.ds-metric__l[b-3m6ksfukca] {
    margin-top: var(--ox-space-xs);
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
    line-height: 1.2;
    white-space: nowrap;
}

.ds-metric--todo[b-3m6ksfukca] {
    border-color: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 35%, var(--ox-border));
    background: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 9%, var(--ox-surface));
}

.ds-metric--todo .ds-metric__n[b-3m6ksfukca] {
    color: var(--ox-accent, var(--ox-primary));
}

.ds-partner-grid[b-3m6ksfukca] {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
    gap: var(--ox-form-stack-gap);
}

.ds-partner-card[b-3m6ksfukca] {
    padding: var(--ox-form-stack-gap);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    background: var(--ox-surface);
}

.ds-partner-card__title[b-3m6ksfukca] {
    margin: 0;
    font-size: var(--ox-fs-body);
    font-weight: var(--ox-fw-semibold);
}

.ds-partner-card__hint[b-3m6ksfukca] {
    margin: var(--ox-space-xs) 0 0;
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
}

.ds-trend[b-3m6ksfukca] {
    display: flex;
    align-items: flex-end;
    gap: var(--ox-space-xs);
    margin-top: var(--ox-space);
    min-height: 9rem;
}

.ds-trend__col[b-3m6ksfukca] {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
}

.ds-trend__track[b-3m6ksfukca] {
    display: flex;
    align-items: flex-end;
    width: 100%;
    height: 6.5rem;
}

.ds-trend__bar[b-3m6ksfukca] {
    width: 100%;
    border-radius: var(--ox-radius-sm) var(--ox-radius-sm) 0 0;
    background: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 72%, var(--ox-surface));
}

.ds-trend__amt[b-3m6ksfukca],
.ds-trend__lab[b-3m6ksfukca] {
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
    font-variant-numeric: tabular-nums;
}

.ds-trend__amt[b-3m6ksfukca] {
    margin-top: var(--ox-space-xs);
}

.ds-share[b-3m6ksfukca] {
    margin-top: var(--ox-space);
}

.ds-share__row[b-3m6ksfukca] {
    display: flex;
    justify-content: space-between;
    gap: var(--ox-space);
    font-size: var(--ox-fs-caption);
}

.ds-share__track[b-3m6ksfukca] {
    height: 0.4rem;
    margin-top: var(--ox-space-xs);
    border-radius: var(--ox-radius-sm);
    background: color-mix(in srgb, var(--ox-border) 70%, var(--ox-surface));
    overflow: hidden;
}

.ds-share__fill[b-3m6ksfukca] {
    height: 100%;
    background: var(--ox-accent, var(--ox-primary));
}

.ds-share__fill--company[b-3m6ksfukca] {
    background: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 55%, var(--ox-text-secondary));
}

.ds-stages[b-3m6ksfukca] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: var(--ox-space-xs);
    margin-top: var(--ox-space);
}

.ds-stage[b-3m6ksfukca] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: var(--ox-space-xs);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius-sm);
}

.ds-stage--hot[b-3m6ksfukca] {
    border-color: color-mix(in srgb, var(--ox-accent, var(--ox-primary)) 35%, var(--ox-border));
}

.ds-stage__n[b-3m6ksfukca] {
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
}

.ds-stage__l[b-3m6ksfukca],
.ds-stage__a[b-3m6ksfukca] {
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
}

.ds-comm[b-3m6ksfukca] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ox-space);
    margin-top: var(--ox-space);
}

.ds-comm__item[b-3m6ksfukca] {
    display: flex;
    flex-direction: column;
    min-width: 8rem;
}

.ds-comm__l[b-3m6ksfukca],
.ds-comm__s[b-3m6ksfukca] {
    font-size: var(--ox-fs-caption);
    color: var(--ox-text-secondary);
}

.ds-comm__n[b-3m6ksfukca] {
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
}

@media (max-width: 900px) {
    .ds-partner-grid[b-3m6ksfukca],
    .ds-stages[b-3m6ksfukca] {
        grid-template-columns: 1fr;
    }

    .ds-stages[b-3m6ksfukca] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ds-partner-hero[b-3m6ksfukca] {
        flex-direction: column;
        align-items: stretch;
    }

    .ds-partner-hero__metrics[b-3m6ksfukca] {
        justify-content: flex-start;
        margin-left: 0;
    }
}
/* /Components/Pages/Distribution/DsProfitSliceTable.razor.rz.scp.css */
.ds-profit-num[b-rkdtxijcdo] {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.ds-profit-neg[b-rkdtxijcdo] {
    color: var(--ox-text-danger);
}
/* /Components/Pages/Distribution/DsReports.razor.rz.scp.css */
.ds-report-page[b-wwreh6cwh4] {
    border: none !important;
    border-radius: 0;
    box-shadow: none !important;
    background: color-mix(in srgb, var(--ox-border) 46%, var(--ox-surface));
}

.ds-workbench[b-wwreh6cwh4] {
    --ds-card-px: 0.625rem;
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
    overflow: auto;
    padding: 0.75rem;
    box-sizing: border-box;
    background: transparent;
}

.ds-workbench-grid[b-wwreh6cwh4] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
    align-items: stretch;
}

.ds-workbench-slot[b-wwreh6cwh4] {
    min-width: 0;
    display: flex;
}

.ds-workbench-slot.is-wide[b-wwreh6cwh4] {
    grid-column: 1 / -1;
}

.ds-workbench .manage-panel[b-wwreh6cwh4] {
    flex: 1 1 auto;
    width: 100%;
    overflow: hidden;
    border: 1px solid color-mix(in srgb, var(--ox-border) 70%, var(--ox-text-secondary));
    border-radius: 6px;
    background: var(--ox-surface);
    box-shadow: 0 1px 2px color-mix(in srgb, var(--ox-text-primary) 6%, transparent);
}

.ds-workbench .manage-panel-header[b-wwreh6cwh4] {
    height: 2rem;
    min-height: 2rem;
    padding: 0 var(--ds-card-px) !important;
    background: var(--ox-footer-bg) !important;
    border-bottom-color: color-mix(in srgb, var(--ox-border) 80%, var(--ox-text-secondary)) !important;
}

.ds-workbench .ox-drf__trigger[b-wwreh6cwh4] {
    height: 1.5rem;
    min-height: 1.5rem;
    padding: 0 0.45rem;
}

.ds-home-lead[b-wwreh6cwh4],
.ds-home-note[b-wwreh6cwh4] {
    margin: 0;
    padding: var(--ox-space) var(--ds-card-px, 0.625rem) 0;
}

.ds-home-note[b-wwreh6cwh4] {
    padding-bottom: var(--ox-space);
}

.ds-home-kpi__hint[b-wwreh6cwh4] {
    margin-top: var(--ox-space-xs);
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}

.ds-lines[b-wwreh6cwh4] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 0 var(--ds-card-px, 0.625rem) var(--ox-space);
}

.ds-line[b-wwreh6cwh4] {
    display: grid;
    grid-template-columns: 3.25rem minmax(4.5rem, auto) minmax(0, 1fr);
    gap: 0.5rem;
    align-items: baseline;
    font-size: var(--ox-fs-secondary);
}

.ds-line__amt[b-wwreh6cwh4],
.ds-line__rate[b-wwreh6cwh4] {
    font-variant-numeric: tabular-nums;
}

.ds-line__amt[b-wwreh6cwh4] {
    text-align: right;
}

.ds-line__rate[b-wwreh6cwh4] {
    color: var(--ox-text-secondary);
    text-align: right;
}

.ds-home-kpis[b-wwreh6cwh4] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: var(--ox-space) 0;
}

.ds-home-kpis.is-pair[b-wwreh6cwh4] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ds-home-kpi[b-wwreh6cwh4] {
    min-width: 0;
    padding: var(--ox-space) var(--ds-card-px, 0.625rem);
    border-left: 1px solid var(--ox-border);
}

.ds-home-kpi:first-child[b-wwreh6cwh4],
.ds-home-kpis.is-pair .ds-home-kpi:nth-child(odd)[b-wwreh6cwh4] {
    border-left: 0;
}

.ds-home-kpis.is-pair .ds-home-kpi:nth-child(n + 3)[b-wwreh6cwh4] {
    border-top: 1px solid var(--ox-border);
}

.ds-home-kpi__label[b-wwreh6cwh4] {
    font-size: var(--ox-fs-title);
    color: var(--ox-text-secondary);
}

.ds-home-kpi__value[b-wwreh6cwh4] {
    margin-top: var(--ox-space-xs);
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
    color: var(--ox-text-primary);
}

.ds-profit-filter[b-wwreh6cwh4] {
    width: 11rem;
}

.ds-profit-num[b-wwreh6cwh4] {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.ds-profit-neg[b-wwreh6cwh4] {
    color: var(--ox-text-danger);
}

.ds-chart-legend[b-wwreh6cwh4] {
    display: flex;
    gap: var(--ox-space);
    padding: 0 var(--ds-card-px, 0.625rem) var(--ox-space);
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}

.ds-swatch[b-wwreh6cwh4],
.ds-swatch--profit[b-wwreh6cwh4] {
    display: inline-block;
    width: 0.625rem;
    height: 0.625rem;
    margin-right: var(--ox-space-xs);
    background: var(--ox-accent);
    vertical-align: -1px;
}

.ds-swatch--profit[b-wwreh6cwh4] {
    background: color-mix(in oklab, var(--ox-accent) 45%, var(--ox-surface));
}

.ds-swatch--cost[b-wwreh6cwh4] {
    background: color-mix(in oklab, var(--ox-text-secondary) 55%, var(--ox-border));
}

.ds-swatch--fee[b-wwreh6cwh4] {
    background: var(--ox-text-secondary);
}

.ds-swatch--signed[b-wwreh6cwh4] {
    background: color-mix(in oklab, var(--ox-accent) 22%, var(--ox-text-secondary));
}

.ds-mix[b-wwreh6cwh4] {
    display: flex;
    height: 0.5rem;
    margin: 0 var(--ds-card-px, 0.625rem) var(--ox-space);
    background: var(--ox-border);
}

.ds-mix__seg[b-wwreh6cwh4] {
    display: block;
    height: 100%;
    background: var(--ox-accent);
}

.ds-mix__seg--cost[b-wwreh6cwh4] {
    background: color-mix(in oklab, var(--ox-text-secondary) 55%, var(--ox-border));
}

.ds-mix__seg--fee[b-wwreh6cwh4] {
    background: var(--ox-text-secondary);
}

.ds-mix__seg--profit[b-wwreh6cwh4] {
    background: color-mix(in oklab, var(--ox-accent) 45%, var(--ox-surface));
}

.ds-mix__seg--signed[b-wwreh6cwh4] {
    background: color-mix(in oklab, var(--ox-accent) 22%, var(--ox-text-secondary));
}

.ds-chart[b-wwreh6cwh4] {
    display: flex;
    align-items: flex-end;
    gap: var(--ox-space);
    height: 8rem;
    padding: 0 var(--ds-card-px, 0.625rem) var(--ox-space);
}

.ds-chart__col[b-wwreh6cwh4] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    height: 100%;
}

.ds-chart__bars[b-wwreh6cwh4] {
    flex: 1;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 2px;
    width: 100%;
}

.ds-chart__bar[b-wwreh6cwh4] {
    width: 38%;
    background: var(--ox-accent);
}

.ds-chart__bar--profit[b-wwreh6cwh4] {
    background: color-mix(in oklab, var(--ox-accent) 45%, var(--ox-surface));
}

.ds-chart__bar--cost[b-wwreh6cwh4] {
    background: color-mix(in oklab, var(--ox-text-secondary) 55%, var(--ox-border));
}

.ds-chart__bar--neg[b-wwreh6cwh4] {
    background: var(--ox-text-danger);
}

.ds-chart__bar--fee[b-wwreh6cwh4] {
    background: var(--ox-text-secondary);
}

.ds-chart__bar.ds-profit-neg[b-wwreh6cwh4] {
    background: var(--ox-text-danger);
}

.ds-chart__label[b-wwreh6cwh4] {
    margin-top: var(--ox-space-xs);
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}

.ds-hbars[b-wwreh6cwh4] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-space-xs);
    padding: 0 var(--ds-card-px, 0.625rem) var(--ox-space);
}

.ds-hbar[b-wwreh6cwh4] {
    display: grid;
    grid-template-columns: 7rem minmax(0, 1fr) 6.5rem;
    gap: var(--ox-space);
    align-items: center;
    cursor: pointer;
}

.ds-hbar__name[b-wwreh6cwh4],
.ds-hbar__val[b-wwreh6cwh4] {
    overflow: hidden;
    font-size: var(--ox-fs-secondary);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ds-hbar__val[b-wwreh6cwh4] {
    font-variant-numeric: tabular-nums;
    text-align: right;
}

.ds-hbar__track[b-wwreh6cwh4] {
    height: 0.5rem;
    background: var(--ox-border);
}

.ds-hbar__fill[b-wwreh6cwh4] {
    display: block;
    height: 100%;
    background: var(--ox-accent);
}

.ds-hbar__fill.ds-profit-neg[b-wwreh6cwh4] {
    background: var(--ox-text-danger);
}

.ds-profit-detail[b-wwreh6cwh4] {
    padding: var(--ox-space);
}

@media (max-width: 960px) {
    .ds-workbench-grid[b-wwreh6cwh4] {
        grid-template-columns: minmax(0, 1fr);
    }

    .ds-workbench-slot.is-wide[b-wwreh6cwh4] {
        grid-column: auto;
    }
}

@media (max-width: 720px) {
    .ds-home-kpis[b-wwreh6cwh4] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ds-home-kpi:nth-child(odd)[b-wwreh6cwh4] {
        border-left: 0;
    }
}
/* /Components/Pages/Distribution/DsSkus.razor.rz.scp.css */
.ds-sku-filter-search[b-a0ysdv2ruj] {
    flex: 2 1 16rem;
}

[b-a0ysdv2ruj] .ds-sku-table {
    table-layout: fixed;
    width: 100%;
}

[b-a0ysdv2ruj] .ds-sku-col-material { width: 24%; }
[b-a0ysdv2ruj] .ds-sku-col-color { width: 16%; }
[b-a0ysdv2ruj] .ds-sku-col-spec { width: 16%; }
[b-a0ysdv2ruj] .ds-sku-col-cat { width: 10%; }
[b-a0ysdv2ruj] .ds-sku-col-unit { width: 6%; }
[b-a0ysdv2ruj] .ds-sku-col-price { width: 22%; }
[b-a0ysdv2ruj] .ds-sku-col-status { width: 6%; }

[b-a0ysdv2ruj] .ds-sku-table td {
    white-space: normal;
    overflow-wrap: anywhere;
}

[b-a0ysdv2ruj] .ds-sku-col-price {
    text-align: right;
    white-space: nowrap;
}

.ds-sku-import-banner[b-a0ysdv2ruj] {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 8px 12px 0;
    padding: 10px 12px;
    border-radius: 8px;
    background: color-mix(in srgb, var(--ox-color-success, #2f9e44) 12%, transparent);
    color: var(--ox-color-text, inherit);
    font-size: 0.875rem;
    line-height: 1.45;
}

.ds-sku-import-banner > span:first-child[b-a0ysdv2ruj] {
    flex: 0 0 auto;
    margin-top: 1px;
    color: var(--ox-color-success, #2f9e44);
}

.ds-sku-import__lead[b-a0ysdv2ruj] {
    margin: 0;
    font-size: 0.875rem;
    line-height: 1.5;
    color: var(--ox-color-text-muted, #667085);
}

.ds-sku-import__tips[b-a0ysdv2ruj] {
    margin: 0;
    padding-left: 1.1rem;
    font-size: 0.8125rem;
    line-height: 1.55;
    color: var(--ox-color-text-muted, #667085);
}

.ds-sku-drop[b-a0ysdv2ruj] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 140px;
    padding: 20px 16px;
    border: 1.5px dashed color-mix(in srgb, var(--ox-color-border, #d0d5dd) 90%, #98a2b3);
    border-radius: 12px;
    background: color-mix(in srgb, var(--ox-color-surface-2, #f8fafc) 80%, transparent);
    text-align: center;
    cursor: pointer;
    overflow: hidden;
    transition: border-color 0.15s ease, background 0.15s ease;
}

.ds-sku-drop:hover:not(.is-busy)[b-a0ysdv2ruj] {
    border-color: var(--ox-color-primary, #2563eb);
    background: color-mix(in srgb, var(--ox-color-primary, #2563eb) 6%, transparent);
}

.ds-sku-drop--has-file[b-a0ysdv2ruj] {
    min-height: 96px;
}

.ds-sku-file__meta--center[b-a0ysdv2ruj] {
    width: 100%;
    max-width: 100%;
    padding: 0 8px;
    text-align: center;
}

.ds-sku-file__meta--center .ds-sku-file__name[b-a0ysdv2ruj] {
    white-space: normal;
    word-break: break-all;
}

.ds-sku-clear-link[b-a0ysdv2ruj] {
    align-self: flex-start;
    border: 0;
    background: transparent;
    padding: 0;
    color: var(--ox-color-text-muted, #667085);
    font-size: 0.8125rem;
    text-decoration: underline;
    cursor: pointer;
}

.ds-sku-clear-link:hover[b-a0ysdv2ruj] {
    color: var(--ox-color-danger, #e03131);
}

.ds-sku-drop.is-busy[b-a0ysdv2ruj] {
    opacity: 0.6;
    pointer-events: none;
}

/* InputFile 是子组件，需 ::deep，否则原生「选择文件 / 未选择文件」会露出来 */
[b-a0ysdv2ruj] .ds-sku-drop__input {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    opacity: 0;
    cursor: pointer;
    font-size: 0;
    z-index: 2;
}

.ds-sku-drop__icon[b-a0ysdv2ruj] {
    font-size: 1.75rem;
    color: var(--ox-color-primary, #2563eb);
}

.ds-sku-drop__title[b-a0ysdv2ruj] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--ox-color-text, inherit);
}

.ds-sku-drop__sub[b-a0ysdv2ruj] {
    font-size: 0.75rem;
    color: var(--ox-color-text-muted, #667085);
}

.ds-sku-file[b-a0ysdv2ruj] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px;
    border-radius: 10px;
    border: 1px solid var(--ox-color-border, #e4e7ec);
    background: var(--ox-color-surface, #fff);
}

.ds-sku-file__icon[b-a0ysdv2ruj] {
    flex: 0 0 auto;
    font-size: 1.5rem;
    color: var(--ox-color-primary, #2563eb);
}

.ds-sku-file__meta[b-a0ysdv2ruj] {
    flex: 1 1 auto;
    min-width: 0;
}

.ds-sku-file__name[b-a0ysdv2ruj] {
    font-size: 0.875rem;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ds-sku-file__size[b-a0ysdv2ruj] {
    margin-top: 2px;
    font-size: 0.75rem;
    color: var(--ox-color-text-muted, #667085);
}

.ds-sku-file__clear[b-a0ysdv2ruj] {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--ox-color-text-muted, #667085);
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
}

.ds-sku-file__clear:hover[b-a0ysdv2ruj] {
    background: color-mix(in srgb, var(--ox-color-danger, #e03131) 12%, transparent);
    color: var(--ox-color-danger, #e03131);
}

.ds-sku-import__progress[b-a0ysdv2ruj] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px;
    border-radius: 10px;
    background: color-mix(in srgb, var(--ox-color-primary, #2563eb) 8%, transparent);
}

.ds-sku-import__spinner[b-a0ysdv2ruj] {
    width: 18px;
    height: 18px;
    margin-top: 2px;
    border: 2px solid color-mix(in srgb, var(--ox-color-primary, #2563eb) 25%, transparent);
    border-top-color: var(--ox-color-primary, #2563eb);
    border-radius: 50%;
    animation: ds-sku-spin-b-a0ysdv2ruj 0.8s linear infinite;
}

.ds-sku-import__progress-title[b-a0ysdv2ruj] {
    font-size: 0.875rem;
    font-weight: 600;
}

.ds-sku-import__progress-sub[b-a0ysdv2ruj] {
    margin-top: 2px;
    font-size: 0.75rem;
    color: var(--ox-color-text-muted, #667085);
}

.ds-sku-import__error[b-a0ysdv2ruj] {
    margin: 0;
    padding: 10px 12px;
    border-radius: 8px;
    background: color-mix(in srgb, var(--ox-color-danger, #e03131) 10%, transparent);
    color: var(--ox-color-danger, #e03131);
    font-size: 0.8125rem;
    line-height: 1.45;
}

@keyframes ds-sku-spin-b-a0ysdv2ruj {
    to { transform: rotate(360deg); }
}
/* /Components/Pages/Distribution/DsWorkbenchBookPanel.razor.rz.scp.css */
.ds-home[b-8m03kx8zm6] {
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.ds-home-lead[b-8m03kx8zm6] {
    margin: 0;
    padding: var(--ox-space) var(--ds-card-px, 0.625rem) 0;
}

.ds-home-kpi__hint[b-8m03kx8zm6],
.ds-home-kpi__delta[b-8m03kx8zm6] {
    margin-top: var(--ox-space-xs);
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}

.ds-home-note[b-8m03kx8zm6] {
    margin: 0;
    padding: 0 var(--ds-card-px, 0.625rem) var(--ox-space);
}

.ds-home-kpis[b-8m03kx8zm6] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: var(--ox-space) 0;
}

.ds-home-kpi[b-8m03kx8zm6] {
    min-width: 0;
    padding: var(--ox-space) var(--ds-card-px, 0.625rem);
    border-left: 1px solid var(--ox-border);
}

.ds-home-kpi:first-child[b-8m03kx8zm6] {
    border-left: 0;
}

.ds-home-kpi__label[b-8m03kx8zm6] {
    font-size: var(--ox-fs-title);
    color: var(--ox-text-secondary);
}

.ds-home-kpi__value[b-8m03kx8zm6] {
    margin-top: var(--ox-space-xs);
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
    color: var(--ox-text-primary);
}

@media (max-width: 720px) {
    .ds-home-kpis[b-8m03kx8zm6] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ds-home-kpi:nth-child(odd)[b-8m03kx8zm6] {
        border-left: 0;
    }
}
/* /Components/Pages/Distribution/DsWorkbenchDealerStatsPanel.razor.rz.scp.css */
.ds-wstats-search-field[b-hbw31kvprv] {
    position: relative;
    width: 9rem;
    flex: 0 0 auto;
}

.ds-wstats-search-icon[b-hbw31kvprv] {
    position: absolute;
    left: 0.4rem;
    top: 50%;
    z-index: 1;
    transform: translateY(-50%);
    color: var(--ox-text-secondary);
    font-size: var(--ox-fs-secondary);
    line-height: 0;
    pointer-events: none;
}

[b-hbw31kvprv] .ds-wstats-search {
    width: 100%;
    height: 1.5rem;
    min-height: 1.5rem;
    padding: 0 0.45rem 0 1.45rem;
    font-size: var(--ox-fs-secondary) !important;
    line-height: 1.5rem;
}

.ds-wstats-summary[b-hbw31kvprv] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ox-space) var(--ox-form-stack-gap, 1rem);
    padding: var(--ox-space) var(--ds-card-px, 0.625rem);
    border-bottom: 1px solid var(--ox-border);
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}

.ds-wstats-summary strong[b-hbw31kvprv] {
    color: var(--ox-text-primary);
    font-weight: var(--ox-fw-semibold);
}

.ds-wstats-delta[b-hbw31kvprv] {
    font-variant-numeric: tabular-nums;
    font-size: var(--ox-fs-secondary);
    color: var(--ox-text-secondary);
}

.ds-wstats-delta.is-up[b-hbw31kvprv] {
    color: var(--ox-accent, var(--ox-primary));
}

.ds-wstats-delta.is-down[b-hbw31kvprv] {
    color: var(--ox-text-danger, var(--ox-text-secondary));
}

.ds-wstats-link[b-hbw31kvprv] {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.15rem;
    padding: 0;
    border: 0;
    background: none;
    font: inherit;
    text-align: left;
    cursor: pointer;
}
/* /Components/Pages/Distribution/DsWorkbenchTodoPanel.razor.rz.scp.css */
.ds-todo[b-d79qh6qwyj] {
    list-style: none;
    margin: 0;
    padding: var(--ox-space) 0;
}

.ds-todo__row[b-d79qh6qwyj] {
    appearance: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ox-space);
    width: 100%;
    margin: 0;
    padding: 0.4rem var(--ds-card-px, 0.625rem);
    border: 0;
    background: transparent;
    color: var(--ox-text-primary);
    font: inherit;
    font-size: var(--ox-fs-body);
    text-align: left;
    cursor: pointer;
    box-sizing: border-box;
}

.ds-todo__row:hover[b-d79qh6qwyj] {
    background: var(--ox-state-hover-bg);
}

.ds-todo__row.is-idle[b-d79qh6qwyj] {
    color: var(--ox-text-secondary);
}

.ds-todo__label[b-d79qh6qwyj] {
    min-width: 0;
}

.ds-todo__count[b-d79qh6qwyj] {
    flex: 0 0 auto;
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    font-variant-numeric: tabular-nums;
}
/* /Components/Pages/Login.razor.rz.scp.css */
/* 登录页：风光底 + 扁平紧凑面板（对齐管理端 ox 令牌，避免进系统后风格突变） */
/* 明暗跟随：底色/遮罩用本地变量，暗色分支见文件底部 html[data-ox-scheme-resolved="dark"] 覆盖 */
.login-page[b-jwe8tgwryn] {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background-color: var(--login-page-fallback, #2a4a6e);
    font-family: var(--ox-font-sans);
}

.login-page[b-jwe8tgwryn]::before {
    content: "";
    position: absolute;
    inset: -24px;
    z-index: 0;
    background-image: var(--login-bg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    filter: blur(18px) saturate(1.05);
    transform: scale(1.04);
    pointer-events: none;
}

.login-page[b-jwe8tgwryn]::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    /* 浅色：轻微白纱提亮底图；暗色由 --login-page-scrim 覆盖为深色压暗 */
    background: var(--login-page-scrim, rgba(248, 250, 252, 0.42));
    pointer-events: none;
}

/* 暗色分支：底色/遮罩跟随壳层底色（--shell-page-bg 随皮肤变化），底图压暗保持品牌一致性 */
html[data-ox-scheme-resolved="dark"] .login-page[b-jwe8tgwryn] {
    --login-page-fallback: var(--shell-page-bg, #09090b);
    --login-page-scrim: color-mix(in oklab, var(--shell-page-bg, #09090b) 66%, transparent);
}

.login-page > *[b-jwe8tgwryn] {
    position: relative;
    z-index: 1;
}

.login-shell[b-jwe8tgwryn] {
    width: 100%;
    max-width: 22rem;
}

.login-title[b-jwe8tgwryn] {
    margin: 0 0 var(--ox-form-stack-gap);
    text-align: center;
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    line-height: 1.25;
    color: var(--ox-text-primary);
}

/* 扁平面板：实底 + 单层边框，无大阴影/厚圆角 */
.login-panel[b-jwe8tgwryn] {
    box-sizing: border-box;
    padding: var(--ox-form-stack-gap);
    background: var(--ox-surface);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    box-shadow: none;
}

.login-error[b-jwe8tgwryn] {
    display: flex;
    align-items: flex-start;
    gap: var(--ox-space-xs);
    margin: 0 0 var(--ox-form-stack-gap);
    padding: 0.5rem 0.625rem;
    border-radius: var(--ox-radius);
    /* 报错框用 danger 令牌派生，浅色/暗色自动适配，不再硬编码浅粉 */
    border: 1px solid color-mix(in oklab, var(--ox-text-danger) 38%, var(--ox-border));
    background: color-mix(in oklab, var(--ox-text-danger) 9%, var(--ox-surface));
    color: var(--ox-text-danger);
}

.login-error__ico[b-jwe8tgwryn] {
    flex-shrink: 0;
    margin-top: 0.05rem;
    font-size: 1rem;
    color: var(--ox-text-danger);
}

.login-error__text[b-jwe8tgwryn] {
    margin: 0;
    font-size: var(--ox-fs-body);
    font-weight: var(--ox-fw-medium);
    line-height: 1.4;
}

/* 标签在上：紧凑字段，控件复用 ox-form-control 尺寸 */
.login-form[b-jwe8tgwryn] {
    display: flex;
    flex-direction: column;
    gap: var(--ox-form-stack-gap);
}

.login-field[b-jwe8tgwryn] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: var(--ox-space-xs);
    margin: 0;
}

.login-field__label[b-jwe8tgwryn] {
    font-size: var(--ox-fs-secondary);
    font-weight: var(--ox-fw-medium);
    line-height: 1.3;
    color: var(--ox-text-secondary);
}

.login-field__input.ox-form-control[b-jwe8tgwryn] {
    background-color: var(--ox-surface);
}

.login-field__input.ox-form-control:hover[b-jwe8tgwryn] {
    border-color: color-mix(in oklab, var(--ox-border) 55%, #71717a 45%);
}

.login-field__input.ox-form-control:focus[b-jwe8tgwryn],
.login-field__input.ox-form-control:focus-visible[b-jwe8tgwryn] {
    border-color: var(--ox-accent, #4d8fe8);
    /* 保留可见焦点环（与全局 ox-form-control 一致）：1px 描边，键盘/鼠标焦点都可见 */
    box-shadow: 0 0 0 1px var(--ox-focus-ring, rgba(59, 130, 246, 0.35));
    outline: none;
}

.login-field:focus-within .login-field__label[b-jwe8tgwryn] {
    color: var(--ox-text-body);
}

.login-field__input.ox-form-control:-webkit-autofill[b-jwe8tgwryn],
.login-field__input.ox-form-control:-webkit-autofill:hover[b-jwe8tgwryn],
.login-field__input.ox-form-control:-webkit-autofill:focus[b-jwe8tgwryn] {
    -webkit-text-fill-color: var(--ox-text-body);
    caret-color: var(--ox-text-body);
    transition: background-color 99999s ease-out;
    box-shadow: 0 0 0 1000px var(--ox-surface) inset;
}

.login-submit[b-jwe8tgwryn] {
    width: 100%;
    justify-content: center;
    margin-top: 0;
}

/* 品牌：透明底，保留 logo 原始比例 */
.login-brand[b-jwe8tgwryn] {
    display: flex;
    justify-content: center;
    margin: 0 auto var(--ox-space);
}

.login-logo-base[b-jwe8tgwryn] {
    display: block;
    width: 52px;
    height: 56px;
    object-fit: contain;
    object-position: center;
    background: transparent;
}

/* PWA 安装 */
.login-a2hs[b-jwe8tgwryn] {
    margin-top: var(--ox-form-stack-gap);
    padding-top: var(--ox-space);
    border-top: 1px solid var(--ox-border);
    text-align: center;
}

.login-a2hs__btn[b-jwe8tgwryn] {
    width: 100%;
    justify-content: center;
}

.login-a2hs__btn .ph[b-jwe8tgwryn] {
    font-size: 1rem;
    color: var(--ox-accent, #4d8fe8);
}

.login-a2hs__hint[b-jwe8tgwryn] {
    margin: var(--ox-space-xs) 0 0;
    font-size: var(--ox-fs-caption);
    font-weight: var(--ox-fw-regular);
    line-height: 1.4;
    color: var(--ox-text-secondary);
}
/* /Components/Pages/Manage.razor.rz.scp.css */
/* 组织与用户：顶栏合并 + 下方双栏（其余面板/按钮见全局 tailwind components） */

.manage-readonly-id[b-s57egrhtj6] {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: var(--ox-ui-fs-sm, 0.6875rem);
    color: var(--ox-muted, #6b7280);
    cursor: default;
}

.manage-middle.manage-split.dx-style[b-s57egrhtj6] {
    flex-direction: column;
    gap: 0;
    box-sizing: border-box;
    flex: 1 1 auto;
    align-self: stretch;
    width: 100%;
    min-height: 0;
    height: 100%;
    /* 左缘由 shell-left-splitter / rail 承担，勿再 border-left 叠双线 */
    border: 1px solid var(--ox-border, #d1d5db);
    border-left: none;
    /* 与 shell-middle 四边贴齐，勿底圆角（底圆角会在贴底时露空隙感） */
    border-radius: 0;
    background: #fff;
    /* 纵向可滚动且顶栏 sticky；勿用 overflow:hidden，否则标题条无法相对外层滚动区固定 */
    overflow-x: hidden;
    overflow-y: auto;
}

.manage-split-toolbar[b-s57egrhtj6] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-start;
    width: 100%;
}

.manage-split-toolbar-left[b-s57egrhtj6] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 0;
}

.manage-split-toolbar-right[b-s57egrhtj6] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-inline-start: auto;
    flex-shrink: 0;
}

.manage-split-body[b-s57egrhtj6] {
    display: flex;
    flex-direction: row;
    flex: 1 1 auto;
    align-self: stretch;
    width: 100%;
    min-height: 0;
    gap: 0;
}

.manage-middle.manage-split .manage-panel[b-s57egrhtj6] {
    border: none;
    border-radius: 0;
}

.manage-middle.manage-split .manage-split-pane-org[b-s57egrhtj6] {
    min-width: 0;
}

.manage-middle.manage-split .manage-split-pane-user[b-s57egrhtj6] {
    flex: 1 1 auto;
    min-width: 0;
}

/* .manage-splitter 见 tailwind.css：--ox-split-hit 布局宽、--ox-split-target-w 拖拽命中宽 */

.manage-user-toolbar[b-s57egrhtj6] {
    flex-shrink: 0;
    padding: 0.5rem var(--ox-panel-header-px, 0.75rem);
    border-bottom: 1px solid var(--ox-header-border, #e5e7eb);
    box-sizing: border-box;
    background: var(--ox-header-bg, #f9fafb);
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

.manage-user-toolbar .manage-user-role-filter[b-s57egrhtj6] {
    flex: 0 1 9.5rem;
    min-width: 7.5rem;
    max-width: 12rem;
    /* 工具条内筛选：略收紧箭头区，与搜索框视觉对齐 */
    --ox-select-pad-end: 1.75rem;
    --ox-select-chevron-inset: 0.45rem;
    --ox-select-chevron-size: 0.85rem;
}

.manage-user-toolbar .manage-user-role-filter[b-s57egrhtj6]  .ox-select__trigger {
    font-weight: var(--ox-fw-medium, 500);
}

.manage-user-toolbar .manage-user-search[b-s57egrhtj6] {
    flex: 1 1 160px;
    min-width: 0;
    box-sizing: border-box;
}

/* 用户编辑：顶部圆形头像（点击上传） */
.manage-user-avatar-hero[b-s57egrhtj6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--ox-space-xs, 0.25rem);
    padding: 0 0 var(--ox-space, 0.5rem);
    margin: 0;
}

.manage-user-avatar-ring[b-s57egrhtj6] {
    position: relative;
    display: block;
    width: 3.5rem; /* 56px，右栏表单内不宜过大 */
    height: 3.5rem;
    flex-shrink: 0;
    margin: 0 auto;
    border-radius: 50%;
    cursor: pointer;
    border: 1px solid var(--ox-border, #e3e3e3);
    background: var(--ox-state-hover-bg, #f4f4f5);
    overflow: hidden;
    box-sizing: border-box;
}

.manage-user-avatar-ring:hover[b-s57egrhtj6] {
    border-color: color-mix(in oklab, var(--ox-accent, #3b82f6) 45%, var(--ox-border, #e3e3e3));
}

.manage-user-avatar-input[b-s57egrhtj6],
.manage-user-avatar-hero[b-s57egrhtj6]  input[type="file"].manage-user-avatar-input,
.manage-user-avatar-ring[b-s57egrhtj6]  input[type="file"] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    z-index: 2;
    font-size: 0;
    color: transparent;
}

.manage-user-avatar-face[b-s57egrhtj6] {
    position: absolute;
    inset: 0;
    display: block;
    border-radius: 50%;
    overflow: hidden;
}

.manage-user-avatar-img[b-s57egrhtj6] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.manage-user-avatar-placeholder[b-s57egrhtj6] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: linear-gradient(145deg, #e5e7eb, #d1d5db);
    color: #9ca3af;
    font-size: 1.5rem;
    line-height: 1;
}

.manage-user-avatar-hint[b-s57egrhtj6] {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 2px 1px;
    font-size: 0.5625rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-align: center;
    color: #fff;
    background: rgba(15, 23, 42, 0.55);
    opacity: 0;
    transition: opacity 0.15s ease;
    pointer-events: none;
    z-index: 1;
}

.manage-user-avatar-ring:hover .manage-user-avatar-hint[b-s57egrhtj6] {
    opacity: 1;
}

.manage-user-avatar-error[b-s57egrhtj6] {
    font-size: var(--ox-fs-secondary, 0.75rem);
    color: #dc2626;
    text-align: center;
    max-width: 240px;
}

.manage-tree[b-s57egrhtj6] {
    flex: 1;
    overflow-y: auto;
}

/*
 * 组织树：选中/悬停与 shell-subnav-item 同套令牌（obs-active / accent-foreground）
 */
.manage-tree-org-win11[b-s57egrhtj6] {
    padding: 0.25rem var(--ox-space, 0.5rem) var(--ox-space, 0.5rem);
    font-size: var(--ox-ui-fs, 0.8125rem);
    line-height: 1.25;
    color: var(--obs-text, var(--ox-text-body));
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-item {
    margin: 0;
}

/* 与 shell-subnav-item 同套：行高 / 字重 / 悬停 / 选中色 */
.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-row {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0 0.5rem 0 0.25rem;
    margin: 0;
    cursor: pointer;
    border-radius: 4px;
    min-height: 2rem;
    box-sizing: border-box;
    border: none;
    background: transparent;
    color: var(--obs-text, var(--ox-text-body));
    font-size: var(--ox-ui-fs, 0.8125rem);
    font-weight: 500;
    line-height: 1.25;
    transition: background-color 0.12s ease, color 0.12s ease;
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-row:hover {
    background: var(--obs-hover, var(--ox-state-hover-bg));
    color: var(--obs-text, var(--ox-text-body));
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-row.active {
    background: var(--obs-active, var(--ox-state-selected-chrome-bg, var(--ox-state-selected-bg)));
    color: var(--ox-accent-foreground);
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-row.active:hover {
    background: var(--ox-state-selected-chrome-bg-hover, var(--ox-state-selected-bg-hover));
    color: var(--ox-accent-foreground-strong);
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-toggle {
    width: 1.25rem;
    height: 1.25rem;
    padding: 0;
    margin: 0;
    border: none;
    outline: none;
    box-shadow: none;
    appearance: none;
    -webkit-appearance: none;
    background: transparent;
    color: var(--obs-muted, var(--ox-text-secondary));
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: 4px;
    font-size: 0.625rem;
    line-height: 1;
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-toggle:hover,
.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-toggle:focus {
    color: var(--obs-text, var(--ox-text-body));
    background: var(--obs-hover, var(--ox-state-hover-bg));
    outline: none;
    box-shadow: none;
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-toggle:focus-visible {
    outline: 2px solid var(--ox-focus-ring);
    outline-offset: 1px;
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-row.active .org-tree-toggle {
    color: inherit;
    opacity: 0.75;
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-spacer {
    width: 1.25rem;
    flex-shrink: 0;
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-icon {
    width: 1.25rem;
    height: 1.25rem;
    font-size: 1rem;
    line-height: 1;
    color: inherit;
    flex-shrink: 0;
    opacity: 0.85;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-row:hover .org-tree-icon,
.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-row.active .org-tree-icon {
    opacity: 1;
    color: inherit;
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-label {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    color: inherit;
    letter-spacing: normal;
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-actions {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    margin-left: auto;
    gap: 0;
    opacity: 0.45;
    pointer-events: auto;
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-row:hover .org-tree-actions,
.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-row.active .org-tree-actions,
.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-actions:focus-within {
    opacity: 1;
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-add,
.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-edit {
    flex-shrink: 0;
    width: 1.5rem !important;
    height: 1.5rem !important;
    min-width: 1.5rem !important;
    min-height: 1.5rem !important;
    color: var(--ox-text-secondary, #71717a);
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-row.active .org-tree-add,
.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-row.active .org-tree-edit {
    color: inherit;
    opacity: 0.85;
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-add .ph,
.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-edit .ph {
    font-size: 0.875rem;
}

.manage-tree-org-win11[b-s57egrhtj6]  .org-tree-children {
    margin: 0;
}

/* .manage-list / .manage-list-item / .manage-item-* 已迁至 styles/tailwind.css @layer components，供所有管理页复用 */

.manage-item-org[b-s57egrhtj6] {
    margin-top: 2px;
    font-size: var(--ox-ui-fs-sm, 0.6875rem);
    color: #4b5563;
    line-height: 1.25;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.manage-detail-avatar-row[b-s57egrhtj6] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.manage-detail-avatar[b-s57egrhtj6] {
    width: 40px;
    height: 40px;
    border-radius: 6px;
    background: #e5e7eb;
    color: #374151;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
}

.manage-detail-name[b-s57egrhtj6] {
    font-weight: 600;
    font-size: 14px;
}

.manage-detail-sub[b-s57egrhtj6] {
    font-size: var(--ox-ui-fs, 0.75rem);
    color: #6b7280;
}

.manage-detail-dl[b-s57egrhtj6] {
    font-size: var(--ox-ui-fs, 0.75rem);
    margin: 0;
}

.manage-detail-dl dt[b-s57egrhtj6] {
    display: inline-block;
    width: 80px;
    color: #6b7280;
    margin: 0 0 4px 0;
}

.manage-detail-dl dd[b-s57egrhtj6] {
    display: inline;
    margin: 0 0 4px 0;
}

.manage-detail-dl dd[b-s57egrhtj6]::after {
    content: "";
    display: block;
}
/* /Components/Pages/Menus.razor.rz.scp.css */
/* 菜单列表：名称列按层级缩进（与角色授权菜单树同档 8px） */
.menus-table-name[b-xlfu3a1b49] {
    display: inline-block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding-inline-start: calc(var(--menu-depth, 0) * 8px);
    vertical-align: middle;
}
/* /Components/Pages/OnlineUsers.razor.rz.scp.css */
.online-users-page[b-qqo0alhrke] {
    min-height: 0;
}

.online-users-panel[b-qqo0alhrke] {
    flex: 1 1 auto;
    min-height: 0;
}

.online-users-lead[b-qqo0alhrke] {
    margin: 0;
    padding: 0.45rem 0.85rem 0.55rem;
    font-size: 0.75rem;
    line-height: 1.35;
    color: #64748b;
    border-bottom: 1px solid var(--ox-border, #e2e8f0);
}

.online-users-list[b-qqo0alhrke] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding: 0.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.online-users-card[b-qqo0alhrke] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.45rem 0.7rem;
    border: 1px solid var(--ox-border, #e2e8f0);
    border-radius: 0.5rem;
    background: #fff;
}

.online-users-card__main[b-qqo0alhrke] {
    min-width: 0;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.online-users-card__who[b-qqo0alhrke] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-width: 0;
}

.online-users-card__dot[b-qqo0alhrke] {
    width: 0.4rem;
    height: 0.4rem;
    border-radius: 999px;
    background: #cbd5e1;
    flex-shrink: 0;
}

.online-users-card__dot.is-on[b-qqo0alhrke] {
    background: #10b981;
    box-shadow: 0 0 0 2px rgba(16, 185, 129, 0.18);
}

.online-users-card__names[b-qqo0alhrke] {
    min-width: 0;
    flex: 1 1 auto;
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0.25rem 0.45rem;
}

.online-users-card__name[b-qqo0alhrke] {
    font-size: 0.8125rem;
    font-weight: 650;
    color: #0f172a;
    line-height: 1.2;
}

.online-users-card__user[b-qqo0alhrke] {
    margin-top: 0;
    font-size: 0.6875rem;
    color: #64748b;
    line-height: 1.2;
}

.online-users-card__badge[b-qqo0alhrke] {
    flex-shrink: 0;
    padding: 0.05rem 0.4rem;
    border-radius: 999px;
    font-size: 0.625rem;
    font-weight: 650;
    line-height: 1.35;
    color: #64748b;
    background: #f1f5f9;
}

.online-users-card__badge.is-on[b-qqo0alhrke] {
    color: #047857;
    background: #ecfdf5;
}

.online-users-card__meta[b-qqo0alhrke] {
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(6.5rem, 1fr));
    gap: 0.15rem 0.65rem;
}

.online-users-card__meta > div[b-qqo0alhrke] {
    min-width: 0;
    display: flex;
    align-items: baseline;
    gap: 0.3rem;
}

.online-users-card__meta dt[b-qqo0alhrke] {
    margin: 0;
    font-size: 0.625rem;
    color: #94a3b8;
    line-height: 1.2;
    flex-shrink: 0;
}

.online-users-card__meta dt[b-qqo0alhrke]::after {
    content: "";
}

.online-users-card__meta dd[b-qqo0alhrke] {
    margin: 0;
    font-size: 0.75rem;
    color: #334155;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    min-width: 0;
}

.online-users-card__key[b-qqo0alhrke] {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.6875rem;
    letter-spacing: 0.01em;
}

.online-users-card__actions[b-qqo0alhrke] {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.25rem;
    min-width: 5.5rem;
}

.online-users-card__actions .menu-btn[b-qqo0alhrke] {
    min-height: 1.6rem;
    padding: 0.15rem 0.5rem;
    font-size: 0.75rem;
}

@media (max-width: 720px) {
    .online-users-card[b-qqo0alhrke] {
        flex-direction: column;
        align-items: stretch;
    }

    .online-users-card__actions[b-qqo0alhrke] {
        flex-direction: row;
        min-width: 0;
    }

    .online-users-card__actions .menu-btn[b-qqo0alhrke] {
        flex: 1 1 auto;
    }
}
/* /Components/Pages/PersonnelManage.razor.rz.scp.css */
/* 列表上方：关键词搜索 */
.personnel-list-toolbar[b-nmk2k8jhdq] {
    flex-shrink: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ox-space, 0.5rem);
    padding: var(--ox-space, 0.5rem) var(--ox-panel-header-px, 0.5rem);
    border-bottom: 1px solid var(--ox-border);
    box-sizing: border-box;
    background: transparent;
}

.personnel-list-toolbar__search[b-nmk2k8jhdq] {
    flex: 1 1 180px;
    min-width: 0;
    max-width: 320px;
    box-sizing: border-box;
}

/* 人员档案右侧：扁平编辑区（色随主题，勿写死白底） */
.personnel-editor[b-nmk2k8jhdq] {
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius, 4px);
    background: var(--ox-surface);
    box-shadow: none;
    overflow: hidden;
    box-sizing: border-box;
}

.personnel-editor .ox-tab-bar--underline[b-nmk2k8jhdq] {
    margin: 0;
    padding: 4px var(--ox-space, 0.5rem) 0;
    border-bottom: 1px solid var(--ox-border);
    background: transparent;
    gap: 4px 8px;
}

.personnel-editor .ox-tab-bar--underline .ox-tab[b-nmk2k8jhdq] {
    padding-top: 6px;
    padding-bottom: 6px;
}

.personnel-editor .ox-tab-panel.ox-stack-panel[b-nmk2k8jhdq] {
    margin: 0;
    border: none;
    border-radius: 0;
    box-shadow: none;
    background: var(--ox-surface);
    padding: var(--ox-form-stack-gap, 1rem) var(--ox-space, 0.5rem);
}

.personnel-editor .ox-stack-toolbar[b-nmk2k8jhdq] {
    margin-bottom: var(--ox-space, 0.5rem);
    padding-bottom: var(--ox-space, 0.5rem);
    border-bottom: 1px solid var(--ox-border);
}

.personnel-editor .ox-stack-empty[b-nmk2k8jhdq] {
    background: var(--ox-state-hover-bg);
    border-color: var(--ox-border);
}

.personnel-editor .ox-stack-item[b-nmk2k8jhdq] {
    border-color: var(--ox-border);
    background: var(--ox-surface);
    box-shadow: none;
}

.personnel-editor .ox-stack-item__head[b-nmk2k8jhdq] {
    background: var(--ox-footer-bg, var(--ox-state-hover-bg));
}
/* /Components/Pages/Roles.razor.rz.scp.css */
/* 角色页：菜单操作权列表布局由 ox-ui-system / tailwind 统一；此处仅作页内微调 */
[b-fines5k2xr] .role-menu-mask-list {
    max-height: min(52vh, 28rem);
    overflow: auto;
}

[b-fines5k2xr] .role-menu-mask-ops {
    gap: 0.25rem 0.75rem;
}
/* /Components/Pages/Settings.razor.rz.scp.css */
.ox-settings-body[b-qsb6jumvqu] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding: var(--ox-space, 0.5rem) var(--ox-panel-header-px, 0.5rem);
    box-sizing: border-box;
}

.ox-settings-body > .ox-tab-bar[b-qsb6jumvqu] {
    margin-bottom: var(--ox-form-stack-gap, 1rem);
}

.ox-settings-panel[b-qsb6jumvqu] {
    min-width: 0;
}

.ox-settings-form[b-qsb6jumvqu] {
    max-width: 28rem;
    width: 100%;
}

.ox-settings-actions[b-qsb6jumvqu] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: var(--ox-space);
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    box-shadow: none;
}
/* /Components/Pages/Setup.razor.rz.scp.css */
/* 复用登录页视觉，安装向导面板更宽 */
.login-page[b-0l9p8mra51] {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background-color: var(--login-page-fallback, #2a4a6e);
    font-family: var(--ox-font-sans);
}

.login-page[b-0l9p8mra51]::before {
    content: "";
    position: absolute;
    inset: -24px;
    z-index: 0;
    background-image: var(--login-bg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    filter: blur(18px) saturate(1.05);
    transform: scale(1.04);
    pointer-events: none;
}

.login-page[b-0l9p8mra51]::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    background: var(--login-page-scrim, rgba(248, 250, 252, 0.42));
    pointer-events: none;
}

html[data-ox-scheme-resolved="dark"] .login-page[b-0l9p8mra51] {
    --login-page-fallback: var(--shell-page-bg, #09090b);
    --login-page-scrim: color-mix(in oklab, var(--shell-page-bg, #09090b) 66%, transparent);
}

.login-page > *[b-0l9p8mra51] {
    position: relative;
    z-index: 1;
}

.login-shell[b-0l9p8mra51] {
    width: 100%;
    max-width: 42rem;
}

.login-title[b-0l9p8mra51] {
    margin: 0 0 var(--ox-form-stack-gap);
    text-align: center;
    font-size: var(--ox-fs-title);
    font-weight: var(--ox-fw-semibold);
    line-height: 1.25;
    color: var(--ox-text-primary);
}

.login-panel[b-0l9p8mra51] {
    box-sizing: border-box;
    padding: var(--ox-form-stack-gap);
    background: var(--ox-surface);
    border: 1px solid var(--ox-border);
    border-radius: var(--ox-radius);
    box-shadow: none;
}

.login-error[b-0l9p8mra51] {
    display: flex;
    align-items: flex-start;
    gap: var(--ox-space-xs);
    margin: 0 0 var(--ox-form-stack-gap);
    padding: 0.5rem 0.625rem;
    border-radius: var(--ox-radius);
    border: 1px solid color-mix(in oklab, var(--ox-text-danger) 38%, var(--ox-border));
    background: color-mix(in oklab, var(--ox-text-danger) 9%, var(--ox-surface));
    color: var(--ox-text-danger);
}

.login-error__text[b-0l9p8mra51] {
    margin: 0;
    font-size: var(--ox-fs-body);
    font-weight: var(--ox-fw-medium);
    line-height: 1.4;
}

.login-brand[b-0l9p8mra51] {
    display: flex;
    justify-content: center;
    margin: 0 auto var(--ox-space);
}

.login-logo-base[b-0l9p8mra51] {
    display: block;
    width: 52px;
    height: 56px;
    object-fit: contain;
    object-position: center;
    background: transparent;
}
/* /Components/Pages/VisionJobs.razor.rz.scp.css */
/* 进度条走页面 CSS：日常 dotnet build 不会重编 Tailwind/app.css */
.ox-job-progress[b-iirudq2on8] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    min-width: 9rem;
}

.ox-job-progress__track[b-iirudq2on8] {
    display: block;
    width: 100%;
    height: 8px;
    border-radius: 4px;
    background: color-mix(in oklab, var(--ox-accent) 18%, var(--ox-border, #e4e4e7));
    overflow: hidden;
}

.ox-job-progress__bar[b-iirudq2on8] {
    display: block;
    height: 8px;
    border-radius: 4px;
    background: var(--ox-accent, #3b82f6);
    width: 0;
}

.ox-job-progress.is-done .ox-job-progress__bar[b-iirudq2on8] {
    background: var(--ox-status-on, #16a34a);
}

.ox-job-progress.is-failed .ox-job-progress__bar[b-iirudq2on8] {
    background: var(--ox-text-danger, #b91c1c);
}

.ox-job-progress.is-wait .ox-job-progress__bar[b-iirudq2on8] {
    animation: ox-job-progress-wait-b-iirudq2on8 1.1s ease-in-out infinite;
}

.ox-job-progress__text[b-iirudq2on8] {
    font-size: var(--ox-fs-caption, 0.6875rem);
    color: var(--ox-text-secondary, #71717a);
    line-height: 1.2;
    white-space: nowrap;
}

@keyframes ox-job-progress-wait-b-iirudq2on8 {
    0% { transform: translateX(-110%); }
    100% { transform: translateX(320%); }
}
