:root { --tc-register-row-height: 44px; }

body.tc-app-body .tc-station-consumption-page .tc-pack-hero h1,
body.tc-app-body .tc-station-consumption-page .tc-pack-hero-main h1,
body.tc-app-body .tc-station-consumption-page .tc-pack-hero .tc-command-kicker,
body.tc-app-body .tc-station-consumption-page .tc-pack-hero-main p,
body.tc-app-body .tc-station-consumption-page .tc-pack-hero .tc-pack-tags span { color: #fff; }

/* Semantic contrast rules: utility-class ordering must never create white text on a white card. */
body.tc-app-body .card-header.tc-card-header-accent,
body.tc-app-body .card-header.bg-primary.text-white,
body.tc-app-body .card-header.bg-primary .text-white {
    color: #f4fbff;
    border-bottom-color: rgba(255, 255, 255, .12);
    background: linear-gradient(135deg, #0b2c43 0%, #087f91 100%);
}
body.tc-app-body .card-header.tc-card-header-accent *,
body.tc-app-body .card-header.bg-primary.text-white *,
body.tc-app-body .card-header.bg-primary .text-white { color: inherit; }
body.tc-app-body .card-header:not(.tc-card-header-accent):not(.bg-primary),
body.tc-app-body .card-header:not(.tc-card-header-accent):not(.bg-primary) h1,
body.tc-app-body .card-header:not(.tc-card-header-accent):not(.bg-primary) h2,
body.tc-app-body .card-header:not(.tc-card-header-accent):not(.bg-primary) h3,
body.tc-app-body .card-header:not(.tc-card-header-accent):not(.bg-primary) h4,
body.tc-app-body .card-header:not(.tc-card-header-accent):not(.bg-primary) h5,
body.tc-app-body .card-header:not(.tc-card-header-accent):not(.bg-primary) h6 { color: #172c41; }

body.tc-app-body .tc-station-workspace .tc-station-page-heading,
body.tc-app-body .tc-station-workspace .tc-legacy-head {
    color: #10243a;
    background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(239,250,252,.96));
}
body.tc-app-body .tc-station-workspace .tc-station-page-heading h1,
body.tc-app-body .tc-station-workspace .tc-station-page-heading h2,
body.tc-app-body .tc-station-workspace .tc-legacy-head h1,
body.tc-app-body .tc-station-workspace .tc-legacy-head h2 { color: #10243a; }
body.tc-app-body .tc-station-workspace .card { min-width: 0; }
body.tc-app-body .tc-station-workspace .card .table-responsive { width: 100%; }
body.tc-app-body .tc-station-workspace table.table thead th,
body.tc-app-body .tc-station-workspace table.dataTable thead th {
    color: #eef9ff;
    background: #0b2c43;
}

body.tc-app-body .tc-dt-toolbar {
    display: flex; min-height: 52px; padding: 7px 10px; align-items: center;
    flex-wrap: nowrap; gap: 7px; overflow-x: auto; background: #fbfdfe; border-bottom: 1px solid #dce8ee;
}
body.tc-app-body .tc-dt-toolbar .dt-buttons { display: flex; gap: 5px; flex-wrap: nowrap; }
body.tc-app-body .tc-dt-toolbar .dataTables_filter { margin-left: auto; }
body.tc-app-body .tc-dt-toolbar label { display: flex; margin: 0; align-items: center; gap: 6px; white-space: nowrap; }
body.tc-app-body .tc-dt-toolbar input,
body.tc-app-body .tc-dt-toolbar select { min-height: 36px; height: 36px; margin: 0; border: 1px solid #cbdbe5; border-radius: 8px; background: #fff; }
body.tc-app-body .tc-table-commandbar {
    display: flex; width: 100%; min-height: 62px; padding: 8px 10px; align-items: flex-end;
    flex-direction: row; flex-wrap: nowrap; gap: 8px; overflow-x: auto; background: #f8fbfc; border-bottom: 1px solid #dce8ee;
}
body.tc-app-body .tc-table-commandbar__filters { display: flex; min-width: max-content; align-items: flex-end; flex-direction: row; gap: 7px; }
body.tc-app-body .tc-table-commandbar__filters > div { width: 152px; min-width: 152px; }
body.tc-app-body .tc-table-commandbar__filters label { display: block; margin: 0 0 4px; font-size: 9px; letter-spacing: .35px; text-transform: uppercase; }
body.tc-app-body .tc-table-commandbar .tc-finalpack-presets,
body.tc-app-body .tc-table-commandbar .tc-date-shortcuts { display: flex; min-width: max-content; margin: 0; align-items: center; flex-direction: row; flex-wrap: nowrap; gap: 5px; }
body.tc-app-body .tc-table-commandbar > .tc-dt-toolbar { width: auto; min-width: max-content; min-height: 40px; margin-left: auto; padding: 0; overflow: visible; border: 0; background: transparent; }
body.tc-app-body .tc-table-commandbar + .dataTables_wrapper > .tc-dt-toolbar { display: none; }
body.tc-app-body table.dataTable tbody tr { height: var(--tc-register-row-height); }
body.tc-app-body table.dataTable tbody td { vertical-align: middle; }
body.tc-app-body .tc-table-load-error { margin: 8px; }
body.tc-app-body .tc-page-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; }
body.tc-app-body .tc-finalpack-register .tc-table-commandbar { align-items: flex-end; }
body.tc-app-body .tc-finalpack-register .tc-finalpack-presets { align-self: flex-end; }
body.tc-app-body .tc-finalpack-register .dataTables_scrollBody { min-height: calc(25 * var(--tc-register-row-height)); }
body.tc-app-body .tc-finalpack-register .tc-row-actions .dropdown-menu { z-index: 1080; min-width: 190px; }
body.tc-app-body .tc-finalpack-register .tc-material-type { display: inline-flex; min-width: 116px; padding: 6px 8px; flex-direction: column; border: 1px solid #d9e6ec; border-radius: 9px; }
body.tc-app-body .tc-finalpack-register .tc-material-type strong,
body.tc-app-body .tc-finalpack-register .tc-material-type small { display: block; }
body.tc-app-body .tc-finalpack-register .tc-material-type small { margin-top: 2px; color: #687f92; font-size: 9px; }
body.tc-app-body .tc-finalpack-register .tc-material-type.is-iot { border-color: #9ce8dc; background: #ecfcf8; }
body.tc-app-body .tc-finalpack-register .tc-material-type.is-standard { background: #f7fafc; }
body.tc-app-body .tc-finalpack-register .tc-pack-identity strong,
body.tc-app-body .tc-finalpack-register .tc-pack-identity small { display: block; white-space: nowrap; }
body.tc-app-body .tc-finalpack-register .tc-pack-identity small { margin-top: 2px; color: #738699; font-size: 9px; }

.tc-iteration-chips { display: grid; padding: 14px; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap: 9px; }
.tc-iteration-chips span { display: flex; padding: 10px 12px; flex-direction: column; border: 1px solid #d7e5ec; border-radius: 11px; background: #f8fbfc; }
.tc-iteration-chips small { margin-top: 3px; color: #64798b; }

/* Premium inward workspace: one visual language across register, form, detail and IQC. */
body.tc-app-body .tc-inward-page { --tc-inward-accent: #00a7c4; }
body.tc-app-body .tc-inward-hero { position: relative; overflow: hidden; }
body.tc-app-body .tc-inward-detail .tc-inward-hero {
    background: radial-gradient(circle at 88% 8%, rgba(43,211,229,.18), transparent 28%), linear-gradient(135deg,#071f33 0%,#0b3b52 62%,#087f91 100%);
}
body.tc-app-body .tc-inward-detail .tc-inward-hero h1,
body.tc-app-body .tc-inward-detail .tc-inward-hero p,
body.tc-app-body .tc-inward-detail .tc-inward-hero .tc-eyebrow,
body.tc-app-body .tc-inward-detail .tc-inward-hero .tc-pack-tags span { color: #f4fbff; }
body.tc-app-body .tc-inward-metrics { grid-template-columns: repeat(4,minmax(0,1fr)); }
body.tc-app-body .tc-inward-detail-grid > div { min-height: 72px; padding: 12px 14px; }
body.tc-app-body .tc-inward-detail-grid > div > small { margin-top: 4px; color: #718397; font-size: 10px; }
body.tc-app-body .tc-inward-line-list,
body.tc-app-body .tc-inward-iqc-lines { display: grid; padding: 12px; gap: 9px; }
body.tc-app-body .tc-inward-line,
body.tc-app-body .tc-inward-iqc-line {
    display: grid; min-width: 0; padding: 11px; align-items: end;
    grid-template-columns: minmax(220px,2fr) repeat(3,minmax(130px,.8fr)) 42px;
    gap: 9px; border: 1px solid #d9e6ec; border-radius: 13px; background: linear-gradient(145deg,#fff,#f5fafc);
    box-shadow: 0 7px 18px rgba(25,57,79,.045);
}
body.tc-app-body .tc-inward-iqc-line { grid-template-columns: minmax(240px,1.7fr) minmax(100px,.45fr) minmax(150px,.7fr) minmax(240px,1fr); }
body.tc-app-body .tc-inward-line label,
body.tc-app-body .tc-inward-iqc-line label,
body.tc-app-body .tc-inward-iqc-line span,
body.tc-app-body .tc-inward-line__product span { display: block; margin-bottom: 4px; color: #6b7f91; font-size: 9px; font-weight: 750; letter-spacing: .35px; text-transform: uppercase; }
body.tc-app-body .tc-inward-line__product strong,
body.tc-app-body .tc-inward-iqc-product strong,
body.tc-app-body .tc-inward-iqc-line > div > strong { display: block; color: #142b3f; font-size: 13px; }
body.tc-app-body .tc-inward-line__product small,
body.tc-app-body .tc-inward-iqc-product small,
body.tc-app-body .tc-inward-iqc-line > div > small { display: block; margin-top: 3px; color: #708497; font-size: 10px; }
body.tc-app-body .tc-inward-iqc-remarks { padding: 4px 12px 12px; }
body.tc-app-body .tc-inward-iqc .tc-form-command { padding: 12px; border-top: 1px solid #e0e9ee; }

@media (min-width: 768px) {
    body.tc-app-body .tc-fixed-25-rows .dataTables_scrollBody { min-height: calc(25 * var(--tc-register-row-height)); max-height: calc(25 * var(--tc-register-row-height)); }
}

@media (max-width: 767.98px) {
    body.tc-app-body .tc-dt-toolbar { width: max-content; min-width: 100%; }
    body.tc-app-body .tc-fixed-25-rows .dataTables_scrollBody { min-height: 0; max-height: none; }
    body.tc-app-body .tc-inward-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
    body.tc-app-body .tc-inward-line,
    body.tc-app-body .tc-inward-iqc-line { align-items: stretch; grid-template-columns: 1fr; }
    body.tc-app-body .tc-inward-line > .btn { width: 100%; }
    body.tc-app-body .tc-page-actions { width: 100%; }
    body.tc-app-body .tc-page-actions .btn:not(.btn-icon) { flex: 1 1 auto; }
    body.tc-app-body .tc-finalpack-register .dataTables_scrollBody { min-height: 0; }
}
