:root{--nav:#31436d;--nav-active:#23365f;--blue:#1677ff;--blue-soft:#eef5ff;--bg:#f3f6fb;--panel:#fff;--line:#e1e7f0;--text:#172033;--sub:#445064;--muted:#7a869a;--green:#22c55e;--orange:#f59e0b;--red:#ef4444;--shadow:0 8px 18px #0f172a0a}*{box-sizing:border-box}body{background:var(--bg);min-width:1360px;color:var(--text);margin:0;font-family:Microsoft YaHei,Segoe UI,Arial,Helvetica,sans-serif}.app-shell{background:var(--bg);grid-template-columns:188px 256px minmax(900px,1fr);height:100vh;min-height:100vh;display:grid;overflow:hidden}.app-shell.compact-context{grid-template-columns:188px 72px minmax(900px,1fr)}.app-shell.no-context{grid-template-columns:188px minmax(900px,1fr)}.app-sidebar{background:var(--nav);color:#dbe6ff;height:100vh;position:sticky;top:0;overflow:hidden}.brand{color:#fff;border-bottom:1px solid #ffffff14;align-items:center;gap:10px;height:58px;padding:0 20px;font-size:18px;font-weight:800;display:flex}.brand-mark{color:#fff;letter-spacing:-1px;background:linear-gradient(135deg,#18a8ff,#28c3e6);border-radius:8px;place-items:center;width:34px;height:30px;font-size:13px;font-weight:900;display:inline-grid;box-shadow:0 8px 18px #1491ff38}.nav-button{color:#dbe6ff;width:100%;height:64px;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-left:4px solid #0000;align-items:center;gap:12px;padding:0 16px 0 14px;text-decoration:none;display:flex}.nav-button:hover{color:#fff;background:#ffffff0a}.nav-button.active{color:#fff;background:var(--nav-active);border-left-color:var(--blue);font-weight:700}.nav-button:focus-visible{outline-offset:-3px;outline:2px solid #75b5ff}.nav-parent.section-active{color:#fff;background:#ffffff09;font-weight:700}.nav-parent.section-active .nav-icon{color:#fff}.nav-label{flex:1}.nav-chevron{color:#afbfdf;flex:none;font-size:11px;transition:transform .16s}.nav-chevron.open{transform:rotate(180deg)}.nav-submenu{background:#0c1c3e1f;padding:2px 0 8px}.nav-sub-button{gap:8px;height:52px;padding-left:32px;font-size:15px}.nav-sub-button .nav-icon{width:30px;height:32px}.nav-icon{color:#c9d7f6;border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.nav-button.active .nav-icon{color:#fff;background:#1677ff2e}.nav-icon .anticon{font-size:17px}.app-group-panel{border-right:1px solid var(--line);background:#fff;min-width:0;height:100vh;position:sticky;top:0;overflow:hidden}.app-context-rail{border-right:1px solid var(--line);color:var(--muted);background:#fff;align-content:start;justify-items:center;gap:8px;height:100vh;padding-top:16px;display:grid;position:sticky;top:0;overflow:hidden}.context-icon{width:36px;height:36px;color:var(--blue);background:var(--blue-soft);border-radius:9px;place-items:center;display:grid}.context-label{writing-mode:vertical-rl;letter-spacing:2px;color:var(--sub);font-weight:700}.group-tabs{border-bottom:1px solid var(--line);background:#f8fafd;grid-template-columns:1fr 1fr;height:50px;display:grid}.group-tab{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;place-items:center;display:grid;position:relative}.group-tab.active{color:var(--text);border-bottom-color:var(--blue);background:#fff;font-weight:800}.group-tab em{color:#fff;background:#ff4d4f;border-radius:9px;min-width:18px;height:18px;padding:0 5px;font-size:12px;font-style:normal;line-height:18px;position:absolute;top:8px;right:28px}.group-body{height:calc(100vh - 50px);padding:14px 12px;overflow:auto}.mini-actions{height:24px;color:var(--muted);align-items:center;gap:12px;margin-bottom:10px;font-size:13px;display:flex}.mini-actions span{cursor:pointer;align-items:center;gap:4px;display:inline-flex}.mini-actions .disabled-action{color:#b7c0ce;cursor:not-allowed}.search-pill.ant-input-affix-wrapper,.search-pill{border-radius:18px;width:100%;height:36px;margin-bottom:12px}.group-row{color:#3f4b61;cursor:pointer;border-radius:7px;justify-content:space-between;align-items:center;height:42px;padding:0 10px;display:flex}.group-row+.group-row{margin-top:4px}.group-row small{color:var(--muted)}.group-row-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.group-row-trailing{flex:none;align-items:center;gap:3px;display:inline-flex}.group-row-trailing .ant-btn{color:#667085;opacity:.62;width:24px;height:24px;padding:0}.group-row:hover .group-row-trailing .ant-btn,.group-row.active .group-row-trailing .ant-btn,.group-row-trailing .ant-btn:focus-visible{opacity:1}.group-row.active{color:var(--blue);background:var(--blue-soft);font-weight:800}.group-row.locked{color:#667085;background:#fbfcff}.auth-list{width:100%}.auth-terminal-row{border:1px solid var(--line);background:#fff;border-radius:7px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding:10px;display:grid}.auth-terminal-row>div{gap:4px;min-width:0;display:grid}.auth-terminal-row strong,.auth-terminal-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.auth-terminal-row span{color:var(--muted);font-size:12px}.auth-terminal-row .ant-tag{width:fit-content;margin-inline-end:0}.empty-side-state{color:var(--muted);text-align:center;border:1px dashed var(--line);background:#fbfcff;border-radius:7px;padding:24px 8px}.side-warning{color:#8a5a00;background:#fffbe6;border:1px solid #ffe58f;border-radius:7px;margin-bottom:10px;padding:8px 10px;font-size:12px}.app-main{grid-template-rows:50px 1fr;min-width:0;height:100vh;display:grid;overflow:hidden}.app-main.task-main{grid-template-rows:68px minmax(0,1fr)}.topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:50px;padding:0 16px 0 20px;display:flex}.topbar h4.ant-typography{margin:0;font-size:16px;font-weight:800}.topbar-title{align-items:baseline;gap:14px;min-width:0;display:flex}.topbar.task-topbar{height:68px;padding:0 24px}.task-topbar .topbar-title h4.ant-typography{flex:none;font-size:21px;line-height:1}.task-topbar .topbar-title>.ant-typography{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;overflow:hidden}.top-meta{color:var(--muted);align-items:center;gap:14px;font-size:13px;display:flex}.role-pill{background:var(--blue-soft);height:24px;color:var(--blue);border-radius:13px;align-items:center;padding:0 9px;font-weight:800;display:inline-flex}.content{background:var(--bg);min-width:0;padding:12px 16px 24px;overflow:auto}.task-main .content{background:#fff;padding:18px 24px 28px}.full{width:100%}.login-shell{background:linear-gradient(135deg,#eef5ff 0%,#f8fafc 55%,#eef2f7 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card.ant-card{border-color:var(--line);border-radius:8px;width:min(420px,100%);box-shadow:0 18px 60px #20325829}.login-card .ant-card-body{padding:28px}.login-brand{align-items:center;gap:14px;margin-bottom:24px;display:flex}.login-brand .brand-mark{flex:none}.login-brand .ant-typography{margin:0}.ops-card.ant-card,.summary-card.ant-card{border-color:var(--line);box-shadow:var(--shadow);border-radius:6px}.ops-card .ant-card-head{border-bottom-color:var(--line);min-height:48px;padding:0 14px}.ops-card .ant-card-head-title{font-weight:800}.ops-card .ant-card-body{padding:12px}.fleet-policy-scope{margin-bottom:20px}.fleet-policy-targets{margin-bottom:24px}.fleet-policy-targets summary{cursor:pointer;margin-bottom:12px}.fleet-device-facts{margin-bottom:16px}.fleet-state-legend{border-collapse:collapse;width:100%;font-size:14px;line-height:1.65}.fleet-state-legend caption{text-align:left;color:#18273d;padding:0 0 12px;font-weight:600}.fleet-state-legend th,.fleet-state-legend td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:12px}.fleet-state-legend thead th{background:#f5f7fb}.fleet-state-legend tbody th{width:120px;font-weight:500}.fleet-usage-steps{margin:0;padding-left:22px;line-height:1.9}@media (width>=1024px){.fleet-workbench .ant-typography-secondary{color:#5f6b7a}.fleet-workbench .fleet-overview-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.fleet-workbench .fleet-statistics{align-items:center;gap:32px;display:flex}.fleet-workbench .fleet-statistics>*{min-width:96px}.fleet-workbench .fleet-overview .ant-card-body{padding:10px 16px}.fleet-workbench .fleet-purpose{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;margin-bottom:6px;padding-bottom:4px;display:flex}.fleet-workbench .fleet-statistics .ant-statistic-content{font-size:22px}.fleet-workbench .fleet-section-intro{font-size:13px;display:block}.fleet-workbench .fleet-stat-shortcut{text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.fleet-workbench .fleet-stat-shortcut:hover .ant-statistic-title{color:var(--ant-color-primary,#1677ff)}.fleet-workbench .fleet-stat-shortcut:focus-visible{outline-offset:4px;outline:2px solid #1677ff}.fleet-workbench .fleet-filter-panel{border:1px solid var(--line);background:#fff;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;padding:10px 14px;display:grid}.fleet-workbench .fleet-device-filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fleet-workbench .fleet-device-filters>.ant-input-affix-wrapper,.fleet-workbench .fleet-device-filters>input{flex:1;min-width:180px;max-width:380px}.fleet-workbench .fleet-saved-views{align-self:start}.fleet-workbench .fleet-range-caption{flex-wrap:wrap;grid-column:1/-1;align-items:baseline;gap:12px;padding-top:6px;font-size:13px;display:flex}.fleet-workbench .fleet-action-panel{background:#f7faff;border:1px solid #dce8f7;border-radius:6px;padding:10px 14px}.fleet-workbench .fleet-selection-summary,.fleet-workbench .fleet-bulk-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.fleet-workbench .fleet-selection-summary{border-bottom:1px solid #dce8f7;margin-bottom:8px;padding-bottom:8px}.fleet-workbench .fleet-no-selection .fleet-selection-summary{border:0;margin:0;padding:0}.fleet-workbench .fleet-bulk-actions{margin-bottom:0}.fleet-workbench .fleet-software-filter{justify-content:space-between;align-items:center;gap:16px;display:flex}.fleet-workbench .fleet-software-filter>.ant-input-affix-wrapper{max-width:460px}.fleet-workbench .fleet-zero-count{color:#68778a}.fleet-workbench .ant-table-cell{overflow-wrap:anywhere}.fleet-workbench .ant-table-tbody>tr>td{padding-top:12px;padding-bottom:12px}}.filter-grid{grid-template-columns:minmax(220px,1.05fr) minmax(210px,.95fr) minmax(160px,.7fr) minmax(170px,.72fr) 40px;align-items:end;gap:12px;display:grid}.filter-grid .ant-form-item-label{padding:0 0 6px}.filter-grid .ant-form-item-label>label{color:#536074;font-size:13px}.filter-grid .ant-input,.filter-grid .ant-select-selector{border-radius:17px!important;height:34px!important}.filter-grid .ant-select-selection-item,.filter-grid .ant-select-selection-placeholder{line-height:32px!important}.filter-grid .filter-search-button{border-radius:50%;width:40px;height:40px;padding-inline:0;box-shadow:0 6px 14px #1677ff2e}.filter-search-label{display:none}.action-strip{align-items:center;gap:12px;padding-top:12px;display:flex;overflow-x:auto}.round-action{color:#536074;white-space:nowrap;justify-items:center;gap:4px;min-width:68px;font-size:13px;display:grid}.round-action .ant-btn{width:38px;height:38px;color:var(--blue);background:#fbfdff;border-color:#c8e1ff;border-radius:50%;place-items:center;display:inline-grid}.round-action .ant-btn:hover{color:#fff!important;border-color:var(--blue)!important;background:var(--blue)!important}.round-action .ant-btn[disabled],.round-action .ant-btn[disabled]:hover{color:#aab3c2!important;background:#f8fafc!important;border-color:#e2e8f0!important}.round-action.danger .ant-btn{color:var(--red);border-color:#ffd1d1}.round-action.danger .ant-btn:hover{color:#fff!important;border-color:var(--red)!important;background:var(--red)!important}.round-action.warning .ant-btn{color:#d97706;border-color:#fed7aa}.round-action.warning .ant-btn:hover{color:#fff!important;background:#f59e0b!important;border-color:#f59e0b!important}.table-card .ant-card-body{padding:0!important}.ant-table-wrapper .ant-table{color:#243047}.ant-table-wrapper .ant-table-thead>tr>th{border-bottom-color:var(--line);color:#3e4a60;white-space:nowrap;height:42px;font-weight:800;background:#edf1f6!important;padding-top:8px!important;padding-bottom:8px!important}.ant-table-wrapper .ant-table-tbody>tr>td{border-bottom-color:var(--line);white-space:nowrap;height:48px;padding-top:8px!important;padding-bottom:8px!important}.selected-row td{background:var(--blue-soft)!important}.status-dot{align-items:center;gap:6px;display:inline-flex}.status-dot:before{content:"";background:var(--muted);border-radius:50%;width:9px;height:9px}.status-dot.green:before{background:var(--green)}.status-dot.orange:before{background:var(--orange)}.status-dot.red:before{background:var(--red)}.terminal-status-stack{white-space:normal;width:100%;min-width:0;line-height:1.35}.terminal-status-stack .ant-space-item{min-width:0}.terminal-status-reason.ant-typography{max-width:100%;line-height:1.35;display:block}.terminal-table-ellipsis.ant-typography{max-width:100%;display:block}.apk-version-cell{background:#eff6ff;border:1px solid #bfdbfe;border-radius:7px;gap:1px;min-width:0;padding:5px 8px;line-height:1.2;display:grid}.apk-version-cell strong,.apk-version-cell span{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:108px;display:block;overflow:hidden}.apk-version-cell strong{color:#1456c8;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:14px;font-weight:800}.apk-version-cell span{color:#51627a;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:11px}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.linux-agent-page{width:100%}.linux-agent-heading{border:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.linux-agent-heading .ant-typography{margin:0}.linux-agent-heading .ant-typography-secondary{margin-top:4px;display:block}.linux-agent-summary{padding:8px 12px 0}.linux-agent-summary button[aria-pressed=true]{color:var(--blue);background:#eef5ff;font-weight:600}.linux-agent-table{border:1px solid var(--line);background:#fff;overflow:hidden}.linux-agent-table-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.linux-agent-table-toolbar .ant-input-affix-wrapper{width:300px}.linux-agent-authorization-form{margin-top:16px}.linux-agent-source-field{margin-bottom:4px}.linux-agent-source-help{width:100%;margin-bottom:24px}.linux-agent-page .ant-table-cell .ant-space-vertical{max-width:100%}.linux-agent-page .ant-table-cell .ant-typography{white-space:normal;overflow-wrap:anywhere}.linux-agent-page .ant-typography{max-width:100%}.linux-agent-name{text-align:left;max-width:100%;height:auto;padding:0;font-weight:600}.linux-agent-name>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.linux-agent-detail .ant-descriptions-item-content{overflow-wrap:anywhere}.linux-agent-offline-note{margin-bottom:12px}.linux-ssh-config{background:#fff}.linux-ssh-config .ant-collapse-header{align-items:center!important}.linux-agent-detail .ant-drawer-body{background:#f7f9fc;padding:24px 28px}.linux-agent-detail .ant-drawer-header{padding:20px 28px}.linux-workspace-status,.linux-section-heading,.linux-task-label{justify-content:space-between;align-items:center;gap:12px;display:flex}.linux-workspace-status{flex-wrap:wrap;margin-bottom:16px}.linux-metric-grid{grid-template-columns:1.4fr 1fr 1fr;gap:16px;display:grid}.linux-metric-grid .ant-card-body{flex-direction:column;gap:8px;padding:20px;display:flex}.linux-metric-grid strong{color:#172a48;font-size:23px;line-height:1.4}.linux-muted{color:#69788f;font-size:13px}.linux-section-heading{flex-wrap:wrap;margin:24px 0 12px}.linux-section-heading .ant-typography{margin:0}.linux-action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.linux-action-card{text-align:left;cursor:pointer;font:inherit;color:#263c5b;background:#fff;border:1px solid #dce5f1;border-radius:10px;flex-direction:column;gap:10px;padding:18px;display:flex}.linux-action-card:hover{background:#f0f6ff;border-color:#1677ff}.linux-action-card:focus-visible{outline-offset:2px;outline:3px solid #91caff}.linux-action-card>span:last-child{color:#69788f;font-size:13px;line-height:1.6}.linux-action-card strong{font-size:15px}.linux-action-icon{color:#1677ff;background:#edf4ff;border-radius:8px;place-items:center;width:36px;height:36px;font-size:19px;display:grid}.linux-information,.linux-connection{margin-top:20px}.linux-capability-note{margin-top:12px}.linux-log-navigation{flex-wrap:wrap;gap:10px;margin-bottom:22px;display:flex}.linux-operation-form{background:#fff;border:1px solid #e1e8f1;border-radius:10px;flex-direction:column;align-items:flex-start;gap:16px;width:100%;padding:24px;display:flex}.linux-operation-form .ant-typography{margin:0}.linux-operation-form label{font-weight:600}.linux-task-history .ant-collapse{background:#fff}.linux-task-label{width:100%}.linux-task-label>div{overflow-wrap:anywhere;min-width:0}.linux-task-history .ant-empty{background:#fff;border:1px dashed #dce5f1;border-radius:8px;padding:16px}@media (width<=760px){.linux-agent-detail .ant-drawer-body{padding:16px}.linux-metric-grid{grid-template-columns:1fr;gap:10px}.linux-metric-grid .ant-card-body{padding:14px}.linux-metric-grid strong{font-size:20px}.linux-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.linux-operation-form{padding:16px}.linux-log-navigation .ant-btn{flex:42%}.linux-ssh-config .ant-collapse-header{flex-wrap:wrap}}.linux-agent-page summary{cursor:pointer}@media (width<=900px){.linux-agent-heading,.linux-agent-table-toolbar{flex-direction:column;align-items:flex-start}.linux-agent-table-toolbar .ant-input-affix-wrapper{width:min(300px,100%)}}@media (width<=760px){.linux-agent-page .ant-table-cell .ant-typography{font-size:12px}.linux-agent-page .ant-table-cell .ant-space-vertical{min-width:0;display:flex}.linux-agent-page .ant-table-cell{padding-inline:8px!important}.linux-agent-actions .ant-btn{min-width:44px}.linux-agent-detail .ant-descriptions-view table{table-layout:fixed}}.selection-alert{margin-top:10px}.pc-agent-status{width:100%}.pc-agent-status-select{flex:120px;width:auto;min-width:100px;max-width:220px}.pc-agent-status-health{margin-inline-end:0}.pc-agent-status-popover{max-width:calc(100vw - 24px)}.pc-agent-status-details{grid-template-columns:76px minmax(0,1fr);gap:8px;width:min(420px,100vw - 60px);margin:0;display:grid}.pc-agent-status-details dd{overflow-wrap:anywhere;margin:0}.terminal-mobile-status{color:var(--sub);white-space:normal;font-size:12px;display:block}.summary-card .ant-card-body{padding:12px}.summary-title{justify-content:space-between;margin-bottom:8px;font-weight:800;display:flex}.detail-grid{color:var(--sub);grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 16px;margin-bottom:12px;display:grid}.terminal-detail-card{overflow:hidden;container:terminal-detail/inline-size}.terminal-detail-header{border-bottom:1px solid var(--line);background:#fff;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:22px;min-height:72px;padding:16px 14px 14px;display:grid}.terminal-detail-title{color:#101828;white-space:normal;overflow-wrap:anywhere;min-width:0;font-size:19px;font-weight:900}.terminal-detail-title strong{margin-left:8px;font-size:22px}.terminal-detail-title>span{color:#667085;font-size:14px;font-weight:600}.terminal-identity-cell{gap:2px;min-width:0;line-height:18px;display:grid}.terminal-identity-cell strong,.terminal-identity-cell span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.terminal-identity-cell strong{color:#172b4d}.terminal-identity-cell span{color:#667085;font-size:12px}.terminal-alias-trigger,.terminal-alias-hint{text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;width:fit-content;min-width:0;max-width:100%;padding:0;overflow:hidden}.terminal-alias-trigger{color:#172b4d;cursor:pointer;align-items:center;gap:5px;display:inline-flex}.terminal-identity-heading{align-items:center;gap:4px;min-width:0;display:flex}.terminal-identity-heading>.ant-btn{flex:none}.terminal-alias-trigger:hover,.terminal-alias-trigger:focus-visible{color:#1677ff}.terminal-alias-hint{color:#667085;font-size:12px}.terminal-alias-editor{align-items:center;gap:2px;min-width:0;display:flex}.terminal-alias-editor .ant-input{min-width:0}.detail-status-row{align-items:center;gap:18px;min-height:36px;display:flex}.detail-badge{color:#30405a;background:#fff;border:1px solid #dde6f2;border-radius:6px;align-items:center;gap:10px;height:36px;padding:0 18px;font-size:15px;font-weight:800;display:inline-flex;box-shadow:0 8px 18px #0f172a08}.detail-badge:before{content:"";border-radius:50%;width:7px;height:7px}.detail-badge.success{color:#30405a;background:#fff}.detail-badge.success:before{background:var(--green)}.detail-badge.warning{color:#30405a;background:#fff}.detail-badge.warning:before{background:var(--orange)}.detail-badge.danger{color:#30405a;background:#fff}.detail-badge.danger:before{background:var(--red)}.detail-heartbeat{color:#526176;white-space:nowrap;margin-left:auto;font-size:16px}.detail-heartbeat strong{color:var(--blue);margin-left:8px}.terminal-detail-layout{background:#f8fbff;grid-template-columns:minmax(0,1fr) 456px;gap:16px;padding:14px;display:grid}.terminal-basic-panel,.detail-side-box{border:1px solid var(--line);background:#fff;border-radius:7px}.terminal-basic-panel{padding:16px}.detail-section-title{color:var(--text);margin-bottom:16px;padding-left:18px;font-size:18px;font-weight:900;position:relative}.detail-section-title:before,.detail-side-box h4:before{content:"";background:var(--blue);border-radius:3px;width:5px;height:24px;position:absolute;top:0;left:0}.basic-info-groups{gap:20px;display:grid}.basic-info-group{background:#fff;border:1px solid #dfe7f1;border-radius:7px;grid-template-columns:138px minmax(0,1fr);min-width:0;display:grid;overflow:hidden}.basic-info-group.network-group{box-shadow:inset 3px 0 0 var(--blue);border-color:#bfdbfe}.basic-info-content{min-width:0;display:grid}.basic-group-label{color:var(--blue);text-align:center;background:linear-gradient(#fbfdff 0%,#f4f9ff 100%);border-right:1px solid #edf2f8;place-items:center;gap:8px;padding:18px 8px;font-size:15px;font-weight:900;display:grid}.basic-group-label .anticon{font-size:32px}.detail-side-box h4{color:#22304a;margin:0 0 16px;padding-left:18px;font-size:18px;font-weight:900;position:relative}.detail-side-box dl{grid-template-columns:132px minmax(0,1fr);gap:14px;margin:0;font-size:14px;line-height:20px;display:grid}.detail-side-box dt{color:var(--muted);white-space:nowrap}.detail-side-box dd{color:#243047;overflow-wrap:anywhere;min-width:0;margin:0;font-weight:700}.basic-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:dense;gap:0 24px;min-width:0;padding:0 18px;display:grid}.apk-version-panel{background:linear-gradient(#f8fbff 0%,#eff6ff 100%);border:1px solid #bfdbfe;border-radius:7px;grid-template-columns:auto minmax(84px,auto) minmax(0,1fr);align-items:center;gap:8px 12px;min-width:0;margin:14px 18px 0;padding:12px 14px;display:grid}.apk-version-panel-label{color:#51627a;white-space:nowrap;font-size:13px;font-weight:800}.apk-version-panel strong{color:#1456c8;overflow-wrap:anywhere;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:20px;font-weight:900;line-height:1.15}.apk-version-panel span{color:#22304a;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:15px;font-weight:800}.apk-version-panel em{color:var(--muted);grid-column:2/-1;font-size:12px;font-style:normal}.basic-field{border-bottom:1px solid #edf2f8;grid-template-columns:88px minmax(0,1fr);align-items:start;column-gap:10px;min-width:0;min-height:58px;padding:11px 0;display:grid}.basic-field:nth-last-child(-n+2){border-bottom:0}.basic-field.wide{grid-column:1/-1}.basic-field-label{color:var(--muted);white-space:nowrap;font-size:14px;line-height:20px}.basic-field-value{color:#243047;white-space:normal;overflow-wrap:anywhere;word-break:break-word;min-width:0;font-size:14px;font-weight:700;line-height:20px;overflow:hidden}.detail-meta-editor{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px 16px;min-width:0;padding:12px 18px 16px;display:grid}.detail-meta-editor label{min-width:0;color:var(--muted);gap:6px;font-size:14px;line-height:20px;display:grid}.detail-meta-editor label.wide{grid-column:1/span 2}.detail-meta-editor .ant-input,.detail-meta-editor .ant-input-affix-wrapper{border-radius:6px}.detail-meta-editor .ant-input,.detail-meta-editor textarea.ant-input{color:#243047;font-size:14px;font-weight:600}.detail-meta-editor .ant-btn{justify-self:start;height:36px}.terminal-side-panel{align-content:start;gap:14px;display:grid}.detail-side-box{padding:20px}.connect-command{color:#526176;background:#fbfdff;border:1px solid #e2e8f0;border-radius:6px;grid-template-columns:auto minmax(0,1fr) 34px;align-items:center;gap:12px;width:100%;min-height:54px;margin-top:22px;padding:10px 12px;font-size:14px;line-height:20px;display:grid}.connect-command code{color:#35435c;white-space:nowrap;text-overflow:ellipsis;background:#fff;border:1px solid #dbe4f0;border-radius:5px;min-width:0;padding:8px 12px;font-family:Consolas,Courier New,monospace;overflow:hidden}.public-connect-command{margin-top:10px}.public-adb-modal .ant-alert{width:100%}.public-adb-lease-info{background:#f8fafc;border:1px solid #dbe4f0;border-radius:8px;gap:10px;width:100%;padding:14px 16px;display:grid}.public-adb-lease-info>div{grid-template-columns:90px minmax(0,1fr);align-items:center;gap:12px;display:grid}.public-adb-lease-info>div>span:first-child{color:#64748b}.public-adb-lease-info .ant-typography{overflow-wrap:anywhere;min-width:0}.public-adb-empty{color:#64748b;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;width:100%;padding:14px 16px}.detail-message-box{color:#38445a;white-space:pre-wrap;overflow-wrap:anywhere;background:#fbfdff;border:1px solid #dfe7f1;border-radius:6px;min-height:86px;max-height:110px;margin-bottom:18px;padding:14px;font-size:14px;line-height:1.6;overflow:auto}.feedback-label{color:#667085;margin:-4px 0 8px;font-weight:800}.feedback-list{margin-bottom:18px!important}.feedback-list dd{justify-content:space-between;gap:8px;display:flex}.success-text{color:var(--green);font-weight:900}.detail-actions{width:100%}.detail-actions .ant-btn{min-width:96px;height:40px}.confirm-list{border:1px solid var(--line);background:#fbfcff;border-radius:6px;flex-wrap:wrap;gap:6px;max-height:160px;padding:8px;display:flex;overflow:auto}.confirm-list span{background:var(--blue-soft);color:var(--blue);border-radius:10px;padding:2px 8px;font-size:12px}.empty-state{color:var(--muted);text-align:center;padding:36px 0}.log-box{white-space:pre-wrap;word-break:break-word;background:#fbfbfb;border:1px solid #d9d9d9;border-radius:6px;min-height:72px;padding:12px}.command-box{color:#d1d5db;white-space:pre-wrap;word-break:break-word;background:#111827;border-radius:6px;padding:12px;font-family:Consolas,Courier New,monospace;line-height:1.75;overflow:auto}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.metric-grid .ant-card-body{padding:14px}.metric-grid h2.ant-typography{margin:6px 0 0}.action-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.mini-icon-actions{align-items:center;gap:8px;display:flex}.mini-icon-actions .ant-btn{color:#4b5a73;background:#fff;border-color:#dbe4f0;border-radius:9px;width:32px;min-width:32px;height:32px;padding:0;box-shadow:0 4px 10px #0f172a0a}.mini-icon-actions .ant-btn:hover{color:var(--blue)!important;background:#f8fbff!important;border-color:#bdd7ff!important}.mini-icon-actions .ant-btn.ant-btn-dangerous{color:#ef4444;border-color:#ffd4d4}.upgrade-filter-grid{grid-template-columns:minmax(0,1.35fr) minmax(160px,.9fr) 140px minmax(0,.9fr) 112px;align-items:end;gap:14px;margin-bottom:14px;display:grid}.upgrade-filter-grid--ota{grid-template-columns:minmax(0,1.35fr) minmax(160px,.9fr) minmax(180px,.9fr) 112px}.upgrade-filter-grid--apk{grid-template-columns:minmax(0,1.35fr) minmax(160px,.9fr) 112px}.application-upgrade-scope-bar{background:#f8fafc;border:1px solid #e4eaf2;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-width:0;margin-bottom:14px;padding:12px 14px;display:flex}.application-upgrade-scope-bar>div:first-child{gap:3px;min-width:0;display:grid}.application-upgrade-scope-bar .ant-segmented{flex:none}.upgrade-filter-grid label,.upgrade-terminal-toolbar label,.upgrade-remark{gap:6px;min-width:0;display:grid}.upgrade-filter-grid label>span,.upgrade-terminal-toolbar label>span,.upgrade-remark>span{color:#536074;font-size:13px}.upgrade-main-grid{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.upgrade-terminal-toolbar{grid-template-columns:minmax(0,1.2fr) 160px 180px;gap:12px;margin-bottom:14px;display:grid}.terminal-select-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.terminal-select-value>span{color:#667085}.terminal-select-popup .ant-select-item-option{min-height:58px;padding-block:6px}.terminal-select-popup .ant-select-item-option-content{min-width:0}.terminal-select-option{gap:3px;min-width:0;display:grid}.terminal-select-option-main{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.terminal-select-option-identity{flex:1;align-items:baseline;gap:6px;min-width:0;line-height:17px;display:flex}.terminal-select-option-identity>strong{flex:1;min-width:0}.terminal-select-option-identity>span{color:#667085;text-overflow:ellipsis;white-space:nowrap;flex:none;max-width:45%;font-size:12px;overflow:hidden}.terminal-select-option-main strong{color:#172b4d;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.terminal-select-option-main .ant-tag{flex:none;margin-inline-end:0}.terminal-select-option-meta{color:#667085;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.terminal-select-popup-summary{color:#344158;background:#f8fbff;border-bottom:1px solid #edf2f8;gap:2px;padding:9px 12px;font-size:12px;display:grid}.terminal-select-popup-summary>span{color:#667085}.terminal-select-empty{color:#8a94a6;text-align:center;padding:18px 12px}.terminal-selection-scope{background:#f7fbff;border:1px solid #dbe9fb;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:10px 12px;display:flex}.terminal-selection-scope--table{border-width:0 0 1px;border-radius:0;margin-bottom:0}.terminal-selection-scope-copy{gap:2px;min-width:0;display:grid}.terminal-selection-warning{color:#9b5300;font-weight:500}.terminal-batch-guidance{flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:8px;display:flex}.upgrade-summary-box{border:1px solid var(--line);color:#31415b;background:#fbfdff;border-radius:6px;gap:8px;padding:14px 16px;font-size:14px;line-height:1.6;display:grid}.upgrade-summary-box strong{color:#1f2c43}.upgrade-config-row,.upgrade-check-row,.upgrade-action-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.upgrade-check-row .ant-checkbox-wrapper{min-width:120px}.upgrade-action-row .ant-btn{min-width:110px}.upgrade-plan-panel{background:#fbfdff;border:1px solid #dfe7f1;border-radius:6px;gap:12px;padding:12px 14px;display:grid}.upgrade-plan-stats{color:#526176;align-items:center;gap:26px;font-size:14px;display:flex}.upgrade-plan-stats strong{color:#101828;margin-left:6px;font-size:18px}.upgrade-plan-skip-list{gap:8px;max-height:180px;display:grid;overflow:auto}.upgrade-plan-skip-list>div{background:#fff;border:1px solid #edf2f8;border-radius:6px;justify-content:space-between;gap:12px;padding:8px 10px;display:flex}.upgrade-plan-skip-list>div>span{color:#243047;font-weight:700}.upgrade-confirm-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.upgrade-confirm-box,.upgrade-confirm-section{background:#fbfdff;border:1px solid #e7edf5;border-radius:6px}.upgrade-confirm-box{gap:6px;padding:12px 14px;display:grid}.upgrade-confirm-box strong,.upgrade-confirm-kv strong,.batch-detail-metrics strong,.batch-detail-row strong{color:#1f2c43}.upgrade-confirm-section{padding:12px 14px}.upgrade-confirm-section .ant-typography{margin-bottom:10px}.upgrade-confirm-kv{grid-template-columns:112px minmax(0,1fr) 112px minmax(0,1fr);align-items:start;gap:10px 12px;display:grid}.upgrade-confirm-kv>span{color:#6b7a90}.upgrade-chip-list,.batch-detail-list{flex-wrap:wrap;gap:8px;display:flex}.upgrade-confirm-list-row,.batch-detail-row{justify-content:space-between;gap:12px;width:100%;display:flex}.batch-detail-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.batch-detail-metrics>div,.batch-detail-section{background:#fbfdff;border:1px solid #e7edf5;border-radius:6px}.batch-detail-metrics>div{gap:6px;padding:12px 14px;display:grid}.batch-detail-metrics>div>span{color:#6b7a90;font-size:13px}.batch-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.batch-detail-section{padding:14px}.batch-detail-section h4{color:#1f2c43;margin:0 0 12px;font-size:15px}.batch-detail-section dl{grid-template-columns:88px minmax(0,1fr);gap:10px 12px;margin:0;display:grid}.batch-detail-section dt{color:#6b7a90}.batch-detail-section dd{color:#243047;overflow-wrap:anywhere;margin:0}.batch-detail-stack{gap:10px;display:grid}.batch-detail-row{background:#fff;border:1px solid #edf2f8;border-radius:6px;align-items:flex-start;padding:10px 12px}.batch-detail-row>div{gap:4px;display:grid}.upgrade-delete-lock-detail{gap:10px;display:grid}.upgrade-delete-lock-detail p{margin:0}.upgrade-delete-lock-detail__batch{background:#f8fbff;border:1px solid #edf2f8;border-radius:6px;gap:4px;padding:10px 12px;display:grid}.application-management-toolbar{grid-template-columns:minmax(260px,1.2fr) minmax(220px,.9fr) auto;align-items:end;gap:12px;margin-bottom:14px;display:grid}.application-management-toolbar label{gap:6px;min-width:0;display:grid}.application-management-toolbar label>span{color:#536074;font-size:13px}.application-management-actions{justify-content:flex-end}.application-terminal-summary{background:#e3eaf3;border:1px solid #e3eaf3;border-radius:7px;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin-bottom:14px;display:grid;overflow:hidden}.application-terminal-summary>div{background:#fbfdff;align-content:center;gap:7px;min-width:0;min-height:68px;padding:10px 14px;display:grid}.application-terminal-summary span{color:#6b7a90;font-size:12px}.application-terminal-summary strong{color:#243047;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.application-terminal-summary .ant-tag{width:max-content;max-width:100%;margin-inline-end:0}.application-package-alert{margin-bottom:12px}.application-package-table{margin-bottom:18px}.application-task-header{justify-content:space-between;align-items:baseline;gap:14px;margin:4px 0 10px;display:flex}.application-task-header h5.ant-typography{margin:0}.task-center-page{align-content:start;gap:10px;width:100%;min-height:100%;display:grid}.task-status-tabs{background:0 0;border:0;align-items:center;gap:8px;min-height:44px;padding:0;display:flex}.task-status-filter{color:#59667a;min-width:104px;height:38px;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:600;display:inline-flex}.task-status-filter:hover{color:#1f5fbf}.task-status-filter:focus-visible{outline-offset:-3px;outline:2px solid #75b5ff}.task-status-filter strong{color:#5f6b7e;font-variant-numeric:tabular-nums;background:0 0;border-radius:0;justify-content:center;align-items:center;min-width:18px;height:auto;padding:0;font-size:12px;display:inline-flex}.task-status-filter.is-active{color:#145ec4;background:#fff;border-color:#bcd7ff;box-shadow:0 3px 10px #1677ff1f}.task-status-filter.is-active strong{color:#145ec4;background:0 0}.task-center-toolbar{background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding:0;display:flex}.task-filter-search.ant-input-affix-wrapper{width:min(460px,32vw);height:40px}.task-filter-search .anticon{color:#8792a5}.task-filter-group{flex:1;justify-content:flex-start;align-items:center;gap:20px;display:flex}.task-filter-field{color:#344158;white-space:nowrap;align-items:center;gap:10px;font-weight:600;display:inline-flex}.task-filter-field .ant-select{width:164px}.task-filter-group .ant-select-selector,.task-filter-group>.ant-btn{min-height:40px}.task-filter-group>.ant-btn{margin-left:auto}.task-bulk-toolbar{background:#f6f9ff;border:1px solid #bfd7ff;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:9px 14px;display:flex;box-shadow:0 4px 14px #1677ff14}.task-bulk-toolbar__summary{flex-direction:column;gap:2px;min-width:0;display:flex}.task-bulk-toolbar__summary strong{color:#174f9d;font-size:14px}.task-bulk-toolbar__summary span{color:#667085;font-size:12px}.task-ledger-surface{border:1px solid var(--line);min-width:0;box-shadow:var(--shadow);background:#fff;border-radius:8px;overflow:hidden}.task-ledger-table .ant-table{color:#243047;font-size:13px}.task-ledger-table .ant-table-container{border-start-start-radius:8px;border-start-end-radius:8px}.task-ledger-table .ant-table-thead>tr>th{color:#344158;background:#edf1f7;border-bottom:1px solid #dce3ed;height:46px;padding:11px 16px;font-weight:800}.task-ledger-table .ant-table-thead>tr>th:before{display:none}.task-ledger-table .ant-table-tbody>tr>td{vertical-align:middle;background:#fff;border-bottom:1px solid #e7ecf3;min-height:64px;padding:11px 16px}.task-ledger-table .ant-table-tbody>tr.task-ledger-row--batch>td{background:#fbfcfe}.task-ledger-table .ant-table-tbody>tr.task-ledger-row--child>td{background:#fff}.task-ledger-table .ant-table-tbody>tr.task-ledger-row--child .task-ledger-icon{background:0 0;border:0;flex-basis:20px;width:20px;height:20px;font-size:17px}.task-ledger-table .ant-table-tbody>tr:hover>td,.task-ledger-table .ant-table-tbody>tr.task-ledger-row--batch:hover>td{background:#f6f9fd}.task-ledger-table .ant-table-row-expand-icon{color:#516077;border-color:#aab4c3}.task-ledger-table .ant-table-cell-fix-right{box-shadow:-8px 0 14px -14px #1e30506b}.task-ledger-table .ant-table-pagination.ant-pagination{margin:14px 16px}.task-ledger-identity{align-items:center;gap:10px;min-width:0;display:flex}.task-ledger-icon{color:#5c6d86;background:#f3f6fa;border:1px solid #dce4ef;border-radius:8px;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:17px;display:grid}.task-ledger-icon--running{color:#1769d2;background:#edf5ff;border-color:#cbdfff}.task-ledger-icon--failed{color:#b42318;background:#fff1f1;border-color:#fecaca}.task-ledger-icon--done{color:#15803d;background:#eefaf2;border-color:#ccebd7}.task-ledger-identity__copy,.task-ledger-stack,.task-ledger-status-cell,.task-ledger-result{min-width:0;display:grid}.task-ledger-identity__copy,.task-ledger-stack{gap:4px}.task-ledger-title{align-items:center;gap:7px;min-width:0;display:flex}.task-ledger-title>.ant-typography{min-width:0;max-width:100%}.task-ledger-title>.ant-tag{border-radius:4px;flex:none;margin:0;padding-inline:5px;font-size:11px;line-height:18px}.task-ledger-identity__copy>.ant-typography,.task-ledger-stack>.ant-typography,.task-ledger-result>.ant-typography{max-width:100%;display:block}.task-ledger-identity__copy>.ant-typography-secondary,.task-ledger-stack>.ant-typography-secondary,.task-ledger-result>.ant-typography-secondary{color:#69768a;font-size:12px}.task-ledger-result>.ant-typography-strong{color:#26364d}.task-ledger-status-cell{justify-items:start;gap:5px;line-height:1.35}.task-ledger-status-cell>.ant-typography{max-width:100%;font-size:12px}.task-ledger-status.ant-tag{border-radius:12px;margin:0;padding:1px 8px;font-size:12px;font-weight:700;line-height:20px}.task-ledger-status--danger.ant-tag{color:#b42318;background:#fff1f1;border-color:#fecaca}.task-ledger-status--running.ant-tag{color:#175fb8;background:#edf5ff;border-color:#bfdbfe}.task-ledger-status--queued.ant-tag,.task-ledger-status--muted.ant-tag{color:#59667a;background:#f3f5f8;border-color:#d7dee8}.task-ledger-status--success.ant-tag{color:#14743a;background:#effaf3;border-color:#bbdfc8}.task-ledger-child-status.ant-typography{font-size:13px}.task-ledger-child-status--done.ant-typography{color:#15803d}.task-ledger-child-status--failed.ant-typography{color:#b42318}.task-ledger-child-status--running.ant-typography{color:#175fb8}.task-ledger-child-status--queued.ant-typography{color:#b45309}.task-ledger-result{gap:6px;line-height:1.35}.task-ledger-result__summary,.task-ledger-result__heading{align-items:center;gap:13px;min-width:0;display:flex}.task-ledger-result__summary{color:#59667a;font-variant-numeric:tabular-nums;font-weight:700}.task-ledger-result__summary .is-success{color:#14743a}.task-ledger-result__summary .is-danger{color:#b42318}.task-ledger-result__heading{justify-content:space-between}.task-ledger-result__heading>span{color:#175fb8;font-variant-numeric:tabular-nums;font-weight:800}.task-ledger-result .ant-progress{max-width:340px;margin:-1px 0;line-height:1}.task-ledger-result .ant-progress-inner,.task-ledger-result .ant-progress-bg,.task-ledger-result .ant-progress-success-bg{border-radius:2px}.task-ledger-time.ant-typography{color:#536176;font-variant-numeric:tabular-nums;font-size:12px}.task-ledger-actions{white-space:nowrap;align-items:center;gap:2px;display:flex}.task-ledger-actions .ant-btn-link{padding-inline:2px 7px;font-weight:600}.task-feedback-cell{white-space:normal;align-items:flex-start;gap:10px;min-width:0;display:flex}.task-feedback-preview.ant-typography{overflow-wrap:anywhere;flex:1;min-width:0;margin:0;line-height:1.45}.task-feedback-action.ant-btn{flex:none;height:auto;padding:0;line-height:1.45}.task-result-feedback{gap:3px;min-width:0;line-height:1.4;display:grid}.task-result-feedback>.ant-typography{max-width:100%;display:block}.task-result-feedback__line{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;min-width:0;display:grid}.task-result-feedback__line>.ant-typography{max-width:100%;font-size:12px;display:block}.task-detail-message.ant-typography{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.task-state-cell{white-space:normal;min-width:0;max-width:100%;line-height:1.4}.task-summary-cell{gap:4px;min-width:0;line-height:1.35;display:grid}.task-summary-cell__meta.ant-typography{max-width:100%;font-size:12px;display:block}.task-progress-cell{gap:5px;min-width:0;line-height:1.35;display:grid}.task-progress-cell.is-queued .ant-progress-bg{background:#d0d7e2!important}.task-progress-cell__top{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;display:grid}.task-progress-cell__percent{text-align:right;font-variant-numeric:tabular-nums;color:#1d2939;min-width:42px;font-weight:800}.task-progress-cell__detail.ant-typography{max-width:100%;font-size:12px;line-height:1.35;display:block}.task-progress-cell.is-queued .task-progress-cell__detail.ant-typography{color:#667085}.task-progress-cell.is-running .ant-progress-bg{box-shadow:0 0 0 1px #1677ff14}.task-progress-cell.is-done .task-progress-cell__percent{color:var(--green)}.task-progress-cell.is-failed .task-progress-cell__percent{color:var(--red)}.upgrade-inline-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.managed-files-page{min-width:0}.managed-files-card .ant-card-body{padding-top:14px}.managed-files-toolbar{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.managed-file-name{flex-direction:column;gap:3px;min-width:0;display:flex}.managed-file-name .ant-typography{overflow-wrap:anywhere;max-width:100%;margin:0}.managed-file-description{white-space:normal}.managed-upload-detection{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.managed-file-publication-summary{background:#f8fafc;border:1px solid #e4eaf2;border-radius:8px;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:9px 12px;padding:12px;display:grid}.managed-file-publication-summary .ant-tag{width:fit-content;margin:0}.managed-file-publication-channel{color:#536074;gap:7px;font-size:13px;display:grid}@media (width<=1100px){.managed-files-toolbar{flex-direction:column}.application-upgrade-scope-bar{flex-direction:column;align-items:stretch}.application-upgrade-scope-bar .ant-segmented{width:100%}}.file-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.package-table{margin-top:12px}.nowrap{white-space:nowrap}.operation-feedback-text{white-space:pre-wrap;overflow-wrap:anywhere;max-width:500px;line-height:1.55;display:block}.floating-upload-progress{z-index:1200;background:#fff;border:1px solid #d8e2f0;border-radius:8px;width:min(360px,100vw - 32px);position:fixed;bottom:24px;right:24px;box-shadow:0 16px 40px #1f2c432e}.floating-upload-progress.is-minimized{width:220px}.floating-upload-progress__header{color:#243047;border-bottom:1px solid #edf2f8;justify-content:space-between;align-items:center;min-height:40px;padding:6px 10px 6px 14px;font-weight:600;display:flex}.floating-upload-progress.is-minimized .floating-upload-progress__header{border-bottom:0}.floating-upload-progress__body{gap:8px;padding:12px 14px 14px;display:grid}.danger-text{color:var(--red)}.log-center-page,.log-center-page .ant-card,.log-center-page .ant-card-body{min-width:0}.log-center-budget-input{align-items:center;gap:8px;display:inline-flex}.log-center-budget-input .ant-input-number{width:116px}.log-center-terminal-summary,.log-center-active-task{background:#f8fafc;border:1px solid #dfe6ef;border-radius:6px;padding:10px 12px}.log-center-upload-controls{grid-template-columns:minmax(240px,1fr) 150px auto;align-items:stretch;gap:8px;width:100%;display:grid}.log-center-upload-controls>.ant-select,.log-center-upload-controls>span,.log-center-upload-controls>span>.ant-btn{width:100%!important}@media (width<=1360px){.log-center-upload-controls{grid-template-columns:minmax(220px,1fr) 150px}.log-center-upload-controls>span:last-child{grid-column:1/-1}body{min-width:1180px}.app-shell{grid-template-columns:176px 228px minmax(760px,1fr)}.app-shell.compact-context{grid-template-columns:176px 64px minmax(760px,1fr)}.app-shell.no-context{grid-template-columns:176px minmax(760px,1fr)}.filter-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(130px,.75fr) minmax(130px,.75fr) 40px}}@media (width<=1500px){.task-main .content{padding-inline:18px}.task-topbar .topbar-title>.ant-typography-secondary,.task-topbar .top-meta>span:nth-child(2),.task-topbar .top-meta>span:nth-child(3){display:none}.task-filter-search.ant-input-affix-wrapper{width:320px}}@container terminal-detail (width<=1000px){.terminal-detail-layout{grid-template-columns:minmax(0,1fr)}.terminal-side-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}@container terminal-detail (width<=700px){.basic-field-grid,.apk-version-panel{grid-template-columns:minmax(0,1fr)}.apk-version-panel em{grid-column:auto}.detail-meta-editor{grid-template-columns:minmax(0,1fr)}.detail-meta-editor label.wide{grid-column:auto}}@media (width<=1280px){.upgrade-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.upgrade-filter-grid>.ant-btn{width:120px}.upgrade-main-grid,.upgrade-terminal-toolbar,.upgrade-inline-form,.application-management-toolbar{grid-template-columns:minmax(0,1fr)}.terminal-selection-scope{flex-direction:column;align-items:flex-start}.application-management-actions{justify-content:flex-start}.application-terminal-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.upgrade-confirm-grid,.upgrade-confirm-kv,.batch-detail-metrics,.batch-detail-grid{grid-template-columns:minmax(0,1fr)}.basic-field:nth-last-child(-n+2){border-bottom:1px solid #edf2f8}.basic-field:last-child{border-bottom:0}}.mobile-menu-trigger.ant-btn,.mobile-group-trigger.ant-btn,.mobile-drawer-close.ant-btn,.group-mobile-header,.mobile-drawer-backdrop{display:none}@media (width<=900px){html,body,#root{width:100%;min-width:0}body{min-width:0;overflow-x:hidden}.app-shell,.app-shell.compact-context,.app-shell.no-context{width:100%;min-width:0;height:100dvh;min-height:100dvh;display:block;overflow:hidden}.app-sidebar{z-index:1200;width:min(84vw,320px);height:100dvh;padding-bottom:env(safe-area-inset-bottom);transition:transform .18s ease-out;position:fixed;inset:0 auto 0 0;overflow:hidden;transform:translate(-102%);box-shadow:18px 0 42px #0e1e403d}.mobile-nav-open .app-sidebar{transform:translate(0)}.brand{min-height:calc(56px + env(safe-area-inset-top));height:auto;padding:env(safe-area-inset-top) 10px 0 16px}.brand>span:nth-child(2){flex:1}.mobile-drawer-close.ant-btn{width:44px;min-width:44px;height:44px;color:inherit;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.app-sidebar nav{height:calc(100dvh - 56px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overscroll-behavior:contain;overflow-y:auto}.nav-button,.nav-sub-button{height:52px;min-height:52px}.mobile-drawer-backdrop{z-index:1100;cursor:pointer;background:#0f172a75;border:0;width:100%;height:100%;padding:0;position:fixed;inset:0}.mobile-nav-open .mobile-drawer-backdrop,.mobile-group-open .mobile-drawer-backdrop{display:block}.app-context-rail{display:none}.app-group-panel{z-index:1200;border-right:0;width:min(88vw,360px);height:100dvh;transition:transform .18s ease-out;position:fixed;inset:0 0 0 auto;overflow:hidden;transform:translate(102%);box-shadow:-18px 0 42px #0e1e4033}.mobile-group-open .app-group-panel{transform:translate(0)}.group-mobile-header{min-height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 8px 0 16px;border-bottom:1px solid var(--line);color:var(--text);background:#fff;justify-content:space-between;align-items:center;display:flex}.group-mobile-header .mobile-drawer-close{color:#445064}.group-tabs{height:48px}.group-tab,.group-row{min-height:44px}.group-body{height:calc(100dvh - 104px - env(safe-area-inset-top));padding-bottom:calc(16px + env(safe-area-inset-bottom));overscroll-behavior:contain}.group-body .search-pill.ant-input-affix-wrapper,.group-body .search-pill{border-radius:22px;height:44px}.group-row-trailing .ant-btn,.auth-terminal-row .ant-btn{width:44px;min-width:44px;height:44px}.mini-actions{height:auto;min-height:44px;margin-bottom:4px}.mini-actions span{min-height:44px}.app-main,.app-main.task-main{grid-template-rows:auto minmax(0,1fr);width:100%;min-width:0;height:100dvh;display:grid;overflow:hidden}.topbar,.topbar.task-topbar{min-height:calc(56px + env(safe-area-inset-top));height:auto;padding:env(safe-area-inset-top) 8px 0;grid-template-columns:44px minmax(0,1fr) auto;gap:6px;display:grid}.mobile-menu-trigger.ant-btn{color:#344158;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;font-size:19px;display:inline-flex}.topbar-title{min-width:0;display:block}.topbar h4.ant-typography,.task-topbar .topbar-title h4.ant-typography{text-overflow:ellipsis;white-space:nowrap;font-size:18px;line-height:1.25;overflow:hidden}.topbar-title>.ant-typography-secondary{display:none}.top-meta{gap:2px}.top-meta>span{display:none}.mobile-group-trigger.ant-btn{min-width:52px;height:44px;color:var(--blue);justify-content:center;align-items:center;padding-inline:8px;font-size:14px;font-weight:700;display:inline-flex}.top-meta>.ant-btn:not(.mobile-group-trigger){width:44px;min-width:44px;height:44px;padding:0;font-size:0}.top-meta>.ant-btn:not(.mobile-group-trigger) .anticon{margin-inline-end:0;font-size:16px}.content,.task-main .content{min-width:0;min-height:0;padding:10px 10px calc(18px + env(safe-area-inset-bottom));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow:hidden auto}.content .ant-space,.content .ant-space-item,.content .ant-card,.content .ant-card-body,.content .ant-form,.content .ant-table-wrapper{min-width:0;max-width:100%}.ops-card .ant-card-head{height:auto;min-height:50px;padding-inline:12px}.ops-card .ant-card-head-wrapper{flex-wrap:wrap;gap:8px;min-width:0;padding-block:7px}.ops-card .ant-card-head-title{white-space:normal;min-width:0;padding-block:3px}.ops-card .ant-card-extra{max-width:100%;margin-inline-start:auto;padding-block:0}.ops-card .ant-card-body,.summary-card .ant-card-body{padding:12px}.content .ant-input:not(textarea),.content .ant-input-affix-wrapper,.content .ant-input-number,.content .ant-picker,.content .ant-select-single,.content .ant-select-single .ant-select-selector{min-height:44px;font-size:16px;height:44px!important}.content .ant-input-affix-wrapper .ant-input{min-height:0;height:auto!important}.content textarea.ant-input{min-height:88px;font-size:16px}.content .ant-select-single .ant-select-selection-item,.content .ant-select-single .ant-select-selection-placeholder{line-height:42px!important}.content .ant-btn:not(.ant-btn-link){min-height:44px}.content .ant-btn-circle,.mini-icon-actions .ant-btn,.round-action .ant-btn{width:44px;min-width:44px;height:44px}.content .ant-checkbox-wrapper,.content .ant-radio-wrapper{align-items:center;min-height:44px;display:inline-flex}.content .ant-table-wrapper,.content .ant-table-container,.content .ant-table-content,.content .ant-table-body{max-width:100%}.content .ant-table-content,.content .ant-table-body{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;overflow-x:auto!important}.content .ant-table-thead>tr>th,.content .ant-table-tbody>tr>td{padding-inline:12px!important}.content .ant-table-pagination.ant-pagination{flex-wrap:wrap;justify-content:center;gap:4px;margin:12px 8px}.content .ant-pagination-item,.content .ant-pagination-prev,.content .ant-pagination-next,.content .ant-pagination-jump-prev,.content .ant-pagination-jump-next,.content .ant-pagination-item-link{min-width:44px;height:44px;line-height:42px}.content .ant-pagination-item-link{justify-content:center;align-items:center;display:inline-flex}.content .ant-table-pagination.ant-pagination .ant-pagination-item,.content .ant-table-pagination.ant-pagination .ant-pagination-prev,.content .ant-table-pagination.ant-pagination .ant-pagination-next,.content .ant-table-pagination.ant-pagination .ant-pagination-jump-prev,.content .ant-table-pagination.ant-pagination .ant-pagination-jump-next,.content .ant-table-pagination.ant-pagination .ant-pagination-item-link{min-width:44px!important;height:44px!important;line-height:42px!important}.content .ant-btn-icon-only,.content .ant-typography-copy{justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;display:inline-flex}.content .ant-typography-copy{margin-inline-start:2px}.content .ant-collapse-header{min-height:44px;align-items:center!important}.task-ledger-table .ant-table-row-expand-icon{width:44px;min-width:44px;height:44px;margin-inline-end:6px;line-height:42px}.content .ant-descriptions,.content .ant-descriptions-view,.content .ant-descriptions table{table-layout:fixed;width:100%;min-width:0;max-width:100%}.content .ant-descriptions-item,.content .ant-descriptions-item-container,.content .ant-descriptions-item-label,.content .ant-descriptions-item-content{min-width:0;max-width:100%}.content .ant-descriptions-item-container{flex-wrap:wrap;align-items:flex-start;gap:4px 8px}.content .ant-descriptions-item-label,.content .ant-descriptions-item-content{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.filter-grid,.upgrade-filter-grid,.upgrade-filter-grid--ota,.upgrade-filter-grid--apk,.upgrade-terminal-toolbar,.upgrade-main-grid,.upgrade-inline-form,.application-management-toolbar,.log-center-upload-controls,.basic-field-grid,.apk-version-panel,.detail-meta-editor,.batch-detail-grid,.upgrade-confirm-grid,.upgrade-confirm-kv{grid-template-columns:minmax(0,1fr)!important}.filter-grid .ant-form-item:nth-child(4){display:block}.filter-grid>*,.upgrade-filter-grid>*,.upgrade-terminal-toolbar>*,.application-management-toolbar>*,.log-center-upload-controls>*{min-width:0;width:100%!important}.filter-grid .filter-search-button{border-radius:6px}.filter-search-label{display:inline}.upgrade-filter-grid>.ant-btn,.application-management-actions,.application-management-actions .ant-btn{width:100%}.application-management-toolbar label{grid-template-columns:minmax(0,1fr)}.application-management-toolbar .terminal-select{min-width:0;max-width:100%;width:100%!important}.managed-files-toolbar,.managed-files-toolbar>.ant-space{width:100%;min-width:0;max-width:100%}.managed-files-toolbar>.ant-space>.ant-space-item{min-width:0;max-width:100%}.managed-files-toolbar>.ant-space:first-child>.ant-space-item:nth-child(-n+3),.managed-files-toolbar .ant-select,.managed-files-toolbar .ant-input-search{width:100%!important}.managed-files-toolbar .ant-segmented{width:100%;min-width:0;max-width:100%}.managed-files-toolbar .ant-segmented-group{grid-template-columns:repeat(4,minmax(0,1fr));width:100%;display:grid}.managed-files-toolbar .ant-segmented-item{min-width:0}.managed-files-toolbar .ant-segmented-item-label{text-overflow:ellipsis;white-space:nowrap;padding-inline:4px;font-size:13px;overflow:hidden}.summary-grid,.metric-grid,.action-grid,.application-terminal-summary,.batch-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.linux-agent-heading,.linux-agent-table-toolbar,.managed-files-toolbar,.application-task-header{flex-direction:column;align-items:stretch}.linux-agent-table-toolbar .ant-input-affix-wrapper{width:100%}.upgrade-summary-box,.upgrade-confirm-box,.upgrade-confirm-section,.batch-detail-section{overflow-wrap:anywhere}.upgrade-check-row{flex-direction:column;align-items:flex-start;gap:2px}.upgrade-action-row{align-items:stretch}.upgrade-action-row .ant-btn{flex:calc(50% - 6px);min-width:132px}.upgrade-plan-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.upgrade-plan-skip-list>div,.upgrade-confirm-list-row,.batch-detail-row{flex-direction:column;align-items:flex-start}.application-terminal-summary>div{min-height:76px;padding:10px}.task-status-tabs{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;justify-content:flex-start;padding-bottom:4px;overflow-x:auto}.task-status-filter{scroll-snap-align:start;flex:none;min-width:96px;height:44px}.task-center-toolbar,.task-bulk-toolbar{flex-direction:column;align-items:stretch}.task-filter-search.ant-input-affix-wrapper{width:100%}.task-filter-group{grid-template-columns:minmax(0,1fr);gap:8px;width:100%;display:grid}.task-filter-field{justify-content:space-between;width:100%}.task-filter-field .ant-select{width:min(64vw,240px)}.task-filter-group>.ant-btn{width:100%;margin-left:0}.task-ledger-surface{overflow:hidden}.task-ledger-actions .ant-btn-link,.task-feedback-action.ant-btn{min-height:44px;padding-inline:8px}.file-grid{grid-template-columns:minmax(0,1fr)}.log-center-budget-input{flex-wrap:wrap;width:100%}.log-center-budget-input .ant-input-number{width:min(100%,180px)}.floating-upload-progress,.floating-upload-progress.is-minimized{right:10px;bottom:calc(10px + env(safe-area-inset-bottom));width:auto;max-width:none;left:10px}.action-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 8px;margin-inline:0;padding:12px 0 2px;display:grid;overflow:visible}.round-action{white-space:normal;text-align:center;align-content:start;min-width:0;line-height:18px}.table-card .terminal-identity-column{padding-inline:8px!important}.table-card .terminal-actions-column{text-align:center;padding-inline:4px!important}.table-card .ant-table-selection-column{padding-inline:8px!important}.terminal-row-actions.ant-space{justify-content:flex-start;width:100%}.terminal-row-actions .ant-space-item{flex:0 0 44px;width:44px}.upgrade-file-actions-column .mini-icon-actions{gap:4px}.terminal-detail-header{grid-template-columns:minmax(0,1fr);align-items:start;gap:10px;min-height:0;padding:14px 12px}.terminal-detail-title{white-space:normal;overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:3px 8px;min-width:0;display:flex}.terminal-detail-title strong{overflow-wrap:anywhere;min-width:0;margin-left:0}.detail-status-row{flex-wrap:wrap;gap:8px;width:100%;min-height:0}.detail-badge{gap:7px;height:34px;padding-inline:10px;font-size:14px}.detail-heartbeat{white-space:normal;margin-left:0;font-size:14px}.terminal-detail-layout{grid-template-columns:minmax(0,1fr);gap:12px;padding:10px}.terminal-basic-panel{min-width:0;padding:12px}.detail-section-title{margin-bottom:12px}.basic-info-groups{gap:12px}.basic-info-group{grid-template-columns:minmax(0,1fr)}.basic-group-label{text-align:left;border-bottom:1px solid #edf2f8;border-right:0;justify-content:flex-start;align-items:center;gap:9px;min-height:48px;padding:10px 12px;display:flex}.basic-group-label .anticon{font-size:21px}.basic-field-grid{padding-inline:12px}.basic-field{grid-template-columns:84px minmax(0,1fr);column-gap:8px}.apk-version-panel{margin:12px 12px 0;padding:10px 12px}.detail-meta-editor{padding:12px}.detail-meta-editor .ant-btn{width:100%}.terminal-side-panel{grid-template-columns:minmax(0,1fr);gap:12px}.detail-side-box{min-width:0;padding:16px}.detail-side-box dl{grid-template-columns:96px minmax(0,1fr);gap:12px 10px}.feedback-list dd{flex-wrap:wrap}.detail-actions.ant-space{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;gap:8px!important}.detail-actions .ant-space-item,.detail-actions .ant-btn{width:100%;min-width:0}.ant-modal-root .ant-modal{max-width:calc(100vw - 20px);margin:0 auto;padding-bottom:12px;top:12px;width:calc(100vw - 20px)!important}.ant-modal-root .ant-modal-content{flex-direction:column;max-height:calc(100dvh - 24px);padding:16px;display:flex}.ant-modal-root .ant-modal-body{min-height:0;overflow-y:auto}.ant-modal-root .ant-modal-footer{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ant-modal-root .ant-modal-footer .ant-btn{min-height:44px;margin-inline-start:0}.ant-drawer-content-wrapper{max-width:100vw;width:min(100vw,480px)!important}.login-shell{min-width:0;padding:16px}.login-card .ant-card-body{padding:22px 18px}.login-card .ant-input,.login-card .ant-input-affix-wrapper,.login-card .ant-btn{min-height:44px;font-size:16px}}@media (width<=480px){.content,.task-main .content{padding-inline:8px}.task-status-tabs{overflow-x:visible}.task-status-filter{flex:1 1 0;min-width:0;padding-inline:8px}.summary-grid,.metric-grid,.action-grid,.application-terminal-summary,.batch-detail-metrics{gap:8px}.upgrade-plan-stats{grid-template-columns:minmax(0,1fr)}.upgrade-action-row .ant-btn{flex-basis:100%}.batch-detail-section dl{grid-template-columns:minmax(0,1fr);gap:4px}.connect-command{grid-template-columns:minmax(0,1fr) 44px;gap:8px}.connect-command>span:first-child{grid-column:1/-1}.connect-command code{width:100%}}@media (prefers-reduced-motion:reduce){.app-sidebar,.app-group-panel,.nav-chevron{transition:none}}.application-view-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.upgrade-result-file,.upgrade-batch-progress{flex-direction:column;gap:4px;min-width:0;display:flex}.upgrade-result-message{overflow-wrap:anywhere;white-space:pre-wrap;margin-bottom:0!important}.upgrade-results-toolbar{flex-wrap:wrap;margin-bottom:12px}.linux-agent-page .linux-attention-reason{white-space:normal;text-align:left;color:#ad6800;height:auto;padding:0}.linux-attention-help{margin:0 16px 12px}.linux-recorder-health,.linux-latest-download,.linux-next-step{margin-bottom:16px}.linux-recorder-health .ant-descriptions-item-content{overflow-wrap:anywhere}@media (width<=760px){.linux-next-step{flex-wrap:wrap}.linux-next-step .ant-alert-action{margin:12px 0 0 28px}}
