/* _content/CBS_Dashboard/Components/CMM/Pages/Spc/Spc.razor.rz.scp.css */
/* Picker row keeps the whole cascade on one compact line */
.spc-pickers[b-8583kwz1ta] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem;
}

/* ::deep on all three, because these classes are put on MudSelect components rather than on
   elements this component renders itself. Scoped CSS stamps its attribute only on the markup in
   this file, never on a child component's root element, so the plain selectors compiled to
   `.spc-pick[b-xxxx]` and matched nothing at all: every picker fell back to full width and the
   whole cascade stacked down the page instead of sitting on one line. The container above needs
   no ::deep, since that div really is part of this component. */
[b-8583kwz1ta] .spc-pick {
    width: 150px;
}

/* 128px, not 110px: "Max Records" is the longest label on a narrow picker and was rendering as
   "Max Recor...". The row still fits every picker on one line at desktop width. */
[b-8583kwz1ta] .spc-pick-narrow {
    width: 128px;
}

[b-8583kwz1ta] .spc-pick-wide {
    width: 250px;
}

.spc-page[b-8583kwz1ta]  .spc-controls {
    flex: 0 0 auto;
}

/* The pivot lives in a child component, so its rules reach through ::deep */
.spc-page[b-8583kwz1ta]  .spc-scroll {
    flex: 1 1 0;
    min-height: 240px;
    overflow: auto;
    max-height: none;
    border: 1px solid var(--mud-palette-lines-default);
    background: var(--mud-palette-surface);
}

.spc-page[b-8583kwz1ta]  table.spc-grid {
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
    width: max-content;
    font-size: .75rem;
}

/* Grid lines are drawn with inset shadows so frozen row offsets stay exact multiples of 22px */
.spc-page[b-8583kwz1ta]  .spc-grid td {
    height: 22px;
    line-height: 22px;
    padding: 0 4px;
    box-sizing: border-box;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    border: 0;
    box-shadow: inset -1px -1px 0 var(--mud-palette-lines-default);
    background: var(--mud-palette-surface);
    color: var(--mud-palette-text-primary);
}

/* Measured values line up digit for digit */
.spc-page[b-8583kwz1ta]  .spc-grid td.spc-num {
    font-family: ui-monospace, "Cascadia Mono", Consolas, "Courier New", monospace;
    font-variant-numeric: tabular-nums;
    text-align: right;
}

/* Spec rows stay pinned to the top; each row carries its own offset inline */
.spc-page[b-8583kwz1ta]  .spc-grid td.spc-head {
    position: sticky;
    z-index: 3;
    font-weight: 600;
    /* MudBlazor emits the -gray spelling; the fallback keeps the sticky row opaque regardless */
    background: var(--mud-palette-background-gray, #F5F7FA);
}

/* The row number and label columns stay pinned to the left */
.spc-page[b-8583kwz1ta]  .spc-grid td.spc-fixed {
    position: sticky;
    z-index: 2;
}

.spc-page[b-8583kwz1ta]  .spc-grid td.spc-head.spc-fixed {
    z-index: 4;
}

.spc-page[b-8583kwz1ta]  .spc-grid td.c-num {
    left: 0;
    width: 40px;
    text-align: right;
    cursor: pointer;
}

.spc-page[b-8583kwz1ta]  .spc-grid td.c-serial {
    left: 40px;
    width: 180px;
}

.spc-page[b-8583kwz1ta]  .spc-grid td.c-date {
    left: 220px;
    width: 84px;
}

.spc-page[b-8583kwz1ta]  .spc-grid td.c-time {
    left: 304px;
    width: 56px;
}

.spc-page[b-8583kwz1ta]  .spc-grid td.c-stat {
    left: 360px;
    width: 62px;
    font-weight: 600;
}

.spc-page[b-8583kwz1ta]  .spc-grid td.spc-data {
    width: 110px;
}

/* Char number cells toggle the column filter */
.spc-page[b-8583kwz1ta]  .spc-grid td.spc-charnum {
    cursor: pointer;
}

/* Data cell picked for the Edit Value action */
.spc-page[b-8583kwz1ta]  .spc-grid td.spc-sel {
    outline: 2px solid var(--mud-palette-primary);
    outline-offset: -2px;
}

/* Keep record identity pinned on phones, but let metadata scroll away so values remain reachable. */
@media (max-width: 599.98px) {
    .spc-page[b-8583kwz1ta]  .spc-grid td.spc-fixed:is(.c-date, .c-time, .c-stat) {
        left: auto;
        z-index: 0;
    }

    .spc-page[b-8583kwz1ta]  .spc-grid td.spc-head.spc-fixed:is(.c-date, .c-time, .c-stat) {
        z-index: 3;
    }
}
/* _content/CBS_Dashboard/Components/CMM/Pages/Summary/ReportSummary.razor.rz.scp.css */
/* Density refinements for the summary page.
   Everything load-bearing (row status colors, the recurring marker, the snippet tooltip
   and the print rules) is applied inline in the component, so the page still reads
   correctly wherever the scoped-CSS bundle is not linked from App.razor. */

.cmm-summary-fields[b-kx4juc0ntd] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(115px, 1fr));
    border-top: 1px solid var(--mud-palette-lines-default);
    border-left: 1px solid var(--mud-palette-lines-default);
}

