/* Scoped operational dashboard; inherits CubicBox font and light/dark theme. */
.pd-root{--pd-surface:var(--ui-surface,#fff);--pd-raised:var(--ui-raised,#f5f8fc);--pd-ink:var(--ui-text,#14283f);--pd-muted:var(--ui-muted,#53657a);--pd-line:var(--ui-line,#dbe3ee);--pd-blue:#185b99;--pd-blue-bg:#eaf3fc;--pd-red:#ab3029;--pd-red-bg:#fff0ee;--pd-amber:#815505;--pd-amber-bg:#fff5df;display:grid;gap:20px;color:var(--pd-ink);font-size:14px;line-height:1.6;min-width:0}
html[data-theme="dark"] .pd-root{--pd-blue:#8dcbff;--pd-blue-bg:#203b51;--pd-red:#ffb2aa;--pd-red-bg:#462e33;--pd-amber:#f5d18b;--pd-amber-bg:#403827}
.pd-root.hidden{display:none!important}.pd-root *{box-sizing:border-box}.pd-root :is(h2,h3,p){margin:0}.pd-root h2{font-size:18px;font-weight:800;line-height:1.4;color:var(--pd-ink)}.pd-root h3{font-size:15px;font-weight:800;color:var(--pd-ink)}.pd-root small{font-size:12px}.pd-muted,.pd-root .pd-heading p{color:var(--pd-muted);font-size:13px}.pd-toolbar,.pd-heading,.pd-actions,.pd-machine-title,.pd-machine-metrics,.pd-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px}.pd-toolbar,.pd-actions,.pd-machine-title{flex-wrap:wrap}.pd-actions{justify-content:flex-end}.pd-button,.pd-root input,.pd-root select{border:1px solid var(--pd-line);background:var(--pd-surface);color:var(--pd-ink);border-radius:9px;min-height:44px;padding:9px 14px;font:inherit}.pd-button{font-weight:700;cursor:pointer;white-space:nowrap}.pd-button.primary{background:var(--pd-blue);border-color:var(--pd-blue);color:#fff}html[data-theme="dark"] .pd-button.primary{color:#102335}.pd-button:hover{background:var(--pd-raised)}.pd-button.primary:hover{filter:brightness(.92);background:var(--pd-blue)}.pd-button:disabled{opacity:.45;cursor:default}.pd-root :is(button,input,select,summary):focus-visible{outline:3px solid var(--pd-blue);outline-offset:3px}
.pd-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.pd-kpi{background:var(--pd-surface);border:1px solid var(--pd-line);border-radius:12px;padding:18px 20px}.pd-root .pd-kpi h2{font-size:14px;color:var(--pd-muted);font-weight:700}.pd-kpi strong{font-size:36px;font-weight:800;display:block;line-height:1.4;font-variant-numeric:tabular-nums;margin:6px 0}.pd-kpi strong span{font-size:13px;font-weight:600;color:var(--pd-muted)}.pd-kpi p{font-size:12px;color:var(--pd-muted)}.pd-kpi.blue strong{color:var(--pd-blue)}.pd-kpi.red strong{color:var(--pd-red)}.pd-kpi.amber strong{color:var(--pd-amber)}
.pd-overview{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);gap:20px;align-items:start}.pd-card{padding:22px;background:var(--pd-surface);border:1px solid var(--pd-line);border-radius:12px;min-width:0}.pd-heading{margin-bottom:18px}.pd-heading p{margin-top:4px!important}.pd-machines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pd-machine{border:1px solid var(--pd-line);border-radius:10px;padding:16px;min-width:0}.pd-machine-metrics{margin:14px 0 4px;align-items:baseline;flex-wrap:wrap}.pd-machine-metrics strong{font-size:27px;line-height:1.25;font-variant-numeric:tabular-nums}.pd-machine-metrics small{font-weight:600;color:var(--pd-muted)}.pd-machine-metrics>span{font-size:13px;color:var(--pd-muted)}.pd-status{display:inline-block;padding:3px 8px;border-radius:6px;background:var(--pd-raised);color:var(--pd-muted);font-size:12px;font-weight:700;line-height:1.6}.pd-status.running{background:var(--pd-blue-bg);color:var(--pd-blue)}.pd-status.warning{background:var(--pd-amber-bg);color:var(--pd-amber)}.pd-queue-preview{margin-top:12px}.pd-queue-job{display:block;width:100%;padding:9px 0;text-align:left;border:0;border-top:1px solid var(--pd-line);background:transparent;color:var(--pd-ink);font:inherit;cursor:pointer;min-height:44px}.pd-queue-job span,.pd-queue-job small{display:block;overflow-wrap:anywhere}.pd-queue-job span{font-weight:700}.pd-queue-job small{color:var(--pd-muted)}.pd-queue-job:hover span,.pd-job-link:hover{text-decoration:underline;color:var(--pd-blue)}.pd-notice{margin-top:16px!important;padding:10px 12px;border-radius:8px;background:var(--pd-amber-bg);color:var(--pd-amber);font-size:12px}
.pd-due-chart{display:grid;gap:16px;margin-top:24px}.pd-due-row{display:grid;grid-template-columns:68px minmax(0,1fr) 30px;align-items:center;gap:12px;font-size:13px}.pd-due-row strong{text-align:right;font-variant-numeric:tabular-nums}.pd-due-track{height:14px;border-left:1px solid var(--pd-line)}.pd-due-track span{display:block;height:100%;background:var(--pd-blue);border-radius:0 3px 3px 0}.pd-chart-note{margin-top:22px!important}
.pd-filters{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap;margin-bottom:16px}.pd-filters label{display:grid;gap:6px;font-size:13px;font-weight:700}.pd-filters label:first-child{flex:1;min-width:160px}.pd-filters label:nth-child(2){min-width:190px}.pd-root input::placeholder{color:var(--pd-muted);opacity:1}.pd-table-wrap{overflow-x:auto;border:1px solid var(--pd-line);border-radius:9px}.pd-table{width:100%;border-collapse:collapse;min-width:630px}.pd-table th{background:var(--pd-raised);text-align:left;font-size:12px;color:var(--pd-muted);font-weight:700;padding:12px 14px}.pd-table td{padding:12px 14px;border-top:1px solid var(--pd-line);vertical-align:middle;font-size:13px}.pd-table td:first-child{width:34%}.pd-table small{display:block;color:var(--pd-muted);margin-top:3px}.pd-table .pd-danger,.pd-table .pd-danger small{color:var(--pd-red)}.pd-job-link{padding:4px 0;min-height:36px;display:block;text-align:left;font:inherit;font-weight:800;color:var(--pd-ink);background:transparent;border:0;cursor:pointer;overflow-wrap:anywhere}.pd-pagination{margin-top:14px;font-size:12px;color:var(--pd-muted);flex-wrap:wrap}.pd-pagination>div{display:flex;gap:8px}.pd-empty{text-align:center;padding:32px!important;color:var(--pd-muted)}.pd-empty p{margin:8px 0 16px!important}.pd-definitions{font-size:12px;color:var(--pd-muted)}.pd-definitions summary{cursor:pointer;font-size:13px;font-weight:700;min-height:44px;padding:10px 0}.pd-definitions p{margin:8px 0!important;max-width:100ch}.pd-loading{min-height:400px;padding:24px;color:var(--pd-muted)}.pd-loading-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}.pd-loading-grid span{height:110px;background:var(--pd-raised);border:1px solid var(--pd-line);border-radius:12px}.pd-sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#dashboardSectionMenu:has([data-dashboard-view="production"]){display:flex;flex-wrap:wrap;max-width:100%;width:fit-content}#dashboardSectionMenu:has([data-dashboard-view="production"]) .dash-section-choice{min-height:44px}
.pd-root .pd-filters label{color:var(--pd-ink)}
.pd-root .pd-job-link{min-height:44px}
.pd-output-total{display:grid;gap:2px;margin-bottom:20px}.pd-output-total strong{font-size:30px;line-height:1.4;color:var(--pd-blue);font-variant-numeric:tabular-nums}.pd-output-total small{font-size:14px;font-weight:600}.pd-output-total>span{font-size:12px;color:var(--pd-muted)}.pd-output-chart{display:grid;gap:16px}.pd-output-row{display:grid;grid-template-columns:58px minmax(0,1fr) 82px;align-items:center;gap:10px;font-size:13px}.pd-output-row strong{text-align:right;font-variant-numeric:tabular-nums}
@media(max-width:600px){.pd-root input,.pd-root select{font-size:16px}}
@media(max-width:1100px){.pd-overview{grid-template-columns:1fr}.pd-due-chart{gap:12px}.pd-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.pd-root{gap:14px}.pd-card{padding:16px}.pd-kpi{padding:14px}.pd-kpi strong{font-size:30px}.pd-machines{grid-template-columns:1fr}.pd-toolbar{align-items:flex-start}.pd-actions{width:100%;justify-content:flex-start}.pd-filters label{width:100%}.pd-root .pd-filters input,.pd-root .pd-filters select{width:100%;min-width:0}.pd-filters .pd-button{width:100%}.pd-machine-title{gap:6px}.pd-loading-grid{grid-template-columns:repeat(2,1fr)}#dashboardSectionMenu:has([data-dashboard-view="production"]){width:100%}#dashboardSectionMenu:has([data-dashboard-view="production"]) .dash-section-choice{flex:1 1 42%;padding:9px 12px}}
