@charset "UTF-8";:root{--bg:#0F1115;--surface:#1A1D24;--surface-2:#232730;--border:#2B2F38;--border-soft:#353A45;--text:#E4E5EA;--text-secondary:#9BA0AA;--text-muted:#6A6F7A;--green:#008C46;--yellow:#FFCD32;--red:#E6001E;--accent:#FFCD32;--green-soft:rgba(0,140,70,.16);--yellow-soft:rgba(255,205,50,.14);--red-soft:rgba(230,0,30,.16);--green-txt:#2FCB7E;--yellow-txt:#FFD24D;--red-txt:#FF5468}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--bg);color:var(--text);font-family:Manrope,system-ui,-apple-system,sans-serif;display:flex;flex-direction:column;height:100vh;overflow:hidden;padding:12px;gap:10px;font-size:14px;-webkit-font-smoothing:antialiased}.mono{font-family:JetBrains Mono,Consolas,monospace;font-variant-numeric:tabular-nums}header{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.logo{background:var(--accent);color:#1a1500;font-weight:800;letter-spacing:.02em;padding:5px 10px;border-radius:6px;font-size:13px;white-space:nowrap}.brand .sub{color:var(--text-secondary);font-size:15px;font-weight:600}select#point{background:var(--surface-2);color:var(--text);border:1px solid var(--border-soft);border-radius:8px;padding:7px 12px;font:600 15px Manrope,sans-serif;cursor:pointer;outline:none}.hdr-right{display:flex;align-items:center;gap:16px}.when{color:var(--text-secondary);font-size:14px}.when b{color:var(--text)}.refresh{display:flex;align-items:center;gap:7px;color:var(--text-muted);font-size:12px}.dot{width:8px;height:8px;border-radius:50%;background:var(--green);animation:pulse 2.4s infinite}@keyframes pulse{0%{box-shadow:0 0 #008c4680}70%{box-shadow:0 0 0 7px #008c4600}to{box-shadow:0 0 #008c4600}}.overall{display:flex;align-items:center;gap:10px;padding:8px 14px;border-radius:9px;font-size:15px;font-weight:700;background:var(--surface);border:1px solid var(--border);border-left:5px solid var(--border-soft);white-space:nowrap}.overall.green{background:var(--green-soft);border-left-color:var(--green);color:var(--green-txt)}.overall.yellow{background:var(--yellow-soft);border-left-color:var(--yellow);color:var(--yellow-txt)}.overall.red{background:var(--red-soft);border-left-color:var(--red);color:var(--red-txt)}.overall .det{color:var(--text-secondary);font-weight:500;font-size:13px}main{flex:1 1 auto;display:grid;grid-template-columns:1.12fr 1fr;gap:10px;min-height:0}.panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;min-height:0;overflow:hidden}.col-right{display:flex;flex-direction:column;gap:10px;min-height:0}.panel-speed{flex:1.45 1 0;min-height:0}.panel-preorders{flex:1 1 0;min-height:0}.panel-head .shift-staff{font-family:JetBrains Mono,monospace;font-size:13px;color:var(--text-secondary)}.panel-head .shift-staff b{color:var(--text);font-size:18px}.panel-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;border-bottom:1px solid var(--border)}.panel-title{font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-secondary);font-weight:700;display:flex;align-items:center;gap:9px}.live{display:inline-flex;align-items:center;gap:5px;font-size:10px;color:var(--green-txt);background:var(--green-soft);border:1px solid rgba(0,140,70,.3);border-radius:20px;padding:2px 8px;text-transform:none;letter-spacing:0;font-weight:600}.demo{font-size:10px;color:var(--yellow-txt);background:var(--yellow-soft);border:1px dashed rgba(255,205,50,.45);border-radius:20px;padding:2px 8px;text-transform:none;letter-spacing:0;font-weight:600;white-space:nowrap}.q-summary{font-size:12px;color:var(--text-muted);font-family:JetBrains Mono,monospace;white-space:nowrap}.q-summary b{color:var(--text-secondary)}.q-summary .ov{color:var(--red-txt)}.q-list{flex:1 1 auto;overflow:hidden;padding:7px 10px;display:flex;flex-direction:column;gap:5px}.q-row{display:grid;grid-template-columns:10px 62px 74px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 12px;border-radius:9px;background:var(--surface-2);border:1px solid var(--border);border-left:4px solid var(--border-soft)}.q-row .q-led{width:10px;height:10px;border-radius:50%}.q-row .q-num{font-family:JetBrains Mono,monospace;font-weight:700;color:var(--text);font-size:13px}.q-row .q-chan{font-size:11px;color:var(--text-secondary)}.q-row .q-sum{font-family:JetBrains Mono,monospace;font-weight:700;color:var(--text);font-size:12px;white-space:nowrap}.q-row .q-pos{font-size:10px;color:var(--text-secondary)}.q-warn{display:inline-flex;align-items:center;vertical-align:-2px;margin-left:5px;color:var(--yellow-txt);cursor:help}.q-warn svg{width:13px;height:13px}body.v-kitchen .q-warn{vertical-align:-1px;margin-left:7px}body.v-kitchen .q-warn svg{width:17px;height:17px}.q-stages{display:flex;align-items:center;gap:2px;flex-wrap:nowrap;overflow:hidden}.q-stages .st{font-size:14px;font-weight:600;padding:4px 10px;border-radius:7px;border:1px solid var(--border-soft);color:var(--text-muted);background:var(--bg);white-space:nowrap}.q-stages .st-arrow{color:var(--text-muted);font-size:12px}.st .stn{font-weight:800;margin-left:4px}.q-stages .st--done.st--green{color:var(--green-txt);border-color:#008c4666}.q-stages .st--done.st--yellow{color:var(--yellow-txt);border-color:#ffcd3280}.q-stages .st--done.st--red{color:var(--red-txt);border-color:#e6001e80}.q-stages .st--pending{opacity:.45}.q-stages .st--stage{border-style:dashed}.q-stages .st--active{font-weight:700}.q-stages .st--active.st--green{color:var(--green-txt);background:var(--green-soft);border-color:var(--green)}.q-stages .st--active.st--yellow{color:var(--yellow-txt);background:var(--yellow-soft);border-color:var(--yellow)}.q-stages .st--active.st--red{color:var(--red-txt);background:var(--red-soft);border-color:var(--red)}.q-where{text-align:right;font-family:JetBrains Mono,monospace;font-size:12px;color:var(--text-secondary);white-space:nowrap}.q-where b{color:var(--text);font-family:Manrope,sans-serif}.q-where .q-min{font-weight:700;font-size:16px;color:var(--text)}.q-where .q-unit{font-size:10px;color:var(--text-muted)}.q-where .q-stuck{color:var(--red-txt);font-weight:700;font-size:10px;text-transform:uppercase;font-family:Manrope,sans-serif;margin-right:5px}.q-where .q-slow{color:var(--yellow-txt);font-weight:700;font-size:10px;text-transform:uppercase;font-family:Manrope,sans-serif;margin-right:5px}.q-row--green{border-left-color:var(--green)}.q-row--green .q-led{background:var(--green)}.q-row--green .q-where .q-min{color:var(--green-txt)}.q-row--yellow{border-left-color:var(--yellow)}.q-row--yellow .q-led{background:var(--yellow)}.q-row--yellow .q-where .q-min{color:var(--yellow-txt)}.q-row--red{border-left-color:var(--red);background:var(--red-soft)}.q-row--red .q-led{background:var(--red)}.q-row--red .q-where .q-min{color:var(--red-txt)}.speed-grid{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;gap:8px;padding:10px 10px 12px}.stile{border-radius:11px;padding:8px 12px;display:flex;flex-direction:column;justify-content:center;gap:3px;background:var(--surface-2);border:1px solid var(--border);border-left:4px solid var(--border-soft);min-height:0;overflow:hidden}.stile .s-label{font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);font-weight:600;line-height:1.15;white-space:normal}.stile .s-value{font-size:27px;font-weight:800;line-height:1;letter-spacing:-.01em}.stile .s-value .unit{font-size:14px;color:var(--text-muted);font-weight:600;margin-left:3px}.stile .s-norm{font-size:11px;color:var(--text-muted);font-family:JetBrains Mono,monospace}.stile--green{background:var(--green-soft);border-color:#008c4659;border-left-color:var(--green)}.stile--green .s-value{color:var(--green-txt)}.stile--yellow{background:var(--yellow-soft);border-color:#ffcd3252;border-left-color:var(--yellow)}.stile--yellow .s-value{color:var(--yellow-txt)}.stile--red{background:var(--red-soft);border-color:#e6001e61;border-left-color:var(--red)}.stile--red .s-value{color:var(--red-txt)}.stile--none .s-value{color:var(--text)}.stile.has-pop{cursor:pointer}.stile.has-pop:after{content:"\25be";position:absolute;top:9px;right:11px;color:var(--text-muted);font-size:11px}.stile{position:relative}.tile-pop{display:none;position:absolute;top:calc(100% + 4px);left:0;min-width:210px;max-height:250px;overflow:auto;z-index:60;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:9px;padding:8px 11px;box-shadow:0 8px 22px #0000008c}.stile.open .tile-pop{display:block}.tp-cap{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:6px}.tp-row{display:flex;justify-content:space-between;gap:16px;font-family:JetBrains Mono,monospace;font-size:13px;padding:3px 0;border-bottom:1px solid var(--border)}.tp-row:last-child{border-bottom:none}.tp-row b{color:var(--text)}.tp-row span{color:var(--red-txt)}.mgmt{flex:0 0 auto;display:flex;align-items:center;gap:16px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:9px 14px;overflow:hidden}.mgmt .m-tag{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);font-weight:700;white-space:nowrap}.mgmt .m-item{display:flex;align-items:baseline;gap:6px;white-space:nowrap}.mgmt .m-k{font-size:11px;color:var(--text-secondary)}.mgmt .m-v{font-family:JetBrains Mono,monospace;font-weight:700;font-size:16px;color:var(--text)}.mgmt .m-d{font-size:11px;font-family:JetBrains Mono,monospace}.m-d.good{color:var(--green-txt)}.m-d.bad{color:var(--red-txt)}.m-d.flat{color:var(--text-muted)}.mgmt .m-spark{margin-left:auto;display:flex;align-items:center;gap:8px}.mgmt .m-spark .lbl{font-size:10px;color:var(--text-muted)}.mgmt svg{height:30px;width:170px}.sep{width:1px;height:22px;background:var(--border-soft)}.pending{flex:0 0 auto;display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:0 2px}.pending b{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);font-weight:700;margin-right:2px}.pending .chip{font-size:11px;color:var(--text-secondary);background:var(--surface-2);border:1px dashed var(--border-soft);border-radius:6px;padding:2px 9px}.stale{color:var(--red-txt)!important}.workshops{flex:0 0 auto;display:flex;align-items:stretch;gap:8px;overflow:hidden}.ws-tag{display:flex;align-items:center;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:700;white-space:nowrap;writing-mode:vertical-rl;transform:rotate(180deg);padding:2px 0}.ws{flex:1 1 0;min-width:0;background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--border-soft);border-radius:10px;padding:8px 11px;display:flex;flex-direction:column;gap:5px;overflow:hidden}.ws-top{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.ws-name{font-size:12px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-late{font-size:11px;font-family:JetBrains Mono,monospace;color:var(--text-muted);white-space:nowrap}.ws-bar{height:6px;background:var(--bg);border-radius:4px;overflow:hidden}.ws-bar i{display:block;height:100%;border-radius:4px;background:var(--text-muted)}.ws-bot{font-size:11px;color:var(--text-secondary);font-family:JetBrains Mono,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-bot b{color:var(--text);font-size:15px}.ws-sub{color:var(--text-muted);font-size:10px}.ws--green{border-left-color:var(--green)}.ws--green .ws-bar i{background:var(--green)}.ws--green .ws-late{color:var(--green-txt)}.ws--yellow{border-left-color:var(--yellow)}.ws--yellow .ws-bar i{background:var(--yellow)}.ws--yellow .ws-late{color:var(--yellow-txt)}.ws--red{border-left-color:var(--red);background:var(--red-soft)}.ws--red .ws-bar i{background:var(--red)}.ws--red .ws-late{color:var(--red-txt)}.ws-empty{flex:1;display:flex;align-items:center;color:var(--text-muted);font-size:12px;padding-left:10px}.shift-body{flex:1 1 auto;min-height:0;padding:10px 13px;display:flex;flex-direction:column;gap:8px}.shift-stats{display:flex;gap:22px;align-items:baseline;flex-wrap:wrap}.shift-stat{display:flex;flex-direction:column;gap:1px}.shift-stat .v{font-family:JetBrains Mono,monospace;font-weight:800;font-size:27px;color:var(--text);line-height:1}.shift-stat .v .u{font-size:13px;color:var(--text-muted);font-weight:600}.shift-stat .k{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.shift-stat .sub{font-size:10px;color:var(--text-muted)}.shift-chart{flex:1 1 auto;min-height:40px;display:flex;flex-direction:column}.shift-chart .ch-head{display:flex;justify-content:space-between;font-size:10px;color:var(--text-muted)}.shift-chart svg{flex:1 1 auto;width:100%;min-height:0}.shift-metrics{flex:0 0 auto;display:flex;gap:18px;flex-wrap:wrap;padding:2px 0}.sm{display:flex;flex-direction:column;gap:0}.sm .smk{font-size:10px;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted)}.sm .smv{font-family:JetBrains Mono,monospace;font-weight:700;font-size:19px;color:var(--text);line-height:1.1}.sm .smv .u{font-size:11px;color:var(--text-muted);font-weight:500}.roles{flex:0 0 auto;display:flex;flex-wrap:wrap;gap:6px;align-content:flex-start}.role-chip{font-size:12px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:6px;padding:2px 9px;color:var(--text-secondary);white-space:nowrap}.role-chip b{color:var(--text);font-family:JetBrains Mono,monospace;margin-left:3px}.role-chip--k{border-color:#ffcd3280;color:var(--text);background:var(--yellow-soft)}.role-none{color:var(--text-muted);font-size:12px}body.v-kitchen .ws-bot{white-space:normal;line-height:1.35}body.v-kitchen .q-order{display:none}body.v-kitchen .panel-speed{flex:0 0 auto}body.v-kitchen .speed-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:auto;padding:10px;gap:9px}body.v-kitchen .stile{padding:13px 15px;gap:5px}body.v-kitchen .stile .s-label{font-size:12px}body.v-kitchen .stile .s-value{font-size:36px}body.v-kitchen .stile .s-value.sm{font-size:20px}body.v-kitchen .stile .s-sub{font-size:12.5px;white-space:normal;line-height:1.35;max-height:2.8em}body.v-kitchen .stile .s-norm{font-size:12px}.stile .s-sub{font-size:11.5px;color:var(--text-secondary);font-family:JetBrains Mono,monospace;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}body.v-kitchen .panel-preorders{flex:1 1 0;min-height:0}body.v-kitchen .q-row{grid-template-columns:12px 86px minmax(0,1fr) auto;padding:11px 14px;gap:11px}body.v-kitchen .q-num{font-size:19px}body.v-kitchen .q-chan{font-size:13px}body.v-kitchen .q-stages .st{font-size:16px;padding:5px 12px}body.v-kitchen .q-stages .st-arrow{font-size:13px}body.v-kitchen .q-where{font-size:14px}body.v-kitchen .q-where .q-min{font-size:22px}body.v-kitchen .q-where .q-unit{font-size:11px}.po-list{flex:1 1 auto;overflow:hidden;padding:7px 10px;display:flex;flex-direction:column;gap:5px}.po-row{display:grid;grid-template-columns:84px 72px 86px minmax(0,1fr) 56px;align-items:center;gap:9px;padding:7px 12px;border-radius:9px;background:var(--surface-2);border:1px solid var(--border);border-left:4px solid var(--accent)}.po-row .po-sum{font-family:JetBrains Mono,monospace;font-weight:700;font-size:14px;color:var(--text);white-space:nowrap}.po-row .po-due{font-family:JetBrains Mono,monospace;color:var(--yellow-txt);font-size:12px;white-space:nowrap}.po-row .po-due b{font-size:17px;font-weight:800}.po-row .po-shops{display:flex;gap:4px;flex-wrap:nowrap;overflow:hidden;align-items:center}.po-row .po-total{text-align:right;font-family:JetBrains Mono,monospace;font-size:12px;color:var(--text-secondary);white-space:nowrap}.ktabs{display:flex;gap:4px;margin-left:8px}.ktab{font-size:13px;font-weight:600;color:var(--text-secondary);padding:5px 13px;border-radius:7px;cursor:pointer;border:1px solid transparent;-webkit-user-select:none;user-select:none}.ktab:hover{color:var(--text)}.ktab.active{background:var(--surface-2);color:var(--text);border-color:var(--border-soft)}#pane-pult{flex:1 1 auto;display:flex;flex-direction:column;gap:10px;min-height:0}#pane-method{flex:1 1 auto;overflow-y:auto;display:none}body.method-on #pane-pult{display:none}body.method-on #pane-method{display:block}body.method-on #point,body.method-on .hdr-right{visibility:hidden}.method{max-width:1000px;margin:0 auto;padding:4px 4px 30px;color:var(--text)}.method h1{font-size:22px;font-weight:800;margin:4px 0 10px}.method h2{font-size:16px;color:var(--accent);margin:24px 0 8px;border-bottom:1px solid var(--border);padding-bottom:6px}.method h3{font-size:14px;margin:14px 0 4px;color:var(--text)}.method p{color:var(--text-secondary);line-height:1.55;margin:6px 0;font-size:13.5px}.method p.lead{color:var(--text);font-size:15px}.method p.note{color:var(--yellow-txt);font-size:13px}.method b{color:var(--text)}.method ul{color:var(--text-secondary);line-height:1.7;margin:6px 0;padding-left:20px;font-size:13.5px}.method table{border-collapse:collapse;width:100%;margin:10px 0;font-size:13px}.method th,.method td{border:1px solid var(--border);padding:7px 11px;text-align:left}.method th{background:var(--surface-2);color:var(--text-secondary);font-weight:600}.method td{color:var(--text-secondary)}.method .g{color:var(--green-txt)}.method .y{color:var(--yellow-txt)}.method .r{color:var(--red-txt)}.method-foot{margin-top:26px;color:var(--text-muted);font-size:11px;border-top:1px solid var(--border);padding-top:10px}body{display:block;height:100%;padding:0;overflow:visible}app-root{display:flex;flex-direction:column;height:100vh;overflow:hidden;padding:12px;gap:10px}
