html, body { background: var(--fu-bg) !important; }
body { margin: 0 !important; color: var(--fu-text) !important; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important; }
#flowup-v2-root, #flowup-v2-root * { box-sizing: border-box; }
#flowup-v2-root { min-height: 100vh; background: var(--fu-bg); }
.fu-shell { min-height: 100vh; }
.fu-topbar { position: sticky; top: 0; z-index: 20; min-height: 72px; display:flex; align-items:center; justify-content:space-between; padding:0 28px; background:rgba(255,255,255,.96); border-bottom:1px solid var(--fu-border); backdrop-filter: blur(12px); }
.fu-brand { display:flex; align-items:center; gap:12px; font-weight:800; letter-spacing:.06em; font-size:20px; }
.fu-brand img { width:38px; height:38px; object-fit:contain; display:block; }
.fu-cpt { padding:8px 12px; border-radius:999px; background:#eaf2fb; color:var(--fu-primary); font-weight:700; font-size:13px; }
.fu-top-actions { display:flex; align-items:center; gap:10px; }
.fu-field { display:flex; align-items:center; gap:8px; color:var(--fu-muted); font-size:13px; }
.fu-field input { width:82px; height:38px; border:1px solid var(--fu-border); border-radius:10px; padding:0 10px; font:inherit; color:var(--fu-text); background:white; }
.fu-btn { border:1px solid var(--fu-border); background:white; color:var(--fu-text); border-radius:10px; min-height:38px; padding:0 14px; font-weight:700; cursor:pointer; }
.fu-btn:hover { border-color:#b8c7da; box-shadow:0 3px 10px rgba(20,33,61,.08); }
.fu-btn-danger { color:var(--fu-danger); }
.fu-main { padding:26px 28px 42px; max-width:1800px; margin:0 auto; }
.fu-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:22px; }
.fu-card { background:var(--fu-surface); border:1px solid var(--fu-border); border-radius:var(--fu-radius); box-shadow:var(--fu-shadow); }
.fu-kpi { padding:18px 20px; min-height:132px; }
.fu-eyebrow { font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:var(--fu-muted); font-weight:800; }
.fu-kpi-value { margin-top:9px; font-size:31px; font-weight:800; letter-spacing:-.03em; }
.fu-kpi-sub { margin-top:6px; color:var(--fu-muted); font-size:13px; }
.fu-status { display:inline-flex; align-items:center; gap:7px; margin-top:10px; font-weight:700; font-size:13px; }
.fu-status::before { content:""; width:8px; height:8px; border-radius:50%; background:currentColor; }
.fu-ok { color:var(--fu-success); } .fu-warn { color:var(--fu-warning); } .fu-bad { color:var(--fu-danger); } .fu-neutral { color:var(--fu-primary); }
.fu-progress { height:7px; border-radius:999px; overflow:hidden; background:#e8eef6; margin-top:12px; }
.fu-progress > span { display:block; height:100%; background:var(--fu-primary-2); border-radius:999px; }
.fu-progress .fu-progress-over { background:var(--fu-danger); }
.fu-section { margin-top:24px; }
.fu-section-head { display:flex; align-items:end; justify-content:space-between; gap:18px; margin-bottom:12px; }
.fu-section-title { margin:0; font-size:18px; font-weight:800; }
.fu-section-sub { color:var(--fu-muted); font-size:13px; }
.fu-zone-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.fu-zone-card { padding:16px 18px; cursor:pointer; transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease; }
.fu-zone-card:hover { transform:translateY(-2px); border-color:#b8cadf; box-shadow:0 16px 34px rgba(28,55,90,.13); }
.fu-zone-top { display:flex; align-items:center; justify-content:space-between; }
.fu-zone-name { font-weight:850; font-size:15px; }
.fu-arrow { color:var(--fu-muted); font-size:19px; }
.fu-zone-main { margin-top:12px; }
.fu-zone-qty { font-size:27px; font-weight:850; letter-spacing:-.03em; }
.fu-zone-meta { color:var(--fu-muted); font-size:13px; margin-top:3px; }
.fu-zone-stats { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:12px; padding-top:12px; border-top:1px solid var(--fu-border); }
.fu-stat-label { color:var(--fu-muted); font-size:11px; text-transform:uppercase; font-weight:800; }
.fu-stat-value { margin-top:4px; font-size:17px; font-weight:800; }
.fu-lower { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.fu-three-panels { grid-template-columns:1.15fr .8fr 1fr; }
.fu-panel { padding:18px 20px; min-width:0; }
.fu-table { width:100%; border-collapse:collapse; font-size:13px; }
.fu-table th { text-align:left; color:var(--fu-muted); font-size:11px; text-transform:uppercase; letter-spacing:.05em; padding:10px 8px; border-bottom:1px solid var(--fu-border); }
.fu-table td { padding:10px 8px; border-bottom:1px solid #edf2f7; vertical-align:middle; }
.fu-table td.num, .fu-table th.num { text-align:right; }
.fu-table tr:last-child td { border-bottom:0; }
.fu-delta-up { color:var(--fu-danger); font-weight:800; } .fu-delta-down { color:var(--fu-success); font-weight:800; }
.fu-stepper { display:inline-flex; align-items:center; border:1px solid var(--fu-border); border-radius:10px; overflow:hidden; background:white; }
.fu-stepper button { width:34px; height:34px; border:0; background:var(--fu-surface-2); cursor:pointer; font-size:18px; color:var(--fu-text); }
.fu-stepper input { width:54px; height:34px; border:0; border-left:1px solid var(--fu-border); border-right:1px solid var(--fu-border); text-align:center; font-weight:800; color:var(--fu-text); }
.fu-rate { width:64px; height:34px; border:1px solid var(--fu-border); border-radius:9px; text-align:center; color:var(--fu-text); background:white; }
.fu-rate-quiet { width:56px; height:30px; border-color:transparent; background:var(--fu-surface-2); font-weight:700; }
.fu-warning { color:var(--fu-danger); font-weight:800; }
.fu-overlay { position:fixed; inset:0; z-index:40; background:rgba(15,23,42,.38); display:flex; justify-content:flex-end; }
.fu-drawer { width:min(560px, 92vw); height:100%; background:white; box-shadow:-20px 0 60px rgba(15,23,42,.18); padding:24px; overflow:auto; }
.fu-drawer-head { display:flex; align-items:start; justify-content:space-between; gap:16px; }
.fu-drawer-title { font-size:25px; font-weight:850; margin:0; }
.fu-close { width:38px; height:38px; border:1px solid var(--fu-border); border-radius:10px; background:white; cursor:pointer; font-size:22px; }
.fu-drawer-summary { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:20px 0 4px; }
.fu-drawer-summary > div { padding:14px; border-radius:12px; background:var(--fu-surface-2); border:1px solid var(--fu-border); }
.fu-drawer-summary strong { display:block; font-size:19px; margin-top:4px; }
.fu-drawer-section-title { margin-top:22px; padding-bottom:8px; border-bottom:1px solid var(--fu-border); color:var(--fu-muted); font-size:11px; text-transform:uppercase; font-weight:800; letter-spacing:.06em; }
.fu-process-card { padding:16px 0; border-bottom:1px solid var(--fu-border); }
.fu-process-head { display:flex; justify-content:space-between; align-items:start; gap:12px; }
.fu-process-title { font-weight:800; font-size:15px; }
.fu-process-reco { text-align:right; }
.fu-process-reco strong, .fu-process-reco span { display:block; }
.fu-process-reco strong { font-size:13px; }
.fu-process-reco span { color:var(--fu-muted); font-size:11px; margin-top:2px; }
.fu-process-controls { display:flex; justify-content:space-between; gap:16px; align-items:end; margin-top:12px; }
.fu-uph-edit { display:flex; align-items:center; gap:8px; color:var(--fu-muted); font-size:12px; font-weight:700; }
.fu-mini-label { color:var(--fu-muted); font-size:11px; text-transform:uppercase; font-weight:800; margin-bottom:5px; }
.fu-coverage-line { display:flex; justify-content:space-between; gap:10px; margin-top:12px; font-size:12px; color:var(--fu-muted); }
.fu-coverage { margin-top:6px; }
.fu-inline-alert { color:var(--fu-danger); font-size:12px; font-weight:700; margin-top:8px; }
.fu-empty-processes { margin-top:16px; border:1px solid var(--fu-border); border-radius:12px; background:var(--fu-surface-2); }
.fu-empty-processes summary { padding:13px 15px; cursor:pointer; font-weight:700; color:var(--fu-muted); }
.fu-empty-processes > div { padding:0 15px; background:white; border-radius:0 0 12px 12px; }
.fu-empty { padding:30px; text-align:center; color:var(--fu-muted); }
.fu-error { max-width:760px; margin:80px auto; padding:24px; }
.fu-workforce-panel { padding:18px 20px; margin-bottom:22px; }
.fu-workforce-total { text-align:right; }
.fu-workforce-total strong, .fu-workforce-total span { display:block; }
.fu-workforce-total span { color:var(--fu-muted); font-size:12px; margin-top:3px; }
.fu-workforce-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.fu-workforce-group { border:1px solid var(--fu-border); border-radius:12px; padding:14px; background:var(--fu-surface-2); }
.fu-workforce-head h3 { margin:4px 0 10px; font-size:21px; }
.fu-indirect-list { display:grid; gap:8px; }
.fu-indirect-row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:7px 0; border-top:1px solid var(--fu-border); font-size:13px; }
.fu-workforce-foot { display:flex; gap:18px; justify-content:flex-end; color:var(--fu-muted); font-size:12px; margin-top:12px; }
.fu-alert-layout { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.fu-alert-list { display:grid; gap:8px; }
.fu-alert { display:flex; gap:10px; padding:10px 12px; border-radius:10px; background:var(--fu-surface-2); font-size:12px; }
.fu-alert strong { display:block; font-size:13px; margin-bottom:2px; }
.fu-alert-dot { width:9px; height:9px; border-radius:50%; margin-top:4px; flex:0 0 auto; }
.fu-alert-critical .fu-alert-dot { background:var(--fu-danger); }
.fu-alert-warning .fu-alert-dot { background:var(--fu-warning); }
.fu-alert-info .fu-alert-dot { background:var(--fu-primary); }
.fu-flow-strip { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; align-items:center; text-align:center; min-height:190px; }
.fu-flow-strip h2 { margin:8px 0 0; font-size:27px; }
.fu-flow-strip h2 span { display:block; color:var(--fu-muted); font-size:12px; font-weight:600; margin-top:4px; }
.fu-flow-arrow { color:var(--fu-muted); font-size:26px; }
.fu-capacity-summary { display:flex; justify-content:space-between; gap:12px; border-radius:10px; padding:12px 14px; margin-top:14px; font-size:13px; font-weight:700; }
.fu-capacity-bad { background:#fff1f2; color:var(--fu-danger); }
.fu-capacity-ok { background:#ecfdf5; color:var(--fu-success); }
@media (max-width:1300px){ .fu-three-panels{grid-template-columns:1fr 1fr}.fu-three-panels>article:last-child{grid-column:1/-1} }
@media (max-width:1100px){ .fu-kpis,.fu-zone-grid{grid-template-columns:repeat(2,1fr)} .fu-lower,.fu-alert-layout{grid-template-columns:1fr} .fu-workforce-grid{grid-template-columns:1fr}.fu-topbar{height:auto; padding:14px 18px; flex-wrap:wrap; gap:12px} }
@media (max-width:640px){ .fu-main{padding:18px 12px 30px}.fu-kpis,.fu-zone-grid{grid-template-columns:1fr}.fu-drawer-summary{grid-template-columns:1fr}.fu-top-actions{flex-wrap:wrap}.fu-process-controls{align-items:stretch;flex-direction:column}.fu-flow-strip{grid-template-columns:1fr}.fu-flow-arrow{transform:rotate(90deg)} }
.fu-hero-grid{display:grid;grid-template-columns:3fr 1fr;gap:16px;margin-bottom:16px}.fu-hero-flow{padding:24px 28px}.fu-flow-tph{text-align:center}.fu-flow-tph strong{display:block;font-size:52px;line-height:1;margin:10px 0 8px;letter-spacing:-.05em}.fu-flow-tph span{font-weight:800}.fu-flow-big{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;text-align:center;margin-top:28px}.fu-flow-big>div>span{font-size:12px;color:var(--fu-muted);font-weight:850;letter-spacing:.08em}.fu-flow-big>div>strong{display:block;font-size:42px;margin-top:7px;letter-spacing:-.04em}.fu-flow-edge{min-width:110px}.fu-flow-edge b{display:block;color:var(--fu-warning);font-size:18px}.fu-flow-edge i{display:block;font-style:normal;font-size:32px;color:var(--fu-muted)}.fu-health-card{padding:24px}.fu-health-counts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.fu-health-counts>div{padding:20px 12px;border:1px solid var(--fu-border);border-radius:14px;text-align:center;background:var(--fu-surface-2)}.fu-health-counts strong{display:block;font-size:46px;line-height:1}.fu-health-counts span{display:block;margin-top:8px;text-transform:uppercase;font-size:12px;font-weight:850;color:var(--fu-muted)}.fu-health-foot{margin-top:18px;color:var(--fu-muted);font-weight:700;text-align:center}.fu-kpis-3{grid-template-columns:repeat(3,minmax(0,1fr))}.fu-rec-card{position:relative}.fu-btn-primary{background:var(--fu-primary);border-color:var(--fu-primary);color:white}.fu-rec-button{margin-top:13px}.fu-flow-summary{display:flex;flex-direction:column;justify-content:center}.fu-summary-line{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--fu-border);font-size:15px}.fu-summary-line strong{font-size:28px}.fu-recommendation{width:min(820px,94vw);height:100%;background:white;box-shadow:-20px 0 60px rgba(15,23,42,.18);padding:28px;overflow:auto}.fu-rec-gain{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;margin:26px 0;padding:20px;border:1px solid var(--fu-border);border-radius:16px;background:var(--fu-surface-2);text-align:center;position:relative}.fu-rec-gain span{display:block;color:var(--fu-muted);font-size:12px;text-transform:uppercase;font-weight:800}.fu-rec-gain strong{display:block;font-size:42px;margin-top:6px}.fu-rec-arrow{font-size:32px}.fu-rec-badge{grid-column:1/-1;color:var(--fu-success);font-weight:850}.fu-rec-moves{display:grid;gap:10px}.fu-rec-move{display:grid;grid-template-columns:42px 1fr auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--fu-border);border-radius:14px}.fu-rec-index{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eaf2fb;color:var(--fu-primary);font-weight:850}.fu-rec-move p{margin:4px 0 0;color:var(--fu-muted);font-size:12px}.fu-rec-delta{font-weight:850;color:var(--fu-primary)}.fu-rec-compare{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.fu-rec-compare>div{padding:14px;border:1px solid var(--fu-border);border-radius:12px}.fu-rec-compare span{display:block;color:var(--fu-muted);font-size:12px}.fu-rec-compare strong{display:block;margin-top:6px;font-size:18px}.fu-rec-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}@media (min-width:1900px){.fu-main{max-width:2200px}.fu-topbar{min-height:84px}.fu-brand{font-size:24px}.fu-brand img{width:46px;height:46px}.fu-flow-tph strong{font-size:72px}.fu-flow-big>div>strong{font-size:58px}.fu-zone-qty{font-size:34px}.fu-kpi-value{font-size:39px}.fu-section-title{font-size:22px}.fu-table{font-size:15px}.fu-table th{font-size:12px}.fu-alert strong{font-size:15px}.fu-alert{font-size:14px;padding:14px 16px}}@media(max-width:1100px){.fu-hero-grid,.fu-kpis-3{grid-template-columns:1fr}.fu-flow-big{grid-template-columns:1fr}.fu-flow-edge{transform:rotate(90deg);margin:10px}.fu-rec-compare{grid-template-columns:1fr}}

/* Alpha 5 · constrained recommendation engine */
.fu-rec-constraint{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:12px;margin:16px 0;padding:14px 16px;border:1px solid var(--fu-border);border-radius:14px;background:#f8fbff}.fu-rec-constraint>div{display:flex;flex-direction:column;gap:4px}.fu-rec-constraint span{font-size:11px;font-weight:800;letter-spacing:.04em;color:var(--fu-muted)}.fu-rec-constraint strong{font-size:16px;color:var(--fu-ink)}.fu-rec-constraint-ok{border-left:5px solid #16a36a}.fu-rec-constraint-bad{border-left:5px solid #d63b45;background:#fff5f5}.fu-btn:disabled{opacity:.45;cursor:not-allowed}
@media (max-width:900px){.fu-rec-constraint{grid-template-columns:1fr 1fr}}

/* Alpha 6 · operational stability engine */
.fu-stability-band{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:11px 14px;margin:0 0 16px;border-radius:11px;background:#eef6ff;border:1px solid #cfe0f3;color:var(--fu-primary);font-size:12px}.fu-stability-band span{text-transform:uppercase;font-weight:850;letter-spacing:.05em}.fu-stability-band strong{text-align:right}.fu-rec-actions-list{display:grid;gap:14px}.fu-rec-action{padding:16px;border:1px solid var(--fu-border);border-radius:16px;background:white}.fu-action-head{display:grid;grid-template-columns:42px 1fr auto;gap:14px;align-items:start}.fu-action-title{font-size:14px;font-weight:900;letter-spacing:.035em;color:var(--fu-ink)}.fu-action-head p{margin:5px 0 0;color:var(--fu-muted);font-size:12px}.fu-action-staff{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;margin-top:14px;padding:14px;border-radius:12px;background:var(--fu-surface-2)}.fu-action-staff>div:not(.fu-action-arrow){display:flex;flex-direction:column;gap:5px}.fu-action-staff>div:last-child{text-align:right}.fu-action-staff span{font-size:11px;color:var(--fu-muted);font-weight:750}.fu-action-staff strong{font-size:17px}.fu-action-arrow{font-size:26px;color:var(--fu-primary);font-weight:900}.fu-action-impact{margin-top:12px;padding:0 4px}.fu-impact-line{display:flex;justify-content:space-between;gap:14px;padding:7px 0;border-top:1px solid var(--fu-border);font-size:12px}.fu-impact-line strong{font-size:13px}.fu-rec-delta{white-space:nowrap}.fu-rec-card .fu-kpi-sub{line-height:1.45}
@media (min-width:1900px){.fu-rec-action{padding:20px}.fu-action-title{font-size:17px}.fu-action-head p{font-size:14px}.fu-action-staff span{font-size:13px}.fu-action-staff strong{font-size:21px}.fu-impact-line{font-size:14px}.fu-impact-line strong{font-size:15px}}
@media (max-width:700px){.fu-stability-band{align-items:flex-start;flex-direction:column}.fu-stability-band strong{text-align:left}.fu-action-staff{grid-template-columns:1fr}.fu-action-staff>div:last-child{text-align:left}.fu-action-arrow{transform:rotate(90deg);justify-self:start}.fu-action-head{grid-template-columns:42px 1fr}.fu-rec-delta{grid-column:2}}

/* Alpha 7 · coordinated maneuvers + Ship vertical layout */
.fu-maneuver{border-left:5px solid var(--fu-primary)}
.fu-maneuver-staff{display:grid;gap:8px;margin-top:14px;padding:12px 14px;border-radius:12px;background:var(--fu-surface-2)}
.fu-maneuver-staff-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid var(--fu-border)}
.fu-maneuver-staff-row:last-child{border-bottom:0}
.fu-maneuver-staff-row>div{display:flex;flex-direction:column;gap:4px;min-width:0}
.fu-maneuver-staff-row span{color:var(--fu-muted);font-size:12px;font-weight:700}
.fu-maneuver-staff-row strong{font-size:18px}
.fu-maneuver-staff-row>b{white-space:nowrap;font-size:15px}
.fu-ship-panel{overflow:hidden}
.fu-ship-process{padding:14px 0 2px}
.fu-ship-process+.fu-ship-process{border-top:1px solid var(--fu-border);margin-top:10px}
.fu-ship-process-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.fu-ship-process-head>strong{font-size:17px}
.fu-ship-process-head>span{font-size:13px;color:var(--fu-muted);font-weight:800}
.fu-ship-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.fu-ship-metrics>div{min-width:0;padding:12px;border:1px solid var(--fu-border);border-radius:11px;background:var(--fu-surface-2);display:flex;flex-direction:column;gap:6px}
.fu-ship-metrics span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--fu-muted);font-weight:800}
.fu-ship-metrics strong{font-size:22px;line-height:1.1;overflow-wrap:anywhere}
.fu-ship-rate{width:100%;max-width:90px}
@media (min-width:1900px){.fu-maneuver-staff-row span{font-size:14px}.fu-maneuver-staff-row strong{font-size:22px}.fu-ship-process-head>strong{font-size:20px}.fu-ship-metrics strong{font-size:28px}.fu-ship-metrics span{font-size:12px}}
@media (max-width:700px){.fu-ship-metrics{grid-template-columns:1fr}.fu-maneuver-staff-row{align-items:flex-start;flex-direction:column}}


/* Alpha 8 · one-hour plan horizon + plan clock + compact Ship FTE */
.fu-plan-clock{min-width:126px;padding:6px 11px;border:1px solid var(--fu-border);border-radius:10px;background:var(--fu-surface-2);display:flex;flex-direction:column;gap:1px;line-height:1.1}
.fu-plan-clock span{font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.fu-plan-clock strong{font-size:15px;font-variant-numeric:tabular-nums;letter-spacing:.02em}
.fu-plan-idle{color:var(--fu-muted)}
.fu-plan-active{background:#ecfdf5;border-color:#b7ead3;color:var(--fu-success)}
.fu-plan-warning{background:#fff8e6;border-color:#f2d58a;color:var(--fu-warning)}
.fu-plan-expired{background:#fff1f2;border-color:#f1b8be;color:var(--fu-danger)}
.fu-capacity-watch{background:#fff8e6;color:var(--fu-warning)}
.fu-ship-fte-card{align-items:flex-start}
.fu-ship-stepper{display:flex;align-items:center;justify-content:flex-start;width:100%}
.fu-ship-stepper .fu-stepper{width:auto;max-width:100%;flex:0 0 auto;align-self:flex-start}
.fu-ship-stepper .fu-stepper button{width:36px;flex:0 0 36px}
.fu-ship-stepper .fu-stepper input{width:52px;flex:0 0 52px;padding:0}
@media (min-width:1900px){.fu-plan-clock{min-width:150px;padding:8px 13px}.fu-plan-clock span{font-size:10px}.fu-plan-clock strong{font-size:18px}.fu-ship-stepper .fu-stepper button{width:42px;height:40px}.fu-ship-stepper .fu-stepper input{width:60px;height:40px}}
@media (max-width:1250px){.fu-plan-clock{order:2}.fu-top-actions{flex-wrap:wrap;justify-content:flex-end}}

/* Alpha 9 — hierarchical diagnostics */
.fu-diagnostics{margin-top:14px;border-top:1px solid var(--fu-border);padding-top:12px}
.fu-diagnostics summary{cursor:pointer;color:var(--fu-muted);font-weight:800;font-size:12px;margin-bottom:10px}
.fu-diagnostics .fu-alert{opacity:.82}
.fu-diagnostics .fu-alert-info{background:#f7fafc}


/* Alpha 10 — cockpit clarity + operational layout */
.fu-flow-edge{min-width:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:7px 10px;border-radius:12px}
.fu-flow-edge i{order:0;line-height:1;font-size:30px}
.fu-flow-edge b{order:1;font-size:14px;line-height:1.2;color:var(--fu-ink);font-weight:900;white-space:nowrap}
.fu-flow-edge small{order:2;font-size:11px;line-height:1.2;font-weight:750;color:var(--fu-muted);white-space:nowrap}
.fu-flow-edge.fu-link-ok{background:#ecfdf5}
.fu-flow-edge.fu-link-ok i,.fu-flow-edge.fu-link-ok b{color:var(--fu-success)}
.fu-flow-edge.fu-link-watch{background:#fff8e6}
.fu-flow-edge.fu-link-watch i,.fu-flow-edge.fu-link-watch b{color:var(--fu-warning)}
.fu-three-panels{margin-top:16px}
@media (min-width:1900px){.fu-flow-edge{min-width:250px;padding:10px 16px}.fu-flow-edge b{font-size:18px}.fu-flow-edge small{font-size:13px}.fu-flow-edge i{font-size:36px}}
@media(max-width:1100px){.fu-flow-edge{min-width:0;width:100%;transform:none;margin:8px 0}.fu-flow-edge i{transform:rotate(90deg)}}


/* Alpha 13 — ID Logistics colors + visitor TPH privacy */
.fu-btn-privacy{
  border-color:#c9d8e8;
  background:#f7fbff;
  color:var(--id-blue);
}
.fu-btn-privacy:hover{
  border-color:var(--id-blue-2);
}
.fu-field-masked{
  min-height:38px;
  padding:0 10px;
  border:1px solid var(--fu-border);
  border-radius:10px;
  background:var(--fu-surface-2);
}
.fu-mask-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:76px;
  height:24px;
  padding:0 10px;
  border-radius:999px;
  background:#eaf2fb;
  color:var(--id-blue);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-size:11px;
}
.fu-tph-mask-large{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 28px;
  border-radius:18px;
  background:#eef5fb;
  color:var(--id-blue);
  font-size:34px;
  letter-spacing:.02em;
}
.fu-tph-mask,
.fu-tph-mask-inline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#eef5fb;
  color:var(--id-blue);
  font-weight:900;
}
.fu-tph-mask{padding:8px 14px;font-size:15px}
.fu-tph-mask-inline{padding:4px 10px;font-size:.82em}

/* ID Logistics color mapping:
   Pick = ID blue, Pack = ID red, Ship = ID blue secondary. */
.fu-hero-flow{
  border-top:5px solid var(--id-blue);
}
.fu-flow-big>div:nth-child(1)>span,
.fu-pick-zone-section .fu-section-title,
.fu-pick-zone-card .fu-zone-name{
  color:var(--id-blue);
}
.fu-flow-big>div:nth-child(3)>span,
.fu-pack-panel .fu-section-title{
  color:var(--id-red);
}
.fu-flow-big>div:nth-child(5)>span,
.fu-ship-panel .fu-section-title{
  color:var(--id-blue-2);
}
.fu-flow-big>div:nth-child(1)>strong{
  color:var(--id-blue);
}
.fu-flow-big>div:nth-child(3)>strong{
  color:var(--id-red);
}
.fu-flow-big>div:nth-child(5)>strong{
  color:var(--id-blue-2);
}
.fu-pick-zone-section{
  --fu-section-accent: var(--id-blue);
}
.fu-pick-zone-card{
  border-top:5px solid var(--id-blue);
  background:linear-gradient(180deg, var(--id-blue-soft) 0, #fff 42px);
}
.fu-pick-zone-card:hover{
  border-color:#b8cadf;
  box-shadow:0 16px 34px rgba(0,69,125,.14);
}
.fu-pack-panel{
  border-top:5px solid var(--id-red);
}
.fu-ship-panel{
  border-top:5px solid var(--id-blue-2);
}
.fu-pack-panel .fu-section-head strong{
  color:var(--id-red);
}
.fu-ship-process-head>span{
  color:var(--id-blue-2);
}
.fu-workforce-grid .fu-workforce-group:nth-child(1){
  border-top:4px solid var(--id-blue);
}
.fu-workforce-grid .fu-workforce-group:nth-child(2){
  border-top:4px solid var(--id-red);
}
.fu-workforce-grid .fu-workforce-group:nth-child(3){
  border-top:4px solid var(--id-blue-2);
}
@media (min-width:1900px){
  .fu-tph-mask-large{font-size:44px;min-height:68px}
}


/* Alpha 14 — PPMultis1PPB batch tracker */
.fu-btn-batch{
  background:#f7fbff;
  color:var(--id-blue);
  border-color:#c9d8e8;
}
.fu-page-title{
  margin:0;
  font-size:28px;
  line-height:1.05;
  letter-spacing:-.03em;
}
.fu-batch-page .fu-section:first-child{
  margin-top:0;
}
.fu-batch-summary-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin:18px 0 22px;
}
.fu-batch-layout{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:16px;
  margin-bottom:24px;
}
.fu-muted-cell{
  color:var(--fu-muted);
  text-align:center;
  padding:22px!important;
}
.fu-batch-rule{
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px;
  border:1px solid var(--fu-border);
  border-radius:12px;
  background:var(--fu-surface-2);
  margin-top:10px;
}
.fu-batch-rule strong{
  min-width:48px;
  min-height:48px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:var(--id-blue);
  color:white;
  font-size:20px;
}
.fu-batch-rule span{
  color:var(--fu-muted);
  font-weight:700;
}
.fu-batch-list{
  display:grid;
  gap:14px;
}
.fu-batch-card{
  padding:18px 20px;
  border-top:5px solid var(--id-blue);
}
.fu-batch-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  margin-bottom:14px;
}
.fu-batch-head h3{
  margin:4px 0 0;
  font-size:22px;
  letter-spacing:-.02em;
}
.fu-batch-head>strong{
  font-size:28px;
  color:var(--id-blue);
}
.fu-batch-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.fu-batch-metric{
  min-width:0;
  border:1px solid var(--fu-border);
  border-radius:12px;
  padding:13px;
  background:var(--fu-surface-2);
}
.fu-batch-metric>span{
  display:block;
  color:var(--fu-muted);
  text-transform:uppercase;
  letter-spacing:.04em;
  font-size:11px;
  font-weight:900;
}
.fu-batch-metric>strong{
  display:block;
  margin-top:7px;
  font-size:27px;
  color:var(--fu-text);
}
.fu-batch-c2{border-top:4px solid var(--id-red)}
.fu-batch-c6{border-top:4px solid var(--id-blue)}
.fu-container-list{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:10px;
}
.fu-container-list span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:6px 8px;
  border-radius:999px;
  background:white;
  border:1px solid var(--fu-border);
  font-size:12px;
}
.fu-container-list b{
  color:var(--id-blue);
}
.fu-empty-mini{
  margin-top:10px;
  color:var(--fu-muted);
  font-weight:800;
}
@media (min-width:1900px){
  .fu-page-title{font-size:36px}
  .fu-batch-head h3{font-size:28px}
  .fu-batch-head>strong{font-size:36px}
  .fu-batch-metric>strong{font-size:34px}
  .fu-batch-metric>span{font-size:13px}
}
@media (max-width:1200px){
  .fu-batch-summary-grid,.fu-batch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fu-batch-layout{grid-template-columns:1fr}
}
@media (max-width:700px){
  .fu-batch-summary-grid,.fu-batch-grid{grid-template-columns:1fr}
  .fu-batch-head{flex-direction:column}
}


/* Alpha 15 — Batch Control Room */
.fu-batch-priority{margin-top:18px}
.fu-batch-secondary{margin-top:24px}
.fu-batch-filters{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.fu-batch-filter{
  border:1px solid var(--fu-border);
  background:white;
  color:var(--fu-text);
  border-radius:999px;
  min-height:36px;
  padding:0 13px;
  font-weight:850;
  cursor:pointer;
}
.fu-batch-filter span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:24px;
  min-height:22px;
  margin-left:7px;
  padding:0 7px;
  border-radius:999px;
  background:var(--fu-surface-2);
  color:var(--fu-muted);
  font-size:12px;
}
.fu-batch-filter.active{
  background:var(--id-blue);
  border-color:var(--id-blue);
  color:white;
}
.fu-batch-filter.active span{
  background:rgba(255,255,255,.18);
  color:white;
}
.fu-batch-control-card{
  border-top:5px solid var(--id-blue);
}
.fu-batch-head-right{
  display:flex;
  align-items:flex-end;
  flex-direction:column;
  gap:8px;
}
.fu-batch-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  line-height:1;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.fu-batch-status-pick{background:#fff8e6;color:var(--fu-warning)}
.fu-batch-status-drop{background:#fff1f2;color:var(--id-red)}
.fu-batch-status-done{background:#ecfdf5;color:var(--fu-success)}
.fu-batch-status-mixed{background:#eef6ff;color:var(--id-blue)}
.fu-batch-status-empty{background:var(--fu-surface-2);color:var(--fu-muted)}
.fu-ready-compact{
  max-height:420px;
  overflow:auto;
  padding-right:6px;
}
.fu-ready-day{
  border:1px solid var(--fu-border);
  border-radius:12px;
  background:var(--fu-surface-2);
  overflow:hidden;
  margin-bottom:10px;
}
.fu-ready-day-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:11px 13px;
  background:#eef5fb;
  color:var(--id-blue);
}
.fu-ready-day-head strong{
  font-size:15px;
}
.fu-ready-day-head span{
  font-weight:900;
}
.fu-ready-line{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:9px 13px;
  border-top:1px solid var(--fu-border);
  background:white;
}
.fu-ready-line span{
  color:var(--fu-muted);
  font-weight:750;
}
.fu-ready-line strong{
  font-variant-numeric:tabular-nums;
}
@media (min-width:1900px){
  .fu-batch-filter{font-size:15px;min-height:42px;padding:0 16px}
  .fu-batch-status{font-size:13px;padding:8px 12px}
  .fu-ready-compact{max-height:560px}
}
@media (max-width:900px){
  .fu-batch-filters{justify-content:flex-start}
}


/* Alpha 16 — compact batch view */
.fu-batch-compact-card{
  padding:12px 16px;
  border-top:4px solid var(--id-blue);
}
.fu-batch-compact-main{
  display:grid;
  grid-template-columns:minmax(260px,1fr) auto;
  gap:18px;
  align-items:center;
}
.fu-batch-compact-id{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
.fu-batch-compact-id>strong{
  font-size:23px;
  line-height:1.05;
  letter-spacing:-.02em;
  white-space:nowrap;
}
.fu-batch-compact-meta{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:16px;
  color:var(--fu-muted);
  font-weight:850;
}
.fu-batch-compact-meta b{
  color:var(--id-blue);
  font-size:24px;
  white-space:nowrap;
}
.fu-batch-compact-flow{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin-top:10px;
}
.fu-batch-pill{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 11px;
  border:1px solid var(--fu-border);
  border-radius:11px;
  background:var(--fu-surface-2);
}
.fu-batch-pill span{
  color:var(--fu-muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-weight:900;
}
.fu-batch-pill strong{
  font-size:21px;
  line-height:1;
}
.fu-batch-pill-empty{
  opacity:.58;
  background:#fbfdff;
}
.fu-batch-pill.fu-batch-c2{
  border-left:4px solid var(--id-red);
}
.fu-batch-pill.fu-batch-c6{
  border-left:4px solid var(--id-blue);
}
.fu-batch-pill.fu-batch-drop{
  border-left:4px solid var(--fu-warning);
}
.fu-batch-pill.fu-batch-done{
  border-left:4px solid var(--fu-success);
}
.fu-batch-compact-containers{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}
.fu-compact-containers{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
}
.fu-compact-containers>span{
  color:var(--fu-muted);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.fu-compact-containers>b{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border-radius:999px;
  background:white;
  border:1px solid var(--fu-border);
  color:var(--id-blue);
  font-size:12px;
}
@media (min-width:1900px){
  .fu-batch-compact-card{padding:14px 18px}
  .fu-batch-compact-id>strong{font-size:29px}
  .fu-batch-compact-meta b{font-size:31px}
  .fu-batch-pill{padding:11px 13px}
  .fu-batch-pill strong{font-size:27px}
  .fu-batch-pill span{font-size:12px}
}
@media (max-width:950px){
  .fu-batch-compact-main{grid-template-columns:1fr}
  .fu-batch-compact-meta{justify-content:flex-start}
  .fu-batch-compact-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
  .fu-batch-compact-id{align-items:flex-start;flex-direction:column}
  .fu-batch-compact-flow{grid-template-columns:1fr}
}


/* Alpha 17 — contextual compact header */
.fu-topbar-v2{
  gap:18px;
}
.fu-topbar-v2 .fu-top-actions{
  flex:1;
  justify-content:flex-end;
  gap:8px;
}
.fu-control-group{
  display:flex;
  align-items:center;
  gap:8px;
  padding:6px;
  border:1px solid rgba(223,231,241,.9);
  border-radius:14px;
  background:rgba(248,250,252,.82);
}
.fu-control-group .fu-btn,
.fu-control-group .fu-field input,
.fu-control-group .fu-field-masked{
  min-height:34px;
}
.fu-control-group .fu-btn{
  border-radius:9px;
  padding:0 12px;
}
.fu-control-group-planning{
  background:#fff;
}
.fu-control-group-plan{
  background:#f7fbff;
  border-color:#cfe0f3;
}
.fu-header-context{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:48px;
  padding:7px 14px;
  border:1px solid #cfe0f3;
  border-radius:14px;
  background:#f7fbff;
  line-height:1.1;
}
.fu-header-context span{
  color:var(--fu-muted);
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.fu-header-context strong{
  margin-top:3px;
  color:var(--id-blue);
  font-size:15px;
  letter-spacing:.01em;
}
.fu-topbar-batch-mode .fu-top-actions{
  flex:0 1 auto;
}
.fu-topbar-batch-mode .fu-control-group{
  background:#fff;
}
.fu-topbar-batch-mode{
  min-height:68px;
}
.fu-topbar-v2 .fu-btn-batch{
  border-color:#b9d2eb;
  color:var(--id-blue);
}
.fu-topbar-v2 .fu-btn-batch:hover{
  border-color:var(--id-blue);
}
@media (min-width:1900px){
  .fu-control-group{gap:10px;padding:7px}
  .fu-control-group .fu-btn{padding:0 16px}
  .fu-header-context{min-height:56px;padding:8px 18px}
  .fu-header-context strong{font-size:18px}
}
@media (max-width:1350px){
  .fu-topbar-v2{
    align-items:flex-start;
    flex-direction:column;
    padding-top:12px;
    padding-bottom:12px;
  }
  .fu-topbar-v2 .fu-top-actions{
    width:100%;
    justify-content:flex-start;
    flex-wrap:wrap;
  }
}
@media (max-width:700px){
  .fu-control-group{
    width:100%;
    flex-wrap:wrap;
  }
  .fu-header-context{
    width:100%;
  }
}


/* Alpha 25 — one clear theoretical FTE value */
.fu-process-reco{
  min-width:120px;
}
.fu-process-reco strong{
  white-space:nowrap;
}


/* Alpha 26 — privacy blur instead of replacement text */
.fu-icon-btn{
  width:42px;
  min-width:42px;
  padding:0!important;
  display:inline-grid;
  place-items:center;
}
.fu-icon-btn svg{
  width:20px;
  height:20px;
}
.fu-sensitive,
.fu-sensitive-input{
  filter:blur(5px);
  user-select:none;
}
.fu-sensitive{
  display:inline-block;
  border-radius:8px;
}
.fu-sensitive-large{
  filter:blur(7px);
}
.fu-sensitive-inline{
  filter:blur(5px);
}
.fu-sensitive-input{
  text-shadow:0 0 10px currentColor;
}
.fu-sensitive-input:focus{
  filter:none;
  text-shadow:none;
}


/* Alpha 30 — next CPT pickable count visible even when the aside is open */
.fu-next-cpt-pill{
  display:inline-flex;
  align-items:center;
  margin-left:8px;
  padding:4px 10px;
  border-radius:999px;
  background:#eaf4ff;
  border:1px solid #c9dff7;
  color:#005596;
  font-weight:800;
  white-space:nowrap;
}
.fu-next-cpt-muted{
  display:inline-flex;
  align-items:center;
  margin-left:8px;
  color:#6b7890;
  font-weight:700;
}


/* Alpha 31 — next CPT pickables visible inside each Pick Zone card */
.fu-zone-next-cpt{
  display:inline-flex;
  align-items:center;
  gap:4px;
  margin-top:8px;
  padding:5px 9px;
  border-radius:999px;
  background:#eaf4ff;
  border:1px solid #c9dff7;
  color:#005596;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}
.fu-zone-next-cpt strong{
  font-weight:950;
}
@media (min-width:1900px){
  .fu-zone-next-cpt{
    font-size:14px;
    padding:6px 11px;
  }
}


/* Alpha 33 — stronger privacy blur for 75" screens */
.fu-sensitive,
.fu-sensitive-input{
  filter:blur(10px)!important;
  opacity:.72;
}
.fu-sensitive-large{
  filter:blur(15px)!important;
  opacity:.68;
}
.fu-sensitive-inline{
  filter:blur(10px)!important;
  opacity:.72;
}
.fu-sensitive-input{
  text-shadow:0 0 18px currentColor!important;
}
.fu-sensitive-input:focus{
  filter:blur(6px)!important;
  text-shadow:0 0 12px currentColor!important;
}


/* Alpha 36 — optional Next CPT detail by cell and process in Pick drawer */
.fu-next-cpt-detail{
  margin:14px 0 18px;
  border:1px solid #d8e4f2;
  border-radius:14px;
  background:#f8fbff;
  overflow:hidden;
}
.fu-next-cpt-detail summary{
  cursor:pointer;
  list-style:none;
  padding:12px 14px;
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  color:#005596;
  font-weight:900;
}
.fu-next-cpt-detail summary::-webkit-details-marker{
  display:none;
}
.fu-next-cpt-detail summary::before{
  content:"▸";
  margin-right:8px;
  transition:transform .15s ease;
}
.fu-next-cpt-detail[open] summary::before{
  transform:rotate(90deg);
}
.fu-next-cpt-detail summary span{
  color:#001b45;
  background:#eaf4ff;
  border:1px solid #c9dff7;
  border-radius:999px;
  padding:3px 8px;
  white-space:nowrap;
}
.fu-next-cpt-detail table{
  width:100%;
  border-collapse:collapse;
  background:#fff;
}
.fu-next-cpt-detail th,
.fu-next-cpt-detail td{
  padding:9px 12px;
  border-top:1px solid #e5edf7;
  text-align:left;
  font-size:13px;
}
.fu-next-cpt-detail th{
  color:#5f6f87;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-size:11px;
}
.fu-next-cpt-detail .num{
  text-align:right;
}
