
#production-app{--p-bg:light-dark(#f3f5f8,#141a23);--p-paper:light-dark(#ffffff,#1b2430);--p-text:light-dark(#192b3b,#e9f0f6);--p-sub:light-dark(#566779,#adbdce);--p-line:light-dark(#dce4ec,#384759);--p-accent:light-dark(#125c9a,#86c8ff);--p-on:light-dark(#ffffff,#102433);--p-active:light-dark(#e8f2fc,#243e56);--p-yellow:light-dark(#fff3c6,#51451e);--p-green:light-dark(#dcf3e5,#1e4937);--p-red:light-dark(#9a2820,#ffb5a8);--p-pad:13px;color:var(--p-text);font:14px/1.5 'Segoe UI',Arial,sans-serif;background:var(--p-bg);border:1px solid var(--p-line);border-radius:16px;overflow:hidden;color-scheme:light dark}
#production-app *{box-sizing:border-box}#production-app h1{font:600 27px/1.2 'Segoe UI',sans-serif;margin:0 0 6px;letter-spacing:-.6px}#production-app h2{font:600 18px/1.3 'Segoe UI',sans-serif;margin:0 0 14px}#production-app h3{font:600 15px/1.4 'Segoe UI',sans-serif;margin:0 0 8px}#production-app p{margin:6px 0 14px}#production-app .muted{color:var(--p-sub)}#production-app .small{font-size:12px}#production-app .top{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:18px 22px;background:var(--p-paper);border-bottom:1px solid var(--p-line)}#production-app .brand{font-size:17px;font-weight:700;letter-spacing:.7px}#production-app .brand span{color:var(--p-sub);font-weight:400;letter-spacing:0}#production-app .demo{margin-left:auto;font-size:12px;color:var(--p-sub)}#production-app .shell{display:grid;grid-template-columns:168px minmax(0,1fr)}#production-app aside{padding:22px 12px;background:var(--p-paper);border-right:1px solid var(--p-line)}#production-app .group-label{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--p-sub);padding:0 10px;margin:0 0 10px}#production-app nav{display:flex;flex-direction:column;gap:5px}#production-app button,#production-app input,#production-app select,#production-app textarea{font:inherit}#production-app button{cursor:pointer;padding:9px 13px;border:1px solid var(--p-line);border-radius:8px;background:var(--p-paper);color:var(--p-text);min-height:38px}#production-app button:hover{background:var(--p-active)}#production-app button:disabled{cursor:default;opacity:.5}#production-app nav button{border:0;text-align:left;background:transparent;padding:10px;font-weight:500}#production-app nav button[aria-current=page]{background:var(--p-active);color:var(--p-accent)}#production-app button.primary{background:var(--p-accent);border-color:var(--p-accent);color:var(--p-on)}#production-app button.link{background:transparent;border:0;padding:0;color:var(--p-accent);min-height:28px;text-align:left}#production-app main{padding:27px;min-width:0}#production-app .heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:23px}#production-app .eyebrow{color:var(--p-accent);font-size:12px;font-weight:600;margin-bottom:8px}#production-app .row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}#production-app .space{justify-content:space-between}#production-app .cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}#production-app .panel{background:var(--p-paper);border:1px solid var(--p-line);border-radius:12px;padding:18px;margin-bottom:18px;min-width:0}#production-app .cards .panel{margin:0}#production-app .big{font-size:26px;font-weight:600;letter-spacing:-.8px;margin:4px 0}#production-app .big span{font-size:14px;font-weight:400;letter-spacing:0;color:var(--p-sub)}#production-app .track{height:6px;background:var(--p-bg);border-radius:5px;overflow:hidden;margin:9px 0}#production-app .track span{height:100%;background:var(--p-accent);display:block}#production-app .scroll{overflow-x:auto;max-width:100%}#production-app table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}#production-app th{font-weight:500;color:var(--p-sub);background:var(--p-bg);padding:11px 12px;white-space:nowrap}#production-app td{padding:var(--p-pad) 12px;border-bottom:1px solid var(--p-line);vertical-align:middle}#production-app td.num,#production-app th.num{text-align:right;font-variant-numeric:tabular-nums}#production-app tr:last-child td{border-bottom:0}#production-app .state{display:block;min-width:112px;border-radius:7px;padding:7px 10px;border:1px solid var(--p-line);background:var(--p-paper);font-variant-numeric:tabular-nums}#production-app .state small{display:block;font-size:11px;color:var(--p-sub)}#production-app .state.work{background:var(--p-yellow)}#production-app .state.done{background:var(--p-green)}#production-app .badge{display:inline-block;border-radius:5px;padding:3px 7px;background:var(--p-bg);font-size:12px;color:var(--p-sub)}#production-app .badge.work{background:var(--p-yellow);color:var(--p-text)}#production-app .badge.done{background:var(--p-green);color:var(--p-text)}#production-app .legend{display:flex;flex-wrap:wrap;gap:17px;color:var(--p-sub);font-size:12px;margin:16px 0}#production-app .dot{width:10px;height:10px;border-radius:3px;display:inline-block;margin-right:5px;border:1px solid var(--p-line);background:var(--p-paper)}#production-app .dot.yellow{background:var(--p-yellow)}#production-app .dot.green{background:var(--p-green)}#production-app label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--p-sub);min-width:0}#production-app input,#production-app select,#production-app textarea{background:var(--p-paper);color:var(--p-text);border:1px solid var(--p-line);border-radius:7px;padding:10px 11px;width:100%;min-width:0}#production-app input[type=number]{max-width:180px}#production-app .fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}#production-app .available{display:flex;gap:20px;flex-wrap:wrap;border-top:1px solid var(--p-line);border-bottom:1px solid var(--p-line);padding:14px 0;margin:16px 0}#production-app .available strong{display:block;font-size:19px}#production-app .error{color:var(--p-red);font-size:13px;margin:8px 0;min-height:20px}#production-app .message{border-left:3px solid var(--p-accent);padding:10px 13px;background:var(--p-active);margin:14px 0}#production-app .blank{padding:26px 0;color:var(--p-sub);text-align:center}#production-app .phone{max-width:390px;margin:auto;padding:16px;background:var(--p-bg);border:1px solid var(--p-line);border-radius:22px}#production-app .chat-head{padding:9px 7px 15px;border-bottom:1px solid var(--p-line);margin-bottom:15px;font-weight:600}#production-app .bubble{background:var(--p-paper);border:1px solid var(--p-line);padding:17px;border-radius:4px 16px 16px 16px;margin:12px 0}#production-app .phone button{width:100%;margin:4px 0}#production-app .print{background:var(--p-paper);padding:24px;border:1px solid var(--p-line);border-radius:3px}#production-app .print h2{text-align:center}#production-app .print th,#production-app .print td{padding:8px;border:1px solid var(--p-line);font-size:12px}#production-app .sign{display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;margin:16px 0 30px;font-size:12px}#production-app .foot{padding:12px 22px;color:var(--p-sub);font-size:11px;background:var(--p-paper);border-top:1px solid var(--p-line)}#production-app .mt{margin-top:20px}#production-app [hidden]{display:none!important}
@media(max-width:750px){#production-app .shell{grid-template-columns:1fr}#production-app aside{border-right:0;border-bottom:1px solid var(--p-line);padding:10px}#production-app nav{flex-direction:row;flex-wrap:wrap;gap:2px}#production-app nav button{padding:8px;font-size:12px}#production-app .group-label{display:none}#production-app main{padding:19px}#production-app .cards{gap:8px}#production-app .cards .panel{padding:12px}#production-app .big{font-size:22px}}
@media(max-width:450px){#production-app main{padding:14px}#production-app .cards,#production-app .fields{grid-template-columns:1fr}#production-app .top{padding:15px;gap:7px}#production-app .demo{margin-left:0;width:100%}#production-app h1{font-size:23px}#production-app .panel{padding:13px}#production-app button{min-height:44px}#production-app input,#production-app select,#production-app textarea{font-size:16px}#production-app .print{padding:10px}}
#production-app main{padding:20px}#production-app .heading{margin-bottom:16px}#production-app .order-grid td{padding:5px 9px}#production-app .order-grid th{padding:8px 9px}#production-app .order-grid .state{min-width:92px;padding:3px 7px;border-radius:4px;font-size:12px;white-space:nowrap}#production-app .order-grid .state small{display:none}#production-app .order-grid .link{min-height:24px}#production-app .order-grid .mark-name{white-space:nowrap}#production-app .filters{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:10px;margin:14px 0}#production-app .filters input,#production-app .filters select{padding:8px}#production-app .filter-totals{display:flex;gap:20px;flex-wrap:wrap;padding:12px 0;font-size:12px}#production-app .pager{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:12px}#production-app .pager label{flex-direction:row;align-items:center}#production-app .pager select{width:auto;padding:6px}#production-app .summary-line{display:flex;gap:24px;flex-wrap:wrap;margin:12px 0}#production-app .summary-line strong{font-size:17px;display:block}#production-app .filters .search-field{grid-column:span 2}@media(max-width:850px){#production-app .filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:450px){#production-app .filters{grid-template-columns:1fr}#production-app .filters .search-field{grid-column:auto}#production-app main{padding:14px}}@media(pointer:coarse){#production-app .order-grid .link{min-height:44px}}
#production-app .period-presets button[aria-pressed=true]{background:var(--p-active);border-color:var(--p-accent);color:var(--p-accent)}
#production-app .picker-trigger{display:flex;align-items:center;justify-content:space-between;text-align:left;width:100%;padding:12px;color:var(--p-text)}
#production-app .line-qty{width:95px!important;padding:7px!important}
#production-app .selection-summary{background:var(--p-active);color:var(--p-text);padding:10px 12px;display:flex;gap:14px;flex-wrap:wrap;align-items:center;border-radius:7px;margin:8px 0}
#production-app .selection-summary button{padding:4px 8px;min-height:28px;margin-left:auto}
#production-app .selection-hint{margin:10px 0}
#production-app .order-grid{max-width:100%}
#production-app .order-grid table{min-width:760px;font-size:12px;table-layout:fixed}
#production-app .order-grid td{padding:4px 6px}
#production-app .order-grid th{padding:7px 6px;white-space:normal}
#production-app .order-grid .group-head{text-align:center;border-bottom:1px solid var(--p-line)}
#production-app .order-grid input[type=checkbox],#production-app dialog input[type=checkbox]{width:17px;height:17px;margin:0;accent-color:var(--p-accent);cursor:pointer}
#production-app .order-grid .cell-value{border:0;background:transparent;border-radius:3px;min-height:24px;padding:2px 5px;width:100%;text-align:right;font-size:12px;user-select:none;touch-action:pan-y}
#production-app .order-grid .cell-value[aria-pressed=true]{background:var(--p-active);outline:2px solid var(--p-accent);outline-offset:-2px;color:var(--p-text)}
#production-app .order-grid .stage-work{background:var(--p-yellow)}
#production-app .order-grid .stage-done{background:var(--p-green)}
#production-app .order-grid .stage-new{background:var(--p-paper)}
#production-app .order-grid tfoot td,#production-app .order-grid tfoot th{background:var(--p-active);border-top:2px solid var(--p-line);padding:9px 6px}
#production-app .order-grid tfoot td{white-space:nowrap}
#production-app dialog{color:var(--p-text);background:var(--p-paper);border:1px solid var(--p-line);border-radius:14px;padding:24px;width:min(930px,calc(100% - 28px));max-height:90vh;overflow:auto;box-shadow:0 18px 75px #0004}
#production-app dialog::backdrop{background:#101c2b80}
#production-app dialog .modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:22px}
#production-app dialog h2{margin-bottom:5px}
#production-app .modal-filters{display:grid;grid-template-columns:2fr 1.2fr 1fr 1fr;gap:12px;margin-bottom:15px}
#production-app .modal-footer{border-top:1px solid var(--p-line);margin-top:18px;padding-top:15px}
#production-app .modal-footer .row{justify-content:flex-end}
#production-app dialog th{white-space:normal}
#production-app .fact-inline{padding:14px 4px}
#production-app .print th{white-space:normal}
#production-app .print td{overflow-wrap:anywhere}
#production-app .message-text{padding-top:10px;color:var(--p-red)}
@media(max-width:650px){#production-app .modal-filters{grid-template-columns:repeat(2,minmax(0,1fr))}#production-app dialog{padding:16px}#production-app .picker-table table{min-width:640px}#production-app .selection-summary strong{font-size:13px}}
@media(max-width:420px){#production-app .modal-filters{grid-template-columns:1fr}#production-app .selection-summary{gap:8px}#production-app dialog{padding:12px}}
@media(pointer:coarse){#production-app .order-grid .cell-value{min-height:44px}}

#production-app{color:var(--p-text)}
#production-app .fact-cell{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
#production-app .fact-cell input{background:var(--p-active);border-color:var(--p-accent);width:80px}
#production-app .fact-cell button{padding:7px}
#production-app .fact-cell button[hidden]{display:none}
#production-app .review-banner{background:var(--p-active);padding:14px;border-radius:8px;margin:12px 0}
#production-app .review-banner p{margin:6px 0}
#production-app .fact-date{max-width:210px}
#production-app .print td.paper-fact{min-width:75px;height:36px;background:white;color:black}
#production-app .print{color:black}
#production-app .request-grid input{width:85px}

#production-app .production-progress{height:7px;border:0;border-radius:5px;overflow:hidden;background:var(--p-bg);margin:10px 0 12px;min-width:65px}
#production-app .production-progress>span{display:block;height:100%;background:var(--p-accent)}
#production-app td .production-progress{margin:8px 0 3px}
html{color-scheme:light dark;background:light-dark(#f3f5f8,#141a23)}body{margin:0}
#production-app{min-height:100vh;border:0;border-radius:0}
#production-app a{color:var(--p-accent);text-decoration:none}#production-app a:hover{text-decoration:underline}
#production-app nav a{padding:10px;border-radius:8px;color:var(--p-text)}#production-app nav a[aria-current=page]{background:var(--p-active);color:var(--p-accent);font-weight:600}
#production-app .button{display:inline-block;padding:9px 13px;border:1px solid var(--p-line);border-radius:8px}
#production-app .shell{min-height:calc(100vh - 84px)}
#production-app.login-wrap{display:grid;place-items:center;padding:24px}#production-app.login-wrap .panel{width:min(430px,100%);padding:28px}
#production-app #toast:not(:empty){position:fixed;bottom:20px;right:20px;z-index:100;padding:16px 22px;max-width:calc(100vw - 40px);border:1px solid var(--p-accent);border-radius:10px;background:var(--p-paper);box-shadow:0 6px 30px #0003}
#production-app pre{white-space:pre-wrap;overflow-wrap:anywhere}#production-app .order-grid table{min-width:1070px;table-layout:auto}
#production-app .order-grid .cell-value{min-width:56px}#production-app .order-grid td:nth-child(1){width:32px}#production-app .order-grid td:nth-child(3){max-width:180px;overflow-wrap:anywhere}
#production-app input[type=checkbox]{width:18px;accent-color:var(--p-accent)}
#production-app :focus-visible{outline:2px solid var(--p-accent);outline-offset:2px}
@media(max-width:750px){#production-app .shell{min-height:0}#production-app nav a{padding:8px;font-size:13px}}

/* Keep document links and diff buttons aligned, including narrow screens. */
#production-app .history-actions{display:flex;align-items:center;gap:16px;justify-content:flex-start}
#production-app .history-actions a{min-width:72px;white-space:nowrap}
#production-app .history-actions button{flex:none;margin:0}

/* Reserve the same space before/during/after selection so the table never shifts. */
#production-app .order-grid #selection{height:88px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;overflow-anchor:none}
#production-app .order-grid .selection-copy{display:grid;grid-template-rows:20px 22px 20px;min-width:0;line-height:20px}
#production-app .order-grid .selection-copy>span{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#production-app .order-grid .selection-copy>strong{font-size:14px;white-space:nowrap;font-variant-numeric:tabular-nums}
#production-app .order-grid #selection button{margin:0;justify-self:end}
@media(max-width:650px){#production-app .order-grid #selection{height:128px;grid-template-columns:minmax(0,1fr);grid-template-rows:64px 32px;gap:8px}#production-app .order-grid #selection button{justify-self:start}}

#production-app .fact-table{table-layout:fixed;min-width:680px}
#production-app .fact-table th:nth-child(1){width:32%}
#production-app .fact-table th:nth-child(2){width:16%}
#production-app .fact-table th:nth-child(3){width:34%}
#production-app .fact-table th:nth-child(4){width:18%}
#production-app .fact-table td{overflow-wrap:anywhere}
#production-app .fact-cell{display:grid;grid-template-columns:80px 100px;gap:8px;align-items:center;width:188px}
#production-app .fact-cell button{width:100px;min-height:42px}
/* Hidden buttons still occupy their slot; visibility removes them from focus. */
#production-app .fact-cell button[hidden]{display:block!important;visibility:hidden;pointer-events:none}


