.managementBar{min-height:42px;padding:5px 10px;display:flex;align-items:center;justify-content:space-between;gap:6px;border-bottom:1px solid #bed1ee;background:#eaf2ff}.managementSelected,.managementCommands{display:inline-flex;align-items:center;gap:5px}.managementSelected{color:#1f4b9b;white-space:nowrap;font-size:12px}.managementSelected button{border:0;background:transparent;color:#516c96;padding:4px;display:grid;place-items:center}.managementCommands button{min-height:30px;padding:4px 8px;border:1px solid #aec4e9;border-radius:5px;background:#fff;color:#2152ad;display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:750;white-space:nowrap}.managementCommands button:disabled{opacity:.43;cursor:not-allowed}.managementCommands .danger{color:#aa3030;border-color:#e6bcbc}.managementRetention{display:inline-flex;align-items:center;gap:6px;color:#69778c;font-size:11px}.managementRetention select{height:25px;width:105px;border:1px solid #d8e0eb;border-radius:4px;background:#fff;color:#223047;padding:0 4px;font-size:11px}.managementBackdrop{position:fixed;inset:0;z-index:30;padding:16px;background:#10203980;display:grid;place-items:center}.managementDialog{width:min(460px,100%);max-height:calc(100vh - 32px);overflow-y:auto;padding:20px;border-radius:8px;background:#fff;box-shadow:0 24px 70px #0c1a2c45}.managementDialogTop{display:flex;justify-content:space-between}.managementDialogTop>button{display:grid;place-items:center;padding:4px;color:#6b7890;border:0;background:transparent}.managementIcon{width:36px;height:36px;border-radius:6px;background:#e7f0ff;color:#2861bf;display:grid;place-items:center}.managementIcon.danger{background:#feeaea;color:#ba3131}.managementDialog h2{font-size:17px;margin:13px 0 7px}.managementDialog p{margin:0 0 15px;color:#5d6c81;line-height:1.5;font-size:12px}.managementImpact{border:1px solid #e2e8f0;border-radius:6px;margin-bottom:13px}.managementImpact>div{display:flex;justify-content:space-between;padding:9px 11px;border-bottom:1px solid #edf1f6;font-size:12px}.managementImpact>div:last-child{border-bottom:0}.managementImpact span{color:#68788c}.managementWarning{display:flex;align-items:start;gap:7px;padding:9px;border-radius:5px;color:#895719;background:#fff8eb;font-size:11px;margin-top:10px}.managementWarning svg{flex:0 0 auto}.managementAck{margin-top:10px;display:flex;gap:8px;align-items:start;padding:9px;border:1px solid #e9c4bc;background:#fff7f5;border-radius:5px;color:#99432f;font-size:11px}.managementAck input{accent-color:#ba3131;flex:0 0 auto}.managementField{display:grid;gap:6px;color:#52647a;font-size:11px;font-weight:700;margin-bottom:12px}.managementField input,.managementField select{height:36px;border-radius:5px;border:1px solid #cbd7e5;background:#fff;padding:0 8px}.managementFooter{display:flex;gap:8px;justify-content:end;margin-top:20px}.managementFooter button{border-radius:5px;min-height:35px;padding:0 12px;border:1px solid #cbd7e5;background:#fff;font-weight:750;font-size:12px}.managementFooter button.primary{color:#fff;border-color:#2463eb;background:#2463eb}.managementFooter button.danger{color:#fff;border-color:#ba3131;background:#ba3131}.managementFooter button:disabled{opacity:.48}.deletionLabel{flex:0 0 auto;color:#56677e;font-size:10px;font-weight:750}.deletionLabel.retry{color:#895719}.deletionLabel.failed{color:#b83131}.deletionNotice{margin:10px 14px 0;padding:9px;border:1px solid #e9c4bc;background:#fff8f5;border-radius:5px;color:#8f3d31;display:grid;gap:5px;font-size:12px}.deletionNotice small{overflow-wrap:anywhere}.deletionNotice button{justify-self:start;border:1px solid #dfaaa2;background:#fff;border-radius:4px;color:#8f3d31;display:inline-flex;align-items:center;gap:4px;padding:5px 8px}:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;background:#eef2f7;color:#182235}*{box-sizing:border-box}body{margin:0;font-size:14px;line-height:1.35}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.shell{height:100vh;min-height:100vh;display:grid;grid-template-columns:220px minmax(0,1fr);overflow:hidden}.sidebar{background:#162033;color:#f8fafc;padding:22px 16px;display:flex;flex-direction:column;gap:18px}.brand{font-size:20px;font-weight:760}.subtitle{color:#b5c0d1;margin-top:4px;font-size:13px}nav{display:grid;gap:8px}nav button,.actions button,.miniActions button,.iconButton,.primaryButton,.secondaryButton,.notice{border:0;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;padding:8px 10px}nav button{background:transparent;color:#d3dceb;justify-content:flex-start}nav .navActive{background:#243149;color:#fff}.sidebarStats{margin-top:auto;display:grid;gap:10px}.sidebarStats div{border:1px solid #33445f;border-radius:8px;padding:10px;display:flex;justify-content:space-between;align-items:center}.sidebarStats span{color:#b5c0d1;font-size:12px}.sidebarStats strong{font-size:20px}.content{min-width:0;padding:16px;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:12px;overflow:hidden}.content:has(>.notice){grid-template-rows:auto auto auto minmax(0,1fr)}.topbar{display:grid;grid-template-columns:repeat(6,minmax(112px,1fr)) repeat(2,104px);grid-template-rows:16px 38px;column-gap:10px;row-gap:5px;align-items:end}.search{grid-column:1 / 8;grid-row:2;background:#fff;border:1px solid #d6deea;border-radius:7px;padding:0 12px;display:flex;align-items:center;gap:8px}.search input,.filters input,.filters select{border:1px solid #d6deea;border-radius:6px;min-height:38px;width:100%;padding:0 10px;background:#fff;color:#182235}.dateInput{position:relative;display:block}.dateInput.empty input{color:transparent}.dateInput.empty input::-webkit-calendar-picker-indicator{opacity:1}.dateInput>span{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#69778c;font-weight:600;pointer-events:none}.search input{border:0;outline:0}.iconButton,.primaryButton,.secondaryButton,.actions button{background:#2463eb;color:#fff}.refreshButton{grid-column:8;grid-row:2;width:100%;min-height:38px;font-size:14px}.refreshButton svg{flex:0 0 auto}.refreshButton.refreshing svg{animation:spin .8s linear infinite}.refreshStatus{grid-column:7 / 9;grid-row:1;align-self:center;min-width:0;color:#69778c;font-size:11px;font-weight:720;text-align:right;white-space:nowrap}.refreshStatusError{color:#991b1b}.primaryButton,.secondaryButton{align-self:end;font-weight:720}.filters{display:grid;grid-template-columns:repeat(7,minmax(112px,1fr)) repeat(2,104px);gap:10px;align-items:end}.filters label{display:grid;gap:5px;color:#536174;font-size:12px;font-weight:720}.notice{justify-content:flex-start;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}.workspace{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 352px;gap:12px}.tablePane,.details{background:#fff;border:1px solid #d7dfeb;border-radius:8px;min-height:0;overflow:hidden}.tablePane{display:grid;grid-template-rows:auto minmax(0,1fr)}.resultBar{height:34px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e7ecf3;color:#69778c;font-size:12px;font-weight:720}.paneTitle{height:46px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e7ecf3;font-weight:720}.table{--clip-table-column-gap: 5px;--clip-table-row-padding-x: 10px;--clip-columns: minmax(0, 2.9fr) repeat(6, minmax(0, 1fr));display:grid;grid-auto-rows:min-content;align-content:start;overflow-x:hidden;overflow-y:auto;min-height:0;height:100%}.row{display:grid;grid-template-columns:var(--clip-columns);gap:var(--clip-table-column-gap);align-items:center;width:100%;max-width:none;overflow:hidden;min-width:0;height:50px;padding:0 var(--clip-table-row-padding-x);border-bottom:1px solid #edf1f6;font-size:13px}.header{position:sticky;top:0;z-index:1;background:#f7f9fc;color:#69778c;font-size:12px;font-weight:800}.row>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.dataRow{width:100%;text-align:left;background:#fff;border-left:0;border-right:0;border-top:0;color:#182235}.dataRow:hover,.dataRow.selected{background:#f4f8ff}.dataRow.currentRow{box-shadow:inset 3px 0 #2563eb}.emptyRow,.loadMoreRow{min-width:0;min-height:46px;padding:0 var(--clip-table-row-padding-x);display:flex;align-items:center;justify-content:center;border:0;border-bottom:1px solid #edf1f6;background:#fff;color:#69778c;font-size:13px;font-weight:720}.loadMoreRow{color:#2563eb}.loadMoreRow:hover:not(:disabled){background:#f4f8ff}.dataRow strong{display:block;font-weight:740;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nameCell{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;gap:3px 0;align-items:center}.nameTitle{display:flex;align-items:center;gap:6px;min-width:0}.nameTitle strong{min-width:0}.tablePane.managementActive{grid-template-rows:auto auto minmax(0,1fr)}.row.adminRow{grid-template-columns:22px minmax(0,1fr);gap:5px}.row.header.adminRow{grid-template-columns:22px var(--clip-columns)}.managementCheckbox{display:flex;align-items:center;justify-content:flex-start;overflow:visible!important}.managementCheckbox input{width:15px;height:15px;margin:0;accent-color:#2463eb;cursor:pointer}.managementCheckbox input:disabled{opacity:.35;cursor:not-allowed}.managementRowCells{grid-column:2;width:100%;min-width:0;height:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;display:grid;grid-template-columns:var(--clip-columns);gap:var(--clip-table-column-gap);align-items:center;font:inherit}.managementRowCells>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.managementRowCells>span strong,.managementRowCells>span small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.managementRowCells .nameCell{display:grid}.longTermLabel{flex:0 0 auto;color:#97611a;font-size:10px;font-weight:750}.authFailure{max-width:420px;margin:15vh auto;padding:24px;color:#1c2940}.authFailure h1{font-size:20px}.authFailure button{padding:8px 14px;border:0;border-radius:5px;background:#2563eb;color:#fff}.currentChip{flex:0 0 auto;padding:2px 6px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:10px;font-weight:760;line-height:1.2;text-transform:uppercase}.statusCell{display:grid;gap:4px;align-items:center;justify-items:start;min-width:0}.dataRow small,.jobHead small,.muted{color:#69778c;font-size:12px}.uploadInline{display:inline-flex;width:58px;flex:0 0 58px;align-items:center;justify-content:space-between;gap:4px}.uploadInline small{flex:0 0 23px;font-size:10px;line-height:1;text-align:left}.uploadTrack{width:31px;flex:0 0 31px;height:4px;overflow:hidden;border-radius:999px;background:#d8e2f0}@keyframes spin{to{transform:rotate(360deg)}}.uploadTrack>div{height:100%;border-radius:inherit;background:#2563eb;transition:width .25s ease}.status{display:inline-flex;align-items:center;justify-content:center;width:58px;height:22px;border-radius:999px;font-size:11px;font-weight:760;background:#e7ebf1;color:#374151;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 6px;justify-self:center}.ready,.succeeded,.completed,.uploaded,.skipped_duplicate{background:#dcfce7;color:#166534}.queued,.processing,.running,.scheduling,.uploading,.initializing,.initialized,.uploaded_file,.completing{background:#dbeafe;color:#1d4ed8}.saved,.paused{background:#e0f2fe;color:#075985}.interrupted,.canceling,.locked,.pinned{background:#fef3c7;color:#92400e}.canceled{background:#e5e7eb;color:#334155}.failed,.missing,.checksum_mismatch,.aborted,.expired{background:#fee2e2;color:#991b1b}.statusCell .status{justify-self:start}.details{--detail-action-width: 76px;padding:14px 12px;overflow:auto;min-height:0;font-size:13px}.details.empty{display:grid;place-items:center;color:#69778c}.detailHeader{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}.detailHeader h2{margin:0;font-size:20px;line-height:1.2}.detailHeader p,.objectUri,.fileName{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detailHeader p{margin:6px 0 0;color:#69778c;font-size:12px}.actions{display:flex;flex-wrap:nowrap;justify-content:start;gap:8px;margin:14px 0 12px}.actions button{flex:0 0 var(--detail-action-width);width:var(--detail-action-width);height:40px;min-height:0;padding:0 5px;font-size:11px;font-weight:720;line-height:1.08;text-align:center;white-space:normal}.actions button svg{flex:0 0 auto}.actions .iconOnly svg{width:17px;height:17px}.actions button span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis}.detailSection{border-top:1px solid #e7ecf3;padding-top:14px;margin-top:14px}.detailSection h3{margin:0 0 10px;font-size:14px}.sectionTitle{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.sectionTitle h3{margin:0}.textButton{min-height:28px;padding:0 8px;border:1px solid #d8e0eb;background:#f8fafc;color:#223047;font-size:12px;font-weight:720}dl{display:grid;grid-template-columns:132px minmax(0,1fr);gap:8px 12px;margin:0;font-size:13px}dt{color:#69778c}dd{margin:0;min-width:0;overflow-wrap:anywhere}.stageValue{display:inline-flex;min-width:0;flex-wrap:wrap;align-items:center;gap:6px}.stageBadge{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border:1px solid #dbe3ee;border-radius:999px;font-size:11px;font-weight:720;line-height:1}.stageBadge.rc{border-color:#edd39b;background:#fff5df;color:#8a6018}.stageBadge.release{border-color:#bfe7d0;background:#e8f7ef;color:#227044}.stageBadge.hotfix{border-color:#f2c2a4;background:#fff0e6;color:#a24b18}.tagList{display:flex;flex-wrap:wrap;gap:6px}.tagList span,.kind{background:#f1f5f9;border:1px solid #dbe3ee;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:720}.fileList,.objectList,.jobList,.noteList{display:grid;gap:8px}.fileRow,.objectRow{display:grid;grid-template-columns:minmax(0,1fr) 76px 116px;gap:8px;align-items:center;min-height:32px;font-size:12px}.objectRow{grid-template-columns:82px minmax(0,1fr) 76px}.jobCard,.noteItem{border:1px solid #e0e7f0;border-radius:8px;padding:10px}.jobHead,.noteItem div{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.jobHead strong,.noteItem strong{display:block}.miniActions{display:flex;gap:8px;margin:10px 0}.miniActions button{background:#f1f5f9;color:#223047;border:1px solid #d8e0eb;min-height:30px;font-size:12px}.eventList{display:grid;gap:6px;margin-top:8px}.eventRow{display:grid;grid-template-columns:18px minmax(0,1fr) 136px;gap:6px;align-items:center;color:#536174;font-size:12px}.eventRow time{text-align:right}.noteItem p,.errorText{margin:8px 0 0;color:#445268;font-size:13px;line-height:1.45}.noteItem span{color:#69778c;font-size:12px;white-space:nowrap}.errorText{color:#991b1b}.drawerLayer{position:fixed;inset:0;z-index:40;pointer-events:none}.runtimeDrawer{position:absolute;top:0;right:0;bottom:0;width:min(640px,100vw);display:grid;grid-template-rows:auto auto minmax(0,1fr);background:#fff;border-left:1px solid #d8e0eb;box-shadow:-18px 0 36px #0f172a24;pointer-events:auto}.drawerHeader{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;padding:18px 18px 12px;border-bottom:1px solid #e7ecf3}.drawerHeader h2{margin:0;font-size:19px}.drawerHeader p{margin:5px 0 0;color:#69778c;font-size:12px}.secondaryIcon{width:34px;min-height:34px;padding:0;border:1px solid #d8e0eb;background:#f8fafc;color:#223047}.drawerTabs{display:flex;gap:8px;padding:10px 18px;border-bottom:1px solid #e7ecf3}.drawerTabs button{min-height:30px;padding:0 11px;border:1px solid #d8e0eb;background:#f8fafc;color:#223047;font-size:12px;font-weight:720}.drawerTabs button.active{background:#1f66e5;border-color:#1f66e5;color:#fff}.drawerBody{min-height:0;overflow:auto;padding:14px 18px 24px}.drawerStatus,.drawerError{margin:14px 18px}.drawerError{color:#b42318;font-weight:720}.runtimePanel{padding:12px 0;border-bottom:1px solid #e7ecf3}.runtimePanel:first-child{padding-top:0}.runtimePanel h3{margin:0 0 10px;font-size:14px}.runtimePanel dl{grid-template-columns:148px minmax(0,1fr)}.softwarePanelHeader{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.softwarePanelHeader h3{margin:0}.softwarePanelHeader p{margin:3px 0 0;color:#69778c;font-size:12px}.softwareSearch{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;height:34px;margin-bottom:10px;padding:0 10px;border:1px solid #d8e0eb;border-radius:8px;background:#fff}.softwareSearch input{min-width:0;border:0;outline:none;font:inherit}.softwareTable,.bundleTable{overflow:hidden;border:1px solid #e0e7f0;border-radius:8px}.softwareTableHead,.softwareTableRow,.bundleTableHead,.bundleTableRow{display:grid;grid-template-columns:minmax(128px,.9fr) minmax(0,1.8fr) minmax(86px,.52fr);gap:10px;align-items:center;padding:8px 10px}.softwareTableHead,.bundleTableHead{background:#f8fafc;color:#69778c;font-size:11px;font-weight:720;text-transform:uppercase}.softwareTableRow{min-height:50px;border-top:1px solid #e7ecf3}.bundleTableRow{min-height:44px;border-top:1px solid #e7ecf3}.softwareTableRow strong,.softwareTableRow span,.bundleTableRow strong,.bundleTableRow span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.softwareTableRow strong,.bundleTableRow strong{color:#152033}.bundleDirectoryCell,.softwareVersionCell{display:grid;gap:3px}.softwareVersionCell strong,.softwareVersionCell small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.softwareVersionCell strong{color:#223047;font-size:12px}.softwareVersionCell small{color:#69778c;font-size:11px;line-height:1.25}.bundleDirectoryCell strong,.bundleDirectoryCell small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bundleDirectoryCell strong{color:#223047;font-size:12px}.bundleDirectoryCell small{color:#69778c;font-size:11px;line-height:1.25}.sourceBadge{display:inline-flex;max-width:100%;align-items:center;min-height:22px;padding:0 7px;border-radius:999px;background:transparent;color:#69778c;font-size:11px;font-weight:720}.sourceBadge.important{background:#fff7ed;color:#c2410c}.emptySoftware{margin:0;padding:12px;border-top:1px solid #e7ecf3}.openFilesButton{justify-content:center;width:100%;min-height:34px}.fileToolbar{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;height:38px;padding:0 10px;border:1px solid #d8e0eb;border-radius:8px;background:#fff}.fileToolbar input{border:0;outline:none;min-width:0;font:inherit}.runtimeFileList{display:grid;gap:8px;margin-top:12px}.runtimeFileRow{display:grid;grid-template-columns:minmax(0,1fr) 76px 40px;gap:8px;align-items:center;min-height:46px;padding:7px 8px;border:1px solid #e0e7f0;border-radius:8px}.runtimeFileRow.active{border-color:#1f66e5;background:#f6f9ff}.runtimeFileRow strong,.runtimeFileRow small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.runtimeFileRow small{margin-top:3px;color:#69778c;font-size:11px}.runtimeFileRow button{min-height:30px;padding:0 8px;font-size:12px}.previewStatus{margin:0;padding:12px}.emptyFiles{margin:8px 0;padding:10px;border:1px solid #e0e7f0;border-radius:8px;background:#fff}.filePreviewOverlay{position:absolute;inset:0;z-index:2;display:grid;place-items:center;padding:32px;background:#0f172a47;pointer-events:auto}.filePreviewModal{width:min(1040px,calc(100vw - 64px));height:min(820px,calc(100vh - 64px));display:grid;grid-template-rows:auto auto auto minmax(0,1fr);overflow:hidden;border:1px solid #d8e0eb;border-radius:8px;background:#fff;box-shadow:0 24px 60px #0f172a47}.filePreviewModalHeader{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;padding:16px 18px;border-bottom:1px solid #e7ecf3}.filePreviewModalHeader span{display:block;color:#69778c;font-size:11px;font-weight:720;text-transform:uppercase}.filePreviewModalHeader h3{min-width:0;margin:3px 0 0;overflow:hidden;color:#152033;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.filePreviewModalHeader p{margin:5px 0 0;color:#69778c;font-size:12px}.filePreviewSearch{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;gap:8px;align-items:center;padding:10px 18px;border-bottom:1px solid #e7ecf3;background:#f8fafc}.filePreviewSearch input{min-width:0;height:34px;padding:0 10px;border:1px solid #d8e0eb;border-radius:8px;outline:none;font:inherit}.filePreviewSearch span{min-width:82px;color:#69778c;font-size:12px;text-align:right}.filePreviewSearch button{min-height:30px;padding:0 10px;font-size:12px}.filePreviewModalBody{min-height:0;overflow:auto;background:#0f172a}.filePreviewModalBody pre{min-width:max-content;margin:0;padding:16px;color:#e5e7eb;font-size:12px;line-height:1.55;white-space:pre;word-break:normal}.filePreviewModalBody mark{border-radius:2px;background:#fde68a;color:#111827}.filePreviewModalBody mark.active{background:#f97316;color:#fff}.calibrationLayer{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:#0f172a8c;pointer-events:auto}.calibrationModal{width:min(1640px,100%);height:min(94vh,1080px);min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);background:#fff;border:1px solid #d8e0eb;border-radius:6px;box-shadow:0 24px 64px #0f172a38;overflow:hidden}.calibrationHeader{padding:16px 20px 0;border-bottom:1px solid #e7ecf3}.calibrationHeading,.calibrationToolbar,.calibrationZoomHeader{display:flex;align-items:center;justify-content:space-between;gap:16px}.calibrationHeading h2{margin:0;font-size:20px}.calibrationHeading p{margin:4px 0 0;color:#64748b;font-size:13px}.calibrationViewTabs{display:flex;gap:24px;min-height:46px;align-items:end}.calibrationViewTabs button{height:46px;padding:0 4px;border:0;border-bottom:2px solid transparent;background:transparent;color:#667890;font-size:13px;font-weight:600}.calibrationViewTabs button.active{border-bottom-color:#2b67da;color:#1e5ac8}.calibrationToolbar{min-height:52px;justify-content:flex-start;flex-wrap:wrap}.calibrationTimes{display:flex;align-items:center;gap:6px;margin-right:auto}.calibrationTimes button{min-height:32px;padding:0 12px;border:1px solid #d8e0eb;border-radius:4px;background:#fff;color:#334155;font-weight:650}.calibrationTimes button.active{border-color:#2563eb;background:#eff6ff;color:#1d4ed8}.calibrationStatus{font-size:12px;font-weight:700;color:#475569}.calibrationStatus.status-complete{color:#15803d}.calibrationStatus.status-partial{color:#a16207}.calibrationStatus.status-failed{color:#b42318}.calibrationCount{color:#64748b;font-size:12px}.calibrationBody{min-height:0;overflow:auto;padding:18px 20px 28px}.calibrationBody[hidden],.calibrationFramesBody[hidden]{display:none}.calibrationFramesBody{min-height:0;overflow:hidden}.calibrationFramesMessage{padding:32px;color:#475569}.calibrationFramesMessage p{color:#64748b}.frameGraphRetry{padding:7px 12px;border:1px solid #c9d6e4;border-radius:3px;background:#fff;color:#285a94;font-size:12px;font-weight:600}.calibrationEmpty{padding:32px 0;text-align:center;color:#334155}.calibrationEmpty p{margin:8px auto 0;max-width:540px;color:#64748b;line-height:1.5}.calibrationMissing{margin:0 0 10px;color:#a16207;font-size:13px}.calibrationLegend{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px;color:#334155;font-size:12px}.calibrationLegend span{display:inline-flex;align-items:center;gap:6px}.calibrationLegend i{width:9px;height:9px;border-radius:50%}.calibrationGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.calibrationImage{min-width:0;padding:0;overflow:hidden;text-align:left;border:1px solid #d8e0eb;border-radius:4px;background:#f8fafc;color:#334155}.calibrationImage img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:contain;background:#edf2f7}.calibrationImage span{display:block;padding:8px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650}.calibrationImage:hover{border-color:#2563eb}.calibrationZoom{position:fixed;inset:12px;z-index:60;display:grid;grid-template-rows:auto minmax(0,1fr);background:#fff;border-radius:4px;box-shadow:0 24px 64px #0f172a4d;overflow:hidden}.calibrationZoomHeader{padding:10px 16px;border-bottom:1px solid #e7ecf3}.calibrationZoom img{width:100%;height:100%;object-fit:contain;background:#edf2f7}@media(max-width:1100px){.calibrationGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.calibrationLayer{padding:0}.calibrationModal{width:100%;height:100%;border-radius:0}.calibrationGrid{grid-template-columns:1fr}.calibrationHeading p{overflow-wrap:anywhere}}@media(max-width:1280px){.topbar{grid-template-columns:repeat(4,minmax(130px,1fr))}.search{grid-column:1 / -1}.refreshButton{grid-column:1}.refreshStatus{grid-column:2 / -1}.filters{grid-template-columns:repeat(4,minmax(130px,1fr))}.workspace{grid-template-columns:minmax(0,1fr) 352px}}@media(max-width:1400px){.shell{height:auto;overflow:visible}.content{overflow:auto}.workspace{grid-template-columns:1fr;grid-auto-rows:minmax(0,auto)}.details{overflow:visible}}@media(max-width:820px){.shell{grid-template-columns:1fr}.sidebar{min-height:auto}.filters{grid-template-columns:1fr 1fr}.topbar{grid-template-columns:minmax(0,1fr) 120px}.topbar .search{grid-column:1;grid-row:2}.topbar .refreshButton{grid-column:2;grid-row:2}.topbar .refreshStatus{grid-column:1 / -1;grid-row:1}}@media(max-width:680px){.table{--clip-columns: minmax(0, 2.2fr) repeat(3, minmax(0, 1fr))}.row .createdCell,.row .vehicleModelCell,.row .typeCell,.managementRowCells .createdCell,.managementRowCells .vehicleModelCell,.managementRowCells .typeCell{display:none}.row{font-size:11px;padding:0 6px}.header{font-size:10px}.managementCommands button{padding:4px;font-size:10px}.managementBar{flex-wrap:wrap}}
