.explanationDialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:110;box-sizing:border-box;width:min(640px,calc(100vw - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:16px;overflow:auto;overflow-wrap:anywhere;color:#202020;background:#efefef;border:1px solid #666;box-shadow:0 8px 28px #0005;font:13px/1.5 var(--font-ui, sans-serif)}.explanationDialog::backdrop{background:#0005}.explanationDialog h2{margin:0 0 12px;font-size:18px}.explanationDialog h3{font-size:15px}.explanationDialog label{display:block;margin-top:12px;font-weight:700}.explanationDialog input{width:100%;min-width:0}.explanationDialog select{margin-left:8px}.explanationDialog footer{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:16px}.explanationDialog button{padding:4px 12px;font:inherit}.explanationDialog [role=alert]{padding:8px;color:#703b00;background:#fff5df}.signalExplanationText{white-space:pre-wrap;background:#fff;padding:12px}.signalExplanationSource{color:#555}.selectedSignalExplanation{padding:8px;border:1px solid #aaa;overflow-wrap:anywhere}.selectedSignalExplanation h3{margin:0;font-size:13px}.selectedSignalExplanation p{margin:4px 0}.tableSignalExplanation{padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer}.tableSignalExplanation:focus-visible{outline:2px solid #075c9e;outline-offset:1px}.drvWaveformLabel .drvWaveformLabelName:is(button){display:block;min-width:0;max-width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.explanationDialog :is(input,select,button):focus-visible,.drvWaveformLabelName:is(button):focus-visible{outline:2px solid #075c9e;outline-offset:1px}.rawStructureInspectionDialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;box-sizing:border-box;width:min(680px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);margin:auto;padding:0;overflow:hidden;color:#202020;background:#efefef;border:1px solid #666;box-shadow:0 8px 28px #0005;font:13px/1.5 var(--font-ui, sans-serif)}.rawStructureInspectionDialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}.rawStructureInspectionDialog::backdrop{background:#0005}.rawStructureInspectionDialog:has(.eventTraceTableScroll,.eventTraceGraph){width:min(1240px,calc(100vw - 24px))}.rawStructureInspectionDialog header,.rawStructureInspectionDialog footer{padding:12px 16px}.rawStructureInspectionDialog header{border-bottom:1px solid #c9c9c9}.rawStructureInspectionDialog h2{margin:0;font-size:18px}.rawStructureInspectionDialog footer{text-align:right;border-top:1px solid #c9c9c9}.rawStructureInspectionDialog button{min-width:72px;padding:4px 12px;font:inherit}.rawStructureInspectionDialog .rawStructureInspectionBody{min-width:0;min-height:0;padding:12px 16px;overflow:auto;overflow-wrap:anywhere}.rawStructureInspectionDialog p{margin:0 0 10px}.rawStructureInspectionDialog label{display:block;margin:12px 0 4px;font-weight:700}.rawStructureInspectionDialog input{display:block;width:100%;min-width:0;font:inherit}.rawStructureInspectionDialog dl{display:grid;grid-template-columns:minmax(120px,2fr) minmax(0,3fr);gap:4px 12px;margin:16px 0}.rawStructureInspectionDialog dt{font-weight:700}.rawStructureInspectionDialog dd{min-width:0;margin:0}.rawStructureInspectionDialog [role=status]{margin-top:12px}.rawStructureInspectionDialog [role=alert]{margin:12px 0;padding:8px 10px;color:#703b00;background:#fff5df;border:1px solid #c9a676}.rawStructureInspectionDialog ul{margin:0;padding-left:20px}.rawStructureInspectionDialog table{width:100%;table-layout:fixed;border-collapse:collapse;background:#fff;font-variant-numeric:tabular-nums}.rawStructureInspectionDialog caption{padding-bottom:6px;text-align:left;font-weight:700}.rawStructureInspectionDialog th,.rawStructureInspectionDialog td{padding:6px 8px;border:1px solid #bbb;white-space:normal;overflow-wrap:anywhere}.rawStructureInspectionDialog th{background:#e4e4e4;text-align:left}.rawStructureInspectionDialog td{text-align:right}.rawStructureInspectionDialog :is(input,button):focus-visible{outline:2px solid #075c9e;outline-offset:2px}.trsRecordPreview{margin-top:18px;padding-top:12px;border-top:1px solid #bbb}.trsRecordPreview>button{margin-bottom:10px}.trsRecordPreviewControls{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:10px 0}.trsRecordPreviewControls [role=status]{margin:0}.trsRecordPreviewScroll{max-width:100%;overflow:auto}.trsRecordPreviewScroll:focus-visible{outline:2px solid #075c9e;outline-offset:-2px}.rawStructureInspectionDialog .trsRecordPreviewTable{min-width:1500px;table-layout:auto}.rawStructureInspectionDialog .trsRecordPreviewTable td{white-space:nowrap}.eventTraceWorkspace{margin-top:18px;border-top:1px solid #bbb;padding-top:12px}.eventTraceControls{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:12px 0}.eventTraceControls label{min-width:130px;margin:0}.eventTraceWorkspace select{max-width:100%;padding:4px;font:inherit}.eventTraceActions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.eventTraceTableScroll{overflow:auto}.eventTraceTableScroll table{min-width:900px}.eventTraceTableScroll tr[aria-selected=true]{background:#fff2b5}.eventTraceLane{margin:0 0 8px;break-inside:avoid}.eventTraceLane figcaption{font-size:12px;overflow-wrap:anywhere}.eventTraceLane figcaption span{color:#555}.eventTraceLane svg{display:block;width:100%;height:67px;background:#fff}.eventTraceAxis{display:flex;justify-content:space-between;padding:0 1.25%;font-size:12px;line-height:18px}.printEventTrace .eventTraceLane svg{height:40px}.printEventTrace .eventTraceAxis{font-size:9px;line-height:12px}.printEventTrace .eventTraceLane{margin-bottom:4px}.printEventTrace .eventTraceLane figcaption{font-size:9px}.eventTraceWorkspace :is(button,input,select,[tabindex]):focus-visible{outline:2px solid #075c9e;outline-offset:2px}@media print{.rawStructureInspectionDialog,.rawStructureInspectionDialog::backdrop{display:none!important}}.localFileListDialog{box-sizing:border-box;width:min(920px,calc(100vw - 24px));max-height:calc(100dvh - 24px);margin:auto;padding:16px;border:1px solid #666;color:#202020;background:#efefef;font:13px/1.5 var(--font-ui, sans-serif)}.localFileListDialog::backdrop{background:#0005}.localFileListDialog h2{margin:0 0 10px;font-size:18px}.localFileListDialog form{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.localFileListDialog label{display:grid;gap:4px}.localFileListDialog :is(input,select,button){font:inherit;padding:4px 8px}.localFileListTable{overflow:auto}.localFileListTable table{width:100%;border-collapse:collapse;background:#fff}.localFileListTable caption{text-align:left}.localFileListTable :is(th,td){padding:6px 8px;border:1px solid #bbb;text-align:left}.localFileListTable td:first-child{overflow-wrap:anywhere;min-width:120px}.localFileListTable td:nth-child(n+3){white-space:nowrap}.localFileListDialog footer{margin-top:12px;text-align:right}.localFileListDialog :focus-visible{outline:2px solid #075c9e;outline-offset:2px}@media print{.localFileListDialog,.localFileListDialog::backdrop{display:none!important}}.uplot,.uplot *,.uplot *:before,.uplot *:after{box-sizing:border-box}.uplot{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";line-height:1.5;width:min-content}.u-title{text-align:center;font-size:18px;font-weight:700}.u-wrap{position:relative;-webkit-user-select:none;user-select:none}.u-over,.u-under{position:absolute}.u-under{overflow:hidden}.uplot canvas{display:block;position:relative;width:100%;height:100%}.u-axis{position:absolute}.u-legend{font-size:14px;margin:auto;text-align:center}.u-inline{display:block}.u-inline *{display:inline-block}.u-inline tr{margin-right:16px}.u-legend th{font-weight:600}.u-legend th>*{vertical-align:middle;display:inline-block}.u-legend .u-marker{width:1em;height:1em;margin-right:4px;background-clip:padding-box!important}.u-inline.u-live th:after{content:":";vertical-align:middle}.u-inline:not(.u-live) .u-value{display:none}.u-series>*{padding:4px}.u-series th{cursor:pointer}.u-legend .u-off>*{opacity:.3}.u-select{background:#00000012;position:absolute;pointer-events:none}.u-cursor-x,.u-cursor-y{position:absolute;left:0;top:0;pointer-events:none;will-change:transform}.u-hz .u-cursor-x,.u-vt .u-cursor-y{height:100%;border-right:1px dashed #607D8B}.u-hz .u-cursor-y,.u-vt .u-cursor-x{width:100%;border-bottom:1px dashed #607D8B}.u-cursor-pt{position:absolute;top:0;left:0;border-radius:50%;border:0 solid;pointer-events:none;will-change:transform;background-clip:padding-box!important}.u-axis.u-off,.u-select.u-off,.u-cursor-x.u-off,.u-cursor-y.u-off,.u-cursor-pt.u-off{display:none}:root{--font-ui: Arial, "Malgun Gothic", "Noto Sans KR", sans-serif;--window-text: #111;--window-surface: #f2f2f2;--toolbar-surface: #dedede;--workspace-surface: #a7a7a7;--plot-surface: #fff;--control-surface: #f5f5f5;--control-active: #c8d8e2;--border-dark: #555;--border-mid: #858585;--border-light: #c9c9c9;--focus-ring: #075c9e;--status-ok: #1f6d46;--status-warning: #92500c;font-family:var(--font-ui);color:var(--window-text);background:var(--workspace-surface)}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button:focus-visible,input:focus-visible,.fileButton:focus-within{outline:3px solid rgba(18,100,163,.24);outline-offset:2px}.shell{max-width:1280px;margin:0 auto;padding:24px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.subtle{margin-top:4px;color:#606a76;font-size:14px}h1,h2,p{margin:0}h1{font-size:28px}h2{margin-bottom:12px;font-size:18px}.fileButton{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border-radius:6px;background:#1264a3;color:#fff;cursor:pointer}.fileButton:hover{background:#0d568f}.fileButton input{display:none}.panel{margin-bottom:20px;padding:16px;border:1px solid #d9dee5;border-radius:6px;background:#fff}.tableWrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:8px 10px;border-bottom:1px solid #e5e9ef;text-align:left;white-space:nowrap}th{background:#f7f9fb;font-weight:700}tbody tr:hover{background:#f8fafc}.signalInspector{margin-bottom:20px;padding:18px 0 24px;border-top:2px solid #354657;border-bottom:1px solid #cfd6de;background:#fff}.inspectorHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:0 16px 16px}.modeControl,.kindControl{display:inline-flex;flex:0 0 auto;overflow:hidden;border:1px solid #aeb8c3;border-radius:5px;background:#fff}.modeControl button,.kindControl button{min-height:34px;padding:0 13px;border:0;border-right:1px solid #cbd2da;background:#fff;color:#39434d;cursor:pointer}.modeControl button:last-child,.kindControl button:last-child{border-right:0}.modeControl button:hover,.kindControl button:hover{background:#eef3f7}.modeControl button.selected,.kindControl button.selected{background:#263f55;color:#fff}.signalToolbar{display:grid;grid-template-columns:minmax(420px,auto) minmax(220px,1fr) auto;align-items:end;gap:12px;padding:14px 16px;border-top:1px solid #dde2e8;border-bottom:1px solid #dde2e8;background:#f7f9fb}.recordControl{display:flex;align-items:flex-end;gap:6px;min-width:0}.recordControl label,.searchControl{display:grid;gap:4px;color:#4c5661;font-size:12px;font-weight:700}.recordControl input,.searchControl input{height:34px;border:1px solid #aeb8c3;border-radius:4px;background:#fff;color:#20242a}.recordControl input{width:92px;padding:0 8px;font-variant-numeric:tabular-nums}.searchControl input{width:100%;min-width:0;padding:0 10px}.recordTotal{align-self:center;min-width:84px;color:#59636e;font-size:13px;font-variant-numeric:tabular-nums}.iconButton{display:inline-flex;flex:0 0 34px;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid #aeb8c3;border-radius:4px;background:#fff;color:#263f55;font-family:Consolas,Courier New,monospace;font-weight:700;cursor:pointer}.iconButton:hover:not(:disabled){border-color:#557892;background:#eaf1f6}.iconButton:disabled{color:#a7afb8;cursor:default}.signalMeta{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:7px 16px;color:#505b66;font-size:13px}.pageControl{display:flex;align-items:center;gap:8px;font-variant-numeric:tabular-nums}.pageControl span{min-width:56px;text-align:center}.signalTableWrap{max-height:64vh;margin:0 16px;border:1px solid #ccd4dc}.signalTable{min-width:1120px;table-layout:auto}.signalTable th{position:sticky;top:0;z-index:1;box-shadow:inset 0 -1px #cfd6de}.signalTable td:nth-child(3){min-width:240px;white-space:normal}.mono{font-family:Consolas,Courier New,monospace;font-variant-numeric:tabular-nums}.signalOn{background:#e7f3ed;color:#12613d;font-weight:700}.statusOk{color:#22734c}.warningText,.errorMessage{color:#9a4e06;font-weight:700}.viewModeDialog{position:fixed;inset:8vh auto auto 50%;z-index:20;width:min(760px,92vw);max-height:84vh;overflow:auto;transform:translate(-50%);padding:16px;border:1px solid #777;background:#f5f5f5;box-shadow:0 12px 32px #00000047}.viewModeDialog>label,.viewModeDialog fieldset label{display:grid;gap:4px;margin:8px 0}.viewModeDialog select,.viewModeDialog input{min-width:220px}.viewModeDialog button{margin:4px 6px 4px 0}.drvSegmentDialog{position:fixed;inset:8vh auto auto 50%;z-index:20;width:min(900px,92vw);max-height:84vh;overflow:auto;transform:translate(-50%);padding:16px;border:1px solid #777;background:#f5f5f5;box-shadow:0 12px 32px #00000047}.drvSegmentDialog button{margin:4px 6px 4px 0}.errorMessage{margin:0 16px 12px;padding:10px 12px;border-left:3px solid #c56a15;background:#fff5e8}.emptyCell{height:88px;color:#68737e;text-align:center}.drvWaveform{display:grid;grid-template-columns:250px minmax(900px,1fr);align-items:start;width:100%;min-width:1150px}.drvWaveform--inverted,.drvWaveform--inverted .drvWaveformCursorTime{filter:invert(1)}.printPortal .drvWaveform--inverted,.printPortal .drvWaveform--inverted .drvWaveformCursorTime{filter:none}@media print{.drvWaveform--inverted,.drvWaveform--inverted .drvWaveformCursorTime{filter:none}}.drvWaveformLabels{min-width:0;padding-bottom:28px}.drvWaveformLabel{display:flex;align-items:center;min-width:0;overflow:hidden}.drvWaveformLabelName{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drvWaveformLabelValue,.drvWaveformLabelScale{flex:0 0 auto}.drvWaveformCanvasFrame{position:relative;min-width:0;overflow:hidden}.drvWaveformCanvas{min-width:0;overflow:hidden}.drvWaveformCanvas>.uplot{max-width:100%}.drvWaveformEmpty{grid-column:1 / -1}.analyzerShell{display:flex;flex-direction:column;min-height:100vh;background:#fff}.analyzerFileInput,.analyzerToolbar[hidden],.statusBar[hidden]{display:none}.menuEntries>label{display:flex;align-items:center;gap:6px;padding:6px 10px}.analyzerHiddenStatusError{position:absolute;bottom:0;left:0;right:0;z-index:10;margin:0;padding:6px 10px;background:var(--workspace-surface);color:var(--status-warning)}.drvRecordTable thead tr[aria-label=단위]{background:#e9edf0}.menuBar{position:relative;z-index:10;display:flex;min-height:26px;padding:0 4px;border-bottom:1px solid #b9bec4;background:#f4f4f4}.menuBar details{position:relative}.menuBar summary{display:block;padding:4px 10px;cursor:pointer;list-style:none}.menuBar summary::-webkit-details-marker{display:none}.menuBar details[open] summary,.menuBar summary:hover{background:#e1e5e8}.menuEntries{position:absolute;z-index:4;display:grid;min-width:142px;padding:3px;border:1px solid #9ca4ad;background:#fff;box-shadow:1px 2px 3px #00000024}.menuEntries button{min-height:26px;padding:3px 8px;border:0;background:#fff;color:inherit;text-align:left;white-space:nowrap;cursor:pointer}.menuEntries button:hover:not(:disabled){background:#e6edf3}.menuEntries button:disabled{color:#8d949b;cursor:default}.menuEntries p{width:220px;padding:5px 8px;font-size:12px;line-height:1.4}.analyzerToolbar{display:flex;align-items:center;gap:6px;min-height:42px;padding:3px 5px;overflow-x:auto;border-bottom:1px solid #b9bec4;background:#eceff1}.analyzerToolButtons,.analyzerToolControls{display:flex;flex:0 0 auto;align-items:center;gap:3px}.analyzerToolControls{margin-left:auto}.analyzerToolButton{display:inline-flex;flex:0 0 34px;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid #aeb5bc;border-radius:2px;background:#f8f8f8;color:#222;cursor:pointer}.analyzerToolButton:hover:not(:disabled){background:#e2e7eb}.analyzerToolButton:disabled{color:#a3a8ad;cursor:default}.analyzerToolControls select{height:28px;max-width:170px;border:1px solid #aeb5bc;border-radius:0;background:#fff;color:#20242a;font-size:12px}.recordInfoStrip{display:flex;flex-wrap:wrap;gap:4px 16px;min-height:28px;padding:5px 8px;border-bottom:1px solid #c7cbd0;background:#fafafa;font-size:12px;font-variant-numeric:tabular-nums}.drvFileHeaderInfo,.drvFileHeaderInfo dl,.drvFileHeaderInfo dl>div{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.drvFileHeaderInfo{flex-basis:100%}.drvFileHeaderInfo dl{margin:0}.drvFileHeaderInfo dl>div{gap:4px}.drvFileHeaderInfo dd{margin:0;font-weight:600}.waveformWorkspace,.faultWorkspace{flex:1 1 auto;min-height:0}.drvGraphWorkspace{display:flex;flex-direction:column;overflow:auto}.drvGraphWorkspace .drvWaveform{flex:1 1 auto;min-height:260px}.faultWorkspace{padding:8px}.statusBar{display:grid;grid-template-columns:auto minmax(160px,1fr) auto auto;align-items:center;gap:8px;min-height:30px;padding:4px 8px;border-top:1px solid #aeb5bc;background:#f1f2f3;font-size:12px;font-variant-numeric:tabular-nums}.statusBar input[type=range]{min-width:0}@media(max-width:900px){.signalToolbar{grid-template-columns:1fr;align-items:stretch}.kindControl{justify-self:start}}@media(max-width:640px){.analyzerToolbar{align-items:flex-start}.analyzerToolControls{margin-left:0}.statusBar{grid-template-columns:1fr;gap:3px}.shell{padding:14px}.toolbar,.inspectorHeader,.signalMeta{align-items:stretch;flex-direction:column}.fileButton{align-self:stretch}.panel{padding:12px}.signalInspector{margin-right:-14px;margin-left:-14px}.recordControl{flex-wrap:wrap}.recordTotal{min-width:64px}.modeControl,.kindControl{align-self:flex-start}.signalTableWrap{max-height:58vh;margin:0;border-right:0;border-left:0}}.printSettingsBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;background:#00000059}.printSettingsDialog{width:min(360px,calc(100vw - 32px));padding:18px;border:1px solid #666;background:#fff;box-shadow:0 12px 32px #00000047}.printSettingsDialog>label,.printSettingsDialog fieldset label{display:grid;gap:4px;margin:8px 0}.printSettingsDialog fieldset label{grid-template-columns:auto 1fr;align-items:center}.printSettingsActions{display:flex;justify-content:flex-end;gap:8px}.printPortal{--workspace-surface: #fff;position:fixed;top:0;left:-20000px;z-index:-1;pointer-events:none;color:#111;background:#fff;print-color-adjust:exact;-webkit-print-color-adjust:exact}.printPortal--a4-portrait{width:190mm}.printPortal--a4-landscape,.printPortal--a3-portrait{width:277mm}.printPortal--a3-landscape{width:400mm}.printPage{display:flow-root;box-sizing:border-box;width:100%;break-inside:avoid}.printPage:not(:last-child){break-after:page}.printPortal[data-print-state=error]{display:none!important}.printPage--a4-portrait{page:tcms-a4-portrait}.printPage--a4-landscape{page:tcms-a4-landscape}.printPage--a3-portrait{page:tcms-a3-portrait}.printPage--a3-landscape{page:tcms-a3-landscape}.printPageHeader{display:flex;align-items:baseline;justify-content:space-between;gap:8mm;margin-bottom:4mm;border-bottom:1px solid #555}.printPageHeader h1{margin:0 0 2mm;font-size:16pt}.printPageHeader p{min-width:0;overflow-wrap:anywhere;margin:0 0 2mm;font-size:9pt}.printRecordRange{margin:0 0 2mm;font-size:8pt}.printDrvGraph{break-inside:avoid}.printPortal .drvWaveform,.printPortal .drvGraphWorkspace .drvWaveform{grid-template-columns:66mm minmax(0,1fr);min-width:0;border:1px solid #777}.printPortal .drvWaveformLabels{position:static;width:auto;min-width:0}.printPortal .drvWaveformCanvas{min-width:0}.printPortal .drvWaveformCanvasFrame{min-width:0;padding-bottom:14px}.printPortal .drvWaveformCursorLine{bottom:42px}.printPortal button,.printPortal .u-legend,.printPortal .drvWaveformCanvas .u-cursor-x,.printPortal .u-cursor-y,.printPortal .u-select{display:none!important}.printPortal :focus{outline:none}.printFltTable,.printDrvTable{width:100%;border-collapse:collapse;table-layout:fixed;font-size:6.5pt}.printFltTable thead,.printDrvTable thead{display:table-header-group}.printDrvTable--wide{font-size:5pt}.printPortal .drvWaveformLabel,.printPortal .drvWaveformLabelValue{font-size:8px;line-height:1;min-height:0}.printPortal .drvWaveformLabelScale{font-size:7px;line-height:7px;padding:0 2px}.printPage--a4-landscape .drvWaveformLabelScale{font-size:5px;line-height:5px}.printFltTable tr,.printDrvTable tr{break-inside:avoid}.printFltTable th,.printFltTable td,.printDrvTable th,.printDrvTable td{padding:.6mm 1mm;border:.2mm solid #777;vertical-align:top;white-space:normal;overflow-wrap:anywhere;line-height:1.2}@page tcms-a4-portrait{size:A4 portrait;margin:10mm}.printDrvTable--wide th,.printDrvTable--wide td{padding:.6mm .2mm}@page tcms-a4-landscape{size:A4 landscape;margin:10mm}@page tcms-a3-portrait{size:A3 portrait;margin:10mm}@page tcms-a3-landscape{size:A3 landscape;margin:10mm}@media print{:root,body{--workspace-surface: #fff;background:#fff;height:auto;overflow:visible}#root{display:none}.printPortal{position:static;width:auto;pointer-events:auto}}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}body{min-width:0;color:var(--window-text);background:var(--workspace-surface);font-family:var(--font-ui);font-size:13px}button,input,select{font:inherit;letter-spacing:0}button:focus-visible,input:focus-visible,select:focus-visible,.menuBar summary:focus-visible{outline:1px solid var(--focus-ring);outline-offset:-2px}.analyzerShell{position:relative;display:grid;grid-template-areas:"menu" "toolbar" "workspace" "status";grid-template-rows:24px var(--analyzer-toolbar-row, 58px) minmax(0,1fr) var(--analyzer-status-row, 22px);width:100%;height:100%;min-width:0;min-height:0;max-width:none;margin:0;padding:0;overflow:hidden;background:var(--workspace-surface)}.onlineAnalysisWorkspace{grid-area:workspace;min-width:0;min-height:0;overflow:auto;background:var(--workspace-surface)}.onlineAnalysisWorkspace>p{margin:4px 8px;font-size:12px}.onlineAnalysisWorkspace .faultWorkspace{grid-template-rows:auto auto minmax(180px,1fr);min-height:100%}.onlineSessionMenu{margin-left:auto}.onlineSessionMenu .menuEntries{left:auto;right:0}.serverFilePicker,.operatorCredentialDialog{color:#202020;background:#efefef;border:1px solid #666;box-shadow:0 8px 28px #0005;padding:16px;max-height:calc(100dvh - 32px);max-width:calc(100vw - 32px);overflow:auto}.serverFilePicker{width:980px}.operatorCredentialDialog{width:440px}.serverFilePicker::backdrop,.operatorCredentialDialog::backdrop{background:#0005}.serverFilePickerHeader{display:flex;align-items:center;justify-content:space-between;gap:16px}.serverFilePickerHeader h1{font-size:18px;margin:0 0 12px}.serverFilePicker .waveformWorkspace{height:auto;color:inherit;text-align:left}.serverFilePicker form{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.serverFilePicker form label{display:flex;flex-direction:column;gap:3px}.serverFilePicker form input{max-width:160px}.serverFilePicker table{width:100%}.serverFilePicker [hidden]{display:none}.analyzerShell--info-open{grid-template-areas:"menu" "toolbar" "info" "workspace" "status";grid-template-rows:24px var(--analyzer-toolbar-row, 58px) auto minmax(0,1fr) var(--analyzer-status-row, 22px)}.analyzerFileInput{display:none}.menuBar{grid-area:menu;display:flex;align-items:stretch;min-height:0;height:24px;padding:0 5px;overflow:visible;border-bottom:1px solid var(--border-mid);background:var(--window-surface);font-size:12px;line-height:1}.menuBar summary{height:23px;padding:6px 8px 4px}.menuEntries{top:23px;min-width:154px;padding:2px;border-color:var(--border-dark);border-radius:0;box-shadow:2px 2px #00000038;font-size:12px}.menuEntries button{min-height:24px;padding:3px 10px}.analyzerToolbar{grid-area:toolbar;display:flex;align-items:center;gap:4px;width:100%;min-width:0;min-height:0;height:58px;padding:2px 4px;overflow-x:auto;overflow-y:hidden;border-bottom:1px solid var(--border-dark);background:var(--toolbar-surface);scrollbar-color:var(--border-mid) var(--toolbar-surface);scrollbar-width:thin}.analyzerToolButtons,.analyzerToolControls{display:flex;flex:0 0 auto;align-items:center;gap:3px;height:52px}.analyzerToolButtons{padding-right:4px;border-right:1px solid var(--border-mid)}.analyzerToolControls{margin-left:0;padding-left:1px}.analyzerSelectControl{display:grid;grid-template-rows:14px 26px;align-content:center;height:52px;color:var(--window-text);font-size:11px;line-height:14px;white-space:nowrap}.analyzerToolButton{display:inline-flex;flex:0 0 52px;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:52px;height:52px;padding:2px 1px 3px;overflow:hidden;border:1px solid #9b9b9b;border-radius:2px;background:var(--control-surface);box-shadow:inset 1px 1px #fff,inset -1px -1px #c4c4c4;color:var(--window-text);cursor:pointer}.analyzerToolButton svg{flex:0 0 auto;width:22px;height:22px;stroke-width:1.8}.analyzerToolLabel{display:block;width:100%;overflow:hidden;font-size:11px;line-height:12px;text-align:center;text-overflow:clip;white-space:nowrap}.analyzerToolButton:hover:not(:disabled){border-color:#626262;background:#e8edf0}.analyzerToolButton:active:not(:disabled),.analyzerToolButton[aria-pressed=true]{background:var(--control-active);box-shadow:inset 1px 1px #7f8c93,inset -1px -1px #eef5f8}.analyzerToolButton:disabled{color:#8a8a8a;background:#e5e5e5;box-shadow:none;cursor:default}.analyzerToolControls select{height:26px;min-width:76px;max-width:170px;padding:1px 22px 1px 5px;border:1px solid var(--border-mid);border-radius:0;background:var(--plot-surface);color:var(--window-text);font-size:12px}.analyzerToolControls select[aria-label="분석 파일 선택"]{width:160px}.analyzerToolControls select[aria-label="표시 시간"]{width:76px}.analyzerToolControls select[aria-label="분석 모드"]{width:78px}.analyzerToolControls select[aria-label="그래프 그룹"]{width:96px}.recordInfoStrip{position:relative;z-index:7;grid-area:info;display:flex;flex-wrap:wrap;gap:4px 18px;min-height:30px;max-height:78px;padding:6px 8px;overflow:auto;border-top:1px solid #fff;border-bottom:1px solid var(--border-dark);background:#d5d5d5;box-shadow:0 2px 2px #00000038;font-size:12px;font-variant-numeric:tabular-nums}.waveformWorkspace,.faultWorkspace{grid-area:workspace;min-width:0;min-height:0}.drvGraphWorkspace{position:relative;display:grid;grid-template-rows:30px minmax(0,1fr);width:100%;height:100%;overflow:auto;border-top:1px solid #fff;background:var(--workspace-surface);scrollbar-color:#7d7d7d #d8d8d8;scrollbar-width:thin}.drvGraphInfoStrip{position:sticky;z-index:6;top:0;left:0;grid-row:1;display:flex;align-items:center;gap:18px;width:100%;min-width:1150px;height:30px;padding:0 8px;border-bottom:1px solid var(--border-dark);background:var(--workspace-surface);color:var(--window-text);font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.drvGraphWorkspace>.subtle,.drvGraphWorkspace>.errorMessage{position:absolute;z-index:8;top:36px;left:258px;margin:0;padding:5px 8px;border:1px solid var(--border-mid);background:#ffffe8;font-size:12px}.drvGraphWorkspace>.drvWaveform,.drvGraphWorkspace>.signalInspector,.drvGraphWorkspace>.drvRecordTableWorkspace,.drvGraphWorkspace>.emptyCell{grid-row:2}.drvRecordTableWorkspace{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.drvRecordTableWorkspace>button{align-self:flex-start;margin:6px 8px}.drvRecordTableWorkspace>.signalInspector{align-self:stretch;flex:1 1 auto;min-width:0;min-height:0;margin:0;padding:0 0 12px;overflow:auto;border:0;background:var(--plot-surface)}.drvRecordTable{display:flex;flex:1 1 auto;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.drvRecordTableNavigation{display:flex;gap:6px;padding:0 8px 6px}.drvRecordTableDigitalControls{display:flex;gap:16px;align-items:center;padding:4px 0}.drvRecordTableDigitalControls label{display:inline-flex;gap:5px;align-items:center}.drvRecordTableScroll{min-width:0;min-height:0;overflow:auto}.drvRecordTable table{width:max-content;min-width:100%;border-collapse:collapse;background:var(--workspace-surface);font-variant-numeric:tabular-nums}.drvRecordTable caption{padding:6px 8px;font-weight:700;text-align:left}.drvRecordTable th,.drvRecordTable td{padding:4px 7px;border:1px solid var(--border-mid);white-space:nowrap}.drvRecordTable th{position:sticky;z-index:2;top:0;background:#d5d5d5}.drvRecordTable td.drvRecordTableDigitalOne{color:red}.drvRecordTable td.drvRecordTableDigitalZero{color:#000}.drvGraphWorkspace .drvWaveform{display:grid;grid-template-columns:250px minmax(900px,1fr);align-items:start;align-self:start;width:100%;min-width:1150px;min-height:0;background:var(--plot-surface)}.drvWaveformLabels{position:sticky;z-index:4;left:0;width:250px;min-width:250px;padding-bottom:28px;border-right:1px solid var(--border-dark);background:var(--workspace-surface);box-shadow:1px 0 #f2f2f2}.drvWaveformLabel{display:grid;grid-template-columns:minmax(0,1fr) 58px 54px;align-items:center;min-width:0;padding:0;overflow:hidden;border-bottom:1px dotted #626262;background:var(--workspace-surface);color:var(--window-text);font-size:12px;line-height:1}.drvWaveformLabelName,.drvWaveformLabelValue,.drvWaveformLabelScale{display:flex;align-items:center;align-self:stretch;min-width:0;padding:0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drvWaveformLabelValue,.drvWaveformLabelScale{justify-content:flex-end;border-left:1px solid #777;font-variant-numeric:tabular-nums;text-align:right}.drvWaveformLabelScale{display:grid;grid-template-rows:repeat(4,minmax(0,1fr));align-items:center;padding:1px 4px;font-size:9px;line-height:9px}.drvWaveformLabelScale>span{position:static;justify-self:end;transform:none}.drvWaveformLabel--digital{height:20px}.drvWaveformLabel--analog,.drvWaveformLabel--enum{height:44px}.drvWaveformLabel--text{height:30px}.drvWaveformCanvasFrame{position:relative;min-width:900px;overflow:hidden;background:var(--plot-surface)}.drvWaveformCanvas{min-width:0;width:100%;overflow:hidden;background:var(--plot-surface)}.drvWaveformCanvas:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.drvWaveformCanvas>.uplot{max-width:100%;background:var(--plot-surface);font-family:var(--font-ui)}.drvWaveformCanvas .u-legend{display:none}.drvWaveformCanvas .u-cursor-x{display:none!important}.drvWaveformCursorLine{position:absolute;z-index:3;top:0;bottom:28px;left:clamp(0px,var(--drv-cursor-left, 0px),calc(100% - 1px));border-left:1px dashed #0066ff;pointer-events:none}.drvWaveformAnnotations{position:absolute;z-index:2;top:0;right:auto;left:0;width:100%;overflow:hidden;pointer-events:none}.drvWaveformGuideLine{position:absolute;right:0;left:0;border-top:1px dotted #c4c4c4}.drvWaveformDisplayRun{position:absolute;min-width:0;overflow:hidden;color:#111;font-size:11px;white-space:nowrap}.drvWaveformDisplayRun--text:before{position:absolute;top:50%;right:0;left:0;border-top:1px solid #111;content:""}.drvWaveformDisplayRun--text:after{position:absolute;top:calc(50% - 4px);right:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:5px solid #111;content:""}.drvWaveformDisplayRunLabel{position:absolute;z-index:1;top:50%;left:2px;max-width:calc(100% - 8px);padding:1px 2px;overflow:hidden;transform:translateY(-50%);background:var(--plot-surface);text-overflow:ellipsis}.drvWaveformDisplayRun--enum .drvWaveformDisplayRunLabel{left:50%;transform:translate(-50%,-50%)}.drvWaveformCursorTime{position:absolute;z-index:4;bottom:1px;left:clamp(32px,var(--drv-cursor-left, 32px),calc(100% - 32px));min-width:56px;padding:1px 3px;transform:translate(-50%);background:var(--plot-surface);color:#111;font:11px/1 var(--font-ui);text-align:center;pointer-events:none}.drvWaveformEmpty{grid-column:1 / -1;padding:24px;background:var(--plot-surface)}.drvGraphWorkspace>.signalInspector{align-self:start;min-width:1120px;margin:0;padding:0 0 12px;border:0;background:var(--plot-surface)}.drvGraphWorkspace .signalToolbar{padding:6px 8px;border-top:0;background:#e7e7e7}.drvGraphWorkspace .signalMeta{min-height:34px;padding:4px 8px;background:#f2f2f2}.drvGraphWorkspace .signalTableWrap{max-height:none;margin:0 8px;border-color:var(--border-mid)}.faultWorkspace{display:grid;grid-template-rows:30px minmax(0,1fr);overflow:hidden;padding:6px;background:#d1d1d1}.faultWorkspace .tableWrap{overflow:auto;border:1px solid var(--border-mid);background:var(--plot-surface)}.faultWorkspaceFiltered{grid-template-rows:auto 30px minmax(0,1fr)}.faultWorkspaceFiltered .faultFilters{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:4px;font-size:12px}.faultWorkspaceFiltered .faultFilters label{display:flex;align-items:center;gap:4px}.faultWorkspaceFiltered .faultFilters input{width:160px}.faultWorkspaceFiltered .faultFilters input[aria-label="FLT 코드 필터"]{width:90px}.faultSummaryBar{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:2px 4px;border:1px solid var(--border-mid);border-bottom:0;background:#eee;font-size:12px;font-variant-numeric:tabular-nums}.faultLevelFilter{display:flex;align-items:center;gap:4px;min-width:0}.faultLevelFilter select{min-width:64px}.faultPageSummary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.faultPageControls{display:flex;align-items:center;gap:5px;flex:0 0 auto}.faultPageButton{width:24px;height:22px}.statusBar{grid-area:status;display:grid;grid-template-columns:minmax(160px,auto) minmax(180px,1fr) minmax(160px,auto) auto;align-items:center;gap:6px;min-width:0;min-height:0;height:22px;padding:1px 6px;overflow:hidden;border-top:1px solid var(--border-mid);background:#efefef;color:var(--window-text);font-size:11px;font-variant-numeric:tabular-nums}.statusBar>span,.statusBar>[role=status]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.statusBar .statusError{color:#9f1d1d;font-weight:600}.statusBar input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;min-width:0;height:14px;margin:0;background:transparent;accent-color:#6f6f6f}.statusBar input[type=range]::-webkit-slider-runnable-track{height:8px;border:1px solid #8b8b8b;background:#d8d8d8}.statusBar input[type=range]::-webkit-slider-thumb{width:14px;height:14px;margin-top:-4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #666;border-radius:0;background:#a5a5a5}.statusBar input[type=range]::-moz-range-track{height:8px;border:1px solid #8b8b8b;background:#d8d8d8}.statusBar input[type=range]::-moz-range-thumb{width:14px;height:14px;border:1px solid #666;border-radius:0;background:#a5a5a5}.statusOk{color:var(--status-ok)}.warningText,.errorMessage{color:var(--status-warning)}@media(max-width:900px){.analyzerShell{grid-template-rows:24px var(--analyzer-toolbar-row, 68px) minmax(0,1fr) var(--analyzer-status-row, 22px)}.analyzerToolbar{height:68px;align-items:flex-start}.analyzerShell--info-open{grid-template-rows:24px var(--analyzer-toolbar-row, 68px) auto minmax(0,1fr) var(--analyzer-status-row, 22px)}.analyzerToolControls{margin-left:0}.drvWaveform,.drvGraphWorkspace .drvWaveform{grid-template-columns:220px minmax(860px,1fr);min-width:1080px}.drvWaveformLabels{width:220px;min-width:220px}.drvWaveformLabel{grid-template-columns:minmax(0,1fr) 56px 50px}.drvWaveformCanvasFrame{min-width:860px}}@media(max-width:640px){.analyzerShell{grid-template-rows:24px var(--analyzer-toolbar-row, 68px) minmax(0,1fr) var(--analyzer-status-row, 44px)}.analyzerShell--info-open{grid-template-rows:24px var(--analyzer-toolbar-row, 68px) auto minmax(0,1fr) var(--analyzer-status-row, 44px)}.analyzerToolbar{align-items:center}.analyzerToolControls{margin-left:0}.statusBar{grid-template-columns:minmax(145px,auto) minmax(120px,1fr);grid-template-rows:20px 20px;gap:0 8px;height:44px;padding:1px 5px}.statusBar>[role=status],.statusBar>[role=alert]{text-align:right}.recordInfoStrip{max-height:110px}}@media print{html,body{height:auto;overflow:visible}#root{display:none}.printPortal{position:static;width:auto;pointer-events:auto}}
