:root{--hdr:#2b6cb0;--hdr2:#3d7fc4;--bg:#dcebf4;--panel:#f4f9fc;--menu:#c9e6e0;--menu-btn:#9fd3c7;--teal:#0f6f68;--ink:#10243a;--muted:#4a5f73;--num:#123a8c;--yellow:#ffd23f;--alarm:#d62828;color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body{background:#0b1b2b;height:100%;margin:0}button,select,input{font:inherit}.vent{height:100vh;background:var(--bg);-webkit-user-select:none;user-select:none;grid-template-rows:46px 1fr auto;height:100dvh;display:grid;overflow:hidden}.hdr{color:#fff;background:linear-gradient(var(--hdr2), var(--hdr));white-space:nowrap;align-items:center;gap:14px;padding:0 12px;display:flex;overflow:hidden}.hdr-pop{align-items:center;gap:6px;font-size:12px;display:flex}.pop-icon{background:50%/contain no-repeat;width:18px;height:26px}.hdr-pop .pop-icon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 24' fill='white'%3E%3Ccircle cx='6' cy='3' r='2.6'/%3E%3Cpath d='M2 7h8l-1 8H8v8H4v-8H3z'/%3E%3C/svg%3E")}.hdr-pop[data-pop=pediatric] .pop-icon{transform:scale(.8)}.hdr-pop[data-pop=neonatal] .pop-icon{transform:scale(.6)}.hdr-clock{opacity:.9;font-variant-numeric:tabular-nums;font-size:12px}.hdr-mode{cursor:pointer;letter-spacing:.5px;font-size:22px;font-weight:600}.hdr-status.standby{background:var(--yellow);color:#000;border-radius:3px;padding:2px 10px;font-weight:700}.hdr-msg{text-overflow:ellipsis;flex:1;min-width:0;font-weight:600;overflow:hidden}.hdr-msg.alarm{background:var(--alarm);border-radius:3px;padding:4px 10px;animation:1s steps(2,end) infinite blink}.hdr-msg.warn{background:var(--yellow);color:#000;border-radius:3px;padding:4px 10px}@keyframes blink{50%{opacity:.55}}.hdr-patient{opacity:.9;text-overflow:ellipsis;max-width:32%;font-size:12px;overflow:hidden}.hdr-brand{opacity:.75;font-size:11px}.main{grid-template-columns:1fr 200px 190px;min-height:0;display:grid}.waves{background:#fff;border-right:1px solid #b8cfdd;grid-template-rows:1fr 1fr 1fr;min-height:0;display:grid;position:relative}.waves canvas{border-bottom:1px solid #d3e2ec;width:100%;height:100%;min-height:0;display:block}.is-standby .waves canvas{opacity:.35}.values{background:var(--panel);grid-template-rows:repeat(12,1fr);min-height:0;display:grid;overflow:hidden}.val{border-bottom:1px solid #dbe7ef;flex-direction:column;justify-content:center;min-height:0;padding:2px 8px;display:flex}.val-head{align-items:baseline;gap:6px;display:flex}.val-label{font-size:13px;font-weight:700}.val-unit{color:var(--muted);font-size:10px}.val-body{justify-content:flex-end;align-items:center;gap:6px;display:flex}.val-num{color:var(--num);font-variant-numeric:tabular-nums;font-size:clamp(18px,3.1vh,34px);font-weight:600;line-height:1}.val-lim{color:var(--muted);flex-direction:column;min-width:30px;font-size:10px;font-style:normal;display:flex}.val-lim i{text-align:right;font-style:normal;line-height:1.2}.val.alarm{background:var(--alarm)}.val.alarm .val-num,.val.alarm .val-label,.val.alarm .val-unit,.val.alarm .val-lim{color:#fff}.menu{background:var(--menu);flex-direction:column;gap:6px;min-height:0;padding:8px;display:flex;overflow-y:auto}.menu-btn{background:linear-gradient(#b9e3d9, var(--menu-btn));color:var(--ink);cursor:pointer;text-align:center;border:1px solid #6fb3a4;border-radius:4px;min-height:36px;padding:8px 6px;font-size:13px}.menu-btn:hover{filter:brightness(1.05)}.menu-btn.on{background:var(--yellow);border-color:#c9a400}.menu-spacer{flex:1}.menu-btn.freeze.on{background:#ffe9a8}.menu-btn.standby{background:linear-gradient(#e7f2f8,#c6dbe8);border-color:#7f9db3;min-height:48px;font-weight:700}.menu-btn.standby.go{color:#fff;background:linear-gradient(#5fd38d,#26a65b);border-color:#1c7d44}.bar{background:#e7f4f1;border-top:2px solid #8cc7ba;grid-template-rows:auto 1fr;grid-template-columns:auto 1fr minmax(170px,230px);display:grid}.bar-head{background:#fff;grid-column:1/-1;justify-content:space-between;align-items:center;padding:3px 10px;display:flex}.bar-mode{font-weight:700}.btn-confirm{color:#888;cursor:pointer;background:#eee;border:1px solid #aaa;border-radius:4px;padding:3px 14px}.btn-confirm.armed{background:var(--yellow);color:#000;border-color:#b38f00;font-weight:700;animation:1.2s steps(2,end) infinite blink}.bar-knobs{grid-column:1/3;align-items:flex-start;gap:6px;padding:6px 10px;display:flex;overflow-x:auto}.bar-info{color:var(--muted);border-left:1px solid #c3dfd8;padding:6px 10px;font-size:11px}.bar-info div{justify-content:space-between;gap:8px;display:flex}.bar-info b{color:var(--ink)}.warn{color:#9a4b00;font-weight:600}.bar-info .warn{background:#fff2c4;margin-top:3px;padding:2px 4px;display:block}.knob{text-align:center;cursor:ns-resize;touch-action:none;border-radius:6px;outline:none;flex:none;width:74px;padding:2px 0;position:relative}.knob svg{width:58px;height:58px;margin:0 auto;display:block}.knob-bg{fill:var(--teal)}.knob-track{fill:none;stroke:#ffffff40;stroke-width:4px}.knob-arc{fill:none;stroke:#fff;stroke-width:4px;stroke-linecap:round}.knob-val{color:#fff;font-variant-numeric:tabular-nums;pointer-events:none;height:58px;font-size:16px;font-weight:700;line-height:58px;position:absolute;top:2px;left:0;right:0}.knob-label{margin-top:2px;font-size:12px;font-weight:700}.knob-label span{color:var(--muted);font-size:9px;font-weight:400;display:block}.knob-sub{color:var(--teal);min-height:11px;font-size:9px}.knob:focus-visible{box-shadow:0 0 0 2px #2b6cb0}.knob.active .knob-bg{fill:var(--yellow)}.knob.active .knob-val{color:#000}.knob.active .knob-arc{stroke:#000}.knob.active .knob-track{stroke:#0003}.knob.pending{background:#fff4c2}.knob.small{width:66px}.knob.small svg{width:50px;height:50px}.knob.small .knob-val{height:50px;font-size:14px;line-height:50px}.knob.toggle{cursor:pointer}.knob.toggle .knob-val{font-size:12px}.overlay{z-index:5;background:#10243a40;justify-content:center;align-items:flex-start;padding:14px;display:flex;position:absolute;inset:0;overflow:auto}.overlay[hidden]{display:none}.win{background:#fff;border:1px solid #7f9db3;border-radius:6px;flex-direction:column;width:min(520px,100%);max-height:100%;display:flex;box-shadow:0 8px 30px #00000040}.win.wide{width:min(900px,100%)}.win-head{background:var(--hdr);color:#fff;border-radius:6px 6px 0 0;justify-content:space-between;align-items:center;padding:6px 12px;font-weight:600;display:flex}.win-close{color:#fff;cursor:pointer;background:0 0;border:0;font-size:22px;line-height:1}.win-body{-webkit-user-select:text;user-select:text;padding:12px;font-size:14px;overflow:auto}.win-body h4{color:var(--teal);text-transform:uppercase;letter-spacing:.4px;margin:12px 0 6px;font-size:13px}.row{align-items:center;gap:10px;margin:6px 0;display:flex}.row label{min-width:150px;color:var(--muted)}.row.big b{color:var(--num);font-size:20px}.note{color:var(--muted);font-size:12px}.actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.btn{cursor:pointer;background:#eef4f8;border:1px solid #7f9db3;border-radius:4px;padding:6px 14px}.btn.primary{background:var(--teal);color:#fff;border-color:#0b524d;font-weight:600}.btn.primary:disabled{opacity:.4;cursor:not-allowed}.btn.danger{background:var(--alarm);color:#fff;border-color:#911}.btn.big{padding:10px 26px;font-size:16px}.tbl{border-collapse:collapse;width:100%}.tbl td{border-bottom:1px solid #e3edf3;padding:4px 6px}.tbl input{width:90px}.tbl .num{text-align:right;color:var(--num);font-variant-numeric:tabular-nums;font-weight:600}.soon li{margin:3px 0}.vent-split{grid-template-columns:190px 1fr;gap:12px;display:grid}.mode-list{flex-direction:column;gap:3px;max-height:60vh;display:flex;overflow:auto}.mode-fam{color:var(--muted);text-transform:uppercase;margin-top:6px;font-size:11px}.mode-btn{text-align:left;cursor:pointer;background:#f4f9fc;border:1px solid #c3d5e1;border-radius:3px;padding:4px 8px;font-size:13px}.mode-btn.cur{border-left:4px solid var(--teal)}.mode-btn.sel{background:var(--yellow)}.mode-title b{font-size:18px}.legacy{color:var(--muted);font-size:12px}.mode-desc{color:var(--muted);margin:4px 0;font-size:13px}.knob-grid{flex-wrap:wrap;gap:4px;display:flex}.pt-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.sliders{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:6px 18px;display:grid}.slider{grid-template-columns:130px 1fr 44px;align-items:center;gap:6px;font-size:13px;display:grid}.slider output{text-align:right;color:var(--num);font-weight:600}.events{flex-wrap:wrap;gap:6px;display:flex}.setup .tabs{gap:4px;margin-bottom:10px;display:flex}.tab{cursor:pointer;background:#eef4f8;border:1px solid #7f9db3;border-radius:4px;flex:1;padding:8px;font-weight:600}.tab.sel{background:var(--teal);color:#fff}.setup-split{grid-template-columns:1fr 1fr;gap:14px;display:grid}.preset-list{flex-direction:column;gap:4px;max-height:52vh;display:flex;overflow:auto}.preset{text-align:left;cursor:pointer;background:#f4f9fc;border:1px solid #c3d5e1;border-radius:4px;padding:6px 8px}.preset small{color:var(--muted);font-size:11px;display:block}.preset.sel{background:#fff4c2;border-color:#c9a400}@media (max-width:1180px){.main{grid-template-columns:1fr 160px 130px}.hdr-brand{display:none}.menu-btn{padding:6px 4px;font-size:12px}.knob{width:64px}.knob svg{width:50px;height:50px}.knob-val{height:50px;font-size:14px;line-height:50px}}@media (max-width:820px){.vent{grid-template-rows:46px 1fr auto}.main{grid-template-rows:auto 1fr auto;grid-template-columns:1fr}.menu{flex-flow:row;order:-1;padding:4px;overflow-x:auto}.menu-btn{flex:none;min-height:30px}.menu-spacer{display:none}.values{grid-template-rows:none;grid-template-columns:repeat(4,1fr)}.bar{grid-template-columns:1fr}.bar-knobs{grid-column:1}.bar-info,.hdr-patient{display:none}.vent-split,.setup-split{grid-template-columns:1fr}}.waves{grid-template-rows:1fr;grid-template-columns:1fr}.curves{grid-template-rows:1fr 1fr 1fr;min-width:0;min-height:0;display:grid}.waves.loops-on{grid-template-columns:3fr 2fr}.loops{border-left:1px solid #b8cfdd;grid-template-rows:auto 1fr 1fr;min-width:0;min-height:0;display:grid}.loops[hidden]{display:none}.loops canvas{border-bottom:1px solid #d3e2ec;width:100%;height:100%;min-height:0;display:block}.loops-bar{background:var(--panel);flex-wrap:wrap;align-items:center;gap:4px;padding:3px 4px;display:flex}.loops-bar select{max-width:46%;font-size:12px}.btn.sm{padding:2px 8px;font-size:12px}.btn:disabled{opacity:.45;cursor:not-allowed}.cursor-info{z-index:4;color:#10243a;pointer-events:none;background:#fffffff2;border:1px solid #e0006c;border-radius:4px;padding:2px 8px;font-size:12px;position:absolute;bottom:4px;left:40px}.cursor-info[hidden]{display:none}.cursor-info small{color:var(--muted)}.menu-btn.speed.on{border-color:var(--teal);background:#d6f0ec;font-weight:700}.overlay.dock{pointer-events:none;background:0 0;justify-content:flex-end;padding:6px}.overlay.dock .win{pointer-events:auto;opacity:.97;width:min(400px,100%)}.overlay.dock .sliders{grid-template-columns:1fr}.pt-eff{background:#f1f7fb;border:1px solid #d3e2ec;border-radius:4px;padding:6px 8px;font-size:12px;line-height:1.5}.trend-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:120px;gap:6px;margin:8px 0;display:grid}.trend-grid canvas{border:1px solid #d3e2ec;border-radius:3px;width:100%;height:100%;display:block}.trend-read{font-variant-numeric:tabular-nums;min-height:2.4em}.hdr-msg{cursor:pointer}.hdr-msg.al-high{background:var(--alarm);color:#fff;border-radius:3px;padding:4px 10px;animation:.5s steps(2,end) infinite blink}.hdr-msg.al-medium{background:var(--yellow);color:#000;border-radius:3px;padding:4px 10px;animation:1.6s steps(2,end) infinite blink}.hdr-msg.al-low{color:#000;background:#3fc1d9;border-radius:3px;padding:4px 10px}.hdr-msg.al-resolved{color:#fff;background:#8a96a3;border-radius:3px;padding:4px 10px}.btn-silence,.btn-areset,.audio-unlock{color:#fff;cursor:pointer;font-variant-numeric:tabular-nums;background:#fff2;border:1px solid #fff8;border-radius:4px;padding:4px 8px;font-weight:600}.btn-silence.on{background:var(--yellow);color:#000}.btn-areset.pending{color:var(--hdr);background:#fff}.audio-unlock{background:var(--yellow);color:#000;animation:1.2s steps(2,end) infinite blink}.audio-unlock[hidden]{display:none}.al-list{margin:4px 0;padding-left:18px}.al-list li.al-high,.al-log tr.al-high td:last-child{color:var(--alarm);font-weight:700}.al-list li.al-medium,.al-log tr.al-medium td:last-child{color:#9a6b00;font-weight:600}.al-list li.al-resolved{color:#8a96a3}.al-logbox{max-height:220px;overflow:auto}.btn.al-high{background:var(--alarm);color:#fff}.btn.al-medium{background:var(--yellow)}.btn.al-low{background:#3fc1d9}.disclaimer{color:#5a4a00;background:#fff7d6;border-left:3px solid #e0b100;padding:6px 8px}.case-list{gap:6px;display:grid}.case-item{text-align:left;cursor:pointer;background:#f6fafc;border:1px solid #c6d4df;border-radius:6px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.case-item:hover{border-color:var(--teal);background:#eef6f8}.case-item small{color:var(--muted)}.case-title{margin-bottom:4px;font-size:15px}.case-title small{color:var(--muted)}.case-obj{background:#eef6f8;border-radius:4px;padding:6px 8px}.case-hints{margin:4px 0;padding-left:20px;font-size:13px}.actions.left{flex-wrap:wrap;justify-content:flex-start;margin-top:6px}.case-quiz{flex-direction:column;align-items:stretch;gap:4px;display:flex}.quiz-opt{text-align:left}.quiz-opt.good{background:#d8f3dc;border-color:#2d9d4a}.quiz-opt.bad{background:#fde2e2;border-color:#c62828}.case-eval{border-collapse:collapse;width:100%;font-size:13px}.case-eval th,.case-eval td{text-align:left;border-bottom:1px solid #e3e9ee;padding:3px 5px}.case-eval tr.ok td:last-child{color:#2d9d4a;font-weight:700}.case-eval tr.ko td:last-child{color:#c62828;font-weight:700}.case-eval tr.tip td{color:#8a5a00;border-bottom:1px solid #e3e9ee;font-size:12px;font-style:italic}.case-status{background:#f1f4f6;border-radius:4px;margin-top:8px;padding:6px 8px;font-size:13px}.case-status.done{color:#1b5e20;background:#d8f3dc;font-weight:600}.gloss{border-collapse:collapse;width:100%;font-size:13px}.gloss td{vertical-align:top;border-bottom:1px solid #e3e9ee;padding:4px 6px}.gloss td:first-child{width:28%}.hdr-msg.al-high,.hdr-msg.al-medium{white-space:nowrap;flex:0 auto;min-width:220px}.overlay.dock .row{flex-wrap:wrap}.main{grid-template-columns:1fr 210px 250px}.values{grid-template-rows:repeat(6,1.5fr) repeat(3,1fr);grid-template-columns:1fr 1fr}.val.main{grid-column:1/-1;padding:2px 10px 2px 8px}.val.main .val-label{font-size:14px}.val.main .val-num{font-size:clamp(22px,4.6vh,46px);font-weight:500}.val.main .val-lim{min-width:34px;font-size:10px}.val.sec{background:#eef5f9;border-right:1px solid #dbe7ef;padding:1px 6px}.val.sec .val-label{font-size:11px}.val.sec .val-unit{font-size:9px}.val.sec .val-num{font-size:clamp(14px,2.3vh,22px)}.val.sec .val-lim{min-width:20px;font-size:9px}.menu{grid-template-columns:1fr 1fr;grid-auto-rows:min-content;align-content:start;gap:6px;padding:8px;display:grid}.menu .menu-btn{text-align:left;align-items:center;gap:5px;min-height:46px;padding:4px 5px;font-size:12px;line-height:1.15;display:flex}.menu-ico{height:22px;color:var(--teal);background:#ffffff8c;border-radius:4px;flex:0 0 22px;place-items:center;font-size:13px;display:grid}.menu-txt{flex:1;min-width:0}.menu-spacer{grid-column:1/-1;min-height:6px}.menu .menu-btn.speed,.menu .menu-btn.freeze{grid-column:1/-1;justify-content:center;min-height:34px}.bar{grid-template-columns:1fr auto minmax(140px,200px) 250px}.bar-head{grid-column:1/4}.bar-knobs{grid-column:1}.knob{width:80px}.knob svg{width:64px;height:64px}.knob-val{letter-spacing:-.5px;height:64px;font-size:17px;line-height:64px}.knob-bg{stroke:#0b4f4a;stroke-width:3px}.bar-apnea{cursor:pointer;min-width:150px;color:var(--muted);border-left:1px solid #c3dfd8;padding:8px 12px;font-size:12px}.bar-apnea[hidden]{display:none}.bar-apnea div{grid-template-columns:1fr auto 30px;gap:6px;line-height:1.5;display:grid}.bar-apnea b{color:var(--ink);text-align:right}.bar-apnea small{font-size:9px}.bar-apnea.active{background:#fff4c2}.bar-standby{background:var(--menu);grid-area:1/4/3;align-items:flex-end;padding:8px;display:flex}.bar-standby .menu-btn.standby{width:100%;min-height:56px}@media (max-width:1180px){.main{grid-template-columns:1fr 170px 170px}.menu{grid-template-columns:1fr}.menu-ico{display:none}.bar{grid-template-columns:1fr auto 170px}.bar-info{display:none}.bar-standby{grid-column:3}.knob{width:66px}.knob svg{width:52px;height:52px}.knob-val{height:52px;font-size:15px;line-height:52px}}@media (max-width:820px){.main{grid-template-columns:1fr}.menu{display:flex}.menu .menu-btn{flex:none;min-height:30px}.values{grid-template-rows:none;grid-template-columns:repeat(4,1fr)}.val.main{grid-column:auto}.bar{grid-template-columns:1fr}.bar-head,.bar-knobs,.bar-standby{grid-area:auto/1}.bar-apnea{display:none}}.quick-guide{background:#eef6f8;border:1px solid #c6dde4;border-radius:6px;margin-bottom:8px;padding:2px 12px 6px}.quick-guide ol{margin:4px 0;padding-left:20px}.quick-guide li{margin:5px 0;line-height:1.4}.bar-knobs{scroll-snap-type:x proximity;scrollbar-width:thin}.bar-knobs .knob{scroll-snap-align:start}@media (max-width:1180px){.bar-head{grid-column:1/3}.bar-knobs{grid-area:2/1}.bar-apnea{grid-area:2/2}.bar-standby{grid-area:1/3/3}.menu{gap:4px;padding:6px}.menu .menu-btn{min-height:34px}.menu .menu-btn.speed,.menu .menu-btn.freeze{min-height:30px}}@media (max-width:820px){.bar{grid-template-columns:1fr 130px}.bar-head{grid-area:1/1}.bar-knobs{grid-area:2/1/auto/-1}.bar-standby{background:#fff;grid-area:1/2;padding:3px 6px}.bar-standby .menu-btn.standby{min-height:32px;padding:4px}.bar-knobs{background:linear-gradient(270deg,#0f6f682e,#0000 28px) 100%/28px 100% no-repeat}}@media (max-width:600px){.vent{grid-template-rows:auto 1fr auto}.hdr{white-space:normal;flex-wrap:wrap;gap:4px 10px;padding:4px 8px}.hdr-mode{font-size:18px}.hdr-clock,.hdr-pop .pop-name{display:none}.hdr-msg{flex:100%;order:5}.hdr-msg:empty{display:none}.hdr-msg.al-high,.hdr-msg.al-medium{white-space:normal;min-width:0}.btn-silence,.btn-areset,.audio-unlock{padding:3px 6px;font-size:13px}.values{grid-template-columns:repeat(3,1fr)}.val{padding:2px 5px}.val.main .val-label{font-size:12px}.val.main .val-num{font-size:clamp(20px,3.6vh,30px)}.val-unit{font-size:9px}.val-lim{min-width:22px}.knob{width:62px}.knob svg{width:48px;height:48px}.knob-val{height:48px;font-size:14px;line-height:48px}.bar-head{padding:3px 8px}.overlay:not(.dock){z-index:20;padding:6px;position:fixed}.win-body{padding:10px}.row label{min-width:110px}.slider{grid-template-columns:110px 1fr 40px}.sliders{grid-template-columns:1fr}.trend-grid{grid-template-columns:1fr 1fr}}
