.dicom-viewer{--line:var(--hairline-soft);--panel-head:var(--surface-soft);--mono:"Cascadia Mono", "Consolas", "SF Mono", "Menlo", monospace;--c-tag:#1b6ec2;--c-private:#b35c00;--warn-ink:#8a4b00;--warn-bg:#fff3d6;--warn-line:#f0c36d;--image-bg:#000;--overlay-ink:#e8e9e3;height:calc(100dvh - var(--top-bar-height));background:var(--canvas);color:var(--ink);flex-direction:column;margin-inline:-24px;display:flex;overflow:hidden}.dicom-viewer .app-head{background:var(--canvas);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;display:flex}.dicom-viewer .app-title.ant-typography{margin:0}.dicom-viewer .file-count{font-size:13px}.dicom-viewer .diagnostic-tag.ant-tag{color:var(--warn-ink);background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:9999px;margin:0;padding:2px 10px;font-size:13px;font-weight:700;line-height:1.4}.dicom-viewer .dicom-toolbar{background:var(--surface-card);border-bottom:1px solid var(--line);padding:6px 14px}.dicom-viewer .dicom-toolbar .ant-divider-vertical{border-color:var(--hairline);margin-inline:2px}.dicom-viewer .fps-select.ant-select{width:84px}.dicom-viewer .open-progress{background:var(--surface-doc);border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:4px 14px;display:flex}.dicom-viewer .open-progress .ant-progress{flex:1;margin:0}.dicom-viewer .dicom-main{flex:1;min-height:0;padding:10px;display:flex}.dicom-viewer .main-splitter.ant-splitter,.dicom-viewer .side-splitter.ant-splitter{flex:1;gap:0;min-height:0}.dicom-viewer .main-splitter>.ant-splitter-panel,.dicom-viewer .side-splitter>.ant-splitter-panel{min-width:0;min-height:0;display:flex;overflow:hidden}.dicom-viewer .main-splitter>.ant-splitter-panel>.panel,.dicom-viewer .side-splitter>.ant-splitter-panel>.panel,.dicom-viewer .main-splitter>.ant-splitter-panel>.side-splitter{flex:1;min-width:0}.dicom-viewer .ant-splitter-bar-dragger:before{background:#00000014}.dicom-viewer .ant-splitter-bar-dragger:after{background:#0000004d}.dicom-viewer .panel{background:var(--surface-card);border:1px solid var(--line);border-radius:6px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.dicom-viewer .panel-head{background:var(--panel-head);border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;min-height:38px;padding:5px 10px;display:flex}.dicom-viewer .panel-title{align-items:baseline;gap:8px;display:inline-flex}.dicom-viewer .tree-wrap{flex:1;min-height:0;padding:4px 0;overflow:hidden}.dicom-viewer .study-tree .ant-tree-treenode{width:100%}.dicom-viewer .study-tree .ant-tree-node-content-wrapper{align-items:center;gap:4px;min-width:0;display:flex}.dicom-viewer .study-tree .ant-tree-iconEle{flex:none}.dicom-viewer .study-tree .ant-tree-title{flex:1;min-width:0}.dicom-viewer .tree-line{white-space:nowrap;align-items:baseline;gap:8px;min-width:0;display:flex}.dicom-viewer .tree-main{text-overflow:ellipsis;min-width:0;color:var(--ink);align-items:baseline;gap:6px;font-weight:500;display:inline-flex;overflow:hidden}.dicom-viewer .tree-instance .tree-main{font-weight:400}.dicom-viewer .tree-meta{text-overflow:ellipsis;min-width:0;color:var(--mute);flex:1;font-size:12.5px;overflow:hidden}.dicom-viewer .modality-badge{font-family:var(--mono);color:#0f766e;background:#dff3f0;border-radius:3px;padding:0 5px;font-size:11px;font-weight:700}.dicom-viewer .series-number{color:var(--mute);font-family:var(--mono);font-size:12px}.dicom-viewer .tag-search{flex:1;min-width:180px;max-width:420px}.dicom-viewer .tag-note{color:var(--body);background:var(--surface-doc);border-bottom:1px solid var(--line);padding:4px 10px;font-size:12.5px}.dicom-viewer .tag-table-wrap{flex:1;min-height:0;overflow:hidden}.dicom-viewer .tag-empty{padding:14px}.dicom-viewer .tag-table .ant-table-thead>tr>th{background:var(--surface-doc);padding-block:4px;font-size:12.5px}.dicom-viewer .tag-table .ant-table-tbody .ant-table-cell:first-child{white-space:nowrap}.dicom-viewer .tag-table .ant-table-tbody .ant-table-cell{vertical-align:top;padding-block:2px;font-size:13px}.dicom-viewer .tag-code{font-family:var(--mono);color:var(--c-tag);white-space:nowrap;font-size:12.5px}.dicom-viewer .tag-private{color:var(--c-private)}.dicom-viewer .tag-item{color:var(--mute);white-space:nowrap;font-style:italic}.dicom-viewer .tag-name{color:var(--ink)}.dicom-viewer .tag-flag{color:var(--mute);background:var(--surface-soft);border-radius:3px;margin-inline-start:6px;padding:0 4px;font-size:10.5px}.dicom-viewer .tag-vr{font-family:var(--mono);color:#7c44a6;font-size:12px}.dicom-viewer .tag-muted{color:var(--mute);font-size:12.5px}.dicom-viewer .tag-value{flex-direction:column;min-width:0;padding-inline-end:18px;display:flex;position:relative}.dicom-viewer .tag-value-text{text-overflow:ellipsis;white-space:nowrap;font-family:var(--mono);color:var(--ink);font-size:12.5px;overflow:hidden}.dicom-viewer .tag-meaning{text-overflow:ellipsis;white-space:nowrap;color:#2c7a55;font-size:12px;overflow:hidden}.dicom-viewer .tag-copy{color:var(--mute);cursor:pointer;opacity:0;position:absolute;top:3px;right:0}.dicom-viewer .ant-table-row:hover .tag-copy,.dicom-viewer .tag-copy:focus-visible{opacity:1}.dicom-viewer .tag-row-meta>td{background:#f7f8f3}.dicom-viewer .tag-row-item>td{background:#fafaf7}.dicom-viewer .tag-row-selected>td{background:#fff4d9!important}.dicom-viewer .tag-table .ant-table-row{cursor:pointer}.dicom-viewer .tag-detail{background:var(--surface-doc);border-top:1px solid var(--line);flex:none;max-height:34%;padding:6px 10px 8px;font-size:13px;overflow:auto}.dicom-viewer .tag-detail-head{color:var(--ink);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dicom-viewer .tag-detail-actions{margin-inline-start:auto}.dicom-viewer .tag-detail-value{font-family:var(--mono);color:var(--ink);white-space:pre-wrap;word-break:break-all;margin-top:2px;font-size:12.5px}.dicom-viewer .tag-detail .tag-meaning{white-space:normal}.dicom-viewer .image-panel{background:var(--image-bg);border-color:#2b2d25;outline:none}.dicom-viewer .image-panel:focus-visible{box-shadow:0 0 0 2px var(--accent-blue)}.dicom-viewer .diagnostic-banner{letter-spacing:.02em;color:var(--warn-ink);background:var(--warn-bg);border-bottom:1px solid var(--warn-line);justify-content:center;align-items:center;gap:6px;padding:3px 10px;font-size:12.5px;font-weight:700;display:flex}.dicom-viewer .image-stage{flex:1;min-height:0;position:relative}.dicom-viewer .dicom-canvas{background:var(--image-bg);position:absolute;inset:0}.dicom-viewer .dicom-canvas-loading{color:#9b9c92;justify-content:center;align-items:center;font-size:14px;display:flex}.dicom-viewer .overlay{z-index:2;max-width:48%;color:var(--overlay-ink);text-shadow:0 1px 2px #000,0 0 3px #000;pointer-events:none;white-space:nowrap;text-overflow:ellipsis;padding:6px 10px;font-size:12.5px;line-height:1.45;position:absolute;overflow:hidden}.dicom-viewer .overlay>div{text-overflow:ellipsis;overflow:hidden}.dicom-viewer .overlay-strong{color:#fff;font-weight:600}.dicom-viewer .overlay-top-left{top:0;left:0}.dicom-viewer .overlay-top-right{text-align:right;top:0;right:0}.dicom-viewer .overlay-bottom-left{bottom:0;left:0}.dicom-viewer .overlay-bottom-right{text-align:right;bottom:0;right:0}.dicom-viewer .image-error{z-index:3;background:var(--surface-card);border:1px solid #e6a19c;border-radius:6px;flex-direction:column;gap:4px;max-width:70%;padding:12px 16px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dicom-viewer .stack-bar{background:#16170f;border-top:1px solid #2b2d25;align-items:center;gap:8px;padding:2px 10px;display:flex}.dicom-viewer .stack-bar .ant-btn{color:#e8e9e3;font-size:18px;line-height:1}.dicom-viewer .stack-bar .ant-btn:disabled{background:0 0!important;border-color:#0000!important}.dicom-viewer .stack-slider.ant-slider{flex:1;margin-block:10px}.dicom-viewer .stack-count.ant-typography{min-width:64px;font-family:var(--mono);color:#c9cabf;text-align:right;font-size:12px}.dicom-viewer .dicom-empty{background:var(--surface-card);border:2px dashed var(--hairline);border-radius:10px;flex:1;justify-content:center;align-items:center;padding:24px;display:flex;overflow:auto}.dicom-viewer .dicom-empty-drag{border-color:var(--primary);background:#fffaf0}.dicom-viewer .dicom-empty-box{flex-direction:column;gap:12px;max-width:640px;display:flex}.dicom-viewer .dicom-empty-title.ant-typography{margin:0;font-size:22px}.dicom-viewer .dicom-empty-box .ant-typography{margin:0}.dicom-viewer .dicom-empty-formats{font-size:13px}.dicom-viewer .dicom-disclaimer{color:var(--warn-ink);background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:6px;padding:10px 14px;font-size:14px}.deid-dialog{--mono:"Cascadia Mono", "Consolas", "SF Mono", "Menlo", monospace}.deid-dialog .deid-body{flex-direction:column;gap:12px;display:flex}.deid-dialog .deid-intro.ant-typography{margin:0}.deid-dialog .deid-options{background:var(--surface-doc);border:1px solid var(--hairline-soft);border-radius:6px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.deid-dialog .deid-field{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.deid-dialog .deid-field>.ant-typography:first-child{min-width:56px}.deid-dialog .deid-field .ant-space-compact .ant-input{width:220px}.deid-dialog .deid-alert{margin:0}.deid-dialog .deid-preview-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.deid-dialog .deid-table .ant-table-cell{font-size:13px}.deid-dialog .deid-attr{align-items:baseline;gap:6px;display:inline-flex}.deid-dialog .deid-before{color:#9b2c24}.deid-dialog .tag-code{font-family:var(--mono);color:#1b6ec2;white-space:nowrap;font-size:12px}.deid-dialog .tag-muted{color:var(--mute);font-style:italic}.deid-failed{margin:0;padding-inline-start:18px;font-size:13px}
