:root{color-scheme:light;--ink:#172c39;--muted:#526776;--line:#d8e2e8;--accent:#12634e;--paper:#f3f6f8;--white:#fff;--amber:#775100}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.55}a{color:var(--accent);text-underline-offset:4px}a:hover{color:#083d30}button,input,select{font:inherit}button,.button{display:inline-block;background:var(--accent);color:white;border:1px solid var(--accent);border-radius:7px;padding:10px 19px;font-weight:650;text-decoration:none;cursor:pointer}button:hover,.button:hover{background:#0c4b3c;color:white}.secondary,.quiet{background:transparent;color:var(--accent)}.lab{display:flex;justify-content:space-between;padding:9px max(24px,calc((100vw - 1200px)/2));background:#f5e9ca;color:#624400;font-size:12px;font-weight:700;letter-spacing:.06em}header{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1248px;margin:auto;padding:27px 24px}.brand{text-decoration:none;font-size:29px;font-weight:850;letter-spacing:-1px;color:var(--ink)}.brand span{display:block;font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:600;color:var(--muted)}.identity{display:flex;align-items:center;gap:20px;font-size:14px}nav{display:flex;gap:8px;max-width:1200px;margin:auto;border-block:1px solid var(--line);padding:12px 0;flex-wrap:wrap}nav a{padding:7px 14px;text-decoration:none;font-size:14px;font-weight:600;border-radius:5px}nav a:hover{background:#e1ebe8}main{max-width:1248px;margin:auto;padding:22px 24px 64px;min-height:70vh}.local-note{font-size:12px;color:var(--muted);margin:0 0 22px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:.15em;color:var(--accent);margin:0 0 8px}h1{font-size:clamp(29px,3vw,42px);line-height:1.2;letter-spacing:-1.3px;margin:0 0 16px}h2{font-size:21px;line-height:1.3;margin:8px 0 12px}.muted{color:var(--muted)}.small{font-size:13px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:16px 0 25px}.page-heading p{margin-top:0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px}.card{background:var(--white);border:1px solid var(--line);padding:26px;border-radius:10px;margin-bottom:22px}.metrics .card{margin:0}.metrics p{margin:0 0 12px;color:var(--muted);font-size:13px}.metrics strong{display:block;font-size:43px;letter-spacing:-1.5px}.metrics .status{font-size:24px;letter-spacing:-.5px;margin:22px 0 8px}.metrics span{font-size:12px;color:var(--muted)}.good{color:var(--accent)}.empty{padding:48px 28px;text-align:center}.empty p{max-width:610px;margin:12px auto 22px;color:var(--muted)}.status-dot{display:inline-block;width:12px;height:12px;border:2px solid #8395a1;border-radius:50%;margin-bottom:10px}.badge{display:inline-block;border:1px solid #d9c18d;background:#fff5db;color:#6d4b00;padding:4px 10px;border-radius:5px;font-size:11px;font-weight:750;letter-spacing:.06em}.spaced{margin-left:24px}.login-panel{max-width:440px;margin:6vh auto 0}.login-panel h1{font-size:42px}.stack{display:flex;flex-direction:column;gap:18px;margin:27px 0}.stack label,label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:650}input,select{padding:11px 12px;border:1px solid #9bacb9;border-radius:5px;background:white;color:var(--ink);min-width:0;width:100%}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #207d62;outline-offset:3px}.error{padding:12px;border-left:4px solid #ad3838;background:#fff0ef;color:#832727}.filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:end}.filters a{padding:10px}.table-wrap{overflow-x:auto;padding:0}table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}caption{text-align:left;padding:17px 22px;font-weight:700;border-bottom:1px solid var(--line)}th{padding:15px 18px;background:#edf2f5;font-size:12px;white-space:nowrap}td{padding:18px;border-bottom:1px solid var(--line)}td:first-child{white-space:nowrap;color:var(--muted);font-size:12px}.pagination{display:flex;justify-content:center;gap:25px;font-size:14px}.detail{display:grid;grid-template-columns:200px 1fr;gap:16px}.detail dt{color:var(--muted);font-size:13px}.detail dd{margin:0;overflow-wrap:anywhere}.narrow{max-width:700px}li{margin:10px 0}footer{max-width:1248px;margin:auto;padding:20px 24px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}.skip{position:absolute;left:12px;top:-60px;background:white;padding:10px;z-index:10}.skip:focus{top:8px}code{font-size:.9em}@media(max-width:700px){.lab span{display:none}.lab{padding:10px 18px}header{padding:22px 18px}.identity{gap:8px;font-size:12px}nav{padding:9px 10px;gap:0}nav a{font-size:12px;padding:9px}main{padding:20px 16px 45px}.metrics{grid-template-columns:1fr}.metrics .status{margin:8px 0}.metrics strong{font-size:32px}.page-heading{align-items:start}.filters{grid-template-columns:1fr 1fr}.detail{grid-template-columns:1fr;gap:5px}.detail dd{margin-bottom:14px}.card{padding:21px}.table-wrap{padding:0}.login-panel{margin-top:25px}.login-panel h1{font-size:35px}.spaced{display:block;margin:16px 0 0}}

/* Operator attention and customer records. */
[hidden]{display:none!important}textarea{font:inherit;padding:11px 12px;border:1px solid #9bacb9;border-radius:5px;background:white;color:var(--ink);width:100%;resize:vertical;min-height:80px}textarea:focus{outline:3px solid #207d62;outline-offset:3px}.preserve-lines{white-space:pre-wrap}.client-form{max-width:780px;display:grid;gap:20px}.client-search{display:flex;align-items:end;gap:16px;max-width:780px}.client-search label{flex:1}.secret-output{font-weight:700;overflow-wrap:anywhere;white-space:pre-wrap}.attention-toolbar{max-width:1200px;margin:18px auto 0;padding:15px 18px;border:1px solid #c5d8d1;border-radius:8px;background:#eaf3ef;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.attention-toolbar strong{flex:1;min-width:200px;font-size:13px}.attention-toolbar>span{width:100%;color:#415b50}.attention-controls{display:flex;gap:8px;flex-wrap:wrap}.attention-controls button{padding:7px 11px;font-size:12px}.connection-error{border-color:#ad3838;background:#fff0ef}.alarm-panel{position:fixed;right:16px;top:70px;width:360px;max-height:calc(100vh - 90px);overflow-y:auto;padding:20px;background:#8d1622;color:white;border:3px solid #ef525a;border-radius:12px;z-index:20;box-shadow:0 8px 30px #550b2030;animation:alarm-pulse 1.8s ease-in-out infinite}.alarm-panel h2{font-size:25px;letter-spacing:-.5px}.alarm-eyebrow{font-size:11px;font-weight:800;letter-spacing:.07em;margin:0}.alarm-data{display:grid;gap:4px;margin:18px 0}.alarm-data dt{font-size:11px;font-weight:650;color:#ffe1e1}.alarm-data dd{margin:0 0 10px;font-size:14px;overflow-wrap:anywhere}.alarm-panel a{color:white;font-weight:650;font-size:13px}.alarm-panel button{background:white;color:#7f1020;border-color:white;padding:8px 12px;font-size:13px}.alarm-panel button:hover{background:#ffe7e9;color:#7f1020}.alarm-panel .acknowledge{font-size:14px;font-weight:800;width:100%;margin:14px 0 10px}.alarm-navigation{display:flex;gap:10px;margin:12px 0}.alarm-panel .small{font-size:11px}.alarm-open main,.alarm-open header,.alarm-open nav,.alarm-open footer,.alarm-open .attention-toolbar{width:calc(100% - 400px);max-width:1248px;margin-right:400px;margin-left:auto}.alarm-open .lab{padding-right:400px}.motion-paused .alarm-panel{animation:none}button:disabled{opacity:.6;cursor:default}@keyframes alarm-pulse{0%,100%{background:#8d1622;border-color:#f27279}50%{background:#b42130;border-color:#ffb0b5}}@media(prefers-reduced-motion:reduce){.alarm-panel{animation:none}}@media(max-width:900px){.alarm-panel{position:relative;right:auto;top:auto;width:auto;max-height:none;margin:16px}.alarm-open main,.alarm-open header,.alarm-open nav,.alarm-open footer,.alarm-open .attention-toolbar{width:auto;max-width:1248px;margin-right:auto;margin-left:auto}.attention-toolbar{margin:16px}.alarm-open .lab{padding-right:18px}.client-search{display:block}.client-search button{margin-top:12px}.alarm-data{grid-template-columns:120px minmax(0,1fr);gap:10px}.alarm-panel .alarm-data dd{margin-bottom:6px}.attention-controls button{padding:8px}.alarm-open .metrics{grid-template-columns:1fr}}

.sensor-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:end}.case-note{border-top:1px solid var(--line);padding:16px 0}.alarm-open .filters{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:600px){.sensor-form{grid-template-columns:1fr}}

.monitor-client{margin:20px 0}.monitor-client-heading{border-bottom:1px solid #cedbd5;padding-bottom:16px}.monitor-client-heading h2{margin-bottom:6px}.monitor-sensors{list-style:none;padding:0;display:grid;gap:12px;margin:18px 0 0}.monitor-sensor{border:1px solid #becdc6;border-left:5px solid #6d8277;border-radius:8px;padding:16px;overflow-wrap:anywhere}.monitor-sensor h3{margin:0 0 8px}.monitor-sensor p{font-size:13px}.monitor-sensor.sensor-alarm{border-color:#ae2135;border-left-width:6px;background:#fff1f2;color:#761023}.monitor-pages{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.monitor-stale{border:2px dashed #ac6811;padding:8px}.monitor-stale .monitor-sensor{opacity:.8}

.monitor-tabs{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.monitor-tabs [aria-selected="false"]{background:white;color:#175b4b;border:1px solid #175b4b}.monitor-tabs [aria-selected="true"]{box-shadow:0 3px 0 #175b4b;font-weight:800}

.language-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.language-form label{font-size:12px}.language-form select{width:auto;max-width:160px;padding:8px}.language-form button{padding:8px;font-size:12px}input[type=checkbox]{width:auto;margin-right:8px}.client-form fieldset{display:grid;gap:15px;border:1px solid #a5bab0;padding:16px;border-radius:6px}

header{flex-wrap:wrap}.identity{min-width:0;flex-wrap:wrap;overflow-wrap:anywhere}.language-form{max-width:100%;min-width:0}.monitor-client-heading{overflow-wrap:anywhere}.monitor-pages button{max-width:100%}