.cmm-summary-field[b-kx4juc0ntd] {
    padding: 4px 8px;
    border-right: 1px solid var(--mud-palette-lines-default);
    border-bottom: 1px solid var(--mud-palette-lines-default);
    overflow-wrap: anywhere;
}

.cmm-summary[b-kx4juc0ntd]  .mud-table-cell {
    border-right: 1px solid var(--cmm-row-line, var(--mud-palette-lines-default));
    padding: 2px 8px;
    font-size: 0.8rem;
    line-height: 1.35;
}

/* Column headers stay on one line so the grid keeps its control-room proportions */
.cmm-summary[b-kx4juc0ntd]  .mud-table-head .mud-table-cell {
    font-weight: 600;
    white-space: nowrap;
}

/* Measured values line up column to column */
.cmm-summary[b-kx4juc0ntd]  .mud-table-body .mud-table-cell {
    font-variant-numeric: tabular-nums;
}

/* The five measurement columns read as numbers, so they align on their right edge */
.cmm-summary[b-kx4juc0ntd]  .mud-table-cell.cmm-num {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

/* Rows carry an inline status background, which beats MudBlazor's own hover tint,
   so hover feedback is done with the same brightness shift the reports board uses */
.cmm-summary[b-kx4juc0ntd]  .cmm-items-table tbody tr:hover td {
    filter: brightness(0.96);
}

/* Dense toolbar buttons: sentence case, tight padding */
.cmm-summary[b-kx4juc0ntd]  .mud-button-root {
    text-transform: none;
}

/* Note fields are read-only most of the time; keep them visually quiet */
.cmm-summary[b-kx4juc0ntd]  .mud-input.mud-input-outlined textarea {
    font-size: 0.82rem;
    line-height: 1.35;
}

/* Print: the WinForms summary always printed landscape. The inline style block in the
   component carries the same rule; this copy keeps the page landscape wherever the
   scoped bundle is linked but the inline block is stripped. */
@media print {
    @page {
        size: landscape;
        margin: 8mm;
    }
}
/* _content/CBS_Dashboard/Components/Shared/ProductionRecordsHeader.razor.rz.scp.css */
.records-tabs[b-rs1m6hple5] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
    border-bottom: 1px solid var(--mud-palette-lines-default);
}

.records-tabs[b-rs1m6hple5]  .records-tab {
    padding: 8px 16px;
    color: var(--mud-palette-text-secondary);
    border-bottom: 3px solid transparent;
}

.records-tabs[b-rs1m6hple5]  .records-tab.is-current {
    color: var(--mud-palette-primary);
    border-bottom-color: var(--mud-palette-primary);
}
