:root{--bg:#f5efe4;--panel:#fffcf7d1;--panel-strong:#fffaf2f2;--line:#3f342a1f;--text:#271f1b;--muted:#7c6d5f;--accent:#d25a1e;--accent-soft:#f5cdb9;--blue:#366e96;--green:#4f7f57;--yellow:#d6a117;--pink:#c95d8b;--shadow:0 24px 70px #5234191f;--radius-xl:28px;--radius-lg:22px;--radius-md:16px;--radius-sm:12px;--sidebar-width:312px;--sidebar-collapsed-width:96px;--app-scale:.73;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html,body{min-height:100%;color:var(--text);background:radial-gradient(circle at 0 0,#e2b17142,#0000 28%),radial-gradient(circle at 100% 100%,#5b8caf2e,#0000 26%),linear-gradient(#f7f2e8 0%,#efe6d8 100%);margin:0}body{overflow:hidden}button{font:inherit}.login-page{background:linear-gradient(135deg, #3d2c1ef5, #366e96e6), var(--bg);place-items:center;min-height:100vh;padding:32px 20px;display:grid}.login-panel{border-radius:var(--radius-lg);background:#fffcf7f5;border:1px solid #ffffff59;width:min(100%,430px);padding:42px;box-shadow:0 28px 80px #191c2240}.login-brand h1{color:var(--text);margin:0;font-size:30px;line-height:1.25}.login-brand p{color:var(--muted);margin:12px 0 0;line-height:1.65}.login-brand .login-kicker{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:700}.login-form{gap:18px;margin-top:30px;display:grid}.login-field{color:var(--text);gap:8px;font-size:14px;font-weight:600;display:grid}.login-field input{border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;min-height:48px;color:var(--text);font:inherit;background:#fff;outline:none;padding:0 14px;transition:border-color .16s,box-shadow .16s}.login-field input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #366e9629}.login-field input:disabled{cursor:wait;opacity:.65}.login-error{color:#b64032;margin:-2px 0 0;font-size:13px}.login-submit{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;border:0;min-height:50px;margin-top:4px;font-weight:700;transition:background .16s,transform .16s}.login-submit:hover:not(:disabled){background:#b94816;transform:translateY(-1px)}.login-submit:disabled{cursor:wait;opacity:.65}.auth-loading{min-height:100vh;color:var(--muted);background:var(--bg);place-items:center;display:grid}.app-shell{grid-template-columns:var(--sidebar-width) 1fr;height:calc(100vh / var(--app-scale));transform:scale(var(--app-scale));transform-origin:0 0;width:calc(100% / var(--app-scale));transition:grid-template-columns .2s;display:grid;overflow:hidden}.workspace-session-bar{min-height:42px;color:var(--muted);justify-content:flex-end;align-items:center;gap:14px;font-size:13px;display:flex}.session-logout-btn{border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;background:#fffcf7b8;padding:8px 12px}.session-logout-btn:hover{color:var(--accent);border-color:#d25a1e73}.app-shell--sidebar-collapsed{grid-template-columns:var(--sidebar-collapsed-width) 1fr}.sidebar{color:#f7efe5;background:#3d2c1ee6;border-right:1px solid #ffffff14;flex-direction:column;gap:22px;min-height:0;padding:28px 24px;transition:padding .2s,gap .2s;display:flex;overflow:auto}.sidebar-toggle-row{justify-content:flex-end;display:flex}.sidebar-toggle-btn{width:42px;height:42px;color:inherit;cursor:pointer;background:#ffffff14;border:1px solid #ffffff29;border-radius:14px}.sidebar--collapsed{align-items:center;gap:14px;padding:24px 14px}.sidebar--collapsed .sidebar-toggle-row{justify-content:center;width:100%}.sidebar--collapsed .main-nav{width:100%}.brand{padding:8px 0 18px}.brand-kicker,.eyebrow,.panel-label{letter-spacing:.18em;text-transform:uppercase;color:#ffffff9e;margin:0 0 8px;font-size:12px}.brand h1,.topbar h2,.section-head h3{margin:0;font-weight:700;line-height:1.15}.brand h1{font-size:31px}.brand-copy,.section-copy,#focus-copy{color:#f7efe5c7;margin:12px 0 0;line-height:1.65}.main-nav{gap:10px;display:grid}.nav-btn{color:inherit;text-align:left;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:18px;padding:16px 18px;transition:transform .18s,background .18s,border-color .18s;position:relative;overflow:hidden}.nav-btn--collapsed{text-align:center;min-height:54px;padding:14px 0}.nav-btn:after{content:"";transform-origin:0;background:linear-gradient(90deg,#ffaf68 0%,#ffe2af 100%);height:3px;transition:transform .22s;position:absolute;inset:auto 18px 0;transform:scaleX(0)}.nav-btn:hover,.nav-btn.active{background:#ffffff21;border-color:#ffffff38;transform:translate(4px)}.sidebar--collapsed .nav-btn:hover,.sidebar--collapsed .nav-btn.active{transform:translate(0)}.nav-btn.active:after{transform:scaleX(1)}.sidebar-panel{background:#ffffff14;border:1px solid #ffffff14;border-radius:20px;padding:18px}.sidebar-panel h2{margin:0;font-size:24px}.mini-metrics{gap:14px;display:grid}.mini-metrics div{color:#f7efe5e0;justify-content:space-between;gap:16px;display:flex}.mini-metrics span{color:#f7efe59e}.workspace{flex-direction:column;gap:18px;min-width:0;min-height:0;padding:24px;display:flex;overflow:auto}.topbar{justify-content:space-between;align-items:flex-start;gap:18px;padding:8px 8px 0;display:flex}.topbar .eyebrow{color:var(--muted);margin-bottom:10px}.topbar h2{font-size:36px}.topbar-meta{flex-wrap:wrap;gap:12px;display:flex}.topbar-meta span{color:var(--muted);background:#fffcf7b3;border:1px solid #50392214;border-radius:999px;padding:10px 14px}.view{gap:18px;animation:.26s fade-slide;display:none}.view.active{display:grid}@keyframes fade-slide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hero-grid,.panel-grid{gap:18px;display:grid}.hero-grid{grid-template-columns:minmax(0,1fr)}.panel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-card,.panel-card{background:var(--panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-xl);box-shadow:var(--shadow);border:1px solid #553e2814}.hero-card{padding:24px}.panel-card{padding:22px}.timeline-panel{gap:6px;padding:8px 14px 7px;display:grid}.timeline-panel__head{justify-content:space-between;align-items:center;gap:10px;min-height:18px;margin-bottom:0}.timeline-headline{align-items:center;gap:10px;min-width:0;display:flex}.timeline-title{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;margin:0;font-size:11px}.timeline-panel__head strong{color:var(--muted);white-space:nowrap;font-size:11px;font-weight:600}.timeline-toolbar{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.timeline-play-btn{min-width:84px;padding:6px 10px;font-size:11px}.timeline-speed-field{color:var(--muted);white-space:nowrap;align-items:center;gap:5px;font-size:11px;display:inline-flex}.timeline-speed-field select{color:var(--text);font:inherit;background:#fffcf7db;border:1px solid #553e281a;border-radius:999px;padding:4px 8px}.timeline-slider{width:100%;accent-color:var(--accent);height:7px;margin-top:-2px}.timeline-source-notice{color:var(--muted);margin:0;font-size:11px;line-height:1.35}.timeline-source-notice--warning{color:var(--yellow)}.timeline-source-notice--error{color:var(--accent)}.snapshot-chip{color:var(--accent);background:#d25a1e1a;border-radius:999px;margin-top:10px;padding:6px 10px;font-size:12px;display:inline-flex}.section-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.section-head .eyebrow,.panel-card .eyebrow,.section-copy{color:var(--muted)}.summary-card .section-head{align-items:flex-start;gap:20px}.overview-title-block{min-width:0}.overview-title-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.overview-title-row h3{flex:none}.overview-inline-copy{min-width:280px;max-width:820px;color:var(--muted);flex:420px;margin:0;font-size:15px;line-height:1.6}.overview-inline-copy:before{content:"";vertical-align:-.15em;background:#7c6d5f47;width:1px;height:1.1em;margin:0 16px 0 2px;display:inline-block}.hero-tabs{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-left:auto;display:inline-flex}.hero-tab{color:var(--muted);letter-spacing:.02em;cursor:pointer;background:#fffcf7a8;border:1px solid #553e281f;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:700;transition:transform .18s,background .18s,border-color .18s,color .18s,box-shadow .18s}.hero-tab:hover{color:#9a4420;background:#fff5ebeb;border-color:#d25a1e3d;transform:translateY(-1px);box-shadow:0 12px 24px #52341914}.hero-tab[aria-selected=true]{color:var(--accent);background:linear-gradient(135deg,#d25a1e24,#ffb77f33);border-color:#d25a1e47;box-shadow:inset 0 0 0 1px #ffffff61,0 14px 24px #5234191a}.hero-panel{gap:16px;min-width:0;display:grid}.buffer-panel{gap:14px;min-width:0;padding-top:2px;display:grid}.ghost-btn{color:var(--accent);cursor:pointer;background:#d25a1e14;border:1px solid #d25a1e2e;border-radius:999px;padding:12px 16px}.flow-stage{background:radial-gradient(circle at 12% 18%,#ffc07b47,#0000 26%),radial-gradient(circle at 88% 82%,#5b8caf33,#0000 28%),linear-gradient(145deg,#fffaf1f5,#f8f0e1db);border:1px solid #5c463014;border-radius:24px;margin-top:18px;padding:22px;overflow:auto}.flow-scene{position:absolute;inset:0;transform:translate(55px)}.flow-stage__inner{background-color:#fffcf794;background-image:linear-gradient(90deg,#553e280e 1px,#0000 1px),linear-gradient(#553e280e 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:48px 48px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:22px;width:100%;min-width:1080px;min-height:360px;position:relative;overflow:hidden}.flow-stage__inner:before{content:"";opacity:.28;pointer-events:none;background:linear-gradient(90deg,#0000 0 5%,#d25a1e4d 5% 34%,#0000 34%),linear-gradient(90deg,#0000 34%,#d25a1e4d 34% 65%,#0000 65%),linear-gradient(90deg,#0000 65%,#d25a1e4d 65% 95%,#0000 95%);position:absolute;inset:64px 68px}.flow-connectors{pointer-events:none;position:absolute;inset:0}.connector{--dot-delay:0s;display:block;position:absolute}.connector.horizontal{background:linear-gradient(90deg,#d25a1e2e,#d25a1ee0);border-radius:999px;height:3px}.connector.horizontal:before{content:"";width:10px;height:10px;animation:3.2s linear infinite flow-dot-forward;animation-delay:var(--dot-delay);background:#fff6ee;border-radius:50%;position:absolute;top:50%;left:0;transform:translateY(-50%);box-shadow:0 0 0 4px #d25a1e2e,0 0 14px #d25a1e61}.connector.horizontal:after{content:"";border-top:3px solid #d25a1ee0;border-right:3px solid #d25a1ee0;width:9px;height:9px;position:absolute;top:50%;right:-1px;transform:translateY(-50%)rotate(45deg)}.connector.horizontal.reverse{background:linear-gradient(90deg,#d25a1ee0,#d25a1e2e)}.connector.horizontal.reverse:before{animation-name:flow-dot-reverse}.connector.horizontal.reverse:after{border-top:3px solid #d25a1ee0;border-right:3px solid #d25a1ee0;left:-1px;right:auto;transform:translateY(-50%)rotate(225deg)}.connector.vertical{background:linear-gradient(#d25a1e2e,#d25a1ee0);width:3px}.connector.vertical:before{content:"";width:10px;height:10px;animation:3.2s linear infinite flow-dot-down;animation-delay:var(--dot-delay);background:#fff6ee;border-radius:50%;position:absolute;top:0;left:50%;transform:translate(-50%);box-shadow:0 0 0 4px #d25a1e2e,0 0 14px #d25a1e61}.connector.vertical:after{content:"";border-top:3px solid #d25a1ee0;border-right:3px solid #d25a1ee0;width:9px;height:9px;position:absolute;bottom:-1px;left:50%;transform:translate(-50%)rotate(135deg)}.h-01{--dot-delay:0s;width:calc(8% - 16px);top:94px;left:calc(11% + 8px)}.h-02{--dot-delay:.2s;width:calc(8% - 16px);top:94px;left:calc(27% + 8px)}.h-03{--dot-delay:.4s;width:calc(8% - 16px);top:94px;left:calc(43% + 8px)}.h-04{--dot-delay:.6s;width:calc(8% - 16px);top:94px;left:calc(59% + 8px)}.h-05{--dot-delay:.8s;width:calc(8% - 16px);top:94px;left:calc(75% + 8px)}.h-06{--dot-delay:1.4s;width:calc(5% - 4px);top:260px;left:78%}.h-07{--dot-delay:1.6s;width:calc(5% - 4px);top:260px;left:calc(64% + 6px)}.h-08{--dot-delay:1.8s;width:calc(5% - 4px);top:260px;left:calc(50% + 20px)}.h-09{--dot-delay:2s;width:calc(5% - 4px);top:260px;left:calc(37% + 10px)}.h-10{--dot-delay:2.2s;width:calc(5% - 4px);top:260px;left:calc(23% + 20px)}.h-11{--dot-delay:2.2s;width:calc(5% - 4px);top:260px;left:calc(10% + 10px)}.v-01{--dot-delay:1.1s;height:60px;top:150px;left:calc(86% + 8px)}@keyframes flow-dot-forward{0%,12%{opacity:0;left:0}20%{opacity:1}88%{opacity:1;left:calc(100% - 10px)}to{opacity:0;left:calc(100% - 10px)}}@keyframes flow-dot-reverse{0%,12%{opacity:0;left:calc(100% - 10px)}20%{opacity:1}88%{opacity:1;left:0}to{opacity:0;left:0}}@keyframes flow-dot-down{0%,12%{opacity:0;top:0}20%{opacity:1}88%{opacity:1;top:calc(100% - 10px)}to{opacity:0;top:calc(100% - 10px)}}@media (prefers-reduced-motion:reduce){.connector.horizontal:before,.connector.vertical:before{opacity:0;animation:none}}.hotspot{width:150px;min-height:84px;color:var(--text);text-align:left;cursor:pointer;background:linear-gradient(135deg,#fffffff0,#fff1e0db);border:0;border-radius:22px;grid-template-columns:auto 1fr;gap:4px 10px;padding:14px 16px;transition:transform .18s,box-shadow .18s,background .18s;display:grid;position:absolute;box-shadow:inset 0 0 0 1px #ffffff7a,0 18px 34px #52341921}.hotspot:hover{background:linear-gradient(135deg,#fff6ebfa,#ffddbce6);transform:translateY(-5px)scale(1.02);box-shadow:inset 0 0 0 2px #d25a1e2e,0 24px 42px #52341933}.node-index{width:34px;height:34px;color:var(--accent);background:#d25a1e1f;border-radius:12px;grid-row:span 2;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:inline-flex}.hotspot-title{font-size:19px;font-weight:700}.hotspot-meta{color:var(--muted);font-size:12px}.process-01{top:52px;left:3%}.process-02{top:52px;left:19%}.process-03{top:52px;left:35%}.process-04{top:52px;left:51%}.process-05{top:52px;left:67%}.process-06{top:52px;left:83%}.process-07{top:218px;left:83%}.process-08{top:218px;left:69.5%}.process-09{top:218px;left:56%}.process-10{top:218px;left:42.5%}.process-11{top:218px;left:29%}.process-12{top:218px;left:15.5%}.process-13{top:218px;left:2%}.buffer-panel--columns{background:radial-gradient(circle at 14% 16%,#ffc4783d,#0000 24%),linear-gradient(145deg,#fff9f0f5,#f3e9d7e0);border:1px solid #5c463014;border-radius:26px;margin-top:18px;padding:22px 24px 18px;overflow:visible}.buffer-columns{scroll-snap-type:x proximity;grid-auto-columns:minmax(78px,1fr);grid-auto-flow:column;align-items:end;gap:18px;min-height:272px;padding:72px 4px 10px;display:grid;overflow-x:auto}.buffer-column{scroll-snap-align:center;justify-items:center;gap:14px;min-width:78px;display:grid;position:relative}.buffer-column__bar{background:linear-gradient(#ddd1c0b8,#c9b8a06b);border:1px solid #553e2814;border-radius:18px;width:56px;height:180px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffb8,0 16px 28px #52341914}.buffer-column__fill{border-radius:0 0 17px 17px;min-height:12px;transition:height .18s;position:absolute;inset:auto 0 0}.buffer-column[data-level=low] .buffer-column__fill{background:linear-gradient(#81cb95,#4d9f63)}.buffer-column[data-level=mid] .buffer-column__fill{background:linear-gradient(#f8bc62,#df8b2f)}.buffer-column[data-level=high] .buffer-column__fill{background:linear-gradient(#f28a53,#cf5924)}.buffer-column__meta{text-align:center;justify-items:center;gap:4px;display:grid}.buffer-column__name{color:#5b4634;font-size:13px;font-weight:700}.buffer-column__value{color:#4d9f63;font-size:24px;font-weight:800;line-height:1}.buffer-column[data-level=mid] .buffer-column__value{color:#c7771f}.buffer-column[data-level=high] .buffer-column__value{color:#bd5123}.buffer-column__tooltip{color:#fff8f1eb;opacity:0;pointer-events:none;background:#4c3827f5;border:1px solid #ffdebe29;border-radius:14px;gap:4px;width:168px;padding:10px 12px;transition:opacity .16s,transform .16s;display:grid;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%)translateY(6px);box-shadow:0 18px 34px #52341933}.buffer-column__tooltip strong{font-size:13px}.buffer-column__tooltip p,.buffer-column__tooltip small{font-size:12px;line-height:1.45}.buffer-column__tooltip p{margin:0}.buffer-column:hover .buffer-column__tooltip,.buffer-column:focus-within .buffer-column__tooltip{opacity:1;transform:translate(-50%)translateY(0)}.buffer-kind{min-width:48px;color:var(--accent);background:#d25a1e1a;border-radius:999px;justify-content:center;align-items:center;padding:5px 8px;font-size:11px;font-weight:700;display:inline-flex}.buffer-row strong{font-size:14px}.buffer-row small{color:var(--muted);font-size:12px}.buffer-binding-list{flex-wrap:wrap;gap:6px;display:flex}.buffer-binding-chip{color:#66584d;letter-spacing:.04em;background:#ffffff8c;border:1px solid #553e2814;border-radius:8px;align-items:center;gap:5px;padding:4px 8px;font-size:11px;display:inline-flex}.buffer-binding-chip strong{color:var(--text);font-size:11px;font-weight:700}.buffer-binding-chip.is-order{color:#9b4b24;background:linear-gradient(135deg,#d25a1e24,#d25a1e0f);border-color:#d25a1e24}.buffer-binding-chip.is-line{color:#335c79;background:linear-gradient(135deg,#366e9624,#366e960f);border-color:#366e9629}.buffer-binding-chip.is-source{color:#44614a;background:linear-gradient(135deg,#4f7f5724,#4f7f570f);border-color:#4f7f5729}.buffer-track{background:#58432d14;border-radius:999px;height:12px;position:relative;overflow:hidden}.buffer-fill{border-radius:inherit;position:absolute;inset:0 auto 0 0}.trend-panel{grid-template-columns:1.2fr .8fr;align-items:start;gap:20px;display:grid}.trend-panel p{margin:0 0 12px;font-weight:600}.mini-chart{background:linear-gradient(#fffcf7d9,#f8f0e1cc);border-radius:20px;width:100%;height:auto}.rank-list{gap:12px;display:grid}.rank-row{background:#fffcf7c2;border-radius:16px;justify-content:space-between;gap:12px;padding:14px 16px;display:flex}.subnav-wrap{gap:16px;display:grid}.chip-row{flex-wrap:wrap;gap:10px;display:flex}.chip{color:var(--muted);cursor:pointer;background:#fffcf7b3;border:1px solid #4636281a;border-radius:999px;padding:10px 16px}.chip.active{color:var(--accent);background:#d25a1e1f;border-color:#d25a1e33}.machine-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.info-stat{background:var(--panel-strong);box-shadow:var(--shadow);border:1px solid #553e2814;border-radius:20px;padding:18px 20px}.info-stat span{color:var(--muted);margin-bottom:10px;display:block}.info-stat strong{font-size:24px;display:block}.machine-grid-layout{grid-template-columns:1.2fr .8fr;align-items:start}.machine-grid-layout .panel-card{flex-direction:column;min-height:0;display:flex}.machine-grid-layout .section-head{z-index:1;background:var(--panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);margin-bottom:14px;padding-bottom:10px;position:sticky;top:0}.line-detail-copy{max-width:920px;color:var(--muted);margin:0;font-size:14px;line-height:1.55}.line-detail-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.line-detail-metrics .info-stat{border-radius:16px;padding:14px 16px;box-shadow:0 12px 28px #52341914}.line-detail-metrics .info-stat span{margin-bottom:6px;font-size:12px}.line-detail-metrics .info-stat strong{font-size:19px}.info-stat--wide{grid-column:span 2}.info-stat--wide strong{font-size:17px;line-height:1.35}.line-detail-layout{grid-template-columns:minmax(0,1.68fr) minmax(280px,.82fr);align-items:start}.switch-command-bar{background:linear-gradient(135deg,#fff8eefa,#ffeedbdb),#fffcf7eb;border-radius:24px;gap:14px;padding:18px 20px;display:grid;box-shadow:0 18px 38px #52341914}.switch-command-bar__intro{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.switch-command-bar__copy{max-width:560px;color:var(--muted);margin:0;font-size:14px;line-height:1.55}.switch-shortcuts{flex-wrap:wrap;gap:10px;display:flex}.switch-shortcuts .ghost-btn{padding:10px 14px}.line-process-map-panel,.line-focus-panel{flex-direction:column;min-height:0;display:flex}.line-detail-layout .panel-card{border-radius:22px;padding:18px;box-shadow:0 18px 38px #52341914}.line-detail-layout .section-head{margin-bottom:8px}.line-process-map{gap:12px;max-height:min(97.5vh,1180px);padding-right:4px;display:grid;overflow:auto}.line-flow-row{grid-template-columns:138px minmax(0,1fr) 138px;align-items:center;gap:12px;display:grid}.line-flow-row.current .process-anchor{background:#fff6efeb;border-color:#d25a1e38}.line-flow-row.current .process-stage-card{border-color:#d25a1e29;box-shadow:0 16px 30px #d25a1e1f}.process-anchor{text-align:center;background:#fffcf7c7;border:1px solid #553e2814;border-radius:18px;padding:14px 12px;position:relative;box-shadow:0 12px 24px #5234190f}.line-flow-row .process-anchor:first-child:after,.line-flow-row .process-anchor:last-child:before{content:"";border-top:2px solid #553e2829;width:18px;position:absolute;top:50%}.line-flow-row .process-anchor:first-child:after{right:-18px}.line-flow-row .process-anchor:last-child:before{left:-18px}.process-anchor__label{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin-bottom:6px;font-size:11px;display:block}.process-anchor strong{font-size:19px;line-height:1.3;display:block}.process-stage-card{--stage-tone:#d25a1e;background:linear-gradient(#fffcf7f5,#fff7f1d1),#fffcf7e0;border:1px solid #553e2814;border-radius:20px;padding:16px 16px 18px;position:relative;overflow:hidden;box-shadow:0 14px 28px #52341912}.process-stage-card:before{content:"";background:var(--stage-tone);width:5px;position:absolute;inset:0 auto 0 0}.process-stage-head,.line-focus-card__head,.line-stage-machine__head,.line-focus-machine__head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.process-stage-head h4,.line-focus-card h4{margin:4px 0 0;font-size:22px}.process-stage-meta{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.stage-loop-chip{color:var(--muted);background:#271f1b0f;border-radius:999px;align-items:center;padding:5px 10px;font-size:11px;display:inline-flex}.process-stage-summary{color:var(--muted);margin:8px 0 0;font-size:13px}.process-machine-cluster{gap:10px;margin-top:12px;padding:6px 38px;display:grid;position:relative}.process-spine{background:#553e2829;width:2px;position:absolute;top:20px;bottom:20px}.process-spine--left{left:10px}.process-spine--right{right:10px}.process-spine--left:before,.process-spine--right:after{content:"";border-top:6px solid #0000;border-bottom:6px solid #0000;width:0;height:0;margin-top:-6px;position:absolute;top:50%}.process-spine--left:before{border-right:8px solid #553e2838;left:-1px}.process-spine--right:after{border-left:8px solid #553e2838;right:-1px}.line-stage-machine,.line-focus-machine{background:#fffcf7d6;border:1px solid #553e2814;border-radius:14px;padding:12px 14px;position:relative}.line-stage-machine:before,.line-stage-machine:after{content:"";border-top:2px solid #553e2829;width:22px;position:absolute;top:50%}.line-stage-machine:before{left:-22px}.line-stage-machine:after{right:-22px}.line-stage-machine strong,.line-focus-machine strong{font-size:14px}.line-stage-machine p,.line-stage-machine small,.line-focus-machine p,.line-focus-machine small{color:var(--muted);margin:0;font-size:12px}.line-stage-machine p+p,.line-focus-machine p+p{margin-top:4px}.line-stage-machine small,.line-focus-machine small{margin-top:6px;line-height:1.35;display:block}.line-focus-panel{gap:12px}.line-focus-card{--focus-tone:#d25a1e;background:linear-gradient(#fffcf7f5,#fff6efd6),#fffcf7e0;border:1px solid #553e2814;border-radius:20px;padding:16px;position:relative;overflow:hidden;box-shadow:0 14px 28px #52341912}.line-focus-card:before{content:"";background:var(--focus-tone);width:5px;position:absolute;inset:0 auto 0 0}.line-focus-card__head h4{font-size:24px}.line-focus-links,.line-focus-stats{gap:8px;margin-top:12px;display:grid}.line-focus-links{grid-template-columns:repeat(2,minmax(0,1fr))}.line-focus-links div,.line-focus-stats div{background:#fffcf7bd;border:1px solid #553e2814;border-radius:14px;padding:10px 12px}.line-focus-links span,.line-focus-stats span{color:var(--muted);margin-bottom:4px;font-size:12px;display:block}.line-focus-machine-list{gap:8px;display:grid}.switch-panel__reset{white-space:nowrap}.switch-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.switch-form-grid--toolbar{grid-template-columns:minmax(118px,.88fr) minmax(118px,.88fr) minmax(96px,.52fr) minmax(118px,.88fr) minmax(118px,.88fr) minmax(196px,1.12fr);align-items:end}.switch-form-field{gap:8px;display:grid}.switch-form-field--count input{text-align:center}.switch-form-field span{color:var(--muted);font-size:12px}.switch-form-field input,.switch-form-field select{width:100%;min-width:0;color:var(--text);font:inherit;background:#fffcf7db;border:1px solid #553e281a;border-radius:16px;padding:14px 16px;box-shadow:inset 0 1px #ffffff61}.switch-panel__actions{justify-content:flex-end;display:flex}.switch-command-bar__footer{justify-content:space-between;align-items:stretch;gap:16px;display:flex}.switch-panel__submit{color:#fff8f0;cursor:pointer;background:linear-gradient(135deg,#d25a1e,#e48b47);border:0;border-radius:999px;padding:12px 18px;font-weight:700;transition:transform .18s,box-shadow .18s,filter .18s;box-shadow:0 14px 24px #d25a1e3d}.switch-panel__submit:hover{filter:saturate(1.04);transform:translateY(-1px);box-shadow:0 18px 28px #d25a1e47}.switch-summary-card,.switch-result-card{background:#fffcf7bd;border:1px solid #553e2814;border-radius:18px;gap:8px;padding:14px 16px;display:grid}.switch-summary-card--inline{flex:1;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:12px}.switch-summary-card--inline .eyebrow{margin:0}.switch-summary-card strong,.switch-result-card h4{margin:0;font-size:16px;line-height:1.45}.switch-summary-card--inline strong{background:#fff7eff0;border:1px solid #553e280f;border-radius:14px;padding:10px 12px;font-size:14px}.switch-result-card--inline{grid-template-columns:auto minmax(240px,1.5fr) repeat(3,auto);align-items:center;gap:12px 16px}.switch-result-card--inline .eyebrow{margin:0}.switch-result-card p,.switch-result-card small{color:var(--muted);margin:0;line-height:1.5}.line-status-legend{flex-wrap:wrap;gap:8px;display:flex}.process-stage-meta .status-pill,.line-stage-machine__head .status-pill,.line-focus-card__head .status-pill,.line-focus-machine__head .status-pill,.line-status-legend .status-pill{margin-top:0;padding:4px 8px;font-size:11px}.machine-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;max-height:min(62vh,980px);padding-right:6px;display:grid;overflow:auto}.machine-tile{background:#fffcf7bf;border:1px solid #553e2814;border-radius:20px;padding:18px}.machine-tile p,.machine-tile small{color:var(--muted);margin:0}.machine-tile h4{margin:0 0 8px;font-size:20px}.status-pill{color:var(--green);background:#4f7f571f;border-radius:999px;align-items:center;gap:8px;margin-top:12px;padding:6px 10px;font-size:12px;display:inline-flex}.status-pill.waiting{color:#936b06;background:#d6a11724}.status-pill.alert{color:#9f3a67;background:#c95d8b24}.status-pill.switching{color:var(--blue);background:#366e9624}.status-pill.finished{color:#5d5145;background:#7c6d5f24}.gantt{gap:14px;max-height:min(62vh,980px);padding-right:6px;display:grid;overflow:auto}.gantt-row{grid-template-columns:88px 1fr;align-items:center;gap:14px;display:grid}.gantt-label{color:var(--muted);font-weight:600}.gantt-track{background:#58432d0f;border-radius:16px;gap:4px;padding:6px;display:flex}.gantt-seg{border-radius:999px;height:18px}.run{background:linear-gradient(90deg,#4f7f57,#7faa86)}.idle{background:linear-gradient(90deg,#d6a117,#eccf72)}.down{background:linear-gradient(90deg,#c95d8b,#df92b4)}.schedule-toolbar{background:linear-gradient(135deg,#fff8edf0,#f6ebd9c7);border:1px solid #553e2814;border-radius:18px;justify-content:space-between;align-items:center;gap:18px;margin:4px 0 16px;padding:14px 16px;display:flex}.schedule-export-panel{justify-items:end;gap:8px;max-width:560px;display:grid}.schedule-export-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.schedule-export-btn:disabled{color:#553e286b;cursor:not-allowed;background:#553e280f;border-color:#553e281a}.schedule-export-notice,.schedule-export-error{text-align:right;margin:0;font-size:12px;line-height:1.5}.schedule-export-notice{color:var(--muted)}.schedule-export-error{color:#ad352c}.schedule-toolbar strong{margin-bottom:4px;font-size:16px;display:block}.schedule-toolbar span{color:var(--muted);font-size:13px}.schedule-legend{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.schedule-legend span{background:#ffffff9e;border:1px solid #553e2812;border-radius:999px;align-items:center;gap:7px;padding:8px 10px;display:inline-flex}.schedule-legend i{border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 4px #553e280f}.schedule-scroll{background:radial-gradient(circle at 0 0,#ffdeb147,#0000 30%),linear-gradient(#fffcf7e6,#f8f0e1b8);border:1px solid #553e2814;border-radius:24px;padding:14px;overflow-x:auto;box-shadow:inset 0 1px #ffffffb3}.timeline-head{color:var(--muted);grid-template-columns:120px 120px repeat(30,minmax(36px,1fr));gap:0;min-width:1180px;margin-bottom:8px;font-size:12px;display:grid}.timeline-head span{text-align:center;background:#ffffff8c;border-right:1px solid #553e280f;min-height:38px;padding:11px 8px;font-weight:700}.timeline-head .today{color:#8c3c14;background:linear-gradient(#ffd5b4f2,#fff6e8d1);box-shadow:inset 0 -3px #d25a1e73}.line-gantt{background:#fffcf7b8;border:1px solid #553e2814;border-radius:18px;grid-template-columns:120px 120px minmax(1092px,1fr);gap:0;min-width:1180px;min-height:0;display:grid;overflow:visible}.line-warehouse-label{background:#fffaf2f5;border-right:1px solid #553e2814;justify-content:center;align-self:stretch;align-items:center;font-size:15px;font-weight:700;display:flex}.line-labels{z-index:3;background:#fffaf2f5;border-right:1px solid #553e2814;grid-template-rows:repeat(18,42px);display:grid;position:sticky;left:120px}.line-label-row{cursor:pointer;border-bottom:1px solid #553e2814;flex-direction:column;justify-content:center;align-items:center;gap:0;padding:0 12px;display:flex}.line-label-row:nth-child(2n){background:#f9f1e494}.line-label-row.active{background:#ffe9d1e0}.line-label-row.idle{background:#5b8caf1a}.line-label-row strong{letter-spacing:.01em;padding:0;font-size:13px}.line-label-row small{color:var(--muted);margin-top:4px;font-size:11px}.line-chart-area{background:linear-gradient(90deg,#fffcf7b8,#fffcf76b),repeating-linear-gradient(#ffffff8c 0 42px,#f9f1e46b 42px 84px);grid-column:3;min-width:0;position:relative;overflow:visible}.date-grid{pointer-events:none;background-image:linear-gradient(90deg,#553e2812 1px,#0000 1px);background-size:3.33333% 100%;position:absolute;inset:0}.row-grid{pointer-events:none;grid-template-rows:repeat(18,42px);display:grid;position:absolute;inset:0}.line-row{background:0 0;border-bottom:1px solid #553e281f}.order-bar{opacity:1;color:#17130f;cursor:pointer;border:0;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:0 12px;font-size:13px;font-weight:600;transition:filter .16s,transform .16s,box-shadow .16s;display:inline-flex;position:absolute;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff6b,0 8px 18px #4a311c1f}@keyframes schedule-card-in{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.order-bar:before{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff57,#0000 42%);position:absolute;inset:0}.order-bar span,.order-bar small{z-index:1;line-height:1.1;position:relative}.order-bar span{white-space:nowrap}.order-bar small{color:#17130fb8;font-size:12px}.order-bar.active,.order-bar:hover{z-index:2;filter:saturate(1.08);transform:translateY(-1px);box-shadow:inset 0 0 0 2px #d25a1e61,0 18px 32px #52341933}.timeline-head .line-axis-title{color:var(--text);background:#fffcf7f5;border-radius:14px 14px 0 0;font-weight:700}.table-wrap{overflow:auto}.order-filter-card,.order-overview-card,.order-card{border-radius:24px}.order-filter-bar{grid-template-columns:280px minmax(0,1fr);gap:16px;display:grid}.order-filter-field{gap:10px;display:grid}.order-filter-field span{color:var(--muted);font-size:13px}.order-filter-field select,.order-filter-field input{width:100%;color:var(--text);font:inherit;background:#fffcf7cc;border:1px solid #553e281a;border-radius:18px;padding:16px 18px}.order-filter-field--wide{min-width:0}.order-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.order-overview-grid div,.order-summary-grid div{background:#fffcf7ad;border:1px solid #553e2814;border-radius:16px;padding:12px 14px}.order-overview-grid span,.order-summary-grid span{color:var(--muted);margin-bottom:8px;display:block}.order-overview-grid strong,.order-summary-grid strong{font-size:18px;display:block}.order-card-list{gap:14px;padding-bottom:18px;display:grid}.order-card{gap:10px;padding:14px 16px;display:grid}.order-card-strip{grid-template-columns:minmax(220px,280px) minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.order-card-meta{min-width:0}.order-card-meta h3{margin:0;font-size:20px;line-height:1.2}.order-card-subtitle{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.35}.order-card-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.order-status-pill{color:var(--blue);background:#366e961f;border-radius:999px;align-items:center;padding:6px 12px;font-size:12px;font-weight:700;display:inline-flex}.order-status-pill.active{color:var(--accent);background:#d25a1e1f}.order-status-pill.finished{color:var(--green);background:#4f7f571f}.order-status-pill.queued{color:#8e6703;background:#d6a11724}.order-summary-grid{grid-template-columns:repeat(7,minmax(92px,1fr));gap:8px;display:grid}.order-summary-item{background:#fffcf7ad;border:1px solid #553e2814;border-radius:14px;padding:8px 10px}.order-summary-item span{color:var(--muted);margin-bottom:4px;font-size:12px;display:block}.order-summary-item strong{font-size:15px;line-height:1.2;display:block}.order-variance.late{color:#b04a2c}.order-variance.ahead{color:var(--green)}.order-variance.stable{color:var(--blue)}.order-progress-track{background:#553e2814;border-radius:999px;height:6px;overflow:hidden}.order-progress-track__fill{border-radius:inherit;background:linear-gradient(90deg,#d25a1e,#ebb25c);height:100%}.order-stage-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;display:grid}.order-stage-item{background:#fffcf7b8;border:1px solid #553e2814;border-radius:18px;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:14px;display:grid}.order-stage-item.finished{box-shadow:inset 0 0 0 2px #4f7f573d}.order-stage-item.active{box-shadow:inset 0 0 0 2px #d25a1e3d}.order-stage-item.pending{opacity:.72}.order-stage-index{width:36px;height:36px;color:var(--blue);background:#366e961f;border-radius:50%;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex}.order-stage-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.order-stage-header h4{margin:0;font-size:16px}.order-stage-header p{color:var(--muted);margin:4px 0 0;font-size:12px}.order-stage-header strong{font-size:16px}.order-stage-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;margin-top:12px;display:grid}.order-stage-metrics span{color:var(--muted);margin-bottom:4px;font-size:12px;display:block}.order-stage-metrics strong{font-size:14px}.order-stage-progress{background:#553e2814;border-radius:999px;height:8px;margin-top:12px;overflow:hidden}.order-stage-progress__fill{border-radius:inherit;background:linear-gradient(90deg,#4f7f57,#6f9a76);height:100%}.order-empty-state{color:var(--muted);text-align:center;background:#fffcf7b3;border-radius:20px;padding:28px}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #553e2814;padding:16px 14px}thead th{color:var(--muted);background:#fffcf7d1;font-weight:600;position:sticky;top:0}tbody tr:hover{background:#fff7edb8}.tag{color:var(--blue);background:#366e961f;border-radius:999px;padding:6px 10px;font-size:12px;display:inline-flex}.tag.queued{color:#8e6703;background:#d6a1171f}.tag.finished{color:var(--green);background:#4f7f571f}@media (width<=1320px){.hero-grid,.panel-grid,.machine-grid-layout,.line-layout,.line-detail-layout{grid-template-columns:1fr}.machine-metrics,.line-detail-metrics,.order-overview-grid,.order-summary-grid,.order-stage-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.order-card-strip{grid-template-columns:minmax(0,1fr);align-items:flex-start}.order-card-actions{justify-content:flex-start}.line-flow-row{grid-template-columns:1fr}.line-flow-row .process-anchor:first-child:after,.line-flow-row .process-anchor:last-child:before{display:none}.switch-command-bar__intro,.switch-command-bar__footer{flex-direction:column;align-items:flex-start}.switch-form-grid--toolbar,.switch-summary-card--inline,.switch-result-card--inline{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=960px){body{overflow:auto}.app-shell{grid-template-columns:1fr}.sidebar{border-bottom:1px solid #ffffff14;border-right:0}.workspace{padding:18px}.topbar{flex-direction:column}.summary-card .section-head{flex-direction:column;align-items:flex-start}.hero-tabs{justify-content:flex-start;width:100%;margin-left:0}.hero-tab{flex:180px;justify-content:center}.overview-title-row{align-items:flex-start;width:100%}.overview-inline-copy{flex-basis:100%;min-width:0;font-size:14px}.overview-inline-copy:before{display:none}.hero-tab{flex-basis:100%}.buffer-panel--columns{padding:18px 16px 14px}.buffer-columns{grid-auto-columns:72px;gap:14px;min-height:236px}.buffer-column__bar{width:48px;height:156px}.buffer-column__value{font-size:20px}.buffer-column__tooltip{display:none}}.algorithm-view{gap:24px;display:grid}.algorithm-source{color:var(--muted);font-size:13px}.algorithm-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.algorithm-empty{border:1px dashed var(--line);border-radius:var(--radius-md);color:var(--muted);text-align:center;padding:48px 24px}.algorithm-table-wrap{overflow-x:auto}.algorithm-table{border-collapse:collapse;width:100%;font-size:14px}.algorithm-table th,.algorithm-table td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:13px 12px}.algorithm-table th{color:var(--muted);font-weight:600}.algorithm-status-error{color:#b64032}.algorithm-errors{border-top:1px solid var(--line);gap:14px;padding-top:4px;display:grid}.algorithm-errors__head{justify-content:space-between;align-items:center;gap:16px;display:flex}.algorithm-errors__head h3{margin:4px 0 0;font-size:18px}.algorithm-errors__count{color:var(--muted);white-space:nowrap;font-size:13px}.algorithm-errors__table-wrap{border-radius:var(--radius-md);border:1px solid #553e281a;overflow-x:auto}.algorithm-errors__table{border-collapse:collapse;width:100%;min-width:720px;font-size:13px}.algorithm-errors__table th,.algorithm-errors__table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:11px 12px}.algorithm-errors__table tr:last-child td{border-bottom:0}.algorithm-errors__table th{color:var(--muted);white-space:nowrap;font-weight:600}.algorithm-error-code{color:#a64024;font-variant-numeric:tabular-nums;white-space:nowrap;display:block}.algorithm-error-legacy,.algorithm-error-request{color:var(--muted);white-space:nowrap;margin-top:4px;display:block}.algorithm-error-category{color:#a64024;white-space:nowrap;background:#b640321a;border-radius:999px;padding:3px 7px;display:inline-block}.algorithm-error-category--business{color:#806512;background:#d8b22c2e}.backend-message-panel{box-sizing:border-box;background:#b640320f;border:1px solid #b6403252;border-left:4px solid #b64032;gap:10px;height:112px;max-height:112px;margin:18px 0;padding:14px 16px;display:grid;overflow:hidden auto}.backend-message-panel--empty{background:#ffffff38;border-color:#553e281a #553e281a #553e281a #553e282e}.backend-message-panel__head h3{margin:4px 0 0;font-size:17px}.backend-message-panel__list{color:#6d2d25;overflow-wrap:anywhere;gap:7px;margin:0;padding-left:20px;line-height:1.55;display:grid}.backend-message-panel__empty{color:var(--muted);text-align:center;align-self:center;margin:0}@media (width<=720px){.login-panel{padding:30px 24px}.login-brand h1{font-size:26px}.machine-metrics,.line-detail-metrics{grid-template-columns:1fr}.info-stat--wide{grid-column:auto}.topbar h2{font-size:28px}.trend-panel,.order-filter-bar,.order-stage-item,.order-overview-grid,.order-summary-grid,.order-stage-metrics{grid-template-columns:1fr}.order-card-header{display:grid}.process-stage-head,.line-focus-card__head,.line-stage-machine__head,.line-focus-machine__head{flex-direction:column;align-items:flex-start}.process-stage-meta{align-items:flex-start}.process-machine-cluster{padding:10px 0}.process-spine,.line-stage-machine:before,.line-stage-machine:after{display:none}.line-focus-links,.switch-form-grid,.switch-form-grid--toolbar,.switch-summary-card--inline,.switch-result-card--inline{grid-template-columns:1fr}.switch-panel__actions{justify-content:stretch}.switch-panel__submit{width:100%}}
