/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* ============================================================
   Knovis EX — Commercial application shell (CP1 correction)
   Deep-Navy sidebar + integrated navy top bar frame a cool-neutral
   canvas / white workspace. Compact chrome, maximal workspace width.
   ============================================================ */
.app-layout[b-np4nywpxkc] {
    min-height: 100vh;
    background: var(--knx-canvas, #F4F6F9);
}

.sidebar[b-np4nywpxkc] {
    position: fixed;
    top: 0; bottom: 0; left: 0;
    width: 248px;
    overflow: hidden;
    background: var(--knx-shell-bg, #0B1426);
    z-index: 100;
}

.main-area[b-np4nywpxkc] {
    min-height: 100vh;
    margin-left: 248px;
    background: var(--knx-canvas, #F4F6F9);
    display: flex;
    flex-direction: column;
}

/* ---- Integrated navy top application bar ---- */
.top-bar[b-np4nywpxkc] {
    position: sticky; top: 0;
    min-height: 52px;
    display: flex; align-items: center; justify-content: space-between; gap: 1rem;
    padding: 0 1.4rem;
    background: var(--knx-shell-bg, #0B1426);
    border-bottom: 1px solid var(--knx-shell-line, #26324F);
    color: var(--knx-on-shell, #fff);
    z-index: 50;
}

.top-bar-left[b-np4nywpxkc] { min-width: 0; display: flex; align-items: baseline; gap: .6rem; }
.top-context-label[b-np4nywpxkc] {
    font-size: .6rem; letter-spacing: .12em; text-transform: uppercase;
    color: var(--knx-on-shell-subtle, #8A93A6);
}
.top-context-value[b-np4nywpxkc] {
    font-size: .9rem; font-weight: 600; color: #fff;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.top-bar-actions[b-np4nywpxkc] { display: flex; align-items: center; gap: .8rem; }
.top-user[b-np4nywpxkc] { display: inline-flex; align-items: center; gap: .5rem; min-width: 0; }
.top-user-avatar[b-np4nywpxkc] {
    width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center;
    font-size: .68rem; font-weight: 700;
    background: linear-gradient(135deg, #A78BFA, #8B5CF6); color: #0B1426;
}
.top-user-name[b-np4nywpxkc] {
    font-size: .8rem; color: var(--knx-on-shell-muted, #C4C9D4);
    max-width: 220px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.top-signout[b-np4nywpxkc] {
    min-height: 30px; padding: .35rem .75rem;
    border: 1px solid var(--knx-shell-line, #26324F); border-radius: 8px;
    background: transparent; color: var(--knx-on-shell-muted, #C4C9D4);
    font-size: .76rem; font-weight: 600; cursor: pointer;
    transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.top-signout:hover[b-np4nywpxkc] { background: rgba(255,255,255,.08); color: #fff; border-color: var(--knx-intelligence, #A78BFA); }
.top-signout:focus-visible[b-np4nywpxkc] { outline: none; box-shadow: 0 0 0 3px rgba(139,92,246,.4); }

/* ---- Workspace ---- */
.content-area[b-np4nywpxkc] {
    flex: 1 1 auto;
    min-height: calc(100vh - 52px);
    padding: 1.25rem 1.5rem 2rem;
}
.content-area a[b-np4nywpxkc] { color: var(--knx-interactive, #7C3AED); }
.content-area a:hover[b-np4nywpxkc] { color: var(--knx-interactive-hover, #6D28D9); }
.content-area .btn-primary[b-np4nywpxkc] { border-color: var(--knx-interactive-hover, #6D28D9); background: var(--knx-interactive, #7C3AED); }
.content-area .btn-primary:hover[b-np4nywpxkc] { border-color: #5B21B6; background: var(--knx-interactive-hover, #6D28D9); }

/* ---- Collapsible width recovery (presentation only) ---- */
/* NOTE: the compact-rail + hover/focus peek rules require a `body.nav-collapsed`
   ancestor selector. Blazor scoped CSS does NOT support :global(), so those rules
   live in the GLOBAL stylesheet wwwroot/app.css (see "Compact navigation rail").
   Keeping them here (scoped) produced an invalid selector and the browser dropped
   the whole collapse/hover behavior. */
.sidebar[b-np4nywpxkc] { transition: width .16s ease; }
.main-area[b-np4nywpxkc] { transition: margin-left .16s ease; }
@media (prefers-reduced-motion: reduce) { .sidebar[b-np4nywpxkc], .main-area[b-np4nywpxkc] { transition: none; } }

/* ---- Responsive ---- */
@media (max-width: 1100px) {
    .sidebar[b-np4nywpxkc] { width: 232px; }
    .main-area[b-np4nywpxkc] { margin-left: 232px; }
    .content-area[b-np4nywpxkc] { padding: 1.1rem 1.15rem 2rem; }
}
@media (max-width: 760px) {
    .sidebar[b-np4nywpxkc] { position: fixed; width: 60px; overflow: visible; }
    .main-area[b-np4nywpxkc] { margin-left: 60px; }
    .content-area[b-np4nywpxkc] { padding: 1rem; }
}

.project-context-loading[b-np4nywpxkc] {
    min-height: 240px; display: flex; align-items: center; justify-content: center; gap: .75rem;
    color: var(--knx-text-muted, #64748B); font-weight: 600;
}
.project-context-spinner[b-np4nywpxkc] {
    width: 1.1rem; height: 1.1rem;
    border: 2px solid var(--knx-border-strong, #CBD2DC); border-top-color: var(--knx-interactive, #7C3AED);
    border-radius: 50%; animation: project-context-spin-b-np4nywpxkc .8s linear infinite;
}
@keyframes project-context-spin-b-np4nywpxkc { to { transform: rotate(360deg); } }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
/* ============================================================
   Knovis EX — Commercial application sidebar (CP1 correction)
   Deep-Navy shell · wordmark identity · governed SVG group icons ·
   compact hierarchy · clear single active state · collapsed icon-rail + flyout.
   Presentation only. Colors via governed --knx-* tokens.
   ============================================================ */
.sidebar-shell[b-41jqxwsv30] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    background: var(--knx-shell-bg, #0B1426);
    color: var(--knx-on-shell, #fff);
    font-size: .8125rem;
}

/* ---- Brand ---- */
.sidebar-brand[b-41jqxwsv30] {
    display: flex; align-items: center; gap: .5rem;
    padding: .85rem .9rem .7rem;
    border-bottom: 1px solid var(--knx-shell-line, #26324F);
}
.brand-link[b-41jqxwsv30] { display: flex; align-items: center; gap: .55rem; text-decoration: none; min-width: 0; }
/* Approved K mark — collapsed-rail slot (renders when wwwroot/brand/knovisex-mark.svg is supplied). */
.brand-mark-img[b-41jqxwsv30] { flex: 0 0 auto; width: 30px; height: 30px; object-fit: contain; display: none; }
/* Approved full lockup — expanded slot (renders when wwwroot/brand/knovisex-logo.svg is supplied). */
.brand-logo-img[b-41jqxwsv30] { display: block; height: 30px; width: auto; max-width: 178px; object-fit: contain; }
/* Compact typographic brand token for the collapsed rail (no invented monogram). */
.brand-compact[b-41jqxwsv30] {
    flex: 0 0 auto; display: none;
    font-size: 1.05rem; font-weight: 800; letter-spacing: .02em; line-height: 1;
    color: var(--knx-intelligence, #A78BFA);
}
.brand-wordmark[b-41jqxwsv30] { font-size: 1.05rem; font-weight: 700; letter-spacing: .02em; white-space: nowrap; }
.brand-knovis[b-41jqxwsv30] { color: #fff; }
.brand-ex[b-41jqxwsv30] { color: var(--knx-intelligence, #A78BFA); }

.nav-collapse-toggle[b-41jqxwsv30] {
    margin-left: auto; flex: 0 0 auto;
    width: 26px; height: 26px; display: grid; place-items: center;
    border: 1px solid var(--knx-shell-line, #26324F); border-radius: 6px;
    background: transparent; color: var(--knx-on-shell-muted, #C4C9D4);
    cursor: pointer; font-size: .95rem; line-height: 1;
    transition: background .15s ease, color .15s ease;
}
.nav-collapse-toggle:hover[b-41jqxwsv30] { color: #fff; background: rgba(255,255,255,.08); }
.nav-collapse-toggle:focus-visible[b-41jqxwsv30] { outline: none; box-shadow: 0 0 0 3px rgba(139,92,246,.45); }
.nav-collapse-toggle .nav-ico[b-41jqxwsv30] { width: 16px; height: 16px; }
.nav-collapse-toggle .ico[b-41jqxwsv30] { width: 16px; height: 16px; }
/* Pinned = filled accent upright pin; unpinned = tilted, muted (standard pin/unpin convention). */
.nav-collapse-toggle.is-pinned[b-41jqxwsv30] { color: var(--knx-intelligence, #A78BFA); }
.nav-collapse-toggle.is-unpinned .nav-ico[b-41jqxwsv30] { transform: rotate(45deg); opacity: .75; }

/* ---- Project context (informational only — selection happens on Portfolio Dashboard) ---- */
.project-context[b-41jqxwsv30] { padding: .6rem .9rem; border-bottom: 1px solid var(--knx-shell-line, #26324F); }
.project-context__label[b-41jqxwsv30] {
    display: block; font-size: .58rem; letter-spacing: .12em; text-transform: uppercase;
    color: var(--knx-on-shell-subtle, #8A93A6); margin-bottom: .3rem;
}
.project-context__value[b-41jqxwsv30] { display: flex; flex-direction: column; line-height: 1.25; min-width: 0; }
.project-context__value strong[b-41jqxwsv30] { font-size: .9rem; color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.project-context__value > span[b-41jqxwsv30] { font-size: .74rem; color: var(--knx-on-shell-muted, #C4C9D4); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.project-context__value--none > span[b-41jqxwsv30] { color: var(--knx-on-shell-subtle, #8A93A6); }
.project-context__pick[b-41jqxwsv30] { font-size: .72rem; color: var(--knx-intelligence, #A78BFA); text-decoration: none; margin-top: .25rem; }
.project-context__pick:hover[b-41jqxwsv30] { text-decoration: underline; }

/* No project selected — project-scoped groups stay visible but non-actionable (Gate 2A). */
.menu-section.is-muted[b-41jqxwsv30] { opacity: .4; }
.menu-section.is-muted .section-button[b-41jqxwsv30],
.menu-section.is-muted .section-lead-link[b-41jqxwsv30],
.menu-section.is-muted .section-toggle[b-41jqxwsv30],
.menu-section.is-muted .section-links[b-41jqxwsv30] { pointer-events: none; }
.menu-section.is-muted .section-lead-link[b-41jqxwsv30] { cursor: default; }

/* ---- Navigation list ---- */
.sidebar-navigation[b-41jqxwsv30] { flex: 1 1 auto; overflow-y: auto; overflow-x: hidden; padding: .5rem .5rem 1.5rem; }
.sidebar-navigation[b-41jqxwsv30]::-webkit-scrollbar { width: 8px; }
.sidebar-navigation[b-41jqxwsv30]::-webkit-scrollbar-thumb { background: rgba(255,255,255,.1); border-radius: 8px; }

.home-link[b-41jqxwsv30],
.section-button[b-41jqxwsv30] {
    display: flex; align-items: center; gap: .6rem; width: 100%;
    padding: .48rem .6rem; margin: 1px 0;
    background: none; border: none; border-radius: 8px; cursor: pointer;
    color: var(--knx-on-shell-muted, #C4C9D4); font: inherit; font-size: .8125rem; text-align: left;
    transition: background .14s ease, color .14s ease;
}
.home-link:hover[b-41jqxwsv30], .section-button:hover[b-41jqxwsv30] { background: rgba(255,255,255,.06); color: #fff; }
.home-link:focus-visible[b-41jqxwsv30], .section-button:focus-visible[b-41jqxwsv30] { outline: none; box-shadow: 0 0 0 2px rgba(139,92,246,.5); }
.home-link.active[b-41jqxwsv30] { background: rgba(139,92,246,.18); color: #fff; }

.nav-ico[b-41jqxwsv30] { flex: 0 0 auto; width: 18px; height: 18px; display: grid; place-items: center; color: inherit; }
.nav-ico .ico[b-41jqxwsv30] { display: block; }
.nav-label[b-41jqxwsv30] { flex: 1 1 auto; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-weight: 600; }
.section-chevron[b-41jqxwsv30] { flex: 0 0 auto; color: var(--knx-on-shell-subtle, #8A93A6); transition: transform .18s ease; }
.section-chevron .ico[b-41jqxwsv30] { width: 14px; height: 14px; }
.menu-section.is-open .section-chevron[b-41jqxwsv30] { transform: rotate(180deg); }

/* ---- Group children (progressive disclosure) ---- */
.section-links[b-41jqxwsv30] { display: none; margin: .1rem 0 .4rem .3rem; padding-left: .55rem; border-left: 1px solid var(--knx-shell-line, #26324F); }
.menu-section.is-open .section-links[b-41jqxwsv30] { display: block; }

/* ---- Project Home lead: header navigates to the landing; chevron toggles the sub-nav ---- */
.section-lead[b-41jqxwsv30] { display: flex; align-items: center; }
.section-lead-link[b-41jqxwsv30] { flex: 1 1 auto; min-width: 0; }
.section-toggle[b-41jqxwsv30] {
    flex: 0 0 auto; display: grid; place-items: center;
    width: 30px; height: 30px; margin-right: .15rem;
    background: none; border: none; border-radius: 8px; cursor: pointer;
    color: var(--knx-on-shell-subtle, #8A93A6);
    transition: background .14s ease, color .14s ease;
}
.section-toggle:hover[b-41jqxwsv30] { background: rgba(255,255,255,.06); color: #fff; }
.section-toggle:focus-visible[b-41jqxwsv30] { outline: none; box-shadow: 0 0 0 2px rgba(139,92,246,.5); }

/* Project Home is the primary project domain — stronger header + clearly nested children */
.menu-section--home .section-lead-link .nav-label[b-41jqxwsv30] { color: #fff; font-weight: 700; }
.menu-section--home .section-lead-link.active[b-41jqxwsv30] { background: rgba(139,92,246,.18); }
.menu-section--home .section-links[b-41jqxwsv30] {
    margin-left: .55rem; padding-left: .7rem;
    border-left: 2px solid var(--knx-intelligence, #A78BFA);
}
.menu-section--home .section-links .child-link[b-41jqxwsv30] { font-weight: 600; }

.nav-sub[b-41jqxwsv30] {
    display: block; padding: .5rem .55rem .2rem;
    font-size: .58rem; letter-spacing: .1em; text-transform: uppercase;
    color: var(--knx-on-shell-subtle, #8A93A6); font-weight: 700;
}

[b-41jqxwsv30] .child-link {
    display: block; padding: .38rem .55rem; margin: 1px 0; border-radius: 7px;
    color: var(--knx-on-shell-muted, #C4C9D4); text-decoration: none; font-size: .8rem;
    border-left: 2px solid transparent; transition: background .14s ease, color .14s ease;
}
[b-41jqxwsv30] .child-link:hover { background: rgba(255,255,255,.06); color: #fff; }
[b-41jqxwsv30] .child-link.active {
    background: rgba(139,92,246,.16); color: #fff; font-weight: 600;
    border-left-color: var(--knx-intelligence, #A78BFA);
}

/* ---- Developer group: subtle separation ---- */
.menu-section--developer[b-41jqxwsv30] { margin-top: .35rem; padding-top: .35rem; border-top: 1px dashed var(--knx-shell-line, #26324F); }
.menu-section--developer .nav-ico[b-41jqxwsv30] { color: var(--knx-on-shell-subtle, #8A93A6); }

/* ---- User footer ---- */
.sidebar-user[b-41jqxwsv30] {
    display: flex; align-items: center; gap: .6rem;
    padding: .7rem .9rem; border-top: 1px solid var(--knx-shell-line, #26324F);
}
.user-avatar[b-41jqxwsv30] {
    flex: 0 0 auto; width: 32px; height: 32px; border-radius: 50%;
    display: grid; place-items: center; font-size: .72rem; font-weight: 700;
    background: var(--knx-shell-elevated, #111C34); color: var(--knx-intelligence, #A78BFA);
    border: 1px solid var(--knx-shell-line, #26324F);
}
.user-copy[b-41jqxwsv30] { display: flex; flex-direction: column; min-width: 0; line-height: 1.2; }
.user-copy strong[b-41jqxwsv30] { font-size: .8rem; color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.user-copy span[b-41jqxwsv30] { font-size: .68rem; color: var(--knx-on-shell-subtle, #8A93A6); }

/* ============================================================
   COLLAPSED ICON-RAIL (~60px) with hover / focus TEMPORARY expansion
   Resting: a compact icon rail whose brand header stays visible.
   Hovering — or keyboard-focusing — the rail temporarily expands the WHOLE
   navigation (labels, project context, sub-nav) as an overlay; moving away
   returns to the rail. The manual toggle still sets the persistent preference.
   The outer container width is driven from MainLayout (body.nav-collapsed).
   ============================================================ */

/* --- resting collapsed rail: hide expanded-only content, keep brand mark --- */
.sidebar-shell.is-collapsed .brand-wordmark[b-41jqxwsv30],
.sidebar-shell.is-collapsed .brand-logo-img[b-41jqxwsv30],
.sidebar-shell.is-collapsed .project-context[b-41jqxwsv30],
.sidebar-shell.is-collapsed .nav-label[b-41jqxwsv30],
.sidebar-shell.is-collapsed .nav-sub[b-41jqxwsv30],
.sidebar-shell.is-collapsed .section-chevron[b-41jqxwsv30],
.sidebar-shell.is-collapsed .section-toggle[b-41jqxwsv30],
.sidebar-shell.is-collapsed .nav-collapse-toggle[b-41jqxwsv30],
.sidebar-shell.is-collapsed .user-copy[b-41jqxwsv30] { display: none; }

.sidebar-shell.is-collapsed .brand-compact[b-41jqxwsv30] { display: block; }
.sidebar-shell.is-collapsed .brand-mark-img[b-41jqxwsv30] { display: block; }

/* Compact-rail icon legibility (interim — full icon-system review deferred to Gate 2). */
.sidebar-shell.is-collapsed .nav-ico .ico[b-41jqxwsv30] { width: 20px; height: 20px; stroke-width: 1.8; }

.sidebar-shell.is-collapsed .sidebar-brand[b-41jqxwsv30] { justify-content: center; padding: .85rem .3rem; }
.sidebar-shell.is-collapsed .brand-link[b-41jqxwsv30] { justify-content: center; gap: 0; }
.sidebar-shell.is-collapsed .sidebar-navigation[b-41jqxwsv30] { padding: .5rem .3rem 1.5rem; }
.sidebar-shell.is-collapsed .home-link[b-41jqxwsv30],
.sidebar-shell.is-collapsed .section-button[b-41jqxwsv30],
.sidebar-shell.is-collapsed .section-lead-link[b-41jqxwsv30] { justify-content: center; padding: .55rem 0; }
.sidebar-shell.is-collapsed .section-links[b-41jqxwsv30] { display: none; }
.sidebar-shell.is-collapsed .sidebar-user[b-41jqxwsv30] { justify-content: center; }
.sidebar-shell.is-collapsed .user-avatar[b-41jqxwsv30] { margin: 0; }

/* --- temporary expansion on hover / focus-within (persistent state unchanged) --- */
.sidebar-shell.is-collapsed:hover .project-context[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .project-context[b-41jqxwsv30],
.sidebar-shell.is-collapsed:hover .nav-label[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .nav-label[b-41jqxwsv30],
.sidebar-shell.is-collapsed:hover .nav-sub[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .nav-sub[b-41jqxwsv30] { display: block; }

.sidebar-shell.is-collapsed:hover .brand-wordmark[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .brand-wordmark[b-41jqxwsv30],
.sidebar-shell.is-collapsed:hover .section-chevron[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .section-chevron[b-41jqxwsv30] { display: inline-block; }

.sidebar-shell.is-collapsed:hover .brand-logo-img[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .brand-logo-img[b-41jqxwsv30] { display: block; }
.sidebar-shell.is-collapsed:hover .brand-mark-img[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .brand-mark-img[b-41jqxwsv30],
.sidebar-shell.is-collapsed:hover .brand-compact[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .brand-compact[b-41jqxwsv30] { display: none; }

.sidebar-shell.is-collapsed:hover .section-toggle[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .section-toggle[b-41jqxwsv30],
.sidebar-shell.is-collapsed:hover .nav-collapse-toggle[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .nav-collapse-toggle[b-41jqxwsv30] { display: grid; }

.sidebar-shell.is-collapsed:hover .user-copy[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .user-copy[b-41jqxwsv30] { display: flex; }

.sidebar-shell.is-collapsed:hover .brand-compact[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .brand-compact[b-41jqxwsv30] { display: none; }

.sidebar-shell.is-collapsed:hover .sidebar-brand[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .sidebar-brand[b-41jqxwsv30] { justify-content: space-between; padding: .85rem .9rem .7rem; }
.sidebar-shell.is-collapsed:hover .brand-link[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .brand-link[b-41jqxwsv30] { justify-content: flex-start; gap: .55rem; }
.sidebar-shell.is-collapsed:hover .sidebar-navigation[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .sidebar-navigation[b-41jqxwsv30] { padding: .5rem .5rem 1.5rem; }
.sidebar-shell.is-collapsed:hover .home-link[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .home-link[b-41jqxwsv30],
.sidebar-shell.is-collapsed:hover .section-button[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .section-button[b-41jqxwsv30],
.sidebar-shell.is-collapsed:hover .section-lead-link[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .section-lead-link[b-41jqxwsv30] { justify-content: flex-start; padding: .48rem .6rem; }
.sidebar-shell.is-collapsed:hover .menu-section.is-open .section-links[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .menu-section.is-open .section-links[b-41jqxwsv30] { display: block; }
.sidebar-shell.is-collapsed:hover .sidebar-user[b-41jqxwsv30],
.sidebar-shell.is-collapsed:focus-within .sidebar-user[b-41jqxwsv30] { justify-content: flex-start; }

@media (prefers-reduced-motion: reduce) {
    .section-chevron[b-41jqxwsv30], .section-links[b-41jqxwsv30] { transition: none; }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-ccwb2vr168],
.components-reconnect-repeated-attempt-visible[b-ccwb2vr168],
.components-reconnect-failed-visible[b-ccwb2vr168],
.components-pause-visible[b-ccwb2vr168],
.components-resume-failed-visible[b-ccwb2vr168],
.components-rejoining-animation[b-ccwb2vr168] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-ccwb2vr168],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-ccwb2vr168],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-ccwb2vr168],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-ccwb2vr168],
#components-reconnect-modal.components-reconnect-retrying[b-ccwb2vr168],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-ccwb2vr168],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-ccwb2vr168],
#components-reconnect-modal.components-reconnect-failed[b-ccwb2vr168],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-ccwb2vr168] {
    display: block;
}


#components-reconnect-modal[b-ccwb2vr168] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-ccwb2vr168 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-ccwb2vr168 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-ccwb2vr168 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-ccwb2vr168]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-ccwb2vr168 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-ccwb2vr168 {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-ccwb2vr168 {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-ccwb2vr168 {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-ccwb2vr168] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-ccwb2vr168] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-ccwb2vr168] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-ccwb2vr168] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-ccwb2vr168] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-ccwb2vr168] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-ccwb2vr168] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-ccwb2vr168 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-ccwb2vr168] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-ccwb2vr168 {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/AiReviewQueue.razor.rz.scp.css */
/* AI Review Queue — ProjectCTRL Design System.
   Header/summary use ds- classes; buttons + badges aligned to tokens here. */

.ai-review-page[b-ely96gy6wb] { display: grid; gap: var(--sp-5, 20px); }

/* Buttons — green primary / red destructive / neutral secondary */
.ai-review-actions a[b-ely96gy6wb], .ai-review-actions button[b-ely96gy6wb],
.ds-actions .approve[b-ely96gy6wb], .ds-actions .secondary[b-ely96gy6wb],
.row-actions button[b-ely96gy6wb], .row-actions a[b-ely96gy6wb] {
    display: inline-flex; align-items: center; justify-content: center; gap: .35rem;
    border: 1px solid var(--brand-700, #6D28D9); background: var(--brand-600, #7C3AED); color: #fff;
    padding: .55rem .85rem; border-radius: var(--radius-sm, 6px); text-decoration: none; font-weight: 650;
    font-size: var(--fs-body-sm, .875rem); cursor: pointer; white-space: nowrap;
}
.approve[b-ely96gy6wb] { border-color: var(--brand-700, #6D28D9) !important; background: var(--brand-600, #7C3AED) !important; color: #fff !important; }
.approve:hover[b-ely96gy6wb] { background: var(--brand-700, #6D28D9) !important; }
.reject[b-ely96gy6wb] { border-color: #c0392f !important; background: var(--error, #d13a3a) !important; color: #fff !important; }
.reject:hover[b-ely96gy6wb] { background: #c0392f !important; }
.secondary[b-ely96gy6wb] { border: 1px solid var(--border-strong, #c3d3e6) !important; background: var(--surface, #fff) !important; color: var(--text, #0d1b2a) !important; }
.secondary:hover[b-ely96gy6wb] { background: var(--surface-2, #f5f9fe) !important; }
.row-actions button:disabled[b-ely96gy6wb], .ai-review-actions button:disabled[b-ely96gy6wb] { opacity: .5; cursor: default; }

/* Filter toolbar */
.review-toolbar[b-ely96gy6wb] {
    display: grid; grid-template-columns: minmax(18rem, 2fr) repeat(2, minmax(12rem, 1fr)) auto; gap: var(--sp-4, 16px);
    border: 1px solid var(--border, #dce6f2); border-radius: var(--radius, 10px); background: var(--surface, #fff); padding: var(--sp-4, 16px); box-shadow: var(--shadow-sm);
}
.review-toolbar label[b-ely96gy6wb], .review-fields label[b-ely96gy6wb] { display: grid; gap: .32rem; }
.review-toolbar label span[b-ely96gy6wb], .review-fields label span[b-ely96gy6wb] { font-size: var(--fs-eyebrow, .72rem); font-weight: 700; color: var(--text-muted, #5f6b7a); text-transform: uppercase; letter-spacing: .04em; }
.review-toolbar input[b-ely96gy6wb], .review-toolbar select[b-ely96gy6wb], .review-fields input[b-ely96gy6wb], .review-fields select[b-ely96gy6wb] {
    border: 1px solid var(--border-strong, #c3d3e6); border-radius: var(--radius-sm, 6px); padding: .5rem .62rem; min-width: 0; font: inherit; font-size: var(--fs-body-sm, .875rem); background: var(--surface, #fff);
}
.review-toolbar input:focus[b-ely96gy6wb], .review-toolbar select:focus[b-ely96gy6wb], .review-fields input:focus[b-ely96gy6wb], .review-fields select:focus[b-ely96gy6wb] { outline: none; border-color: var(--brand-500, #8B5CF6); box-shadow: var(--focus-ring); }

/* Review cards */
.review-list[b-ely96gy6wb] { display: grid; gap: var(--sp-4, 16px); }
.review-card[b-ely96gy6wb] { border: 1px solid var(--border, #dce6f2); border-radius: var(--radius, 10px); background: var(--surface, #fff); overflow: hidden; box-shadow: var(--shadow-sm); }
.review-card > header[b-ely96gy6wb] { display: flex; justify-content: space-between; align-items: center; gap: .75rem; padding: .85rem 1rem; border-bottom: 1px solid var(--border, #dce6f2); background: var(--surface-2, #f5f9fe); }
.file-heading[b-ely96gy6wb] { display: flex; align-items: center; gap: .7rem; min-width: 0; }
.file-heading > div[b-ely96gy6wb] { display: grid; min-width: 0; }
.file-heading strong[b-ely96gy6wb] { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--text, #0d1b2a); }
.file-heading small[b-ely96gy6wb] { color: var(--text-subtle, #8a97a6); }
.file-type[b-ely96gy6wb] { min-width: 3rem; text-align: center; background: var(--neutral-bg, #eaf0f7); color: var(--text-muted, #5f6b7a) !important; padding: .3rem .48rem; border-radius: var(--radius-sm, 6px); font-size: var(--fs-table, .8125rem); font-weight: 700; letter-spacing: 0 !important; }

/* Confidence badge (status semantics) */
.confidence[b-ely96gy6wb] { padding: .3rem .55rem; border-radius: 999px; font-size: var(--fs-table, .8125rem) !important; font-weight: 650; letter-spacing: 0 !important; white-space: nowrap; }
.confidence.low[b-ely96gy6wb] { background: var(--error-bg); color: var(--error); }
.confidence.medium[b-ely96gy6wb] { background: var(--warning-bg); color: var(--warning); }
.confidence.high[b-ely96gy6wb] { background: var(--success-bg); color: var(--success); }

.ai-reason[b-ely96gy6wb] { display: grid; gap: .2rem; padding: .75rem 1rem; background: var(--brand-50, #eef1ff); border-bottom: 1px solid var(--border, #dce6f2); }
.ai-reason strong[b-ely96gy6wb] { color: var(--brand-700, #6D28D9); font-size: var(--fs-body-sm, .875rem); }
.ai-reason span[b-ely96gy6wb] { color: var(--text-muted, #5f6b7a); }
.review-fields[b-ely96gy6wb] { display: grid; grid-template-columns: 1.1fr 2fr .55fr 1fr 1.25fr; gap: var(--sp-3, 12px); padding: var(--card-pad, 24px); }
.review-fields .wide[b-ely96gy6wb] { grid-column: span 2; }
.review-card footer[b-ely96gy6wb] { display: flex; justify-content: space-between; align-items: center; gap: .75rem; padding: .8rem 1rem; border-top: 1px solid var(--border, #dce6f2); }
.review-card footer small[b-ely96gy6wb] { color: var(--text-subtle, #8a97a6); overflow-wrap: anywhere; }
.row-actions[b-ely96gy6wb] { display: flex; gap: .45rem; flex-wrap: wrap; justify-content: flex-end; }

/* States + messages */
.review-state[b-ely96gy6wb], .review-message[b-ely96gy6wb] { border: 1px solid var(--border, #dce6f2); border-radius: var(--radius, 10px); padding: var(--sp-5, 20px); background: var(--surface, #fff); }
.review-message.success[b-ely96gy6wb], .success-state[b-ely96gy6wb] { border-color: #cdeede; background: var(--success-bg); color: var(--success); }
.review-message.error[b-ely96gy6wb] { border-color: #f3cccc; background: var(--error-bg); color: var(--error); }
.success-state[b-ely96gy6wb] { display: grid; gap: .25rem; }

@media (max-width: 1050px) { .review-toolbar[b-ely96gy6wb] { grid-template-columns: 1fr; } .review-fields[b-ely96gy6wb] { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 700px) { .review-card > header[b-ely96gy6wb], .review-card footer[b-ely96gy6wb] { flex-direction: column; align-items: stretch; } .review-fields[b-ely96gy6wb] { grid-template-columns: 1fr; } .review-fields .wide[b-ely96gy6wb] { grid-column: auto; } }
/* /Components/Pages/Commissioning.razor.rz.scp.css */
/* Commissioning — styling now provided by the shared ProjectCTRL Design System (design-system.css). */
/* /Components/Pages/Construction.razor.rz.scp.css */
/* Construction — styling now provided by the shared ProjectCTRL Design System (design-system.css). */
/* /Components/Pages/DocumentRegister.razor.rz.scp.css */
/* Document Register — converted to the ProjectCTRL Design System.
   Header/table/badges use shared ds- classes; these are page-specific helpers only. */

.document-register-page[b-dba7fal3ob] { min-width: 0; }
.register-state[b-dba7fal3ob], .register-empty[b-dba7fal3ob] { padding: var(--sp-8, 32px); text-align: center; color: var(--text-muted, #5f6b7a); }

/* Filter toolbar */
.register-toolbar[b-dba7fal3ob] {
    display: grid;
    grid-template-columns: minmax(260px, 1.6fr) repeat(3, minmax(150px, .8fr)) minmax(150px, .8fr) minmax(160px, .8fr);
    gap: var(--sp-4, 16px);
    margin-bottom: var(--sp-4, 16px);
    padding: var(--sp-4, 16px);
    border: 1px solid var(--border, #dce6f2);
    border-radius: var(--radius, 10px);
    background: var(--surface, #fff);
    box-shadow: var(--shadow-sm);
}
.register-toolbar label[b-dba7fal3ob] { display: flex; flex-direction: column; gap: .3rem; min-width: 0; }
.register-toolbar label span[b-dba7fal3ob] { font-size: var(--fs-eyebrow, .72rem); font-weight: 700; color: var(--text-muted, #5f6b7a); text-transform: uppercase; letter-spacing: .04em; }
.register-toolbar input[b-dba7fal3ob], .register-toolbar select[b-dba7fal3ob] {
    min-height: 40px; padding: .5rem .65rem; border: 1px solid var(--border-strong, #c3d3e6);
    border-radius: var(--radius-sm, 6px); background: var(--surface, #fff); font: inherit; font-size: var(--fs-body-sm, .875rem); color: var(--text, #0d1b2a);
}
.register-toolbar input:focus[b-dba7fal3ob], .register-toolbar select:focus[b-dba7fal3ob] { outline: none; border-color: var(--brand-500, #8B5CF6); box-shadow: var(--focus-ring); }
@media (max-width: 1000px) { .register-toolbar[b-dba7fal3ob] { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) { .register-toolbar[b-dba7fal3ob] { grid-template-columns: 1fr; } }

/* Table (ds-grid handles the base; wrapper adds horizontal scroll) */
.register-table-card[b-dba7fal3ob] { border: 1px solid var(--border, #dce6f2); border-radius: var(--radius, 10px); background: var(--surface, #fff); overflow: hidden; box-shadow: var(--shadow-sm); }
.register-table-scroll[b-dba7fal3ob] { overflow-x: auto; }
.register-table-scroll table[b-dba7fal3ob] { min-width: 1050px; }
.title-cell[b-dba7fal3ob] { display: flex; flex-direction: column; gap: .1rem; }
.title-cell small[b-dba7fal3ob] { color: var(--text-subtle, #8a97a6); }
.archived-row[b-dba7fal3ob] { opacity: .7; background: var(--surface-2, #f5f9fe); }

/* Compact row actions with status semantics */
.document-actions[b-dba7fal3ob] { display: flex; gap: .35rem; align-items: center; flex-wrap: wrap; min-width: 128px; }
.document-actions button[b-dba7fal3ob], .document-actions a[b-dba7fal3ob] {
    padding: .35rem .55rem; border: 1px solid var(--border-strong, #c3d3e6); border-radius: var(--radius-sm, 6px);
    background: var(--surface, #fff); color: var(--text, #0d1b2a); text-decoration: none; font-weight: 650; font-size: var(--fs-table, .8125rem); cursor: pointer;
}
.document-actions button:hover[b-dba7fal3ob], .document-actions a:hover[b-dba7fal3ob] { background: var(--surface-2, #f5f9fe); border-color: var(--text-subtle, #8a97a6); }
.document-actions .action-warning[b-dba7fal3ob] { background: var(--warning-bg); color: var(--warning); border-color: #f3d9a0; }
.document-actions .action-neutral[b-dba7fal3ob] { background: var(--info-bg); color: var(--info); border-color: #bfe0f5; }
.document-actions .action-danger[b-dba7fal3ob] { background: var(--error-bg); color: var(--error); border-color: #f3cccc; }

/* Action message banner */
.action-message[b-dba7fal3ob] { margin: 0 0 var(--sp-4, 16px); padding: .8rem 1rem; border-radius: var(--radius-sm, 6px); font-weight: 600; font-size: var(--fs-body-sm, .875rem); }
.action-message.success[b-dba7fal3ob] { background: var(--success-bg); color: var(--success); border: 1px solid #cdeede; }
.action-message.error[b-dba7fal3ob] { background: var(--error-bg); color: var(--error); border: 1px solid #f3cccc; }

/* Audit trail */
.audit-card[b-dba7fal3ob] { background: var(--surface, #fff); border: 1px solid var(--border, #dce6f2); border-radius: var(--radius, 10px); padding: var(--card-pad, 24px); margin-bottom: var(--sp-4, 16px); box-shadow: var(--shadow-sm); }
.audit-heading[b-dba7fal3ob] { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.audit-heading span[b-dba7fal3ob] { font-size: var(--fs-eyebrow, .72rem); letter-spacing: .1em; color: var(--brand-600, #7C3AED); font-weight: 800; text-transform: uppercase; }
.audit-heading h2[b-dba7fal3ob] { margin: .2rem 0 0; font-size: var(--fs-card, 1.125rem); }
.audit-list[b-dba7fal3ob] { display: grid; gap: .65rem; margin-top: 1rem; }
.audit-row[b-dba7fal3ob] { display: grid; grid-template-columns: 1fr auto; gap: .25rem 1rem; border-top: 1px solid var(--border, #dce6f2); padding-top: .65rem; }
.audit-row div[b-dba7fal3ob] { display: flex; gap: .5rem; align-items: baseline; }
.audit-row div:nth-child(2)[b-dba7fal3ob] { justify-content: flex-end; }
.audit-row p[b-dba7fal3ob] { grid-column: 1 / -1; margin: 0; color: var(--text-muted, #5f6b7a); }
.audit-row small[b-dba7fal3ob], .audit-row span[b-dba7fal3ob] { color: var(--text-subtle, #8a97a6); }

/* Controlled-action confirm dialog */
.modal-backdrop[b-dba7fal3ob] { position: fixed; inset: 0; background: var(--overlay, rgba(16,24,40,.45)); display: grid; place-items: center; z-index: 2000; padding: 1rem; }
.confirm-dialog[b-dba7fal3ob] { width: min(520px, 100%); background: var(--surface, #fff); border-radius: var(--radius-lg, 14px); padding: var(--sp-6, 24px); box-shadow: 0 20px 60px rgba(16,24,40,.24); }
.confirm-dialog > span[b-dba7fal3ob] { font-size: var(--fs-eyebrow, .72rem); letter-spacing: .1em; font-weight: 800; color: var(--text-subtle, #8a97a6); text-transform: uppercase; }
.confirm-dialog h2[b-dba7fal3ob] { margin: .3rem 0 1rem; font-size: var(--fs-section, 1.375rem); }
.confirm-dialog dl[b-dba7fal3ob] { display: grid; grid-template-columns: 100px 1fr; gap: .45rem .75rem; padding: .8rem; background: var(--surface-2, #f5f9fe); border: 1px solid var(--border, #dce6f2); border-radius: var(--radius-sm, 6px); }
.confirm-dialog dt[b-dba7fal3ob] { color: var(--text-muted, #5f6b7a); font-weight: 650; }
.confirm-dialog dd[b-dba7fal3ob] { margin: 0; font-weight: 650; overflow-wrap: anywhere; }
.confirm-dialog label[b-dba7fal3ob] { display: grid; gap: .4rem; margin-top: 1rem; font-weight: 650; }
.confirm-dialog textarea[b-dba7fal3ob] { min-height: 92px; resize: vertical; padding: .7rem; border: 1px solid var(--border-strong, #c3d3e6); border-radius: var(--radius-sm, 6px); font: inherit; }
.dialog-error[b-dba7fal3ob] { margin-top: .7rem; padding: .65rem; color: var(--error); background: var(--error-bg); border-radius: var(--radius-sm, 6px); }
.dialog-actions[b-dba7fal3ob] { display: flex; justify-content: flex-end; gap: .7rem; margin-top: 1rem; }

/* Browse | Register view tabs (matches Documents.razor). */
.doc-view-tabs[b-dba7fal3ob] { margin-bottom: var(--sp-4, 16px); }
/* /Components/Pages/Documents.razor.rz.scp.css */
/* Documents — Browse experience (ProjectCTRL Design System; tokens from design-system.css). */

.doc-view-tabs[b-g3agajhyeb] {
    margin-bottom: var(--sp-4, 16px);
}

.doc-discipline[b-g3agajhyeb] {
    margin-top: var(--sp-4, 16px);
}
.doc-discipline__head[b-g3agajhyeb] {
    /* .ds-sec provides the uppercase eyebrow styling; add breathing room. */
    margin: 0 0 var(--sp-3, 12px);
}

/* Dedicated type-card grid — auto-fill with a capped column width so a discipline with a
   single type shows one ~18rem card (not a full-width stretch), while many types wrap into
   a controlled-width grid. Distinct from the shared .ds-grid-cards (auto-fit 1fr). */
.doc-type-grid[b-g3agajhyeb] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(15rem, 20rem));
    justify-content: start;
    gap: var(--sp-3, 12px);
}

/* Document-type card — whole card is a link into the filtered register. */
.doc-type-card[b-g3agajhyeb] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-height: 104px;
    text-decoration: none;
    color: inherit;
    transition: border-color var(--transition, .15s ease), box-shadow var(--transition, .15s ease);
}
.doc-type-card:hover[b-g3agajhyeb] {
    border-color: var(--brand-300);
    box-shadow: var(--shadow-md);
}
.doc-type-card__title[b-g3agajhyeb] {
    color: var(--text);
    font-size: var(--fs-card, 1.125rem);
    font-weight: 650;
}
.doc-type-card__count[b-g3agajhyeb] {
    color: var(--text-muted);
    font-size: var(--fs-body-sm, .875rem);
}
.doc-type-card__badges[b-g3agajhyeb] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: auto;
}
/* /Components/Pages/DocumentViewer.razor.rz.scp.css */
/* Document Viewer — ProjectCTRL Design System (header/panels use ds- classes). */

.viewer-page[b-x64tr4i65f] { min-width: 0; }
.viewer-layout[b-x64tr4i65f] {
    display: grid;
    grid-template-columns: 320px minmax(0, 1fr);
    gap: var(--sp-5, 20px);
    height: calc(100vh - 200px);
    min-height: 560px;
}
.metadata-panel[b-x64tr4i65f] { padding: var(--card-pad, 24px); overflow: auto; }
.metadata-panel dd[b-x64tr4i65f] { word-break: break-word; }
.classification-note[b-x64tr4i65f] { display: flex; flex-direction: column; gap: .25rem; margin-top: var(--sp-4, 16px); }

.preview-panel[b-x64tr4i65f] { border: 1px solid var(--border, #dce6f2); border-radius: var(--radius, 10px); background: var(--surface, #fff); overflow: hidden; box-shadow: var(--shadow-sm); }
.preview-panel iframe[b-x64tr4i65f] { width: 100%; height: 100%; border: 0; }
.image-preview[b-x64tr4i65f] { display: grid; place-items: center; width: 100%; height: 100%; overflow: auto; background: var(--surface-2, #f5f9fe); }
.image-preview img[b-x64tr4i65f] { max-width: 100%; height: auto; }
.preview-unavailable[b-x64tr4i65f] {
    display: grid; place-items: center; align-content: center; gap: .6rem;
    height: 100%; min-height: 300px; padding: 2rem; text-align: center; color: var(--text-muted, #5f6b7a);
}
.preview-unavailable a[b-x64tr4i65f] {
    padding: .55rem .9rem; border-radius: var(--radius-sm, 6px);
    background: var(--brand-600, #7C3AED); color: #fff; text-decoration: none; font-weight: 650;
}

@media (max-width: 900px) {
    .viewer-layout[b-x64tr4i65f] { grid-template-columns: 1fr; height: auto; }
    .metadata-panel[b-x64tr4i65f] { max-height: 360px; }
    .preview-panel[b-x64tr4i65f] { min-height: 600px; }
}
/* /Components/Pages/EngineeringPages/ActiveExtractionProfilePage.razor.rz.scp.css */
.ap-ctx[b-ju4kmp4loh] { display:flex; gap:1.2rem; flex-wrap:wrap; font-size:.76rem; color:var(--text-muted); margin-bottom:.6rem; }
.ap-ctx b[b-ju4kmp4loh] { color:var(--text); }
.ap-layers[b-ju4kmp4loh] { display:flex; flex-direction:column; gap:.4rem; }
.ap-layer[b-ju4kmp4loh] { border:1px solid var(--border); border-left:3px solid #7C3AED; border-radius:6px; padding:.4rem .6rem; background:var(--surface); }
.ap-layer--override[b-ju4kmp4loh] { border-left-color:#b08900; }
.ap-layer-h[b-ju4kmp4loh] { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; }
.ap-layer-h strong[b-ju4kmp4loh] { font-size:.85rem; }
.ap-layer-count[b-ju4kmp4loh] { margin-left:auto; font-size:.7rem; color:var(--text-muted); }
.ap-layer-rules[b-ju4kmp4loh] { font-size:.72rem; color:var(--text-muted); margin-top:.25rem; }
.ap-action[b-ju4kmp4loh] { font-size:.68rem; font-weight:700; padding:.05rem .35rem; border-radius:4px; white-space:nowrap; }
.ap-extract[b-ju4kmp4loh] { background:rgba(46,125,50,.12); color:#2e7d32; }
.ap-ignore[b-ju4kmp4loh] { background:rgba(120,120,120,.14); color:var(--text-muted); }
.ap-review[b-ju4kmp4loh] { background:rgba(176,137,0,.14); color:#8a6d00; }
.ap-other[b-ju4kmp4loh] { background:rgba(139,92,246,.10); color:#7C3AED; }
/* /Components/Pages/EngineeringPages/AssetDatabase.razor.rz.scp.css */
/* Asset Database — ProjectCTRL Design System (was an off-brand navy/slate palette). */

.asset-db-page[b-g1hsfde94m] { display: grid; gap: var(--sp-5, 20px); }

/* View pill nav (green active) */
.asset-view-nav[b-g1hsfde94m] { display: flex; gap: 8px; flex-wrap: wrap; }
.asset-view-nav a[b-g1hsfde94m] {
    padding: 9px 14px; border: 1px solid var(--border-strong, #c3d3e6); border-radius: 999px;
    text-decoration: none; color: var(--text, #0d1b2a); background: var(--surface, #fff); font-size: var(--fs-body-sm, .875rem); font-weight: 600;
}
.asset-view-nav a:hover[b-g1hsfde94m] { border-color: var(--brand-300, #A78BFA); }
.asset-view-nav a.active[b-g1hsfde94m] { background: var(--brand-600, #7C3AED); color: #fff; border-color: var(--brand-700, #6D28D9); }

/* Table card + toolbar (ds-grid styles the table itself) */
.asset-table-card[b-g1hsfde94m] { background: var(--surface, #fff); border: 1px solid var(--border, #dce6f2); border-radius: var(--radius, 10px); overflow: hidden; box-shadow: var(--shadow-sm); }
.asset-toolbar[b-g1hsfde94m] { padding: var(--sp-4, 16px); border-bottom: 1px solid var(--border, #dce6f2); }
.asset-toolbar input[b-g1hsfde94m] {
    width: min(520px, 100%); padding: .55rem .7rem; border: 1px solid var(--border-strong, #c3d3e6);
    border-radius: var(--radius-sm, 6px); font: inherit; font-size: var(--fs-body-sm, .875rem); background: var(--surface, #fff);
}
.asset-toolbar input:focus[b-g1hsfde94m] { outline: none; border-color: var(--brand-500, #8B5CF6); box-shadow: var(--focus-ring); }
.table-scroll[b-g1hsfde94m] { overflow-x: auto; }

@media (max-width: 900px) { .asset-view-nav[b-g1hsfde94m] { gap: 6px; } }
/* /Components/Pages/EngineeringPages/AssetDetail.razor.rz.scp.css */
/* Asset Detail — ProjectCTRL Design System (header/summary/badges/buttons use ds- classes). */

.asset-detail-page[b-arqwqmynx5] { min-width: 0; }
.back-link[b-arqwqmynx5] { padding: 0; margin: 0 0 .5rem; border: 0; background: transparent; color: var(--link, #7C3AED); cursor: pointer; font-size: var(--fs-body-sm, .875rem); }
.back-link:hover[b-arqwqmynx5] { text-decoration: underline; }

.detail-card[b-arqwqmynx5] { margin-bottom: var(--sp-4, 16px); padding: var(--card-pad, 24px); border: 1px solid var(--border, #dce6f2); border-radius: var(--radius, 10px); background: var(--surface, #fff); box-shadow: var(--shadow-sm); }
.card-heading[b-arqwqmynx5] { display: flex; justify-content: space-between; gap: 1rem; margin-bottom: var(--sp-4, 16px); }
.card-heading h2[b-arqwqmynx5] { margin: 0; color: var(--text, #0d1b2a); font-size: var(--fs-card, 1.125rem); }
.card-heading p[b-arqwqmynx5] { margin: .2rem 0 0; color: var(--text-muted, #5f6b7a); font-size: var(--fs-body-sm, .875rem); }

.field-grid[b-arqwqmynx5] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-4, 16px); }
.field-grid label[b-arqwqmynx5], .route-add-grid label[b-arqwqmynx5] { display: flex; flex-direction: column; gap: .32rem; }
.field-grid label span[b-arqwqmynx5], .route-add-grid label span[b-arqwqmynx5] { color: var(--text-muted, #5f6b7a); font-size: var(--fs-eyebrow, .72rem); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.field-grid input[b-arqwqmynx5], .field-grid select[b-arqwqmynx5], .route-add-grid input[b-arqwqmynx5], .route-add-grid select[b-arqwqmynx5] {
    min-height: 40px; padding: .55rem .65rem; border: 1px solid var(--border-strong, #c3d3e6); border-radius: var(--radius-sm, 6px); background: var(--surface, #fff); font: inherit; font-size: var(--fs-body-sm, .875rem);
}
.field-grid input:focus[b-arqwqmynx5], .field-grid select:focus[b-arqwqmynx5], .route-add-grid input:focus[b-arqwqmynx5], .route-add-grid select:focus[b-arqwqmynx5] { outline: none; border-color: var(--brand-500, #8B5CF6); box-shadow: var(--focus-ring); }
.field-grid .full[b-arqwqmynx5] { grid-column: 1 / -1; }
.route-add-grid[b-arqwqmynx5] { display: grid; grid-template-columns: 2fr 1fr 1fr auto; gap: var(--sp-3, 12px); align-items: end; margin-bottom: var(--sp-4, 16px); }
.add-segment[b-arqwqmynx5] { white-space: nowrap; }

.route-table-wrap[b-arqwqmynx5] { overflow-x: auto; border: 1px solid var(--border, #dce6f2); border-radius: var(--radius, 10px); }
.route-table[b-arqwqmynx5] { width: 100%; border-collapse: collapse; font-size: var(--fs-table, .8125rem); }
.route-table th[b-arqwqmynx5] { padding: .6rem .7rem; background: var(--surface-2, #f5f9fe); color: var(--text-muted, #5f6b7a); font-size: var(--fs-table, .8125rem); text-align: left; text-transform: uppercase; letter-spacing: .03em; border-bottom: 1px solid var(--border, #dce6f2); }
.route-table td[b-arqwqmynx5] { padding: .65rem .7rem; border-top: 1px solid var(--border, #dce6f2); color: var(--text, #0d1b2a); }
.route-table td strong[b-arqwqmynx5], .route-table td small[b-arqwqmynx5] { display: block; }
.route-table td small[b-arqwqmynx5] { margin-top: .15rem; color: var(--text-subtle, #8a97a6); }
.delete-button[b-arqwqmynx5] { border: 0; background: transparent; color: var(--error, #d13a3a); cursor: pointer; font-size: var(--fs-table, .8125rem); }
.empty-route[b-arqwqmynx5] { padding: var(--sp-5, 20px); color: var(--text-muted, #5f6b7a); text-align: center; }

.calculation-grid[b-arqwqmynx5] { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--sp-3, 12px); margin-bottom: var(--sp-4, 16px); }
.calculation-grid article[b-arqwqmynx5] { padding: var(--sp-4, 16px); border: 1px solid var(--border, #dce6f2); border-radius: var(--radius, 10px); background: var(--surface, #fff); box-shadow: var(--shadow-sm); }
.calculation-grid span[b-arqwqmynx5] { display: block; color: var(--text-muted, #5f6b7a); font-size: var(--fs-eyebrow, .72rem); text-transform: uppercase; letter-spacing: .04em; }
.calculation-grid strong[b-arqwqmynx5] { display: block; margin-top: .3rem; color: var(--text, #0d1b2a); font-size: .95rem; }
.calculation-grid .total[b-arqwqmynx5] { border-color: var(--brand-200, #b8c6ff); background: var(--brand-50, #eef1ff); }
.calculation-grid .order[b-arqwqmynx5] { border-color: var(--brand-600, #7C3AED); background: var(--brand-50, #eef1ff); }
.calculation-grid .order button[b-arqwqmynx5] { margin-top: .55rem; border: 0; background: transparent; color: var(--brand-700, #6D28D9); font-size: var(--fs-body-sm, .875rem); font-weight: 700; cursor: pointer; }

.message-card[b-arqwqmynx5] { margin-bottom: var(--sp-4, 16px); padding: .8rem 1rem; border-radius: var(--radius-sm, 6px); font-size: var(--fs-body-sm, .875rem); }
.message-card.success[b-arqwqmynx5] { border: 1px solid #a7e3c8; background: var(--success-bg); color: var(--success); }
.message-card.error[b-arqwqmynx5] { border: 1px solid #f3cccc; background: var(--error-bg); color: var(--error); }

@media (max-width: 1050px) { .calculation-grid[b-arqwqmynx5] { grid-template-columns: repeat(2, 1fr); } .route-add-grid[b-arqwqmynx5] { grid-template-columns: 1fr 1fr; } .field-grid[b-arqwqmynx5] { grid-template-columns: 1fr; } .field-grid .full[b-arqwqmynx5] { grid-column: auto; } }
@media (max-width: 650px) { .calculation-grid[b-arqwqmynx5], .route-add-grid[b-arqwqmynx5] { grid-template-columns: 1fr; } }
/* /Components/Pages/EngineeringPages/AssetRegister.razor.rz.scp.css */
/* Engineering Objects (Asset Register) — ProjectCTRL Design System.
   Header/table/badges/buttons use ds- classes; these are page-specific helpers. */

.register-page[b-c2taccj2bg] { min-width: 0; }

.editor-card[b-c2taccj2bg], .toolbar-card[b-c2taccj2bg], .table-card[b-c2taccj2bg] {
    margin-bottom: var(--sp-4, 16px); border: 1px solid var(--border, #dce6f2);
    border-radius: var(--radius, 10px); background: var(--surface, #fff); box-shadow: var(--shadow-sm);
}
.editor-card[b-c2taccj2bg] { padding: var(--card-pad, 24px); }
.editor-heading[b-c2taccj2bg] { display: flex; justify-content: space-between; align-items: center; margin-bottom: var(--sp-2, 8px); }
.editor-heading h2[b-c2taccj2bg] { margin: 0; color: var(--text, #0d1b2a); font-size: var(--fs-card, 1.125rem); }
.editor-heading button[b-c2taccj2bg] { border: 0; background: transparent; font-size: 1.3rem; cursor: pointer; color: var(--text-muted, #5f6b7a); }

.field-grid[b-c2taccj2bg] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-4, 16px); margin-top: var(--sp-3, 12px); }
.field-grid label[b-c2taccj2bg], .toolbar-card label[b-c2taccj2bg] { display: flex; flex-direction: column; gap: .3rem; }
.field-grid span[b-c2taccj2bg], .toolbar-card span[b-c2taccj2bg] { color: var(--text-muted, #5f6b7a); font-size: var(--fs-eyebrow, .72rem); font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.field-grid input[b-c2taccj2bg], .field-grid select[b-c2taccj2bg], .field-grid textarea[b-c2taccj2bg], .toolbar-card input[b-c2taccj2bg], .toolbar-card select[b-c2taccj2bg] {
    min-height: 40px; padding: .5rem .65rem; border: 1px solid var(--border-strong, #c3d3e6);
    border-radius: var(--radius-sm, 6px); background: var(--surface, #fff); color: var(--text, #0d1b2a); font: inherit; font-size: var(--fs-body-sm, .875rem);
}
.field-grid input:focus[b-c2taccj2bg], .field-grid select:focus[b-c2taccj2bg], .field-grid textarea:focus[b-c2taccj2bg], .toolbar-card input:focus[b-c2taccj2bg], .toolbar-card select:focus[b-c2taccj2bg] { outline: none; border-color: var(--brand-500, #8B5CF6); box-shadow: var(--focus-ring); }
.field-grid textarea[b-c2taccj2bg] { min-height: 85px; }
.field-grid .full[b-c2taccj2bg] { grid-column: 1 / -1; }
.editor-actions[b-c2taccj2bg] { display: flex; justify-content: flex-end; gap: .5rem; margin-top: var(--sp-4, 16px); }

.toolbar-card[b-c2taccj2bg] { display: grid; grid-template-columns: minmax(260px, 1fr) 220px 220px; gap: var(--sp-4, 16px); padding: var(--sp-4, 16px); }

.table-scroll[b-c2taccj2bg] { overflow-x: auto; }
.table-card td strong[b-c2taccj2bg] { color: var(--brand-700, #6D28D9); }
.row-actions[b-c2taccj2bg] { white-space: nowrap; display: flex; gap: .3rem; }
.row-actions button[b-c2taccj2bg] {
    border: 1px solid var(--border-strong, #c3d3e6); border-radius: var(--radius-sm, 6px);
    background: var(--surface, #fff); color: var(--text, #0d1b2a); font-size: var(--fs-table, .8125rem); padding: .3rem .5rem; cursor: pointer;
}
.row-actions button:hover[b-c2taccj2bg] { background: var(--surface-2, #f5f9fe); }
.error-message[b-c2taccj2bg] { margin-top: .8rem; padding: .7rem; border: 1px solid #f3cccc; border-radius: var(--radius-sm, 6px); background: var(--error-bg); color: var(--error); }

@media (max-width: 800px) { .toolbar-card[b-c2taccj2bg], .field-grid[b-c2taccj2bg] { grid-template-columns: 1fr; } .field-grid .full[b-c2taccj2bg] { grid-column: auto; } }
/* /Components/Pages/EngineeringPages/DrawingRegister.razor.rz.scp.css */
.drawing-page[b-lt4jd7x2fz]{min-width:0}.drawing-header[b-lt4jd7x2fz]{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.drawing-header span[b-lt4jd7x2fz]{color:var(--brand-600);font-size:.7rem;font-weight:800;letter-spacing:.1em}.drawing-header h1[b-lt4jd7x2fz]{margin:.15rem 0;font-size:2rem}.drawing-header p[b-lt4jd7x2fz]{margin:0;color:#5f6b7a}.drawing-actions[b-lt4jd7x2fz]{display:flex;gap:.5rem}.drawing-actions a[b-lt4jd7x2fz]{padding:.65rem .8rem;border-radius:6px;background:var(--brand-600);color:white;text-decoration:none;font-weight:750}.drawing-actions a.secondary[b-lt4jd7x2fz]{background:#fff;color:#1f2b3a;border:1px solid #c3d3e6}.drawing-help[b-lt4jd7x2fz]{display:flex;flex-direction:column;gap:.2rem;margin-bottom:1rem;padding:.85rem 1rem;border-left:4px solid var(--brand-600);border-radius:7px;background:#eef1ff;color:#5f6b7a}.toolbar-card[b-lt4jd7x2fz]{display:grid;grid-template-columns:minmax(240px,1.35fr) repeat(4,minmax(130px,.58fr)) minmax(145px,.55fr);gap:.7rem;padding:1rem;border:1px solid #dce6f2;border-radius:10px;background:#fff}.toolbar-card label[b-lt4jd7x2fz]{display:flex;flex-direction:column;gap:.3rem}.toolbar-card span[b-lt4jd7x2fz]{font-size:.65rem;font-weight:800;color:#5f6b7a;text-transform:uppercase}.toolbar-card input[b-lt4jd7x2fz],.toolbar-card select[b-lt4jd7x2fz]{min-height:42px;padding:.55rem .65rem;border:1px solid #c3d3e6;border-radius:6px;background:#fff}.view-toggle div[b-lt4jd7x2fz]{display:flex}.view-toggle button[b-lt4jd7x2fz]{flex:1;min-height:42px;border:1px solid #c3d3e6;background:#fff;color:#1f2b3a;font-weight:750}.view-toggle button:first-child[b-lt4jd7x2fz]{border-radius:6px 0 0 6px}.view-toggle button:last-child[b-lt4jd7x2fz]{border-radius:0 6px 6px 0}.view-toggle button.active[b-lt4jd7x2fz]{background:var(--brand-600);color:#fff;border-color:var(--brand-600)}.drawing-summary[b-lt4jd7x2fz]{display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem;margin:1rem 0}.drawing-summary article[b-lt4jd7x2fz]{padding:.85rem 1rem;border:1px solid #dce6f2;border-radius:8px;background:#fff}.drawing-summary span[b-lt4jd7x2fz]{display:block;color:#5f6b7a;font-size:.7rem}.drawing-summary strong[b-lt4jd7x2fz]{font-size:1.4rem}.folder-browser[b-lt4jd7x2fz]{display:flex;flex-direction:column;gap:.65rem}.folder-card[b-lt4jd7x2fz]{border:1px solid #dce6f2;border-radius:9px;background:#fff;overflow:hidden}.folder-heading[b-lt4jd7x2fz]{display:grid;grid-template-columns:32px 1fr 30px;align-items:center;width:100%;padding:.8rem 1rem;border:0;background:#f5f9fe;color:#1f2b3a;text-align:left;cursor:pointer}.folder-heading:hover[b-lt4jd7x2fz]{background:#F4F6F9}.folder-icon[b-lt4jd7x2fz]{color:var(--brand-600);font-size:1.15rem}.folder-name[b-lt4jd7x2fz]{display:flex;flex-direction:column;gap:.1rem}.folder-name strong[b-lt4jd7x2fz]{font-size:.84rem}.folder-name small[b-lt4jd7x2fz]{color:#5f6b7a;font-size:.68rem}.folder-state[b-lt4jd7x2fz]{font-size:1.15rem;color:var(--brand-600);text-align:center}.folder-files[b-lt4jd7x2fz]{border-top:1px solid #dce6f2}.drawing-file-row[b-lt4jd7x2fz]{display:grid;grid-template-columns:54px minmax(280px,1.5fr) minmax(180px,.7fr) auto;gap:.8rem;align-items:center;padding:.7rem 1rem;border-bottom:1px solid #dce6f2}.drawing-file-row:last-child[b-lt4jd7x2fz]{border-bottom:0}.drawing-file-row:hover[b-lt4jd7x2fz]{background:#f5f9fe}.file-kind[b-lt4jd7x2fz],.file-type-badge[b-lt4jd7x2fz]{display:inline-flex;justify-content:center;padding:.28rem .42rem;border-radius:5px;background:#eef1ff;color:#6D28D9;font-size:.65rem;font-weight:850}.drawing-identity[b-lt4jd7x2fz]{display:flex;flex-direction:column;gap:.08rem}.drawing-identity strong[b-lt4jd7x2fz]{font-size:.78rem}.drawing-identity span[b-lt4jd7x2fz]{font-size:.75rem}.drawing-identity small[b-lt4jd7x2fz]{color:#5f6b7a;font-size:.67rem}.drawing-meta[b-lt4jd7x2fz]{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;color:#5f6b7a;font-size:.7rem}.table-card[b-lt4jd7x2fz]{border:1px solid #dce6f2;border-radius:10px;background:#fff;overflow:hidden}.table-scroll[b-lt4jd7x2fz]{overflow:auto}.table-card table[b-lt4jd7x2fz]{width:100%;min-width:1450px;border-collapse:collapse}.table-card th[b-lt4jd7x2fz]{padding:.65rem;background:#f5f9fe;text-align:left;color:#5f6b7a;font-size:.65rem;text-transform:uppercase}.table-card td[b-lt4jd7x2fz]{padding:.7rem;border-top:1px solid #dce6f2;vertical-align:top;font-size:.75rem}.controlled-folder[b-lt4jd7x2fz]{max-width:220px;color:#6D28D9;font-weight:700}.drawing-title[b-lt4jd7x2fz]{display:flex;flex-direction:column}.drawing-title small[b-lt4jd7x2fz]{color:#5f6b7a}.type-badge[b-lt4jd7x2fz],.status-badge[b-lt4jd7x2fz]{display:inline-flex;padding:.25rem .45rem;border-radius:999px;background:#F4F6F9;font-size:.67rem;font-weight:750}.row-actions[b-lt4jd7x2fz]{display:flex;gap:.35rem}.row-actions button[b-lt4jd7x2fz],.row-actions a[b-lt4jd7x2fz]{padding:.4rem .55rem;border:1px solid #c3d3e6;border-radius:5px;background:#fff;color:#1f2b3a;text-decoration:none;font-weight:750;white-space:nowrap}.empty-state[b-lt4jd7x2fz],.register-state[b-lt4jd7x2fz]{padding:2rem;text-align:center;color:#5f6b7a}@media(max-width:1200px){.toolbar-card[b-lt4jd7x2fz]{grid-template-columns:1fr 1fr 1fr}.drawing-file-row[b-lt4jd7x2fz]{grid-template-columns:50px 1fr auto}.drawing-meta[b-lt4jd7x2fz]{display:none}}@media(max-width:950px){.drawing-header[b-lt4jd7x2fz]{flex-direction:column}.toolbar-card[b-lt4jd7x2fz]{grid-template-columns:1fr 1fr}.drawing-summary[b-lt4jd7x2fz]{grid-template-columns:1fr 1fr}.drawing-file-row[b-lt4jd7x2fz]{grid-template-columns:46px 1fr}.drawing-file-row .row-actions[b-lt4jd7x2fz]{grid-column:2}}@media(max-width:600px){.toolbar-card[b-lt4jd7x2fz],.drawing-summary[b-lt4jd7x2fz]{grid-template-columns:1fr}.drawing-file-row[b-lt4jd7x2fz]{grid-template-columns:1fr}.drawing-file-row .row-actions[b-lt4jd7x2fz]{grid-column:1}}
.modal-backdrop[b-lt4jd7x2fz]{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:1rem;background:rgba(11,20,38,.55)}.reclassify-modal[b-lt4jd7x2fz]{width:min(720px,100%);max-height:92vh;overflow:auto;border:1px solid #c3d3e6;border-radius:12px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.25)}.reclassify-modal header[b-lt4jd7x2fz]{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 1.1rem;border-bottom:1px solid #dce6f2}.reclassify-modal header span[b-lt4jd7x2fz]{color:var(--brand-600);font-size:.65rem;font-weight:850;letter-spacing:.1em}.reclassify-modal h2[b-lt4jd7x2fz]{margin:.15rem 0 0;font-size:1.35rem}.modal-close[b-lt4jd7x2fz]{border:0;background:transparent;color:#5f6b7a;font-size:1.6rem;cursor:pointer}.reclassify-document[b-lt4jd7x2fz]{display:flex;flex-direction:column;gap:.16rem;margin:1rem 1.1rem;padding:.85rem;border-radius:8px;background:#f5f9fe}.reclassify-document small[b-lt4jd7x2fz]{color:#5f6b7a}.folder-change[b-lt4jd7x2fz]{display:grid;gap:.8rem;padding:0 1.1rem}.folder-change label[b-lt4jd7x2fz]{display:flex;flex-direction:column;gap:.32rem}.folder-change label>span[b-lt4jd7x2fz]{font-size:.68rem;font-weight:800;color:#5f6b7a;text-transform:uppercase}.folder-change input[b-lt4jd7x2fz],.folder-change select[b-lt4jd7x2fz],.folder-change textarea[b-lt4jd7x2fz]{width:100%;padding:.65rem;border:1px solid #c3d3e6;border-radius:6px;background:#fff;font:inherit}.folder-change input[readonly][b-lt4jd7x2fz]{background:#f5f9fe;color:#5f6b7a}.reclassify-note[b-lt4jd7x2fz]{margin:1rem 1.1rem;padding:.75rem;border-left:4px solid var(--brand-600);background:#eef1ff;color:#5f6b7a;font-size:.76rem}.action-message[b-lt4jd7x2fz]{margin:0 1.1rem 1rem;padding:.7rem;border-radius:6px;font-size:.76rem}.action-message.success[b-lt4jd7x2fz]{background:#e4f7ee;color:#16a163}.action-message.error[b-lt4jd7x2fz]{background:#fff0ef;color:#8a3028}.reclassify-modal footer[b-lt4jd7x2fz]{display:flex;justify-content:flex-end;gap:.55rem;padding:1rem 1.1rem;border-top:1px solid #dce6f2}.reclassify-modal footer button[b-lt4jd7x2fz]{padding:.62rem .85rem;border-radius:6px;font-weight:800;cursor:pointer}.reclassify-modal footer .secondary[b-lt4jd7x2fz]{border:1px solid #c3d3e6;background:#fff;color:#1f2b3a}.reclassify-modal footer .primary[b-lt4jd7x2fz]{border:1px solid var(--brand-600);background:var(--brand-600);color:#fff}.reclassify-modal footer button:disabled[b-lt4jd7x2fz]{opacity:.6;cursor:not-allowed}
.folder-children[b-lt4jd7x2fz]{display:flex;flex-direction:column;gap:.5rem;padding:.65rem;background:#f5f9fe;border-top:1px solid #dce6f2}.subfolder-card[b-lt4jd7x2fz]{border:1px solid #dce6f2;border-radius:8px;background:#fff;overflow:hidden}.subfolder-heading[b-lt4jd7x2fz]{display:grid;grid-template-columns:28px 1fr 28px;align-items:center;width:100%;padding:.7rem .85rem;border:0;background:#f5f9fe;color:#1f2b3a;text-align:left;cursor:pointer}.subfolder-heading:hover[b-lt4jd7x2fz]{background:#F4F6F9}.subfolder-icon[b-lt4jd7x2fz]{color:#A78BFA;font-size:1rem}.nested-files[b-lt4jd7x2fz]{border-top:1px solid #dce6f2}.nested-files .drawing-file-row[b-lt4jd7x2fz]{padding-left:1.35rem}
/* /Components/Pages/EngineeringPages/EngineeringDashboard.razor.rz.scp.css */
.engineering-page[b-1j3odzfgsr]{display:flex;flex-direction:column;gap:1.25rem}.engineering-header[b-1j3odzfgsr]{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.engineering-eyebrow[b-1j3odzfgsr],.panel-kicker[b-1j3odzfgsr],.banner-label[b-1j3odzfgsr]{display:block;color:#7C3AED;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.engineering-header h1[b-1j3odzfgsr]{margin:.25rem 0;font-size:2.25rem;font-weight:500;color:#1f2b3a}.engineering-header p[b-1j3odzfgsr]{margin:0;color:#5f6b7a}.engineering-actions[b-1j3odzfgsr]{display:flex;gap:.75rem;flex-wrap:wrap}.engineering-actions a[b-1j3odzfgsr],.health-panel a[b-1j3odzfgsr]{border-radius:.45rem;padding:.75rem 1rem;text-decoration:none;font-weight:700}.primary-action[b-1j3odzfgsr]{background:var(--brand-600);color:#fff}.secondary-action[b-1j3odzfgsr]{border:1px solid #dce6f2;color:#1f2b3a;background:#fff}.engineering-state[b-1j3odzfgsr]{padding:2rem;background:#fff;border:1px solid #dce6f2;border-radius:.65rem}.engineering-state a[b-1j3odzfgsr]{color:#7C3AED;font-weight:700}.backbone-banner[b-1j3odzfgsr]{display:flex;justify-content:space-between;gap:1.25rem;align-items:center;padding:1.25rem 1.4rem;background:#1f2b3a;color:#fff;border-radius:.7rem}.backbone-banner h2[b-1j3odzfgsr]{margin:.25rem 0 .35rem;font-size:1.3rem}.backbone-banner p[b-1j3odzfgsr]{margin:0;max-width:760px;color:#dce6f2}.data-flow[b-1j3odzfgsr]{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;justify-content:flex-end}.data-flow span[b-1j3odzfgsr]{padding:.55rem .7rem;border-radius:.35rem;background:#1f2b3a;font-size:.82rem;font-weight:700}.data-flow b[b-1j3odzfgsr]{color:#A78BFA}.engineering-metrics[b-1j3odzfgsr]{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.8rem}.engineering-metrics article[b-1j3odzfgsr],.engineering-panel[b-1j3odzfgsr]{background:#fff;border:1px solid #dce6f2;border-radius:.65rem;box-shadow:0 1px 3px rgba(11,20,38, .05)}.engineering-metrics article[b-1j3odzfgsr]{padding:1rem}.engineering-metrics span[b-1j3odzfgsr]{display:block;color:#5f6b7a;font-size:.8rem}.engineering-metrics strong[b-1j3odzfgsr]{display:block;margin:.25rem 0;font-size:1.7rem;color:#1f2b3a}.engineering-metrics small[b-1j3odzfgsr]{color:#5f6b7a}.workspace-layout[b-1j3odzfgsr]{display:grid;grid-template-columns:minmax(0,2fr) minmax(250px,.75fr);gap:1rem}.engineering-panel[b-1j3odzfgsr]{padding:1.1rem}.panel-heading h2[b-1j3odzfgsr]{margin:0;font-size:1.2rem;color:#1f2b3a}.panel-heading p[b-1j3odzfgsr]{margin:.25rem 0 0;color:#5f6b7a}.function-group[b-1j3odzfgsr]{margin-top:1.1rem}.function-group h3[b-1j3odzfgsr]{margin:0 0 .55rem;color:#5f6b7a;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}.function-grid[b-1j3odzfgsr]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.function-card[b-1j3odzfgsr]{display:flex;flex-direction:column;min-height:125px;padding:1rem;border:1px solid #dce6f2;border-radius:.55rem;text-decoration:none;background:#f5f9fe;transition:.15s ease}.function-card:hover[b-1j3odzfgsr]{border-color:#7C3AED;transform:translateY(-1px);box-shadow:0 4px 12px rgba(11,20,38, .08)}.function-card strong[b-1j3odzfgsr]{color:#1f2b3a}.function-card span[b-1j3odzfgsr]{margin:.35rem 0;color:#5f6b7a;line-height:1.4}.function-card em[b-1j3odzfgsr]{margin-top:auto;color:#7C3AED;font-style:normal;font-weight:800;font-size:.8rem}.workspace-side[b-1j3odzfgsr]{display:flex;flex-direction:column;gap:1rem}.health-number[b-1j3odzfgsr]{font-size:3rem;font-weight:800;color:#7C3AED;margin-top:.75rem}.health-label[b-1j3odzfgsr]{display:block;color:#5f6b7a;margin-bottom:1rem}.health-panel a[b-1j3odzfgsr]{display:inline-block;background:var(--brand-600);color:#fff}.downstream-list[b-1j3odzfgsr]{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.85rem}.downstream-list span[b-1j3odzfgsr]{padding:.45rem .55rem;background:#F4F6F9;border-radius:.35rem;color:#1f2b3a;font-size:.82rem;font-weight:700}@media(max-width:1100px){.engineering-metrics[b-1j3odzfgsr]{grid-template-columns:repeat(3,1fr)}.workspace-layout[b-1j3odzfgsr]{grid-template-columns:1fr}.backbone-banner[b-1j3odzfgsr]{align-items:flex-start;flex-direction:column}.data-flow[b-1j3odzfgsr]{justify-content:flex-start}}@media(max-width:720px){.engineering-header[b-1j3odzfgsr]{flex-direction:column}.engineering-metrics[b-1j3odzfgsr],.function-grid[b-1j3odzfgsr]{grid-template-columns:1fr}.engineering-actions[b-1j3odzfgsr]{width:100%}.engineering-actions a[b-1j3odzfgsr]{flex:1;text-align:center}}
.lifecycle-output-panel[b-1j3odzfgsr]{padding:1.1rem}.lifecycle-output-grid[b-1j3odzfgsr]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin-top:1rem}.lifecycle-output-grid a[b-1j3odzfgsr]{display:flex;flex-direction:column;min-height:90px;padding:.85rem;border:1px solid #dce6f2;border-radius:.5rem;text-decoration:none;background:#f5f9fe}.lifecycle-output-grid strong[b-1j3odzfgsr]{color:#1f2b3a}.lifecycle-output-grid span[b-1j3odzfgsr]{margin-top:.35rem;color:#5f6b7a;font-size:.8rem;line-height:1.4}@media(max-width:1000px){.lifecycle-output-grid[b-1j3odzfgsr]{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.lifecycle-output-grid[b-1j3odzfgsr]{grid-template-columns:1fr}}
/* /Components/Pages/EngineeringPages/EngineeringExplorer.razor.rz.scp.css */
.explorer-page[b-l4ofywjvzr]{display:flex;flex-direction:column;gap:1rem}.explorer-state[b-l4ofywjvzr]{padding:2rem;background:#fff;border:1px solid #dce6f2;border-radius:.65rem}.explorer-header[b-l4ofywjvzr]{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.explorer-header>div:first-child>span[b-l4ofywjvzr],.tree-heading span[b-l4ofywjvzr],.results-heading span[b-l4ofywjvzr],.digital-thread-panel>div>span[b-l4ofywjvzr]{color:#7C3AED;font-size:.76rem;font-weight:800;letter-spacing:.09em}.explorer-header h1[b-l4ofywjvzr]{margin:.25rem 0;font-size:2.25rem;font-weight:500}.explorer-header p[b-l4ofywjvzr]{margin:0;color:#5f6b7a}.explorer-actions[b-l4ofywjvzr]{display:flex;gap:.65rem}.explorer-actions a[b-l4ofywjvzr]{padding:.7rem .9rem;border:1px solid #dce6f2;border-radius:.45rem;text-decoration:none;color:#1f2b3a;background:#fff;font-weight:750}.explorer-actions a.primary[b-l4ofywjvzr]{background:var(--brand-600);color:#fff;border-color:var(--brand-600)}.explorer-search[b-l4ofywjvzr]{display:grid;grid-template-columns:1fr 240px;gap:.7rem;padding:1rem;background:#fff;border:1px solid #dce6f2;border-radius:.65rem}.explorer-search input[b-l4ofywjvzr],.explorer-search select[b-l4ofywjvzr]{padding:.75rem;border:1px solid #dce6f2;border-radius:.4rem}.object-summary[b-l4ofywjvzr]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.65rem}.type-card[b-l4ofywjvzr]{display:flex;flex-direction:column;align-items:flex-start;padding:.9rem;border:1px solid #dce6f2;border-radius:.55rem;background:#fff;cursor:pointer;text-align:left}.type-card.selected[b-l4ofywjvzr]{border-color:var(--brand-600);background:#F4F6F9}.type-card span[b-l4ofywjvzr]{font-size:.77rem;color:#5f6b7a}.type-card strong[b-l4ofywjvzr]{font-size:1.55rem;color:#1f2b3a}.type-card small[b-l4ofywjvzr]{color:#5f6b7a}.explorer-layout[b-l4ofywjvzr]{display:grid;grid-template-columns:260px 1fr;gap:1rem;align-items:start}.object-tree[b-l4ofywjvzr],.object-results[b-l4ofywjvzr],.digital-thread-panel[b-l4ofywjvzr]{background:#fff;border:1px solid #dce6f2;border-radius:.65rem}.object-tree[b-l4ofywjvzr]{padding:.8rem;position:sticky;top:1rem}.tree-heading[b-l4ofywjvzr]{display:flex;justify-content:space-between;padding:.5rem}.tree-root[b-l4ofywjvzr],.tree-node[b-l4ofywjvzr]{width:100%;display:flex;justify-content:space-between;padding:.65rem .7rem;border:0;border-radius:.35rem;background:transparent;text-align:left;cursor:pointer;color:#1f2b3a}.tree-root[b-l4ofywjvzr]{font-weight:800;background:#F4F6F9;margin-bottom:.4rem}.tree-node:hover[b-l4ofywjvzr],.tree-node.active[b-l4ofywjvzr]{background:#F4F6F9;color:#7C3AED}.tree-node b[b-l4ofywjvzr]{font-size:.78rem}.object-results[b-l4ofywjvzr]{padding:1rem}.results-heading[b-l4ofywjvzr]{display:flex;justify-content:space-between;align-items:end;margin-bottom:.8rem}.results-heading h2[b-l4ofywjvzr]{margin:.2rem 0 0;font-size:1.25rem}.object-grid[b-l4ofywjvzr]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.object-card[b-l4ofywjvzr]{display:flex;flex-direction:column;min-height:235px;padding:.9rem;border:1px solid #dce6f2;border-radius:.5rem;text-decoration:none;color:inherit;background:#f5f9fe}.object-card:hover[b-l4ofywjvzr]{border-color:#7C3AED;box-shadow:0 4px 12px rgba(11,20,38, .08)}.object-card-top[b-l4ofywjvzr]{display:flex;justify-content:space-between}.object-card-top span[b-l4ofywjvzr]{color:#7C3AED;font-size:.75rem;font-weight:800;text-transform:uppercase}.object-card-top em[b-l4ofywjvzr]{font-style:normal;font-size:.72rem;background:#F4F6F9;padding:.2rem .35rem;border-radius:.25rem}.object-card h3[b-l4ofywjvzr]{margin:.5rem 0 .25rem;color:#1f2b3a}.object-card p[b-l4ofywjvzr]{margin:0;color:#5f6b7a;min-height:2.8rem}.object-card dl[b-l4ofywjvzr]{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;margin:.7rem 0}.object-card dl div[b-l4ofywjvzr]{min-width:0}.object-card dt[b-l4ofywjvzr]{font-size:.68rem;text-transform:uppercase;color:#5f6b7a}.object-card dd[b-l4ofywjvzr]{margin:0;font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.object-card footer[b-l4ofywjvzr]{margin-top:auto;padding-top:.55rem;border-top:1px solid #dce6f2;color:#7C3AED;font-weight:800;font-size:.78rem}.empty-result[b-l4ofywjvzr]{padding:2rem;text-align:center;color:#5f6b7a}.digital-thread-panel[b-l4ofywjvzr]{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem}.digital-thread-panel h2[b-l4ofywjvzr]{margin:.2rem 0;font-size:1.15rem}.thread-flow[b-l4ofywjvzr]{display:flex;gap:.35rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}.thread-flow span[b-l4ofywjvzr]{padding:.4rem .5rem;border-radius:.3rem;background:#F4F6F9;font-size:.75rem;font-weight:700}.thread-flow b[b-l4ofywjvzr]{color:var(--brand-600)}@media(max-width:1200px){.object-summary[b-l4ofywjvzr]{grid-template-columns:repeat(3,1fr)}.object-grid[b-l4ofywjvzr]{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.explorer-header[b-l4ofywjvzr],.digital-thread-panel[b-l4ofywjvzr]{flex-direction:column;align-items:flex-start}.explorer-search[b-l4ofywjvzr],.explorer-layout[b-l4ofywjvzr]{grid-template-columns:1fr}.object-tree[b-l4ofywjvzr]{position:static}.thread-flow[b-l4ofywjvzr]{justify-content:flex-start}}@media(max-width:600px){.object-summary[b-l4ofywjvzr],.object-grid[b-l4ofywjvzr]{grid-template-columns:1fr}.explorer-actions[b-l4ofywjvzr]{width:100%}.explorer-actions a[b-l4ofywjvzr]{flex:1;text-align:center}}
/* /Components/Pages/EngineeringPages/ExtractionReview.razor.rz.scp.css */
.review-page[b-98y1jp1jhv]{padding:28px;display:grid;gap:18px}.review-page header span[b-98y1jp1jhv]{font-size:.75rem;font-weight:800;letter-spacing:.12em;color:#64748b}.review-page header h1[b-98y1jp1jhv]{margin:5px 0}.review-page header p[b-98y1jp1jhv]{margin:0;color:#64748b}.review-metrics[b-98y1jp1jhv]{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.review-metrics div[b-98y1jp1jhv],.review-card[b-98y1jp1jhv]{background:white;border:1px solid #e2e8f0;border-radius:10px;padding:16px}.review-metrics div[b-98y1jp1jhv]{display:grid}.review-metrics strong[b-98y1jp1jhv]{font-size:1.5rem}.review-metrics span[b-98y1jp1jhv]{color:#64748b}.review-card[b-98y1jp1jhv]{padding:0;overflow:hidden}.review-card h2[b-98y1jp1jhv]{padding:16px;margin:0;border-bottom:1px solid #e2e8f0;font-size:1rem}.table-scroll[b-98y1jp1jhv]{overflow:auto}table[b-98y1jp1jhv]{width:100%;border-collapse:collapse}th[b-98y1jp1jhv],td[b-98y1jp1jhv]{text-align:left;padding:11px;border-bottom:1px solid #edf2f7;white-space:nowrap}th[b-98y1jp1jhv]{font-size:.75rem;color:#64748b}.empty[b-98y1jp1jhv],.review-state[b-98y1jp1jhv]{padding:28px;color:#64748b}

/* Phase 2.3B additive — placeholder extraction modules (non-functional, reserved for Phase 2.4) */
.ext-group[b-98y1jp1jhv]{margin-top:var(--sp-4)}
.ext-group:first-of-type[b-98y1jp1jhv]{margin-top:var(--sp-2)}
.ext-group__label[b-98y1jp1jhv]{font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-700);margin-bottom:.45rem}
.ext-group__grid[b-98y1jp1jhv]{display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.6rem}
.ext-module[b-98y1jp1jhv]{border:1px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-2);padding:.7rem .8rem}
.ext-module__name[b-98y1jp1jhv]{font-weight:650;color:var(--text-muted);font-size:.85rem;margin-bottom:.4rem}
.ext-module__stats[b-98y1jp1jhv]{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:.2rem .7rem}
.ext-module__stats>div[b-98y1jp1jhv]{display:flex;justify-content:space-between;gap:.4rem;font-size:.68rem;min-width:0}
.ext-module__stats dt[b-98y1jp1jhv]{color:var(--text-subtle);margin:0}
.ext-module__stats dd[b-98y1jp1jhv]{margin:0;color:var(--text-muted);text-align:right}
.ext-module__btn[b-98y1jp1jhv]{width:100%;margin-top:.55rem;min-height:32px;font-size:.72rem}

/* CR-03 — Engineering Reference Resolution */
.ref-summary[b-98y1jp1jhv] { font-size:.76rem; color:var(--text-muted); margin:.3rem 0 .5rem; }
.ref-card[b-98y1jp1jhv] { border:1px solid var(--border); border-radius:var(--radius); padding:.5rem .6rem; margin-bottom:.5rem; background:var(--surface); }
.ref-head[b-98y1jp1jhv] { display:flex; align-items:center; gap:.4rem; flex-wrap:wrap; }
.ref-head strong[b-98y1jp1jhv] { font-size:.95rem; }
.ref-ctx[b-98y1jp1jhv] { color:var(--text-muted); font-size:.74rem; }
.ref-suggestions[b-98y1jp1jhv] { display:grid; grid-template-columns:repeat(auto-fill, minmax(15rem,1fr)); gap:.4rem; margin:.45rem 0; }
.ref-sug[b-98y1jp1jhv] { border:1px solid var(--border); border-radius:6px; padding:.35rem .45rem; background:var(--surface-2); display:flex; flex-direction:column; gap:.2rem; }
.ref-sug-h[b-98y1jp1jhv] { display:flex; justify-content:space-between; gap:.4rem; align-items:baseline; }
.ref-src[b-98y1jp1jhv] { color:var(--text-muted); font-size:.68rem; white-space:nowrap; }
.ref-reason[b-98y1jp1jhv] { font-size:.72rem; color:var(--text-muted); }
.ref-custom[b-98y1jp1jhv] { display:flex; align-items:center; gap:.35rem; flex-wrap:wrap; padding-top:.4rem; border-top:1px dashed var(--border); }
.ref-custom-lbl[b-98y1jp1jhv] { font-size:.72rem; color:var(--text-muted); }
.ref-custom input[b-98y1jp1jhv] { padding:.25rem .5rem; border:1px solid var(--border-strong); border-radius:6px; font-size:.76rem; min-width:8rem; }

.ref-badge[b-98y1jp1jhv] { display:inline-flex; min-width:1.3rem; height:1.3rem; align-items:center; justify-content:center; padding:0 .35rem; border-radius:999px; background:var(--warning); color:#fff; font-size:.72rem; font-weight:700; vertical-align:middle; }
.ref-ok[b-98y1jp1jhv] { display:flex; align-items:center; gap:.6rem; padding:.6rem .7rem; border:1px solid #a7e3c8; background:#e4f7ee; border-radius:var(--radius); font-size:.82rem; color:#1f2b3a; }
.ref-ok-check[b-98y1jp1jhv] { display:inline-flex; width:1.5rem; height:1.5rem; align-items:center; justify-content:center; border-radius:50%; background:#2e7d32; color:#fff; font-weight:800; }

.ext-history-link[b-98y1jp1jhv] { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
/* /Components/Pages/EngineeringPages/HeatTraceReview.razor.rz.scp.css */
.ht-item[b-vae02zrtbu] { padding: .7rem .8rem; }
.ht-h[b-vae02zrtbu] { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; margin-bottom:.5rem; }
.ht-h strong[b-vae02zrtbu] { font-size:.95rem; }
.ht-conf[b-vae02zrtbu] { margin-left:auto; font-size:.8rem; color:#7C3AED; font-weight:700; }
.ht-grid[b-vae02zrtbu] { display:grid; grid-template-columns:repeat(auto-fit, minmax(14rem, 1fr)); gap:.3rem .8rem; }
.ht-grid > div[b-vae02zrtbu] { display:flex; flex-direction:column; }
.ht-k[b-vae02zrtbu] { font-size:.62rem; text-transform:uppercase; letter-spacing:.03em; color:var(--text-muted); }
.ht-v[b-vae02zrtbu] { font-size:.8rem; color:var(--text); }
.ht-reason[b-vae02zrtbu] { margin:.5rem 0; font-size:.76rem; color:var(--text-muted); }
.ht-actions[b-vae02zrtbu] { display:flex; gap:.35rem; flex-wrap:wrap; padding-top:.5rem; border-top:1px solid var(--border); }
.ht-valid[b-vae02zrtbu] { display:flex; flex-direction:column; gap:.15rem; margin:.4rem 0; }
.ht-vf[b-vae02zrtbu] { font-size:.72rem; padding:.1rem .4rem; border-radius:4px; align-self:flex-start; }
.ht-sev-info[b-vae02zrtbu] { background:rgba(46,125,50,.10); color:#2e7d32; }
.ht-sev-warn[b-vae02zrtbu] { background:rgba(176,137,0,.14); color:#8a6d00; }
.ht-sev-review[b-vae02zrtbu] { background:rgba(139,92,246,.10); color:#7C3AED; }
.ht-sev-block[b-vae02zrtbu] { background:rgba(176,0,32,.10); color:#b00020; }
/* /Components/Pages/EngineeringPages/PackageReview.razor.rz.scp.css */
.ht-item[b-u9qw0cjt3z] { padding: .7rem .8rem; }
.ht-h[b-u9qw0cjt3z] { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; margin-bottom:.5rem; }
.ht-h strong[b-u9qw0cjt3z] { font-size:.95rem; }
.ht-conf[b-u9qw0cjt3z] { margin-left:auto; font-size:.8rem; color:#7C3AED; font-weight:700; }
.ht-grid[b-u9qw0cjt3z] { display:grid; grid-template-columns:repeat(auto-fit, minmax(14rem, 1fr)); gap:.3rem .8rem; }
.ht-grid > div[b-u9qw0cjt3z] { display:flex; flex-direction:column; }
.ht-k[b-u9qw0cjt3z] { font-size:.62rem; text-transform:uppercase; letter-spacing:.03em; color:var(--text-muted); }
.ht-v[b-u9qw0cjt3z] { font-size:.8rem; color:var(--text); }
.ht-reason[b-u9qw0cjt3z] { margin:.5rem 0; font-size:.76rem; color:var(--text-muted); }
.ht-actions[b-u9qw0cjt3z] { display:flex; gap:.35rem; flex-wrap:wrap; padding-top:.5rem; border-top:1px solid var(--border); }
.ht-valid[b-u9qw0cjt3z] { display:flex; flex-direction:column; gap:.15rem; margin:.4rem 0; }
.ht-vf[b-u9qw0cjt3z] { font-size:.72rem; padding:.1rem .4rem; border-radius:4px; align-self:flex-start; }
.ht-sev-info[b-u9qw0cjt3z] { background:rgba(46,125,50,.10); color:#2e7d32; }
.ht-sev-warn[b-u9qw0cjt3z] { background:rgba(176,137,0,.14); color:#8a6d00; }
.ht-sev-review[b-u9qw0cjt3z] { background:rgba(139,92,246,.10); color:#7C3AED; }
.ht-sev-block[b-u9qw0cjt3z] { background:rgba(176,0,32,.10); color:#b00020; }
/* /Components/Pages/EngineeringPages/RepositoriesPage.razor.rz.scp.css */
.rp-flow[b-e5r7uxp4k2] { display:flex; align-items:center; gap:.4rem; flex-wrap:wrap; padding:.6rem .8rem; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); margin-bottom:var(--sp-6); font-size:.74rem; }
.rp-flow-step[b-e5r7uxp4k2] { padding:.15rem .5rem; background:var(--surface-2); border-radius:999px; color:var(--text); white-space:nowrap; }
.rp-flow-arrow[b-e5r7uxp4k2] { color:var(--text-muted); }
.rp-grid[b-e5r7uxp4k2] { display:grid; grid-template-columns:repeat(auto-fit, minmax(20rem, 1fr)); gap:var(--sp-6); }
.rp-repo-h[b-e5r7uxp4k2] { display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; margin-bottom:.3rem; }
.rp-repo-h strong[b-e5r7uxp4k2] { font-size:1rem; }
.rp-purpose[b-e5r7uxp4k2] { font-size:.8rem; color:var(--text); margin:.2rem 0 .5rem; }
.rp-list[b-e5r7uxp4k2] { margin:.1rem 0 .5rem; padding-left:1.1rem; font-size:.76rem; color:var(--text-muted); }
.rp-list--no li[b-e5r7uxp4k2] { color:#b00020; }
/* /Components/Pages/EngineeringPages/RoutingQuantities.razor.rz.scp.css */
.route-page[b-mfc9esesvt]{display:flex;flex-direction:column;gap:1rem}.route-state[b-mfc9esesvt]{padding:2rem;background:#fff;border:1px solid #dce6f2;border-radius:.65rem}.route-header[b-mfc9esesvt]{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.route-header>div>span[b-mfc9esesvt],.selected-route-card>div>span[b-mfc9esesvt]{color:#7C3AED;font-size:.78rem;font-weight:800;letter-spacing:.08em}.route-header h1[b-mfc9esesvt]{margin:.2rem 0;font-size:2.15rem;font-weight:500;color:#1f2b3a}.route-header p[b-mfc9esesvt]{margin:0;color:#5f6b7a}.route-header>a[b-mfc9esesvt],.route-empty a[b-mfc9esesvt]{padding:.65rem .85rem;border:1px solid #c3d3e6;border-radius:.4rem;text-decoration:none;color:#1f2b3a;background:#fff;font-weight:700}.route-intro[b-mfc9esesvt],.route-selector[b-mfc9esesvt],.selected-route-card[b-mfc9esesvt],.route-panel[b-mfc9esesvt],.route-empty[b-mfc9esesvt]{background:#fff;border:1px solid #dce6f2;border-radius:.65rem;padding:1rem}.route-intro p[b-mfc9esesvt]{margin:.3rem 0 0;color:#5f6b7a;line-height:1.5}.route-selector label[b-mfc9esesvt],.add-panel label[b-mfc9esesvt]{display:flex;flex-direction:column;gap:.3rem}.route-selector span[b-mfc9esesvt],.add-panel label>span[b-mfc9esesvt]{font-size:.75rem;font-weight:800;color:#5f6b7a;text-transform:uppercase;letter-spacing:.04em}.route-selector select[b-mfc9esesvt],.add-panel select[b-mfc9esesvt],.add-panel input[b-mfc9esesvt],.add-panel textarea[b-mfc9esesvt]{width:100%;padding:.7rem;border:1px solid #c3d3e6;border-radius:.4rem;background:#fff}.selected-route-card[b-mfc9esesvt]{display:flex;justify-content:space-between;gap:1rem;align-items:center}.selected-route-card h2[b-mfc9esesvt]{margin:.2rem 0;color:#1f2b3a}.selected-route-card p[b-mfc9esesvt]{margin:0;color:#5f6b7a}.endpoint-block[b-mfc9esesvt]{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:.75rem}.endpoint-block div[b-mfc9esesvt]{padding:.7rem;background:#f5f9fe;border-radius:.4rem}.endpoint-block span[b-mfc9esesvt]{display:block;font-size:.72rem;color:#5f6b7a;text-transform:uppercase}.endpoint-block strong[b-mfc9esesvt]{display:block;margin-top:.2rem;color:#1f2b3a}.calculation-grid[b-mfc9esesvt]{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.65rem}.calculation-grid article[b-mfc9esesvt]{padding:.9rem;background:#fff;border:1px solid #dce6f2;border-radius:.55rem}.calculation-grid span[b-mfc9esesvt]{display:block;color:#5f6b7a;font-size:.76rem}.calculation-grid strong[b-mfc9esesvt]{display:block;margin-top:.25rem;color:#1f2b3a;font-size:1.25rem}.calculation-total[b-mfc9esesvt]{background:#5B21B6!important;border-color:#5B21B6!important}.calculation-total span[b-mfc9esesvt],.calculation-total strong[b-mfc9esesvt]{color:#fff!important}.route-workspace-grid[b-mfc9esesvt]{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,.75fr);gap:1rem}.panel-title h2[b-mfc9esesvt]{margin:0;color:#1f2b3a;font-size:1.15rem}.panel-title p[b-mfc9esesvt]{margin:.25rem 0 .85rem;color:#5f6b7a}.segment-table-wrap[b-mfc9esesvt]{overflow-x:auto}.segment-table-wrap table[b-mfc9esesvt]{width:100%;border-collapse:collapse}.segment-table-wrap th[b-mfc9esesvt],.segment-table-wrap td[b-mfc9esesvt]{padding:.65rem;border-bottom:1px solid #dce6f2;text-align:left;white-space:nowrap}.segment-table-wrap th[b-mfc9esesvt]{font-size:.72rem;color:#5f6b7a;text-transform:uppercase}.delete-button[b-mfc9esesvt]{border:0;background:transparent;color:#a04444;font-weight:700;cursor:pointer}.segment-empty[b-mfc9esesvt],.route-empty[b-mfc9esesvt]{text-align:center;color:#5f6b7a;padding:2rem}.route-empty h2[b-mfc9esesvt]{color:#1f2b3a}.add-panel[b-mfc9esesvt]{display:flex;flex-direction:column;gap:.75rem}.add-panel small[b-mfc9esesvt]{color:#5f6b7a}.add-panel textarea[b-mfc9esesvt]{min-height:80px}.add-button[b-mfc9esesvt],.save-length-button[b-mfc9esesvt]{padding:.75rem;border-radius:.4rem;font-weight:800;cursor:pointer}.add-button[b-mfc9esesvt]{border:0;background:var(--brand-600);color:#fff}.save-length-button[b-mfc9esesvt]{border:1px solid var(--brand-600);background:#fff;color:#7C3AED}.route-error[b-mfc9esesvt]{padding:.65rem;background:#fff0f0;border:1px solid #e1bcbc;border-radius:.4rem;color:#8f3434}@media(max-width:1100px){.calculation-grid[b-mfc9esesvt]{grid-template-columns:repeat(3,1fr)}.route-workspace-grid[b-mfc9esesvt]{grid-template-columns:1fr}}@media(max-width:720px){.route-header[b-mfc9esesvt],.selected-route-card[b-mfc9esesvt]{flex-direction:column;align-items:stretch}.endpoint-block[b-mfc9esesvt],.calculation-grid[b-mfc9esesvt]{grid-template-columns:1fr}}
/* /Components/Pages/Estimating.razor.rz.scp.css */
/* Estimating — styling now provided by the shared ProjectCTRL Design System (design-system.css). */
/* /Components/Pages/Home.razor.rz.scp.css */
/* Dashboard — flagship reference implementation of the ProjectCTRL Design System.
   Layout helpers only; visual tokens come from design-system.css. */

.dash-grid[b-ex1byt6idy] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--sp-6, 24px);
}
.dash-span[b-ex1byt6idy] { grid-column: 1 / -1; }
@media (max-width: 1100px) { .dash-grid[b-ex1byt6idy] { grid-template-columns: 1fr; } }

/* Portfolio project cards */
.dash-project-grid[b-ex1byt6idy] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr));
    gap: var(--sp-4, 16px);
}
.dash-project-card[b-ex1byt6idy] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    padding: var(--sp-4, 16px);
    border: 1px solid var(--border, #dce6f2);
    border-radius: var(--radius, 10px);
    background: var(--surface, #fff);
    text-align: left;
    cursor: pointer;
    transition: border-color var(--transition, .15s ease), box-shadow var(--transition, .15s ease);
}
.dash-project-card:hover[b-ex1byt6idy] { border-color: var(--brand-300, #A78BFA); box-shadow: var(--shadow-sm); }
.dash-project-card strong[b-ex1byt6idy] { color: var(--brand-700, #6D28D9); font-size: 0.95rem; }
.dash-project-card > span[b-ex1byt6idy] { color: var(--text-muted, #5f6b7a); font-size: var(--fs-body-sm, .875rem); }

/* Progress bars */
.dash-progress[b-ex1byt6idy] { margin-top: var(--sp-3, 12px); }
.dash-progress__head[b-ex1byt6idy] { display: flex; justify-content: space-between; align-items: baseline; font-size: var(--fs-body-sm, .875rem); color: var(--text-muted, #5f6b7a); }
.dash-progress__head strong[b-ex1byt6idy] { color: var(--text, #0d1b2a); }
.dash-progress__sub[b-ex1byt6idy] { margin-top: 6px; font-size: var(--fs-table, .8125rem); color: var(--text-subtle, #8a97a6); }
.dash-bar[b-ex1byt6idy] { margin-top: 8px; height: 8px; border-radius: 999px; background: var(--neutral-bg, #eaf0f7); overflow: hidden; }
.dash-bar__fill[b-ex1byt6idy] { height: 100%; border-radius: 999px; background: var(--brand-600, #7C3AED); }

/* AI recommendations */
.dash-rec-list[b-ex1byt6idy] { display: flex; flex-direction: column; gap: var(--sp-2, 8px); }
.dash-rec[b-ex1byt6idy] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: var(--sp-4, 16px);
    padding: var(--sp-4, 16px);
    border: 1px solid var(--border, #dce6f2);
    border-radius: var(--radius, 10px);
    background: var(--surface, #fff);
    text-decoration: none;
    transition: border-color var(--transition, .15s ease), background var(--transition, .15s ease);
}
.dash-rec:hover[b-ex1byt6idy] { border-color: var(--brand-300, #A78BFA); background: var(--surface-2, #f5f9fe); }
.dash-rec__body[b-ex1byt6idy] { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.dash-rec__body strong[b-ex1byt6idy] { color: var(--text, #0d1b2a); font-size: var(--fs-body, .9375rem); }
.dash-rec__body span[b-ex1byt6idy] { color: var(--text-muted, #5f6b7a); font-size: var(--fs-body-sm, .875rem); }
.dash-rec__go[b-ex1byt6idy] { color: var(--brand-600, #7C3AED); font-size: 1.15rem; font-weight: 700; }

/* Recent activity timeline */
.dash-timeline[b-ex1byt6idy] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.dash-timeline li[b-ex1byt6idy] { display: grid; grid-template-columns: auto 1fr; gap: var(--sp-3, 12px); padding: var(--sp-3, 12px) 0; border-bottom: 1px solid var(--border, #dce6f2); }
.dash-timeline li:last-child[b-ex1byt6idy] { border-bottom: 0; }
.dash-timeline__dot[b-ex1byt6idy] { width: 10px; height: 10px; margin-top: 5px; border-radius: 50%; background: var(--neutral, #5f6b7a); }
.dash-timeline__dot.is-success[b-ex1byt6idy] { background: var(--success, #1a9c62); }
.dash-timeline__dot.is-error[b-ex1byt6idy] { background: var(--error, #d13a3a); }
.dash-timeline__dot.is-info[b-ex1byt6idy] { background: var(--info, #7C3AED); }
.dash-timeline__body > div:first-child[b-ex1byt6idy] { display: flex; align-items: center; gap: 8px; color: var(--text, #0d1b2a); font-size: var(--fs-body-sm, .875rem); }
.dash-timeline__meta[b-ex1byt6idy] { margin-top: 3px; font-size: var(--fs-table, .8125rem); color: var(--text-subtle, #8a97a6); }
/* /Components/Pages/Hubs/PlannedFeature.razor.rz.scp.css */
/* Coming Soon placeholder — approved dashed treatment, consistent with Phase 2.3B. */
.planned-card[b-xn54tmqqor] { margin-top: var(--sp-4); border-style: dashed; background: var(--surface-2); box-shadow: none; }
/* /Components/Pages/KnowledgePages/EngineeringRules.razor.rz.scp.css */
.er-pack[b-wqidjw8ec4] { border:1px solid var(--border); border-radius:6px; margin-bottom:.4rem; overflow:hidden; }
.er-pack-h[b-wqidjw8ec4] { width:100%; display:flex; align-items:center; gap:.5rem; padding:.45rem .6rem; background:var(--surface); border:none; cursor:pointer; text-align:left; }
.er-pack-h:hover[b-wqidjw8ec4] { background:var(--surface-2); }
.er-pack-h strong[b-wqidjw8ec4] { font-size:.85rem; }
.er-caret[b-wqidjw8ec4] { color:var(--text-muted); width:1rem; }
.er-pack-count[b-wqidjw8ec4] { margin-left:auto; font-size:.72rem; color:var(--text-muted); }
.er-pack-body[b-wqidjw8ec4] { padding:.5rem .7rem .6rem; border-top:1px solid var(--border); background:var(--surface-2); }
.er-pack-actions[b-wqidjw8ec4] { display:flex; align-items:center; gap:.35rem; flex-wrap:wrap; margin-top:.5rem; padding-top:.5rem; border-top:1px dashed var(--border); }
/* /Components/Pages/KnowledgePages/RuleTesting.razor.rz.scp.css */
.rt-input[b-9jsg159dsc] { width:100%; font-family:var(--font-mono, ui-monospace, monospace); font-size:.78rem; padding:.5rem .6rem; border:1px solid var(--border-strong, var(--border)); border-radius:6px; resize:vertical; background:var(--surface); color:var(--text); }
/* /Components/Pages/Planning.razor.rz.scp.css */
/* Work Packages — page composition on top of the shared Design System (design-system.css).
   Master/detail, editor, and table classes come from the design system; only WP-specific bits here. */

.wp-workflow[b-ggb6haj4ks] { display: flex; align-items: center; gap: var(--sp-2); flex-wrap: wrap; }
.wp-owner[b-ggb6haj4ks] { color: var(--text-muted); font-size: var(--fs-table); }

.wp-li-top[b-ggb6haj4ks] { display: flex; justify-content: space-between; align-items: center; gap: var(--sp-2); }

.wp-tabbody[b-ggb6haj4ks] { padding: var(--sp-4); }
.wp-note[b-ggb6haj4ks] { color: var(--text-muted); font-size: var(--fs-table); margin: 0 0 var(--sp-3); }
.wp-scope[b-ggb6haj4ks] { color: var(--text); font-size: var(--fs-table); margin: var(--sp-3) 0 0; }
.wp-warn[b-ggb6haj4ks] { color: var(--warning); font-weight: 600; }

.wp-overview[b-ggb6haj4ks] { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--sp-4); align-items: start; }
@media (max-width: 64rem) { .wp-overview[b-ggb6haj4ks] { grid-template-columns: 1fr; } }

.wp-progresshead[b-ggb6haj4ks] { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 4px; }
.wp-progresshead span[b-ggb6haj4ks] { color: var(--text-muted); font-size: var(--fs-table); }
.wp-bar[b-ggb6haj4ks] { height: 8px; border-radius: 999px; background: var(--surface-2); overflow: hidden; }
.wp-bar__fill[b-ggb6haj4ks] { height: 100%; background: var(--brand-500); border-radius: 999px; }

.wp-grid-cards[b-ggb6haj4ks] { display: grid; grid-template-columns: repeat(auto-fill, minmax(19rem, 1fr)); gap: var(--sp-4); }

.wp-activity[b-ggb6haj4ks] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.wp-activity li[b-ggb6haj4ks] { display: grid; grid-template-columns: auto 1fr; gap: var(--sp-3); align-items: start; padding: var(--sp-2) 0; border-bottom: 1px solid var(--border); }
.wp-activity li:last-child[b-ggb6haj4ks] { border-bottom: 0; }
.wp-activity__icon[b-ggb6haj4ks] { font-size: 1rem; line-height: 1.4; }
.wp-activity__body[b-ggb6haj4ks] { display: flex; flex-direction: column; min-width: 0; }
.wp-activity__body strong[b-ggb6haj4ks] { color: var(--text); font-size: var(--fs-table); }
.wp-activity__body span[b-ggb6haj4ks] { color: var(--text-muted); font-size: .72rem; }
/* /Components/Pages/Portfolio/ArchivedProjects.razor.rz.scp.css */
.archive-page[b-tg3aakmjye]{max-width:1200px;margin:0 auto}.archive-page header span[b-tg3aakmjye]{color:var(--brand-600);font-size:.68rem;font-weight:800;letter-spacing:.1em}.archive-page header h1[b-tg3aakmjye]{margin:.2rem 0 .35rem;color:#1f2b3a}.archive-page header p[b-tg3aakmjye]{margin:0 0 1rem;color:#5f6b7a}.state-card[b-tg3aakmjye],.archive-list article[b-tg3aakmjye]{border:1px solid #dce6f2;border-radius:8px;background:#fff}.state-card[b-tg3aakmjye]{padding:2rem}.archive-list[b-tg3aakmjye]{display:grid;gap:.75rem}.archive-list article[b-tg3aakmjye]{display:flex;justify-content:space-between;align-items:center;padding:1rem}.archive-list strong[b-tg3aakmjye]{color:#7C3AED;font-size:.75rem}.archive-list h2[b-tg3aakmjye]{margin:.2rem 0;font-size:1rem;color:#1f2b3a}.archive-list p[b-tg3aakmjye]{margin:0;color:#5f6b7a;font-size:.78rem}.actions[b-tg3aakmjye]{display:flex;gap:.5rem}.actions a[b-tg3aakmjye],.actions button[b-tg3aakmjye]{padding:.45rem .7rem;border:1px solid #c3d3e6;border-radius:5px;background:#fff;color:#7C3AED;text-decoration:none;font-size:.75rem;font-weight:700;cursor:pointer}.message[b-tg3aakmjye]{margin-bottom:.8rem;padding:.75rem;border-left:4px solid var(--brand-600);background:#F4F6F9;color:#6D28D9}
/* /Components/Pages/Portfolio/CreateProject.razor.rz.scp.css */
/* /Components/Pages/Portfolio/PortfolioDashboard.razor.rz.scp.css */
/* Portfolio Dashboard — page composition only.
   Uses design-system tokens (var(--*)) and ds- components; does not redefine any ds- primitive.
   Mirrors Project Home (ds-page + ds-card rhythm, ds-badge semantics, .ds-progress bars). */

/* ---- Status-status coloring, mapped to ds-badge semantic tokens ---- */
.status-dot[b-ox8rfhilah] { width: 8px; height: 8px; border-radius: 50%; background: var(--neutral); flex: none; }
.status-dot.status-planning[b-ox8rfhilah] { background: var(--warning); }
.status-dot.status-active[b-ox8rfhilah],
.status-dot.status-construction[b-ox8rfhilah],
.status-dot.status-commissioning[b-ox8rfhilah] { background: var(--info); }
.status-dot.status-complete[b-ox8rfhilah] { background: var(--success); }
.status-dot.status-onhold[b-ox8rfhilah] { background: var(--warning); }

/* Project status badge modifiers (CssStatus-driven), consistent with ds-badge semantics */
.ds-badge--planning[b-ox8rfhilah] { background: var(--warning-bg); color: var(--warning); }
.ds-badge--active[b-ox8rfhilah],
.ds-badge--construction[b-ox8rfhilah],
.ds-badge--commissioning[b-ox8rfhilah] { background: var(--info-bg); color: var(--info); }
.ds-badge--complete[b-ox8rfhilah] { background: var(--success-bg); color: var(--success); }
.ds-badge--onhold[b-ox8rfhilah] { background: var(--warning-bg); color: var(--warning); }

/* ---- Portfolio status mix ---- */
.pf-status[b-ox8rfhilah] { display: grid; grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr)); gap: var(--sp-3); }
.pf-status__item[b-ox8rfhilah] { display: flex; align-items: center; gap: .6rem; padding: var(--sp-2) var(--sp-3); border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); }
.pf-status__item strong[b-ox8rfhilah] { font-size: 1rem; color: var(--text); }
.pf-status__item small[b-ox8rfhilah] { display: block; font-size: var(--fs-table); color: var(--text-muted); }
.pf-muted[b-ox8rfhilah] { margin: 0; color: var(--text-muted); font-size: var(--fs-body-sm); }

/* ---- Two-column: projects + side stack ---- */
.pf-grid[b-ox8rfhilah] { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(300px, .8fr); gap: var(--sp-4); align-items: start; }
.pf-side[b-ox8rfhilah] { display: grid; gap: var(--sp-4); align-content: start; }
.pf-grid > .ds-card[b-ox8rfhilah], .pf-side > .ds-card[b-ox8rfhilah] { margin-bottom: 0; }
@media (max-width: 60rem) { .pf-grid[b-ox8rfhilah] { grid-template-columns: 1fr; } }

.pf-card-links[b-ox8rfhilah] { display: flex; align-items: center; gap: var(--sp-4); flex-shrink: 0; }

/* ---- Project selection rows (whole-row links) ---- */
.pf-rows[b-ox8rfhilah] { display: flex; flex-direction: column; }
.pf-row[b-ox8rfhilah] {
    display: grid; grid-template-columns: minmax(220px, 1fr) auto minmax(150px, 240px);
    align-items: center; gap: var(--sp-4); padding: var(--sp-3) 0;
    border-top: 1px solid var(--border); text-decoration: none; color: inherit;
    transition: background .12s;
}
.pf-row:hover[b-ox8rfhilah] { background: var(--surface-2); }
.pf-row:hover .pf-id__name[b-ox8rfhilah] { color: var(--brand-700); }
.pf-id[b-ox8rfhilah] { display: flex; flex-direction: column; min-width: 0; }
.pf-id__num[b-ox8rfhilah] { font-size: var(--fs-table); color: var(--brand-700); font-weight: 700; }
.pf-id__name[b-ox8rfhilah] { font-size: var(--fs-body); color: var(--text); font-weight: 650; }
.pf-id__meta[b-ox8rfhilah] { font-size: var(--fs-table); color: var(--text-muted); }
.pf-id__loc[b-ox8rfhilah] { color: var(--text-subtle); }
.pf-row .ds-badge[b-ox8rfhilah] { justify-self: start; }
.pf-progress[b-ox8rfhilah] { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: var(--sp-3); }
.pf-progress .ds-progress[b-ox8rfhilah] { margin-top: 0; min-width: 0; }
.pf-progress b[b-ox8rfhilah] { font-size: var(--fs-table); color: var(--text-muted); text-align: right; min-width: 2.6rem; }

/* ---- Portfolio margin (commercial) ---- */
.pf-commercial[b-ox8rfhilah] { display: flex; flex-direction: column; }
.pf-comm-row[b-ox8rfhilah] { display: flex; justify-content: space-between; align-items: center; padding: var(--sp-3) 0; border-top: 1px solid var(--border); font-size: var(--fs-body-sm); color: var(--text-muted); }
.pf-comm-row:first-child[b-ox8rfhilah] { border-top: 0; }
.pf-comm-row strong[b-ox8rfhilah] { color: var(--text); }
.pf-comm-row--total strong[b-ox8rfhilah] { color: var(--brand-700); }

/* ---- Recently updated ---- */
.pf-recent[b-ox8rfhilah] { display: flex; flex-direction: column; }
.pf-recent__row[b-ox8rfhilah] { display: flex; justify-content: space-between; align-items: center; gap: var(--sp-3); padding: var(--sp-2) 0; border-top: 1px solid var(--border); text-decoration: none; color: inherit; }
.pf-recent__row:first-child[b-ox8rfhilah] { border-top: 0; }
.pf-recent__row:hover strong[b-ox8rfhilah] { color: var(--brand-700); }
.pf-recent__row div[b-ox8rfhilah] { display: flex; flex-direction: column; min-width: 0; }
.pf-recent__row strong[b-ox8rfhilah] { font-size: var(--fs-table); color: var(--text); }
.pf-recent__row span[b-ox8rfhilah] { font-size: var(--fs-table); color: var(--text-muted); }
.pf-recent__row small[b-ox8rfhilah] { font-size: var(--fs-table); color: var(--text-muted); white-space: nowrap; }

/* ---- Responsive ---- */
@media (max-width: 53rem) {
    .pf-row[b-ox8rfhilah] { grid-template-columns: 1fr auto; }
    .pf-progress[b-ox8rfhilah] { grid-column: 1 / -1; }
}
/* /Components/Pages/Portfolio/ProjectRegister.razor.rz.scp.css */
.register-page[b-0dq7fducn0]{max-width:1550px;margin:0 auto}.page-header[b-0dq7fducn0]{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:1rem}.page-eyebrow[b-0dq7fducn0]{color:var(--brand-600);font-size:.68rem;font-weight:800;letter-spacing:.1em}.page-header h1[b-0dq7fducn0]{margin:.2rem 0 .35rem;color:#1f2b3a;font-size:1.85rem}.page-header p[b-0dq7fducn0]{margin:0;color:#5f6b7a}.primary-action[b-0dq7fducn0]{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:.6rem .95rem;border-radius:6px;background:var(--brand-600);color:#fff!important;font-size:.8rem;font-weight:700;text-decoration:none}.summary-strip[b-0dq7fducn0]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:1rem;border:1px solid #dce6f2;border-radius:8px;background:#fff}.summary-strip article[b-0dq7fducn0]{display:flex;flex-direction:column;padding:.85rem 1rem;border-right:1px solid #dce6f2}.summary-strip article:last-child[b-0dq7fducn0]{border-right:0}.summary-strip strong[b-0dq7fducn0]{font-size:1.1rem;color:#1f2b3a}.summary-strip span[b-0dq7fducn0]{font-size:.68rem;color:#5f6b7a;text-transform:uppercase;letter-spacing:.04em}.register-toolbar[b-0dq7fducn0]{display:grid;grid-template-columns:minmax(280px,1fr) 190px 210px;gap:1rem;margin-bottom:1rem;padding:1rem;border:1px solid #dce6f2;border-radius:8px;background:#fff}.search-field[b-0dq7fducn0],.filter-field[b-0dq7fducn0]{display:flex;flex-direction:column;gap:.35rem}.search-field label[b-0dq7fducn0],.filter-field label[b-0dq7fducn0]{color:#5f6b7a;font-size:.68rem;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.search-field input[b-0dq7fducn0],.filter-field select[b-0dq7fducn0]{min-height:42px;padding:0 .75rem;border:1px solid #dce6f2;border-radius:6px;background:#fff;color:#1f2b3a;font-size:.8rem}.search-field input:focus[b-0dq7fducn0],.filter-field select:focus[b-0dq7fducn0]{border-color:#A78BFA;outline:none;box-shadow:0 0 0 3px rgba(139,92,246,.15)}.table-card[b-0dq7fducn0],.state-card[b-0dq7fducn0]{border:1px solid #dce6f2;border-radius:8px;background:#fff;box-shadow:0 2px 8px rgba(11,20,38, .04)}.table-scroll[b-0dq7fducn0]{overflow-x:auto}.project-table[b-0dq7fducn0]{width:100%;border-collapse:collapse}.project-table th[b-0dq7fducn0]{padding:.78rem .75rem;border-bottom:1px solid #dce6f2;background:#f5f9fe;color:#5f6b7a;font-size:.64rem;font-weight:800;letter-spacing:.05em;text-align:left;text-transform:uppercase;white-space:nowrap}.project-table td[b-0dq7fducn0]{padding:.78rem .75rem;border-bottom:1px solid #F4F6F9;color:#5f6b7a;font-size:.75rem;vertical-align:middle}.project-table tbody tr:last-child td[b-0dq7fducn0]{border-bottom:0}.project-table tbody tr:hover[b-0dq7fducn0]{background:#F4F6F9}.current-project-row[b-0dq7fducn0]{background:rgba(139,92,246,.08)}.project-name-button[b-0dq7fducn0]{display:flex;flex-direction:column;gap:.12rem;padding:0;border:0;background:transparent;cursor:pointer;text-align:left}.project-name-button strong[b-0dq7fducn0]{color:#6D28D9;font-size:.75rem}.project-name-button span[b-0dq7fducn0]{color:#1f2b3a;font-size:.8rem;font-weight:650}.stacked-cell[b-0dq7fducn0],.date-cell[b-0dq7fducn0]{display:flex;flex-direction:column;gap:.08rem}.stacked-cell small[b-0dq7fducn0],.date-cell small[b-0dq7fducn0]{color:#5f6b7a;font-size:.62rem}.status-badge[b-0dq7fducn0]{display:inline-flex;padding:.28rem .5rem;border-radius:999px;background:#F4F6F9;color:#5f6b7a;font-size:.64rem;font-weight:750;white-space:nowrap}.status-planning[b-0dq7fducn0]{background:#fdf1dd;color:#b7791f}.status-active[b-0dq7fducn0],.status-construction[b-0dq7fducn0]{background:#F4F6F9;color:#6D28D9}.status-onhold[b-0dq7fducn0]{background:#fdf1dd;color:#b7791f}.status-commissioning[b-0dq7fducn0]{background:#eef1ff;color:#3c7278}.status-complete[b-0dq7fducn0]{background:#F4F6F9;color:#6D28D9}.progress-cell[b-0dq7fducn0]{min-width:135px;display:grid;grid-template-columns:minmax(75px,1fr) 36px;align-items:center;gap:.45rem}.progress-cell progress[b-0dq7fducn0]{width:100%;height:8px;accent-color:var(--brand-600)}.progress-cell span[b-0dq7fducn0]{font-size:.67rem;text-align:right}.actions-cell[b-0dq7fducn0]{display:flex;gap:.35rem;white-space:nowrap}.open-button[b-0dq7fducn0],.menu-button[b-0dq7fducn0]{padding:.38rem .55rem;border:1px solid #dce6f2;border-radius:5px;background:#fff;color:#6D28D9;font-size:.68rem;font-weight:700;cursor:pointer}.open-button:hover[b-0dq7fducn0],.menu-button:hover[b-0dq7fducn0]{border-color:#7C3AED;background:#F4F6F9}.menu-button.danger[b-0dq7fducn0]{color:#8b4e3e}.message-banner[b-0dq7fducn0]{margin-bottom:.8rem;padding:.7rem .85rem;border-left:4px solid var(--brand-600);border-radius:5px;background:#F4F6F9;color:#6D28D9;font-size:.76rem}.state-card[b-0dq7fducn0]{padding:2rem;color:#5f6b7a}.empty-state[b-0dq7fducn0]{text-align:center}@media(max-width:1000px){.register-toolbar[b-0dq7fducn0]{grid-template-columns:1fr 1fr}.search-field[b-0dq7fducn0]{grid-column:1/-1}.summary-strip[b-0dq7fducn0]{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.page-header[b-0dq7fducn0]{flex-direction:column}.register-toolbar[b-0dq7fducn0],.summary-strip[b-0dq7fducn0]{grid-template-columns:1fr}.summary-strip article[b-0dq7fducn0]{border-right:0;border-bottom:1px solid #dce6f2}.actions-cell[b-0dq7fducn0]{flex-wrap:wrap}}
/* /Components/Pages/Portfolio/ProjectTemplates.razor.rz.scp.css */
.templates-page[b-w3xaebxtra]{max-width:1120px;margin:0 auto}.page-heading[b-w3xaebxtra]{margin-bottom:1.2rem}.page-heading>span[b-w3xaebxtra]{color:var(--brand-600);font-size:.68rem;font-weight:800;letter-spacing:.1em}.page-heading h1[b-w3xaebxtra]{margin:.2rem 0 .35rem;color:#1f2b3a}.page-heading p[b-w3xaebxtra]{max-width:760px;margin:0;color:#5f6b7a}.template-grid[b-w3xaebxtra]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.template-card[b-w3xaebxtra]{position:relative;display:flex;flex-direction:column;min-height:470px;padding:1.25rem;border:1px solid #dce6f2;border-radius:10px;background:#fff;box-shadow:0 2px 9px rgba(11,20,38,.04)}.template-card.featured[b-w3xaebxtra]{border-color:#A78BFA}.template-icon[b-w3xaebxtra]{width:48px;height:48px;display:grid;place-items:center;margin-bottom:.8rem;border-radius:9px;background:#F4F6F9;font-size:1.5rem}.template-heading span[b-w3xaebxtra]{color:#7C3AED;font-size:.62rem;font-weight:800;letter-spacing:.08em}.template-heading h2[b-w3xaebxtra]{margin:.2rem 0 .6rem;color:#1f2b3a;font-size:1.12rem}.template-card>p[b-w3xaebxtra]{margin:0 0 1rem;color:#5f6b7a;font-size:.79rem;line-height:1.5}.template-details[b-w3xaebxtra]{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1.15rem;padding: .9rem;border-radius:7px;background:#f5f9fe}.template-details strong[b-w3xaebxtra]{margin-top:.25rem;color:#5f6b7a;font-size:.67rem;text-transform:uppercase;letter-spacing:.05em}.template-details span[b-w3xaebxtra]{color:#5f6b7a;font-size:.72rem;line-height:1.45}.template-card a[b-w3xaebxtra]{display:inline-flex;align-items:center;justify-content:center;min-height:42px;margin-top:auto;border-radius:6px;background:var(--brand-600);color:#fff!important;font-size:.78rem;font-weight:750;text-decoration:none}.template-card a:hover[b-w3xaebxtra]{background:#6D28D9}.template-note[b-w3xaebxtra]{margin-top:1rem;padding:1rem;border-left:4px solid var(--brand-600);border-radius:7px;background:#F4F6F9}.template-note strong[b-w3xaebxtra]{color:#1f2b3a}.template-note p[b-w3xaebxtra]{margin:.25rem 0 0;color:#5f6b7a;font-size:.76rem}@media(max-width:780px){.template-grid[b-w3xaebxtra]{grid-template-columns:1fr}.template-card[b-w3xaebxtra]{min-height:auto}}
/* /Components/Pages/Procurement.razor.rz.scp.css */
/* Procurement — styling now provided by the shared ProjectCTRL Design System (design-system.css). */
/* /Components/Pages/ProjectIntake.razor.rz.scp.css */
.intake-page[b-bzr82g0rx2]{min-width:0}.intake-hero[b-bzr82g0rx2]{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}.intake-hero h1[b-bzr82g0rx2]{margin:.1rem 0;font-size:2rem}.intake-hero p[b-bzr82g0rx2]{max-width:850px;margin:.25rem 0;color:#5f6b7a}.intake-eyebrow[b-bzr82g0rx2]{color:var(--brand-600);font-size:.7rem;font-weight:800;letter-spacing:.1em}.intake-busy[b-bzr82g0rx2]{display:flex;gap:.5rem;align-items:center;color:#5f6b7a}.current-project-strip[b-bzr82g0rx2]{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.85rem 1rem;border:1px solid #dce6f2;border-left:4px solid var(--brand-600);border-radius:8px;background:#f5f9fe}.current-project-strip div[b-bzr82g0rx2]{display:flex;flex-direction:column}.current-project-strip span[b-bzr82g0rx2]{font-size:.65rem;font-weight:800;text-transform:uppercase;color:#5f6b7a}.current-project-strip small[b-bzr82g0rx2]{color:#5f6b7a}.intake-grid[b-bzr82g0rx2]{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(360px,1.2fr);gap:1rem;margin-top:1rem}.intake-card[b-bzr82g0rx2]{padding:1.2rem;border:1px solid #dce6f2;border-radius:11px;background:#fff;box-shadow:0 2px 8px rgba(11,20,38,.05);min-width:0}.section-title[b-bzr82g0rx2]{display:flex;gap:.75rem;align-items:flex-start}.section-title>span[b-bzr82g0rx2]{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--brand-600);color:white;font-weight:800;flex:0 0 auto}.section-title h2[b-bzr82g0rx2]{margin:0;font-size:1.05rem}.section-title p[b-bzr82g0rx2]{margin:.15rem 0 0;color:#5f6b7a;font-size:.78rem}.section-toolbar[b-bzr82g0rx2]{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.field[b-bzr82g0rx2]{display:flex;flex-direction:column;gap:.3rem;margin-top:.85rem}.field>span[b-bzr82g0rx2]{font-size:.68rem;font-weight:800;color:#5f6b7a;text-transform:uppercase}.field input[b-bzr82g0rx2],.field select[b-bzr82g0rx2]{min-height:42px;padding:.55rem .65rem;border:1px solid #c3d3e6;border-radius:6px;background:#fff}.two-column[b-bzr82g0rx2]{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.upload-mode-tabs[b-bzr82g0rx2]{display:flex;gap:.4rem;margin:.9rem 0}.upload-mode-tabs button[b-bzr82g0rx2]{padding:.55rem .8rem;border:1px solid #c3d3e6;border-radius:7px;background:#fff;font-weight:750;color:#5f6b7a}.upload-mode-tabs button.active[b-bzr82g0rx2]{background:#eef1ff;border-color:var(--brand-600);color:#6D28D9}.drop-zone[b-bzr82g0rx2]{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:190px;padding:1rem;border:2px dashed #c3d3e6;border-radius:10px;background:#f5f9fe;text-align:center;cursor:pointer}.drop-zone:hover[b-bzr82g0rx2],.drop-zone.has-files[b-bzr82g0rx2]{border-color:var(--brand-600);background:#F4F6F9}.drop-zone input[b-bzr82g0rx2]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.drop-zone strong[b-bzr82g0rx2]{margin-top:.5rem}.drop-zone span[b-bzr82g0rx2]{margin-top:.25rem;color:#5f6b7a;font-size:.78rem}.selected-file-list[b-bzr82g0rx2]{max-height:160px;overflow:auto;margin-top:.7rem;border:1px solid #dce6f2;border-radius:7px}.selected-file-list div[b-bzr82g0rx2]{display:flex;justify-content:space-between;gap:1rem;padding:.45rem .6rem;border-top:1px solid #dce6f2;font-size:.75rem}.selected-file-list div:first-child[b-bzr82g0rx2]{border-top:0}.selected-file-list small[b-bzr82g0rx2]{color:#5f6b7a}.readiness-row[b-bzr82g0rx2]{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.8rem}.readiness-row span[b-bzr82g0rx2]{padding:.3rem .55rem;border-radius:999px;background:#f5f9fe;color:#777;font-size:.7rem;font-weight:750}.readiness-row span.ready[b-bzr82g0rx2]{background:#eef1ff;color:#6D28D9}.primary-intake-button[b-bzr82g0rx2]{width:100%;margin-top:.9rem;padding:.75rem;border:0;border-radius:7px;background:var(--brand-600);color:white;font-weight:800}.primary-intake-button:disabled[b-bzr82g0rx2]{background:#c3d3e6;color:#5f6b7a}.warning-list[b-bzr82g0rx2]{margin-top:.8rem;padding:.7rem;border-radius:7px;background:#fff5d9;color:#735b17;font-size:.75rem}.text-button[b-bzr82g0rx2],.secondary-button[b-bzr82g0rx2]{padding:.5rem .7rem;border:1px solid #c3d3e6;border-radius:6px;background:#fff;color:#5f6b7a;font-weight:750}.empty-state[b-bzr82g0rx2]{padding:2rem;text-align:center;color:#5f6b7a}.table-scroll[b-bzr82g0rx2]{overflow:auto;margin-top:1rem}.intake-table[b-bzr82g0rx2],.review-table[b-bzr82g0rx2]{width:100%;border-collapse:collapse}.intake-table[b-bzr82g0rx2]{min-width:800px}.review-table[b-bzr82g0rx2]{min-width:1450px}.intake-table th[b-bzr82g0rx2],.review-table th[b-bzr82g0rx2]{padding:.65rem;background:#f5f9fe;color:#5f6b7a;text-align:left;font-size:.65rem;text-transform:uppercase}.intake-table td[b-bzr82g0rx2],.review-table td[b-bzr82g0rx2]{padding:.65rem;border-top:1px solid #dce6f2;vertical-align:top;font-size:.75rem}.intake-table td:first-child[b-bzr82g0rx2],.review-table td:first-child[b-bzr82g0rx2]{display:flex;flex-direction:column;gap:.1rem}.intake-table small[b-bzr82g0rx2],.review-table small[b-bzr82g0rx2]{color:#5f6b7a}.review-table input[b-bzr82g0rx2]{width:100%;min-width:115px;padding:.4rem;border:1px solid #c3d3e6;border-radius:5px}.review-table input.short-input[b-bzr82g0rx2]{min-width:55px}.status-pill[b-bzr82g0rx2],.confidence-pill[b-bzr82g0rx2],.count-chip[b-bzr82g0rx2]{display:inline-flex;padding:.25rem .5rem;border-radius:999px;background:#f5f9fe;font-size:.68rem;font-weight:800}.review-help[b-bzr82g0rx2]{margin-top:.8rem;padding:.7rem;border-radius:7px;background:#f5f9fe;color:#5f6b7a;font-size:.78rem}.row-actions[b-bzr82g0rx2]{display:flex;gap:.3rem}.row-actions button[b-bzr82g0rx2]{padding:.35rem .5rem;border:1px solid #c3d3e6;border-radius:5px;background:#fff}.row-actions .approve[b-bzr82g0rx2]{border-color:#a7e3c8;color:#16a163}.row-actions .reject[b-bzr82g0rx2]{border-color:#d7a09b;color:#933f38}@media(max-width:900px){.intake-grid[b-bzr82g0rx2]{grid-template-columns:1fr}.two-column[b-bzr82g0rx2]{grid-template-columns:1fr}.intake-hero[b-bzr82g0rx2],.current-project-strip[b-bzr82g0rx2],.section-toolbar[b-bzr82g0rx2]{flex-direction:column}}
.drop-zone.drag-active[b-bzr82g0rx2]{border-color:#7C3AED;background:#eef1ff;box-shadow:0 0 0 4px rgba(139,92,246,.13)}

/* Document Lifecycle & Destinations — secondary, collapsed-by-default info panel */
.intake-lifecycle-sec[b-bzr82g0rx2]{margin-top:1rem}
.intake-lifecycle[b-bzr82g0rx2]{border:1px solid #dce6f2;border-radius:10px;background:#f8fafc;overflow:hidden}
.intake-lifecycle>summary[b-bzr82g0rx2]{list-style:none;cursor:pointer;display:flex;align-items:center;gap:.6rem;padding:.8rem 1rem;background:#fff;border-radius:10px;color:var(--knx-text-muted,#5f6b7a);user-select:none;transition:background .15s ease,box-shadow .15s ease}
.intake-lifecycle>summary[b-bzr82g0rx2]::-webkit-details-marker{display:none}
.intake-lifecycle>summary:hover[b-bzr82g0rx2]{background:#f4f8fd;box-shadow:inset 0 0 0 1px #cfe0f2}
.intake-lifecycle>summary:focus-visible[b-bzr82g0rx2]{outline:2px solid var(--brand-600);outline-offset:2px}
.intake-lifecycle[open]>summary[b-bzr82g0rx2]{border-bottom-left-radius:0;border-bottom-right-radius:0}
.intake-lifecycle .il-caret[b-bzr82g0rx2]{display:inline-grid;place-items:center;width:1.4rem;height:1.4rem;flex:0 0 auto;border-radius:6px;background:#eef4fb;color:var(--brand-600);font-size:.72rem;line-height:1;transition:transform .15s ease}
.intake-lifecycle[open] .il-caret[b-bzr82g0rx2]{transform:rotate(90deg)}
.intake-lifecycle .il-summary-text[b-bzr82g0rx2]{display:flex;flex-direction:column;gap:.12rem;min-width:0}
.intake-lifecycle .il-title[b-bzr82g0rx2]{font-weight:800;font-size:.82rem;letter-spacing:.02em;color:#334155;text-transform:uppercase}
.intake-lifecycle .il-sub[b-bzr82g0rx2]{font-size:.76rem;color:var(--knx-text-muted,#5f6b7a)}
.intake-lifecycle .il-body[b-bzr82g0rx2]{padding:.25rem .9rem .9rem;border-top:1px solid #e6eef7}
.intake-lifecycle .il-flow[b-bzr82g0rx2]{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin:.7rem 0 .9rem}
.intake-lifecycle .il-flow-step[b-bzr82g0rx2]{padding:.22rem .5rem;border-radius:999px;background:#eef4fb;border:1px solid #dce6f2;color:#475569;font-size:.68rem;font-weight:700;white-space:nowrap}
.intake-lifecycle .il-flow-arrow[b-bzr82g0rx2]{color:var(--brand-600);font-weight:800;font-size:.72rem}
.intake-lifecycle .il-cards[b-bzr82g0rx2]{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}
.intake-lifecycle .il-repo[b-bzr82g0rx2]{padding:.7rem .8rem}
.intake-lifecycle .il-repo-h[b-bzr82g0rx2]{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.3rem}
.intake-lifecycle .il-repo-h strong[b-bzr82g0rx2]{font-size:.82rem;color:#1e293b}
.intake-lifecycle .il-purpose[b-bzr82g0rx2]{margin:.2rem 0 .35rem;font-size:.74rem;color:var(--knx-text-muted,#5f6b7a);line-height:1.35}
.intake-lifecycle .il-list[b-bzr82g0rx2]{margin:.1rem 0 .4rem;padding-left:1.05rem;font-size:.72rem;color:#475569}
.intake-lifecycle .il-list li[b-bzr82g0rx2]{margin:.08rem 0}
.intake-lifecycle .il-list--no[b-bzr82g0rx2]{color:#7a5b58}

/* Section 3 active/completed queue filter */
.queue-filter[b-bzr82g0rx2]{display:inline-flex;gap:.3rem;margin-top:1rem;padding:.25rem;border:1px solid #dce6f2;border-radius:8px;background:#f5f9fe}
.queue-filter-btn[b-bzr82g0rx2]{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .7rem;border:1px solid transparent;border-radius:6px;background:transparent;color:#5f6b7a;font-weight:750;font-size:.78rem;cursor:pointer;transition:background .12s ease,color .12s ease}
.queue-filter-btn:hover[b-bzr82g0rx2]{color:#334155}
.queue-filter-btn:focus-visible[b-bzr82g0rx2]{outline:2px solid var(--brand-600);outline-offset:1px}
.queue-filter-btn.active[b-bzr82g0rx2]{background:#fff;border-color:var(--brand-600);color:#6D28D9;box-shadow:0 1px 2px rgba(11,20,38,.06)}
.queue-filter-btn .count-chip[b-bzr82g0rx2]{background:#eef1ff}
.empty-state .text-button[b-bzr82g0rx2]{display:inline;padding:0 .15rem;border:0;background:transparent;color:var(--brand-600);font-weight:800;text-decoration:underline;cursor:pointer}
/* /Components/Pages/ProjectPages/ProjectDataReset.razor.rz.scp.css */
.reset-page[b-y6gat4qhjk]{padding:28px;display:grid;gap:18px;max-width:1100px}.reset-page header span[b-y6gat4qhjk]{font-size:.75rem;font-weight:800;letter-spacing:.12em;color:#b45309}.reset-page header h1[b-y6gat4qhjk]{margin:5px 0}.reset-page header p[b-y6gat4qhjk]{color:#64748b}.reset-summary[b-y6gat4qhjk]{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.reset-summary div[b-y6gat4qhjk]{border:1px solid #e2e8f0;background:white;border-radius:10px;padding:16px;display:grid}.reset-summary strong[b-y6gat4qhjk]{font-size:1.5rem}.reset-summary span[b-y6gat4qhjk]{color:#64748b}.warning-card[b-y6gat4qhjk]{background:#fff;border:1px solid #f59e0b;border-left:5px solid #f59e0b;border-radius:10px;padding:22px;display:grid;gap:16px}.warning-card h2[b-y6gat4qhjk],.warning-card p[b-y6gat4qhjk]{margin:0}.warning-card label[b-y6gat4qhjk]{display:grid;gap:7px}.warning-card input[b-y6gat4qhjk]{padding:11px;border:1px solid #cbd5e1;border-radius:7px}.warning-card button[b-y6gat4qhjk]{width:max-content;background:#b91c1c;color:white;border:0;border-radius:7px;padding:11px 16px;font-weight:700}.warning-card button:disabled[b-y6gat4qhjk]{opacity:.6}.reset-message[b-y6gat4qhjk]{padding:12px;border-radius:7px}.reset-message.error[b-y6gat4qhjk]{background:#fee2e2;color:#991b1b}.reset-message.success[b-y6gat4qhjk]{background:#e4f7ee;color:#16a163}.reset-state[b-y6gat4qhjk]{padding:30px;color:#64748b}@media(max-width:850px){.reset-summary[b-y6gat4qhjk]{grid-template-columns:repeat(2,1fr)}}
/* /Components/Pages/ProjectPages/ProjectOverview.razor.rz.scp.css */
/* Project Command Center — page composition only.
   Uses design-system tokens (var(--*)); does not redefine any ds- component. */

/* ---- Priority (attention) list ---- */
.cc-priority-card[b-h94l1fiz5b] { border-left: 3px solid var(--brand-500); }
.cc-priority[b-h94l1fiz5b] { display: flex; flex-direction: column; gap: var(--sp-2); }
.cc-priority__row[b-h94l1fiz5b] {
    display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: var(--sp-3);
    padding: var(--sp-3) var(--sp-4); border: 1px solid var(--border); border-radius: var(--radius);
    background: var(--surface); text-decoration: none; color: inherit; transition: background .12s, border-color .12s;
}
.cc-priority__row:hover[b-h94l1fiz5b] { background: var(--surface-2); border-color: var(--border-strong); }
.cc-priority__body[b-h94l1fiz5b] { display: flex; flex-direction: column; min-width: 0; }
.cc-priority__body strong[b-h94l1fiz5b] { color: var(--text); font-size: var(--fs-body); }
.cc-priority__body span[b-h94l1fiz5b] { color: var(--text-muted); font-size: var(--fs-table); }
.cc-priority__go[b-h94l1fiz5b] { white-space: nowrap; color: var(--brand-700); font-weight: 600; font-size: var(--fs-table); }

/* ---- Two-column: overview + activity ---- */
.cc-grid[b-h94l1fiz5b] { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--sp-4); margin-top: var(--sp-4); align-items: start; }
@media (max-width: 60rem) { .cc-grid[b-h94l1fiz5b] { grid-template-columns: 1fr; } }

.cc-overview[b-h94l1fiz5b] { margin: 0; }
.cc-progress[b-h94l1fiz5b] { margin-top: var(--sp-4); }
.cc-progress__head[b-h94l1fiz5b] { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 4px; }
.cc-progress__head span[b-h94l1fiz5b] { color: var(--text-muted); font-size: var(--fs-table); }
.cc-progress__head strong[b-h94l1fiz5b] { color: var(--text); }
.cc-bar[b-h94l1fiz5b] { height: 8px; border-radius: 999px; background: var(--surface-2); overflow: hidden; }
.cc-bar--sm[b-h94l1fiz5b] { height: 6px; }
.cc-bar__fill[b-h94l1fiz5b] { height: 100%; background: var(--brand-500); border-radius: 999px; }

/* ---- Recent activity feed ---- */
.cc-activity[b-h94l1fiz5b] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.cc-activity li[b-h94l1fiz5b] { border-bottom: 1px solid var(--border); }
.cc-activity li:last-child[b-h94l1fiz5b] { border-bottom: 0; }
.cc-activity__row[b-h94l1fiz5b] { display: grid; grid-template-columns: auto 1fr; gap: var(--sp-3); align-items: start; padding: var(--sp-2) 0; text-decoration: none; color: inherit; }
.cc-activity__row:hover .cc-activity__body strong[b-h94l1fiz5b] { color: var(--brand-700); }
.cc-activity__icon[b-h94l1fiz5b] { font-size: 1rem; line-height: 1.4; }
.cc-activity__body[b-h94l1fiz5b] { display: flex; flex-direction: column; min-width: 0; }
.cc-activity__body strong[b-h94l1fiz5b] { color: var(--text); font-size: var(--fs-table); }
.cc-activity__meta[b-h94l1fiz5b] { color: var(--text-muted); font-size: .72rem; }

/* ---- Operational readiness tiles ---- */
.cc-readiness[b-h94l1fiz5b] { display: grid; grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr)); gap: var(--sp-3); }
.cc-tile[b-h94l1fiz5b] {
    display: flex; flex-direction: column; gap: 6px; padding: var(--sp-3) var(--sp-4);
    border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface);
    text-decoration: none; color: inherit; transition: background .12s, border-color .12s, box-shadow .12s;
}
.cc-tile:hover[b-h94l1fiz5b] { background: var(--surface-2); border-color: var(--border-strong); box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.cc-tile__top[b-h94l1fiz5b] { display: flex; justify-content: space-between; align-items: center; gap: var(--sp-2); }
.cc-tile__label[b-h94l1fiz5b] { font-weight: 600; color: var(--text); }
.cc-tile__metric[b-h94l1fiz5b] { color: var(--text-muted); font-size: var(--fs-table); }
.cc-tile__next[b-h94l1fiz5b] { color: var(--brand-700); font-size: .72rem; font-weight: 600; margin-top: 2px; }

/* ---- System readiness rollup ---- */
.cc-systems-card[b-h94l1fiz5b] { border-top: 3px solid var(--border-strong); }
.cc-systems[b-h94l1fiz5b] { display: grid; grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr)); gap: var(--sp-3); }
.cc-systile[b-h94l1fiz5b] {
    display: flex; flex-direction: column; gap: 6px; align-items: flex-start; padding: var(--sp-3) var(--sp-4);
    border: 1px dashed var(--border-strong); border-radius: var(--radius); background: var(--surface-2);
    text-decoration: none; color: inherit; transition: background .12s;
}
.cc-systile:hover[b-h94l1fiz5b] { background: var(--surface); }
.cc-systile__label[b-h94l1fiz5b] { font-weight: 600; color: var(--text); }
.cc-systile__metric[b-h94l1fiz5b] { color: var(--text-muted); font-size: var(--fs-table); }

/* ---- Project Workspace modules (Gate 1 lifecycle entry points: Intake → Documents) ----
   Compact, controlled-width module cards — deliberate domain entries, NOT full-width rows. */
.cc-modules-card[b-h94l1fiz5b] { border-left: 3px solid var(--brand-500); }
.cc-modules[b-h94l1fiz5b] { display: grid; grid-template-columns: repeat(auto-fill, minmax(15rem, 18rem)); gap: var(--sp-3); }
.cc-module[b-h94l1fiz5b] {
    display: flex; flex-direction: column; gap: 4px;
    padding: var(--sp-4);
    border: 1px solid var(--border); border-radius: var(--radius);
    background: var(--surface); text-decoration: none;
    transition: background .14s ease, border-color .14s ease, box-shadow .14s ease;
}
.cc-module:hover[b-h94l1fiz5b] { background: var(--surface-2); border-color: var(--border-strong); box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.cc-module__icon[b-h94l1fiz5b] { font-size: 1.5rem; line-height: 1; margin-bottom: 2px; }
.cc-module__title[b-h94l1fiz5b] { color: var(--text); font-weight: 700; font-size: var(--fs-body); }
.cc-module__desc[b-h94l1fiz5b] { color: var(--text-muted); font-size: var(--fs-table); line-height: 1.35; }
.cc-module__meta[b-h94l1fiz5b] { color: var(--brand-700); font-weight: 600; font-size: var(--fs-table); margin-top: 2px; }
.cc-module__cta[b-h94l1fiz5b] { color: var(--brand-700); font-weight: 600; font-size: var(--fs-table); margin-top: 4px; }
/* /Components/Pages/ProjectPages/ProjectSetup.razor.rz.scp.css */
/* /Components/Pages/ProjectPages/Systems.razor.rz.scp.css */
/* Systems workspace — page composition only.
   Uses design-system tokens and ds- classes; introduces no new component or status color. */

/* ---- Master / detail layout ---- */
.sys-layout[b-7n40wfl2n5] { display: grid; grid-template-columns: minmax(17rem, 22rem) minmax(0, 1fr); gap: var(--sp-4); margin-top: var(--sp-4); align-items: start; }
@media (max-width: 62rem) { .sys-layout[b-7n40wfl2n5] { grid-template-columns: 1fr; } }

/* ---- System list ---- */
.sys-list[b-7n40wfl2n5] { display: flex; flex-direction: column; gap: var(--sp-2); border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); padding: var(--sp-3); }
.sys-list__head[b-7n40wfl2n5] { font-size: var(--fs-caption, .72rem); font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--text-muted); padding: 2px 2px var(--sp-1); }
.sys-list__item[b-7n40wfl2n5] { text-align: left; display: flex; flex-direction: column; gap: 5px; padding: var(--sp-3); border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); cursor: pointer; transition: background .12s, border-color .12s; }
.sys-list__item:hover[b-7n40wfl2n5] { background: var(--surface-2); border-color: var(--border-strong); }
.sys-list__item.active[b-7n40wfl2n5] { border-color: var(--brand-500); background: var(--brand-50); }
.sys-list__top[b-7n40wfl2n5] { display: flex; justify-content: space-between; align-items: center; gap: var(--sp-2); }
.sys-list__name[b-7n40wfl2n5] { font-weight: 650; color: var(--text); }
.sys-list__meta[b-7n40wfl2n5] { font-size: var(--fs-table); color: var(--text-muted); }
.sys-list__phases[b-7n40wfl2n5] { display: flex; gap: 4px; margin-top: 2px; }
.sys-chip[b-7n40wfl2n5] { min-width: 1.35rem; justify-content: center; padding: 1px 0; font-size: .66rem; font-weight: 700; }

/* ---- Detail ---- */
.sys-detail[b-7n40wfl2n5] { display: flex; flex-direction: column; gap: var(--sp-4); }
.sys-detail__head[b-7n40wfl2n5] { padding-bottom: var(--sp-2); }
.sys-tabbody[b-7n40wfl2n5] { padding: var(--sp-4); }
.sys-note[b-7n40wfl2n5] { color: var(--text-muted); font-size: var(--fs-table); margin: 0 0 var(--sp-3); }

/* ---- Overview: readiness + activity ---- */
.sys-overview[b-7n40wfl2n5] { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: var(--sp-4); align-items: start; }
@media (max-width: 68rem) { .sys-overview[b-7n40wfl2n5] { grid-template-columns: 1fr; } }

.sys-readiness[b-7n40wfl2n5] { display: grid; grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr)); gap: var(--sp-3); }
.sys-rtile[b-7n40wfl2n5] { display: flex; flex-direction: column; gap: 6px; padding: var(--sp-3) var(--sp-4); border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface); text-decoration: none; color: inherit; transition: background .12s, border-color .12s; }
.sys-rtile:hover[b-7n40wfl2n5] { background: var(--surface-2); border-color: var(--border-strong); }
.sys-rtile__top[b-7n40wfl2n5] { display: flex; justify-content: space-between; align-items: center; gap: var(--sp-2); }
.sys-rtile__label[b-7n40wfl2n5] { font-weight: 600; color: var(--text); }
.sys-rtile__metric[b-7n40wfl2n5] { color: var(--text-muted); font-size: var(--fs-table); }
.sys-bar[b-7n40wfl2n5] { height: 6px; border-radius: 999px; background: var(--surface-2); overflow: hidden; }
.sys-bar__fill[b-7n40wfl2n5] { height: 100%; background: var(--brand-500); border-radius: 999px; }

/* ---- System activity feed ---- */
.sys-activity[b-7n40wfl2n5] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.sys-activity li[b-7n40wfl2n5] { border-bottom: 1px solid var(--border); }
.sys-activity li:last-child[b-7n40wfl2n5] { border-bottom: 0; }
.sys-activity__row[b-7n40wfl2n5] { display: grid; grid-template-columns: auto 1fr; gap: var(--sp-3); align-items: start; padding: var(--sp-2) 0; text-decoration: none; color: inherit; }
.sys-activity__row:hover .sys-activity__body strong[b-7n40wfl2n5] { color: var(--brand-700); }
.sys-activity__icon[b-7n40wfl2n5] { font-size: 1rem; line-height: 1.4; }
.sys-activity__body[b-7n40wfl2n5] { display: flex; flex-direction: column; min-width: 0; }
.sys-activity__body strong[b-7n40wfl2n5] { color: var(--text); font-size: var(--fs-table); }
.sys-activity__meta[b-7n40wfl2n5] { color: var(--text-muted); font-size: .72rem; }
/* /Components/Pages/ProjectWorkspace.razor.rz.scp.css */
.project-workspace-shell[b-ehgmjv93ya] {
    width: 100%;
    max-width: 1480px;
    margin: 0 auto;
}

.workspace-heading[b-ehgmjv93ya] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
    margin-bottom: 1.25rem;
}

.workspace-title-block[b-ehgmjv93ya] { min-width: 0; }
.workspace-project-number[b-ehgmjv93ya] {
    display: block;
    margin-bottom: .35rem;
    color: #6b42e8;
    font-size: .82rem;
    font-weight: 650;
    letter-spacing: .02em;
}
.workspace-title-block h1[b-ehgmjv93ya] {
    margin: 0;
    color: #1f2b3a;
    font-size: clamp(2rem, 4vw, 3.25rem);
    font-weight: 400;
    line-height: 1.08;
}
.workspace-title-block p[b-ehgmjv93ya] { margin: .45rem 0 0; color: #ff3d6e; font-size: .95rem; }

.workspace-primary-action[b-ehgmjv93ya],
.secondary-action[b-ehgmjv93ya] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    border: 0;
    border-radius: 5px;
    cursor: pointer;
    font-weight: 650;
}
.workspace-primary-action[b-ehgmjv93ya] {
    min-height: 42px;
    padding: .65rem 1rem;
    background: #6c35df;
    color: white;
    box-shadow: 0 2px 5px rgba(68, 37, 137, .24);
}
.workspace-primary-action:hover[b-ehgmjv93ya] { background: #5926c7; }
.secondary-action[b-ehgmjv93ya] { padding: .65rem .95rem; background: #F4F6F9; color: #6D28D9; }

.workspace-nav[b-ehgmjv93ya] {
    display: flex;
    align-items: stretch;
    width: 100%;
    overflow-x: auto;
    border: 1px solid #dce6f2;
    border-radius: 7px 7px 0 0;
    background: #fff;
    scrollbar-width: thin;
}
.workspace-nav-button[b-ehgmjv93ya] {
    position: relative;
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    min-height: 54px;
    padding: 0 1.15rem;
    border: 0;
    background: transparent;
    color: #1f2b3a;
    white-space: nowrap;
    cursor: pointer;
    font-size: .9rem;
}
.workspace-nav-button:hover[b-ehgmjv93ya] { background: #f5f9fe; }
.workspace-nav-button.active[b-ehgmjv93ya] { color: #6336dc; }
.workspace-nav-button.active[b-ehgmjv93ya]::after {
    content: "";
    position: absolute;
    right: .45rem;
    bottom: 0;
    left: .45rem;
    height: 3px;
    background: #6336dc;
}

.workspace-summary-grid[b-ehgmjv93ya] {
    display: grid;
    grid-template-columns: 1fr 1.35fr 1fr;
    gap: 1.5rem;
    margin-bottom: 1rem;
}
.summary-card[b-ehgmjv93ya] {
    min-width: 0;
    min-height: 96px;
    padding: 1.15rem;
    border: 1px solid #dce6f2;
    border-radius: 0 0 5px 5px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(26, 31, 24, .08);
}
.summary-card span[b-ehgmjv93ya] { display: block; color: #5f6b7a; font-size: .8rem; }
.summary-card strong[b-ehgmjv93ya] {
    display: block;
    margin-top: .35rem;
    overflow: hidden;
    color: #1f2b3a;
    font-size: 1.55rem;
    font-weight: 400;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.summary-card .status-active[b-ehgmjv93ya] { color: #1dba74; }

.workspace-panel[b-ehgmjv93ya] {
    border: 1px solid #dce6f2;
    border-radius: 7px;
    background: #fff;
    box-shadow: 0 1px 3px rgba(31, 37, 28, .06);
}
.lifecycle-panel[b-ehgmjv93ya] { padding: 1.1rem; }
.panel-heading[b-ehgmjv93ya] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}
.panel-heading h2[b-ehgmjv93ya] { margin: 0; color: #1f2b3a; font-size: 1.65rem; font-weight: 450; }
.panel-heading p[b-ehgmjv93ya] { margin: .25rem 0 0; color: #ff3d6e; font-size: .86rem; }
.alignment-badge[b-ehgmjv93ya] {
    flex: 0 0 auto;
    padding: .35rem .65rem;
    border: 1px solid #b8c6ff;
    border-radius: 999px;
    background: #eef1ff;
    color: #6D28D9;
    font-size: .72rem;
    font-weight: 700;
}

.workflow-grid[b-ehgmjv93ya] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}
.workflow-button[b-ehgmjv93ya] {
    display: flex;
    min-height: 174px;
    flex-direction: column;
    align-items: stretch;
    padding: 1.15rem;
    border: 1px solid #dce6f2;
    border-radius: .65rem;
    background: #fff;
    color: #1f2b3a;
    text-align: left;
    cursor: pointer;
    transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.workflow-button:hover[b-ehgmjv93ya] {
    transform: translateY(-2px);
    border-color: #7C3AED;
    box-shadow: 0 7px 18px rgba(47, 64, 34, .09);
}
.workflow-icon[b-ehgmjv93ya] { min-height: 32px; color: #1f2b3a; }
.workflow-copy[b-ehgmjv93ya] { display: flex; flex: 1; flex-direction: column; gap: .45rem; }
.workflow-copy strong[b-ehgmjv93ya] { font-size: 1rem; }
.workflow-copy span[b-ehgmjv93ya] { color: #5f6b7a; line-height: 1.45; }
.workflow-footer[b-ehgmjv93ya] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-top: .85rem;
    padding-top: .7rem;
    border-top: 1px solid #dce6f2;
    color: #7C3AED;
}
.workflow-footer small[b-ehgmjv93ya] { font-weight: 700; }

.shared-services-strip[b-ehgmjv93ya] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .55rem;
    margin-top: 1rem;
    padding: .85rem 1rem;
    border: 1px solid #dce6f2;
    border-radius: .55rem;
    background: #f5f9fe;
}
.shared-services-strip strong[b-ehgmjv93ya] { margin-right: .35rem; color: #1f2b3a; }
.shared-services-strip span[b-ehgmjv93ya] {
    padding: .25rem .5rem;
    border-radius: 4px;
    background: white;
    color: #5f6b7a;
    font-size: .73rem;
}

.section-panel[b-ehgmjv93ya] { padding: 1.4rem; }
.detail-grid[b-ehgmjv93ya] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin: 0 0 1.25rem;
}
.detail-grid div[b-ehgmjv93ya] { padding: 1rem; border: 1px solid #dce6f2; border-radius: .5rem; }
.detail-grid dt[b-ehgmjv93ya] { color: #5f6b7a; font-size: .76rem; }
.detail-grid dd[b-ehgmjv93ya] { margin: .35rem 0 0; color: #1f2b3a; font-size: 1.05rem; font-weight: 650; }
.status-pill[b-ehgmjv93ya] { padding: .2rem .5rem; border-radius: 999px; background: #e4f7ee; color: #16a163; font-size: .78rem; }

.module-launch-panel[b-ehgmjv93ya] { display: flex; align-items: flex-start; gap: 1.25rem; }
.module-icon[b-ehgmjv93ya] {
    display: grid;
    width: 64px;
    height: 64px;
    flex: 0 0 64px;
    place-items: center;
    border-radius: 12px;
    background: #eef1ff;
    color: #7C3AED;
}
.module-launch-copy[b-ehgmjv93ya] { max-width: 850px; }
.module-eyebrow[b-ehgmjv93ya] { color: #5f6b7a; font-size: .72rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.module-launch-copy h2[b-ehgmjv93ya] { margin: .15rem 0 .35rem; font-size: 1.7rem; font-weight: 500; }
.module-launch-copy p[b-ehgmjv93ya] { margin: 0; color: #5f6b7a; line-height: 1.55; }
.module-alignment-row[b-ehgmjv93ya] { display: flex; flex-wrap: wrap; gap: .65rem 1rem; margin: 1rem 0; }
.module-alignment-row span[b-ehgmjv93ya] { display: inline-flex; align-items: center; gap: .35rem; color: #5f6b7a; font-size: .8rem; }
.module-open-button[b-ehgmjv93ya] { margin-top: .15rem; }
.project-required-card[b-ehgmjv93ya] { max-width: 900px; margin: 1.5rem auto; text-align: center; }

@media (max-width: 1100px) {
    .workspace-summary-grid[b-ehgmjv93ya] { gap: 1rem; }
    .workflow-grid[b-ehgmjv93ya] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .workspace-heading[b-ehgmjv93ya], .panel-heading[b-ehgmjv93ya] { flex-direction: column; }
    .workspace-summary-grid[b-ehgmjv93ya] { grid-template-columns: 1fr; }
    .summary-card[b-ehgmjv93ya] { border-radius: 5px; }
    .workflow-grid[b-ehgmjv93ya], .detail-grid[b-ehgmjv93ya] { grid-template-columns: 1fr; }
    .module-launch-panel[b-ehgmjv93ya] { flex-direction: column; }
    .workspace-primary-action[b-ehgmjv93ya] { width: 100%; }
}
/* /Components/Pages/QAQC.razor.rz.scp.css */
/* QAQC — styling now provided by the shared ProjectCTRL Design System (design-system.css). */
/* /Components/Pages/Turnover.razor.rz.scp.css */
/* Turnover — styling now provided by the shared ProjectCTRL Design System (design-system.css). */
/* /Components/Pages/WorkPackageReport.razor.rz.scp.css */
@media print{.sidebar-shell[b-6ksigk0hbr],.no-print[b-6ksigk0hbr]{display:none!important}.work-package-report[b-6ksigk0hbr]{padding:0!important}.output-table[b-6ksigk0hbr]{font-size:10px}.editor-card[b-6ksigk0hbr]{break-inside:avoid}}
/* /Components/Review/ReviewDuplicatePanel.razor.rz.scp.css */
/* Phase 2.3B — Engineering Identity quick-review (side panel). Decisions live in the full workspace. */
.rdp[b-2og7p38glr] { display: flex; flex-direction: column; gap: .5rem; padding: .5rem; overflow: auto; height: 100%; }
.rdp-empty[b-2og7p38glr] { color: var(--text-muted); font-size: .8rem; padding: .3rem; }
.rdp-ok[b-2og7p38glr] { font-size: .8rem; color: #1f2b3a; background: #e4f7ee; border: 1px solid #a7e3c8; border-radius: var(--radius); padding: .5rem .6rem; }

.rdp-topbar[b-2og7p38glr] { display: flex; flex-direction: column; gap: .1rem; }
.rdp-philos[b-2og7p38glr] { font-size: .72rem; color: var(--text-muted); }
/* Full-width call-to-action so the label never clips in the narrow panel. */
.rdp-cta[b-2og7p38glr] { display: block; width: 100%; text-align: center; white-space: nowrap; }

.rdp-quick[b-2og7p38glr] { display: flex; flex-direction: column; gap: .5rem; }
.rdp-quick-line[b-2og7p38glr] { font-size: .76rem; color: var(--text-muted); }
.rdp-quick-line b[b-2og7p38glr] { color: var(--text); }

.rdp-chips[b-2og7p38glr] { display: flex; gap: .3rem; flex-wrap: wrap; align-items: center; }
.rdp-chip[b-2og7p38glr] { display: inline-flex; align-items: center; gap: .3rem; padding: .2rem .5rem; border: 1px solid var(--border-strong); border-radius: 999px; background: var(--surface); cursor: pointer; font-size: .74rem; }
.rdp-chip.sel[b-2og7p38glr] { border-color: #7C3AED; background: rgba(139,92,246,.08); color: #7C3AED; font-weight: 600; }
.rdp-chip-letter[b-2og7p38glr] { display: inline-flex; width: 1.1rem; height: 1.1rem; align-items: center; justify-content: center; border-radius: 50%; background: #7C3AED; color: #fff; font-size: .64rem; font-weight: 700; }
.rdp-chip-score[b-2og7p38glr] { color: var(--text-muted); font-size: .68rem; }
.rdp-chip-more[b-2og7p38glr] { font-size: .72rem; color: var(--warning); font-weight: 600; }

.rdp-preview[b-2og7p38glr] { border: 1px solid var(--border); border-radius: var(--radius); padding: .5rem .6rem; background: var(--surface); }
.rdp-prev-h[b-2og7p38glr] { display: flex; align-items: center; gap: .4rem; flex-wrap: wrap; }
.rdp-prev-h strong[b-2og7p38glr] { font-size: .9rem; }
.rdp-prev-score[b-2og7p38glr] { color: #7C3AED; font-weight: 700; font-size: .76rem; margin-left: auto; }
.rdp-prev-desc[b-2og7p38glr] { font-size: .78rem; color: var(--text); margin-top: .2rem; }
.rdp-prev-meta[b-2og7p38glr] { font-size: .7rem; color: var(--text-muted); }
.rdp-why[b-2og7p38glr] { list-style: none; margin: .4rem 0 0; padding: 0; display: flex; flex-direction: column; gap: .15rem; font-size: .74rem; color: var(--text); }
.rdp-why-conflict[b-2og7p38glr] { color: #b00020; }
/* /Components/Review/ReviewIdentityWorkspace.razor.rz.scp.css */
/* Phase 2.3B Amendment 09 · Phase 1 — Engineering Identity Review workspace shell. */
.idw-header[b-0avarh15nm] { display: flex; align-items: flex-start; gap: 1rem; flex-wrap: wrap; padding: .5rem .75rem; border-bottom: 1px solid var(--border); background: var(--surface); }
.idw-title[b-0avarh15nm] { min-width: 0; }
.idw-eyebrow[b-0avarh15nm] { font-size: .64rem; font-weight: 800; letter-spacing: .08em; color: var(--brand-600); }
.idw-title h1[b-0avarh15nm] { font-size: 1.15rem; margin: .1rem 0; color: var(--text); }
.idw-type[b-0avarh15nm] { font-size: .85rem; color: var(--text-muted); font-weight: 500; }
.idw-ctx[b-0avarh15nm] { display: flex; gap: 1rem; flex-wrap: wrap; font-size: .74rem; color: var(--text-muted); }
.idw-ctx b[b-0avarh15nm] { color: var(--text); }
.idw-unsaved[b-0avarh15nm] { color: var(--warning); font-weight: 700; }
.idw-modes[b-0avarh15nm] { display: flex; gap: .25rem; flex-wrap: wrap; }
.idw-mode[b-0avarh15nm] { font-size: .74rem; padding: .3rem .6rem; border: 1px solid var(--border-strong); border-radius: 8px; background: var(--surface); color: var(--text-muted); cursor: pointer; }
.idw-mode.sel[b-0avarh15nm] { border-color: #7C3AED; color: #7C3AED; font-weight: 700; background: rgba(139,92,246,.08); }
.idw-header-actions[b-0avarh15nm] { display: flex; gap: .4rem; align-items: center; margin-left: auto; }

.idw-stage[b-0avarh15nm] { display: flex; }

/* Phase 3 — Side-by-Side / multi-candidate compare: N synchronized viewers, merge/delete to one truth. */
.idw-cmp-wrap[b-0avarh15nm] { flex: 1; min-width: 0; min-height: 0; display: flex; flex-direction: column; }
.idw-cmp-bar[b-0avarh15nm] { flex: 0 0 auto; display: flex; align-items: baseline; gap: .75rem; flex-wrap: wrap; padding: .3rem .6rem; border-bottom: 1px solid var(--border); font-size: .76rem; }
.idw-cmp-bar-hint[b-0avarh15nm] { color: var(--text-muted); font-size: .72rem; }
.idw-cmp[b-0avarh15nm] { flex: 1; min-height: 0; display: grid; grid-auto-rows: minmax(0, 1fr); gap: .4rem; padding: .35rem; }
.idw-cmp-pane[b-0avarh15nm] { display: flex; flex-direction: column; min-width: 0; min-height: 0; border: 1px solid var(--border); border-radius: 8px; overflow: hidden; background: var(--surface); }
.idw-cmp-pane.truth[b-0avarh15nm] { border-color: #2e7d32; box-shadow: 0 0 0 1px #2e7d32 inset; }
.idw-cmp-pane.reference[b-0avarh15nm] { border-color: #7C3AED; box-shadow: 0 0 0 1px #7C3AED inset; }
.idw-cmp-badge.ref[b-0avarh15nm] { width: auto; border-radius: 6px; padding: 0 .35rem; font-size: .58rem; letter-spacing: .04em; }
.idw-cmp-role--ref[b-0avarh15nm] { color: #7C3AED; font-weight: 800; }
.idw-cands-sub[b-0avarh15nm] { font-size: .62rem; font-weight: 600; color: var(--text-muted); text-transform: none; }
.idw-cmp-cap[b-0avarh15nm] { display: flex; align-items: center; gap: .4rem; padding: .3rem .5rem; border-bottom: 1px solid var(--border); border-left: 3px solid var(--border); font-size: .78rem; }
.idw-cmp-cap strong[b-0avarh15nm] { font-size: .82rem; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.idw-cmp-badge[b-0avarh15nm] { display: inline-flex; width: 1.2rem; height: 1.2rem; align-items: center; justify-content: center; border-radius: 50%; color: #fff; font-size: .7rem; font-weight: 800; flex: 0 0 auto; }
.idw-cmp-role[b-0avarh15nm] { font-size: .6rem; font-weight: 800; letter-spacing: .05em; color: var(--text-muted); }
.idw-cmp-dwg[b-0avarh15nm] { margin-left: auto; font-size: .68rem; color: var(--text-muted); white-space: nowrap; }
.idw-truth[b-0avarh15nm] { font-size: .62rem; font-weight: 800; color: #2e7d32; letter-spacing: .04em; }
.idw-cmp-view[b-0avarh15nm] { flex: 1; min-height: 0; }

/* Phase 4 — Overlay: one drawing, reference + candidate layers, blend slider. */
.idw-ov-wrap[b-0avarh15nm] { flex: 1; min-width: 0; min-height: 0; display: flex; flex-direction: column; }
.idw-ov-bar[b-0avarh15nm] { flex: 0 0 auto; display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; padding: .35rem .6rem; border-bottom: 1px solid var(--border); font-size: .78rem; }
.idw-ov-ref[b-0avarh15nm] { color: #7C3AED; font-weight: 700; }
.idw-ov-blend[b-0avarh15nm] { display: flex; align-items: center; gap: .4rem; font-size: .74rem; color: var(--text-muted); }
.idw-ov-blend input[type=range][b-0avarh15nm] { width: 9rem; }
.idw-ov-pct[b-0avarh15nm] { min-width: 2.4rem; text-align: right; color: #b08900; font-weight: 700; }
.idw-ov-note[b-0avarh15nm] { flex: 0 0 auto; padding: .4rem .6rem; font-size: .76rem; background: #fff6e5; color: #8a5a00; border-bottom: 1px solid #f0d9a8; }
.idw-ov-view[b-0avarh15nm] { flex: 1; min-height: 0; }
.idw-ov-legend[b-0avarh15nm] { flex: 0 0 auto; display: flex; gap: 1.2rem; padding: .35rem .6rem; border-top: 1px solid var(--border); font-size: .74rem; color: var(--text-muted); }
.idw-ov-key[b-0avarh15nm] { display: inline-block; width: .9rem; height: .7rem; border: 2px solid; border-radius: 2px; margin-right: .3rem; vertical-align: middle; }
.idw-cmp-actions[b-0avarh15nm] { flex: 0 0 auto; display: flex; align-items: center; gap: .35rem; flex-wrap: wrap; padding: .3rem .5rem; border-top: 1px solid var(--border); background: var(--surface-2); }
.idw-cmp-hint[b-0avarh15nm] { font-size: .7rem; color: var(--text-muted); }

/* compare toggle on the candidate cards */
.idw-cand.cmp[b-0avarh15nm] { border-color: #b08900; box-shadow: 0 0 0 1px #b08900 inset; }
.idw-cand-cmp[b-0avarh15nm] { font-size: .64rem; font-weight: 700; padding: .05rem .35rem; border-radius: 999px; border: 1px solid var(--border-strong); color: var(--text-muted); }
.idw-cand-cmp.on[b-0avarh15nm] { background: rgba(176,137,0,.12); border-color: #b08900; color: #8a6d00; }
.idw-placeholder[b-0avarh15nm] { margin: auto; max-width: 40rem; text-align: center; padding: 2rem; color: var(--text-muted); }
.idw-ph-icon[b-0avarh15nm] { font-size: 2.5rem; }
.idw-placeholder h2[b-0avarh15nm] { color: var(--text); margin: .5rem 0; }
.idw-ph-note[b-0avarh15nm] { font-size: .8rem; }

.idw-cands[b-0avarh15nm] { display: flex; flex-direction: column; min-height: 0; }
.idw-cands-h[b-0avarh15nm] { font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--text-muted); margin-bottom: .4rem; }
.idw-empty[b-0avarh15nm] { font-size: .78rem; color: var(--text-muted); }
.idw-cand-list[b-0avarh15nm] { display: flex; flex-direction: column; gap: .35rem; overflow: auto; min-height: 0; padding-bottom: 1rem; }
.idw-cand[b-0avarh15nm] { text-align: left; border: 1px solid var(--border); border-radius: 8px; background: var(--surface); padding: .4rem .5rem; cursor: pointer; display: flex; flex-direction: column; gap: .2rem; }
.idw-cand:hover[b-0avarh15nm] { background: var(--surface-2); }
.idw-cand.sel[b-0avarh15nm] { border-color: #7C3AED; background: rgba(139,92,246,.06); }
.idw-cand-top[b-0avarh15nm] { display: flex; align-items: center; gap: .4rem; }
.idw-cand-letter[b-0avarh15nm] { display: inline-flex; width: 1.2rem; height: 1.2rem; align-items: center; justify-content: center; border-radius: 50%; background: #7C3AED; color: #fff; font-size: .7rem; font-weight: 700; }
.idw-cand-top strong[b-0avarh15nm] { flex: 1; font-size: .8rem; }
.idw-cand-score[b-0avarh15nm] { font-size: .7rem; color: var(--text-muted); }
.idw-cand-desc[b-0avarh15nm] { font-size: .74rem; color: var(--text); }
.idw-cand-meta[b-0avarh15nm] { font-size: .68rem; color: var(--text-muted); }
.idw-cand-flags[b-0avarh15nm] { display: flex; gap: .25rem; flex-wrap: wrap; }

/* Phase 2 — Engineering Summary mode + decision controls */
.idw-sec[b-0avarh15nm] { font-size:.66rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--text-muted); margin:.4rem 0 .3rem; }
.idw-summary[b-0avarh15nm] { display:flex; flex-direction:column; height:100%; min-height:0; }
.idw-sum-heads[b-0avarh15nm] { display:grid; grid-template-columns:1fr auto 1fr auto; gap:1rem; align-items:center; padding:.6rem .8rem; border-bottom:1px solid var(--border); }
.idw-sum-tag[b-0avarh15nm] { display:block; font-size:.6rem; font-weight:800; letter-spacing:.06em; color:var(--text-muted); }
.idw-sum-obj strong[b-0avarh15nm], .idw-sum-cand strong[b-0avarh15nm] { font-size:1rem; display:block; }
.idw-sum-obj span[b-0avarh15nm], .idw-sum-cand span[b-0avarh15nm] { font-size:.8rem; color:var(--text-muted); }
.idw-sum-obj[b-0avarh15nm] { border-left:3px solid #7C3AED; padding-left:.6rem; }
.idw-sum-cand[b-0avarh15nm] { border-left:3px solid #b08900; padding-left:.6rem; }
.idw-sum-vs[b-0avarh15nm] { color:var(--text-muted); font-weight:700; }
.idw-sum-score[b-0avarh15nm] { text-align:center; font-size:.68rem; color:var(--text-muted); }
.idw-sum-score b[b-0avarh15nm] { font-size:1.3rem; color:#7C3AED; }
.idw-sum-scroll[b-0avarh15nm] { flex:1; min-height:0; overflow:auto; padding:.6rem .8rem 1.5rem; }
.idw-fields[b-0avarh15nm] { width:100%; border-collapse:collapse; font-size:.82rem; }
.idw-fields th[b-0avarh15nm], .idw-fields td[b-0avarh15nm] { text-align:left; padding:.35rem .6rem; border-bottom:1px solid var(--border); vertical-align:top; }
.idw-fields th[b-0avarh15nm] { font-size:.66rem; text-transform:uppercase; color:var(--text-muted); }
.idw-f[b-0avarh15nm] { color:var(--text-muted); width:12rem; }
.idw-fields tr.idw-diff td[b-0avarh15nm] { background:color-mix(in srgb,#b08900 8%,transparent); }
.idw-m[b-0avarh15nm] { white-space:nowrap; font-weight:600; }
.idw-m-match[b-0avarh15nm] { color:#2e7d32; } .idw-m-diff[b-0avarh15nm] { color:#b08900; } .idw-m-unknown[b-0avarh15nm] { color:var(--text-muted); }
.idw-strength[b-0avarh15nm] { margin-top:1rem; }
.idw-bar-row[b-0avarh15nm] { display:grid; grid-template-columns:16rem 1fr; align-items:center; gap:.6rem; font-size:.74rem; margin-top:.2rem; }
.idw-bar[b-0avarh15nm] { height:8px; border-radius:999px; background:var(--surface-2); overflow:hidden; }
.idw-bar-fill[b-0avarh15nm] { display:block; height:100%; border-radius:999px; }
.idw-bar-fill.hi[b-0avarh15nm] { background:#2e7d32; } .idw-bar-fill.lo[b-0avarh15nm] { background:var(--border-strong); }
.idw-conflicts ul[b-0avarh15nm], .idw-evidence ul[b-0avarh15nm] { margin:0; padding-left:1.1rem; font-size:.78rem; color:var(--text); }
.idw-conflicts[b-0avarh15nm] { margin-top:1rem; } .idw-conflicts li[b-0avarh15nm] { color:#b00020; }
.idw-evidence[b-0avarh15nm] { margin-top:1rem; }
.idw-panel[b-0avarh15nm] { display:flex; flex-direction:column; min-height:0; }
.idw-decide[b-0avarh15nm] { border-top:1px solid var(--border); margin-top:.5rem; padding-top:.5rem; }
.idw-choice[b-0avarh15nm] { display:flex; align-items:flex-start; gap:.4rem; font-size:.76rem; padding:.2rem .3rem; border-radius:6px; cursor:pointer; }
.idw-choice.sel[b-0avarh15nm] { background:rgba(139,92,246,.08); }
.idw-decide-actions[b-0avarh15nm] { display:flex; align-items:center; gap:.4rem; flex-wrap:wrap; margin:.4rem 0; }
.idw-obj-actions[b-0avarh15nm] { display:flex; gap:.4rem; flex-wrap:wrap; margin-top:.4rem; padding-top:.4rem; border-top:1px dashed var(--border); }
.idw-guide[b-0avarh15nm] { font-size:.72rem; color:var(--text-muted); }
.idw-note[b-0avarh15nm] { min-width:12rem; padding:.25rem .5rem; border:1px solid var(--border-strong); border-radius:6px; font-size:.76rem; }

/* PM-05C.6C12 — zero-candidate auto-clear state (no identity decision required). */
.idw-autoclear[b-0avarh15nm] { display:flex; gap:.6rem; align-items:flex-start; padding:.6rem .7rem; margin:.4rem 0; border:1px solid var(--border); border-left:3px solid var(--success); border-radius:8px; background:var(--surface-2); }
.idw-autoclear-icon[b-0avarh15nm] { flex:0 0 auto; width:1.5rem; height:1.5rem; border-radius:50%; background:var(--success); color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:.85rem; font-weight:700; }
.idw-autoclear strong[b-0avarh15nm] { font-size:.85rem; color:var(--text); }
.idw-autoclear p[b-0avarh15nm] { margin:.2rem 0 0; }
/* /Components/Review/ReviewInstructions.razor.rz.scp.css */
/* Phase 2.4A — Review Instructions (contextual help). Uses design tokens; no new colors. */
.review-instructions[b-qqw19c2evz] { position: relative; font-size: .8rem; }
.review-instructions > summary[b-qqw19c2evz] {
    cursor: pointer; list-style: none; user-select: none;
    border: 1px solid var(--border-strong); border-radius: var(--radius-sm, 6px);
    padding: .3rem .6rem; background: var(--surface); color: var(--brand-700); font-weight: 650;
}
.review-instructions > summary[b-qqw19c2evz]::-webkit-details-marker { display: none; }
.review-instructions > summary:hover[b-qqw19c2evz] { background: var(--surface-2); }
.ri-body[b-qqw19c2evz] {
    position: absolute; right: 0; top: calc(100% + 4px); z-index: 40; width: min(42rem, 90vw);
    max-height: 70vh; overflow: auto; background: var(--surface); border: 1px solid var(--border-strong);
    border-radius: var(--radius); box-shadow: 0 12px 32px rgba(0,0,0,.18); padding: var(--sp-4);
    display: flex; flex-direction: column; gap: var(--sp-4);
}
.ri-body h4[b-qqw19c2evz] { margin: 0 0 .4rem; font-size: .8rem; text-transform: uppercase; letter-spacing: .04em; color: var(--text-muted); }
.ri-body ol[b-qqw19c2evz], .ri-body ul[b-qqw19c2evz] { margin: 0; padding-left: 1.1rem; color: var(--text); line-height: 1.5; }
.ri-table[b-qqw19c2evz] { width: 100%; border-collapse: collapse; font-size: .74rem; }
.ri-table th[b-qqw19c2evz], .ri-table td[b-qqw19c2evz] { text-align: left; padding: .3rem .4rem; border-bottom: 1px solid var(--border); vertical-align: top; }
.ri-table th[b-qqw19c2evz] { color: var(--text-muted); text-transform: uppercase; font-size: .68rem; letter-spacing: .03em; }
.ri-muted[b-qqw19c2evz] { color: var(--text-muted); }
.ri-flag[b-qqw19c2evz] { display: inline-block; margin-top: 2px; font-size: .62rem; font-weight: 700; color: var(--warning); text-transform: uppercase; }
.ri-dupes[b-qqw19c2evz] { list-style: none; padding-left: 0; display: flex; flex-direction: column; gap: .35rem; }
.ri-dupes li[b-qqw19c2evz] { color: var(--text); }
.ri-dupes em[b-qqw19c2evz] { color: var(--brand-700); font-style: normal; font-weight: 600; }
/* /Components/Review/ReviewRegionEditor.razor.rz.scp.css */
/* Phase 2.4A DC-02 + CR-05 — multi-evidence Relocate editor. */
.rge[b-b4wf48sro3] { display: flex; flex-direction: column; height: 100%; min-height: 0; background: var(--surface); }
.rge-banner[b-b4wf48sro3] { display: flex; align-items: center; gap: .5rem; padding: .35rem .6rem; font-size: .74rem; color: #8a5a00; background: #fff6e5; border-bottom: 1px solid #f0d9a8; }
.rge-banner.dirty[b-b4wf48sro3] { background: #ffefef; color: #8a1a1a; border-bottom-color: #f0b8b8; }
.rge-badge[b-b4wf48sro3] { font-weight: 800; letter-spacing: .06em; background: #8a5a00; color: #fff; padding: .05rem .4rem; border-radius: 4px; font-size: .66rem; }
.rge-banner.dirty .rge-badge[b-b4wf48sro3] { background: #b00020; }
.rge-unsaved[b-b4wf48sro3] { font-weight: 700; color: #b00020; }
.rge-layers[b-b4wf48sro3] { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; padding: .25rem .6rem; border-bottom: 1px solid var(--border); font-size: .72rem; color: var(--text-muted); }
.rge-layers-lbl[b-b4wf48sro3] { font-weight: 700; text-transform: uppercase; font-size: .64rem; }
.rge-layer[b-b4wf48sro3] { display: inline-flex; align-items: center; gap: .25rem; }
.rge-layer.reserved[b-b4wf48sro3] { opacity: .5; }
.rge-toolbar[b-b4wf48sro3], .rge-legend[b-b4wf48sro3] { display: flex; align-items: center; gap: .35rem; flex-wrap: wrap; padding: .3rem .5rem; border-bottom: 1px solid var(--border); }
.rge-hint[b-b4wf48sro3] { font-size: .7rem; color: var(--text-muted); }
.rge-sep[b-b4wf48sro3] { width: 1px; height: 1.2rem; background: var(--border); margin: 0 .2rem; }
.rge-legend[b-b4wf48sro3] { font-size: .72rem; color: var(--text-muted); }
.rge-tabs[b-b4wf48sro3] { display: inline-flex; gap: .2rem; }
.rge-tab[b-b4wf48sro3] { font-size: .72rem; padding: .2rem .5rem; border: 1px solid var(--border-strong); border-radius: 6px; background: var(--surface); color: var(--text-muted); cursor: pointer; }
.rge-tab.sel[b-b4wf48sro3] { border-color: #7C3AED; color: #7C3AED; font-weight: 700; background: rgba(139,92,246,.08); }
.rge-group[b-b4wf48sro3] { display: inline-flex; align-items: center; gap: .25rem; font-size: .72rem; }
.rge-key[b-b4wf48sro3] { display: inline-block; width: .9rem; height: .7rem; border-radius: 2px; margin: 0 .1rem 0 .4rem; vertical-align: middle; }
.rge-orig-key[b-b4wf48sro3] { border: 2px dashed #5f6b7a; }
.rge-saved-key[b-b4wf48sro3] { border: 2px solid #2e7d32; }
.rge-work-key[b-b4wf48sro3] { border: 2px solid #7C3AED; background: rgba(139,92,246,.12); }
.rge-dirty[b-b4wf48sro3] { color: var(--warning); font-weight: 700; }
.rge-note[b-b4wf48sro3] { min-width: 14rem; padding: .25rem .5rem; border: 1px solid var(--border-strong); border-radius: 6px; font-size: .76rem; }

/* user-select:none so dragging a box/handle/background doesn't paint the blue text-selection wash. */
.rge-stage[b-b4wf48sro3] { flex: 1; overflow: auto; background: #1f2b3a; min-height: 0; cursor: grab; touch-action: none; user-select: none; -webkit-user-select: none; }
.rge-canvas[b-b4wf48sro3] { position: relative; }
.rge-canvas img[b-b4wf48sro3] { display: block; width: 100%; background: #fff; pointer-events: none; }

.rge-box[b-b4wf48sro3] { position: absolute; box-sizing: border-box; }
.rge-orig[b-b4wf48sro3] { border: 2px dashed #5f6b7a; pointer-events: none; }
.rge-saved[b-b4wf48sro3] { border: 2px solid #2e7d32; pointer-events: none; }
.rge-work[b-b4wf48sro3] { border: 2px solid #7C3AED; background: rgba(139,92,246,.10); cursor: move; }
.rge-other[b-b4wf48sro3] { border: 2px solid #b08900; background: rgba(176,137,0,.06); cursor: pointer; }
.rge-lbl[b-b4wf48sro3] { position: absolute; top: -1.05rem; left: 0; background: #7C3AED; color: #fff; font-size: .62rem; padding: 0 .3rem; border-radius: 3px; white-space: nowrap; }
.rge-other .rge-lbl[b-b4wf48sro3] { background: #b08900; }
.rge-lbl-orig[b-b4wf48sro3] { position: absolute; top: -1.05rem; right: 0; left: auto; background: #5f6b7a; }

.rge-handle[b-b4wf48sro3] { position: absolute; width: 12px; height: 12px; background: #fff; border: 2px solid #7C3AED; border-radius: 2px; }
.rge-n[b-b4wf48sro3]  { top: -6px; left: calc(50% - 6px); cursor: ns-resize; }
.rge-s[b-b4wf48sro3]  { bottom: -6px; left: calc(50% - 6px); cursor: ns-resize; }
.rge-e[b-b4wf48sro3]  { right: -6px; top: calc(50% - 6px); cursor: ew-resize; }
.rge-w[b-b4wf48sro3]  { left: -6px; top: calc(50% - 6px); cursor: ew-resize; }
.rge-ne[b-b4wf48sro3] { top: -6px; right: -6px; cursor: nesw-resize; }
.rge-nw[b-b4wf48sro3] { top: -6px; left: -6px; cursor: nwse-resize; }
.rge-se[b-b4wf48sro3] { bottom: -6px; right: -6px; cursor: nwse-resize; }
.rge-sw[b-b4wf48sro3] { bottom: -6px; left: -6px; cursor: nesw-resize; }
/* /Components/Shared/DsReviewShell.razor.rz.scp.css */
/* Phase 2.3B Amendment 07 — Review Workspace Framework shell.
   Fixed viewport; independent-scrolling regions; the page itself never scrolls during review. */
.revshell[b-8prr9vhmgh] {
    display: flex; flex-direction: column;
    /* Fit EXACTLY inside .content-area: viewport − 60px top-bar − the content-area's top+bottom
       padding (2 × --page-pad). Getting this exact stops the page from being a few px taller than
       the viewport, which is what let the body scroll a hair and jitter vertically. */
    height: calc(100dvh - 60px - 2 * var(--page-pad, 2rem));
    min-height: 0; overflow: hidden; overflow-anchor: none;
    background: var(--bg, var(--surface));
}
.revshell-fixed[b-8prr9vhmgh] { flex: 0 0 auto; }             /* Header · Metrics · Message · Action bar stay put */

.revshell-body[b-8prr9vhmgh] {
    flex: 1 1 auto; min-height: 0;
    display: grid; gap: .5rem; padding: .5rem .75rem;
    overflow: hidden;                            /* the grid never scrolls — its regions do */
}

/* Queue & Panel scroll independently; the Viewer keeps the largest space and never collapses. */
.revshell-region[b-8prr9vhmgh] { min-height: 0; min-width: 0; overflow: auto; overscroll-behavior: contain; overflow-anchor: none; padding-bottom: 1rem; }
.revshell-viewer[b-8prr9vhmgh] { min-height: 0; min-width: 0; overflow: hidden; display: flex; flex-direction: column; }
.revshell-viewer > *[b-8prr9vhmgh] { min-height: 0; flex: 1 1 auto; }

.revshell-actionbar[b-8prr9vhmgh] { border-top: 1px solid var(--border); background: var(--surface); }

/* Responsive: reduce side panels before introducing horizontal scroll; viewer usability wins. */
@media (max-width: 90rem) { .revshell-body[b-8prr9vhmgh] { grid-template-columns: 14rem minmax(0,1fr) 22rem !important; } }
@media (max-width: 72rem) {
    .revshell-body[b-8prr9vhmgh] { grid-template-columns: minmax(0,1fr) !important; grid-auto-rows: minmax(0, 1fr); }
    .revshell-queue[b-8prr9vhmgh] { max-height: 14rem; }
}
/* /Components/Shared/ExecutionModuleWorkspace.razor.rz.scp.css */
.execution-page[b-ubi5nhxrf8]{display:flex;flex-direction:column;gap:1.15rem}.execution-header[b-ubi5nhxrf8]{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.execution-eyebrow[b-ubi5nhxrf8],.section-label[b-ubi5nhxrf8]{display:block;color:#7C3AED;font-size:.77rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.execution-header h1[b-ubi5nhxrf8]{margin:.25rem 0;font-size:2.25rem;font-weight:500;color:#1f2b3a}.execution-header p[b-ubi5nhxrf8]{margin:0;max-width:850px;color:#5f6b7a}.source-link[b-ubi5nhxrf8]{padding:.75rem 1rem;border-radius:.45rem;background:var(--brand-600);color:#fff;text-decoration:none;font-weight:800}.execution-state[b-ubi5nhxrf8]{padding:2rem;background:#fff;border:1px solid #dce6f2;border-radius:.65rem}.thread-banner[b-ubi5nhxrf8]{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.1rem 1.25rem;background:#172230;color:#fff;border-radius:.7rem}.thread-banner>div[b-ubi5nhxrf8]{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.thread-banner>div>span[b-ubi5nhxrf8]{color:#A78BFA;font-size:.75rem;font-weight:800}.thread-banner b[b-ubi5nhxrf8]{color:#A78BFA}.thread-banner p[b-ubi5nhxrf8]{margin:0;max-width:520px;color:#d8dee6}.io-grid[b-ubi5nhxrf8]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.io-grid article[b-ubi5nhxrf8],.workspace-card[b-ubi5nhxrf8],.relationship-panel[b-ubi5nhxrf8]{background:#fff;border:1px solid #dce6f2;border-radius:.65rem;padding:1.1rem}.io-grid h2[b-ubi5nhxrf8],.relationship-panel h2[b-ubi5nhxrf8]{margin:.25rem 0 .8rem;font-size:1.2rem}.token-list[b-ubi5nhxrf8]{display:flex;flex-wrap:wrap;gap:.45rem}.token-list span[b-ubi5nhxrf8]{padding:.45rem .6rem;border-radius:.35rem;background:#F4F6F9;color:#1f2b3a;font-size:.82rem;font-weight:700}.output-list span[b-ubi5nhxrf8]{background:#f5efe0;color:#5f511f}.workspace-grid[b-ubi5nhxrf8]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.workspace-card[b-ubi5nhxrf8]{min-height:155px}.workspace-card>span[b-ubi5nhxrf8]{color:#7C3AED;font-size:.75rem;font-weight:800;text-transform:uppercase}.workspace-card h3[b-ubi5nhxrf8]{margin:.35rem 0;color:#1f2b3a}.workspace-card p[b-ubi5nhxrf8]{margin:0;color:#5f6b7a;line-height:1.45}.workspace-card small[b-ubi5nhxrf8]{display:block;margin-top:.8rem;padding-top:.7rem;border-top:1px solid #dce6f2;color:#7b6330;font-weight:700}.relationship-panel[b-ubi5nhxrf8]{display:flex;justify-content:space-between;align-items:center;gap:1rem}.relationship-flow[b-ubi5nhxrf8]{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;flex-wrap:wrap}.relationship-node[b-ubi5nhxrf8]{padding:.5rem .65rem;border:1px solid #dce6f2;border-radius:.4rem;background:#f9fbfe;font-size:.82rem;font-weight:700}.relationship-flow b[b-ubi5nhxrf8]{color:#7C3AED}.approval-banner[b-ubi5nhxrf8]{padding:1rem 1.15rem;border-left:4px solid var(--brand-600);background:#F4F6F9;border-radius:.4rem}.approval-banner strong[b-ubi5nhxrf8]{display:block;color:#1f2b3a}.approval-banner span[b-ubi5nhxrf8]{color:#5f6b7a}.execution-header[b-ubi5nhxrf8],.thread-banner[b-ubi5nhxrf8],.relationship-panel[b-ubi5nhxrf8]{min-width:0}@media(max-width:1050px){.workspace-grid[b-ubi5nhxrf8]{grid-template-columns:repeat(2,1fr)}.thread-banner[b-ubi5nhxrf8],.relationship-panel[b-ubi5nhxrf8]{align-items:flex-start;flex-direction:column}.relationship-flow[b-ubi5nhxrf8]{justify-content:flex-start}}@media(max-width:700px){.execution-header[b-ubi5nhxrf8]{flex-direction:column}.io-grid[b-ubi5nhxrf8],.workspace-grid[b-ubi5nhxrf8]{grid-template-columns:1fr}.source-link[b-ubi5nhxrf8]{width:100%;text-align:center}}
/* /Components/Shared/ModuleHub.razor.rz.scp.css */
/* Shared module hub landing — ProjectCTRL Design System.
   Renders the front door for every module; tokens from design-system.css. */

.module-hub[b-6elxfbzaxf] { display: block; }

.hub-heading[b-6elxfbzaxf] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--sp-6, 24px);
    margin-bottom: var(--sp-8, 32px);
}
.hub-title-block[b-6elxfbzaxf] { min-width: 0; }
.hub-eyebrow[b-6elxfbzaxf] {
    display: block;
    margin-bottom: .3rem;
    color: var(--brand-600, #7C3AED);
    font-size: var(--fs-eyebrow, .72rem);
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.hub-title-block h1[b-6elxfbzaxf] {
    margin: 0;
    color: var(--text, #0d1b2a);
    font-size: var(--fs-page, 2rem);
    font-weight: 700;
    letter-spacing: -.01em;
    line-height: 1.1;
}
.hub-title-block p[b-6elxfbzaxf] {
    margin: .5rem 0 0;
    color: var(--text-muted, #5f6b7a);
    font-size: var(--fs-body, .9375rem);
    max-width: 68ch;
}
.hub-actions[b-6elxfbzaxf] { flex: 0 0 auto; display: flex; gap: var(--sp-3, 12px); }

.hub-grid[b-6elxfbzaxf] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(272px, 1fr));
    gap: var(--sp-5, 20px);
}
.hub-card[b-6elxfbzaxf] {
    display: flex;
    min-height: 172px;
    flex-direction: column;
    align-items: stretch;
    padding: var(--card-pad, 24px);
    border: 1px solid var(--border, #dce6f2);
    border-radius: var(--radius, 10px);
    background: var(--surface, #fff);
    color: var(--text, #0d1b2a);
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    box-shadow: var(--shadow-sm);
    transition: border-color var(--transition, .15s ease), box-shadow var(--transition, .15s ease);
}
.hub-card:hover[b-6elxfbzaxf] {
    border-color: var(--brand-300, #A78BFA);
    box-shadow: var(--shadow-md);
}
.hub-card-icon[b-6elxfbzaxf] { min-height: 32px; color: var(--brand-600, #7C3AED); }
.hub-card-copy[b-6elxfbzaxf] { display: flex; flex: 1; flex-direction: column; gap: .4rem; }
.hub-card-copy strong[b-6elxfbzaxf] { font-size: var(--fs-card, 1.125rem); font-weight: 650; color: var(--text, #0d1b2a); }
.hub-card-copy span[b-6elxfbzaxf] { color: var(--text-muted, #5f6b7a); line-height: 1.5; font-size: var(--fs-body-sm, .875rem); }
.hub-card-foot[b-6elxfbzaxf] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-top: var(--sp-4, 16px);
    padding-top: var(--sp-3, 12px);
    border-top: 1px solid var(--border, #dce6f2);
    color: var(--brand-600, #7C3AED);
}
.hub-card-foot small[b-6elxfbzaxf] { font-weight: 700; font-size: var(--fs-table, .8125rem); }

@media (max-width: 640px) {
    .hub-heading[b-6elxfbzaxf] { flex-direction: column; gap: var(--sp-3, 12px); }
}
/* /Components/Shared/PageGuide.razor.rz.scp.css */
.pageguide[b-c2bu05lw5p] {
    position: fixed;
    right: 1.25rem;
    bottom: 1.25rem;
    z-index: 1200;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: .6rem;
    font-family: inherit;
}

.pageguide-fab[b-c2bu05lw5p] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .55rem .9rem;
    border: none;
    border-radius: 999px;
    background: #7C3AED;
    color: #fff;
    font-size: .85rem;
    font-weight: 600;
    letter-spacing: .02em;
    cursor: pointer;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .22);
    transition: background .15s ease, transform .15s ease;
}

.pageguide-fab:hover[b-c2bu05lw5p] { background: #6D28D9; transform: translateY(-1px); }
.pageguide-fab.open[b-c2bu05lw5p] { background: #6D28D9; }

.pageguide-fab-icon[b-c2bu05lw5p] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.15rem;
    height: 1.15rem;
    border-radius: 50%;
    background: rgba(255, 255, 255, .22);
    font-style: normal;
    font-weight: 700;
    line-height: 1;
}

.pageguide-panel[b-c2bu05lw5p] {
    width: min(24rem, calc(100vw - 2.5rem));
    max-height: min(70vh, 34rem);
    overflow-y: auto;
    background: #ffffff;
    color: #1f2b3a;
    border: 1px solid #dce6f2;
    border-radius: 14px;
    box-shadow: 0 16px 42px rgba(0, 0, 0, .28);
    padding: 1rem 1.15rem 1.15rem;
}

.pageguide-head[b-c2bu05lw5p] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: .5rem;
}

.pageguide-tag[b-c2bu05lw5p] {
    font-size: .65rem;
    font-weight: 700;
    letter-spacing: .12em;
    color: #7C3AED;
    background: #F4F6F9;
    padding: .2rem .5rem;
    border-radius: 6px;
}

.pageguide-close[b-c2bu05lw5p] {
    border: none;
    background: transparent;
    font-size: 1.35rem;
    line-height: 1;
    color: #5f6b7a;
    cursor: pointer;
    padding: 0 .15rem;
}
.pageguide-close:hover[b-c2bu05lw5p] { color: #1f2b3a; }

.pageguide-title[b-c2bu05lw5p] {
    margin: 0 0 .5rem;
    font-size: 1.15rem;
    font-weight: 700;
    color: #1f2b3a;
}

.pageguide-section[b-c2bu05lw5p] { margin-top: .85rem; }

.pageguide-section h4[b-c2bu05lw5p] {
    margin: 0 0 .3rem;
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #5f6b7a;
}

.pageguide-section p[b-c2bu05lw5p] { margin: 0; font-size: .9rem; line-height: 1.5; }

.pageguide-section ul[b-c2bu05lw5p] {
    margin: 0;
    padding-left: 1.1rem;
    display: flex;
    flex-direction: column;
    gap: .3rem;
}

.pageguide-section li[b-c2bu05lw5p] { font-size: .9rem; line-height: 1.45; }

.pageguide-foot[b-c2bu05lw5p] {
    margin: 1rem 0 0;
    padding-top: .6rem;
    border-top: 1px dashed #dce6f2;
    font-size: .72rem;
    font-style: italic;
    color: #5f6b7a;
}

@media (prefers-color-scheme: dark) {
    .pageguide-panel[b-c2bu05lw5p] {
        background: #1e2430;
        color: #F4F6F9;
        border-color: #343f4c;
    }
    .pageguide-title[b-c2bu05lw5p] { color: #F4F6F9; }
    .pageguide-tag[b-c2bu05lw5p] { color: #A78BFA; background: #1f2836; }
    .pageguide-close[b-c2bu05lw5p] { color: #9aa5b8; }
    .pageguide-close:hover[b-c2bu05lw5p] { color: #F4F6F9; }
    .pageguide-section h4[b-c2bu05lw5p] { color: #9aa5b8; }
    .pageguide-foot[b-c2bu05lw5p] { border-top-color: #343f4c; color: #5f6b7a; }
}
/* /Components/Shared/ProjectContextBanner.razor.rz.scp.css */
.project-context-banner[b-v8lq389cqi]{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1.25rem;padding:.9rem 1.1rem;border:1px solid #dce6f2;border-left:4px solid #7C3AED;border-radius:10px;background:#fff;box-shadow:0 5px 18px rgba(11,20,38,.06)}
.project-context-banner strong[b-v8lq389cqi]{display:block;font-size:1rem;color:#1f2b3a}.project-context-banner p[b-v8lq389cqi]{margin:.2rem 0 0;color:#5f6b7a;font-size:.88rem}.context-label[b-v8lq389cqi]{display:block;margin-bottom:.2rem;font-size:.7rem;font-weight:800;letter-spacing:.12em;color:#7C3AED}.project-context-banner a[b-v8lq389cqi]{white-space:nowrap;color:#7C3AED;font-weight:700;text-decoration:none}.project-context-missing[b-v8lq389cqi]{border-left-color:#c58b2b;background:#fffaf0}.project-context-missing .context-label[b-v8lq389cqi]{color:#a36e16}@media(max-width:760px){.project-context-banner[b-v8lq389cqi]{align-items:flex-start;flex-direction:column}.project-context-banner a[b-v8lq389cqi]{white-space:normal}}
