*{box-sizing:border-box}:root{color:#1f2937;background:#edf3f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{margin:0}button,input,select{font:inherit}button{border:1px solid #cbd8e6;background:#fff;color:#243244;border-radius:8px;padding:9px 12px;font-weight:750;cursor:pointer}button:hover{border-color:#8fb5e7}button:disabled{cursor:not-allowed;opacity:.5}input,select{min-width:0;border:1px solid #cbd8e6;border-radius:8px;padding:10px 12px;background:#fff;color:#1f2937}.app-shell{min-height:100vh;display:grid;grid-template-columns:320px minmax(0,1fr)}.app-shell.rail-collapsed{grid-template-columns:58px minmax(0,1fr)}.rail{min-height:100vh;border-right:1px solid #d8e2ee;background:#f7fbff;padding:14px;overflow:auto}.rail-head{display:grid;grid-template-columns:32px 36px minmax(0,1fr);gap:10px;align-items:center;margin-bottom:12px}.rail-collapsed .rail-head{display:block}.rail-toggle{width:34px;height:34px;padding:0}.brand-mark{width:36px;height:36px;border-radius:8px;background:linear-gradient(135deg,#3267e3 0,#3267e3 48%,#13866f 50%,#13866f);box-shadow:0 8px 20px #3267e338}.rail h1{margin:0;font-size:23px;line-height:1}.rail p{margin:4px 0 0;color:#6c7a8d}.rail-content{display:grid;gap:12px}.upload-row{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.upload-box{min-height:58px;border:1px dashed #bdd0e5;border-radius:8px;background:#fff;display:grid;place-items:center;text-align:center;cursor:pointer}.upload-box input{display:none}.upload-box span{font-weight:800}.upload-box small{color:#7a899c}.panel-block{border:1px solid #d6e1ed;border-radius:8px;background:#fff;padding:12px;display:grid;gap:10px}.block-title{display:flex;justify-content:space-between;align-items:center;text-transform:uppercase;font-size:13px;color:#2b3748}.block-title span{border-radius:999px;background:#e8eef6;padding:3px 9px}.button-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.workspace-list,.dataset-list{display:grid;gap:8px;max-height:238px;overflow:auto}.workspace-card,.dataset-card{border:1px solid #d9e4ef;border-radius:8px;background:#fff}.workspace-card{display:grid;grid-template-columns:minmax(0,1fr) 52px;gap:6px;padding:6px}.workspace-card.active,.dataset-card.active{border-color:#2f66e8;box-shadow:inset 3px 0 #2f66e8}.workspace-card button:first-child{border:0;padding:4px 6px;text-align:left;display:grid;background:transparent}.workspace-card span,.dataset-card span{color:#738296;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.danger{color:#a23a3a}.dataset-card{display:grid;grid-template-columns:24px minmax(0,1fr) 52px;gap:8px;align-items:center;padding:8px}.dataset-card input{width:18px;height:18px}.dataset-card button{padding:5px 7px}.dataset-card button:nth-child(2){border:0;background:transparent;text-align:left;display:grid}.work-area{min-width:0;padding:14px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px}.topbar{border:1px solid #d8e2ee;border-radius:8px;background:#fff;padding:12px;display:grid;gap:12px}.topbar>div{display:flex;justify-content:space-between;gap:14px;color:#647386}.topbar strong{color:#1f2937}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tabs button.active{background:#2f66e8;color:#fff;border-color:#2f66e8}.empty-state,.content-panel{border:1px solid #d8e2ee;border-radius:8px;background:#fff;padding:16px;min-width:0}.content-panel h2{margin:0 0 12px}.brief-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}.brief-card{display:grid;gap:3px;border:1px solid #e1e8f0;border-radius:8px;padding:10px}.brief-card span{color:#617187}.brief-card small{color:#8794a5}.toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 110px auto auto auto;gap:8px;margin-bottom:10px;align-items:center}.priority-select,.filter-row{display:flex;gap:6px;flex-wrap:wrap}.priority-chip{border:1px solid #d7e2ef;border-radius:8px;padding:8px 10px;display:inline-flex;gap:6px;align-items:center;font-weight:800}.priority-neg{background:#fff0f1}.priority-zero{background:#ecfbf7}.priority-one{background:#fff}.table-shell{width:100%;max-height:calc(100vh - 220px);overflow:auto;border:1px solid #e0e8f1;border-radius:8px}table{width:100%;border-collapse:collapse;font-size:14px}th,td{border-bottom:1px solid #e8eef5;padding:9px 10px;text-align:left;vertical-align:top;white-space:nowrap}th{position:sticky;top:0;z-index:1}th button{border:0;padding:0;background:transparent;display:grid;text-align:left;font-weight:850}th small{font-weight:500;color:#6d7d91}.status-line,.empty-copy{color:#6c7a8d;margin:10px 0 0}.patient-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px}.filter-row{margin-bottom:12px}.filter-row button{background:#eafaf6;color:#145c50}.profile-stack{display:grid;gap:16px}.profile-section{border-top:1px solid #e6eef5;padding-top:12px}.profile-section h3{margin:0 0 10px}.profile-record{border-bottom:1px dashed #d8e2ee;padding-bottom:12px;margin-bottom:12px}.record-label{display:block;color:#6c7a8d;margin-bottom:8px}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:8px 18px}.profile-field{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,1fr);gap:12px;align-items:baseline;border-radius:6px;padding:6px}.profile-field span{color:#65768b}.profile-field button{border:0;border-bottom:1px solid #d7e2ef;border-radius:0;text-align:left;padding:0 0 2px;background:transparent}.profile-field button:disabled{color:#95a4b6;font-style:italic;opacity:1}.crf-placeholder{display:flex;gap:10px;flex-wrap:wrap}.crf-placeholder span,.example{border-radius:999px;background:#f4f7fb;padding:4px 9px;display:inline-flex;margin:2px}.example.blank{color:#8290a3;font-style:italic}.metadata-window{position:fixed;top:34px;right:34px;bottom:34px;left:34px;z-index:20;border:1px solid #b9c8d9;border-radius:8px;background:#fff;box-shadow:0 20px 60px #1826383d;display:grid;grid-template-rows:auto minmax(0,1fr) auto}.metadata-window header,.metadata-window footer{padding:12px;display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,420px) auto;gap:10px;align-items:center;border-bottom:1px solid #e0e8f1}.metadata-window footer{grid-template-columns:minmax(0,1fr) auto auto;border-top:1px solid #e0e8f1;border-bottom:0}.metadata-window header div{display:grid}.metadata-window header span{color:#6c7a8d}.metadata-table{overflow:auto}.metadata-table select{padding:6px 8px}@media(max-width:900px){.app-shell,.app-shell.rail-collapsed{grid-template-columns:1fr}.rail{min-height:auto}.toolbar,.profile-grid{grid-template-columns:1fr}}
