/* /Components/Account/Pages/Login.razor.rz.scp.css */
/* Central glass login — navy scene + floating panel (BOMSync cool brand) */
/* Full-viewport overlay so login is not squeezed into the main layout content column */
.bomsync-login-page[b-i1yh3qb9it] {
    position: fixed;
    inset: 0;
    z-index: 1200;
    isolation: isolate;
    margin: 0;
    padding: clamp(1.25rem, 4vw, 2.5rem) 1rem;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: auto;
    background:
        radial-gradient(ellipse 120% 80% at 50% -20%, rgba(100, 180, 255, 0.22), transparent 55%),
        radial-gradient(ellipse 90% 60% at 100% 50%, rgba(56, 139, 253, 0.14), transparent 45%),
        radial-gradient(ellipse 70% 50% at 0% 80%, rgba(30, 100, 180, 0.18), transparent 50%),
        linear-gradient(165deg, #0a1528 0%, #102a4a 42%, #0d2138 100%);
}

.bomsync-login-bg-decor[b-i1yh3qb9it] {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

.bomsync-login-orb[b-i1yh3qb9it] {
    position: absolute;
    border-radius: 50%;
    filter: blur(36px);
    opacity: 0.45;
}

.bomsync-login-orb--1[b-i1yh3qb9it] {
    width: min(420px, 55vw);
    height: min(420px, 55vw);
    background: color-mix(in srgb, var(--brand-blue, #2563eb) 55%, transparent);
    top: -8%;
    right: -6%;
}

.bomsync-login-orb--2[b-i1yh3qb9it] {
    width: min(320px, 45vw);
    height: min(320px, 45vw);
    background: rgba(56, 189, 248, 0.35);
    bottom: 5%;
    left: -5%;
}

.bomsync-login-orb--3[b-i1yh3qb9it] {
    width: min(200px, 30vw);
    height: min(200px, 30vw);
    background: rgba(129, 140, 248, 0.3);
    top: 42%;
    left: 35%;
}

.bomsync-login-center[b-i1yh3qb9it] {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: min(640px, 100vw - 2rem);
    margin-inline: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.bomsync-login-campaign[b-i1yh3qb9it] {
    width: 100%;
    max-width: 400px;
    padding: 0.5rem 0.85rem;
    border-radius: 10px;
    font-size: 0.8125rem;
    text-align: center;
    color: rgba(255, 255, 255, 0.92);
    background: rgba(255, 255, 255, 0.12);
    border: 1px solid rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

/* Glass panel */
.bomsync-login-glass[b-i1yh3qb9it] {
    width: 100%;
    max-width: min(640px, 100vw - 2rem);
    padding: 1px;
    border-radius: 18px;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.38), rgba(255, 255, 255, 0.06));
    box-shadow:
        0 4px 24px rgba(0, 0, 0, 0.18),
        0 1px 0 rgba(255, 255, 255, 0.22) inset,
        0 -1px 0 rgba(0, 0, 0, 0.12) inset;
}

.bomsync-login-glass-inner[b-i1yh3qb9it] {
    border-radius: 17px;
    padding: clamp(1.5rem, 4vw, 2rem) clamp(1.35rem, 4vw, 2rem) 1.75rem;
    background: rgba(255, 255, 255, 0.10);
    backdrop-filter: blur(20px) saturate(140%);
    -webkit-backdrop-filter: blur(20px) saturate(140%);
    border: 1px solid rgba(255, 255, 255, 0.22);
    box-sizing: border-box;
}

/* Headings use shared .bomsync-legal-gate-title / .subtitle / .lead (global + platform-legal-gate.css) */

.bomsync-login-glass-inner .form-label[b-i1yh3qb9it] {
    color: rgba(255, 255, 255, 0.9);
    font-weight: 600;
    font-size: 0.8125rem;
}

.bomsync-login-glass-inner a[b-i1yh3qb9it] {
    color: #93c5fd;
    text-decoration: none;
    font-weight: 500;
}

.bomsync-login-glass-inner a:hover[b-i1yh3qb9it] {
    color: #bfdbfe;
    text-decoration: underline;
}

.bomsync-login-glass-inner .checkbox .form-label[b-i1yh3qb9it],
.bomsync-login-glass-inner .checkbox label[b-i1yh3qb9it] {
    color: rgba(255, 255, 255, 0.85);
    font-weight: 500;
}

.bomsync-login-glass-inner .text-danger[b-i1yh3qb9it] {
    color: #fecaca !important;
}

.bomsync-login-glass-inner .alert-danger[b-i1yh3qb9it] {
    background: rgba(127, 29, 29, 0.4);
    border-color: rgba(252, 165, 165, 0.45);
    color: #fee2e2;
}

.bomsync-login-glass-inner .alert-success[b-i1yh3qb9it] {
    background: rgba(20, 83, 45, 0.4);
    border-color: rgba(134, 239, 172, 0.35);
    color: #dcfce7;
}

.bomsync-login-form[b-i1yh3qb9it] {
    width: 100%;
    max-width: 100%;
    margin-inline: auto;
}

/* Two-column sign-in + legal card (stacks on small screens) */
.bomsync-login-main-row[b-i1yh3qb9it] {
    margin-top: 0.25rem;
}

.bomsync-login-col-credentials[b-i1yh3qb9it] {
    min-width: 0;
}

.bomsync-login-col-legal[b-i1yh3qb9it] {
    min-width: 0;
}

.bomsync-login-legal-card[b-i1yh3qb9it] {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 1rem 1.1rem 1.15rem;
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.07);
    box-shadow:
        0 2px 14px rgba(0, 0, 0, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.bomsync-login-legal-card-title[b-i1yh3qb9it] {
    margin: 0 0 0.35rem 0;
    font-size: 0.9375rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: rgba(255, 255, 255, 0.95);
}

.bomsync-login-legal-lead[b-i1yh3qb9it] {
    margin: 0;
    font-size: 0.8125rem;
    line-height: 1.45;
    color: rgba(255, 255, 255, 0.68);
}

.bomsync-login-legal-links[b-i1yh3qb9it] {
    margin-bottom: 0.75rem;
    line-height: 1.45;
}

.bomsync-login-legal-links li[b-i1yh3qb9it] {
    margin-bottom: 0.2rem;
}

/* Allow long legal checkbox label to wrap (Syncfusion label is inline-flex by default) */
.bomsync-login-legal-card[b-i1yh3qb9it]  .e-checkbox-wrapper,
.bomsync-login-legal-card[b-i1yh3qb9it]  .e-checkbox-wrapper .e-label {
    align-items: flex-start;
    white-space: normal;
}

.bomsync-login-legal-card[b-i1yh3qb9it]  .e-checkbox-wrapper .e-label {
    line-height: 1.45;
    font-size: 0.8125rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.88);
}

.bomsync-login-legal-card[b-i1yh3qb9it]  .e-checkbox-wrapper .e-checkbox-icon {
    margin-top: 0.2rem;
}

/* Email + password fields: full width within column */
.bomsync-login-form[b-i1yh3qb9it]  .e-control.e-textbox,
.bomsync-login-form[b-i1yh3qb9it]  .e-input-group.e-control-wrapper {
    width: 100% !important;
    max-width: 100%;
}

/* Reveal sits inside the password field on the right (SfTextBox is block-level; flex row wrap broke layout) */
.bomsync-login-password-row[b-i1yh3qb9it] {
    position: relative;
    width: 100%;
    max-width: 100%;
}

.bomsync-login-password-row[b-i1yh3qb9it]  .e-control,
.bomsync-login-password-row[b-i1yh3qb9it]  .e-input-group.e-control-wrapper {
    width: 100% !important;
    max-width: 100%;
}

.bomsync-login-password-row[b-i1yh3qb9it]  input.e-input {
    padding-right: 48px !important;
    box-sizing: border-box;
}

.bomsync-login-reveal[b-i1yh3qb9it] {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 34px;
    padding: 0;
    margin: 0;
    border-radius: 8px;
    border: 1px solid rgba(15, 21, 32, 0.14);
    background: rgba(255, 255, 255, 0.75);
    color: var(--bomsync-text-secondary, #3a4560);
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.bomsync-login-reveal:hover[b-i1yh3qb9it] {
    background: rgba(255, 255, 255, 0.95);
    border-color: rgba(15, 21, 32, 0.22);
    color: var(--bomsync-text, #0f1520);
}

.bomsync-login-reveal:focus-visible[b-i1yh3qb9it] {
    outline: 2px solid #93c5fd;
    outline-offset: 2px;
}

.bomsync-login-reveal .e-icons[b-i1yh3qb9it] {
    font-size: 1.1rem;
}

.bomsync-login-input[b-i1yh3qb9it],
.bomsync-login-submit[b-i1yh3qb9it] {
    max-width: 100% !important;
}

.bomsync-login-actions[b-i1yh3qb9it] {
    margin-top: 1.25rem;
    padding-top: 0.25rem;
}

.bomsync-login-links[b-i1yh3qb9it] {
    margin-top: 1.15rem;
    text-align: center;
}

.bomsync-login-links p[b-i1yh3qb9it] {
    margin-bottom: 0.35rem;
}

.bomsync-login-links p:last-child[b-i1yh3qb9it] {
    margin-bottom: 0;
}

/* Footer below panel (on gradient); .bomsync-legal-gate-trust supplies base typography */
.bomsync-login-trust[b-i1yh3qb9it] {
    margin: 0;
    padding: 0 0.5rem;
    max-width: min(640px, 100vw - 2rem);
    font-size: 0.8125rem;
    line-height: 1.45;
    text-align: center;
    color: rgba(255, 255, 255, 0.55);
}

.bomsync-login-trust a[b-i1yh3qb9it] {
    color: #93c5fd;
}

.bomsync-login-trust a:hover[b-i1yh3qb9it] {
    color: #dbeafe;
}

@media (max-width: 991.98px) {
    .bomsync-login-col-legal[b-i1yh3qb9it] {
        margin-top: 0.25rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bomsync-login-orb[b-i1yh3qb9it] {
        animation: none !important;
    }

    .bomsync-login-glass[b-i1yh3qb9it],
    .bomsync-login-glass-inner[b-i1yh3qb9it] {
        transition: none !important;
    }
}
/* /Components/Account/Pages/Logout.razor.rz.scp.css */
.bomsync-logout-shell[b-yf2qzfwrpb] {
    min-height: min(50vh, calc(100dvh - 160px));
    margin: 0 -0.75rem;
    padding: 1.75rem 1rem 2rem;
    background: var(--bomsync-page-bg);
    display: flex;
    justify-content: center;
    align-items: flex-start;
    box-sizing: border-box;
}

.bomsync-logout-card[b-yf2qzfwrpb] {
    width: 100%;
    max-width: 480px;
    background: var(--bomsync-elevated-surface);
    border: 1px solid var(--bomsync-border) !important;
    border-radius: 12px;
    box-shadow: var(--bomsync-shadow-md);
    padding: 1.75rem 2rem !important;
    box-sizing: border-box;
}
/* /Components/Account/Pages/Manage/SetLanguage.razor.rz.scp.css */
/* ── Set Language page ─────────────────────────────────────────────────── */

.set-language-page[b-jo46r24znz] {
    max-width: 680px;
}

/* Responsive card grid: 2 columns on narrow, 3 on wider */
.language-card-grid[b-jo46r24znz] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1rem;
}

/* Individual language card */
.language-card[b-jo46r24znz] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem 1.1rem;
    border: 1.5px solid var(--bomsync-border-default, #d8dde8);
    border-radius: 0.625rem;
    background: var(--bomsync-elevated-surface, #ffffff);
    text-decoration: none;
    color: var(--bomsync-text-primary, #1b2a44);
    box-shadow: 0 1px 3px rgb(17 27 44 / 0.06);
    transition: border-color 0.15s, box-shadow 0.15s, transform 0.1s;
    position: relative;
    cursor: pointer;
}

.language-card:hover[b-jo46r24znz] {
    border-color: var(--brand-blue, #1e3a5f);
    box-shadow: 0 3px 10px rgb(17 27 44 / 0.13);
    transform: translateY(-2px);
    text-decoration: none;
    color: var(--bomsync-text-primary, #1b2a44);
}

/* Active (selected) state */
.language-card--active[b-jo46r24znz] {
    border-color: var(--brand-blue, #1e3a5f);
    background: color-mix(in srgb, var(--brand-blue, #1e3a5f) 6%, white);
    box-shadow: 0 2px 8px rgb(17 27 44 / 0.12);
}

.language-card--active:hover[b-jo46r24znz] {
    transform: none;
}

/* Flag emoji */
.language-card__flag[b-jo46r24znz] {
    font-size: 2rem;
    line-height: 1;
    flex-shrink: 0;
}

/* Name block */
.language-card__names[b-jo46r24znz] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.language-card__native[b-jo46r24znz] {
    font-weight: 600;
    font-size: 0.95rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.language-card__english[b-jo46r24znz] {
    font-size: 0.78rem;
    color: var(--bomsync-text-secondary, #5a6a85);
    white-space: nowrap;
}

/* Active check badge */
.language-card__badge[b-jo46r24znz] {
    position: absolute;
    top: 0.45rem;
    right: 0.55rem;
    font-size: 0.85rem;
    color: var(--brand-blue, #1e3a5f);
}
/* /Components/Account/Pages/PlatformLegalGate.razor.rz.scp.css */
/* Post-login legal gate — match Login.razor visual language (scoped) */
.bomsync-legal-gate-page[b-61yrge0lpk] {
    position: fixed;
    inset: 0;
    z-index: 1200;
    isolation: isolate;
    margin: 0;
    padding: clamp(1.25rem, 4vw, 2.5rem) 1rem;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: auto;
    background:
        radial-gradient(ellipse 120% 80% at 50% -20%, rgba(100, 180, 255, 0.22), transparent 55%),
        radial-gradient(ellipse 90% 60% at 100% 50%, rgba(56, 139, 253, 0.14), transparent 45%),
        radial-gradient(ellipse 70% 50% at 0% 80%, rgba(30, 100, 180, 0.18), transparent 50%),
        linear-gradient(165deg, #0a1528 0%, #102a4a 42%, #0d2138 100%);
}

.bomsync-legal-gate-bg[b-61yrge0lpk] {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

.bomsync-legal-gate-orb[b-61yrge0lpk] {
    position: absolute;
    border-radius: 50%;
    filter: blur(36px);
    opacity: 0.45;
}

.bomsync-legal-gate-orb--1[b-61yrge0lpk] {
    width: min(420px, 55vw);
    height: min(420px, 55vw);
    background: color-mix(in srgb, var(--brand-blue, #2563eb) 55%, transparent);
    top: -8%;
    right: -6%;
}

.bomsync-legal-gate-orb--2[b-61yrge0lpk] {
    width: min(320px, 45vw);
    height: min(320px, 45vw);
    background: rgba(56, 189, 248, 0.35);
    bottom: 5%;
    left: -5%;
}

.bomsync-legal-gate-orb--3[b-61yrge0lpk] {
    width: min(200px, 30vw);
    height: min(200px, 30vw);
    background: rgba(129, 140, 248, 0.3);
    top: 42%;
    left: 35%;
}

.bomsync-legal-gate-center[b-61yrge0lpk] {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: min(640px, 100vw - 2rem);
    margin-inline: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.bomsync-legal-gate-glass[b-61yrge0lpk] {
    width: 100%;
    padding: 1px;
    border-radius: 18px;
    background: linear-gradient(145deg, rgba(255, 255, 255, 0.38), rgba(255, 255, 255, 0.06));
    box-shadow:
        0 4px 24px rgba(0, 0, 0, 0.18),
        0 1px 0 rgba(255, 255, 255, 0.22) inset,
        0 -1px 0 rgba(0, 0, 0, 0.12) inset;
}

.bomsync-legal-gate-glass-inner[b-61yrge0lpk] {
    border-radius: 17px;
    padding: clamp(1.5rem, 4vw, 2rem) clamp(1.35rem, 4vw, 2rem) 1.75rem;
    background: rgba(255, 255, 255, 0.10);
    backdrop-filter: blur(20px) saturate(140%);
    -webkit-backdrop-filter: blur(20px) saturate(140%);
    border: 1px solid rgba(255, 255, 255, 0.22);
    box-sizing: border-box;
}

.bomsync-legal-gate-title[b-61yrge0lpk] {
    color: #fff;
    font-size: clamp(1.5rem, 4vw, 1.85rem);
    font-weight: 700;
    letter-spacing: -0.02em;
    margin: 0 0 0.35rem 0;
    line-height: 1.2;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
}

.bomsync-legal-gate-subtitle[b-61yrge0lpk] {
    color: rgba(255, 255, 255, 0.78);
    font-size: 1rem;
    font-weight: 600;
    margin: 0 0 0.5rem 0;
}

.bomsync-legal-gate-lead[b-61yrge0lpk] {
    color: rgba(255, 255, 255, 0.88);
    font-size: 0.95rem;
    margin-bottom: 1rem;
}

.bomsync-legal-gate-links a[b-61yrge0lpk] {
    color: rgba(147, 197, 253, 0.95);
}

.bomsync-legal-gate-links a:hover[b-61yrge0lpk] {
    color: #fff;
}

.bomsync-legal-gate-trust[b-61yrge0lpk] {
    color: rgba(255, 255, 255, 0.55);
    font-size: 0.8125rem;
    margin: 0;
}

.bomsync-legal-gate-checkbox[b-61yrge0lpk]  .e-label {
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.875rem;
    line-height: 1.45;
}
/* /Components/Account/Pages/Register.razor.rz.scp.css */
/* Read-only invite metadata: match disabled/readonly look (not editable white fields). */
.invite-readonly-field[b-spybnft3nd] {
    background-color: var(--bs-secondary-bg, #e9ecef) !important;
    color: var(--bs-body-color, #212529);
    cursor: default;
    opacity: 1;
}
/* /Components/Bim/DwgViewerComponent.razor.rz.scp.css */
.dwg-viewer-wrapper[b-jdhrhcvi3w] {
    position: relative;
    width: 100%;
    background: var(--bomsync-elevated-surface, #0d1b2e);
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid var(--bomsync-border-strong, rgba(17, 27, 44, 0.14));
    box-shadow:
        0 1px 2px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.08),
        0 0 0 1px rgb(255 255 255 / 0.04) inset;
}

.dwg-viewer-surface[b-jdhrhcvi3w] {
    width: 100%;
    height: 100%;
}

.viewer-overlay[b-jdhrhcvi3w] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    z-index: 10;
    background: color-mix(in srgb, var(--bomsync-page-bg, #f4f6f9) 12%, rgba(13, 27, 46, 0.92));
}

.viewer-overlay--error[b-jdhrhcvi3w] {
    text-align: center;
    padding: 1rem;
}

.viewer-status-text[b-jdhrhcvi3w] {
    color: var(--bomsync-text-secondary, #5c6b7a);
    font-size: 13px;
    max-width: 90%;
}

.viewer-error-icon[b-jdhrhcvi3w] {
    color: var(--bomsync-freshness-08, #e8a838);
    font-size: 28px;
}

.viewer-retry-btn[b-jdhrhcvi3w] {
    margin-top: 6px;
    padding: 6px 18px;
    background: transparent;
    border: 1px solid var(--bomsync-border-strong, #2e5f7a);
    border-radius: 6px;
    color: var(--brand-blue, #1e3a5f);
    font-size: 13px;
    cursor: pointer;
}

.viewer-retry-btn:hover[b-jdhrhcvi3w] {
    background: color-mix(in srgb, var(--brand-blue, #1e3a5f) 12%, transparent);
}
/* /Components/Commercial/CommercialWorkbenchShell.razor.rz.scp.css */
/* Align with SubmittalWorkbenchShell / wireframe sf-sidebar (#1b2537, teal active rail). */

.commercial-wb-sidebar-inner[b-7ygg0mqab6] {
    background: var(--brand-blue);
    min-height: 100%;
}

.commercial-wb-brand[b-7ygg0mqab6] {
    padding: 0.65rem 0.6rem 0.55rem;
    flex-shrink: 0;
}

.commercial-wb-brand-title[b-7ygg0mqab6] {
    color: var(--bomsync-on-dark-text, #fff);
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.02em;
}

.commercial-wb-brand-sub[b-7ygg0mqab6] {
    color: rgba(255, 255, 255, 0.42);
    font-size: 0.68rem;
    margin-top: 0.15rem;
    line-height: 1.25;
}

.commercial-wb-link[b-7ygg0mqab6] {
    display: block;
    padding: 0.4rem 0.55rem;
    border-radius: 4px;
    color: var(--bomsync-on-dark-text, rgba(255, 255, 255, 0.78));
    text-decoration: none;
    font-size: 0.8125rem;
    border-left: 2px solid transparent;
}

.commercial-wb-link:hover[b-7ygg0mqab6] {
    background: rgba(255, 255, 255, 0.08);
    color: var(--bomsync-on-dark-text, #fff);
}

.commercial-wb-link.active[b-7ygg0mqab6] {
    background: rgba(255, 255, 255, 0.11);
    border-left-color: #1d9e75;
    color: var(--bomsync-on-dark-text, #fff);
}

.commercial-wb-section[b-7ygg0mqab6] {
    font-size: 0.625rem;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    opacity: 0.48;
    padding: 0.5rem 0.55rem 0.2rem;
    margin-top: 0.35rem;
    color: var(--bomsync-on-dark-text, #fff);
}

.commercial-wb-push[b-7ygg0mqab6] {
    background: var(--bomsync-page-bg, var(--bs-body-bg));
}

.commercial-wb-topbar[b-7ygg0mqab6] {
    background: var(--bs-body-bg);
    border-color: var(--bomsync-border-strong, var(--bs-border-color)) !important;
}

.commercial-wb-main[b-7ygg0mqab6] {
    background: var(--bomsync-page-bg, var(--bs-body-bg));
}

/* Inline banners (e.g. project scope) — wireframe .inf feel */
.commercial-wb-banner[b-7ygg0mqab6] {
    font-size: 1rem;
    line-height: 1.55;
    padding: 0.65rem 0.85rem;
    border-radius: var(--bs-border-radius, 0.375rem);
    border: 1px solid var(--bomsync-border-strong);
    background: var(--bomsync-elevated-surface, var(--bs-secondary-bg));
    color: var(--bomsync-text-secondary, var(--bs-secondary-color));
}

.commercial-wb-banner--warn[b-7ygg0mqab6] {
    border-color: rgba(133, 79, 11, 0.35);
    background: rgba(250, 238, 218, 0.45);
    color: var(--bs-body-color);
}

.commercial-wb-panel[b-7ygg0mqab6] {
    background: var(--bs-body-bg);
    border: 1px solid var(--bomsync-border-strong, var(--bs-border-color));
    border-radius: 0.5rem;
    overflow: hidden;
    box-shadow: 0 1px 2px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.06);
}
/* /Components/Layout/ContextPanel.razor.rz.scp.css */
.context-rail[b-omd4aamcbq] {
    position: sticky;
    top: calc(var(--topbar-h) + var(--sectionbar-h) + var(--sectionbar-border));
    height: calc(100dvh - var(--footer-h) - var(--topbar-h) - var(--sectionbar-h) - var(--sectionbar-border));
    width: var(--context-rail-expanded, 300px);
    flex: 0 0 var(--context-rail-expanded, 300px);
    /* Light chrome — distinct from the main content without the nav grid / dark overlay */
    background-color: var(--bomsync-surface, #edf0f7);
    background-image: none;
    border-left: 1px solid var(--bomsync-border, #dde3ee);
    color: var(--bomsync-text, #0f1520);
    box-shadow: var(--bomsync-shadow-sm, -1px 0 0 0 rgb(17 27 44 / 0.06));
    display: flex;
    flex-direction: column;
    min-height: 0;
    transition: width 0.2s ease;
}

.context-rail--closed[b-omd4aamcbq] {
    width: var(--context-rail-collapsed, 44px);
    flex-basis: var(--context-rail-collapsed, 44px);
}

.context-rail--closed .context-rail__actives[b-omd4aamcbq],
.context-rail--closed .context-rail__lower[b-omd4aamcbq],
.context-rail--closed .context-rail__title[b-omd4aamcbq],
.context-rail--closed .context-rail__title-row[b-omd4aamcbq] {
    display: none;
}

.context-rail--closed .context-rail__placeholder[b-omd4aamcbq] {
    display: none !important;
}

.context-rail__icons[b-omd4aamcbq] {
    display: none;
}

.context-rail--closed .context-rail__icons[b-omd4aamcbq] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 8px 0;
    align-items: center;
}

/* Icon strip: no “pill” / glow — same spirit as docked main nav (flat icon, hover wash only) */
.context-rail__icon-btn[b-omd4aamcbq] {
    width: 40px;
    height: 40px;
    border-radius: 0;
    background: transparent;
    border: none;
    color: var(--bomsync-text-secondary, #3a4560);
    box-shadow: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.context-rail__icon-btn i[b-omd4aamcbq] {
    line-height: 1;
    display: block;
    margin: 0;
}

    .context-rail__icon-btn:hover[b-omd4aamcbq] {
        background: var(--bomsync-brand-subtle, #eef2f9);
        color: var(--bomsync-text, #0f1520);
    }

    .context-rail__icon-btn:focus-visible[b-omd4aamcbq] {
        outline: 2px solid var(--bsx-action, #2F6690);
        outline-offset: 2px;
    }

.context-rail__inner[b-omd4aamcbq] {
    min-height: 0;
    overflow: hidden;
    text-align: left;
}

.context-rail__inner[b-omd4aamcbq],
.context-rail__inner *[b-omd4aamcbq] {
    text-align: left;
}

.context-rail__section-pad[b-omd4aamcbq] {
    padding: 0.5rem 0.5rem 0.5rem 0.25rem !important;
}

.context-rail__header[b-omd4aamcbq] {
    flex: 0 0 auto;
    min-height: 2.25rem;
    padding: 0.35rem 0.4rem 0.35rem 0.05rem;
    background: var(--bomsync-elevated-surface, #fbfcff);
    border-bottom-color: var(--bomsync-border) !important;
    justify-content: flex-start;
}

.context-rail__title[b-omd4aamcbq] {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--bomsync-text, #0f1520);
    text-align: start;
    flex: 0 1 auto;
}

.context-rail__chevron[b-omd4aamcbq] {
    color: var(--bomsync-text-secondary, #3a4560);
    width: 2rem;
    min-width: 2rem;
    height: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border-radius: 0.25rem;
    background: transparent;
}

.context-rail__chevron i[b-omd4aamcbq] {
    line-height: 1;
    display: block;
    margin: 0;
}

    .context-rail__chevron:hover[b-omd4aamcbq] {
        color: var(--bomsync-text, #0f1520);
        background: var(--bomsync-brand-subtle, #eef2f9);
    }

.context-dl[b-omd4aamcbq] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    min-width: 0;
    margin: 0;
    padding: 0;
    text-align: left;
}

.context-rail__actives .context-dl[b-omd4aamcbq],
.context-rail__actives .context-dl__row[b-omd4aamcbq],
.context-rail__actives .context-dl__row dt[b-omd4aamcbq],
.context-rail__actives .context-dl__row dd[b-omd4aamcbq] {
    margin-left: 0 !important;
    margin-inline-start: 0 !important;
    padding-left: 0 !important;
    padding-inline-start: 0 !important;
}

.context-rail__actives[b-omd4aamcbq] {
    max-height: 45vh;
    overflow: auto;
    min-width: 0;
}

.context-rail__lower[b-omd4aamcbq] {
    background: var(--bomsync-brand-subtle, #eef2f9);
    border-top-color: var(--bomsync-border) !important;
}

.context-rail__placeholder[b-omd4aamcbq] {
    opacity: 0.9;
    color: var(--bomsync-text-muted, #74869c);
    text-align: left;
}

@media (max-width: 768px) {
    .context-rail[b-omd4aamcbq] {
        display: none;
    }
}

/* Muted / secondary text on the light rail (override Bootstrap) */
:global(.context-rail) .text-muted[b-omd4aamcbq] {
    color: var(--bomsync-text-muted) !important;
}

/* ── Picker row layout ──────────────────────────────────────────────── */
.context-dl__row[b-omd4aamcbq] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.2rem;
    min-width: 0;
    margin: 0;
    padding: 0;
    text-align: left;
    transition: background 0.1s;
}

.context-dl__row dd.context-dl__value[b-omd4aamcbq] {
    margin: 0;
    padding: 0;
    margin-inline-start: 0;
    min-width: 0;
    max-width: 100%;
    color: var(--bomsync-text, #0f1520);
    line-height: 1.35;
    white-space: normal;
    overflow-wrap: break-word;
    word-wrap: break-word;
    font-variant-numeric: tabular-nums;
    text-align: left;
}

.context-dl__row--picking[b-omd4aamcbq] {
    background: var(--bomsync-brand-subtle, #eef2f9);
    border-radius: 8px;
    padding: 4px 6px;
    margin: -4px -6px;
}

/* Row header: [picker button] [dt label] side by side */
.cdl-row-head[b-omd4aamcbq] {
    display: flex;
    align-items: center;
    gap: 5px;
    min-width: 0;
}

.cdl-row-head dt[b-omd4aamcbq] {
    margin: 0;
    padding: 0;
    color: var(--bomsync-text-muted, #74869c);
    font-weight: 500;
    font-size: 0.7rem;
    line-height: 1.2;
    letter-spacing: 0.02em;
    text-align: left;
    flex: 1 1 auto;
}

/* ── Picker button (small square cursor icon) ───────────────────────── */
.cdl-pick-btn[b-omd4aamcbq] {
    width: 20px;
    height: 20px;
    min-width: 20px;
    min-height: 20px;
    border-radius: 4px;
    border: 1px solid var(--bomsync-border, #dde3ee);
    background: var(--bomsync-elevated-surface, #fbfcff);
    color: var(--bomsync-text-muted, #74869c);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    font-size: 0.65rem;
    cursor: pointer;
    flex-shrink: 0;
    padding: 0;
    transition: background 0.12s, border-color 0.12s, color 0.12s, box-shadow 0.12s;
    box-shadow: 0 1px 2px rgb(17 27 44 / 0.06);
}

.cdl-pick-btn i[b-omd4aamcbq] {
    line-height: 1;
    display: block;
    margin: 0;
    font-size: 0.7rem;
}

.cdl-pick-btn:hover[b-omd4aamcbq] {
    background: color-mix(in oklab, var(--bsx-action, #2F6690) 10%, white);
    border-color: var(--bsx-action, #2F6690);
    color: var(--bsx-action, #2F6690);
    box-shadow: 0 1px 4px rgb(47 102 144 / 0.2);
}

.cdl-pick-btn:focus-visible[b-omd4aamcbq] {
    outline: 2px solid var(--bsx-action, #2F6690);
    outline-offset: 1px;
}

.cdl-pick-btn--active[b-omd4aamcbq] {
    background: var(--bsx-action, #2F6690);
    border-color: var(--bsx-action, #2F6690);
    color: #fff;
    box-shadow: 0 1px 4px rgb(47 102 144 / 0.35);
}

.cdl-pick-btn--active:hover[b-omd4aamcbq] {
    background: color-mix(in oklab, var(--bsx-action, #2F6690) 80%, black);
    color: #fff;
}

/* ── Inline picker (combobox area) ──────────────────────────────────── */
.cdl-picker[b-omd4aamcbq] {
    margin-top: 4px;
    min-width: 0;
}

.cdl-picker__none[b-omd4aamcbq],
.cdl-picker__count[b-omd4aamcbq] {
    font-size: 0.72rem;
    color: var(--bomsync-text-muted, #74869c);
    margin: 4px 0 0 0;
}

/* Make SfComboBox fill the narrow panel correctly */
[b-omd4aamcbq] .cdl-pick-combo .e-control-wrapper,
[b-omd4aamcbq] .cdl-pick-combo .e-input-group {
    width: 100% !important;
    min-height: 28px !important;
    font-size: 0.78rem;
}

[b-omd4aamcbq] .cdl-pick-combo .e-input {
    font-size: 0.78rem;
    padding: 2px 4px;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-spxuazj2ba] {
    position: relative;
    display: flex;
    flex-direction: column;
}


main[b-spxuazj2ba] {
    flex: 1;
}

/* hide until sidebar state is hydrated */
.prehide[b-spxuazj2ba] {
    visibility: hidden;
}


.sidebar[b-spxuazj2ba] {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
}

.top-row[b-spxuazj2ba] {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row[b-spxuazj2ba]  a, .top-row[b-spxuazj2ba]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

        .top-row[b-spxuazj2ba]  a:hover, .top-row[b-spxuazj2ba]  .btn-link:hover {
            text-decoration: underline;
        }

        .top-row[b-spxuazj2ba]  a:first-child {
            overflow: hidden;
            text-overflow: ellipsis;
        }

@media (max-width: 640.98px) {
    .top-row[b-spxuazj2ba] {
        justify-content: space-between;
    }

        .top-row[b-spxuazj2ba]  a, .top-row[b-spxuazj2ba]  .btn-link {
            margin-left: 0;
        }
}

@media (min-width: 641px) {
    .page[b-spxuazj2ba] {
        flex-direction: row;
    }

    .sidebar[b-spxuazj2ba] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    .top-row[b-spxuazj2ba] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

        .top-row.auth[b-spxuazj2ba]  a:first-child {
            flex: 1;
            text-align: right;
            width: 0;
        }

    .top-row[b-spxuazj2ba], article[b-spxuazj2ba] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui[b-spxuazj2ba] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-spxuazj2ba] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }





















/* MainLayout.razor.css (clean version) */
/*.page {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;*/ /* ⬅️ Ensures full-page stretch */
/*}*/

/* NEW - FULL HEIGHT BODY*/
/*html, body {
    height: 100%;
    margin: 0;
}*/

/*#page-container {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}*/

#control-section[b-spxuazj2ba] {
    flex: 1 0 auto;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* Full-width scheduled maintenance strip above NavMenu + main panel */
.layout-root[b-spxuazj2ba] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    width: 100%;
}

#wrapper[b-spxuazj2ba] {
    display: flex;
    flex: 1;
    overflow: hidden;
}


.main-panel[b-spxuazj2ba] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* Top-align app pages; login/account pages center their own forms locally */
#maintext.main-content[b-spxuazj2ba] {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    /* padding from wwwroot/css/layout.css (#maintext.main-content) */
}

.content[b-spxuazj2ba] {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
}

/*#content-wrapper {
    display: flex;
    flex: 1;
    overflow: hidden;
}*/



/*.sticky-toolbar {
    position: sticky;
    top: 0;
    z-index: 100;
    background-color: white;
}

.footer-bar {
    height: 3rem;
    background-color: #f7f7f7;
    border-top: 1px solid #ccc;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
}*/


/*body {
    overflow: hidden;
}*/

/*main {
    flex: 1;
    overflow-y: auto;
}*/

/* NEW - FULL HEIGHT BODY*/
/*.main-content {
    flex-grow: 1;
    height: 100%;
    overflow-y: auto;
}*/

/* NEW - FULL HEIGHT PAGE*/
/*#wrapper {
    display: flex;
    flex: 1;
    min-height: 100vh;
}*/

/*.sidebar {
    background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
    height: 100vh;
}

.top-row {
    background-color: #f7f7f7;
    border-bottom: 1px solid #d6d5d5;
    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
}

    .top-row ::deep a, .top-row ::deep .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

        .top-row ::deep a:hover, .top-row ::deep .btn-link:hover {
            text-decoration: underline;
        }

        .top-row ::deep a:first-child {
            overflow: hidden;
            text-overflow: ellipsis;
        }





@media (max-width: 640.98px) {
    .top-row {
        justify-content: space-between;
    }

        .top-row ::deep a, .top-row ::deep .btn-link {
            margin-left: 0;
        }
}

@media (min-width: 641px) {
    .page {
        flex-direction: row;
    }

    .sidebar {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }*/

    /* NEW - FULL HEIGHT SIDEBAR*/
    /*    .sidebar-menu {
        height: 100vh;  Full height of viewport 
        flex-shrink: 0;
    }*/

    /*.top-row {
        position: sticky;
        top: 0;
        z-index: 1;
    }

        .top-row.auth ::deep a:first-child {
            flex: 1;
            text-align: right;
            width: 0;
        }

    .top-row, article {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

#blazor-error-ui {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }*/
/* /Components/Layout/ScheduledMaintenanceBanner.razor.rz.scp.css */
.scheduled-maintenance-banner[b-lt24z96va6] {
    flex: 0 0 auto;
    width: 100%;
    box-sizing: border-box;
    padding: 0.5rem 1rem;
    background-color: #f5e6a8;
    color: #4a4428;
    border-bottom: 1px solid rgba(120, 100, 40, 0.25);
    font-size: 0.92rem;
    line-height: 1.45;
}

.scheduled-maintenance-banner__text[b-lt24z96va6] {
    display: block;
    max-width: 72rem;
    margin: 0 auto;
}
/* /Components/Layout/ShellNavMenu.razor.rz.scp.css */
/* /Components/Media/BomsyncCarouselViewerDialog.razor.rz.scp.css */
/* ── Carousel viewer dialog shell ────────────────────────────────────────── */

/* Cap the dialog at 1200 × 860 so it never becomes a full-viewport sheet.
   The SfDialog itself is Width="90%" Height="88%" — this provides a sensible max. */
[b-lcf88maph0] .bomsync-carousel-viewer-dialog.e-dialog {
    max-width:  min(1260px, 95vw) !important;
    max-height: min(860px,  92vh) !important;
}

/* Dialog content area: fill the available space vertically */
[b-lcf88maph0] .bomsync-carousel-viewer-dialog .e-dlg-content {
    padding: 0 !important;
    overflow: hidden;
}

/* ── Body wrapper ─────────────────────────────────────────────────────────── */
.bomsync-carousel-viewer-body[b-lcf88maph0] {
    width:  100%;
    height: min(760px, calc(88vh - 100px));
    display: flex;
    align-items: stretch;
    box-sizing: border-box;
    position: relative;
    background: var(--bomsync-elevated-surface, #f4f6fa);
}

/* ── Syncfusion SfCarousel overrides ─────────────────────────────────────── */

/* Let Syncfusion manage the items track (uses CSS transforms, not flex).
   Do NOT apply display:flex/grid here — it causes all slides to appear side-by-side. */
.bomsync-carousel-viewer-body[b-lcf88maph0]  .e-carousel {
    width:  100%;
    height: 100%;
    position: relative;
}

.bomsync-carousel-viewer-body[b-lcf88maph0]  .e-carousel .e-carousel-items,
.bomsync-carousel-viewer-body[b-lcf88maph0]  .e-carousel .e-carousel-slide-container {
    display: block !important;   /* reset any inherited flex from templateCarousel */
    width:  100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}

/* Each individual slide: flex so the figure centres within the slide viewport */
.bomsync-carousel-viewer-body[b-lcf88maph0]  .e-carousel .e-carousel-item {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width:  100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

/* Navigator arrows: keep them visible over the image */
.bomsync-carousel-viewer-body[b-lcf88maph0]  .e-carousel .e-carousel-navigators {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 0.5rem;
}

.bomsync-carousel-viewer-body[b-lcf88maph0]  .e-carousel .e-carousel-navigators button,
.bomsync-carousel-viewer-body[b-lcf88maph0]  .e-carousel .e-carousel-navigators .e-btn {
    pointer-events: auto;
    background: rgba(var(--bomsync-shadow-rgb, 17 27 44) / 0.55);
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    color: #fff;
}

/* Indicators bar */
.bomsync-carousel-viewer-body[b-lcf88maph0]  .e-carousel .e-carousel-indicators {
    position: absolute;
    bottom: 10px;
    left: 0;
    right: 0;
    z-index: 10;
    display: flex;
    justify-content: center;
    gap: 6px;
}

/* ── Figure / image ───────────────────────────────────────────────────────── */
.bomsync-carousel-figure[b-lcf88maph0] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    max-width:  1200px;
    max-height: 800px;
    width:  100%;
    height: 100%;
    margin-inline: auto;
    padding: 0.5rem 0;
    box-sizing: border-box;
}

/* Image: never exceed 1200 × 800; smaller images stay at natural size */
.bomsync-carousel-img[b-lcf88maph0] {
    display: block;
    margin-inline: auto;
    width: auto;
    height: auto;
    max-width:  min(1200px, 100%);
    max-height: min(800px, calc(88vh - 160px));
    object-fit: contain;
    border-radius: 4px;
}

.bomsync-carousel-caption[b-lcf88maph0] {
    font-size: 0.85rem;
    color: var(--bomsync-text-secondary, #6c7a96);
    margin-top: 0.4rem;
    max-width: min(1200px, 100%);
}
/* /Components/Pages/Activity/TaskContextDetail.razor.rz.scp.css */
/* ── TaskContextDetail scoped styles ──────────────────────────────── */
/* Consumes BOMSync theme tokens; no competing neutral scales.        */

/* Progress strip below the hero */
.tcd-progress-strip[b-22pubt4htu] {
    background: var(--bomsync-elevated-surface, #f4f6fb);
    border-bottom: 1px solid var(--bomsync-border, #dee2e6);
}

.tcd-stat[b-22pubt4htu] {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 64px;
}

.tcd-stat__value[b-22pubt4htu] {
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--bomsync-text-primary, #1b2b4b);
    line-height: 1.1;
}

.tcd-stat__label[b-22pubt4htu] {
    font-size: 0.72rem;
    color: var(--bomsync-text-secondary, #5a6a8a);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    white-space: nowrap;
}

/* ── Work item cards ─────────────────────────────────────────────── */
.tcd-work-item-card[b-22pubt4htu] {
    background: var(--bomsync-elevated-surface, #fff);
    border: 1px solid var(--bomsync-border, #dee2e6);
    border-left: 4px solid var(--brand-blue, #1e3a6e);
    border-radius: 6px;
    padding: 0.75rem 1rem;
    margin-bottom: 0.75rem;
    box-shadow: 0 1px 3px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.06);
    transition: box-shadow 0.15s;
}

.tcd-work-item-card:hover[b-22pubt4htu] {
    box-shadow: 0 3px 10px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.12);
}

.tcd-work-item-card--done[b-22pubt4htu] {
    opacity: 0.65;
    border-left-color: var(--bs-success, #198754);
}

.tcd-wi-title[b-22pubt4htu] {
    font-size: 0.92rem;
    color: var(--bomsync-text-primary, #1b2b4b);
}

.tcd-wi-desc[b-22pubt4htu] {
    font-size: 0.8rem;
    color: var(--bomsync-text-secondary, #5a6a8a);
    line-height: 1.4;
    max-height: 3em;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.tcd-wi-type-icon[b-22pubt4htu] {
    font-size: 1rem;
    margin-top: 2px;
    color: var(--brand-blue, #1e3a6e);
    flex-shrink: 0;
}

.tcd-wi-footer[b-22pubt4htu] {
    border-top: 1px solid var(--bomsync-border, #dee2e6);
    padding-top: 0.35rem;
    margin-top: 0.5rem;
}

/* ── Thread cards ─────────────────────────────────────────────────── */
.tcd-thread-card[b-22pubt4htu] {
    background: var(--bomsync-elevated-surface, #fff);
    border: 1px solid var(--bomsync-border, #dee2e6);
    border-radius: 6px;
    padding: 0.65rem 0.9rem;
    margin-bottom: 0.6rem;
    box-shadow: 0 1px 3px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.05);
}

.tcd-thread--resolved[b-22pubt4htu] {
    opacity: 0.6;
    border-color: var(--bs-success, #198754);
}

.tcd-thread-badge[b-22pubt4htu] {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
}

/* ── Viewer / action buttons ──────────────────────────────────────── */
.tcd-btn-lens[b-22pubt4htu] {
    background: var(--brand-blue, #1e3a6e);
    color: #fff;
    border: 1px solid var(--brand-blue, #1e3a6e);
}

.tcd-btn-lens:hover[b-22pubt4htu],
.tcd-btn-lens:focus[b-22pubt4htu] {
    background: color-mix(in srgb, var(--brand-blue, #1e3a6e) 85%, #000);
    color: #fff;
    border-color: transparent;
}

.tcd-btn-pdf[b-22pubt4htu] {
    background: var(--bs-danger, #dc3545);
    color: #fff;
    border: 1px solid var(--bs-danger, #dc3545);
}

.tcd-btn-pdf:hover[b-22pubt4htu],
.tcd-btn-pdf:focus[b-22pubt4htu] {
    background: color-mix(in srgb, var(--bs-danger, #dc3545) 85%, #000);
    color: #fff;
    border-color: transparent;
}

.tcd-btn-entity[b-22pubt4htu] {
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.5);
}

.tcd-btn-entity:hover[b-22pubt4htu],
.tcd-btn-entity:focus[b-22pubt4htu] {
    background: rgba(255, 255, 255, 0.3);
    color: #fff;
}

.tcd-info-btn[b-22pubt4htu] {
    color: rgba(255, 255, 255, 0.75) !important;
    border: none !important;
    background: transparent !important;
    font-size: 0.8rem;
}

/* ── Action cards ─────────────────────────────────────────────────── */
.tcd-action-card[b-22pubt4htu] {
    border: 1px solid var(--bomsync-border, #dee2e6);
    box-shadow: 0 1px 4px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.07);
    transition: box-shadow 0.15s, transform 0.1s;
}

.tcd-action-card:hover[b-22pubt4htu] {
    box-shadow: 0 4px 12px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.14);
    transform: translateY(-1px);
}

.tcd-action-card--viewer[b-22pubt4htu] {
    border-left: 4px solid var(--brand-blue, #1e3a6e);
}

/* ── Detail table ─────────────────────────────────────────────────── */
.tcd-detail-table[b-22pubt4htu] {
    border-collapse: collapse;
    width: 100%;
    max-width: 640px;
}

.tcd-detail-table th[b-22pubt4htu] {
    width: 38%;
    color: var(--bomsync-text-secondary, #5a6a8a);
    font-weight: 600;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    padding: 0.45rem 0.75rem;
    white-space: nowrap;
    vertical-align: top;
}

.tcd-detail-table td[b-22pubt4htu] {
    font-size: 0.9rem;
    color: var(--bomsync-text-primary, #1b2b4b);
    padding: 0.45rem 0.75rem;
    vertical-align: top;
}

/* ── Empty state ─────────────────────────────────────────────────── */
.tcd-empty-state[b-22pubt4htu] {
    text-align: center;
    padding: 2.5rem 1rem;
    font-size: 0.9rem;
}

.tcd-empty-state__icon[b-22pubt4htu] {
    font-size: 2rem;
    opacity: 0.35;
}

/* ── Status badge helpers ─────────────────────────────────────────── */
.tcd-badge-status[b-22pubt4htu] {
    font-size: 0.68rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    border-radius: 4px;
    padding: 2px 7px;
    white-space: nowrap;
}
/* /Components/Pages/Activity/TaskManagement.razor.rz.scp.css */
/* Syncfusion push sidebar: fill row height so Activity feed flex slot gets real space */
.gantt-layout-root[b-wl5hs6feh4]  .gantt-main-row > .e-sidebar.e-left {
    height: 100%;
    max-height: 100%;
    align-self: stretch;
}

.gantt-layout-root[b-wl5hs6feh4]  .gantt-main-row > .e-sidebar.e-left .e-sidebar-content {
    height: 100%;
    max-height: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.task-mgmt-filter-sidebar-inner[b-wl5hs6feh4] {
    flex: 1;
    min-height: 0;
}

.task-mgmt-activity-feed-slot[b-wl5hs6feh4] {
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.task-mgmt-activity-feed-slot[b-wl5hs6feh4]  .activity-feed-container--compact {
    flex: 1 1 auto;
    min-height: 0;
}

/* ── Flyout resize grips (filters | board | task details) ── */
.task-mgmt-flyout-split-overlay[b-wl5hs6feh4] {
    position: fixed;
    inset: 0;
    z-index: 12000;
    cursor: col-resize;
    background: transparent;
}

.task-mgmt-flyout-grip[b-wl5hs6feh4] {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 10px;
    padding: 0;
    margin: 0;
    border: none;
    cursor: col-resize;
    z-index: 30;
    background: transparent;
    touch-action: none;
    user-select: none;
    -webkit-user-select: none;
}

.task-mgmt-flyout-grip--after-sidebar[b-wl5hs6feh4] {
    right: 0;
}

.task-mgmt-flyout-grip--before-sidebar[b-wl5hs6feh4] {
    left: 0;
}

.task-mgmt-flyout-grip:hover[b-wl5hs6feh4],
.task-mgmt-flyout-grip:focus-visible[b-wl5hs6feh4] {
    background: rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.07);
    outline: none;
}

.task-mgmt-flyout-grip[b-wl5hs6feh4]::after {
    content: "";
    position: absolute;
    top: 0.75rem;
    bottom: 0.75rem;
    left: 50%;
    transform: translateX(-50%);
    width: 5px;
    height: auto;
    border-radius: 3px;
    border: 1px dashed var(--bomsync-border-strong, #98a6b8);
    background: rgba(255, 255, 255, 0.45);
    box-sizing: border-box;
    pointer-events: none;
}

.gantt-layout-root[b-wl5hs6feh4]  .gantt-main-row--task-mgmt > .e-sidebar .e-sidebar-content {
    position: relative;
}

/* Task Details flyout: readable body copy + full-height sidebar for grips */
.task-mgmt-detail-sidebar-inner[b-wl5hs6feh4] {
    min-height: 100%;
}

.task-mgmt-detail-flyout-title[b-wl5hs6feh4] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--bomsync-text-primary, #1b2b4b);
}

.task-mgmt-detail-summary[b-wl5hs6feh4] {
    font-size: 1rem;
    line-height: 1.55;
    color: var(--bomsync-text-secondary, #5a6a8a);
}

.task-mgmt-detail-summary strong[b-wl5hs6feh4] {
    color: var(--bomsync-text-primary, #1b2b4b);
}

.task-mgmt-open-context-link[b-wl5hs6feh4] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-top: 0.75rem;
    padding: 0.45rem 0.85rem;
    border-radius: 8px;
    font-size: 0.95rem;
    font-weight: 600;
    text-decoration: none;
    color: var(--bomsync-on-dark-text, #f0f4fa);
    background: linear-gradient(135deg, var(--brand-blue, #1e3a6e) 0%, color-mix(in srgb, var(--brand-blue, #1e3a6e) 75%, #0f172a) 100%);
    border: 1px solid color-mix(in srgb, var(--brand-blue, #1e3a6e) 60%, #000);
    box-shadow: 0 2px 8px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.18);
}

.task-mgmt-open-context-link:hover[b-wl5hs6feh4] {
    color: var(--bomsync-on-dark-text, #fff);
    filter: brightness(1.05);
}

.task-mgmt-info-dl[b-wl5hs6feh4] {
    margin: 0;
    font-size: 1rem;
    line-height: 1.55;
    color: var(--bomsync-text-secondary, #5a6a8a);
}

.task-mgmt-info-dl dt[b-wl5hs6feh4] {
    float: left;
    clear: left;
    width: 11rem;
    font-weight: 600;
    color: var(--bomsync-text-primary, #1b2b4b);
}

.task-mgmt-info-dl dd[b-wl5hs6feh4] {
    margin-left: 11.5rem;
    margin-bottom: 0.35rem;
}

/* TreeGrid panel breathing room */
.task-mgmt-tree-panel[b-wl5hs6feh4] {
    padding: 18px;
    box-sizing: border-box;
    max-width: 100%;
    overflow-x: auto;
    background: var(--bomsync-elevated-surface, #f8fafc);
    border: 1px solid var(--bomsync-border, #dee2e6);
    border-radius: 8px;
}

/* Kanban lane headers — Syncfusion uses .e-header-cells per column (see Kanban style docs) */
.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-table .e-header-cells,
.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-header .e-header-cells {
    padding-top: 0.65rem;
    padding-bottom: 0.65rem;
    vertical-align: middle;
    border-radius: 8px 8px 0 0;
    border-bottom: 1px solid var(--bomsync-border, #d8e0eb);
}

.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-table .e-header-cells .e-header-text,
.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-header .e-header-cells .e-header-text,
.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-header .e-header-cells .e-header-wrap .e-header-title {
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.3;
    color: var(--bomsync-text-primary, #1b2b4b);
}

.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-table .e-header-cells:nth-child(5n + 1),
.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-header .e-header-cells:nth-child(5n + 1) {
    background: color-mix(in srgb, #93c5fd 72%, var(--bomsync-page-bg, #eef2f8));
}

.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-table .e-header-cells:nth-child(5n + 2),
.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-header .e-header-cells:nth-child(5n + 2) {
    background: color-mix(in srgb, #86efac 70%, var(--bomsync-page-bg, #eef2f8));
}

.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-table .e-header-cells:nth-child(5n + 3),
.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-header .e-header-cells:nth-child(5n + 3) {
    background: color-mix(in srgb, #fcd34d 68%, var(--bomsync-page-bg, #eef2f8));
}

.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-table .e-header-cells:nth-child(5n + 4),
.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-header .e-header-cells:nth-child(5n + 4) {
    background: color-mix(in srgb, #c4b5fd 72%, var(--bomsync-page-bg, #eef2f8));
}

.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-table .e-header-cells:nth-child(5n + 5),
.task-management-page[b-wl5hs6feh4]  .e-kanban .e-kanban-header .e-header-cells:nth-child(5n + 5) {
    background: color-mix(in srgb, #f9a8d4 68%, var(--bomsync-page-bg, #eef2f8));
}

.task-mgmt-kanban-card-inner[b-wl5hs6feh4] {
    position: relative;
    padding-right: 2px;
}

.task-mgmt-kanban-card-head[b-wl5hs6feh4] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.35rem;
}

.task-mgmt-kanban-card-title[b-wl5hs6feh4] {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--bomsync-text-primary, #1b2b4b);
    line-height: 1.35;
    flex: 1;
    min-width: 0;
}

.task-mgmt-kanban-card-desc[b-wl5hs6feh4] {
    font-size: 0.875rem;
    line-height: 1.45;
    color: var(--bomsync-text-secondary, #5a6a8a);
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.task-mgmt-kanban-card-meta[b-wl5hs6feh4] {
    font-size: 0.8rem;
    color: var(--bomsync-text-muted, #6b7a95);
    margin-top: 0.35rem;
}
/* /Components/Pages/AdminStaff/Invite.razor.rz.scp.css */
/* Pending invitations: primary (blue) actions use temperature-aligned on-dark text (canon: bomsync-theme.css :root) */
[b-svf848vegl] .invite-pending-grid .e-rowcell .invite-pending-actions .e-btn.e-primary,
[b-svf848vegl] .invite-pending-grid .e-rowcell .invite-pending-actions .e-btn.e-primary .e-btn-icon,
[b-svf848vegl] .invite-pending-grid .e-rowcell .invite-pending-actions .e-btn.e-primary .e-icons {
    color: var(--bomsync-on-dark-text, #e8edf5) !important;
}

[b-svf848vegl] .invite-pending-grid .e-rowcell .invite-pending-actions .e-btn.e-primary:hover,
[b-svf848vegl] .invite-pending-grid .e-rowcell .invite-pending-actions .e-btn.e-primary:active,
[b-svf848vegl] .invite-pending-grid .e-rowcell .invite-pending-actions .e-btn.e-primary.e-active {
    color: var(--bomsync-on-dark-text, #e8edf5) !important;
}
/* /Components/Pages/AI/DomainAgentAssistant.razor.rz.scp.css */
/* ── DomainAgentAssistant ─────────────────────────────────────────────────── */

/* ── Two-column layout: skill sidebar + chat panel ── */

/*
 * The layout lives inside #maintext.main-content which is overflow:auto + padding:15px.
 * We use a negative margin trick to escape the 15px padding and stretch edge-to-edge,
 * then set an explicit height that fills the visible viewport minus the chrome above.
 */
.agent-assistant-layout[b-yuidl3xw37] {
    display: flex;
    /* Pull back out of the 15px content padding so the sidebar reaches the edge */
    margin: -15px;
    /* Fill viewport height minus: topbar (~56px) + footer (~44px) + 2×15px padding = ~130px */
    height: calc(100vh - 130px);
    min-height: 500px;
    overflow: hidden;
    border-top: 1px solid var(--bomsync-border-subtle, #dde3ec);
}

/* Skill picker sidebar */
.agent-skill-sidebar[b-yuidl3xw37] {
    width: 196px;
    min-width: 196px;
    background: var(--bomsync-elevated-surface, #f4f7fb);
    border-right: 1px solid var(--bomsync-border-subtle, #dde3ec);
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    flex-shrink: 0;
    transition: width 0.2s ease, min-width 0.2s ease;
    /* Ensure the sidebar always stacks above the chat panel so the header button is reachable */
    position: relative;
    z-index: 5;
}

.agent-skill-sidebar--collapsed[b-yuidl3xw37] {
    width: 40px;
    min-width: 40px;
    /* Do NOT set overflow:hidden here — it clips the sticky header and toggle button */
    overflow: visible;
}

/* Hide skill list items when collapsed (they are conditionally rendered, but guard the overflow too) */
.agent-skill-sidebar--collapsed .agent-skill-sidebar__group[b-yuidl3xw37] {
    display: none;
}

.agent-skill-sidebar__header[b-yuidl3xw37] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0.6rem 0.4rem;
    border-bottom: 1px solid var(--bomsync-border-subtle, #dde3ec);
    position: sticky;
    top: 0;
    background: var(--bomsync-elevated-surface, #f4f7fb);
    /* Sit above the adjacent chat panel so the button is always clickable */
    z-index: 10;
}

/* Collapsed header: center the icon and remove horizontal padding squeeze */
.agent-skill-sidebar__header--collapsed[b-yuidl3xw37] {
    justify-content: center;
    padding: 0.5rem 0;
}

.agent-skill-sidebar__group[b-yuidl3xw37] {
    padding: 0.25rem 0;
}

.agent-skill-sidebar__group-label[b-yuidl3xw37] {
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--bomsync-text-muted, #8294a5);
    padding: 0.35rem 0.65rem 0.15rem;
}

.agent-skill-sidebar__item[b-yuidl3xw37] {
    display: block;
    width: 100%;
    text-align: left;
    background: none;
    border: none;
    padding: 0.3rem 0.65rem;
    font-size: 0.78rem;
    color: var(--bomsync-text-secondary, #4b5c6b);
    border-radius: 0;
    cursor: pointer;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: background 0.12s;
}

.agent-skill-sidebar__item:hover[b-yuidl3xw37] {
    background: var(--bomsync-border-subtle, #dde3ec);
    color: var(--bomsync-text-primary, #111b2c);
}

.agent-skill-sidebar__item.active[b-yuidl3xw37] {
    background: var(--brand-blue, #0a2540);
    color: var(--bomsync-on-dark-text, #e8edf5);
    font-weight: 600;
}

/* Chat panel fills remaining space */
.agent-chat-panel[b-yuidl3xw37] {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-width: 0;
    background: #fff;
}

/* Compact header strip */
.agent-chat-header[b-yuidl3xw37] {
    flex-shrink: 0;
    background: var(--bomsync-elevated-surface, #f4f7fb);
    min-height: 52px;
}

/* Scrollable conversation window */
.agent-chat-scroll[b-yuidl3xw37] {
    flex: 1 1 0;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    scroll-behavior: smooth;
}

/* ── Chat bubbles ── */

.agent-bubble[b-yuidl3xw37] {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
    max-width: 88%;
    animation: bubble-in-b-yuidl3xw37 0.18s ease;
}

@keyframes bubble-in-b-yuidl3xw37 {
    from { opacity: 0; transform: translateY(6px); }
    to   { opacity: 1; transform: translateY(0); }
}

.agent-bubble--user[b-yuidl3xw37] {
    align-self: flex-end;
    flex-direction: row-reverse;
}

.agent-bubble--assistant[b-yuidl3xw37] {
    align-self: flex-start;
}

.agent-bubble__icon[b-yuidl3xw37] {
    font-size: 1.1rem;
    color: var(--brand-blue, #0a2540);
    margin-top: 0.2rem;
    flex-shrink: 0;
    opacity: 0.7;
}

.agent-bubble__content[b-yuidl3xw37] {
    background: var(--bomsync-elevated-surface, #f8fafc);
    border: 1px solid var(--bomsync-border-subtle, #dde3ec);
    border-radius: 12px;
    padding: 0.6rem 0.9rem;
    font-size: 0.875rem;
    line-height: 1.55;
    color: var(--bomsync-text-primary, #111b2c);
    word-break: break-word;
    box-shadow: 0 1px 4px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.06);
}

.agent-bubble--user .agent-bubble__content[b-yuidl3xw37] {
    background: var(--brand-blue, #0a2540);
    color: var(--bomsync-on-dark-text, #e8edf5);
    border-color: transparent;
}

/* ── Empty state ── */

.agent-chat-empty[b-yuidl3xw37] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2.5rem 1rem;
    text-align: center;
    color: var(--bomsync-text-secondary, #4b5c6b);
}

.agent-chat-hint[b-yuidl3xw37] {
    font-size: 0.78rem;
    max-width: 220px;
    white-space: normal;
    text-align: left;
    line-height: 1.3;
}

/* ── Input area (wraps row + hint bar) ── */

.agent-chat-input-area[b-yuidl3xw37] {
    flex-shrink: 0;
    padding: 0.6rem 1rem 0.5rem;
    border-top: 1px solid var(--bomsync-border-subtle, #dde3ec);
    background: #fff;
}

.agent-chat-input-row[b-yuidl3xw37] {
    display: flex;
    gap: 0.5rem;
    align-items: flex-end;
}

.agent-chat-hint-bar[b-yuidl3xw37] {
    font-size: 0.72rem;
    margin-top: 0.3rem;
    opacity: 0.7;
}

.agent-chat-textarea[b-yuidl3xw37] {
    resize: none;
    min-height: 60px;
    max-height: 160px;
    font-size: 0.9rem;
    border-radius: var(--bomsync-radius-md, 8px);
    border-color: var(--bomsync-border-subtle, #dde3ec);
}

.agent-chat-send[b-yuidl3xw37] {
    height: 2.5rem;
    min-width: 2.5rem;
    border-radius: var(--bomsync-radius-md, 8px);
    padding: 0 0.75rem;
    flex-shrink: 0;
}

/* ── Markdown content inside assistant bubbles ── */

.agent-bubble__content[b-yuidl3xw37]  p {
    margin-bottom: 0.4rem;
}

.agent-bubble__content[b-yuidl3xw37]  p:last-child {
    margin-bottom: 0;
}

.agent-bubble__content[b-yuidl3xw37]  ul,
.agent-bubble__content[b-yuidl3xw37]  ol {
    margin-bottom: 0.4rem;
    padding-left: 1.4rem;
}

.agent-bubble__content[b-yuidl3xw37]  li {
    margin-bottom: 0.15rem;
}

.agent-bubble__content[b-yuidl3xw37]  h1,
.agent-bubble__content[b-yuidl3xw37]  h2,
.agent-bubble__content[b-yuidl3xw37]  h3,
.agent-bubble__content[b-yuidl3xw37]  h4 {
    margin-top: 0.75rem;
    margin-bottom: 0.25rem;
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--bomsync-text-primary, #111b2c);
}

.agent-bubble__content[b-yuidl3xw37]  code {
    background: rgba(0,0,0,0.06);
    border-radius: 3px;
    padding: 0.1em 0.35em;
    font-size: 0.82em;
    font-family: var(--bs-font-monospace, monospace);
}

.agent-bubble__content[b-yuidl3xw37]  pre {
    background: rgba(0,0,0,0.05);
    border-radius: 6px;
    padding: 0.6rem 0.75rem;
    overflow-x: auto;
    font-size: 0.8rem;
    margin-bottom: 0.4rem;
}

.agent-bubble__content[b-yuidl3xw37]  pre code {
    background: none;
    padding: 0;
}

.agent-bubble__content[b-yuidl3xw37]  blockquote {
    border-left: 3px solid var(--bomsync-border-strong, #b0bfcc);
    margin: 0.4rem 0;
    padding: 0.2rem 0.75rem;
    color: var(--bomsync-text-secondary, #4b5c6b);
}

.agent-bubble__content[b-yuidl3xw37]  table {
    font-size: 0.82rem;
    border-collapse: collapse;
    margin-bottom: 0.4rem;
    width: 100%;
}

.agent-bubble__content[b-yuidl3xw37]  th,
.agent-bubble__content[b-yuidl3xw37]  td {
    border: 1px solid var(--bomsync-border-subtle, #dde3ec);
    padding: 0.3rem 0.5rem;
    text-align: left;
}

.agent-bubble__content[b-yuidl3xw37]  th {
    background: var(--bomsync-border-subtle, #dde3ec);
    font-weight: 700;
}
/* /Components/Pages/BimData/BimModelCloudViewer.razor.rz.scp.css */
.bim-cloud-viewer-page[b-yt665s4k6r] {
    background: var(--bomsync-page-bg, transparent);
    min-height: calc(100vh - 120px);
}

.bim-cloud-viewer-host[b-yt665s4k6r] {
    width: 100%;
    min-height: 400px;
}
/* /Components/Pages/BimData/BimModelDetails.razor.rz.scp.css */
.bim-model-dashboard[b-bd6aj8w4fj] {
    position: relative;
    background: var(--bomsync-page-bg, transparent);
}

.bim-model-hub-hero-actions[b-bd6aj8w4fj] {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    gap: 8px;
    padding-inline: 4px;
}

.bim-model-hub-hero-actions .bim-model-hub-hero-btn.e-outline[b-bd6aj8w4fj] {
    color: var(--bomsync-on-dark-text, #f0f4fa) !important;
    border-color: rgba(255, 255, 255, 0.55) !important;
    background: transparent !important;
}

.bim-model-hub-hero-actions .bim-model-hub-hero-btn.e-outline:hover[b-bd6aj8w4fj] {
    border-color: rgba(255, 255, 255, 0.85) !important;
    background: rgba(255, 255, 255, 0.08) !important;
}

.bim-3d-viewer-subtabs.e-tab[b-bd6aj8w4fj] {
    margin-top: 0;
}

.bim-lens-embed-host[b-bd6aj8w4fj] {
    min-height: 520px;
    height: min(72vh, 880px);
    display: flex;
    flex-direction: column;
}

.bim-lens-embed-host[b-bd6aj8w4fj]  .lens-ifc-bim-viewer-root {
    flex: 1;
    min-height: 0;
}

@media (max-width: 767.98px) {
    .bim-model-hub-hero-media[b-bd6aj8w4fj] {
        max-height: 120px !important;
        width: min(260px, 100%) !important;
        margin-inline: auto;
    }

    .bim-model-hub-hero-actions[b-bd6aj8w4fj] {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        width: 100%;
        padding-top: 4px;
    }
}

.bim-model-dashboard .bomsync-entity-hub-hero[b-bd6aj8w4fj] {
    flex-wrap: wrap;
}

.bim-hero-card .e-card-content[b-bd6aj8w4fj] {
    overflow: visible;
}

.bim-hero-title[b-bd6aj8w4fj] {
    color: var(--bomsync-text-primary, inherit);
}

.bim-hero-subtitle[b-bd6aj8w4fj] {
    color: var(--bomsync-text-secondary, inherit);
}

.bim-hero-description[b-bd6aj8w4fj] {
    line-height: 1.45;
}

.bim-status-pill[b-bd6aj8w4fj] {
    display: inline-block;
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
    background: color-mix(in srgb, var(--brand-blue, #1a3a5c) 12%, transparent);
    color: var(--bomsync-text-primary, #1a2b3c);
    border: 1px solid var(--bomsync-border-strong, rgba(17, 27, 44, 0.12));
}

.bim-status-pill--muted[b-bd6aj8w4fj] {
    font-weight: 500;
    background: var(--bomsync-elevated-surface, rgba(17, 27, 44, 0.04));
}

.bim-hero-dl dt[b-bd6aj8w4fj] {
    font-weight: 500;
}

.bim-tech-panel[b-bd6aj8w4fj] {
    background: var(--bomsync-elevated-surface, #f8f9fa);
    border-color: var(--bomsync-border-strong, #dee2e6) !important;
}

.bim-kpi-tile[b-bd6aj8w4fj] {
    --bim-kpi-accent: var(--brand-blue, #1e3a5f);
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 0.8rem 0.95rem 0.8rem 1rem;
    border-radius: 10px;
    background: linear-gradient(
        145deg,
        var(--bomsync-elevated-surface, #fff) 0%,
        color-mix(in srgb, var(--bomsync-elevated-surface, #fff) 88%, var(--bim-kpi-accent) 12%) 100%
    );
    border: 1px solid color-mix(in srgb, var(--bomsync-border-strong, rgba(17, 27, 44, 0.12)) 70%, var(--bim-kpi-accent) 18%);
    box-shadow:
        0 1px 2px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.07),
        0 0 0 1px rgb(255 255 255 / 0.35) inset;
    overflow: hidden;
    transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.bim-kpi-tile[b-bd6aj8w4fj]::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 5px;
    background: linear-gradient(
        180deg,
        color-mix(in srgb, var(--bim-kpi-accent) 95%, #fff 5%),
        color-mix(in srgb, var(--bim-kpi-accent) 45%, #ea580c 55%)
    );
    border-radius: 10px 0 0 10px;
    box-shadow: 2px 0 8px color-mix(in srgb, var(--bim-kpi-accent) 35%, transparent);
}

.bim-kpi-tile[b-bd6aj8w4fj]::after {
    content: "";
    position: absolute;
    inset: -40% -20% auto 55%;
    height: 55%;
    background: linear-gradient(
        125deg,
        transparent 0%,
        color-mix(in srgb, var(--bim-kpi-accent) 14%, transparent) 45%,
        transparent 70%
    );
    pointer-events: none;
    opacity: 0.85;
}

.bim-kpi-strip[b-bd6aj8w4fj] {
    width: 100%;
    max-width: 200px;
}

@media (min-width: 768px) {
    .bim-kpi-strip[b-bd6aj8w4fj] {
        width: 132px;
        max-width: 132px;
    }
}

.bim-kpi-tile--compact[b-bd6aj8w4fj] {
    padding: 0.45rem 0.55rem 0.45rem 0.75rem;
    min-height: 0;
}

.bim-kpi-value--compact[b-bd6aj8w4fj] {
    font-size: 1.05rem;
    font-weight: 800;
}

.bim-kpi-value--xs[b-bd6aj8w4fj] {
    font-size: 0.82rem;
    font-weight: 700;
}

.bim-kpi-label--compact[b-bd6aj8w4fj] {
    font-size: 0.6rem;
    margin-top: 0.15rem;
    line-height: 1.25;
}

.bim-hero-meta-value[b-bd6aj8w4fj] {
    color: var(--bomsync-text-primary, inherit);
    font-weight: 500;
}

.bim-cloud-viewer-card .e-card-content[b-bd6aj8w4fj] {
    min-height: 200px;
}

.bim-cloud-viewer-idle[b-bd6aj8w4fj] {
    min-height: 280px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.bim-kpi-tile:hover[b-bd6aj8w4fj] {
    transform: translateY(-3px);
    border-color: color-mix(in srgb, var(--bim-kpi-accent) 35%, var(--bomsync-border-strong, #ccc) 65%);
    box-shadow:
        0 10px 28px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.14),
        0 0 0 1px color-mix(in srgb, var(--bim-kpi-accent) 22%, transparent) inset,
        0 0 24px color-mix(in srgb, var(--bim-kpi-accent) 18%, transparent);
}

.bim-kpi-value[b-bd6aj8w4fj] {
    position: relative;
    z-index: 1;
    font-size: 1.5rem;
    font-weight: 800;
    line-height: 1.15;
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.02em;
    color: var(--bim-kpi-accent);
    text-shadow:
        0 1px 0 rgb(255 255 255 / 0.55),
        0 0 20px color-mix(in srgb, var(--bim-kpi-accent) 15%, transparent);
    word-break: break-word;
}

.bim-kpi-value--sm[b-bd6aj8w4fj] {
    font-size: 1.08rem;
    font-weight: 700;
    letter-spacing: -0.01em;
}

.bim-kpi-label[b-bd6aj8w4fj] {
    position: relative;
    z-index: 1;
    margin-top: 0.3rem;
    font-size: 0.68rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--bomsync-text-secondary, #5c6b7a);
    line-height: 1.35;
}

.bim-dashboard-workspace-tabs.e-tab[b-bd6aj8w4fj] {
    margin-top: 0.25rem;
}

.bim-tab-panel[b-bd6aj8w4fj] {
    min-height: 280px;
}

.bim-variant-host[b-bd6aj8w4fj] {
    overflow-x: auto;
}

[b-bd6aj8w4fj] .multiline-textbox textarea {
    min-height: 80px !important;
}

@media (max-width: 767.98px) {
    .bim-kpi-tile[b-bd6aj8w4fj] {
        min-height: 76px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bim-kpi-tile[b-bd6aj8w4fj] {
        transition: none;
    }

    .bim-kpi-tile:hover[b-bd6aj8w4fj] {
        transform: none;
    }
}
/* /Components/Pages/BimData/SmartPdfBomViewer.razor.rz.scp.css */
/* Views flyout: extra vertical room per row (Syncfusion ListBox renders .e-list-item). */
.smart-pdf-views-flyout[b-vcvfpfay7w]  .e-list-parent .e-list-item,
.smart-pdf-views-flyout[b-vcvfpfay7w]  .e-listbox-wrapper .e-list-item {
    padding-top: 8px;
    padding-bottom: 8px;
    line-height: 1.35;
}

/* Item Details dialog — documents column */
.item-details-docs-shell[b-vcvfpfay7w] {
    min-height: 280px;
    background: var(--bomsync-elevated-surface, var(--bs-body-bg, #fff));
    border-color: var(--bomsync-border-strong, var(--bs-border-color, #dee2e6)) !important;
}

.item-details-docs-panel[b-vcvfpfay7w] {
    max-height: 420px;
    overflow-y: auto;
}

.item-details-doc-row:last-child[b-vcvfpfay7w] {
    border-bottom: none !important;
}

/* Right-side BOM AI panel (non-modal; keep PDF/grid interactive). */
.smart-pdf-ai-sidebar[b-vcvfpfay7w]  .e-sidebar {
    background: var(--bomsync-elevated-surface, var(--bs-body-bg, #fff));
    border-left: 1px solid var(--bomsync-border-strong, var(--bs-border-color, #dee2e6));
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.14);
}

.smart-pdf-ai-panel[b-vcvfpfay7w] {
    min-height: 100%;
    font-size: 0.95rem;
}

.smart-pdf-ai-answer[b-vcvfpfay7w] {
    overflow-y: auto;
    min-height: 200px;
    font-size: 0.98rem;
    line-height: 1.45;
}

.smart-pdf-ai-panel[b-vcvfpfay7w]  textarea,
.smart-pdf-ai-panel[b-vcvfpfay7w]  .e-textbox {
    font-size: 0.95rem;
}

/* QA checklist flyout: keep context visible while reviewing checklist status. */
.smart-pdf-qa-sidebar[b-vcvfpfay7w]  .e-sidebar {
    background: var(--bomsync-elevated-surface, var(--bs-body-bg, #fff));
    border-left: 1px solid var(--bomsync-border-strong, var(--bs-border-color, #dee2e6));
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.14);
}

.smart-pdf-qa-panel[b-vcvfpfay7w] {
    min-height: 100%;
}

.smart-pdf-qa-content[b-vcvfpfay7w] {
    flex: 1 1 auto;
    min-height: 360px;
    overflow-y: auto;
}

/* Sheet details dialog visual refresh */
.sheet-details-dialog[b-vcvfpfay7w] {
    color: var(--bomsync-text-primary, var(--bs-body-color, #1a1f2b));
}

.sheet-details-section[b-vcvfpfay7w] {
    background: var(--bomsync-elevated-surface, var(--bs-body-bg, #fff));
    border: 1px solid var(--bomsync-border-strong, var(--bs-border-color, #d6dce6));
    border-radius: 10px;
    padding: 10px 12px;
    box-shadow: 0 1px 6px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.08);
}

.sheet-details-section-title[b-vcvfpfay7w] {
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: var(--bomsync-text-muted, #5d687d);
    margin-bottom: 8px;
}

.sheet-details-grid dt[b-vcvfpfay7w] {
    font-weight: 600;
    color: var(--bomsync-text-secondary, #263042);
    margin-bottom: 4px;
}

.sheet-details-grid dd[b-vcvfpfay7w] {
    margin-bottom: 4px;
    color: var(--bomsync-text-primary, var(--bs-body-color, #1a1f2b));
}

/* View versions dialog polish */
.view-versions-dialog[b-vcvfpfay7w]  .e-dlg-header-content {
    border-bottom: 1px solid var(--bomsync-border-strong, var(--bs-border-color, #d6dce6));
    padding: 14px 16px;
}

.view-versions-dialog[b-vcvfpfay7w]  .e-dlg-content {
    padding: 14px 16px 16px;
}

.view-versions-dialog[b-vcvfpfay7w]  .e-dlg-closeicon-btn {
    border: 1px solid var(--bomsync-border-strong, var(--bs-border-color, #d6dce6));
    border-radius: 8px;
    background: var(--bomsync-elevated-surface, #fff);
}

.view-version-list[b-vcvfpfay7w] {
    max-height: 250px;
    overflow-y: auto;
}

.view-version-row[b-vcvfpfay7w] {
    border: 1px solid var(--bomsync-border-strong, var(--bs-border-color, #d6dce6));
    border-radius: 8px;
    padding: 8px 10px;
    background: var(--bomsync-elevated-surface, var(--bs-body-bg, #fff));
}

.view-version-row + .view-version-row[b-vcvfpfay7w] {
    margin-top: 8px;
}

/* /Components/Pages/Cnc/CncDrawingCanvas.razor.rz.scp.css */
.cnc-svg-host.cnc-pan-grab[b-nervthozsd] {
    cursor: grab;
}

.cnc-svg-host.cnc-pan-grabbing[b-nervthozsd] {
    cursor: grabbing;
}

.cnc-svg-host[b-nervthozsd] {
    touch-action: none;
    user-select: none;
}

.cnc-hmi-toolbar[b-nervthozsd]  .e-btn {
    min-height: 44px;
}

@media (min-width: 576px) {
    .cnc-selection-legend-col[b-nervthozsd] {
        border-left: 1px solid var(--bomsync-border-strong, #dee2e6);
    }
}
/* /Components/Pages/Cnc/CncFileChecker.razor.rz.scp.css */
.cnc-checker-context-toolbar[b-z0up4j8v1g] {
    display: grid;
    grid-template-columns: minmax(200px, 280px) auto minmax(0, 1fr);
    gap: 1rem 1.25rem;
    align-items: center;
    padding: 0.75rem 1rem;
    margin-bottom: 0.35rem;
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 0.75rem;
    background: var(--bomsync-elevated-surface);
    box-shadow: var(--bomsync-shadow-sm);
}

.cnc-checker-context-toolbar__label[b-z0up4j8v1g] {
    font-size: 0.72rem;
    font-weight: 650;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--bomsync-text-secondary);
    margin-bottom: 0.2rem;
}

.cnc-checker-context-toolbar__headline[b-z0up4j8v1g] {
    font-size: 1rem;
    line-height: 1.45;
    font-weight: 600;
    color: var(--bomsync-text-primary);
    word-break: break-word;
}

.cnc-checker-context-toolbar__hint[b-z0up4j8v1g] {
    font-size: 0.8125rem;
}

.cnc-checker-context-toolbar__scan[b-z0up4j8v1g] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.cnc-checker-context-toolbar__actions[b-z0up4j8v1g] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.35rem;
    min-width: 0;
}

.cnc-checker-context-toolbar__file[b-z0up4j8v1g] {
    font-size: 0.9375rem;
}

.cnc-checker-context-divider[b-z0up4j8v1g] {
    border: 0;
    border-top: 1px dashed var(--bomsync-border-strong);
    margin: 0.65rem 0 1rem;
}

.cnc-checker-toolbar-scan-preview[b-z0up4j8v1g] {
    max-width: 220px;
}

@media (min-width: 992px) {
    .cnc-checker-context-toolbar__actions[b-z0up4j8v1g] {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-end;
        width: 100%;
        align-self: center;
    }

    .cnc-checker-context-toolbar__file[b-z0up4j8v1g] {
        margin-left: auto;
        max-width: min(420px, 40vw);
    }
}

@media (max-width: 991px) {
    .cnc-checker-context-toolbar[b-z0up4j8v1g] {
        grid-template-columns: 1fr;
    }

    .cnc-checker-context-toolbar__scan[b-z0up4j8v1g] {
        justify-content: flex-start;
    }

    .cnc-checker-context-toolbar__actions[b-z0up4j8v1g] {
        width: 100%;
    }
}
/* /Components/Pages/Comm/EmailComposer.razor.rz.scp.css */
/* Email composer and RichTextEditor overrides */
[b-a3swzf021u] .e-rte-fontcolor-dropdown .e-colorpicker-wrapper .e-container.e-color-palette,
[b-a3swzf021u] .e-rte-backgroundcolor-dropdown .e-colorpicker-wrapper .e-container.e-color-palette {
    width: auto !important;
}

[b-a3swzf021u] .e-richtexteditor .e-rte-content .e-content ol {
    list-style: auto;
    margin-left: 24px;
}

[b-a3swzf021u] .e-richtexteditor .e-rte-content .e-content ul {
    list-style: disc;
    margin-left: 24px;
}

.email-composer-section .form-label[b-a3swzf021u] {
    font-size: 0.875rem;
}
/* /Components/Pages/Configurator/ItemConfigurationWizard.razor.rz.scp.css */
/* Item configurator — mobile-style chips; uses BOMSync theme tokens (bomsync-theme.css). */

.config-wizard-layout[b-ipp7p5is8o] {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    gap: 0;
    min-height: 320px;
}

.config-wizard-jump[b-ipp7p5is8o] {
    position: sticky;
    top: 0.5rem;
    align-self: flex-start;
    padding: 12px 16px 12px 0;
    border-right: 1px solid var(--bomsync-border);
    max-height: 70vh;
    overflow-y: auto;
}

.config-wizard-jump a[b-ipp7p5is8o] {
    display: block;
    padding: 6px 8px;
    margin-bottom: 4px;
    border-radius: 6px;
    font-size: 0.875rem;
    color: var(--bomsync-text-secondary);
    text-decoration: none;
}

.config-wizard-jump a:hover[b-ipp7p5is8o] {
    background: var(--bomsync-brand-subtle);
    color: var(--bomsync-text);
}

.config-wizard-main[b-ipp7p5is8o] {
    flex: 1;
    min-width: 0;
    padding: 8px 0 16px 0;
}

@media (min-width: 1200px) {
    .config-wizard-main[b-ipp7p5is8o] {
        padding-left: 16px;
    }
}

.config-wizard-product-row[b-ipp7p5is8o] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
}

.config-wizard-product-thumb[b-ipp7p5is8o] {
    width: 48px;
    height: 48px;
    min-width: 48px;
    border-radius: 8px;
    border: 1px solid var(--bomsync-border);
    background: var(--bomsync-elevated-surface);
    object-fit: cover;
}

.config-wizard-product-thumb--placeholder[b-ipp7p5is8o] {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.65rem;
    color: var(--bomsync-text-muted);
    text-align: center;
    line-height: 1.2;
    padding: 4px;
}

.config-category[b-ipp7p5is8o] {
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--bomsync-border);
}

.config-category:last-of-type[b-ipp7p5is8o] {
    border-bottom: none;
}

.config-category-title[b-ipp7p5is8o] {
    font-weight: 600;
    font-size: 1rem;
    color: var(--bomsync-text);
    margin-bottom: 10px;
}

.config-chip-row[b-ipp7p5is8o] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

.config-chip-row--scroll[b-ipp7p5is8o] {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 4px;
    -webkit-overflow-scrolling: touch;
}

.config-chip[b-ipp7p5is8o] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 40px;
    padding: 8px 14px;
    border-radius: 8px;
    border: 1px solid var(--bomsync-border-strong);
    background: var(--bomsync-elevated-surface);
    color: var(--bomsync-text);
    font-size: 0.9375rem;
    cursor: pointer;
    box-shadow: var(--bomsync-shadow-sm);
    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.config-chip:hover:not(:disabled)[b-ipp7p5is8o] {
    border-color: var(--btn-primary-bg);
    background: var(--bomsync-brand-subtle);
}

.config-chip:disabled[b-ipp7p5is8o] {
    opacity: 0.65;
    cursor: not-allowed;
}

.config-chip-selected[b-ipp7p5is8o] {
    border-color: var(--btn-primary-bg);
    background: var(--btn-primary-bg);
    color: #fff;
    box-shadow: var(--bomsync-shadow-md);
}

.config-chip-selected:hover:not(:disabled)[b-ipp7p5is8o] {
    background: var(--btn-primary-bg);
    color: #fff;
}

.config-chip-thumb[b-ipp7p5is8o] {
    width: 28px;
    height: 28px;
    border-radius: 4px;
    object-fit: cover;
    flex-shrink: 0;
}

.config-chip-price[b-ipp7p5is8o] {
    font-size: 0.7rem;
    opacity: 0.9;
    font-weight: 500;
}

.config-see-all[b-ipp7p5is8o] {
    font-size: 0.875rem;
    padding: 4px 8px;
    white-space: nowrap;
}

.config-preview-card[b-ipp7p5is8o] {
    margin-top: 20px;
    margin-bottom: 8px;
    padding: 14px 16px;
    border-radius: 10px;
    border: 1px solid var(--bomsync-border-strong);
    background: var(--bomsync-elevated-surface);
    box-shadow: var(--bomsync-shadow-sm);
}

.config-preview-line[b-ipp7p5is8o] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--bomsync-text);
    line-height: 1.4;
}

.config-preview-detail[b-ipp7p5is8o] {
    margin-top: 10px;
    font-size: 0.875rem;
    color: var(--bomsync-text-secondary);
}

.config-preview-detail div[b-ipp7p5is8o] {
    margin-bottom: 4px;
}

/* Syncfusion SfTextBox multiline (reason dialog) */
.multiline-textbox textarea[b-ipp7p5is8o] {
    min-height: 80px !important;
}
/* /Components/Pages/Dashboards/DashboardContacts.razor.rz.scp.css */
.contacts-dashboard .contacts-kpi-card[b-6jwkbuhlro] {
    cursor: pointer;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.contacts-dashboard .contacts-kpi-card:hover[b-6jwkbuhlro] {
    box-shadow: 0 4px 12px rgb(var(--bomsync-shadow-rgb) / 0.12);
    transform: translateY(-2px);
}

.contacts-dashboard .kpi-dot[b-6jwkbuhlro] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    flex-shrink: 0;
}
/* /Components/Pages/Documents/QaChecklistBuilder.razor.rz.scp.css */
/* Stronger contrast for primary-style back navigation (Syncfusion e-primary + theme tokens). */
[b-fiau8kakaf] .qa-builder-back-context.e-btn {
    background-color: var(--brand-blue, #1e3a5f) !important;
    border-color: var(--brand-blue, #1e3a5f) !important;
    color: var(--bomsync-on-dark-text, #f0f4fa) !important;
    font-weight: 600;
}

[b-fiau8kakaf] .qa-builder-back-context.e-btn:hover,
[b-fiau8kakaf] .qa-builder-back-context.e-btn:focus {
    background-color: color-mix(in srgb, var(--brand-blue, #1e3a5f) 88%, white) !important;
    border-color: color-mix(in srgb, var(--brand-blue, #1e3a5f) 88%, white) !important;
    color: var(--bomsync-on-dark-text, #f0f4fa) !important;
}

/* Stage header: keep Order, Name, and Stage code on one baseline */
.qa-builder-stage-toolbar[b-fiau8kakaf] {
    align-items: flex-end;
}

.qa-builder-stage-field--code[b-fiau8kakaf] {
    max-width: 100%;
}

@media (min-width: 992px) {
    .qa-builder-stage-field--grow[b-fiau8kakaf] {
        flex: 1 1 auto;
        min-width: 200px;
    }
}

/* Steps table column sizing */
.qa-builder-col-order[b-fiau8kakaf] {
    width: 110px;
    vertical-align: middle;
}

.qa-builder-col-name[b-fiau8kakaf] {
    min-width: 200px;
    vertical-align: middle;
}

.qa-builder-col-code[b-fiau8kakaf] {
    min-width: 360px;
    vertical-align: middle;
}

.qa-builder-footnote[b-fiau8kakaf] {
    font-size: 0.95rem;
    line-height: 1.55;
    max-width: 72rem;
    color: var(--bomsync-text-secondary, #475569) !important;
}

.qa-builder-code-hint[b-fiau8kakaf] {
    font-size: 0.82rem;
    max-width: 420px;
}
/* /Components/Pages/Extension/ExtensionLibraryHub.razor.rz.scp.css */
.bomsync-extension-faq summary[b-osqwmdmked] {
    cursor: pointer;
    list-style: none;
}

.bomsync-extension-faq summary[b-osqwmdmked]::-webkit-details-marker {
    display: none;
}

.bomsync-extension-faq[open][b-osqwmdmked] {
    background-color: var(--bomsync-elevated-surface, rgba(17, 27, 44, 0.04));
}
/* /Components/Pages/Finance/FinanceBillingCenter.razor.rz.scp.css */
.section-card[b-cmf1bk9ala] {
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 10px;
    padding: 12px;
    background: var(--bomsync-elevated-surface);
    box-shadow: var(--bomsync-shadow-md);
}

.section-title[b-cmf1bk9ala] {
    margin-bottom: 10px;
    color: var(--bomsync-text-secondary);
    text-transform: uppercase;
    letter-spacing: .02em;
    font-size: .82rem;
}

.coach-card[b-cmf1bk9ala] {
    background: #eef6ff;
    border: 1px solid #cfe2ff;
    border-radius: 10px;
    padding: 10px 12px;
}

.step-chip[b-cmf1bk9ala] {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 6px;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    color: #0b5ed7;
    background: #dbeafe;
    border: 1px solid #bfd7ff;
    vertical-align: middle;
}

.hint-icon[b-cmf1bk9ala] {
    cursor: help;
    color: #0b5ed7;
    font-size: .8rem;
    margin-left: 4px;
}

.cc-kpi[b-cmf1bk9ala] {
    background: var(--bomsync-elevated-surface);
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 10px;
    padding: 10px 12px;
    min-height: 86px;
    box-shadow: var(--bomsync-shadow-md);
}

.cc-kpi-label[b-cmf1bk9ala] {
    font-size: .78rem;
    color: var(--bomsync-text-secondary);
    margin-bottom: 4px;
}

.cc-kpi-value[b-cmf1bk9ala] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--bomsync-text);
}
/* /Components/Pages/Finance/FinanceBillingProject.razor.rz.scp.css */
.section-card[b-reqkivchnl] {
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 10px;
    padding: 12px;
    background: var(--bomsync-elevated-surface);
    box-shadow: var(--bomsync-shadow-md);
}

/* Scoped: overrides global layout.css cornflowerblue .section-title on this page only */
.section-title[b-reqkivchnl] {
    margin: -12px -12px 12px -12px;
    padding: 0.65rem 1rem;
    background: var(--brand-blue);
    color: var(--bomsync-on-dark-text);
    border-radius: 10px 10px 0 0;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: none;
}

.finance-billing-project-footer-nav[b-reqkivchnl] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding-top: 0.75rem;
    margin-top: 0.5rem;
    border-top: 1px solid var(--bomsync-border-subtle, #e2e8f0);
}

.finance-billing-project-footer-link[b-reqkivchnl] {
    color: var(--brand-blue);
    text-decoration: none;
    font-weight: 500;
    font-size: 1rem;
}

.finance-billing-project-footer-link:hover[b-reqkivchnl] {
    color: var(--bomsync-text-primary);
    text-decoration: underline;
}

.finance-billing-project-footer-link:focus-visible[b-reqkivchnl] {
    outline: 2px solid var(--brand-blue);
    outline-offset: 2px;
    border-radius: 2px;
}

.finance-billing-project-footer-link:not(:last-child)[b-reqkivchnl]::after {
    content: "·";
    margin-left: 0.5rem;
    margin-right: 0.5rem;
    color: var(--bomsync-text-muted);
    font-weight: 400;
    text-decoration: none;
    pointer-events: none;
}
/* /Components/Pages/Finance/FinanceBillingSaas.razor.rz.scp.css */
/* Refund tab: Reason code stacks label above dropdown; dropdown fills grid column width. */
.billing-refund-reason-stack[b-1kvcb7j0rv]  .e-input-group.e-control-wrapper.e-ddl {
    width: 100%;
}

.billing-refund-reason-stack[b-1kvcb7j0rv]  .billing-refund-reason-ddl.e-control-wrapper.e-ddl {
    width: 100%;
}
/* /Components/Pages/Finance/FinanceBillingVendor.razor.rz.scp.css */
/* Mirrors FinanceBillingCenter KPI + section chrome (scoped CSS on that page hid these from /billing/vendors). */
.section-card[b-aromzxw07k] {
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 10px;
    padding: 12px;
    background: var(--bomsync-elevated-surface);
    box-shadow: var(--bomsync-shadow-md);
}

.section-title[b-aromzxw07k] {
    margin-bottom: 10px;
    color: var(--bomsync-text-secondary);
    text-transform: uppercase;
    letter-spacing: .02em;
    font-size: .82rem;
}

.cc-kpi[b-aromzxw07k] {
    background: var(--bomsync-elevated-surface);
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 10px;
    padding: 10px 12px;
    min-height: 86px;
    box-shadow: var(--bomsync-shadow-md);
}

.cc-kpi-label[b-aromzxw07k] {
    font-size: .78rem;
    color: var(--bomsync-text-secondary);
    margin-bottom: 4px;
}

.cc-kpi-value[b-aromzxw07k] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--bomsync-text);
}
/* /Components/Pages/Items/ItemFileManagerComponent.razor.rz.scp.css */
/* ItemFileManagerComponent — page header and item selector empty state */

/* ── Page header row ───────────────────────────────────────────────── */
.ifm-page-header-row[b-1r3hxlg60s] {
    padding-bottom: 0;
}

/* ── Item selector empty-state card ─────────────────────────────────── */
.ifm-item-sel-empty[b-1r3hxlg60s] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    background: var(--bomsync-elevated-surface);
    border: 1px solid var(--bomsync-border-strong);
    border-left: 4px solid var(--domain-items-accent, #2F6690);
    border-radius: 12px;
    padding: 20px 24px;
    box-shadow: var(--bomsync-shadow-sm);
    max-width: 760px;
}

.ifm-item-sel-empty__icon-wrap[b-1r3hxlg60s] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: var(--domain-items-light, #DBEAFE);
    color: var(--domain-items-accent, #2F6690);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    flex-shrink: 0;
    margin-top: 2px;
}

.ifm-item-sel-empty__body[b-1r3hxlg60s] {
    flex: 1;
    min-width: 0;
}

.ifm-item-sel-empty__lead[b-1r3hxlg60s] {
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--bomsync-text);
    margin: 0 0 10px 0;
    line-height: 1.5;
}

/* ── Responsive ──────────────────────────────────────────────────────── */
@media (max-width: 600px) {
    .ifm-item-sel-empty[b-1r3hxlg60s] {
        flex-direction: column;
        gap: 12px;
    }
    .ifm-item-sel-empty__icon-wrap[b-1r3hxlg60s] {
        width: 36px;
        height: 36px;
        font-size: 1.1rem;
    }
}
/* /Components/Pages/Items/ItemFileManagerWorkspace.razor.rz.scp.css */
/* Standalone file-manager + preview split (no SfSidebar) */
.item-fm-standalone-minh[b-v1i26xjw50] {
    min-height: calc(100vh - 140px);
}

.item-fm-push-minh[b-v1i26xjw50] {
    min-height: 0;
}

.item-fm-split-target.item-fm-target-expanded[b-v1i26xjw50] {
    flex: 1 1 auto;
    min-width: 280px;
    min-height: 0;
}

.item-fm-split-target.item-fm-target-collapsed[b-v1i26xjw50] {
    flex: 0 0 48px;
    min-width: 48px;
    max-width: 48px;
}

.item-fm-collapse-strip[b-v1i26xjw50] {
    display: none;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    width: 48px;
    min-width: 48px;
    padding: 10px 4px 10px;
    box-sizing: border-box;
    background: var(--bomsync-elevated-surface, #f4f6f9);
    border-right: 1px solid var(--bomsync-border-strong, #c5cdd8);
}

.item-fm-collapse-label[b-v1i26xjw50] {
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    letter-spacing: 0.06em;
    user-select: none;
}

.item-fm-split-target.item-fm-target-collapsed .item-fm-collapse-strip[b-v1i26xjw50] {
    display: flex;
    /* Clear the FileManager toolbar row (~48px) so expand is not over Delete after reopen */
    padding: 52px 4px 12px;
}

.item-fm-split-target.item-fm-target-collapsed .item-fm-main-inner[b-v1i26xjw50] {
    display: none !important;
}

.item-fm-collapse-expand-btn[b-v1i26xjw50] {
    min-width: 36px;
    width: 36px;
}

.item-fm-splitter[b-v1i26xjw50] {
    flex: 0 0 6px;
    width: 6px;
    min-width: 6px;
    padding: 0;
    margin: 0;
    border: none;
    cursor: col-resize;
    background: var(--bomsync-border-strong, #c5cdd8);
    align-self: stretch;
}

.item-fm-splitter:hover[b-v1i26xjw50],
.item-fm-splitter:focus-visible[b-v1i26xjw50] {
    background: var(--brand-blue, #1a365d);
    outline: none;
}

.item-fm-split-overlay[b-v1i26xjw50] {
    position: fixed;
    inset: 0;
    z-index: 12000;
    cursor: col-resize;
    background: transparent;
}
/* /Components/Pages/Items/ItemPricingGrid.razor.rz.scp.css */
/* Item pricing grid: keep header text on one line; column MinWidth in markup supplies width. */
.pricing-item-grid[b-xwxmuhkvur]  .e-headercell,
.pricing-item-grid[b-xwxmuhkvur]  .e-headercelldiv {
    white-space: nowrap;
}

.item-pricing-cost-trend-kpi[b-xwxmuhkvur] {
    border-color: var(--bomsync-border-strong, #dee2e6) !important;
    background: var(--bomsync-elevated-surface, var(--bs-body-bg, #fff)) !important;
}
/* /Components/Pages/Procurement/CommercialBatchNew.razor.rz.scp.css */
/* ── Wizard step tabs ──────────────────────────────────────────────────────── */

.wizard-steps[b-oy63fsox9s] {
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid var(--bomsync-border-strong, #c8d3e0);
}

.wizard-step[b-oy63fsox9s] {
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.01em;
    transition: background 0.15s ease, color 0.15s ease;
    border-right: 1px solid var(--bomsync-border-strong, #c8d3e0);
    user-select: none;
}

    .wizard-step:last-child[b-oy63fsox9s] {
        border-right: none;
    }

.wizard-step--pending[b-oy63fsox9s] {
    background: var(--bomsync-page-bg, #f4f6fa);
    color: var(--bomsync-text-secondary, #5a6a80);
}

.wizard-step--active[b-oy63fsox9s] {
    background: var(--brand-blue, #1a2a44);
    color: var(--bomsync-on-dark-text, #e8eef7);
    font-weight: 600;
}

.wizard-step--done[b-oy63fsox9s] {
    background: var(--bomsync-elevated-surface, #eaf0f8);
    color: var(--brand-blue, #1a2a44);
}

    .wizard-step--done:hover[b-oy63fsox9s] {
        background: #d6e3f0;
    }

.wizard-step__number[b-oy63fsox9s] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    font-size: 0.75rem;
    font-weight: 700;
}

.wizard-step--active .wizard-step__number[b-oy63fsox9s] {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
}

.wizard-step--done .wizard-step__number[b-oy63fsox9s] {
    background: var(--brand-blue, #1a2a44);
    color: #fff;
}

.wizard-step--pending .wizard-step__number[b-oy63fsox9s] {
    background: var(--bomsync-border-strong, #c8d3e0);
    color: var(--bomsync-text-secondary, #5a6a80);
}
/* /Components/Pages/Procurement/CommercialBidComparison.razor.rz.scp.css */
.cbc-page[b-e8ndaf5tfh] {
    padding: 1.25rem;
    max-width: 1600px;
    margin: 0 auto;
}

.cbc-pivot-table th[b-e8ndaf5tfh],
.cbc-pivot-table td[b-e8ndaf5tfh] {
    vertical-align: middle;
    font-size: 0.875rem;
    padding: 0.5rem 0.75rem;
}

.cbc-pivot-table thead th[b-e8ndaf5tfh] {
    white-space: nowrap;
}

/* Sticky first column so descriptions stay visible on horizontal scroll */
.cbc-pivot-table thead th:first-child[b-e8ndaf5tfh],
.cbc-pivot-table tbody td:first-child[b-e8ndaf5tfh],
.cbc-pivot-table tfoot td:first-child[b-e8ndaf5tfh] {
    position: sticky;
    left: 0;
    background: inherit;
    z-index: 1;
}

.cbc-pivot-table tbody tr:hover td[b-e8ndaf5tfh] {
    background-color: var(--bomsync-hover-bg, #f0f4f8);
}
/* /Components/Pages/Procurement/CommercialContractDashboard.razor.rz.scp.css */
/* Commercial contract analytics — scoped summary + hero action alignment */

.commercial-contract-dashboard .cc-dash-hero-actions[b-cc1oz21us9] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    justify-content: flex-end;
}

.commercial-contract-dashboard .cc-dash-hero-actions .bomsync-hub-hero-action-btn:disabled[b-cc1oz21us9] {
    opacity: 0.55;
    cursor: not-allowed;
    transform: none;
    filter: none;
}

.commercial-contract-dashboard .cc-dash-summary-row[b-cc1oz21us9] {
    --cc-dash-panel-border: var(--bomsync-border-strong, #cbd5e1);
    --cc-dash-panel-bg: var(--bomsync-elevated-surface, #fff);
    --cc-dash-panel-shadow: 0 1px 3px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.08);
}

.commercial-contract-dashboard .cc-dash-summary-panel[b-cc1oz21us9] {
    height: 100%;
    min-height: 112px;
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid var(--cc-dash-panel-border);
    background: var(--cc-dash-panel-bg);
    box-shadow: var(--cc-dash-panel-shadow);
    border-top: 3px solid var(--domain-contracts, #415a77);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 6px;
}

.commercial-contract-dashboard .cc-dash-summary-panel--value[b-cc1oz21us9] {
    border-top-color: var(--domain-rfq, #2f6690);
}

.commercial-contract-dashboard .cc-dash-summary-panel--horizon[b-cc1oz21us9] {
    border-top-color: var(--domain-qualification, #2a9d8f);
}

.commercial-contract-dashboard .cc-dash-summary-label[b-cc1oz21us9] {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--bomsync-text-muted, #64748b);
    margin: 0;
}

.commercial-contract-dashboard .cc-dash-summary-value[b-cc1oz21us9] {
    font-size: clamp(1.35rem, 2.5vw, 1.85rem);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: var(--bomsync-text-primary, #1e293b);
    margin: 0;
}

.commercial-contract-dashboard .cc-dash-summary-hint[b-cc1oz21us9] {
    font-size: 0.8rem;
    line-height: 1.45;
    color: var(--bomsync-text-secondary, #475569);
    margin: 0;
}

.commercial-contract-dashboard .cc-dash-horizon-input-wrap[b-cc1oz21us9] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 2px;
}

.commercial-contract-dashboard .cc-dash-horizon-input-wrap[b-cc1oz21us9]  .e-numerictextbox {
    min-width: 112px;
}

.commercial-contract-dashboard .cc-dash-horizon-input-wrap[b-cc1oz21us9]  .e-control.e-numerictextbox .e-input-group {
    min-height: 36px;
}

.commercial-contract-dashboard .cc-dash-doc-btn[b-cc1oz21us9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 5px 12px;
    border-radius: 8px;
    border: 1px solid var(--bomsync-border-strong, #cbd5e1);
    background: var(--bomsync-page-bg, #f8fafc);
    color: var(--bomsync-text-secondary, #475569);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
    white-space: nowrap;
}

.commercial-contract-dashboard .cc-dash-doc-btn:hover[b-cc1oz21us9] {
    background: color-mix(in oklab, var(--brand-blue) 8%, white);
    border-color: var(--brand-blue);
    color: var(--brand-blue);
}
/* /Components/Pages/Procurement/CommercialContracts.razor.rz.scp.css */
/* Tighter hero → grid rhythm on contract register */
.commercial-contracts-page .bomsync-page-stack[b-ixlkg0srv1] {
    gap: 0;
}

.commercial-contracts-page .cc-toolbar-strip[b-ixlkg0srv1] {
    margin-top: 0.25rem;
    margin-bottom: 0.75rem;
}

.commercial-contracts-page .cc-context-line[b-ixlkg0srv1] {
    margin-bottom: 0.5rem;
}

.commercial-contracts-page .cc-readonly-banner[b-ixlkg0srv1] {
    margin-bottom: 0.75rem !important;
}

.commercial-contracts-page .cc-grid-outer[b-ixlkg0srv1] {
    margin-top: 0;
}
/* /Components/Pages/Procurement/CommercialPackageCounterparties.razor.rz.scp.css */
.cpcp-page[b-7bn8pcdcjw] {
    padding: 1rem 1.25rem;
}

/* ── Package brief card ─────────────────────────────────────── */
.cpcp-brief-card[b-7bn8pcdcjw] {
    border: 1px solid var(--bomsync-border-subtle, #dce2ec);
    border-radius: var(--bomsync-radius-md, 6px);
    box-shadow: var(--bomsync-shadow-sm);
}

.cpcp-brief-header[b-7bn8pcdcjw] {
    background: var(--brand-blue, #1b2d5e);
    color: var(--bomsync-on-dark-text, #e8edf5);
    border-radius: var(--bomsync-radius-md, 6px) var(--bomsync-radius-md, 6px) 0 0;
    font-weight: 600;
    font-size: 0.92rem;
    padding: 0.65rem 1rem;
    display: flex;
    align-items: center;
}

.cpcp-brief-label[b-7bn8pcdcjw] {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--bomsync-text-secondary, #4a5580);
    margin-bottom: 2px;
}

.cpcp-brief-value[b-7bn8pcdcjw] {
    font-size: 0.95rem;
    color: var(--bomsync-text-primary, #1b2d5e);
    font-weight: 500;
}

.cpcp-deadline[b-7bn8pcdcjw] {
    color: #b45309;
    font-weight: 700;
}

.cpcp-brief-scope[b-7bn8pcdcjw] {
    font-size: 0.88rem;
    color: var(--bomsync-text-primary, #2d3748);
    line-height: 1.55;
    white-space: pre-line;
}

/* ── Add form card ──────────────────────────────────────────── */
.cpcp-form-card[b-7bn8pcdcjw] {
    border: 1px solid var(--bomsync-border-subtle, #dce2ec);
    border-radius: var(--bomsync-radius-md, 6px);
    box-shadow: var(--bomsync-shadow-sm);
}

.cpcp-form-header[b-7bn8pcdcjw] {
    background: var(--bomsync-page-bg, #f4f6fa);
    border-bottom: 1px solid var(--bomsync-border-subtle, #dce2ec);
    font-weight: 600;
    font-size: 0.92rem;
    color: var(--bomsync-text-primary, #1b2d5e);
    padding: 0.65rem 1rem;
    display: flex;
    align-items: center;
}

/* ── Counterparty rows ──────────────────────────────────────── */
.cpcp-row[b-7bn8pcdcjw] {
    background: var(--bomsync-elevated-surface, #ffffff);
    border: 1px solid var(--bomsync-border-subtle, #dce2ec);
    border-radius: var(--bomsync-radius-md, 6px);
    padding: 1rem 1.1rem;
    transition: box-shadow 0.15s;
}

.cpcp-row--active[b-7bn8pcdcjw] {
    border-color: #3b82f6;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12);
}

.cpcp-row:hover[b-7bn8pcdcjw] {
    box-shadow: var(--bomsync-shadow-sm);
}

.cpcp-row-identity[b-7bn8pcdcjw] {
    min-width: 220px;
}

.cpcp-row-status[b-7bn8pcdcjw] {
    min-width: 120px;
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 4px;
}

.cpcp-row-token[b-7bn8pcdcjw] {
    text-align: right;
    font-size: 0.82rem;
}

.cpcp-row-actions[b-7bn8pcdcjw] {
    border-top: 1px solid var(--bomsync-border-subtle, #dce2ec);
    padding-top: 0.6rem;
    margin-top: 0.5rem;
}

/* ── Status badges ──────────────────────────────────────────── */
.cpcp-status-badge[b-7bn8pcdcjw] {
    display: inline-block;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 0.2em 0.65em;
    border-radius: 10px;
    background: #e0e4ef;
    color: #4a5580;
}

.cpcp-status-pending-invite[b-7bn8pcdcjw] { background: #f0f0f0; color: #6b7280; border: 1px dashed #9ca3af; }
.cpcp-status-invited[b-7bn8pcdcjw]     { background: #dbeafe; color: #1d4ed8; }
.cpcp-status-accepted[b-7bn8pcdcjw]    { background: #d4edda; color: #1a6b2e; }
.cpcp-status-declined[b-7bn8pcdcjw]    { background: #fde8e8; color: #9b1c1c; }
.cpcp-status-under-review[b-7bn8pcdcjw] { background: #fef3c7; color: #78350f; }
.cpcp-status-awarded[b-7bn8pcdcjw]     { background: #d4edda; color: #1a6b2e; }

/* ── Package status chip ────────────────────────────────────── */
.pkg-status-chip[b-7bn8pcdcjw]   { display:inline-block;font-size:0.72rem;font-weight:700;letter-spacing:.03em;padding:.18em .6em;border-radius:10px;text-transform:uppercase; }
.pkg-status-draft[b-7bn8pcdcjw]  { background:#e0e4ef;color:#4a5580; }
.pkg-status-issued[b-7bn8pcdcjw] { background:#d1e7ff;color:#0958d9; }
.pkg-status-review[b-7bn8pcdcjw] { background:#fff3cd;color:#7c5700; }
.pkg-status-awarded[b-7bn8pcdcjw] { background:#d4edda;color:#1a6b2e; }
.pkg-status-closed[b-7bn8pcdcjw] { background:#f0f0f0;color:#6c757d; }

/* ── Empty state ────────────────────────────────────────────── */
.cpcp-empty[b-7bn8pcdcjw] {
    padding: 3rem 1rem;
    text-align: center;
    background: var(--bomsync-elevated-surface, #ffffff);
    border: 1px solid var(--bomsync-border-subtle, #dce2ec);
    border-radius: var(--bomsync-radius-md, 6px);
}

/* ── Dialog section labels ──────────────────────────────────── */
.cpcp-section-label[b-7bn8pcdcjw] {
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--bomsync-text-secondary, #4a5580);
    margin: 0 0 2px;
}

/* ── Brief preview in issue dialog ─────────────────────────── */
.cpcp-brief-preview[b-7bn8pcdcjw] {
    background: var(--bomsync-page-bg, #f4f6fa);
    border: 1px solid var(--bomsync-border-subtle, #dce2ec);
    border-radius: 5px;
    padding: 12px 14px;
    font-size: 0.88rem;
}
/* /Components/Pages/Procurement/CommercialPackageDetail.razor.rz.scp.css */
.pkg-detail-page[b-u1yk2r8ehu] {
    padding: 1rem 1.25rem;
}

/* ── Cards ────────────────────────────────────────────────────── */
.pkg-card[b-u1yk2r8ehu] {
    border: 1px solid var(--bomsync-border-subtle, #dce2ec);
    border-radius: var(--bomsync-radius-md, 6px);
    box-shadow: var(--bomsync-shadow-sm);
    background: var(--bomsync-elevated-surface, #ffffff);
}

.pkg-card-header[b-u1yk2r8ehu] {
    background: var(--bomsync-page-bg, #f4f6fa);
    border-bottom: 1px solid var(--bomsync-border-subtle, #dce2ec);
    font-weight: 600;
    font-size: 0.92rem;
    color: var(--bomsync-text-primary, #1b2d5e);
    padding: 0.65rem 1rem;
    display: flex;
    align-items: center;
}

/* ── Status chip ─────────────────────────────────────────────── */
.pkg-status-chip[b-u1yk2r8ehu] {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    padding: 0.18em 0.6em;
    border-radius: 10px;
    text-transform: uppercase;
}

.pkg-status-draft[b-u1yk2r8ehu]   { background: #e0e4ef; color: #4a5580; }
.pkg-status-issued[b-u1yk2r8ehu]  { background: #d1e7ff; color: #0958d9; }
.pkg-status-review[b-u1yk2r8ehu]  { background: #fff3cd; color: #7c5700; }
.pkg-status-awarded[b-u1yk2r8ehu] { background: #d4edda; color: #1a6b2e; }
.pkg-status-closed[b-u1yk2r8ehu]  { background: #f0f0f0; color: #6c757d; }

/* ── Empty lines state ───────────────────────────────────────── */
.pkg-empty-lines[b-u1yk2r8ehu] {
    padding: 2.5rem 1rem;
    text-align: center;
}

/* ── Lines grid ──────────────────────────────────────────────── */
.pkg-lines-outer[b-u1yk2r8ehu] {
    border-radius: 0 0 var(--bomsync-radius-md, 6px) var(--bomsync-radius-md, 6px);
    overflow: hidden;
}
/* /Components/Pages/Procurement/CommercialPackages.razor.rz.scp.css */
.commercial-packages-page[b-b9b9arbdd9] {
    padding: 1rem 1.25rem;
}

.pkg-grid-outer[b-b9b9arbdd9] {
    border-radius: var(--bomsync-radius-md, 6px);
    overflow: hidden;
    border: 1px solid var(--bomsync-border-subtle, #dce2ec);
    box-shadow: var(--bomsync-shadow-sm);
}

/* Direction badges */
.badge.bg-primary[b-b9b9arbdd9] {
    background-color: var(--brand-blue, #1b2d5e) !important;
    font-size: 0.78rem;
    font-weight: 600;
}

.badge.bg-success[b-b9b9arbdd9] {
    font-size: 0.78rem;
    font-weight: 600;
}
/* /Components/Pages/Procurement/CommercialWorkspace.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════════════
   Commercial Workspace — high-impact procurement command center
   Design language: bold enterprise AEC (Procore / ACC / BIMSync register feel)
   Scoped to .cwp-* tokens.  All colours via --bomsync-* / --brand-blue tokens.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Page shell ────────────────────────────────────────────────────────────── */
.cwp[b-v2qf7abw5q] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* ── HERO HEADER ───────────────────────────────────────────────────────────── */
.cwp-hero[b-v2qf7abw5q] {
    background:
        radial-gradient(900px 450px at 5% -10%, var(--bsx-action, #2F6690), transparent 55%),
        radial-gradient(900px 450px at 85%  10%, var(--bsx-option, #415A77), transparent 55%),
        var(--brand-blue, #111B2C);
    border-radius: 16px;
    padding: 0;
    overflow: hidden;
    position: relative;
    margin-bottom: 10px;
    box-shadow:
        0 4px 24px rgb(17 27 44 / 0.28),
        0 1px 0 rgb(255 255 255 / 0.04) inset;
}

/* Subtle grid overlay for depth */
.cwp-hero[b-v2qf7abw5q]::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(106 215 255 / 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(106 215 255 / 0.04) 1px, transparent 1px);
    background-size: 40px 40px;
    pointer-events: none;
}

/* Warm amber accent glow — top-right */
.cwp-hero[b-v2qf7abw5q]::after {
    content: '';
    position: absolute;
    top: -40px; right: -40px;
    width: 320px; height: 320px;
    background: radial-gradient(circle at center, rgba(47 100 144 / 0.35) 0%, transparent 65%);
    pointer-events: none;
}

.cwp-hero-inner[b-v2qf7abw5q] {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
    padding: 24px 28px;
    /* Keep hero actions + info from hugging the viewport edge */
    padding-inline-end: clamp(28px, 5vw, 88px);
}

.cwp-hero-left[b-v2qf7abw5q] { flex: 1 1 280px; }

.cwp-hero-eyebrow[b-v2qf7abw5q] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #6ad7ff;
    margin-bottom: 6px;
}

.cwp-hero-context-pill[b-v2qf7abw5q] {
    background: rgba(106 215 255 / 0.14);
    border: 1px solid rgba(106 215 255 / 0.28);
    border-radius: 999px;
    padding: 2px 10px;
    color: #a8d8f0;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.05em;
}

.cwp-hero-title[b-v2qf7abw5q] {
    font-size: clamp(1.6rem, 4vw, 2.2rem);
    font-weight: 800;
    color: #e8edf5;
    line-height: 1.1;
    letter-spacing: -0.02em;
    margin: 0 0 6px 0;
}

.cwp-hero-sub[b-v2qf7abw5q] {
    font-size: 0.9rem;
    color: rgba(232 237 245 / 0.6);
    letter-spacing: 0.04em;
    margin: 0;
}

.cwp-hero-actions-col[b-v2qf7abw5q] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
    flex-shrink: 0;
}

.cwp-hero-viewer-note[b-v2qf7abw5q] {
    font-size: 0.78rem;
    line-height: 1.45;
    color: rgba(232 237 245 / 0.72);
    max-width: 280px;
    text-align: right;
}

/* Role pills on dark hero — readable on navy chrome */
.cwp-hero .cwp-role-pill[b-v2qf7abw5q] {
    font-size: 0.68rem;
    padding: 4px 12px;
}

.cwp-hero .cwp-role-pill i[b-v2qf7abw5q] {
    margin-right: 6px;
}

.cwp-hero .cwp-role-pill--admin[b-v2qf7abw5q] {
    background: rgba(106 215 255 / 0.18);
    border-color: rgba(106 215 255 / 0.38);
    color: #c8ecff;
}

.cwp-hero .cwp-role-pill--manager[b-v2qf7abw5q] {
    background: rgba(255 255 255 / 0.12);
    border-color: rgba(255 255 255 / 0.24);
    color: #e8edf5;
}

.cwp-hero .cwp-role-pill--viewer[b-v2qf7abw5q] {
    background: rgba(255 255 255 / 0.08);
    border-color: rgba(255 255 255 / 0.18);
    color: rgba(232 237 245 / 0.88);
}

.cwp-hero-actions[b-v2qf7abw5q] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    justify-content: flex-end;
    flex-shrink: 0;
}

/* CTA buttons in hero */
.cwp-cta[b-v2qf7abw5q] {
    border: none;
    border-radius: 10px;
    padding: 9px 18px;
    font-size: 0.88rem;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: filter 0.15s, transform 0.1s;
    white-space: nowrap;
}

.cwp-cta:hover[b-v2qf7abw5q] { filter: brightness(1.1); transform: translateY(-1px); }
.cwp-cta:active[b-v2qf7abw5q] { transform: translateY(0); }

.cwp-cta--primary[b-v2qf7abw5q] {
    background: linear-gradient(135deg, #2f6690, #1e4e78);
    color: #fff;
    box-shadow: 0 2px 8px rgb(47 102 144 / 0.45);
}

.cwp-cta--secondary[b-v2qf7abw5q] {
    background: rgba(255 255 255 / 0.1);
    border: 1px solid rgba(255 255 255 / 0.22);
    color: #e8edf5;
    backdrop-filter: blur(6px);
}

.cwp-cta--ghost[b-v2qf7abw5q] {
    background: rgba(255 255 255 / 0.06);
    border: 1px solid rgba(255 255 255 / 0.14);
    color: rgba(232 237 245 / 0.75);
}

.cwp-cta--icon[b-v2qf7abw5q] {
    background: transparent;
    border: 1px solid rgba(255 255 255 / 0.18);
    color: rgba(232 237 245 / 0.6);
    padding: 9px 12px;
    border-radius: 10px;
}

.cwp-breadcrumbs .e-btn.e-flat[b-v2qf7abw5q] {
    color: var(--bomsync-text-secondary);
    font-weight: 500;
}

/* ── LOADING STATE ──────────────────────────────────────────────────────────── */
.cwp-loading[b-v2qf7abw5q] {
    min-height: 260px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 14px;
    background: var(--bomsync-elevated-surface);
}

.cwp-role-pill[b-v2qf7abw5q] {
    display: inline-flex;
    align-items: center;
    padding: 5px 14px;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    border: 1px solid transparent;
}

.cwp-role-pill--admin[b-v2qf7abw5q] {
    background: color-mix(in oklab, var(--brand-blue) 16%, white);
    border-color: color-mix(in oklab, var(--brand-blue) 35%, white);
    color: var(--brand-blue);
}

.cwp-role-pill--manager[b-v2qf7abw5q] {
    background: color-mix(in oklab, #2f6690 12%, white);
    border-color: color-mix(in oklab, #2f6690 28%, white);
    color: #1e4e78;
}

.cwp-role-pill--viewer[b-v2qf7abw5q] {
    background: var(--bomsync-brand-subtle);
    border-color: var(--bomsync-border-strong);
    color: var(--bomsync-text-secondary);
}

/* ── KPI METRICS BAR (legacy; counts now live in cards as .cwp-card-kpi-strip) ─ */
.cwp-metrics-bar[b-v2qf7abw5q] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 14px;
}

/* ── INLINE KPI CHIPS (inside workspace cards — compact, no full-width empty row) ─ */
.cwp-card-kpi-strip[b-v2qf7abw5q] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 4px 0 10px 0;
}

.cwp-card-kpi-loading[b-v2qf7abw5q] {
    margin: 2px 0 10px 0;
    min-height: 36px;
    display: flex;
    align-items: center;
}

.cwp-kpi-chip[b-v2qf7abw5q] {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 6px;
    flex-wrap: nowrap;
    padding: 6px 12px;
    border-radius: 999px;
    background: var(--bomsync-brand-subtle);
    border: 1px solid var(--bomsync-border-strong);
    color: inherit;
    font: inherit;
    box-sizing: border-box;
    transition: background 0.12s, border-color 0.12s, transform 0.1s, box-shadow 0.12s;
}

button.cwp-kpi-chip[b-v2qf7abw5q] {
    cursor: pointer;
    text-align: left;
}

button.cwp-kpi-chip:hover[b-v2qf7abw5q] {
    background: color-mix(in oklab, var(--brand-blue) 8%, white);
    border-color: var(--brand-blue);
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.12);
}

.cwp-kpi-chip-num[b-v2qf7abw5q] {
    font-size: 1.12rem;
    font-weight: 800;
    line-height: 1;
    color: var(--brand-blue);
    letter-spacing: -0.02em;
}

.cwp-kpi-chip-lbl[b-v2qf7abw5q] {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--bomsync-text-secondary);
}

.cwp-kpi-chip-sub[b-v2qf7abw5q] {
    font-size: 0.62rem;
    font-weight: 600;
    color: var(--bomsync-text-muted);
    letter-spacing: 0.02em;
}

.cwp-kpi-chip--contracts .cwp-kpi-chip-num[b-v2qf7abw5q] {
    color: var(--domain-contracts);
}

.cwp-card-scope-inline[b-v2qf7abw5q] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 0 0 8px 0;
}

.cwp-card-scope-label[b-v2qf7abw5q] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--bomsync-text-muted);
}

.cwp-card-kpi-empty[b-v2qf7abw5q] {
    font-size: 0.82rem;
    color: var(--bomsync-text-muted);
    margin: 4px 0 8px 0;
    line-height: 1.45;
}

/* Reuse GetPackageStatusCssClass() keys — left accent on pills */
.cwp-kpi-chip.cwp-metric-tile--status-draft[b-v2qf7abw5q] { border-left: 3px solid var(--bomsync-text-muted); }
.cwp-kpi-chip.cwp-metric-tile--status-open[b-v2qf7abw5q] { border-left: 3px solid var(--domain-rfq); }
.cwp-kpi-chip.cwp-metric-tile--status-bid[b-v2qf7abw5q] { border-left: 3px solid var(--domain-comms); }
.cwp-kpi-chip.cwp-metric-tile--status-award[b-v2qf7abw5q] { border-left: 3px solid var(--domain-qualification); }
.cwp-kpi-chip.cwp-metric-tile--status-closed[b-v2qf7abw5q] { border-left: 3px solid var(--bomsync-text-secondary); }
.cwp-kpi-chip.cwp-metric-tile--status-cancelled[b-v2qf7abw5q] { border-left: 3px solid var(--domain-billing); }
.cwp-kpi-chip.cwp-metric-tile--status-default[b-v2qf7abw5q] { border-left: 3px solid var(--bomsync-border-strong); }

.cwp-kpi-chip--contracts[b-v2qf7abw5q] {
    border-left: 3px solid var(--domain-contracts);
}

.cwp-metric-tile[b-v2qf7abw5q] {
    flex: 1 1 100px;
    min-width: 90px;
    max-width: 200px;
    background: var(--bomsync-elevated-surface);
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 14px;
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    box-shadow: var(--bomsync-shadow-sm);
    transition: box-shadow 0.15s, transform 0.12s, border-color 0.15s;
    border: none;
    cursor: default;
}

button.cwp-metric-tile[b-v2qf7abw5q] {
    cursor: pointer;
}

button.cwp-metric-tile:hover[b-v2qf7abw5q] {
    transform: translateY(-3px);
    box-shadow: var(--bomsync-shadow-md);
    border-color: var(--brand-blue) !important;
}

.cwp-metric-num[b-v2qf7abw5q] {
    font-size: 2rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.03em;
    color: var(--brand-blue);
}

.cwp-metric-label[b-v2qf7abw5q] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--bomsync-text-secondary);
    margin-top: 4px;
}

.cwp-metric-sub[b-v2qf7abw5q] {
    font-size: 0.7rem;
    color: var(--bomsync-text-muted);
    margin-top: 2px;
}

/* Status-coloured metric tiles */
.cwp-metric-tile--status-draft[b-v2qf7abw5q]     { border-top: 3px solid var(--bomsync-text-muted) !important; }
.cwp-metric-tile--status-open[b-v2qf7abw5q]      { border-top: 3px solid var(--domain-rfq) !important; }
.cwp-metric-tile--status-bid[b-v2qf7abw5q]       { border-top: 3px solid var(--domain-comms) !important; }
.cwp-metric-tile--status-award[b-v2qf7abw5q]     { border-top: 3px solid var(--domain-qualification) !important; }
.cwp-metric-tile--status-closed[b-v2qf7abw5q]    { border-top: 3px solid var(--bomsync-text-secondary) !important; }
.cwp-metric-tile--status-cancelled[b-v2qf7abw5q] { border-top: 3px solid var(--domain-billing) !important; }
.cwp-metric-tile--status-default[b-v2qf7abw5q]   { border-top: 3px solid var(--bomsync-border-strong) !important; }
.cwp-metric-tile--contracts[b-v2qf7abw5q] { border-top: 3px solid var(--domain-contracts) !important; }
.cwp-metric-tile--contracts .cwp-metric-num[b-v2qf7abw5q] { color: var(--domain-contracts); }

.cwp-metric-tile--loading[b-v2qf7abw5q],
.cwp-metric-tile--empty[b-v2qf7abw5q],
.cwp-metric-tile--error[b-v2qf7abw5q] {
    max-width: none;
    flex: 0 0 auto;
    min-width: 200px;
    align-items: flex-start;
    text-align: left;
    font-size: 0.85rem;
    color: var(--bomsync-text-muted);
}

.cwp-metric-tile--error[b-v2qf7abw5q] { color: #c0392b; border-top: 3px solid #d64545 !important; }

/* Scope toggle tile */
.cwp-metric-tile--scope[b-v2qf7abw5q] {
    min-width: 130px;
    max-width: 180px;
    background: var(--bomsync-brand-subtle);
    border: 1px dashed var(--bomsync-border-strong);
    cursor: default;
    align-items: center;
}

.cwp-scope-toggle[b-v2qf7abw5q] {
    border: 1px solid var(--bomsync-border-strong);
    background: white;
    color: var(--bomsync-text-secondary);
    border-radius: 999px;
    padding: 5px 14px;
    font-size: 0.78rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s;
    display: inline-flex;
    align-items: center;
}

.cwp-scope-toggle:hover[b-v2qf7abw5q] {
    background: color-mix(in oklab, var(--brand-blue) 8%, white);
    border-color: var(--brand-blue);
}

.cwp-scope-toggle--on[b-v2qf7abw5q] {
    background: color-mix(in oklab, var(--brand-blue) 16%, white);
    border-color: var(--brand-blue);
    color: var(--brand-blue);
}

/* ── MAIN CONTENT GRID ──────────────────────────────────────────────────────── */
.cwp-grid[b-v2qf7abw5q] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 12px;
    margin-bottom: 14px;
}

.cwp-card--span-full[b-v2qf7abw5q] { grid-column: 1 / -1; }

/* ── CARDS ──────────────────────────────────────────────────────────────────── */
.cwp-card[b-v2qf7abw5q] {
    background: var(--bomsync-elevated-surface);
    border: 1px solid var(--bomsync-border);
    border-radius: 14px;
    padding: 18px 20px;
    box-shadow: var(--bomsync-shadow-sm);
    display: flex;
    flex-direction: column;
    transition: box-shadow 0.2s;
    border-top: 3px solid var(--bomsync-border);
}

.cwp-card:hover[b-v2qf7abw5q] { box-shadow: var(--bomsync-shadow-md); }

/* Accent-colour top border per card type */
.cwp-card--accent-contracts[b-v2qf7abw5q] { border-top-color: var(--domain-contracts); }
.cwp-card--accent-packages[b-v2qf7abw5q]  { border-top-color: var(--domain-rfq); }
.cwp-card--accent-gates[b-v2qf7abw5q]     { border-top-color: var(--domain-qualification); }
.cwp-card--accent-ops[b-v2qf7abw5q]       { border-top-color: var(--domain-operations); }
.cwp-card--accent-billing[b-v2qf7abw5q]   { border-top-color: var(--domain-billing); }

.cwp-card-header[b-v2qf7abw5q] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 4px;
}

.cwp-card-icon[b-v2qf7abw5q] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    flex-shrink: 0;
    line-height: 0;
}

/* Bootstrap Icons paint via ::before; nested flex centers that glyph in the tile */
.cwp-card-icon > i.bi[b-v2qf7abw5q] {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    font-size: 1.22rem;
    line-height: 1;
    width: 1.35rem;
    height: 1.35rem;
}

.cwp-card-icon > i.bi[b-v2qf7abw5q]::before {
    line-height: 1;
    vertical-align: 0;
}

.cwp-card-icon--contracts[b-v2qf7abw5q] { background: var(--domain-contracts-light); color: var(--domain-contracts); }
.cwp-card-icon--packages[b-v2qf7abw5q]  { background: var(--domain-rfq-light); color: var(--domain-rfq); }
.cwp-card-icon--docs[b-v2qf7abw5q]      { background: var(--domain-documents-light); color: var(--domain-documents); }
.cwp-card-icon--volume[b-v2qf7abw5q]    { background: var(--domain-qualification-light); color: var(--domain-qualification); }
.cwp-card-icon--gates[b-v2qf7abw5q]     { background: var(--domain-qualification-light); color: var(--domain-qualification); }
.cwp-card-icon--ops[b-v2qf7abw5q]       { background: var(--domain-operations-light); color: var(--domain-operations); }
.cwp-card-icon--billing[b-v2qf7abw5q]   { background: var(--domain-billing-light); color: var(--domain-billing); }
.cwp-card-icon--storage[b-v2qf7abw5q]   { background: color-mix(in oklab, var(--brand-blue) 12%, white); color: var(--brand-blue); }

.cwp-card-title[b-v2qf7abw5q] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--bomsync-text);
    margin: 0 0 2px 0;
    line-height: 1.2;
}

.cwp-card-desc[b-v2qf7abw5q] {
    font-size: 0.82rem;
    color: var(--bomsync-text-muted);
    margin: 0;
    line-height: 1.45;
}

/* ── ACTION ROWS & BUTTONS ─────────────────────────────────────────────────── */
.cwp-action-row[b-v2qf7abw5q] {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.cwp-action-btn[b-v2qf7abw5q] {
    display: inline-flex;
    align-items: center;
    padding: 6px 13px;
    border-radius: 8px;
    border: 1px solid var(--bomsync-border-strong);
    background: var(--bomsync-page-bg);
    color: var(--bomsync-text-secondary);
    font-size: 0.83rem;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, color 0.12s, transform 0.1s;
    white-space: nowrap;
}

.cwp-action-btn:hover[b-v2qf7abw5q] {
    background: color-mix(in oklab, var(--brand-blue) 8%, white);
    border-color: var(--brand-blue);
    color: var(--brand-blue);
    transform: translateY(-1px);
}

.cwp-action-btn--primary[b-v2qf7abw5q] {
    background: linear-gradient(135deg, #2f6690, #1e4e78);
    border-color: transparent;
    color: white;
    font-weight: 600;
    box-shadow: 0 2px 6px rgb(47 102 144 / 0.3);
}

.cwp-action-btn--primary:hover[b-v2qf7abw5q] {
    filter: brightness(1.08);
    color: white;
    background: linear-gradient(135deg, #2f6690, #1e4e78);
    border-color: transparent;
}

.cwp-action-btn--danger[b-v2qf7abw5q] {
    border-color: color-mix(in oklab, #d64545 35%, white);
    color: #b03030;
    background: color-mix(in oklab, #d64545 6%, white);
}

.cwp-action-btn--danger:hover[b-v2qf7abw5q] {
    background: color-mix(in oklab, #d64545 14%, white);
    border-color: #d64545;
    color: #8c1f1f;
}

/* ── DOCUMENT LINK GRID ─────────────────────────────────────────────────────── */
.cwp-doc-link-grid[b-v2qf7abw5q] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    gap: 7px;
}

.cwp-doc-link-tile[b-v2qf7abw5q] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    padding: 10px 8px;
    border-radius: 10px;
    border: 1px solid var(--bomsync-border);
    background: var(--bomsync-brand-subtle);
    color: var(--bomsync-text-secondary);
    font-size: 0.78rem;
    font-weight: 600;
    cursor: pointer;
    text-align: center;
    transition: background 0.12s, border-color 0.12s, transform 0.1s;
    line-height: 1.25;
}

.cwp-doc-link-tile i[b-v2qf7abw5q] { font-size: 1.1rem; color: #2f6690; }

.cwp-doc-link-tile:hover[b-v2qf7abw5q] {
    background: color-mix(in oklab, #2f6690 10%, white);
    border-color: #2f6690;
    color: #1e4e78;
    transform: translateY(-2px);
    box-shadow: 0 3px 10px rgb(47 102 144 / 0.14);
}

/* ── TRANSACTION VOLUMES ────────────────────────────────────────────────────── */
.cwp-volume-list[b-v2qf7abw5q] { display: flex; flex-direction: column; gap: 6px; }

.cwp-volume-row[b-v2qf7abw5q] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    border-radius: 8px;
    background: var(--bomsync-brand-subtle);
    border: 1px solid var(--bomsync-border);
}

.cwp-volume-type[b-v2qf7abw5q] {
    font-weight: 700;
    font-size: 0.82rem;
    color: var(--bomsync-text);
    flex: 1;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.cwp-volume-total[b-v2qf7abw5q] {
    font-size: 1.05rem;
    font-weight: 800;
    color: var(--brand-blue);
    min-width: 30px;
    text-align: right;
}

.cwp-volume-recent[b-v2qf7abw5q] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #2a9d8f;
    background: color-mix(in oklab, #2a9d8f 10%, white);
    border: 1px solid color-mix(in oklab, #2a9d8f 25%, white);
    border-radius: 999px;
    padding: 2px 8px;
    white-space: nowrap;
}

.cwp-volume-period[b-v2qf7abw5q] { opacity: 0.65; font-weight: 400; }

.cwp-order-chips[b-v2qf7abw5q] { display: flex; flex-wrap: wrap; gap: 7px; }

.cwp-order-chip[b-v2qf7abw5q] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 9px;
    border: 1px solid var(--bomsync-border-strong);
    background: var(--bomsync-elevated-surface);
    font-size: 0.8rem;
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, transform 0.1s;
}

.cwp-order-chip:hover[b-v2qf7abw5q] {
    background: color-mix(in oklab, #2f6690 8%, white);
    border-color: #2f6690;
    transform: translateY(-1px);
}

.cwp-order-chip-type[b-v2qf7abw5q] {
    font-weight: 800;
    font-size: 0.88rem;
    color: var(--brand-blue);
    text-transform: uppercase;
}

.cwp-order-chip-stat[b-v2qf7abw5q] {
    font-size: 0.75rem;
    color: var(--bomsync-text-muted);
    background: var(--bomsync-surface-2);
    border-radius: 999px;
    padding: 1px 7px;
}

/* ── QUALIFICATION GATES ────────────────────────────────────────────────────── */
.cwp-gates-grid[b-v2qf7abw5q] { display: flex; flex-direction: column; gap: 7px; }

.cwp-gate-row[b-v2qf7abw5q] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border-radius: 8px;
    background: var(--bomsync-brand-subtle);
    border: 1px solid var(--bomsync-border);
}

.cwp-gate-stage[b-v2qf7abw5q] {
    font-weight: 700;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--bomsync-text-secondary);
    flex: 1;
}

.cwp-gate-chip[b-v2qf7abw5q] {
    display: inline-flex;
    align-items: center;
    padding: 4px 11px;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 700;
    cursor: pointer;
    border: 1px solid transparent;
    transition: filter 0.12s, transform 0.1s;
}

.cwp-gate-chip:hover[b-v2qf7abw5q] { filter: brightness(0.92); transform: translateY(-1px); }

.cwp-gate-chip--pass[b-v2qf7abw5q] {
    background: color-mix(in oklab, #2a9d8f 16%, white);
    border-color: color-mix(in oklab, #2a9d8f 35%, white);
    color: #1a7068;
}

.cwp-gate-chip--block[b-v2qf7abw5q] {
    background: color-mix(in oklab, #d64545 14%, white);
    border-color: color-mix(in oklab, #d64545 32%, white);
    color: #8c1f1f;
}

.cwp-gate-result-pill[b-v2qf7abw5q] {
    display: inline-flex;
    align-items: center;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 700;
}

.cwp-gate-result-pill--pass[b-v2qf7abw5q] {
    background: color-mix(in oklab, #2a9d8f 14%, white);
    color: #1a7068;
}

.cwp-gate-result-pill--block[b-v2qf7abw5q] {
    background: color-mix(in oklab, #d64545 12%, white);
    color: #8c1f1f;
}

/* ── OPERATIONS STATS ───────────────────────────────────────────────────────── */
.cwp-ops-stat-row[b-v2qf7abw5q] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.cwp-ops-stat[b-v2qf7abw5q] {
    flex: 1 1 70px;
    background: var(--bomsync-brand-subtle);
    border: 1px solid var(--bomsync-border);
    border-radius: 10px;
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    min-width: 60px;
}

.cwp-ops-stat--warn[b-v2qf7abw5q] {
    background: color-mix(in oklab, #e09a1e 10%, white);
    border-color: color-mix(in oklab, #e09a1e 30%, white);
}

.cwp-ops-stat--danger[b-v2qf7abw5q] {
    background: color-mix(in oklab, #d64545 10%, white);
    border-color: color-mix(in oklab, #d64545 30%, white);
}

.cwp-ops-stat-num[b-v2qf7abw5q] {
    font-size: 1.4rem;
    font-weight: 800;
    line-height: 1;
    color: var(--brand-blue);
}

.cwp-ops-stat--warn .cwp-ops-stat-num[b-v2qf7abw5q]  { color: #c07a10; }
.cwp-ops-stat--danger .cwp-ops-stat-num[b-v2qf7abw5q] { color: #b03030; }

.cwp-ops-stat-lbl[b-v2qf7abw5q] {
    font-size: 0.68rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--bomsync-text-muted);
    margin-top: 3px;
}

.cwp-timestamp[b-v2qf7abw5q] {
    font-size: 0.72rem;
    color: var(--bomsync-text-muted);
    margin: 5px 0 0 0;
}

/* ── STORAGE FOLDERS ────────────────────────────────────────────────────────── */
.cwp-storage-folders[b-v2qf7abw5q] { display: flex; flex-wrap: wrap; gap: 7px; }

.cwp-folder-chip[b-v2qf7abw5q] {
    display: inline-flex;
    align-items: center;
    padding: 5px 11px;
    border-radius: 8px;
    border: 1px solid var(--bomsync-border);
    background: var(--bomsync-brand-subtle);
    color: var(--bomsync-text-secondary);
    font-size: 0.78rem;
    font-weight: 500;
}

/* ── BILLING ALERT BANNER ───────────────────────────────────────────────────── */
.cwp-alert-banner[b-v2qf7abw5q] {
    display: flex;
    align-items: center;
    padding: 10px 14px;
    border-radius: 9px;
    background: color-mix(in oklab, #d64545 10%, white);
    border: 1px solid color-mix(in oklab, #d64545 28%, white);
    color: #8c1f1f;
    font-size: 0.85rem;
    font-weight: 600;
}

/* ── DATA EXPLORER TOGGLE ───────────────────────────────────────────────────── */
.cwp-explorer-toggle-row[b-v2qf7abw5q] {
    display: flex;
    justify-content: center;
}

.cwp-explorer-toggle[b-v2qf7abw5q] {
    width: 100%;
    padding: 12px 20px;
    border-radius: 12px;
    border: 2px dashed var(--bomsync-border-strong);
    background: var(--bomsync-brand-subtle);
    color: var(--bomsync-text-secondary);
    font-size: 0.88rem;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    transition: background 0.15s, border-color 0.15s;
}

.cwp-explorer-toggle:hover[b-v2qf7abw5q] {
    background: color-mix(in oklab, var(--brand-blue) 7%, white);
    border-color: var(--brand-blue);
    color: var(--brand-blue);
}

/* ── DRILL PANELS ───────────────────────────────────────────────────────────── */
.cwp-drill-panel[b-v2qf7abw5q] {
    background: var(--bomsync-elevated-surface);
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 14px;
    padding: 18px 20px;
    box-shadow: var(--bomsync-shadow-md);
    border-top: 3px solid var(--brand-blue);
    margin-bottom: 14px;
}

.cwp-drill-header[b-v2qf7abw5q] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 14px;
}

.cwp-drill-title[b-v2qf7abw5q] {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--bomsync-text);
    margin: 0 0 2px 0;
}

.cwp-drill-sub[b-v2qf7abw5q] {
    font-size: 0.8rem;
    color: var(--bomsync-text-muted);
    margin: 0;
}

.cwp-drill-actions[b-v2qf7abw5q] { display: flex; gap: 7px; flex-wrap: wrap; }

/* ── STATUS PILLS (drill tables) ────────────────────────────────────────────── */
.cwp-status-pill[b-v2qf7abw5q] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.cwp-status-pill--draft[b-v2qf7abw5q]    { background: #edf0f7; color: #3a4560; }
.cwp-status-pill--open[b-v2qf7abw5q]     { background: color-mix(in oklab, #2f6690 14%, white); color: #1e4e78; }
.cwp-status-pill--bid[b-v2qf7abw5q]      { background: color-mix(in oklab, #e09a1e 14%, white); color: #7d540a; }
.cwp-status-pill--award[b-v2qf7abw5q]    { background: color-mix(in oklab, #2a9d8f 14%, white); color: #1a7068; }
.cwp-status-pill--closed[b-v2qf7abw5q]   { background: #edf0f7; color: #3a4560; }
.cwp-status-pill--cancelled[b-v2qf7abw5q] { background: color-mix(in oklab, #d64545 10%, white); color: #8c1f1f; }
.cwp-status-pill--default[b-v2qf7abw5q]  { background: #edf0f7; color: #74869c; }

/* ── SHARED DETAIL TABLE ────────────────────────────────────────────────────── */
.detail-table-wrap[b-v2qf7abw5q] { overflow-x: auto; }

.detail-table[b-v2qf7abw5q] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
}

.detail-table th[b-v2qf7abw5q] {
    background: var(--bomsync-surface-2);
    color: var(--bomsync-text-secondary);
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    padding: 8px 10px;
    text-align: left;
    border-bottom: 2px solid var(--bomsync-border-strong);
    white-space: nowrap;
}

.detail-table td[b-v2qf7abw5q] {
    padding: 8px 10px;
    border-bottom: 1px solid var(--bomsync-border);
    color: var(--bomsync-text);
    vertical-align: middle;
}

.detail-table tbody tr:hover[b-v2qf7abw5q] { background: var(--bomsync-brand-subtle); }

/* ── SEVERITY PILLS ─────────────────────────────────────────────────────────── */
.severity-pill[b-v2qf7abw5q] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.05em;
}

.severity-pill-warning[b-v2qf7abw5q] {
    background: color-mix(in oklab, #e09a1e 16%, white);
    color: #7d540a;
    border: 1px solid color-mix(in oklab, #e09a1e 30%, white);
}

.severity-pill-critical[b-v2qf7abw5q] {
    background: color-mix(in oklab, #d64545 14%, white);
    color: #8c1f1f;
    border: 1px solid color-mix(in oklab, #d64545 28%, white);
}

/* ── INLINE STATES ──────────────────────────────────────────────────────────── */
.cwp-inline-error[b-v2qf7abw5q] {
    font-size: 0.82rem;
    color: #b03030;
    background: color-mix(in oklab, #d64545 8%, white);
    border: 1px solid color-mix(in oklab, #d64545 22%, white);
    border-radius: 7px;
    padding: 7px 11px;
    margin: 0;
}

.cwp-empty-state[b-v2qf7abw5q] {
    font-size: 0.85rem;
    color: var(--bomsync-text-muted);
    font-style: italic;
    margin: 0;
    display: flex;
    align-items: center;
}

/* ── RESPONSIVE ─────────────────────────────────────────────────────────────── */
@media (max-width: 640px) {
    .cwp-hero-inner[b-v2qf7abw5q] { flex-direction: column; padding: 18px 16px; }
    .cwp-hero-title[b-v2qf7abw5q] { font-size: 1.55rem; }
    .cwp-hero-actions-col[b-v2qf7abw5q] { align-items: stretch; width: 100%; }
    .cwp-hero-viewer-note[b-v2qf7abw5q] { text-align: left; max-width: none; }
    .cwp-hero-actions[b-v2qf7abw5q] { width: 100%; justify-content: center; }
    .cwp-cta[b-v2qf7abw5q] { flex: 1 1 auto; justify-content: center; }
    .cwp-grid[b-v2qf7abw5q] { grid-template-columns: 1fr; }
    .cwp-metrics-bar[b-v2qf7abw5q] { gap: 7px; }
    .cwp-metric-tile[b-v2qf7abw5q] { flex: 1 1 80px; }
}
/* /Components/Pages/Procurement/ManageProjectOrders.razor.rz.scp.css */
/* Project orders (/manage/project-orders) — aligns visually with Commercial Workspace hero + elevated panels */

.mpo-page[b-3ygvnzonhh] {
    max-width: 100%;
    overflow-x: hidden;
    box-sizing: border-box;
}

/* ---------- Hero ---------- */
.mpo-hero[b-3ygvnzonhh] {
    background:
        radial-gradient(900px 450px at 5% -10%, var(--bsx-action, #2F6690), transparent 55%),
        radial-gradient(900px 450px at 85%  10%, var(--bsx-option, #415A77), transparent 55%),
        var(--brand-blue, #111B2C);
    border-radius: 16px;
    /* Full width like workflow pipeline; vertical inset only (horizontal inset comes from #maintext.main-content padding) */
    margin: clamp(12px, 1.25vw, 18px) 0 0;
    position: relative;
    overflow: hidden;
    box-shadow:
        0 4px 24px rgb(17 27 44 / 0.26),
        0 1px 0 rgb(255 255 255 / 0.04) inset;
}

.mpo-hero[b-3ygvnzonhh]::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(106 215 255 / 0.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(106 215 255 / 0.035) 1px, transparent 1px);
    background-size: 36px 36px;
    pointer-events: none;
}

/* Hero: 20px inset on all sides; grid keeps the action column vertically centered vs the full left stack */
.mpo-hero-inner[b-3ygvnzonhh] {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    padding: 20px;
}

.mpo-alert[b-3ygvnzonhh] {
    border-radius: 10px;
    border: 1px solid rgba(224 154 30 / 0.45);
}

.mpo-coach[b-3ygvnzonhh] {
    border-left: 3px solid var(--bomsync-border-strong, #bcc6da);
    padding-left: 14px;
    margin-left: 2px;
}

/* ---------- Command card ---------- */
.command-center-shell.mpo-command-card[b-3ygvnzonhh] {
    border: 1px solid var(--bomsync-border-strong, #bcc6da);
    border-radius: 14px;
    background: var(--bomsync-elevated-surface, #fbfcff);
    padding: 18px 20px 16px;
    box-shadow: var(--bomsync-shadow-sm, 0 1px 3px rgb(17 27 44 / 0.08));
}

.mpo-section-head[b-3ygvnzonhh] {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-bottom: 14px;
}

.mpo-section-head--compact[b-3ygvnzonhh] {
    margin-top: 4px;
    margin-bottom: 10px;
}

.mpo-section-icon[b-3ygvnzonhh] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: color-mix(in oklab, var(--brand-blue, #111b2c) 12%, white);
    color: var(--brand-blue, #111b2c);
}

.mpo-section-icon .bi[b-3ygvnzonhh] {
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.35rem;
    height: 1.35rem;
    margin: 0;
    font-size: 1.1rem;
}

.mpo-section-icon--stats[b-3ygvnzonhh] {
    background: var(--domain-rfq-light);
    color: var(--domain-rfq);
}

.mpo-section-icon--link[b-3ygvnzonhh] {
    background: var(--domain-contracts-light);
    color: var(--domain-contracts);
}

.mpo-section-title[b-3ygvnzonhh] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--bomsync-text, #0f1520);
    margin: 0 0 2px 0;
    line-height: 1.2;
}

.mpo-section-desc[b-3ygvnzonhh] {
    font-size: 0.82rem;
    color: var(--bomsync-text-muted, #74869c);
    margin: 0;
    line-height: 1.4;
}

.mpo-divider[b-3ygvnzonhh] {
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--bomsync-border-strong, #bcc6da), transparent);
    margin: 12px 0 14px;
}

.command-center-context.mpo-context-grid[b-3ygvnzonhh] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 14px 18px;
    align-items: start;
}

.context-item.mpo-context-field[b-3ygvnzonhh] {
    min-width: 0;
}

.mpo-context-field--wide[b-3ygvnzonhh] {
    grid-column: span 1;
}

@media (min-width: 900px) {
    .mpo-context-field--wide[b-3ygvnzonhh] {
        grid-column: span 2;
    }
}

.mpo-field-label[b-3ygvnzonhh] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--bomsync-text-secondary, #3a4560);
    margin-bottom: 6px;
    display: block;
}

.mpo-field-hint[b-3ygvnzonhh] {
    font-size: 0.78rem;
    color: var(--bomsync-text-muted, #74869c);
    margin-top: 6px;
    line-height: 1.35;
}

/* ---------- KPI tiles ---------- */
.command-center-kpis.mpo-kpi-row[b-3ygvnzonhh] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
    gap: 10px;
}

.kpi-card.mpo-kpi-tile[b-3ygvnzonhh] {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    border-radius: 12px;
    padding: 12px 14px;
    border: 1px solid var(--bomsync-border, #dde3ee);
    background: var(--bomsync-surface, #fafbfd);
    box-shadow: var(--bomsync-shadow-sm, 0 1px 2px rgb(17 27 44 / 0.06));
    transition: box-shadow 0.15s, transform 0.12s, border-color 0.12s;
}

.kpi-card.mpo-kpi-tile:hover[b-3ygvnzonhh] {
    box-shadow: var(--bomsync-shadow-md, 0 4px 14px rgb(17 27 44 / 0.1));
    transform: translateY(-2px);
    border-color: var(--bomsync-border-strong, #bcc6da);
}

.mpo-kpi-icon[b-3ygvnzonhh] {
    width: 36px;
    height: 36px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    flex-shrink: 0;
}

.mpo-kpi-tile--orders .mpo-kpi-icon[b-3ygvnzonhh] {
    background: var(--domain-po-light);
    color: var(--domain-po);
}

.mpo-kpi-tile--lines .mpo-kpi-icon[b-3ygvnzonhh] {
    background: var(--domain-contracts-light);
    color: var(--domain-contracts);
}

.mpo-kpi-tile--recv .mpo-kpi-icon[b-3ygvnzonhh] {
    background: var(--domain-receiving-light);
    color: var(--domain-receiving);
}

.mpo-kpi-tile--comms .mpo-kpi-icon[b-3ygvnzonhh] {
    background: var(--domain-comms-light);
    color: var(--domain-comms);
}

.mpo-kpi-tile--rcpt .mpo-kpi-icon[b-3ygvnzonhh] {
    background: color-mix(in oklab, var(--brand-blue) 10%, white);
    color: var(--brand-blue);
}

.mpo-kpi-body[b-3ygvnzonhh] {
    min-width: 0;
}

.kpi-card.mpo-kpi-tile .kpi-label[b-3ygvnzonhh] {
    font-size: 0.68rem;
    letter-spacing: 0.07em;
}

.kpi-card.mpo-kpi-tile .kpi-value[b-3ygvnzonhh] {
    font-size: 1.55rem;
    font-weight: 800;
    letter-spacing: -0.02em;
    color: var(--brand-blue, #111b2c);
}

.kpi-card.mpo-kpi-tile .kpi-note[b-3ygvnzonhh] {
    font-size: 0.72rem;
}

.mpo-kpi-tile--orders[b-3ygvnzonhh] {
    border-top: 3px solid var(--domain-po);
}

.mpo-kpi-tile--lines[b-3ygvnzonhh] {
    border-top: 3px solid var(--domain-contracts);
}

.mpo-kpi-tile--recv[b-3ygvnzonhh] {
    border-top: 3px solid var(--domain-receiving);
}

.mpo-kpi-tile--comms[b-3ygvnzonhh] {
    border-top: 3px solid var(--domain-comms);
}

.mpo-kpi-tile--rcpt[b-3ygvnzonhh] {
    border-top: 3px solid var(--brand-blue, #111b2c);
}

/* ---------- Shortcut row ---------- */
.command-center-actions.mpo-shortcut-row[b-3ygvnzonhh] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 4px;
}

.mpo-shortcut[b-3ygvnzonhh] {
    display: inline-flex;
    align-items: center;
    padding: 7px 14px;
    border-radius: 999px;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--bomsync-text-secondary, #3a4560);
    border: 1px solid var(--bomsync-border-strong, #bcc6da);
    background: var(--bomsync-page-bg, #f4f6fa);
    text-decoration: none;
    transition: background 0.12s, border-color 0.12s, color 0.12s, transform 0.1s;
}

.mpo-shortcut:hover[b-3ygvnzonhh] {
    background: color-mix(in oklab, #2f6690 8%, white);
    border-color: #2f6690;
    color: #1e4e78;
    transform: translateY(-1px);
}

.mpo-shortcut--accent[b-3ygvnzonhh] {
    background: linear-gradient(135deg, #2f6690, #1e4e78);
    border-color: transparent;
    color: #fff;
}

.mpo-shortcut--accent:hover[b-3ygvnzonhh] {
    filter: brightness(1.06);
    color: #fff;
    border-color: transparent;
}

/* ---------- Dashboard panels (Syncfusion) ---------- */
.mpo-page[b-3ygvnzonhh]  .manage-project-orders-dashboard .e-panel .e-panel-header {
    background: linear-gradient(135deg, #2f6690 0%, #1e4e78 100%);
    color: #e8edf5 !important;
    font-weight: 700;
    font-size: 0.82rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    border-radius: 10px 10px 0 0;
    cursor: default !important;
}

.mpo-page[b-3ygvnzonhh]  .manage-project-orders-dashboard .e-panel {
    max-width: 100%;
    box-sizing: border-box;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid var(--bomsync-border-strong, #bcc6da);
    box-shadow: var(--bomsync-shadow-sm, 0 1px 3px rgb(17 27 44 / 0.08));
}

.mpo-page[b-3ygvnzonhh]  .manage-project-orders-dashboard .e-panel .e-panel-container {
    border-radius: 0 0 12px 12px;
}

.mpo-page[b-3ygvnzonhh]  .manage-project-orders-dashboard .e-dashboard-layout {
    width: 100% !important;
    max-width: 100%;
    box-sizing: border-box;
}

.mpo-page[b-3ygvnzonhh]  .manage-project-orders-dashboard .e-dashboardlayout .e-panel .e-resize,
.mpo-page[b-3ygvnzonhh]  .manage-project-orders-dashboard .e-dashboard-layout .e-panel .e-resize {
    display: none !important;
}

.mpo-page[b-3ygvnzonhh]  .manage-project-orders-dashboard .e-panel .e-panel-container,
.mpo-page[b-3ygvnzonhh]  .manage-project-orders-dashboard .e-panel .e-panel-content {
    min-width: 0;
    max-width: 100%;
    overflow-x: auto;
    box-sizing: border-box;
}

.mpo-page[b-3ygvnzonhh]  .manage-project-orders-dashboard .e-panel .e-panel-header {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 576px) {
    .mpo-hero-inner[b-3ygvnzonhh] {
        grid-template-columns: 1fr;
        align-items: stretch;
        padding: 20px;
    }

    .bomsync-hub-hero-actions[b-3ygvnzonhh] {
        width: 100%;
        justify-content: center;
    }
}

/* ── COMPACT KPI BAR ─────────────────────────────────────────────────────────── */
.mpo-kpi-compact-bar[b-3ygvnzonhh] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 2px;
}

.mpo-kpi-chip[b-3ygvnzonhh] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 9px 14px;
    border-radius: 12px;
    border: 1px solid var(--bomsync-border, #dde3ee);
    background: var(--bomsync-surface, #fafbfd);
    flex: 1 1 110px;
    min-width: 100px;
    box-shadow: var(--bomsync-shadow-sm, 0 1px 2px rgb(17 27 44 / 0.06));
    transition: transform 0.1s, box-shadow 0.12s;
}

.mpo-kpi-chip:hover[b-3ygvnzonhh] {
    transform: translateY(-1px);
    box-shadow: var(--bomsync-shadow-md, 0 4px 14px rgb(17 27 44 / 0.1));
}

.mpo-kpi-chip-icon[b-3ygvnzonhh] {
    font-size: 1.05rem;
    flex-shrink: 0;
    width: 26px;
    text-align: center;
}

.mpo-kpi-chip-value[b-3ygvnzonhh] {
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--brand-blue, #111b2c);
}

.mpo-kpi-chip-label[b-3ygvnzonhh] {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--bomsync-text-muted, #74869c);
    margin-top: 2px;
}

.mpo-kpi-chip--orders[b-3ygvnzonhh]  { border-top: 3px solid var(--domain-po); }
.mpo-kpi-chip--orders .mpo-kpi-chip-icon[b-3ygvnzonhh] { color: var(--domain-po); }

.mpo-kpi-chip--lines[b-3ygvnzonhh]   { border-top: 3px solid var(--domain-contracts); }
.mpo-kpi-chip--lines .mpo-kpi-chip-icon[b-3ygvnzonhh] { color: var(--domain-contracts); }

.mpo-kpi-chip--recv[b-3ygvnzonhh]    { border-top: 3px solid var(--domain-receiving); }
.mpo-kpi-chip--recv .mpo-kpi-chip-icon[b-3ygvnzonhh]  { color: var(--domain-receiving); }

.mpo-kpi-chip--comms[b-3ygvnzonhh]   { border-top: 3px solid var(--domain-comms); }
.mpo-kpi-chip--comms .mpo-kpi-chip-icon[b-3ygvnzonhh] { color: var(--domain-comms); }

.mpo-kpi-chip--rcpt[b-3ygvnzonhh]    { border-top: 3px solid var(--brand-blue, #111b2c); }
.mpo-kpi-chip--rcpt .mpo-kpi-chip-icon[b-3ygvnzonhh]  { color: var(--brand-blue, #111b2c); }

/* ── 3-COLUMN COMMAND CENTER GRID ─────────────────────────────────────────────── */
.mpo-cc-grid[b-3ygvnzonhh] {
    display: grid;
    grid-template-columns: 265px 1fr 300px;
    grid-template-rows: auto;
    gap: 14px;
    align-items: start;
    margin-bottom: 32px;
}

.mpo-cc-aside-left[b-3ygvnzonhh]  { grid-column: 1; }
.mpo-cc-main[b-3ygvnzonhh]        { grid-column: 2; min-width: 0; }
.mpo-cc-aside-right[b-3ygvnzonhh] { grid-column: 3; }

@media (max-width: 1260px) {
    .mpo-cc-grid[b-3ygvnzonhh] {
        grid-template-columns: 240px 1fr 280px;
    }
}

@media (max-width: 1050px) {
    .mpo-cc-grid[b-3ygvnzonhh] {
        grid-template-columns: 1fr 1fr;
    }
    .mpo-cc-aside-left[b-3ygvnzonhh]  { grid-column: 1; }
    .mpo-cc-aside-right[b-3ygvnzonhh] { grid-column: 2; }
    .mpo-cc-main[b-3ygvnzonhh]        { grid-column: 1 / -1; order: -1; }
}

@media (max-width: 640px) {
    .mpo-cc-grid[b-3ygvnzonhh] {
        grid-template-columns: 1fr;
    }
    .mpo-cc-aside-left[b-3ygvnzonhh],
    .mpo-cc-aside-right[b-3ygvnzonhh],
    .mpo-cc-main[b-3ygvnzonhh] { grid-column: 1; order: unset; }
}

/* ── COMMAND CENTER PANELS ─────────────────────────────────────────────────────── */
.mpo-cc-panel[b-3ygvnzonhh] {
    background: var(--bomsync-elevated-surface, #fbfcff);
    border: 1px solid var(--bomsync-border-strong, #bcc6da);
    border-radius: 14px;
    padding: 14px 16px 12px;
    box-shadow: var(--bomsync-shadow-sm, 0 1px 3px rgb(17 27 44 / 0.08));
}

.mpo-cc-panel--warn[b-3ygvnzonhh] {
    border-color: rgba(224, 154, 30, 0.5);
    background: rgba(224, 154, 30, 0.04);
}

.mpo-cc-panel-head[b-3ygvnzonhh] {
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--bomsync-text, #0f1520);
    letter-spacing: 0.01em;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    line-height: 1.3;
}

.mpo-cc-panel-sub[b-3ygvnzonhh] {
    font-size: 0.8rem;
    color: var(--bomsync-text-muted, #74869c);
    margin: -6px 0 10px;
    line-height: 1.4;
}

.mpo-cc-sub-label[b-3ygvnzonhh] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--bomsync-text-muted, #74869c);
    margin-bottom: 6px;
}

/* ── ORDER INFO GRID (3 columns inside card) ──────────────────────────────────── */
.mpo-order-info-grid[b-3ygvnzonhh] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px 20px;
}

@media (max-width: 800px) {
    .mpo-order-info-grid[b-3ygvnzonhh] { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 500px) {
    .mpo-order-info-grid[b-3ygvnzonhh] { grid-template-columns: 1fr; }
}

.mpo-info-section-label[b-3ygvnzonhh] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--bomsync-text-muted, #74869c);
    margin-bottom: 6px;
    display: block;
}

.mpo-info-row[b-3ygvnzonhh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    font-size: 0.82rem;
    color: var(--bomsync-text-secondary, #3a4560);
    padding: 4px 0;
    border-bottom: 1px solid var(--bomsync-border, #dde3ee);
}

.mpo-info-row:last-child[b-3ygvnzonhh] { border-bottom: none; }

.mpo-info-row span:last-child[b-3ygvnzonhh] {
    font-weight: 600;
    color: var(--bomsync-text, #0f1520);
    text-align: right;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 60%;
}

/* ── DOCUMENT LINK ROWS ────────────────────────────────────────────────────────── */
.mpo-doc-link[b-3ygvnzonhh] {
    display: inline-flex;
    align-items: center;
    padding: 7px 12px;
    border-radius: 9px;
    font-size: 0.82rem;
    font-weight: 500;
    color: var(--bomsync-text-secondary, #3a4560);
    border: 1px solid var(--bomsync-border-strong, #bcc6da);
    background: var(--bomsync-page-bg, #f4f6fa);
    text-decoration: none;
    transition: background 0.12s, border-color 0.12s, color 0.12s, transform 0.1s;
}

.mpo-doc-link:hover[b-3ygvnzonhh] {
    background: color-mix(in oklab, var(--brand-blue) 8%, white);
    border-color: var(--brand-blue);
    color: var(--brand-blue);
    transform: translateY(-1px);
}
/* /Components/Pages/Procurement/ManageSalesWorkOrders.razor.rz.scp.css */
/* Sales / work orders hub — tab + grids fill page width under BomsyncPageChrome */
.sowo-hub-body[b-co2c3nntvh] {
    width: 100%;
    min-width: 100%;
}

.sowo-hub-body[b-co2c3nntvh]  .e-tab-content,
.sowo-hub-body[b-co2c3nntvh]  .e-content.e-lib {
    width: 100% !important;
}

.sowo-hub-body[b-co2c3nntvh]  .e-grid {
    width: 100% !important;
}
/* /Components/Pages/Programs/ProgramMatrixStepperPanel.razor.rz.scp.css */
.program-matrix-stepper-toast-host[b-1ya4969wly] {
    min-height: 1px;
}

.program-matrix-stepper-breadcrumb .breadcrumb[b-1ya4969wly] {
    margin-bottom: 0;
}

/* Project matrix stepper: strong active state + next-step affordance */
.program-matrix-stepper-nav[b-1ya4969wly] {
    margin-bottom: 0.25rem;
}

.program-matrix-stepper-nav .e-stepper.e-stepper-horizontal[b-1ya4969wly] {
    padding: 14px 16px 18px;
    background: var(--bomsync-elevated-surface);
    border: 1px solid var(--bomsync-border);
    border-radius: 12px;
    box-shadow: var(--bomsync-shadow-sm);
}

/* Active step (Syncfusion: e-step-inprogress) */
.program-matrix-stepper-nav .e-step-container.e-step-inprogress .e-step-label[b-1ya4969wly],
.program-matrix-stepper-nav .e-step-container.e-step-inprogress .e-step-text[b-1ya4969wly] {
    font-weight: 700 !important;
    color: var(--bsx-action) !important;
    font-size: 0.95rem;
    letter-spacing: 0.02em;
}

.program-matrix-stepper-nav .e-step-container.e-step-inprogress .e-step-icon[b-1ya4969wly],
.program-matrix-stepper-nav .e-step-container.e-step-inprogress .e-step-indicator[b-1ya4969wly],
.program-matrix-stepper-nav .e-step-container.e-step-inprogress .e-step-circle[b-1ya4969wly] {
    background: var(--bsx-action) !important;
    color: #fff !important;
    border-color: var(--bsx-action) !important;
    box-shadow: 0 0 0 4px rgb(47 102 144 / 0.22);
    transform: scale(1.05);
}

.program-matrix-stepper-nav .e-step-container.e-step-inprogress .e-step-line[b-1ya4969wly]::before {
    background: var(--bsx-action) !important;
    opacity: 1 !important;
}

.program-matrix-stepper-nav .e-step-container.e-step-completed .e-step-label[b-1ya4969wly] {
    color: var(--bomsync-text-secondary);
    font-weight: 600;
}

.program-matrix-stepper-nav .e-step-container.e-step-notstarted .e-step-label[b-1ya4969wly] {
    color: var(--bomsync-text-muted);
    font-weight: 500;
}

.program-matrix-stepper-nav .e-step-container.pm-step-next-available:not(.e-step-inprogress) .e-step-label[b-1ya4969wly] {
    color: var(--bsx-action) !important;
    font-weight: 600 !important;
    animation: pm-matrix-step-next-fade-b-1ya4969wly 2.4s ease-in-out infinite;
}

.program-matrix-stepper-nav .e-step-container.pm-step-next-available:not(.e-step-inprogress) .e-step-icon[b-1ya4969wly],
.program-matrix-stepper-nav .e-step-container.pm-step-next-available:not(.e-step-inprogress) .e-step-indicator[b-1ya4969wly],
.program-matrix-stepper-nav .e-step-container.pm-step-next-available:not(.e-step-inprogress) .e-step-circle[b-1ya4969wly] {
    border-color: rgb(47 102 144 / 0.45) !important;
    box-shadow: 0 0 0 2px rgb(47 102 144 / 0.12);
}

@keyframes pm-matrix-step-next-fade-b-1ya4969wly {
    0%, 100% {
        opacity: 0.95;
    }

    50% {
        opacity: 0.58;
    }
}
/* /Components/Pages/Programs/ProgramPortfolio.razor.rz.scp.css */
.program-portfolio__card[b-vskbx38dpg] {
    background: var(--bomsync-elevated-surface, #fff);
    border-color: var(--bomsync-border, #dee2e6) !important;
}

.program-portfolio__dl dt[b-vskbx38dpg] {
    color: var(--bomsync-text-secondary, #6c757d);
    font-weight: 500;
}

.program-portfolio__dl dd[b-vskbx38dpg] {
    text-align: right;
}
/* /Components/Pages/Programs/ProjectMatrixPertDiagramPanel.razor.rz.scp.css */
.project-matrix-pert-panel[b-cumkokcxhc] {
    width: 100%;
}

.project-matrix-pert-swatch[b-cumkokcxhc] {
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 2px;
    margin-right: 4px;
    vertical-align: -2px;
    border: 1px solid var(--bomsync-border-strong, #bcc6da);
}

.project-matrix-pert-canvas-wrap[b-cumkokcxhc] {
    width: 100%;
    min-height: 400px;
    border: 1px solid var(--bomsync-border, #dde3ee);
    border-radius: 6px;
    background: #ffffff;
    /* Inline diagram uses fixed pixel width (wider than narrow columns); allow horizontal scroll instead of clipping. */
    overflow-x: auto;
    overflow-y: hidden;
}

.project-matrix-pert-resize-handle[b-cumkokcxhc] {
    height: 10px;
    margin-top: 2px;
    margin-bottom: 2px;
    border-radius: 4px;
    cursor: ns-resize;
    user-select: none;
    touch-action: none;
    background: linear-gradient(
        180deg,
        transparent 0,
        transparent 3px,
        rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.12) 3px,
        rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.12) 5px
    );
    border: 1px solid var(--bomsync-border, #dde3ee);
}

.project-matrix-pert-resize-handle:hover[b-cumkokcxhc],
.project-matrix-pert-resize-handle:focus-visible[b-cumkokcxhc] {
    background: rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.08);
    border-color: var(--bomsync-border-strong, #bcc6da);
    outline: none;
}

.project-matrix-pert-expand-dialog-content[b-cumkokcxhc] {
    display: flex;
    flex-direction: column;
    min-height: 460px;
    max-height: min(82vh, 900px);
}

.project-matrix-pert-expand-canvas-wrap[b-cumkokcxhc] {
    flex: 1 1 auto;
    min-height: 400px;
    width: 100%;
    border: 1px solid var(--bomsync-border, #dde3ee);
    border-radius: 6px;
    background: #ffffff;
    overflow: auto;
}

.project-matrix-pert-main-row[b-cumkokcxhc],
.project-matrix-pert-expand-body-row[b-cumkokcxhc] {
    align-items: flex-start;
}

.project-matrix-pert-export-flyout[b-cumkokcxhc] {
    flex: 0 0 auto;
    width: min(100%, 300px);
    max-height: min(70vh, 720px);
    overflow: auto;
    padding: 12px;
    margin-left: 8px;
    border-color: var(--bomsync-border, #dde3ee) !important;
}

@media (max-width: 991.98px) {
    .project-matrix-pert-export-flyout[b-cumkokcxhc] {
        width: 100%;
        max-height: none;
        margin-left: 0;
        margin-top: 8px;
    }
}

.project-matrix-pert-layout-btns .btn[b-cumkokcxhc] {
    padding-left: 0.35rem;
    padding-right: 0.35rem;
}
/* /Components/Pages/Projects/Nesting/NestingWorkspaceChrome.razor.rz.scp.css */
/* Tighten nested project picker inside hero footer (ToolBarUniqueProject brings its own wrappers). */
.nesting-workspace-bomsync-stack .nesting-ws-hero-pickproject .content-wrapper[b-riiz7oqll5] {
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 0;
}

.nesting-workspace-bomsync-stack .nesting-ws-hero-pickproject .toolbar-unique-project-bar[b-riiz7oqll5] {
    margin-bottom: 0;
}
/* /Components/Pages/Projects/ProcurementPending.razor.rz.scp.css */
.procurement-guided-page .procurement-pending-project-rail[b-9a3n54qrz5] {
    background: var(--bomsync-elevated-surface, var(--bs-body-bg, #fff));
}

.procurement-guided-page .procurement-pending-project-rail-grid .e-grid[b-9a3n54qrz5] {
    min-width: 0;
}

.procurement-guided-page .procurement-pending-workspace[b-9a3n54qrz5] {
    align-items: stretch;
}

.procurement-guided-page .nesting-readiness-pill[b-9a3n54qrz5] {
    border: 0;
    border-radius: 999px;
    padding: 3px 10px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.1;
    cursor: pointer;
}

.procurement-guided-page .nesting-readiness-pill.is-ready[b-9a3n54qrz5] {
    background: #d8f5df;
    color: #1e6d31;
}

.procurement-guided-page .nesting-readiness-pill.is-missing[b-9a3n54qrz5] {
    background: #ffe6b3;
    color: #8a5a00;
}

.procurement-guided-page .table-responsive-wide[b-9a3n54qrz5] {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* SfDropDownList has no Height parameter; size the edit cell control explicitly */
.procurement-guided-page[b-9a3n54qrz5]  .procurement-pending-vendor-ddl.e-input-group.e-control-wrapper {
    min-height: 32px;
}

.procurement-guided-page .table-responsive-wide .e-grid[b-9a3n54qrz5] {
    min-width: 720px;
}

@media (max-width: 768px) {
    .procurement-guided-page .table-responsive-wide .e-grid[b-9a3n54qrz5] {
        min-width: 560px;
    }
}
/* /Components/Pages/Projects/ProjectBomConsolidated.razor.rz.scp.css */
/* ── Update Calculations — sweeping progress animation ───────────────────── */

/* When the calculation job is running, the button turns solid navy and shows
   a repeating left-to-right shimmer so the user can see work is in progress. */
[b-yl0t8gjzhd] .bsc-calc-updating,
[b-yl0t8gjzhd] .bsc-calc-updating:disabled {
    position: relative;
    overflow: hidden;
    background-color: var(--brand-blue, #1b2a4a) !important;
    color: var(--bomsync-on-dark-text, #e8edf5) !important;
    border-color: var(--brand-blue, #1b2a4a) !important;
    opacity: 1 !important; /* override Syncfusion disabled opacity */
    cursor: default;
}

[b-yl0t8gjzhd] .bsc-calc-updating::after {
    content: '';
    position: absolute;
    inset: 0;
    transform: translateX(-100%);
    background: linear-gradient(
        90deg,
        transparent      0%,
        rgba(255,255,255,0.28) 50%,
        transparent      100%
    );
    animation: bsc-calc-sweep-b-yl0t8gjzhd 1.5s ease-in-out infinite;
    pointer-events: none;
}

@keyframes bsc-calc-sweep-b-yl0t8gjzhd {
    0%   { transform: translateX(-120%); }
    100% { transform: translateX(220%); }
}
/* /Components/Pages/Projects/ProjectControlsPhasePlanner.razor.rz.scp.css */
.metric-tile[b-9ye707zjym] {
    min-height: 82px;
    padding: 0.85rem;
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 0.75rem;
    background: var(--bomsync-elevated-surface);
    box-shadow: var(--bomsync-shadow-sm);
}

.ru-kpi-snapshot-row .metric-tile[b-9ye707zjym] {
    position: relative;
    min-height: 92px;
    padding-top: 1rem;
    border-top: 3px solid color-mix(in oklab, var(--brand-blue) 42%, var(--bomsync-border-strong));
    background: linear-gradient(
        180deg,
        color-mix(in oklab, var(--brand-blue) 6%, var(--bomsync-elevated-surface)) 0%,
        var(--bomsync-elevated-surface) 52%
    );
    transition: box-shadow 0.18s ease, transform 0.18s ease, border-color 0.18s ease;
}

.ru-kpi-snapshot-row .metric-tile:hover[b-9ye707zjym] {
    border-color: var(--bomsync-border-strong);
    border-top-color: color-mix(in oklab, var(--brand-blue) 70%, transparent);
    box-shadow: var(--bomsync-shadow-md);
    transform: translateY(-2px);
}

.metric-value[b-9ye707zjym] {
    color: var(--brand-blue);
    font-weight: 700;
    font-size: 1.05rem;
    line-height: 1.2;
    font-variant-numeric: tabular-nums;
}

.ru-kpi-snapshot-row .metric-label[b-9ye707zjym] {
    margin-top: 0.35rem;
}

.metric-label[b-9ye707zjym] {
    color: var(--bomsync-text-secondary);
    font-size: 0.9rem;
}

.resource-footing-panel[b-9ye707zjym] {
    padding: 1rem;
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 0.85rem;
    background: var(--bomsync-elevated-surface);
    box-shadow: var(--bomsync-shadow-sm);
}

.resource-footing-chip[b-9ye707zjym] {
    min-height: 74px;
    padding: 0.75rem;
    border: 1px solid var(--bomsync-border);
    border-radius: 0.7rem;
    background: var(--bomsync-surface);
}

.resource-action-card[b-9ye707zjym] {
    padding: 0.85rem;
    border: 1px solid var(--bomsync-border);
    border-radius: 0.75rem;
    background: var(--bomsync-surface);
}

.resource-kpi-card[b-9ye707zjym] {
    padding: 1rem;
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 0.85rem;
    background: var(--bomsync-elevated-surface);
    box-shadow: var(--bomsync-shadow-sm);
}

.ru-enterprise-kpi-row .resource-kpi-card[b-9ye707zjym] {
    position: relative;
    padding-top: 1.1rem;
    border-left: 4px solid color-mix(in oklab, var(--brand-blue) 55%, var(--bomsync-border-strong));
    background: linear-gradient(
        135deg,
        color-mix(in oklab, var(--brand-blue) 5%, var(--bomsync-elevated-surface)) 0%,
        var(--bomsync-elevated-surface) 38%,
        var(--bomsync-elevated-surface) 100%
    );
    transition: box-shadow 0.18s ease, transform 0.18s ease, border-left-color 0.18s ease;
}

.ru-enterprise-kpi-row .resource-kpi-card:hover[b-9ye707zjym] {
    border-left-color: var(--brand-blue);
    box-shadow: var(--bomsync-shadow-md);
    transform: translateY(-2px);
}

.ru-enterprise-kpi-row .resource-kpi-card h3[b-9ye707zjym] {
    color: var(--bomsync-text-primary);
    letter-spacing: 0.01em;
}

.resource-kpi-card ul[b-9ye707zjym] {
    padding-left: 1.1rem;
}
/* /Components/Pages/Projects/ProjectDetails.razor.rz.scp.css */
#project-hub-toast-host[b-rzctj92sn2] {
    flex-shrink: 0;
}

/* ── Project hub hero: inset actions from far edge; thumb left of title lives in BomsyncPageChrome ── */
.project-details-hub-page[b-rzctj92sn2]  .project-hub-hero-chrome .bomsync-page-hero-inner {
    padding-inline-end: clamp(28px, 5vw, 88px);
}

.project-hub-hero-thumb[b-rzctj92sn2] {
    width: 56px;
    height: 56px;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid rgba(255 255 255 / 0.22);
    background: rgba(255 255 255 / 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
}

.project-hub-hero-thumb img[b-rzctj92sn2] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.project-hub-hero-thumb .bi[b-rzctj92sn2] {
    font-size: 1.75rem;
    color: rgba(232 237 245 / 0.88);
}

.project-hub-hero-footer-inner[b-rzctj92sn2] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem;
}

.project-hub-hero-progress[b-rzctj92sn2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex: 1 1 240px;
    min-width: 0;
    max-width: 560px;
}

.project-hub-hero-progress__track[b-rzctj92sn2] {
    flex: 1 1 180px;
    height: 8px;
    border-radius: 4px;
    overflow: hidden;
    background: rgba(255 255 255 / 0.14);
}

.project-hub-hero-progress__fill[b-rzctj92sn2] {
    height: 100%;
    border-radius: 4px;
    background: linear-gradient(90deg, var(--bsx-action, #2f6690), color-mix(in srgb, var(--bsx-action, #2f6690) 55%, #e8edf5));
    transition: width 0.35s ease;
}

.project-hub-hero-progress__label[b-rzctj92sn2] {
    font-size: 0.82rem;
    font-weight: 600;
    color: rgba(232 237 245 / 0.82);
    white-space: nowrap;
}

.project-hub-hero-badges[b-rzctj92sn2] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem;
}

.project-hub-hero-badges .badge.bg-secondary[b-rzctj92sn2] {
    background: rgba(255 255 255 / 0.16) !important;
    color: #e8edf5;
    border: 1px solid rgba(255 255 255 / 0.22);
}

/* ── Toolbar under summary (horizontal scroll on narrow widths) ── */
.project-hub-action-bar[b-rzctj92sn2] {
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid var(--bomsync-border-strong, #cdd4e0);
    background: var(--bomsync-elevated-surface, #fff);
    min-height: 48px;
    overflow: visible;
    position: relative;
    z-index: 100;
    flex-shrink: 0;
    align-self: stretch;
}

.project-hub-action-bar__inner[b-rzctj92sn2] {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    overflow-x: auto;
    overflow-y: visible;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.project-hub-action-bar__inner[b-rzctj92sn2]::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.project-hub-toolbar-btn[b-rzctj92sn2] {
    flex-shrink: 0;
    white-space: nowrap;
}

.project-hub-action-bar .project-hub-toolbar-btn.btn-outline-secondary[b-rzctj92sn2] {
    color: var(--bomsync-text-primary, #1a2c42);
    border-color: var(--bomsync-border-strong, #c5cdd8);
}

.project-hub-action-bar .project-hub-toolbar-btn.btn-outline-secondary .bi[b-rzctj92sn2] {
    color: var(--bsx-action, #2f6690);
    opacity: 1;
}

.project-hub-action-bar .project-hub-toolbar-btn.btn-outline-secondary:hover .bi[b-rzctj92sn2] {
    color: var(--brand-blue, #111b2c);
}

.project-hub-toolbar-dropdown[b-rzctj92sn2] {
    flex-shrink: 0;
}

.project-hub-action-bar .dropdown-menu[b-rzctj92sn2] {
    z-index: 1050;
}

/* ── Tabs ── */
.project-hub-tabs[b-rzctj92sn2] {
    margin: 0;
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

/* Project hub tabs: active glow style + neutral grey inactive tabs */
[b-rzctj92sn2] .bomsync-tab.e-tab {
    background: transparent;
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

[b-rzctj92sn2] .bomsync-tab .e-tab-header {
    border-bottom: 1px solid rgba(110, 150, 220, 0.28);
    background: transparent;
    flex-shrink: 0;
}

[b-rzctj92sn2] .bomsync-tab .e-tab-header .e-toolbar-item {
    margin-right: 6px;
}

/* Neutral inactive tabs */
[b-rzctj92sn2] .bomsync-tab .e-tab-header .e-toolbar-item .e-tab-wrap {
    height: 48px;
    min-height: 48px;
    padding: 0 20px;
    border-radius: 10px 10px 0 0;
    border: 1px solid rgba(154, 166, 184, 0.3);
    border-bottom: none;
    background: linear-gradient(180deg, #4f5868 0%, #404856 100%);
    color: #dde3ec;
    transition: all 0.2s ease;
}

[b-rzctj92sn2] .bomsync-tab .e-tab-header .e-toolbar-item .e-tab-text,
[b-rzctj92sn2] .bomsync-tab .e-tab-header .e-toolbar-item .e-tab-icon {
    color: #dde3ec !important;
    font-weight: 600;
}

/* HeaderTemplate uses Bootstrap Icons (<i class="bi">) — match inactive tab label (warm grey-white) */
[b-rzctj92sn2] .bomsync-tab .e-tab-header .e-toolbar-item:not(.e-active) .e-tab-wrap .bi {
    color: #dde3ec !important;
    opacity: 1;
}

/* Hover on inactive tabs */
[b-rzctj92sn2] .bomsync-tab .e-tab-header .e-toolbar-item:hover .e-tab-wrap {
    background: linear-gradient(180deg, #606a7a 0%, #4b5463 100%);
    color: #f4f8ff;
}

[b-rzctj92sn2] .bomsync-tab .e-tab-header .e-toolbar-item:hover:not(.e-active) .e-tab-wrap .bi {
    color: #f4f8ff !important;
}

/* Active tab — brand / hub blues (align with --bsx-action + navy) */
[b-rzctj92sn2] .bomsync-tab .e-tab-header .e-toolbar-item.e-active .e-tab-wrap {
    position: relative;
    background: linear-gradient(
        180deg,
        var(--bsx-action, #2f6690) 0%,
        color-mix(in srgb, var(--brand-blue, #111b2c) 42%, var(--bsx-action, #2f6690)) 100%
    );
    color: #ffffff;
    border: 1px solid rgba(106 215 255 / 0.42);
    border-bottom: none;
    box-shadow:
        0 0 0 1px rgba(255 255 255 / 0.06) inset,
        0 10px 22px rgb(17 27 44 / 0.35);
}

[b-rzctj92sn2] .bomsync-tab .e-tab-header .e-toolbar-item.e-active .e-tab-text,
[b-rzctj92sn2] .bomsync-tab .e-tab-header .e-toolbar-item.e-active .e-tab-icon {
    color: #ffffff !important;
    font-weight: 600;
    letter-spacing: 0.2px;
}

[b-rzctj92sn2] .bomsync-tab .e-tab-header .e-toolbar-item.e-active .e-tab-wrap .bi {
    color: #ffffff !important;
}

/* Accent line under active tab — theme cyan, not electric neon */
[b-rzctj92sn2] .bomsync-tab .e-tab-header .e-toolbar-item.e-active .e-tab-wrap::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: -2px;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(106 215 255 / 0.95) 0%, rgba(65 90 119 / 0.95) 100%);
    box-shadow: 0 0 10px rgba(106 215 255 / 0.35);
}

[b-rzctj92sn2] .bomsync-tab .e-tab-header:not(.e-vertical) .e-indicator,
[b-rzctj92sn2] .bomsync-tab .e-tab-header.e-vertical .e-indicator {
    background: rgba(106 215 255 / 0.9) !important;
    height: 3px !important;
    border-radius: 999px !important;
}

[b-rzctj92sn2] .bomsync-tab .e-content {
    background: transparent;
    border: none;
    color: #dbe7f7;
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
}

/* Team & Trades panel subtitles on navy headers */
.project-hub-team-panel-note[b-rzctj92sn2],
.project-hub-trades-panel-note[b-rzctj92sn2] {
    font-size: 0.8125rem;
    line-height: 1.45;
    font-weight: 400;
    color: rgba(248 250 252 / 0.92);
}

/* ── Metric Tiles ── */
.metric-tile[b-rzctj92sn2] { padding: 8px 4px; }
.metric-value[b-rzctj92sn2] { font-size: 1.1rem; font-weight: 700; color: #1a2c42; }
.metric-label[b-rzctj92sn2] { font-size: 0.72rem; color: #6c757d; text-transform: uppercase; letter-spacing: 0.04em; }

/* ── Financial KPI Tiles ── */
.fin-kpi-tile[b-rzctj92sn2] { position: relative; background: #fff; border: 1px solid #dee2e6; border-radius: 6px; padding: 10px 12px; text-align: center; height: 100%; }
.fin-kpi-info-corner[b-rzctj92sn2] { position: absolute; top: 4px; right: 4px; z-index: 2; line-height: 0; }
.fin-kpi-info-btn[b-rzctj92sn2] { display: inline-flex; align-items: center; justify-content: center; border: none; background: transparent; padding: 2px; margin: 0; color: #6c757d; cursor: help; border-radius: 50%; }
.fin-kpi-info-btn:hover[b-rzctj92sn2], .fin-kpi-info-btn:focus-visible[b-rzctj92sn2] { color: #0d6efd; outline: none; }
.fin-kpi-info-btn .bi[b-rzctj92sn2] { font-size: 0.95rem; }
.fin-kpi-label[b-rzctj92sn2] { font-size: 0.68rem; text-transform: uppercase; letter-spacing: 0.05em; color: #6c757d; margin-bottom: 4px; padding-inline-end: 18px; }
.fin-kpi-value[b-rzctj92sn2] { font-size: 1.1rem; font-weight: 700; color: #1a2c42; }
.fin-kpi-committed[b-rzctj92sn2] { border-top: 3px solid #0d6efd; }
.fin-kpi-spent[b-rzctj92sn2] { border-top: 3px solid #198754; }
.fin-kpi-pending[b-rzctj92sn2] { border-top: 3px solid #fd7e14; }
.fin-kpi-forecast[b-rzctj92sn2] { border-top: 3px solid #6f42c1; }
.fin-kpi-ok[b-rzctj92sn2] { border-top: 3px solid #198754; }
.fin-kpi-warning[b-rzctj92sn2] { border-top: 3px solid #ffc107; }
.fin-kpi-danger[b-rzctj92sn2] { border-top: 3px solid #dc3545; }
.fin-kpi-ok .fin-kpi-value[b-rzctj92sn2] { color: #198754; }
.fin-kpi-warning .fin-kpi-value[b-rzctj92sn2] { color: #856404; }
.fin-kpi-danger .fin-kpi-value[b-rzctj92sn2] { color: #dc3545; }

/* ── Phase Timeline ── */
.phase-timeline[b-rzctj92sn2] { display: flex; gap: 0; overflow-x: auto; padding-bottom: 8px; }
.phase-step[b-rzctj92sn2] { display: flex; flex-direction: column; align-items: center; flex: 1; min-width: 90px; position: relative; }
.phase-step:not(:last-child)[b-rzctj92sn2]::after { content: ''; position: absolute; top: 10px; left: 50%; width: 100%; height: 2px; background: #dee2e6; z-index: 0; }
.phase-dot[b-rzctj92sn2] { width: 20px; height: 20px; border-radius: 50%; background: #dee2e6; border: 3px solid #fff; box-shadow: 0 0 0 2px #dee2e6; z-index: 1; margin-bottom: 6px; }
.phase-step.active .phase-dot[b-rzctj92sn2] { background: #0d6efd; box-shadow: 0 0 0 2px #0d6efd; }
.phase-step.active .phase-label[b-rzctj92sn2] { color: #0d6efd; font-weight: 600; }
.phase-label[b-rzctj92sn2] { font-size: 0.78rem; text-align: center; }
.phase-code[b-rzctj92sn2] { font-size: 0.68rem; }

/* ── Item Catalog ── */
.item-catalog-row:hover[b-rzctj92sn2] { background: #f0f7ff; }
.item-selected[b-rzctj92sn2] { background: #e8f4fd; }

/* ── Images tab ── */
.img-grid-row-hover[b-rzctj92sn2]  .e-row { cursor: pointer; }
.img-grid-row-hover[b-rzctj92sn2]  .e-row:hover td { background: #e8f4ff !important; }

/* ── Activity Log ── */
.activity-log-timeline[b-rzctj92sn2] { display: flex; flex-direction: column; gap: 0; }
.activity-entry[b-rzctj92sn2] { display: grid; grid-template-columns: 160px 1fr; gap: 12px; padding: 10px 0; border-bottom: 1px solid #f0f0f0; }
.activity-entry.system-generated[b-rzctj92sn2] { opacity: 0.65; }
.activity-time[b-rzctj92sn2] { font-size: 0.75rem; color: #6c757d; white-space: nowrap; padding-top: 2px; }
.activity-summary[b-rzctj92sn2] { font-size: 0.87rem; }
.activity-details[b-rzctj92sn2] { margin-top: 2px; }
.activity-badge[b-rzctj92sn2] { font-size: 0.7rem; }

/* Hero: project code + status badges (~25% larger than typical compact badges) */
.project-hub-hero-code-status .badge[b-rzctj92sn2] {
    font-size: 1.0625rem;
    font-weight: 600;
    padding: 0.5em 0.75em;
}

/* Details tab: section headers + clearer inputs */
.project-hub-details-card[b-rzctj92sn2] {
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 10px;
    overflow: hidden;
    box-shadow: var(--bomsync-shadow-sm);
    background: var(--bomsync-elevated-surface);
}

/* Card headers: solid lighter-blue (action blue) — no gradient per design update */
.project-hub-details-section-header[b-rzctj92sn2] {
    margin-bottom: 0;
    padding: 0.6rem 1rem;
    background: var(--bsx-action, #2F6690);
    border-bottom: 2px solid rgba(22, 135, 220, 0.3);
    color: #ffffff;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

/* Ensure any nested <a> or badge in the header stays light */
.project-hub-details-section-header a[b-rzctj92sn2],
.project-hub-details-section-header .btn-outline-secondary[b-rzctj92sn2] {
    border-color: rgba(255,255,255,0.4);
    color: rgba(255,255,255,0.9);
    font-size: 0.72rem;
}
.project-hub-details-section-header a:hover[b-rzctj92sn2],
.project-hub-details-section-header .btn-outline-secondary:hover[b-rzctj92sn2] {
    background: rgba(255,255,255,0.15);
    border-color: rgba(255,255,255,0.65);
    color: #ffffff;
}

/* Card body: subtle cool-blue tint instead of flat grey */
.project-hub-details-card-body[b-rzctj92sn2] {
    background: linear-gradient(
        180deg,
        color-mix(in srgb, var(--bsx-action, #2F6690) 5%, var(--bomsync-page-bg, #f4f6fa)) 0%,
        var(--bomsync-page-bg, #f4f6fa) 100%
    );
}

/* Form labels: slightly accented to break grey monotony */
.project-hub-details-card-body .form-label[b-rzctj92sn2] {
    color: var(--bsx-action, #2F6690);
    font-weight: 600;
    font-size: 0.78rem;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    margin-bottom: 0.25rem;
}

.project-hub-details-card-body[b-rzctj92sn2]  .e-input-group:not(.e-disabled),
.project-hub-details-card-body[b-rzctj92sn2]  .e-float-input.e-input-group:not(.e-disabled) {
    border-color: var(--bomsync-border-strong);
}

.project-hub-details-card-body[b-rzctj92sn2]  .e-input:focus,
.project-hub-details-card-body[b-rzctj92sn2]  .e-input-group input:focus {
    border-color: var(--brand-blue);
}

.project-hub-details-card-body[b-rzctj92sn2]  .multiline-textbox textarea.e-input {
    border-color: var(--bomsync-border-strong);
    background: var(--bomsync-elevated-surface);
}

/* Contacts tab — directory summary badges: match row height to adjacent SfButton e-small (Add Direct Contact) */
.project-hub-directory-summary-badge[b-rzctj92sn2] {
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.15;
    padding: 5px 10px;
}

/* Document upload dialog — hide Syncfusion's Upload button (no SaveUrl); we upload via Blob API + "Upload to project". */
.project-hub-doc-upload-dialog-body[b-rzctj92sn2]  button.e-upload,
.project-hub-doc-upload-dialog-body[b-rzctj92sn2]  .e-btn-upload {
    display: none !important;
}

/* Items tab — catalog picker: ~2× readable vs Bootstrap small for codes and names */
.project-hub-item-catalog .item-catalog-row[b-rzctj92sn2] {
    font-size: 1rem;
    line-height: 1.55;
    min-height: 2.75rem;
}

.project-hub-item-catalog .item-catalog-code[b-rzctj92sn2] {
    font-size: 1rem;
    font-weight: 500;
    color: var(--bomsync-text-secondary, #5c6570);
}

.project-hub-item-catalog .item-catalog-name[b-rzctj92sn2] {
    font-size: 1.0625rem;
    font-weight: 600;
    color: var(--bomsync-text-primary, #1a2c42);
}

.project-hub-item-catalog[b-rzctj92sn2]  .e-checkbox-wrapper .e-label {
    font-size: 1rem;
}

/* Chrome wrap: keep tab workspace stretching with layout chrome */
.project-details-hub-page[b-rzctj92sn2] {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}

.project-details-hub-page #project-hub-main[b-rzctj92sn2] {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
}
/* /Components/Pages/Projects/ProjectEnterpriseResponsibilityMatrixPanel.razor.rz.scp.css */
.project-erm-panel .erm-legend-bar[b-i83ifzr47v] {
    background: var(--bomsync-elevated-surface, #f8f9fa);
    border: 1px solid var(--bomsync-border-strong, #dee2e6);
    border-radius: 8px;
    padding: 10px 14px;
}

.project-erm-panel .erm-legend-title[b-i83ifzr47v] {
    color: var(--brand-blue, #1a2c42);
    font-size: 0.95rem;
}

.project-erm-panel .erm-legend-badge[b-i83ifzr47v] {
    font-size: 0.75rem;
    padding: 4px 8px;
}

.project-erm-panel .erm-matrix-head[b-i83ifzr47v] {
    background: var(--brand-blue, #1a2c42);
    color: var(--bomsync-on-dark-text, #fff);
}

.project-erm-panel .erm-matrix-corner[b-i83ifzr47v] {
    min-width: 200px;
    padding: 8px 10px;
    font-weight: 600;
    border-color: rgba(255, 255, 255, 0.15);
}

.project-erm-panel .erm-matrix-col-head[b-i83ifzr47v] {
    padding: 6px 8px;
    min-width: 90px;
    border-color: rgba(255, 255, 255, 0.15);
}

.project-erm-panel .erm-matrix-col-title[b-i83ifzr47v] {
    font-size: 0.75rem;
    font-weight: 700;
}

.project-erm-panel .erm-matrix-col-sub[b-i83ifzr47v] {
    font-size: 0.65rem;
    opacity: 0.85;
    font-weight: 400;
}

.project-erm-panel .erm-matrix-row-label[b-i83ifzr47v] {
    padding: 7px 10px;
    background: var(--bomsync-elevated-surface, #f8f9fa);
    font-weight: 500;
    border-right: 2px solid var(--bomsync-border-strong, #dee2e6);
}

.project-erm-panel .erm-matrix-row-name[b-i83ifzr47v] {
    font-size: 0.82rem;
    color: var(--brand-blue, #1a2c42);
}

.project-erm-panel .erm-matrix-row-desc[b-i83ifzr47v] {
    font-size: 0.68rem;
    color: var(--bomsync-text-secondary, #6c757d);
}

.project-erm-panel .erm-matrix-cell[b-i83ifzr47v] {
    padding: 4px;
}

.project-erm-panel .erm-raci-badge[b-i83ifzr47v] {
    display: inline-block;
    width: 28px;
    height: 28px;
    line-height: 28px;
    border-radius: 50%;
    color: #fff;
    font-weight: 700;
    font-size: 0.8rem;
    cursor: pointer;
}

.project-erm-panel .erm-matrix-add[b-i83ifzr47v] {
    color: var(--bomsync-border-strong, #dee2e6);
    font-size: 1rem;
}

.project-erm-panel .erm-matrix-clear[b-i83ifzr47v] {
    font-size: 0.65rem;
    color: var(--bomsync-text-muted, #adb5bd);
    line-height: 1;
}

.project-erm-panel .erm-dialog-head[b-i83ifzr47v] {
    color: var(--brand-blue, #1a2c42);
    font-weight: 700;
}

.project-erm-panel .erm-matrix-scroll[b-i83ifzr47v] {
    overflow-x: auto;
    max-width: 100%;
}

.project-erm-panel .erm-matrix-table[b-i83ifzr47v] {
    width: max-content;
    min-width: 640px;
    font-size: 0.82rem;
}

/* Party filter row — narrow scope DDL to hint width; combo width set on SfComboBox; actions align with inputs */
.project-erm-panel .erm-party-filter-col[b-i83ifzr47v] {
    max-width: min(100%, 26rem);
    flex: 0 0 auto;
}

.project-erm-panel .erm-party-filter-hint[b-i83ifzr47v] {
    max-width: 26rem;
}

.project-erm-panel .erm-party-party-col[b-i83ifzr47v] {
    flex: 1 1 12rem;
    min-width: 0;
}

.project-erm-panel .erm-party-action-buttons[b-i83ifzr47v] {
    margin-top: 1.75rem;
}
/* /Components/Pages/Projects/ProjectModelGroupModelAssignmentPanel.razor.rz.scp.css */
.e-grid .e-toolbar .e-tbar-btn-text[b-tgdh8xurlj],
.e-grid .e-toolbar .e-toolbar-items .e-toolbar-item .e-tbar-btn-text[b-tgdh8xurlj] {
    display: none;
}

.e-collapse[b-tgdh8xurlj]::before {
    content: '\e834';
}

.toolbar-margin-right[b-tgdh8xurlj] {
    margin-right: 10px;
}

.pgm-bim-flyout-scope[b-tgdh8xurlj] {
    isolation: isolate;
}

.pgm-bim-available-flyout[b-tgdh8xurlj] {
    position: absolute;
    top: 0;
    right: 0;
    width: min(440px, 94vw);
    max-height: 100%;
    z-index: 25;
    background: var(--bomsync-elevated-surface, #fbfcff);
    display: flex;
    flex-direction: column;
    box-shadow: var(--bomsync-shadow-md, 0 8px 24px rgb(17 27 44 / 0.12));
}

/* Flyout BIM grid: stronger selection band (checkbox + row) */
[b-tgdh8xurlj] .pgm-bim-flyout-grid .e-grid .e-row.e-selectionbackground .e-rowcell,
[b-tgdh8xurlj] .pgm-bim-flyout-grid .e-grid .e-row.e-active .e-rowcell {
    background-color: rgb(47 102 144 / 0.16) !important;
    box-shadow: inset 3px 0 0 var(--bsx-action, #2f6690);
}

.pgm-bim-available-flyout .e-grid[b-tgdh8xurlj] {
    min-height: 0;
}
/* /Components/Pages/Public/BetaNda.razor.rz.scp.css */
/* Visual styles for .legal-doc-page are in wwwroot/css/legal-doc-pages.css (shared with Terms, Privacy, DPA). */
/* /Components/Pages/Public/PageHero.razor.rz.scp.css */
/* Eyebrow leading icon (Bootstrap Icons) */
.bomsync-page-hero-eyebrow-icon[b-rhr8vnr1eu] {
    font-size: 1.05rem;
    line-height: 1;
    flex-shrink: 0;
    opacity: 0.95;
}

/* Subtitle / rich hero lines under title — on-dark readable links */
.page-hero-subcontent[b-rhr8vnr1eu] {
    font-size: 0.88rem;
    line-height: 1.45;
    letter-spacing: 0.03em;
    color: rgba(232 237 245 / 0.72);
}

.page-hero-subcontent a[b-rhr8vnr1eu] {
    color: rgba(186 230 253 / 0.95);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.page-hero-subcontent a:hover[b-rhr8vnr1eu] {
    color: #fff;
}
/* /Components/Pages/Public/PreReleaseConfidentiality.razor.rz.scp.css */
/* Visual styles for .legal-doc-page are in wwwroot/css/legal-doc-pages.css (shared with Terms, Privacy, DPA). */
/* /Components/Pages/Reporting/ReportDashboard.razor.rz.scp.css */
/* Report Dashboard – page layout; Fluent 2 theme applied via Syncfusion components */
.report-dashboard-actions[b-1b3z9jf4yb] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}
/* /Components/Pages/Submittals/SubmittalsHub.razor.rz.scp.css */
/*
 * Scoped styles for SubmittalsHub.
 * KPI metric tiles live here (not in SubmittalsWorkspaceChrome.razor.css) because
 * Blazor scopes CSS to the component that emits the HTML.  ChildContent RenderFragments
 * are emitted by the parent (hub), so Chrome-scoped CSS never reaches them.
 */

/* ─── KPI metrics bar ─────────────────────────────────────────────── */

.swp-metrics-bar[b-cdu4euh7un] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 16px;
}

.swp-metric-tile[b-cdu4euh7un] {
    flex: 1 1 110px;
    min-width: 96px;
    max-width: 210px;
    background: var(--bomsync-elevated-surface);
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 14px;
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    box-shadow: var(--bomsync-shadow-sm);
    transition: transform 0.12s, box-shadow 0.12s;
}

.swp-metric-tile:hover[b-cdu4euh7un] {
    transform: translateY(-2px);
    box-shadow: var(--bomsync-shadow-md);
}

.swp-metric-num[b-cdu4euh7un] {
    font-size: 2rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.03em;
    color: var(--brand-blue);
}

.swp-metric-sub[b-cdu4euh7un] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--bomsync-text-secondary);
    margin-top: 4px;
}

.swp-metric-tile.swp-kpi-warning .swp-metric-num[b-cdu4euh7un] { color: #e09a1e; }
.swp-metric-tile.swp-kpi-danger  .swp-metric-num[b-cdu4euh7un] { color: #d64545; }
.swp-metric-tile.swp-kpi-success .swp-metric-num[b-cdu4euh7un] { color: #2a9d8f; }
.swp-metric-tile.swp-kpi-muted   .swp-metric-num[b-cdu4euh7un] { color: var(--bomsync-text-muted); }

/* ─── Register action buttons ─────────────────────────────────────── */

.swp-action-bar[b-cdu4euh7un] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}

.swp-action-btn[b-cdu4euh7un] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    border-radius: 10px;
    font-size: 0.88rem;
    font-weight: 600;
    cursor: pointer;
    border: 1px solid var(--bomsync-border-strong);
    background: var(--bomsync-elevated-surface);
    color: var(--bomsync-text-secondary);
    transition: background 0.12s, border-color 0.12s, color 0.12s, transform 0.1s, box-shadow 0.12s;
    text-decoration: none;
    white-space: nowrap;
}

.swp-action-btn:hover[b-cdu4euh7un] {
    background: color-mix(in oklab, var(--brand-blue) 8%, var(--bomsync-elevated-surface));
    border-color: var(--brand-blue);
    color: var(--bomsync-text);
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgb(17 27 44 / 0.1);
}

.swp-action-btn:active[b-cdu4euh7un] {
    transform: translateY(0);
}

.swp-action-btn .swp-action-icon[b-cdu4euh7un] {
    font-size: 1rem;
    opacity: 0.8;
}

.swp-action-btn.swp-action-btn--primary[b-cdu4euh7un] {
    background: linear-gradient(165deg, color-mix(in oklab, var(--brand-blue) 92%, white), var(--brand-blue));
    border-color: color-mix(in oklab, var(--brand-blue) 70%, var(--bomsync-border-strong));
    color: var(--bomsync-on-dark-text, #fff);
    box-shadow: 0 2px 10px rgb(17 27 44 / 0.18);
}

.swp-action-btn.swp-action-btn--primary:hover[b-cdu4euh7un] {
    filter: brightness(1.06);
    color: var(--bomsync-on-dark-text, #fff);
}

.swp-action-btn.swp-action-btn--primary:disabled[b-cdu4euh7un] {
    opacity: 0.45;
    cursor: not-allowed;
    filter: grayscale(0.2);
}
/* /Components/Pages/Support/UserGuideArticle.razor.rz.scp.css */
/* Readable markdown body — mirrors coach-readable scale */
.user-guide-article .user-guide-md[b-0ctmnq0cnn] {
    background: var(--bomsync-elevated-surface, #fff);
}

.user-guide-article[b-0ctmnq0cnn]  .user-guide-md h1,
.user-guide-article[b-0ctmnq0cnn]  .user-guide-md h2,
.user-guide-article[b-0ctmnq0cnn]  .user-guide-md h3 {
    color: var(--bomsync-text-primary, #212529);
    margin-top: 1.25rem;
    margin-bottom: 0.75rem;
    font-weight: 600;
}

.user-guide-article[b-0ctmnq0cnn]  .user-guide-md h1:first-child {
    margin-top: 0;
}

.user-guide-article[b-0ctmnq0cnn]  .user-guide-md p,
.user-guide-article[b-0ctmnq0cnn]  .user-guide-md li {
    font-size: 1rem;
    line-height: 1.6;
    color: var(--bomsync-text-secondary, #495057);
}

.user-guide-article[b-0ctmnq0cnn]  .user-guide-md a {
    color: var(--brand-blue, #1e3a5f);
    text-decoration: underline;
}

.user-guide-article[b-0ctmnq0cnn]  .user-guide-md pre {
    background: var(--bomsync-page-bg, #f8f9fa);
    border: 1px solid var(--bomsync-border-strong, #dee2e6);
    border-radius: 0.375rem;
    padding: 0.75rem 1rem;
    overflow-x: auto;
}

.user-guide-article[b-0ctmnq0cnn]  .user-guide-md code {
    font-size: 0.9em;
}
/* /Components/Pages/Support/UserGuidesLanding.razor.rz.scp.css */
.user-guides-landing .user-guides-card-grid[b-k3awsnlirw] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
}

.user-guides-landing .user-guides-card[b-k3awsnlirw] {
    border: 1px solid var(--bomsync-border-strong, #dee2e6);
    border-radius: 0.5rem;
    box-shadow: 0 1px 2px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.06);
    transition: box-shadow 0.15s ease, border-color 0.15s ease;
    color: inherit;
}

.user-guides-landing .user-guides-card:hover[b-k3awsnlirw] {
    border-color: var(--brand-blue, #1e3a5f);
    box-shadow: 0 4px 12px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.12);
}

.user-guides-landing .user-guides-card:focus-visible[b-k3awsnlirw] {
    outline: 2px solid var(--brand-blue, #1e3a5f);
    outline-offset: 2px;
}
/* /Components/Pages/Testing/StoredProcedures.razor.rz.scp.css */
/* Cap action buttons even if Syncfusion applies full-width wrapper styles */
.spall-page .spall-actions[b-950zizw3hc] (.e-btn),
.spall-page .spall-actions[b-950zizw3hc] (button.e-btn) {
    max-width: 300px;
    width: 100%;
    box-sizing: border-box;
}

.spall-section[b-950zizw3hc] {
    max-width: 480px;
}
/* /Components/Pages/UserSettings/SettingCurrencyRateGrid.razor.rz.scp.css */
/* ECB / Frankfurter refresh: Syncfusion circular refresh + small $ overlay. */
.setting-currency-rate-grid[b-rroh1a7z3j]  .fx-frankfurter-refresh-toolbar .e-tbar-btn .e-btn-icon {
    position: relative;
    font-size: 1.1rem !important;
}

.setting-currency-rate-grid[b-rroh1a7z3j]  .fx-frankfurter-refresh-toolbar .e-tbar-btn .e-btn-icon::after {
    content: "$";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    font-size: 0.5rem;
    font-weight: 700;
    font-family: system-ui, "Segoe UI", sans-serif;
    line-height: 1;
    pointer-events: none;
    color: var(--brand-blue, #0d3b66);
}

/* Default: icon-only toolbar (project pattern). ECB FX row shows label via ItemModel.Text + rule below. */
.setting-currency-rate-grid[b-rroh1a7z3j]  .e-toolbar .e-tbar-btn-text,
.setting-currency-rate-grid[b-rroh1a7z3j]  .e-toolbar .e-toolbar-items .e-toolbar-item .e-tbar-btn-text {
    display: none;
}

.setting-currency-rate-grid[b-rroh1a7z3j]  .e-toolbar-item.fx-frankfurter-refresh-toolbar .e-tbar-btn .e-tbar-btn-text {
    display: inline-block !important;
    font-size: 0.7rem;
    font-weight: 600;
    margin-left: 2px;
    max-width: 3.5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
}

.e-collapse[b-rroh1a7z3j]::before {
    content: '\e834';
}

.toolbar-margin-right[b-rroh1a7z3j] {
    margin-right: 10px;
}

.currency-rates-toast-host[b-rroh1a7z3j] {
    position: fixed;
    right: 16px;
    bottom: 16px;
    z-index: 12000;
    width: 360px;
    pointer-events: none;
}

.currency-rates-toast-host[b-rroh1a7z3j]  .e-toast {
    pointer-events: auto;
}

.currency-rates-fx-chart-card[b-rroh1a7z3j] {
    border: 1px solid var(--bomsync-border-strong, rgba(17, 27, 44, 0.14));
    border-radius: 8px;
    background: var(--bomsync-elevated-surface, var(--bs-body-bg, #fff));
    box-shadow: var(--bomsync-shadow-sm, 0 1px 2px rgb(var(--bomsync-shadow-rgb, 17 27 44) / 0.08));
}

.currency-rates-fx-chart-card-inner[b-rroh1a7z3j] {
    padding: 1rem 1rem 0.75rem;
    min-height: 0;
}

.setting-currency-rates-main-grid-col[b-rroh1a7z3j] {
    min-width: 0;
}

.currency-rates-history-fullwidth[b-rroh1a7z3j] {
    min-width: 0;
}

.currency-rates-fx-chart-host[b-rroh1a7z3j] {
    min-width: 0;
}

.currency-rates-fx-combo-table th[b-rroh1a7z3j],
.currency-rates-fx-combo-table td[b-rroh1a7z3j] {
    padding: 0.15rem 0.35rem;
    vertical-align: top;
}

.currency-rates-fx-combo-name[b-rroh1a7z3j] {
    max-width: 11rem;
}

.currency-rates-fx-range-nav[b-rroh1a7z3j],
.currency-rates-fx-inverse-row[b-rroh1a7z3j] {
    min-width: 0;
}
/* /Components/Pages/UserSettings/TenantUserDirectory.razor.rz.scp.css */
/* People directory grid: read-only cells readable without competing with row striping (striping disabled on grid). */
.tenant-directory-people-grid[b-bg0rrg7aa5] (.e-grid .e-rowcell.col-readonly) {
    background-color: var(--bomsync-elevated-surface, #eef2f7);
    color: var(--bomsync-text-secondary, #334155);
    border-inline-start: 2px solid var(--bomsync-border-strong, #cbd5e1);
}

.tenant-directory-people-grid[b-bg0rrg7aa5] (.e-grid .e-headercell.col-readonly) {
    background-color: var(--bomsync-elevated-surface, #eef2f7);
    color: var(--bomsync-text-secondary, #334155);
}

/* Center boolean checkboxes in body and header */
.tenant-directory-people-grid[b-bg0rrg7aa5] (.e-grid .e-rowcell.e-checkboxcell),
.tenant-directory-people-grid[b-bg0rrg7aa5] (.e-grid .e-headercell.e-checkboxheader) {
    text-align: center;
}

.tenant-directory-people-grid[b-bg0rrg7aa5] (.e-grid .e-rowcell.e-checkboxcell .e-checkbox-wrapper),
.tenant-directory-people-grid[b-bg0rrg7aa5] (.e-grid .e-headercell.e-checkboxheader .e-checkbox-wrapper) {
    margin-inline: auto;
}
/* /Components/Pages/UserSettings/TenantUserDirectoryEmbed.razor.rz.scp.css */
/* Match full people directory grid treatment (scoped to embed). */
.tenant-directory-people-grid[b-asdqzx0t2z] (.e-grid .e-rowcell.col-readonly) {
    background-color: var(--bomsync-elevated-surface, #eef2f7);
    color: var(--bomsync-text-secondary, #334155);
    border-inline-start: 2px solid var(--bomsync-border-strong, #cbd5e1);
}

.tenant-directory-people-grid[b-asdqzx0t2z] (.e-grid .e-headercell.col-readonly) {
    background-color: var(--bomsync-elevated-surface, #eef2f7);
    color: var(--bomsync-text-secondary, #334155);
}

.tenant-directory-people-grid[b-asdqzx0t2z] (.e-grid .e-rowcell.e-checkboxcell),
.tenant-directory-people-grid[b-asdqzx0t2z] (.e-grid .e-headercell.e-checkboxheader) {
    text-align: center;
}

.tenant-directory-people-grid[b-asdqzx0t2z] (.e-grid .e-rowcell.e-checkboxcell .e-checkbox-wrapper),
.tenant-directory-people-grid[b-asdqzx0t2z] (.e-grid .e-headercell.e-checkboxheader .e-checkbox-wrapper) {
    margin-inline: auto;
}
/* /Components/Procurement/DocumentLinkSelectorBar.razor.rz.scp.css */
/* DocumentLinkSelectorBar — context-aware entity selector
   Used on all Document Link pages (RFQ, SO, PO, WO, Receiving, Shipment).
   ── EMPTY state: full card with SfComboBox ──────────────────────────────
   ── COMPACT state: slim top strip with switch button ────────────────────  */

/* ── Outer shell ─────────────────────────────────────────────────────── */
.dl-sel[b-erw7miv9rr] {
    margin-bottom: 14px;
}

/* ── COMPACT BAR ─────────────────────────────────────────────────────── */
.dl-sel-bar[b-erw7miv9rr] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    background: var(--bomsync-elevated-surface);
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 10px;
    padding: 8px 14px;
    box-shadow: var(--bomsync-shadow-sm);
}

.dl-sel-bar--switching[b-erw7miv9rr] {
    background: var(--bomsync-brand-subtle);
    border-color: var(--bsx-action, #2F6690);
}

.dl-sel-bar__icon[b-erw7miv9rr] {
    font-size: 1rem;
    color: var(--bsx-action, #2F6690);
    flex-shrink: 0;
}

.dl-sel-bar__domain[b-erw7miv9rr] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--bomsync-text-secondary);
    flex-shrink: 0;
}

.dl-sel-bar__sep[b-erw7miv9rr] {
    color: var(--bomsync-border-strong);
    flex-shrink: 0;
}

.dl-sel-bar__label[b-erw7miv9rr] {
    font-weight: 600;
    color: var(--bomsync-text);
    font-size: 0.9rem;
    flex: 1 1 auto;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 400px;
}

.dl-sel-bar__switch[b-erw7miv9rr] {
    background: var(--bomsync-brand-subtle-2);
    border: 1px solid var(--bomsync-border-strong);
    color: var(--bsx-action, #2F6690);
    border-radius: 7px;
    padding: 4px 12px;
    font-size: 0.82rem;
    font-weight: 600;
    cursor: pointer;
    flex-shrink: 0;
    transition: background 0.12s, border-color 0.12s;
    display: inline-flex;
    align-items: center;
}

.dl-sel-bar__switch:hover[b-erw7miv9rr] {
    background: color-mix(in oklab, var(--bsx-action, #2F6690) 12%, white);
    border-color: var(--bsx-action, #2F6690);
}

.dl-sel-bar__combo-wrap[b-erw7miv9rr] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    flex: 1 1 auto;
}

.dl-sel-bar__cancel[b-erw7miv9rr] {
    background: none;
    border: none;
    color: var(--bomsync-text-muted);
    cursor: pointer;
    padding: 4px 6px;
    border-radius: 6px;
    font-size: 0.85rem;
    flex-shrink: 0;
    transition: color 0.12s, background 0.12s;
}

.dl-sel-bar__cancel:hover[b-erw7miv9rr] {
    color: var(--bomsync-text);
    background: var(--bomsync-surface-2);
}

/* ── EMPTY STATE ─────────────────────────────────────────────────────── */
.dl-sel-empty[b-erw7miv9rr] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    background: var(--bomsync-elevated-surface);
    border: 1px solid var(--bomsync-border-strong);
    border-left: 4px solid var(--bsx-action, #2F6690);
    border-radius: 12px;
    padding: 20px 24px;
    box-shadow: var(--bomsync-shadow-sm);
}

.dl-sel-empty__icon-wrap[b-erw7miv9rr] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: var(--domain-documents-light, #DBEAFE);
    color: var(--bsx-action, #2F6690);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    flex-shrink: 0;
    margin-top: 2px;
}

.dl-sel-empty__body[b-erw7miv9rr] {
    flex: 1;
    min-width: 0;
}

.dl-sel-empty__lead[b-erw7miv9rr] {
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--bomsync-text);
    margin: 0 0 10px 0;
    line-height: 1.5;
}

.dl-sel-empty__none[b-erw7miv9rr] {
    font-size: 0.85rem;
    color: var(--bomsync-text-muted);
    margin: 8px 0 0 0;
}

.dl-sel-empty__count[b-erw7miv9rr] {
    font-size: 0.78rem;
    margin: 6px 0 0 0;
}

/* ── PROJECT HINT ─────────────────────────────────────────────────────── */
.dl-sel-project-hint[b-erw7miv9rr] {
    font-size: 0.82rem;
    color: var(--bomsync-text-muted);
    margin: 0 0 10px 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
    line-height: 1.4;
}

.dl-sel-project-hint--inline[b-erw7miv9rr] {
    margin: 0;
    font-size: 0.8rem;
}

.dl-sel-link-btn[b-erw7miv9rr] {
    background: none;
    border: none;
    padding: 0;
    color: var(--bsx-action, #2F6690);
    font-size: inherit;
    font-weight: 600;
    cursor: pointer;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.dl-sel-link-btn:hover[b-erw7miv9rr] {
    color: var(--brand-blue, #111B2C);
}

/* ── Responsive ──────────────────────────────────────────────────────── */
@media (max-width: 600px) {
    .dl-sel-empty[b-erw7miv9rr] {
        flex-direction: column;
        gap: 12px;
    }
    .dl-sel-empty__icon-wrap[b-erw7miv9rr] {
        width: 36px;
        height: 36px;
        font-size: 1.1rem;
    }
    .dl-sel-bar__label[b-erw7miv9rr] {
        max-width: 180px;
    }
}
/* /Components/Shared/AI/AgentDestructiveActionCard.razor.rz.scp.css */
/* ── AgentDestructiveActionCard ─────────────────────────────────────────────── */

.agent-da-card[b-thzgp68j6e] {
    border: 2px solid var(--bs-danger, #dc3545);
    border-radius: var(--bomsync-radius-md, 8px);
    background: color-mix(in srgb, var(--bs-danger, #dc3545) 6%, var(--bomsync-elevated-surface, #fff));
    overflow: hidden;
    max-width: 680px;
}

/* ── Header ── */

.agent-da-card__header[b-thzgp68j6e] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: color-mix(in srgb, var(--bs-danger, #dc3545) 12%, var(--bomsync-elevated-surface, #fff));
    border-bottom: 1px solid color-mix(in srgb, var(--bs-danger, #dc3545) 25%, transparent);
}

.agent-da-card__icon[b-thzgp68j6e] {
    font-size: 1.15rem;
    color: var(--bs-danger, #dc3545);
    flex-shrink: 0;
}

.agent-da-card__title[b-thzgp68j6e] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--bomsync-text-primary, #111b2c);
    flex: 1;
}

.agent-da-card__risk[b-thzgp68j6e] {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    padding: 0.2em 0.55em;
    border-radius: 999px;
}

/* Risk level badge colours (token-aligned) */
.badge-risk-low[b-thzgp68j6e]      { background: var(--bs-success, #198754); color: #fff; }
.badge-risk-medium[b-thzgp68j6e]   { background: var(--bs-warning, #ffc107); color: #000; }
.badge-risk-high[b-thzgp68j6e]     { background: var(--bs-orange, #fd7e14);  color: #000; }
.badge-risk-critical[b-thzgp68j6e] { background: var(--bs-danger, #dc3545);  color: #fff; }
.badge-risk-none[b-thzgp68j6e]     { background: var(--bomsync-border-subtle, #dee2e6); color: var(--bomsync-text-secondary); }

/* ── Body ── */

.agent-da-card__body[b-thzgp68j6e] {
    padding: 0.75rem 1rem;
}

.agent-da-card__dl[b-thzgp68j6e] {
    display: grid;
    grid-template-columns: 140px 1fr;
    gap: 0.2rem 0.75rem;
    margin: 0 0 0.75rem;
    font-size: 0.84rem;
}

.agent-da-card__dl dt[b-thzgp68j6e] {
    font-weight: 600;
    color: var(--bomsync-text-secondary, #4b5c6b);
    text-align: right;
    white-space: nowrap;
}

.agent-da-card__dl dd[b-thzgp68j6e] {
    margin: 0;
    color: var(--bomsync-text-primary, #111b2c);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.agent-da-card__coach[b-thzgp68j6e] {
    font-size: 0.875rem;
    color: var(--bomsync-text-secondary, #4b5c6b);
    line-height: 1.5;
    margin: 0;
}

/* ── Footer ── */

.agent-da-card__footer[b-thzgp68j6e] {
    display: flex;
    align-items: center;
    padding: 0.625rem 1rem;
    border-top: 1px solid color-mix(in srgb, var(--bs-danger, #dc3545) 20%, transparent);
}

.agent-da-card__btn[b-thzgp68j6e] {
    font-size: 0.85rem;
    font-weight: 600;
}

.agent-da-card__gpt-ref[b-thzgp68j6e] {
    font-size: 0.75rem;
    font-family: var(--bs-font-monospace, monospace);
    opacity: 0.7;
}
/* /Components/Submittals/SubmittalsWorkspaceChrome.razor.rz.scp.css */
/* Submittals / transmittals workspace — aligns with Commercial workspace hero & pipeline (.cwp-*). */

.swp[b-2z2b3pq5r7] {
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* HERO — same temperature as CommercialWorkspace */
.swp-hero[b-2z2b3pq5r7] {
    background:
        radial-gradient(900px 450px at 5% -10%, var(--bsx-action, #2F6690), transparent 55%),
        radial-gradient(900px 450px at 85% 10%, var(--bsx-option, #415A77), transparent 55%),
        var(--brand-blue, #111B2C);
    border-radius: 16px;
    padding: 0;
    overflow: hidden;
    position: relative;
    margin-bottom: 14px;
    box-shadow:
        0 4px 24px rgb(17 27 44 / 0.28),
        0 1px 0 rgb(255 255 255 / 0.04) inset;
}

.swp-hero--compact .swp-hero-inner[b-2z2b3pq5r7] {
    padding: 14px 22px;
}

.swp-hero--compact .bomsync-hub-hero-title[b-2z2b3pq5r7] {
    font-size: clamp(1.25rem, 3vw, 1.75rem);
}

.swp-hero[b-2z2b3pq5r7]::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(106 215 255 / 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(106 215 255 / 0.04) 1px, transparent 1px);
    background-size: 40px 40px;
    pointer-events: none;
}

.swp-hero[b-2z2b3pq5r7]::after {
    content: '';
    position: absolute;
    top: -40px;
    right: -40px;
    width: 280px;
    height: 280px;
    background: radial-gradient(circle at center, rgba(47 100 144 / 0.35) 0%, transparent 65%);
    pointer-events: none;
}

.swp-hero-inner[b-2z2b3pq5r7] {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
    padding: 24px 28px;
}

.swp-hero-main[b-2z2b3pq5r7] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
    width: 100%;
}

.swp-hero-subline[b-2z2b3pq5r7] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    column-gap: 16px;
    row-gap: 4px;
}

.swp-hero-asof[b-2z2b3pq5r7] {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    font-size: 0.8125rem;
    line-height: 1.45;
    letter-spacing: 0.02em;
    color: rgba(232 237 245 / 0.72);
}

.swp-hero--compact .swp-hero-asof[b-2z2b3pq5r7] {
    font-size: 0.78rem;
}

/* Hub hero typography + hero CTAs: bomsync-hub-hero-* in bomsync-theme.css */

/* PIPELINE strip */
.swp-pipeline-section[b-2z2b3pq5r7] {
    background: var(--bomsync-elevated-surface);
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 14px;
    padding: 14px 18px 12px;
    margin-bottom: 14px;
    box-shadow: var(--bomsync-shadow-sm);
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.swp-pipeline-head[b-2z2b3pq5r7] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}

.swp-pipeline-head .swp-section-eyebrow--inline[b-2z2b3pq5r7] {
    flex: 1 1 auto;
    min-width: 0;
}

.swp-pipeline-collapse-btn[b-2z2b3pq5r7] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 1px solid var(--bomsync-border-strong);
    border-radius: 10px;
    background: var(--bomsync-page-bg);
    color: var(--bomsync-text-secondary);
    cursor: pointer;
    transition: background 0.12s, border-color 0.12s, color 0.12s;
}

.swp-pipeline-collapse-btn:hover[b-2z2b3pq5r7] {
    background: color-mix(in oklab, var(--brand-blue) 8%, white);
    border-color: var(--brand-blue);
    color: var(--brand-blue);
}

.swp-section-eyebrow[b-2z2b3pq5r7] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--bomsync-text-muted);
    margin-bottom: 10px;
}

.swp-pipeline-note[b-2z2b3pq5r7] {
    margin: 8px 0 0;
    font-size: 0.83rem;
    color: var(--bomsync-text-muted);
}

/* SfStepper — shrinks with main column when context rail is expanded */
.swp-stepper-nav[b-2z2b3pq5r7] {
    margin-bottom: 0.25rem;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    box-sizing: border-box;
}

.swp-stepper-nav[b-2z2b3pq5r7]  .e-stepper.e-stepper-horizontal {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box;
    padding: 14px 16px 18px;
    background: transparent;
    border: none;
    box-shadow: none;
}

/* Active step */
.swp-stepper-nav[b-2z2b3pq5r7]  .e-step-container.e-step-inprogress .e-step-label,
.swp-stepper-nav[b-2z2b3pq5r7]  .e-step-container.e-step-inprogress .e-step-text {
    font-weight: 700 !important;
    color: var(--brand-blue) !important;
    font-size: 0.92rem;
    letter-spacing: 0.01em;
}

.swp-stepper-nav[b-2z2b3pq5r7]  .e-step-container.e-step-inprogress .e-step-icon,
.swp-stepper-nav[b-2z2b3pq5r7]  .e-step-container.e-step-inprogress .e-step-indicator,
.swp-stepper-nav[b-2z2b3pq5r7]  .e-step-container.e-step-inprogress .e-step-circle {
    background: var(--brand-blue) !important;
    color: #fff !important;
    border-color: var(--brand-blue) !important;
    box-shadow: 0 0 0 4px rgb(17 27 44 / 0.18);
    transform: scale(1.05);
}

.swp-stepper-nav[b-2z2b3pq5r7]  .e-step-container.e-step-inprogress .e-step-line::before {
    background: var(--brand-blue) !important;
    opacity: 1 !important;
}

/* Completed steps */
.swp-stepper-nav[b-2z2b3pq5r7]  .e-step-container.e-step-completed .e-step-label {
    color: var(--bomsync-text-secondary);
    font-weight: 600;
}

/* Not-yet-started steps */
.swp-stepper-nav[b-2z2b3pq5r7]  .e-step-container.e-step-notstarted .e-step-label {
    color: var(--bomsync-text-muted);
    font-weight: 500;
}

/* BODY */
.swp-body[b-2z2b3pq5r7] {
    padding-bottom: 0.5rem;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}
/* /Components/Templates/BusyIndicator.razor.rz.scp.css */
/* BOMSync neural busy indicator — scoped; pure CSS, no JS. */

.bs-ind[b-uf64u374nl] {
    position: relative;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    /* Dark navy disk — uncomment to restore default look */
    /* background: radial-gradient(ellipse at 38% 35%, #0d2540 0%, #080f1e 70%); */
    background: transparent;
}

.bs-ind--sm[b-uf64u374nl] { width: 47px;  height: 47px;  }
.bs-ind--md[b-uf64u374nl] { width: 94px;  height: 94px;  }
.bs-ind--lg[b-uf64u374nl] { width: 141px; height: 141px; }


.bs-core[b-uf64u374nl] {
    position: absolute;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    animation: bs-core-pulse-b-uf64u374nl 2.4s ease-in-out infinite;
    pointer-events: none;
}

.bs-ind--sm .bs-core[b-uf64u374nl] {
    width: 10px; height: 10px;
    background: radial-gradient(circle, #a8e8ff 0%, #1a9bc4 40%, rgba(20,130,180,0) 100%);
    box-shadow: 0 0 10px 4px rgba(26,155,196,0.75);
}

.bs-ind--md .bs-core[b-uf64u374nl] {
    width: 14px; height: 14px;
    background: radial-gradient(circle, #c0f0ff 0%, #1a9bc4 40%, rgba(20,130,180,0) 100%);
    box-shadow: 0 0 18px 7px rgba(26,155,196,0.70);
}

.bs-ind--lg .bs-core[b-uf64u374nl] {
    width: 20px; height: 20px;
    background: radial-gradient(circle, #c0f0ff 0%, #1a9bc4 40%, rgba(20,130,180,0) 100%);
    box-shadow: 0 0 28px 10px rgba(26,155,196,0.65);
}

@keyframes bs-core-pulse-b-uf64u374nl {
    0%,  100% { transform: translate(-50%, -50%) scale(1);    opacity: 1;  }
    50%        { transform: translate(-50%, -50%) scale(1.35); opacity: .7; }
}


.bs-halo[b-uf64u374nl] {
    position: absolute;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform-origin: center center;
    pointer-events: none;
}

.bs-h1[b-uf64u374nl] {
    width: 68%; height: 68%;
    margin-left: -34%; margin-top: -34%;
    border: 1px solid rgba(26,155,196,0.22);
    animation: bs-spin-cw-b-uf64u374nl 8s linear infinite;
}

.bs-h2[b-uf64u374nl] {
    width: 82%; height: 82%;
    margin-left: -41%; margin-top: -41%;
    border: 1px solid rgba(42,184,212,0.12);
    animation: bs-spin-ccw-b-uf64u374nl 14s linear infinite;
}

.bs-h3[b-uf64u374nl] {
    width: 55%; height: 55%;
    margin-left: -27.5%; margin-top: -27.5%;
    border: 1px dashed rgba(26,155,196,0.15);
    animation: bs-spin-cw-b-uf64u374nl 6s linear infinite;
}

@keyframes bs-spin-cw-b-uf64u374nl  { to { transform: rotate(360deg);  } }
@keyframes bs-spin-ccw-b-uf64u374nl { to { transform: rotate(-360deg); } }


.bs-lines[b-uf64u374nl] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
    pointer-events: none;
}

.bs-ln[b-uf64u374nl] {
    stroke-width: 0.6;
    fill: none;
    stroke-linecap: round;
}

.bs-ln-teal[b-uf64u374nl]   { stroke: rgba(26,155,196,0.38); }
.bs-ln-blue[b-uf64u374nl]   { stroke: rgba(42,184,212,0.25); }

.bs-ln-bright[b-uf64u374nl] {
    stroke: rgba(168,232,255,0.55);
    animation: bs-line-flash-b-uf64u374nl 3s ease-in-out infinite;
}

.bs-ln-bright2[b-uf64u374nl] {
    stroke: rgba(168,232,255,0.55);
    animation: bs-line-flash-b-uf64u374nl 3s ease-in-out infinite;
    animation-delay: 1.5s;
}

@keyframes bs-line-flash-b-uf64u374nl {
    0%,  100% { opacity: .5; stroke-width: .6;  }
    50%        { opacity: 1;  stroke-width: 1.1; }
}


.bs-nd[b-uf64u374nl] {
    position: absolute;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    pointer-events: none;
    animation: bs-nd-breathe-b-uf64u374nl 3s ease-in-out infinite;
}

@keyframes bs-nd-breathe-b-uf64u374nl {
    0%,  100% { opacity: .9; transform: translate(-50%, -50%) var(--tp) scale(1);  }
    50%        { opacity: .3; transform: translate(-50%, -50%) var(--tp) scale(.7); }
}

.bs-nd1[b-uf64u374nl] { --tp: translate(24px,-22px);  width: 6px; height: 6px; background: #1a9bc4; box-shadow: 0 0 7px 3px rgba(26,155,196,.85); animation-delay: 0.0s; }
.bs-nd3[b-uf64u374nl] { --tp: translate(18px, 26px);  width: 7px; height: 7px; background: #1a9bc4; box-shadow: 0 0 8px 3px rgba(26,155,196,.85); animation-delay: 1.2s; }
.bs-nd7[b-uf64u374nl] { --tp: translate(-8px,-34px);  width: 5px; height: 5px; background: #1a9bc4; box-shadow: 0 0 6px 2px rgba(26,155,196,.85); animation-delay: 2.2s; }

.bs-nd2[b-uf64u374nl] { --tp: translate(-26px,-14px); width: 5px; height: 5px; background: #2ab8d4; box-shadow: 0 0 6px 2px rgba(42,184,212,.80); animation-delay: 0.6s; }
.bs-nd4[b-uf64u374nl] { --tp: translate(-20px, 22px); width: 5px; height: 5px; background: #2ab8d4; box-shadow: 0 0 6px 2px rgba(42,184,212,.75); animation-delay: 1.8s; }
.bs-nd8[b-uf64u374nl] { --tp: translate(8px,  35px);  width: 4px; height: 4px; background: #2ab8d4; box-shadow: 0 0 5px 2px rgba(42,184,212,.75); animation-delay: 0.8s; }

.bs-nd5[b-uf64u374nl] { --tp: translate(36px,   4px); width: 4px; height: 4px; background: #4dd0e8; box-shadow: 0 0 5px 2px rgba(77,208,232,.80); animation-delay: 0.4s; }
.bs-nd6[b-uf64u374nl] { --tp: translate(-36px,  6px); width: 4px; height: 4px; background: #4dd0e8; box-shadow: 0 0 5px 2px rgba(77,208,232,.75); animation-delay: 1.0s; }

.bs-nd9[b-uf64u374nl]  { --tp: translate(28px,-30px);  width: 3px; height: 3px; background: #a8e8ff; box-shadow: 0 0 4px 2px rgba(168,232,255,.70); animation-delay: 1.5s; }
.bs-nd10[b-uf64u374nl] { --tp: translate(-30px,-26px); width: 3px; height: 3px; background: #a8e8ff; box-shadow: 0 0 4px 2px rgba(168,232,255,.65); animation-delay: 2.8s; }


.bs-sp[b-uf64u374nl] {
    position: absolute;
    border-radius: 50%;
    background: #a8e8ff;
    box-shadow: 0 0 4px 2px rgba(168,232,255,.85);
    top: 50%;
    left: 50%;
    pointer-events: none;
}

.bs-sp1[b-uf64u374nl] { animation: bs-sp1-b-uf64u374nl 1.8s linear infinite; }
@keyframes bs-sp1-b-uf64u374nl {
    0%   { transform: translate(24px,-22px)         scale(0);  opacity: 0; }
    8%   { opacity: 1; }
    90%  { opacity: .8; }
    100% { transform: translate(-50%,-50%)          scale(.5); opacity: 0; }
}

.bs-sp2[b-uf64u374nl] {
    background: #4dd0e8;
    box-shadow: 0 0 4px 2px rgba(77,208,232,.85);
    animation: bs-sp2-b-uf64u374nl 2.2s linear infinite;
    animation-delay: .7s;
}
@keyframes bs-sp2-b-uf64u374nl {
    0%   { transform: translate(18px,26px)          scale(0);  opacity: 0; }
    8%   { opacity: 1; }
    90%  { opacity: .8; }
    100% { transform: translate(-50%,-50%)          scale(.5); opacity: 0; }
}

.bs-sp3[b-uf64u374nl] {
    background: #2ab8d4;
    box-shadow: 0 0 4px 2px rgba(42,184,212,.85);
    animation: bs-sp3-b-uf64u374nl 1.6s linear infinite;
    animation-delay: 1.2s;
}
@keyframes bs-sp3-b-uf64u374nl {
    0%   { transform: translate(-8px,-34px)         scale(0);  opacity: 0; }
    8%   { opacity: 1; }
    90%  { opacity: .7; }
    100% { transform: translate(-50%,-50%)          scale(.4); opacity: 0; }
}

.bs-sp4[b-uf64u374nl] { animation: bs-sp4-b-uf64u374nl 2.0s linear infinite; animation-delay: .4s; }
@keyframes bs-sp4-b-uf64u374nl {
    0%   { transform: translate(0,0)                scale(.5); opacity: 0; }
    8%   { opacity: 1; }
    90%  { opacity: .7; }
    100% { transform: translate(36px,4px)           scale(0);  opacity: 0; }
}

.bs-sp5[b-uf64u374nl] {
    background: #2ab8d4;
    box-shadow: 0 0 4px 2px rgba(42,184,212,.85);
    animation: bs-sp5-b-uf64u374nl 2.5s linear infinite;
    animation-delay: 1.8s;
}
@keyframes bs-sp5-b-uf64u374nl {
    0%   { transform: translate(-26px,-14px)        scale(0);  opacity: 0; }
    8%   { opacity: 1; }
    90%  { opacity: .7; }
    100% { transform: translate(18px,26px)          scale(0);  opacity: 0; }
}


.bs-ap[b-uf64u374nl] {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    animation: bs-ap-drift-b-uf64u374nl 5s ease-in-out infinite;
}

@keyframes bs-ap-drift-b-uf64u374nl {
    0%,  100% { opacity: .15; transform: var(--ap) scale(1);              }
    50%        { opacity: .45; transform: var(--ap) translateY(-3px) scale(1.3); }
}

.bs-ap1[b-uf64u374nl] { width: 2px; height: 2px; top: 18%; left: 72%; --ap: translate(0,0); animation-delay: 0.0s; background: #4dd0e8; }
.bs-ap2[b-uf64u374nl] { width: 1px; height: 1px; top: 75%; left: 25%; --ap: translate(0,0); animation-delay: 1.0s; background: #2ab8d4; }
.bs-ap3[b-uf64u374nl] { width: 2px; height: 2px; top: 30%; left: 15%; --ap: translate(0,0); animation-delay: 2.0s; background: #1a9bc4; }
.bs-ap4[b-uf64u374nl] { width: 1px; height: 1px; top: 65%; left: 80%; --ap: translate(0,0); animation-delay: 0.5s; background: #4dd0e8; }
.bs-ap5[b-uf64u374nl] { width: 2px; height: 2px; top: 85%; left: 55%; --ap: translate(0,0); animation-delay: 3.0s; background: #2ab8d4; }
.bs-ap6[b-uf64u374nl] { width: 1px; height: 1px; top: 12%; left: 40%; --ap: translate(0,0); animation-delay: 1.5s; background: #a8e8ff; }
.bs-ap7[b-uf64u374nl] { width: 2px; height: 2px; top: 50%; left: 88%; --ap: translate(0,0); animation-delay: 2.5s; background: #1a9bc4; }
.bs-ap8[b-uf64u374nl] { width: 1px; height: 1px; top: 40%; left:  8%; --ap: translate(0,0); animation-delay: 0.8s; background: #4dd0e8; }
/* /Components/Templates/BusyOverlay.razor.rz.scp.css */
/* Busy overlay — scoped. Host uses display:contents so siblings sit in the parent; parent needs position: relative. */

.bs-overlay-host[b-tc6pqfguld] {
    position: relative;
    display: contents;
}

.bs-overlay[b-tc6pqfguld] {
    position: absolute;
    inset: 0;
    z-index: 200;
    background: rgba(8, 15, 30, 0.78);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
    border-radius: inherit;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: bs-overlay-in-b-tc6pqfguld 0.18s ease-out;
}

@keyframes bs-overlay-in-b-tc6pqfguld {
    from { opacity: 0; }
    to   { opacity: 1; }
}

.bs-overlay__inner[b-tc6pqfguld] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
}

.bs-overlay__label[b-tc6pqfguld] {
    font-family: var(--bs-font-sans-serif, var(--bs-font-sans, 'Segoe UI', system-ui, sans-serif));
    font-size: 13px;
    font-weight: 400;
    color: rgba(168, 232, 255, 0.75);
    letter-spacing: 0.04em;
    margin: 0;
    text-align: center;
    animation: bs-label-pulse-b-tc6pqfguld 2.4s ease-in-out infinite;
}

@keyframes bs-label-pulse-b-tc6pqfguld {
    0%,  100% { opacity: .75; }
    50%        { opacity: .40; }
}
/* /Components/Templates/CommandCenterHubHero.razor.rz.scp.css */
/* Mirrors Command Hub domain hero shell — on-dark density segmented control */

.cc-hub-hero[b-q1t166miv0] {
    border-radius: 16px;
    margin: 0 0 1rem 0;
    position: relative;
    overflow: hidden;
    box-shadow:
        0 4px 24px rgb(17 27 44 / 0.26),
        0 1px 0 rgb(255 255 255 / 0.04) inset;
}

.cc-hub-hero[b-q1t166miv0]::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(106 215 255 / 0.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(106 215 255 / 0.035) 1px, transparent 1px);
    background-size: 36px 36px;
    pointer-events: none;
}

.cc-hub-hero-inner[b-q1t166miv0] {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 14px 18px 16px;
}

.cc-hub-hero-main[b-q1t166miv0] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 12px 16px;
}

.cc-hub-hero-context[b-q1t166miv0] {
    font-size: 1rem;
    line-height: 1.55;
    color: rgba(232 237 245 / 0.88);
    max-width: 52rem;
}

.cc-hub-hero-actions-row[b-q1t166miv0] {
    flex-wrap: wrap;
    gap: 10px;
}

.cc-hub-density[b-q1t166miv0] {
    display: inline-flex;
    align-items: stretch;
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid rgba(255 255 255 / 0.28);
    flex-shrink: 0;
}

.cc-hub-density-btn[b-q1t166miv0] {
    appearance: none;
    border: none;
    margin: 0;
    padding: 8px 14px;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    cursor: pointer;
    color: rgba(232 237 245 / 0.82);
    background: rgba(255 255 255 / 0.06);
    transition: background 0.12s, color 0.12s;
}

.cc-hub-density-btn:hover[b-q1t166miv0] {
    background: rgba(255 255 255 / 0.12);
    color: #fff;
}

.cc-hub-density-btn--active[b-q1t166miv0] {
    background: rgba(106 215 255 / 0.22);
    color: #fff;
}

.cc-hub-density-btn + .cc-hub-density-btn[b-q1t166miv0] {
    border-left: 1px solid rgba(255 255 255 / 0.22);
}

@media (max-width: 767px) {
    .cc-hub-hero-main[b-q1t166miv0] {
        grid-template-columns: 1fr;
    }

    .cc-hub-hero-actions-row[b-q1t166miv0] {
        flex-direction: column;
        align-items: stretch;
        justify-content: flex-start;
    }

    .cc-hub-density[b-q1t166miv0] {
        width: 100%;
        justify-content: stretch;
    }

    .cc-hub-density-btn[b-q1t166miv0] {
        flex: 1 1 50%;
        text-align: center;
    }
}
/* /Components/WorkItems/WorkItemAddEditDialog.razor.rz.scp.css */
/* Widen assignee popup so display_label (username - entity) is not clipped */
[b-uqu1jk7exy] .work-item-user-multiselect.e-multiselect .e-dropdownbase {
    min-width: 520px;
}

/* Section headers: full-bleed band inside padded scroll body (muted blue + warm grey alternate) */
.work-item-dialog-scroll .work-item-dialog-section-band[b-uqu1jk7exy] {
    margin-left: -15px;
    margin-right: -15px;
    padding: 0.65rem 15px;
    margin-bottom: 1rem;
    border-bottom: 1px solid var(--bomsync-border-strong, rgb(17 27 44 / 0.14));
}

.work-item-dialog-scroll .work-item-dialog-section-band--spaced[b-uqu1jk7exy] {
    margin-top: 1.5rem;
}

.work-item-dialog-scroll .work-item-dialog-section-band--muted[b-uqu1jk7exy] {
    background: var(--bomsync-brand-subtle);
}

.work-item-dialog-scroll .work-item-dialog-section-band--warm[b-uqu1jk7exy] {
    background: var(--bomsync-surface-2);
}

.work-item-dialog-section-title[b-uqu1jk7exy] {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.35;
    margin: 0;
    color: var(--bomsync-text, #0f1520);
}
