:root{--mts-bg:#eef3f8;--mts-surface:#fff;--mts-surface-soft:#f8fbff;--mts-border:#d7e1ec;--mts-border-strong:#b8c7d9;--mts-text:#0f172a;--mts-muted:#475569;--mts-muted-2:#64748b;--mts-navy:#10263c;--mts-navy-2:#071524;--mts-blue:#2563eb;--mts-blue-dark:#1d4ed8;--mts-blue-soft:#eff6ff;--mts-green:#166534;--mts-green-soft:#dcfce7;--mts-amber:#92400e;--mts-amber-soft:#fffbeb;--mts-red:#991b1b;--mts-red-soft:#fef2f2;--mts-radius:8px;--mts-radius-sm:6px;--mts-shadow:0 8px 22px rgba(15,23,42,.07);--mts-shadow-strong:0 14px 34px rgba(15,23,42,.14);--mts-font:Inter,"Segoe UI",Roboto,Arial,sans-serif;--mts-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
body{font-family:var(--mts-font);margin:0;background:linear-gradient(180deg,var(--mts-bg) 0%,#f8fbff 42%,#edf3f8 100%);color:var(--mts-text);font-size:14px;line-height:1.45}
.global-app-header{position:sticky;top:0;z-index:40;padding:6px;background:#dfe8f2;box-shadow:0 10px 26px rgba(15,23,42,.20)}
.global-header-card{overflow:visible;border:1px solid rgba(148,163,184,.35);border-radius:8px;background:linear-gradient(135deg,#10263c 0%,#0d2135 55%,#071524 100%);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 4px 14px rgba(15,23,42,.18)}
.global-header-main{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:96px;padding:16px 18px 14px}
.global-header-brand{display:flex;align-items:center;gap:14px;min-width:220px;color:#fff;text-decoration:none}
.global-header-brand .app-brand-logo{width:180px;height:76px;border-radius:7px;background:rgba(255,255,255,.96);padding:7px;box-sizing:border-box}
.global-header-brand .app-brand-logo img{width:100%;height:auto;transform:translateY(-23%)}
.global-header-brand strong{display:block;font-size:26px;line-height:1.04;font-weight:900;letter-spacing:0;color:#fff}
.global-header-brand small{display:block;margin-top:5px;font-size:11px;line-height:1.2;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#b8c7d9}
.global-header-chips{display:flex;align-items:stretch;justify-content:flex-end;gap:9px;min-width:0;flex:1}
.global-header-chip{min-height:58px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(191,219,254,.18);border-radius:7px;background:rgba(31,49,69,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);color:#eef6ff;text-decoration:none;font-size:12px;font-weight:900}
.global-header-chip span{white-space:nowrap}
.global-dashboard-chip{padding:0 15px}
.global-scan-chip{min-width:116px;padding:0 14px!important;border-color:rgba(191,219,254,.18)!important;background:rgba(31,49,69,.72)!important;color:#eef6ff!important;font:900 12px/1 var(--mts-font)!important;cursor:pointer}
.global-scan-chip:hover,.global-scan-chip:focus-visible{border-color:#60a5fa!important;background:#21344b!important;color:#fff!important;outline:none}
.global-dashboard-chip.active{background:#2563eb;border-color:#60a5fa;color:#fff;box-shadow:0 8px 18px rgba(37,99,235,.24),inset 0 1px 0 rgba(255,255,255,.24)}
.global-message-chip{padding:8px 10px;flex-direction:column;align-items:stretch;gap:6px}
.global-message-chip a,.global-message-chip button{min-height:24px;display:flex;align-items:center;justify-content:center;gap:6px;border:0;background:transparent;color:#eef6ff!important;text-decoration:none;font:inherit;font-size:12px;font-weight:900;line-height:1;cursor:pointer;padding:0}
.global-message-chip button{border-top:1px solid rgba(191,219,254,.18);padding-top:6px;color:#b9dcf5!important}
.global-user-chip{position:relative;min-width:186px;padding:0}
.global-user-chip summary{width:100%;min-height:58px;display:flex;align-items:center;justify-content:center;gap:8px;list-style:none;cursor:pointer;padding:0 13px;box-sizing:border-box}
.global-user-chip summary::-webkit-details-marker{display:none}
.global-user-chip summary::after{content:"";width:7px;height:7px;border-right:2px solid #9fb0c4;border-bottom:2px solid #9fb0c4;transform:rotate(45deg);margin-left:2px;margin-top:-4px}
.global-user-chip[open] summary::after{transform:rotate(225deg);margin-top:4px}
.global-user-menu{position:absolute;right:0;top:calc(100% + 8px);display:grid;gap:8px;min-width:190px;padding:10px;border:1px solid #c5d2e3;border-radius:8px;background:#fff;box-shadow:0 18px 42px rgba(15,23,42,.28)}
.global-user-menu a{display:flex;align-items:center;justify-content:center;min-height:34px;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;color:#0f2747!important;text-decoration:none;font-size:13px;font-weight:900}
.global-user-menu a:hover{background:#eef6fb;border-color:#9fc5df}
.global-user-logout-chip{padding:0 13px;align-items:center}
.global-user-logout-copy{display:grid;gap:2px;line-height:1.05;text-align:left}
.global-user-logout-copy strong{max-width:152px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-size:12px;font-weight:950;text-transform:uppercase}
.global-user-logout-copy small{color:#b9dcf5;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.global-user-logout-chip:hover,.global-user-logout-chip:focus{background:#2563eb;border-color:#60a5fa;text-decoration:none}
.global-status-dot{width:9px;height:9px;border-radius:999px;background:#8bc5e8;box-shadow:0 0 0 3px rgba(139,197,232,.16);flex:0 0 auto}
.global-tab-icon{width:21px;height:21px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.global-header-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));align-items:stretch;margin:0;border-top:1px solid rgba(255,255,255,.10);background:linear-gradient(180deg,#1d2633 0%,#121a25 100%)}
.global-header-tabs a,.global-header-tabs button{position:relative;min-height:70px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px 8px 10px;border:0;border-right:1px solid rgba(255,255,255,.09);background:transparent;color:#f8fafc;text-decoration:none;font:inherit;font-size:13px;font-weight:900;text-align:center;line-height:1.05;text-shadow:0 1px 1px rgba(0,0,0,.24);cursor:pointer}
.global-header-tabs a:last-child,.global-header-tabs button:last-child{border-right:0}
.global-header-tabs a:hover,.global-header-tabs button:hover{background:#21344b;color:#fff}
.global-header-tabs a.active,.global-header-tabs button.active{z-index:1;margin-top:-10px;min-height:80px;background:linear-gradient(180deg,#2563eb 0%,#1d4ed8 100%);color:#fff;box-shadow:0 8px 18px rgba(37,99,235,.30),inset 0 1px 0 rgba(255,255,255,.28);border-right-color:rgba(255,255,255,.16)}
.global-header-tabs a.active::after,.global-header-tabs button.active::after{content:"";position:absolute;left:50%;bottom:-17px;transform:translateX(-50%);width:88px;height:18px;background:linear-gradient(180deg,#1d4ed8,#1e40af);clip-path:polygon(0 0,100% 0,50% 100%)}
.global-context-tabs{display:flex;align-items:center;gap:7px;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;padding:10px 12px;border-top:1px solid #c7d3e0;background:#eef3f8;scrollbar-width:thin}
.global-context-tabs a{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 11px;border:1px solid #b8c7d9;border-radius:6px;background:#fff;color:#0f315c;text-decoration:none;font-size:12px;font-weight:900;line-height:1.1;white-space:nowrap}
.global-context-tabs a:hover{border-color:#60a5fa;background:#eff6ff;color:#1d4ed8}
.global-context-tabs a.active{border-color:#2563eb;background:#2563eb;color:#fff;box-shadow:0 4px 10px rgba(37,99,235,.2)}
.global-header-card>.section-nav{padding:0 14px 12px;margin-top:0}
.global-header-card>.section-nav a{background:rgba(226,232,240,.96)}
.global-dialog-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.global-dialog-title h3{margin:0;color:#0f172a}
.global-report-dialog .panel-form{max-width:640px;margin:0}
.global-report-dialog textarea{min-height:130px}
.global-scan-dialog{width:min(560px,calc(100vw - 24px));max-width:none}
.global-scan-form{display:grid;gap:12px;padding:22px;background:var(--mts-surface);color:var(--mts-text)}
.global-scan-form h3,.global-scan-form p{margin:0}
.global-scan-form input{box-sizing:border-box;width:100%;min-height:52px;padding:10px 12px;font-size:20px}
.engineering-operator-embed-shell{min-height:calc(100vh - 210px);margin:-14px}
.engineering-operator-embed{display:block;width:100%;min-height:calc(100vh - 210px);border:0;background:transparent}
.has-global-header .eng-module-shell>.eng-module-header,
.has-global-header .maintenance-module-shell>.eng-module-header,
.has-global-header .inventory-module-shell>.eng-module-header,
.has-global-header .shop-floor-module-shell>.eng-module-header,
.has-global-header .simple-kiosk-header{display:none!important}
.has-global-header .operator-global-side-nav,
.has-global-header .operator-global-sidebar,
.has-global-header .eng-side-menu,
.has-global-header .module-side-nav,
.has-global-header .app-side-nav,
.has-global-header .operator-sidebar-toggle{display:none!important}
.has-global-header .eng-module-layout{grid-template-columns:1fr!important}
.has-global-header .eng-module-main{min-width:0}
.has-global-header .eng-module-shell,
.has-global-header .maintenance-module-shell,
.has-global-header .inventory-module-shell,
.has-global-header .shop-floor-module-shell,
.has-global-header .kiosk-simple-shell{margin-top:0}
.user-landing-shell{display:grid;gap:16px}
.user-landing-panel{background:#fff;border:1px solid #d7e1ec;border-radius:8px;box-shadow:0 10px 26px rgba(15,23,42,.06);padding:14px}
.user-landing-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}
.user-landing-section-head span{display:block;color:#64748b;font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.user-landing-section-head h1,.user-landing-section-head h2{margin:3px 0 0;color:#0f172a;font-size:22px;line-height:1.08}
.user-landing-link,.user-landing-summary{display:inline-flex;align-items:center;justify-content:center;min-height:32px;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;color:#0f2f5f;text-decoration:none;padding:6px 10px;font-size:12px;font-weight:900}
.user-inbox-list{display:grid;gap:8px}
.user-inbox-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;border:1px solid #e2e8f0;border-radius:7px;background:#f8fbff;padding:10px}
.user-inbox-row.complete{opacity:.72}
.user-inbox-main strong{display:block;color:#0f172a;font-size:14px;font-weight:950}
.user-inbox-main p{margin:4px 0 0;color:#334155;font-size:13px;line-height:1.35}
.user-inbox-meta{display:grid;gap:4px;text-align:right;color:#64748b;font-size:11px;font-weight:850;white-space:nowrap}
.user-station-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:12px}
.user-station-card{display:grid;gap:12px;border:1px solid #d7e1ec;border-radius:8px;background:linear-gradient(165deg,#ffffff,#f8fbff);padding:13px;box-shadow:0 6px 18px rgba(15,23,42,.05)}
.user-station-card-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center}
.user-station-icon{width:48px;height:48px;display:grid;place-items:center;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#2563eb}
.user-station-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.user-station-card h3{margin:0;color:#0f172a;font-size:17px;line-height:1.15}
.user-station-card-head span{display:block;margin-top:3px;color:#64748b;font-size:12px;font-weight:850}
.user-station-queue{min-width:38px;height:34px;display:grid;place-items:center;border-radius:999px;background:#eef2ff;color:#3730a3;font-size:14px;font-weight:950}
.user-station-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}
.user-station-meta div{border:1px solid #e2e8f0;border-radius:7px;background:#fff;padding:8px}
.user-station-meta dt{font-size:10px;font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:#64748b}
.user-station-meta dd{margin:3px 0 0;color:#0f172a;font-size:13px;font-weight:900}
.user-station-queue-list{display:grid;gap:6px;min-height:42px}
.user-station-queue-list div:not(.user-empty-state){display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #edf2f7;border-radius:6px;background:#fff;padding:7px 8px}
.user-station-queue-list strong{color:#0f172a;font-size:12px;font-weight:950}
.user-station-queue-list span{color:#64748b;font-size:11px;font-weight:800;text-align:right}
.user-station-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.user-panel-btn{display:flex;align-items:center;justify-content:center;min-height:36px;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;color:#0f2f5f;text-decoration:none;text-align:center;padding:6px 8px;font-size:12px;font-weight:950;line-height:1.1}
.user-panel-btn.primary{background:#2563eb;border-color:#2563eb;color:#fff}
.user-panel-btn.disabled{color:#94a3b8;background:#f1f5f9;cursor:not-allowed}
.user-empty-state{border:1px dashed #cbd5e1;border-radius:7px;background:#f8fafc;color:#64748b;padding:14px;text-align:center;font-size:13px;font-weight:850}
.user-empty-state.compact{padding:8px;text-align:left}
.top-header{background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff;padding:10px 14px;position:sticky;top:0;z-index:10;box-shadow:0 8px 24px rgba(15,23,42,.24)}
.top-header-layout{display:flex;flex-direction:column;gap:10px}
.top-header-layout-double-row{min-height:88px}
.top-header-primary-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.top-header-primary-row-v3{align-items:center}
.header-v3-brand{display:inline-flex;align-items:center;gap:8px;color:#fff;text-decoration:none;font-weight:800;letter-spacing:.03em}
.header-v3-brand span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#bfdbfe}
.top-header h1{margin:0 0 8px 0;font-size:20px}
.top-nav{display:flex;gap:10px;flex-wrap:wrap;flex:1 1 420px}
.top-nav a{color:#fff;text-decoration:none;background:#1e293b;padding:6px 9px;border-radius:5px;font-size:13px}
.top-header-user-badge{margin-left:auto;position:relative}
.top-header-user-badge summary{display:inline-flex;align-items:center;gap:8px;list-style:none;cursor:pointer;background:rgba(15,23,42,.5);border:1px solid rgba(191,219,254,.45);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700;white-space:nowrap}
.top-header-user-badge summary::-webkit-details-marker{display:none}
.top-header-user-badge summary::after{content:"▾";font-size:11px;color:#bfdbfe}
.top-header-user-badge[open] summary::after{content:"▴"}
.top-header-user-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:180px;display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:12px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.18);border:1px solid #cbd5e1}
.top-header-user-menu a{color:#0f172a;text-decoration:none;background:#f8fafc;border:1px solid #cbd5e1;padding:8px 10px;border-radius:8px;font-size:13px;font-weight:700;text-align:center}
.top-header-user-menu a:hover{background:#eef2ff;border-color:#93c5fd}
.top-header-logout-link{display:inline-flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;background:rgba(220,38,38,.88);border:1px solid rgba(254,202,202,.8);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:800;white-space:nowrap}
.top-header-logout-link:hover{background:#b91c1c}
.top-header-secondary-row-placeholder{min-height:34px}
.side-nav{position:fixed;top:88px;left:0;bottom:0;width:220px;background:#fff;border-right:1px solid #ddd;padding:10px;overflow:auto}
.side-nav h4{margin:8px 0 5px;font-size:12px;text-transform:uppercase;color:#666}
.side-nav a{display:block;padding:5px 4px;color:#1f2937;text-decoration:none;font-size:13px}
.app-shell{display:flex;align-items:stretch;min-height:calc(100vh - 88px)}
.app-shell-with-side-nav .main-content{flex:1;min-width:0}
.app-side-nav{flex:0 0 214px;background:#ffffff;border-right:1px solid #cbd5e1;padding:14px 10px;overflow:auto}
.app-side-nav-section{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}
.app-side-nav-section summary,.app-side-nav-subsection summary{display:flex;align-items:center;min-height:34px;padding:7px 9px;border-radius:7px;color:#0f172a;font-size:13px;font-weight:800;cursor:pointer;list-style:none}
.app-side-nav-section summary::-webkit-details-marker,.app-side-nav-subsection summary::-webkit-details-marker{display:none}
.app-side-nav-section>summary{background:#f8fafc;border:1px solid #cbd5e1;text-transform:uppercase;font-size:11px;color:#475569}
.app-side-nav-section[open]>summary{background:#dbeafe;border-color:#93c5fd;color:#1e3a8a}
.app-side-nav-subsection{display:flex;flex-direction:column;gap:5px;margin:6px 0}
.app-side-nav-subsection>summary{padding-left:12px;background:#fff;border:1px solid transparent;color:#334155}
.app-side-nav-subsection[open]>summary{background:#f1f5f9;border-color:#cbd5e1}
.app-side-nav a{display:flex;align-items:center;min-height:34px;padding:7px 9px;border-radius:7px;color:#0f172a;text-decoration:none;font-size:13px;font-weight:700;border:1px solid transparent}
.app-side-nav a:hover{background:#f1f5f9;border-color:#cbd5e1}
.app-side-nav a.active{background:#dbeafe;border-color:#93c5fd;color:#1e3a8a}
.app-side-nav a.app-side-nav-sub{min-height:28px;padding:5px 9px 5px 18px;font-size:12px;font-weight:600;color:#334155}
.main-content{flex:1;min-width:0;padding:14px}

/* Canonical Engineering workspace shell. Keep this aligned with /engineering/fabparts. */
.engineering-workspace-layout{
  --efi-navy:#0b2b50;
  --efi-blue:#145a96;
  --efi-line:#d5dee8;
  --efi-selected:#e8f2fb;
  display:grid!important;
  grid-template-columns:260px minmax(0,1fr)!important;
  align-items:stretch;
  min-height:calc(100vh - 160px);
  border:1px solid var(--efi-line);
  border-radius:8px;
  background:#fff;
  overflow:hidden;
}
.has-global-header .eng-module-layout.engineering-workspace-layout{grid-template-columns:260px minmax(0,1fr)!important}
.engineering-workspace-sidebar.efi-sidebar{
  min-width:0;
  padding:14px 10px 18px;
  border-right:1px solid var(--efi-line);
  background:#fbfcfe;
}
.engineering-workspace-sidebar .efi-sidebar-primary{display:grid;gap:7px;margin:0}
.engineering-workspace-sidebar .efi-nav-link{
  display:grid;
  grid-template-columns:1fr;
  justify-items:center;
  align-items:center;
  gap:5px;
  min-height:118px;
  padding:8px 10px 10px;
  border:1px solid var(--efi-line);
  border-radius:6px;
  background:#fff;
  color:var(--efi-navy);
  font-size:13px;
  font-weight:800;
  line-height:1.15;
  text-align:center;
  text-decoration:none;
  transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.engineering-workspace-sidebar .efi-nav-link:hover,
.engineering-workspace-sidebar .efi-nav-link:focus-visible,
.engineering-workspace-sidebar .efi-nav-link.is-active{
  border-color:#a9c5dd;
  background:var(--efi-selected);
  outline:none;
}
.engineering-workspace-sidebar .efi-nav-link.is-active{box-shadow:inset 4px 0 0 var(--efi-blue)}
.engineering-workspace-sidebar .efi-nav-icon{
  display:grid;
  place-items:center;
  width:150px;
  height:150px;
  overflow:hidden;
  border:0;
  border-radius:5px;
  background:#fff;
  color:var(--efi-navy);
}
.engineering-workspace-sidebar .efi-nav-icon img{width:150px;height:150px;max-width:100%;max-height:100%;object-fit:contain;mix-blend-mode:multiply;transform:none}
.engineering-workspace-sidebar .efi-nav-icon svg{width:58px;height:58px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.engineering-workspace-content.eng-module-main{min-width:0;padding:24px 26px 32px;background:#fff}
.engineering-unified-shell>.eng-module-header,
.engineering-unified-shell>.eng-module-status{display:none!important}
.engineering-unified-shell .part-master-fields{min-width:0;flex-wrap:wrap}
.engineering-unified-shell .part-master-cell{min-width:0}
.engineering-unified-shell .part-master-cell input,
.engineering-unified-shell .part-master-cell select{max-width:100%;box-sizing:border-box}
.engineering-unified-shell .parts-page-grid,
.engineering-unified-shell .parts-card,
.engineering-unified-shell .parts-content-frame{min-width:0;max-width:100%}
.engineering-unified-shell .parts-content-frame{overflow-x:auto}

@media(max-width:1050px){
  .engineering-workspace-layout,
  .has-global-header .eng-module-layout.engineering-workspace-layout{grid-template-columns:180px minmax(0,1fr)!important}
  .engineering-workspace-sidebar .efi-nav-link{grid-template-columns:64px minmax(0,1fr);justify-items:stretch;min-height:60px;text-align:left}
  .engineering-workspace-sidebar .efi-nav-icon{width:58px;height:50px}
  .engineering-workspace-content.eng-module-main{padding:20px}
}
@media(max-width:760px){
  .engineering-workspace-layout,
  .has-global-header .eng-module-layout.engineering-workspace-layout{display:grid!important;grid-template-columns:144px minmax(0,1fr)!important;border-radius:6px;overflow:hidden}
  .engineering-workspace-sidebar.efi-sidebar{position:static;display:block;overflow:visible;padding:7px 5px;border:0;border-right:1px solid var(--efi-line);background:#fff}
  .engineering-workspace-sidebar .efi-sidebar-primary{display:grid;gap:7px}
  .engineering-workspace-sidebar .efi-nav-link{grid-template-columns:36px minmax(0,1fr);min-height:42px;padding:4px 5px;font-size:10px}
  .engineering-workspace-sidebar .efi-nav-icon{width:36px;height:36px}
  .engineering-workspace-content.eng-module-main{padding:14px 7px 20px}
  .engineering-unified-shell .part-master-fields{display:grid;grid-template-columns:minmax(0,1fr);width:100%}
  .engineering-unified-shell .part-master-cell,
  .engineering-unified-shell .part-master-cell input,
  .engineering-unified-shell .part-master-cell select{width:100%;min-width:0}
}

/* Shared compact navigation rail for operator, storage, and purchasing panels. */
.operator-global-side-nav{box-sizing:border-box!important;min-width:0!important;padding:20px 8px!important;border:0!important;background:#103456!important;color:#eff6ff!important}
.operator-global-side-nav .module-side-nav-group{display:grid!important;gap:3px!important;margin:0 0 8px!important}
.operator-global-side-nav .module-side-nav-group-title,.operator-global-side-nav .module-side-nav-sub{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;min-height:42px!important;padding:8px 10px!important;border:0!important;border-radius:5px!important;background:transparent!important;color:#eff6ff!important;font-size:12px!important;font-weight:600!important;line-height:1.2!important;text-decoration:none!important;box-shadow:none!important}
.operator-global-side-nav .module-side-nav-group-title{font-weight:750!important}
.operator-global-side-nav .module-side-nav-sub{padding-left:18px!important;color:#c1d3e6!important;font-size:11px!important;font-weight:500!important}
.operator-global-side-nav .module-side-nav-group-title:hover,.operator-global-side-nav .module-side-nav-sub:hover,.operator-global-side-nav .module-side-nav-group-title:focus-visible,.operator-global-side-nav .module-side-nav-sub:focus-visible{background:#1a466f!important;color:#fff!important;outline:none}
.operator-global-side-nav .module-side-nav-group-title.active,.operator-global-side-nav .module-side-nav-sub.active{background:#1967c2!important;color:#fff!important;box-shadow:none!important}
.operator-global-side-nav .operator-nav-icon{display:block;flex:0 0 20px;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.operator-global-side-nav .module-side-nav-sub-child,.operator-global-side-nav .module-side-nav-sub-grandchild{padding-left:42px!important;font-size:10px!important}
.operator-module-shell .eng-module-layout:has(>.operator-global-side-nav),.inventory-module-shell .eng-module-layout:has(>.operator-global-side-nav){grid-template-columns:216px minmax(0,1fr)!important}
body:has(.operator-global-side-nav) .operator-global-side-nav{display:flex!important}
.purchasing-workspace .operator-global-side-nav{min-height:calc(100vh - 160px)}
@media(max-width:1050px){.operator-module-shell .eng-module-layout:has(>.operator-global-side-nav),.inventory-module-shell .eng-module-layout:has(>.operator-global-side-nav){grid-template-columns:185px minmax(0,1fr)!important}}
@media(max-width:760px){.operator-global-side-nav{padding:8px 5px!important}.operator-global-side-nav .module-side-nav-group-title,.operator-global-side-nav .module-side-nav-sub{min-height:38px!important;padding:6px 5px!important;gap:6px!important;font-size:10px!important}.operator-global-side-nav .module-side-nav-sub{padding-left:10px!important;font-size:9px!important}.operator-global-side-nav .operator-nav-icon{flex-basis:18px;width:18px;height:18px}.operator-global-side-nav .module-side-nav-sub-child,.operator-global-side-nav .module-side-nav-sub-grandchild{padding-left:24px!important}.operator-module-shell .eng-module-layout:has(>.operator-global-side-nav),.inventory-module-shell .eng-module-layout:has(>.operator-global-side-nav){grid-template-columns:132px minmax(0,1fr)!important}}

/* Maintenance keeps its station-specific navigation but uses the same rail language. */
.maintenance-module-shell{--maintenance-sidebar:#103456;--maintenance-sidebar-2:#0d2e4d;--maintenance-sidebar-text:#eff6ff;--maintenance-sidebar-muted:#c1d3e6;--maintenance-sidebar-line:#294f70;--maintenance-sidebar-control:#174466;--maintenance-sidebar-control-hover:#1a466f}
.maintenance-station-sidebar{background:linear-gradient(180deg,var(--maintenance-sidebar),var(--maintenance-sidebar-2))!important;color:var(--maintenance-sidebar-text)!important;border-right:0!important}
.maintenance-sidebar-brand{background:var(--maintenance-sidebar)!important;border-color:var(--maintenance-sidebar-line)!important}
.maintenance-sidebar-brand strong,.maintenance-sidebar-brand small,.maintenance-sidebar-brand>a{color:var(--maintenance-sidebar-text)!important}
.maintenance-sidebar-brand small,.maintenance-sidebar-section-label,.maintenance-sidebar-group h2,.maintenance-sidebar-home small,.maintenance-sidebar-station small{color:var(--maintenance-sidebar-muted)!important}
.maintenance-sidebar-mark,.maintenance-sidebar-brand button{border-color:var(--maintenance-sidebar-line)!important;background:var(--maintenance-sidebar-control)!important;color:#8bd8ea!important}
.maintenance-sidebar-groups{border-color:var(--maintenance-sidebar-line)!important}
.maintenance-sidebar-home,.maintenance-sidebar-station{color:var(--maintenance-sidebar-text)!important}
.maintenance-sidebar-home:hover,.maintenance-sidebar-home:focus-visible,.maintenance-sidebar-home.is-active,.maintenance-sidebar-station:hover,.maintenance-sidebar-station:focus-visible,.maintenance-sidebar-station.is-active{border-color:var(--maintenance-sidebar-line)!important;background:var(--maintenance-sidebar-control-hover)!important;color:#fff!important;box-shadow:inset 3px 0 0 #43c4e0!important}
.maintenance-sidebar-utility{border-color:var(--maintenance-sidebar-line)!important}
.maintenance-sidebar-utility a{color:var(--maintenance-sidebar-text)!important}
.maintenance-sidebar-utility a:hover{background:var(--maintenance-sidebar-control-hover)!important;color:#fff!important}
.cards{display:flex;gap:10px;flex-wrap:wrap}
.card{background:#fff;border:1px solid #ddd;padding:12px;min-width:160px;border-radius:6px}
.card .label{font-size:12px;color:#666}
.card .value{font-size:24px;font-weight:bold}
.card.warning{border-color:#f59e0b}
.card.danger{border-color:#dc2626;background:#fff1f2}
.station-list{background:#fff;padding:8px;border:1px solid #ddd;border-radius:6px;max-width:800px}
.station-row{display:flex;align-items:center;gap:10px;padding:6px 0}
.station-name{width:140px}
.station-count{width:40px;text-align:right}
.bar{flex:1;background:#e5e7eb;height:14px;border-radius:8px;overflow:hidden}
.bar span{display:block;height:100%;background:#1d4ed8}
table{border-collapse:separate;border-spacing:0;background:#fff;width:100%;border:1px solid #cbd5e1;border-radius:12px;overflow:hidden;box-shadow:0 6px 18px rgba(15,23,42,.06)}
th,td{border-bottom:1px solid #e2e8f0;padding:8px;font-size:12px;vertical-align:top}
.form-field{margin-bottom:10px;display:flex;flex-direction:column;max-width:600px}
.form-field label{font-weight:600;margin-bottom:4px}
.form-field input,.form-field select,button{padding:9px;border:1px solid #bbb;border-radius:4px;background:#fff}
.field-help{font-size:12px;color:#555;margin-top:3px}
.field-error{font-size:12px;color:#b00020;margin-top:3px}
.form-error-banner{background:#ffe5e8;border:1px solid #ffb3bc;color:#8b0a1a;padding:8px;border-radius:4px;margin-bottom:10px;max-width:680px}
.ok-banner{background:#e8fff0;border:1px solid #86efac;color:#0b6131;padding:8px;border-radius:4px;margin-bottom:10px;max-width:680px;white-space:pre-line}
.offline-write-status{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff7ed;border:1px solid #fed7aa;color:#7c2d12;padding:10px 12px;border-radius:8px;margin:0 0 12px;max-width:820px;box-shadow:0 8px 18px rgba(124,45,18,.08)}
.offline-write-status[hidden]{display:none!important}.offline-write-status strong{display:block;font-weight:900}.offline-write-status span{display:block;font-size:13px;font-weight:750;line-height:1.35}.offline-write-status button{min-height:42px;border:1px solid #9a3412;border-radius:8px;background:#9a3412;color:#fff;font:inherit;font-weight:900;padding:8px 12px;white-space:nowrap;cursor:pointer}.offline-write-status.has-replay-errors{background:#fef2f2;border-color:#fecaca;color:#991b1b}.offline-write-status.has-replay-errors button{background:#991b1b;border-color:#991b1b}@media(max-width:640px){.offline-write-status{align-items:stretch;flex-direction:column}.offline-write-status button{width:100%}}
.scan-form,.panel-form{display:flex;flex-direction:column;gap:7px;max-width:560px;background:#fff;padding:12px;border:1px solid #dbe2ea;border-radius:10px;margin-bottom:12px;box-shadow:0 6px 18px rgba(15,23,42,.06)}
.system-status-panel{max-width:560px;background:#fff;padding:12px;border:1px solid #dbe2ea;border-radius:10px;margin-bottom:12px;box-shadow:0 6px 18px rgba(15,23,42,.06)}
.system-status-panel h4{margin:0 0 10px}
.system-status-grid{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0}
.system-status-grid dt{font-weight:700;color:#334155}
.system-status-grid dd{margin:0;color:#0f172a;word-break:break-word}
.panel-card{background:#fff;padding:12px;border:1px solid #dbe2ea;border-radius:10px;margin-bottom:12px;box-shadow:0 6px 18px rgba(15,23,42,.06)}
.action-btn{display:inline-block;background:#dbeafe;color:#1e3a8a!important;text-decoration:none;padding:10px 12px;border-radius:8px;margin:5px 0;font-weight:700;border:1px solid #60a5fa}
.action-btn.secondary{background:#374151}
.action-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.grid-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}
.quick-pallet{display:flex;flex-direction:column;gap:4px;padding:10px;background:#fff;border:1px solid #ddd;border-radius:6px;color:#111;text-decoration:none}
@media (max-width: 920px){
  .global-app-header{position:relative}
  .global-header-main{align-items:stretch;flex-direction:column;min-height:0;padding:12px}
  .global-header-brand{justify-content:center;text-align:center}
  .global-header-chips{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .global-user-chip{grid-column:1/-1;width:100%}
  .global-header-tabs{display:flex;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
  .global-header-tabs a,.global-header-tabs button,.global-header-tabs a.active,.global-header-tabs button.active{flex:0 0 148px;min-height:62px;margin-top:0}
  .global-header-tabs a.active::after,.global-header-tabs button.active::after{display:none}
  .side-nav{position:static;width:auto;border-right:none;top:auto}
  .app-shell{display:block}
  .app-side-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;border-right:none;border-bottom:1px solid #cbd5e1}
  .app-side-nav-section{margin-bottom:0}
  .main-content{margin-left:0}
}
@media (max-width: 640px){
  .global-header-brand{align-items:center;gap:10px}
  .global-header-brand .app-brand-logo{width:122px;height:54px}
  .global-header-brand strong{font-size:20px}
  .global-header-brand small{font-size:10px}
  .global-header-chips{grid-template-columns:1fr}
  .global-header-chip,.global-user-chip summary{min-height:50px}
  .global-header-tabs a,.global-header-tabs button,.global-header-tabs a.active,.global-header-tabs button.active{flex:0 0 auto;min-width:142px;flex-direction:row;min-height:48px;justify-content:center;padding:8px 12px;text-align:center}
  .top-header-primary-row{align-items:stretch}
  .top-header-user-badge{margin-left:0}
  .top-header-user-badge,.top-header-user-badge summary,.top-header-logout-link{width:100%}
  .top-header-user-menu{left:0;right:auto;width:100%}
}

.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px;background:#f8fafc;padding:8px;border:1px solid #d1d5db;border-radius:6px}
textarea{padding:9px;border:1px solid #bbb;border-radius:4px;min-height:90px}

button,input[type="submit"],input[type="button"],.action-btn{color:#001f54!important}
button,input[type="submit"],input[type="button"]{background:#eef2ff}
.action-btn{background:#e2e8f0;border:1px solid #94a3b8}
.action-btn.secondary{background:#dbeafe}

.top-nav a.active,.section-nav a.active{background:#bfdbfe;border:1px solid #60a5fa;color:#0f172a!important}
.landing-shell{display:flex;flex-direction:column;gap:16px}
.landing-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(250px,.7fr);gap:16px;border-radius:18px;padding:24px;color:#fff}
.landing-hero-maintenance{background:linear-gradient(135deg,#0f172a,#1d4ed8)}
.landing-hero-inventory{background:linear-gradient(135deg,#1f2937,#0369a1)}
.landing-eyebrow{margin:0;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#bfdbfe;font-weight:700}
.landing-hero h1{margin:8px 0 10px;font-size:32px;line-height:1.08}
.landing-hero p{margin:0;color:#dbeafe}
.landing-quick-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.landing-kpis{display:grid;gap:10px}
.landing-kpi-card{background:rgba(15,23,42,.4);border:1px solid rgba(191,219,254,.35);border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:6px}
.landing-kpi-card span{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#bfdbfe}
.landing-kpi-card strong{font-size:34px;line-height:1}
.landing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.landing-tile{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:14px;border:1px solid #dbe2ea;background:#fff;text-decoration:none;color:#0f172a;box-shadow:0 8px 24px rgba(15,23,42,.06)}
.landing-tile h3{margin:0}
.landing-tile p{margin:0}
.landing-tile-type{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#1d4ed8;font-weight:700}
.landing-tile-copy{color:#334155}
.landing-tile-meta{color:#64748b;font-size:13px}
.section-nav{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.section-nav a{color:#001f54;text-decoration:none;background:#e2e8f0;border:1px solid #94a3b8;padding:7px 10px;border-radius:5px;font-size:13px}
.page-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.skills-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-top:10px}
.skill-admin-card{background:#fff;border:1px solid #dbe2ea;border-radius:10px;padding:14px;display:flex;flex-direction:column;gap:10px;box-shadow:0 1px 2px rgba(15,23,42,0.06);transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease}
.skill-admin-card:hover{border-color:#bfdbfe;box-shadow:0 6px 14px rgba(15,23,42,0.08);transform:translateY(-1px)}
.skill-admin-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.skill-admin-title{margin:0;font-size:17px;line-height:1.3;font-weight:700;color:#0f172a}
.skill-admin-chip{font-size:11px;color:#64748b;background:#f8fafc;border:1px solid #cbd5e1;border-radius:999px;padding:2px 8px;white-space:nowrap}
.skill-admin-desc{margin:0;color:#334155;font-size:13px;line-height:1.45}
.skill-admin-meta{margin:0;color:#64748b;font-size:12px;line-height:1.3}
.skill-admin-actions{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap;font-size:12px;margin-top:auto;padding-top:2px}
.skill-admin-action-group{display:flex;flex-direction:column;gap:6px;min-width:96px}
.skill-admin-action-label{font-size:11px;color:#64748b;font-weight:600;letter-spacing:.01em}
.skill-admin-actions a,.skill-admin-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:4px 10px;border-radius:6px;border:1px solid #cbd5e1;background:#f8fafc;color:#0f172a!important;text-decoration:none;font-size:12px;font-weight:600;line-height:1}
.skill-admin-actions a:hover,.skill-admin-actions button:hover{background:#eef2ff;border-color:#93c5fd}
.skill-admin-actions form{display:inline-flex;margin:0}
.role-admin-card{text-decoration:none;color:inherit}.role-admin-details{display:grid;gap:7px;border-top:1px solid #e2e8f0;padding-top:10px;color:#475569;font-size:12px}.role-admin-details span{display:grid;gap:2px}.role-admin-details strong{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#64748b}.role-admin-edit{margin-top:auto;color:#1d4ed8;font-size:12px;font-weight:700}.role-form-shell{max-width:1040px}.role-form-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.role-form-toolbar h2{margin:3px 0 5px}.role-form-card{background:linear-gradient(165deg,#fff,#f8fbff);border:1px solid #dbe2ea;border-radius:14px;padding:20px;margin:14px 0;box-shadow:0 5px 16px rgba(15,23,42,.06)}.role-form-card header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:15px}.role-form-card h3,.role-form-card h4{margin:0;color:#0f172a}.role-form-card header p:not(.skill-admin-id){margin:4px 0 0;color:#64748b;font-size:13px}.role-form-fields{display:grid;gap:14px}.role-form-fields.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.role-form-fields label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700;color:#334155}.role-form-fields label.full-width{grid-column:1/-1}.role-form-fields input,.role-form-fields textarea{width:100%;box-sizing:border-box}.role-form-fields small{font-weight:400;color:#64748b}.role-active-toggle{display:flex;gap:7px;align-items:center;font-size:13px;font-weight:700}.role-skill-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:9px}.role-skill-option,.role-check-grid label{display:flex;gap:9px;align-items:flex-start;border:1px solid #dbe2ea;border-radius:9px;padding:10px;background:#fff;cursor:pointer}.role-skill-option:has(input:checked),.role-check-grid label:has(input:checked){border-color:#60a5fa;background:#eff6ff}.role-skill-option span{display:flex;flex-direction:column;gap:2px;font-size:12px;color:#475569}.role-skill-option strong{color:#0f172a}.role-skill-option small{color:#2563eb;font-size:11px}.role-skill-option em{font-style:normal;color:#64748b}.role-checkbox-section{margin-top:16px}.role-checkbox-section h4{font-size:13px;margin-bottom:8px}.role-check-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}.role-check-grid label{font-size:12px;font-weight:600}.role-form-actions{display:flex;justify-content:flex-end;gap:9px;margin:18px 0}@media (max-width:650px){.role-form-toolbar{flex-direction:column}.role-form-fields.two-column{grid-template-columns:1fr}.role-form-card{padding:15px}.role-form-actions{justify-content:stretch}.role-form-actions>*{flex:1}}
.infrastructure-shell{max-width:1120px}.infrastructure-notice{display:flex;gap:10px;align-items:center;background:#fffbeb;border-color:#fde68a;color:#713f12}.infrastructure-notice span{font-size:13px}.infrastructure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.infrastructure-grid .role-form-card{margin:0}.infrastructure-form{margin:0}@media (max-width:650px){.infrastructure-grid{grid-template-columns:1fr}.infrastructure-notice{align-items:flex-start;flex-direction:column;gap:3px}}
.role-form-fields label.frigate-password-reset{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;padding:12px 14px;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff;cursor:pointer}.role-form-fields .frigate-password-reset:has(input:checked){border-color:#60a5fa;background:#dbeafe}.role-form-fields .frigate-password-reset input{width:18px;height:18px;margin:1px 0 0}.frigate-password-reset span{display:grid;gap:3px;min-width:0}.frigate-password-reset strong{color:#1e3a5f}.frigate-password-reset small{line-height:1.4}
.frigate-camera-editor{display:grid;grid-column:1/-1;gap:12px;padding:14px;border:1px solid #dbe2ea;border-radius:12px;background:#f8fafc}.frigate-camera-editor>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:0}.frigate-camera-editor>header div{display:grid;gap:3px}.frigate-camera-editor>header strong{color:#0f172a;font-size:14px}.frigate-camera-rows{display:grid;gap:10px}.frigate-camera-row{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(280px,1.3fr) auto;align-items:end;gap:12px;padding:12px;border:1px solid #dbe2ea;border-radius:10px;background:#fff}.frigate-camera-row small{display:block;max-width:100%;overflow:hidden;color:#64748b;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;text-overflow:ellipsis;white-space:nowrap}.frigate-camera-empty{padding:18px;border:1px dashed #cbd5e1;border-radius:10px;color:#64748b;text-align:center}.frigate-camera-empty[hidden]{display:none}@media (max-width:700px){.frigate-camera-editor>header{align-items:stretch;flex-direction:column}.frigate-camera-row{grid-template-columns:1fr}.frigate-camera-row .action-btn{width:100%}}
.pbx-status-refresh,.pbx-registration-status{display:flex;flex-direction:column;align-items:flex-end;gap:5px;max-width:320px;text-align:right}.pbx-status-refresh small,.pbx-registration-status small{color:#64748b;font-size:11px;line-height:1.35}.pbx-registration-status.is-table{align-items:flex-start;min-width:170px;text-align:left}.pbx-registration-badge{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:4px 9px;border:1px solid #cbd5e1;border-radius:999px;background:#f8fafc;color:#334155;font-size:11px;font-weight:900;line-height:1;text-transform:uppercase;white-space:nowrap}.pbx-registration-badge::before{content:"";width:7px;height:7px;margin-right:6px;border-radius:50%;background:currentColor;opacity:.75}.pbx-registration-badge.is-good{border-color:#86efac;background:#dcfce7;color:#166534}.pbx-registration-badge.is-warn{border-color:#fcd34d;background:#fef3c7;color:#92400e}.pbx-registration-badge.is-bad{border-color:#fca5a5;background:#fee2e2;color:#991b1b}.pbx-registration-badge.is-muted{border-color:#cbd5e1;background:#f1f5f9;color:#64748b}@media (max-width:650px){.pbx-status-refresh,.pbx-registration-status{align-items:flex-start;max-width:none;text-align:left}.role-form-card header:has(.pbx-registration-status),.role-form-card header:has(.pbx-status-refresh){flex-direction:column}.pbx-registration-status.is-table{min-width:150px}}
.skill-admin-actions button{cursor:pointer}
.skill-admin-action-primary{background:#dbeafe!important;border-color:#93c5fd!important}
.skill-admin-action-secondary{background:#f8fafc!important}
.skill-admin-action-destructive{background:#fef2f2!important;border-color:#fecaca!important;color:#991b1b!important}
.skill-admin-action-destructive:hover{background:#fee2e2!important;border-color:#fca5a5!important}
.skill-admin-actions a:focus-visible,.skill-admin-actions button:focus-visible{outline:2px solid #2563eb;outline-offset:2px;box-shadow:0 0 0 2px #bfdbfe}

.active-tab{outline:2px solid #60a5fa}
.station-title-block{margin:12px 0}
.station-inline-title{display:flex;align-items:center;gap:10px}
.inline-title-form h2{margin:0}
.small-link{font-size:12px;text-transform:lowercase}
.small-link-btn{font-size:12px;padding:4px 8px}
.danger-link-btn{background:none;border:none;color:#b91c1c!important;cursor:pointer;padding:0 2px;font-size:12px;text-decoration:underline}
.actions-links{font-size:12px;text-transform:lowercase;white-space:nowrap}
.actions-links a,.actions-links button{font-size:12px;text-transform:lowercase}
.actions-links button{background:none;border:none;padding:0;color:#001f54!important;text-decoration:underline;cursor:pointer}
.actions-links .danger-link-btn{color:#b91c1c!important}
.station-inline-edit{display:flex;gap:8px;align-items:center}
.hidden{display:none}
.inline-settings-form{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}
.inline-settings-form select{min-width:130px}
.modal-dialog{border:none;border-radius:8px;padding:0;max-width:620px;width:calc(100% - 24px)}
.modal-dialog::backdrop{background:rgba(15,23,42,.45)}
.maintenance-record-form{max-width:100%}
.maintenance-record-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.maintenance-record-layout label{display:flex;flex-direction:column;gap:6px}
.maintenance-record-layout input,.maintenance-record-layout textarea{width:100%;box-sizing:border-box}
.maintenance-record-task textarea{min-height:88px}
.maintenance-record-meta-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.maintenance-record-notes textarea{min-height:120px}
@media (max-width: 640px){
  .maintenance-record-meta-row{grid-template-columns:minmax(0,1fr)}
}


.section-nav-wrap{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}
.section-nav-add{color:#001f54!important;text-decoration:none;background:#e2e8f0;border:1px solid #94a3b8;padding:7px 10px;border-radius:5px;font-size:13px}
.maintenance-submenu-row .action-btn{padding:7px 10px;font-size:13px;margin:0}
.toolbar-upload-btn{margin-left:auto}

.inline-field-row{display:flex;gap:8px;align-items:center}
.modal{position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background:rgba(15,23,42,.45)}
.modal-content{background:#fff;margin:12% auto;padding:14px;border-radius:8px;max-width:420px;display:flex;flex-direction:column;gap:8px}
.modal-content form{display:flex;flex-direction:column;gap:8px}

.part-master-header{position:relative;background:#fff;border:1px solid #ddd;border-radius:6px;padding:12px 12px 26px;margin-bottom:12px}
.part-master-fields{display:flex;gap:10px;align-items:flex-end}
.part-master-cell{display:flex;flex-direction:column;gap:4px}
.part-id-cell{width:25ch}
.part-rev-cell{width:5ch}
.part-desc-cell{flex:1}
.part-master-cell input{padding:8px;border:1px solid #bbb;border-radius:4px;background:#fff}
.header-save-link{position:absolute;right:12px;bottom:6px;background:transparent;border:none;padding:0;font-size:12px;text-decoration:underline;cursor:pointer}

.bom-block{background:#fff;border:1px solid #ddd;border-radius:6px;padding:0 12px 12px;margin-bottom:12px}
.bom-controls{display:flex;justify-content:space-between;align-items:center;margin-top:-1px}
.bom-controls select{border-radius:0 0 5px 5px}
.bom-controls .small-link-btn{border-radius:0 0 5px 5px}
.small-col{width:5ch}

.revision-header-form{max-width:100%}
.revision-header-form table{margin-bottom:12px}
.revision-header-form input[type="file"]{padding:4px}
.revision-upload-form{max-width:100%}
.release-notes-area{width:100%;box-sizing:border-box}

.hk-components-header{display:flex;justify-content:space-between;align-items:center;margin:14px 0 8px}
.hk-components-header h3{margin:0}

.station-queue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:12px;margin-bottom:14px}
.station-queue-card{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:10px}
.queue-chip-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;min-height:38px;padding:6px;border:1px dashed #cbd5e1;border-radius:6px;background:#f8fafc}
.queue-chip{padding:6px 10px;border-radius:999px;background:#dbeafe;border:1px solid #93c5fd;cursor:grab;font-size:12px}
.queue-chip.active{background:#bfdbfe;border-color:#2563eb;box-shadow:0 0 0 2px rgba(37,99,235,0.2)}
.station-dashboard-actions{align-items:stretch}
.dashboard-big-btn{padding:16px 20px!important;font-size:20px!important;font-weight:700;min-width:220px;text-align:center}
.station-maintenance-action-row{display:flex;flex-wrap:wrap;gap:18px;margin:18px 0 10px}
.station-maintenance-hero-btn{flex:0 1 320px;min-height:116px;border:1px solid #a7b4c7!important;border-radius:18px!important;background:#e8eef7!important;color:#0f2f6b!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}
.station-maintenance-hero-btn:hover{background:#dde6f3!important}
.station-maintenance-hero-btn-outline{background:#fff!important;border:3px solid #111827!important;color:#111827!important;box-shadow:none!important}
.station-maintenance-popup{max-width:760px;width:min(760px,calc(100% - 32px));border-radius:22px;overflow:hidden}
.station-maintenance-popup-form{padding:24px;gap:16px}
.station-maintenance-popup-header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.station-maintenance-popup-header h3{margin:0;font-size:38px;line-height:1.05;color:#111827}
.station-maintenance-popup-copy{font-size:18px;margin:0 0 4px}
.station-maintenance-popup textarea{min-height:180px;font-size:18px;padding:14px;border-radius:14px;border:1px solid #94a3b8}
.station-maintenance-popup-actions{justify-content:flex-end}

.kiosk-shell{background:#fff;border:1px solid #d1d5db;border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:12px}
.kiosk-table-wrap{max-height:60vh;overflow:auto}
.kiosk-footer-action{display:flex;justify-content:center;padding-top:10px}
.kiosk-begin-btn{min-width:380px;text-align:center}
.kiosk-login-shell{align-items:center;text-align:center}
.kiosk-pin-form{display:flex;flex-direction:column;gap:14px;align-items:center}
.kiosk-pin-input{font-size:48px;letter-spacing:10px;text-align:center;max-width:360px;padding:14px}
.kiosk-keypad-wrap{display:flex;flex-direction:column;gap:12px;align-items:center;background:#f8fafc;border:1px solid #cbd5e1;border-radius:12px;padding:14px;width:100%;max-width:360px;box-sizing:border-box}
.kiosk-entry-switch{display:flex;gap:8px}
.kiosk-entry-tab{min-width:130px;font-size:16px;font-weight:700;padding:10px 12px;border-radius:8px}
.kiosk-entry-tab.active{background:#bfdbfe;border-color:#60a5fa}
.kiosk-entry-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;max-width:340px}
.kiosk-entry-row label{font-weight:700;color:#334155}
.kiosk-display{background:#fff;border:1px solid #94a3b8;border-radius:8px;min-width:180px;padding:10px 12px;text-align:center;font-family:monospace;font-size:34px;letter-spacing:8px}
.kiosk-keypad-grid{display:flex;flex-wrap:wrap;width:315px;max-width:100%;box-sizing:border-box}
.kiosk-keypad-grid button{flex:0 0 calc(33.333% - 10px);width:calc(33.333% - 10px);height:78px;margin:5px;font-size:34px;font-weight:700;border-radius:14px;border:1px solid #94a3b8;background:#fff;box-shadow:0 2px 0 #cbd5e1}
.kiosk-keypad-grid .kiosk-fn-btn{font-size:20px}
.kiosk-station-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.kiosk-station-grid button{display:flex;flex-direction:column;gap:6px;justify-content:center}

.kiosk-role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.kiosk-role-card{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:12px;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.kiosk-role-card:hover{border-color:#60a5fa;box-shadow:0 6px 16px rgba(37,99,235,.12);transform:translateY(-1px)}
.kiosk-role-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.kiosk-role-tag{font-size:12px;color:#334155;background:#e2e8f0;border-radius:999px;padding:2px 8px}
.kiosk-role-card p{margin:0;color:#334155;font-size:14px;line-height:1.3}
.kiosk-role-card ul{margin:0;padding-left:18px;color:#0f172a;font-size:13px}

.revision-upload-dialog{max-width:980px}
.revision-upload-form .file-help{font-size:12px;color:#64748b;margin-top:4px;word-break:break-all}

.camera-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:12px}
.camera-tile{background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:8px}
.camera-tile-header{display:flex;justify-content:space-between;align-items:center;gap:10px}
.camera-tile-header h3{margin:0;font-size:18px}
.camera-tile img,.camera-tile iframe{width:100%;min-height:320px;border:0;border-radius:6px;background:#0f172a}
.camera-tile pre{overflow:auto;background:#f8fafc;padding:10px;border:1px solid #e2e8f0;border-radius:6px}
.frame-page-shell{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px;align-items:start}
.frame-page-main,.frame-page-side{background:#fff;border:1px solid #d1d5db;border-radius:10px;padding:12px}
.frame-tabs{display:flex;gap:8px;margin-bottom:12px}
.frame-tab-btn{border:1px solid #94a3b8;background:#f8fafc;padding:10px 14px;border-radius:8px;font-weight:700;cursor:pointer}
.frame-tab-btn.active{background:#dbeafe;border-color:#3b82f6}
.frame-panel{display:none}
.frame-panel.active{display:block}
.frame-panel img,.frame-panel iframe{width:100%;min-height:430px;border:0;border-radius:8px;background:#0f172a}
.frame-status-list{list-style:none;padding:0;margin:0 0 14px 0;display:grid;gap:8px}
.frame-queue-card{border:1px solid #cbd5e1;background:#f8fafc;border-radius:8px;padding:8px;margin-bottom:8px}
.frame-queue-priority{border-color:#b91c1c;background:#fecaca}
.priority-red{color:#b91c1c}
@media (max-width: 1024px){.frame-page-shell{grid-template-columns:1fr}.frame-station-header-card{flex-direction:column;align-items:stretch}.frame-station-header-actions{justify-content:stretch}.frame-station-header-actions .dashboard-big-btn{width:100%}}


.frame-station-header-card{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;border:1px solid #d1d5db;border-radius:10px;padding:12px;margin-bottom:12px}
.frame-station-header-name{font-size:22px;font-weight:700}
.frame-station-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.frame-station-header-actions form{margin:0}
.frame-station-header-actions .dashboard-big-btn{min-width:180px}
.frame-inprocess-card{background:#dcfce7;border-color:#16a34a}

.parts-component-cell{display:inline-flex;align-items:center;gap:8px}
.parts-expand-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid #94a3b8;border-radius:999px;background:#f8fafc;color:#0f172a!important;font-weight:700;line-height:1;cursor:pointer}
.parts-expand-btn[aria-expanded="true"]{background:#dbeafe;border-color:#60a5fa}
.parts-expand-spacer{display:inline-block;width:22px;height:22px}
.nested-part-row[hidden]{display:none}

.storage-bin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.storage-bin-card{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;border:2px solid #cbd5e1;border-radius:10px;background:linear-gradient(180deg,#f8fafc,#e2e8f0);box-shadow:inset 0 0 0 1px #94a3b8;padding:10px;min-height:150px}
.storage-bin-card .storage-bin-header{font-weight:700;font-size:13px;color:#0f172a;border-bottom:1px dashed #94a3b8;padding-bottom:6px}
.storage-bin-card .storage-bin-body{font-size:13px;line-height:1.4}
.storage-bin-card.is-occupied{border-color:#1d4ed8;background:linear-gradient(180deg,#eff6ff,#dbeafe)}
.storage-bin-card.storage-component-bin-card,.planning-queue-bin-card.storage-component-bin-card{border-color:#0f766e;background:linear-gradient(180deg,#ecfdf5,#d1fae5)}.storage-component-qty{font-weight:900;color:#065f46}
.storage-bin-card.is-empty{opacity:.8}

.skills-admin-hero{display:flex;justify-content:space-between;gap:14px;align-items:stretch;background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff;border-radius:14px;padding:18px 20px;box-shadow:0 12px 30px rgba(15,23,42,.22);margin:8px 0 14px}
.skills-admin-eyebrow{margin:0;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#bfdbfe;font-weight:700}
.skills-admin-hero-title{margin:6px 0 4px;font-size:24px;line-height:1.2}
.skills-admin-hero-subtitle{margin:0;color:#dbeafe;font-size:13px;max-width:620px}
.skills-admin-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;min-width:280px}
.skills-admin-kpi-card{background:rgba(255,255,255,.12);border:1px solid rgba(191,219,254,.45);border-radius:10px;padding:10px 12px;backdrop-filter:blur(2px);display:flex;flex-direction:column;justify-content:center}
.skills-admin-kpi-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#bfdbfe;font-weight:700}
.skills-admin-kpi-value{font-size:26px;line-height:1.1;margin-top:4px}
.skills-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-top:10px}
.skill-admin-card{position:relative;overflow:hidden;background:linear-gradient(165deg,#ffffff,#f8fbff);border:1px solid #dbe2ea;border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:10px;box-shadow:0 6px 20px rgba(15,23,42,.08);transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease}
.skill-admin-card:hover{border-color:#93c5fd;box-shadow:0 14px 28px rgba(37,99,235,.18);transform:translateY(-2px)}
.skill-admin-card-accent{position:absolute;left:0;top:0;height:100%;width:5px;background:linear-gradient(180deg,#60a5fa,#2563eb)}
.skill-admin-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-left:2px}
.skill-admin-id{margin:0 0 5px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#64748b;font-weight:700}
.skill-admin-title{margin:0;font-size:18px;line-height:1.25;font-weight:700;color:#0f172a}
.skill-admin-chip{font-size:11px;color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:4px 10px;white-space:nowrap;font-weight:700}
.skill-admin-desc{margin:0;color:#334155;font-size:13px;line-height:1.5;min-height:40px}
.skill-admin-meta{margin:0;color:#64748b;font-size:12px;line-height:1.3}
.skill-admin-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:4px}
.skill-admin-actions a,.skill-admin-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:5px 12px;border-radius:8px;border:1px solid #cbd5e1;background:#f8fafc;color:#0f172a!important;text-decoration:none;font-size:12px;font-weight:700;line-height:1}
.skill-admin-action-primary{background:#dbeafe!important;border-color:#60a5fa!important;color:#1e3a8a!important}
.skill-admin-action-secondary{background:#f8fafc!important}
.skill-admin-action-destructive{background:#fff1f2!important;border-color:#fecaca!important;color:#991b1b!important}
.skill-admin-actions a:hover,.skill-admin-actions button:hover{background:#eef2ff;border-color:#93c5fd}
.skill-admin-action-destructive:hover{background:#ffe4e6!important;border-color:#fca5a5!important}
.skill-admin-actions form{display:inline-flex;margin:0}
@media (max-width: 900px){.skills-admin-hero{flex-direction:column}.skills-admin-kpi-grid{min-width:0}}

.nested-part-row td{background:#f8fafc}
.nested-label{font-size:10px;text-transform:uppercase;color:#64748b;font-weight:700;letter-spacing:.04em}
.pallet-location-badge{display:inline-flex;align-items:center;padding:10px 12px;border-radius:999px;background:#dcfce7;border:1px solid #86efac;font-weight:700;color:#065f46;font-size:12px}
.pallet-actions .action-btn{margin:0}
.dragging-row {
  opacity: 0.5;
}

.skill-admin-group-chip{display:inline-flex;align-items:center;font-size:11px;font-weight:700;color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:3px 8px}

.pallet-view-card{background:#fff;border:1px solid #dbe2ea;border-radius:14px;padding:18px;box-shadow:0 10px 26px rgba(15,23,42,.08)}
.pallet-view-header{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.pallet-view-header h2{margin:0;font-size:28px;line-height:1.15;color:#0f172a}
.pallet-summary-grid{margin-bottom:14px}
.pallet-summary-grid .card{border:1px solid #d4dbe4;border-radius:10px;min-width:180px}
.pallet-summary-grid .card .label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#64748b}
.pallet-summary-grid .card .value{font-size:22px;line-height:1.2;color:#0f172a}
.pallet-section h3,.pallet-view-card .frame-panel h3{margin:0 0 8px 0;font-size:20px;line-height:1.2;color:#0f172a}
.linked-pallet-list{margin:0 0 14px;padding-left:18px}
.linked-pallet-list li{margin-bottom:6px;font-size:14px}
.pallet-actions{margin:8px 0 16px}
.pallet-view-card .action-btn{border-radius:10px;font-size:13px;letter-spacing:.01em;padding:10px 14px;font-weight:700;text-transform:none}
.action-btn-primary{background:linear-gradient(180deg,#2563eb,#1d4ed8)!important;border-color:#1d4ed8!important;color:#fff!important;box-shadow:0 4px 12px rgba(37,99,235,.28)}
.action-btn-secondary{background:#f8fafc!important;border-color:#cbd5e1!important;color:#0f172a!important}
.action-btn-primary:hover,.action-btn-secondary:hover{filter:brightness(.98)}
.pallet-tabs{padding:8px;border:1px solid #dbe2ea;border-radius:10px;background:#f8fafc}
.pallet-view-card .frame-tab-btn{font-size:13px;letter-spacing:.01em}
.pallet-view-card .frame-tab-btn.active{background:#dbeafe;border-color:#60a5fa;color:#1e3a8a}
.pallet-field-help{margin:4px 0 10px;font-size:12px;line-height:1.4;color:#475569}
#pallet-tab-parts th,#pallet-tab-parts td{font-size:13px}
.pallet-routing-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}
.pallet-routing-card{border:1px solid #dbe2ea;border-radius:12px;background:#f8fafc;padding:12px 14px;display:flex;flex-direction:column;gap:8px}
.pallet-routing-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}
.pallet-routing-card-header h4{margin:0;color:#0f172a;font-size:16px;line-height:1.3}
.pallet-routing-priority{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#334155;font-weight:600}
.pallet-routing-priority input{margin:0}
.pallet-routing-instruction{margin:0;font-size:13px;line-height:1.45;color:#334155;white-space:pre-wrap}
.pallet-routing-card .status-complete{color:#065f46;font-weight:700}.pallet-routing-card .status-current{color:#1d4ed8;font-weight:700}.pallet-routing-card .status-pending{color:#64748b;font-weight:700}
.split-frame-row{background:#eff6ff;font-weight:700}
#split-pallet-table input[type="number"]{max-width:130px}
.pallet-header-eyebrow{margin:0;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#bfdbfe;font-weight:700}
.header-actions-inline{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.pallet-header-actions{margin-left:auto;align-self:flex-start}
.pallet-hero-card{display:flex;justify-content:space-between;align-items:stretch;gap:18px;flex-wrap:wrap;background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff;border-radius:14px;padding:18px 20px;margin-bottom:12px;box-shadow:0 12px 30px rgba(15,23,42,.18)}
.pallet-hero-main{display:flex;flex-direction:column;gap:10px;min-width:min(100%,360px);flex:1 1 360px}
.pallet-hero-title{font-size:34px;font-weight:800;line-height:1.05;color:#fff}
.pallet-hero-part-row{display:flex;align-items:flex-start;gap:12px;flex-wrap:wrap}
.pallet-hero-meta-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#bfdbfe}
.pallet-hero-part-number{font-size:18px;font-weight:700;color:#eff6ff;margin-top:4px}
.pallet-hero-side{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:12px;flex:0 1 520px}
.pallet-hero-badge-stack{display:flex;flex-direction:column;align-items:flex-end;gap:10px;width:100%}
.pallet-hero-badge-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}
.pallet-hero-badge{min-width:0;max-width:none;align-items:flex-end;text-align:right;border-color:rgba(191,219,254,.45);background:rgba(255,255,255,.12);color:#fff}
.pallet-hero-status-badge{width:100%;min-width:0;max-width:none}
.pallet-hero-status-badge{box-shadow:none}
.pallet-hero-edit-label{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#bfdbfe;margin-bottom:4px}
.pallet-hero-inline-input,.pallet-hero-material-edit,.pallet-hero-status-edit,.pallet-hero-raw-material-edit{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.pallet-hero-inline-input input,.pallet-hero-material-edit input,.pallet-hero-status-edit input,.pallet-hero-status-edit select,.pallet-hero-raw-material-edit select{min-width:0}
.pallet-hero-prefix{font-weight:800;font-size:24px;color:#fff}
.pallet-hero-card input,.pallet-hero-card select{background:rgba(255,255,255,.96);border:1px solid rgba(191,219,254,.65)}
.pallet-hero-card .small-link-btn{background:rgba(255,255,255,.94)}
.pallet-hero-material-edit input[type="number"]{width:88px}
.pallet-hero-material-edit input[type="text"]{width:130px}
.pallet-hero-status-edit select{width:140px}
.pallet-hero-status-edit input{width:170px}
@media (max-width: 900px){.pallet-hero-card{padding:16px}.pallet-hero-side{margin-left:0;align-items:flex-start;flex-basis:100%}.pallet-hero-badge-stack{align-items:flex-start}.pallet-hero-badge-row{width:100%}.pallet-hero-badge{text-align:left;align-items:flex-start}.pallet-hero-inline-input,.pallet-hero-material-edit,.pallet-hero-status-edit,.pallet-hero-raw-material-edit{justify-content:flex-start}}
@media (max-width: 640px){.pallet-hero-title{font-size:28px}.pallet-hero-badge-row{grid-template-columns:1fr}.pallet-hero-badge{max-width:none;width:100%}.pallet-header-actions{margin-left:0;width:100%;justify-content:flex-start}}
.table-header-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.status-chip{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;border-radius:10px;padding:8px 10px;border:1px solid #cbd5e1;background:#f8fafc;color:#0f172a;font-weight:700}
.status-chip small{font-size:11px;font-weight:600;opacity:.9}
.status-chip-staged,.status-chip-queued{background:#fef9c3;border-color:#facc15;color:#854d0e}
.status-chip-in-progress{background:#dbeafe;border-color:#60a5fa;color:#1e3a8a}
.status-chip-hold{background:#fee2e2;border-color:#fca5a5;color:#991b1b}
.status-chip-complete,.status-chip-combined{background:#dcfce7;border-color:#86efac;color:#166534}

.parts-page-grid{display:flex;flex-direction:column;gap:14px}
.parts-card{background:#fff;border:1px solid #d5dce5;border-radius:10px;padding:14px}
.parts-content-frame{border:1px solid #d5dce5;border-radius:8px;padding:12px;min-height:260px;background:#fcfdff}
.doc-viewer{width:100%;height:calc(100vh - 240px);min-height:560px;border:1px solid #cfd6df;border-radius:6px;margin-top:10px;background:#fff}
.route-step-list{display:flex;flex-direction:column;gap:10px}
.route-step-card{border:1px solid #d5dce5;border-radius:8px;padding:10px;background:#fafcff}
.route-step-options{display:flex;align-items:flex-start;gap:10px;overflow-x:auto;padding-top:8px}
.route-step-alternates{display:flex;flex-direction:column;gap:8px}

.parts-page-grid > .parts-card{width:100%;box-sizing:border-box}
.route-form,.route-step-list,.route-step-card{width:100%;box-sizing:border-box}
.route-step-options{display:flex;flex-direction:column;gap:8px;padding-top:8px}
.route-station-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.route-station-row input{flex:1 1 320px;min-width:220px}
.doc-viewer{width:100%;max-width:100%}

.parts-content-frame .part-tab-form{max-width:none;width:100%;box-sizing:border-box}
.parts-content-frame table{width:100%}
.route-badge-chip{display:inline-flex;flex-direction:column;align-items:center;gap:2px;line-height:1.1;min-width:110px}
.route-badge-line{white-space:nowrap}
.route-badge-or{font-size:10px;font-weight:700;color:#475569;line-height:1}

.planning-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.planning-station-list{display:flex;flex-direction:column;gap:14px}
.planning-station-card{width:100%;box-sizing:border-box;background:#fff;border:1px solid #cfd8e3;border-radius:12px;padding:14px;box-shadow:0 6px 18px rgba(15,23,42,.06);overflow:hidden}
.planning-station-card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.planning-status-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid #cbd5e1;background:#f8fafc;font-size:12px;font-weight:700}
.planning-status-operating{background:#dcfce7;border-color:#86efac;color:#166534}
.planning-status-ready-idle{background:#e2e8f0;border-color:#cbd5e1;color:#334155}
.planning-status-blocked_exception{background:#fee2e2;border-color:#fca5a5;color:#991b1b}
.planning-status-down-repair,.planning-status-down-wait-part,.planning-status-down-other{background:#fee2e2;border-color:#fca5a5;color:#991b1b}
.planning-station-columns{display:grid;grid-template-columns:minmax(0,270px) minmax(0,1fr);gap:14px;margin-top:10px}
.planning-station-columns > *{min-width:0}
.planning-in-process-stack{display:flex;flex-direction:column;gap:10px}
.planning-in-process-card{display:flex;flex-direction:column;gap:8px}
.planning-in-process-card-header{font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#475569}
.planning-pallet-card{display:block;background:#f8fafc;border:1px solid #d1d5db;border-radius:8px;padding:10px;color:#0f172a;text-decoration:none}
.planning-pallet-card-active{background:#eff6ff;border-color:#93c5fd}
.planning-queue-shelf-grid{display:flex;flex-direction:column;gap:10px}
.planning-queue-shelf{border:1px solid #dbe2ea;border-radius:8px;padding:8px;background:#f8fafc}
.planning-queue-shelf-title{font-size:12px;font-weight:700;margin-bottom:6px;color:#475569}
.planning-queue-bin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px}
.planning-queue-bin-card{display:block;border:1px dashed #cbd5e1;border-radius:8px;padding:8px;background:#fff;font-size:12px;color:#0f172a;text-decoration:none}
.planning-queue-bin-card.is-occupied{border-style:solid;border-color:#93c5fd;background:#eff6ff}
.storage-layout-editor{max-width:none;width:100%}
.storage-layout-editor-card{width:100%}
.storage-layout-preview-frame{margin-top:8px;padding:8px;border:1px solid #cbd5e1;border-radius:12px;background:#eef2ff}
.storage-layout-preview-grid{gap:8px}
.storage-layout-preview-grid .planning-queue-shelf{padding:10px}
.storage-layout-preview-grid .planning-queue-bin-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.planning-modal{display:none;position:fixed;inset:0;z-index:60}
.planning-modal.is-open{display:block}
.planning-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.5)}
.planning-modal-card{position:relative;z-index:1;background:#fff;max-width:1050px;margin:5vh auto;padding:14px;border-radius:12px;max-height:90vh;overflow:auto}
.planning-modal-header{display:flex;justify-content:space-between;align-items:center;gap:10px}
.planning-submit-not-ready{background:#fee2e2!important;border-color:#fca5a5!important;color:#991b1b!important}
.planning-submit-ready{background:#dcfce7!important;border-color:#86efac!important;color:#166534!important}
@media (max-width: 880px){.planning-station-columns{grid-template-columns:1fr}}
.planning-tab-row{display:flex;gap:10px;flex-wrap:wrap}
.planning-station-card-header-gradient{background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff;margin:-14px -14px 12px -14px;padding:14px;border-radius:12px 12px 0 0}
.planning-station-card-header-gradient h3{margin:0;color:#fff}
.planning-card-subtitle{margin-top:4px;color:#dbeafe;font-size:13px}
.planning-storage-code{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid rgba(191,219,254,.45);background:rgba(255,255,255,.12);color:#eff6ff;font-size:12px;font-weight:700}
.planning-pallet-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.planning-empty-card{display:flex;align-items:center;justify-content:center;min-height:120px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px;padding:12px}
.planning-pallet-card{display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:12px;color:#0f172a;text-decoration:none;box-shadow:0 4px 14px rgba(15,23,42,.05);cursor:pointer}
.planning-pallet-card:hover,.planning-pallet-card:focus{border-color:#2563eb;box-shadow:0 8px 18px rgba(37,99,235,.12);outline:none}
.planning-pallet-card-priority{border-color:#f59e0b;background:#fffbeb}
.planning-pallet-card-id{font-size:18px;font-weight:800;color:#0f172a}
.planning-pallet-card-po{font-size:12px;font-weight:800;color:#475569}
.planning-pallet-card-location{font-size:14px;font-weight:700;color:#1e3a8a}
.planning-pallet-card-meta,.planning-pallet-card-frame-desc{font-size:12px;color:#475569}
.planning-pallet-card-frame{font-size:14px;font-weight:700;color:#0f172a}
.planning-pallet-card-stats{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:4px;font-size:12px;color:#334155}
.planning-pallet-card-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.planning-pallet-card-facts div{min-width:0;padding:8px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}
.planning-pallet-card-facts dt{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#64748b}
.planning-pallet-card-facts dd{margin:3px 0 0;font-size:12px;font-weight:700;color:#0f172a;overflow-wrap:anywhere}
.planning-pallet-status-bar{display:flex;gap:6px;flex-wrap:wrap;padding-top:2px}
.planning-status-chip{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border:1px solid transparent}
.planning-status-chip-ready{background:#dcfce7;color:#166534;border-color:#86efac}
.planning-status-chip-neutral{background:#e2e8f0;color:#334155;border-color:#cbd5e1}
.planning-status-chip-risk{background:#fee2e2;color:#991b1b;border-color:#fecaca}
.planning-pallet-card-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.planning-pallet-release-form{margin:0}
.planning-hold-dialog{width:min(1080px,94vw);max-height:88vh;border:none;border-radius:8px;padding:16px;box-shadow:0 24px 70px rgba(15,23,42,.32)}
.planning-hold-dialog::backdrop{background:rgba(15,23,42,.55)}
.planning-hold-dialog-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
.planning-hold-dialog-header h3{margin:4px 0 0;font-size:20px;color:#0f172a}
.planning-hold-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-bottom:12px}
.planning-hold-summary span{padding:8px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;font-size:12px;color:#475569}
.planning-hold-table th,.planning-hold-table td{white-space:nowrap}
.planning-hold-missing-row td{background:#fff7ed}
.planning-hold-missing-row td:last-child{color:#b42318;font-weight:900}
.planning-hold-details{margin-top:12px}
.planning-hold-details summary{cursor:pointer;color:#334155;font-size:12px;font-weight:900;text-transform:uppercase}
.planning-hold-details .ops-table-wrap{margin-top:8px}
.planning-component-standard-card{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#0f172a;box-shadow:0 4px 14px rgba(15,23,42,.05)}
.planning-component-standard-card[data-planning-component-link]{cursor:pointer}
.planning-component-standard-card[data-planning-component-link]:hover,.planning-component-standard-card[data-planning-component-link]:focus{border-color:#2563eb;background:#eff6ff;outline:none}
.planning-component-standard-card.is-short{border-color:#fecaca;background:#fff7f7}
.planning-component-card-topline{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.planning-component-card-topline strong{display:block;font-size:16px;color:#0f172a}
.planning-component-card-topline span:not(.planning-status-chip){display:block;margin-top:2px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#64748b}
.planning-component-standard-card p{margin:0;font-size:12px;color:#475569;line-height:1.35}
.planning-component-card-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.planning-component-card-facts div{min-width:0;padding:8px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}
.planning-component-card-facts dt{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#64748b}
.planning-component-card-facts dd{margin:3px 0 0;font-size:12px;font-weight:800;color:#0f172a}
.planning-component-alert-meta{display:flex;flex-wrap:wrap;gap:6px}
.planning-component-alert-meta span{display:inline-flex;align-items:center;min-height:22px;border-radius:999px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;padding:2px 8px;font-size:10px;font-weight:900;text-transform:uppercase}
.planning-component-card-demand{display:grid;gap:6px;border-top:1px solid #e2e8f0;padding-top:8px}
.planning-component-card-demand>span{font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#64748b}
.planning-component-card-demand a{display:grid;gap:2px;padding:7px;border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc;color:inherit;text-decoration:none}
.planning-component-card-demand a:hover,.planning-component-card-demand a:focus{border-color:#93c5fd;background:#eff6ff;outline:none}
.planning-component-card-demand strong{font-size:12px;color:#0f172a}
.planning-component-card-demand small{color:#64748b;font-size:11px;font-weight:750;line-height:1.25}
.planning-component-card-more{color:#64748b;font-size:11px;font-weight:800}
.planning-component-card-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.planning-component-card-actions form{margin:0}
.planning-component-card-actions button{width:100%;min-height:34px;margin:0}
.planning-queue-bin-card{display:flex;flex-direction:column;justify-content:center;border:1px dashed #cbd5e1;border-radius:10px;padding:8px;background:#fff;font-size:12px;color:#0f172a;text-decoration:none;min-height:120px}
.planning-part-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(305px,1fr));gap:14px}

.machine-header-card,
.detail-card {
  margin-bottom: 1rem;
}

.machine-header-form,
.machine-header-grid {
  display: grid;
  gap: 0.75rem;
}

.machine-header-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.machine-header-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.maintenance-menu-wrap {
  flex-wrap: wrap;
}


.station-section-nav{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}
.station-section-group{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.station-section-label{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#475569}
.station-section-links{display:flex;flex-wrap:wrap;gap:8px}

.stations-page-shell{display:flex;flex-direction:column;gap:16px}
.stations-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.stations-card{display:flex;flex-direction:column;gap:14px;text-decoration:none;color:inherit;background:linear-gradient(165deg,#ffffff,#f8fbff);border:1px solid #dbe2ea;border-radius:14px;padding:16px;box-shadow:0 6px 20px rgba(15,23,42,.08);transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease}
.stations-card:hover{border-color:#93c5fd;box-shadow:0 14px 28px rgba(37,99,235,.18);transform:translateY(-2px)}
.stations-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.stations-card-header h3{margin:2px 0 0;font-size:20px;line-height:1.25;color:#0f172a}
.stations-card-type{margin:0;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b}
.stations-card-status{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#065f46;background:#dcfce7;border:1px solid #86efac;border-radius:999px;padding:5px 10px;white-space:nowrap}
.stations-card-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
.stations-card-metrics div{padding:12px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0}
.stations-card-metrics dt{margin:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}
.stations-card-metrics dd{margin:0;font-size:22px;font-weight:800;color:#0f172a}
@media (max-width: 700px){.stations-card-metrics{grid-template-columns:1fr}.station-section-nav{flex-direction:column;gap:10px}}
.stations-directory-card .skill-admin-desc{min-height:0;white-space:pre-line}
.stations-directory-metadata{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.stations-directory-metadata div{padding:12px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0}
.stations-directory-metadata dt{margin:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}
.stations-directory-metadata dd{margin:0;font-size:15px;font-weight:700;color:#0f172a}
.stations-directory-status{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;border-radius:999px;padding:5px 10px;white-space:nowrap}
.stations-directory-status-ready-idle,.stations-directory-status-ready-running,.stations-directory-status-operating{color:#065f46;background:#dcfce7;border:1px solid #86efac}
.stations-directory-status-blocked-exception,.stations-directory-status-down-repair,.stations-directory-status-down-wait-part,.stations-directory-status-down-other{color:#991b1b;background:#fee2e2;border:1px solid #fca5a5}
.stations-directory-queue-table-wrap{overflow-x:auto}
.stations-directory-queue-table{width:100%;border-collapse:collapse;font-size:13px}
.stations-directory-queue-table th,.stations-directory-queue-table td{padding:8px 10px;border-top:1px solid #e2e8f0;text-align:left;vertical-align:top}
.stations-directory-queue-table thead th{padding-top:0;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b;border-top:0}
.stations-directory-queue-table tbody tr:first-child td{border-top:1px solid #e2e8f0}
@media (max-width: 700px){.stations-directory-metadata{grid-template-columns:1fr}}
.planning-section-nav{display:flex;flex-direction:column;gap:10px}
.planning-header-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.planning-header-row-secondary{padding-top:4px;border-top:1px solid rgba(148,163,184,.25)}
.planning-header-tabs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-start}
.planning-header-actions{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.planning-header-station-filters a{white-space:nowrap}
.planning-search-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.planning-search-form label{font-size:13px;font-weight:700;color:#e2e8f0}
.planning-search-form input{min-width:260px;padding:8px 10px;border-radius:8px;border:1px solid #94a3b8;background:#fff;color:#0f172a}
@media (max-width: 880px){.planning-search-form input{min-width:0;width:100%}.planning-header-actions{margin-left:0;width:100%;justify-content:flex-start}}

.maintenance-card-grid{margin-top:14px}
.engineering-parts-search-form label{color:#334155}
.engineering-parts-search-form input{min-width:320px}


.file-browser-detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.file-browser-parser-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;align-items:start}
.file-browser-parser-output{max-height:420px;overflow:auto;background:#0f172a;color:#e2e8f0;border-radius:10px;padding:14px;font-size:12px;line-height:1.45}
.file-browser-parser-meta{display:flex;gap:14px;flex-wrap:wrap;margin:10px 0 14px;color:#334155;font-size:13px}
.file-browser-parser-error{margin-top:12px;padding:10px 12px;border-radius:8px;border:1px solid #fecaca;background:#fff1f2;color:#991b1b;font-weight:600}


.bootstrap-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 12px;
}
.bootstrap-file-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.bootstrap-file-item {
  display: flex;
  gap: 8px;
  align-items: flex-start;
}

.bootstrap-file-item-admin{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;border:1px solid #d1d5db;padding:8px;border-radius:8px;margin-bottom:8px}
.bootstrap-file-item-admin input[name="part_id"]{min-width:180px}

.kiosk-change-pin-step{width:100%;display:flex;flex-direction:column;gap:12px;align-items:center}
.kiosk-change-pin-step[hidden]{display:none}
.kiosk-step-title{margin:0;font-size:18px;color:#0f172a}
.kiosk-step-summary{margin:0;color:#475569;font-size:14px}


.storage-location-detail-page{gap:16px}
.storage-location-header-grid{margin-top:4px}
.storage-location-toolbar{margin-bottom:12px}
.station-active-summary-card{margin-bottom:12px;padding:14px 16px;border:1px solid #cbd5e1;border-radius:12px;background:#f8fafc;display:flex;flex-direction:column;gap:6px}
.station-active-summary-title{font-size:18px;font-weight:700}
.station-pallet-inline-card{cursor:pointer}
.station-queue-storage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.station-storage-bin-card{border:1px solid #cbd5e1;border-radius:14px;background:#fff;padding:12px;display:flex;flex-direction:column;gap:10px;min-height:220px}
.station-storage-bin-card-priority{border-color:#dc2626;box-shadow:0 0 0 1px rgba(220,38,38,.12)}
.station-storage-bin-label{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#475569}
.station-storage-pallet-card{display:flex;flex-direction:column;gap:8px;cursor:pointer;height:100%}
.station-storage-pallet-title{font-size:20px;font-weight:700;color:#0f172a}
.station-storage-pallet-actions{margin-top:auto;display:flex;gap:8px;flex-wrap:wrap}
.station-storage-empty{display:flex;align-items:center;justify-content:center;height:100%;min-height:120px;border:1px dashed #cbd5e1;border-radius:12px;color:#64748b;background:#f8fafc}


.pallet-hold-card{background:#fee2e2 !important;border:2px solid #dc2626 !important;}
.pallet-hold-card .planning-pallet-card-id,.pallet-hold-card .station-storage-pallet-title{color:#991b1b;}
.maintenance-kpi-upcoming{background:rgba(254,240,138,.2);border-color:rgba(250,204,21,.45)}
.maintenance-kpi-overdue{background:rgba(254,226,226,.16);border-color:rgba(252,165,165,.45)}
.maintenance-station-card-overdue{border-color:#fca5a5;background:linear-gradient(165deg,#fff1f2,#ffe4e6)}
.maintenance-station-card-overdue:hover{border-color:#ef4444;box-shadow:0 14px 28px rgba(239,68,68,.18)}
.maintenance-station-card-upcoming{border-color:#facc15;background:linear-gradient(165deg,#fffbeb,#fef3c7)}
.maintenance-station-card-upcoming:hover{border-color:#eab308;box-shadow:0 14px 28px rgba(234,179,8,.18)}
.maintenance-task-item-overdue{color:#b91c1c;font-weight:800}
.maintenance-task-item-upcoming{color:#92400e;font-weight:700}

.operator-kiosk-shell{display:flex;flex-direction:column;gap:18px}
.operator-kiosk-layout{display:grid;grid-template-columns:minmax(400px,1fr) minmax(500px,1.35fr);gap:18px;align-items:start}
.operator-kiosk-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;background:linear-gradient(135deg,#0f172a,#1d4ed8 72%,#38bdf8);border-radius:24px;padding:24px;color:#fff;box-shadow:0 18px 38px rgba(15,23,42,.22)}
.operator-kiosk-hero-column{flex-direction:column;align-items:stretch;justify-content:flex-start}
.operator-kiosk-hero h1{margin:6px 0 8px;font-size:40px;line-height:1.02;color:#fff}
.operator-kiosk-eyebrow{margin:0;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#bfdbfe}
.operator-kiosk-subtitle{margin:0;max-width:640px;color:#dbeafe;font-size:15px;line-height:1.45}
.operator-kiosk-hero-meta{display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.operator-kiosk-hero-part-card{min-width:360px;max-width:540px;padding:16px 20px;border-radius:16px;border:1px solid rgba(255,255,255,.28);background:rgba(2,6,23,.22)}
.operator-kiosk-hero-part-card h2{margin:0 0 6px;font-size:44px;line-height:1;color:#fff;letter-spacing:.02em}
.operator-kiosk-hero-part-card p{margin:0;color:#dbeafe;font-size:17px;line-height:1.35}
.operator-kiosk-hero-part-card p a{color:#fff!important}
.operator-kiosk-hero-part-meta{margin-top:8px;color:#bfdbfe;font-size:20px;font-weight:700}
.operator-kiosk-hero-meta-badges{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.operator-kiosk-top-actions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;width:100%;padding-top:12px;margin-top:8px;border-top:1px solid rgba(191,219,254,.35)}
.operator-kiosk-top-actions-stacked{grid-template-columns:repeat(2,minmax(0,1fr))}
.operator-kiosk-top-actions .action-btn,.operator-kiosk-top-actions form{width:100%}
.operator-kiosk-top-actions .action-btn{display:flex;align-items:center;justify-content:center;text-align:center;min-height:52px;font-size:13px!important;padding:8px 10px!important;min-width:0!important;white-space:normal;line-height:1.15;border-radius:10px;font-weight:700;margin:0!important;box-sizing:border-box}
.operator-kiosk-top-actions .is-disabled{opacity:.55;pointer-events:none}
.operator-kiosk-top-actions .action-btn.secondary{background:rgba(15,23,42,.2);border-color:rgba(191,219,254,.45);color:#fff!important}
.operator-kiosk-top-actions .action-btn:not(.secondary){background:#3b82f6;border-color:#93c5fd;color:#fff!important}
.operator-start-btn{min-width:220px!important;background:#16a34a!important;border-color:#15803d!important;color:#fff!important;box-shadow:0 8px 18px rgba(22,163,74,.28)}
.operator-start-btn:hover{background:#15803d!important;border-color:#166534!important}
.operator-start-btn-round{width:148px!important;min-width:148px!important;min-height:148px!important;border-radius:999px!important;font-size:28px!important;font-weight:800!important;line-height:1!important;padding:0!important;justify-self:end}
.operator-kiosk-top-actions form{margin:0;display:flex}
.operator-kiosk-top-actions form .action-btn{height:100%}
.operator-kiosk-right-stack{display:flex;flex-direction:column;gap:16px}
.operator-kiosk-queue-panel h2{margin:0;color:#0f172a}
.operator-kiosk-empty-tall{min-height:300px}
.operator-kiosk-status,.operator-kiosk-process,.operator-kiosk-card-chip,.operator-kiosk-priority-flag{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.12);color:inherit}
.operator-kiosk-status-ready-idle{background:#dcfce7;color:#166534;border-color:#86efac}
.operator-kiosk-status-operating{background:#dbeafe;color:#1e3a8a;border-color:#93c5fd}
.operator-kiosk-status-blocked-exception,.operator-kiosk-status-down-repair,.operator-kiosk-status-down-wait-part,.operator-kiosk-status-down-other{background:#fee2e2;color:#991b1b;border-color:#fca5a5}
.operator-kiosk-command-grid,.operator-kiosk-content-grid{display:grid;gap:16px}
.operator-kiosk-command-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.operator-kiosk-content-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.operator-kiosk-content-grid-dual{grid-template-columns:repeat(2,minmax(0,1fr))}
.operator-kiosk-command-card,.operator-kiosk-panel{background:#fff;border:1px solid #dbe2ea;border-radius:22px;padding:18px;box-shadow:0 12px 28px rgba(15,23,42,.08)}
.operator-kiosk-command-card-primary{background:linear-gradient(180deg,#fff,#eff6ff);border-color:#bfdbfe}
.operator-kiosk-card-header,.operator-kiosk-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.operator-kiosk-card-header h2,.operator-kiosk-panel-header h3{margin:4px 0 0;color:#0f172a}
.operator-kiosk-card-label{margin:0;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b}
.operator-kiosk-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px}
.operator-kiosk-stat-grid>div,.operator-kiosk-mini-stats>div{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0}
.operator-kiosk-stat-grid span,.operator-kiosk-mini-stats span{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#64748b}
.operator-kiosk-stat-grid strong,.operator-kiosk-mini-stats strong{font-size:18px;color:#0f172a}
.operator-kiosk-card-copy{margin:0 0 14px;color:#334155;font-size:14px;line-height:1.5}
.operator-kiosk-active-layout{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:14px;align-items:stretch}
.operator-kiosk-active-meta,.operator-kiosk-active-summary{display:grid;gap:12px}
.operator-kiosk-active-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
.operator-kiosk-stat-card{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0}
.operator-kiosk-stat-card span{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#64748b}
.operator-kiosk-stat-card strong{font-size:18px;color:#0f172a}
.operator-kiosk-stat-card-inline{min-height:88px}
.operator-kiosk-stat-card-description{min-width:0}
.operator-kiosk-stat-card-description strong{font-size:15px;line-height:1.5;font-weight:700;white-space:normal}
.operator-kiosk-stat-card-description{grid-column:4}
.operator-kiosk-stat-card-wide{grid-column:1/-1}
.operator-kiosk-stat-card-wide strong{font-size:16px}
.operator-kiosk-linked-list{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.operator-kiosk-linked-list h4{margin:0;color:#334155}
.operator-kiosk-linked-card{padding:10px 12px;border-radius:12px;border:1px solid #dbe2ea;background:#f8fafc}
.operator-kiosk-action-row{display:flex;flex-wrap:wrap;gap:10px}
.operator-kiosk-action-row form{margin:0}
.operator-kiosk-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.operator-kiosk-action-grid .action-btn,.operator-kiosk-action-grid form{width:100%}
.operator-kiosk-empty,.operator-kiosk-empty-state{display:flex;align-items:center;justify-content:center;min-height:110px;border:1px dashed #cbd5e1;border-radius:16px;background:#f8fafc;color:#475569;padding:16px;text-align:center}
.operator-kiosk-queue-list,.operator-kiosk-maintenance-list,.operator-kiosk-activity-list{display:flex;flex-direction:column;gap:10px}
.operator-kiosk-queue-card,.operator-kiosk-maintenance-card,.operator-kiosk-activity-card{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px;border-radius:16px;border:1px solid #e2e8f0;background:#f8fafc}
.operator-kiosk-queue-card.is-priority{border-color:#f59e0b;background:#fffbeb}
.operator-kiosk-queue-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.operator-kiosk-doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.operator-kiosk-doc-card{display:flex;flex-direction:column;gap:6px;padding:14px;border-radius:16px;text-decoration:none;background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a;min-height:88px}
.operator-kiosk-doc-card.is-missing{background:#f8fafc;border-color:#e2e8f0;color:#94a3b8}
.operator-kiosk-mini-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
@media (max-width: 1320px){.operator-kiosk-layout{grid-template-columns:1fr}.operator-kiosk-right-stack{order:2}}
@media (max-width: 1100px){.operator-kiosk-top-actions{grid-template-columns:repeat(3,minmax(112px,1fr))}.operator-kiosk-top-actions-stacked{grid-template-columns:repeat(2,minmax(112px,1fr))}}
@media (max-width: 720px){.operator-kiosk-hero{padding:18px;border-radius:18px}.operator-kiosk-hero h1{font-size:30px}.operator-kiosk-hero-meta{align-items:flex-start}.operator-kiosk-hero-part-card{min-width:0;width:100%}.operator-kiosk-hero-part-card h2{font-size:34px}.operator-kiosk-hero-meta-badges{justify-content:flex-start}.operator-kiosk-top-actions,.operator-kiosk-top-actions-stacked{grid-template-columns:1fr}.operator-kiosk-content-grid-dual{grid-template-columns:1fr}.operator-kiosk-active-layout,.operator-kiosk-active-summary,.operator-kiosk-doc-grid,.operator-kiosk-mini-stats{grid-template-columns:1fr}.operator-start-btn-round{width:124px!important;min-width:124px!important;min-height:124px!important;font-size:24px!important;justify-self:start}}
.operator-simple-shell,.operator-work-shell{display:flex;flex-direction:column;gap:16px}
.station-header-card{display:flex;flex-direction:column;gap:14px;background:#0f172a;border:1px solid #1e293b;border-radius:10px;padding:16px;color:#fff;box-shadow:0 10px 22px rgba(15,23,42,.12)}
.station-header-identity h1{margin:0 0 12px;font-size:28px;line-height:1.15;color:#fff}
.station-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}
.station-summary-grid>div{background:#fff;border:1px solid #dbe2ea;border-radius:8px;padding:10px;color:#0f172a;min-height:66px}
.station-summary-grid dt{font-size:11px;text-transform:uppercase;color:#64748b;font-weight:800}
.station-summary-grid dd{margin:4px 0 0;font-size:18px;font-weight:800}
.station-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:stretch}
.station-action-card{min-height:190px;border-radius:8px;border:1px solid #cbd5e1;background:#f8fafc;color:#0f172a;padding:10px}
.station-action-card form{margin:0}
.station-action-card button,.station-action-card a{width:100%;min-height:100%;border:0;border-radius:7px;background:#fff;color:#0f172a;text-decoration:none;font:inherit;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;text-align:center}
.station-action-card button:disabled,.station-action-card.is-disabled button,.station-action-card.is-disabled a{opacity:.48;cursor:not-allowed;pointer-events:none}
.station-action-single{min-height:168px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center}
.station-action-single strong{font-size:34px;line-height:1.05}
.station-action-single span,.station-action-single a{font-size:18px}
.station-subcard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;height:100%}
.station-subcard-grid[hidden],.station-return-queue-grid[hidden]{display:none!important}
.station-subcard{min-height:80px;background:#fff;border:1px solid #dbe2ea;border-radius:7px;padding:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;color:#0f172a;text-decoration:none}
.station-subcard strong{font-size:18px;line-height:1.15}
.station-subcard span{font-size:12px;color:#64748b;font-weight:700}
.station-subcard button,.station-subcard a{background:transparent;padding:0;min-height:0}
.station-action-card.is-danger{background:#b91c1c;border-color:#991b1b;color:#fff}
.station-action-card.is-danger .station-action-single strong{color:#fff}
.station-controls-grid{padding:12px;background:#f8fafc}
.operator-simple-header,.operator-work-header{display:flex;justify-content:space-between;align-items:stretch;gap:18px;background:#0f172a;border-radius:12px;padding:22px;color:#fff}
.operator-simple-header h1,.operator-work-header h1{margin:6px 0 8px;font-size:34px;line-height:1.1;color:#fff}
.operator-simple-header p,.operator-work-header p{margin:0;color:#dbeafe}
.operator-simple-subtitle{font-size:15px}
.operator-simple-start{display:flex;align-items:stretch;min-width:260px}
.operator-simple-start form,.operator-work-actions form{margin:0;display:flex}
.operator-start-next{width:100%;min-width:260px;min-height:132px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-radius:12px;border:1px solid #93c5fd;background:#2563eb;color:#fff!important;text-decoration:none;cursor:pointer;box-shadow:0 12px 24px rgba(2,6,23,.2)}
.operator-start-next span{font-size:15px;font-weight:800;text-transform:uppercase}
.operator-start-next strong{font-size:28px;line-height:1.1;color:#fff}
.operator-continue-work{background:#047857;border-color:#6ee7b7}
.operator-start-disabled{background:#475569;border-color:#94a3b8;cursor:default}
.operator-simple-metrics,.operator-work-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.operator-work-summary{grid-template-columns:repeat(6,minmax(0,1fr))}
.operator-simple-metrics>div,.operator-work-summary>div{background:#fff;border:1px solid #dbe2ea;border-radius:8px;padding:12px;min-height:72px;display:flex;flex-direction:column;gap:5px}
.operator-simple-metrics span,.operator-work-summary span{font-size:11px;text-transform:uppercase;color:#64748b;font-weight:800}
.operator-simple-metrics strong,.operator-work-summary strong{font-size:18px;color:#0f172a;line-height:1.2}
.operator-simple-grid{display:grid;grid-template-columns:minmax(480px,1.4fr) minmax(360px,.8fr);gap:16px;align-items:start}
.operator-simple-panel,.operator-work-panel{background:#fff;border:1px solid #dbe2ea;border-radius:10px;padding:16px;box-shadow:0 8px 20px rgba(15,23,42,.07)}
.operator-simple-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.operator-simple-panel-header h2{margin:4px 0 0;color:#0f172a}
.station-panel-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.operator-simple-window{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;background:#f1f5f9;border:1px solid #cbd5e1;padding:4px 10px;color:#475569;font-size:12px;font-weight:800}
.operator-simple-queue,.operator-simple-completed{display:flex;flex-direction:column;gap:10px}
.operator-simple-queue-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:9px;padding:12px}
.operator-simple-queue-card.is-next{border-color:#60a5fa;background:#eff6ff}
.operator-simple-queue-card.is-priority{border-color:#f59e0b;background:#fffbeb}
.operator-simple-queue-rank{width:36px;height:36px;border-radius:999px;background:#0f172a;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800}
.operator-simple-card-title{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.operator-simple-card-title strong{font-size:16px;color:#0f172a}
.operator-simple-card-title span{font-size:11px;text-transform:uppercase;font-weight:800;background:#dbeafe;color:#1e3a8a;border:1px solid #93c5fd;border-radius:999px;padding:3px 7px}
.operator-simple-queue-main h3{margin:8px 0 4px;font-size:22px;color:#0f172a}
.operator-simple-queue-main p{margin:0 0 10px;color:#334155}
.operator-simple-queue-main dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}
.operator-simple-queue-main dl>div{background:#fff;border:1px solid #e2e8f0;border-radius:7px;padding:8px;min-width:0}
.operator-simple-queue-main dt{font-size:10px;text-transform:uppercase;color:#64748b;font-weight:800}
.operator-simple-queue-main dd{margin:3px 0 0;color:#0f172a;font-weight:700;overflow-wrap:anywhere}
.operator-simple-linked{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.operator-simple-linked span{font-size:12px;background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;border-radius:999px;padding:4px 8px}
.operator-simple-queue-action{display:flex;align-items:center}
.operator-simple-queue-action form{margin:0}
.operator-simple-completed-card{display:flex;justify-content:space-between;gap:12px;padding:12px;border-radius:8px;border:1px solid #e2e8f0;background:#f8fafc}
.operator-simple-completed-card strong{color:#0f172a}
.operator-simple-completed-card p{margin:4px 0 0;color:#475569;font-size:12px}
.operator-work-header{background:#164e63}
.operator-work-actions{display:grid;grid-template-columns:repeat(2,minmax(128px,1fr));gap:8px;align-content:start;min-width:360px}
.operator-work-actions .action-btn,.operator-work-actions button{width:100%;min-height:48px;margin:0;text-align:center}
.operator-work-complete{background:#047857!important;border-color:#10b981!important;color:#fff!important}
.operator-work-grid{display:grid;grid-template-columns:minmax(420px,1.1fr) minmax(340px,.9fr);gap:16px;align-items:start}
.operator-work-panel-wide{grid-column:1/-1}
.operator-work-panel-primary{border-color:#67e8f9;background:#ecfeff}
.operator-work-instruction{margin:0 0 10px;padding:12px;border-radius:8px;background:#fff;border:1px solid #bae6fd;color:#0f172a;font-size:16px;line-height:1.4}
.operator-work-muted{margin:0;color:#64748b}
.operator-work-movement{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.operator-work-movement>div{background:#fff;border:1px solid #dbe2ea;border-radius:8px;padding:12px}
.operator-work-movement span{display:block;font-size:11px;text-transform:uppercase;color:#64748b;font-weight:800}
.operator-work-movement strong{display:block;margin-top:4px;color:#0f172a;font-size:18px}
.operator-work-docs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.operator-work-doc-card{min-height:82px;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:12px;border-radius:8px;text-decoration:none;background:#eff6ff;border:1px solid #93c5fd;color:#1e3a8a}
.operator-work-doc-card strong{font-size:17px}
.operator-work-doc-card span{font-size:12px;color:#475569}
.operator-work-doc-card.is-missing{background:#f8fafc;border-color:#e2e8f0;color:#94a3b8}
.operator-work-table th,.operator-work-table td{font-size:13px}
.operator-work-pallet-list,.operator-work-route-list{display:flex;flex-direction:column;gap:8px}
.operator-work-pallet-list>div,.operator-work-route-list>div{display:flex;justify-content:space-between;gap:10px;padding:10px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0}
.operator-work-pallet-list span,.operator-work-route-list span{color:#475569;font-size:12px;text-align:right}
.storage-bridge-header{background:#14532d}
.storage-bridge-actions{display:grid;grid-template-columns:repeat(2,minmax(92px,1fr));gap:8px;align-content:start;min-width:210px}
.storage-bridge-actions form{margin:0}
.storage-bridge-actions .action-btn,.storage-bridge-actions button{width:100%;margin:0;min-height:38px;text-align:center}
@media (max-width: 1240px){.operator-simple-grid,.operator-work-grid{grid-template-columns:1fr}.operator-work-panel-wide{grid-column:auto}.operator-work-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width: 820px){.operator-simple-header,.operator-work-header{flex-direction:column}.operator-simple-start,.operator-start-next,.operator-work-actions{min-width:0;width:100%}.station-summary-grid,.station-action-grid,.operator-simple-metrics,.operator-work-summary,.operator-simple-queue-main dl,.operator-work-movement,.operator-work-docs{grid-template-columns:1fr}.operator-simple-queue-card{grid-template-columns:36px minmax(0,1fr)}.operator-simple-queue-action{grid-column:1/-1}.operator-work-actions,.storage-bridge-actions{grid-template-columns:1fr}}

/* Machine operator console */
.operator-module-shell{background:#f6f9fd;border-color:#d8e0ea;box-shadow:0 14px 36px rgba(10,34,72,.12);min-height:calc(100vh - 92px)}
.operator-module-shell .eng-module-header{grid-template-columns:300px minmax(280px,1fr) 260px 390px 160px;gap:16px;background:#fff;border-bottom:1px solid #dbe3ee;padding:18px 24px}
.operator-module-shell .eng-module-brand{min-height:64px;color:#072f73;border-right:1px solid #d4ddea}.operator-module-shell .eng-module-logo{font-size:54px;color:#123c86}
.operator-module-shell .eng-module-brand strong,.operator-module-shell .eng-module-brand small{color:#0b1741}.operator-module-shell .eng-module-title{min-height:64px;border-right:0}
.operator-module-shell .eng-module-title h1{font-size:32px;color:#0b1741}.operator-module-shell .eng-module-title p{margin-top:9px;color:#123c86;font-size:15px}
.operator-module-status-strip{display:grid;grid-template-columns:1.35fr .75fr;gap:0;border:1px solid #dbe3ee;border-radius:8px;background:#fff;box-shadow:0 6px 16px rgba(15,45,90,.06);overflow:hidden}
.operator-module-status-strip div{display:block!important;padding:10px 14px;border-left:1px solid #e6edf5}.operator-module-status-strip div:first-child{border-left:0}.operator-module-status-strip dt{display:block;color:#51617a;font-size:12px;font-weight:800}.operator-module-status-strip dd{display:flex;align-items:center;gap:8px;margin:4px 0 0;color:#0b7a29;font-size:14px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.operator-module-status-card:nth-child(2) dd{color:#0b1741;font-size:22px;letter-spacing:0;justify-content:center}.operator-module-status-dot{width:14px;height:14px;border-radius:50%;background:#24b84a;box-shadow:0 0 0 4px #e8f8ed}
.operator-module-shell .eng-module-actions{grid-template-columns:repeat(6,1fr);border-color:#dbe3ee;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 6px 16px rgba(15,45,90,.06)}.operator-module-shell .eng-module-actions form{display:contents}.operator-module-shell .eng-module-actions a,.operator-module-shell .eng-module-actions button{min-height:64px;border-color:#dbe3ee;color:#0b1741}.operator-module-shell .eng-module-actions a:hover,.operator-module-shell .eng-module-actions button:hover{color:#0b4fb3;background:#f4f8ff}
.operator-module-user-card{min-height:64px;border-left:1px solid #d4ddea;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#0b1741}.operator-module-user-card span{font-size:12px;font-weight:800;color:#51617a}.operator-module-user-card strong{font-size:16px;text-transform:uppercase}.operator-module-user-card small{font-size:10px;line-height:1.2;text-transform:uppercase;color:#0b1741;font-weight:800}
.operator-module-shell .eng-module-layout{grid-template-columns:260px minmax(0,1fr)}.operator-module-shell .eng-side-menu{background:#f8fbff;border-right-color:#dbe3ee;padding:18px 14px;gap:14px}.operator-module-shell .eng-side-menu section{border-bottom-color:#dbe3ee}.operator-module-shell .eng-side-menu h2 a{color:#083c91}.operator-module-shell .eng-side-menu section>a,.operator-module-shell .module-side-nav .module-side-nav-group>a,.operator-module-shell .module-side-nav .module-side-nav-group-title{border-radius:6px;color:#0b1741;padding-top:8px;padding-bottom:8px}.operator-module-shell .module-side-nav section>a.active,.operator-module-shell .module-side-nav .module-side-nav-group>a.active,.operator-module-shell .module-side-nav .module-side-nav-group-title.active{background:#eaf2ff;color:#083c91;box-shadow:inset 4px 0 0 #1768e8}.operator-module-shell .eng-module-main{padding:24px 28px;background:#f6f9fd}
.operator-console-shell{display:flex;flex-direction:column;gap:18px;color:#0b1741}.operator-console-eyebrow{margin:0 0 5px;color:#1256c7;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:0}.operator-console-card,.operator-hero-panel,.operator-task-card,.operator-summary-strip{background:#fff;border:1px solid #dbe3ee;border-radius:8px;box-shadow:0 8px 22px rgba(15,45,90,.07)}
.operator-hero-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 30px}.operator-hero-state{display:flex;align-items:center;gap:18px}.operator-state-mark{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:#dcfce7;color:#08832c;font-weight:900;border:2px solid #bbf7d0}.operator-hero-panel h2{margin:0;color:#0b1741;font-size:30px}.operator-hero-panel p{margin:5px 0 0;color:#52617a;font-weight:700}.operator-hero-actions{display:grid;grid-template-columns:1fr;gap:10px;min-width:190px}.operator-hero-actions form{margin:0}.operator-primary-action,.operator-secondary-action{min-height:48px;border-radius:8px;border:1px solid #1768e8;background:#1768e8;color:#fff;font:inherit;font-weight:900;display:flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer}.operator-primary-action:disabled{opacity:.45;cursor:not-allowed}.operator-secondary-action{background:#fff;color:#0b4fb3}
.operator-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden}.operator-summary-strip>div{min-height:92px;padding:20px 24px;border-left:1px solid #e2e9f2;display:flex;flex-direction:column;justify-content:center}.operator-summary-strip>div:first-child{border-left:0}.operator-summary-strip span{font-size:12px;text-transform:uppercase;color:#5d6b83;font-weight:900}.operator-summary-strip strong{margin-top:7px;font-size:24px;color:#0b1741;line-height:1.1;overflow-wrap:anywhere}.operator-active-summary strong{font-size:22px}
.operator-session-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;background:#edf4ff;border:1px solid #cfe0f7;border-radius:8px}.operator-session-strip span{margin-right:auto;font-weight:900;color:#0b1741}.operator-session-strip form{margin:0}.operator-session-strip a,.operator-session-strip button{border:1px solid #b8c9de;background:#fff;border-radius:7px;color:#0b1741;text-decoration:none;font:inherit;font-size:12px;font-weight:900;padding:8px 11px;cursor:pointer}.operator-session-strip button:disabled{opacity:.45;cursor:not-allowed}
.operator-console-section-header,.operator-task-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.operator-console-section-header h2,.operator-task-header h2{margin:0;color:#0b1741;font-size:20px}.operator-console-section-header>span{align-self:center;border:1px solid #dbe3ee;background:#f3f7fc;border-radius:999px;padding:6px 10px;color:#4f6078;font-size:12px;font-weight:900;text-transform:uppercase}
.operator-table-wrap{overflow:auto}.operator-queue-table{width:100%;border-collapse:collapse;font-size:13px;color:#0b1741}.operator-queue-table th{background:#f2f6fb;color:#4f6078;font-size:11px;text-transform:uppercase;text-align:left;border-bottom:1px solid #dbe3ee;padding:10px 12px}.operator-queue-table td{border-bottom:1px solid #e6edf5;padding:12px;vertical-align:middle}.operator-queue-table tr.is-next td{background:#f3f8ff}.operator-queue-table small{color:#65738a;font-weight:700}.operator-queue-table.compact th,.operator-queue-table.compact td{padding:8px 9px;font-size:12px}.operator-position-badge{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e8f1ff;color:#0b4fb3;font-weight:900}.operator-status-pill{display:inline-flex;align-items:center;border:1px solid #cbd8ea;background:#f4f7fb;border-radius:999px;padding:5px 9px;color:#334155;font-size:11px;font-weight:900;text-transform:uppercase;white-space:nowrap}.operator-status-pill.is-next,.operator-status-pill.is-operating{border-color:#bfdbfe;background:#e8f1ff;color:#0b4fb3}.operator-status-pill.is-hold{border-color:#fed7aa;background:#fff7ed;color:#b45309}.operator-linked-note{display:block;margin-top:5px}.operator-row-actions{display:flex;gap:7px;flex-wrap:wrap}.operator-row-actions form{margin:0}.operator-row-actions a,.operator-row-actions button{border:1px solid #c6d4e5;background:#fff;border-radius:7px;padding:7px 10px;color:#0b4fb3;text-decoration:none;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.operator-row-actions button{background:#1768e8;border-color:#1768e8;color:#fff}.operator-row-actions button:disabled{opacity:.45;cursor:not-allowed}
.operator-hold-reason{display:block;margin-top:5px}.operator-hold-reason span{display:block;color:#b45309;font-weight:800}
.operator-maintenance-console{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.operator-console-card{padding:18px}.operator-maintenance-list,.operator-completed-list,.operator-material-list{display:grid;gap:8px}.operator-maintenance-list>div,.operator-maintenance-list>a,.operator-completed-list>div,.operator-material-list>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #e0e8f2;border-radius:7px;background:#fbfdff;color:#0b1741;text-decoration:none}.operator-maintenance-list strong,.operator-completed-list strong,.operator-material-list strong{color:#0b1741}.operator-maintenance-list span,.operator-completed-list span,.operator-material-list span{color:#52617a;font-size:12px;text-align:right;font-weight:700}.operator-maintenance-list p,.operator-completed-list p{margin:0;color:#64748b}.operator-completed-list em{font-style:normal;color:#0b4fb3;font-weight:900;white-space:nowrap}
.operator-task-card{padding:24px 28px}.operator-task-header{align-items:center;border-bottom:1px solid #e6edf5;padding-bottom:14px}.operator-task-header h2{font-size:26px}.operator-task-instruction{margin:12px 0 0;padding:11px 14px;border-radius:7px;background:#f5f8fc;color:#334155;font-weight:700}.operator-task-instruction.is-muted{color:#65738a}.operator-work-matrix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.operator-work-matrix article{border:1px solid #d8e2ef;border-radius:8px;background:#f9fbfe;padding:14px;overflow:hidden}.operator-work-matrix h3{margin:0;color:#1256c7;font-size:13px;text-transform:uppercase}.operator-work-matrix article>strong{display:block;margin:6px 0 12px;color:#0b1741;font-size:18px}.operator-action-tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #dbe3ee;border-radius:8px;overflow:hidden;margin-top:18px}.operator-action-tile-grid[hidden]{display:none!important}.operator-action-tile-grid form{margin:0}.operator-action-tile{width:100%;min-height:92px;border:0;border-left:1px solid #dbe3ee;background:#fff;color:#0b1741;font:inherit;text-align:left;padding:16px 18px;display:flex;flex-direction:column;justify-content:center;gap:5px;cursor:pointer}.operator-action-tile-grid form:first-child .operator-action-tile,.operator-action-tile-grid>.operator-action-tile:first-child{border-left:0}.operator-action-tile strong{font-size:14px;color:#0b1741}.operator-action-tile span{font-size:12px;color:#5f6f86;line-height:1.35}.operator-action-tile.is-complete{background:#dcfce7}.operator-action-tile.is-complete strong{color:#08712a}.operator-action-tile.is-scrap strong{color:#bf1f2f}.operator-action-tile:disabled{opacity:.45;cursor:not-allowed}.operator-return-choice .operator-action-tile{text-align:center;align-items:center}
.operator-document-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #dbe3ee;border-radius:8px;overflow:hidden;margin-top:18px}.operator-document-grid a,.operator-document-grid div{min-height:82px;padding:16px 18px;border-left:1px solid #dbe3ee;background:#fff;text-decoration:none;color:#0b1741;display:flex;flex-direction:column;justify-content:center;gap:5px}.operator-document-grid a:first-child,.operator-document-grid div:first-child{border-left:0}.operator-document-grid strong{color:#0b1741}.operator-document-grid span{color:#0b4fb3;font-size:12px;font-weight:900}.operator-document-grid .is-missing strong,.operator-document-grid .is-missing span{color:#8b98aa}.operator-material-pickup{border-color:#bfdbfe;background:#f8fbff}
@media (max-width:1500px){.operator-module-shell .eng-module-header{grid-template-columns:260px minmax(250px,1fr) 230px 320px 150px}.operator-module-shell .eng-module-logo{font-size:46px}.operator-module-shell .eng-module-title h1{font-size:28px}}
@media (max-width:1240px){.operator-module-shell .eng-module-header{grid-template-columns:1fr 1fr}.operator-module-user-card{border-left:0;align-items:flex-start}.operator-module-shell .eng-module-layout{grid-template-columns:1fr}.operator-maintenance-console,.operator-work-matrix{grid-template-columns:1fr}.operator-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.operator-summary-strip>div:nth-child(odd){border-left:0}.operator-action-tile-grid,.operator-document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operator-action-tile-grid form:nth-child(odd) .operator-action-tile,.operator-document-grid a:nth-child(odd),.operator-document-grid div:nth-child(odd){border-left:0}}
@media (max-width:760px){.operator-module-shell .eng-module-header,.operator-module-status-strip,.operator-summary-strip,.operator-action-tile-grid,.operator-document-grid{grid-template-columns:1fr}.operator-module-shell .eng-module-actions{grid-template-columns:repeat(2,1fr)}.operator-summary-strip>div,.operator-action-tile,.operator-document-grid a,.operator-document-grid div{border-left:0;border-top:1px solid #e2e9f2}.operator-summary-strip>div:first-child,.operator-action-tile-grid form:first-child .operator-action-tile,.operator-document-grid a:first-child,.operator-document-grid div:first-child{border-top:0}.operator-hero-panel{flex-direction:column;align-items:flex-start}.operator-hero-actions{width:100%}.operator-table-wrap{margin:0 -8px}.operator-task-card{padding:18px}.operator-row-actions{flex-direction:column}.operator-row-actions a,.operator-row-actions button{width:100%}}

.operator-icon-sprite{position:absolute;width:0;height:0;overflow:hidden}.operator-svg,.operator-action-icon,.operator-doc-icon{width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:none}.operator-module-shell{--op-blue:#0b3b8f;--op-blue-600:#0d47a1;--op-blue-500:#1768e8;--op-blue-100:#e8f1ff;--op-green:#0b8f35;--op-green-100:#dcfce7;--op-red:#dc2626;--op-red-100:#fee2e2;--op-border:#d8e3f1;--op-text:#071a44}
.operator-module-shell .eng-module-header{box-shadow:0 2px 12px rgba(7,26,68,.05)}.operator-module-shell .eng-module-actions a,.operator-module-shell .eng-module-actions button{flex-direction:column;gap:5px}.operator-module-shell .eng-module-actions .operator-svg{width:24px;height:24px;color:var(--op-blue)}.operator-module-user-card .operator-user-icon{width:30px;height:30px;color:var(--op-blue);margin-bottom:2px}.operator-module-status-strip{border-color:var(--op-border)}.operator-module-status-card:first-child dd{font-size:15px}.operator-module-status-dot{animation:operatorPulse 1.8s ease-in-out infinite}@keyframes operatorPulse{0%,100%{box-shadow:0 0 0 4px #e8f8ed}50%{box-shadow:0 0 0 7px rgba(36,184,74,.16)}}
.operator-module-shell .eng-side-menu section>a,.operator-module-shell .module-side-nav .module-side-nav-group>a,.operator-module-shell .module-side-nav .module-side-nav-group-title{display:flex;align-items:center;gap:10px;min-height:34px}.operator-module-shell .eng-side-menu section>a::before,.operator-module-shell .module-side-nav .module-side-nav-group>a::before,.operator-module-shell .module-side-nav .module-side-nav-group-title::before{content:"";width:18px;height:18px;border:1.8px solid #0b3b8f;border-radius:5px;background:linear-gradient(180deg,#fff,#eef5ff);box-shadow:inset 0 0 0 3px #fff;flex:none}.operator-module-shell .module-side-nav section>a.active::before,.operator-module-shell .module-side-nav .module-side-nav-group>a.active::before,.operator-module-shell .module-side-nav .module-side-nav-group-title.active::before{background:#1768e8;border-color:#1768e8;box-shadow:inset 0 0 0 4px #e8f1ff}
.operator-console-card,.operator-hero-panel,.operator-task-card,.operator-summary-strip{border-color:var(--op-border);box-shadow:0 10px 26px rgba(7,26,68,.07)}.operator-hero-panel{background:linear-gradient(100deg,#f4fff7 0%,#fff 58%,#f4f8ff 100%);border-color:#bfe8cb}.operator-state-mark{background:#f0fff4;border:2px solid #12a13a;color:#08912f;box-shadow:0 8px 20px rgba(8,145,47,.14)}.operator-state-mark .operator-svg{width:38px;height:38px;stroke-width:2.4}.operator-hero-panel h2{font-size:34px;color:#061744}.operator-primary-action{gap:10px;box-shadow:0 9px 18px rgba(23,104,232,.22);background:linear-gradient(180deg,#155bd5,#0b3b8f);border-color:#0b3b8f}.operator-primary-action .operator-svg{width:20px;height:20px;fill:#fff;stroke:#fff}.operator-secondary-action{gap:9px;border-color:#8fb5ee;background:#fff;color:#0b3b8f}.operator-secondary-action:hover,.operator-row-actions a:hover{background:#f3f8ff}
.operator-summary-strip>div{position:relative;background:linear-gradient(180deg,#fff,#fbfdff)}.operator-summary-strip span{display:flex;align-items:center;gap:9px;color:#425675}.operator-summary-strip span .operator-svg{color:#0b3b8f}.operator-summary-strip strong{font-weight:900;color:#071a44}.operator-active-summary>div{min-height:86px}.operator-active-summary>div:first-child strong{color:#0b3b8f}
.operator-console-section-header h2,.operator-task-header h2{font-weight:900}.operator-task-header h2{display:flex;align-items:center;gap:10px}.operator-task-title-icon{width:30px;height:30px;color:#1768e8;stroke-width:2.1}.operator-status-pill{box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}.operator-status-pill.is-next,.operator-status-pill.is-operating{background:#e8f1ff;border-color:#a8c9ff;color:#0b3b8f}.operator-status-pill.is-operating::before{content:"";width:9px;height:9px;border-radius:50%;background:#1768e8;margin-right:7px}
.operator-queue-table th{background:#f6f9ff;color:#375071;font-weight:900}.operator-queue-table td{font-weight:750}.operator-position-badge{background:#0b3b8f;color:#fff;box-shadow:0 5px 12px rgba(11,59,143,.18)}.operator-row-actions a,.operator-row-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px}.operator-row-actions button .operator-svg{fill:#fff;stroke:#fff}
.operator-action-tile{position:relative;gap:7px;transition:background .15s ease,transform .15s ease,box-shadow .15s ease}.operator-action-tile:hover:not(:disabled){background:#f5f9ff;transform:translateY(-1px)}.operator-action-icon{width:46px;height:46px;padding:10px;border-radius:50%;background:#e8f1ff;color:#0b3b8f;stroke-width:2.2}.operator-action-tile.is-complete{background:linear-gradient(180deg,#dcfce7,#c7f9d2)}.operator-action-tile.is-complete .operator-action-icon{background:#078c31;color:#fff;stroke:#fff}.operator-action-tile.is-scrap .operator-action-icon{background:#fee2e2;color:#dc2626}.operator-action-tile strong{font-weight:900}.operator-action-tile span{font-weight:650}
.operator-document-grid a,.operator-document-grid div{align-items:flex-start}.operator-doc-icon{width:42px;height:42px;padding:9px;border:1px solid #bcd2f0;border-radius:7px;background:#eff6ff;color:#0b3b8f}.operator-document-grid a:nth-child(2) .operator-doc-icon,.operator-document-grid a:nth-child(3) .operator-doc-icon{background:#fff1f2;border-color:#fecdd3;color:#dc2626}.operator-document-grid .is-missing .operator-doc-icon{background:#f8fafc;border-color:#dbe3ee;color:#64748b}.operator-document-grid strong{font-weight:900}.operator-maintenance-list strong,.operator-completed-list strong,.operator-material-list strong{display:flex;align-items:center;gap:8px;font-weight:900}.operator-maintenance-list strong .operator-svg,.operator-completed-list strong .operator-svg,.operator-material-list strong .operator-svg{color:#0b3b8f}.operator-material-list>div{background:#f6faff}
.operator-focused-nav .module-side-nav-group{display:grid;gap:4px;margin-top:8px}.operator-focused-nav .module-side-nav-sub{font-size:13px;font-weight:850}.operator-focused-nav section:last-child a{min-height:38px}.operator-lockout-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;border:1px solid #f2c36b;border-radius:8px;background:#fff8e6;color:#583b00;box-shadow:0 8px 18px rgba(88,59,0,.07)}.operator-lockout-banner strong{font-size:14px;text-transform:uppercase}.operator-lockout-banner span{font-weight:750;text-align:right}.operator-hero-panel.is-empty{background:linear-gradient(100deg,#f8fafc 0%,#fff 58%,#eef6ff 100%);border-color:#ccd8e7}.operator-hero-panel.is-empty .operator-state-mark{background:#f8fafc;border-color:#94a3b8;color:#475569;box-shadow:none}.operator-work-table-scroll{max-height:305px;overflow:auto;border:1px solid #e2e9f2;border-radius:7px;background:#fff}.operator-work-table-scroll .operator-queue-table th{position:sticky;top:0;z-index:1}.operator-section-note{margin:0 0 10px;color:#52617a;font-size:12px;font-weight:750;line-height:1.35}.operator-action-tile-grid{grid-template-columns:1.35fr repeat(3,minmax(0,1fr))}.operator-action-tile{min-height:104px}.operator-action-tile strong{font-size:15px}.operator-action-tile:disabled{opacity:.5}.operator-action-tile.is-complete{box-shadow:inset 4px 0 0 #078c31}.operator-return-choice{grid-template-columns:repeat(4,minmax(0,1fr))}.operator-return-choice .operator-action-tile{align-items:center;text-align:center}.operator-material-list>div{align-items:flex-start}.operator-material-list span{text-align:left;line-height:1.35}.operator-module-shell .eng-module-layout{grid-template-columns:250px minmax(0,1fr)}
.operator-focused-nav .module-side-nav-group:not(.active) .module-side-nav-sub{display:none}.operator-focused-nav .module-side-nav-group-title{justify-content:space-between}.operator-focused-nav .module-side-nav-group-title::after{content:"+";margin-left:auto;font-weight:900;color:#64748b}.operator-focused-nav .module-side-nav-group.active .module-side-nav-group-title::after{content:"-";color:#083c91}
.operator-top-stack{display:flex;flex-direction:column;gap:0}.operator-top-stack>.operator-summary-strip{border-radius:8px 8px 0 0}.operator-attached-actions,.operator-attached-ready{margin-top:0;border-top:0;border-radius:0 0 8px 8px}.operator-attached-ready{box-shadow:0 10px 26px rgba(7,26,68,.07)}.operator-top-stack+.operator-session-strip,.operator-top-stack+.operator-console-card,.operator-top-stack+.operator-material-pickup{margin-top:0}.operator-attached-actions .operator-action-tile{border-top:1px solid #e2e9f2}
.operator-module-shell .eng-module-actions.operator-complete-work-actions{grid-template-columns:1fr}.operator-module-shell .eng-module-actions.operator-complete-work-actions .operator-header-complete-work{min-height:86px;background:linear-gradient(180deg,#078c31,#056527);color:#fff;border-left:0;font-size:16px;gap:10px;text-transform:uppercase;letter-spacing:0}.operator-module-shell .eng-module-actions.operator-complete-work-actions .operator-header-complete-work .operator-svg{width:30px;height:30px;color:#fff;stroke:#fff}.operator-module-shell .eng-module-actions.operator-complete-work-actions .operator-header-complete-work:hover:not(:disabled){background:linear-gradient(180deg,#089a37,#056527);color:#fff}.operator-module-shell .eng-module-actions.operator-complete-work-actions .operator-header-complete-work:disabled{opacity:.5;cursor:not-allowed}
.operator-mobile-simple{display:grid;gap:12px}.operator-mobile-card{display:grid;gap:10px;padding:18px;border:1px solid #d8e3f1;border-radius:8px;background:#fff;box-shadow:0 8px 20px rgba(7,26,68,.07)}.operator-mobile-label{display:flex;align-items:center;gap:8px;color:#52617a;font-size:12px;font-weight:900;text-transform:uppercase}.operator-mobile-card>strong{color:#071a44;font-size:28px;font-weight:900;line-height:1.05;overflow-wrap:anywhere}.operator-mobile-card small{color:#52617a;font-size:14px;font-weight:750;line-height:1.35}.operator-mobile-action-stack,.operator-mobile-return-stack{display:grid;gap:10px}.operator-mobile-action-stack form,.operator-mobile-return-stack form{margin:0}.operator-mobile-primary-action,.operator-mobile-secondary-action,.operator-mobile-secondary-link{width:100%;min-height:58px;border:1px solid #0b3b8f;border-radius:8px;background:#0b3b8f;color:#fff;font:inherit;font-size:16px;font-weight:900;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:10px;text-align:center;cursor:pointer}.operator-mobile-primary-action .operator-svg,.operator-mobile-secondary-action .operator-svg{width:22px;height:22px;stroke:#fff}.operator-mobile-secondary-action,.operator-mobile-secondary-link{background:#fff;color:#0b3b8f}.operator-mobile-secondary-action .operator-svg{stroke:#0b3b8f}.operator-mobile-primary-action:disabled,.operator-mobile-secondary-action:disabled{opacity:.5;cursor:not-allowed}.operator-mobile-facts{display:grid;grid-template-columns:1fr;gap:8px}.operator-mobile-facts>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #e8eef6}.operator-mobile-facts span{color:#52617a;font-size:12px;font-weight:900;text-transform:uppercase}.operator-mobile-facts b{color:#071a44;font-size:16px;font-weight:900;text-align:right;overflow-wrap:anywhere}.operator-mobile-operating .operator-mobile-action-card{border-color:#bfe8cb;background:#f7fff9}
.operator-mobile-action-grid,.operator-mobile-document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.operator-mobile-action-grid form{margin:0}.operator-mobile-icon-action{width:100%;min-height:104px;border:1px solid #d8e3f1;border-radius:8px;background:#fff;color:#071a44;font:inherit;text-decoration:none;padding:12px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;text-align:left;cursor:pointer}.operator-mobile-icon-action strong{font-size:13px;font-weight:900;line-height:1.15}.operator-mobile-icon-action span{color:#0b4fb3;font-size:12px;font-weight:900;line-height:1.2}.operator-mobile-icon-action .operator-action-icon{width:42px;height:42px;padding:9px}.operator-mobile-icon-action.is-complete{background:linear-gradient(180deg,#dcfce7,#c7f9d2);border-color:#b7efc4}.operator-mobile-icon-action.is-complete .operator-action-icon{background:#078c31;color:#fff;stroke:#fff}.operator-mobile-icon-action.is-scrap strong{color:#bf1f2f}.operator-mobile-icon-action.is-scrap .operator-action-icon{background:#fee2e2;color:#dc2626}.operator-mobile-icon-action:disabled{opacity:.5;cursor:not-allowed}.operator-mobile-document-card{gap:12px}.operator-mobile-document-action .operator-doc-icon{width:42px;height:42px}.operator-mobile-document-action.is-missing{cursor:default}.operator-mobile-document-action.is-missing strong,.operator-mobile-document-action.is-missing span{color:#8b98aa}
.operator-mobile-header-action-card{grid-column:5;display:grid;gap:8px;align-self:stretch;padding:12px;border:1px solid #bfe8cb;border-radius:8px;background:#f7fff9;box-shadow:0 6px 16px rgba(15,45,90,.06)}.operator-mobile-header-action-card strong{color:#071a44;font-size:18px;font-weight:900;line-height:1.1;overflow-wrap:anywhere}.operator-mobile-header-action-card .operator-mobile-primary-action{min-height:42px;font-size:14px}.operator-mobile-queue-stack{display:grid;gap:10px}.operator-mobile-queue-card{position:relative}.operator-mobile-queue-card form{margin:0}.operator-mobile-small-start{justify-self:end;min-width:96px;min-height:38px;border:1px solid #0b3b8f;border-radius:8px;background:#0b3b8f;color:#fff;font:inherit;font-size:14px;font-weight:900;cursor:pointer}.operator-mobile-small-start:disabled{background:#f1f5f9;color:#64748b;border-color:#cbd5e1;cursor:not-allowed}
.operator-mobile-work-card{border-color:#bfe8cb;background:#f7fff9}.operator-mobile-work-card .operator-mobile-action-stack,.operator-mobile-work-card .operator-mobile-action-grid,.operator-mobile-work-card .operator-mobile-return-stack{margin-top:6px;padding-top:12px;border-top:1px solid #d7f0df}.operator-mobile-return-stack[hidden]{display:none!important}
.mobile-launch-queue-preview{display:grid;gap:6px;padding:10px;border:1px solid #e2e9f2;border-radius:8px;background:#f8fbff;color:#334155;font-size:13px;font-weight:800}.mobile-launch-station-card .operator-mobile-primary-action{margin-top:2px}
.operator-sidebar-toggle[aria-expanded="false"]{background:#0b3b8f!important;color:#fff!important}.operator-module-shell.operator-sidebar-collapsed .eng-module-layout{grid-template-columns:1fr!important}.operator-module-shell.operator-sidebar-collapsed .operator-global-side-nav{display:none}.operator-global-side-nav{min-width:0}.operator-module-shell .eng-module-actions .operator-sidebar-toggle{font:inherit;cursor:pointer}
.operator-completion-shell .operator-task-card{padding:24px 28px}.operator-completion-card{display:flex;flex-direction:column;gap:18px}.operator-completion-route{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.operator-completion-route>div{padding:14px;border:1px solid #d8e3f1;border-radius:8px;background:#f8fbff}.operator-completion-route span,.operator-completion-line label span,.operator-completion-static span,.operator-completion-disposition label span,.operator-completion-number span{display:flex;align-items:center;gap:8px;color:#52617a;font-size:12px;font-weight:900;text-transform:uppercase}.operator-completion-route span .operator-svg{color:#0b3b8f}.operator-completion-route strong{display:block;margin-top:7px;color:#071a44;font-size:17px;font-weight:900;line-height:1.2}.operator-completion-entry,.operator-completion-disposition{border:1px solid #d8e3f1;border-radius:8px;background:#fbfdff;padding:16px}.operator-completion-number{display:grid;grid-template-columns:minmax(180px,260px);gap:7px;margin-bottom:12px}.operator-completion-number input{font-size:28px;font-weight:900;min-height:54px;text-align:center;border:1px solid #b8cbe4;border-radius:8px;background:#fff;color:#071a44}.operator-completion-lines{display:grid;gap:10px}.operator-completion-line{display:grid;grid-template-columns:minmax(210px,1.35fr) repeat(4,minmax(110px,.75fr));gap:10px;align-items:end;padding:12px;border:1px solid #e0e8f2;border-radius:8px;background:#fff}.operator-completion-line-main strong{display:block;color:#071a44;font-size:18px;font-weight:900;overflow-wrap:anywhere}.operator-completion-line-main span{display:block;margin-top:4px;color:#52617a;font-size:12px;font-weight:800}.operator-completion-line label{display:grid;gap:6px}.operator-completion-line input,.operator-completion-disposition select,.operator-completion-storage input,.operator-completion-storage select{width:100%;min-height:42px;border:1px solid #c6d4e5;border-radius:7px;background:#fff;color:#071a44;font:inherit;font-weight:850;padding:8px 10px}.operator-completion-line input[readonly]{background:#f4f7fb;color:#52617a}.operator-completion-static{display:flex;min-height:42px;flex-direction:column;justify-content:center;padding:8px 10px;border:1px solid #e0e8f2;border-radius:7px;background:#f6faff}.operator-completion-static strong{color:#071a44;font-size:18px}.operator-completion-disposition label{display:grid;gap:7px}.operator-completion-storage{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.operator-completion-final-note{display:flex;align-items:center;gap:12px}.operator-completion-final-note strong{display:block;color:#071a44}.operator-completion-final-note span{display:block;color:#52617a;font-size:13px;font-weight:750}.operator-completion-actions{grid-template-columns:1fr 1.35fr 1fr;margin-top:0}.operator-action-link{text-decoration:none;box-sizing:border-box}.operator-action-link:hover{color:#0b1741}.operator-completion-route-list{padding:18px}.operator-completion-route-list .operator-console-section-header{margin-bottom:10px}
@media (max-width:1240px){.operator-focused-nav{display:none}.operator-action-tile-grid,.operator-return-choice{grid-template-columns:repeat(2,minmax(0,1fr))}.operator-lockout-banner{align-items:flex-start;flex-direction:column}.operator-lockout-banner span{text-align:left}.operator-mobile-header-action-card{grid-column:1 / -1}}
@media (max-width:1240px){.operator-completion-route{grid-template-columns:1fr}.operator-completion-line{grid-template-columns:repeat(2,minmax(0,1fr))}.operator-completion-line-main{grid-column:1/-1}.operator-completion-storage{grid-template-columns:1fr}.operator-completion-actions{grid-template-columns:1fr}}
@media (max-width:760px){.operator-action-tile-grid,.operator-return-choice{grid-template-columns:1fr}.operator-work-table-scroll{max-height:none}.operator-completion-shell .operator-task-card{padding:18px}.operator-completion-line{grid-template-columns:1fr}.operator-completion-number{grid-template-columns:1fr}}
.operator-completion-focused{width:100%;max-width:1120px;margin:0 auto}.operator-completion-focused .operator-completion-line{grid-template-columns:repeat(4,minmax(58px,max-content));align-items:end;gap:8px 12px}.operator-completion-focused .operator-completion-line-main{grid-column:1/-1}.operator-completion-focused .operator-completion-line-main strong{font-size:17px}.operator-completion-focused .operator-completion-line label{min-width:0;align-items:start}.operator-completion-focused .operator-completion-line input[type="number"]{width:5.25ch;max-width:5.25ch;min-height:38px;padding:6px 4px;text-align:center}.operator-completion-focused .operator-completion-static{width:6.5ch;min-width:6.5ch;min-height:38px;align-items:center;padding:6px 7px}.operator-completion-focused .operator-completion-static strong{font-size:16px}
.operator-route-quality-panel .operator-maintenance-list{margin-bottom:12px}.operator-route-quality-metric{grid-template-columns:minmax(240px,1fr) minmax(110px,max-content) minmax(110px,max-content);border:1px solid #e0e8f2}.operator-route-quality-metric legend{padding:0}.operator-route-quality-metric label{display:flex;align-items:center;gap:8px;min-height:42px;padding:8px 10px;border:1px solid #c6d4e5;border-radius:7px;background:#fff;color:#071a44;font-weight:900}.operator-route-quality-metric input[type="radio"]{width:auto;min-height:auto;padding:0}
@media (max-width:760px){.operator-completion-focused .operator-completion-line{grid-template-columns:repeat(2,minmax(58px,max-content))}.operator-completion-focused .operator-completion-line-main{grid-column:1/-1}}
.scanned-bending-completion-page .app-shell{min-height:100vh}
.scanned-bending-completion-page .app-shell>div{flex:1;min-width:0}
.scanned-bending-completion-page .main-content{flex:1;min-width:0;padding:0}
.operator-scan-completion.eng-module-shell{width:100%;max-width:680px;min-height:100vh;margin:0 auto;border:0;box-shadow:none;background:transparent}
.operator-scan-completion .eng-module-main{min-width:0;padding:16px 16px 64px;background:transparent}
.operator-scan-completion .operator-completion-focused{max-width:none;gap:12px}
.operator-scan-completion .operator-completion-shell .operator-task-card{padding:0;gap:12px;border:0;background:transparent;box-shadow:none}
.bending-scan-identity{display:grid;gap:5px;padding:4px 2px 2px;color:#071a44}
.bending-scan-identity a{width:max-content;margin-bottom:7px;color:#0b4fb3;font-weight:850;text-decoration:none}
.bending-scan-identity>span{font-size:11px;font-weight:900;letter-spacing:.08em;color:#52617a}
.bending-scan-identity h1{margin:0;font-size:27px;line-height:1.1;overflow-wrap:anywhere}
.bending-scan-identity p{margin:0;color:#52617a;font-size:13px;font-weight:700;overflow-wrap:anywhere}
.operator-scan-completion #bending-scan-questions{padding:18px;background:#fff}
.operator-scan-completion #bending-scan-questions h2{margin:0;font-size:22px;line-height:1.15}
.operator-scan-completion #bending-scan-questions>p{margin:7px 0 15px;color:#52617a}
.bending-scan-decision{display:grid;grid-template-columns:1fr;gap:9px}
.bending-scan-decision .action-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;box-sizing:border-box;text-align:center}
.operator-scan-completion #bending-scan-choices{display:grid;gap:14px;margin-top:18px}
.operator-scan-completion #bending-scan-choices fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;margin:0;padding:0;border:0}
.operator-scan-completion #bending-scan-choices legend{grid-column:1/-1;margin-bottom:7px;font-size:15px;font-weight:900;color:#071a44}
.operator-scan-completion #bending-scan-choices label{display:flex;align-items:center;gap:8px;min-height:48px;padding:8px 10px;border:1px solid #c6d4e5;border-radius:8px;background:#f8fbff;font-weight:800;line-height:1.2;cursor:pointer}
.operator-scan-completion #bending-scan-choices input[type=radio]{flex:none;width:18px;height:18px;margin:0;accent-color:#1256c7}
.operator-scan-completion #bending-scan-choices label:has(input:checked){border-color:#1768e8;background:#e8f1ff;box-shadow:inset 0 0 0 1px #1768e8}
.operator-scan-completion .operator-completion-route{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.operator-scan-completion .operator-completion-route>div{min-width:0;padding:11px}
.operator-scan-completion .operator-completion-route strong{font-size:14px;overflow-wrap:anywhere}
.operator-scan-completion .operator-completion-entry,.operator-scan-completion .operator-completion-disposition{min-width:0;padding:14px}
.operator-scan-completion .operator-completion-line{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.operator-scan-completion .operator-completion-line-main{grid-column:1/-1}
.operator-scan-completion .operator-completion-line label{min-width:0}
.operator-scan-completion .operator-completion-line input[type=number]{width:100%;max-width:none;min-height:48px;box-sizing:border-box;font-size:18px}
.operator-scan-completion .operator-completion-static{width:auto;min-width:0;min-height:48px;align-items:flex-start}
.operator-brake-quantity-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}
.operator-scan-completion .operator-brake-quantity-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px}
.operator-scan-completion .operator-brake-quantity-actions .action-btn{min-height:44px}
.operator-scan-completion .operator-brake-quantity-actions [data-brake-all]{grid-column:1/-1}
.operator-scan-completion #brake-review-navigation{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}
.operator-scan-completion #brake-review-navigation .action-btn{min-height:44px;white-space:nowrap}
.operator-scan-completion #brake-review-progress{font-size:12px;text-align:center}
.operator-scan-completion #bending-exception-notes{display:grid;gap:6px;margin-top:14px;font-weight:850}
.operator-scan-completion #bending-exception-notes textarea{width:100%;box-sizing:border-box;padding:10px;border:1px solid #c6d4e5;border-radius:8px;font:inherit}
.operator-scan-completion .operator-completion-actions{display:grid;grid-template-columns:1fr;gap:9px;border:0;margin:0}
.operator-scan-completion .operator-completion-actions>.operator-action-tile{min-height:54px;padding:12px 14px;border:1px solid #c6d4e5;border-radius:8px}
.operator-scan-completion .operator-completion-actions>.operator-action-tile.is-complete{justify-content:center;align-items:center;font-weight:900;text-align:center;border-color:#96d6ac}
.operator-scan-completion .bending-scan-cancel{display:grid;place-items:center;min-height:44px;border:1px solid #c6d4e5;border-radius:8px;background:#fff;color:#0b4fb3;font-weight:850;text-decoration:none}
@media(max-width:420px){.operator-scan-completion .eng-module-main{padding:12px 10px 56px}.operator-scan-completion #bending-scan-choices fieldset{grid-template-columns:1fr}.operator-scan-completion .operator-completion-route{grid-template-columns:1fr}.operator-scan-completion #brake-review-navigation{grid-template-columns:1fr 1fr}.operator-scan-completion #brake-review-progress{grid-column:1/-1;grid-row:1}}
.planning-workspace-shell{display:flex;flex-direction:column;gap:18px}
.planning-workspace-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,1fr);gap:18px;align-items:stretch;padding:24px;border-radius:24px;background:linear-gradient(145deg,#0f172a 0%,#1d4ed8 55%,#38bdf8 100%);color:#eff6ff;box-shadow:0 18px 40px rgba(15,23,42,.18)}
.planning-workspace-hero-copy h1{margin:8px 0 10px;font-size:34px;line-height:1.05;max-width:760px}
.planning-workspace-eyebrow{margin:0;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#bfdbfe}
.planning-workspace-subtitle{margin:0;max-width:720px;color:rgba(239,246,255,.9);font-size:14px;line-height:1.6}
.planning-workspace-action-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.action-btn-secondary{background:rgba(15,23,42,.15);border:1px solid rgba(255,255,255,.28);color:#fff}
.planning-workspace-kpis{display:grid;grid-template-columns:1fr;gap:12px}
.planning-workspace-kpi{display:flex;flex-direction:column;justify-content:space-between;padding:18px;border-radius:18px;background:rgba(15,23,42,.24);border:1px solid rgba(191,219,254,.28);backdrop-filter:blur(4px)}
.planning-workspace-kpi span{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#bfdbfe}
.planning-workspace-kpi strong{font-size:36px;line-height:1;margin:8px 0}
.planning-workspace-kpi small{color:#dbeafe}
.planning-focus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.planning-focus-card{padding:18px;border-radius:18px;background:#fff;border:1px solid #dbe2ea;box-shadow:0 10px 24px rgba(15,23,42,.06)}
.planning-focus-card p{margin:6px 0 0;color:#475569;font-size:13px;line-height:1.5}
.planning-focus-label{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b}
.planning-focus-value{display:block;margin-top:6px;font-size:24px;line-height:1.1;color:#0f172a}
.planning-focus-card-active{border-color:#93c5fd;background:linear-gradient(180deg,#eff6ff,#fff)}
.planning-focus-card-risk{border-color:#fecaca;background:linear-gradient(180deg,#fef2f2,#fff)}
.planning-workspace-layout{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:18px;align-items:start}
.planning-sidebar,.planning-main-column{display:flex;flex-direction:column;gap:18px}
.planning-sidebar-card,.planning-lane-card,.planning-part-card{background:#fff;border:1px solid #dbe2ea;border-radius:22px;box-shadow:0 10px 26px rgba(15,23,42,.06);overflow:hidden}
.planning-sidebar-card{padding:18px}
.planning-sidebar-card-header,.planning-lane-header,.planning-part-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.planning-sidebar-label,.planning-lane-eyebrow{margin:0;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b}
.planning-sidebar-card h2,.planning-lane-header h2,.planning-part-card-header h2{margin:6px 0 4px;font-size:22px;line-height:1.15;color:#0f172a}
.planning-readiness-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0 0}
.planning-readiness-list div{padding:14px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0}
.planning-readiness-list dt{font-size:12px;color:#64748b}
.planning-readiness-list dd{margin:8px 0 0;font-size:24px;font-weight:800;color:#0f172a}
.planning-segmented-control{display:inline-flex;padding:4px;border-radius:999px;background:#e2e8f0;gap:4px}
.planning-segmented-control a{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;color:#475569;text-decoration:none}
.planning-segmented-control a.active{background:#fff;color:#0f172a;box-shadow:0 2px 8px rgba(15,23,42,.12)}
.planning-shortage-list,.planning-sidebar-pallet-list{display:flex;flex-direction:column;gap:10px;margin-top:14px}
.planning-shortage-item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0}
.planning-component-card{color:#0f172a;text-decoration:none;border-radius:8px}
.planning-component-card:hover,.planning-component-card:focus{border-color:#2563eb;background:#eff6ff;outline:none}
.planning-shortage-item-risk{border-color:#fecaca;background:#fff7f7}
.planning-shortage-metrics{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:12px;color:#475569}
.planning-storage-chip{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:12px;font-weight:800}
.planning-pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.planning-pill-neutral{background:#e2e8f0;color:#334155}
.planning-pill-ready{background:#dcfce7;color:#166534}
.planning-pill-active{background:#dbeafe;color:#1d4ed8}
.planning-pill-risk{background:#fee2e2;color:#991b1b}
.planning-lane-card{padding:18px}
.planning-lane-meta{margin:0;color:#64748b;font-size:13px;line-height:1.5}
.planning-lane-header-status{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.planning-lane-operator{font-size:12px;font-weight:700;color:#334155}
.planning-lane-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px;margin-top:16px}
.planning-lane-panel{border:1px solid #e2e8f0;border-radius:18px;background:#f8fafc;padding:16px}
.planning-lane-panel-primary{background:linear-gradient(180deg,#eff6ff,#f8fafc);border-color:#bfdbfe}
.planning-lane-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.planning-panel-label{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b}
.planning-lane-panel-header h3{margin:6px 0 0;font-size:18px;color:#0f172a}
.planning-panel-count{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 10px;border-radius:999px;background:#fff;border:1px solid #cbd5e1;font-weight:800;color:#0f172a}
.planning-lane-panel-body{display:flex;flex-direction:column;gap:12px}
.planning-operator-card{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:14px;background:#fff;border:1px solid #e2e8f0}
.planning-operator-card-header{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#475569}
.planning-queue-bin-grid-compact{grid-template-columns:repeat(auto-fit,minmax(185px,1fr))}
.planning-empty-card-compact{min-height:96px}
.planning-part-grid-redesign{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}
.planning-part-card{padding:18px}
.planning-part-card-empty{min-height:220px}
.planning-workspace-hero-parts{background:linear-gradient(145deg,#082f49 0%,#0f766e 58%,#34d399 100%)}
.planning-workspace-shell-parts .planning-workspace-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.planning-pallet-card-topline{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
@media (max-width: 1100px){.planning-workspace-layout{grid-template-columns:1fr}.planning-focus-grid,.planning-lane-grid,.planning-workspace-hero{grid-template-columns:1fr}}
@media (max-width: 700px){.planning-readiness-list,.planning-workspace-shell-parts .planning-workspace-kpis,.planning-focus-grid{grid-template-columns:1fr}.planning-workspace-hero-copy h1{font-size:28px}.planning-lane-header,.planning-sidebar-card-header,.planning-part-card-header{flex-direction:column}.planning-lane-header-status{align-items:flex-start}}


.engineering-dashboard-shell{display:flex;flex-direction:column;gap:20px}
.engineering-landing-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.95fr);gap:18px;align-items:stretch;background:radial-gradient(circle at top left,rgba(96,165,250,.28),transparent 32%),linear-gradient(135deg,#020617,#0f172a 48%,#1d4ed8);color:#fff;border-radius:24px;padding:28px;box-shadow:0 18px 40px rgba(15,23,42,.24)}
.engineering-landing-eyebrow,.engineering-panel-eyebrow{margin:0;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.engineering-landing-eyebrow{color:#93c5fd}
.engineering-landing-hero h2{margin:8px 0 10px;font-size:34px;line-height:1.08;max-width:11ch}
.engineering-landing-hero-text{margin:0;max-width:62ch;color:#dbeafe;font-size:15px;line-height:1.55}
.engineering-landing-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.engineering-landing-hero-actions .action-btn{background:rgba(255,255,255,.92);border-color:rgba(191,219,254,.6);color:#0f172a!important}
.engineering-hero-metrics{display:grid;grid-template-columns:1fr;gap:12px}
.engineering-hero-metric-card{display:flex;flex-direction:column;justify-content:space-between;gap:6px;background:rgba(15,23,42,.34);border:1px solid rgba(191,219,254,.28);backdrop-filter:blur(4px);border-radius:18px;padding:16px 18px}
.engineering-hero-metric-label{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#bfdbfe}
.engineering-hero-metric-value{font-size:42px;line-height:1;color:#fff}
.engineering-hero-metric-note{font-size:13px;line-height:1.45;color:#dbeafe}
.engineering-command-grid,.engineering-lower-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:16px}
.engineering-workstream-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.engineering-panel,.engineering-workstream-card{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #dbe2ea;border-radius:20px;padding:18px;box-shadow:0 10px 28px rgba(15,23,42,.08)}
.engineering-panel-priority{background:linear-gradient(180deg,#fff,#eff6ff)}
.engineering-panel-dark{background:linear-gradient(135deg,#0f172a,#172554);color:#fff;border-color:#1e3a8a}
.engineering-panel-dark .engineering-panel-eyebrow,.engineering-panel-dark .engineering-inline-link,.engineering-panel-dark .engineering-link-copy{color:#bfdbfe}
.engineering-panel-dark .engineering-link-card{background:rgba(255,255,255,.08);border-color:rgba(191,219,254,.22);color:#fff}
.engineering-panel-accent{background:linear-gradient(135deg,#eff6ff,#f8fafc)}
.engineering-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:14px}
.engineering-panel-header h3,.engineering-workstream-card h3,.engineering-upload-item h4,.engineering-priority-item h4{margin:4px 0 0;color:inherit}
.engineering-inline-link{font-size:13px;font-weight:700;color:#1d4ed8;text-decoration:none}
.engineering-priority-list,.engineering-upload-list{display:flex;flex-direction:column;gap:12px}
.engineering-priority-item,.engineering-upload-item{display:flex;justify-content:space-between;gap:14px;padding:14px;border-radius:16px;border:1px solid #dbe2ea;background:#fff}
.engineering-priority-item-topline{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
.engineering-priority-item p,.engineering-workstream-card p{margin:8px 0 0;color:#334155;line-height:1.5}
.engineering-priority-meta,.engineering-upload-meta,.engineering-upload-time{font-size:12px;color:#64748b}
.engineering-status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.engineering-status-pill-alert{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}
.engineering-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.engineering-link-card{display:flex;flex-direction:column;gap:6px;padding:14px;border-radius:16px;border:1px solid #dbe2ea;background:#fff;color:#0f172a;text-decoration:none;min-height:120px}
.engineering-link-title{font-size:16px;font-weight:800}
.engineering-link-copy{font-size:13px;line-height:1.45;color:#334155}
.engineering-workstream-card ul,.engineering-checklist{margin:12px 0 0;padding-left:18px;color:#334155;display:grid;gap:8px}
.engineering-upload-type{margin:0;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#1d4ed8}
.engineering-upload-item h4{font-size:16px}
.engineering-empty-state{display:flex;flex-direction:column;gap:4px;align-items:flex-start;justify-content:center;min-height:130px;padding:16px;border-radius:16px;border:1px dashed #cbd5e1;background:#f8fafc;color:#334155}
.engineering-table-wrap{overflow-x:auto}
@media (max-width: 1100px){.engineering-landing-hero,.engineering-command-grid,.engineering-lower-grid{grid-template-columns:1fr}.engineering-workstream-grid,.engineering-link-grid{grid-template-columns:1fr}}
@media (max-width: 700px){.engineering-landing-hero{padding:20px}.engineering-landing-hero h2{font-size:28px;max-width:none}.engineering-priority-item,.engineering-upload-item{flex-direction:column}.engineering-landing-hero-actions .action-btn{width:100%;text-align:center}}

.ops-landing-shell{display:flex;flex-direction:column;gap:18px}
.ops-landing-hero{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,1fr);gap:18px;align-items:stretch;padding:24px;border-radius:24px;color:#eff6ff;box-shadow:0 18px 40px rgba(15,23,42,.18)}
.ops-landing-shell-inventory .ops-landing-hero{background:linear-gradient(145deg,#082f49 0%,#0f766e 58%,#34d399 100%)}
.ops-landing-shell-maintenance .ops-landing-hero{background:linear-gradient(145deg,#1f2937 0%,#1d4ed8 58%,#38bdf8 100%)}
.ops-landing-shell-maintenance .ops-landing-hero-copy h1{font-size:48px;max-width:none}
.ops-landing-shell-operator .ops-landing-hero{background:linear-gradient(145deg,#020617 0%,#1e3a8a 55%,#2563eb 100%)}
.ops-landing-shell-engineering .ops-landing-hero{background:linear-gradient(145deg,#111827 0%,#1d4ed8 52%,#22d3ee 100%)}
.ops-landing-hero-engineering{background:linear-gradient(145deg,#111827 0%,#1d4ed8 52%,#22d3ee 100%);grid-template-columns:1fr}
.ops-hero-nav-card{cursor:pointer}
.ops-hero-nav-card:focus-visible{outline:2px solid rgba(255,255,255,.85);outline-offset:3px}
.engineering-detail-hero{background:linear-gradient(145deg,#111827 0%,#1d4ed8 52%,#22d3ee 100%);color:#eff6ff;border:1px solid rgba(191,219,254,.35);border-radius:16px;padding:16px 18px;box-shadow:0 14px 30px rgba(15,23,42,.18)}
.engineering-detail-hero h1,.engineering-detail-hero h2,.engineering-detail-hero h3,.engineering-detail-hero h4{color:#fff}
.engineering-detail-hero .status-pill{border-color:rgba(191,219,254,.45);background:rgba(255,255,255,.14);color:#eff6ff}
.engineering-detail-hero .action-btn:not(.action-btn-secondary){background:rgba(255,255,255,.95);border-color:rgba(191,219,254,.65);color:#0f172a!important}
.engineering-detail-hero .action-btn.action-btn-secondary{background:rgba(15,23,42,.34);border-color:rgba(191,219,254,.5);color:#eff6ff!important}
.ops-landing-eyebrow,.ops-panel-eyebrow{margin:0;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#bfdbfe}
.ops-landing-hero-copy h1{margin:8px 0 10px;font-size:34px;line-height:1.06;max-width:18ch}
.ops-landing-shell-engineering .engineering-dashboard-title-wrap h1{max-width:none;white-space:nowrap;font-size:clamp(22px,3.3vw,42px);line-height:1.05;margin-bottom:0}
.engineering-dashboard-grid{display:grid;grid-template-columns:minmax(0,65%) minmax(0,35%);gap:12px 16px;align-items:start;width:100%}
.engineering-dashboard-title-card{grid-column:1}
.engineering-dashboard-messages-card{grid-column:1;gap:10px}
.engineering-dashboard-queue-card{grid-column:1}
.engineering-dashboard-station-card{grid-column:2;grid-row:1 / span 3}
.engineering-dashboard-messages-card{gap:10px}
.ops-landing-type-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.ops-type-filter-btn{border:1px solid rgba(191,219,254,.55);background:rgba(15,23,42,.24);color:#eff6ff;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer}
.ops-type-filter-btn:hover{background:rgba(30,64,175,.45)}
.ops-type-filter-btn.active{background:#dbeafe;color:#1e3a8a;border-color:#93c5fd}
.ops-landing-subtitle{margin:0;max-width:720px;color:rgba(239,246,255,.92);font-size:14px;line-height:1.6}
.ops-landing-action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}

.ops-landing-action-row-engineering{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));justify-content:center;gap:10px;align-items:stretch;width:100%;margin-top:6px}
.engineering-hero-action-card{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:14px;border:1px solid rgba(191,219,254,.45);background:rgba(15,23,42,.28);min-width:0}
.engineering-hero-action-card .action-btn{width:100%;text-align:center;padding:7px 10px;font-size:12px;line-height:1.2;margin:0;white-space:normal;overflow-wrap:anywhere}
.engineering-hero-action-card-title{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#bfdbfe}
.engineering-dashboard-station-grid{margin-top:10px;grid-template-columns:1fr}
.engineering-dashboard-station-tile{background:#f3f4f6;border-color:#cbd5e1}
.engineering-dashboard-queue-groups{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.engineering-dashboard-queue-group{padding:10px;border-radius:14px;border:1px solid rgba(191,219,254,.35);background:rgba(15,23,42,.16)}
.engineering-dashboard-queue-group-header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:4px}
.engineering-dashboard-queue-group-header h3{margin:0;color:#fff}
.engineering-dashboard-queue-group-header small{color:#dbeafe}
.engineering-dashboard-queue-group-description{margin:0 0 8px}
.ops-landing-shell-maintenance .ops-landing-kpis{display:grid;grid-template-columns:1fr;gap:12px;align-content:start}
.ops-landing-kpi{display:flex;flex-direction:column;justify-content:space-between;padding:18px;border-radius:18px;background:rgba(15,23,42,.24);border:1px solid rgba(191,219,254,.28);backdrop-filter:blur(4px)}
.ops-landing-kpi span{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#bfdbfe}
.ops-landing-kpi strong{font-size:36px;line-height:1;margin:8px 0}
.ops-landing-kpi small{color:#dbeafe}
.ops-landing-focus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ops-focus-card{padding:18px;border-radius:18px;background:#fff;border:1px solid #dbe2ea;box-shadow:0 10px 24px rgba(15,23,42,.06)}
.ops-focus-label{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b}
.ops-focus-value{display:block;margin-top:6px;font-size:24px;line-height:1.1;color:#0f172a}
.ops-focus-card p{margin:6px 0 0;color:#475569;font-size:13px;line-height:1.5}
.ops-focus-card-active{border-color:#93c5fd;background:linear-gradient(180deg,#eff6ff,#fff)}
.ops-focus-card-risk{border-color:#fecaca;background:linear-gradient(180deg,#fef2f2,#fff)}
.ops-landing-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ops-landing-panel{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #dbe2ea;border-radius:20px;padding:18px;box-shadow:0 10px 28px rgba(15,23,42,.08)}
.ops-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:14px}
.ops-panel-header h2{margin:4px 0 0;color:#0f172a;font-size:24px}
.ops-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ops-link-card{display:flex;flex-direction:column;gap:6px;padding:14px;border-radius:16px;border:1px solid #dbe2ea;background:#fff;color:#0f172a;text-decoration:none;min-height:112px}
.ops-link-title{font-size:16px;font-weight:800}
.ops-link-copy{font-size:13px;line-height:1.45;color:#334155}
.ops-list{display:flex;flex-direction:column;gap:10px}
.ops-list-item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px;border-radius:16px;border:1px solid #e2e8f0;background:#f8fafc}
.ops-item-type{margin:0;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#1d4ed8}
.ops-list-item h3{margin:4px 0 0;font-size:16px;color:#0f172a}
.ops-item-metrics{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:12px;color:#475569}
.ops-table-wrap{overflow-x:auto}
.ops-empty-state{display:flex;align-items:center;justify-content:center;min-height:110px;border:1px dashed #cbd5e1;border-radius:16px;background:#f8fafc;color:#475569;padding:16px;text-align:center}
.ops-empty-state-compact{min-height:66px}
.ops-station-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}
.ops-station-card{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:18px;background:#fff;border:1px solid #dbe2ea;text-decoration:none;color:inherit;box-shadow:0 8px 20px rgba(15,23,42,.06)}
.ops-card-split{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ops-landing-hero-actions{display:flex;flex-wrap:wrap;gap:8px}
.ops-station-card-overdue{border-color:#fca5a5;background:linear-gradient(165deg,#fff1f2,#ffe4e6)}
.ops-station-card-upcoming{border-color:#facc15;background:linear-gradient(165deg,#fffbeb,#fef3c7)}
.ops-station-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.ops-station-card h3{margin:4px 0 0;color:#0f172a}
.ops-status-pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;background:#e2e8f0;color:#334155;border:1px solid #cbd5e1}
.ops-status-pill-ready-idle,.ops-status-pill-ready-running,.ops-status-pill-operating{background:#dcfce7;color:#166534;border-color:#86efac}
.ops-status-pill-blocked-exception,.ops-status-pill-down-repair,.ops-status-pill-down-wait-part,.ops-status-pill-down-other{background:#fee2e2;color:#991b1b;border-color:#fca5a5}
.ops-queue-table-wrap{overflow-x:auto}
.ops-queue-table{width:100%;border-collapse:collapse;font-size:13px}
.ops-queue-table th,.ops-queue-table td{padding:8px 10px;border-top:1px solid #e2e8f0;text-align:left;vertical-align:top}
.ops-queue-table thead th{padding-top:0;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b;border-top:0}
.ops-station-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.ops-station-task-list{display:flex;flex-direction:column;gap:8px}
.ops-station-task-item{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0;color:#0f172a}
.ops-station-task-item small{font-size:12px;color:#64748b}
.machine-preset-layout{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:16px}
.machine-preset-panel{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid #dbe2ea;border-radius:20px;padding:18px;box-shadow:0 10px 28px rgba(15,23,42,.08)}
.machine-preset-panel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
.machine-preset-panel-header h2{margin:4px 0 0;color:#0f172a;font-size:24px}
.machine-preset-type-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.machine-preset-type-tabs button{border:1px solid #cbd5e1;background:#f8fafc;border-radius:999px;padding:6px 12px;font-weight:700;color:#334155}
.machine-preset-type-tabs button.active{background:#dbeafe;border-color:#60a5fa;color:#1e3a8a}
.machine-preset-list{display:flex;flex-direction:column;gap:10px;max-height:65vh;overflow:auto;padding-right:4px}
.machine-preset-list-item{border:1px solid #e2e8f0;background:#fff;border-radius:14px;padding:12px}
.machine-preset-list-item.active{border-color:#60a5fa;background:#eff6ff}
.machine-preset-list-item header{display:flex;justify-content:space-between;gap:10px}
.machine-preset-list-item p{margin:8px 0;color:#475569;font-size:13px}
.machine-preset-item-actions{display:flex;gap:8px}
.machine-preset-actions{display:flex;justify-content:flex-end}
.action-btn-danger{background:#fee2e2!important;border-color:#fca5a5!important;color:#991b1b!important}
.machine-preset-form{display:flex;flex-direction:column;gap:12px}
.machine-preset-form label{display:flex;flex-direction:column;gap:6px;font-weight:600;color:#334155}
.machine-preset-form input,.machine-preset-form select,.machine-preset-form textarea{border:1px solid #cbd5e1;border-radius:8px;padding:9px 10px;background:#fff}
.machine-preset-field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.machine-preset-field-grid fieldset{border:1px solid #dbe2ea;border-radius:12px;padding:10px;background:#fff}
.machine-preset-field-grid legend{font-weight:700;color:#1e293b;padding:0 6px}
.machine-preset-preview-card{border:1px solid #dbe2ea;border-radius:12px;background:#fff;padding:10px}
.machine-preset-preview-card h3{margin:0 0 8px}
.machine-preset-preview-card canvas{width:100%;height:auto;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc}
.machine-preset-error{color:#b91c1c}
@media (max-width: 1100px){.ops-landing-hero,.ops-landing-focus-grid,.ops-landing-panel-grid,.ops-link-grid{grid-template-columns:1fr}.engineering-dashboard-grid{grid-template-columns:1fr}.engineering-dashboard-title-card,.engineering-dashboard-messages-card,.engineering-dashboard-station-card,.engineering-dashboard-queue-card{grid-column:1}.engineering-dashboard-station-card{grid-row:auto}}
@media (max-width: 1100px){.machine-preset-layout{grid-template-columns:1fr}.machine-preset-field-grid{grid-template-columns:1fr}}
@media (max-width: 700px){.ops-landing-hero-copy h1{font-size:28px}.ops-list-item,.ops-station-card-header{flex-direction:column}.ops-item-metrics{align-items:flex-start}.ops-landing-action-row-engineering{grid-template-columns:1fr}.ops-card-split{grid-template-columns:1fr}.ops-landing-shell-engineering .engineering-dashboard-title-wrap h1{font-size:clamp(18px,7.3vw,26px)}}

/* Shop floor launch board */
.shop-floor-launch-shell{background:#eef3f8;min-height:100vh}
.shop-floor-launch-shell .eng-module-header{box-shadow:0 2px 14px rgba(15,23,42,.07)}
.shop-floor-launch-main{display:flex;flex-direction:column;gap:18px;padding:18px 22px 28px}
.launch-board-header{display:grid;grid-template-columns:minmax(320px,1fr) minmax(520px,.95fr);gap:16px;align-items:stretch;background:#0f2537;color:#fff;border:1px solid #18364e;border-radius:8px;padding:18px;box-shadow:0 14px 32px rgba(15,37,55,.18)}
.launch-board-title{display:flex;flex-direction:column;justify-content:center;gap:6px;min-width:0}
.launch-board-eyebrow{margin:0;color:#9ed4ff;font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.launch-board-title h1{margin:0;color:#fff;font-size:34px;line-height:1.05}
.launch-board-title p{margin:0;color:#c8d8e6;font-size:14px;line-height:1.45}
.launch-board-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.launch-board-kpis>div{display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:86px;padding:12px;border:1px solid rgba(184,211,235,.28);border-radius:8px;background:rgba(255,255,255,.08)}
.launch-board-kpis span{color:#b8d3eb;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.launch-board-kpis strong{color:#fff;font-size:28px;line-height:1}
.launch-board-message{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid #c8d8e6;border-radius:8px;background:#fff}
.launch-board-message span{display:block;color:#64748b;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.launch-board-message strong{display:block;margin-top:3px;color:#0f172a}
.launch-board-message a{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 12px;border-radius:7px;background:#155e75;color:#fff!important;text-decoration:none;font-weight:850}
.launch-board-groups{display:flex;flex-direction:column;gap:18px}
.launch-station-group{display:flex;flex-direction:column;gap:12px}
.launch-station-group-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid #d4dee9;border-radius:8px;background:#fff}
.launch-station-group-header span{display:block;color:#64748b;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.launch-station-group-header h2{margin:3px 0 0;color:#0f172a;font-size:23px}
.launch-station-group-header dl{display:grid;grid-template-columns:repeat(2,minmax(86px,1fr));gap:8px;margin:0}
.launch-station-group-header dl>div{padding:8px 10px;border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc}
.launch-station-group-header dt{color:#64748b;font-size:10px;font-weight:900;text-transform:uppercase}
.launch-station-group-header dd{margin:2px 0 0;color:#0f172a;font-size:18px;font-weight:900}
.launch-station-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}
.launch-station-card{display:flex;flex-direction:column;gap:12px;min-height:360px;padding:14px;border:1px solid #d7e1ec;border-top:5px solid #2563eb;border-radius:8px;background:#fff;box-shadow:0 10px 26px rgba(15,23,42,.07)}
.launch-station-card-storage{border-top-color:#0f766e}
.launch-station-card-planning{border-top-color:#b45309}
.launch-station-card-quality{border-top-color:#7c3aed}
.launch-station-card-operator{border-top-color:#2563eb}
.launch-station-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.launch-station-card-header h3{margin:5px 0 0;color:#0f172a;font-size:21px;line-height:1.15;overflow-wrap:anywhere}
.launch-panel-kind{display:inline-flex;min-height:24px;align-items:center;padding:3px 8px;border-radius:999px;background:#eef6ff;color:#1d4ed8;border:1px solid #bfdbfe;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.launch-station-card-storage .launch-panel-kind{background:#ecfdf5;color:#0f766e;border-color:#99f6e4}
.launch-station-card-planning .launch-panel-kind{background:#fffbeb;color:#92400e;border-color:#fde68a}
.launch-station-card-quality .launch-panel-kind{background:#f5f3ff;color:#6d28d9;border-color:#ddd6fe}
.launch-status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:4px 8px;border:1px solid #cbd5e1;border-radius:999px;background:#f8fafc;color:#334155;font-size:11px;font-weight:900;text-transform:uppercase;white-space:nowrap}
.launch-status-pill-ready-idle{background:#dcfce7;color:#166534;border-color:#86efac}
.launch-status-pill-ready-operating{background:#dbeafe;color:#1e3a8a;border-color:#93c5fd}
.launch-status-pill-ready-paused{background:#fef3c7;color:#92400e;border-color:#fcd34d}
.launch-status-pill-blocked-exception-material-missing,.launch-status-pill-blocked-exception-quality,.launch-status-pill-blocked-exception-other,.launch-status-pill-down-maintenance,.launch-status-pill-down-repair,.launch-status-pill-down-wait-part,.launch-status-pill-down-other{background:#fee2e2;color:#991b1b;border-color:#fca5a5}
.launch-station-meta{display:flex;flex-wrap:wrap;gap:6px}
.launch-station-meta span{display:inline-flex;align-items:center;min-height:24px;padding:3px 7px;border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc;color:#475569;font-size:12px;font-weight:800}
.launch-station-description{min-height:42px;margin:0;color:#475569;font-size:13px;line-height:1.45}
.launch-station-metrics{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(112px,.8fr);gap:8px;margin:0}
.launch-station-metrics>div{min-width:0;padding:9px;border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc}
.launch-station-metrics dt{color:#64748b;font-size:10px;font-weight:900;text-transform:uppercase}
.launch-station-metrics dd{margin:3px 0 0;color:#0f172a;font-size:15px;font-weight:900;overflow-wrap:anywhere}
.launch-station-metrics>div:first-child dd{font-size:22px}
.launch-queue-preview{display:flex;flex-wrap:wrap;align-content:flex-start;gap:6px;min-height:58px;padding:9px;border:1px solid #e2e8f0;border-radius:7px;background:#fff}
.launch-queue-preview span{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:4px 8px;border-radius:999px;background:#eef6ff;color:#1e3a8a;border:1px solid #bfdbfe;font-size:12px;font-weight:850}
.launch-queue-preview small{color:#475569;font-weight:800}
.launch-queue-empty{align-items:center;color:#64748b;font-size:13px;font-weight:800;background:#f8fafc}
.launch-station-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto}
.launch-station-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 10px;border-radius:7px;text-decoration:none;font-weight:900;text-align:center}
.launch-primary-action{background:#155e75;border:1px solid #155e75;color:#fff!important}
.launch-secondary-action{background:#fff;border:1px solid #94a3b8;color:#334155!important}
.launch-board-empty{padding:28px;border:1px dashed #cbd5e1;border-radius:8px;background:#fff;text-align:center}
.launch-board-empty h2{margin:0;color:#334155}
@media (max-width: 1180px){.launch-board-header{grid-template-columns:1fr}.launch-board-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 760px){.shop-floor-launch-main{padding:12px}.launch-board-title h1{font-size:27px}.launch-board-kpis,.launch-station-grid,.launch-station-metrics,.launch-station-actions{grid-template-columns:1fr}.launch-station-group-header,.launch-board-message{align-items:flex-start;flex-direction:column}.launch-station-group-header dl{width:100%}.launch-station-card{min-height:0}.launch-station-card-header{flex-direction:column}.launch-status-pill{white-space:normal}}

.monitor-shell{display:flex;flex-direction:column;gap:14px}
.monitor-status-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.monitor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.monitor-column{background:#fff;border:1px solid #d1d5db;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:10px;min-width:0}
.monitor-column h2,.monitor-column h3{margin:0}
.monitor-feed{background:#0f172a;border-radius:8px;min-height:220px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.monitor-feed img,.monitor-feed iframe{width:100%;height:100%;min-height:220px;border:0;display:block;object-fit:cover}
.monitor-log-table-wrap{max-height:720px;overflow:auto}
@media (max-width: 1200px){.monitor-grid{grid-template-columns:1fr}.monitor-status-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 700px){.monitor-status-row{grid-template-columns:1fr}}

.maintenance-shell{display:flex;flex-direction:column;gap:14px;margin-bottom:16px}
.maintenance-card{background:#fff;border:1px solid #dbe2ea;border-radius:14px;padding:14px;box-shadow:0 8px 20px rgba(15,23,42,.06)}
.maintenance-station-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);gap:14px;align-items:start}
.maintenance-station-panel.maintenance-card{background:linear-gradient(145deg,#1f2937 0%,#1d4ed8 58%,#38bdf8 100%);border-color:rgba(191,219,254,.35);border-radius:20px;color:#eff6ff;padding:16px}
.component-part-hero-card{background:linear-gradient(145deg,#111827 0%,#1d4ed8 52%,#22d3ee 100%);color:#eff6ff;border-color:rgba(191,219,254,.35)}
.component-part-hero-card label{color:#dbeafe}
.component-part-hero-card input,.component-part-hero-card select{background:rgba(255,255,255,.95)}
.component-part-hero-card .part-master-header{background:rgba(15,23,42,.3);border-color:rgba(191,219,254,.4)}
.maintenance-station-panel .maintenance-station-header{padding:0 0 12px;margin:0 0 12px;border-bottom:1px solid rgba(191,219,254,.42)}
.maintenance-station-summary{display:grid;gap:8px}
.maintenance-station-header h2{margin:0;color:#eff6ff;line-height:1.2}
.maintenance-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}
.maintenance-section-head h3{margin:0 0 4px;color:#0f172a}
.maintenance-section-head p{margin:0}
.maintenance-meta-list{display:flex;gap:8px;flex-wrap:wrap}
.maintenance-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:rgba(15,23,42,.28);border:1px solid rgba(191,219,254,.45);font-size:12px;color:#dbeafe}
.maintenance-meta-grid{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;padding:14px;border:1px solid rgba(191,219,254,.35);border-radius:14px;background:rgba(15,23,42,.24)}
.maintenance-meta-grid dt{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#bfdbfe}
.maintenance-meta-grid dd{margin:3px 0 0;font-size:13px;word-break:break-word;color:#eff6ff}
.maintenance-quick-actions .action-row{margin-top:0}
.maintenance-tab-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:8px;width:100%}
.maintenance-tab-bar a{display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;border-radius:10px;border:1px solid rgba(191,219,254,.32);background:rgba(15,23,42,.22);color:#dbeafe;text-decoration:none;font-weight:700;font-size:13px;text-align:center;transition:all .15s ease;min-height:38px}
.maintenance-tab-bar a:hover{border-color:#bfdbfe;background:rgba(15,23,42,.4)}
.maintenance-tab-bar a.active{background:#dbeafe;border-color:#60a5fa;color:#1e3a8a;box-shadow:inset 0 0 0 1px rgba(96,165,250,.25)}
.maintenance-row-overdue{background:#fff1f2}
.maintenance-row-due-soon{background:#fffbeb}
.feed-card img{width:100%;max-height:65vh;object-fit:contain;border-radius:10px;background:rgba(0,0,0,.08)}
.snapshot-panel img{width:100%;max-height:65vh;object-fit:contain;border-radius:10px;background:#0f172a}
.stream-player-frame{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:10px;background:#0f172a}
.feed-meta{display:flex;gap:12px;margin:8px 0 12px;flex-wrap:wrap}
.status-pill{padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;border:1px solid rgba(128,128,128,.25)}
.status-pill.ok{color:#166534;border-color:#86efac;background:#dcfce7}
.status-pill.bad{color:#991b1b;border-color:#fca5a5;background:#fee2e2}
.muted{opacity:.75}
.maintenance-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.maintenance-table-wrap{overflow:auto}
.maintenance-table-card{display:grid;gap:10px}
.maintenance-table-heading{display:grid;gap:4px}
.maintenance-table-heading h3{margin:0}
.maintenance-table-heading p{margin:0}
.logs-shell{display:grid;grid-template-columns:minmax(200px,.8fr) minmax(220px,.9fr) minmax(320px,1.5fr);gap:12px;align-items:start}
.logs-panel{border:1px solid #dbe2ea;border-radius:10px;padding:10px;background:#fff;max-height:70vh;overflow:auto}
.logs-panel h3{margin:0}
.logs-panel-copy{margin:0 0 8px}
.logs-list{list-style:none;padding:0;margin:0}
.logs-list button{width:100%;text-align:left;margin:0 0 6px;padding:7px 9px;border-radius:8px;border:1px solid #cbd5e1;background:#f8fafc;color:inherit;cursor:pointer}
.logs-list button.active{background:#dbeafe;border-color:#60a5fa}
.event-table{width:100%;border-collapse:collapse}
.event-table th,.event-table td{border-bottom:1px solid #e2e8f0;padding:6px 8px;text-align:left;vertical-align:top}
.event-table tr[data-event-level="error"] td{background:#fff1f2;color:#991b1b}
.event-table tr[data-event-level="hold"] td{background:#fffbeb;color:#854d0e}
.machine-state-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0 14px}
.machine-state-card>div{display:grid;gap:3px;padding:10px 12px;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff}
.machine-state-card span{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#64748b}
.machine-state-card strong{font-size:15px;color:#0f172a;overflow-wrap:anywhere}
.raw-log{white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;background:#0f172a;color:#e2e8f0;border-radius:8px;padding:10px;min-height:120px}
.station-details-shell{display:grid;gap:12px}
.settings-section-card{border:1px solid #dbe2ea;border-radius:12px;background:#fff;padding:14px;display:grid;gap:12px}
.collapsed-settings-card{margin-bottom:12px;background:linear-gradient(180deg,#fff 0%,#f8fafc 100%)}
.collapsed-settings-card summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none;font-weight:800;color:#1d4ed8}
.collapsed-settings-card summary::-webkit-details-marker{display:none}
.collapsed-settings-card summary::after{content:"Open";font-size:12px;border:1px solid #bfdbfe;border-radius:999px;padding:4px 10px;background:#eff6ff;color:#1e40af}
.collapsed-settings-card[open] summary{padding-bottom:10px;border-bottom:1px solid #e2e8f0}
.collapsed-settings-card[open] summary::after{content:"Close"}
.collapsed-settings-body{display:grid;gap:12px}
.settings-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}
.settings-section-heading h3{margin:0;color:#0f172a}
.settings-section-heading p{margin:0}
.settings-inline-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.settings-mini-card{border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;padding:12px}
.settings-mini-card h4{margin:0 0 6px}
.settings-mini-card label{display:block;font-weight:600;margin-bottom:4px}
.settings-mini-card input,.settings-mini-card select,.settings-mini-card textarea{width:100%;box-sizing:border-box}
.settings-field-kicker{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}
.stream-settings-grid .stream-settings-card{background:#f8fafc;border-style:dashed}
.settings-inline-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.station-details-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:stretch}
.station-details-subheading{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#475569;border-top:1px solid #e2e8f0;padding-top:10px}
.station-field-card{grid-column:span 1;min-width:0;border:1px solid #e2e8f0;border-radius:12px;background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);padding:12px;display:grid;gap:8px;align-content:start;box-shadow:0 6px 18px rgba(15,23,42,.04)}
.station-field-card.span-2,.station-field-card.span-6{grid-column:span 2}
.station-field-card.span-3,.station-field-card.span-12{grid-column:1/-1}
.station-field-card label{display:block;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#64748b}
.station-field-readout{font-size:15px;font-weight:800;color:#0f172a;min-height:1.35em;overflow-wrap:anywhere}
.station-field-card input,.station-field-card select,.station-field-card textarea{width:100%;box-sizing:border-box;border-color:#cbd5e1;background:#fff}
.station-field-card .field-help{font-size:12px;opacity:.68}
.station-icon-preview-card img{width:72px;height:72px;border:1px solid #d8e0ea;border-radius:6px;background:#fff;object-fit:contain}
.station-details-actions{display:flex;justify-content:flex-end}
.settings-table{width:100%;border-collapse:collapse}
.settings-table th,.settings-table td{padding:8px 10px;border-bottom:1px solid #e2e8f0;vertical-align:top;text-align:left}
.settings-table th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#64748b}
.settings-table tr:last-child td{border-bottom:0}
.settings-row-actions{white-space:nowrap}
.settings-row-actions .action-btn{margin:0 4px 4px 0;padding:6px 10px;font-size:12px;border-radius:8px}
.config-endpoint-value{word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}
.inline-form{display:inline}
.storage-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}
.storage-card{border:1px solid #dbe2ea;border-radius:10px;padding:12px;background:#fff;display:grid;gap:8px}
.storage-card h4{margin:0 0 6px}
.storage-card dl{margin:0;display:grid;grid-template-columns:120px 1fr;gap:4px 6px}
.storage-card dd{margin:0;overflow-wrap:anywhere}
.storage-role-grid{width:100%;border-collapse:collapse;margin-top:8px}
.storage-role-grid th,.storage-role-grid td{border-bottom:1px solid #e2e8f0;padding:6px 8px;text-align:left}
.procedure-form-grid{display:grid;gap:10px;max-width:min(1400px,96vw)}
.procedure-form-grid .row-two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.procedure-form-grid .row-full input,.procedure-form-grid .row-full textarea{width:100%;box-sizing:border-box}
.procedure-dynamic-list,.procedure-step-row{display:grid;gap:6px}
.procedure-step-row textarea,.procedure-step-row input,.procedure-step-row select{width:100%;box-sizing:border-box}
.procedure-part-row{display:grid;grid-template-columns:1fr 2fr 1fr auto;gap:8px;align-items:end}
.delete-x-btn{display:inline-flex;align-items:center;justify-content:center;width:1.8rem;height:1.8rem;border:1px solid #dc2626;border-radius:999px;background:#fee2e2;color:#b91c1c!important;font-weight:800;line-height:1;cursor:pointer;padding:0}
.delete-x-btn:hover{background:#fecaca;border-color:#b91c1c}
@media (min-width: 1180px){.procedure-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}.procedure-form-grid .row-full,.procedure-form-grid fieldset,.procedure-form-grid .action-row{grid-column:1/-1}}
.maintenance-empty-state{color:#475569}
@media (max-width: 1100px){.station-details-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.station-field-card.span-2,.station-field-card.span-6,.station-field-card.span-3,.station-field-card.span-12{grid-column:1/-1}.maintenance-station-header{grid-template-columns:1fr}.logs-shell{grid-template-columns:1fr 1fr}}
@media (max-width: 760px){.station-details-grid{grid-template-columns:1fr}.station-field-card,.station-field-card.span-2,.station-field-card.span-6,.station-field-card.span-3,.station-field-card.span-12{grid-column:1/-1}.procedure-form-grid .row-two-col,.procedure-part-row,.maintenance-two-col,.maintenance-meta-grid,.logs-shell,.settings-inline-grid,.machine-state-card{grid-template-columns:1fr}.maintenance-tab-bar a,.maintenance-quick-actions .action-btn,.maintenance-tab-header .action-btn,.maintenance-section-head .action-btn{width:100%;justify-content:center;flex-basis:100%}.settings-row-actions{white-space:normal}.settings-row-actions .action-btn{width:100%;margin:0 0 6px}.settings-inline-form{align-items:flex-start}}

/* Unified procedure/checklist runner */
.procedure-run-wrap{max-width:980px;margin:0 auto;display:grid;gap:14px}
.procedure-run-header{border:1px solid #d7e0ea;background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);box-shadow:0 12px 28px rgba(15,23,42,.08);border-radius:14px;padding:16px}
.procedure-step-card{border:1px solid #d7e0ea;background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.06);border-radius:14px;padding:18px;min-height:260px}
.procedure-step-card.check{border-left:5px solid #2563eb}
.procedure-step-card.warning{border-left:5px solid #dc2626}
.procedure-step-card.action{border-left:5px solid #0f766e}
.procedure-step-card.is-complete{background:#f0fdf4;border-left-color:#16a34a}
.procedure-step-number{font-size:14px;font-weight:700;color:#475569;margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}
.procedure-step-title{font-size:28px;font-weight:700;line-height:1.2;margin:0 0 10px;color:#0f172a}
.procedure-step-instruction{font-size:18px;line-height:1.5;white-space:pre-wrap;color:#1e293b}
.procedure-step-notes{margin-top:12px;font-size:14px;color:#334155;display:grid;gap:4px}
.procedure-actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.procedure-actions button,.procedure-actions a{font-size:15px;padding:10px 14px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;text-decoration:none;font-weight:600}
.procedure-actions button:hover,.procedure-actions a:hover{border-color:#94a3b8;background:#f8fafc}
.procedure-progress{margin-top:4px;font-size:14px;color:#334155}
.warning-icon{color:#dc2626;font-weight:700;margin-right:5px}
.procedure-header-links{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}
.procedure-header-links a{font-size:14px;padding:8px 11px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;text-decoration:none}
.run-action-dialog .run-action-dialog-body{min-width:min(440px,96vw);display:grid;gap:12px}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.engineering-page-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:0 0 16px;padding:12px 14px;border:1px solid #d8e3f1;border-radius:8px;background:#fff;box-shadow:0 6px 16px rgba(15,45,90,.06)}
.engineering-page-actions .action-btn,.engineering-page-actions button{margin:0;min-height:38px;display:inline-flex;align-items:center;justify-content:center}
.frame-parts-panel{display:grid;gap:14px}
.frame-parts-panel-header{margin-bottom:0}
.frame-parts-subtitle{margin:6px 0 0;color:#475569}
.frame-parts-actions .action-btn{margin:0}
.frame-parts-search-row input{width:100%;max-width:100%;padding:11px 12px;border:1px solid #cbd5e1;border-radius:10px;background:#fff}
.frame-parts-create-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end}
.frame-parts-create-form label{display:flex;flex-direction:column;gap:6px;color:#334155;font-size:13px;font-weight:600}
.frame-parts-create-form input{border:1px solid #cbd5e1;border-radius:8px;padding:9px 10px;background:#fff}
.frame-parts-table-wrap{border:1px solid #dbe2ea;border-radius:14px;background:#fff}
.frame-parts-table{width:100%;border-collapse:collapse}
.frame-parts-table th,.frame-parts-table td{padding:11px 12px;border-top:1px solid #e2e8f0;text-align:left;vertical-align:middle}
.frame-parts-table thead th{border-top:0;background:#f8fafc;font-size:12px;font-weight:800;color:#475569;letter-spacing:.04em;text-transform:uppercase}
.frame-parts-empty-row td{text-align:center;color:#64748b;padding:20px 12px}
.frame-parts-status-pill{text-transform:capitalize;letter-spacing:.02em;font-size:11px}
.frame-parts-status-pill-draft{background:#fef3c7;color:#92400e;border-color:#fcd34d}
.frame-parts-status-pill-approved,.frame-parts-status-pill-released{background:#dcfce7;color:#166534;border-color:#86efac}
.frame-parts-status-pill-retired{background:#e2e8f0;color:#334155;border-color:#cbd5e1}
.frame-parts-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.frame-parts-summary-card{padding:14px;border:1px solid #dbe2ea;border-radius:12px;background:#f8fafc}
.frame-parts-summary-card span{display:block;font-size:12px;color:#64748b}
.frame-parts-summary-card strong{display:block;font-size:30px;line-height:1.1;margin-top:8px;color:#0f172a}
@media (max-width: 900px){.frame-parts-create-form{grid-template-columns:1fr 1fr}.frame-parts-summary-grid{grid-template-columns:1fr 1fr}}
@media (max-width: 620px){.frame-parts-create-form{grid-template-columns:1fr}.frame-parts-summary-grid{grid-template-columns:1fr}}

/* Engineering module shell */
.eng-module-shell{background:#f3f5f7;border:1px solid #aeb7c3;color:#172033;box-shadow:0 18px 42px rgba(15,23,42,.16);min-height:calc(100vh - 130px)}
.eng-module-header{display:grid;grid-template-columns:310px minmax(280px,1fr) 150px 430px;gap:18px;align-items:center;padding:16px 22px;background:linear-gradient(180deg,#fbfcfe,#e7ebf0);border-bottom:1px solid #b6beca}
.eng-module-brand{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;text-decoration:none;color:#0b2e67;border-right:1px solid #b8c0cc;min-height:72px;padding-right:14px}
.eng-module-logo{font-size:44px;font-weight:900;font-style:italic;line-height:1;color:#123a7a}
.app-brand-logo{display:inline-flex;align-items:flex-start;justify-content:flex-start;flex:0 0 auto;width:min(150px,100%);height:45px;overflow:hidden;font-size:0;font-style:normal;line-height:0}
.app-brand-logo img{display:block;width:100%;height:auto;transform:translateY(-30%)}
.header-v3-brand .app-brand-logo{width:72px;height:22px}
.header-v3-brand .app-brand-logo img{width:72px}
.eng-module-brand strong{display:block;text-transform:uppercase;font-size:14px;line-height:1.2;color:#111827}.eng-module-brand small{display:block;text-transform:uppercase;font-size:13px;font-weight:800;color:#111827}
.eng-module-title{border-right:1px solid #b8c0cc;min-height:72px;display:flex;flex-direction:column;justify-content:center}
.eng-module-title h1{margin:0;text-transform:uppercase;font-size:28px;line-height:1.1;color:#0b2e67;letter-spacing:0}.eng-module-title p{margin:8px 0 0;color:#5b6472;font-weight:700}
.eng-module-user{margin:0;display:grid;gap:4px;font-size:12px}.eng-module-user div{display:grid;grid-template-columns:46px 1fr;gap:6px}.eng-module-user dt{font-weight:800;color:#111827}.eng-module-user dd{margin:0;color:#0b2e67;font-weight:900;text-transform:uppercase}
.eng-module-actions{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #9da7b5;background:#edf1f5}.eng-module-actions a,.eng-module-actions button{display:flex;align-items:center;justify-content:center;text-align:center;min-height:70px;padding:10px 8px;text-decoration:none;color:#172033;font-size:12px;font-weight:800;border:0;border-left:1px solid #b6beca;background:transparent;cursor:pointer;font-family:inherit}.eng-module-actions a:first-child,.eng-module-actions button:first-child{border-left:0}.eng-module-actions a:hover,.eng-module-actions button:hover{background:#fff;color:#0b2e67}
.eng-module-layout{display:grid;grid-template-columns:250px minmax(0,1fr)}
.eng-module-layout-no-side-nav{grid-template-columns:1fr}
.shop-floor-module-no-side-nav .eng-module-layout{grid-template-columns:1fr}
.eng-side-menu{background:linear-gradient(180deg,#f8fafc,#e8edf3);border-right:1px solid #b8c0cc;padding:12px 10px;display:flex;flex-direction:column;gap:10px}.eng-side-menu section{border-bottom:1px solid #cbd3dd;padding:8px 8px 12px}.eng-side-menu section:last-child{border-bottom:0}.eng-side-menu h2{margin:0 0 8px;font-size:13px;text-transform:uppercase}.eng-side-menu h2 a{color:#0b2e67;text-decoration:none}.eng-side-menu h2 a:hover{text-decoration:underline}.eng-side-menu>a,.eng-side-menu section>a{display:block;padding:5px 8px 5px 18px;color:#172033;text-decoration:none;font-size:13px;font-weight:700;border-radius:4px}.eng-side-menu section>a:hover{background:#fff;color:#0b2e67;box-shadow:inset 3px 0 0 #0b63b6}
.module-side-nav .module-side-nav-group{display:grid;gap:5px;margin:4px 0 8px}.module-side-nav .module-side-nav-group-title{display:block;padding:6px 8px 6px 12px;color:#172033;text-decoration:none;font-size:13px;font-weight:800;border-radius:4px}.module-side-nav .module-side-nav-group>a{display:block;padding:5px 8px 5px 26px;color:#172033;text-decoration:none;font-size:13px;font-weight:700;border-radius:4px}.module-side-nav .module-side-nav-group>a.module-side-nav-sub{padding-left:34px;font-size:12px;font-weight:650;color:#334155}.module-side-nav section>a.active,.module-side-nav .module-side-nav-group>a.active,.module-side-nav .module-side-nav-group-title.active{background:#fff;color:#0b2e67;box-shadow:inset 3px 0 0 #0b63b6}.module-side-nav section>a:hover,.module-side-nav .module-side-nav-group>a:hover{background:#fff;color:#0b2e67;box-shadow:inset 3px 0 0 #0b63b6}
.eng-module-main{padding:12px 14px 16px;display:flex;flex-direction:column;gap:14px}.eng-workflow-panel,.eng-data-panel{background:#fff;border:1px solid #b8c0cc;border-radius:5px;overflow:hidden}.eng-panel-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(180deg,#0f3d79,#08295b);color:#fff;padding:9px 12px}.eng-panel-bar h2{margin:0;font-size:14px;text-transform:uppercase;letter-spacing:0}.eng-panel-bar a,.eng-panel-bar span{color:#fff;font-weight:800;font-size:12px}
.eng-workflow-canvas{position:relative;padding:24px 18px;background:linear-gradient(180deg,#fbfcfe,#f4f7fa);min-height:190px}.eng-workflow-row{position:relative;display:grid;gap:18px;z-index:1}.eng-workflow-row-top{grid-template-columns:repeat(5,minmax(132px,1fr))}
.eng-workflow-node{display:grid;grid-template-columns:54px 1fr;grid-template-rows:auto auto auto;gap:4px 10px;padding:14px 12px;background:#f8fbff;border:1px solid #b8c7d9;border-radius:7px;text-decoration:none;color:#172033;box-shadow:0 8px 18px rgba(15,23,42,.08);min-height:120px;font-family:inherit;text-align:left;cursor:pointer}.eng-workflow-node:hover{border-color:#0b63b6;box-shadow:0 10px 24px rgba(11,99,182,.2)}.eng-workflow-node strong{text-transform:uppercase;font-size:13px;line-height:1.15}.eng-workflow-node small{font-size:12px;line-height:1.28;color:#172033}.eng-workflow-node em{font-style:normal;font-size:11px;color:#0b2e67;font-weight:900}.eng-node-mark{grid-row:1/4;align-self:center;display:grid;place-items:center;width:48px;height:48px;border:2px solid #61758e;border-radius:5px;background:#e9eef5;color:#0b2e67;font-size:13px;font-weight:900}.eng-workflow-node-blue{background:#edf6ff}.eng-workflow-node-green{background:#eff8ee}.eng-workflow-node-amber{background:#fff6e4}.eng-workflow-node-violet{background:#f5f1ff}.eng-workflow-node-slate{background:#eef6fb}.frame-part-workflow-row{grid-template-columns:repeat(5,minmax(132px,1fr))}.eng-panel-bar h2 a{color:#fff;text-decoration:none}.eng-panel-bar h2 a:hover{text-decoration:underline}
.cut-sheet-create-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px}.cut-sheet-create-grid label{display:flex;flex-direction:column;gap:6px;color:#334155;font-size:13px;font-weight:700}.cut-sheet-create-grid input,.cut-sheet-create-grid select{border:1px solid #cbd5e1;border-radius:8px;padding:9px 10px;background:#fff}.cut-sheet-machine-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.eng-dashboard-tables{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.85fr);gap:14px}.eng-table-scroll{overflow:auto}.eng-compact-table{width:100%;border-collapse:collapse;font-size:13px}.eng-compact-table th,.eng-compact-table td{border:1px solid #d5dbe4;padding:8px 9px;text-align:left;vertical-align:top}.eng-compact-table th{background:#eef2f7;color:#172033;font-size:12px}.eng-compact-table a{color:#0b4f97;font-weight:800;text-decoration:none}.eng-alert-list{display:flex;flex-direction:column}.eng-alert-row{display:grid;grid-template-columns:28px 1fr 145px;gap:8px;align-items:center;padding:10px 12px;border-bottom:1px solid #d5dbe4;text-decoration:none;color:#172033}.eng-alert-row span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;font-size:11px;font-weight:900;color:#fff}.eng-alert-row strong{font-size:13px}.eng-alert-row small{text-align:right;color:#384152}.eng-alert-warning span{background:#d97706}.eng-alert-info span{background:#0b63b6}.eng-alert-error span{background:#b91c1c}.eng-alert-ok span{background:#17803a}
.eng-module-status{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #b8c0cc;background:#fff;color:#111827;font-size:12px}.eng-module-status span{padding:12px 18px;border-left:1px solid #c9d0da;font-weight:800}.eng-module-status span:first-child{border-left:0}.eng-module-status strong{color:#0f7b32;text-transform:uppercase}
@media (max-width:1200px){.eng-module-header{grid-template-columns:1fr 1fr}.eng-module-brand,.eng-module-title{border-right:0}.eng-module-layout{grid-template-columns:1fr}.eng-side-menu{display:grid;grid-template-columns:repeat(2,1fr)}.eng-workflow-row-top{grid-template-columns:repeat(3,minmax(180px,1fr))}.eng-dashboard-tables{grid-template-columns:1fr}}
@media (max-width:720px){.eng-module-header,.eng-workflow-row-top,.eng-side-menu,.eng-module-status{grid-template-columns:1fr}.eng-module-actions{grid-template-columns:repeat(2,1fr)}.eng-workflow-canvas{padding:14px}.eng-alert-row{grid-template-columns:28px 1fr}.eng-alert-row small{text-align:left;grid-column:2}}
@media (max-width:720px){.cut-sheet-create-grid,.cut-sheet-machine-upload-grid{grid-template-columns:1fr}}
.production-order-flow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;background:#f8fafc}.production-order-flow-grid article{border:1px solid #d6dde8;border-radius:6px;background:#fff;padding:12px;display:grid;gap:6px}.production-order-flow-grid strong{color:#0b2e67;text-transform:uppercase;font-size:13px}.production-order-flow-grid small{color:#475569;line-height:1.45}.production-order-card-list{display:grid;gap:14px;padding:14px;background:#eef2f7}.production-order-card{border:1px solid #b8c0cc;border-radius:7px;background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.08);overflow:hidden}.production-order-card-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:14px 16px;border-bottom:1px solid #d8dee8;background:linear-gradient(180deg,#fff,#f7f9fc)}.production-order-card-header h3{margin:4px 0;color:#0b2e67;font-size:22px}.production-order-card-header p{margin:0;color:#475569}.production-order-card-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.production-order-kpi-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#d8dee8;border-bottom:1px solid #d8dee8}.production-order-kpi-row div{background:#fff;padding:12px}.production-order-kpi-row span{display:block;text-transform:uppercase;font-size:11px;font-weight:800;color:#64748b}.production-order-kpi-row strong{display:block;margin:5px 0;font-size:28px;color:#0f3d79}.production-order-kpi-row small{color:#475569}.production-order-detail-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px;padding:14px}.production-order-detail-grid h4{margin:0 0 8px;color:#172033;text-transform:uppercase;font-size:12px}.production-order-route-list{margin:0;padding-left:20px;display:grid;gap:8px}.production-order-route-list li strong{display:block;color:#0b2e67}.production-order-route-list li span{display:block;color:#475569;font-size:12px}.production-order-chip-list{display:flex;flex-wrap:wrap;gap:8px}.production-order-chip-list span{border:1px solid #d8dee8;background:#f8fafc;border-radius:999px;padding:7px 10px;font-size:12px;color:#475569}.production-order-chip-list strong{color:#0b2e67;margin-right:6px}.empty-state{padding:28px;text-align:center;background:#fff;border:1px dashed #b8c0cc;color:#64748b}@media (max-width:1200px){.production-order-flow-grid,.production-order-detail-grid{grid-template-columns:1fr}.production-order-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}.production-order-card-header{flex-direction:column}.production-order-card-actions{justify-content:flex-start}}@media (max-width:720px){.production-order-kpi-row{grid-template-columns:1fr}}
.production-order-family-list{display:grid;gap:14px;padding:14px;background:#eef2f7}.production-order-family-card{border:1px solid #b8c0cc;border-radius:7px;background:#fff;overflow:hidden}.production-order-family-card>header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;background:#f7f9fc;border-bottom:1px solid #d8dee8}.production-order-family-card>header strong{color:#0b2e67;font-size:18px}.production-order-family-card>header span{color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase}.production-order-table-wrap{overflow:auto}.production-order-simple-table{width:100%;border-collapse:collapse}.production-order-simple-table th,.production-order-simple-table td{padding:10px 12px;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:top}.production-order-simple-table th{font-size:11px;text-transform:uppercase;color:#64748b;background:#fff}.production-order-simple-table tr:last-child td{border-bottom:0}.production-order-simple-table td strong{display:block;color:#0f172a}.production-order-simple-table td span{display:block;margin-top:3px;color:#64748b;font-size:12px;line-height:1.35}.production-order-frame-cell{min-width:210px;background:#f8fafc}.production-order-action-cell{white-space:nowrap;text-align:right}.production-order-action-cell .action-btn{margin:0;min-height:34px}
.production-order-tank-section{padding:12px;border-top:1px solid #d8dee8}.production-order-tank-section:first-of-type{border-top:0}.production-order-tank-section h3{margin:0 0 8px;color:#0f172a;font-size:17px}.production-order-action-stack{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.planning-frame-family-list{display:grid;gap:14px}.planning-frame-family-block{border:1px solid #b8c0cc;border-radius:5px;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.05);overflow:hidden}.planning-frame-family-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;background:#0f3d79;border-bottom:1px solid #08295b;color:#fff}.planning-frame-family-header h3{margin:0;color:#fff;font-size:20px;line-height:1.2}.planning-frame-family-header span{color:#fff;font-size:13px;font-weight:900;text-transform:uppercase}.planning-frame-config-block{display:grid;grid-template-columns:370px minmax(0,1fr);gap:0;padding:18px}.planning-frame-config-block+.planning-frame-config-block{border-top:1px solid #d8dee8}.planning-frame-summary-card{position:relative;display:grid;align-content:start;justify-items:center;min-height:224px;padding:18px 54px 18px 18px;background:#b8c0cc;border-top:1px solid #8f9aaa}.planning-frame-id{color:#000;font-size:18px;font-weight:950;line-height:1.2;text-align:center;text-transform:uppercase}.planning-frame-desc{margin-top:6px;color:#000;font-size:14px;font-weight:850;line-height:1.25;text-align:center;text-transform:uppercase}.planning-frame-counts{display:grid;gap:3px;margin:28px 0 0;color:#0b2e67;font-size:11px;font-weight:400;text-transform:uppercase}.planning-frame-counts div{display:grid;grid-template-columns:auto 36px;gap:12px;align-items:baseline}.planning-frame-counts dt,.planning-frame-counts dd{margin:0}.planning-frame-counts dd{text-align:left}.planning-frame-edit-btn{position:absolute;right:36px;bottom:34px;background:#fff!important;border-color:#cbd5e1!important;color:#0b2e67!important;box-shadow:0 4px 12px rgba(15,23,42,.08)}.planning-frame-config-table-wrap{overflow:auto;border-top:1px solid #e0e6ef}.planning-frame-config-table{width:100%;border-collapse:collapse;min-width:780px}.planning-frame-config-table th,.planning-frame-config-table td{padding:12px 14px;border-bottom:1px solid #e4e9f0;text-align:left;vertical-align:top}.planning-frame-config-table th{color:#4b5563;background:#fff;font-size:11px;font-weight:950;text-transform:uppercase}.planning-frame-config-table td{color:#0b2e67;font-size:13px}.planning-frame-config-table td strong{display:block;color:#0b2e67;font-size:14px}.planning-frame-config-table td span{display:block;margin-top:4px;color:#5b6778;font-size:12px;line-height:1.35}.planning-frame-create-cell{text-align:right;width:150px}.planning-frame-create-btn{display:inline-flex;align-items:center;justify-content:center;width:134px;min-height:70px;padding:12px 14px;border:1px solid #9aa8ba;border-radius:8px;background:#e5ebf4;color:#0b2e67;font:inherit;font-weight:900;cursor:pointer}.planning-frame-create-btn:hover,.planning-frame-create-btn:focus{background:#dce5f1;border-color:#6f8198;outline:none}.planning-frame-create-btn:disabled{opacity:.58;cursor:not-allowed}
@media (max-width:760px){.planning-component-card-actions,.parts-action-summary{grid-template-columns:1fr}.parts-action-board-header{align-items:flex-start;flex-direction:column}.production-order-family-card>header{align-items:flex-start;flex-direction:column}.production-order-simple-table th,.production-order-simple-table td{padding:8px}.production-order-action-cell{white-space:normal}}
.planning-frame-summary-card{background:#fff}
.planning-frame-title-block{display:grid;gap:4px;width:100%;box-sizing:border-box;padding:10px 12px;background:#b8c0cc;border:1px solid #8f9aaa;border-radius:5px}
.planning-frame-title-block .planning-frame-id,.planning-frame-title-block .planning-frame-desc{color:#000}

/* Maintenance module shell: mirrors the Engineering module layout with maintenance accents */
.maintenance-module-shell .eng-module-title h1,.maintenance-module-shell .eng-module-brand,.maintenance-module-shell .eng-side-menu h2 a{color:#164e63}
.maintenance-module-shell .eng-module-logo{color:#155e75}
.maintenance-module-shell .eng-module-user dd{color:#155e75}
.maintenance-module-shell .eng-module-actions a:hover,.maintenance-module-shell .eng-module-actions button:hover{color:#155e75}
.maintenance-module-shell .eng-panel-bar{background:linear-gradient(180deg,#155e75,#0f3f55)}
.maintenance-module-shell .eng-workflow-node:hover{border-color:#0891b2;box-shadow:0 10px 24px rgba(8,145,178,.18)}
.maintenance-module-shell .eng-side-menu section>a:hover{color:#155e75;box-shadow:inset 3px 0 0 #0891b2}
.maintenance-module-shell .maintenance-shell{margin:0}
.maintenance-module-shell .ops-landing-shell{gap:14px}
.maintenance-module-shell .ops-landing-hero{border-radius:5px;box-shadow:none}
.maintenance-module-shell .maintenance-station-panel,.maintenance-module-shell .maintenance-card{border-radius:5px}
.has-global-header .maintenance-module-shell .eng-module-layout{grid-template-columns:280px minmax(0,1fr)!important}
.maintenance-station-sidebar{min-width:0;border-right:1px solid #cbd5e1;background:#f8fafc;color:#0f172a}
.maintenance-sidebar-home{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:center;padding:12px;border-bottom:1px solid #cbd5e1;color:#0f315c;text-decoration:none}
.maintenance-sidebar-home:hover,.maintenance-sidebar-home.is-active{background:#e0f2fe;box-shadow:inset 4px 0 0 #0891b2}
.maintenance-sidebar-home-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:7px;background:#155e75;color:#fff;font-size:18px;font-weight:950}
.maintenance-sidebar-home strong,.maintenance-sidebar-home small,.maintenance-sidebar-station strong,.maintenance-sidebar-station small{display:block;min-width:0}
.maintenance-sidebar-home strong,.maintenance-sidebar-station strong{overflow:hidden;text-overflow:ellipsis;color:#0f172a;font-size:12px;font-weight:950;line-height:1.2}
.maintenance-sidebar-home small,.maintenance-sidebar-station small{margin-top:3px;color:#64748b;font-size:10px;font-weight:800;line-height:1.15}
.maintenance-sidebar-groups{display:grid}
.maintenance-sidebar-group{border-bottom:1px solid #dbe3ec;padding:9px 8px 11px}
.maintenance-sidebar-group h2{margin:0 4px 7px;color:#526176;font-size:10px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.maintenance-sidebar-stations{display:grid;gap:5px}
.maintenance-sidebar-station{display:grid;grid-template-columns:54px minmax(0,1fr);gap:9px;align-items:center;min-height:64px;padding:5px 7px;border:1px solid transparent;border-radius:6px;color:#0f172a;text-decoration:none}
.maintenance-sidebar-station img{width:54px;height:54px;border:1px solid #d8e0ea;border-radius:5px;background:#fff;object-fit:contain}
.maintenance-sidebar-station:hover,.maintenance-sidebar-station:focus-visible,.maintenance-sidebar-station.is-active{border-color:#93c5fd;background:#fff;box-shadow:inset 4px 0 0 #0891b2;outline:none}
.maintenance-sidebar-station.is-inactive{opacity:.58}
.maintenance-sidebar-empty{padding:16px;color:#64748b;font-size:12px;font-weight:800}

.maintenance-areas-canvas{min-height:auto}
.maintenance-areas-row{grid-template-columns:repeat(5,minmax(132px,1fr))}
.maintenance-area-node{min-height:142px}
.maintenance-area-node-active{border-color:#0891b2;box-shadow:0 0 0 2px rgba(8,145,178,.22),0 10px 24px rgba(8,145,178,.18)}
.maintenance-area-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.maintenance-dashboard-tables{align-items:start}
.maintenance-launch-panel{background:linear-gradient(180deg,#fff,#f8fbff)}
.maintenance-launch-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));padding:14px;margin-top:0}
.maintenance-launch-card{background:linear-gradient(180deg,#f8fbff,#eef9fb);border-color:#a7d7df}
.maintenance-launch-card .skill-admin-action-primary{background:#155e75;border-color:#155e75}
.maintenance-launch-card .skill-admin-action-secondary{color:#155e75;border-color:#67c3d0;background:#ecfeff}
.maintenance-events-table td:nth-child(2) a{font-weight:900}
.maintenance-empty-state{display:flex;flex-direction:column;gap:6px;padding:18px;color:#172033;background:#f8fbff}
.maintenance-empty-state small{color:#475569}
.maintenance-empty-state-compact{border-bottom:1px solid #d5dbe4}
@media (max-width:1200px){.maintenance-areas-row{grid-template-columns:repeat(3,minmax(180px,1fr))}}
@media (max-width:900px){.has-global-header .maintenance-module-shell .eng-module-layout{grid-template-columns:210px minmax(0,1fr)!important}.maintenance-sidebar-station{grid-template-columns:42px minmax(0,1fr);padding:4px}.maintenance-sidebar-station img{width:42px;height:42px}}
@media (max-width:720px){.maintenance-areas-row{grid-template-columns:1fr}.has-global-header .maintenance-module-shell .eng-module-layout{grid-template-columns:150px minmax(0,1fr)!important}.maintenance-sidebar-home{grid-template-columns:32px minmax(0,1fr);gap:6px;padding:7px 5px}.maintenance-sidebar-home-icon{width:30px;height:30px;font-size:13px}.maintenance-sidebar-group{padding:7px 4px}.maintenance-sidebar-station{grid-template-columns:34px minmax(0,1fr);gap:5px;min-height:42px;padding:3px}.maintenance-sidebar-station img{width:34px;height:34px}.maintenance-sidebar-station strong{font-size:10px}.maintenance-sidebar-station small{font-size:9px}.maintenance-sidebar-group h2{font-size:9px}}
.maintenance-module-shell table{background:#fff}

/* Inventory module shell: mirrors Engineering with inventory accents */
.inventory-module-shell .eng-module-title h1,
.inventory-module-shell .eng-module-brand,
.inventory-module-shell .eng-side-menu h2 a{color:#115e59}
.inventory-module-shell .eng-module-logo{color:#0f766e}
.inventory-module-shell .eng-module-user dd{color:#115e59}
.inventory-module-shell .eng-module-actions a:hover,
.inventory-module-shell .eng-module-actions button:hover{color:#0f766e}
.inventory-module-shell .eng-panel-bar{background:linear-gradient(180deg,#0f766e,#134e4a)}
.inventory-module-shell .eng-workflow-node:hover{border-color:#0f766e;box-shadow:0 10px 24px rgba(15,118,110,.18)}
.inventory-module-shell .eng-side-menu section>a:hover{color:#0f766e;box-shadow:inset 3px 0 0 #14b8a6}
.inventory-module-shell .eng-module-status strong{color:#0f766e}
.inventory-workflow-canvas{min-height:auto}
.inventory-workflow-row{grid-template-columns:repeat(3,minmax(180px,1fr))}
.inventory-dashboard-tables{align-items:start}
.inventory-panel-body{padding:14px;background:#f8fafc}
.inventory-panel-body .field-help{margin-top:0}
.inventory-stacked-panels{display:grid;gap:14px}
.inventory-subpanel{background:#fff;border:1px solid #d8dee8;border-radius:6px;padding:14px}
.inventory-subpanel h3{margin:0 0 10px;color:#115e59;text-transform:uppercase;font-size:13px}
.inventory-signal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;background:#eef2f7;border-bottom:1px solid #d5dbe4}
.inventory-signal-card{background:#fff;border:1px solid #d8dee8;border-radius:6px;padding:12px}
.inventory-signal-card span{display:block;text-transform:uppercase;font-size:11px;font-weight:800;color:#64748b}
.inventory-signal-card strong{display:block;font-size:30px;line-height:1.1;margin:5px 0;color:#115e59}
.inventory-signal-card small{color:#475569}
.inventory-edit-table input,.inventory-edit-table select{max-width:150px;border:1px solid #cbd5e1;border-radius:6px;padding:6px 8px;background:#fff}
.eng-panel-button{border:0;background:transparent;color:#fff;font-weight:800;font-size:12px;font-family:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
@media (max-width:1200px){.inventory-workflow-row{grid-template-columns:repeat(2,minmax(180px,1fr))}}
@media (max-width:720px){.inventory-workflow-row,.inventory-signal-list{grid-template-columns:1fr}}

/* Storage staging planning panel */
.module-side-nav .module-side-nav-group>a.module-side-nav-sub-child{padding-left:48px;font-size:11px;color:#526071}
.module-side-nav .module-side-nav-group>a.module-side-nav-sub-grandchild{padding-left:62px;font-size:11px;color:#526071}
.staging-planning-shell{display:flex;flex-direction:column;gap:16px}
.staging-command-panel{background:#fff;border:1px solid #b8c0cc;border-radius:5px;overflow:hidden}
.staging-command-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(180deg,#0f3d79,#08295b);color:#fff;padding:9px 12px}
.staging-command-bar h2{margin:0;font-size:14px;text-transform:uppercase}.staging-command-bar span{font-size:12px;font-weight:800}
.staging-command-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.7fr) minmax(420px,1.05fr);grid-template-rows:1fr 1fr;gap:10px;padding:12px;background:#f8fafc}
.staging-command-intro{grid-row:1/3;display:flex;flex-direction:column;justify-content:center;border:1px solid #e2e8f0;background:#fff;border-radius:8px;padding:16px;min-height:120px}
.staging-command-intro h1{margin:4px 0 8px;font-size:30px;line-height:1;color:#0f172a;text-transform:uppercase}
.staging-command-intro p{margin:0;color:#475569;line-height:1.45}
.staging-operator-card,.staging-maintenance-card{border:1px solid #e2e8f0;background:#fff;border-radius:8px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.staging-operator-card strong{display:block;color:#0f172a;font-size:15px}.staging-operator-card span{display:block;color:#64748b;font-size:12px;margin-top:3px}
.staging-operator-card form,.staging-maintenance-card{margin:0}.staging-operator-card button,.staging-maintenance-card button{width:100%;min-height:38px;margin:0}
.staging-maintenance-card button{background:transparent;color:#0b2e67;font-weight:900}
.staging-command-actions{grid-column:3;grid-row:1/3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border:1px solid #dbeafe;background:#eff6ff;border-radius:8px;padding:12px;align-content:center}
.staging-command-actions .action-btn{display:flex;align-items:center;justify-content:center;text-align:center;min-height:42px;margin:0;padding:8px 10px;font-size:12px;line-height:1.15}
.planning-tab-btn{display:grid;grid-template-columns:24px minmax(0,1fr);gap:7px;align-items:center;text-decoration:none;min-height:46px;border-radius:7px;padding:8px 10px;font-size:12px;font-weight:900;line-height:1.1;color:#172033;border:1px solid #cbd5e1;background:#fff}
.planning-tab-btn span{display:grid;place-items:center;width:22px;height:22px;border-radius:999px;background:rgba(15,23,42,.12);font-size:11px;color:#0f172a}
.planning-tab-btn strong{overflow-wrap:anywhere}.planning-tab-btn:hover{box-shadow:inset 3px 0 0 #0b63b6;background:#fff}
.planning-tab-green{background:#dcfce7;border-color:#86efac}.planning-tab-yellow{background:#fef9c3;border-color:#fde047}.planning-tab-red{background:#fee2e2;border-color:#fca5a5}.planning-tab-blue{background:#dbeafe;border-color:#93c5fd}
.planning-tab-btn.active{color:#fff;border-color:#0b2e67;background:#0f3d79;box-shadow:0 6px 14px rgba(15,61,121,.18)}
.planning-tab-btn.active span{background:#fff;color:#0f3d79}
.staging-planning-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;background:#fff;border:1px solid #dbe2ea;border-radius:8px;padding:16px}
.staging-planning-toolbar h1{margin:4px 0;color:#0f172a;font-size:28px;line-height:1.1}
.staging-planning-toolbar p{margin:0;color:#475569;line-height:1.45}
.staging-planning-actions{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:8px}
.staging-planning-actions .action-btn{margin:0;text-align:center;justify-content:center}
.staging-planning-grid{display:grid;grid-template-columns:minmax(560px,1.45fr) minmax(340px,.75fr);gap:16px;align-items:start}
.staging-planning-panel{background:#fff;border:1px solid #dbe2ea;border-radius:10px;padding:16px;box-shadow:0 8px 20px rgba(15,23,42,.07)}
.staging-planning-side{display:flex;flex-direction:column;gap:16px}
.staging-release-list,.staging-compact-list{display:flex;flex-direction:column;gap:10px}
.staging-table-card{border:1px solid #e2e8f0;background:#f8fafc;border-radius:8px;padding:12px;margin-top:12px}
.staging-table-card-compact{margin:0 0 12px}
.staging-table-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.staging-table-title strong{color:#0f172a}.staging-table-title span{font-size:12px;font-weight:800;color:#64748b;text-transform:uppercase}
.staging-release-card{display:grid;grid-template-columns:42px minmax(0,1fr) 180px;gap:12px;align-items:start;border:1px solid #e2e8f0;background:#f8fafc;border-radius:8px;padding:12px}
.staging-release-card.is-ready{background:#f0fdf4;border-color:#86efac}
.staging-release-card.is-hold{background:#fffbeb;border-color:#f59e0b}
.staging-release-rank{width:36px;height:36px;border-radius:999px;background:#0f172a;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800}
.staging-release-main h3{margin:8px 0 8px;color:#0f172a;font-size:24px;line-height:1.1}
.staging-release-main dl{display:grid;grid-template-columns:90px minmax(0,1fr) minmax(130px,.65fr);gap:8px;margin:0}
.staging-release-main dl>div{background:#fff;border:1px solid #e2e8f0;border-radius:7px;padding:8px;min-width:0}
.staging-release-main dt{font-size:10px;text-transform:uppercase;color:#64748b;font-weight:800}
.staging-release-main dd{margin:3px 0 0;color:#0f172a;font-weight:700;overflow-wrap:anywhere}
.staging-release-actions{display:grid;grid-template-columns:1fr;gap:8px}
.staging-release-actions form{margin:0}
.staging-release-actions .action-btn,.staging-release-actions button{width:100%;margin:0;min-height:38px;text-align:center}
.planning-queue-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;border:1px solid #dbeafe;background:#eff6ff;border-radius:8px;padding:10px}
.planning-queue-controls label{display:grid;gap:4px;margin:0;color:#334155;font-size:11px;font-weight:850;text-transform:uppercase}
.planning-queue-controls input,.planning-queue-controls textarea{width:100%;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#0f172a;font:inherit;font-size:12px;padding:7px;text-transform:none}
.planning-queue-controls textarea{resize:vertical;min-height:54px}
.planning-queue-control-flags{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.planning-queue-control-flags label{display:flex;grid-template-columns:none;align-items:center;gap:5px;background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:6px 9px}
.planning-queue-control-flags input{width:auto}
.planning-queue-control-actions{display:flex;align-items:center;gap:8px;justify-content:space-between}
.planning-queue-control-actions [data-queue-control-status]{font-size:11px;font-weight:900;color:#64748b;text-transform:uppercase}
.planning-queue-control-actions [data-state="saved"]{color:#15803d}
.planning-queue-control-actions [data-state="error"]{color:#b91c1c}
.planning-queue-controls-readonly{display:flex;flex-wrap:wrap;grid-template-columns:none;background:#f8fafc;border-color:#e2e8f0}
.planning-queue-controls-readonly span{font-size:11px;font-weight:900;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:5px 8px}
.planning-queue-auto-signal{display:grid;gap:3px;margin-top:10px;border:1px solid #d8dee8;border-radius:8px;background:#fff;padding:9px}
.planning-queue-auto-signal strong{color:#0f2747;font-size:12px;font-weight:1000;text-transform:uppercase}
.planning-queue-auto-signal span,.planning-queue-auto-signal small{color:#64748b;font-size:11px;font-weight:850;line-height:1.2}
.planning-queue-auto-signal-urgent{border-color:#f1b9b4;background:#fff7f7}
.planning-queue-auto-signal-ready{border-color:#b7dfc6;background:#f7fff9}
.planning-queue-auto-signal-risk{border-color:#f1b9b4;background:#fff7f7}
.planning-queue-auto-signal-warn{border-color:#f0c987;background:#fffbea}
.planning-queue-order-list{display:grid;gap:8px}
.planning-queue-order-row{display:grid;grid-template-columns:58px minmax(0,1fr) minmax(140px,auto);gap:8px;align-items:center;border:1px solid #d8dee8;border-radius:8px;background:#fff;padding:9px;box-shadow:0 1px 0 rgba(15,23,42,.04)}
.planning-queue-order-row[draggable="true"]{cursor:grab}
.planning-queue-order-row.is-dragging{opacity:.58;border-color:#0f3d79;background:#e8f1fb}
.planning-queue-order-row.is-locked{background:#f8fafc;border-style:dashed}
.planning-queue-order-handle{display:grid;place-items:center;min-height:32px;border:1px solid #cbd5e1;border-radius:6px;background:#eef2f7;color:#334155;font-size:10px;font-weight:1000;text-transform:uppercase}
.planning-queue-order-main{display:grid;gap:2px;min-width:0}
.planning-queue-order-main strong{color:#0f2747;font-size:13px;font-weight:1000}
.planning-queue-order-main span,.planning-queue-order-main small{color:#64748b;font-size:11px;font-weight:850;line-height:1.25}
.planning-queue-order-meta{display:flex;justify-content:flex-end;gap:5px;flex-wrap:wrap}
.planning-queue-chip{display:inline-flex;align-items:center;min-height:22px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#334155;padding:3px 7px;font-size:10px;font-weight:950;text-transform:uppercase}
.planning-queue-chip.urgent{border-color:#f1b9b4;background:#fde8e6;color:#9f1d14}
.planning-queue-chip.locked{border-color:#f0c987;background:#fff3d5;color:#805100}
.planning-queue-order-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:10px}
.planning-queue-order-actions [data-queue-order-status]{font-size:11px;font-weight:900;color:#64748b;text-transform:uppercase}
.planning-queue-order-actions [data-state="saved"]{color:#15803d}
.planning-queue-order-actions [data-state="error"]{color:#b91c1c}
.staging-planning-shell .planning-pallet-card{gap:8px;padding:10px;box-shadow:0 2px 10px rgba(15,23,42,.05)}
.staging-planning-shell .planning-pallet-card-id{font-size:16px;line-height:1.1}
.staging-planning-shell .planning-pallet-card-po{font-size:11px}
.staging-planning-shell .planning-pallet-card-frame{font-size:13px;line-height:1.25}
.staging-planning-shell .planning-pallet-card-frame-desc{font-size:11px;line-height:1.35}
.staging-planning-shell .planning-pallet-card-facts{gap:6px}
.staging-planning-shell .planning-pallet-card-facts div{padding:6px;border-radius:7px}
.staging-planning-shell .planning-pallet-card-facts dt{font-size:9px}
.staging-planning-shell .planning-pallet-card-facts dd{font-size:11px}
.staging-planning-shell .planning-pill{padding:5px 8px;font-size:10px}
.staging-planning-shell .planning-status-chip{min-height:22px;padding:3px 7px;font-size:9px}
.staging-queue-lane .planning-pallet-card{margin:10px}
.staging-queue-lane .planning-pallet-card+.planning-pallet-card{margin-top:0}
.staging-compact-row{display:grid;gap:3px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:8px;padding:10px}
.staging-compact-row strong{color:#0f172a}.staging-compact-row span{color:#334155}.staging-compact-row small{color:#64748b}
.staging-compact-row-link{color:inherit;text-decoration:none}.staging-compact-row-link:hover,.staging-compact-row-link:focus{border-color:#2563eb;background:#eff6ff;outline:none}
.staging-queue-monitor{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}
.staging-queue-lane{border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;overflow:hidden}
.staging-queue-lane header{display:flex;justify-content:space-between;gap:8px;padding:10px 12px;background:#eef2f7;border-bottom:1px solid #e2e8f0}
.staging-queue-lane header strong{color:#0f172a}.staging-queue-lane header span{font-size:12px;font-weight:800;color:#475569}
.staging-queue-row{display:grid;grid-template-columns:74px minmax(76px,.5fr) minmax(0,1fr);gap:8px;padding:9px 12px;border-bottom:1px solid #e2e8f0;align-items:center}
.staging-queue-row:last-child{border-bottom:0}.staging-queue-row span{text-transform:uppercase;font-size:10px;font-weight:800;color:#64748b}.staging-queue-row strong{color:#0f172a}.staging-queue-row small{color:#475569;overflow-wrap:anywhere}
.staging-event-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.staging-event-strip>div{display:grid;gap:3px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:8px;padding:10px}
.staging-event-strip strong{color:#0f172a}.staging-event-strip span,.staging-event-strip small{color:#64748b}
.planning-order-builder-frame{width:100%;min-height:720px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;margin-top:12px}
.production-order-workspace-embedded{min-height:auto;padding:0;background:transparent}
.production-order-workspace-embedded .eng-module-layout{display:block;min-height:auto}
.production-order-workspace-embedded .eng-module-main{padding:0}

.simple-kiosk-shell{min-height:calc(100vh - 32px);background:#f4f6f8;border:1px solid #cbd5e1;color:#111827}
.kiosk-page .app-shell>div{flex:1;min-width:0}
.simple-kiosk-header{display:grid;grid-template-columns:280px minmax(0,1fr);gap:14px;align-items:stretch;background:#fff;border-bottom:1px solid #cbd5e1;padding:12px 14px}
.simple-kiosk-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#0f172a;border-right:1px solid #dbe2ea;padding-right:14px}
.simple-kiosk-brand strong{display:block;text-transform:uppercase;font-size:15px;line-height:1.15}
.simple-kiosk-brand small{display:block;color:#475569;font-size:12px;font-weight:800;text-transform:uppercase}
.simple-kiosk-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #cbd5e1;background:#f8fafc}
.simple-kiosk-nav a{display:flex;align-items:center;justify-content:center;min-height:58px;text-align:center;text-decoration:none;color:#172033;font-weight:850;font-size:13px;border-left:1px solid #dbe2ea}
.simple-kiosk-nav a:first-child{border-left:0}.simple-kiosk-nav a.active,.simple-kiosk-nav a:hover{background:#0f3d79;color:#fff}
.simple-kiosk-main{display:flex;flex-direction:column;gap:14px;padding:14px}
.simple-kiosk-hero,.simple-kiosk-titlebar{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:16px}
.simple-kiosk-hero h1,.simple-kiosk-titlebar h1{margin:0;color:#0f172a;font-size:30px;line-height:1.1;text-transform:uppercase}
.simple-kiosk-eyebrow{margin:0 0 5px;color:#475569;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.simple-kiosk-user,.simple-kiosk-titlebar>span{display:flex;flex-direction:column;gap:3px;align-items:flex-end;color:#475569;font-size:12px;font-weight:800;text-transform:uppercase}
.simple-kiosk-user strong,.simple-kiosk-titlebar>span{color:#0f3d79;font-size:18px}
.simple-kiosk-module-grid,.simple-kiosk-station-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.simple-kiosk-module-card{display:flex;flex-direction:column;gap:6px;min-height:130px;padding:18px;text-decoration:none;background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#0f172a}
.simple-kiosk-module-card:hover{border-color:#0f3d79;box-shadow:inset 4px 0 0 #0f3d79}
.simple-kiosk-module-card span,.simple-kiosk-panel>header span,.simple-kiosk-metric-grid span{font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:#64748b}
.simple-kiosk-module-card strong{font-size:34px;line-height:1.05;color:#0f3d79}
.simple-kiosk-module-card small{font-size:13px;color:#475569;font-weight:700}
.simple-kiosk-stack{display:grid;gap:14px}
.simple-kiosk-panel{background:#fff;border:1px solid #cbd5e1;border-radius:6px;overflow:hidden}
.simple-kiosk-panel>header{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#0f3d79;color:#fff;padding:10px 12px}
.simple-kiosk-panel>header h2{margin:0;font-size:15px;text-transform:uppercase}.simple-kiosk-panel>header span{color:#fff}
.kiosk-page .simple-kiosk-panel>header h2{color:#fff}
.simple-kiosk-subsection{padding:12px;border-top:1px solid #e2e8f0}.simple-kiosk-subsection:first-of-type{border-top:0}
.simple-kiosk-subsection h3{margin:0 0 8px;color:#0f172a;font-size:17px}
.simple-kiosk-table-wrap{overflow:auto}.simple-kiosk-table{width:100%;border-collapse:collapse;font-size:13px}
.simple-kiosk-table th,.simple-kiosk-table td{padding:10px 11px;border-top:1px solid #e2e8f0;text-align:left;vertical-align:top}
.simple-kiosk-table thead th{border-top:0;background:#f8fafc;color:#475569;font-size:11px;font-weight:900;text-transform:uppercase}
.simple-kiosk-table td strong{display:block;color:#0f172a}.simple-kiosk-table td span{display:block;margin-top:3px;color:#64748b;font-size:12px}
.simple-kiosk-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.simple-kiosk-button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border:1px solid #cbd5e1;border-radius:5px;background:#fff;color:#0f172a;text-decoration:none;font:inherit;font-size:12px;font-weight:850;cursor:pointer}
.simple-kiosk-button.primary{background:#0f3d79;border-color:#0f3d79;color:#fff}.simple-kiosk-button:disabled{opacity:.55;cursor:not-allowed}
.simple-kiosk-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:12px}
.simple-kiosk-metric-grid.compact{padding:0 0 12px;grid-template-columns:repeat(2,minmax(0,1fr))}
.simple-kiosk-metric-grid>div{display:flex;flex-direction:column;gap:4px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:5px;padding:12px}
.simple-kiosk-metric-grid strong{color:#0f172a;font-size:20px;line-height:1.1}
.simple-kiosk-station-card{padding:0}.simple-kiosk-station-card>.simple-kiosk-actions{padding:0 12px 12px}
.simple-kiosk-empty{display:flex;align-items:center;justify-content:center;min-height:100px;border:1px dashed #cbd5e1;border-radius:6px;background:#fff;color:#475569;font-weight:800}
.kiosk-shop-metrics{padding:0;grid-template-columns:repeat(4,minmax(0,1fr))}
.kiosk-hot-shots>header a{color:#fff;font-size:12px;font-weight:800;text-decoration:none}
.kiosk-hot-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:8px;padding:12px}
.kiosk-hot-list a{display:grid;gap:3px;border:1px solid #f0c4b9;border-left:4px solid #b42318;border-radius:5px;background:#fff7f5;padding:10px;text-decoration:none;color:#172033}
.kiosk-hot-list a span,.kiosk-hot-list p{font-size:12px;color:#66504c;margin:0}
.kiosk-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}
.kiosk-section-head h2{margin:0;color:#0f172a;font-size:19px}.kiosk-section-head span{font-size:12px;color:#475569;font-weight:750}
.kiosk-shop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:12px}
.kiosk-shop-station>header h3{margin:0;color:#fff;font-size:15px;text-transform:uppercase}.kiosk-shop-station>header span{color:#dbeafe;font-size:11px}
.kiosk-hot-shots>header h2{color:#fff}
.kiosk-next-jobs{list-style:none;padding:8px 12px;margin:0;min-height:160px}
.kiosk-next-jobs li{display:flex;align-items:center;gap:9px;padding:6px 0;border-bottom:1px solid #e2e8f0;min-width:0}
.kiosk-next-jobs li:last-child{border:0}.kiosk-next-jobs li>div{min-width:0}.kiosk-next-jobs strong{display:block;color:#0f172a;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kiosk-next-jobs small{display:block;color:#475569;font-size:11px}.kiosk-next-jobs b{color:#b42318}
.kiosk-job-position{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:4px;background:#e7eef8;color:#0f3d79;font-size:12px;font-weight:900}
.kiosk-no-jobs{color:#64748b;font-size:12px}.kiosk-shop-station>.simple-kiosk-actions{padding:0 12px 12px}.kiosk-shop-station>.simple-kiosk-actions .simple-kiosk-button{flex:1}
.kiosk-release-jobs{margin-bottom:14px}.kiosk-release-list{padding:4px 12px}.kiosk-release-list>p{font-size:13px;color:#64748b}.kiosk-release-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(130px,2fr) auto auto;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid #e2e8f0;font-size:12px}.kiosk-release-row:last-child{border:0}.kiosk-release-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#475569}.kiosk-release-row>small{white-space:nowrap;color:#475569}
@media(max-width:760px){.kiosk-shop-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.kiosk-shop-grid{grid-template-columns:1fr}.kiosk-shop-station>.simple-kiosk-actions{flex-direction:row;flex-wrap:wrap}.kiosk-shop-station>.simple-kiosk-actions .simple-kiosk-button{width:auto}.kiosk-page .simple-kiosk-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.kiosk-page .simple-kiosk-nav a:nth-child(2n){border-left:1px solid #dbe2ea}.kiosk-page .simple-kiosk-nav a:nth-child(2){border-top:0}}
@media (max-width:760px){.simple-kiosk-header,.simple-kiosk-nav,.simple-kiosk-hero,.simple-kiosk-titlebar{grid-template-columns:1fr;display:grid}.simple-kiosk-brand{border-right:0}.simple-kiosk-nav a{border-left:0;border-top:1px solid #dbe2ea}.simple-kiosk-nav a:first-child{border-top:0}.simple-kiosk-user,.simple-kiosk-titlebar>span{align-items:flex-start}.simple-kiosk-actions{flex-direction:column;align-items:stretch}.simple-kiosk-button{width:100%}}
.production-order-workspace-embedded .eng-data-panel{box-shadow:none;border-radius:8px}
.parts-planning-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:14px;align-items:start}
.parts-action-board{display:grid;gap:12px}
.parts-action-board .staging-table-card{margin-top:0}
.parts-action-board-header{align-items:center}
.parts-action-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.parts-action-summary>div{display:grid;gap:4px;min-width:0;border:1px solid #d7e1ed;border-radius:7px;background:#f8fafc;padding:12px}
.parts-action-summary span{font-size:10px;font-weight:950;letter-spacing:.06em;text-transform:uppercase;color:#64748b}
.parts-action-summary strong{font-size:28px;line-height:1;color:#071a33;font-weight:950}
.parts-action-summary small{color:#64748b;font-size:11px;font-weight:750;line-height:1.25}
.parts-action-grid{grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr)}
.parts-action-primary .planning-table-list{gap:10px}
.frame-planning-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.55fr);gap:14px;align-items:start}
.parts-planning-stack,.frame-family-list{display:flex;flex-direction:column;gap:12px}
.planning-table-list{display:flex;flex-direction:column;gap:8px}
.planning-table-row{display:grid;grid-template-columns:minmax(110px,.55fr) 90px minmax(0,1fr) 90px;gap:8px;align-items:center;border:1px solid #e2e8f0;background:#fff;border-radius:7px;padding:9px}
.planning-table-row strong{color:#0f172a}.planning-table-row span{color:#475569;font-size:12px;overflow-wrap:anywhere}
.frame-family-card{border:1px solid #e2e8f0;background:#f8fafc;border-radius:8px;padding:12px}
.frame-family-card header{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px}.frame-family-card header strong{color:#0f172a}.frame-family-card header span{color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase}
.frame-card-grid{display:grid;grid-template-columns:1fr;gap:8px}
.frame-mini-card{display:grid;gap:4px;border:1px solid #e2e8f0;background:#fff;border-radius:7px;padding:9px}
.frame-mini-card strong{color:#0f172a}.frame-mini-card span,.frame-mini-card small{color:#64748b;overflow-wrap:anywhere}
.storage-panel-table-wrap{overflow:auto;border:1px solid #e2e8f0;border-radius:8px;background:#fff}
.storage-panel-table{width:100%;border-collapse:collapse}
.storage-panel-table th,.storage-panel-table td{padding:9px 11px;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:top}
.storage-panel-table th{font-size:11px;text-transform:uppercase;color:#64748b;background:#f8fafc}
.storage-panel-table tr:last-child td{border-bottom:0}
.fabricated-storage-shell{display:flex;flex-direction:column;gap:18px}.fabricated-storage-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:18px}.fabricated-storage-toolbar h1{margin:4px 0;font-size:28px}.fabricated-storage-toolbar p{margin:0;color:#64748b}.fabricated-storage-toolbar>a:first-child,.fabricated-storage-toolbar div>a{font-weight:800;color:#2563eb;text-decoration:none}.fabricated-storage-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,380px);gap:18px;align-items:start}.fabricated-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.fabricated-section-heading h2{margin:0}.fabricated-section-heading span{font-size:12px;font-weight:900;color:#64748b;text-transform:uppercase}.fabricated-family-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.fabricated-family-card{display:flex;flex-direction:column;justify-content:space-between;min-height:160px;padding:18px;border:1px solid #d8e1ec;border-radius:12px;background:#fff;color:#0f172a;text-decoration:none;box-shadow:0 2px 8px rgba(15,23,42,.04);transition:border-color .15s,transform .15s}.fabricated-family-card:hover{border-color:#2563eb;transform:translateY(-1px)}.fabricated-family-card h2{margin:0 0 5px;font-size:20px}.fabricated-family-card p{margin:0;color:#64748b}.fabricated-family-card>div>span{display:block;margin-bottom:5px;color:#64748b;font-size:12px;font-weight:900;text-transform:uppercase}.fabricated-family-card dl{display:flex;gap:18px;margin:18px 0 0}.fabricated-family-card dl div{display:flex;flex-direction:column}.fabricated-family-card dt{font-size:11px;font-weight:800;text-transform:uppercase;color:#64748b}.fabricated-family-card dd{margin:2px 0 0;font-size:20px;font-weight:900}.fabricated-storage-queue{padding:18px;border:1px solid #f3c87a;border-radius:12px;background:#fffbeb}.fabricated-storage-queue>p{margin:0 0 12px;color:#78633b}.fabricated-queue-list{display:flex;flex-direction:column;gap:8px;max-height:620px;overflow:auto}.fabricated-queue-list>a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px;border:1px solid #f2d59e;border-radius:8px;background:#fff;color:#0f172a;text-decoration:none}.fabricated-queue-list>a div{display:flex;flex-direction:column;min-width:0}.fabricated-queue-list>a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#64748b;font-size:12px}.fabricated-queue-list>a b{font-size:11px;text-transform:uppercase;color:#92400e}.fabricated-state-lanes{display:flex;flex-direction:column;gap:14px}.fabricated-state-lane{border:1px solid #d8e1ec;border-radius:12px;background:#f8fafc;overflow:hidden}.fabricated-state-lane>header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid #d8e1ec;background:#fff}.fabricated-state-lane>header span{font-size:10px;font-weight:900;text-transform:uppercase;color:#64748b}.fabricated-state-lane>header h2{margin:2px 0 0;font-size:18px}.fabricated-state-lane>header>strong{font-size:12px;color:#64748b}.fabricated-pallet-rail{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:12px;padding:12px}.fabricated-pallet-card{display:flex;flex-direction:column;gap:12px;padding:14px;border:2px solid #0f766e;border-radius:10px;background:#fff}.fabricated-pallet-card.is-queued{border-color:#d97706;background:#fffdf7}.fabricated-pallet-card-header{display:flex;justify-content:space-between;align-items:start;gap:10px}.fabricated-pallet-card-header span,.fabricated-pallet-location span{display:block;font-size:10px;font-weight:900;text-transform:uppercase;color:#64748b}.fabricated-pallet-card-header h3{margin:2px 0 0;font-size:15px}.fabricated-pallet-card-header>strong{color:#0f766e}.fabricated-pallet-location{padding:8px 10px;border-radius:7px;background:#eef2f7}.fabricated-pallet-bins{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:7px;max-height:270px;overflow:auto}.fabricated-pallet-bin{display:flex;flex-direction:column;min-height:112px;padding:9px;border:1px solid #cbd5e1;border-radius:7px;background:#f8fafc}.fabricated-pallet-bin span{font-size:10px;font-weight:900;text-transform:uppercase;color:#64748b}.fabricated-pallet-bin strong{margin-top:3px;font-size:13px}.fabricated-pallet-bin small{flex:1;margin-top:3px;color:#64748b;line-height:1.25}.fabricated-pallet-bin b{margin-top:7px;color:#065f46}.fabricated-location-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}.fabricated-location-form label{font-size:11px;font-weight:900;text-transform:uppercase;color:#475569}.fabricated-location-form select{display:block;width:100%;margin-top:4px;text-transform:none}.fabricated-storage-empty{padding:18px;color:#64748b;text-align:center}@media(max-width:900px){.fabricated-storage-layout{grid-template-columns:1fr}.fabricated-storage-toolbar{align-items:flex-start;flex-direction:column}.fabricated-pallet-rail{grid-template-columns:1fr}.fabricated-location-form{grid-template-columns:1fr}}
.station-stock-groups{display:flex;flex-direction:column;gap:22px}.station-stock-item-list{display:flex;flex-direction:column;gap:8px}.station-stock-item-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:14px 16px;border:1px solid #d8e1ec;border-radius:10px;background:#fff;color:#0f172a;text-decoration:none;box-shadow:0 2px 7px rgba(15,23,42,.035)}.station-stock-item-row:hover{border-color:#2563eb}.station-stock-item-main{display:grid;grid-template-columns:120px minmax(130px,210px) minmax(220px,1fr);align-items:center;gap:12px;min-width:0}.station-stock-item-main span{font-size:10px;font-weight:900;text-transform:uppercase;color:#64748b}.station-stock-item-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#64748b}.station-stock-item-row dl{display:flex;gap:20px;margin:0}.station-stock-item-row dl div{display:flex;min-width:78px;flex-direction:column}.station-stock-item-row dt,.station-stock-item-summary span{font-size:10px;font-weight:900;text-transform:uppercase;color:#64748b}.station-stock-item-row dd{margin:2px 0 0;font-size:18px;font-weight:900}.station-stock-item-summary{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr)) auto;align-items:end;gap:10px;padding:14px;border:1px solid #d8e1ec;border-radius:10px;background:#fff}.station-stock-item-summary>div{display:flex;min-height:48px;flex-direction:column;justify-content:center;padding:8px 10px;border-radius:7px;background:#f8fafc}.station-stock-item-summary strong{margin-top:3px}.station-stock-lane-actions{display:flex;align-items:center;gap:12px}.station-stock-lane-actions>strong{font-size:12px;color:#64748b}.station-stock-bin form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:6px;margin-top:8px}.station-stock-bin label{font-size:10px;font-weight:900;text-transform:uppercase;color:#64748b}.station-stock-bin input{width:100%;margin-top:3px}.station-stock-location-help{display:block;padding:8px 10px;border:1px solid #f3c87a;border-radius:7px;background:#fffbeb;color:#78633b}.station-stock-location-help a{font-weight:800;color:#1d4ed8}@media(max-width:1000px){.station-stock-item-row{grid-template-columns:1fr}.station-stock-item-main{grid-template-columns:1fr}.station-stock-item-row dl{justify-content:space-between}.station-stock-item-summary{grid-template-columns:repeat(2,minmax(120px,1fr))}.station-stock-item-summary>a{grid-column:1/-1}}@media(max-width:600px){.station-stock-item-row dl{flex-wrap:wrap}.station-stock-item-summary{grid-template-columns:1fr}.station-stock-lane-actions{align-items:flex-end;flex-direction:column}}
.storage-location-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}
.storage-location-summary-card{display:grid;gap:4px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:#0f172a;text-decoration:none}
.storage-location-summary-card:hover,.storage-location-summary-card:focus{border-color:#2563eb;background:#eff6ff;outline:none}
.storage-location-summary-card span,.storage-location-summary-card small{color:#64748b}
.component-doc-stack{display:grid;gap:12px}.component-doc-card{display:grid;gap:10px}.component-doc-card .doc-viewer{min-height:520px}
.engineering-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.engineering-dashboard-wide{grid-column:1/-1}.quality-queue-list{display:grid;gap:12px}.quality-queue-card{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #d9e3ef;border-radius:8px;background:#fff;padding:14px 16px;box-shadow:0 8px 18px rgba(15,23,42,.06)}.quality-queue-card h3{margin:2px 0 4px;font-size:18px;color:#0b1741}.quality-queue-card span{color:#52617a;font-size:13px;font-weight:750}.quality-queue-card-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.monitor-grid-refined{align-items:start}.admin-panel-grid{margin-bottom:16px}@media(max-width:1100px){.engineering-dashboard-grid{grid-template-columns:1fr}.quality-queue-card{align-items:flex-start;flex-direction:column}.quality-queue-card-actions{justify-content:flex-start}}
@media (max-width:1180px){.staging-command-grid,.staging-planning-grid,.staging-planning-toolbar,.parts-planning-grid,.frame-planning-grid{grid-template-columns:1fr}.parts-action-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.staging-command-intro,.staging-command-actions{grid-column:auto;grid-row:auto}.staging-command-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.staging-planning-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.staging-command-actions,.staging-planning-actions,.staging-release-card,.staging-release-main dl,.planning-table-row{grid-template-columns:1fr}.staging-release-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.staging-queue-row{grid-template-columns:1fr}.planning-order-builder-frame{min-height:820px}}

.op-center-sprite{position:absolute;width:0;height:0;overflow:hidden}.op-center{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr);background:#eef2f6;color:#111827;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif}.op-center *{box-sizing:border-box}.op-center svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.op-center-rail{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:18px;padding:18px 14px;background:#071a33;color:#e8eef7}.op-center-brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;padding:8px 8px 14px;border-bottom:1px solid rgba(255,255,255,.13)}.op-center-brand svg{width:38px;height:auto;stroke:currentColor}.op-center-brand span{display:grid;gap:1px}.op-center-brand strong{font-size:15px;font-weight:900;letter-spacing:0}.op-center-brand small{font-size:11px;color:#a9bad0;font-weight:750}.op-center-station-picker{display:grid;gap:7px}.op-center-station-picker label,.op-center-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#64748b}.op-center-station-picker label{color:#93a4ba}.op-center-station-picker select{width:100%;height:40px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:#0d2748;color:#fff;padding:0 10px;font-size:13px;font-weight:850}.op-center-nav{display:grid;gap:5px}.op-center-nav a{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 10px;border-radius:7px;color:#cbd7e8;text-decoration:none;font-size:13px;font-weight:850}.op-center-nav a.active,.op-center-nav a:hover{background:#123b68;color:#fff}.op-center-rail-status{margin-top:auto;display:flex;align-items:center;gap:10px;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:rgba(255,255,255,.06)}.op-center-rail-status strong{display:block;font-size:13px;text-transform:capitalize}.op-center-rail-status small{color:#a9bad0;font-weight:750}.op-center-status-dot{width:10px;height:10px;border-radius:50%;background:#94a3b8;box-shadow:0 0 0 4px rgba(148,163,184,.16)}.op-center-status-dot.ready{background:#0f8f4e;box-shadow:0 0 0 4px rgba(15,143,78,.18)}.op-center-status-dot.run{background:#1768e8;box-shadow:0 0 0 4px rgba(23,104,232,.18)}.op-center-status-dot.danger{background:#c91f37;box-shadow:0 0 0 4px rgba(201,31,55,.18)}.op-center-main{min-width:0;padding:18px;display:grid;gap:14px}.op-center-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:66px;padding:12px 16px;border-radius:8px;background:#fff;border:1px solid #d9e2ec;box-shadow:0 8px 22px rgba(15,23,42,.06)}.op-center-topbar p{margin:0 0 3px;color:#64748b;font-size:11px;text-transform:uppercase;font-weight:900;letter-spacing:.08em}.op-center-topbar h1{margin:0;color:#0f172a;font-size:24px;line-height:1.05;font-weight:900;letter-spacing:0}.op-center-top-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.op-center-top-meta span,.op-center-top-meta a{display:inline-flex;align-items:center;min-height:32px;border:1px solid #d9e2ec;border-radius:6px;background:#f8fafc;padding:0 10px;color:#334155;text-decoration:none;font-size:12px;font-weight:850}.op-center-top-meta a{background:#071a33;color:#fff;border-color:#071a33}.op-center-banner{border-radius:7px;padding:10px 12px;font-size:13px;font-weight:850;border:1px solid}.op-center-banner.warn{background:#fffbeb;border-color:#f5c35b;color:#744800}.op-center-banner.danger{background:#fff1f2;border-color:#fecdd3;color:#9f1239}.op-center-banner.ok{background:#ecfdf5;border-color:#bbf7d0;color:#166534}.op-center-command-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:stretch}.op-center-active-panel,.op-center-panel,.op-center-metrics,.op-center-scan-card{background:#fff;border:1px solid #d9e2ec;border-radius:8px;box-shadow:0 8px 22px rgba(15,23,42,.055)}.op-center-active-panel{padding:16px;display:grid;gap:14px}.op-center-panel{padding:14px;min-width:0}.op-center-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.op-center-panel-head.compact{align-items:center;margin-bottom:10px}.op-center-panel-head h2{margin:2px 0 0;color:#0f172a;font-size:20px;line-height:1.12;font-weight:900;letter-spacing:0}.op-center-panel-head.compact h2{font-size:16px}.op-center-panel-head>span{font-size:12px;font-weight:900;color:#64748b}.op-center-chip{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:0 9px;border-radius:999px;border:1px solid #cbd5e1;background:#f8fafc;color:#475569;font-size:11px;font-weight:900;text-transform:uppercase;white-space:nowrap}.op-center-chip.ready{border-color:#b7e4c7;background:#ecfdf5;color:#087443}.op-center-chip.run{border-color:#bfdbfe;background:#eff6ff;color:#0b4fb3}.op-center-chip.warn{border-color:#fed7aa;background:#fff7ed;color:#b45309}.op-center-chip.muted{background:#f1f5f9;color:#64748b}.op-center-job-title{display:grid;gap:4px;padding:13px 14px;border-radius:7px;background:#f8fafc;border:1px solid #e2e8f0}.op-center-job-title strong{color:#071a33;font-size:24px;line-height:1;font-weight:950;overflow-wrap:anywhere}.op-center-job-title span{color:#334155;font-size:14px;font-weight:800}.op-center-job-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}.op-center-job-facts div{min-width:0;border:1px solid #e2e8f0;border-radius:7px;background:#fff;padding:10px}.op-center-job-facts dt{font-size:10px;text-transform:uppercase;color:#64748b;font-weight:900;letter-spacing:.06em}.op-center-job-facts dd{margin:3px 0 0;color:#0f172a;font-size:13px;font-weight:850;line-height:1.25;overflow-wrap:anywhere}.op-center-primary-actions{display:flex;gap:8px;flex-wrap:wrap}.op-center-primary-actions form{margin:0}.op-center-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:1px solid #cbd5e1;border-radius:7px;background:#fff;color:#0f315c;text-decoration:none;padding:0 12px;font:inherit;font-size:13px;font-weight:900;cursor:pointer}.op-center-btn.primary{background:#0b4fb3;border-color:#0b4fb3;color:#fff}.op-center-btn.danger{border-color:#fecdd3;color:#9f1239;background:#fff1f2}.op-center-btn:disabled{opacity:.5;cursor:not-allowed}.op-center-side-stack{display:grid;grid-template-rows:auto 1fr;gap:14px}.op-center-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden}.op-center-metrics div{display:grid;gap:2px;padding:14px;border-right:1px solid #e2e8f0}.op-center-metrics div:last-child{border-right:0}.op-center-metrics span{font-size:10px;text-transform:uppercase;color:#64748b;font-weight:900}.op-center-metrics strong{font-size:26px;line-height:1;color:#071a33;font-weight:950}.op-center-metrics small{font-size:11px;color:#64748b;font-weight:750}.op-center-scan-card{padding:14px;display:grid;gap:9px;align-content:start}.op-center-scan-card label{font-size:12px;font-weight:900;color:#0f172a}.op-center-scan-card div{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:7px}.op-center-scan-card input{height:38px;min-width:0;border:1px solid #cbd5e1;border-radius:7px;padding:0 10px;font-size:13px;font-weight:800}.op-center-scan-card button{border:1px solid #071a33;border-radius:7px;background:#071a33;color:#fff;font-size:12px;font-weight:900}.op-center-scan-card small{color:#64748b;font-weight:750}.op-center-grid-two{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:14px}.op-center-grid-three{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.op-center-table-wrap{overflow:auto;border:1px solid #e2e8f0;border-radius:7px}.op-center-table{width:100%;border-collapse:collapse;font-size:12px;color:#172033}.op-center-table th{position:sticky;top:0;background:#f6f8fb;color:#475569;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:900;border-bottom:1px solid #d9e2ec;padding:8px 9px;white-space:nowrap}.op-center-table td{border-bottom:1px solid #edf2f7;padding:8px 9px;vertical-align:middle;font-weight:750}.op-center-table tr:last-child td{border-bottom:0}.op-center-table a{color:#0b4fb3;font-weight:900;text-decoration:none}.op-center-table small{display:block;color:#64748b;font-size:11px;font-weight:750;line-height:1.25;margin-top:2px}.op-center-table.compact td{padding:7px 8px}.op-center-position{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#0b4fb3;color:#fff;font-size:12px;font-weight:950}.op-center-segmented{display:inline-flex;border:1px solid #cbd5e1;border-radius:7px;overflow:hidden;background:#fff}.op-center-segmented button{min-height:30px;border:0;border-right:1px solid #cbd5e1;background:#fff;color:#475569;padding:0 10px;font:inherit;font-size:12px;font-weight:900;cursor:pointer}.op-center-segmented button:last-child{border-right:0}.op-center-segmented button.active{background:#071a33;color:#fff}.op-center-checklist,.op-center-alert-list,.op-center-task-list{display:grid;gap:8px}.op-center-checklist label{display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;align-items:start;padding:9px;border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc}.op-center-checklist input{margin-top:2px}.op-center-checklist strong,.op-center-task-list strong,.op-center-alert-row strong{display:block;color:#0f172a;font-size:13px;font-weight:900;line-height:1.25}.op-center-checklist small,.op-center-task-list span,.op-center-alert-row span{display:block;margin-top:2px;color:#64748b;font-size:12px;font-weight:750;line-height:1.3}.op-center-alert-row{padding:10px;border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc}.op-center-alert-row.warn{border-color:#fed7aa;background:#fff7ed}.op-center-alert-row.danger{border-color:#fecdd3;background:#fff1f2}.op-center-alert-row.ok{border-color:#bbf7d0;background:#ecfdf5}.op-center-task-list a{display:block;padding:10px;border:1px solid #e2e8f0;border-radius:7px;background:#fff;color:inherit;text-decoration:none}.op-center-task-list a:hover{border-color:#93c5fd;background:#eff6ff}.op-center-activity-panel{margin-bottom:8px}.op-center-activity-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.op-center-activity-list div{border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc;padding:9px;min-width:0}.op-center-activity-list strong{display:block;color:#0f172a;font-size:12px;font-weight:900}.op-center-activity-list span,.op-center-activity-list time{display:block;color:#64748b;font-size:11px;font-weight:750;margin-top:2px;overflow-wrap:anywhere}@media(max-width:1180px){.op-center{grid-template-columns:220px minmax(0,1fr)}.op-center-command-grid,.op-center-grid-two,.op-center-grid-three{grid-template-columns:1fr}.op-center-job-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.op-center-activity-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.op-center{grid-template-columns:1fr}.op-center-rail{position:relative;height:auto}.op-center-main{padding:12px}.op-center-topbar{align-items:flex-start;flex-direction:column}.op-center-top-meta{justify-content:flex-start}.op-center-job-facts,.op-center-metrics,.op-center-scan-card div,.op-center-activity-list{grid-template-columns:1fr}.op-center-metrics div{border-right:0;border-bottom:1px solid #e2e8f0}.op-center-metrics div:last-child{border-bottom:0}.op-center-primary-actions{display:grid;grid-template-columns:1fr}.op-center-primary-actions form,.op-center-btn{width:100%}}

.op2-sprite{position:absolute;width:0;height:0;overflow:hidden}.op2-shell{min-height:100vh;background:#eef2f6;color:#0f172a;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif}.op2-shell *{box-sizing:border-box}.op2-shell svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.op2-commandbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:220px 300px minmax(0,1fr);gap:12px;align-items:center;min-height:68px;padding:12px 16px;background:#06172c;color:#eef5ff;border-bottom:1px solid rgba(255,255,255,.12);box-shadow:0 8px 22px rgba(15,23,42,.2)}.op2-brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;min-width:0}.op2-brand .app-brand-logo{width:38px;height:38px;display:grid;place-items:center;border-radius:6px;background:#fff;overflow:hidden}.op2-brand img{max-width:34px;max-height:34px}.op2-brand span{font-size:17px;font-weight:950;letter-spacing:0}.op2-station-select{height:42px;display:flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:#0d2748;padding:0 10px;min-width:0}.op2-station-select svg{color:#9bc3ff;flex:0 0 auto}.op2-station-select select{min-width:0;flex:1;border:0;background:transparent;color:#fff;font:inherit;font-size:13px;font-weight:900;outline:none}.op2-command-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.op2-scan{height:42px;display:grid;grid-template-columns:auto auto minmax(160px,260px) 42px;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:#0a213d;padding:0 6px 0 10px;color:#dbeafe}.op2-scan span{font-size:11px;text-transform:uppercase;font-weight:950;color:#9eb2ca;white-space:nowrap}.op2-scan input{height:30px;min-width:0;border:1px solid rgba(255,255,255,.16);border-radius:5px;background:#fff;color:#0f172a;padding:0 9px;font-size:13px;font-weight:800}.op2-scan button,.op2-top-action{height:30px;border:1px solid #2563eb;border-radius:5px;background:#2563eb;color:#fff;font:inherit;font-size:12px;font-weight:950;cursor:pointer}.op2-top-action{height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 11px;text-decoration:none;background:#102f56;border-color:rgba(255,255,255,.18);color:#fff;white-space:nowrap}.op2-top-action.danger{background:#7f1d1d;border-color:#ef4444}.op2-user{height:42px;display:flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.14);border-radius:6px;padding:0 10px;background:rgba(255,255,255,.05);font-size:13px;font-weight:900;color:#dbeafe;min-width:0}.op2-user span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}.op2-banner{margin:12px 16px 0;border-radius:6px;border:1px solid;padding:10px 12px;font-size:13px;font-weight:850}.op2-banner.warn{background:#fffbeb;border-color:#f5c35b;color:#744800}.op2-banner.danger{background:#fff1f2;border-color:#fecdd3;color:#9f1239}.op2-banner.ok{background:#ecfdf5;border-color:#bbf7d0;color:#166534}.op2-layout{display:grid;grid-template-columns:318px minmax(0,1fr) 306px;gap:12px;padding:12px 16px 16px;align-items:start}.op2-queue,.op2-workboard,.op2-right{min-width:0}.op2-queue{position:sticky;top:80px;display:grid;gap:10px;max-height:calc(100vh - 96px);overflow:hidden;border:1px solid #d7e1ed;border-radius:8px;background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.055);padding:12px}.op2-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.op2-section-head h2,.op2-section-head.compact h2{margin:0;color:#0f172a;font-size:16px;line-height:1.15;font-weight:950;letter-spacing:0}.op2-section-head span{display:block;margin-top:2px;color:#64748b;font-size:12px;font-weight:850}.op2-section-head.compact{margin-bottom:10px}.op2-segments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #cbd5e1;border-radius:6px;overflow:hidden}.op2-segments button{height:32px;border:0;border-right:1px solid #cbd5e1;background:#fff;color:#475569;font:inherit;font-size:12px;font-weight:950;cursor:pointer}.op2-segments button:last-child{border-right:0}.op2-segments button.active{background:#071a33;color:#fff}.op2-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px;background:#94a3b8}.op2-dot.ready{background:#0f8f4e}.op2-dot.hold{background:#d97706}.op2-queue-list{display:grid;gap:8px;overflow:auto;padding-right:2px}.op2-queue-card{display:grid;grid-template-columns:32px minmax(0,1fr);gap:9px;border:1px solid #e2e8f0;border-radius:7px;background:#fff;padding:9px;min-height:94px}.op2-queue-card.selected{border-color:#93c5fd;background:#f8fbff;box-shadow:inset 4px 0 0 #2563eb}.op2-queue-rank{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#0f315c;color:#fff;font-size:12px;font-weight:950}.op2-queue-main{min-width:0}.op2-queue-main>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.op2-queue-main strong{font-size:14px;color:#071a33;font-weight:950}.op2-queue-main p{margin:6px 0 1px;color:#0f172a;font-size:13px;font-weight:900}.op2-queue-main small{display:block;color:#64748b;font-size:11px;font-weight:750;line-height:1.25;overflow-wrap:anywhere}.op2-queue-main footer{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.op2-queue-main footer span{font-size:10px;font-weight:900;color:#475569;background:#f1f5f9;border-radius:999px;padding:3px 7px}.op2-chip{display:inline-flex;align-items:center;justify-content:center;min-height:24px;border:1px solid #cbd5e1;border-radius:999px;background:#f8fafc;color:#475569;padding:0 8px;font-size:10px;font-weight:950;text-transform:uppercase;white-space:nowrap}.op2-chip.ready{border-color:#b7e4c7;background:#ecfdf5;color:#087443}.op2-chip.hold{border-color:#fed7aa;background:#fff7ed;color:#b45309}.op2-chip.issue{border-color:#fecdd3;background:#fff1f2;color:#9f1239}.op2-chip.run{border-color:#bfdbfe;background:#eff6ff;color:#0b4fb3}.op2-queue-more{display:flex;align-items:center;justify-content:center;gap:7px;height:36px;border-radius:6px;background:#071a33;color:#fff;text-decoration:none;font-size:12px;font-weight:950}.op2-empty{border:1px dashed #cbd5e1;border-radius:7px;background:#f8fafc;padding:14px;color:#64748b;font-size:13px;font-weight:850;text-align:center}.op2-workboard{display:grid;gap:12px}.op2-active-card,.op2-timeline-card,.op2-material-card,.op2-side-panel{border:1px solid #d7e1ed;border-radius:8px;background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.055)}.op2-active-card{padding:14px}.op2-active-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.op2-active-top h2{margin:0 0 6px;color:#071a33;font-size:21px;line-height:1.05;font-weight:950}.op2-active-top time{height:30px;display:inline-flex;align-items:center;border:1px solid #dbe5f0;border-radius:6px;background:#f8fafc;color:#334155;padding:0 9px;font-size:12px;font-weight:900}.op2-runtime{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:950;text-transform:uppercase;border:1px solid #cbd5e1;background:#f8fafc;color:#64748b}.op2-runtime.run{border-color:#bfdbfe;background:#eff6ff;color:#0b4fb3}.op2-runtime.ready{border-color:#b7e4c7;background:#ecfdf5;color:#087443}.op2-active-grid{display:grid;grid-template-columns:minmax(180px,.75fr) minmax(0,1.25fr) minmax(180px,.9fr);gap:10px;align-items:stretch}.op2-active-grid dl{margin:0;display:grid;gap:8px}.op2-active-grid dl div,.op2-frame-block{border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc;padding:10px;min-width:0}.op2-active-grid dt,.op2-frame-block span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-weight:950}.op2-active-grid dd{margin:3px 0 0;color:#0f172a;font-size:14px;font-weight:900;line-height:1.2;overflow-wrap:anywhere}.op2-frame-block strong{display:block;margin:7px 0 5px;color:#071a33;font-size:30px;line-height:1;font-weight:950;overflow-wrap:anywhere}.op2-frame-block p{margin:0;color:#334155;font-size:14px;font-weight:850;line-height:1.3}.op2-active-actions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.op2-active-actions form{margin:0}.op2-action{height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f315c;padding:0 13px;text-decoration:none;font:inherit;font-size:13px;font-weight:950;cursor:pointer}.op2-action.primary{background:#0b4fb3;border-color:#0b4fb3;color:#fff}.op2-action.pause{background:#fff7ed;border-color:#fed7aa;color:#9a4a00}.op2-action.ghost{background:#f8fafc}.op2-action:disabled{opacity:.5;cursor:not-allowed}.op2-timeline-card,.op2-material-card,.op2-side-panel{padding:12px}.op2-timeline{display:grid;grid-template-columns:repeat(6,minmax(112px,1fr));gap:8px;overflow:auto}.op2-step{position:relative;display:grid;gap:5px;min-height:92px;border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc;padding:10px}.op2-step span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e2e8f0;color:#334155;font-size:12px;font-weight:950}.op2-step strong{font-size:12px;font-weight:950;color:#0f172a;line-height:1.2}.op2-step small{font-size:11px;color:#64748b;font-weight:750}.op2-step.done{background:#ecfdf5;border-color:#bbf7d0}.op2-step.done span{background:#0f8f4e;color:#fff}.op2-step.current{background:#eff6ff;border-color:#93c5fd;box-shadow:inset 0 -3px 0 #2563eb}.op2-step.current span{background:#2563eb;color:#fff}.op2-bom-counts{display:flex;gap:8px;flex-wrap:wrap}.op2-bom-counts span{display:inline-flex;margin:0;border-radius:999px;background:#f1f5f9;color:#475569;padding:5px 8px;font-size:11px;font-weight:950}.op2-bom-counts span.ready{background:#ecfdf5;color:#087443}.op2-table-wrap{border:1px solid #e2e8f0;border-radius:7px;overflow:auto;max-height:310px}.op2-table{width:100%;border-collapse:collapse;font-size:12px;color:#172033}.op2-table th{position:sticky;top:0;z-index:1;background:#f6f8fb;color:#475569;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:950;border-bottom:1px solid #d9e2ec;padding:8px 9px;white-space:nowrap}.op2-table td{border-bottom:1px solid #edf2f7;padding:8px 9px;vertical-align:middle;font-weight:780}.op2-table tr:last-child td{border-bottom:0}.op2-table strong{color:#071a33}.op2-right{display:grid;gap:12px;position:sticky;top:80px}.op2-side-panel{min-width:0}.op2-health{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}.op2-health div{border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc;padding:9px;min-width:0}.op2-health dt{font-size:10px;text-transform:uppercase;color:#64748b;font-weight:950;letter-spacing:.06em}.op2-health dd{margin:4px 0 0;color:#071a33;font-size:20px;font-weight:950;overflow-wrap:anywhere}.op2-doc-list,.op2-alert-list,.op2-event-list{display:grid;gap:8px}.op2-doc-list a{height:38px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#0f315c;text-decoration:none;padding:0 10px;font-size:13px;font-weight:950}.op2-doc-list p,.op2-event-list p{margin:0;color:#64748b;font-size:13px;font-weight:800}.op2-alert{border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc;padding:9px}.op2-alert.ready{border-color:#bbf7d0;background:#ecfdf5}.op2-alert.hold{border-color:#fed7aa;background:#fff7ed}.op2-alert.issue{border-color:#fecdd3;background:#fff1f2}.op2-alert strong{display:block;color:#0f172a;font-size:12px;font-weight:950}.op2-alert span{display:block;margin-top:3px;color:#475569;font-size:12px;font-weight:750;line-height:1.3}.op2-event-list div{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px;align-items:center;border-bottom:1px solid #edf2f7;padding-bottom:7px}.op2-event-list div:last-child{border-bottom:0;padding-bottom:0}.op2-event-list time{color:#64748b;font-size:12px;font-weight:950}.op2-event-list span{color:#0f172a;font-size:12px;font-weight:850;overflow-wrap:anywhere}@media(max-width:1240px){.op2-commandbar{grid-template-columns:190px 260px minmax(0,1fr)}.op2-layout{grid-template-columns:292px minmax(0,1fr)}.op2-right{grid-column:1/-1;position:static;grid-template-columns:repeat(4,minmax(0,1fr))}.op2-active-grid{grid-template-columns:1fr 1.2fr}.op2-active-grid dl:last-of-type{grid-column:1/-1;grid-template-columns:1fr 1fr}.op2-scan{grid-template-columns:auto minmax(150px,1fr) 42px}.op2-scan span{display:none}}@media(max-width:900px){.op2-commandbar{position:relative;grid-template-columns:1fr;align-items:stretch}.op2-command-actions{justify-content:stretch;flex-wrap:wrap}.op2-scan{flex:1 1 100%;grid-template-columns:auto minmax(0,1fr) 42px}.op2-layout{grid-template-columns:1fr}.op2-queue,.op2-right{position:static;max-height:none}.op2-right{grid-template-columns:1fr 1fr}.op2-active-grid{grid-template-columns:1fr}.op2-active-grid dl:last-of-type{grid-column:auto;grid-template-columns:1fr}.op2-timeline{grid-template-columns:repeat(3,minmax(140px,1fr))}}@media(max-width:620px){.op2-shell{background:#f8fafc}.op2-commandbar{padding:10px}.op2-layout{padding:10px}.op2-top-action,.op2-user{width:100%;justify-content:center}.op2-right{grid-template-columns:1fr}.op2-active-actions{display:grid;grid-template-columns:1fr}.op2-active-actions form,.op2-action{width:100%}.op2-frame-block strong{font-size:24px}.op2-timeline{grid-template-columns:1fr}.op2-health{grid-template-columns:1fr}}

/* MTS global visual normalization: shared colors, type, spacing, surfaces, tables, and controls. */
*,*::before,*::after{box-sizing:border-box}
html{background:var(--mts-bg);text-size-adjust:100%}
body,input,select,textarea,button{font-family:var(--mts-font)}
button,input,select,textarea{font-size:14px}
a{color:var(--mts-blue);text-decoration:none}
a:hover,a:focus{text-decoration:underline;text-underline-offset:2px}
h1,h2,h3,h4{color:var(--mts-text);letter-spacing:0;line-height:1.12}
h1{font-size:clamp(24px,3vw,34px)}
h2{font-size:clamp(18px,2vw,24px)}
h3{font-size:17px}
p{line-height:1.45}
.main-content,.eng-module-main,.shop-floor-launch-main,.simple-kiosk-main,.op-center-main{padding:16px}
.eng-module-main,.inventory-panel-body,.maintenance-panel-body,.admin-panel-grid,.engineering-dashboard-grid,.planning-station-list,.staging-planning-shell,.storage-planning-shell,.user-landing-shell{gap:14px}
.card,.panel-card,.scan-form,.panel-form,.system-status-panel,.user-landing-panel,.user-station-card,.eng-data-panel,.eng-workflow-panel,.eng-dashboard-card,.eng-operator-card,.operator-simple-panel,.operator-work-panel,.ops-focus-card,.ops-station-card,.ops-landing-panel,.monitor-column,.maintenance-card,.settings-section-card,.station-field-card,.storage-card,.parts-card,.pallet-view-card,.machine-preset-panel,.planning-station-card,.planning-component-standard-card,.planning-pallet-card,.launch-station-card,.inventory-subpanel,.staging-table-card,.staging-command-card,.quality-queue-card,.simple-kiosk-panel,.simple-kiosk-module-card,.op-center-active-panel,.op-center-panel,.op-center-metrics,.op-center-scan-card,.op2-queue,.op2-active-card,.op2-timeline-card,.op2-material-card,.op2-side-panel{background:var(--mts-surface);border:1px solid var(--mts-border);border-radius:var(--mts-radius);box-shadow:var(--mts-shadow)}
.card,.panel-card,.scan-form,.panel-form,.system-status-panel,.eng-data-panel,.eng-workflow-panel,.inventory-subpanel,.planning-station-card,.planning-component-standard-card,.planning-pallet-card{padding:14px}
.launch-board-header,.landing-hero,.pallet-hero-card,.operator-kiosk-hero,.component-part-hero-card,.ops-landing-hero,.machine-hero-card,.maintenance-hero-card{border-radius:var(--mts-radius);background:linear-gradient(135deg,var(--mts-navy) 0%,#0d2748 60%,var(--mts-navy-2) 100%);color:#fff;box-shadow:var(--mts-shadow-strong)}
.launch-board-header h1,.landing-hero h1,.pallet-hero-card h1,.operator-kiosk-hero h1,.component-part-hero-card h1,.ops-landing-hero h1,.machine-hero-card h1,.maintenance-hero-card h1{color:#fff}
.eng-panel-bar,.machine-header-title-row,.panel-card header,.eng-data-panel>header,.inventory-subpanel>header,.planning-station-card>header,.staging-table-card>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.eng-panel-bar h2,.machine-header-title-row h2,.panel-card header h2,.eng-data-panel>header h2,.inventory-subpanel>header h2,.planning-station-card>header h2,.staging-table-card>header h2{margin:0;font-size:17px}
.eng-panel-bar span,.machine-header-title-row span,.panel-card header span,.eng-data-panel>header span,.inventory-subpanel>header span,.planning-station-card>header span,.staging-table-card>header span{color:var(--mts-muted-2);font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
table,.storage-panel-table,.frame-parts-table,.ops-queue-table,.operator-queue-table,.settings-table,.op-center-table,.op2-table,.eng-compact-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--mts-surface);border:1px solid var(--mts-border);border-radius:var(--mts-radius);box-shadow:none;overflow:hidden}
th,.storage-panel-table th,.frame-parts-table th,.ops-queue-table th,.operator-queue-table th,.settings-table th,.op-center-table th,.op2-table th,.eng-compact-table th{background:#f6f8fb;color:var(--mts-muted);font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;text-align:left}
th,td,.storage-panel-table th,.storage-panel-table td,.frame-parts-table th,.frame-parts-table td,.ops-queue-table th,.ops-queue-table td,.operator-queue-table th,.operator-queue-table td,.settings-table th,.settings-table td,.op-center-table th,.op-center-table td,.op2-table th,.op2-table td,.eng-compact-table th,.eng-compact-table td{padding:9px 11px;border-bottom:1px solid #e6edf5;vertical-align:top}
tr:last-child td{border-bottom:0}
.storage-panel-table-wrap,.eng-table-scroll,.op-center-table-wrap,.op2-table-wrap{border:1px solid var(--mts-border);border-radius:var(--mts-radius);background:var(--mts-surface);overflow:auto}
.storage-panel-table-wrap table,.eng-table-scroll table,.op-center-table-wrap table,.op2-table-wrap table{border:0;border-radius:0}
input[type="text"],input[type="number"],input[type="password"],input[type="email"],input[type="search"],input[type="date"],input[type="datetime-local"],select,textarea{border:1px solid var(--mts-border-strong);border-radius:var(--mts-radius-sm);background:#fff;color:var(--mts-text);padding:9px 10px;min-height:36px}
textarea{min-height:96px;resize:vertical}
input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid rgba(37,99,235,.42);outline-offset:2px}
button,input[type="submit"],input[type="button"],.action-btn,.small-link-btn,.skill-admin-action-primary,.skill-admin-action-secondary,.launch-primary-action,.launch-secondary-action,.user-panel-btn,.operator-primary-action,.operator-secondary-action,.simple-kiosk-button,.op-center-btn,.op2-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;border:1px solid var(--mts-border-strong);border-radius:var(--mts-radius-sm);background:#fff;color:#0f315c!important;padding:8px 12px;font:inherit;font-size:13px;font-weight:850;line-height:1.1;text-decoration:none;cursor:pointer}
button:hover,input[type="submit"]:hover,input[type="button"]:hover,.action-btn:hover,.small-link-btn:hover,.user-panel-btn:hover,.simple-kiosk-button:hover,.op-center-btn:hover,.op2-action:hover{border-color:#93c5fd;background:var(--mts-blue-soft);text-decoration:none}
.action-btn-primary,.action-btn.primary,.small-link-btn.primary,.user-panel-btn.primary,.launch-primary-action,.operator-primary-action,.simple-kiosk-button.primary,.op-center-btn.primary,.op2-action.primary,button.primary,input[type="submit"].primary{background:var(--mts-blue);border-color:var(--mts-blue);color:#fff!important}
.action-btn-secondary,.action-btn.secondary,.small-link-btn.secondary,.launch-secondary-action,.operator-secondary-action{background:#f8fafc;border-color:var(--mts-border-strong);color:#0f315c!important}
.action-btn.danger,button.danger,.op-center-btn.danger,.op2-top-action.danger{border-color:#fecaca;background:var(--mts-red-soft);color:var(--mts-red)!important}
button:disabled,.disabled,[aria-disabled="true"]{opacity:.55;cursor:not-allowed}
.status-chip,.ops-status-pill,.planning-status-chip,.launch-status-pill,.op-center-chip,.op2-chip,.top-header-user-badge summary{border:1px solid var(--mts-border-strong);border-radius:999px;background:#f8fafc;color:var(--mts-muted);font-weight:900}
.status-chip.ready,.ops-status-pill.ready,.planning-status-chip.ready,.launch-status-pill.ready,.op-center-chip.ready,.op2-chip.ready{border-color:#bbf7d0;background:var(--mts-green-soft);color:var(--mts-green)}
.status-chip.warn,.ops-status-pill.warn,.planning-status-chip.warn,.launch-status-pill.warn,.op-center-chip.warn,.op2-chip.hold{border-color:#fed7aa;background:var(--mts-amber-soft);color:var(--mts-amber)}
.status-chip.danger,.ops-status-pill.danger,.planning-status-chip.danger,.launch-status-pill.danger,.op-center-chip.danger,.op2-chip.issue{border-color:#fecaca;background:var(--mts-red-soft);color:var(--mts-red)}
.ok-banner,.form-error-banner,.op-center-banner,.op2-banner{border-radius:var(--mts-radius-sm);box-shadow:none}
.ok-banner,.op-center-banner.ok,.op2-banner.ok{background:var(--mts-green-soft);border-color:#bbf7d0;color:var(--mts-green)}
.form-error-banner,.op-center-banner.danger,.op2-banner.danger{background:var(--mts-red-soft);border-color:#fecaca;color:var(--mts-red)}
.op-center-banner.warn,.op2-banner.warn{background:var(--mts-amber-soft);border-color:#fed7aa;color:var(--mts-amber)}
.global-app-header{background:#dfe8f2}
.global-header-card{border-radius:var(--mts-radius);background:linear-gradient(135deg,var(--mts-navy) 0%,#0d2135 55%,var(--mts-navy-2) 100%)}
.global-header-chip{border-radius:7px}
.global-header-tabs a.active,.global-header-tabs button.active,.global-dashboard-chip.active{background:linear-gradient(180deg,var(--mts-blue) 0%,var(--mts-blue-dark) 100%)}
.global-header-card>.section-nav a{border-radius:var(--mts-radius-sm)}
.user-empty-state,.operator-kiosk-empty,.simple-kiosk-empty,.op2-empty{border:1px dashed var(--mts-border-strong);border-radius:var(--mts-radius);background:#f8fafc;color:var(--mts-muted);font-weight:800}
.grid-list,.cards,.user-station-grid,.engineering-dashboard-grid,.admin-panel-grid,.parts-planning-grid,.frame-planning-grid,.storage-location-card-grid{gap:12px}
@media(max-width:760px){.main-content,.eng-module-main,.shop-floor-launch-main,.simple-kiosk-main,.op-center-main{padding:12px}.eng-panel-bar,.machine-header-title-row,.panel-card header,.eng-data-panel>header,.inventory-subpanel>header,.planning-station-card>header,.staging-table-card>header{align-items:flex-start;flex-direction:column}.user-station-actions,.action-row{grid-template-columns:1fr}.action-btn,.small-link-btn,.user-panel-btn,button,input[type="submit"],input[type="button"]{width:100%}}

/* Navy/blue correction pass for storage and planning frames. */
.inventory-module-shell .eng-module-title h1,
.inventory-module-shell .eng-module-brand,
.inventory-module-shell .eng-side-menu h2 a,
.inventory-module-shell .eng-module-user dd,
.inventory-module-shell .inventory-subpanel h3{color:#0f2f5f!important}
.inventory-module-shell .eng-module-logo{color:#2563eb!important}
.inventory-module-shell .eng-module-actions a:hover,
.inventory-module-shell .eng-module-actions button:hover,
.inventory-module-shell .eng-side-menu section>a:hover{color:#2563eb!important}
.inventory-module-shell .eng-panel-bar{background:linear-gradient(180deg,#0f3d79,#08295b)!important}
.inventory-module-shell .eng-workflow-node:hover{border-color:#2563eb!important;box-shadow:0 10px 24px rgba(37,99,235,.18)!important}
.inventory-module-shell .eng-side-menu section>a:hover{box-shadow:inset 3px 0 0 #2563eb!important}
.inventory-module-shell .eng-module-status strong,
.inventory-signal-card strong{color:#0f3d79!important}
.ops-landing-shell-inventory .ops-landing-hero,
.planning-workspace-hero-parts{background:linear-gradient(145deg,#10263c 0%,#0d2748 58%,#1d4ed8 100%)!important}
.launch-station-card-storage{border-top-color:#2563eb!important}
.launch-station-card-storage .launch-panel-kind{background:#eff6ff!important;color:#0f3d79!important;border-color:#93c5fd!important}
.procedure-step-card.action{border-left-color:#2563eb!important}
.storage-bin-card.storage-component-bin-card,
.planning-queue-bin-card.storage-component-bin-card{border-color:#2563eb!important;background:linear-gradient(180deg,#eff6ff,#dbeafe)!important}
.storage-component-qty{color:#0f3d79!important}
.pallet-location-badge{background:#eff6ff!important;border-color:#93c5fd!important;color:#0f3d79!important}
.storage-planning-shell .staging-release-card.is-ready,
.staging-planning-shell .staging-release-card.is-ready{border-color:#93c5fd!important;background:linear-gradient(180deg,#f8fbff,#eff6ff)!important}
.storage-planning-shell .planning-status-chip-ready,
.storage-planning-shell .status-chip-complete,
.storage-planning-shell .status-chip-combined,
.storage-planning-shell .planning-submit-ready,
.storage-planning-shell .operator-kiosk-status-ready-idle{background:#eff6ff!important;border-color:#93c5fd!important;color:#0f3d79!important}
.storage-planning-shell .ok-banner{background:#eff6ff!important;border-color:#93c5fd!important;color:#0f3d79!important}
.planning-frame-summary-card,
.planning-frame-title-block{background:#dbe4ef!important;border-color:#9fb0c4!important}
.planning-frame-title-block .planning-frame-id,
.planning-frame-title-block .planning-frame-desc,
.planning-frame-id,
.planning-frame-desc{color:#071a33!important}
.planning-frame-counts,
.planning-frame-config-table td,
.planning-frame-config-table td strong{color:#0f3d79!important}
.planning-tab-green,
.planning-tab-yellow,
.planning-tab-red,
.planning-tab-blue{background:#f8fbff!important;border-color:#bfdbfe!important;color:#0f2f5f!important}
.planning-status-chip-ready,
.planning-pill-ready,
.planning-status-operating,
.frame-parts-status-pill-approved,
.frame-parts-status-pill-released{background:#eff6ff!important;border-color:#93c5fd!important;color:#0f3d79!important}
.planning-status-chip-risk,
.planning-pill-risk{background:#f1f5f9!important;border-color:#cbd5e1!important;color:#334155!important}
.planning-submit-ready{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important}
.planning-submit-not-ready{background:#f8fafc!important;border-color:#cbd5e1!important;color:#475569!important}
.planning-focus-card-risk{border-color:#bfdbfe!important;background:linear-gradient(180deg,#f8fbff,#fff)!important}
.mediamtx-create-card,
.mediamtx-table-card,
.mediamtx-server-card {
  margin-top: 1rem;
}

.mediamtx-service-card header,
.mediamtx-source-card > header,
.stream-view-card > header,
.mediamtx-library-heading,
.mediamtx-service-actions,
.stream-summary-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.mediamtx-service-actions,
.stream-summary-bar {
  flex-wrap: wrap;
  padding-top: 0.85rem;
  border-top: 1px solid var(--mts-border);
}

.mediamtx-source-form {
  display: grid;
  grid-template-columns: minmax(12rem, .7fr) minmax(10rem, .55fr) minmax(20rem, 1.4fr) auto auto;
  gap: 1rem;
  align-items: end;
}

.mediamtx-source-field {
  min-width: 0;
}

.mediamtx-enabled-field {
  min-height: 42px;
}

.mediamtx-library-section {
  margin-top: 1.25rem;
}

.mediamtx-admin-grid,
.stream-view-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: .75rem;
}

.mediamtx-source-card,
.stream-view-card {
  overflow: hidden;
  border: 1px solid var(--mts-border);
  border-top: 4px solid #94a3b8;
  border-radius: var(--mts-radius);
  background: var(--mts-surface);
  box-shadow: var(--mts-shadow-sm);
}

.mediamtx-source-card.is-online,
.stream-view-card.is-online {
  border-top-color: #16a34a;
}

.mediamtx-source-card > header,
.stream-view-card > header,
.mediamtx-stream-edit-form,
.stream-view-card > footer {
  padding: 1rem;
}

.mediamtx-source-card h4,
.stream-view-card h3 {
  margin: .3rem 0 .15rem;
}

.stream-status {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .2rem .5rem;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: .72rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.stream-status::before {
  width: .45rem;
  height: .45rem;
  border-radius: 50%;
  background: currentColor;
  content: "";
}

.stream-status.is-online {
  background: #dcfce7;
  color: #166534;
}

.mediamtx-stream-edit-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .8rem;
  border-top: 1px solid var(--mts-border);
}

.mediamtx-stream-edit-form .mediamtx-source-field,
.mediamtx-stream-edit-form .mediamtx-url-list,
.mediamtx-stream-edit-form .mediamtx-assignments,
.mediamtx-stream-edit-form .mediamtx-row-actions {
  grid-column: 1 / -1;
}

.mediamtx-url-list {
  display: grid;
  gap: .35rem;
  padding: .7rem;
  border-radius: var(--mts-radius-sm);
  background: var(--mts-surface-soft);
}

.mediamtx-url-list > div {
  display: grid;
  grid-template-columns: 7rem minmax(0, 1fr);
  gap: .5rem;
}

.mediamtx-url-list code {
  overflow-wrap: anywhere;
}

.mediamtx-assignments {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.65rem;
}

.mediamtx-row-actions {
  flex-wrap: nowrap;
}

.mediamtx-advanced-note {
  margin-top: 1rem;
  padding: .8rem 1rem;
  border: 1px solid var(--mts-border);
  border-radius: var(--mts-radius);
  background: var(--mts-surface-soft);
}

.mediamtx-advanced-note summary {
  cursor: pointer;
  font-weight: 900;
}

.stream-summary-bar {
  margin: .75rem 0 1rem;
  padding: .75rem 1rem;
  border: 1px solid var(--mts-border);
  border-radius: var(--mts-radius);
  background: var(--mts-surface-soft);
}

.stream-player-frame {
  position: relative;
  min-height: 300px;
  background: #0f172a;
}

.stream-player-frame iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.stream-offline-state {
  position: absolute;
  inset: 0;
  display: grid;
  place-content: center;
  gap: .4rem;
  padding: 2rem;
  color: #cbd5e1;
  text-align: center;
}

.stream-offline-state strong {
  color: #fff;
  font-size: 1.05rem;
}

.stream-view-card > footer {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .6rem 1rem;
  border-top: 1px solid var(--mts-border);
  color: var(--mts-muted-2);
  font-size: .8rem;
}

.stream-view-card > footer button {
  margin-left: auto;
}

@media (max-width: 1000px) {
  .mediamtx-source-form,
  .mediamtx-admin-grid,
  .stream-view-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .mediamtx-service-card header,
  .mediamtx-source-card > header,
  .stream-view-card > header,
  .mediamtx-library-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .mediamtx-stream-edit-form {
    grid-template-columns: 1fr;
  }

  .mediamtx-url-list > div {
    grid-template-columns: 1fr;
  }

  .stream-player-frame {
    min-height: 220px;
  }
}

.material-storage-queue {
  width: min(760px, 100%);
}

.station-inventory-assign-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 10px;
  padding: 12px;
  border-bottom: 1px solid #d8e1ec;
  background: #eef4fb;
}

.station-inventory-state-filter {
  display: flex;
  align-items: end;
  gap: 8px;
  min-width: 220px;
}

.station-inventory-state-filter label {
  width: 100%;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  color: #475569;
}

.station-inventory-state-filter select {
  display: block;
  width: 100%;
  margin-top: 4px;
  text-transform: none;
}

.station-inventory-assign-form label {
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  color: #475569;
}

.station-inventory-assign-form select {
  display: block;
  width: 100%;
  margin-top: 4px;
  text-transform: none;
}

.station-inventory-card-meta {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 10px;
  border: 1px solid #d8e1ec;
  border-radius: 7px;
  background: #f8fafc;
  color: #475569;
}

.station-inventory-card-meta b {
  color: #0f766e;
}

.station-inventory-linked-pallets {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  border: 1px solid #99d5cc;
  border-radius: 7px;
  background: #ecfdf8;
}

.station-inventory-linked-pallets span {
  width: 100%;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  color: #0f766e;
}

.station-inventory-linked-pallets b {
  padding: 4px 7px;
  border-radius: 999px;
  background: #d4f5ec;
  color: #115e59;
  font-size: 11px;
}

.inventory-qty-trigger {
  cursor: pointer;
  transition: border-color 0.15s, box-shadow 0.15s, transform 0.15s;
}

.inventory-qty-trigger:hover,
.inventory-qty-trigger:focus-visible {
  border-color: #2563eb;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
  outline: none;
  transform: translateY(-1px);
}

.inventory-qty-trigger em {
  margin-top: 7px;
  color: #2563eb;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
}

.inventory-qty-dialog {
  width: min(420px, calc(100vw - 32px));
}

.inventory-qty-dialog p {
  margin: 0;
  color: #64748b;
}

@media (max-width: 700px) {
  .station-inventory-state-filter {
    width: 100%;
  }

  .station-inventory-assign-form {
    grid-template-columns: 1fr;
  }
}

.rack-config-shell,
.rack-detail-shell {
  display: grid;
  gap: 18px;
}

.rack-config-header,
.rack-detail-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding: 22px;
  border: 1px solid #dbe4ee;
  border-radius: 14px;
  background: linear-gradient(135deg, #f8fafc 0%, #eef6ff 100%);
}

.rack-config-header h2,
.rack-detail-header h2 {
  margin: 3px 0 6px;
  color: #102a43;
  font-size: 26px;
}

.rack-config-header p,
.rack-detail-header p {
  max-width: 760px;
  margin: 0;
  color: #52677d;
}

.rack-config-eyebrow {
  color: #0f766e;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.rack-config-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.rack-config-summary > div {
  display: grid;
  gap: 3px;
  padding: 14px 16px;
  border: 1px solid #dbe4ee;
  border-radius: 10px;
  background: #fff;
}

.rack-config-summary span,
.rack-section-capacity span,
.rack-detail-actions span {
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.rack-config-summary strong {
  color: #0f172a;
  font-size: 24px;
}

.rack-section-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
  gap: 16px;
}

.rack-section-card {
  overflow: hidden;
  border: 1px solid #cfdbe7;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .06);
}

.rack-section-card > header,
.rack-section-card > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
}

.rack-section-card > header {
  border-bottom: 1px solid #dbe4ee;
  background: #102a43;
  color: #fff;
}

.rack-section-card > header span {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.rack-section-card h3 {
  margin: 0;
  font-size: 30px;
}

.rack-section-capacity {
  display: grid;
  justify-items: end;
}

.rack-section-capacity strong {
  font-size: 18px;
}

.rack-section-capacity span {
  color: #bdcadd;
}

.rack-shelf-stack {
  display: grid;
  gap: 7px;
  padding: 14px 16px;
  background: #edf2f7;
}

.rack-shelf-row {
  display: grid;
  grid-template-columns: 72px 1fr;
  align-items: center;
  gap: 9px;
  padding-bottom: 7px;
  border-bottom: 5px solid #73869b;
}

.rack-shelf-label {
  color: #334e68;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.rack-slot-row {
  display: grid;
  grid-template-columns: repeat(5, minmax(34px, 1fr));
  gap: 6px;
}

.rack-slot {
  display: grid;
  min-height: 34px;
  place-items: center;
  border: 1px dashed #9badbd;
  border-radius: 5px 5px 1px 1px;
  background: #fff;
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
}

.rack-slot.is-occupied {
  border-style: solid;
  border-color: #0f766e;
  background: #ccfbf1;
  color: #115e59;
}

.rack-section-card > footer {
  border-top: 1px solid #dbe4ee;
  color: #52677d;
  font-size: 12px;
}

.rack-config-empty {
  display: grid;
  justify-items: center;
  gap: 10px;
  padding: 54px 24px;
  border: 2px dashed #cbd5e1;
  border-radius: 14px;
  background: #f8fafc;
  color: #64748b;
  text-align: center;
}

.rack-config-empty strong {
  color: #102a43;
  font-size: 19px;
}

.rack-config-dialog {
  width: min(480px, calc(100vw - 32px));
}

.rack-config-dialog small {
  display: block;
  margin-top: 4px;
  color: #64748b;
}

.rack-detail-actions {
  display: flex;
  align-items: center;
  gap: 16px;
}

.rack-detail-actions > div {
  display: grid;
  justify-items: end;
}

.rack-detail-actions strong {
  color: #102a43;
  font-size: 22px;
}

.rack-detail-stack {
  display: grid;
  gap: 13px;
}

.rack-detail-shelf {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 14px;
  padding: 14px;
  border: 1px solid #cfdbe7;
  border-bottom: 7px solid #667d91;
  border-radius: 10px 10px 3px 3px;
  background: #eef3f8;
}

.rack-detail-shelf > header span {
  color: #64748b;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.rack-detail-shelf h3 {
  margin: 2px 0 0;
  color: #102a43;
}

.rack-detail-slot-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(130px, 1fr));
  gap: 9px;
}

.rack-detail-slot {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 10px;
  min-height: 92px;
  padding: 10px;
  border: 1px dashed #9badbd;
  border-radius: 8px;
  background: #fff;
}

.rack-detail-slot.is-occupied {
  border-style: solid;
  border-color: #58a99b;
  background: #f0fdfa;
}

.rack-detail-slot-number {
  display: grid;
  align-content: start;
  justify-items: center;
  padding: 5px;
  border-radius: 6px;
  background: #e2e8f0;
}

.rack-detail-slot-number span {
  color: #64748b;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.rack-detail-slot-number strong {
  color: #102a43;
  font-size: 21px;
}

.rack-detail-pallet,
.rack-detail-empty-slot {
  display: grid;
  align-content: center;
  gap: 3px;
  min-width: 0;
}

.rack-detail-pallet > span {
  color: #0f766e;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.rack-detail-pallet strong {
  overflow: hidden;
  color: #102a43;
  font-size: 12px;
  text-overflow: ellipsis;
}

.rack-detail-pallet small,
.rack-detail-empty-slot span {
  color: #64748b;
  font-size: 10px;
}

.rack-detail-pallet b {
  color: #0f766e;
  font-size: 12px;
}

.rack-detail-empty-slot strong {
  color: #64748b;
}

.rack-edit-panel .inventory-panel-body {
  display: grid;
  gap: 24px;
  max-width: 620px;
}

@media (max-width: 900px) {
  .rack-config-header,
  .rack-detail-header,
  .rack-section-card > footer,
  .rack-detail-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .rack-detail-actions > div {
    justify-items: start;
  }

  .rack-detail-shelf {
    grid-template-columns: 1fr;
  }

  .rack-detail-slot-grid {
    grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  }
}

@media (max-width: 600px) {
  .rack-config-summary {
    grid-template-columns: 1fr;
  }

  .rack-section-grid {
    grid-template-columns: 1fr;
  }

  .rack-shelf-row {
    grid-template-columns: 1fr;
  }
}

.fabricated-pallet-card {
  position: relative;
}

.fabricated-pallet-card:has(.empty-pallet-delete-form) .fabricated-pallet-card-header {
  padding-right: 32px;
}

.empty-pallet-delete-form {
  position: absolute;
  top: 9px;
  right: 9px;
  margin: 0;
}

.empty-pallet-delete-button {
  display: grid;
  width: 28px;
  height: 28px;
  padding: 0;
  place-items: center;
  border: 1px solid #fecaca;
  border-radius: 999px;
  background: #fff;
  color: #b91c1c;
  font-size: 20px;
  font-weight: 900;
  line-height: 1;
}

.empty-pallet-delete-button:hover,
.empty-pallet-delete-button:focus-visible {
  border-color: #dc2626;
  background: #fef2f2;
  color: #991b1b;
}

/* Light application header */
html[data-theme="light"] .global-app-header{background:#e8eef5;box-shadow:0 8px 22px rgba(15,23,42,.14)}
html[data-theme="light"] .global-header-card{border-color:#c7d2de;background:#fff;color:var(--mts-text);box-shadow:0 3px 12px rgba(15,23,42,.10)}
html[data-theme="light"] .global-header-brand strong{color:#10263c}
html[data-theme="light"] .global-header-brand small{color:#5f7184}
html[data-theme="light"] .global-header-chip{border-color:#cbd6e1;background:#f3f6f9;color:#17324e;box-shadow:inset 0 1px 0 #fff}
html[data-theme="light"] .global-scan-chip{border-color:#cbd6e1!important;background:#f3f6f9!important;color:#17324e!important}
html[data-theme="light"] .global-scan-chip:hover,html[data-theme="light"] .global-scan-chip:focus-visible{border-color:#60a5fa!important;background:#e8f2ff!important;color:#1d4ed8!important}
html[data-theme="light"] .global-message-chip :is(a,button){color:#17324e!important}
html[data-theme="light"] .global-message-chip button{border-top-color:#cbd6e1;color:#315b82!important}
html[data-theme="light"] .global-user-logout-copy strong{color:#17324e}
html[data-theme="light"] .global-user-logout-copy small{color:#5f7184}
html[data-theme="light"] .global-user-logout-chip:hover :is(strong,small),html[data-theme="light"] .global-user-logout-chip:focus :is(strong,small){color:#fff}
html[data-theme="light"] .global-header-tabs{border-top-color:#d5dee8;background:#f4f7fa}
html[data-theme="light"] .global-header-tabs :is(a,button){border-right-color:#d5dee8;color:#243b53;text-shadow:none}
html[data-theme="light"] .global-header-tabs :is(a,button):hover{background:#e8f0f8;color:#174f86}
html[data-theme="light"] .global-header-tabs :is(a.active,button.active){background:linear-gradient(180deg,var(--mts-blue) 0%,var(--mts-blue-dark) 100%);color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.2)}
html[data-theme="light"] .maintenance-module-shell .eng-panel-bar{border-color:#c5d8e2;background:linear-gradient(180deg,#f5fbfd,#e5f3f7);color:#17324e}
html[data-theme="light"] .maintenance-module-shell .eng-panel-bar :is(h1,h2,h3,a,span){color:#17324e}

/* Maintenance industrial workspace ------------------------------------- */
body:has(.maintenance-module-shell) .main-content{width:100%;padding:0;background:#f1f4f7}
body:has(.maintenance-module-shell) .app-shell{min-height:100vh}
.maintenance-module-shell{
  --maintenance-bg:#f1f4f7;
  --maintenance-surface:#fff;
  --maintenance-surface-2:#f7f9fb;
  --maintenance-border:#cfd7df;
  --maintenance-border-strong:#aeb9c4;
  --maintenance-text:#15202b;
  --maintenance-muted:#5e6b78;
  --maintenance-accent:#009cba;
  --maintenance-accent-bright:#00b9d8;
  --maintenance-green:#258f42;
  --maintenance-sidebar:#f7f9fb;
  --maintenance-sidebar-2:#edf2f6;
  --maintenance-sidebar-text:#283746;
  --maintenance-sidebar-muted:#697a8a;
  --maintenance-sidebar-line:#cfd8e1;
  --maintenance-sidebar-control:#edf2f6;
  --maintenance-sidebar-control-hover:#e4eef6;
  --maintenance-sidebar-icon-bg:#fff;
  margin:0!important;
  min-height:100vh!important;
  border:0!important;
  border-radius:0!important;
  background:var(--maintenance-bg)!important;
  color:var(--maintenance-text);
  box-shadow:none!important;
}
.has-global-header .maintenance-module-shell .eng-module-layout,.maintenance-module-shell .eng-module-layout{display:grid!important;grid-template-columns:205px minmax(0,1fr)!important;min-height:calc(100vh - 184px)}
.maintenance-module-shell.is-sidebar-collapsed .eng-module-layout{grid-template-columns:70px minmax(0,1fr)!important}
.maintenance-station-sidebar{position:sticky;top:184px;display:flex;flex-direction:column;align-self:start;min-width:0;height:calc(100vh - 184px);overflow-y:auto;border:0!important;border-right:1px solid var(--maintenance-sidebar-line)!important;background:linear-gradient(180deg,var(--maintenance-sidebar),var(--maintenance-sidebar-2))!important;color:var(--maintenance-sidebar-text);scrollbar-width:thin}
.maintenance-sidebar-brand{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:60px;padding:7px 7px 7px 12px;border-bottom:1px solid var(--maintenance-sidebar-line);background:var(--maintenance-sidebar)}
.maintenance-sidebar-brand>a{display:flex;align-items:center;gap:9px;min-width:0;color:var(--maintenance-sidebar-text);text-decoration:none}
.maintenance-sidebar-brand>a>span:last-child{min-width:0}
.maintenance-sidebar-brand strong,.maintenance-sidebar-brand small{display:block;white-space:nowrap}
.maintenance-sidebar-brand strong{font-size:12px;letter-spacing:.03em;text-transform:uppercase}
.maintenance-sidebar-brand small{margin-top:2px;color:var(--maintenance-sidebar-muted);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.maintenance-sidebar-mark{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--maintenance-sidebar-line);border-radius:5px;background:var(--maintenance-sidebar-control);color:#009cba;font-size:10px;font-weight:950;letter-spacing:.04em}
.maintenance-sidebar-brand button{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid var(--maintenance-sidebar-line);border-radius:5px;background:var(--maintenance-sidebar-control);color:var(--maintenance-sidebar-text)!important;cursor:pointer}
.maintenance-sidebar-brand button:hover,.maintenance-sidebar-brand button:focus-visible{border-color:#00a7c5;color:#03c4e5;outline:none}
.maintenance-sidebar-brand button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.maintenance-sidebar-primary{display:grid;gap:3px;padding:12px 7px 7px}
.maintenance-sidebar-section-label{display:block;padding:3px 8px 7px;color:var(--maintenance-sidebar-muted);font-size:9px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.maintenance-sidebar-home{display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;align-items:center!important;justify-items:stretch!important;gap:8px!important;min-height:42px!important;padding:6px 8px!important;border:1px solid transparent!important;border-radius:5px!important;background:transparent!important;color:var(--maintenance-sidebar-text)!important;text-align:left!important;text-decoration:none;box-shadow:none!important}
.maintenance-sidebar-home svg,.maintenance-sidebar-utility svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.maintenance-sidebar-home strong{overflow:hidden;color:inherit!important;font-size:11px!important;font-weight:760!important;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
.maintenance-sidebar-home small{margin-top:2px!important;color:var(--maintenance-sidebar-muted)!important;font-size:8px!important;font-weight:700!important;white-space:nowrap}
.maintenance-sidebar-home:hover,.maintenance-sidebar-home:focus-visible,.maintenance-sidebar-home.is-active{border-color:var(--maintenance-sidebar-line)!important;background:var(--maintenance-sidebar-control-hover)!important;color:var(--maintenance-sidebar-text)!important;outline:none;box-shadow:inset 3px 0 0 var(--maintenance-accent-bright)!important}
.maintenance-sidebar-groups{display:grid!important;gap:0!important;margin:0!important;padding:6px 7px 16px;border-top:1px solid var(--maintenance-sidebar-line)}
.maintenance-sidebar-group{padding:0!important;border:0!important}
.maintenance-sidebar-group h2{margin:9px 8px 4px!important;color:var(--maintenance-sidebar-muted)!important;font-size:8px!important;text-align:left!important}
.maintenance-sidebar-stations{display:grid!important;gap:3px!important}
.maintenance-sidebar-station{display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;justify-items:stretch!important;gap:8px!important;min-height:40px!important;padding:5px 8px!important;border:1px solid transparent!important;border-radius:5px!important;background:transparent!important;color:var(--maintenance-sidebar-text)!important;text-align:left!important;text-decoration:none;box-shadow:none!important}
.maintenance-sidebar-station img{width:24px!important;height:24px!important;padding:2px;border:1px solid var(--maintenance-sidebar-line)!important;border-radius:3px!important;background:var(--maintenance-sidebar-icon-bg)!important;object-fit:contain;mix-blend-mode:normal!important}
.maintenance-sidebar-station strong{overflow:hidden;color:inherit!important;font-size:10px!important;font-weight:800!important;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
.maintenance-sidebar-station small{margin-top:2px!important;color:var(--maintenance-sidebar-muted)!important;font-size:8px!important;font-weight:700!important}
.maintenance-sidebar-station:hover,.maintenance-sidebar-station:focus-visible,.maintenance-sidebar-station.is-active{border-color:var(--maintenance-sidebar-line)!important;background:var(--maintenance-sidebar-control-hover)!important;color:var(--maintenance-sidebar-text)!important;outline:none;box-shadow:inset 3px 0 0 var(--maintenance-accent-bright)!important}
.maintenance-sidebar-station.is-active img{border-color:#00a8c7!important;box-shadow:0 0 0 1px rgba(0,184,216,.22)}
.maintenance-sidebar-utility{display:grid;gap:3px;margin-top:auto;padding:9px 7px 13px;border-top:1px solid var(--maintenance-sidebar-line)}
.maintenance-sidebar-utility a{display:flex;align-items:center;justify-content:flex-start;gap:9px;min-height:36px;width:100%;box-sizing:border-box;padding:4px 8px;border:0;border-radius:5px;background:transparent;color:var(--maintenance-sidebar-text);text-decoration:none;font:800 10px/1.2 var(--mts-font);cursor:pointer}
.maintenance-sidebar-utility a:hover{background:var(--maintenance-sidebar-control-hover);color:var(--maintenance-sidebar-text)}
.maintenance-module-shell.is-sidebar-collapsed :is(.maintenance-sidebar-brand a>span:last-child,.maintenance-sidebar-primary span,.maintenance-sidebar-home span,.maintenance-sidebar-groups>.maintenance-sidebar-section-label,.maintenance-sidebar-group h2,.maintenance-sidebar-station span,.maintenance-sidebar-utility span){display:none!important}
.maintenance-module-shell.is-sidebar-collapsed .maintenance-sidebar-brand{justify-content:center;padding:7px 4px}
.maintenance-module-shell.is-sidebar-collapsed .maintenance-sidebar-brand>a{display:none}
.maintenance-module-shell.is-sidebar-collapsed .maintenance-sidebar-home,.maintenance-module-shell.is-sidebar-collapsed .maintenance-sidebar-station{grid-template-columns:1fr!important;justify-items:center!important;padding:6px!important}
.maintenance-module-shell.is-sidebar-collapsed .maintenance-sidebar-primary,.maintenance-module-shell.is-sidebar-collapsed .maintenance-sidebar-groups{padding-left:7px;padding-right:7px}
.maintenance-module-shell.is-sidebar-collapsed .maintenance-sidebar-utility a{justify-content:center}
.maintenance-module-shell .eng-module-main{min-width:0;padding:16px 20px 28px!important;gap:10px!important;background:radial-gradient(circle at 75% 0,rgba(255,255,255,.8),transparent 30%),var(--maintenance-bg)!important;color:var(--maintenance-text)}
.maintenance-command-row{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:56px}
.maintenance-command-row>div{min-width:0}
.maintenance-command-row p{margin:5px 0 0;color:var(--maintenance-muted);font-size:11px}
.maintenance-breadcrumb{display:flex;align-items:center;gap:7px;color:var(--maintenance-muted);font-size:11px}
.maintenance-breadcrumb a{color:var(--maintenance-muted);text-decoration:none}
.maintenance-breadcrumb a:hover{color:var(--maintenance-accent)}
.maintenance-breadcrumb strong{color:var(--maintenance-text);font-weight:850}
.maintenance-save-button{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-width:154px;min-height:42px!important;border:1px solid #00b0ce!important;border-radius:5px!important;background:linear-gradient(180deg,#05abc8,#008fa9)!important;color:#fff!important;box-shadow:inset 0 1px rgba(255,255,255,.18),0 8px 18px rgba(0,156,186,.18)!important;font-size:12px!important}
.maintenance-save-button svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.maintenance-command-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto}
.maintenance-overflow-menu{position:relative}
.maintenance-overflow-menu summary{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--maintenance-border-strong);border-radius:5px;background:var(--maintenance-surface-2);color:var(--maintenance-muted);cursor:pointer;list-style:none}
.maintenance-overflow-menu summary::-webkit-details-marker{display:none}
.maintenance-overflow-menu summary:hover{border-color:var(--maintenance-accent);color:var(--maintenance-accent-bright)}
.maintenance-overflow-menu summary svg{width:21px;height:21px;fill:currentColor}
.maintenance-overflow-menu form{position:absolute;z-index:5;right:0;top:calc(100% + 6px);width:150px;padding:6px;border:1px solid var(--maintenance-border);border-radius:5px;background:var(--maintenance-surface);box-shadow:0 14px 30px rgba(0,0,0,.28)}
.maintenance-overflow-menu form button{width:100%;padding:8px;border:1px solid #9e343d;border-radius:4px;background:#4a171c;color:#ffb8bd;font:800 11px/1.2 var(--mts-font);cursor:pointer}
.maintenance-module-shell .station-header-card{gap:10px;padding:0;border:0;border-radius:0;background:transparent;color:var(--maintenance-text);box-shadow:none}
.maintenance-module-shell .station-header-identity h1{margin:0 0 10px;color:var(--maintenance-text);font-size:25px;line-height:1.08;letter-spacing:.01em;text-transform:uppercase}
.maintenance-module-shell .station-summary-grid{gap:8px}
.maintenance-module-shell .station-summary-item{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:9px;min-height:62px;padding:8px 11px;border:1px solid var(--maintenance-border);border-radius:4px;background:linear-gradient(135deg,var(--maintenance-surface-2),var(--maintenance-surface));color:var(--maintenance-text);box-shadow:none}
.maintenance-module-shell .station-summary-item svg{width:29px;height:29px;fill:none;stroke:var(--maintenance-accent-bright);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.maintenance-module-shell .station-summary-item dt{color:var(--maintenance-muted);font-size:9px;font-weight:750}
.maintenance-module-shell .station-summary-item dd{margin:3px 0 0;color:var(--maintenance-text);font-size:17px;font-weight:800}
.maintenance-module-shell .station-action-grid{grid-template-columns:1fr 1fr;gap:0;min-height:112px;border:1px solid var(--maintenance-border-strong);border-radius:4px;background:linear-gradient(135deg,var(--maintenance-surface-2),var(--maintenance-surface));overflow:hidden}
.maintenance-module-shell .station-action-card{min-height:112px;padding:14px 18px;border:0;border-radius:0;background:transparent;color:var(--maintenance-text)}
.maintenance-module-shell .station-action-card+.station-action-card{border-left:1px solid var(--maintenance-border-strong)}
.maintenance-module-shell .station-action-card .station-action-single{display:flex;min-height:84px;align-items:flex-start;justify-content:center;flex-direction:column;gap:6px;padding-left:78px;background:transparent;color:var(--maintenance-text);text-align:left;position:relative}
.maintenance-module-shell .station-action-card .station-action-single::before{content:"";position:absolute;left:14px;top:50%;width:52px;height:52px;border:2px solid var(--maintenance-border-strong);border-radius:999px;transform:translateY(-50%);background:radial-gradient(circle,var(--maintenance-surface-2),var(--maintenance-surface));box-shadow:inset 0 0 0 8px rgba(127,146,164,.04)}
.maintenance-module-shell .station-action-card .station-action-single::after{content:"";position:absolute;left:29px;top:50%;width:25px;height:13px;border-left:2px solid var(--maintenance-accent-bright);border-bottom:2px solid var(--maintenance-accent-bright);transform:translateY(-68%) skewY(-58deg)}
.maintenance-module-shell .station-action-card.start-card .station-action-single::before{border-radius:4px;border-color:var(--maintenance-accent);background:rgba(0,168,199,.05)}
.maintenance-module-shell .station-action-card.start-card .station-action-single::after{left:34px;width:0;height:0;border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:16px solid var(--maintenance-accent-bright);border-right:0;transform:translateY(-50%);background:none}
.maintenance-module-shell .station-action-single strong{color:var(--maintenance-green);font-size:21px;line-height:1.1;text-transform:uppercase}
.maintenance-module-shell .start-card .station-action-single strong{color:var(--maintenance-text)}
.maintenance-module-shell .station-action-single span{color:var(--maintenance-muted);font-size:12px}
.maintenance-module-shell .station-subcard-grid{height:100%;gap:7px}
.maintenance-module-shell .station-subcard{border-color:var(--maintenance-border)!important;background:var(--maintenance-surface-2)!important;color:var(--maintenance-text)!important}
.maintenance-module-shell .maintenance-shell{gap:8px;margin:0}
.maintenance-module-shell .maintenance-station-panel.maintenance-card{padding:0;border:1px solid var(--maintenance-border);border-radius:4px;background:var(--maintenance-surface);box-shadow:none}
.maintenance-module-shell .maintenance-tab-bar{display:flex;gap:0;overflow-x:auto;scrollbar-width:thin}
.maintenance-module-shell .maintenance-tab-bar a{flex:1 0 auto;min-height:42px;padding:8px 13px;border:0;border-right:1px solid transparent;border-radius:0;background:transparent;color:var(--maintenance-muted);font-size:11px;font-weight:720;white-space:nowrap}
.maintenance-module-shell .maintenance-tab-bar a:hover{background:var(--maintenance-surface-2);color:var(--maintenance-text)}
.maintenance-module-shell .maintenance-tab-bar a.active{border-right-color:var(--maintenance-border);border-bottom:2px solid var(--maintenance-accent-bright);background:var(--maintenance-surface-2);color:var(--maintenance-accent-bright);box-shadow:none}
.maintenance-module-shell .maintenance-tab-header{min-height:0;margin:0;padding:0;border:0;background:transparent}
.maintenance-module-shell .maintenance-tab-header:not(:has(> *)){display:none}
.maintenance-module-shell .panel.station-details-shell{padding:0;border:0;background:transparent;box-shadow:none}
.maintenance-module-shell .settings-section-card{gap:8px;padding:12px;border:0;background:transparent;box-shadow:none}
.maintenance-module-shell .settings-section-heading{padding:0 2px}
.maintenance-module-shell .settings-section-heading h3{color:var(--maintenance-text);font-size:13px;text-transform:uppercase}
.maintenance-settings-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:8px}
.maintenance-settings-panel{min-width:0;padding:10px 11px 12px;border:1px solid var(--maintenance-border);border-radius:4px;background:linear-gradient(145deg,var(--maintenance-surface-2),var(--maintenance-surface))}
.maintenance-settings-panel h4{margin:0 0 9px;color:var(--maintenance-muted);font-size:12px;font-weight:800;text-transform:uppercase}
.maintenance-settings-panel .station-details-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.maintenance-settings-panel .station-field-card{gap:5px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.maintenance-settings-panel .station-field-card label{color:var(--maintenance-muted);font-size:8px;letter-spacing:.06em}
.maintenance-settings-panel .station-field-readout{display:none}
.maintenance-settings-panel .station-field-card :is(input,select,textarea){min-height:34px;padding:6px 8px;border:1px solid var(--maintenance-border-strong);border-radius:3px;background:var(--maintenance-surface-2);color:var(--maintenance-text);font-size:11px}
.maintenance-settings-panel .station-field-card textarea{min-height:72px;resize:vertical}
.maintenance-settings-panel .station-field-card .field-help{display:none}
.maintenance-settings-panel .station-icon-upload-card{grid-column:1/-1!important;grid-template-columns:145px minmax(0,1fr)!important;gap:12px;padding-top:4px!important}
.maintenance-settings-panel .station-icon-upload-preview{width:135px;height:112px;border-color:var(--maintenance-border);border-radius:3px;background:var(--maintenance-surface-2)}
.maintenance-settings-panel .station-icon-upload-preview img{width:125px;height:104px;mix-blend-mode:multiply}
.maintenance-settings-panel .station-icon-upload-controls{gap:7px}
.maintenance-settings-panel .station-icon-upload-controls .field-help{display:block;color:var(--maintenance-muted);font-size:9px}
.maintenance-settings-panel .station-icon-upload-controls input[type="file"]{padding:5px}
.maintenance-settings-panel .station-icon-upload-controls input[type="file"]::file-selector-button{margin-right:8px;padding:6px 9px;border-color:var(--maintenance-border-strong);background:var(--maintenance-surface-2);color:var(--maintenance-text);font-size:10px}
.maintenance-module-shell .station-details-actions{padding-top:5px}
.maintenance-module-shell .station-details-actions .action-btn{border-color:#00a9c8;background:linear-gradient(180deg,#05abc8,#008fa9);color:#fff}
.maintenance-module-shell :is(.settings-table,.maintenance-table-wrap,.maintenance-two-col,.logs-shell,.procedure-card,.task-card){border-color:var(--maintenance-border);background:var(--maintenance-surface);color:var(--maintenance-text)}
.maintenance-module-shell>.maintenance-module-status{display:none!important}

@media(max-width:1100px){
  .has-global-header .maintenance-module-shell .eng-module-layout,.maintenance-module-shell .eng-module-layout{grid-template-columns:176px minmax(0,1fr)!important}
  .maintenance-settings-grid{grid-template-columns:1fr}
  .maintenance-module-shell .station-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .has-global-header .maintenance-module-shell .eng-module-layout,.maintenance-module-shell .eng-module-layout{grid-template-columns:64px minmax(0,1fr)!important}
  .maintenance-station-sidebar{top:0;height:100vh}
  .maintenance-sidebar-brand{justify-content:center;padding:7px 4px}
  .maintenance-sidebar-brand>a{display:none}
  .maintenance-sidebar-primary span,.maintenance-sidebar-home span,.maintenance-sidebar-groups>.maintenance-sidebar-section-label,.maintenance-sidebar-group h2,.maintenance-sidebar-station span,.maintenance-sidebar-utility span{display:none!important}
  .maintenance-sidebar-home,.maintenance-sidebar-station{grid-template-columns:1fr!important;justify-items:center!important;padding:6px!important}
  .maintenance-sidebar-primary,.maintenance-sidebar-groups{padding-left:6px!important;padding-right:6px!important}
  .maintenance-sidebar-utility a{justify-content:center}
  .maintenance-module-shell .eng-module-main{padding:12px 9px 66px!important}
  .maintenance-command-row{align-items:flex-start;flex-direction:column;gap:9px}
  .maintenance-command-row p{display:none}
  .maintenance-save-button{width:100%;min-width:0}
  .maintenance-command-actions{width:100%}
  .maintenance-command-actions .maintenance-save-button{flex:1}
  .maintenance-module-shell .station-header-identity h1{font-size:20px}
  .maintenance-module-shell .station-summary-grid{grid-template-columns:1fr 1fr}
  .maintenance-module-shell .station-summary-item{grid-template-columns:28px minmax(0,1fr);padding:7px;gap:6px}
  .maintenance-module-shell .station-summary-item svg{width:22px;height:22px}
  .maintenance-module-shell .station-summary-item dd{font-size:14px}
  .maintenance-module-shell .station-action-grid{grid-template-columns:1fr}
  .maintenance-module-shell .station-action-card+.station-action-card{border-top:1px solid var(--maintenance-border-strong);border-left:0}
  .maintenance-settings-panel .station-details-grid{grid-template-columns:1fr}
  .maintenance-settings-panel .station-icon-upload-card{grid-template-columns:1fr!important;justify-items:center}
  .maintenance-settings-panel .station-icon-upload-controls{width:100%}
}

/* Final maintenance rail overrides keep the module aligned with Planning and Engineering. */
.maintenance-module-shell{--maintenance-sidebar:#103456;--maintenance-sidebar-2:#0d2e4d;--maintenance-sidebar-text:#eff6ff;--maintenance-sidebar-muted:#c1d3e6;--maintenance-sidebar-line:#294f70;--maintenance-sidebar-control:#174466;--maintenance-sidebar-control-hover:#1a466f}
.maintenance-station-sidebar{background:linear-gradient(180deg,#103456,#0d2e4d)!important;color:#eff6ff!important;border-right:0!important}
.maintenance-sidebar-brand{background:#103456!important;border-color:#294f70!important}
.maintenance-sidebar-brand strong,.maintenance-sidebar-brand small,.maintenance-sidebar-brand>a{color:#eff6ff!important}
.maintenance-sidebar-brand small,.maintenance-sidebar-section-label,.maintenance-sidebar-group h2,.maintenance-sidebar-home small,.maintenance-sidebar-station small{color:#c1d3e6!important}
.maintenance-sidebar-mark,.maintenance-sidebar-brand button{border-color:#294f70!important;background:#174466!important;color:#8bd8ea!important}
.maintenance-sidebar-groups,.maintenance-sidebar-utility{border-color:#294f70!important}
.maintenance-sidebar-home,.maintenance-sidebar-station{color:#eff6ff!important}
.maintenance-sidebar-home:hover,.maintenance-sidebar-home:focus-visible,.maintenance-sidebar-home.is-active,.maintenance-sidebar-station:hover,.maintenance-sidebar-station:focus-visible,.maintenance-sidebar-station.is-active{border-color:#294f70!important;background:#1a466f!important;color:#fff!important;box-shadow:inset 3px 0 0 #43c4e0!important}
.maintenance-sidebar-utility a{color:#eff6ff!important}
.maintenance-sidebar-utility a:hover{background:#1a466f!important;color:#fff!important}

/* Shared storage pallet card and six-up physical label content. */
.inventory-physical-label{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:8px;align-items:start;min-width:0;padding:8px;border:2px solid #0f766e;border-radius:7px;background:#fff;color:#102a43;text-align:left}
.inventory-physical-label-copy{display:grid;gap:3px;min-width:0;overflow-wrap:anywhere}
.inventory-physical-label-eyebrow{color:#0f766e;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.inventory-physical-label-id{font-size:11px;line-height:1.15;overflow-wrap:anywhere}
.inventory-physical-label-part{font-size:11px;font-weight:800}
.inventory-physical-label-part b,.inventory-physical-label-state b{display:block;color:#64748b;font-size:8px;letter-spacing:.05em;text-transform:uppercase}
.inventory-physical-label-description{font-size:10px;line-height:1.2}
.inventory-physical-label-state{font-size:10px;font-weight:800}
.inventory-physical-label-bins{display:grid;gap:2px;margin-top:4px;padding-top:4px;border-top:1px solid #b9ded7;font-size:9px}
.inventory-physical-label-bins>b{color:#0f766e;font-size:8px;text-transform:uppercase}
.inventory-physical-label-bin{display:grid;gap:0;line-height:1.15}
.inventory-physical-label-bin strong{font-size:9px}
.inventory-physical-label-bin span{font-size:8px}
.inventory-physical-label-qr{width:72px;height:72px;max-width:100%;image-rendering:pixelated}
.rack-slot-pallet .inventory-physical-label{width:100%;min-height:100%;grid-template-columns:minmax(0,1fr) 60px;padding:5px}
.rack-slot-pallet .inventory-physical-label-qr{width:60px;height:60px}
.rack-detail-pallet .inventory-physical-label{width:100%}
.label-cell .inventory-physical-label{grid-template-columns:minmax(0,1fr) 1in;align-content:start;height:100%;border-color:#0f172a;padding:.12in}
.label-cell .inventory-physical-label-qr{width:1in;height:1in}
.label-cell .inventory-physical-label-id{font-size:12px}
.label-cell .inventory-physical-label-part{font-size:13px}
.label-cell .inventory-physical-label-description{font-size:11px}
.label-cell .inventory-physical-label-state{font-size:12px}
.label-cell .inventory-physical-label-bin strong{font-size:10px}
.label-cell .inventory-physical-label-bin span{font-size:9px}
.inventory-physical-label-barcode{grid-column:1/-1;display:grid;gap:2px;min-width:0;margin-top:auto;padding-top:5px;border-top:1px solid #b9ded7;text-align:center}
.inventory-physical-label-barcode img{display:block;width:100%;height:50px;object-fit:contain}
.inventory-physical-label-barcode span{font:9px monospace;overflow-wrap:anywhere}
.staging-fabpart-group{display:flex;align-items:start;gap:10px;padding:10px;border:1px solid #cbd9e8;border-radius:8px;background:#f8fbff}.staging-fabpart-group details{flex:1;min-width:0}.staging-fabpart-group summary{display:grid;gap:3px;cursor:pointer;padding:8px;color:#17466e}.staging-fabpart-group summary span{font-size:12px;color:#637b92}.staging-fabpart-orders{display:grid;gap:8px;padding-top:8px}.staging-fabpart-next{margin:0}.staging-fabpart-next button{white-space:nowrap}@media(max-width:650px){.staging-fabpart-group{flex-wrap:wrap}.staging-fabpart-next,.staging-fabpart-next button{width:100%}}
