:root{color:#1d1d1f;font-synthesis:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f5f5f7;font-family:IBM Plex Sans Thai,Tahoma,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline-offset:4px;outline:2px solid #06c}.skip-link{z-index:10000;color:#123d62;background:#fff;border:2px solid #06c;padding:12px 18px;position:fixed;top:8px;left:8px;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}button{color:inherit;background:0 0;border:1px solid #dedee3;padding:10px 15px}button:disabled{opacity:.6;cursor:wait}input,select{color:#1d1d1f;background:#fff;border:1px solid #dedee3;border-radius:3px;width:100%;padding:12px}label{color:#62626b;gap:8px;font-size:14px;display:grid}h1{letter-spacing:-.5px;margin:10px 0 22px;font-size:32px;line-height:1.35}h2{margin:8px 0;font-size:24px}p{line-height:1.65}.wordmark{letter-spacing:2px;font-size:27px;font-weight:700}.wordmark span{color:#62626b;letter-spacing:2px;margin-top:3px;font-size:10px;display:block}.eyebrow{color:#06c;letter-spacing:2px;font-size:11px;font-weight:600}.login-layout{grid-template-columns:1.25fr 1fr;min-height:100vh;display:grid}.intro{background:radial-gradient(at 30% 80%,#dedee3,#0000 70%),#fff;border-right:1px solid #dedee3;padding:65px 10vw 60px 7vw}.intro h1{font-size:clamp(40px,4vw,66px);line-height:1.25}.intro-copy{color:#62626b;font-size:18px}.flow{letter-spacing:2px;color:#1d1d1f;white-space:nowrap;margin-top:75px;font-size:11px}.flow span{color:#06c;margin:0 14px}.login-panel{align-self:center;width:100%;max-width:510px;margin:auto;padding:55px}.login-panel h2{font-size:30px}.login-panel p{color:#62626b;font-size:14px}.login-panel form{gap:22px;margin-top:32px;display:grid}.primary{color:#fff;background:#06c;border:none;padding:14px;font-weight:700}.mode{letter-spacing:1.5px;color:#06c;font-size:10px;font-weight:700}.footnote{color:#62626b;margin-top:28px;font-size:12px}.error{background:#fff0ef;border-left:3px solid #d43832;padding:12px 16px;font-size:14px;color:#a52a26!important}.shell{grid-template-columns:236px 1fr;min-height:100vh;display:grid}aside{background:#f5f5f7;border-right:1px solid #dedee3;flex-direction:column;padding:32px 24px;display:flex}nav{gap:8px;display:grid}nav button{text-align:left;color:#62626b;border:0;padding:15px 12px}nav button span{color:#62626b;margin-right:18px;font-size:10px}.active{background:#dedee3;color:#06c!important;border-left:2px solid #06c!important}main{min-width:0}header{border-bottom:1px solid #dedee3;justify-content:space-between;align-items:center;gap:20px;height:112px;padding:24px 42px;display:flex}header p{margin:0 0 5px}.selector{width:230px;font-size:11px}.selector select{padding:8px;font-size:13px}.content{min-height:calc(100vh - 174px);padding:25px 42px 48px}.notice{letter-spacing:1px;color:#06c;align-items:center;gap:10px;padding-bottom:25px;font-size:10px;display:flex}.notice>span:last-child{color:#62626b;letter-spacing:0;font-size:12px}.dot{background:#06c;border-radius:50%;width:6px;height:6px}.section-title{justify-content:space-between;align-items:center;gap:20px;display:flex}.quiet{color:#62626b;font-size:13px}.stats{border-top:1px solid #dedee3;border-bottom:1px solid #dedee3;grid-template-columns:repeat(5,1fr);margin:10px 0 30px;display:grid}.stats section{border-right:1px solid #dedee3;padding:15px 22px 20px}.stats section:first-child{padding-left:0}.stats p{color:#62626b;margin:0 0 8px;font-size:12px}.stats strong{font-size:42px;font-weight:500;line-height:1.2}.machine-panel{background:#fff;border:1px solid #dedee3;padding:28px}.machine-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.machine-heading p{color:#06c;font-size:12px}.status{letter-spacing:1px;border:1px solid #62626b;padding:8px 18px;font:600 13px Tahoma,sans-serif}.status.stop{color:#1d1d1f;background:#dedee3}.status.offline{color:#62626b;background:#fff}.status.small{padding:5px 10px;font-size:10px}.signal-flow{letter-spacing:1.4px;border-top:1px solid #dedee3;border-bottom:1px solid #dedee3;align-items:center;gap:20px;margin:18px 0;padding:30px 0;font-size:11px;display:flex}.signal-flow i{color:#06c;font-style:normal}.details{grid-template-columns:1.2fr 1.2fr 1fr;gap:18px;display:grid}.details p{color:#06c;font-size:11px}.details strong{font-size:13px;font-weight:500}.table-wrap{margin-top:25px;overflow:auto}.access-table{table-layout:fixed}.access-table td{white-space:normal;overflow-wrap:anywhere}.access-table form{gap:10px;display:grid}.access-table select{min-width:0}@media (width<=650px){.access-table thead{display:none}.access-table,.access-table tbody,.access-table tr,.access-table td{width:100%;display:block}.access-table tr{border:1px solid #dedee3;margin-bottom:16px}.access-table td{border:0;padding:10px}}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:#62626b;background:#fff;padding:14px;font-size:11px;font-weight:500}td{white-space:nowrap;border-bottom:1px solid #dedee3;padding:17px 14px}.settings{border-top:1px solid #dedee3;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0;padding-top:28px;display:grid}.settings input{color:#62626b;font-size:13px}.empty{color:#62626b;text-align:center;border:1px dashed #dedee3;padding:30px}.content footer{margin-top:30px}footer{letter-spacing:1px;color:#62626b;border-top:1px solid #dedee3;justify-content:space-between;padding:20px 42px;font-size:10px;display:flex}@media (width<=950px){.shell{grid-template-columns:190px 1fr}aside{padding:25px 15px}header{padding:20px 25px}.content{padding:25px}.stats{grid-template-columns:1fr 1fr}.stats section{padding:18px!important}.details{grid-template-columns:1fr}.section-title .quiet{display:none}.signal-flow{gap:10px;font-size:10px}}@media (width<=640px){.login-layout{display:block}.intro{padding:30px}.intro>.eyebrow{margin-top:30px}.intro h1{font-size:38px}.intro-copy,.flow{display:none}.login-panel{padding:35px 25px}.shell{display:block}aside{border:0;padding:16px;display:block}.wordmark{font-size:21px}nav{gap:5px;max-width:100%;margin-top:15px;display:flex;overflow-x:auto}nav button{white-space:nowrap;flex:none;width:auto;padding:9px}nav button span{display:none}header{align-items:start;height:auto;padding:18px}.selector{flex-shrink:0;width:145px}header strong{font-size:16px}header .eyebrow{letter-spacing:.5px;font-size:9px}.content{padding:18px}h1{font-size:26px}.notice{flex-wrap:wrap}.machine-panel{padding:18px}.machine-heading{flex-direction:column;align-items:start}.signal-flow{flex-wrap:wrap}.settings{grid-template-columns:1fr}.stats strong{font-size:36px}footer{padding:18px}}.box-id{color:#06c;font-size:13px;font-weight:400}.pwa-bar{color:#62626b;background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 20px;font-size:13px;display:flex}.pwa-bar .pwa-install{color:#06c;cursor:pointer;background:0 0;border:1px solid #06c;border-radius:6px;padding:8px 12px}.pwa-help{color:#1d1d1f;background:#fff;padding:16px 20px;line-height:1.8}.pwa-offline{max-width:640px;margin:40px auto;padding:24px;line-height:1.8}.signal-settings{background:#fff;border:1px solid #dedee3;border-radius:12px;margin-top:26px;padding:24px}.signal-settings-heading,.signal-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;display:flex}.signal-settings h2{margin:4px 0 8px;font-size:20px}.config-version{color:#06c;font-weight:700}.signal-toolbar{flex-wrap:wrap;gap:16px;margin:20px 0;display:flex}.signal-toolbar label{color:#62626b;gap:6px;min-width:220px;font-size:13px;display:grid}.signal-toolbar .all-signals-toggle{align-self:end;align-items:center;gap:8px;min-width:auto;display:flex}.manual-default{color:#06c;white-space:nowrap;font-size:10px}.signal-toolbar select,.signal-toolbar input{color:#1d1d1f;background:#f5f5f7;border:1px solid #dedee3;border-radius:6px;padding:11px}.signal-group{margin-top:20px}.signal-group h3{color:#06c;margin-bottom:12px;font-size:15px}.signal-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:9px;display:grid}.signal-option{cursor:pointer;background:#f5f5f7;border:1px solid #dedee3;border-radius:7px;align-items:center;gap:11px;padding:12px;display:flex}.signal-option input{accent-color:#06c;width:17px;height:17px}.signal-option span{flex:1;gap:3px;display:grid}.signal-option small{color:#62626b}.signal-option em{color:#06c;font-size:11px;font-style:normal}.signal-actions{margin-top:22px}.signal-actions span{color:#62626b;font-size:13px}.registry-filters{flex-wrap:wrap;gap:16px;margin:24px 0;display:flex}.registry-filters label{flex:1;min-width:220px}.registry-filters input,.registry-filters select{width:100%;margin-top:8px}.device-registry{max-width:1500px;margin:auto}.device-registry h1{letter-spacing:-.04em;margin-bottom:12px}.fleet-graphic{grid-template-columns:minmax(260px,1fr) minmax(360px,1.6fr);gap:12px;margin:20px 0;display:grid}.fleet-health,.fleet-route{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-card);margin:0;padding:16px}.fleet-health h2{margin:0;font-size:15px;font-weight:600}.fleet-health p{color:var(--muted);margin:4px 0 0;font-size:13px}.fleet-health .fleet-health-value{color:var(--ink);margin:8px 0 0}.fleet-health-value strong{font-variant-numeric:tabular-nums;font-size:36px;font-weight:600;line-height:1.1}.fleet-health-value span{color:var(--muted);font-size:18px}.fleet-health small{color:var(--muted);font-size:12px}.fleet-meter{background:var(--surface-2);height:8px;box-shadow:inset 0 0 0 1px var(--line);border-radius:999px;margin:12px 0 8px;overflow:hidden}.fleet-meter span{background:var(--accent);height:100%;transition:width .3s;display:block}.fleet-route{justify-content:space-around;align-items:center;gap:8px;list-style:none;display:flex}.fleet-route li{text-align:center;justify-items:center;gap:4px;min-width:0;display:grid}.fleet-route li svg{color:var(--accent)}.fleet-route strong{color:var(--ink);font-size:14px}.fleet-route small{color:var(--muted);font-size:12px}.fleet-route .fleet-route-arrow svg{color:var(--muted)}.device-registry table{border-collapse:collapse;width:100%;min-width:850px}.device-registry th{text-align:left;white-space:nowrap;padding:16px}.device-registry td{border-bottom:1px solid var(--line);padding:16px;line-height:1.6}.device-registry code{color:var(--accent);font-size:12px}.device-registry small{color:var(--muted);font-size:12px}.device-registry button{border-radius:7px}@media (width<=1050px){.fleet-graphic{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.fleet-meter span{transition:none}}.alarm-scroll{overflow-x:auto}.alarm-scroll table{min-width:760px}.alarm-scroll td{white-space:normal;overflow-wrap:anywhere}.feature-choices{gap:12px;margin-top:20px;display:grid}.feature-choice{border:1px solid var(--border,#526276);border-radius:12px;grid-template-columns:minmax(220px,1.4fr) minmax(140px,.7fr) minmax(200px,1fr) auto;align-items:end;gap:16px;padding:18px;display:grid}.feature-choice label{gap:8px;margin:0;display:grid}.feature-choice .feature-choice-toggle{cursor:pointer;align-self:center;align-items:center;gap:12px;display:flex}.feature-choice-toggle input[type=checkbox]{accent-color:#0674d8;flex:0 0 22px;width:22px;height:22px}.feature-choice-toggle small{margin-top:6px;font-weight:400;display:block}.feature-choice input{min-width:0;max-width:100%}@media (width<=1000px){.feature-choice{grid-template-columns:1fr 1fr}.feature-choice-toggle{grid-column:1/-1}}@media (width<=600px){.feature-choice{grid-template-columns:1fr}.feature-choice-toggle{grid-column:auto}}.monitoring{font-variant-numeric:tabular-nums}.monitoring .section-title{flex-wrap:wrap;align-items:start;gap:20px}.monitoring-window{grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:14px;margin-top:22px;display:grid}.monitoring-window input{min-width:0}.operation-presets{flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 8px;display:flex}.operation-presets span{color:var(--muted,#62626b);margin-right:4px}.operation-presets>button{padding:8px 13px}.analysis-caption{border-bottom:1px solid var(--line);color:var(--muted);flex-wrap:wrap;align-items:center;gap:20px;padding:18px 0;font-size:13px;display:flex}.monitoring-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin:26px 0;display:grid}.monitoring-kpis article{border-left:2px solid #dedee3;gap:8px;padding:3px 0 3px 18px;display:grid}.monitoring-kpis span,.monitoring-kpis small{color:#62626b;font-size:13px}.monitoring-kpis strong{font-size:25px;font-weight:600}.analysis-section{border-top:1px solid #dedee3;margin-top:16px;padding:26px 0}.analysis-section h2{font-size:21px}.analysis-columns{grid-template-columns:1fr 1fr;gap:40px;display:grid}.analysis-form{gap:16px;margin-top:24px;display:grid}.context-form{grid-template-columns:2fr 1.5fr 1fr 1fr;gap:18px;margin:24px 0;display:grid}.context-form button{grid-column:1/-1;justify-self:start}.timeline{background:#dedee3;border-radius:4px;height:40px;margin-top:24px;display:flex;overflow:hidden}.segment{flex-shrink:0;height:100%}.timeline-axis{color:#62626b;justify-content:space-between;margin-top:8px;font-size:12px;display:flex}.timeline-axis span:nth-child(2n){text-align:center}.timeline-axis span:last-child{text-align:right}.operation-gap-summary{border:1px solid var(--line,#c2cad3);background:var(--surface,#fff);border-left:4px solid #8693a4;border-radius:6px;gap:5px;margin-top:18px;padding:14px 16px;display:grid}.operation-gap-summary span,.operation-gap-summary small{color:var(--muted,#62626b)}.operation-event-head label{min-width:230px}.timeline-legend{flex-wrap:wrap;gap:22px;margin-top:20px;font-size:13px;display:flex}.timeline-legend span{align-items:center;gap:7px;display:flex}.timeline-legend i{width:10px;height:10px;display:inline-block}.pareto-row{margin:22px 0}.pareto-row>div{justify-content:space-between;gap:10px;margin-bottom:7px;font-size:14px;display:flex}.pareto-row meter{width:100%;height:15px}.pareto-row meter::-webkit-meter-bar{background:#dedee3;border:0}.oee-grid{background:#fff;border-radius:5px;grid-template-columns:repeat(4,1fr);gap:24px;padding:28px;display:grid}.oee-grid article{gap:12px;display:grid}.oee-grid span{color:#62626b;font-size:14px}.oee-grid strong{color:#06c;font-size:38px;font-weight:500}.analysis-section li{color:#62626b;margin:10px 0}.capability{border-left:3px solid #62626b;padding-left:20px}.success{color:#06c;padding:10px 0}.fleet-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:24px 0;display:grid}.fleet-machine{text-align:left;background:#fff;border:1px solid #dedee3;border-radius:5px;align-items:center;gap:12px;min-width:0;display:flex}.fleet-machine>span:nth-child(2){flex:1;min-width:0}.fleet-machine strong{font-size:15px;display:block}.fleet-machine small{color:#62626b;margin-top:4px;font-size:11px;display:block}.fleet-machine b{font-size:12px;font-weight:500}.fleet-dot{background:#62626b;border-radius:50%;flex-shrink:0;width:11px;height:11px}.machine-actions{border-block:1px solid #dedee3;margin:20px 0;padding:18px 0}.machine-actions p{color:#62626b;margin-top:0}.machine-actions button{border-radius:3px;margin-right:10px}.monitoring button:hover:not(:disabled),.fleet-machine:hover{filter:brightness(1.12)}@media (width<=1150px){.monitoring-window,.context-form,.monitoring-kpis{grid-template-columns:1fr 1fr}.analysis-columns{grid-template-columns:1fr}}@media (width<=600px){.timeline-axis span:nth-child(2n){display:none}.monitoring-window,.context-form{grid-template-columns:1fr}.oee-grid{grid-template-columns:1fr 1fr;padding:20px}.oee-grid strong{font-size:30px}.monitoring-kpis{gap:18px}.monitoring-kpis strong{font-size:20px}.analysis-caption{gap:9px}.fleet-list{grid-template-columns:1fr}.analysis-section{padding-top:20px}.monitoring .section-title button{width:100%}}:root{--accent:#06c;--ink:#1d1d1f;--muted:#62626b;--line:#e5e5ea;--surface:#fff;--canvas:#f5f5f7;color:var(--ink);background:var(--canvas);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,IBM Plex Sans Thai,sans-serif;font-size:14px}body{line-height:1.55}button,input,select,textarea{border-radius:10px;min-height:42px}button{background:#fff;border-color:#d8d8df;font-weight:500;transition:background .15s,border-color .15s}button:hover:not(:disabled){background:#f0f4fa;border-color:#a6bdd8}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #0071e3}input,select,textarea{color:var(--ink);font:inherit;background:#fff;border:1px solid #bdbdc6;max-width:100%;padding:11px 12px}textarea{width:100%;min-height:90px}input[readonly]{background:var(--canvas);color:var(--muted)}input[type=checkbox],input[type=radio]{width:18px;height:18px;min-height:18px;accent-color:var(--accent);flex-shrink:0}label:has(>input[type=checkbox]){align-items:center;gap:10px;margin:12px 0;display:flex}fieldset{border:1px solid var(--line);border-radius:12px;min-width:0;margin:18px 0;padding:18px}fieldset:disabled{opacity:.65}label{color:#51515a;font-weight:500}h1,h2,h3{letter-spacing:-.035em;font-weight:650}h1{margin:4px 0 22px;font-size:34px}h2{font-size:23px}.eyebrow,.mode{letter-spacing:1.4px;color:var(--accent);font-size:10px}.primary{background:var(--accent);color:#fff;border-radius:12px}.primary:hover:not(:disabled){background:#0056ae}.shell{grid-template-columns:232px minmax(0,1fr)}.shell>aside{border-color:var(--line);background:#fafafc;height:100dvh;padding:28px 16px;position:sticky;top:0;overflow:auto}.wordmark{letter-spacing:-1px;padding:0 12px;font-size:30px}.wordmark span{letter-spacing:1.7px;color:var(--muted);font-size:9px}nav{gap:4px}nav button{color:#55555e;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;padding:11px 12px;font-size:13px;display:flex}nav button.active{color:var(--accent);background:var(--accent-soft);border-left:0}.nav-icon{flex-shrink:0}.shell>main>header{border-color:var(--line);background:#ffffffed;height:auto;min-height:96px;padding:20px 36px}header strong{font-size:18px}.box-id{color:var(--muted);margin-top:3px;font-size:11px;display:block}.selector{width:240px}.content{max-width:1600px;margin:auto;padding:24px 36px 48px}.controller-card{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:16px;font-size:12px}.controller-card summary{cursor:pointer;color:#4b5360;padding:12px 16px;font-weight:600}.controller-details{color:var(--muted);padding:4px 16px 16px;line-height:1.9}.controller-empty{color:var(--muted);align-items:center;gap:8px;margin:12px 0 28px;font-size:13px;display:flex}.notice{color:var(--accent);letter-spacing:.5px;padding:0 0 18px}.dot{background:var(--accent)}.section-title{margin-top:10px}.stats{border:0;gap:12px;margin:22px 0}.stats section,.stats section:first-child{border:1px solid var(--line);background:#fff;border-radius:14px;padding:20px}.stats section:last-child{border:1px solid var(--line)}.stats p{min-height:34px;color:var(--muted);font-size:11px}.stats strong{letter-spacing:-2px;font-variant-numeric:tabular-nums;font-size:40px;font-weight:600}.stats section:nth-child(2) strong{color:#16734b}.fleet-list{margin:20px 0}.fleet-machine{border:1px solid var(--line);background:#fff;border-radius:12px;padding:16px}.fleet-machine small{color:var(--muted)}.machine-panel,.signal-settings,.panel,.analysis-section,.fleet-health,.fleet-route{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:26px}.machine-panel{margin-top:22px}.machine-heading p{max-width:620px;color:var(--muted)}.status{letter-spacing:.4px;border-radius:8px}.status.run{color:#16734b;background:#e8f5ed;border-color:#b7ddc6}.status.stop,.status.offline{color:#51515a;background:#f0f0f3;border-color:#d7d7df}.status.alarm{color:#965500;background:#fff4df;border-color:#e6c88d}.status.emergency{color:#fff;background:#b4233b;border:1px solid #b4233b}.machine-actions{border-color:var(--line);padding:18px 0}.machine-actions p{color:#51515a}.machine-actions button{border-radius:9px;margin-bottom:6px}.details{gap:12px}.details>div{overflow-wrap:anywhere;background:#f7f7f9;border-radius:10px;min-width:0;padding:16px}.details p{color:var(--muted);margin:0 0 8px}.details strong{font-variant-numeric:tabular-nums;font-size:15px}.quiet,.footnote{color:var(--muted)}.table-wrap,.alarm-scroll{border:1px solid var(--line);background:#fff;border-radius:12px}th,.device-registry th{color:#54545d;background:#f1f2f5;font-weight:600}td,.device-registry td{border-color:var(--line)}tbody tr:hover,.device-registry tbody tr:hover{background:#f8faff}.device-registry code{color:var(--accent)}.settings{border:1px solid var(--line);background:#fff;border-radius:14px;padding:24px}.settings input{color:var(--ink)}.signal-toolbar input,.signal-toolbar select{color:var(--ink);background:#fff;border-color:#bdbdc6}.signal-option{border-color:var(--line);background:#fafafc;border-radius:10px;margin:0!important}.signal-option:has(input:checked){background:#eef5ff;border-color:#9cc1ed}.signal-option small,.signal-option em,.signal-actions span,.signal-toolbar label{color:var(--muted)}.signal-group h3,.config-version{color:var(--accent)}.registry-filters{align-items:end}.registry-filters button{align-self:end}.monitoring-kpis article{border:1px solid var(--line);background:#fff;border-radius:14px;padding:20px}.monitoring-kpis strong{letter-spacing:-1px;font-size:30px}.analysis-caption,.analysis-section{border-color:var(--line)}.analysis-columns{gap:24px}.oee-grid{background:#f5f8fe;border-radius:12px}.oee-grid strong{color:var(--accent)}.analysis-section li,.oee-grid span{color:var(--muted)}.success{color:#16734b}.empty{color:var(--muted);background:#fafafc;border-color:#d7d7df;border-radius:12px}.error{background:#fff0ef;border-color:#d43832;border-radius:8px;color:#a52a26!important}.fleet-health>strong{color:var(--accent)}.timeline{border-radius:8px}.timeline-legend i{border-radius:3px}.pareto-row meter::-webkit-meter-bar{background:#e5e5ea}.pareto-row meter::-webkit-meter-optimum-value{background:#06c}footer{border-color:var(--line);color:var(--muted);letter-spacing:.6px}.pwa-bar{color:#4c596c;background:#eef3fa;padding:8px 24px;font-size:12px}.pwa-bar button{color:var(--accent);border-color:#b0c9e6}.pwa-help{color:var(--ink);background:#eef3fa}.login-layout{background:#fff;grid-template-columns:1.1fr 1fr}.intro{border-color:var(--line);background:#f5f5f7;flex-direction:column;justify-content:center;padding:60px 7vw;display:flex}.intro .wordmark{padding:0}.intro>.eyebrow{margin-top:80px}.intro h1{letter-spacing:-2px;font-size:clamp(40px,4.2vw,68px);font-weight:600}.intro-copy{color:var(--muted)}.flow{color:#51515a;margin-top:50px}.flow span{color:var(--accent)}.login-panel{max-width:480px;padding:48px}.login-panel h2{margin-top:14px;font-size:32px}.login-panel p{color:var(--muted)}@media (width>=1600px){.content{padding-top:32px}}@media (width<=1100px){.shell{grid-template-columns:206px minmax(0,1fr)}.content{padding:24px}.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.shell>main>header{padding:20px 24px}.details{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.shell{display:block}.shell>aside{height:auto;padding:16px;position:relative;overflow:visible}.wordmark{padding:0;font-size:24px}nav{margin-top:18px;display:flex;overflow:auto}nav button{white-space:nowrap;flex-shrink:0;padding:10px 12px}.nav-icon{width:17px;height:17px}.shell>main>header{flex-direction:column;align-items:stretch;gap:12px;padding:18px}.selector{width:100%}.content{padding:18px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stats section{padding:16px!important}.stats strong{font-size:34px}.stats p{min-height:0}.machine-panel,.signal-settings,.panel,.analysis-section{padding:18px}.details,.signal-grid{grid-template-columns:1fr}.signal-toolbar label{width:100%;min-width:0}.registry-filters label{flex-basis:100%;width:100%;min-width:0}.fleet-route{gap:6px;padding:16px;font-size:11px}.login-layout{display:block}.intro{padding:30px}.intro>.eyebrow{margin-top:26px}.intro h1{font-size:38px}.intro-copy,.flow{display:none}.login-panel{padding:32px 24px}.box-id{overflow-wrap:anywhere}h1{font-size:27px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}:root{--state-run:#16834a;--state-stop:#e4b400;--state-alarm:#d92d20;--state-emergency:#7c3aed;--state-offline:#838894}.status.run{color:#126534;border-color:var(--state-run);background:#eaf8ef}.status.stop{color:#715400;border-color:var(--state-stop);background:#fff7cc}.status.alarm{color:#b42318;border-color:var(--state-alarm);background:#fff0ee}.status.emergency{color:#fff;background:var(--state-emergency);border-color:var(--state-emergency)}.status.offline,.status.unknown{color:#515661;border-color:var(--state-offline);background:#eceef1}.alarm-text{color:var(--state-alarm-text)}.emergency-text{color:var(--state-emergency-text)}.segment.run,.timeline-legend .run,.fleet-dot.run{background:var(--state-run)}.segment.stop,.timeline-legend .stop,.fleet-dot.stop{background:var(--state-stop)}.segment.alarm,.timeline-legend .alarm,.fleet-dot.alarm{background:var(--state-alarm)}.segment.emergency,.timeline-legend .emergency,.fleet-dot.emergency{background:var(--state-emergency);outline-color:var(--state-emergency)}.segment.unknown,.timeline-legend .unknown,.fleet-dot.unknown{background:var(--state-offline)}.state-run{--machine-color:var(--state-run);--machine-tint:#f2fbf5}.state-stop{--machine-color:var(--state-stop);--machine-tint:#fffbed}.state-alarm{--machine-color:var(--state-alarm);--machine-tint:#fff6f5}.state-emergency{--machine-color:var(--state-emergency);--machine-tint:#f7f2ff}.state-offline{--machine-color:var(--state-offline);--machine-tint:#f5f6f8}.fleet-machine,.machine-panel{border-left:5px solid var(--machine-color,var(--line));background:var(--machine-tint,#fff)}.fleet-machine.selected{border-left-color:var(--machine-color);background:var(--machine-tint);outline-offset:2px;outline:2px solid #06c}.status-legend{color:#515661;flex-wrap:wrap;gap:16px;margin:16px 0;font-size:12px;display:flex}.status-legend span{align-items:center;gap:6px;display:flex}.history-state{min-width:0;padding:4px 8px;font-size:12px;display:inline-block}.table-scroll{overflow-x:auto}.table-scroll table{min-width:720px}.shell>main>header{flex-wrap:wrap}.group-selector{max-width:260px}.group-settings .panel{margin-bottom:18px}.group-machine-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;max-height:420px;display:grid;overflow:auto}.group-machine-list label{border:1px solid var(--line);border-radius:10px;align-items:center;gap:12px;padding:12px;display:flex}.group-machine-list input{flex-shrink:0;width:18px;height:18px;margin:0}.group-machine-list small{color:var(--muted);display:block}.fleet-list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;display:grid}.fleet-machine{text-align:center;border:1px solid var(--line);background:#fff;flex-direction:column;align-items:center;gap:8px;padding:18px 16px;display:flex}.fleet-machine.selected{background:#fff;border-color:#06c}.fleet-machine>span{gap:4px;display:grid}.fleet-machine strong{font-size:18px}.cnc-illustration{flex-shrink:0;width:100%;max-width:320px;height:auto;display:block}.machine-heading>.cnc-illustration{width:180px}.machine-updated{font-size:11px}@media (width<=650px){.fleet-list{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.machine-heading{flex-wrap:wrap}.machine-heading>.cnc-illustration{width:140px}}.status-distribution{background:#fff;margin-top:20px}.distribution-heading h2{margin:5px 0}.distribution-body{align-items:center;gap:48px;display:flex}.status-donut{flex:0 0 220px;width:220px;position:relative}.status-donut svg{width:100%;display:block}.donut-total{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.donut-total strong{letter-spacing:-2px;font-size:42px;line-height:1.2}.donut-total span{color:var(--muted);font-size:12px}.distribution-legend{flex:1;max-width:600px;margin:0;padding:0;list-style:none}.distribution-legend li{border-bottom:1px solid var(--line);grid-template-columns:minmax(140px,1fr) 80px 55px;align-items:center;gap:12px;padding:12px 0;font-size:13px;display:grid}.distribution-legend li>span:last-child{text-align:right;font-variant-numeric:tabular-nums}.distribution-label{align-items:center;gap:9px;display:flex}.distribution-label i{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}@media (width<=700px){.distribution-body{flex-direction:column;gap:12px}.distribution-legend{width:100%}}@media (width>=701px) and (width<=1100px){.distribution-body{gap:20px}.status-donut{flex-basis:180px;width:180px}.distribution-legend li{grid-template-columns:minmax(120px,1fr) 65px 40px;gap:8px;font-size:12px}}.brand-logo{object-fit:contain;background:#fff;border-radius:12px;height:auto;display:block}.brand-logo-login{width:min(100%,480px);margin:0 0 32px}.company-credit{color:var(--muted);margin:-16px 0 24px;font-size:14px;line-height:1.6}.turnstile-check{max-width:100%;min-height:65px;margin:18px 0}.intro:has(.brand-logo){padding-top:52px}.intro:has(.brand-logo)>.eyebrow{margin-top:32px}.pwa-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-left:auto;display:flex}.display-preferences{flex-wrap:nowrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:12px;display:flex}.language-picker{border:1px solid var(--line);border-radius:10px;gap:2px;padding:3px;display:flex}.language-picker button{background:0 0;border:0;min-height:40px;padding:4px 10px}.language-picker button[aria-pressed=true]{color:#fff;background:#06c}@media (width<=760px){.pwa-bar{padding:10px 12px}.pwa-description{display:none}.pwa-actions{justify-content:space-between;width:100%}.brand-logo-login{max-width:340px;margin:0 auto 24px}.intro:has(.brand-logo){padding:24px}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}button.link{min-height:0;color:var(--accent);text-underline-offset:3px;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.warn-text{color:#9a5b00}[data-theme=dark] .warn-text{color:#f7c06d}.inline-check{align-items:center;gap:8px;margin:0!important;display:inline-flex!important}nav button{position:relative}.nav-badge{background:var(--state-alarm);color:#fff;border-radius:11px;place-items:center;min-width:22px;height:22px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;display:inline-grid}.identity-badges{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.source-badge{letter-spacing:.8px;border:1px solid var(--line);color:var(--accent);border-radius:6px;padding:3px 8px;font-size:10px;font-weight:700}.source-badge.simulated{color:#8a4b00;background:#fff4e0;border-color:#f0c47a}.source-badge.focas{color:#0b5c37;background:#e8f5ed;border-color:#b7ddc6}[data-theme=dark] .source-badge.simulated{color:#f7c06d;background:#3a2b12;border-color:#7a5a20}[data-theme=dark] .source-badge.focas{color:#a7e7bf;background:#173c31;border-color:#2f6b52}.machine-search input{width:100%}.workspace-filters{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.status{white-space:nowrap;border:1.5px solid;align-items:center;gap:6px;padding:4px 10px;font-weight:700;display:inline-flex}.status i{font-style:normal}.status.compact{padding:2px 8px;font-size:11px}.status.waiting{color:#515661;border-color:var(--state-offline);background:#eceef1;border-style:dashed}.status.emergency{animation:1.6s ease-in-out infinite pulse-border}@keyframes pulse-border{50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--state-emergency) 35%,transparent)}}[data-theme=dark] .status.run{color:#a7e7bf;background:#173c31}[data-theme=dark] .status.stop{color:#ffe07a;background:#3d3410}[data-theme=dark] .status.alarm{color:#ffb2b2;background:#42242e}[data-theme=dark] :is(.status.offline,.status.unknown,.status.waiting){color:#c3cad6;background:#283445}@media (prefers-reduced-motion:reduce){.status.emergency{animation:none}}.overview-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.stat-filter{text-align:left;border:1px solid var(--line);background:var(--surface,#fff);cursor:pointer;border-radius:14px;min-height:0;padding:16px 18px;display:block}.stat-filter p{color:var(--muted);min-height:0;margin:0 0 6px;font-size:12px}.stat-filter strong{letter-spacing:-1.5px;font-variant-numeric:tabular-nums;font-size:36px;font-weight:600;line-height:1.1}.stat-filter[aria-pressed=true]{outline:3px solid var(--accent);outline-offset:-1px;background:#eef5ff}.stat-filter.state-run strong{color:var(--state-run)}.stat-filter.state-stop strong{color:#a07c00}.stat-filter.state-alarm strong{color:var(--state-alarm)}.stat-filter.state-emergency strong{color:var(--state-emergency)}.stat-filter.state-offline strong{color:#5f6470}[data-theme=dark] .stat-filter{background:var(--surface);border-color:var(--line)}[data-theme=dark] .stat-filter[aria-pressed=true]{background:#1b3958}[data-theme=dark] .stat-filter.state-stop strong{color:#ffe07a}[data-theme=dark] .stat-filter.state-offline strong{color:#c3cad6}.stats-help{margin:0 0 16px;font-size:12px}.fleet-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.fleet-heading h2{margin:0;font-size:18px}.fleet-section .fleet-list{margin-top:12px}.fleet-machine{min-width:0;position:relative}.fleet-open{border-radius:inherit;cursor:pointer;z-index:0;border:0;min-height:0;position:absolute;inset:0;background:0 0!important}.fleet-open:focus-visible{outline-offset:2px;outline:3px solid #0071e3}.fleet-machine>:not(.fleet-open){z-index:1;pointer-events:none;position:relative}.fleet-machine>.card-action{pointer-events:auto;z-index:2;min-height:34px;padding:4px 12px;font-size:12px}.fleet-machine .machine-updated{overflow-wrap:anywhere;max-width:100%}.fleet-machine .machine-updated b{color:var(--ink);font-weight:700}.fleet-machine.state-emergency{border:2px solid var(--state-emergency)}.fleet-machine.state-alarm{border-left:5px solid var(--state-alarm)}.fleet-machine.state-stop{border-left:5px solid var(--state-stop)}.fleet-machine.state-offline{border-left:5px dashed var(--state-offline)}.status-stack{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.status-stack small{color:var(--muted)}.machine-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.machine-actions p{flex-basis:100%}.machine-actions button{margin:0!important}.freshness-ok{color:var(--ink-2)}.freshness-warn{color:#9a5b00;font-weight:600}.freshness-warn strong{font-weight:700}[data-theme=dark] .freshness-warn{color:#f7c06d}.shift-summary{border:1px solid var(--line);border-radius:14px;margin:0 0 18px;padding:16px 18px}.shift-summary h3{margin:0 0 10px;font-size:16px}.shift-summary h3 small{color:var(--muted);margin-left:6px;font-weight:400}.shift-bar{background:#dedee3;border-radius:7px;height:14px;margin-bottom:12px;display:flex;overflow:hidden}.shift-bar .segment{height:100%}.shift-summary dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 6px;display:grid}.shift-summary dt{color:var(--muted);font-size:11px}.shift-summary dd{margin:2px 0 0;font-weight:600}.info-tip{vertical-align:middle;letter-spacing:0;font-weight:400;display:inline-block;position:relative}.info-tip>button{cursor:pointer;color:var(--muted);text-align:center;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;min-width:22px;min-height:22px;margin:0;padding:0 3px;font-size:13px;display:inline-flex}.info-tip>button[aria-expanded=true]{color:var(--accent)}.info-tip>[role=note]{z-index:30;background:var(--surface,#fff);width:min(320px,80vw);color:var(--ink);border:1px solid var(--line);text-transform:none;white-space:normal;border-radius:10px;padding:12px 14px;font-size:12px;line-height:1.6;display:block;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0002}.export-menu{position:relative}.export-menu summary{cursor:pointer;background:var(--surface,#fff);border:1px solid #d8d8df;border-radius:10px;align-items:center;min-height:42px;padding:10px 16px;font-weight:600;list-style:none;display:flex}.export-menu summary::-webkit-details-marker{display:none}.export-menu.disabled summary{opacity:.5;cursor:not-allowed}.export-options{z-index:30;background:var(--surface,#fff);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:6px;min-width:240px;padding:10px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 30px #0002}.export-options button{text-align:left;width:100%}.export-options p[role=alert]{margin:0}[data-theme=dark] :is(.info-tip>[role=note],.export-options,.export-menu summary,.palette){background:var(--surface);border-color:var(--line);color:var(--ink)}.operation-presets{flex-wrap:wrap}.operation-presets>button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.custom-range{margin:6px 0 14px}.custom-range>summary{cursor:pointer;color:var(--accent);padding:6px 0;font-weight:600}.shift-editor{position:relative}.shift-editor>summary{cursor:pointer;color:var(--accent);padding:8px 6px;font-size:13px}.shift-editor>div{z-index:30;background:var(--surface,#fff);border:1px solid var(--line);border-radius:12px;width:min(360px,88vw);padding:14px;position:absolute;top:100%;left:0;box-shadow:0 10px 30px #0002}.shift-row{grid-template-columns:1fr 120px auto;gap:8px;margin-bottom:8px;display:grid}.shift-actions{flex-wrap:wrap;gap:8px;display:flex}[data-theme=dark] .shift-editor>div{background:var(--surface)}.timeline-block{margin-top:16px}.timeline.interactive{cursor:crosshair;touch-action:pan-y;-webkit-user-select:none;user-select:none;border-radius:6px;height:48px;margin-top:0;display:block;position:relative}.timeline.interactive:focus-visible{outline-offset:3px;outline:3px solid #0071e3}.timeline.interactive .segment{position:absolute;top:0;bottom:0}.segment.unknown{background-image:repeating-linear-gradient(135deg,#0000 0 5px,#ffffff80 5px 8px)}.segment.alarm{background-image:repeating-linear-gradient(90deg,#0000 0 6px,#00000026 6px 8px)}.segment.emergency{background-image:repeating-linear-gradient(45deg,#0000 0 4px,#ffffff59 4px 6px)}.segment.selected{outline:3px solid var(--ink);outline-offset:-3px;z-index:2}.segment.marked:after{content:"";background:#e05d00;border-radius:2px;height:4px;position:absolute;top:-6px;left:0;right:0}.timeline.interactive:has(.segment.marked){overflow:visible}.timeline-brush{z-index:3;pointer-events:none;background:#06c3;border:2px solid #06c;border-radius:4px;position:absolute;top:-4px;bottom:-4px}.timeline-hover{white-space:nowrap;color:#fff;z-index:5;pointer-events:none;background:#1d1d1f;border-radius:8px;padding:6px 10px;font-size:12px;position:absolute;bottom:calc(100% + 8px);transform:translate(-50%)}.timeline-ticks{height:22px;color:var(--muted);margin-top:6px;font-size:11px;position:relative}.timeline-ticks span{white-space:nowrap;position:absolute;transform:translate(-50%)}.timeline-ticks span:before{content:"";border-left:1px solid var(--line);height:5px;position:absolute;top:-6px;left:50%}.timeline-ticks span:first-child{transform:none}.timeline-help{margin:4px 0 10px;font-size:12px}.timeline-block.compact .timeline.interactive{cursor:default;height:28px}.segment-detail{border:1px solid var(--line);border-left:5px solid var(--state-offline);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:12px 0;padding:12px 14px;display:flex}.segment-detail.state-run{border-left-color:var(--state-run)}.segment-detail.state-stop{border-left-color:var(--state-stop)}.segment-detail.state-alarm{border-left-color:var(--state-alarm)}.segment-detail.state-emergency{border-left-color:var(--state-emergency)}.segment-detail button:last-child{min-height:32px;margin-left:auto;padding:2px 10px}.operation-event-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.operation-event-head h2{margin:0}.operation-gap-summary{flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex}.state-chip{border-left:4px solid var(--state-offline);background:#f2f3f5;border-radius:6px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.state-chip.run{border-color:var(--state-run)}.state-chip.stop{border-color:var(--state-stop)}.state-chip.alarm{border-color:var(--state-alarm)}.state-chip.emergency{border-color:var(--state-emergency)}[data-theme=dark] .state-chip{background:#24364b}.event-table tbody tr{cursor:pointer}.event-table tbody tr.selected{background:#e5effb}[data-theme=dark] .event-table tbody tr.selected{background:#1b3958}.reason-buttons{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:8px 0;padding:12px;display:grid}.reason-buttons legend{padding:0 6px;font-weight:600}.reason-buttons label{border:1.5px solid var(--line);cursor:pointer;min-height:52px;color:var(--ink);border-radius:10px;align-items:center;gap:8px;padding:12px;font-weight:600;margin:0!important;display:flex!important}.reason-buttons label.checked{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--surface));color:var(--ink)}.unrecorded-callout{text-align:left;background:#fff6ee;border:1.5px dashed #e05d00;flex-direction:column;align-items:flex-start;gap:2px;width:100%;margin-bottom:14px;padding:12px 14px;display:flex}.unrecorded-callout span{color:var(--muted);font-size:12px}[data-theme=dark] .unrecorded-callout{background:#3a2414}.bulk-note{font-weight:600}.monitoring-kpis article.kpi-run strong{color:var(--state-run)}.oee-grid article.missing strong{color:var(--muted)}.oee-grid meter{width:100%;height:8px;margin-top:6px}td.slower{color:var(--fb-problem)}td.faster{color:var(--fb-ok)}.segmented{border:1px solid var(--line);border-radius:12px;gap:2px;margin:0 0 16px;padding:3px;display:inline-flex}.segmented button{background:0 0;border:0}.segmented button[aria-pressed=true]{background:var(--accent);color:#fff}.settings-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:16px 0;display:grid}.settings-list>div{border:1px solid var(--line);border-radius:12px;padding:12px 14px}.settings-list dt{color:var(--muted);font-size:11px}.settings-list dd{overflow-wrap:anywhere;margin:4px 0 0;font-weight:600}.alert-toasts{z-index:60;flex-direction:column;gap:8px;max-width:min(420px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.alert-toast{color:#fff;background:var(--state-alarm);border-radius:12px;grid-template-columns:1fr auto auto;align-items:center;gap:4px 8px;padding:12px 14px;display:grid;box-shadow:0 10px 30px #0004}.alert-toast.emergency{background:var(--state-emergency)}.alert-toast span{grid-column:1;font-size:12px}.alert-toast strong{grid-column:1;color:#fff!important}.alert-toast button{color:#1d1d1f;background:#fff;border:0;grid-row:1/span 2;min-height:34px}.palette-backdrop{z-index:70;background:#0006;place-items:start center;padding:10vh 16px 16px;display:grid;position:fixed;inset:0}.palette{background:#fff;border-radius:16px;width:min(560px,100%);overflow:hidden;box-shadow:0 20px 60px #0005}.palette>input{border:0;border-bottom:1px solid var(--line);border-radius:0;width:100%;padding:16px 18px;font-size:16px}.palette ul{max-height:50vh;margin:0;padding:6px;list-style:none;overflow:auto}.palette li{cursor:pointer;border-radius:10px;justify-content:space-between;gap:12px;padding:10px 12px;display:flex}.palette li span{align-items:center;gap:8px;display:flex}.palette li small{color:var(--muted)}.palette li[aria-selected=true]{background:#e5effb}[data-theme=dark] .palette li[aria-selected=true]{background:#1b3958}.palette-keys{color:var(--muted);border-top:1px solid var(--line);margin:0;padding:10px 18px;font-size:11px}.andon{z-index:80;color:#fff;background:#0b1118;flex-direction:column;padding:20px;display:flex;position:fixed;inset:0;overflow:auto}.andon:focus{outline:none}.andon header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.andon header>div:first-child{flex-direction:column;display:flex}.andon header strong{font-size:28px;color:#fff!important}.andon header span{color:#aab4c3}.andon-counts{flex-wrap:wrap;gap:10px;display:flex}.andon-count{background:#1b2532;border-radius:10px;padding:6px 14px;font-size:24px;font-weight:700}.andon-count.run{color:#5fd394}.andon-count.stop{color:#ffd84d}.andon-count.alarm{color:#ff8a80}.andon-count.emergency{color:#c4a2ff}.andon-count.offline{color:#aab4c3}.andon-controls{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.andon-controls label{color:#cdd5df!important}.andon-controls button{color:#fff;background:#1b2532;border-color:#3a4a5e}.andon-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.andon-card{background:#1b2532;border:4px solid #3a4a5e;border-radius:16px;padding:22px}.andon-card h2{margin:0 0 8px;font-size:clamp(22px,2.4vw,34px);color:#fff!important}.andon-state{margin:0;font-size:clamp(28px,3.2vw,48px);font-weight:800}.andon-card p{color:#cdd5df;margin:4px 0 0;font-size:20px}.andon-card.run{border-color:var(--state-run)}.andon-card.run .andon-state{color:#5fd394}.andon-card.stop{border-color:var(--state-stop)}.andon-card.stop .andon-state{color:#ffd84d}.andon-card.alarm{border-color:var(--state-alarm);background:#3a1414}.andon-card.alarm .andon-state{color:#ff8a80}.andon-card.emergency{border-color:var(--state-emergency);background:#2a1846;animation:1.6s infinite pulse-border}.andon-card.emergency .andon-state{color:#c4a2ff}.andon-card:is(.offline,.waiting){border-style:dashed}.andon-card:is(.offline,.waiting) .andon-state{color:#aab4c3}.compare-pick{flex-wrap:wrap;gap:10px 18px;display:flex}.swimlanes{flex-direction:column;gap:10px;margin-top:14px;display:flex}.swimlane{grid-template-columns:180px minmax(0,1fr);align-items:center;gap:12px;display:grid}.swimlane-name{flex-direction:column;min-width:0;display:flex}.swimlane-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.swimlane-name small{color:var(--muted)}.swimlane .timeline-block{margin:0}.swimlane.bottleneck .swimlane-name strong{color:var(--fb-problem)}.timeline.skeleton{background:linear-gradient(90deg,#e5e5ea,#f5f5f7,#e5e5ea);height:28px;margin:0}.bottleneck-note{margin-top:14px}tr.bottleneck td:first-child{color:var(--fb-problem);font-weight:700}@media (width<=1100px){.shift-summary dl{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.nav-group{display:contents}.stat-filter strong{font-size:28px}.swimlane{grid-template-columns:1fr;gap:4px}.timeline-ticks span:nth-child(2n){display:none}.shift-row{grid-template-columns:1fr 100px auto}.export-options{left:0;right:auto}.andon-grid{grid-template-columns:1fr}}.shift-summary-toggle{margin:0 0 18px}.shift-summary-toggle>summary{cursor:pointer;color:var(--accent);padding:6px 0;font-weight:600}.shift-summary-toggle .shift-summary{margin:8px 0 0}@media (width<=700px){.nav-group{display:contents}}.analysis-section .table-wrap:has(.event-table){max-height:min(520px,60vh);overflow:auto}.event-table thead th{z-index:1;background:var(--surface,#fff);position:sticky;top:0}[data-theme=dark] .event-table thead th{background:#213248}.insight-chips{flex-wrap:wrap;gap:8px 14px;margin-top:12px;display:flex}.insight-chip{border:1px solid var(--line);background:var(--surface,#fff);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:inline-flex}.insight-chip i{color:var(--muted);font-style:normal}.insight-chip.spike i{color:#b4233b}.insight-chip strong{font-variant-numeric:tabular-nums}.timeline-spike{z-index:4;pointer-events:auto;border-top:7px solid #b4233b;border-left:5px solid #0000;border-right:5px solid #0000;width:0;height:0;position:absolute;top:-5px;transform:translate(-50%)}.timeline-block.compact .timeline-spike{display:none}.ideal-estimate{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:6px;font-size:12px;display:flex}.ideal-estimate .link{font-size:12px}.ops-counts{flex-wrap:wrap;gap:8px;display:flex}.ops-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin:18px 0;display:grid}.ops-card{text-align:left;border:1px solid var(--line);border-radius:var(--radius,14px);background:var(--surface,#fff);cursor:pointer;border-left-width:5px;flex-direction:column;gap:10px;min-height:0;padding:16px;display:flex}.ops-card.sev-down{border-left-color:var(--fb-problem)}.ops-card.sev-warn{border-left-color:var(--fb-problem);border-left-style:double}.ops-card.sev-ok{border-left-color:var(--fb-ok)}.ops-card.sev-unknown{border-left-color:var(--state-offline);border-left-style:dashed}.ops-card.selected{outline:2px solid var(--accent);outline-offset:1px}.ops-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.ops-card small{color:var(--muted)}.hop-chain{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.hop-wrap{align-items:center;gap:4px;display:inline-flex}.hop{border:1px solid var(--line);border-radius:8px;align-items:center;gap:5px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.hop i{font-size:10px;font-style:normal}.hop.ok{color:var(--fb-ok);background:color-mix(in srgb,var(--fb-ok) 12%,transparent);border-color:color-mix(in srgb,var(--fb-ok) 32%,transparent)}.hop.warn{color:var(--fb-problem);background:color-mix(in srgb,var(--fb-problem) 10%,transparent);border-color:color-mix(in srgb,var(--fb-problem) 38%,transparent)}.hop.down{color:var(--surface);background:var(--fb-problem);border-color:var(--fb-problem)}.hop.unknown{color:var(--muted);border-style:dashed}.hop-link{color:var(--muted);font-style:normal}.ops-detail{margin-top:10px}.ops-detail-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.ops-findings{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.ops-findings li{align-items:center;gap:8px;font-size:14px;display:flex}.ops-ok{color:var(--fb-ok);font-weight:600}.ops-resources{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:14px;display:grid}.ops-stat span{color:var(--muted);font-size:11px;display:block}.ops-stat strong{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:16px}.slo-head{align-items:baseline;gap:12px;display:flex}.slo-head strong{font-variant-numeric:tabular-nums;letter-spacing:-1px;font-size:34px}.slo-head span{color:var(--muted)}.slo-budget{gap:6px;margin-top:14px;display:grid}.slo-budget>span{color:var(--muted);font-size:12px}.slo-budget small{color:var(--muted)}@media (width<=860px){.ops-detail-grid{grid-template-columns:1fr}}:root{--canvas:#f4f3f0;--surface:#fff;--surface-raised:#fbfbf8;--line:#e7e5e0;--ink:#1d1d1f;--muted:#65635e;--brand:#c9741f;--chart-cycle:#7c3aed;--radius:14px;--shadow-card:0 1px 2px #0000000a, 0 8px 24px #0000000a}:root[data-theme=dark]{--surface-raised:#212c3c;--brand:#f0a35e;--chart-cycle:#a78bfa;--shadow-card:0 1px 2px #00000040, 0 8px 24px #00000040}:root:not([data-theme=dark]) body{background:var(--canvas)}.eyebrow{color:var(--brand)}.brand-logo{box-shadow:var(--shadow-card)}.stats strong,.stat-filter strong,.monitoring-kpis strong,.oee-grid strong,.shift-summary dd,.donut-total strong,table td,.andon-card p,.segment-detail span,.kpi-value,.meter-value{font-variant-numeric:tabular-nums}.machine-panel,.panel,.analysis-section,.stat-filter,.monitoring-kpis article,.shift-summary,.status-distribution,.maintenance-summary,.oee-grid article,.controller-card,.settings-list>div,.segment-detail,.andon-card{box-shadow:var(--shadow-card)}.badge{white-space:nowrap;background:color-mix(in srgb, var(--badge,var(--muted)) 12%, var(--surface));color:color-mix(in srgb, var(--badge,var(--muted)) 75%, var(--ink));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--badge,var(--muted)) 32%, transparent);border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:600;line-height:1.4;display:inline-flex}.badge.run{--badge:var(--state-run)}.badge.stop{--badge:#9a6b00}.badge.alarm{--badge:var(--state-alarm)}.badge.emergency{--badge:var(--state-emergency)}.badge.offline,.badge.unknown,.badge.waiting{--badge:var(--state-offline)}.badge.accent{--badge:var(--accent)}.badge.brand{--badge:var(--brand)}.badge.ok{--badge:var(--fb-ok)}.badge.problem{--badge:var(--fb-problem)}.badge.caution{--badge:var(--fb-problem);box-shadow:none;border:1px dashed color-mix(in srgb, var(--fb-problem) 55%, transparent)}.meter{gap:4px;display:grid}.meter-head{color:var(--muted);justify-content:space-between;align-items:baseline;font-size:12px;display:flex}.meter-value{color:var(--ink);font-variant-numeric:tabular-nums;font-size:20px;font-weight:600}.meter-track{background:color-mix(in srgb, var(--muted) 18%, transparent);border-radius:3px;height:6px;overflow:hidden}.meter-fill{background:var(--meter,var(--accent));border-radius:3px;height:100%;transition:width .3s}.meter.warn .meter-fill{background:repeating-linear-gradient(135deg, var(--fb-problem) 0 5px, color-mix(in srgb, var(--fb-problem) 55%, transparent) 5px 10px)}.meter.crit .meter-fill{background:var(--fb-problem)}@media (prefers-reduced-motion:reduce){.meter-fill{transition:none}}.bg-nodata{background-image:repeating-linear-gradient(135deg, color-mix(in srgb, var(--state-offline) 22%, transparent) 0 6px, transparent 6px 12px)}@media print{:root,:root[data-theme=dark]{--canvas:#fff;--surface:#fff;--surface-raised:#fff;--ink:#000;--muted:#333;--line:#999;color:#000;background:#fff}body,.shell,.content,.shell>main{color:#000!important;background:#fff!important;display:block!important}.shell>aside,.app-topbar,.pwa-bar,.workspace-filters,.overview-actions,.export-menu,.operation-presets,.custom-range,.alert-toasts,.sentinel-widget,[data-noprint]{display:none!important}.machine-panel,.panel,.analysis-section,.stat-filter,.monitoring-kpis article,.shift-summary,.status-distribution,.andon-card,.settings-list>div{break-inside:avoid;box-shadow:none!important;border:1px solid #999!important}a{text-decoration:none;color:#000!important}.segment.run{background:#2a2a2a!important}.segment.stop{background:#9a9a9a!important}.segment.alarm{background:#555!important}.segment.emergency{background:#000!important}.segment.unknown{box-shadow:inset 0 0 0 1px #999;background:#fff!important}}:root[data-theme=dark] .eyebrow{color:var(--brand)}.history-chart{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface,#fff);margin:16px 0 8px;padding:12px 8px 4px}.chart-tooltip{background:var(--surface,#fff);border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;font-size:12px;display:flex}.chart-tooltip strong,.chart-tooltip b{font-variant-numeric:tabular-nums}.status svg,.hop svg,.badge svg,.insight-chip svg,button svg,summary svg,.andon-count svg,.andon-state svg,.bottleneck-note svg{vertical-align:middle;flex-shrink:0}:is(button:has(>svg),summary:has(>svg)){align-items:center;gap:6px;display:inline-flex}.status,.badge,.hop,.insight-chip{align-items:center}.shell>aside nav button{align-items:center;gap:12px;width:100%;display:flex}.sentinel-widget{--chat-gap:1rem;z-index:80;right:max(var(--chat-gap),env(safe-area-inset-right));bottom:calc(var(--chat-gap) + env(safe-area-inset-bottom));position:fixed}.sentinel-widget .sentinel-launcher{border-radius:1.75rem;align-items:center;gap:.5rem;min-height:3.25rem;padding:.75rem 1.25rem;display:flex;box-shadow:0 4px 16px #0002}.sentinel-popup{width:min(30rem,100vw - 2rem);height:min(44rem,calc(100dvh - 7rem - env(safe-area-inset-bottom)));background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:1rem;flex-direction:column;display:flex;position:absolute;bottom:4rem;right:0;overflow:hidden;box-shadow:0 8px 32px #0003}.sentinel-popup[hidden]{display:none}.sentinel-popup:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.sentinel-popup-header{border-bottom:1px solid var(--line);background:var(--surface);flex-shrink:0;justify-content:space-between;align-items:center;gap:1rem;height:auto;padding:.75rem 1rem;display:flex}.sentinel-popup-header>div{min-width:0}.sentinel-popup-header h2{margin:0;font-size:1.125rem}.sentinel-popup-header p{color:var(--muted);overflow-wrap:anywhere;margin:.25rem 0 0;font-size:.75rem}.sentinel-popup-header strong{font:inherit;font-weight:600}.sentinel-popup .sentinel-popup-close{flex-shrink:0;width:2.75rem;height:2.75rem;padding:0;font-size:1.5rem}.sentinel-popup>.sentinel{flex-direction:column;flex:1;min-height:0;display:flex}.sentinel-popup .sentinel-controls{border-bottom:1px solid var(--line);flex-shrink:0;max-height:40%;overflow:auto}.sentinel-popup .sentinel-controls>summary,.sentinel-popup .sentinel-quota-details>summary{cursor:pointer;padding:.5rem 1rem;font-size:.75rem;font-weight:600}.sentinel-popup .sentinel-scope{border:0;gap:.75rem;min-width:0;margin:0;padding:.75rem 1rem}.sentinel-popup .sentinel-scope label{flex:10rem;min-width:0}.sentinel-popup .sentinel-scope :is(input,select){min-width:0;max-width:100%}.sentinel-popup .sentinel-layout{flex-direction:column;flex:1;align-items:stretch;gap:0;min-height:0;display:flex}.sentinel-popup .sentinel-conversation{background:var(--surface);border:0;border-radius:0;flex-direction:column;flex:1;min-height:0;padding:0;display:flex}.sentinel-popup .sentinel-thread{overscroll-behavior:contain;flex:1;min-height:0;padding:1rem;overflow:auto}.sentinel-popup .sentinel-welcome{padding:0}.sentinel-popup .sentinel-welcome h2{font-size:1.125rem}.sentinel-popup .sentinel-welcome p{margin:.5rem 0;font-size:.8125rem}.sentinel-popup .sentinel-prompts{gap:.5rem;margin-top:1rem}.sentinel-popup .sentinel-prompts button{min-height:3.5rem;padding:.75rem;font-size:.8125rem}.sentinel-popup .sentinel-answer{font-size:.875rem}.sentinel-popup .sentinel-compose{background:var(--surface);border-color:var(--line);flex-shrink:0;padding:.75rem 1rem 0}.sentinel-popup .sentinel-compose textarea{min-height:4rem;max-height:8rem}.sentinel-popup .sentinel-compose>div{margin-top:.5rem}.sentinel-popup .sentinel-footnote{margin:0;padding:.5rem 1rem;font-size:.625rem;line-height:1.5}.sentinel-popup .sentinel-quota-details{border-top:1px solid var(--line);flex-shrink:0;max-height:25%;overflow:auto}.sentinel-popup .sentinel-quota{border:0;border-radius:0;padding:1rem}.sentinel-popup :is(button,select,textarea,summary):focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (width<=600px){.sentinel-popup .sentinel-prompts{grid-template-columns:1fr}}@media (height<=500px){.sentinel-popup{height:calc(100dvh - 2rem - env(safe-area-inset-bottom));bottom:0}.sentinel-widget:has(.sentinel-popup:not([hidden])) .sentinel-launcher{visibility:hidden}.sentinel-popup .sentinel-footnote{display:none}}@media print{.sentinel-widget{display:none}}.pwa-bar.app-topbar{background:var(--surface);min-height:96px;color:var(--ink);border-bottom:1px solid var(--line);flex-wrap:nowrap;gap:24px;padding:16px 24px}.app-topbar .workspace-context{background:0 0;border:0;flex:1;justify-content:flex-start;align-items:center;gap:24px;min-width:0;height:auto;padding:0;display:flex}.app-topbar .workspace-context:empty{display:none}.app-topbar:has(.workspace-context:not(:empty)) .pwa-description{display:none}.workspace-identity{border-right:1px solid var(--line);flex:0 208px;min-width:140px;padding-right:20px}.workspace-identity .eyebrow{margin:0 0 5px;font-size:10px;line-height:1.5}.workspace-identity strong{font-size:16px;line-height:1.4;display:block}.workspace-identity .box-id{margin-top:2px;font-size:10px;font-weight:400}.workspace-identity :is(.eyebrow,strong,.box-id){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.workspace-filters{align-items:flex-end;gap:12px;min-width:0;display:flex}.app-topbar .selector{width:clamp(160px,14vw,220px);min-width:0;max-width:none;color:var(--muted);flex-direction:column;gap:6px;margin:0;font-size:11px;line-height:1.4;display:flex}.app-topbar .selector select{border-radius:10px;width:100%;height:44px;margin:0;padding:0 12px;font-size:13px}.app-topbar .pwa-actions{border-left:1px solid var(--line);flex-wrap:nowrap;flex-shrink:0;gap:16px;margin-left:auto;padding-left:24px}.app-topbar .display-preferences{gap:12px}.app-topbar .pwa-install{border-color:var(--line);white-space:nowrap;border-radius:10px;min-height:44px;padding:0 12px;font-size:12px}.app-topbar .pwa-install:hover{background:var(--canvas)}@media (width<=1100px){.pwa-bar.app-topbar{gap:16px;padding-inline:20px}.workspace-identity{flex-basis:160px;min-width:120px;padding-right:16px}.app-topbar .workspace-context{gap:16px}.app-topbar .pwa-actions{gap:12px;padding-left:16px}}@media (width<=1000px){.pwa-bar.app-topbar{flex-wrap:wrap}.app-topbar .workspace-context{flex-basis:100%}.workspace-identity{flex-basis:208px}.workspace-filters{flex:1}.app-topbar .selector{flex:1;width:auto}.app-topbar .pwa-actions{border-left:0;padding-left:0}}@media (width<=700px){.pwa-bar.app-topbar{gap:16px;padding:16px}.app-topbar .workspace-context{flex-direction:column;align-items:stretch;gap:14px}.workspace-identity{border-right:0;flex-basis:auto;padding-right:0}.workspace-identity strong{white-space:normal;flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.workspace-identity .box-id{margin:0}.workspace-filters{width:100%}.app-topbar .pwa-actions{flex-wrap:wrap;justify-content:space-between;gap:10px;width:100%}.app-topbar:has(.workspace-context:not(:empty)) .pwa-actions{border-top:1px solid var(--line);padding-top:12px}}@media print{.app-topbar .pwa-actions{display:none}}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAAWEABAAAAAACnwAAAUtAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGx4cLgZgAFQIUAmCcxEQCoNgg18LDgABNgIkAxgEIAWDXgdGDINsG1MJQB6FTZl7lLXccknfu1wyTATU3L97eflQ5pSZFDAaQ2lZGABwoEh28vM61/uRmqMp3E9NUQkmEvCWM7XNclvAh+1kutF0mLT/I/pDTx2q/sjCXMDGBokHg7TG5j00ngglgHOe50pjWa/ntXqNCoB94CaYSdTl3t0pAEWZmaF+A6qbQYYCZEDP9PEhi6OXDSzMgOl/ok4FE8D+eBw1haNoEO2PJgFDqT87zJAT2oOoGE3SBAlEDkAOiAAwuE8Nhg2Sq/G0/z+Ip0UVExQQAFFMLAEJAoiAHFAeCQHlUTigOBkCBZSA3UuuZuC/FbJ/vpv/eRTkev1KivTjpCmTY0qVAJtTklQqVq/VMFA860QVKkhCG3k2jCrMk0QUqKKlGX6CFvDmU6ag2VCRfNSkFyGcmZyGbFequMYiOXLmDL8INUtwCV8shFnNRUSzFGpS2y8imyWlQq7+gMZ2awc+kewfPO9EMgCPDwwLcf1WqpoxcmJySyxomsRvpc2TWKHXZIapmt/RkeUXUZFwrDnRB0vxRAw8Ie2u+dc8RTcbioVcg1HtDe3C1n7VWk2/toxlcYnwYNSkp6dfNfaUdmZJrVIquJuPrhpKrZImnUEWRzN20PTqEjr27+cjVlbYOqSq7a87WTJOtNGLDYi97KKYubn6/cWwdZRSsxV1TCshJKOlg3n8Q4v9InmzoU3tJcUMy3b4ASHJKOjQWaYUQD5AcSAH9ABGABCDUB0BQABxnFasQC0ZLJGnGtj/6tmrsO1KpaJB2VY8qG+Gba+K7n/RbMz662IHXj58aWvlYhTjSlCdPGvfy2IHXvccvfIiKX62+NSu+FLSJVvZahhTH1fsiQzVVhbtfjyzbtHWwzU6cClZzpK4N/0uzW+Y7iuPqjZzLsvREX33PJ5Zr2jb7r2mnNLsHE+l5USDLdMJH+AWioy8TNlMEVU6BU+koP8kEbSstgiU7dEhQh9SUDpFURBFpB9atfalM9Kkq3wQQ2Xg7kFyl6gxINHN6pa9SaAENL037ZUS3imBWM3CBMxJjZAgI0k6dC4y/SbFBv/6tRSCMjn0N6UuTWMNZBaZqP/eEsVEk7ZSUzpleZJSU9AOFdAB5dCtBS8cpCeRC35oQiIgIChYtyfH16ft9q+wCPkN3t752g3w4ffA/g//z/zpcTugCAIggK+LJX+DnqLCGMglkB/eShh+zfFonQCnC+2jOkdlAA0BFAURohsSAgqNIqFYDmBKqIlsxOY3m6Dxi03iPGFTUmxj0yINsiUCUrSaIQsWWbjpc7IEy8KGhPAk9AVhga/KmxIwK2RMUJ1S1SoUqlFvyohtmgyYEdZs3ACeX6MRYzabMiCk1YiQMN6sGViigMQoZjya8WjGoyis8DVnj8PMrqWTH7yGhxWZNWe7EN6YcQuwJAkSZcIxpHY/FjInACswZQr20Yd57QgFR37lFiOGBRAAsslxXZEPhEAAGUhESTev4BNAV4yJpITCFMnWggQRNLUEUSOahpWmQcH79zQoksIuCihsep9WiUw+mHFfpcNJ5RbPAIv00vlZxdCCRt+KNCmWyhlKmJAlgUt8K6lVmXQuq1WUUc0KBJlhMq1WvqRlskS3KtmyVVLJPFjRNJCVqZSzBS1MuEpum0E10rGQVbhu9xgs5cGskgtug3oKXKUS0qlUkngYVauqaKklBkrSpin4ZSpbwomE1lHEOWI+8R7SgfVEjnpPNFhLfIUArCNy/n5mTVDHHFFn9nSabYl3/ZvYLI0vEfXp1gE=)format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAASEAA0AAAAABXwAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHUE9TAAABMAAAAB4AAAAeRHRMdUdTVUIAAAFQAAAALQAAAC4tfxplT1MvMgAAAYAAAABTAAAAYGmlnq5jbWFwAAAB1AAAADwAAABUAMohV2dhc3AAAAIQAAAAEAAAABAAGAAhZ2x5ZgAAAiAAAADAAAAAwELfCadoZWFkAAAC4AAAADYAAAA2GnZrk2hoZWEAAAMYAAAAHwAAACQJCQOBaG10eAAAAzgAAAAXAAAAGAcQAE5sb2NhAAADUAAAAA4AAAAOAIgAiG1heHAAAANgAAAAHAAAACAAGwDzbmFtZQAAA3wAAADYAAAB3iYtQbtwb3N0AAAEVAAAADAAAABG/5SrMAABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBi0AFCZhc3nxAGiZzEkjwGkZKMxEwGEQYQYAER//+DSACUkQcoAAAAeNothTEOQFAQBWef/ZVevZfQqXQiKo3ix4FUDqNSOY87SBAmMxlco60k0KIJ6L/bTGM1qExFUsEjvImfrh2CA2LzfJ3gWVWYGYBcOxDoBuCVClMAeNpjYGBgAmJmIBYBkoxgmoXBAUjzMHAA5ViALF4GBYYFClv+/weykXmM/7/+f/w/9X4ASB8CAACScQ45AAEAAwAIAAoAEAAF//8ADwACACAAAAG4AwwAAwAHAAAzESERJSERISABmP6kASD+4AMM/PQ8ApQAAQAu//QCRgLGADUAAAUiLgI1NDY3IzUzNyE1ITY1NCYjIgYHJz4BMzIeAhUUBzMVIwchFSEOARUUFjMyNjcXDgEBPDBNNh4IBUp9pv7dAXcJQTonRh41KmY3LEk1HQlOfqYBJP6ICAhHPCpLKTMobgwcMUUqFiMPQ2BDFh02NR4jNS4oGC1BKCIYQ2BDDiAUPDwjKzcwMQABAAAAAQBBzvNdCF8PPPUACQPoAAAAANm84TwAAAAA3PJHEf5N/esGXQQ0AAAACQACAAAAAAAAeNpjYGRgYIn5+4qBga36n+9/UbZYoAgqYAMAjoYFkwB42mO8waDAAAJvIJiphEEPRAMANRYEYgAAAAAUABQAFAAUAGAAYAAAeNpjYGRgYGBjmMDAw5DIwArmIQAzAyMAGHQBD3jalc4BR0NRGIDhZ7VSMECAHATQXcugBlVElFIJAatu25jtOndl/ad+Wr8g0MFxGVA+eA7ne33Y8mZdq72Np9Zudsuen+w1Hd/Z6058Zbf1LbM37HjO3lToZ3eSGFukqRzrpqm9iCYqi+RCnTxVmItGum5cuHLpzLVbU6Wle0MztQfjpIl9d0oj76aGokelKJXMzQQ9hV5uhKYSmk5oSmG1lDcHze7gn5esvv5ywbm5yqeYPDK2EBw60HMkNIX0S1QpBKemaYJmQ+qJSrVS9KH0qvgFlnxHCnjaY2BiAIP/CxlsGLABNiBmZGRiYGZkZmRhL83LNDAwcAHRRgZOJhC+owEAx1QIaw==)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-thai-thai-400-normal-Bt1rR4gi.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-thai-400-normal-DKc8V4lk.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-thai-latin-ext-400-normal-DBkYO1u-.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-ext-400-normal-n-X-g5Z4.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-thai-latin-400-normal-CwmoKdEh.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-400-normal-YXrLwNa7.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,d09GMgABAAAAAAWAABAAAAAACjQAAAUpAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGx4cLgZgAFQISgmCcxEQCoNQg1MLDgABNgIkAxgEIAWDNAdGDINiGw0JAB6HsXvkgEk0G+iPSRT54IH6TXsz/2NSUeh2iCgQN0KUihNzKip0RfQq/sOu30XtmO6thcB2n/Au0iANZAIRZRwECURctf7///eq/vt+Fv4TsLHFokHKy5q7a1JBN3ALuG7X4Jwc77AA1RZSAbA61EFnnpq/mxIB2PHzE5Fo7was6ADpABOyoCBt/tI5un8nC/8U9UQWAmzcr8shMYcJZFJuAXrwny2GiJVqkA6zZpIaUgM0QAIAdPWY4h2orQ9c/wf0AblYCSEApFWmAEUCEtCAhTQEsJBOM3BiRaIDLpTH1cvpUPmUSF/768kf1xC8XnOJmA3Wa7Bav6jtepTKczONJuzQD5zpak4Rw55uQ4o9mKUVp0xt8Btkz+r3SAOCw8C2ZssLQtwaN0T6gkGkzmJDGx4KGYigUu2JyPNiJGQggwaiIBAy0IIq+ryWHV23JTOukirZNZFUUTUzOvG8no2p5imTyXiRep71mTgXbsjA881xn3TZZDxeGzLQ3WJ1fzLOEbXVFXYrHZ9zPWRgCvao57WcNVvWbnn+dMQ32CPTokBAtT//zpr8xiMReOjoM4eW4syJxNJwgyVgLhjdVpfs62d781gmvpIq+czA86fnqi+ZGb/2Mnhn0ivgN4cMXB3VstsNcXqNtv00O32DARoWf9z3+ZdGQga2YM/6Le0RXyAQDyHQsGLHy5RO8wBgBsAJaEATWA0AdBBuJAAgQNerHBaXecxhso8mv/jkC3HmoSV24djsFK77HhJnPrAnP8vb9PaXjqufv/85p+9f6MC+wYXzfk5/7Lj6ZdPGNz5Tzvud3b039t6obXOUrVlxwN9R4O0u6IwduHedM7Y7v9xZeqIsp235cw1tfTP5tUU9y4f9Lbnugrre2LG71nlie57xVf5fmRNdkaiPDG4v/QyQQseKbd78GgPda8BHDGhPA4piFpjX4gbiOwO8Bx2DyFu+Ky6xLfGrUm21Rfyc34rtnRlN4cIPr17sKmoxcTsuHseF3NOiAS7EXh14h3zkGFSAEbJ7sj2z2JFzLRoe7IjBWWyIOQOXdxb3Cv7hRdxzKZZik1cDbq9B1jNJMeSCHfLABoUO7LHFkjI2ij+0uAQBCFr+U8+ODHvqr1lt2l8AX9+f6wC++x3eGx3X/zX36+2ADQmAgNbEbz5iQpQO7IHgpWUWX6G4/9tK8hiFclwAZm7HyRST3ensIJGgIQArUzSEbgP6zLFCUOo9hcTNywqNRgd36uYUJhYbUZgJKne4zwbM2P+W7FaraHCfcXsl1CT77ROejYTtwnbZa1qR1aJ6dWkVs8Z2kw5bb9RO+2wwY1RCSMykCQkH7LDJpL1uYbvspJQIK0GeuuvolDp3Yd3GaQdsN2qvO1b7PrX41KKrRtvsstuR2LqmUwFVShUrUUNx08nkV/faLUxpsd12ypZrn4pjEsOk66APvxgmASCNmNczzIAQEk1oQrcc2JkoJmcEl0uLW8vVrm0pNqBQCoEbWSgOsQcJb09SpkDAEm7AWvg2Xg1K5fKbd9mZMEGnOmGZFhk8XtKqUoHANNpUKbTSPMJ0+nWrlW8ZbTQRVSPEv280U69UNh83LKzWsmQyLWCPNZjCpZiNbvWKZFjImJ2d+kSVuokwB0n22KJJDmFO8ihLzWOnQRdxXWp2vm+3m+owhUhZaVsKDehTFqVosojYj/m7+Y/zm4mXOcBv5sN5LaNmnCPM7CMekx7rc1qZqnmamL+L/xgppmY9a5hbKcDsI8PO/Q==)format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAASEAA0AAAAABVQAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHUE9TAAABMAAAAB4AAAAeRHRMdUdTVUIAAAFQAAAALQAAAC4tfxplT1MvMgAAAYAAAABSAAAAYGoMn85jbWFwAAAB1AAAADwAAABUAMohV2dhc3AAAAIQAAAAEAAAABAAGAAhZ2x5ZgAAAiAAAADCAAAAwuo/LUZoZWFkAAAC5AAAADYAAAA2Gm5romhoZWEAAAMcAAAAHwAAACQJAQOLaG10eAAAAzwAAAAXAAAAGAcXAEtsb2NhAAADVAAAAA4AAAAOAIcAh21heHAAAANkAAAAHAAAACAAGwD4bmFtZQAAA4AAAADTAAABtCFnPsJwb3N0AAAEVAAAADAAAABG/6CrQQABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBi0AFCZhc3nxAGiZzEkjwGkZKMxEwGEQYQYAER//+DSACUkQcoAAAAeNothTEOQEAUBec/uyLRq/8x1DqR7RWbPZDzqFTOo9ZKECYzGYKKnUTQohmYvlshWQ9q6yqq4hHexM84JGcHX0O+DghZnZsZgBptgKMbDe8K2wAAeNpjYGBgAmJmIBYBkoxgmoXBAUjzMHAA5ViALF4GBYYFClv+/weykXmM/7/+f/w/9X4ASB8CAACScQ45AAEAAwAIAAoAEAAF//8ADwACACAAAAG4AwwAAwAHAAAzESERJTMRIyABmP61/v4DDPz0TQJyAAEAK//0AlACxgA2AAAFIi4CNTQ2NyM1MzchNSE+ATU0JiMiBgcnPgEzMh4CFRQGBzMVIwchFSEGFRQWMzI2NxcOAQFEM1E4HQUDSHWX/vQBcAMEODMmRBs+Jmk6L0w2HQMETHuUAQ/+jwtANiZHJz0mbQweNkgqEBsLTVNNChUMMi4bIEQrKhswQicOGwxNU00WGzY3HipFLjMAAAAAAQAAAAEAQYjtGUpfDzz1AAkD6AAAAADZvOE7AAAAANzyRxD+R/3rBlsERQAAAAkAAgAAAAAAAHjaY2BkYGCJ+fuKgYGt8p/7f0W2aKAIKmADAI6gBZUAeNpjvMGgwAACbyCYqZpBG0QDADU4BGYAAAAAEwATABMAEwBhAGEAAHjaY2BkYGBgY5jAwMOQxsAK5iEAMwMjABjdARR42pXMNUIEQRQA0cKdkHhy3N3dXRPcfX3vxQk4EweggrF0R7rfV6CRB2qoqm0CLvgLXcUAv6GraecndA0zFELXpnrq6OAqdD1dDIVuV/BEzveLCXp9s9yS4dk4p3vI6jfvTzI8Wt9lhS3WWWCbPSv3lDjkmg87j3hSz3Rbu+dO5XnnRGdwD592BfTTQ394ToabAlXJzgP9qN6sZeId4awKp1U4r9Lzi3zyRZmM8aMdOesD9NHPuAr3YRcZ+3r0PG++QWoiixH33vfeBdxOzz8zK0BKAHjaY2BiAIP/axl8GbABNiBmZGRiYGZkZmRhL83LNDAwcAHRRgZOJhC+owEAzhsIiA==)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-thai-thai-500-normal-BrMc1XKn.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-thai-500-normal-BoHUoq0p.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-thai-latin-ext-500-normal-n470B0cW.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-ext-500-normal-DcylQI4B.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-thai-latin-500-normal-DQcnnbdd.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-500-normal-h5t7erDE.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,d09GMgABAAAAAAV4ABAAAAAAChgAAAUeAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGx4cLgZgAFQISAmCcxEQCoMsgzILDgABNgIkAxgEIAWDQAdGDINkG/gICB4HzvksHpSclNDkippHLXj4bGp/ZleEBnzJyIBCI8oOkMxSgBVgUI464KLU8UbB+pBL5NIngtxdgHFLKA/SQF4gooyDBAOt/2vHv09dmm5Jwz5eumAwSLdppWDtFODK0QC2Lxj9hqVZgN7e3+hB5LVU90rtdlc6G8ew80QEYKdSJREfXz6NFR0gD+AkDgrSWkvXpiP7KPxb1J0UAoL26XKrTGICmVnzYdmfLdaTTN0gHRbNJDWkBmiABABYMlYoHoI6+tr5n0FfK4uVEAJA2mUOUCQgAQ0opCGAQjpDwIkViQ64UF5Sr+VB+S2R/8+ll0Awed8SU5ZbZ1TSdqvssVybkEdY7KhdLvAY4Mx3cYolOPIDdHEQs7TjlLkafgsaLtKA4DSwJZIvC/FYyhD5qwbxehsb2ob1IQMRVGpsZzwrNoYMZNBANAVCBlpQjWe12vHJZHVKZVRmydaMGlc7Nm3N6rUpsdiTzqQiKstU7OzapyOQHUpVbPWkU6mekIHOw7o7k0JA7SLhXSQ7Zz5kYAouU1mtLpGcSGYvxCtSczzvCATUWPZhIjkPxysCI8lc5guTdeLsztKrQ4vH3JTZrTTzVGEeyvKkdkaZrg5kLxTFikx1ql9k8DDXKKAP+QzI9VrtmCEuJGzMF2CtSKklVbpTFdN/cDxkYAsum0qOxSsCgVQIgYYVO16mfJ4HADMATkAD+sAyAKAD/5IAgABdb3NYXObNDpN9U+azjz4TF58tsQvHnF24nhQX37NnErMPPnfc+vTDT7lQ6sA+7cL5FBc+dNz6fHDm7ifK+ZRzcO7HtT/2LHZ0TC48Vrm0yVVdunjq4K1l89N71hdHGsPLu0cT9bua+2MrKhOVI3Xlc8umT95YJqf2JQrbLrfWjqi5+MTSvW05gBw6Vmw+f7eB7jXgAwwYCwMi5Tbg7ykD8Y0B70X/xiC8BpZvorEc5dq0Z393ICpnl1swO1Z9Dhfl2O+OrsiwiQgXg1zIdcMaf3Ih1t3Gjvx3m+fB3mFD/GtweRXYDctrC7n/zSkudFG73V6DwDO4AGugHdZCG2ywEIpDwigboS+NxhCAYLg1HXthg6fvP6tN+xHgy7u/H+Cbvxf5/h+Z/8W8Xk8ANiQAAr4XbvMZJ1a+ZAGCiYpZfIFi/7XOyfM0qKwifVaewMl2JgQAdpCIb9EQgJVtNIRuA1YnIBV0eEsqcXNXqjHi1LzuKjVRbKvUTFRbt5s2sMORmfCAHpHqw7Y4ZKdaeMRh4cvZaY+w/Q7ZLmKVccstMWKFhD3STpiyyT6HTdthk51CpqTttdOI/fbYalbaISaFE/soMWExK0cvdbNKLx9Ojm931B6bHOIZOS5VulSpXtWP2u+Ak4+3bf8oVyotomK6KWwr558eckCYMmyPPVSg7bDSkl7D9K88Jm2rMAkA+UianGEGhJBoQhO65ei+nVGxxpFviY60qW8djhrQLIfAjWwWLdeDBh88pU2zKqU8gLX5AV7NalQq5OyP+dRTyvg5xEx+lWBUp2bViqyrJUv0iST0MotWNMfUqeBDtc6UuPbSUYKKiUFtqavSddxMh6CAsqTawrhuodJRgIqVVk2poJTbbrsEAb3wKju7zImLqZSrHJy21UpdauQqJw2UUj52GXexwqComsdsu4mqv9ZJcvjZsDQb8FPpyDGomDiypg/RD9BfQl77UTeCHF7lsG4EOAw8BjOutA6CqB37QX8R/QkOoyhxdyRQk7SAOAIAAAA=)format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAASAAA0AAAAABVQAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHUE9TAAABMAAAAB4AAAAeRHRMdUdTVUIAAAFQAAAALQAAAC4tfxplT1MvMgAAAYAAAABSAAAAYGpxoOFjbWFwAAAB1AAAADwAAABUAMohV2dhc3AAAAIQAAAAEAAAABAAGAAhZ2x5ZgAAAiAAAAC4AAAAuIJK/GhoZWFkAAAC2AAAADYAAAA2GmxrsGhoZWEAAAMQAAAAHwAAACQI/wOEaG10eAAAAzAAAAAXAAAAGAcbAEhsb2NhAAADSAAAAA4AAAAOAIIAgm1heHAAAANYAAAAHAAAACAAGwD5bmFtZQAAA3QAAADZAAABwCLFP6pwb3N0AAAEUAAAADAAAABG/6irTAABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBi0AFCZhc3nxAGiZzEkjwGkZKMxEwGEQYQYAER//+DSACUkQcoAAAAeNothTEOQEAUBec/u5HQq/81tDoR/RYbldM4j0rlPO4gscJkJkPQqkQEbeUwfbeFZD2orauoiiK8iZ9xmJ0TfA/5viBkdW5mAGp0AI4e3IAKVQAAeNpjYGBgAmJmIBYBkoxgmoXBAUjzMHAA5ViALF4GBYYFClv+/weykXmM/7/+f/w/9X4ASB8CAACScQ45AAEAAwAIAAoAEAAF//8ADwACACAAAAG4AwwAAwAHAAAzESERJTMRIyABmP7A6OgDDPz0WAJcAAEAKP/0AlcCxgAzAAAFIi4CNTQ2NyM1MzcjNSE2NTQmIyIHJz4BMzIeAhUUBzMVIwchFSEGFRQWMzI2NxcOAQFJNlM4HQMCSHGM/QFsBjMuTDREI2s9MU42HQZLeYkBAv6SBjkzJUMmRSVuDCA3SyoNFAlTTFQPFi8qOlEoLB0xQyYaGFRMUxEUNDQhKFIrNQAAAQAAAAEAQVVJdwRfDzz1AAkD6AAAAADZvOE9AAAAANzyRxH+Qv3rBl4EUAAAAAkAAgAAAAAAAHjaY2BkYGCJ+fuKgYGt5p/Tf3G2OKAIKmADAI3fBYwAeNpjvMGgwAACbyCYqZ5BA0QDADVFBGcAAAAAEwATABMAEwBcAFwAAHjaY2BkYGBgY5jAwMOQzsAK5iEAMwMjABjyARV42pWMtWFDQRBEn5kdOv4FmBkSk5gZIjEzS7WpAlWlCcSZjvbN7ewAx+TYY2f/BIjvMOMdXpnMeJdLxjPe45fRjPdXPAdckZnxIfc8z/hSBAU62g0+udNuk6ZFUbojvqUtrqjWaZFX34MZJzZ+ceFVJ8uAAElqcgYpiIrc6CdLVfRLXZ4MYekWyqIup8EDtzzM3q9ZmiHaNtcvnacrTtJa5MzmRbME0SxDtJnxp9pgSIsiebk6GDxyzwMfolkmctGS71b8Q0XbWJloI0VWNava05vhdgr05EGRAAAAeNpjYGIAg/9bGSIYsAE2IGZkZGJgZmRmZGEvzcs0MDBwAdFGBk4mEL6jAQDSjAib)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-thai-thai-600-normal-DvfsyWAn.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-thai-600-normal-BOwfviun.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-thai-latin-ext-600-normal-BXI6PlF4.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-ext-600-normal-iH120vlL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-thai-latin-600-normal-BR-dhaTH.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-600-normal-P_JjY83V.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(data:font/woff2;base64,d09GMgABAAAAAAWUABAAAAAACqAAAAU7AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGx4cLgZgAFQISgmCcxEQCoNMg1ELDgABNgIkAxgEIAWDRgdGDIQ+G3kJCJ4FjltedRKVXkquKLdOwcN/bn73JSF4oaJpT0PF0arR9qtRc76oMKa76WI3jKeM+MrcyMVALwLb/YR3kQZpIBOIKPDEggSr7/+/7k3dtzvv5rABlU54SLW1lKoZ/2IBrA3kj6dYJuMBjlEAMFq6/bfFNASVkWOY4YkAbOTLJ8L9KzZgQQFIJgGDFDVqyPM5a2L/TjJ+i3oqGYBJjyvSdukhTCDFpC3AcvyzxSjT0QqS3SKbJBlJBmRAAgBYOlbqLIB+leH/vgZlWMrShRAAklNKADoJkAAZyCAjgAwKXcCBBQkFcKJb0O9NBv2RSP72kzPWICi9dbZBYbOWmHTABtut0MTvapa4xLBpN7MAOJJNOMRSVNGFTexBlZw4pEQEn5KqL2lAzTSwrtlylxDXRgyRvGAQbotYkcdGvQaiRtf7ouG4GPcaSDUGosrjNZBr9P64XNq/bktxRI/psaXTMb1fn5+YjiulaOpxxkws4tfjrK9ourihPPGuiNa0NhOJtHgNlOWYEoxFNKZvXYhtNbnX/Oc1MNUs1+Ny2Zota7fET4c16wx7Sx6P3hd/bM2WajKseQqTC6gHNmHuRDTn6GAOqVXOa1nMud53drkqkR2jxWJP/LRf12LFEc5l8JhnUIBdEYOFJ+XSPkOcXtPHeVrdmjXWjUEwopX/n2GvgbVm+fotfWHN44l4EchYsOFmSia5AFABcAAy0AFWAgAFhAsJABCgKA12s1OdtJtsE7HXX35dfFu2Tdg324TzNnHmEVvs1YpNd75h99pLr3H69gw7tg12HDdz+jm7Zzo3PvSq7rjdUTv1YvjFllX25g2eK/nLqy1OdWBw++ne7wbnVqVWP11Z0pUfXTr863ZvZ+3qgqn83lJ7dvWywUPHen8ZjFY7g6t9xcmG5cOVO+pfA0igYMGamtZsoLgNeBED+soAfy4C6T1iIN41wP1QEETR/G4guIBM06DRPpFqIk3hwXNNJnCiYb2znP5umRdwIvY0oF9KEo+pY6STE2mkk7mSi9hy9iuxkZGLrIhfDU73IikENGdG0Po1IRtathtJcRsU/8EmA2Vgg3KwQpWLqcwvC7Hi/9RAEAEIuo8i9Y+52n6zWOUvAd566KNmgHd/HnD/H/rvGzVlGIEVCQAB70lQPT5ImLRzICjpqeJNdN5vo4p0njJ2tQBUrsfBLNN0fjaQkDqQEYCFWTJCsQKDoapKUOJjlYSFt1UyLRZUCj57VSayDKtUKtS5UvwWzNtfke3Wwj+6z5S9oly23z6+7xe1nc8ue83xW63fCkv1WGmN7WYctt6EnfbZYN6EKK8eu2w3bZMZe+0TtctOuiCf4CIBPQjoQUAPBLptaqA1OJnWQ9jw+Nu6ev3MbkeewDP3NDfpQgKCmukLmQe79gY3+ui6bbedbmLEPuqaQZj5lQfNmOYjAUDyEaaVXqECQkjIQhaK+cDOaEDcYa2GAj11/NbugAHVEghcSNUikbjJ8CifRl7FcrkAS/WjpCpTKEcqe3ZRmmIFsrjZxIl3laBDSJVi6b2vklirV51SuYZLpmGNqxRW6hRULFN2m2jmUyZv6G6VoHKFss1uMz1qVSnc0mPhPY8cKXqVlaXa+HlkSMvGlLVBzkvTq+wcNG65BkXScVBBPzParnKyXLuAEtnKlULlscDFGljmpSRIZ8VcbcBXtJSgUzaxH3E3duECdZMD2CUak0v24XX4KP5AC8l+7Mz8SeuWummZcRqnLnJAGqfA9yLijzRA9uMadGc6eab7dim7w3zscjGxDwAA)format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAAR8AA0AAAAABWAAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHUE9TAAABMAAAAB4AAAAeRHRMdUdTVUIAAAFQAAAALQAAAC4tfxplT1MvMgAAAYAAAABUAAAAYGrXodhjbWFwAAAB1AAAADwAAABUAMohV2dhc3AAAAIQAAAAEAAAABAAGAAhZ2x5ZgAAAiAAAAC8AAAAvOFh37BoZWFkAAAC3AAAADYAAAA2Gl1rt2hoZWEAAAMUAAAAHwAAACQI7wN4aG10eAAAAzQAAAAXAAAAGAcgAEZsb2NhAAADTAAAAA4AAAAOAIQAhG1heHAAAANcAAAAHAAAACAAGwD4bmFtZQAAA3gAAADSAAABxiLhP1Fwb3N0AAAETAAAADAAAABG/7GrWAABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBi0AFCZhc3nxAGiZzEkjwGkZKMxEwGEQYQYAER//+DSACUkQcoAAAAeNothbcBgWEYBu9Nslb97aFTibWsUprEFIbQCBOZAX9+wh2uF30ToFfdAIvacuIsY9B+x0KNYlBeaTKbrBI3SHc//D7gBx0lEQHQoT6BhOYC/gqzeNpjYGBgAmJmIBYBkoxgmoXBAUjzMHAA5ViALF4GBYYFClv+/weykXmM/7/+f/w/9X4ASB8CAACScQ45AAEAAwAIAAoAEAAF//8ADwACACAAAAG4AwwAAwAHAAAzESERJTMRIyABmP7M0NADDPz0ZAJEAAEAJv/0Al4CxgA1AAAFIi4CNTQ2NyM1MzcjNSE2NTQmIyIGByc+ATMyHgIVFAYHMxUjBzMVIQYVFBYzMjY3Fw4BAU85VTkdAQFHbIHtAWcFLSkkQRdKIG0/M1A3HQIDSnd88/6XAzUuI0AkTCNuDCI6TCsIDgdaRFoPESsmHRpdJS4eNEQlCxgMWkRaDA0xMCAnXSo2AAEAAAABAEGWNa8eXw889QAJA+gAAAAA2bzhOQAAAADc8kcQ/jL96wZeBFwAAQAJAAIAAAAAAAB42mNgZGBgifn7ioGBreaf0X9utjigCCpgAwCLcwVwAHjaY7zBoMAAAm8gmKmFQQ1EAwA1XgRqAAAAABMAEwATABMAXgBeAAB42mNgZGBgYGOYwMDDkMbACuYhADMDIwAY3QEUeNqNjTVyA0AQBNvMDh2bmRkSMzOzLWbm3+hdCvUSTbB1sQ52ehnoJkgbLe09wGdLp3EL49SNW1VTM25jl6pxO4tkjTsY4tu4k2nWjQdFECavm1bvkm4OH1ki8vPiRXLiuDRFlpDyd5xyzQWH3HCvTIAyT3hIkuOZsCjCgrIp5fy8Kp9FM+QnGWaFRVase9j1D7sJw27GMDbDevZcl6i57U6b2XdEijQVsuIQYfIMs8oyK+ww7CaoiixpFsUHxHWHcR3kkEdAGpAWZf0sNgCOlkFUAAB42mNgYgCD//sYUhiwATYgZmRkYmBmZGZkYS/NyzQwMHAB0UYGTiYQvqMBANd1CLA=)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-thai-thai-700-normal-0moayseG.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-thai-700-normal-Bo0ALcDh.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-thai-latin-ext-700-normal-BKYUUsrV.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-ext-700-normal-CIKhqm8k.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-thai-latin-700-normal-Ct-BCS9V.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-700-normal-SmVfMUPf.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-sans:"IBM Plex Sans Thai", "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", "Sukhumvit Set", "Noto Sans Thai", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--canvas:#f3f2ee;--surface:#fff;--surface-2:#f8f7f3;--surface-raised:#fbfaf7;--line:#e4e1da;--line-strong:#cfcbc2;--ink:#1b1e23;--ink-2:#3c4148;--muted:#5f646c;--accent:#2457c5;--accent-ink:#fff;--accent-soft:#2457c51a;--brand:#c9741f;--on-brand:#1b1e23;--on-accent:#fbfbf8;--state-run:#1f8a4c;--state-stop:#b88400;--state-alarm:#d23c2f;--state-emergency:#7c3aed;--state-offline:#7a808a;--state-run-text:#1a7a43;--state-stop-text:#8a6300;--state-alarm-text:#b8321f;--state-emergency-text:#7c3aed;--state-offline-text:#5f656e;--chart-spindle:#0e7490;--chart-servo:var(--accent);--chart-marker:#be185d;--chart-grid:var(--line);--chart-axis:var(--muted);--fb-info:var(--accent);--fb-ok:#0f766e;--fb-problem:#be185d;--brand-text:#a55a12;--nav-bg:var(--canvas);--nav-surface:var(--surface);--nav-line:var(--line);--nav-ink:#4a4f57;--nav-muted:#5f646c;--nav-strong:#1b1e23;--nav-hover:#1012160d;--nav-active:#1b1e23;--nav-active-bg:var(--accent-soft);--nav-accent:#2457c5;--nav-disabled:#b0b4ba;--nav-scroll:#d3d0c8;--r-sm:6px;--r-md:10px;--r-lg:14px;--radius:var(--r-lg);--shadow-card:0 1px 2px #1012160d, 0 4px 16px #1012160a;--shadow-pop:0 12px 32px #10121629;--chart-cycle:var(--ink-2)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#14181d;--surface:#1c2229;--surface-2:#222932;--surface-raised:#262e38;--line:#2e3640;--line-strong:#3d4753;--ink:#eef0f2;--ink-2:#ced3d9;--muted:#98a1ac;--accent:#7fa6f0;--accent-ink:#0f1520;--accent-soft:#7fa6f024;--brand:#f0a35e;--on-brand:#1c2128;--on-accent:#0f1520;--state-run:#4cc38a;--state-stop:#f2c14e;--state-alarm:#ff6f61;--state-emergency:#b69cff;--state-offline:#8d96a3;--state-run-text:var(--state-run);--state-stop-text:var(--state-stop);--state-alarm-text:var(--state-alarm);--state-emergency-text:var(--state-emergency);--state-offline-text:#a3abb7;--chart-spindle:#22d3ee;--chart-marker:#f472b6;--fb-ok:#2dd4bf;--fb-problem:#f472b6;--brand-text:var(--brand);--nav-bg:var(--canvas);--nav-surface:var(--surface);--nav-line:var(--line);--nav-ink:#b9c0ca;--nav-muted:#98a1ac;--nav-strong:#f3f4f6;--nav-hover:#ffffff0d;--nav-active:#fff;--nav-active-bg:var(--accent-soft);--nav-accent:#7fa6f0;--nav-disabled:#5d6672;--nav-scroll:#3a424e;--shadow-card:0 1px 2px #0000004d, 0 6px 20px #00000038;--shadow-pop:0 14px 36px #00000073;--chart-cycle:var(--ink-2)}:root,:root[data-theme=dark]{font-family:var(--font-sans);color:var(--ink);background:var(--canvas)}:root body,:root .shell,:root .content,:root .shell>main{background:var(--canvas);color:var(--ink)}:root body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}:root :is(h1,h2,h3){color:var(--ink);letter-spacing:-.02em;font-weight:650}:root h1{margin:4px 0 18px;font-size:30px;line-height:1.2}:root h2{font-size:19px;line-height:1.35}:root :is(.quiet,.footnote,label,.stats p,.box-id){color:var(--muted)}:root .eyebrow,:root[data-theme=dark] .eyebrow{color:var(--brand);letter-spacing:.14em;text-transform:uppercase;font-size:10.5px;font-weight:600}:root .mode{color:var(--nav-accent)}:root a{color:var(--accent)}::selection{background:var(--accent-soft)}:root :is(button,input,select,textarea){border-radius:var(--r-md);font-family:inherit}:root button{background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);font-weight:500}:root button:hover:not(:disabled){background:var(--surface-2);border-color:color-mix(in srgb, var(--accent) 45%, var(--line-strong))}:root button:disabled{opacity:.5;cursor:not-allowed}:root .primary,:root[data-theme=dark] .primary{background:var(--accent);color:var(--accent-ink);border:1px solid var(--accent);font-weight:600}:root .primary:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 88%, #000);border-color:#0000}:root :is(input,select,textarea){background:var(--surface);color:var(--ink);border:1px solid var(--line-strong)}:root :is(input,select,textarea):hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 40%, var(--line-strong))}:root :is(input,select,textarea):disabled{color:var(--muted);background:var(--surface-2)}:root input[readonly]{background:var(--surface-2);color:var(--muted)}:root :is(button,input,select,textarea,summary,a):focus-visible{outline:2px solid var(--accent);outline-offset:2px}:root fieldset{border-color:var(--line);border-radius:var(--r-lg)}:root :is(.panel,.machine-panel,.analysis-section,.stat-filter,.monitoring-kpis article,.status-distribution,.fleet-machine,.ops-card,.settings-list>div,.maintenance-summary,.shift-summary,.controller-card,.oee-grid article,.history-chart,.segment-detail,.signal-settings,.table-wrap,.empty,.details>div,.maintenance-grid>div,.service-entry,.service-record,.service-qr,.sentinel-conversation,.sentinel-quota){background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}:root :is(.details>div,.maintenance-grid>div){background:var(--surface-2);box-shadow:none}:root .table-wrap{box-shadow:none}:root .empty{color:var(--muted);box-shadow:none;border-style:dashed}:root table{background:var(--surface);color:var(--ink);border-collapse:collapse}:root :is(thead,th){background:var(--surface-2)}:root th{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11.5px;font-weight:600}:root :is(th,td,tr,fieldset){border-color:var(--line)}:root label strong{color:var(--ink)}:root .service-qr img{background:#fff}:root .signal-option{background:var(--surface-2)}:root .signal-option:has(input:checked){background:var(--accent-soft);border-color:var(--accent)}:root tbody tr:hover{background:var(--surface-2)}:root td{font-variant-numeric:tabular-nums}:root .shell>aside,:root[data-theme=dark] .shell>aside{background:var(--nav-bg);border-right:1px solid var(--nav-line);color:var(--nav-ink);padding:22px 14px}:root .shell>aside nav button,:root[data-theme=dark] .shell>aside nav button{color:var(--nav-ink);border-radius:var(--r-sm);background:0 0;border:0;padding:9px 12px;font-size:13.5px;font-weight:500;position:relative}:root .shell>aside nav button:hover:not(:disabled){background:var(--nav-hover);color:var(--nav-strong)}:root .shell>aside nav button.active,:root[data-theme=dark] .shell>aside nav button.active{background:var(--nav-active-bg);color:var(--nav-active)!important;border-left:0!important}:root .shell>aside nav button.active:before{content:"";background:var(--nav-accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:7px;bottom:7px;left:-14px}:root .shell>aside .nav-icon{color:var(--nav-muted)}:root .shell>aside nav button.active .nav-icon,:root .shell>aside nav button:hover .nav-icon{color:var(--nav-accent)}:root .shell>aside nav button:disabled{color:var(--nav-muted)}:root .nav-badge{background:var(--state-alarm);color:#fff}:root .pwa-bar.app-topbar,:root[data-theme=dark] .pwa-bar.app-topbar{background:var(--surface);border-bottom:1px solid var(--line);min-height:76px;color:var(--ink);padding:12px 24px}:root .workspace-identity{border-right-color:var(--line)}:root .workspace-identity strong{font-size:16px;font-weight:650}:root .app-topbar .selector{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);gap:4px;font-size:10.5px;font-weight:600}:root .app-topbar .selector :is(select,input){text-transform:none;letter-spacing:0;background:var(--surface-2);border-color:var(--line);height:38px;font-size:13px}:root .app-topbar .pwa-actions{border-left-color:var(--line);gap:12px}:root .app-topbar .pwa-install{background:var(--surface);border-color:var(--line);min-height:38px;color:var(--accent)}:root .language-picker{border-color:var(--line);background:var(--surface-2)}:root .language-picker button{min-height:30px;color:var(--muted);background:0 0;border:0}:root .language-picker button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink)}:root .pwa-description{color:var(--muted)}.theme-switch{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);gap:2px;padding:3px;display:inline-flex}:root .theme-switch button{min-width:32px;min-height:30px;color:var(--muted);background:0 0;border:0;place-items:center;padding:0 8px;display:inline-grid}:root .theme-switch button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #0000001f}:root .status,:root[data-theme=dark] .status{--s:var(--state-offline);--s-text:var(--state-offline-text);color:var(--s-text);background:color-mix(in srgb, var(--s) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--s) 38%, transparent);letter-spacing:.02em;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:650}:root .status.run{--s:var(--state-run);--s-text:var(--state-run-text)}:root .status.stop{--s:var(--state-stop);--s-text:var(--state-stop-text)}:root .status.alarm{--s:var(--state-alarm);--s-text:var(--state-alarm-text)}:root .status:is(.offline,.unknown,.waiting){--s:var(--state-offline);--s-text:var(--state-offline-text)}:root .status.emergency,:root[data-theme=dark] .status.emergency{color:#fff;background:var(--state-emergency);border-color:var(--state-emergency)}:root[data-theme=dark] .status.emergency{color:#160c2e}:root .status.waiting{border-style:dashed}:root .badge.stop{--badge:var(--state-stop)}:root .state-chip,:root[data-theme=dark] .state-chip{background:var(--surface-2)}:root :is(.stat-filter strong,.donut-total strong,.slo-head strong,.andon-count,.oee-grid strong,.stats strong){font-family:var(--font-sans);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-weight:600}:root :is(.monitoring-kpis strong,.meter-value,.ops-stat strong,.machine-updated b,.timeline-ticks,.chart-tooltip){font-variant-numeric:tabular-nums}:root .stat-filter{padding:14px 16px}:root .stat-filter p{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);align-items:center;gap:6px;font-size:11.5px;font-weight:600;display:flex}:root .stat-filter strong{font-size:32px}:root .stat-filter.state-run strong{color:var(--state-run)}:root .stat-filter.state-stop strong{color:var(--state-stop)}:root .stat-filter.state-alarm strong{color:var(--state-alarm)}:root .stat-filter.state-emergency strong{color:var(--state-emergency)}:root .stat-filter.state-offline strong{color:var(--state-offline)}:root .stat-filter[aria-pressed=true],:root[data-theme=dark] .stat-filter[aria-pressed=true]{background:var(--accent-soft);outline:2px solid var(--accent);outline-offset:-2px}:root .fleet-machine,:root .fleet-machine:is(.state-alarm,.state-stop,.state-offline,.state-emergency,.state-run){border:1px solid var(--line);border-top:4px solid var(--machine-color,var(--state-offline));border-left-width:1px;padding:16px 14px 14px}:root .fleet-machine.state-run{--machine-color:var(--state-run)}:root .fleet-machine.state-stop{--machine-color:var(--state-stop)}:root .fleet-machine.state-alarm{--machine-color:var(--state-alarm)}:root .fleet-machine.state-emergency{--machine-color:var(--state-emergency);box-shadow:0 0 0 2px color-mix(in srgb, var(--state-emergency) 40%, transparent), var(--shadow-card)}:root .fleet-machine.state-offline{--machine-color:var(--state-offline);border-top-style:dashed}:root .fleet-machine.selected,:root[data-theme=dark] .fleet-machine.selected{background:var(--surface);outline:2px solid var(--accent);outline-offset:2px;border-color:var(--line)}:root .fleet-machine .cnc-illustration,:root .fleet-machine svg.cnc{max-width:150px}:root .machine-panel,:root[data-theme=dark] .machine-panel{background:var(--surface);border-left:4px solid var(--machine-color,var(--line))}:root .segmented,:root .operation-presets{--gap:6px}:root .operation-presets>button{background:var(--surface);border-radius:999px;padding:6px 14px;font-size:13px}:root .operation-presets>button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}:root .segmented{background:var(--surface-2);border-color:var(--line)}:root .segmented button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #0000001f}:root .insight-chip{background:var(--surface);border-color:var(--line)}:root :is(.info-tip>div,.export-options,.shift-editor>div,.palette){background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-pop)}:root .export-menu summary{background:var(--surface);border-color:var(--line-strong)}:root .palette li[aria-selected=true]{background:var(--accent-soft)}:root .error,:root[data-theme=dark] .error{background:color-mix(in srgb, var(--fb-problem) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--fb-problem) 30%, transparent);border-left:3px solid var(--fb-problem);border-radius:var(--r-md);color:var(--fb-problem)!important}:root .success,:root[data-theme=dark] .success{color:var(--fb-ok);background:color-mix(in srgb, var(--fb-ok) 10%, var(--surface));border-radius:var(--r-md)}:root .warn-text{color:var(--fb-problem)}:root .freshness-warn{color:var(--state-offline-text)}:root .freshness-ok{color:var(--ink-2)}:root .login-layout{background:var(--canvas)}:root .intro,:root[data-theme=dark] .intro{color:#eef0f2;background:#13171c;border:0}:root .intro :is(h1,.intro-copy,.flow){color:#eef0f2}:root .intro .eyebrow{color:var(--brand)}:root .intro .company-credit{color:#7d8692}:root .login-panel,:root[data-theme=dark] .login-panel{background:var(--surface);color:var(--ink)}@media (width<=700px){:root .shell>aside{padding:14px}:root .shell>aside nav button.active:before{display:none}:root .stat-filter strong{font-size:26px}}@media print{:root .shell>aside{display:none!important}}:root :is(.state-run,.state-stop,.state-alarm,.state-emergency,.state-offline){--machine-tint:color-mix(in srgb, var(--machine-color) 6%, var(--surface))}:root .machine-panel,:root[data-theme=dark] .machine-panel{background:var(--machine-tint,var(--surface))}:root dl.settings-list,:root[data-theme=dark] dl.settings-list{box-shadow:none;background:0 0;border:0;padding:0}:root .settings-list>div{box-shadow:none}:root .content>:is(section,div)>.section-title:first-child,:root .content .section-title{margin-top:4px}.sidebar-menu{display:contents}:root .menu-toggle{display:none}:root .shell{grid-template-columns:248px minmax(0,1fr)}:root[data-theme] .shell>aside.sidebar{background:var(--surface);border-right:1px solid var(--line);height:100dvh;color:var(--nav-ink);flex-direction:column;gap:0;padding:0;display:flex;position:sticky;top:0;overflow:hidden}.sidebar-brand{align-items:center;gap:12px;padding:20px;display:flex}:root[data-theme] .sidebar .brand-home{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;margin:0;padding:0;display:flex}:root[data-theme] .sidebar .brand-home:hover:not(:disabled){background:0 0;border:0}.brand-tile{background:var(--brand);width:36px;height:36px;color:var(--on-brand);font:700 13px/1 var(--font-sans);letter-spacing:-.01em;border-radius:8px;flex:none;place-items:center;display:grid}.brand-text{min-width:0;line-height:1.25;display:block}.brand-text strong{color:var(--ink);font-size:15px;font-weight:600;display:block}.brand-text small{color:var(--nav-muted);font-size:12px;display:block}.view-picker{margin:0 16px 16px;display:block;position:relative}:root[data-theme] .view-picker select{appearance:none;background:var(--brand);width:100%;height:auto;min-height:0;color:var(--on-brand);cursor:pointer;border:0;border-radius:8px;padding:8px 32px 8px 12px;font-size:14px;font-weight:500;line-height:1.45;transition:filter .15s;box-shadow:0 1px 2px #00000014}:root[data-theme] .view-picker select:hover:not(:disabled){background:var(--brand);filter:brightness(1.05);border:0}:root[data-theme] .view-picker select:focus-visible{outline:2px solid color-mix(in srgb, var(--ink) 70%, transparent);outline-offset:2px}.view-picker-caret{width:10px;height:10px;fill:var(--on-brand);pointer-events:none;position:absolute;top:50%;right:12px;transform:translateY(-50%)}:root .view-picker select option{background:var(--surface);color:var(--ink)}:root .sidebar nav{scrollbar-width:thin;scrollbar-color:var(--nav-scroll) transparent;flex:1;min-height:0;margin:0;padding:0 12px 16px;display:block;overflow-y:auto}.sidebar nav::-webkit-scrollbar{width:6px}.sidebar nav::-webkit-scrollbar-thumb{background:var(--nav-scroll);border-radius:3px}.nav-group+.nav-group{margin-top:4px}:root[data-theme] .sidebar nav .nav-group-toggle{width:100%;min-height:0;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;margin:0;padding:8px;font-size:15px;font-weight:700;line-height:1.45;display:flex}:root[data-theme] .sidebar nav .nav-group-toggle:hover:not(:disabled){background:color-mix(in srgb, var(--surface-raised) 70%, transparent);color:var(--ink);border:0}.nav-group-toggle .caret{fill:currentColor;flex:none;width:10px;height:10px;transition:transform .2s;transform:rotate(90deg)}.nav-group.closed .nav-group-toggle .caret{transform:none}:root .sidebar nav .nav-count{color:var(--nav-muted);font-weight:700}.nav-items{gap:2px;padding:0 0 4px;display:grid}:root[data-theme] .sidebar nav .nav-items button{width:100%;min-height:0;color:var(--nav-ink);text-align:left;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;margin:0;padding:6px 8px 6px 28px;font-size:15px;font-weight:400;line-height:1.45;transition:background-color .15s,color .15s;display:flex}:root[data-theme] .sidebar nav .nav-items button:hover:not(:disabled){background:color-mix(in srgb, var(--surface-raised) 60%, transparent);color:var(--ink);border:0}:root[data-theme] .sidebar nav .nav-items button.active{background:var(--surface-raised);color:var(--ink);border-left:0;font-weight:500}:root .sidebar nav .nav-items button.active:before{display:none}:root[data-theme] .sidebar nav .nav-items button:disabled{color:var(--nav-disabled);opacity:1;background:0 0}.nav-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:root .sidebar .nav-badge{min-width:0;height:auto;font:700 12px/18px var(--font-sans);font-variant-numeric:tabular-nums;border-radius:999px;flex:none;place-items:center;padding:0 6px;display:inline-grid}:root .sidebar .nav-badge.alarm{background:var(--state-alarm);color:var(--surface)}:root .sidebar .nav-badge.offline{color:var(--state-offline-text);box-shadow:inset 0 0 0 1px var(--state-offline);background:0 0}.nav-group-toggle .nav-badge{margin-left:auto}.sidebar-footer{border-top:1px solid var(--line);gap:8px;padding:12px;display:grid}.sidebar-meta{color:var(--nav-muted);justify-content:space-between;align-items:center;gap:8px;margin:0;padding:0 4px;font-size:11px;display:flex}:root .sidebar-meta .mode{letter-spacing:.04em;color:var(--nav-muted);font-size:11px;font-weight:600}.sidebar-meta small{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:11px}.sidebar-account{align-items:center;gap:4px;min-width:0;display:flex}.connection{min-width:0;color:var(--ink-2);border-radius:8px;flex:auto;align-items:center;gap:8px;margin:0;padding:6px 8px;font-size:14px;display:flex}.connection i{background:var(--fb-ok);border-radius:50%;flex:none;width:8px;height:8px}.connection.down i{background:var(--fb-problem)}.connection.down .connection-label{color:var(--fb-problem)}.connection>span{min-width:0;line-height:1.3}.connection-label{display:block}.connection small{text-overflow:ellipsis;white-space:nowrap;color:var(--nav-muted);font-family:var(--font-mono);font-size:11px;display:block;overflow:hidden}:root[data-theme] .icon-button{width:36px;height:36px;min-height:0;color:var(--nav-muted);background:0 0;border:0;border-radius:8px;flex:none;place-items:center;margin:0;padding:0;display:inline-grid}:root[data-theme] .icon-button:hover:not(:disabled){background:var(--surface-raised);color:var(--ink);border:0}.icon-button-text{font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}:root .app-topbar:has(.workspace-context:not(:empty)) .display-preferences{display:none}:root .pwa-bar.app-topbar,:root[data-theme=dark] .pwa-bar.app-topbar{gap:14px;min-height:64px;padding:10px 20px}:root .app-topbar .workspace-context{align-items:center;gap:12px}:root .workspace-identity{border-right:1px solid var(--line);flex:none;align-items:center;gap:10px;min-width:0;padding-right:14px;display:flex}.machine-pill,.group-pill{align-items:center;margin:0;display:inline-flex;position:relative}.machine-pill .dot{background:var(--state-offline);pointer-events:none;border-radius:50%;width:9px;height:9px;position:absolute;left:12px}.machine-pill.state-run .dot{background:var(--state-run)}.machine-pill.state-stop .dot{background:var(--state-stop)}.machine-pill.state-alarm .dot,.machine-pill.state-emergency .dot{background:var(--state-alarm);box-shadow:0 0 0 3px color-mix(in srgb, var(--state-alarm) 22%, transparent)}:root .machine-pill select{background-color:var(--surface-2);border-color:var(--line);border-radius:999px;max-width:240px;min-height:38px;padding:0 30px 0 28px;font-size:14px;font-weight:650}:root .group-pill select{background-color:var(--surface-2);border-color:var(--line);border-radius:999px;max-width:220px;min-height:38px;padding:0 28px 0 14px;font-size:13px}.identity-meta{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}:root .identity-meta .box-id{color:var(--muted);margin:0;font-size:12px}.fleet-chips{scrollbar-width:none;flex:auto;align-items:center;gap:8px;min-width:0;padding:2px 0;display:flex;overflow-x:auto}.fleet-chips::-webkit-scrollbar{display:none}.fleet-summary{color:var(--muted);white-space:nowrap;flex:none;font-size:13px}.fleet-summary.alarm{color:var(--state-alarm-text);font-weight:600}.fleet-summary.offline{color:var(--muted)}.fleet-summary.ok{color:var(--state-run-text)}:root .fleet-chip{white-space:nowrap;background:var(--surface-2);border:1px solid var(--line);min-height:32px;color:var(--ink);border-radius:999px;flex:none;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.fleet-chip .dot{background:var(--state-offline);border-radius:50%;width:8px;height:8px}.fleet-chip.state-run .dot{background:var(--state-run)}.fleet-chip.state-stop .dot{background:var(--state-stop)}.fleet-chip:is(.state-alarm,.state-emergency) .dot{background:var(--state-alarm)}:root .fleet-chip.state-run{border-color:color-mix(in srgb, var(--state-run) 45%, var(--line))}:root .fleet-chip:is(.state-alarm,.state-emergency){border-color:color-mix(in srgb, var(--state-alarm) 55%, var(--line))}:root .fleet-chip:is(.state-offline,.state-waiting) .dot{box-shadow:inset 0 0 0 1.5px var(--state-offline);background:0 0}:root .fleet-chip.current{background:var(--accent-soft);border-color:var(--accent)}:root .topbar-search{background:var(--surface-2);border:1px solid var(--line);min-height:38px;color:var(--muted);border-radius:10px;flex:none;align-items:center;gap:8px;padding:0 10px 0 12px;font-size:13px;display:inline-flex}:root .topbar-search kbd{font:11px var(--font-mono);border:1px solid var(--line);color:var(--muted);border-radius:5px;padding:1px 6px}@media (width<=1100px){:root .shell{grid-template-columns:236px minmax(0,1fr)}.topbar-search span{display:none}}@media (width<=700px){:root .shell{display:block}:root[data-theme] .menu-toggle{background:var(--surface-raised);min-height:36px;color:var(--ink);border:1px solid var(--line);border-radius:8px;align-items:center;gap:6px;margin-left:auto;padding:0 12px;display:inline-flex}.sidebar-brand{padding:12px 16px}.sidebar-menu{display:none}.sidebar.menu-open .sidebar-menu{gap:0;display:grid}.sidebar:not(.menu-open) .sidebar-footer{display:none}:root[data-theme] .shell>aside.sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;position:relative;overflow:visible}:root .sidebar nav{overflow:visible}.nav-group{display:block}:root .workspace-identity{border-right:0;flex-wrap:wrap;padding-right:0}.fleet-chips{flex-basis:100%}}:root .sidebar nav button span{font-size:inherit;color:inherit;margin:0}:root .sidebar nav .nav-count{color:var(--nav-muted);font-size:15px}:root .sidebar nav .nav-badge{font-size:12px}.nav-items[hidden]{display:none!important}@media (width>=701px){:root .shell{padding-left:248px;display:block}:root[data-theme] .shell>aside.sidebar{z-index:40;width:248px;height:auto;position:fixed;top:0;bottom:0;left:0}:root:has(.shell) .pwa-bar.app-topbar{z-index:30;margin-left:248px;position:sticky;top:0}:root:has(.shell) .pwa-help{margin-left:248px}}@media (width>=701px) and (width<=1100px){:root .shell{padding-left:236px}:root[data-theme] .shell>aside.sidebar{width:236px}:root:has(.shell) .pwa-bar.app-topbar{margin-left:236px}:root:has(.shell) .pwa-help{margin-left:236px}}:root .needs-attention{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);margin:16px 0;padding:16px 18px}:root .lamp{text-align:left;background:color-mix(in srgb, var(--lamp,var(--state-offline)) 10%, var(--surface));border:1px solid color-mix(in srgb, var(--lamp,var(--state-offline)) 40%, transparent);min-height:40px;color:var(--ink);border-radius:10px;align-items:center;gap:10px;padding:0 12px;font-size:13px;font-weight:600;display:flex}.lamp i{background:var(--lamp,var(--state-offline));border-radius:50%;flex:none;width:12px;height:12px}.lamp span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lamp.state-run{--lamp:var(--state-run)}.lamp.state-stop{--lamp:var(--state-stop)}.lamp.state-alarm{--lamp:var(--state-alarm)}.lamp.state-emergency{--lamp:var(--state-emergency)}.lamp:is(.state-alarm,.state-emergency) i{animation:1.4s ease-in-out infinite lamp-pulse}:root .lamp:is(.state-offline,.state-waiting){border-style:dashed}.lamp:is(.state-offline,.state-waiting) i{box-shadow:inset 0 0 0 2px var(--state-offline);background:0 0}:root .lamp.current{outline:2px solid var(--accent);outline-offset:1px}@keyframes lamp-pulse{50%{box-shadow:0 0 0 5px color-mix(in srgb, var(--lamp) 25%, transparent)}}@media (prefers-reduced-motion:reduce){.lamp i{animation:none!important}}.needs-attention ul{gap:2px;margin:0;padding:0;list-style:none;display:grid}.needs-attention li{border-top:1px solid var(--line);grid-template-columns:auto minmax(140px,1.2fr) minmax(160px,2fr) 90px auto;align-items:center;gap:12px;padding:10px 8px;display:grid}.needs-attention li:first-child{border-top:0}:root .needs-attention .link-name{text-align:left;min-height:0;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0;display:grid}.needs-attention .link-name small{color:var(--muted);font-size:12px}.needs-attention .reason{color:var(--ink-2);font-size:13px}.needs-attention .since{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;font-size:13px}.needs-attention .actions{justify-content:flex-end;gap:6px;display:flex}:root .needs-attention .actions button{min-height:32px;padding:0 12px;font-size:12.5px}.all-clear{color:var(--state-run-text);margin:0;font-weight:600}@media (width<=900px){.needs-attention li{grid-template-columns:auto 1fr}.needs-attention .reason,.needs-attention .since,.needs-attention .actions{text-align:left;grid-column:1/-1;justify-content:flex-start}}:root .sidebar nav button .nav-text,:root .sidebar nav .nav-group-toggle>span{display:inline}:root .sidebar nav button .nav-badge,:root .sidebar nav .nav-group-toggle .nav-badge{display:inline-grid}@media (width<=700px){:root .pwa-bar.app-topbar{gap:10px;padding:10px 14px}:root .app-topbar .workspace-context{flex-flow:wrap;justify-content:flex-start;align-items:center;gap:8px}:root .workspace-identity{flex:100%;justify-content:flex-start}:root .machine-pill select{max-width:200px}:root .group-pill{flex:auto}:root .group-pill select{width:100%;max-width:none}.fleet-chips{order:3}:root .topbar-search{padding:0 10px}:root .topbar-search kbd{display:none}:root .app-topbar .pwa-actions{padding-top:8px}}:root .maintenance-title .status svg,:root .maintenance-title button svg{width:14px;max-width:none;height:14px}:root .maintenance-title .status{align-self:flex-start;width:auto}:root .segmented button[aria-pressed=true],:root[data-theme=dark] .segmented button[aria-pressed=true],:root .cnc-read-actions>button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);border-color:var(--accent);box-shadow:none;font-weight:650}:root .segmented button{min-height:34px;padding:0 14px}:root .oee-grid,:root[data-theme=dark] .oee-grid{box-shadow:none;background:0 0;border:0;gap:12px;padding:0}:root .oee-grid article{gap:6px;padding:14px 16px;display:grid}:root .oee-grid span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:600}:root .pwa-bar.app-topbar,:root[data-theme=dark] .pwa-bar.app-topbar{background:color-mix(in srgb, var(--canvas) 90%, transparent);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}:root{--r-lg:12px;--shadow-card:0 1px 2px #0000000a}:root[data-theme=dark]{--shadow-card:0 1px 2px #0003}:root[data-theme] .content{padding:24px 24px 48px}:root[data-theme] .eyebrow{color:var(--brand-text);letter-spacing:.025em;text-transform:none;margin:0 0 4px;font-size:12px;font-weight:600}:root[data-theme] h1{letter-spacing:-.015em;margin:0;font-size:28px;font-weight:700;line-height:1.2}:root[data-theme] .section-title{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px;margin:0 0 20px;display:flex}:root[data-theme] .section-title h1{margin:0}:root[data-theme] .section-title>div:first-child>.quiet,.page-subtitle{color:var(--muted);margin:4px 0 0;font-size:14px}:root[data-theme] .content>:is(section,div)>h1:first-of-type{margin-bottom:8px}:root[data-theme] :is(.panel,.analysis-section,.needs-attention,.floor-bar) h2{letter-spacing:0;font-size:15px;font-weight:600}:root[data-theme] .content>section.panel{box-shadow:none;background:0 0;border:0;padding:0}:root[data-theme] .floor-bar{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:16px;margin:0 0 20px;padding:20px}.floor-counts{flex-wrap:wrap;align-items:baseline;gap:8px 24px;display:flex}:root[data-theme] .floor-bar .stat-filter{min-height:0;box-shadow:none;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;outline:0;align-items:baseline;gap:8px;margin:0 -8px;padding:4px 8px;display:inline-flex}:root[data-theme] .floor-bar .stat-filter:hover:not(:disabled){background:var(--surface-raised);border:0}:root[data-theme] .floor-bar .stat-filter[aria-pressed=true]{background:var(--accent-soft);outline:0}:root[data-theme] .floor-bar .stat-filter strong{font:600 36px/1 var(--font-sans);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ink)}.floor-bar .stat-filter>span{color:var(--muted);align-items:center;gap:6px;font-size:14px;display:inline-flex}.floor-bar .stat-filter>span svg{width:14px;height:14px}:root[data-theme] .floor-bar .stat-filter.state-run strong{color:var(--state-run)}:root[data-theme] .floor-bar .stat-filter.state-stop strong{color:var(--state-stop)}:root[data-theme] .floor-bar .stat-filter.state-alarm strong{color:var(--state-alarm)}:root[data-theme] .floor-bar .stat-filter.state-emergency strong{color:var(--state-emergency)}:root[data-theme] .floor-bar .stat-filter.state-offline strong{color:var(--state-offline)}:root[data-theme] .floor-bar .stat-filter.state-all{margin-left:auto}.floor-lamps{border-radius:999px;gap:4px;height:12px;margin-top:16px;display:flex;overflow:hidden}:root[data-theme] .floor-lamps .lamp{background:var(--lamp,var(--state-offline));cursor:pointer;border:0;border-radius:0;flex:1 1 0;min-width:6px;height:100%;min-height:0;margin:0;padding:0}:root[data-theme] .floor-lamps .lamp:hover:not(:disabled){background:var(--lamp,var(--state-offline));filter:brightness(1.15);border:0}:root[data-theme] .floor-lamps .lamp:is(.state-offline,.state-waiting){background:repeating-linear-gradient(135deg, var(--line-strong) 0 4px, transparent 4px 8px);border:0}:root[data-theme] .floor-lamps .lamp.current{box-shadow:none;outline:0}.floor-lamps .lamp:first-child{border-top-left-radius:999px;border-bottom-left-radius:999px}.floor-lamps .lamp:last-child{border-top-right-radius:999px;border-bottom-right-radius:999px}.floor-lamps .lamp:is(.state-alarm,.state-emergency){animation:1.6s ease-in-out infinite floor-pulse}@keyframes floor-pulse{50%{opacity:.55}}.floor-bar .stats-help{margin:10px 0 0;font-size:12px}.overview-layout{align-items:start;gap:20px;margin-bottom:24px;display:grid}@media (width>=1200px){.overview-layout{grid-template-columns:minmax(0,1fr) 340px}}:root[data-theme] .overview-layout .fleet-heading{align-items:baseline;gap:12px;margin:0 0 12px;display:flex}:root[data-theme] .overview-layout .fleet-heading h2{margin:0;font-size:15px;font-weight:600}:root[data-theme] .overview-layout .fleet-list{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin:0;display:grid}:root[data-theme] .overview-layout .fleet-machine{text-align:left;background:var(--surface);border:1px solid var(--line);min-width:0;box-shadow:var(--shadow-card);filter:none;border-radius:12px;flex-direction:column;align-items:stretch;gap:12px;padding:16px 16px 16px 22px;transition:background-color .15s;display:flex;position:relative;overflow:hidden}:root[data-theme] .overview-layout .fleet-machine:before{content:"";background:var(--machine-color,var(--state-offline));width:6px;position:absolute;inset:0 auto 0 0}:root[data-theme] .overview-layout .fleet-machine.state-offline:before{background:repeating-linear-gradient(135deg, var(--state-offline) 0 4px, transparent 4px 8px)}:root[data-theme] .overview-layout .fleet-machine:hover{background:var(--surface-raised);filter:none}:root[data-theme] .overview-layout .fleet-machine:is(.state-alarm,.state-stop,.state-emergency){box-shadow:0 0 0 1px color-mix(in srgb, var(--machine-color) 55%, transparent);border-color:#0000}:root[data-theme] .overview-layout .fleet-machine.selected{outline:2px solid var(--accent);outline-offset:2px;background:var(--surface)}.tile-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.tile-name{gap:2px;min-width:0;display:grid}:root[data-theme] .fleet-machine .tile-name strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}:root[data-theme] .fleet-machine .tile-name small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;overflow:hidden}:root[data-theme] .overview-layout .fleet-machine .cnc-illustration{flex:0 0 64px;width:64px;max-width:64px;margin:-4px -4px 0 0}:root[data-theme] .tile-state{color:var(--machine-color,var(--state-offline));margin:0;font-size:20px;font-weight:600;line-height:1.2}.tile-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;display:grid}.tile-metrics div{min-width:0}.tile-metrics dt{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.tile-metrics dd{color:var(--ink-2);font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:14px}:root[data-theme] .fleet-machine .machine-updated{color:var(--muted);margin:0;font-size:12px}:root[data-theme] .overview-layout .fleet-machine>.card-action{align-self:flex-start}:root[data-theme] .needs-attention{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:12px;margin:0;padding:16px 4px 8px}.card-head{justify-content:space-between;align-items:baseline;gap:12px;padding:0 12px 8px;display:flex}.card-head h2{margin:0;font-size:15px;font-weight:600}.card-head span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}:root[data-theme] .needs-attention ul{margin:0;padding:0;list-style:none;display:block}:root[data-theme] .needs-attention li{border-top:1px solid var(--line);border-radius:0;grid-template-columns:none;align-items:flex-start;gap:12px;padding:10px 12px;display:flex}:root[data-theme] .needs-attention li:first-child{border-top:0}.needs-attention li>svg{width:16px;height:16px;color:var(--state-offline);flex:none;margin-top:2px}.needs-attention li.state-alarm>svg,.needs-attention li.state-emergency>svg{color:var(--state-alarm)}.needs-attention li.state-stop>svg{color:var(--state-stop)}.attention-body{flex:1;gap:4px;min-width:0;display:grid}:root[data-theme] .needs-attention .link-name{min-height:32px;color:var(--ink);text-align:left;background:0 0;border:0;flex-wrap:wrap;align-items:center;gap:8px;padding:0;font-size:14px;display:flex}:root[data-theme] .needs-attention .link-name:hover:not(:disabled){background:0 0;text-decoration:underline}:root[data-theme] .needs-attention .reason{color:var(--muted);text-align:left;font-size:12px}:root[data-theme] .needs-attention .actions{flex-wrap:wrap;justify-content:flex-start;gap:6px;margin-top:4px;display:flex}:root[data-theme] .needs-attention .actions button{min-height:36px;padding:0 12px;font-size:13px}:root[data-theme] .needs-attention .all-clear{color:var(--state-run-text);align-items:center;gap:8px;margin:0;padding:12px;font-size:14px;font-weight:500;display:flex}:root[data-theme] .monitoring-kpis{gap:12px}:root[data-theme] .monitoring-kpis article{box-shadow:var(--shadow-card);border-radius:12px;padding:14px 16px}:root[data-theme] .monitoring-kpis article>span:first-child{letter-spacing:0;text-transform:none;color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:400;display:flex}.monitoring-kpis article>span:first-child>svg:first-child{width:14px;height:14px}:root[data-theme] .monitoring-kpis strong{font:600 24px/1.2 var(--font-sans);letter-spacing:-.01em;color:var(--ink);margin-top:6px;display:block}:root[data-theme] .monitoring-kpis .kpi-run strong{color:var(--state-run)}:root[data-theme] .monitoring-kpis .kpi-stop strong{color:var(--state-stop)}:root[data-theme] .monitoring-kpis .kpi-unknown strong{color:var(--state-offline)}:root[data-theme] .monitoring-kpis small{color:var(--muted);font-size:11px}:root[data-theme] .analysis-section{border-radius:12px;padding:16px}:root[data-theme] .chart-card,:root[data-theme] .chart-card.history-chart{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:12px;margin:16px 0;padding:0}.chart-card-head{flex-wrap:wrap;align-items:center;gap:4px 12px;padding:16px 16px 8px;display:flex}:root[data-theme] .chart-card-head h2{margin:0;font-size:15px;font-weight:600}.chart-card-head p{color:var(--muted);margin:0;font-size:12px}.chart-card-head .chart-note{font-family:var(--font-mono);color:var(--muted);margin-left:auto;font-size:11px}.chart-card-body{padding:0 12px 12px 4px}:root[data-theme] .chart-tooltip{font:12px/1.5 var(--font-mono);background:color-mix(in srgb, var(--surface) 95%, transparent);border:1px solid var(--line);box-shadow:var(--shadow-pop);color:var(--ink-2);border-radius:6px;gap:2px;padding:8px 12px;display:grid}:root[data-theme] .chart-tooltip>:first-child{color:var(--muted);font-weight:400}.chart-tooltip .spindle{color:var(--chart-spindle)}.chart-tooltip .servo{color:var(--chart-servo)}.chart-tooltip .cycle{color:var(--chart-cycle)}.chart-card .recharts-legend-item-text{color:var(--ink-2)!important}.chart-card .recharts-cartesian-axis-tick-value{font-variant-numeric:tabular-nums}:root[data-theme] .timeline{background:repeating-linear-gradient(135deg, var(--line) 0 4px, transparent 4px 8px);box-shadow:none;border-radius:6px}:root[data-theme] .timeline-ticks{font-family:var(--font-mono);color:var(--muted);font-size:11px}:root[data-theme] .timeline-legend{color:var(--muted);font-size:12px}@media (width<=700px){:root[data-theme] .content{padding:16px 16px 40px}:root[data-theme] h1{font-size:24px}:root[data-theme] .floor-bar{padding:16px}:root[data-theme] .floor-bar .stat-filter strong{font-size:28px}:root[data-theme] .floor-bar .stat-filter.state-all{margin-left:0}}@media print{:root[data-theme] .floor-bar,:root[data-theme] .chart-card,:root[data-theme] .needs-attention{box-shadow:none;border-color:#999}}:root[data-theme] .content .machine-panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:12px;padding:20px;position:relative;overflow:hidden}:root[data-theme] .content .machine-panel:before{content:"";background:var(--machine-color,var(--line));width:4px;position:absolute;inset:0 auto 0 0}:root[data-theme] .content .machine-panel{border-left-width:1px}:root[data-theme] .machine-panel .machine-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;display:grid}:root[data-theme] .machine-panel .machine-heading>.cnc-illustration{width:120px}:root[data-theme] .machine-panel .machine-heading h2{margin:0;font-size:22px;font-weight:700}:root[data-theme] .machine-panel .machine-heading p{margin:4px 0 0;font-size:13px}:root[data-theme] .machine-panel .machine-actions{border-block:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0;padding:16px 0;display:flex}:root[data-theme] .machine-panel .machine-actions p{color:var(--ink-2);flex:100%;margin:0 0 4px;font-size:14px}:root[data-theme] .machine-panel .machine-actions button{margin:0}:root[data-theme] .machine-panel .details>div{border-radius:8px}@media (width<=650px){:root[data-theme] .machine-panel .machine-heading{grid-template-columns:auto minmax(0,1fr)}:root[data-theme] .machine-panel .machine-heading>.cnc-illustration{width:88px}:root[data-theme] .machine-panel .status-stack{grid-column:1/-1;align-items:flex-start}}:root[data-theme] .floor-bar .stat-filter.state-all[aria-pressed=true]{background:0 0}:root[data-theme] .floor-bar .stat-filter.state-all>span{color:var(--muted);font-size:14px}.details .detail-label{color:var(--muted);margin:0 0 8px;font-size:11px}.content>div.quiet{margin:1em 0}@media (width<=700px){#root:has(>.shell){flex-direction:column;min-height:100dvh;display:flex}#root>.shell{display:contents}#root>.shell>aside.sidebar{order:-2}#root>.pwa-bar.app-topbar{order:-1}}:root[data-theme] .source-badge{width:max-content;max-width:none;font:700 12px/1.4 var(--font-sans);letter-spacing:.06em;white-space:nowrap;border:1px solid;border-radius:6px;flex:none;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}:root[data-theme] .source-badge svg{flex:none}:root[data-theme=light] .source-badge.simulated{color:#8a4b00;background:#fff4e0;border-color:#f0c47a}:root[data-theme=dark] .source-badge.simulated{color:#f7c06d;background:#3a2b12;border-color:#7a5a20}:root[data-theme] .source-badge.focas{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 40%, transparent)}:root[data-theme] .source-badge.waiting{color:var(--muted);border-color:var(--line-strong);background:0 0;border-style:dashed}.tile-name .source-badge{margin-top:4px}:root[data-theme] .andon-card .source-badge svg{width:.9em;height:.9em}:root[data-theme] .maintenance-grid .reading{border-radius:8px;align-content:start;gap:6px;padding:14px 16px;display:grid}:root[data-theme] .reading-label{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}:root[data-theme] .reading strong{color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:22px;font-weight:600;line-height:1.3}:root[data-theme] .reading-empty strong{color:var(--muted);font-size:15px;font-weight:400}:root[data-theme] .reading-stale strong{color:var(--muted);font-weight:400}:root[data-theme] .notice{letter-spacing:0;color:var(--ink-2);background:color-mix(in srgb, var(--fb-info) 8%, var(--surface));border:1px solid color-mix(in srgb, var(--fb-info) 25%, transparent);border-left:3px solid var(--fb-info);border-radius:var(--r-md);margin:12px 0;padding:10px 14px;font-size:13px;line-height:1.55;display:block}.alarm-toolbar{flex-wrap:wrap;align-items:flex-end;gap:8px 20px;margin:12px 0;display:flex}.alarm-toolbar .quiet{margin:0 0 10px}:root[data-theme] .field-compact{width:min(100%,320px);color:var(--muted);gap:6px;font-size:13px;display:grid}:root[data-theme] .field-compact select{width:100%}:root[data-theme] .content section>:is(h2,.section-title h2):first-child,:root[data-theme] .content .section-title>div>h2:first-child{margin:0;font-size:20px;font-weight:650}:root[data-theme] .content>:is(section,div)+:is(section.panel,section.history-panel,section.service-history){margin-top:28px}:root[data-theme] .info-tip>button{vertical-align:middle;place-items:center;min-width:24px;min-height:24px;margin:-4px 0;padding:4px;display:inline-grid}:root[data-theme] :is(button.link,.service-qr a,.customer-api .panel>a,details:not(.info-tip):not(.export-menu)>summary){align-items:center;min-height:24px;display:inline-flex}:root[data-theme] .fleet-machine>.card-action{min-height:36px;padding:0 14px;font-size:13px}:root[data-theme] .floor-bar .stat-filter{min-height:36px}:root[data-theme] :is(td,.signal-option)>input:is([type=checkbox],[type=radio]),:root[data-theme] .feature-choice-toggle input[type=checkbox]{flex:0 0 24px;width:24px;height:24px}@media (pointer:coarse){:root[data-theme] :is(.shift-row button,.ideal-estimate button.link){justify-content:center;min-width:48px}:root[data-theme] :is(td,.signal-option)>input:is([type=checkbox],[type=radio]){flex-basis:32px;width:32px;height:32px}:root[data-theme] :is(.content,.app-topbar,aside.sidebar,.andon) :is(button,select,input:not([type=checkbox]):not([type=radio]),summary,.service-qr a,.customer-api .panel>a):not(.fleet-open):not(.lamp):not(.info-tip>button){min-height:48px}:root[data-theme] .info-tip>button{min-width:44px;min-height:44px;margin:-10px -6px}:root[data-theme] :is(input[type=checkbox],input[type=radio]){width:24px;height:24px}:root[data-theme] label:has(>input[type=checkbox],>input[type=radio]){align-items:center;gap:10px;min-height:48px;display:inline-flex}:root[data-theme] .icon-button{width:48px;height:48px}:root[data-theme] .sidebar nav .nav-items button,:root[data-theme] .sidebar nav .nav-group-toggle{min-height:48px}:root[data-theme] .floor-lamps{height:20px}:root[data-theme] .needs-attention .actions{gap:8px}}@media (width>=701px) and (width<=1439px){:root[data-theme] .app-topbar .workspace-context{flex-wrap:wrap;flex:auto;row-gap:8px;min-width:0}:root[data-theme] .app-topbar .group-pill{flex:120px;min-width:120px;max-width:240px}:root[data-theme] .app-topbar .group-pill select{width:100%;max-width:none}:root[data-theme] .app-topbar .fleet-chips{flex:100%;order:10}:root[data-theme] .app-topbar .topbar-search{margin-left:auto}}@media (width<=1199px){:root[data-theme] .overview-layout .needs-attention{order:-1}}.state-share{gap:10px;margin:12px 0 4px;display:grid}.state-share-bar{background:var(--surface-2);height:12px;box-shadow:inset 0 0 0 1px var(--line);border-radius:999px;display:flex;overflow:hidden}.state-share-bar .segment{min-width:3px;height:100%;position:static}.state-share-bar .segment.unknown{background:repeating-linear-gradient(135deg, var(--state-offline) 0 4px, transparent 4px 8px)}.state-share-list{color:var(--ink-2);flex-wrap:wrap;gap:8px 20px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.state-share-list li{align-items:baseline;gap:6px;display:inline-flex}.state-share-list svg{align-self:center}.state-share-list strong{font-variant-numeric:tabular-nums;color:var(--ink)}.state-share-list small{color:var(--muted);font-size:12px}:root[data-theme] .timeline-dense{color:var(--ink-2);margin:8px 0 0;font-size:13px}:root[data-theme] :is(.content,aside.sidebar,.app-topbar) small{font-size:max(12px,.85em)}:root[data-theme] :is(.content,aside.sidebar,.app-topbar) :is(th,dt,em,.chart-note,.mode,.detail-label,.details>div>p,.timeline-ticks span,.manual-default,.sidebar-meta small,.connection small){font-size:12px}@media (pointer:coarse){:root[data-theme] :is(.content,aside.sidebar,.app-topbar) small{font-size:max(14px,.9em)}:root[data-theme] :is(.content,aside.sidebar,.app-topbar) :is(th,dt,em,.chart-note,.mode,.detail-label,.details>div>p,.timeline-ticks span,.manual-default,.sidebar-meta small,.connection small,.quiet,.stats-help,.tile-name small,.tile-metrics dt,.machine-updated,.reading-label,label){font-size:14px}:root[data-theme] .tile-metrics dt{white-space:normal}}:root[data-theme] .shell:has(.sentinel-widget) .content{padding-bottom:96px}@media (width<=700px){:root[data-theme] .sentinel-widget .sentinel-launcher{border-radius:50%;justify-content:center;width:56px;height:56px;min-height:56px;padding:0}.sentinel-widget .sentinel-launcher-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}:root[data-theme] .overview-layout .tile-state{color:var(--state-offline-text);align-items:center;gap:8px;display:flex}:root[data-theme] .overview-layout .fleet-machine.state-run .tile-state{color:var(--state-run-text)}:root[data-theme] .overview-layout .fleet-machine.state-stop .tile-state{color:var(--state-stop-text)}:root[data-theme] .overview-layout .fleet-machine.state-alarm .tile-state{color:var(--state-alarm-text)}:root[data-theme] .overview-layout .fleet-machine.state-emergency .tile-state{color:var(--state-emergency-text)}:root[data-theme] .overview-layout .tile-state.long{font-size:16px}:root[data-theme] .tile-metrics.stale dd,:root[data-theme] .details.stale>div:nth-child(n+4)>strong{color:var(--muted);font-weight:400}:root[data-theme] .machine-panel .freshness-line{flex-wrap:wrap;align-items:center;gap:6px;display:flex}:root[data-theme] .connection-label{white-space:nowrap}@media (width<=1100px){:root[data-theme] .connection{gap:6px;padding:6px 4px;font-size:13px}}:root[data-theme] .tile-metrics dt{white-space:normal;text-overflow:clip;line-height:1.3;overflow:visible}.micro-stop-setting{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 8px;margin:4px 0 12px;font-size:13px;display:flex}:root[data-theme] .micro-stop-setting input{text-align:right;font-variant-numeric:tabular-nums;width:72px;min-height:36px;padding:0 8px}.micro-stop-setting>span:last-child{flex:260px}:root[data-theme] .andon{--a-run:#4cc38a;--a-stop:#f2c14e;--a-alarm:#ff6f61;--a-emergency:#b69cff;--a-off:#8d96a3;--a-ink:#0f1520;--a-bg:#0b0f14;--a-card:#1c2229;--a-text:#eef0f2;--a-muted:#b9c0ca;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--a-bg);color:var(--a-text);gap:16px;padding:20px 24px}:root[data-theme] .andon header{gap:16px 24px;margin:0}:root[data-theme] .andon .andon-title strong{font-size:clamp(28px,2.4vw,44px);line-height:1.15}:root[data-theme] .andon .andon-title span{color:var(--a-muted);font-variant-numeric:tabular-nums;font-size:clamp(18px,1.3vw,24px)}:root[data-theme] .andon-count{background:var(--a-card);font-size:clamp(28px,2.2vw,44px);font-family:var(--font-sans);border-radius:12px;align-items:center;gap:8px;padding:6px 18px;display:inline-flex}:root[data-theme] .andon-count.run{color:var(--a-run)}:root[data-theme] .andon-count.stop{color:var(--a-stop)}:root[data-theme] .andon-count.alarm{color:var(--a-alarm)}:root[data-theme] .andon-count.emergency{color:var(--a-emergency)}:root[data-theme] .andon-count.offline{color:var(--a-off)}:root[data-theme] .andon-controls{font-size:18px}:root[data-theme] .andon-controls button{background:var(--a-card);color:var(--a-text);border:1px solid #3a424e;min-height:48px;font-size:18px}:root[data-theme] .andon-controls label{font-size:18px;color:var(--a-muted)!important}.andon-page{color:var(--a-muted);font-variant-numeric:tabular-nums;font-size:20px}.andon-stale{color:var(--a-text);border:3px dashed var(--a-off);background:repeating-linear-gradient(135deg,#2e3640 0 14px,#262e38 14px 28px);border-radius:12px;align-items:center;gap:16px;margin:0;padding:16px 24px;font-size:clamp(22px,1.8vw,32px);font-weight:700;display:flex}:root[data-theme] .andon-grid{flex:1;gap:16px;min-height:0;display:grid;overflow:hidden}:root[data-theme] .andon-card{box-shadow:none;background:var(--a-card);color:var(--a-text);border:0;border-radius:16px;flex-direction:column;gap:4px;min-width:0;min-height:0;padding:clamp(12px,5cqh,24px) clamp(14px,5cqi,28px);display:flex;overflow:hidden;container-type:size}.andon-card-head{align-items:center;gap:12px;min-width:0;display:flex}:root[data-theme] .andon-card h2{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;margin:0;font-size:clamp(22px,min(11cqi,15cqh),48px);line-height:1.15;overflow:hidden;color:inherit!important}:root[data-theme] .andon-card .source-badge{flex:none;padding:4px 10px;font-size:clamp(20px,min(5cqi,8cqh),26px)}:root[data-theme] .andon-card .andon-state{min-width:0;color:inherit;white-space:nowrap;align-items:center;gap:.25em;margin:auto 0;font-size:clamp(32px,min(14cqi,30cqh),110px);font-weight:800;line-height:1;display:flex}:root[data-theme] .andon-card .andon-state svg{stroke-width:2.6px;flex:none;width:.9em;height:.9em}:root[data-theme] .andon-card .andon-state span{text-overflow:clip;min-width:0;overflow:hidden}:root[data-theme] .andon-card :is(.andon-since,.andon-detail){color:inherit;opacity:.92;font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:clamp(18px,min(7cqi,10cqh),36px);overflow:hidden}:root[data-theme] .andon-card:is(.run,.stop,.alarm,.emergency){color:var(--a-ink)}:root[data-theme] .andon-card.run{background:var(--a-run)}:root[data-theme] .andon-card.stop{background:var(--a-stop)}:root[data-theme] .andon-card.alarm{background:var(--a-alarm)}:root[data-theme] .andon-card.emergency{background:var(--a-emergency);animation:1.4s ease-in-out infinite andon-emergency;box-shadow:0 0 0 6px #fff}@keyframes andon-emergency{50%{box-shadow:0 0 0 6px #0000}}:root[data-theme] .andon-card:is(.offline,.waiting){color:var(--a-muted);background:var(--a-card);outline:4px dashed var(--a-off);outline-offset:-4px}:root[data-theme] .andon-card .source-badge.simulated{color:#8a4b00;background:#fff4e0;border-color:#8a4b00}@media (prefers-reduced-motion:reduce){:root[data-theme] .andon-card.emergency{animation:none}}:root[data-theme] .shift-report .section-title{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}:root[data-theme] .shift-report-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}:root[data-theme] .shift-report-actions>button{align-items:center;gap:6px;min-height:40px;display:inline-flex}:root[data-theme] .shift-report-progress{max-width:480px;color:var(--ink-2);padding:16px 0}:root[data-theme] .shift-report-kpis{margin:16px 0}:root[data-theme] .shift-report-source{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 0;font-weight:600;display:flex}:root[data-theme] .shift-report-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}:root[data-theme] .shift-report-table :is(th,td){text-align:right;vertical-align:top;border-bottom:1px solid var(--line);white-space:normal;padding:10px 12px}:root[data-theme] .shift-report-table :is(th:first-child,td:nth-child(4)){text-align:left}:root[data-theme] .shift-report-table thead th{color:var(--ink-2);vertical-align:bottom;overflow-wrap:normal;font-size:13px}:root[data-theme] .shift-report-table td small{color:var(--muted);font-size:12px;display:block}:root[data-theme] .shift-report-table td small.warn-text{color:var(--fb-problem)}:root[data-theme] .shift-report-machine{flex-wrap:wrap;align-items:center;gap:6px;font-weight:700;display:inline-flex}:root[data-theme] .shift-report-cause{display:block}:root[data-theme] .shift-report-cause small{display:inline}:root[data-theme] .shift-report-sign{display:none}@media print{@page{size:A4 landscape;margin:12mm}:root[data-theme] .shell{padding-left:0!important}:root[data-theme] .shell .content{padding:0!important}:root[data-theme] .shift-report .table-wrap{overflow:visible}:root[data-theme] .shift-report-table :is(th,td){padding:4px 6px;font-size:11px}:root[data-theme] .shift-report-table tr{break-inside:avoid}:root[data-theme] .shift-report-sign{justify-content:space-between;margin-top:32px;font-size:12px;display:flex}}:root[data-theme] .context-form{align-items:start}:root[data-theme] .context-form>label{align-content:start}:root[data-theme] .context-form .ideal-estimate .link{min-height:32px}:root[data-theme] .data-availability{margin-top:24px}:root[data-theme] .data-availability .section-title{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}:root[data-theme] .data-availability .section-title>button{align-items:center;gap:6px;min-height:40px;display:inline-flex}:root[data-theme] .availability-table{font-variant-numeric:tabular-nums;table-layout:fixed;min-width:660px}:root[data-theme] .availability-table thead th:first-child{width:128px}:root[data-theme] .availability-table :is(th,td){text-align:center;white-space:normal;vertical-align:top;overflow-wrap:anywhere;padding:10px 6px}:root[data-theme] .availability-table th[scope=row]{text-align:left;text-transform:none;letter-spacing:0;color:var(--ink);font-size:14px}:root[data-theme] .availability-table :is(th,td) small{color:var(--muted);margin-top:2px;font-size:12px;font-weight:500;display:block}:root[data-theme] .availability-cell strong{font-size:15px}:root[data-theme] .availability-cell{border-left:1px solid var(--line)}:root[data-theme] .availability-cell.good strong{color:var(--fb-ok)}:root[data-theme] .availability-cell.warn{box-shadow:inset 0 -3px 0 color-mix(in srgb, var(--fb-problem) 55%, transparent)}:root[data-theme] .availability-cell.problem{background:color-mix(in srgb, var(--fb-problem) 10%, var(--surface));box-shadow:inset 0 -3px 0 var(--fb-problem)}:root[data-theme] .availability-cell.problem :is(strong,small){color:var(--fb-problem)}:root[data-theme] .availability-cell.total{border-right:2px solid var(--line)}:root[data-theme] .availability-cell.total strong{font-size:17px}:root[data-theme] .availability-table td.availability-skip{text-align:left;color:var(--muted);white-space:normal}:root[data-theme] .service-draft-note{border-left:3px solid var(--fb-info);border-radius:var(--r-md);background:color-mix(in srgb, var(--fb-info) 10%, var(--surface));color:var(--ink);margin:8px 0 16px;padding:10px 14px}:root[data-theme] .insight-chip.spike .link{margin-left:8px}:root:lang(ja){--font-sans:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", "Noto Sans JP", "Segoe UI", sans-serif}:root:lang(ja) body{line-break:strict;word-break:auto-phrase}:root[data-theme] .language-menu{display:inline-flex;position:relative}:root[data-theme] .language-current{background:var(--surface-raised);min-height:36px;color:var(--ink);border:1px solid var(--line);font:600 13px/1 var(--font-sans);letter-spacing:.02em;border-radius:8px;align-items:center;gap:6px;padding:0 10px;display:inline-flex}:root[data-theme] .language-current svg.lucide{color:var(--muted)}:root[data-theme] .language-menu .flag{border-radius:2px;flex:none;box-shadow:0 0 0 1px #00000026}:root[data-theme] .language-list{z-index:60;background:var(--surface);border:1px solid var(--line);min-width:200px;box-shadow:var(--shadow-pop);border-radius:10px;gap:2px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0}:root[data-theme] .language-list button{min-height:40px;color:var(--ink);text-align:left;font:500 14px/1.2 var(--font-sans);background:0 0;border:0;border-radius:8px;grid-template-columns:auto 2.6em 1fr auto;align-items:center;gap:10px;padding:0 10px;display:grid}:root[data-theme] .language-list button:hover{background:var(--surface-2)}:root[data-theme] .language-list button[aria-pressed=true]{background:var(--accent-soft);font-weight:600}:root[data-theme] .language-list .language-code{letter-spacing:.04em;color:var(--ink-2);font-weight:700}:root[data-theme] .brand-language{display:none}:root[data-theme] .app-topbar:not(:has(.workspace-context:not(:empty))) .topbar-language{display:none}@media (width>=701px) and (width<=1439px){:root[data-theme] .app-topbar .pwa-actions{align-self:flex-start;align-items:center}}@media (width<=700px){:root[data-theme] .brand-language{margin-left:auto;display:inline-flex}:root[data-theme] .brand-language+.menu-toggle{margin-left:8px}:root[data-theme] .topbar-language{display:none}}@media (pointer:coarse){:root[data-theme] .language-current,:root[data-theme] .language-list button{min-height:48px}}:root:lang(zh){--font-sans:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", "Noto Sans SC", "Segoe UI", sans-serif}:root:lang(zh) body{line-break:strict}:root[data-theme] .program-number{font-family:var(--font-mono);font-variant-numeric:slashed-zero tabular-nums;font-feature-settings:"zero" 1;letter-spacing:.02em}@media (width>=701px) and (width<=1180px){:root[data-theme] .topbar-language .language-current{gap:5px;padding:0 8px}:root[data-theme] .topbar-language .language-current>svg.lucide{display:none}:root[data-theme] .app-topbar .pwa-actions{gap:8px;padding-left:12px}:root[data-theme] .app-topbar .topbar-search kbd{display:none}}@media (width>=701px) and (width<=960px){:root[data-theme] .pwa-bar.app-topbar:has(.workspace-context:not(:empty)){grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:12px;display:grid}:root[data-theme] .pwa-bar.app-topbar:has(.workspace-context:not(:empty)) .workspace-context{grid-area:1/1}:root[data-theme] .pwa-bar.app-topbar:has(.workspace-context:not(:empty)) .pwa-actions{border-left:0;grid-area:1/2;padding-left:0}:root[data-theme] .pwa-bar.app-topbar:has(.workspace-context:not(:empty)) .pwa-description{display:none}}:root[data-theme] .app-topbar .topbar-search{justify-content:center;min-width:44px}@media (pointer:coarse){:root[data-theme] .app-topbar .topbar-search{min-width:48px}}:root[data-theme] :is(.shift-editor>div,.export-options).pop-end{left:auto;right:0}:root[data-theme] :is(.shift-editor>div,.export-options).pop-start{left:0;right:auto}@media (width<=700px){:root[data-theme] .shift-editor{flex-basis:100%;position:static}:root[data-theme] .shift-editor>div{width:auto;box-shadow:none;margin-top:8px;position:static}}
