1875 lines
34 KiB
CSS
1875 lines
34 KiB
CSS
@import './tokens.css';
|
|
@import '@douyinfe/semi-theme-default/scss/index.scss';
|
|
|
|
* {
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
body {
|
|
margin: 0;
|
|
min-width: 1280px;
|
|
background: var(--vp-bg);
|
|
color: var(--vp-text);
|
|
font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
|
|
}
|
|
|
|
.vp-app {
|
|
min-height: 100vh;
|
|
background: var(--vp-bg);
|
|
}
|
|
|
|
.vp-shell {
|
|
display: grid;
|
|
grid-template-columns: var(--vp-shell-sidebar) minmax(0, 1fr);
|
|
min-height: 100vh;
|
|
}
|
|
|
|
.vp-sidebar {
|
|
position: sticky;
|
|
top: 0;
|
|
height: 100vh;
|
|
background: var(--vp-surface);
|
|
border-right: 1px solid var(--vp-border);
|
|
padding: 16px 12px;
|
|
}
|
|
|
|
.vp-brand {
|
|
min-height: 54px;
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 10px;
|
|
padding: 0 8px 16px;
|
|
font-weight: 700;
|
|
color: var(--vp-text);
|
|
}
|
|
|
|
.vp-brand-mark {
|
|
width: 28px;
|
|
height: 28px;
|
|
border-radius: 7px;
|
|
background: linear-gradient(135deg, var(--vp-primary), var(--vp-cyan));
|
|
}
|
|
|
|
.vp-brand-copy {
|
|
min-width: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 2px;
|
|
line-height: 18px;
|
|
}
|
|
|
|
.vp-brand-copy span:first-child {
|
|
font-size: 15px;
|
|
}
|
|
|
|
.vp-brand-copy span:last-child {
|
|
color: var(--vp-text-muted);
|
|
font-size: 11px;
|
|
font-weight: 500;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.vp-nav-groups {
|
|
display: grid;
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-nav-group {
|
|
min-width: 0;
|
|
}
|
|
|
|
.vp-nav-section-title {
|
|
padding: 0 12px 6px;
|
|
color: var(--vp-text-subtle);
|
|
font-size: 12px;
|
|
font-weight: 600;
|
|
line-height: 18px;
|
|
}
|
|
|
|
.vp-main {
|
|
min-width: 0;
|
|
}
|
|
|
|
.vp-topbar {
|
|
height: var(--vp-shell-header);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
padding: 0 24px;
|
|
background: rgba(255, 255, 255, 0.9);
|
|
border-bottom: 1px solid var(--vp-border);
|
|
backdrop-filter: blur(12px);
|
|
position: sticky;
|
|
top: 0;
|
|
z-index: 10;
|
|
}
|
|
|
|
.vp-link-health-button-warning {
|
|
color: var(--vp-warning);
|
|
border-color: rgba(247, 144, 9, 0.45);
|
|
background: rgba(247, 144, 9, 0.08);
|
|
}
|
|
|
|
.vp-link-health-button-ok {
|
|
color: var(--vp-success);
|
|
border-color: rgba(18, 183, 106, 0.45);
|
|
background: rgba(18, 183, 106, 0.08);
|
|
}
|
|
|
|
.vp-page {
|
|
padding: var(--vp-page-gutter);
|
|
}
|
|
|
|
.vp-page-header {
|
|
min-height: 54px;
|
|
margin-bottom: 16px;
|
|
display: flex;
|
|
align-items: flex-start;
|
|
justify-content: space-between;
|
|
gap: 16px;
|
|
}
|
|
|
|
.vp-page-header-actions {
|
|
flex: 0 0 auto;
|
|
padding-top: 2px;
|
|
}
|
|
|
|
.vp-scope-bar {
|
|
min-height: 40px;
|
|
margin-top: 12px;
|
|
padding: 8px 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-scope-label {
|
|
color: var(--vp-text-muted);
|
|
font-size: 13px;
|
|
}
|
|
|
|
.vp-service-status {
|
|
min-height: 40px;
|
|
margin-top: 8px;
|
|
padding: 8px 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: var(--vp-surface);
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-service-status-ok {
|
|
border-color: rgba(18, 183, 106, 0.35);
|
|
background: rgba(18, 183, 106, 0.05);
|
|
}
|
|
|
|
.vp-service-status-warning {
|
|
border-color: rgba(247, 144, 9, 0.35);
|
|
background: rgba(247, 144, 9, 0.06);
|
|
}
|
|
|
|
.vp-service-status-error {
|
|
border-color: rgba(240, 68, 56, 0.35);
|
|
background: rgba(240, 68, 56, 0.05);
|
|
}
|
|
|
|
.vp-section {
|
|
background: var(--vp-surface);
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
box-shadow: var(--vp-shadow-sm);
|
|
}
|
|
|
|
.vp-grid {
|
|
display: grid;
|
|
gap: 16px;
|
|
}
|
|
|
|
.vp-grid.two {
|
|
grid-template-columns: minmax(0, 1.2fr) minmax(360px, 0.8fr);
|
|
}
|
|
|
|
.vp-kpi-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
gap: 16px;
|
|
margin-bottom: 16px;
|
|
}
|
|
|
|
.vp-kpi-card {
|
|
overflow: hidden;
|
|
}
|
|
|
|
.vp-kpi-button {
|
|
width: 100%;
|
|
min-height: 94px;
|
|
padding: 20px 24px;
|
|
border: 0;
|
|
background: transparent;
|
|
text-align: left;
|
|
cursor: pointer;
|
|
font: inherit;
|
|
}
|
|
|
|
.vp-kpi-button:hover,
|
|
.vp-kpi-button:focus-visible {
|
|
background: #f8fbff;
|
|
outline: none;
|
|
}
|
|
|
|
.vp-kpi-value {
|
|
font-size: 28px;
|
|
font-weight: 700;
|
|
line-height: 34px;
|
|
color: var(--vp-text);
|
|
}
|
|
|
|
.vp-kpi-label {
|
|
margin-top: 4px;
|
|
color: var(--vp-text-muted);
|
|
font-size: 13px;
|
|
}
|
|
|
|
.vp-result-summary-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-current-service-board {
|
|
margin-bottom: 16px;
|
|
padding: 14px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1fr) 280px;
|
|
gap: 16px;
|
|
}
|
|
|
|
.vp-current-service-title {
|
|
margin-bottom: 10px;
|
|
color: var(--vp-text);
|
|
font-size: 14px;
|
|
font-weight: 700;
|
|
line-height: 20px;
|
|
}
|
|
|
|
.vp-current-service-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-current-service-item {
|
|
min-height: 112px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: var(--vp-surface);
|
|
display: grid;
|
|
gap: 8px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-current-service-risk {
|
|
color: var(--vp-text);
|
|
font-size: 13px;
|
|
font-weight: 600;
|
|
line-height: 20px;
|
|
}
|
|
|
|
.vp-current-service-next {
|
|
color: var(--vp-text-muted);
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
}
|
|
|
|
.vp-current-action-list {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
gap: 8px;
|
|
}
|
|
|
|
.vp-realtime-command-board {
|
|
margin-bottom: 16px;
|
|
padding: 14px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1fr) 280px;
|
|
gap: 16px;
|
|
}
|
|
|
|
.vp-realtime-command-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(6, minmax(0, 1fr));
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-realtime-command-item {
|
|
min-height: 74px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: var(--vp-surface);
|
|
display: grid;
|
|
align-content: space-between;
|
|
gap: 8px;
|
|
text-align: left;
|
|
font: inherit;
|
|
}
|
|
|
|
button.vp-realtime-command-item {
|
|
cursor: pointer;
|
|
}
|
|
|
|
button.vp-realtime-command-item:hover,
|
|
button.vp-realtime-command-item:focus-visible {
|
|
border-color: rgba(22, 100, 255, 0.42);
|
|
background: #f5f9ff;
|
|
outline: none;
|
|
}
|
|
|
|
.vp-realtime-command-item span:last-child {
|
|
color: var(--vp-text);
|
|
font-size: 22px;
|
|
font-weight: 700;
|
|
line-height: 28px;
|
|
}
|
|
|
|
.vp-source-coverage-board {
|
|
margin-bottom: 16px;
|
|
padding: 14px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: var(--vp-surface);
|
|
}
|
|
|
|
.vp-source-coverage-grid {
|
|
margin-top: 10px;
|
|
display: grid;
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-source-coverage-item {
|
|
min-height: 98px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
text-align: left;
|
|
font: inherit;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.vp-source-coverage-item:hover,
|
|
.vp-source-coverage-item:focus-visible {
|
|
border-color: rgba(22, 100, 255, 0.42);
|
|
background: #f5f9ff;
|
|
outline: none;
|
|
}
|
|
|
|
.vp-source-coverage-item-head {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-source-coverage-item-head span {
|
|
color: var(--vp-text);
|
|
font-weight: 700;
|
|
}
|
|
|
|
.vp-source-coverage-bars {
|
|
margin-top: 12px;
|
|
display: grid;
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
gap: 8px;
|
|
color: var(--vp-text-muted);
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
}
|
|
|
|
.vp-result-summary-item {
|
|
min-height: 72px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
}
|
|
|
|
.vp-result-summary-button {
|
|
width: 100%;
|
|
text-align: left;
|
|
font: inherit;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.vp-result-summary-button:hover,
|
|
.vp-result-summary-button:focus-visible {
|
|
border-color: rgba(22, 100, 255, 0.42);
|
|
background: #f5f9ff;
|
|
outline: none;
|
|
}
|
|
|
|
.vp-result-summary-value {
|
|
color: var(--vp-text);
|
|
font-size: 22px;
|
|
font-weight: 700;
|
|
line-height: 28px;
|
|
}
|
|
|
|
.vp-result-summary-label {
|
|
margin-top: 4px;
|
|
color: var(--vp-text-muted);
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
}
|
|
|
|
.vp-map {
|
|
position: relative;
|
|
height: 360px;
|
|
overflow: hidden;
|
|
background:
|
|
linear-gradient(90deg, rgba(22, 100, 255, 0.08) 1px, transparent 1px),
|
|
linear-gradient(0deg, rgba(22, 100, 255, 0.08) 1px, transparent 1px),
|
|
#f8fbff;
|
|
background-size: 36px 36px;
|
|
}
|
|
|
|
.vp-amap-canvas {
|
|
position: absolute;
|
|
inset: 0;
|
|
}
|
|
|
|
.vp-map-fallback {
|
|
position: absolute;
|
|
inset: 0;
|
|
background:
|
|
linear-gradient(90deg, rgba(22, 100, 255, 0.08) 1px, transparent 1px),
|
|
linear-gradient(0deg, rgba(22, 100, 255, 0.08) 1px, transparent 1px),
|
|
rgba(248, 251, 255, 0.94);
|
|
background-size: 36px 36px;
|
|
}
|
|
|
|
.vp-map-fallback-status {
|
|
position: absolute;
|
|
left: 12px;
|
|
bottom: 12px;
|
|
box-shadow: var(--vp-shadow-sm);
|
|
}
|
|
|
|
.vp-amap-marker {
|
|
min-width: 18px;
|
|
height: 18px;
|
|
padding: 0 5px;
|
|
border: 2px solid #fff;
|
|
border-radius: 999px;
|
|
color: #fff;
|
|
font-size: 10px;
|
|
font-weight: 700;
|
|
line-height: 14px;
|
|
text-align: center;
|
|
box-shadow: 0 8px 18px rgba(16, 24, 40, 0.2);
|
|
}
|
|
|
|
.vp-amap-marker-online {
|
|
background: var(--vp-success);
|
|
}
|
|
|
|
.vp-amap-marker-offline {
|
|
background: var(--vp-warning);
|
|
}
|
|
|
|
.vp-amap-marker-selected {
|
|
border-color: #fff;
|
|
box-shadow:
|
|
0 0 0 4px rgba(22, 100, 255, 0.28),
|
|
0 10px 22px rgba(16, 24, 40, 0.24);
|
|
}
|
|
|
|
.vp-monitor-layout {
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1fr) 260px;
|
|
gap: 16px;
|
|
margin-bottom: 16px;
|
|
}
|
|
|
|
.vp-monitor-map {
|
|
min-height: 430px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
overflow: hidden;
|
|
background: var(--vp-surface);
|
|
}
|
|
|
|
.vp-monitor-map-header {
|
|
min-height: 50px;
|
|
padding: 12px;
|
|
border-bottom: 1px solid var(--vp-border);
|
|
background: #fbfcff;
|
|
}
|
|
|
|
.vp-map-monitor {
|
|
height: 380px;
|
|
}
|
|
|
|
.vp-map-dot {
|
|
position: absolute;
|
|
width: 10px;
|
|
height: 10px;
|
|
padding: 0;
|
|
border: 0;
|
|
border-radius: 50%;
|
|
background: var(--vp-primary);
|
|
box-shadow: 0 0 0 5px rgba(22, 100, 255, 0.16);
|
|
cursor: pointer;
|
|
}
|
|
|
|
.vp-map-dot-online {
|
|
background: var(--vp-success);
|
|
box-shadow: 0 0 0 5px rgba(18, 183, 106, 0.16);
|
|
}
|
|
|
|
.vp-map-dot-offline {
|
|
background: var(--vp-warning);
|
|
box-shadow: 0 0 0 5px rgba(247, 144, 9, 0.16);
|
|
}
|
|
|
|
.vp-map-dot-start {
|
|
width: 12px;
|
|
height: 12px;
|
|
background: var(--vp-success);
|
|
box-shadow: 0 0 0 6px rgba(18, 183, 106, 0.18);
|
|
}
|
|
|
|
.vp-map-dot-end {
|
|
width: 12px;
|
|
height: 12px;
|
|
background: var(--vp-warning);
|
|
box-shadow: 0 0 0 6px rgba(247, 144, 9, 0.18);
|
|
}
|
|
|
|
.vp-map-dot-selected {
|
|
width: 16px;
|
|
height: 16px;
|
|
border: 3px solid #fff;
|
|
box-shadow:
|
|
0 0 0 7px rgba(22, 100, 255, 0.2),
|
|
0 10px 22px rgba(16, 24, 40, 0.2);
|
|
}
|
|
|
|
.vp-map-dot:focus-visible {
|
|
outline: 2px solid var(--vp-primary);
|
|
outline-offset: 6px;
|
|
}
|
|
|
|
.vp-monitor-side {
|
|
display: grid;
|
|
gap: 12px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-monitor-metric {
|
|
min-height: 72px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
}
|
|
|
|
.vp-monitor-metric-value {
|
|
margin-top: 8px;
|
|
color: var(--vp-text);
|
|
font-size: 24px;
|
|
font-weight: 700;
|
|
line-height: 30px;
|
|
}
|
|
|
|
.vp-map-service-queue {
|
|
display: grid;
|
|
gap: 10px;
|
|
margin-top: 4px;
|
|
padding-top: 12px;
|
|
border-top: 1px solid var(--vp-border);
|
|
}
|
|
|
|
.vp-source-consistency-panel {
|
|
display: grid;
|
|
gap: 10px;
|
|
margin-top: 4px;
|
|
padding-top: 12px;
|
|
border-top: 1px solid var(--vp-border);
|
|
}
|
|
|
|
.vp-map-integration-panel {
|
|
display: grid;
|
|
gap: 8px;
|
|
padding: 10px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fff;
|
|
}
|
|
|
|
.vp-map-integration-row {
|
|
display: flex;
|
|
align-items: flex-start;
|
|
justify-content: space-between;
|
|
gap: 10px;
|
|
padding-bottom: 8px;
|
|
border-bottom: 1px solid var(--vp-border);
|
|
}
|
|
|
|
.vp-map-integration-row:last-child {
|
|
padding-bottom: 0;
|
|
border-bottom: 0;
|
|
}
|
|
|
|
.vp-map-integration-row > div {
|
|
display: grid;
|
|
gap: 2px;
|
|
min-width: 0;
|
|
}
|
|
|
|
.vp-map-service-queue-title {
|
|
color: var(--vp-text);
|
|
font-size: 13px;
|
|
font-weight: 700;
|
|
}
|
|
|
|
.vp-map-service-item {
|
|
display: grid;
|
|
gap: 8px;
|
|
padding: 10px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fff;
|
|
}
|
|
|
|
.vp-map-service-item-button {
|
|
width: 100%;
|
|
color: inherit;
|
|
text-align: left;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.vp-map-service-item-button:focus-visible {
|
|
outline: 2px solid rgba(22, 100, 255, 0.45);
|
|
outline-offset: 2px;
|
|
}
|
|
|
|
.vp-map-service-item-selected {
|
|
border-color: rgba(22, 100, 255, 0.62);
|
|
background: #f5f9ff;
|
|
box-shadow: 0 0 0 3px rgba(22, 100, 255, 0.08);
|
|
}
|
|
|
|
.vp-map-service-item-main,
|
|
.vp-map-service-item-footer {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 8px;
|
|
}
|
|
|
|
.vp-map-service-item-main > div {
|
|
display: grid;
|
|
min-width: 0;
|
|
}
|
|
|
|
.vp-selected-vehicle-panel {
|
|
display: grid;
|
|
gap: 8px;
|
|
padding: 12px;
|
|
border: 1px solid rgba(22, 100, 255, 0.28);
|
|
border-radius: var(--vp-radius);
|
|
background: #f5f9ff;
|
|
}
|
|
|
|
.vp-selected-vehicle-grid {
|
|
display: grid;
|
|
grid-template-columns: auto minmax(0, 1fr);
|
|
gap: 6px 10px;
|
|
font-size: 12px;
|
|
}
|
|
|
|
.vp-selected-vehicle-grid span {
|
|
color: var(--vp-text-muted);
|
|
}
|
|
|
|
.vp-selected-vehicle-grid strong {
|
|
color: var(--vp-text);
|
|
font-weight: 600;
|
|
text-align: right;
|
|
}
|
|
|
|
.vp-alert-flow {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-alert-flow-item {
|
|
min-height: 96px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 10px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-alert-flow-value {
|
|
color: var(--vp-text);
|
|
font-size: 22px;
|
|
font-weight: 700;
|
|
line-height: 28px;
|
|
}
|
|
|
|
.vp-alert-dispatch-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-alert-dispatch-item {
|
|
min-height: 132px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
align-content: start;
|
|
gap: 8px;
|
|
text-align: left;
|
|
font: inherit;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.vp-alert-dispatch-item:hover,
|
|
.vp-alert-dispatch-item:focus-visible {
|
|
border-color: rgba(22, 100, 255, 0.42);
|
|
background: #f5f9ff;
|
|
outline: none;
|
|
}
|
|
|
|
.vp-alert-dispatch-head {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 8px;
|
|
}
|
|
|
|
.vp-alert-dispatch-head strong {
|
|
color: var(--vp-text);
|
|
font-size: 22px;
|
|
line-height: 28px;
|
|
}
|
|
|
|
.vp-alert-command-board {
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1fr) 360px;
|
|
gap: 16px;
|
|
}
|
|
|
|
.vp-alert-command-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-alert-command-item {
|
|
min-height: 92px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
align-content: space-between;
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-alert-command-item > div {
|
|
color: var(--vp-text);
|
|
font-size: 22px;
|
|
font-weight: 700;
|
|
line-height: 28px;
|
|
word-break: break-word;
|
|
}
|
|
|
|
.vp-alert-next-action {
|
|
min-height: 132px;
|
|
padding: 12px;
|
|
border: 1px solid rgba(22, 100, 255, 0.28);
|
|
border-radius: var(--vp-radius);
|
|
background: #f5f9ff;
|
|
display: grid;
|
|
align-content: start;
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-sla-board {
|
|
display: grid;
|
|
gap: 14px;
|
|
}
|
|
|
|
.vp-sla-summary {
|
|
display: grid;
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-sla-summary-item {
|
|
min-height: 72px;
|
|
display: grid;
|
|
gap: 8px;
|
|
align-content: start;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
}
|
|
|
|
.vp-sla-summary-item strong {
|
|
color: var(--vp-text);
|
|
font-size: 18px;
|
|
line-height: 24px;
|
|
}
|
|
|
|
.vp-risk-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-risk-item {
|
|
min-height: 158px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 10px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-risk-value {
|
|
color: var(--vp-text);
|
|
font-size: 26px;
|
|
font-weight: 700;
|
|
line-height: 32px;
|
|
}
|
|
|
|
.vp-risk-runbook {
|
|
margin-top: 12px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #f5f9ff;
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-ops-action-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-ops-action-item {
|
|
min-height: 196px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 10px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-ops-action-evidence {
|
|
color: var(--vp-text);
|
|
font-size: 18px;
|
|
font-weight: 700;
|
|
line-height: 26px;
|
|
word-break: break-word;
|
|
}
|
|
|
|
.vp-ops-action-acceptance {
|
|
padding-top: 8px;
|
|
border-top: 1px solid var(--vp-border);
|
|
color: var(--vp-text-muted);
|
|
font-size: 13px;
|
|
line-height: 20px;
|
|
}
|
|
|
|
.vp-alert-ops-grid {
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1.4fr) minmax(360px, 0.6fr);
|
|
gap: 16px;
|
|
margin-top: 16px;
|
|
}
|
|
|
|
.vp-notification-policy-list {
|
|
display: grid;
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-notification-policy {
|
|
min-height: 86px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-alert-policy-detail {
|
|
margin-top: 8px;
|
|
color: var(--vp-text-muted);
|
|
font-size: 13px;
|
|
line-height: 20px;
|
|
}
|
|
|
|
.vp-stat-workspace {
|
|
display: grid;
|
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
gap: 16px;
|
|
margin-top: 16px;
|
|
}
|
|
|
|
.vp-stat-chart {
|
|
display: grid;
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-stat-bar-row {
|
|
min-height: 32px;
|
|
display: grid;
|
|
grid-template-columns: 110px minmax(0, 1fr) 96px;
|
|
align-items: center;
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-stat-bar-label,
|
|
.vp-stat-bar-value {
|
|
color: var(--vp-text-muted);
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.vp-stat-bar-value {
|
|
color: var(--vp-text);
|
|
text-align: right;
|
|
}
|
|
|
|
.vp-stat-bar-track {
|
|
height: 10px;
|
|
overflow: hidden;
|
|
border-radius: 999px;
|
|
background: #eef4ff;
|
|
}
|
|
|
|
.vp-stat-bar-fill {
|
|
display: block;
|
|
height: 100%;
|
|
border-radius: inherit;
|
|
background: var(--vp-primary);
|
|
}
|
|
|
|
.vp-stat-bar-fill-green {
|
|
background: var(--vp-success);
|
|
}
|
|
|
|
.vp-stat-insight-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
gap: 16px;
|
|
margin-top: 16px;
|
|
}
|
|
|
|
.vp-stat-definition-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-stat-definition-grid > div {
|
|
min-height: 104px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
}
|
|
|
|
.vp-stat-definition-grid p {
|
|
margin: 10px 0 0;
|
|
color: var(--vp-text-muted);
|
|
font-size: 13px;
|
|
line-height: 20px;
|
|
}
|
|
|
|
.vp-stat-closure-board {
|
|
display: grid;
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-stat-closure-item {
|
|
min-height: 112px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 8px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-stat-closure-action {
|
|
margin-top: 12px;
|
|
min-height: 48px;
|
|
padding: 10px 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #f5f9ff;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-bi-publish-board {
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1fr) minmax(360px, 0.9fr) auto;
|
|
gap: 16px;
|
|
align-items: center;
|
|
}
|
|
|
|
.vp-bi-publish-main {
|
|
display: grid;
|
|
gap: 8px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-bi-publish-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-bi-publish-grid div {
|
|
min-height: 68px;
|
|
padding: 10px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 6px;
|
|
}
|
|
|
|
.vp-bi-publish-grid span {
|
|
color: var(--vp-text-muted);
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
}
|
|
|
|
.vp-bi-publish-grid strong {
|
|
color: var(--vp-text);
|
|
font-size: 15px;
|
|
line-height: 22px;
|
|
}
|
|
|
|
.vp-stat-audit-board {
|
|
display: grid;
|
|
grid-template-columns: minmax(260px, 0.7fr) minmax(0, 1.3fr);
|
|
gap: 16px;
|
|
}
|
|
|
|
.vp-stat-audit-summary {
|
|
min-height: 168px;
|
|
padding: 12px;
|
|
border: 1px solid rgba(22, 100, 255, 0.28);
|
|
border-radius: var(--vp-radius);
|
|
background: #f5f9ff;
|
|
display: grid;
|
|
gap: 10px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-stat-audit-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(5, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-stat-audit-item {
|
|
min-height: 184px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 9px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-stat-audit-item strong {
|
|
color: var(--vp-text);
|
|
font-size: 18px;
|
|
line-height: 24px;
|
|
}
|
|
|
|
.vp-stat-audit-action {
|
|
padding-top: 8px;
|
|
border-top: 1px solid var(--vp-border);
|
|
color: var(--vp-text-muted);
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
}
|
|
|
|
.vp-trajectory-anomaly-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-trajectory-anomaly-item {
|
|
min-height: 112px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 8px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-trajectory-anomaly-action {
|
|
margin-top: 12px;
|
|
min-height: 44px;
|
|
padding: 10px 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #f5f9ff;
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-playback-layout {
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1fr) 260px;
|
|
gap: 16px;
|
|
}
|
|
|
|
.vp-playback-map {
|
|
min-height: 430px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
overflow: hidden;
|
|
background: var(--vp-surface);
|
|
}
|
|
|
|
.vp-playback-side {
|
|
display: grid;
|
|
gap: 12px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-playback-current {
|
|
display: grid;
|
|
gap: 10px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fff;
|
|
}
|
|
|
|
.vp-playback-address {
|
|
min-width: 0;
|
|
display: grid;
|
|
gap: 6px;
|
|
padding: 10px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
}
|
|
|
|
.vp-playback-timeline {
|
|
margin-top: 16px;
|
|
display: grid;
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-playback-step {
|
|
text-align: left;
|
|
min-height: 112px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
color: inherit;
|
|
cursor: pointer;
|
|
transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
|
|
}
|
|
|
|
.vp-playback-step:hover,
|
|
.vp-playback-step:focus-visible {
|
|
border-color: rgba(22, 100, 255, 0.42);
|
|
box-shadow: 0 0 0 3px rgba(22, 100, 255, 0.08);
|
|
outline: none;
|
|
}
|
|
|
|
.vp-playback-step-active {
|
|
border-color: rgba(22, 100, 255, 0.72);
|
|
background: #eef5ff;
|
|
box-shadow: inset 3px 0 0 #1664ff;
|
|
}
|
|
|
|
.vp-playback-range {
|
|
width: 100%;
|
|
accent-color: #1664ff;
|
|
}
|
|
|
|
.vp-json {
|
|
margin: 0;
|
|
padding: 16px;
|
|
border-radius: 8px;
|
|
background: #101828;
|
|
color: #e4e7ec;
|
|
overflow: auto;
|
|
max-height: 360px;
|
|
font-size: 12px;
|
|
line-height: 1.65;
|
|
}
|
|
|
|
.vp-table-footer {
|
|
min-height: 52px;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 16px;
|
|
padding-top: 12px;
|
|
}
|
|
|
|
.vp-table-toolbar {
|
|
min-height: 42px;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: flex-end;
|
|
gap: 12px;
|
|
padding-bottom: 12px;
|
|
}
|
|
|
|
.vp-vehicle-summary {
|
|
min-height: 72px;
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
|
|
.vp-evidence-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(6, minmax(0, 1fr));
|
|
gap: 12px;
|
|
margin-bottom: 12px;
|
|
}
|
|
|
|
.vp-conclusion-grid {
|
|
display: grid;
|
|
grid-template-columns: 160px minmax(180px, 1fr) minmax(260px, 1.4fr);
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-conclusion-item {
|
|
min-height: 78px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
}
|
|
|
|
.vp-evidence-item {
|
|
min-height: 70px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
}
|
|
|
|
.vp-evidence-label {
|
|
color: var(--vp-text-muted);
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
}
|
|
|
|
.vp-evidence-value {
|
|
margin-top: 6px;
|
|
color: var(--vp-text);
|
|
font-size: 15px;
|
|
font-weight: 600;
|
|
line-height: 22px;
|
|
word-break: break-all;
|
|
}
|
|
|
|
.vp-action-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-action-item {
|
|
min-height: 92px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 16px;
|
|
}
|
|
|
|
.vp-action-item > div {
|
|
min-width: 0;
|
|
}
|
|
|
|
.vp-map-ops-board {
|
|
display: grid;
|
|
grid-template-columns: minmax(320px, 0.9fr) minmax(0, 1.1fr);
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-map-ops-readiness,
|
|
.vp-map-ops-work {
|
|
display: grid;
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-map-ops-readiness {
|
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
}
|
|
|
|
.vp-map-ops-readiness-item,
|
|
.vp-map-ops-work-item {
|
|
min-height: 128px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 9px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-map-ops-value,
|
|
.vp-map-ops-work-value {
|
|
color: var(--vp-text);
|
|
font-size: 22px;
|
|
font-weight: 700;
|
|
line-height: 28px;
|
|
}
|
|
|
|
.vp-map-ops-work {
|
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
}
|
|
|
|
.vp-map-ops-work-item {
|
|
width: 100%;
|
|
color: inherit;
|
|
text-align: left;
|
|
cursor: pointer;
|
|
transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
|
|
}
|
|
|
|
.vp-map-ops-work-item:hover,
|
|
.vp-map-ops-work-item:focus-visible {
|
|
border-color: rgba(22, 100, 255, 0.42);
|
|
box-shadow: 0 0 0 3px rgba(22, 100, 255, 0.08);
|
|
outline: none;
|
|
}
|
|
|
|
.vp-map-ops-work-head {
|
|
display: flex;
|
|
align-items: flex-start;
|
|
justify-content: space-between;
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-runbook-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(5, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-runbook-step {
|
|
min-height: 210px;
|
|
padding: 14px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
grid-template-rows: auto 1fr;
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-runbook-index {
|
|
width: 28px;
|
|
height: 28px;
|
|
border-radius: 7px;
|
|
background: rgba(0, 164, 184, 0.1);
|
|
color: var(--vp-cyan);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
font-size: 13px;
|
|
font-weight: 700;
|
|
}
|
|
|
|
.vp-runbook-body {
|
|
min-width: 0;
|
|
display: grid;
|
|
gap: 10px;
|
|
align-content: space-between;
|
|
}
|
|
|
|
.vp-runbook-body .semi-typography {
|
|
line-height: 20px;
|
|
}
|
|
|
|
.vp-runbook-acceptance {
|
|
padding: 9px 10px;
|
|
border-radius: 6px;
|
|
background: rgba(18, 183, 106, 0.08);
|
|
color: var(--vp-text);
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
}
|
|
|
|
.vp-workbench-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(5, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-workbench-item {
|
|
min-height: 190px;
|
|
padding: 14px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 10px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-workbench-head {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 8px;
|
|
}
|
|
|
|
.vp-workbench-head .semi-typography {
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
text-align: right;
|
|
}
|
|
|
|
.vp-workbench-value {
|
|
color: var(--vp-text);
|
|
font-size: 24px;
|
|
font-weight: 700;
|
|
line-height: 30px;
|
|
}
|
|
|
|
.vp-focus-service {
|
|
display: grid;
|
|
grid-template-columns: minmax(220px, 0.8fr) minmax(420px, 1.6fr) auto;
|
|
gap: 16px;
|
|
align-items: center;
|
|
}
|
|
|
|
.vp-focus-service-main {
|
|
min-width: 0;
|
|
}
|
|
|
|
.vp-focus-service-main .semi-typography {
|
|
line-height: 20px;
|
|
}
|
|
|
|
.vp-focus-service-evidence {
|
|
display: grid;
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-focus-service-evidence-item {
|
|
min-height: 78px;
|
|
padding: 11px 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 7px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-focus-service-evidence-item span {
|
|
color: var(--vp-text-muted);
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
}
|
|
|
|
.vp-focus-service-evidence-item strong {
|
|
color: var(--vp-text);
|
|
font-size: 13px;
|
|
line-height: 19px;
|
|
font-weight: 600;
|
|
word-break: break-word;
|
|
}
|
|
|
|
.vp-operation-flow {
|
|
display: grid;
|
|
grid-template-columns: repeat(6, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-service-model-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(4, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-service-model-item {
|
|
min-height: 132px;
|
|
padding: 14px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 10px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-service-model-value {
|
|
color: var(--vp-text);
|
|
font-size: 26px;
|
|
font-weight: 700;
|
|
line-height: 32px;
|
|
}
|
|
|
|
.vp-scenario-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(5, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-scenario-item {
|
|
min-height: 220px;
|
|
padding: 14px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 12px;
|
|
align-content: space-between;
|
|
}
|
|
|
|
.vp-scenario-main {
|
|
display: grid;
|
|
gap: 8px;
|
|
}
|
|
|
|
.vp-scenario-main .semi-typography {
|
|
line-height: 20px;
|
|
}
|
|
|
|
.vp-scenario-evidence {
|
|
min-height: 42px;
|
|
padding: 10px;
|
|
border-radius: 6px;
|
|
background: rgba(22, 100, 255, 0.06);
|
|
color: var(--vp-text);
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
}
|
|
|
|
.vp-operation-step {
|
|
min-height: 176px;
|
|
padding: 14px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
grid-template-rows: auto 1fr;
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-operation-index {
|
|
width: 28px;
|
|
height: 28px;
|
|
border-radius: 7px;
|
|
background: rgba(22, 100, 255, 0.1);
|
|
color: var(--vp-primary);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
font-size: 13px;
|
|
font-weight: 700;
|
|
}
|
|
|
|
.vp-operation-content {
|
|
min-width: 0;
|
|
display: grid;
|
|
gap: 10px;
|
|
align-content: space-between;
|
|
}
|
|
|
|
.vp-operation-content .semi-typography {
|
|
line-height: 20px;
|
|
}
|
|
|
|
.vp-priority-alert {
|
|
min-height: 92px;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 16px;
|
|
}
|
|
|
|
.vp-priority-alert-main {
|
|
min-width: 0;
|
|
}
|
|
|
|
.vp-capability-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(5, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-capability-item {
|
|
min-height: 154px;
|
|
padding: 14px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 12px;
|
|
align-content: space-between;
|
|
}
|
|
|
|
.vp-capability-item .semi-typography {
|
|
line-height: 20px;
|
|
}
|
|
|
|
.vp-capability-status {
|
|
justify-self: start;
|
|
}
|
|
|
|
.vp-capability-item .semi-button {
|
|
justify-self: start;
|
|
}
|
|
|
|
.vp-vehicle-map-layout {
|
|
display: grid;
|
|
grid-template-columns: minmax(0, 1fr) 280px;
|
|
gap: 16px;
|
|
}
|
|
|
|
.vp-source-fusion-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
gap: 12px;
|
|
}
|
|
|
|
.vp-source-fusion-item {
|
|
min-height: 250px;
|
|
padding: 14px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
display: grid;
|
|
gap: 12px;
|
|
align-content: space-between;
|
|
}
|
|
|
|
.vp-source-fusion-head {
|
|
display: flex;
|
|
align-items: flex-start;
|
|
justify-content: space-between;
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-source-fusion-contribution {
|
|
min-height: 52px;
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
align-content: flex-start;
|
|
gap: 6px;
|
|
}
|
|
|
|
.vp-source-fusion-facts {
|
|
display: grid;
|
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
|
gap: 8px;
|
|
}
|
|
|
|
.vp-source-fusion-fact {
|
|
min-height: 64px;
|
|
padding: 9px 10px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: 6px;
|
|
background: #fff;
|
|
display: grid;
|
|
gap: 5px;
|
|
align-content: start;
|
|
}
|
|
|
|
.vp-source-fusion-fact span {
|
|
color: var(--vp-text-muted);
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
}
|
|
|
|
.vp-source-fusion-fact strong {
|
|
color: var(--vp-text);
|
|
font-size: 13px;
|
|
line-height: 19px;
|
|
font-weight: 600;
|
|
word-break: break-word;
|
|
}
|
|
|
|
.vp-vehicle-detail-map {
|
|
height: 300px;
|
|
}
|
|
|
|
.vp-vehicle-map-side {
|
|
display: flex;
|
|
min-width: 0;
|
|
flex-direction: column;
|
|
gap: 10px;
|
|
}
|
|
|
|
.vp-vehicle-map-source {
|
|
display: flex;
|
|
min-height: 84px;
|
|
flex-direction: column;
|
|
gap: 6px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
}
|
|
|
|
.vp-vehicle-map-source-main {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 8px;
|
|
}
|
|
|
|
.vp-source-toolbar {
|
|
margin-bottom: 12px;
|
|
}
|
|
|
|
.vp-realtime-strip {
|
|
display: grid;
|
|
grid-template-columns: repeat(6, minmax(0, 1fr));
|
|
gap: 12px;
|
|
margin-bottom: 16px;
|
|
}
|
|
|
|
.vp-realtime-strip-item {
|
|
min-height: 72px;
|
|
padding: 12px;
|
|
border: 1px solid var(--vp-border);
|
|
border-radius: var(--vp-radius);
|
|
background: #fbfcff;
|
|
}
|
|
|
|
.vp-realtime-strip-label {
|
|
color: var(--vp-text-muted);
|
|
font-size: 12px;
|
|
line-height: 18px;
|
|
}
|
|
|
|
.vp-realtime-strip-value {
|
|
margin-top: 6px;
|
|
color: var(--vp-text);
|
|
font-size: 15px;
|
|
font-weight: 600;
|
|
line-height: 22px;
|
|
word-break: break-all;
|
|
}
|
|
|
|
.semi-navigation-item-text {
|
|
font-size: 14px;
|
|
}
|
|
|
|
@media (max-width: 900px) {
|
|
.vp-evidence-grid,
|
|
.vp-action-grid,
|
|
.vp-map-ops-board,
|
|
.vp-map-ops-readiness,
|
|
.vp-map-ops-work,
|
|
.vp-current-service-board,
|
|
.vp-current-service-grid,
|
|
.vp-realtime-command-board,
|
|
.vp-realtime-command-grid,
|
|
.vp-source-coverage-grid,
|
|
.vp-runbook-grid,
|
|
.vp-workbench-grid,
|
|
.vp-focus-service,
|
|
.vp-focus-service-evidence,
|
|
.vp-scenario-grid,
|
|
.vp-operation-flow,
|
|
.vp-service-model-grid,
|
|
.vp-capability-grid,
|
|
.vp-conclusion-grid,
|
|
.vp-monitor-layout,
|
|
.vp-alert-flow,
|
|
.vp-alert-dispatch-grid,
|
|
.vp-alert-command-board,
|
|
.vp-alert-command-grid,
|
|
.vp-sla-summary,
|
|
.vp-risk-grid,
|
|
.vp-ops-action-grid,
|
|
.vp-alert-ops-grid,
|
|
.vp-stat-workspace,
|
|
.vp-stat-insight-grid,
|
|
.vp-stat-definition-grid,
|
|
.vp-stat-closure-board,
|
|
.vp-bi-publish-board,
|
|
.vp-bi-publish-grid,
|
|
.vp-stat-audit-board,
|
|
.vp-stat-audit-grid,
|
|
.vp-trajectory-anomaly-grid,
|
|
.vp-source-fusion-grid,
|
|
.vp-source-fusion-facts,
|
|
.vp-vehicle-map-layout,
|
|
.vp-playback-layout,
|
|
.vp-playback-timeline {
|
|
grid-template-columns: 1fr;
|
|
}
|
|
|
|
.vp-stat-closure-action {
|
|
align-items: flex-start;
|
|
flex-direction: column;
|
|
}
|
|
}
|