:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#101216;--surface:#171b21;--surface-2:#1f252c;--surface-3:#252d35;--text:#eef3f6;--muted:#9aa8b4;--line:#303a44;--cyan:#31c7d5;--green:#45d483;--amber:#f0b84f;--red:#f06464;--blue:#6aa7ff;--purple:#b58cff;--shadow:0 18px 40px #00000047}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.56}.dashboard-shell{background:linear-gradient(180deg, #31c7d512, transparent 260px), radial-gradient(circle at 20% 0%, #45d4831f, transparent 300px), var(--bg);min-height:100vh}.topbar{z-index:5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#101216eb;grid-template-columns:1fr auto;align-items:center;gap:16px;min-height:72px;padding:14px 24px;display:grid;position:sticky;top:0}.brand-row,.toolbar,.inline-row,.metric-row,.strategy-card__top,.action-card__top,.run-card__top,.action-footer,.operator-row,.delta-row,.section-title,.status-line{align-items:center;display:flex}.brand-row{gap:14px}.brand-mark{width:44px;height:44px;color:var(--cyan);background:linear-gradient(135deg,#31c7d53d,#45d4831f);border:1px solid #31c7d56b;border-radius:8px;place-items:center;display:grid}.eyebrow{color:var(--muted);letter-spacing:0;margin:0;font-size:12px}.title{margin:2px 0 0;font-size:22px;font-weight:720}.toolbar{flex-wrap:wrap;justify-content:flex-end;gap:10px}.device-select{width:min(320px,34vw);min-height:38px}.link-button{text-decoration:none}.platform-status-strip{border:1px solid var(--line);background:#171b21e6;border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 14px;display:flex}.platform-status-strip>span:first-child{min-width:180px;margin-right:auto;display:grid}.platform-status-strip small,.user-row small,.device-permission small{color:var(--muted)}.login-shell{background:radial-gradient(circle at 25% 20%, #31c7d52e, transparent 34%), radial-gradient(circle at 75% 80%, #45d4831f, transparent 32%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);width:min(430px,100%);box-shadow:var(--shadow);background:#171b21f5;border-radius:12px;gap:20px;padding:34px;display:grid}.login-card h1{margin:5px 0 8px;font-size:25px}.login-card label,.admin-form label{color:var(--muted);gap:8px;font-size:13px;display:grid}.login-brand{width:52px;height:52px;color:var(--cyan);background:#31c7d51f;border:1px solid #31c7d573;border-radius:10px;place-items:center;display:grid}.login-button{min-height:44px}.admin-shell{background:var(--bg);min-height:100vh}.admin-content{width:min(1380px,100% - 48px);margin:0 auto;padding:24px 0 40px}.admin-grid{grid-template-columns:minmax(320px,.75fr) minmax(500px,1.25fr);gap:18px;display:grid}.user-list,.admin-form,.device-permission-list{gap:10px;display:grid}.user-row{border:1px solid var(--line);background:var(--surface-2);width:100%;color:var(--text);text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:13px;display:flex}.user-row.active{background:#31c7d51a;border-color:#31c7d594}.user-row>span:first-child,.device-permission>span{gap:3px;display:grid}.admin-form{gap:18px}.check-row,.device-permission{align-items:center;gap:10px!important;display:flex!important}.device-permission{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;padding:12px}.form-label{color:var(--muted);margin-bottom:9px;font-size:13px;display:block}.ok-notice{color:var(--green);border-color:#45d48361}.profile-toolbar{align-items:end;gap:14px;margin-bottom:18px;display:flex}.profile-toolbar label{color:var(--muted);flex:1;gap:7px;font-size:13px;display:grid}.profile-grid{grid-template-columns:minmax(600px,1.4fr) minmax(340px,.6fr);gap:18px;display:grid}.profile-editor{resize:vertical;border:1px solid var(--line);color:#d7e5ec;background:#0d1014;border-radius:8px;width:100%;min-height:650px;padding:14px;font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace}.source-metric-list{max-height:650px;display:grid;overflow:auto}.source-metric-list>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:9px 4px;display:flex}.source-metric-list code{color:var(--text);white-space:normal}.source-metric-list span{color:var(--muted);font-size:12px}.platform-shell{background:radial-gradient(circle at 12% 0%, #31c7d51c, transparent 320px), linear-gradient(180deg, #11151a 0, var(--bg) 360px);min-height:100vh}.platform-header{border-bottom:1px solid var(--line);background:#101216f0;justify-content:space-between;align-items:center;gap:20px;min-height:76px;padding:14px max(24px,50vw - 740px);display:flex}.platform-nav,.nav-user,.device-card-footer,.device-card-top,.directory-heading,.platform-welcome{align-items:center;display:flex}.platform-nav{gap:10px}.nav-user{color:var(--text);gap:7px;padding-right:12px;font-size:13px}.nav-user small{border-left:1px solid var(--line);color:var(--muted);padding-left:7px}.platform-content{gap:20px;width:min(1480px,100% - 48px);margin:0 auto;padding:34px 0 48px;display:grid}.platform-welcome,.directory-heading{justify-content:space-between;gap:20px}.platform-welcome h2,.directory-heading h2{margin:4px 0 6px;font-size:27px}.platform-welcome p:last-child{color:var(--muted);margin:0}.platform-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.summary-card{border:1px solid var(--line);background:#171b21f2;border-radius:9px;align-items:center;gap:14px;min-height:112px;padding:18px;display:flex;box-shadow:0 12px 30px #00000029}.summary-icon,.device-icon{border:1px solid var(--line);background:var(--surface-2);width:46px;height:46px;color:var(--muted);border-radius:9px;flex:none;place-items:center;display:grid}.summary-card.green .summary-icon{color:var(--green);background:#45d48317;border-color:#45d48361}.summary-card.cyan .summary-icon{color:var(--cyan);background:#31c7d517;border-color:#31c7d566}.summary-card>div:last-child{display:grid}.summary-card small,.summary-card span{color:var(--muted);font-size:12px}.summary-card strong{color:var(--text);margin:2px 0;font-size:28px}.device-directory{padding:22px}.directory-heading{margin-bottom:18px}.directory-heading h2{font-size:20px}.device-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.device-card{border:1px solid var(--line);background:linear-gradient(145deg, var(--surface-2), #171b21fa);min-height:420px;color:var(--text);border-radius:9px;gap:18px;padding:20px;text-decoration:none;transition:border-color .16s,transform .16s,background .16s;display:grid}.device-card:hover{background:linear-gradient(145deg,#31c7d514,#171b21fa);border-color:#31c7d58c;transform:translateY(-2px)}.device-card-top,.device-card-footer{justify-content:space-between}.device-card h3{margin:5px 0 0;font-size:20px}.device-status{color:var(--muted);white-space:nowrap;background:#f064640f;border:1px solid #f064643d;border-radius:999px;flex:none;align-items:center;gap:7px;padding:5px 9px;font-size:12px;line-height:1;display:inline-flex}.device-status i{background:var(--red);border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 4px #f064641a}.device-status.online{color:var(--green);background:#45d4830f;border-color:#45d48342}.device-status.online i{background:var(--green);box-shadow:0 0 0 4px #45d4831a}.device-meta-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.device-meta-grid span{border:1px solid var(--line);background:#0000001f;border-radius:7px;gap:4px;padding:11px;display:grid}.device-meta-grid small,.device-card-footer>span{color:var(--muted);font-size:12px}.device-meta-grid strong{font-size:17px}.device-effect-state,.device-effect-action{border:1px solid var(--line);background:#00000024;border-radius:8px;gap:7px;padding:14px;display:grid}.device-effect-state>span{color:var(--cyan);align-items:center;gap:7px;font-size:12px;display:flex}.device-effect-state>strong{font-variant-numeric:tabular-nums;font-size:24px}.device-effect-state>strong small{color:var(--muted);font-size:12px;font-weight:500}.device-effect-state p,.device-effect-action small{color:var(--muted);margin:0;font-size:11px;line-height:1.55}.device-effect-action>span{color:var(--muted);font-size:10px}.device-effect-action>strong{font-size:15px}.device-effect-action.executable{background:#45d4830e;border-color:#45d48361}.device-effect-action.executable>span{color:var(--green)}.device-effect-action.blocked{background:#f0b84f0b;border-color:#f0b84f57}.device-effect-action.blocked>span{color:var(--amber)}.device-effect-warning{color:var(--amber);align-items:flex-start;gap:7px;font-size:10px;line-height:1.45;display:flex}.device-card-footer{border-top:1px solid var(--line);align-self:end;padding-top:13px}.device-card-footer b{color:var(--cyan);align-items:center;gap:5px;font-size:13px;display:inline-flex}@media (max-width:1100px){.platform-summary,.device-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-grid{grid-template-columns:1fr}}@media (max-width:760px){.platform-header,.platform-welcome,.profile-toolbar{flex-direction:column;align-items:stretch}.platform-nav{flex-wrap:wrap}.platform-content,.admin-content{width:min(100% - 28px,1480px)}.platform-summary,.device-card-grid,.admin-grid,.topbar{grid-template-columns:1fr}.toolbar{justify-content:flex-start}.device-select{width:100%}.hero-grid{grid-template-columns:1fr}.content{width:min(100% - 28px,1760px)}.temperature-number{font-size:48px}}.operations-shell{--ops-bg:#07131d;--ops-surface:#0d1c28;--ops-surface-2:#112433;--ops-line:#263c4d;--ops-muted:#91a7b8;background:var(--ops-bg);color:#edf5fa;grid-template-columns:196px minmax(0,1fr);min-height:100vh;display:grid}.operations-sidebar{z-index:12;border-right:1px solid var(--ops-line);background:linear-gradient(#0b1c28,#091822);flex-direction:column;min-width:0;height:100vh;display:flex;position:sticky;top:0}.operations-brand{border-bottom:1px solid var(--ops-line);color:#f3f8fb;align-items:center;gap:11px;min-height:72px;padding:0 18px;text-decoration:none;display:flex}.operations-brand-mark{color:#32d3e4;background:linear-gradient(145deg,#2acfe233,#1461761f);border:1px solid #32d3e440;border-radius:7px;flex:none;place-items:center;width:42px;height:42px;display:grid}.operations-brand strong,.operations-brand small{white-space:nowrap;display:block}.operations-brand strong{letter-spacing:.02em;font-size:14px}.operations-brand small{color:var(--ops-muted);letter-spacing:.08em;margin-top:4px;font-size:9px}.operations-sidebar nav{gap:7px;padding:22px 13px;display:grid}.operations-sidebar nav a,.operations-sidebar-foot a{color:#9eb2c1;border:1px solid #0000;border-radius:6px;align-items:center;gap:13px;min-height:46px;padding:0 14px;font-size:13px;text-decoration:none;transition:all .16s;display:flex}.operations-sidebar nav a:hover{color:#e9f5fb;background:#ffffff06}.operations-sidebar nav a.active{color:#35d5e6;background:linear-gradient(90deg,#23c0d829,#23c0d80f);border-color:#2bcee214}.operations-sidebar-foot{border-top:1px solid var(--ops-line);margin-top:auto;padding:13px}.operations-sidebar-foot a{min-height:40px;padding:0 10px}.operations-workspace{min-width:0}.operations-topbar{z-index:10;border-bottom:1px solid var(--ops-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#07131df0;justify-content:space-between;align-items:center;gap:16px;min-height:72px;padding:0 26px;display:flex;position:sticky;top:0}.operations-device-heading,.operations-top-actions{align-items:center;gap:13px;min-width:0;display:flex}.operations-device-heading select{color:#f0f5f8;background:0 0;border:0;outline:0;min-width:172px;max-width:280px;font-size:18px;font-weight:720}.operations-device-heading select option{background:#0d1c28}.operations-top-actions{color:var(--ops-muted);font-size:12px}.operations-top-actions>span{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.operations-top-actions>button,.operations-top-actions>a{border:0;border-left:1px solid var(--ops-line);color:#afbfca;background:0 0;place-items:center;width:34px;height:34px;text-decoration:none;display:grid}.operations-top-actions>button:hover,.operations-top-actions>a:hover{color:#fff}.operations-operator{color:#d5e0e7!important}.operations-content{gap:9px;width:100%;max-width:1780px;margin:0 auto;padding:8px;display:grid}.operations-content .panel{box-shadow:none;border-color:var(--ops-line);background:linear-gradient(145deg,#0f1f2bfa,#0c1b27fa)}.operations-primary-grid{grid-template-columns:minmax(0,.98fr) minmax(460px,1.02fr);align-items:stretch;gap:9px;display:grid}.operations-state-panel,.operations-advice-panel{min-height:706px;padding:16px}.operations-state-panel{flex-direction:column;display:flex}.operations-section-heading{justify-content:space-between;align-items:flex-start;gap:12px;min-height:52px;display:flex}.operations-section-heading h2{margin:0;font-size:16px;font-weight:680}.operations-section-heading p{color:var(--ops-muted);margin:6px 0 0;font-size:11px}.operations-section-heading .icon-button{min-height:34px;color:var(--ops-muted);background:0 0;border:0}.operations-state-callout{border-bottom:1px solid #263c4dd9;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:13px;min-height:115px;padding:13px 10px;display:grid}.operations-state-icon{color:#f0a536;border:2px solid #f0a536;border-radius:50%;place-items:center;width:38px;height:38px;display:grid}.operations-state-callout strong{color:#f4ad3f;letter-spacing:.02em;margin-top:5px;font-size:22px;display:block}.operations-state-callout p{color:#a6b8c5;max-width:590px;margin:15px 0 0;font-size:12px;line-height:1.7}.operations-state-callout.normal .operations-state-icon{color:#36d59b;border-color:#36d59b}.operations-state-callout.normal strong{color:#54dda9}.operations-risk{white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;gap:6px;margin-top:3px;padding:6px 10px;font-size:11px;display:inline-flex}.operations-risk.warn{color:#f0a536;border-color:#f0a53673}.operations-risk.ok{color:#46d9a3;border-color:#36d59b66}.operations-metrics{border:1px solid var(--ops-line);background:#ffffff04;border-radius:6px;grid-template-columns:repeat(4,minmax(0,1fr));margin:10px 0;padding:10px 0;display:grid}.operations-metric{border-right:1px solid var(--ops-line);color:#b8c9d4;align-items:center;gap:10px;min-width:0;min-height:58px;padding:7px 16px;text-decoration:none;display:flex;position:relative}.operations-metric:last-child{border-right:0}.operations-metric>span{color:#c0d0d9}.operations-metric small,.operations-metric strong{white-space:nowrap;display:block}.operations-metric small{color:var(--ops-muted);font-size:10px}.operations-metric strong{color:#f1f6f9;margin-top:7px;font-size:19px;font-weight:650}.operations-metric-history{color:#0000;transition:all .15s;position:absolute;top:8px;right:8px}.operations-metric:hover .operations-metric-history{color:#31cfe0}.operations-trend-heading{justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.operations-trend-heading>div{align-items:center;gap:22px;display:flex}.operations-trend-heading h3{margin:0;font-size:14px}.operations-trend-heading h3 small{color:var(--ops-muted);font-size:10px;font-weight:500}.operations-trend-heading span{color:var(--ops-muted);align-items:center;gap:6px;font-size:9px;display:flex}.operations-trend-heading i{background:#34d7e8;width:14px;height:2px;display:inline-block}.operations-trend-heading i.target{background:repeating-linear-gradient(90deg,#afbec8 0 4px,#0000 4px 7px);margin-left:8px}.operations-trend-heading a{color:#62dbe7;align-items:center;gap:5px;font-size:10px;text-decoration:none;display:inline-flex}.operations-chart{border:1px solid var(--ops-line);background:#05111b47;border-radius:6px;min-height:328px;margin-top:8px;padding:6px 2px 0}.operations-chart .chart-svg{height:282px}.operations-chart .legend{display:none}.operations-chart-foot{color:var(--ops-muted);justify-content:space-between;margin-top:auto;padding:12px 4px 0;font-size:10px;display:flex}.advice-collapse{color:var(--ops-muted);background:0 0;border:0;align-items:center;gap:6px;font-size:11px;display:inline-flex}.operations-advice-list{gap:8px;display:grid}.compact-advice{border:1px solid var(--ops-line);background:#ffffff03;border-radius:7px;overflow:hidden}.compact-advice-head{border-bottom:1px solid var(--ops-line);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 12px;display:flex}.compact-advice-head>div{align-items:center;gap:10px;min-width:0;display:flex}.compact-advice-head h3{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;font-weight:650;overflow:hidden}.compact-advice-head button{color:#edf5fa;background:0 0;border:1px solid #5a7c91;border-radius:5px;justify-content:center;align-items:center;gap:7px;min-width:100px;min-height:34px;padding:0 12px;font-size:11px;display:inline-flex}.compact-advice.high .compact-advice-head button{background:#bc3f45;border-color:#c94b50}.compact-advice.medium .compact-advice-head button{color:#f1bc63;border-color:#c48323}.compact-advice-body{padding:8px 12px}.compact-advice-body dl{grid-template-columns:74px 1fr;gap:6px 10px;margin:0;display:grid}.compact-advice-body dt{color:var(--ops-muted);font-size:10px}.compact-advice-body dd{color:#bbc9d2;margin:0;font-size:10px;line-height:1.45}.compact-advice-body dd.warn{color:#efa842}.compact-advice-body dd.cyan{color:#45d1df}.compact-advice-body details{border-top:1px solid #263c4dbf;margin-top:7px}.compact-advice-body summary{color:#a9bac5;cursor:pointer;justify-content:space-between;align-items:center;min-height:27px;font-size:10px;list-style:none;display:flex}.compact-advice-body details p{color:#8fa5b5;margin:0 0 6px;font-size:10px;line-height:1.45}.operations-advice-foot{color:var(--ops-muted);align-items:center;gap:7px;margin-top:9px;font-size:9px;display:flex}.operations-timeline{padding:14px 18px 16px}.operations-timeline-heading{justify-content:space-between;align-items:center;display:flex}.operations-timeline-heading h2{margin:0;font-size:15px}.operations-timeline-heading button{color:#53d5e3;background:0 0;border:0;align-items:center;gap:5px;font-size:10px;display:inline-flex}.operations-timeline-steps{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px;display:grid}.timeline-step{grid-template-columns:28px minmax(0,1fr);gap:9px;min-height:62px;padding-right:36px;display:grid;position:relative}.timeline-index{z-index:1;background:var(--ops-surface);color:#d6e1e7;border:2px solid #c8d4db;border-radius:50%;place-items:center;width:24px;height:24px;font-size:10px;display:grid}.timeline-step.complete .timeline-index{color:#2fcf94;border-color:#2fcf94}.timeline-step.ready .timeline-index{color:#38d2e2;border-color:#38d2e2}.timeline-step strong,.timeline-step em,.timeline-step small{display:block}.timeline-step strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.timeline-step em{color:var(--ops-muted);margin-top:4px;font-size:10px;font-style:normal}.timeline-step small{color:#778f9f;margin-top:6px;font-size:9px}.timeline-line{border-top:1px solid #718492;width:calc(100% - 34px);position:absolute;top:11px;left:30px}.operations-workbench{padding:18px;scroll-margin-top:82px}.algorithm-baseline-strip{border:1px solid var(--ops-line);background:#05111b47;border-radius:7px;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;overflow:hidden}.algorithm-baseline-strip>div{border-right:1px solid var(--ops-line);gap:7px;min-height:68px;padding:13px 15px;display:grid}.algorithm-baseline-strip>div:last-child{border-right:0}.algorithm-baseline-strip span{color:var(--ops-muted);font-size:10px}.algorithm-baseline-strip strong{color:#edf5fa;font-variant-numeric:tabular-nums;font-size:15px}.effect-boundary-note{color:var(--cyan);background:#31c7d50e;border:1px solid #31c7d54d;border-radius:7px;align-items:flex-start;gap:12px;padding:15px;display:flex}.effect-boundary-note strong{color:#e7f8fa;font-size:13px}.effect-boundary-note p{color:var(--ops-muted);margin:6px 0 0;font-size:11px;line-height:1.65}.history-content{gap:12px;width:min(1500px,100% - 36px);margin:0 auto;padding:22px 0 38px;display:grid}.history-content .panel{box-shadow:none;border-color:var(--ops-line);background:linear-gradient(145deg,#0f1f2bfa,#0c1b27fa)}.history-heading-row{justify-content:space-between;align-items:end;gap:16px;display:flex}.history-heading-row h1{margin:4px 0 6px;font-size:25px}.history-heading-row p{color:var(--ops-muted);margin:0;font-size:12px}.history-heading-actions{gap:8px;display:flex}.history-heading-actions .ghost-button{border:1px solid var(--ops-line);background:var(--ops-surface);border-radius:6px;align-items:center;gap:7px;min-height:38px;display:inline-flex}.history-selector{grid-template-columns:250px minmax(300px,1fr) auto;align-items:end;gap:12px;padding:14px;display:grid}.history-selector>label{color:var(--ops-muted);gap:6px;font-size:10px;display:grid}.history-selector input,.history-selector select{border:1px solid var(--ops-line);color:#e9f2f7;background:#081721;border-radius:5px;outline:0;width:100%;min-height:38px;padding:0 10px}.history-search{position:relative}.history-search svg{z-index:1;position:absolute;bottom:10px;left:10px}.history-search input{padding-left:35px}.range-tabs{border:1px solid var(--ops-line);border-radius:5px;display:flex;overflow:hidden}.range-tabs button,.mode-toggle button{border:0;border-right:1px solid var(--ops-line);min-height:37px;color:var(--ops-muted);background:#0a1924;padding:0 13px;font-size:10px}.range-tabs button:last-child,.mode-toggle button:last-child{border-right:0}.range-tabs button.active,.mode-toggle button.active{color:#43d9e8;background:#30d0e126}.custom-range{grid-column:1/-1;grid-template-columns:1fr 1fr auto;align-items:end;gap:10px;display:grid}.custom-range label{color:var(--ops-muted);gap:5px;font-size:10px;display:grid}.custom-range .primary-button{border-radius:5px;min-height:38px}.history-point-summary{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:22px;padding:15px 18px;display:grid}.history-point-title{align-items:center;gap:12px;min-width:0;display:flex}.history-point-icon{color:#38d5e5;background:#30d0e117;border:1px solid #30d0e147;border-radius:6px;flex:none;place-items:center;width:44px;height:44px;display:grid}.history-point-title p{color:var(--ops-muted);margin:0 0 4px;font-size:9px}.history-point-title h2{margin:0;font-size:18px}.history-point-title code{color:#8299aa;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:9px;display:block;overflow:hidden}.history-current{border-right:1px solid var(--ops-line);min-width:150px;padding-right:20px}.history-current span,.history-current small,.history-current strong{display:block}.history-current span,.history-current small{color:var(--ops-muted);font-size:9px}.history-current strong{color:#f2f7fa;margin:5px 0;font-size:23px}.mode-toggle{border:1px solid var(--ops-line);border-radius:5px;display:flex;overflow:hidden}.history-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.history-stat{border:1px solid var(--ops-line);background:linear-gradient(145deg,#0f1f2bfa,#0c1b27fa);border-radius:7px;min-height:88px;padding:13px 15px}.history-stat span,.history-stat small,.history-stat strong{display:block}.history-stat span,.history-stat small{color:var(--ops-muted);font-size:9px}.history-stat strong{margin:9px 0 6px;font-size:22px}.history-stat.cyan strong{color:#3bd5e4}.history-chart-panel,.history-table-panel{padding:15px}.history-panel-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.history-panel-heading h2{align-items:center;gap:8px;margin:0;font-size:15px;display:flex}.history-panel-heading p{color:var(--ops-muted);margin:5px 0 0;font-size:9px}.history-chart{border:1px solid var(--ops-line);background:#05111b59;border-radius:6px;min-height:320px;overflow:hidden}.history-chart svg{width:100%;height:320px;display:block}.history-chart svg text{fill:#8197a8;font-size:9px}.history-grid-line{stroke:#263a49;stroke-width:1px}.history-line{fill:none;stroke:#35d7e8;stroke-width:2.5px;vector-effect:non-scaling-stroke}.history-line.digital{stroke:#42d49d}.history-area{fill:#35d7e80d;stroke:none}.history-chart-empty{min-height:320px;color:var(--ops-muted);place-items:center;display:grid}.history-table-wrap{border:1px solid var(--ops-line);border-radius:6px;max-height:420px;overflow:auto}.history-table-wrap table{border-collapse:collapse;width:100%}.history-table-wrap th{z-index:1;border-bottom:1px solid var(--ops-line);color:var(--ops-muted);text-align:left;background:#0b1b27;padding:10px 12px;font-size:9px;position:sticky;top:0}.history-table-wrap td{color:#bdcbd4;border-bottom:1px solid #263c4db3;padding:10px 12px;font-size:10px}.history-on{color:#48d9a3}.history-off{color:#8296a5}.point-history-link{color:#44d3e0;white-space:nowrap;border:1px solid #31c7d54d;border-radius:5px;align-items:center;gap:5px;min-height:29px;padding:0 8px;font-size:10px;text-decoration:none;display:inline-flex}.points-table td:nth-child(7){width:110px}@media (max-width:1240px){.operations-primary-grid{grid-template-columns:1fr}.operations-state-panel,.operations-advice-panel{min-height:auto}.history-selector{grid-template-columns:1fr 1fr}.range-tabs{grid-column:1/-1}}@media (max-width:860px){.operations-shell{display:block}.operations-sidebar{border-right:0;border-bottom:1px solid var(--ops-line);flex-direction:row;height:auto;position:sticky;top:0}.operations-brand{border-bottom:0;min-width:170px;min-height:60px}.operations-brand small{display:none}.operations-sidebar nav{flex:1;padding:7px;display:flex;overflow-x:auto}.operations-sidebar nav a{justify-content:center;min-width:48px;min-height:45px;padding:0 10px}.operations-sidebar nav a span,.operations-sidebar-foot{display:none}.operations-topbar{min-height:62px;padding:0 14px;position:static}.operations-top-actions>span:first-child,.operations-operator{display:none!important}.operations-content{padding:8px}.operations-metrics{grid-template-columns:1fr 1fr}.operations-metric:nth-child(2){border-right:0}.operations-metric:nth-child(-n+2){border-bottom:1px solid var(--ops-line)}.operations-timeline-steps,.history-stat-grid{grid-template-columns:1fr 1fr;gap:10px}.algorithm-baseline-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.algorithm-baseline-strip>div{border-bottom:1px solid var(--ops-line)}.timeline-line{display:none}.history-point-summary{grid-template-columns:1fr auto}.mode-toggle{grid-column:1/-1;justify-self:start}}@media (max-width:620px){.operations-brand{min-width:64px;padding:0 11px}.operations-brand>span:last-child{display:none}.operations-device-heading select{min-width:120px;max-width:150px;font-size:15px}.operations-top-actions>a{display:none}.operations-state-callout{grid-template-columns:auto 1fr}.operations-risk{grid-column:1/-1;justify-self:start}.operations-state-callout strong{font-size:18px}.operations-metrics,.operations-timeline-steps,.history-stat-grid,.algorithm-baseline-strip{grid-template-columns:1fr}.algorithm-baseline-strip>div{border-right:0}.operations-metric{border-right:0;border-bottom:1px solid var(--ops-line)}.operations-metric:last-child{border-bottom:0}.compact-advice-head{flex-direction:column;align-items:flex-start}.compact-advice-head button{width:100%}.history-content{width:min(100% - 20px,1500px);padding-top:14px}.history-heading-row{flex-direction:column;align-items:stretch}.history-heading-actions{flex-wrap:wrap}.history-selector{grid-template-columns:1fr}.range-tabs{grid-column:auto;overflow-x:auto}.custom-range{grid-column:auto;grid-template-columns:1fr}.history-point-summary{grid-template-columns:1fr}.history-current{border-right:0}}.device-module-bar{z-index:4;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#111419f5;grid-template-columns:minmax(180px,1fr) auto minmax(140px,1fr);align-items:center;gap:18px;min-height:58px;padding:9px max(24px,50vw - 880px);display:grid;position:sticky;top:72px}.device-module-bar>div{gap:2px;display:grid}.device-module-bar>div strong{font-size:14px}.device-module-bar>div span{color:var(--muted);font-size:11px}.device-module-nav{border:1px solid var(--line);background:#0000002e;border-radius:9px;align-items:center;gap:4px;padding:4px;display:inline-flex}.device-module-nav a{min-height:34px;color:var(--muted);border-radius:6px;align-items:center;gap:7px;padding:7px 13px;font-size:13px;font-weight:700;text-decoration:none;transition:background .16s,color .16s;display:inline-flex}.device-module-nav a:hover{color:var(--text)}.device-module-nav a.active{color:var(--cyan);background:#31c7d521}.device-live-indicator{color:var(--muted);white-space:nowrap;justify-self:end;align-items:center;gap:8px;font-size:12px;display:inline-flex}.device-live-indicator i{background:var(--red);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #f064641a}.device-live-indicator.online{color:var(--green)}.device-live-indicator.online i{background:var(--green);box-shadow:0 0 0 4px #45d4831a}.hmi-shell,.points-shell{background:linear-gradient(#1f527c21,#0000 300px),#0d1118;min-height:100vh}.hmi-content,.points-content{gap:18px;width:min(100% - 40px,1760px);margin:0 auto;padding:20px 0 36px;display:grid}.hmi-overview-strip,.points-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.hmi-stat{border:1px solid var(--line);background:#181d25eb;border-radius:8px;grid-template-columns:42px 1fr;align-items:center;gap:11px;min-height:96px;padding:14px;display:grid}.hmi-stat-icon{width:40px;height:40px;color:var(--cyan);background:#31c7d512;border:1px solid #31c7d53d;border-radius:7px;place-items:center;display:grid}.hmi-stat>div:last-child{gap:2px;min-width:0;display:grid}.hmi-stat small{color:var(--muted);font-size:11px}.hmi-stat strong{text-overflow:ellipsis;white-space:nowrap;font-size:18px;overflow:hidden}.hmi-stat span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.hmi-stat.ok{border-color:#45d4834d}.hmi-stat.ok .hmi-stat-icon{color:var(--green);background:#45d48312;border-color:#45d48342}.hmi-stat.warn{border-color:#f0b84f57}.hmi-stat.warn .hmi-stat-icon{color:var(--amber);background:#f0b84f12;border-color:#f0b84f4d}.hmi-stat.risk{border-color:#f064645c}.hmi-stat.risk .hmi-stat-icon{color:var(--red);background:#f0646412;border-color:#f064644d}.hmi-process-panel{padding:0;overflow:hidden}.hmi-section-title{border-bottom:1px solid var(--line);padding:16px 18px}.hmi-section-title>div:first-child{gap:5px;display:grid}.hmi-section-title h2{margin:0}.hmi-section-title p{color:var(--muted);margin:0;font-size:12px}.hmi-legend{color:var(--muted);align-items:center;gap:14px;font-size:11px;display:flex}.hmi-legend span{align-items:center;gap:6px;display:inline-flex}.hmi-legend i{background:#65758a;border-radius:2px;width:18px;height:3px;display:inline-block}.hmi-legend i.flow{background:#38bdf8;box-shadow:0 0 8px #38bdf880}.hmi-legend i.open{background:var(--green);border-radius:50%;width:8px;height:8px}.hmi-legend i.closed{background:#667587;border-radius:50%;width:8px;height:8px}.hmi-canvas-scroll{background:#0b1018;min-height:560px;overflow:auto}.hmi-process-svg{background:#0b1018;width:100%;min-width:1180px;height:auto;min-height:620px;font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;display:block}.hmi-svg-kicker{fill:#5dd5df;letter-spacing:1.2px;font-size:10px;font-weight:800}.hmi-svg-title{fill:#f1f6f8;font-size:22px;font-weight:800}.hmi-svg-section{fill:#e6edf1;font-size:15px;font-weight:800}.hmi-svg-label{fill:#d3dde5;font-size:11px;font-weight:700}.hmi-svg-note{fill:#9aabba;font-size:10px;font-weight:700}.hmi-chamber-name{fill:#68c9ff;font-size:19px;font-weight:900}.hmi-pipe-border{fill:none;stroke:#07101a;stroke-width:9px;stroke-linejoin:round}.hmi-pipe{fill:none;stroke:#68798d;stroke-width:5px;stroke-linejoin:round}.hmi-pipe-flow{fill:none;stroke:#38bdf8;stroke-width:2.2px;stroke-linecap:round;stroke-dasharray:7 20;animation:1.1s linear infinite hmi-flow}.hmi-pipe-flow.warn{stroke:var(--amber)}@keyframes hmi-flow{to{stroke-dashoffset:-27px}}.hmi-valve polygon{fill:#111923;stroke-width:2px}.hmi-valve line{stroke-width:2px}.hmi-valve rect{stroke:#0a111a}.hmi-valve text{fill:#081017;font-size:6px;font-weight:900}.hmi-valve.open polygon,.hmi-valve.open line{stroke:var(--green)}.hmi-valve.open rect{fill:var(--green)}.hmi-valve.closed polygon,.hmi-valve.closed line{stroke:#7b8998}.hmi-valve.closed rect{fill:#7b8998}.hmi-fan>circle:first-child{fill:#1d2835;stroke:#758598;stroke-width:2px}.hmi-fan line{stroke:#7b8998;stroke-width:1.8px}.hmi-fan>circle:nth-of-type(2){fill:#7b8998}.hmi-fan.running line{stroke:var(--green)}.hmi-fan.running>circle:nth-of-type(2){fill:var(--green)}.hmi-fan.running .hmi-fan-blades{transform-box:fill-box;transform-origin:50%;animation:1.2s linear infinite hmi-fan-spin}@keyframes hmi-fan-spin{to{transform:rotate(360deg)}}.hmi-filter{fill:#1d2835;stroke:#718198;stroke-width:2px}.hmi-filter-line{stroke:#4c5d70;stroke-width:1px}.hmi-signal-on{fill:var(--green)}.hmi-signal-off{fill:#6f7d8d}.hmi-flame{fill:#6a4850;opacity:.34}.hmi-flame.active{fill:#f06f4f;opacity:.95;transform-box:fill-box;transform-origin:bottom;animation:1.5s ease-in-out infinite hmi-flame}@keyframes hmi-flame{50%{transform:scaleY(1.08)scaleX(.94)}}.hmi-mode-active{fill:#45d4832e;stroke:#45d4838c}.hmi-mode-idle{fill:#9aa8b417;stroke:#536274}.hmi-value-box rect{fill:#0b111af5;stroke:#91a1b2;stroke-width:1.4px}.hmi-value-box.hot rect{stroke:#e27f5d}.hmi-value-box text{fill:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:800}.hmi-value-box text.small{font-size:10px}.hmi-status-pill rect{fill:#5262741a;stroke:#48586b}.hmi-status-pill circle{fill:#637387}.hmi-status-pill text{fill:#adbbc7;font-size:10px;font-weight:800}.hmi-status-pill.active rect{fill:#45d48314;stroke:#45d4835c}.hmi-status-pill.active circle{fill:var(--green)}.hmi-status-pill.active text{fill:#b9f4d4}.hmi-status-pill.warn rect{fill:#f0646414;stroke:#f0646466}.hmi-status-pill.warn circle{fill:var(--red)}.hmi-status-pill.warn text{fill:#ffc2c2}.hmi-chimney .light{fill:#dfe7eb;opacity:.82}.hmi-chimney .dark{fill:#dd5f5f;opacity:.82}.hmi-chimney .cap{fill:#2f3b49;stroke:#758598}.hmi-chimney .smoke{fill:#c8d2d9;opacity:.16;animation:4s ease-out infinite hmi-smoke}.hmi-chimney .smoke.two{animation-delay:-1.8s}@keyframes hmi-smoke{0%{opacity:.22;transform:translateY(0)}to{opacity:0;transform:translate(-10px,-50px)scale(1.8)}}.hmi-logic-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.line-logic-card{padding:16px}.line-logic-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;display:flex}.line-logic-heading h3{align-items:center;gap:8px;margin:0;font-size:15px;display:flex}.line-logic-heading h3 svg{color:var(--cyan)}.line-logic-heading>span{color:var(--muted);font-size:11px}.line-state-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.line-state{border:1px solid var(--line);background:#00000021;border-radius:6px;gap:4px;min-width:0;padding:9px;display:grid}.line-state>span{color:var(--muted);align-items:center;gap:5px;font-size:11px;display:flex}.line-state i,.equipment-state-list i{background:#657384;border-radius:50%;width:6px;height:6px}.line-state strong{font-size:14px}.line-state small{color:var(--muted);font-size:10px}.line-state.active{background:#45d4830d;border-color:#45d48347}.line-state.active i{background:var(--green)}.line-state.active strong{color:#bff5d6}.line-state.unknown strong{color:var(--muted)}.equipment-state-list{gap:7px;display:grid}.equipment-state-list>div{border:1px solid var(--line);background:#00000021;border-radius:6px;justify-content:space-between;align-items:center;min-height:36px;padding:8px 10px;font-size:12px;display:flex}.equipment-state-list span{color:var(--muted);align-items:center;gap:7px;display:flex}.equipment-state-list span.active i{background:var(--green)}.equipment-state-list span.risk i{background:var(--red)}.equipment-state-list span.risk+strong{color:var(--red)}.pulse-icon{color:var(--green)}.points-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.point-stat{border:1px solid var(--line);background:#181d25eb;border-radius:8px;grid-template-columns:42px 1fr;align-items:center;gap:12px;min-height:94px;padding:14px;display:grid}.point-stat>div{width:40px;height:40px;color:var(--cyan);background:#31c7d512;border:1px solid #31c7d53d;border-radius:7px;place-items:center;display:grid}.point-stat>span{gap:2px;min-width:0;display:grid}.point-stat small{color:var(--muted);font-size:11px}.point-stat strong{font-size:22px}.point-stat em{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-style:normal;overflow:hidden}.point-stat.ok{border-color:#45d48347}.point-stat.ok>div{color:var(--green);background:#45d4830f;border-color:#45d48340}.points-panel{padding:0;overflow:hidden}.points-toolbar{border-bottom:1px solid var(--line);background:#ffffff04;grid-template-columns:minmax(260px,1fr) auto auto auto auto;align-items:center;gap:9px;padding:14px;display:grid}.points-toolbar label{border:1px solid var(--line);min-height:38px;color:var(--muted);background:#12171d;border-radius:6px;align-items:center;gap:8px;padding:0 10px;display:flex}.points-toolbar input,.points-toolbar select{width:100%;color:var(--text);background:0 0;border:0;outline:0;font-size:12px}.points-toolbar option{background:#171b21}.points-result-count{color:var(--muted);white-space:nowrap;font-size:11px}.points-table-wrap{overflow:auto}.points-table{border-collapse:collapse;width:100%;min-width:1160px}.points-table th{z-index:1;border-bottom:1px solid var(--line);color:var(--muted);text-align:left;background:#141920;padding:11px 14px;font-size:11px;font-weight:700;position:sticky;top:0}.points-table td{vertical-align:middle;border-bottom:1px solid #303a44b8;padding:11px 14px;font-size:12px}.points-table tbody tr:hover{background:#31c7d509}.points-table td:first-child{width:82px}.points-table td:nth-child(2){width:300px}.points-table td:nth-child(3){width:140px}.points-table td:nth-child(4){width:150px}.points-table td:nth-child(6){width:130px}.points-table td>small,.points-table time+small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.point-freshness{color:var(--muted);align-items:center;gap:6px;font-size:11px;display:inline-flex}.point-freshness i{background:var(--amber);border-radius:50%;width:7px;height:7px}.point-freshness.fresh{color:var(--green)}.point-freshness.fresh i{background:var(--green)}.point-name{justify-content:space-between;align-items:center;gap:8px;display:flex}.point-name code{overflow-wrap:anywhere;color:#8bc5ff;font-size:11px}.point-name button{min-width:28px;min-height:26px;color:var(--muted);background:0 0;border:0;border-radius:4px;align-items:center;gap:4px;padding:4px 6px;font-size:9px;display:inline-flex}.point-name button:hover{color:var(--text);background:#ffffff0d}.point-category{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:3px 7px;font-size:10px;display:inline-flex}.raw-point-value{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.point-mappings{gap:5px;display:grid}.point-mappings span{gap:2px;display:grid}.point-mappings strong{color:#d8f6f7;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.point-mappings small{color:var(--muted);font-size:10px}.unmapped-point{color:#667481;font-size:11px}@media (max-width:1260px){.hmi-overview-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.hmi-logic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:980px){.device-module-bar{grid-template-columns:1fr auto;position:static}.device-module-nav{grid-area:2/1/auto/-1;justify-self:stretch}.device-module-nav a{flex:1;justify-content:center}.points-toolbar{grid-template-columns:1fr 1fr}.points-search,.points-result-count{grid-column:1/-1}}@media (max-width:720px){.hmi-content,.points-content{width:min(100% - 24px,1760px);padding-top:12px}.device-module-bar{padding:10px 12px}.device-live-indicator{justify-self:end}.device-module-nav a{gap:5px;padding:7px 8px;font-size:11px}.hmi-overview-strip,.points-summary,.hmi-logic-grid{grid-template-columns:1fr}.hmi-section-title{flex-direction:column;align-items:flex-start}.hmi-legend{flex-wrap:wrap}.line-state-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.points-toolbar{grid-template-columns:1fr}.points-search,.points-result-count{grid-column:auto}}@media (prefers-reduced-motion:reduce){.hmi-pipe-flow,.hmi-fan.running .hmi-fan-blades,.hmi-flame.active,.hmi-chimney .smoke{animation:none}}.hmi-platform-v2{--hmi-v2-bg:#071522;--hmi-v2-surface:#0c1a27;--hmi-v2-surface-2:#112130;--hmi-v2-line:#89a3b833;--hmi-v2-muted:#8093a5;background:#08131e}.hmi-content-v2{gap:12px;width:min(100% - 28px,1760px);padding:14px 0 26px}.hmi-overview-strip-v2{border:1px solid var(--hmi-v2-line);background:linear-gradient(#122332f7,#0b1b28f7);border-radius:10px;gap:0;overflow:hidden}.hmi-stat-v2{border:0;border-right:1px solid var(--hmi-v2-line);background:0 0;border-radius:0;grid-template-columns:1fr;gap:0;min-height:62px;padding:9px 22px}.hmi-stat-v2:last-child{border-right:0}.hmi-stat-v2>div{gap:2px;display:grid}.hmi-stat-v2 small{color:var(--hmi-v2-muted);letter-spacing:.02em;font-size:10px}.hmi-stat-v2 strong{color:#f2f7fa;font-variant-numeric:tabular-nums;font-size:19px}.hmi-stat-v2 span{color:#738799;font-size:10px}.hmi-stat-v2.warn strong{color:#f1bc57}.hmi-stat-v2.risk strong{color:#f27878}.hmi-stat-v2.ok strong{color:#76daa0}.hmi-workbench-v2{grid-template-columns:minmax(0,1fr) 278px;align-items:stretch;gap:12px;display:grid}.hmi-map-panel-v2,.hmi-inspector-v2,.hmi-events-v2{border:1px solid var(--hmi-v2-line);background:var(--hmi-v2-bg);border-radius:10px;overflow:hidden}.hmi-map-toolbar-v2{border-bottom:1px solid var(--hmi-v2-line);background:#10202ec7;justify-content:space-between;align-items:center;gap:16px;min-height:52px;padding:10px 16px;display:flex}.hmi-map-toolbar-v2>div:first-child{gap:2px;display:grid}.hmi-map-toolbar-v2 strong{font-size:14px;font-weight:680}.hmi-map-toolbar-v2 span{color:var(--hmi-v2-muted);font-size:10px}.hmi-legend-v2{align-items:center;gap:13px;display:flex}.hmi-legend-v2 span{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.hmi-legend-v2 i{background:#66788a;border-radius:50%;width:7px;height:7px}.hmi-legend-v2 i.flow{background:#48cde0;border-radius:2px;width:18px;height:2px}.hmi-legend-v2 i.normal{background:#69d18f}.hmi-legend-v2 i.warn{background:#f2af38}.hmi-canvas-scroll-v2{background:var(--hmi-v2-bg);min-height:570px;overflow:hidden}.hmi-process-svg-v2{background:var(--hmi-v2-bg);width:100%;min-width:0;height:100%;min-height:570px;font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;display:block}.hmi-map-labels text,.hmi-map-section-title{fill:#dfe9ef;letter-spacing:.01em;font-size:12px;font-weight:680}.hmi-map-node-label{fill:#b8c6d0;font-size:10.5px;font-weight:600}.hmi-map-equipment-title{fill:#ecf3f6;font-size:14px;font-weight:700}.hmi-map-chamber-name{fill:#77d7e4;font-size:11px;font-weight:700}.hmi-map-caption{fill:#8294a3;font-size:9px}.hmi-map-mode{font-size:10px;font-weight:650}.hmi-map-mode.active{fill:#70daa0}.hmi-map-mode.idle{fill:#718596}.hmi-device-image{opacity:.9;pointer-events:none}.hmi-device-image.compact{opacity:.84}.hmi-device-image.furnace{opacity:.83}.hmi-object{cursor:pointer;outline:none}.hmi-object .hmi-object-focus{fill:#48cde000;stroke:#48cde000;stroke-width:1.5px;transition:fill .16s,stroke .16s}.hmi-object:hover .hmi-object-focus{fill:#48cde009;stroke:#48cde04d}.hmi-object.selected .hmi-object-focus{fill:#48cde00b;stroke:#48cde0b8}.hmi-object:focus-visible .hmi-object-focus{stroke:#89e4ee;stroke-width:2px}.hmi-map-pipe-back,.hmi-map-pipe,.hmi-map-flow{fill:none;stroke-linecap:round;stroke-linejoin:round}.hmi-map-pipe-back{stroke:#06101a;stroke-width:8px}.hmi-map-pipe{stroke:#596c7e;stroke-width:4px}.hmi-map-pipe-group.dashed .hmi-map-pipe{stroke-dasharray:7 7}.hmi-map-flow{stroke:#48cde0;stroke-width:2px;stroke-dasharray:5 12;animation:hmi-v2-flow var(--hmi-flow-duration,1.4s) linear infinite}.hmi-map-flow-pulse{fill:none;stroke:#a9f4fb;stroke-width:4px;stroke-dasharray:1 38;stroke-linecap:round;filter:drop-shadow(0 0 3px #48cde0b8);animation:hmi-v2-flow-pulse var(--hmi-flow-duration,1.4s) linear infinite}.hmi-map-pipe-group.warn .hmi-map-pipe{stroke:#a8792a}.hmi-map-pipe-group.warn .hmi-map-flow{stroke:#f2af38;filter:drop-shadow(0 0 4px #f2af388c)}.hmi-map-pipe-group.warn .hmi-map-flow-pulse{stroke:#ffd477;filter:drop-shadow(0 0 4px #f2af38cc)}@keyframes hmi-v2-flow{to{stroke-dashoffset:-17px}}@keyframes hmi-v2-flow-pulse{to{stroke-dashoffset:-39px}}.hmi-object.machine-running .hmi-device-image{filter:brightness(1.08)drop-shadow(0 0 5px #48cde038)}.hmi-object.machine-running .hmi-object-focus{stroke:#48cde057}.hmi-furnace-object.thermal-active .hmi-device-image.furnace{transform-box:fill-box;transform-origin:50%;animation:2.4s ease-in-out infinite hmi-v2-thermal}@keyframes hmi-v2-thermal{0%,to{filter:brightness(.98)saturate(.94)}50%{filter:brightness(1.08)saturate(1.12)drop-shadow(0 0 7px #f28b382e)}}.hmi-map-status-dot{stroke:#071522;stroke-width:3px}.hmi-map-status-dot.active{fill:#69d18f}.hmi-map-status-dot.warn{fill:#f2af38}.hmi-map-status-dot.idle{fill:#5f7081}.hmi-map-value rect{fill:#071522f2;stroke:#8fa6b98c}.hmi-map-value text{fill:#f2f6f8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9.2px;font-weight:700}.hmi-map-value.muted rect{stroke:#6f849559}.hmi-map-value.muted text{fill:#9aabb8}.hmi-inspector-v2{background:linear-gradient(#0d1c29,#091824);flex-direction:column;min-height:622px;display:flex}.hmi-inspector-heading-v2{justify-content:space-between;align-items:flex-start;gap:12px;padding:17px 16px 12px;display:flex}.hmi-inspector-heading-v2 small{color:var(--hmi-v2-muted);font-size:9px}.hmi-inspector-heading-v2 h2{margin:5px 0 2px;font-size:17px}.hmi-inspector-heading-v2 p{overflow-wrap:anywhere;color:#718596;margin:0;font-size:9px;line-height:1.45}.hmi-inspector-heading-v2>div{min-width:0}.hmi-inspector-heading-v2 p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hmi-inspector-heading-v2>span{color:#7d8f9d;white-space:nowrap;align-items:center;gap:5px;padding-top:16px;font-size:10px;display:inline-flex}.hmi-inspector-heading-v2>span i{background:#65788a;border-radius:50%;width:7px;height:7px}.hmi-inspector-heading-v2>span.online{color:#70d99c}.hmi-inspector-heading-v2>span.online i{background:#70d99c}.hmi-inspector-asset-v2{background:#071522;border-block:1px solid #819aae1f;place-items:center;min-height:140px;display:grid;overflow:hidden}.hmi-inspector-asset-v2 img{object-fit:contain;opacity:.92;width:140px;height:140px;transform:scale(1.18)}.hmi-inspector-tabs-v2{background:#00000038;border-radius:7px;grid-template-columns:1fr 1fr;margin:12px 14px 0;padding:3px;display:grid}.hmi-inspector-tabs-v2 button{color:#718596;background:0 0;border:0;border-radius:5px;min-height:30px;font-size:10px}.hmi-inspector-tabs-v2 button.active{color:#7ddce6;background:#48cde01a}.hmi-inspector-values-v2{gap:0;margin:12px 14px 0;display:grid}.hmi-inspector-values-v2>div{border-bottom:1px solid #819aae1f;justify-content:space-between;align-items:center;gap:12px;min-height:38px;display:flex}.hmi-inspector-values-v2 dt{color:var(--hmi-v2-muted);font-size:10px}.hmi-inspector-values-v2 dd{color:#eef4f6;font-variant-numeric:tabular-nums;margin:0;font-size:12px;font-weight:650}.hmi-inspector-values-v2 dd.ok{color:#70d99c}.hmi-inspector-values-v2 dd.muted{color:#8295a5}.hmi-inspector-note-v2{color:#8ea0ae;margin:12px 14px 0;font-size:10px;line-height:1.6}.hmi-mini-trend-v2{border-top:1px solid #819aae1f;margin:14px;padding-top:12px}.hmi-mini-trend-v2>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.hmi-mini-trend-v2 strong{font-size:10px}.hmi-mini-trend-v2 span{color:var(--hmi-v2-muted);font-size:9px}.hmi-mini-trend-v2 svg{background:repeating-linear-gradient(0deg,#0000 0 22px,#7e98ac14 23px),repeating-linear-gradient(90deg,#0000 0 42px,#7e98ac12 43px);border-radius:6px;width:100%;height:92px;margin-top:8px;display:block}.hmi-mini-trend-empty-v2{color:#617586;place-items:center;min-height:84px;font-size:10px;display:grid}.hmi-inspector-actions-v2{border-top:1px solid var(--hmi-v2-line);grid-template-columns:1fr;gap:0;margin-top:auto;display:grid}.hmi-inspector-actions-v2 a,.hmi-inspector-actions-v2 button{color:#63d4df;background:0 0;border:0;border-bottom:1px solid #819aae1f;justify-content:space-between;align-items:center;min-height:42px;padding:0 15px;font-size:10px;text-decoration:none;display:flex}.hmi-inspector-actions-v2 a:after,.hmi-inspector-actions-v2 button:after{content:"›";color:#8ba0af;font-size:18px}.hmi-inspector-actions-v2 a:hover,.hmi-inspector-actions-v2 button:hover{background:#48cde00a}.hmi-interlocks-v2{margin:14px;display:grid}.hmi-interlocks-v2>div{color:#9cafbc;border-bottom:1px solid #819aae1f;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;min-height:44px;font-size:10px;display:grid}.hmi-interlocks-v2 svg,.hmi-interlocks-v2 strong.ok{color:#6dcf95}.hmi-interlocks-v2 strong.warn{color:#f0b34e}.hmi-events-v2{padding:0}.hmi-events-heading-v2{border-bottom:1px solid var(--hmi-v2-line);background:#10202ec7;justify-content:space-between;align-items:center;min-height:42px;padding:0 14px;display:flex}.hmi-events-heading-v2>div{align-items:center;gap:8px;display:flex}.hmi-events-heading-v2 svg{color:#56d0dd}.hmi-events-heading-v2 strong{font-size:12px}.hmi-events-heading-v2>span{color:var(--hmi-v2-muted);font-size:9px}.hmi-event-table-v2>div{color:#8396a5;border-bottom:1px solid #819aae1a;grid-template-columns:84px 78px minmax(280px,1fr) 140px 80px;align-items:center;min-height:34px;padding:0 14px;font-size:9px;display:grid}.hmi-event-table-v2>div:last-child{border-bottom:0}.hmi-event-table-v2>div.head{color:#607586;min-height:29px}.hmi-event-table-v2 strong{color:#c9d5dc;font-weight:550}.event-level{align-items:center;gap:6px;display:inline-flex}.event-level i{background:#6c8294;border-radius:50%;width:7px;height:7px}.event-level.warn{color:#e9b04d}.event-level.warn i{background:#e9b04d}.event-level.ok{color:#6fd39a}.event-level.ok i{background:#6fd39a}.event-level.info{color:#60cad8}.event-level.info i{background:#60cad8}.hmi-operating-context-v3{grid-template-columns:.9fr 1.25fr 1.15fr 1.3fr;gap:8px;display:grid}.hmi-context-card-v3{border:1px solid var(--hmi-v2-line);background:linear-gradient(#112231f0,#0a1a27f0);border-radius:9px;align-items:flex-start;gap:10px;min-width:0;min-height:76px;padding:12px;display:flex}.hmi-context-icon-v3{color:#61d1dd;background:#48cde014;border-radius:7px;flex:none;place-items:center;width:28px;height:28px;display:grid}.hmi-context-card-v3>div:last-child,.hmi-context-body-v3{flex:1;min-width:0}.hmi-context-card-v3 small{color:#718697;font-size:9px;display:block}.hmi-context-card-v3 strong{margin-top:4px;font-size:14px;display:block}.hmi-context-card-v3>div>span{color:#8095a5;margin-top:4px;font-size:9px;display:block}.hmi-context-card-v3.primary.warn strong{color:#f1b954}.hmi-context-card-v3.primary.risk strong{color:#f27878}.hmi-context-card-v3.primary.ok strong{color:#76d9a0}.hmi-inline-states-v3{flex-wrap:wrap;gap:5px 10px;min-width:0;margin-top:7px;display:flex}.hmi-inline-states-v3 span{color:#8ba0af;white-space:nowrap;align-items:center;gap:5px;min-width:0;font-size:9px;display:inline-flex}.hmi-inline-states-v3 i{background:#65798a;border-radius:50%;flex:none;width:6px;height:6px}.hmi-inline-states-v3 span.ok{color:#74d9a0}.hmi-inline-states-v3 span.ok i{background:#69d18f}.hmi-inline-states-v3 span.warn{color:#f0b34e}.hmi-inline-states-v3 span.warn i{background:#f0b34e}.hmi-inline-states-v3 span.risk{color:#ef7777}.hmi-inline-states-v3 span.risk i{background:#ef7777}.hmi-inline-states-v3 span.info{color:#62cedb}.hmi-inline-states-v3 span.info i{background:#62cedb}.hmi-process-support-v3{grid-template-columns:minmax(0,1.7fr) minmax(220px,.8fr) minmax(220px,.8fr);gap:10px;display:grid}.hmi-support-panel-v3{border:1px solid var(--hmi-v2-line);background:linear-gradient(#0d1c29,#091824);border-radius:10px;min-width:0;overflow:hidden}.hmi-support-heading-v3{border-bottom:1px solid var(--hmi-v2-line);justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:0 13px;display:flex}.hmi-support-heading-v3>div{gap:3px;display:grid}.hmi-support-heading-v3 strong{font-size:12px}.hmi-support-heading-v3 span{color:#718697;font-size:9px}.hmi-support-heading-v3>span{color:#65d29a}.hmi-heat-lines-v3{max-height:190px;display:grid;overflow-y:auto}.hmi-heat-lines-v3>div{color:#8397a6;border-bottom:1px solid #819aae17;grid-template-columns:minmax(70px,1fr) 64px 72px 72px;align-items:center;gap:8px;min-height:34px;padding:0 13px;font-size:9px;display:grid}.hmi-heat-lines-v3>div:last-child{border-bottom:0}.hmi-heat-lines-v3 span{align-items:center;gap:6px;display:inline-flex}.hmi-heat-lines-v3 i{background:#617687;border-radius:50%;width:6px;height:6px}.hmi-heat-lines-v3 strong{color:#b9c7cf;font-variant-numeric:tabular-nums;font-size:9px}.hmi-heat-lines-v3 em{color:#8da0ad;font-variant-numeric:tabular-nums;font-style:normal}.hmi-heat-lines-v3>div.active i{background:#69d18f;box-shadow:0 0 7px #69d18f61}.hmi-heat-lines-v3>div.active span,.hmi-heat-lines-v3>div.active strong{color:#75d99f}.hmi-support-values-v3{gap:0;margin:0;padding:4px 13px;display:grid}.hmi-support-values-v3>div{border-bottom:1px solid #819aae17;justify-content:space-between;align-items:center;gap:10px;min-height:34px;display:flex}.hmi-support-values-v3>div:last-child{border-bottom:0}.hmi-support-values-v3 dt{color:#7e92a2;font-size:9px}.hmi-support-values-v3 dd{color:#dbe5ea;font-variant-numeric:tabular-nums;margin:0;font-size:10px;font-weight:650}.hmi-support-values-v3 dd.ok{color:#72d69d}.hmi-support-values-v3 dd.warn{color:#efb450}.hmi-support-values-v3 dd.risk{color:#ef7777}.hmi-support-panel-v3 p{color:#667c8d;margin:4px 13px 12px;font-size:8.5px;line-height:1.5}.hmi-support-panel-v3.emission>a{color:#5fd0dc;border-top:1px solid #819aae1a;align-items:center;min-height:35px;padding:0 13px;font-size:9px;text-decoration:none;display:flex}.hmi-platform-v2 .hmi-stat-v2 small,.hmi-platform-v2 .hmi-stat-v2 span,.hmi-platform-v2 .hmi-map-toolbar-v2 span,.hmi-platform-v2 .hmi-context-card-v3 small,.hmi-platform-v2 .hmi-context-card-v3>div>span,.hmi-platform-v2 .hmi-inline-states-v3 span,.hmi-platform-v2 .hmi-support-heading-v3 span,.hmi-platform-v2 .hmi-support-values-v3 dt,.hmi-platform-v2 .hmi-support-panel-v3 p,.hmi-platform-v2 .hmi-support-panel-v3.emission>a,.hmi-platform-v2 .hmi-event-table-v2>div,.hmi-platform-v2 .hmi-inspector-heading-v2 small,.hmi-platform-v2 .hmi-inspector-heading-v2 p,.hmi-platform-v2 .hmi-mini-trend-v2 span{font-size:10.5px}.hmi-platform-v2 .hmi-context-card-v3 strong{font-size:15px}.hmi-platform-v2 .hmi-support-heading-v3 strong{font-size:13px}.hmi-platform-v2 .hmi-support-values-v3 dd{font-size:11px}.hmi-platform-v2 .hmi-map-caption{font-size:10px}.hmi-platform-v2 .hmi-map-node-label{font-size:11px}.hmi-map-standby-label{fill:#f0b34e;letter-spacing:.08em;font-size:8.5px;font-weight:700}.hmi-object.standby .hmi-device-image{opacity:.68}.hmi-burner-state rect{fill:#071522db;stroke:#8ca5b761}.hmi-burner-state circle{stroke:#071522;stroke-width:2px}.hmi-burner-state circle.active{fill:#f0a64a;filter:drop-shadow(0 0 4px #f0a64a80)}.hmi-burner-state circle.idle{fill:#5f7081}.hmi-burner-state text{fill:#b8c6d0;font-size:8.5px;font-weight:650}.hmi-heat-header-body{fill:#0f2230f5;stroke:#48cde057}.hmi-map-heat-summary{fill:#79d8e2;font-size:9.5px;font-weight:680}.hmi-heat-groups-v4{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;padding:9px;display:grid}.hmi-heat-groups-v4>section{background:#06131e8a;border:1px solid #819aae24;border-radius:8px;min-width:0;overflow:hidden}.hmi-heat-groups-v4>section>header{border-bottom:1px solid #819aae1c;justify-content:space-between;align-items:center;gap:8px;min-height:34px;padding:0 10px;display:flex}.hmi-heat-groups-v4>section>header span{color:#c2d0d8;align-items:center;gap:7px;font-size:11px;font-weight:680;display:inline-flex}.hmi-heat-groups-v4>section>header i{background:#617687;border-radius:50%;width:7px;height:7px}.hmi-heat-groups-v4>section.active>header i{background:#69d18f;box-shadow:0 0 7px #69d18f6b}.hmi-heat-groups-v4>section>header strong{color:#778c9b;font-size:10px}.hmi-heat-groups-v4>section.active>header strong{color:#72d69d}.hmi-heat-groups-v4>section>div{display:grid}.hmi-heat-groups-v4>section>div>div{color:#7f93a2;border-bottom:1px solid #819aae14;align-items:center;gap:9px;min-height:32px;padding:0 10px;font-size:10.5px;display:flex}.hmi-heat-groups-v4>section>div>div:last-child{border-bottom:0}.hmi-heat-groups-v4>section>div>div>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.hmi-heat-groups-v4>section>div>div>strong,.hmi-heat-groups-v4>section>div>div>em{color:#9aadb9;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:10px;font-style:normal}.hmi-heat-groups-v4>section>div>div.active>span,.hmi-heat-groups-v4>section>div>div.active>strong{color:#75d99f}.hmi-interlocks-v2 svg.failed,.hmi-interlocks-v2 strong.risk{color:#ef7777}.hmi-interlocks-v2 svg.missing{color:#f0b34e}@media (max-width:1180px){.hmi-workbench-v2{grid-template-columns:1fr}.hmi-inspector-v2{min-height:0}.hmi-inspector-asset-v2{display:none}.hmi-event-table-v2>div{grid-template-columns:78px 68px minmax(220px,1fr) 110px 68px}.hmi-operating-context-v3,.hmi-process-support-v3{grid-template-columns:1fr 1fr}.hmi-support-panel-v3.heat-reuse{grid-column:1/-1}}@media (max-width:760px){.hmi-overview-strip-v2{grid-template-columns:1fr 1fr}.hmi-stat-v2{border-bottom:1px solid var(--hmi-v2-line)}.hmi-stat-v2:last-child{grid-column:1/-1}.hmi-map-toolbar-v2{flex-direction:column;align-items:flex-start}.hmi-legend-v2{flex-wrap:wrap}.hmi-event-table-v2{overflow-x:auto}.hmi-event-table-v2>div{min-width:700px}.hmi-operating-context-v3,.hmi-process-support-v3{grid-template-columns:1fr}.hmi-support-panel-v3.heat-reuse{grid-column:auto}}@media (prefers-reduced-motion:reduce){.hmi-map-flow,.hmi-map-flow-pulse,.hmi-object.machine-running .hmi-device-image,.hmi-object.machine-running .hmi-object-focus,.hmi-furnace-object.thermal-active .hmi-device-image.furnace{animation:none}}.badge{border:1px solid var(--line);min-height:30px;color:var(--muted);white-space:nowrap;background:#ffffff0a;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:13px;display:inline-flex}.badge.ok{color:var(--green);border-color:#45d48361}.badge.warn{color:var(--amber);border-color:#f0b84f6b}.badge.risk{color:var(--red);border-color:#f0646470}.icon-button,.primary-button,.ghost-button,.tab-button,.switch{border:1px solid var(--line);background:var(--surface-2);min-height:36px;color:var(--text);border-radius:8px;justify-content:center;align-items:center;gap:8px;display:inline-flex}.icon-button{width:38px;padding:0}.primary-button{color:#dffcff;background:#31c7d529;border-color:#31c7d585;padding:0 14px}.ghost-button,.tab-button{color:var(--muted);padding:0 12px}.tab-button.active{color:var(--text);background:#31c7d524;border-color:#31c7d58c}.content{grid-template-columns:minmax(0,1fr);gap:18px;width:min(1760px,100% - 48px);margin:0 auto;padding:22px 0 32px;display:grid}.hero-grid{grid-template-columns:minmax(320px,.9fr) minmax(560px,1.4fr);gap:18px;display:grid}.panel{border:1px solid var(--line);min-width:0;box-shadow:var(--shadow);background:#171b21f5;border-radius:8px}.target-panel,.process-panel,.section-panel{padding:18px}.section-title{justify-content:space-between;gap:12px;margin-bottom:14px}.section-title h2,.section-title h3{align-items:center;gap:8px;margin:0;font-size:16px;display:flex}.muted{color:var(--muted)}.target-value{grid-template-columns:1fr auto;align-items:end;gap:12px;margin:18px 0;display:grid}.temperature-number{font-size:64px;font-weight:760;line-height:.95}.temperature-number small{color:var(--muted);font-size:22px}.deviation{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;gap:4px;min-width:128px;padding:12px;display:grid}.deviation strong{font-size:28px}.form-grid{grid-template-columns:1fr auto;gap:10px;margin-top:14px;display:grid}.input{border:1px solid var(--line);width:100%;min-height:38px;color:var(--text);background:#11151a;border-radius:8px;outline:none;padding:0 12px}.input:focus{border-color:#31c7d5ad}.kpi-grid{grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;display:grid}.kpi{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;min-height:92px;padding:12px}.kpi label{min-height:18px;color:var(--muted);font-size:12px;display:block}.kpi strong{margin-top:10px;font-size:24px;display:block}.kpi span{color:var(--muted);margin-top:4px;font-size:12px;display:block}.process-map{border:1px solid var(--line);background:linear-gradient(90deg, transparent 0, transparent 48%, #31c7d533 49%, transparent 51%), var(--surface-2);border-radius:8px;grid-template-columns:repeat(5,1fr);gap:12px;min-height:170px;padding:16px;display:grid;position:relative;overflow:hidden}.process-unit{border:1px solid var(--line);background:#141a20;border-radius:8px;align-content:center;gap:8px;min-height:132px;padding:12px;display:grid;position:relative}.process-unit:after{content:"";background:#31c7d573;width:13px;height:2px;position:absolute;top:50%;right:-13px}.process-unit:last-child:after{display:none}.process-unit b{font-size:13px}.process-unit strong{font-size:22px}.main-grid{grid-template-columns:minmax(0,1fr);gap:18px;display:grid}.workbench-stack{gap:14px;display:grid}.summary-strip{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.compact-title{margin-top:2px;margin-bottom:0}.compact-strategy-list{grid-template-columns:repeat(2,minmax(0,1fr))}.strategy-list{gap:10px;min-width:0;display:grid}.strategy-card{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;gap:12px;min-width:0;min-height:0;padding:14px;display:grid;overflow:hidden}.strategy-card__top{justify-content:space-between;gap:12px;min-width:0}.strategy-title{align-items:center;gap:10px;min-width:0;display:flex}.strategy-title>div{min-width:0}.strategy-title h3{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:0;font-size:15px;line-height:1.25;display:-webkit-box;overflow:hidden}.status-dot{background:var(--muted);border-radius:50%;flex:none;width:10px;height:10px}.status-dot.stable{background:var(--green)}.status-dot.optimize{background:var(--cyan)}.status-dot.risk{background:var(--red)}.status-dot.observe,.status-dot.needs_config{background:var(--amber)}.status-dot.data_gap,.status-dot.disabled{background:var(--muted)}.strategy-summary{color:#d8e1e7;min-height:42px;margin:0;font-size:14px;line-height:1.5}.strategy-meta{grid-template-columns:minmax(104px,.7fr) minmax(180px,1.45fr) minmax(126px,.9fr);gap:10px;min-width:0;display:grid}.strategy-meta div{border:1px solid var(--line);background:#151a20;border-radius:8px;min-width:0;min-height:54px;padding:8px}.strategy-meta label{color:var(--muted);font-size:11px;display:block}.strategy-meta strong{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin-top:6px;font-size:13px;line-height:1.35;display:-webkit-box;overflow:hidden}.strategy-evidence{background:#31c7d50f;border:1px solid #31c7d538;border-radius:8px;gap:6px;padding:10px;display:grid}.strategy-evidence label{color:var(--muted);font-size:11px}.strategy-evidence span{color:#cfe8ee;font-size:12px;line-height:1.45}.guards{flex-wrap:wrap;gap:6px;display:flex}.guard-pill{border:1px solid var(--line);min-height:26px;color:var(--muted);border-radius:999px;align-items:center;padding:4px 8px;font-size:12px;display:inline-flex}.guard-pill.ok{color:var(--green);border-color:#45d48357}.guard-pill.warn,.guard-pill.unknown{color:var(--amber);border-color:#f0b84f57}.guard-pill.risk{color:var(--red);border-color:#f0646466}.switch{border-radius:999px;flex:none;width:52px;min-width:52px;height:28px;min-height:28px;padding:0;position:relative}.switch span{background:var(--muted);border-radius:50%;width:20px;height:20px;transition:transform .16s,background .16s;position:absolute;left:4px}.switch.on{background:#45d4832e;border-color:#45d48385}.switch.on span{background:var(--green);transform:translate(22px)}.chart-stack{gap:12px;display:grid}.chart-box{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;min-height:276px;padding:12px}.chart-svg{width:100%;height:220px;display:block}.legend{color:var(--muted);flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.legend i{border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block}.tabs{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.operator-row{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;justify-content:space-between;gap:12px;padding:12px}.operator-row strong{margin-top:4px;font-size:18px;display:block}.operator-input{max-width:260px}.operation-plan{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;gap:12px;padding:14px;display:grid}.operation-plan-grid{grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) minmax(190px,1fr) auto;align-items:end;gap:10px;display:grid}.operation-plan-grid>label{color:var(--muted);gap:6px;font-size:12px;display:grid}.input-with-unit,.execution-confirm,.execution-confirm label{align-items:center;gap:8px;display:flex}.input-with-unit b,.execution-confirm b{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:500}.plan-save-button{min-height:38px}.recommendation-list,.run-list{gap:12px;display:grid}.action-card,.run-card{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;gap:12px;min-width:0;padding:14px;display:grid}.action-card__top,.run-card__top,.action-footer{justify-content:space-between;gap:12px}.action-footer>.muted{max-width:760px;line-height:1.45}.execution-confirm{flex:none}.execution-confirm label{color:var(--muted);font-size:12px}.execution-input{width:92px;min-height:36px}.action-card h3,.run-card h3{margin:3px 0 0;font-size:17px;line-height:1.35}.action-badges{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.priority,.status-chip,.readiness-chip{border:1px solid var(--line);white-space:nowrap;border-radius:999px;align-items:center;min-height:28px;padding:4px 9px;font-size:12px;display:inline-flex}.readiness-chip.ready{color:var(--green);border-color:#45d4836b}.readiness-chip.limited{color:var(--amber);border-color:#f0b84f6b}.readiness-chip.needs_input,.readiness-chip.data_gap{color:var(--muted);border-color:#9aa8b45c}.input:disabled{cursor:not-allowed;opacity:.55}.priority.high{color:var(--red);border-color:#f064646b}.priority.medium{color:var(--amber);border-color:#f0b84f6b}.priority.low,.status-chip.observe,.status-chip.observing{color:var(--muted);border-color:#9aa8b45c}.status-chip.executable,.status-chip.completed{color:var(--green);border-color:#45d4836b}.status-chip.blocked,.status-chip.rollback_recommended,.status-chip.not_applied{color:var(--red);border-color:#f064646b}.action-summary{color:#d8e1e7;margin:0;font-size:14px;line-height:1.55}.action-details,.parameter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.action-details div,.parameter-card{border:1px solid var(--line);background:#151a20;border-radius:8px;min-width:0;padding:10px}.action-details label,.parameter-card label,.action-list label{color:var(--muted);font-size:12px;display:block}.action-details strong,.parameter-card strong{overflow-wrap:anywhere;margin-top:6px;font-size:14px;line-height:1.4;display:block}.action-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.action-list{border:1px solid var(--line);background:#151a20;border-radius:8px;align-content:start;gap:6px;min-height:112px;padding:10px;display:grid}.action-list span,.notes-list span,.evidence-row span{color:#cfe0e7;font-size:12px;line-height:1.45}.evidence-row{flex-wrap:wrap;gap:6px;display:flex}.evidence-row span{background:#31c7d50f;border:1px solid #31c7d53d;border-radius:999px;align-items:center;min-height:26px;padding:4px 8px;display:inline-flex}.risk-row span{color:#ffb8b8;border-color:#f0646457}.review-box{background:#45d4830f;border:1px solid #45d48347;border-radius:8px;gap:8px;padding:10px;display:grid}.review-box strong{font-size:14px}.delta-row{flex-wrap:wrap;gap:8px}.delta-row span{color:var(--muted);font-size:12px}.parameter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.parameter-card{gap:8px;min-height:150px;display:grid}.parameter-card h3{margin:0 0 2px;font-size:15px}.parameter-card div{grid-template-columns:88px 1fr;align-items:baseline;gap:8px;display:grid}.notes-list{background:#31c7d50f;border:1px solid #31c7d538;border-radius:8px;gap:6px;padding:12px;display:grid}.replay-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.replay-stat{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;min-height:84px;padding:12px}.replay-stat label{color:var(--muted);font-size:12px;display:block}.replay-stat strong{margin-top:10px;font-size:26px;display:block}.insight-grid,.weather-grid{gap:10px;display:grid}.insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.weather-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.insight-card,.weather-card{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;min-height:128px;padding:12px}.insight-card label,.weather-card label{color:var(--muted);font-size:12px;display:block}.insight-card strong,.weather-card strong{color:var(--text);margin-top:8px;font-size:18px;line-height:1.35;display:block}.insight-card span,.weather-card span{color:#cfe0e7;margin-top:8px;font-size:13px;line-height:1.45;display:block}.insight-card p{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.45}.notice{color:#f6d79b;background:#f0b84f14;border:1px solid #f0b84f4d;border-radius:8px;padding:12px 14px;font-size:13px}.spin{animation:.9s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-state{min-height:180px;color:var(--muted);place-items:center;display:grid}@media (max-width:1320px){.hero-grid,.main-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:1080px){.operation-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-save-button{width:100%}}@media (max-width:760px){.topbar{grid-template-columns:1fr;position:static}.content{width:min(100% - 24px,1760px);padding-top:12px}.kpi-grid,.replay-grid,.summary-strip,.strategy-meta,.insight-grid,.weather-grid,.compact-strategy-list,.action-details,.action-columns,.parameter-grid,.process-map{grid-template-columns:1fr}.operator-row,.action-card__top,.run-card__top,.action-footer{flex-direction:column;align-items:stretch}.operator-input{max-width:none}.operation-plan-grid{grid-template-columns:1fr;align-items:stretch}.section-title{flex-direction:column;align-items:flex-start}.section-title .badge{white-space:normal;max-width:100%}.process-unit:after{display:none}.execution-confirm,.execution-confirm label{align-items:stretch}.execution-confirm label{flex:1}.execution-input{width:100%}.temperature-number{font-size:48px}.target-value,.form-grid{grid-template-columns:1fr}}
