body{background:#f4f7fb}
.bar{background:#000;color:#fff;position:sticky;top:0;z-index:5}
.bar .in{max-width:1280px;margin:0 auto;padding:8px 16px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.bar img{height:42px}.bar nav{display:flex;gap:4px;flex-wrap:wrap;flex:1}
.bar nav a{color:#c7d6e8;text-decoration:none;padding:8px 12px;border-radius:3px;font-size:14px;font-weight:600}
.bar nav a.on,.bar nav a:hover{background:#2f6199;color:#fff}
.bar .who{font-size:12px;color:#8fa3bb}.bar button{background:transparent;color:#fff;border:1px solid #3a4a5e;border-radius:3px;padding:6px 10px;cursor:pointer}
#view{max-width:1280px;margin:0 auto;padding:18px 16px 60px}
.banner{background:#fff6e0;border-left:5px solid #c58b00;padding:8px 14px;font-size:13px;margin:0 0 14px}
.kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin:10px 0 18px}
.kpi{background:#fff;border:1px solid var(--line);border-top:4px solid var(--blue2);padding:12px 14px}
.kpi b{display:block;font-size:26px;color:var(--navy);line-height:1.1}.kpi span{font-size:12.5px;color:var(--mute)}
.panel{background:#fff;border:1px solid var(--line);padding:14px 16px;margin-bottom:16px;overflow:auto}
.panel h3{margin:0 0 10px;font-size:16px;color:var(--navy)}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
table.t{border-collapse:collapse;width:100%;font-size:13.5px}
table.t th{background:var(--navy);color:#fff;text-align:left;padding:8px 10px;white-space:nowrap;font-size:12.5px}
table.t td{border-bottom:1px solid var(--line);padding:7px 10px;vertical-align:top}
table.t tr.click{cursor:pointer}table.t tr.click:hover td{background:#eef3f9}
.pill{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;font-weight:700;background:#e4eefa;color:#1f4c80;white-space:nowrap}
.pill.ok{background:#dff3e6;color:#17663a}.pill.bad{background:#fdeceb;color:#a1241c}.pill.warn{background:#fff1cc;color:#8a5d00}.pill.mute{background:#e8ecf1;color:#4a5a6e}
.bar-row{display:grid;grid-template-columns:130px 1fr 60px;gap:8px;align-items:center;font-size:13px;margin:5px 0}
.bar-row .b{background:#e4eefa;height:14px;border-radius:2px;overflow:hidden}.bar-row .b i{display:block;height:100%;background:var(--blue2)}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px;align-items:end}
.filters label{font-size:12px;font-weight:600;color:#42536a;display:block}.filters input,.filters select{margin-top:2px;padding:7px 8px;font-size:13.5px;width:auto;min-width:110px}
button.sm{background:var(--blue);color:#fff;border:0;border-radius:3px;padding:8px 12px;font-size:13px;font-weight:600;cursor:pointer}
button.sm.sec{background:#fff;color:var(--blue);border:1.5px solid var(--blue)}button.sm.red{background:var(--bad)}button.sm:disabled{opacity:.5}
.chips{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0}.chip{background:#e4eefa;border-radius:12px;padding:3px 10px;font-size:13px}.chip b{cursor:pointer;margin-left:6px;color:var(--bad)}
.win{display:flex;gap:8px;align-items:center;margin:6px 0}.win input{width:120px;margin:0}
.modal{position:fixed;inset:0;background:rgba(10,20,35,.55);z-index:20;display:flex;align-items:flex-start;justify-content:center;overflow:auto;padding:30px 12px}
.modal .m{background:#fff;max-width:760px;width:100%;padding:20px 22px;border-top:5px solid var(--blue2)}
.modal h2{margin-top:0}.modal .x{float:right;cursor:pointer;font-size:22px;border:0;background:none}
.tl{position:relative;border:1px solid var(--line);background:#e8ecf1;height:90px;margin:10px 0 4px;overflow:hidden}
.tl .o{position:absolute;top:0;bottom:0;background:#fff}.tl .p{position:absolute;top:14px;height:62px;border-radius:2px;padding:3px 5px;font-size:11px;color:#fff;overflow:hidden;border:1px solid #fff}
.tl .p.vo2{background:#2f6199}.tl .p.lactate{background:#1b7a8c}.tl .p.vald{background:#7a4fa3}.tl .p.pend{opacity:.55;background-image:repeating-linear-gradient(45deg,transparent 0 6px,rgba(255,255,255,.35) 6px 12px)}
.axis{position:relative;height:16px;font-size:11px;color:var(--mute)}.axis span{position:absolute;transform:translateX(-50%)}
.legend{font-size:12px;color:var(--mute);margin-top:6px}.legend i{display:inline-block;width:11px;height:11px;margin:0 4px 0 10px;vertical-align:-1px}
.login{max-width:380px;margin:80px auto;padding:0 16px}
.kv2{display:grid;grid-template-columns:140px 1fr;gap:4px 12px;font-size:14px}.kv2 dt{color:var(--mute)}.kv2 dd{margin:0}
.qr{padding:8px;background:#fff;display:inline-block}
code.l{background:#eef3f9;padding:2px 6px;border-radius:3px;font-size:12.5px;word-break:break-all}
