body{font-family:Arial,sans-serif;margin:0;background:linear-gradient(180deg,#eff6ff 0%,#f8fafc 35%,#f1f5f9 100%);color:#0f172a}
.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}
.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}
.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){
  .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){
  .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}
.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;min-width:360px}
.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:grid;grid-template-columns:repeat(3,95px);gap:10px}
.kiosk-keypad-grid button{height:78px;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-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}
@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}}
.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}
.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}
.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-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{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{grid-template-columns:1fr}.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}

.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:720px){.maintenance-areas-row{grid-template-columns:1fr}}
.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}
.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}
.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}
.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}
@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}
.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}
.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}.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}}
