/* Shared workspace polish, kept separate from document-specific layouts. */
:root { --bg: #f3f5f7; --ink: #243342; --muted: #657384; --line: #d8e0e7; --head: #f4f7fa; }
.app-shell:not(.login-only):not(.scan-only) { height: 100dvh; }
.app-shell:not(.login-only):not(.scan-only) .main { height: 100dvh; }
.app-shell:not(.login-only):not(.scan-only) .content { padding: 22px 24px 40px; }
.panel { box-shadow: none; }
.panel-head { padding: 12px 16px; gap: 12px; flex-wrap: wrap; }
.panel-body { padding: 16px; }
.panel-head h2 { font-size: 15px; line-height: 1.5; }
.nav-subhead { font-size: 11px; color: #afbfcd; padding-top: 16px; padding-bottom: 7px; }
.nav-button { min-height: 38px; line-height: 1.5; }
.nav-button:focus-visible { outline-offset: -3px; }
.topbar { box-shadow: none; border-bottom-color: #d0dae3; }
.top-module-button { min-height: 50px; }
.table-scroll, .wide-table-wrap, .report-table-wrap { scrollbar-width: thin; scrollbar-color: #99abba #f1f4f7; }
.table-scroll::-webkit-scrollbar, .wide-table-wrap::-webkit-scrollbar, .report-table-wrap::-webkit-scrollbar, .main::-webkit-scrollbar { display: block; width: 8px; height: 8px; }
.main { scrollbar-width: thin; }
th { background: #eef3f7; color: #41556a; font-size: 12px; font-weight: 600; }
td { font-variant-numeric: tabular-nums; }
tbody tr:hover td { background-color: #f0f5f9; }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible, a:focus-visible { outline: 2px solid #2476a5; outline-offset: 2px; }
button:disabled { cursor: not-allowed; opacity: .5; }
button, input, select, textarea { letter-spacing: 0; }
.finance-purchase-filters select, .finance-purchase-filters input { border: 1px solid #bdcad5; border-radius: 4px; background: #fff; padding: 6px 9px; height: 36px; }
.finance-purchase-filters label { color: #526779; font-size: 12px; }
.finance-purchase-orders td { padding-top: 11px; padding-bottom: 11px; }
.finance-purchase-orders td:nth-child(3) { text-align: left; }
.finance-purchase-orders td:nth-child(4), .finance-purchase-orders td:nth-child(5), .finance-purchase-orders td:nth-child(6) { text-align: right; white-space: nowrap; }
.finance-purchase-orders table { min-width: 900px; }
.finance-purchase-link { font-weight: 600; text-underline-offset: 3px; }
.finance-purchase-pagination { color: var(--muted); }
.finance-purchase-pagination .mini { min-width: 34px; min-height: 34px; }
.paint-line-cards { align-items: start; grid-template-columns: repeat(auto-fit,minmax(min(100%,520px),1fr)); }
.paint-line-card { min-width: 0; background: #fff; }
.paint-line-head strong, .paint-line-summary { overflow-wrap: anywhere; }
.paint-line-summary { white-space: normal; }
.production-shift-card-head, .insole-shift-card-head { gap: 12px; }
.production-shift-card, .insole-shift-card { margin-top: 8px; }
.monthly-report-summary { margin-bottom: 20px; }
.monthly-report-summary .report-kpi { background: #f8fafb; border-color: #e0e6eb; }
.monthly-material-usage td:first-child { text-align: left; }
.monthly-material-usage td:nth-child(2) { text-align: right; font-variant-numeric: tabular-nums; }
.monthly-machine-summary td:first-child { text-align: left; }
.monthly-machine-summary td:nth-child(3), .monthly-machine-summary td:nth-child(4) { text-align: right; }
.modal-card { max-height: calc(100dvh - 40px); }
.modal-head { gap: 12px; }
.modal-head h2 { overflow-wrap: anywhere; min-width: 0; }
.modal-head .icon-button { flex: 0 0 32px; width: 32px; height: 32px; }
.workspace-nav-toggle, .workspace-nav-close, .workspace-nav-backdrop { display: none; }
@media (max-width: 1200px) and (min-width: 981px) {
  .topbar { flex-wrap: wrap; gap: 0 16px; }
  .top-module-nav { order: 3; flex: 1 0 100%; min-height: 40px; }
  .top-module-button { min-height: 40px; }
  .topbar-title, .user-box { min-height: 50px; }
}
@media (max-width: 980px) {
  body { overflow: hidden; }
  .app-shell:not(.login-only):not(.scan-only) { display: grid; grid-template-columns: minmax(0,1fr); overflow: hidden; }
  .app-shell:not(.login-only):not(.scan-only) .main { overflow-y: auto; min-width: 0; }
  .app-shell:not(.login-only):not(.scan-only) .content { padding: 16px 12px 28px; }
  .app-shell:not(.login-only):not(.scan-only) .sidebar { position: fixed; inset: 0 auto 0 0; width: min(300px,85vw); height: 100dvh; overflow-y: auto; z-index: 42; transform: translateX(-100%); visibility: hidden; }
  .workspace-nav-open .app-shell:not(.login-only):not(.scan-only) .sidebar { transform: translateX(0); visibility: visible; transition: transform 160ms ease; }
  #nav { display: block; }
  .current-nav-group { display: block; }
  .brand { padding-right: 46px; }
  .workspace-nav-toggle, .workspace-nav-close { display: inline-grid; place-items: center; border: 1px solid #c3cfda; border-radius: 4px; width: 38px; height: 38px; padding: 0; font-size: 22px; background: #fff; color: #294963; cursor: pointer; flex: 0 0 38px; }
  .workspace-nav-close { position: absolute; right: 10px; top: 12px; background: transparent; color: #fff; border-color: #60798d; }
  .workspace-nav-backdrop:not([hidden]) { display: block; position: fixed; inset: 0; border: 0; background: rgb(19 32 43 / 45%); z-index: 41; cursor: default; }
  .topbar { display: flex; flex-flow: row wrap; align-items: center; gap: 8px 12px; padding: 10px 12px 0; }
  .topbar-title { flex: 1 1 180px; }
  .topbar-title h1 { overflow-wrap: anywhere; font-size: 16px; }
  .user-box { flex: 0 1 auto; flex-wrap: wrap; gap: 8px; }
  .top-module-nav { order: 3; display: flex; flex: 1 0 100%; flex-wrap: nowrap; overflow-x: auto; align-self: stretch; min-height: 42px; }
  .top-module-button { flex: 0 0 auto; min-height: 42px; padding: 8px 12px; }
  .panel-head, .panel-body { padding: 12px; }
  .panel-head .action-row { flex-wrap: wrap; }
  .modal { padding: 12px; }
  .modal-card, .modal-card.sheet { width: 100%; max-width: 100%; max-height: calc(100dvh - 24px); }
  .form-grid > * { min-width: 0; }
}
@media (max-width: 600px) {
  .user-box { width: 100%; justify-content: flex-end; }
  .cloud-save-status { margin-right: auto; }
  .panel-head { align-items: flex-start; }
  .field input, .field select, .field textarea, .finance-purchase-filters input, .finance-purchase-filters select { min-height: 40px; }
  .finance-purchase-filters { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .finance-purchase-filters label:last-child { grid-column: 1 / -1; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
/* Finance filters keep record lookup separate from transaction actions. */
.finance-payment-filters { display:grid; grid-template-columns:180px minmax(180px,1fr) auto auto; gap:12px; align-items:end; margin-bottom:20px; }
.finance-payment-filters label { display:grid; gap:6px; min-width:0; color:#516577; font-size:12px; }
.finance-payment-filters input,.finance-payment-filters select { width:100%; min-width:0; min-height:38px; border:1px solid #bccbd6; border-radius:4px; background:#fff; padding:8px 10px; }
.finance-payment-count { align-self:center; padding-top:18px; color:#516577; font-variant-numeric:tabular-nums; white-space:nowrap; }
.finance-payment-table td { padding:12px 10px; }
.finance-payment-table td:nth-child(3) { text-align:left; }
.finance-payment-table.is-payment td:nth-child(8),.finance-payment-table.is-payment td:nth-child(9),.finance-payment-table.is-payment td:nth-child(10),
.finance-payment-table.is-receipt td:nth-child(7),.finance-payment-table.is-receipt td:nth-child(8),.finance-payment-table.is-receipt td:nth-child(9) { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.payment-month-panel .subpanel-head { flex-wrap:wrap; gap:10px; padding:12px; }
.payment-month-panel .fold-toggle { position:static; flex:0 0 30px; min-height:30px; }
.payment-month-panel .subpanel-head strong { margin-right:auto; }
@media(max-width:600px) {
  .finance-payment-filters { grid-template-columns:minmax(0,1fr) auto; }
  .finance-payment-filters label { grid-column:1/-1; }
  .finance-payment-count { padding-top:0; }
}
/* Finance registers keep searchable identity and numeric columns legible. */
.finance-list-filters { display:grid; grid-template-columns:150px 170px minmax(180px,1fr) auto auto; align-items:end; gap:12px; margin-bottom:18px; }
.finance-list-filters label { display:grid; gap:6px; min-width:0; font-size:12px; color:#516577; }
.finance-list-filters input,.finance-list-filters select { min-width:0; width:100%; min-height:38px; padding:8px 10px; background:#fff; border:1px solid #bccbd6; border-radius:4px; }
.finance-list-count { padding-bottom:10px; color:#516577; white-space:nowrap; font-variant-numeric:tabular-nums; }
.finance-reimbursements table { min-width:1400px; }
.finance-reimbursements td:nth-child(5),.finance-reimbursements td:nth-child(13) { min-width:200px; max-width:300px; text-align:left; overflow-wrap:anywhere; white-space:normal; }
.finance-reimbursements td:nth-child(6) { text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
.finance-sales-invoices table { min-width:2200px; }
.finance-sales-invoices td:nth-child(n+8):nth-child(-n+16) { text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
[data-entity-list="paymentObjects"] table { min-width:1600px; }
[data-entity-list="paymentObjects"] td:nth-child(2),[data-entity-list="paymentObjects"] td:nth-child(9),[data-entity-list="paymentObjects"] td:nth-child(10) { min-width:180px; max-width:280px; white-space:normal; overflow-wrap:anywhere; text-align:left; }
[data-entity-list="paymentObjects"] td:nth-child(8) { white-space:nowrap; font-variant-numeric:tabular-nums; }
@media(max-width:980px) {
  .finance-list-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .finance-list-filters label:nth-child(3) { grid-column:1/-1; }
}
/* Reports: exact values remain readable alongside the visual summaries. */
.report-dashboard .report-kpis { grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr)); }
.report-dashboard .kpi { min-width:0; }
.report-dashboard .kpi strong { font-size:20px; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.report-grid { align-items:start; }
.report-grid > .panel { min-width:0; }
.report-grid .aging-pie-center { box-shadow:none; }
.report-grid .aging-pie-center strong { font-size:12px; overflow-wrap:anywhere; max-width:100%; }
.report-grid .aging-chart-row { grid-template-columns:85px minmax(40px,1fr) minmax(120px,auto); }
.report-grid .aging-chart-fill { padding:0; border:0; border-radius:0; min-width:0; }
.report-grid .mini-column-bars i { min-height:0; }
.finance-trend-values { margin-top:18px; }
.finance-trend-values table { min-width:340px; }
.finance-trend-values td:not(:first-child) { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.lamination-month-summary > h3 { margin:26px 0 12px; font-size:14px; }
.lamination-month-summary .monthly-machine-summary table { min-width:720px; }
.lamination-month-summary .monthly-machine-summary td:last-child { text-align:left; line-height:1.8; }
.monthly-daily-details > summary { padding:14px 0; min-height:44px; cursor:pointer; }
.monthly-daily-details[open] > summary { margin-bottom:10px; border-bottom:1px solid #d5dfe6; }
@media(max-width:600px) {
  .report-dashboard .report-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .report-dashboard .kpi { padding:12px; }
  .report-dashboard .kpi strong { font-size:17px; }
  .report-grid .aging-pie-wrap { grid-template-columns:minmax(0,1fr); justify-items:center; }
  .report-grid .aging-pie-legend { width:100%; }
  .report-grid .aging-chart-row { grid-template-columns:70px minmax(0,1fr); }
  .report-grid .aging-chart-row strong { grid-column:2; overflow-wrap:anywhere; }
  .report-grid .mini-column-chart { gap:6px; }
}
/* Production calendar retains seven aligned day columns on narrow screens. */
.schedule-cal-scroll { overflow-x:auto; scrollbar-width:thin; scrollbar-color:#99aab8 #edf1f4; }
.schedule-cal-scroll::-webkit-scrollbar { display:block; height:9px; }
.schedule-cal-scroll::-webkit-scrollbar-thumb { background:#99aab8; border-radius:4px; }
.schedule-cal-weekdays,.schedule-cal-grid { min-width:630px; }
.schedule-cal-toolbar { flex-wrap:wrap; gap:10px; }
.schedule-cal-toolbar strong { overflow-wrap:anywhere; }
.schedule-date-button { display:inline-grid; place-items:center; width:32px; height:32px; border:0; border-radius:4px; color:inherit; background:transparent; font:inherit; font-weight:600; cursor:pointer; }
.schedule-date-button:hover { background:#e4edf4; }
.schedule-date-button[aria-pressed="true"] { background:#1f527c; color:#fff; }
.schedule-cal-day { min-width:0; }
.schedule-chip strong { overflow-wrap:anywhere; white-space:normal; }
.paint-line-head > .compact-field { min-width:0; }
.paint-line-head input { width:100%; min-width:0; }
@media(max-width:640px) {
  .paint-line-head { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:12px; }
  .paint-line-head > strong { grid-column:1/-1; }
  .paint-line-head > .compact-field { grid-column:1/-1; }
  .paint-line-head .fold-toggle { position:static; }
  .paint-line-head.insole-machine-head { grid-template-columns:minmax(0,1fr) auto; }
  .production-shift-actions { gap:8px; }
}
/* Material entry and foam output have different field counts. */
.paint-material-row.foam-output-entry { grid-template-columns:minmax(72px,1fr) 58px minmax(72px,1fr) 40px auto; gap:8px; align-items:center; }
.foam-output-entry .paint-unit-pill { min-width:0; padding:6px; }
.paint-material-row > * { min-width:0; }
.paint-line-body .production-shift-actions { flex-wrap:wrap; }
.business-production .production-size-matrix th:first-child { position:sticky; left:0; z-index:1; background:#eef3f7; box-shadow:1px 0 #cbd6df; }
.business-production .production-size-matrix td { font-variant-numeric:tabular-nums; }
.business-production details > summary { min-height:36px; padding:8px 0; line-height:1.5; }
.business-production .production-process-variant { line-height:1.65; }
.business-production .production-lot { margin-bottom:8px; }
.business-production .production-review { padding:6px 8px; border-left:3px solid #bb6b23; background:#fff6eb; line-height:1.5; }
@media(max-width:640px) {
  .paint-material-row:has(> [data-paint-material-qty]),
  .paint-material-row:has(> [data-foam-material-qty]) { grid-template-columns:minmax(0,1fr) 80px auto; gap:10px; }
  .paint-material-row:has(> [data-paint-material-qty]) > :first-child,
  .paint-material-row:has(> [data-foam-material-qty]) > :first-child { grid-column:1/-1; }
  .paint-material-row.foam-output-entry { grid-template-columns:minmax(0,1fr) 58px; }
  .foam-output-entry > button { grid-column:1/-1; justify-self:end; }
}
/* Purchasing and warehouse register controls. */
.purchase-order-searchbar { display:flex; flex-wrap:wrap; align-items:end; gap:12px; margin-bottom:18px; }
.purchase-order-searchbar label { display:grid; gap:6px; flex:1 1 240px; color:#516577; font-size:12px; }
.purchase-order-searchbar input { width:100%; min-width:0; min-height:38px; padding:8px 10px; border:1px solid #bccbd6; border-radius:4px; background:white; }
.purchase-order-count { align-self:center; padding-top:18px; font-variant-numeric:tabular-nums; color:#516577; }
.purchase-order-register table { min-width:1250px; }
.purchase-order-register td:nth-child(3),.purchase-order-register td:nth-child(5),.purchase-order-register td:nth-child(6) { text-align:left; min-width:160px; max-width:300px; overflow-wrap:anywhere; }
.purchase-order-register td:nth-child(9) { text-align:right; font-variant-numeric:tabular-nums; }
.supplier-directory .toolbar,.supplier-directory .filters { flex-wrap:wrap; gap:12px; }
.supplier-directory [data-supplier-search] { flex:1 1 240px; min-width:0; min-height:38px; }
.supplier-directory table { min-width:1500px; }
.supplier-directory td:nth-child(1),.supplier-directory td:nth-child(9),.supplier-directory td:nth-child(10) { text-align:left; overflow-wrap:anywhere; }
.warehouse-inbound-document > .month-folder-head { flex-wrap:wrap; gap:12px; }
.warehouse-inbound-document > .month-folder-head > div:not(.action-row) { min-width:0; flex:1 1 180px; overflow-wrap:anywhere; }
.warehouse-inbound-document > .month-folder-head > .action-row { flex-wrap:wrap; gap:8px; }
@media(max-width:600px) {
  .purchase-order-searchbar label { flex-basis:100%; }
  .purchase-order-count { padding-top:0; }
  .warehouse-inbound-document > .month-folder-head > .action-row { width:100%; }
}
/* Warehouse searching is a view-only operation. */
.warehouse-searchbar { display:flex; flex-wrap:wrap; align-items:end; gap:12px; margin:12px 0 18px; }
.warehouse-searchbar label { display:grid; gap:6px; flex:1 1 260px; font-size:12px; color:#516577; }
.warehouse-searchbar input { min-width:0; width:100%; min-height:38px; padding:8px 10px; border:1px solid #bccbd6; border-radius:4px; background:#fff; }
.warehouse-result-count { align-self:center; padding-top:18px; font-variant-numeric:tabular-nums; color:#516577; }
.warehouse-outbound-register table { min-width:1350px; }
.warehouse-outbound-register td:nth-child(5),.warehouse-outbound-register td:nth-child(6),.warehouse-outbound-register td:nth-child(8),.warehouse-outbound-register td:nth-child(13) { text-align:left; min-width:150px; max-width:260px; overflow-wrap:anywhere; }
.warehouse-outbound-register td:nth-child(9) { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.warehouse-stock-register .table-scroll { max-width:100%; }
@media(max-width:600px) {
  .warehouse-searchbar label { flex-basis:100%; }
  .warehouse-result-count { padding-top:0; }
}
.warehouse-overview .flow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; }
.warehouse-overview .flow-step { min-width:0; min-height:0; padding:10px 14px; border:0; border-right:1px solid #d5dfe6; border-radius:0; background:transparent; box-shadow:none; }
.warehouse-overview .flow-step:last-child { border-right:0; }
.warehouse-overview .flow-step span { overflow-wrap:anywhere; }
@media(max-width:600px) {
  .warehouse-overview .flow { grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:12px; }
  .warehouse-overview .flow-step:nth-child(2n) { border-right:0; }
}
.operational-ledger .toolbar,.operational-ledger .filters { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.operational-ledger .filters { flex:1 1 300px; min-width:0; }
.operational-ledger [data-ledger-search] { flex:1 1 220px; min-width:0; min-height:38px; padding:8px 10px; border:1px solid #bccbd6; border-radius:4px; background:#fff; }
.ledger-result-count { color:#516577; font-variant-numeric:tabular-nums; white-space:nowrap; }
.operational-ledger table { min-width:850px; }
.operational-ledger .col-actions .action-row { flex-wrap:wrap; gap:8px; }
.sample-development-register .sample-tracking-head { align-items:start; gap:14px; flex-wrap:wrap; }
.sample-development-register .sample-record-identity { min-width:0; flex:1 1 220px; flex-wrap:wrap; gap:8px; }
.sample-development-register .sample-record-identity strong,.sample-development-register .sample-record-identity > span:not(.tag) { overflow-wrap:anywhere; white-space:normal; }
.sample-development-register .sample-supplier-title { flex-wrap:wrap; align-items:center; gap:12px; margin-top:20px; }
.sample-development-register .sample-tracking-record .table-scroll table { min-width:750px; }
@media(max-width:600px) {
  .operational-ledger .toolbar { flex-direction:row; align-items:center; }
  .operational-ledger .filters { flex:1 1 100%; flex-direction:row; align-content:start; }
  .operational-ledger [data-ledger-search] { flex-basis:100%; }
  .sample-development-register .sample-document-grid.two-columns { grid-template-columns:minmax(0,1fr); }
  .sample-development-register .sample-tracking-head > .action-row { width:100%; justify-content:flex-end; }
}
/* Shared monetary columns are comparable without changing their values. */
table tbody td.money-cell { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
.cost-accounting-page .tabs { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:18px; }
.cost-accounting-page .tab { white-space:normal; min-height:38px; }
.cost-accounting-page .cost-summary-strip { grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr)); gap:12px; }
.cost-accounting-page .cost-summary-strip > div { min-width:0; }
.cost-accounting-page .cost-summary-strip strong { font-size:20px; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.cost-accounting-page .cost-setting-panel { min-width:0; border-radius:0; box-shadow:none; }
.cost-accounting-page .subsection-head { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.cost-accounting-page .detail-list { overflow-wrap:anywhere; }
.cost-accounting-page .detail-list { gap:0; }
.cost-accounting-page .detail-row { border:0; border-bottom:1px solid #d5dfe6; border-radius:0; background:transparent; padding:12px 4px; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px; }
.cost-accounting-page .detail-row strong { text-align:right; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.cost-accounting-page .cost-setting-panel .table-scroll { max-width:100%; }
@media(max-width:768px) {
  .cost-accounting-page .cost-setting-grid { grid-template-columns:minmax(0,1fr); }
  .cost-accounting-page .cost-summary-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cost-accounting-page .cost-summary-strip strong { font-size:17px; }
}
.log-filter-panel { grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.log-filter-panel .log-search { grid-column:1/-1; }
.log-filter-panel label { min-width:0; }
.log-filter-panel select,.log-filter-panel input { width:100%; min-width:0; min-height:38px; }
.log-summary { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; margin:14px 0; }
.perm-grid .perm-group { min-width:0; }
.perm-grid .perm-row { gap:12px; padding:8px 0; border-bottom:1px solid #e0e7ec; }
.perm-grid .perm-row span { overflow-wrap:anywhere; }
.perm-grid .perm-row select { width:142px; max-width:55%; min-height:36px; }
@media(max-width:600px) {
  .log-filter-panel { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .perm-grid { grid-template-columns:minmax(0,1fr); }
}
.month-glue-options { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:12px; margin:18px 0; }
.month-glue-options label { display:flex; align-items:center; gap:8px; min-height:36px; }
.month-glue-options input { width:18px; height:18px; }
.monthly-material-ratios table { min-width:600px; }
.monthly-material-ratios td:not(:first-child) { text-align:right; font-variant-numeric:tabular-nums; }
#modalForm label:has(> input[name="rawIndex"]) { display:flex !important; align-items:center; gap:10px; padding:8px 0; }
#modalForm input[name="rawIndex"] { width:18px; height:18px; min-height:18px; flex:0 0 18px; margin:0; }
.insole-kk-document + .insole-kk-document { border-top:1px solid #d5dfe7; margin-top:24px; padding-top:20px; }
.insole-kk-document > h3 { margin:0 0 16px; font-size:16px; overflow-wrap:anywhere; }
.insole-kk-document > h3 small { font-size:12px; font-weight:400; margin-left:12px; }
.insole-kk-document .business-section { margin:0; padding:0 0 24px; }
.insole-kk-document h4 { margin:0 0 12px; font-size:14px; }
.insole-kk-source { text-align:center !important; vertical-align:middle !important; overflow-wrap:anywhere; }
.month-folder-head .kk-expiry-urgent { color:#b42318; font-weight:600; }
.flat-insole-table > table > thead input { display:block; width:100%; min-width:70px; margin-top:8px; font-weight:400; }
.flat-insole-table [hidden] { display:none !important; }
.flat-insole-table > table { table-layout:fixed; width:100%; min-width:1400px; }
.flat-insole-table > table > thead > tr > th:nth-child(1) { width:13%; }
.flat-insole-table > table > thead > tr > th:nth-child(2) { width:8%; }
.flat-insole-table > table > thead > tr > th:nth-child(3) { width:8%; }
.flat-insole-table > table > thead > tr > th:nth-child(4) { width:8%; }
.flat-insole-table > table > thead > tr > th:nth-child(5) { width:9%; }
.flat-insole-table > table > thead > tr > th:nth-child(6) { width:8%; }
.flat-insole-table > table > thead > tr > th:nth-child(7) { width:20%; }
.flat-insole-table > table > thead > tr > th:nth-child(8) { width:6%; }
.flat-insole-table > table > thead > tr > th:nth-child(9) { width:20%; }
.flat-insole-table > table > tbody > tr > td { overflow-wrap:anywhere; white-space:normal; }
.insole-monitoring-table > table { min-width:2780px; }
.insole-monitoring-table > table > thead > tr > th:nth-child(n) { width:130px; }
.insole-monitoring-table > table > thead > tr > th:nth-child(2) { width:180px; }
.insole-monitoring-table > table > thead > tr > th:nth-child(7),
.insole-monitoring-table > table > thead > tr > th:nth-child(9) { width:340px; }
.insole-monitoring-table > table > thead > tr > th:nth-child(8) { width:130px; }
.insole-monitoring-table > table > thead > tr > th:nth-child(n+16) { width:95px; }
.insole-monitoring-table:has([data-insole-fabric-header]) > table { width:1945px; min-width:1945px; }
.insole-monitoring-table:has([data-insole-fabric-header]) > table > thead > tr > th:nth-child(n) { width:110px; box-sizing:border-box; }
.insole-monitoring-table:has([data-insole-fabric-header]) > table > thead > tr > th:nth-child(1) { width:90px; }
.insole-monitoring-table:has([data-insole-fabric-header]) > table > thead > tr > th:nth-child(2) { width:145px; }
.insole-monitoring-table:has([data-insole-fabric-header]) > table > thead > tr > th:nth-child(4) { width:130px; }
.insole-monitoring-table:has([data-insole-fabric-header]) > table > thead > tr > th:nth-child(5),
.insole-monitoring-table:has([data-insole-fabric-header]) > table > thead > tr > th:nth-child(13) { width:100px; }
.insole-monitoring-table:has([data-insole-fabric-header]) > table > thead > tr > th:nth-child(6) { width:230px; }
.insole-monitoring-table:has([data-insole-fabric-header]) > table > thead > tr > th:nth-child(8) { width:250px; }
.insole-monitoring-table:has([data-insole-fabric-header]) > table > thead > tr > th:nth-child(14),
.insole-monitoring-table:has([data-insole-fabric-header]) > table > thead > tr > th:nth-child(16) { width:85px; }
.insole-monitoring-table:has([data-insole-fabric-header]) > table > thead > tr > th:nth-child(15) { width:70px; }
.insole-monitoring-table:has([data-insole-fabric-header]) > table > tbody > tr > td { padding-left:8px; padding-right:8px; }
.insole-monitoring-table > table > tbody > tr > td { padding:10px; vertical-align:middle; line-height:1.5; }
.insole-monitoring-table td:nth-child(17) { text-align:right; font-variant-numeric:tabular-nums; }
.insole-monitoring-table td[rowspan] { background:#f4f7f9; }
.production-insole-orders .insole-monitoring-table td:nth-child(n+11):nth-child(-n+15) { text-align:center; vertical-align:middle; }
.production-insole-summary table { table-layout:fixed; min-width:1700px; width:100%; }
.production-lot-search { display:flex; justify-content:flex-end; margin:8px 0; }
.insole-stage { margin:0; border-top:1px solid #cbd8e4; }
.insole-stage h3 { margin:0; font-size:14px; }
.insole-stage > .panel-head { padding:10px 12px; display:flex; justify-content:space-between; align-items:center; }
.insole-stage td { white-space:normal; overflow-wrap:anywhere; }
.insole-lamination-summary table { table-layout:fixed; width:100%; min-width:850px; }
.insole-lamination-summary .stage-code { width:8%; }
.insole-lamination-summary .stage-fabric { width:24%; }
.insole-lamination-summary .stage-process { width:28%; }
.insole-lamination-summary .stage-glue, .insole-lamination-summary .stage-eva, .insole-lamination-summary .stage-quantity { width:10%; }
.insole-lamination-summary td { white-space:normal !important; overflow-wrap:anywhere; padding:12px; line-height:1.65; vertical-align:middle; }
.insole-lamination-summary td:nth-child(4), .insole-lamination-summary td:nth-child(5), .insole-lamination-summary td:nth-child(6) { text-align:center; }
.insole-combine-editor { grid-column:1 / -1; min-width:0; padding:12px; }
.insole-combine-editor p { margin:0 0 10px; }
.insole-combine-editor [data-combine-totals] { padding-top:12px; font-weight:600; }
.insole-combine-editor label { display:flex; gap:6px; align-items:flex-start; line-height:1.6; }
.insole-combine-editor table { width:100%; table-layout:fixed; }
.insole-combine-editor th:first-child { width:40px; }
.insole-combine-editor input[type=number] { width:130px; max-width:75%; }
.insole-combine-editor input[type=checkbox] { width:16px; height:16px; }
.insole-combine-process { overflow-wrap:anywhere; max-height:130px; overflow:auto; }
.production-lot-search { gap:12px; flex-wrap:wrap; }
.insole-cutting-summary table { min-width:760px !important; width:100% !important; }
.insole-cutting-summary th, .insole-cutting-summary td { width:auto !important; min-width:0 !important; }
.insole-cutting-summary th:first-child, .insole-cutting-summary td:first-child { width:34% !important; }
.production-lot-search input { width:320px; max-width:100%; }
.production-lot-rta { display:flex; align-items:center; gap:8px; margin-left:auto; }
.production-lot-rta input { width:145px; }
.production-insole-summary th { width:110px; }
.production-insole-summary th:nth-child(1), .production-insole-summary th:nth-child(3) { width:85px; }
.production-insole-summary th:nth-child(2), .production-insole-summary th:nth-child(4) { width:320px; }
.production-insole-summary > table > tbody > tr > td { vertical-align:middle; white-space:normal; overflow-wrap:anywhere; word-break:normal; line-height:1.5; padding:10px; }
.production-insole-summary td:nth-child(n+5) { text-align:center; }
.production-insole-summary summary { cursor:pointer; color:#24557a; white-space:nowrap; padding:6px 0; }
.production-size-list { min-width:110px; padding-top:6px; }
.production-size-list > div { display:flex; justify-content:space-between; gap:12px; padding:5px 0; border-bottom:1px solid #d6e0e8; }
.production-insole-orders .month-folder-head > div > span + span { margin-left:12px; }
.production-insole-orders .insole-monitoring-table > table > thead > tr > th:nth-child(6),
.production-insole-orders .insole-monitoring-table > table > thead > tr > th:nth-child(8) { width:85px; }
.production-insole-orders .insole-monitoring-table th:nth-child(6) input,
.production-insole-orders .insole-monitoring-table th:nth-child(8) input { min-width:0; width:100%; box-sizing:border-box; }
.production-insole-orders .insole-monitoring-table tr > :nth-child(1),
.production-insole-orders .insole-monitoring-table tr > :nth-child(10),
.production-insole-orders .insole-monitoring-table tr > :nth-child(3),
.production-insole-orders .insole-monitoring-table tr > :nth-child(2),
.production-insole-orders .insole-monitoring-table tr > :nth-child(4),
.production-insole-orders .insole-monitoring-table tr > :nth-child(5) { display:none; }
.insole-monitoring-table > table > thead > tr > th:first-child,
.insole-monitoring-table > table > tbody > tr > td:first-child:not([colspan]) { position:sticky; left:0; z-index:3; background:#fff; background-clip:border-box; border-right:2px solid #a7bdd2; text-align:center; font-weight:600; }
.insole-monitoring-table { max-height:var(--insole-table-height, 70vh); overflow:auto; contain:paint; isolation:isolate; scroll-behavior:auto; }
.insole-monitoring-table > table > thead > tr > th { position:sticky; top:0; z-index:4; background:#edf3f7; }
.insole-monitoring-table > table { border-collapse:separate; border-spacing:0; }
.insole-monitoring-table > table > thead > tr > th:first-child { background:#e8eff5; z-index:5; }
.insole-monitoring-table > table > tbody > tr > td:first-child > span { display:block; padding:8px 0; white-space:nowrap; }
.insole-monitoring-table td:nth-child(16) { white-space:nowrap; }
.insole-bulk-toolbar select, .insole-bulk-toolbar > input { min-height:32px; border:1px solid #a7bdd2; border-radius:3px; padding:5px 8px; background:#fff; color:inherit; }
.insole-monitoring-table input[type=checkbox], .insole-bulk-toolbar input[type=checkbox] { width:16px; height:16px; min-width:16px; margin:0; vertical-align:middle; }
.insole-bulk-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:12px; padding:12px 0 16px; }
.insole-bulk-toolbar label { display:flex; align-items:center; gap:6px; white-space:nowrap; }
#modalForm .full:has([data-sheet-lot]) { max-height:58vh; overflow:auto; padding:12px; }
#modalForm .full:has([data-sheet-lot]) h3 { margin:8px 0; font-size:14px; }
#modalForm .full:has([data-sheet-lot]) .table-scroll { margin-bottom:18px; }
.insole-bulk-toolbar select { width:140px; }
.insole-bulk-toolbar > input { width:260px; max-width:100%; }
.insole-bulk-toolbar [role=status] { flex-basis:100%; color:#38604c; }
.insole-raw-section { padding:8px 0 12px; border-bottom:1px solid #cbd5df; }
.insole-raw-line { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:6px 12px; margin-bottom:10px; }
.insole-raw-line small { grid-column:1 / -1; white-space:normal; overflow-wrap:anywhere; }
.insole-process-section { padding-top:12px; }
.insole-size-scroll { width:100%; max-width:540px; overflow-x:auto; }
.insole-size-scroll .lot-size-quantities { width:max-content; min-width:100%; }
.insole-size-scroll th,.insole-size-scroll td { min-width:76px; white-space:nowrap; text-align:center; }
.packing-detail-insole > .table-scroll > table { table-layout:fixed; width:100%; min-width:1260px; }
.packing-detail-insole th:nth-child(1) { width:95px; }
.packing-detail-insole th:nth-child(2) { width:360px; }
.packing-detail-insole th:nth-child(3) { width:90px; }
.packing-detail-insole th:nth-child(4) { width:65px; }
.packing-detail-insole th:nth-child(5) { width:125px; }
.packing-detail-insole th:nth-child(6) { width:60px; }
.packing-detail-insole th:nth-child(7) { width:80px; }
.packing-detail-insole th:nth-child(8) { width:100px; }
.packing-detail-insole th:nth-child(9) { width:140px; }
.packing-detail-insole th:nth-child(10) { width:145px; }
.packing-detail-insole td { vertical-align:top; padding:12px 10px; white-space:normal; overflow-wrap:anywhere; }
.packing-detail-insole td span { white-space:normal; overflow-wrap:anywhere; line-height:1.6; }
.packing-detail-insole td:nth-child(3),.packing-detail-insole td:nth-child(6) { text-align:right; font-variant-numeric:tabular-nums; }

/* Hide scrollbar chrome without changing overflow or scroll input behavior. */
html, body, body * { scrollbar-width:none !important; }
html::-webkit-scrollbar, body::-webkit-scrollbar, body *::-webkit-scrollbar { display:none !important; width:0 !important; height:0 !important; }
.top-scrollbar, .kk-table-top-scrollbar { display:none !important; }
.pl-fold-record { border-bottom:1px solid #cbd7e2; padding:0; }
.pl-fold-record .pl-inline-head { display:flex; align-items:center; gap:12px; padding:10px 12px; background:#f4f7fa; }
.pl-fold-toggle { display:flex; align-items:center; gap:12px; flex:1; min-width:0; padding:4px 0; border:0; background:transparent; color:inherit; text-align:left; box-shadow:none; }
.pl-fold-toggle:hover { background:#eaf0f5; }
.pl-fold-toggle > span:last-child { min-width:0; overflow-wrap:anywhere; }
.pl-fold-toggle small { display:block; margin-top:5px; font-weight:400; color:#597087; }
.pl-fold-chevron { display:grid; place-items:center; flex:0 0 26px; height:26px; border:1px solid #b8cbdc; border-radius:3px; background:white; }
.pl-fold-record .packing-detail { padding:12px 0; }
.pl-material-monitor table { table-layout:fixed; min-width:1700px; }
.pl-material-monitor th { width:110px; }
.pl-material-monitor th:nth-child(2) { width:340px; }
.pl-material-monitor th:nth-child(3),.pl-material-monitor th:nth-child(6) { width:220px; }
.pl-material-monitor td { vertical-align:top; white-space:normal; overflow-wrap:anywhere; line-height:1.6; }
.pl-material-monitor td:nth-child(4),.pl-material-monitor td:nth-child(5),.pl-material-monitor td:nth-child(9) { text-align:right; font-variant-numeric:tabular-nums; }
.pl-material-monitor summary { cursor:pointer; color:#205784; }
.pl-source-line { padding:8px 0; border-bottom:1px solid #dce4eb; }
.pl-source-line small,.pl-source-line span { display:block; }
