:root{color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{background:#060812}.shell{display:grid;grid-template-columns:320px 1fr;height:100vh;background:radial-gradient(1200px 700px at 30% 15%,rgba(60,95,210,.16),transparent 60%),radial-gradient(900px 500px at 80% 10%,rgba(220,70,90,.1),transparent 55%),#060812;color:#e9eefc;font-family:Arial,Helvetica,sans-serif}.sidebar{border-right:1px solid rgba(255,255,255,.08);padding:18px 16px;display:flex;flex-direction:column;gap:12px;background:linear-gradient(180deg,#0c101ec7,#0a0c16eb)}.sideHeader{font-size:18px;font-weight:800;letter-spacing:.2px;opacity:.98}.search{width:100%;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px 12px;color:#e9eefc;outline:none}.search::placeholder{color:#e9eefc8c}.patientList{display:flex;flex-direction:column;gap:10px;overflow:auto;padding-right:6px}.patientRow{text-align:left;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;border-radius:12px;padding:10px;cursor:pointer;transition:transform .08s ease,background .15s ease,border-color .15s ease;color:inherit}.patientRow:hover{transform:translateY(-1px);background:#ffffff12}.patientRow.active{border-color:#78aaff8c;background:linear-gradient(180deg,#6496ff33,#ffffff0d)}.patientName{font-weight:800;font-size:14px;margin-bottom:4px}.patientMeta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:4px}.pill{font-size:12px;font-weight:800;padding:5px 8px;border-radius:999px;background:#ffffff17;border:1px solid rgba(255,255,255,.1)}.pill.subtle{opacity:.9}.patientDx{font-size:12px;color:#e9eefcd1;opacity:.95}.sideHint{margin-top:6px;padding:10px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d}.hintTitle{font-weight:800;font-size:13px;margin-bottom:6px}.hintText{font-size:12px;color:#e9eefccc;line-height:1.35}.sideControls{margin-top:2px;padding:10px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;display:flex;flex-direction:column;gap:10px}.control{display:grid;grid-template-columns:1fr 1fr 56px;gap:10px;align-items:center}.control label{font-size:12px;font-weight:800;color:#e9eefce6}.control input[type=range]{width:100%}.control span{font-size:12px;font-weight:800;text-align:right;opacity:.9}.statusPill{margin-top:auto;align-self:flex-start;font-size:12px;font-weight:900;padding:8px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:#ffffff0f}.main{display:flex;flex-direction:column;min-width:0}.top{display:flex;justify-content:space-between;gap:18px;padding:18px 18px 10px}.titleBlock{min-width:320px;max-width:520px}.title{font-size:44px;font-weight:900;letter-spacing:-.5px}.subtitle{margin-top:6px;font-size:13px;color:#e9eefccc;line-height:1.35}.topStats{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px;align-items:start;width:100%}.topStat{border:1px solid rgba(255,255,255,.1);background:#ffffff0a;border-radius:14px;padding:12px}.topStat .k{font-size:12px;font-weight:800;color:#e9eefcbd;margin-bottom:6px}.topStat .v{font-size:16px;font-weight:900}.badge{display:inline-flex;padding:6px 10px;border-radius:999px;border:1px solid rgba(220,120,140,.35);background:#dc465a1f}.content{display:grid;grid-template-columns:minmax(560px,680px) 1fr;gap:16px;padding:0 18px 18px;height:100%;min-height:0}.panel{border-radius:18px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,#ffffff0d,#ffffff08);padding:14px;display:flex;flex-direction:column;min-height:0}.panelHeader{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:4px 4px 12px;border-bottom:1px solid rgba(255,255,255,.08)}.panelTitle{font-weight:900;font-size:16px}.panelSub{font-size:12px;color:#e9eefcb3;text-align:right}.grid{margin-top:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;overflow:auto;padding-right:6px}.card{border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#0a0e1c99;padding:12px}.cardTitle{font-size:12px;font-weight:800;color:#e9eefcc2;margin-bottom:8px}.cardValue{font-size:20px;font-weight:900;letter-spacing:-.2px}.cardSub{margin-top:8px;font-size:12px;color:#e9eefcb8;line-height:1.3}.sparksRow{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08);margin-top:12px}.spark{border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#0a0e1c8c;padding:10px 10px 6px}.sparkLabel{font-size:12px;font-weight:900;margin-bottom:6px;opacity:.92}.sparkLine{stroke:#82beffeb;stroke-width:2;vector-effect:non-scaling-stroke}.viewerWrap{border-radius:18px;border:1px solid rgba(255,255,255,.1);background:radial-gradient(900px 600px at 50% 30%,rgba(100,150,255,.14),transparent 60%),linear-gradient(180deg,#ffffff08,#ffffff05);min-height:0;overflow:hidden}.viewerHost{position:relative;width:100%;height:100%}.viewerCanvas{position:absolute;inset:0}.viewerOverlay{position:absolute;top:12px;right:12px;display:flex;gap:10px;align-items:center}.btn{cursor:pointer;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;color:#e9eefc;padding:9px 12px;border-radius:999px;font-weight:900;font-size:12px}.btn:hover{background:#ffffff17}.chip{font-size:12px;font-weight:900;padding:8px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:#00000040}.chip.ok{border-color:#78ffb459;background:#28c8781a}.chip.warn{border-color:#ffc87859;background:#ffbe501a}
