:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1220;--bg-glow:#132033;--text:#f8fafc;--muted:#94a3b8;--accent:#38bdf8;--accent-strong:#0ea5e9;--panel:#0f172ad1;--border:#94a3b82e;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:IBM Plex Sans,system-ui,sans-serif;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{background:radial-gradient(1200px 600px at 15% -10%, #38bdf829, transparent 55%), radial-gradient(900px 500px at 90% 10%, #1e293be6, transparent 50%), linear-gradient(180deg, var(--bg-glow), var(--bg) 45%);min-width:320px;margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.page{flex-direction:column;justify-content:center;min-height:100vh;padding:clamp(1.5rem,4vw,3rem);display:flex}.page--center{text-align:center;align-items:center}.hero{max-width:40rem}.hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.brand{letter-spacing:.04em;color:var(--text);text-transform:uppercase;margin:0 0 1rem;font-family:Barlow Condensed,IBM Plex Sans,sans-serif;font-size:clamp(2rem,6.5vw,3.75rem);font-weight:700;line-height:.95}h1{letter-spacing:-.02em;margin:0 0 .85rem;font-size:clamp(1.35rem,3vw,1.85rem);font-weight:600}h2{margin:0 0 .5rem;font-size:1.15rem}.lede{max-width:34rem;color:var(--muted);margin:0;font-size:1.05rem}.muted{color:var(--muted);font-size:.95rem;font-weight:500}.eyebrow{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0 0 .35rem;font-size:.85rem}.btn,.tabs__btn,.seg__btn,.chip,.hmi-toggle,.app-nav__link{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.btn{border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;background:#0f172ab3;border-radius:8px;justify-content:center;align-items:center;gap:.4rem;padding:.65rem 1rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{border-color:#38bdf873;text-decoration:none}.btn--primary{color:#06283d;background:linear-gradient(#0ea5e9,#0284c7);border-color:#38bdf88c}.btn--danger{color:#fecaca;border-color:#f8717173}.btn--danger:hover:not(:disabled){background:#7f1d1d59;border-color:#f87171bf}.btn--danger:disabled{opacity:.45;cursor:not-allowed}.btn--block{width:100%}.boiler-app{max-width:1400px;padding:1.25rem clamp(1rem,3vw,1.75rem) 2.5rem;padding-left:max(clamp(1rem, 3vw, 1.75rem), env(safe-area-inset-left));padding-right:max(clamp(1rem, 3vw, 1.75rem), env(safe-area-inset-right));padding-bottom:max(2.5rem, env(safe-area-inset-bottom));margin:0 auto}.boiler-app--mobile{max-width:560px}.boiler-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.boiler-top__actions{flex-wrap:wrap;gap:.5rem;display:flex}.tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.tabs__btn,.seg__btn,.chip{border:1px solid var(--border);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:.45rem .9rem;font-size:.9rem}.tabs__btn.is-on,.seg__btn.is-on,.chip.is-on{color:var(--text);background:#38bdf81f;border-color:#38bdf88c}.boiler-meta{flex-wrap:wrap;align-items:center;gap:.85rem;margin-bottom:1rem;display:flex}.boiler-meta__now{background:#38bdf814;border:1px solid #38bdf859;border-radius:10px;flex-direction:column;gap:.15rem;min-width:12rem;padding:.45rem .75rem;display:flex}.boiler-meta__now-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.68rem}.boiler-meta__now-value,.boiler-live-clock{font-variant-numeric:tabular-nums;color:#e2f6ff;font-size:.98rem;font-weight:600}.boiler-live-clock{margin:.35rem 0 0}.boiler-meta__date{color:var(--muted);margin:0}.boiler-meta__captured{color:#7dd3fc;margin:0;font-size:.88rem}.btn--sm{padding:.35rem .7rem;font-size:.85rem}.btn.is-on{color:#e2f6ff;background:#38bdf82e;border-color:#38bdf8b3}.status{color:#7dd3fc;margin:0;font-size:.92rem}.entry-layout{grid-template-columns:minmax(0,1.35fr) minmax(260px,.85fr);gap:1rem;display:grid}@media (width<=900px){.entry-layout{grid-template-columns:1fr}}.entry-panel{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:1rem}.entry-panel--dock{margin-top:1rem}.hmi{align-items:stretch;gap:.85rem;min-height:560px;display:grid}.hmi--rail-closed{grid-template-columns:minmax(0,1fr)}.hmi--rail-open{grid-template-columns:minmax(0,1.55fr) minmax(280px,.78fr)}@media (width<=1100px){.hmi--rail-open{grid-template-columns:1fr}.hmi__rail{max-width:42rem}}@media (width<=980px){.hmi--rail-open{grid-template-columns:1fr}}.hmi__stage{background:radial-gradient(80% 55% at 50% 45%,#1e3a5f59,#0000 65%),linear-gradient(#0c1424 0%,#070d18 100%);border:1px solid #38bdf838;border-radius:10px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.hmi__stage-bar{background:#080f1cd9;border-bottom:1px solid #94a3b81f;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem 1rem;display:flex}.hmi__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#64748b;margin:0;font-size:.68rem}.hmi__stage-title{letter-spacing:.04em;color:#e2e8f0;margin:.1rem 0 0;font-family:IBM Plex Mono,IBM Plex Sans,ui-monospace,monospace;font-size:.95rem;font-weight:600}.hmi__stage-actions{flex-shrink:0;align-items:center;gap:.55rem;display:flex}.hmi__hour-chip{color:#7dd3fc;letter-spacing:.06em;border:1px solid #38bdf873;border-radius:999px;flex-shrink:0;padding:.3rem .65rem;font-size:.72rem;font-weight:700}.hmi__submit-hint{color:#facc15;letter-spacing:.02em;white-space:nowrap;font-size:.72rem;font-weight:650}.hmi__board{flex-direction:column;flex:1;gap:1rem;min-height:420px;padding:1rem 1.1rem 1.15rem;display:flex}.hmi-process{background:radial-gradient(42% 50% at 28% 42%,#f973161a,#0000 68%),radial-gradient(36% 48% at 72% 38%,#38bdf81a,#0000 70%),linear-gradient(#0b1424 0%,#070d18 100%);border:1px solid #38bdf829;border-radius:12px;margin:.1rem 0 .45rem;overflow:hidden}.hmi-process__art{width:100%;height:auto;min-height:420px;display:block}.hmi-art-title{fill:#e2e8f0;letter-spacing:.08em;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:16px;font-weight:700}.hmi-art-sub{fill:#94a3b8;letter-spacing:.04em;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:13px;font-weight:500}.hmi-art-label{fill:#cbd5e1;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:14px;font-weight:650}.hmi-art-label--muted{fill:#94a3b8;letter-spacing:.12em;font-size:12px;font-weight:700}.hmi-art-hot{fill:#fb923c;letter-spacing:.06em;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:14px;font-weight:700}.hmi-legend__title{fill:#64748b;letter-spacing:.1em;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:10px;font-weight:700}.hmi-legend__label{fill:#94a3b8;font-family:IBM Plex Sans,system-ui,sans-serif;font-size:11px;font-weight:500}.hmi-unit__hit{fill:#0000;stroke:none;pointer-events:all}.hmi-flow-line{stroke-linecap:round;stroke-dasharray:8 7;animation:1.7s linear infinite hmi-flow}.hmi-flow-line--steam{animation-duration:1.25s}.hmi-flow-line--cond{animation-duration:2.1s}.hmi-flow-line--flue{stroke-dasharray:5 6;animation-duration:2.4s}@keyframes hmi-flow{to{stroke-dashoffset:-30px}}.hmi-boil{pointer-events:none}.hmi-boil-wave{animation:2.6s linear infinite hmi-boil-drift}.hmi-boil-wave--mid{animation-duration:3.2s;animation-delay:-.8s}.hmi-boil-wave--low{animation-duration:3.8s;animation-delay:-1.5s}@keyframes hmi-boil-drift{0%{transform:translate(0)}to{transform:translate(-48px)}}.hmi-mo-fire{pointer-events:none;overflow:visible}.hmi-flame-fly{opacity:0;transform-origin:50%;animation:1.2s linear infinite hmi-flame-fly}.hmi-flame-fly--one{animation-duration:1.7s;animation-delay:.45s}.hmi-flame-fly--two{animation-duration:2.6s;animation-delay:.55s}.hmi-flame-main{transform-origin:50% 100%;animation:1.7s linear infinite hmi-flame-wobble}.hmi-flame-main--one{animation-duration:2.2s;animation-delay:.35s}.hmi-flame-main--two{animation-duration:1.7s;animation-delay:.7s}.hmi-flame-main--three{animation-duration:1.2s;animation-delay:1s}.hmi-flame-main--four{animation-duration:1.8s;animation-delay:1.3s}.hmi-flame-main--five{animation-duration:1.4s;animation-delay:1.6s}@keyframes hmi-flame-wobble{50%{transform:scaleY(1.15)translateY(-8px)rotate(-2deg)}}@keyframes hmi-flame-fly{0%{transform:translate(0)rotate(180deg)}50%{opacity:1}to{opacity:0;transform:translate(-8px,-28px)rotate(180deg)}}.hmi-plume-svg{animation:2.8s ease-out infinite hmi-plume-svg}@keyframes hmi-plume-svg{0%{opacity:.15;transform:translateY(4px)}60%{opacity:.45}to{opacity:0;transform:translateY(-12px)}}@keyframes hmi-warn-flash{0%,to{opacity:.55}50%{opacity:1}}.hmi-led-warn{animation:.85s ease-in-out infinite hmi-warn-flash}.hmi-unit{cursor:pointer;outline:none;transition:filter .18s,opacity .18s}.hmi-unit:focus-visible{outline-offset:3px;outline:2px solid #38bdf8}.hmi-unit--warn{filter:drop-shadow(0 0 6px #facc158c)}.hmi-unit--ok{filter:drop-shadow(0 0 5px #4ade8059)}.hmi-unit--active{filter:drop-shadow(0 0 10px #38bdf8d9)}.hmi-unit--active.hmi-unit--ok{filter:drop-shadow(0 0 10px #4ade80bf)}.hmi-unit--active.hmi-unit--warn{filter:drop-shadow(0 0 10px #facc15d9)}.hmi-itag.is-linked{background:#0e243aeb;border-color:#38bdf88c;box-shadow:0 0 0 1px #38bdf838}.hmi-zone.is-linked{border-color:#38bdf859;box-shadow:0 0 0 1px #38bdf81f}.hmi-kpi.is-linked{background:#0ea5e914;border-color:#38bdf873}@media (width<=720px){.hmi-process__art{min-height:360px}}.hmi__zones{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}@media (width>=720px){.hmi__zones{grid-template-columns:repeat(3,minmax(0,1fr))}.hmi-zone--aux{grid-column:1/-1}}.hmi-zone{background:#080f1cb8;border:1px solid #94a3b829;border-radius:8px;padding:.55rem .6rem .65rem}.hmi-zone--cool{border-top:2px solid #38bdf8}.hmi-zone--hot{border-top:2px solid #f97316}.hmi-zone--stack{border-top:2px solid #94a3b8}.hmi-zone--tank{border-top:2px solid #64748b}.hmi-zone__title{letter-spacing:.1em;text-transform:uppercase;color:#64748b;margin:0 0 .45rem;font-size:.65rem;font-weight:700}.hmi-zone__tags{gap:.4rem;display:grid}.hmi-zone--aux .hmi-zone__tags{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=560px){.hmi-zone--aux .hmi-zone__tags{grid-template-columns:1fr}}.hmi-status-dot{background:#475569;border-radius:50%;flex-shrink:0;width:.55rem;height:.55rem;box-shadow:inset 0 0 0 1px #0f172a80}.hmi-status-dot--ok{background:#4ade80;box-shadow:0 0 7px #4ade80d9}.hmi-status-dot--out{background:#fb923c;box-shadow:0 0 7px #fb923ccc}.hmi-status-dot--warn{background:#facc15;animation:.9s ease-in-out infinite hmi-warn-flash;box-shadow:0 0 8px #facc15e6}.hmi-itag{width:100%;color:var(--text);cursor:text;background:#0c1628e6;border:1px solid #38bdf847;border-radius:6px;justify-content:space-between;align-items:center;gap:.45rem;padding:.4rem .5rem;display:flex}.hmi-itag:hover{border-color:#38bdf88c}.hmi-itag.is-filled{border-color:#7dd3fc73}.hmi-itag.is-ok{border-color:#4ade808c}.hmi-itag.is-out{border-color:#fb923cb3}.hmi-itag.is-warn{animation:.9s ease-in-out infinite hmi-warn-flash}.hmi-itag.is-active,.hmi-itag:focus-within{background:#0e243afa;border-color:#38bdf8;box-shadow:0 0 0 1px #38bdf859}.hmi-itag.is-invalid{border-color:#f87171;box-shadow:0 0 0 1px #f8717159}.hmi-itag__name{color:#94a3b8;letter-spacing:.02em;flex-shrink:0;font-size:.72rem;font-weight:650}.hmi-zone--ok{border-color:#4ade8047}.hmi-zone--warn{animation:.9s ease-in-out infinite hmi-warn-flash}.hmi-kpi.is-ok{border-color:#4ade8066}.hmi-kpi.is-out{border-color:#fb923c80}.hmi-kpi.is-warn{animation:.9s ease-in-out infinite hmi-warn-flash}.hmi-status__warn{color:#facc15}.hmi-status__out{color:#fb923c}.hmi-itag__field{flex:1;justify-content:flex-end;align-items:baseline;gap:.25rem;min-width:0;display:inline-flex}.hmi-itag__input{color:#e2e8f0;text-align:right;font-variant-numeric:tabular-nums;background:0 0;border:none;border-radius:3px;outline:none;width:100%;min-width:3.2rem;max-width:5.5rem;margin-left:auto;padding:.15rem .2rem;font-family:IBM Plex Mono,IBM Plex Sans,ui-monospace,monospace;font-size:1rem;font-weight:700}.hmi-itag__input::placeholder{color:#64748b;opacity:1}.hmi-itag__input:disabled{opacity:.55;cursor:not-allowed}.hmi-itag__field small{color:#64748b;flex-shrink:0;font-size:.65rem;font-weight:500}.hmi__rail{flex-direction:column;gap:.65rem;min-width:0;display:flex}.hmi-panel{background:#0a101ceb;border:1px solid #94a3b829;border-radius:8px;padding:.7rem .75rem}.hmi-panel--metrics-entry{flex:1}.hmi-metrics-block+.hmi-metrics-block{border-top:1px solid #94a3b824;margin-top:.85rem;padding-top:.75rem}.hmi-metrics-block__title{letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin:0 0 .5rem;font-size:.68rem;font-weight:700}.hmi-toggle{color:#7dd3fc;font:inherit;letter-spacing:.04em;cursor:pointer;background:#0e243ae6;border:1px solid #38bdf866;border-radius:999px;padding:.22rem .65rem;font-size:.72rem;font-weight:700}.hmi-toggle:hover{border-color:#38bdf8b3}.hmi-toggle.is-on{color:#e2f6ff;background:#38bdf82e;border-color:#38bdf8}.hmi-panel__head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.55rem;display:flex}.hmi-panel__head h3{letter-spacing:.08em;text-transform:uppercase;color:#94a3b8;margin:0;font-size:.72rem;font-weight:700}.hmi-link{color:#38bdf8;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.72rem;font-weight:600}.hmi-link:disabled{opacity:.45;cursor:default}.hmi-kpi-grid{grid-template-columns:1fr 1fr;gap:.4rem;display:grid}.hmi-kpi{min-height:64px;color:inherit;text-align:left;cursor:pointer;font:inherit;background:#0f172abf;border:1px solid #94a3b829;border-radius:6px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;gap:.15rem .4rem;padding:.5rem .55rem;display:grid;position:relative}.hmi-kpi .hmi-status-dot{grid-row:1/span 2}.hmi-kpi__label,.hmi-kpi__value{grid-column:2}.hmi-kpi:hover{border-color:#38bdf866}.hmi-kpi.is-active{background:#0ea5e91a;border-color:#38bdf8}.hmi-kpi__dot{background:#334155;border-radius:50%;width:7px;height:7px;position:absolute;top:8px;right:8px}.hmi-kpi__dot.is-on{background:#22c55e;box-shadow:0 0 6px #22c55e8c}.hmi-kpi__label{color:#94a3b8;padding-right:.75rem;font-size:.68rem}.hmi-kpi__value{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,IBM Plex Sans,ui-monospace,monospace;font-size:1.05rem;font-weight:700;line-height:1.15}.hmi-kpi__value small{color:#64748b;margin-left:.25rem;font-size:.68rem;font-weight:500}.hmi-status-grid{grid-template-columns:1fr 1fr;gap:.4rem;display:grid}.hmi-status{background:#0f172a8c;border:1px solid #94a3b81f;border-radius:6px;flex-direction:column;gap:.15rem;padding:.45rem .5rem;display:flex}.hmi-status__label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-size:.65rem}.hmi-status strong{font-size:.92rem;font-weight:700}.hmi-status__ok{color:#4ade80}.hmi-entry-hint{color:#94a3b8;margin:0 0 .35rem;font-size:.82rem}.hmi-mode{color:#5eead4;letter-spacing:.06em;text-align:center;background:#0d948814;border:1px solid #2dd4bf73;border-radius:6px;margin-top:auto;padding:.55rem .75rem;font-size:.72rem;font-weight:700}.toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.75rem 0;display:flex}.seg{gap:.25rem;display:inline-flex}.field{color:var(--muted);flex-direction:column;gap:.35rem;margin:.65rem 0;font-size:.9rem;display:flex}.field--inline{flex-direction:row;align-items:center}.field--wide{grid-column:1/-1}.field input,.field select,.field textarea{border:1px solid var(--border);width:100%;color:var(--text);font:inherit;background:#0b1220;border-radius:8px;padding:.7rem .8rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem 1rem;display:grid}.check{color:var(--muted);align-items:center;gap:.5rem;margin-top:1.4rem;display:flex}.reading-list{gap:.35rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.reading-list button{width:100%;color:inherit;font:inherit;cursor:pointer;background:#94a3b80f;border:1px solid #0000;border-radius:8px;justify-content:space-between;gap:.75rem;padding:.55rem .65rem;display:flex}.reading-list button:hover{border-color:var(--border)}.reading-list small{color:var(--muted);font-weight:500}.day-grid-wrap{border:1px solid var(--border);background:var(--panel);border-radius:12px;overflow:auto}.day-grid{border-collapse:collapse;width:100%;min-width:980px;font-size:.78rem}.day-grid th,.day-grid td{text-align:center;border-bottom:1px solid #94a3b81f;padding:.35rem .2rem}.day-grid__metric{z-index:1;background:#0f172a;min-width:7.5rem;position:sticky;left:0;text-align:left!important;padding-left:.75rem!important}.day-grid__metric small{color:var(--muted);font-weight:500;display:block}.day-grid__hour{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;padding:.2rem .15rem}.day-grid__hour.is-active{color:#06283d;background:var(--accent);font-weight:700}.day-grid__cell{color:var(--muted);cursor:pointer}.day-grid__cell.is-filled{color:var(--text);font-weight:600}.day-grid__cell.is-selected{background:#38bdf81f}.trends__chips{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.trends__chart{border:1px solid var(--border);background:var(--panel);border-radius:12px;padding:.75rem .5rem .25rem}.trends__hint{color:var(--muted);margin:.75rem 0 0;font-size:.9rem}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.trends-workspace{grid-template-columns:minmax(0,1.7fr) minmax(260px,.72fr);align-items:start;gap:.85rem;display:grid}@media (width<=980px){.trends-workspace{grid-template-columns:1fr}}.trends-workspace__main{flex-direction:column;gap:.85rem;min-width:0;display:flex}.trends-workspace__toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.trends-workspace__hint{color:var(--muted);margin:0;font-size:.88rem}.trend-graph{background:#0a101ceb;border:1px solid #94a3b829;border-radius:10px;overflow:hidden}.trend-graph__bar{background:#080e1ae6;border-bottom:1px solid #94a3b81f;flex-wrap:wrap;align-items:flex-end;gap:.5rem;padding:.65rem .75rem;display:flex}.trend-graph__title{border:1px solid var(--border);min-width:7rem;max-width:11rem;color:var(--text);font:inherit;background:#0b1220;border-radius:6px;padding:.45rem .55rem;font-weight:600}.trend-graph__field{color:#64748b;text-transform:uppercase;letter-spacing:.04em;flex-direction:column;gap:.2rem;font-size:.68rem;display:flex}.trend-graph__field input,.trend-graph__field select{border:1px solid var(--border);min-width:4.5rem;color:var(--text);font:inherit;text-transform:none;letter-spacing:normal;background:#0b1220;border-radius:6px;padding:.4rem .45rem;font-size:.85rem}.trend-graph__field input[type=number]{width:4.25rem}.trend-graph__plot{min-height:280px;padding:.35rem .35rem 0}.trend-graph__empty{text-align:center;color:var(--muted);margin:0;padding:3rem 1.25rem;font-size:.92rem}.trend-graph__pills{flex-wrap:wrap;gap:.4rem;padding:.55rem .75rem .75rem;display:flex}.trend-pill{color:#e2e8f0;background:#0f172ad9;border:1px solid #94a3b838;border-radius:999px;align-items:center;gap:.4rem;max-width:100%;padding:.28rem .35rem .28rem .5rem;font-size:.78rem;display:inline-flex}.trend-pill__swatch{background:var(--pill-color,#38bdf8);border-radius:50%;flex-shrink:0;width:9px;height:9px}.trend-pill strong{font-variant-numeric:tabular-nums;font-weight:700}.trend-pill__remove{color:#94a3b8;cursor:pointer;background:0 0;border:0;border-radius:50%;width:22px;height:22px;font-size:1rem;line-height:1}.trend-pill__remove:hover{color:#f8fafc;background:#94a3b826}.trends-signals{background:#0a101cf2;border:1px solid #94a3b829;border-radius:10px;max-height:calc(100vh - 6rem);padding:.75rem;position:sticky;top:.75rem;overflow:auto}.trends-signals__head{margin-bottom:.35rem}.trends-signals__head h3{margin:0;font-size:.95rem}.trends-signals__head p{color:var(--muted);margin:.15rem 0 0;font-size:.8rem}.trends-signals__list{flex-direction:column;gap:.35rem;margin:.35rem 0 0;padding:0;list-style:none;display:flex}.trends-signals__list li{background:#0f172a8c;border:1px solid #94a3b81a;border-radius:8px;justify-content:space-between;align-items:center;gap:.55rem;padding:.45rem .4rem;display:flex}.trends-signals__meta{flex-direction:column;gap:.1rem;min-width:0;display:flex}.trends-signals__meta strong{font-size:.86rem;font-weight:600}.trends-signals__meta span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.78rem}.trends-signals__list .btn{flex-shrink:0;padding:.35rem .55rem;font-size:.78rem}.trends-signals__list .btn:disabled{opacity:.55;cursor:default}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.app-nav{padding:.65rem clamp(1rem,3vw,1.75rem);padding-top:max(.65rem, env(safe-area-inset-top));padding-left:max(clamp(1rem, 3vw, 1.75rem), env(safe-area-inset-left));padding-right:max(clamp(1rem, 3vw, 1.75rem), env(safe-area-inset-right));border-bottom:1px solid var(--border);z-index:20;background:#080e1aeb;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex;position:sticky;top:0}.app-nav__brand{letter-spacing:.06em;text-transform:uppercase;color:var(--text);font-family:Barlow Condensed,IBM Plex Sans,sans-serif;font-size:1.25rem;font-weight:700;text-decoration:none}.app-nav__brand:hover{color:var(--accent);text-decoration:none}.app-nav__links{flex-wrap:wrap;flex:1;gap:.35rem;display:flex}.app-nav__link{color:var(--muted);border:1px solid #0000;border-radius:999px;padding:.35rem .7rem;font-size:.88rem;font-weight:600;text-decoration:none}.app-nav__link:hover{color:var(--text);text-decoration:none}.app-nav__link.active{color:var(--text);background:#38bdf81f;border-color:#38bdf873}.app-nav__session{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.btn.is-selected{border-color:#38bdf88c;box-shadow:0 0 0 1px #38bdf840}.hero__signed-in{margin-top:1.25rem}.auth-card{border:1px solid var(--border);background:var(--panel);text-align:left;border-radius:12px;max-width:22rem;margin-top:1.25rem;padding:1rem 1.1rem}.auth-card h2{margin-top:0}.auth-card code{color:#7dd3fc;font-family:IBM Plex Mono,ui-monospace,monospace}.auth-error{color:#fca5a5;margin:.35rem 0 .65rem;font-size:.9rem}.admin-layout{grid-template-columns:minmax(240px,.9fr) minmax(0,1.2fr);align-items:start;gap:1rem;display:grid}.admin-layout--supervisors{margin-top:1.25rem}@media (width<=800px){.admin-layout{grid-template-columns:1fr}}.field-hint{color:var(--muted);margin-top:.35rem;font-size:.8rem;display:block}.shift-review-summary{color:var(--muted);margin:0 0 .85rem;font-size:.9rem}.shift-status{letter-spacing:.04em;text-transform:uppercase;border:1px solid #94a3b847;border-radius:999px;align-items:center;padding:.25rem .65rem;font-size:.78rem;font-weight:700;display:inline-flex}.shift-status--open{color:#94a3b8}.shift-status--submitted{color:#fbbf24;background:#fbbf241a;border-color:#fbbf2473}.shift-status--accepted{color:#4ade80;background:#4ade801a;border-color:#4ade8073}.shift-actions{margin-top:.85rem}.operator-list{flex-direction:column;gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.operator-list li{background:#0b1220bf;border:1px solid #94a3b824;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;padding:.65rem .7rem;display:flex}.operator-list__code{color:var(--muted);margin-top:.15rem;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.85rem;display:block}.boiler-signed-in{color:var(--muted);margin:.35rem 0 0;font-size:.9rem}.boiler-meta__actor{color:#7dd3fc;margin:0;font-size:.88rem}@media (width<=1180px){.boiler-app{max-width:none}.hmi__stage-bar{flex-wrap:wrap;row-gap:.55rem}.hmi__stage-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.hmi__board{padding:.85rem .75rem 1rem}.hmi-process__art{min-height:440px}.hmi__zones{grid-template-columns:repeat(2,minmax(0,1fr))}.hmi-zone--aux{grid-column:1/-1}.hmi-zone--aux .hmi-zone__tags{grid-template-columns:repeat(3,minmax(0,1fr))}.field input,.field select,.trend-graph__title,.trend-graph__field select,.trend-graph__field input{min-height:2.75rem;font-size:1rem}}@media (width<=900px){.tabs{gap:.5rem}.tabs__btn,.seg__btn,.chip{min-height:2.75rem;padding:.55rem 1rem;font-size:.95rem}.btn{min-height:2.75rem;padding:.55rem 1rem}.hmi-toggle{min-height:2.5rem;padding:.35rem .9rem;font-size:.8rem}.hmi-itag{min-height:3rem;padding:.55rem .65rem}.hmi-itag__name{font-size:.85rem}.hmi-itag__input{max-width:6.5rem;font-size:1.05rem}.hmi-kpi{min-height:4.25rem;padding:.65rem .7rem}.app-nav__link{align-items:center;min-height:2.5rem;padding:.45rem .85rem;display:inline-flex}.hmi-unit{touch-action:manipulation}}@media (pointer:coarse){.hmi-itag{min-height:3rem}.hmi-itag__input,.field input,.field select{font-size:1.05rem}.tabs__btn,.btn,.hmi-toggle{min-height:2.75rem}.hmi-process{min-height:0}.hmi-process__art{min-height:460px}.hmi-art-title{font-size:17px}.hmi-art-sub{font-size:14px}}@media (width<=700px){.hmi__zones,.hmi-zone--aux .hmi-zone__tags{grid-template-columns:1fr}.boiler-meta__now{width:100%;min-width:0}}
